(57)【要約】  本発明の実施形態は、コンピュータインフラから一連のデータ要素を受信するように構成されたコントローラを含むホスト装置に関し、前記一連のデータ要素は、前記コンピュータインフラの少なくとも１つのコンピュータ環境リソースの少なくとも１つの属性に関連している。前記コントローラは、前記一連のデータ要素の各データ要素に関連する時間統計識別子に基づいて前記一連のデータ要素の各データ要素をデータ保持場所に割り当て、トレーニングデータセットと選択されたデータ保持場所に関連する前記データ要素とを比較して前記一連のデータ要素に関連するデータ異常を検出するように構成されている。前記選択されたデータ保持場所に関連するデータ要素に関連する前記データ異常の検出に応答して、前記コントローラは、データ異常通知を生成するように構成されている。【選択図】図１
2018525728.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置においてコンピュータインフラからの一連のデータ要素を分析する方法であって、
前記ホスト装置が、前記コンピュータインフラから前記一連のデータ要素を受信するステップであって、前記一連のデータ要素は、前記コンピュータインフラの少なくとも１つのコンピュータ環境リソースの少なくとも１つの属性に関連している、ステップと、
前記ホスト装置が、前記一連のデータ要素の各データ要素に関連する時間統計識別子に基づいて、前記一連のデータ要素の各データ要素をデータ保持場所に割り当てるステップと、
前記ホスト装置が、トレーニングデータセットと、選択されたデータ保持場所に関連する前記データ要素とを比較して、前記一連のデータ要素に関連するデータ異常を検出するステップと、
前記ホスト装置が、前記選択されたデータ保持場所に関連するデータ要素に関連する前記データ異常の検出に応答して、データ異常通知を生成するステップと、
を有する方法。
【請求項２】
前記ホスト装置が、前記コンピュータインフラからの前記一連のデータ要素の受信に応答して、前記一連のデータ要素に均一性機能を適用して一連の正規化データ要素を生成するステップであって、前記均一性機能は、前記一連のデータ要素に関連するフォーマットを調整するように構成されている、ステップ、
をさらに有する、請求項１に記載の方法。
【請求項３】
前記ホスト装置が、前記一連のデータ要素の各データ要素の前記データ保持場所への割り当てに応答して、前記データ要素に変換機能を適用して一連の変換データ要素を生成するステップ、をさらに有し、
前記トレーニングデータセットと前記選択されたデータ保持場所に関連する前記データ要素とを比較するステップは、前記ホスト装置が、前記トレーニングデータセットと、前記選択されたデータ保持場所に関連する前記一連の変換データ要素とを比較して、前記一連の変換データ要素に関連するデータ異常を検出するステップを含む、
請求項２に記載の方法。
【請求項４】
前記トレーニングデータセットと前記選択されたデータ保持場所に関連する前記データ要素とを比較するステップは、前記ホスト装置が、前記トレーニングデータセットと前記選択されたデータ保持場所に関連する前記データ要素とにルール機能を適用するステップであって、前記ルール機能は、前記一連のデータ要素の一部のデータ要素を定義するように構成されている、ステップをさらに含む、請求項１に記載の方法。
【請求項５】
前記ホスト装置が、選択されたデータ保持場所からの一連のデータ要素にアクセスして前記トレーニングデータセットを作成するステップと、
前記ホスト装置が、前記選択されたデータ保持場所からの前記一連のデータ要素に分類機能を適用して前記トレーニングデータセットを定義するステップと、
をさらに有する、請求項１に記載の方法。
【請求項６】
前記選択されたデータ保持場所からの前記一連のデータ要素に前記分類機能を適用して前記トレーニングデータセットを定義するステップは、前記ホスト装置が、前記選択されたデータ保持場所からの前記一連のデータ要素に分類機能を適用して、前記トレーニングデータセットを、前記選択されたデータ保持場所に関連する前記データ要素の一連のクラスタとして定義するステップを含む、請求項５に記載の方法。
【請求項７】
前記ホスト装置が、第１データ保持場所に対して、各データ要素に関連する前記時間統計識別子を前記第１データ保持場所に関連する第１保持ポリシーと比較するステップと、
前記ホスト装置が、前記第１データ保持場所のデータ要素の前記時間統計識別子が前記第１データ保持場所に関連する前記第１保持ポリシーを満たすとき、前記データ要素を、第２保持ポリシーを有する第２データ保持場所に割り当てるステップであって、前記第２保持ポリシーは、前記第１保持ポリシーによって定義された保持時間よりも長い保持時間を定義する、ステップと、
をさらに有する、請求項１に記載の方法。
【請求項８】
前記選択されたデータ保持場所からの前記一連のデータ要素にアクセスするステップは、前記ホスト装置が、前記選択されたデータ保持場所からほぼリアルタイムでデータ要素ストリームにアクセスして、前記トレーニングデータセットをほぼ連続的に作成するするステップであって、前記データ要素ストリームは、前記コンピュータインフラの少なくとも１つのコンピュータ環境リソースの少なくとも１つの属性に関連している、ステップを含む、請求項７に記載の方法。
【請求項９】
前記コンピュータインフラからの前記一連のデータ要素を受信するステップは、前記ホスト装置が、前記コンピュータインフラからほぼリアルタイムでデータ要素ストリームを受信するステップであって、前記データ要素ストリームは、前記コンピュータインフラの少なくとも１つのコンピュータ環境リソースの少なくとも１つの属性に関連している、ステップを含む、請求項１に記載の方法。
【請求項１０】
メモリおよびプロセッサを備えるコントローラを有し、前記コントローラは、
コンピュータインフラから一連のデータ要素を受信し、前記一連のデータ要素は、前記コンピュータインフラの少なくとも１つのコンピュータ環境リソースの少なくとも１つの属性に関連している、
前記一連のデータ要素の各データ要素に関連する時間統計識別子に基づいて、前記一連のデータ要素の各データ要素をデータ保持場所に割り当て、
トレーニングデータセットと、選択されたデータ保持場所に関連する前記データ要素とを比較して、前記一連のデータ要素に関連するデータ異常を検出し、
前記選択されたデータ保持場所に関連するデータ要素に関連する前記データ異常の検出に応答して、データ異常通知を生成する、
ように構成されている、ホスト装置。
【請求項１１】
前記コンピュータインフラからの前記一連のデータ要素の受信に応答して、前記コントローラは、前記一連のデータ要素に均一性機能を適用して一連の正規化データ要素を生成するように構成され、前記均一性機能は、前記一連のデータ要素に関連するフォーマットを調整するように構成されている、請求項１０に記載のホスト装置。
【請求項１２】
前記一連のデータ要素の各データ要素の前記データ保持場所への割り当てに応答して、前記コントローラは、前記データ要素に変換機能を適用して一連の変換データ要素を生成するように構成され、
前記トレーニングデータセットと前記選択されたデータ保持場所に関連する前記データ要素とを比較するとき、前記コントローラは、前記トレーニングデータセットと、前記選択されたデータ保持場所に関連する前記一連の変換データ要素とを比較して、前記一連の変換データ要素に関連するデータ異常を検出するように構成されている、
請求項１１に記載のホスト装置。
【請求項１３】
前記トレーニングデータセットと前記選択されたデータ保持場所に関連する前記データ要素とを比較するとき、前記コントローラは、前記トレーニングデータセットと前記選択されたデータ保持場所に関連する前記データ要素とにルール機能を適用するように構成され、前記ルール機能は、前記一連のデータ要素の一部のデータ要素を定義するように構成されている、請求項１０に記載のホスト装置。
【請求項１４】
前記コントローラは、
選択されたデータ保持場所からの一連のデータ要素にアクセスして前記トレーニングデータセットを作成し、
前記選択されたデータ保持場所からの前記一連のデータ要素に分類機能を適用して前記トレーニングデータセットを定義する、
ように構成されている、請求項１０に記載のホスト装置。
【請求項１５】
前記選択されたデータ保持場所からの前記一連のデータ要素に前記分類機能を適用して前記トレーニングデータセットを定義するとき、前記ホスト装置は、前記選択されたデータ保持場所からの前記一連のデータ要素に分類機能を適用して、前記トレーニングデータセットを、前記選択されたデータ保持場所に関連する前記データ要素の一連のクラスタとして定義するように構成されている、
請求項１４に記載のホスト装置。
【請求項１６】
前記コントローラは、
第１データ保持場所に対して、各データ要素に関連する前記時間統計識別子を前記第１データ保持場所に関連する第１保持ポリシーと比較し、
前記第１データ保持場所のデータ要素の前記時間統計識別子が前記第１データ保持場所に関連する前記第１保持ポリシーを満たすとき、前記データ要素を、第２保持ポリシーを有する第２データ保持場所に割り当て、前記第２保持ポリシーは、前記第１保持ポリシーによって定義された保持時間よりも長い保持時間を定義する、
ようにさらに構成されている、請求項１０に記載のホスト装置。
【請求項１７】
前記選択されたデータ保持場所からの前記一連のデータ要素にアクセスするとき、前記ホスト装置は、前記選択されたデータ保持場所からほぼリアルタイムでデータ要素ストリームにアクセスして、前記トレーニングデータセットをほぼ連続的に作成するように構成され、前記データ要素ストリームは、前記コンピュータインフラの少なくとも１つのコンピュータ環境リソースの少なくとも１つの属性に関連している、請求項１６に記載のホスト装置。
【請求項１８】
前記コンピュータインフラからの前記一連のデータ要素を受信するとき、前記コントローラは、前記コンピュータインフラからほぼリアルタイムでデータ要素ストリームを受信するように構成され、前記データ要素ストリームは、前記コンピュータインフラの少なくとも１つのコンピュータ環境リソースの少なくとも１つの属性に関連している、請求項１０に記載のホスト装置。
【発明の詳細な説明】
【背景技術】
【０００１】
企業は、さまざまな構成要素を有するコンピュータシステムを利用する。例えば、これらの従来のコンピュータシステムは、例えばスイッチやルータなどの通信装置によって相互接続された１つ以上のサーバおよび１つ以上のストレージ装置を含みうる。サーバは、動作中に１つ以上の仮想マシン（ＶＭ）を実行するように構成されうる。各ＶＭは、１つ以上のアプリケーションまたは作業負荷を実行するように構成されうる。
【０００２】
ある場合において、コンピュータインフラは、当該インフラのさまざまな側面に関する大量のデータを生成しうる。例えば、コンピュータインフラは、関連したＶＭ、ストレージ装置、および通信装置の動作に関連するレイテンシデータを生成しうる。次に、コンピュータインフラは、記憶および／または処理のためにデータをリアルタイムでホスト装置に提供しうる。
【発明の概要】
【０００３】
コンピュータインフラと共に使用される従来のホスト装置は、さまざまな欠点を抱えている可能性がある。例えば、上記のように、ホスト装置は、コンピュータインフラからリアルタイムデータを受信し、データを記憶および／または処理するように構成されている。しかし、企業は、通常、一定期間にわたって大量のデータを生成する。リアルタイムでデータを受信すると、ホスト装置は、中央のストレージ場所にデータを保持するが、これは、データセットが時間と共に増加するにつれて管理が難しくなる可能性がある。
【０００４】
また、データの変換および処理は、通常、非常に制限され、柔軟性がなく、多くの場合、ホスト装置にハードコードされている。したがって、処理の変更は全て、異なる変換（例えば、使用）の場合に対処するために、時間とエンジニアリングに多額の投資を必要とする。
【０００５】
従来のコンピュータインフラデータ管理技術に比べると、本発明の実施形態は、コンピュータ環境からのストリーミングデータセットを分析するための分散型機械学習分析フレームワークに関する。１つの構成では、ホスト装置は、時間と共にコンピュータまたは企業システムから受信したデータ要素の移動および分析を自動化するように構成された機械学習エンジンを実行する。例えば、機械学習エンジンは、コンピュータ環境に関連する大きな数値データセットを取り込み、分類し、記憶するように構成されたデータ保持機能を含みうる。また、データ保持機能は、ホスト装置によって維持される古くなったデータ要素を識別し再分類することによって、古くなったデータ要素の精度低下に対処するように構成されている。別の例では、機械学習エンジンは、コンピュータインフラに関連する異常アクティビティをほぼ継続的に識別するためのトレーニングデータセットに対して、データ要素（ホスト装置によって保持場所に保持されている）を変換し、分析するようにも構成されている。
【０００６】
１つの構成では、ホスト装置は、保持されたデータセットに基づいてトレーニングデータセットを作成するように構成されている。例えば、ホスト装置は、選択された保持場所にアクセスし、選択された保持場所のデータ要素を分類またはクラスタリングしてトレーニングデータセットを作成するように構成されている。したがって、トレーニングデータセットは、特定のデータセットの学習された行動パターンを定義する。使用時、ホスト装置は、トレーニングデータセットの学習された行動パターンを保持場所から取り出したデータ要素と比較して、コンピュータインフラにおける異常な挙動を示す異常データ要素を検出するように構成されている。
【０００７】
このような構成により、ホスト装置の機械学習エンジンは、必要に応じて異なるアルゴリズム、ツール、およびフレームワークに対してのみならずデータ要素の分散・並行分析の要求に対しても機械学習分析機能を採用するように容易に構成可能である。例えば、ホスト装置の機械学習エンジンの分散構成は、システム管理者に、機械学習エンジンの機能を互いに独立して調整する能力を提供する。
【０００８】
１つの構成では、本発明の実施形態は、ホスト装置においてコンピュータインフラからの一連のデータ要素を分析する方法に関する。本方法は、前記ホスト装置が、前記コンピュータインフラから前記一連のデータ要素を受信するステップを含む。前記一連のデータ要素は、前記コンピュータインフラの少なくとも１つのコンピュータ環境リソースの少なくとも１つの属性に関連している。本方法は、前記ホスト装置が、前記一連のデータ要素の各データ要素に関連する時間統計識別子に基づいて、前記一連のデータ要素の各データ要素をデータ保持場所に割り当てるステップを含む。本方法は、前記ホスト装置が、トレーニングデータセットと、選択されたデータ保持場所に関連する前記データ要素とを比較して、前記一連のデータ要素に関連するデータ異常を検出するステップを含む。本方法は、前記選択されたデータ保持場所に関連するデータ要素に関連する前記データ異常の検出に応答して、前記ホスト装置が、データ異常通知を生成するステップを含む。
【０００９】
１つの構成では、本発明の実施形態は、メモリおよびプロセッサを備えるコントローラを有するホスト装置に関し、前記コントローラは、コンピュータインフラから一連のデータ要素を受信し、また、前記一連のデータ要素の各データ要素に関連する時間統計識別子に基づいて、前記一連のデータ要素の各データ要素をデータ保持場所に割り当てるように構成されている。前記一連のデータ要素は、前記コンピュータインフラの少なくとも１つのコンピュータ環境リソースの少なくとも１つの属性に関連している。前記コントローラは、トレーニングデータセットと、選択されたデータ保持場所に関連する前記データ要素とを比較して、前記一連のデータ要素に関連するデータ異常を検出し、また、前記選択されたデータ保持場所に関連するデータ要素に関連する前記データ異常の検出に応答して、データ異常通知を生成するように構成されている。
【図面の簡単な説明】
【００１０】
上記および他の目的、特徴、および効果は、添付の図面に示したように、本発明の特定の実施形態の以下の説明から明らかになるであろう。添付の図面では、異なる図面を通じて同様の参照文字は同一の部分を示している。図面は、必ずしも一定の縮尺ではなく、むしろ本発明のさまざまな実施形態の原理を説明することに重点が置かれている。
【００１１】
【図１】は、１つの構成に係るコンピュータシステムの概略図である。
【００１２】
【図２】は、１つの構成に従って構成された、図１のホスト装置によって実行される手順の一例を示すフローチャートである。
【００１３】
【図３】は、１つの構成に係る、コンピュータインフラからのデータ要素を処理する図１のホスト装置の概略図である。
【００１４】
【図４】は、１つの構成に係る、保持機能を実行する図２のホスト装置の構成を示す図である。
【００１５】
【図５】は、１つの構成に係る、トレーニング機能および分析機能を実行する図２のホスト装置の構成を示す図である。
【００１６】
【図６】は、１つの構成に係る、一連のデータ要素に対する分類機能の適用を示す図である。
【発明を実施するための形態】
【００１７】
本発明の実施形態は、コンピュータ環境からのストリーミングデータセットを分析するための分散型機械学習分析フレームワークに関する。ホスト装置は、時間と共にコンピュータまたは企業システムから受信したデータ要素の移動および分析を自動化するように構成された機械学習エンジンを実行する。例えば、機械学習エンジンは、コンピュータ環境に関連する大きな数値データセットを取り込み、分類するように構成されたデータ保持機能を含みうる。また、データ保持機能は、ホスト装置によって維持される古くなったデータ要素を識別し再分類することによって、古くなったデータ要素の精度低下に対処するように構成されている。別の例では、機械学習エンジンは、コンピュータインフラに関連する異常アクティビティをほぼ継続的に識別するためのトレーニングデータセットに対して、データ要素の一部を変換し、分析するようにも構成されている。
【００１８】
このような構成により、ホスト装置の機械学習エンジンは、必要に応じて異なるアルゴリズム、ツール、およびフレームワークに対してのみならずデータ要素の分散・並行分析の要求に対しても機械学習分析機能を採用するように容易に構成可能である。例えば、ホスト装置の機械学習エンジンの分散構成は、システム管理者に、機械学習エンジンの機能を互いに独立して調整する能力を提供する。
【００１９】
図１は、ホスト装置２５と電気通信するように配置された少なくとも１つのコンピュータインフラ１１を含むコンピュータシステム１０の構成を示している。コンピュータインフラ１１は、さまざまな方法で構成可能であるが、１つの構成では、コンピュータ環境リソース１２を含む。例えば、コンピュータ環境リソース１２は、例えばコンピュータ化された装置などの１つ以上のサーバ装置１４、例えばスイッチやルータなどの１つ以上のネットワーク通信装置１６、および例えばディスクドライブやフラッシュドライブなどの１つ以上のストレージ装置１８を含む。
【００２０】
各サーバ装置１４は、例えばメモリおよびプロセッサなどのコントローラまたはコンピュータハードウェア２０を含みうる。例えば、サーバ装置１４−１は、コントローラ２０−１を含み、サーバ装置１４−Ｎは、コントローラ２０−Ｎを含む。各コントローラ２０は、１つ以上の仮想マシン２２を実行するように構成可能であり、各仮想マシン（ＶＭ）２２は、１つ以上のアプリケーションまたは作業負荷２３を実行するようにさらに構成されている。例えば、コントローラ２０−１は、第１の仮想マシン２２−１および第２の仮想マシン２２−２を実行可能であり、これらはそれぞれ順に１つ以上の作業負荷２３を実行するように構成されている。各コンピュータハードウェア要素２０、ストレージ装置要素１８、ネットワーク通信装置要素１６、およびアプリケーション２３は、コンピュータインフラ１１の属性に関係している。
【００２１】
１つの構成では、ホスト装置２５は、例えばメモリおよびプロセッサなどのコントローラ２６を有するコンピュータ化された装置として構成されている。ホスト装置２５は、コンピュータインフラ１１およびディスプレイ５１の両方と電気通信するように配置されている。ホスト装置２５は、通信ポート（図示せず）を介して、コンピュータインフラ１１の少なくとも１つのコンピュータ環境リソースから一連のデータ要素２４を受信するように構成されている。一連のデータ要素２４の各データ要素２８は、コンピュータ環境リソース１２の属性に関連している。例えば、データ要素２８は、コンピュータ環境リソース１２の計算レベル（計算属性）、ネットワークレベル（ネットワーク属性）、ストレージレベル（ストレージ属性）、および／またはアプリケーションもしくは作業負荷レベル（アプリケーション属性）に関連しうる。また、一構成では、各データ要素２８は、例えばコンピュータインフラ１１のイベント、統計、および構成などコンピュータインフラ１１に関連する追加情報を含みうる。その結果、ホスト装置２５は、サーバ装置１４のコントローラ構成および利用（つまり、計算属性）、各サーバ装置１４の仮想マシンのアクティビティ（つまり、アプリケーション属性）、ならびにコンピュータインフラ１１に関連する現在の状態および履歴データに関するデータ要素２８を受信しうる。
【００２２】
一連のデータ要素２４の各データ要素２８は、さまざまな方法で構成可能である。１つの構成では、各データ要素２８は、オブジェクトデータおよび統計データを含む。オブジェクトデータは、送信元コンピュータ環境リソース１２の関連属性を識別することができる。例えば、オブジェクトデータは、データ要素２８を、対応するコンピュータ環境リソース１２の計算属性、ストレージ属性、ネットワーク属性、またはアプリケーション属性に関連していると識別することができる。統計データは、少なくとも１つのコンピュータ環境リソースに関連する挙動を特定することができる。
【００２３】
ホスト装置２５は、さらに、例えばストリームによって、コンピュータインフラ１１からデータ要素２８を受信し、動作中にそのデータ要素２８の移動および分析を自動化するように構成された分散型機械学習分析フレームワークまたはエンジン２７で構成されている。例えば、後述するように、機械学習エンジン２７を実行するとき、ホスト装置２５は、時間と共にデータ要素２８を変換し、記憶し、分析するように構成されている。データ要素２８の受信に基づいて、ホスト装置２５は、ほぼ継続的にシステム１０内の異常を識別するために、コンピュータインフラ１１を連続的に分析することができる。
【００２４】
１つの構成では、機械学習エンジン２７は、分散して構成されたいくつかの機能を含む。例えば、図３を参照して以下に詳細に述べられるように、機械学習エンジン２７は、均一性機能３４、データ保持機能４０、変換機能４２、トレーニング機能４３、および分析機能４４を含む。このような分散型の構成により、システム管理者は、機械学習エンジン２７のさまざまな機能を容易に適合させて、異なるアルゴリズム、ツール、およびフレームワーク構成要素を利用することができる。
【００２５】
図１に戻って、ホスト装置２５のコントローラ２６は、機械学習分析フレームワーク用のアプリケーションを記憶することができる。例えば、機械学習分析アプリケーションは、コンピュータプログラム製品３２からコントローラ２６にインストールされる。いくつかの構成では、コンピュータプログラム製品３２は、例えば収縮包装パッケージ（例えば、ＣＤ−ＲＯＭやディスケット、テープなど）のような標準的な市販形態で入手可能である。他の構成では、コンピュータプログラム３２は、例えばダウンロード可能なオンライン媒体などの異なる形態で入手可能である。ホスト装置２５のコントローラ２６上で実行されると、機械学習分析アプリケーションは、ホスト装置２５に、時間と共にコンピュータインフラ１１から受信したデータ要素２８の移動および分析を自動化させる。
【００２６】
図２は、機械学習分析アプリケーション２７を実行するときに図１のホスト装置２５によって実行される方法の一例を示すフローチャート１００である。
【００２７】
図２の工程要素１０２に記述のとおり、ホスト装置２５は、コンピュータインフラ１１から一連のデータ要素２４を受信するように構成されている。一連のデータ要素２４の各データ要素２８は、コンピュータインフラの少なくとも１つのコンピュータ環境リソース１２の少なくとも１つの属性に関連している。例えば、図３を参照すると、動作中、ホスト装置２５は、コンピュータインフラ１１の計算、ストレージ、およびネットワーク属性に関するデータ要素２８を受信するために、例えばパブリックアプリケーションプログラムインタフェース（ＡＰＩ）コール３０によって、コンピュータ環境リソース１２からデータを要求するように構成されている。上記のように、ホスト装置２５は、サーバ装置１４のコントローラ構成および利用（つまり、計算属性）、各サーバ装置１４の仮想マシンのアクティビティ（つまり、アプリケーション属性）、ならびにコンピュータインフラ１１に関連する現在の状態および履歴データに関するデータ要素２８を受信することができる。
【００２８】
ホスト装置２５は、さまざまな方法でコンピュータインフラ１１からデータ要素２８を受信することができるが、１つの構成では、ホスト装置２５は、ほぼリアルタイムストリームの一部としてデータ要素２８を受信するように構成されている。後述するように、ほぼリアルタイムのストリームとしてデータ要素２８を受信することによって、ホスト装置２５は、コンピュータインフラのアクティビティをほぼ継続的に監視することができる。これにより、ホスト装置２５は、時間と共にほぼ継続的にコンピュータインフラ１１内の変化に応答して１つ以上のコンピュータ環境リソース１２に関連する異常アクティビティを検出することができる。
【００２９】
１つの構成では、図３を続けて参照すると、ホスト装置２５は、１つ以上のエンジン機能４５を使用して分析するためにデータ要素２８を機械学習エンジン２７に向けるように構成されている。例えば、上記のように、機械学習エンジン２７は、さまざまな方法でデータ要素２８を処理するために、多くのエンジン機能４５で構成されうる。以下、エンジン機能４５のさまざまな例について説明する。
【００３０】
１つの構成では、コンピュータインフラ１１からの一連のデータ要素２４の受信に応答して、ホスト装置２５は、さらなる処理のために一連の正規化データ要素２８’を生成するように構成されている。例えば、ホスト装置２５は、一連のデータ要素２４に均一性機能３４を適用して、フォーマットが調整された一連の正規化データ要素２８’を生成するように構成されうる。使用時、任意の数のコンピュータ環境リソース１２が、独自仕様のフォーマット（例えば、特定のリソース１２それ自体に特有のフォーマット）でホスト装置２５にデータ要素２８を提供することができる。このような場合、ホスト装置２５は、データ要素２８が後の処理のために正規化されたまたは非独自仕様のフォーマットで提供されるように、データ要素２８に均一性機能３４を適用するように構成されている。
【００３１】
例えば、ホスト装置２５が、コンピュータインフラ１１の複数のネットワーク装置１６から、各ネットワーク装置１６の入力／出力（ＩＯ）速度を識別するデータ要素２８を受信する場合を想定する。さらに、データ要素２８が秒（ｓ）またはミリ秒（ｍｓ）でＩＯ速度を識別すると想定する。この場合、ホスト装置２５の機械学習エンジン２７は、均一性機能３４を適用して、データ要素２８を一貫した正規化速度（例えば、ｍｓ）に整えるように構成されている。別の例では、ホスト装置２５が時間と共にデータ要素２８を受信するため、データ要素２８は、比較的多大な変動を含むストレージ装置１８またはネットワーク装置１６のそれぞれに関する情報を含むことができる。このような場合、ホスト装置２５の機械学習エンジン２７は、データ要素２８に均一性機能３４を適用してデータ要素に関連する平均値を生成するように構成されている。
【００３２】
上記のように、１つの構成では、コンピュータインフラ１１は、データ要素２８をホスト装置２５にストリームとしてほぼリアルタイムで提供するように構成されている。受信の特定の時間に基づいてデータ要素２５を分析するために、ホスト装置２５は、年齢に基づいてデータ要素２８を整理するように構成されている。例えば、図２に示すフローチャート１００に戻ると、工程要素１０４において、機械学習分析アプリケーション２７を実行するとき、ホスト装置２５は、一組のデータ要素２４の各データ要素２８に関連する時間統計識別子５５に基づいて、一連のデータ要素２４の各データ要素２８をデータ保持場所６０に割り当てるように構成されている。
【００３３】
図４を参照すると、年齢に基づいてデータ要素を整理するために、ホスト装置２５は、データ要素２８にデータ保持機能４０（つまり、水平ロールアップ機能）を適用するように構成されている。上記のように、データ保持機能４０は、各データ要素２８に関連する時間統計識別子５５に従って一連のデータ保持場所６０の間でデータ要素２８を分離して記憶するようにホスト装置２５を構成する。時間統計識別子５５は、さまざまな方法で構成可能であるが、１つの構成では、時間統計識別子５５は、ホスト装置２５がデータ要素２８を受信した時間に対するデータ要素２８の年齢を示す。
【００３４】
例えば、図４に示すように、ホスト装置２５は、実時間（real-time）の時間統計識別子５５を有するデータ要素２８（例えば、年齢が受信から２０秒までのデータ要素）を記憶する第１保持場所６０−１で構成されうる。ホスト装置２５は、日時間（daily-time）の時間統計識別子５５を有するデータ要素２８（例えば、年齢が受信から２０秒と１日の間であるデータ要素）を記憶する第２保持場所６０−２で構成されうる。また、ホスト装置２５は、週時間（weekly-time）の時間統計識別子５５を有するデータ要素２８（例えば、年齢が受信から１日と１週間の間であるデータ要素）を記憶する第３保持場所６０−３で構成されうる。さらに、ホスト装置２５は、月時間（monthly-time）の時間統計識別子５５を有するデータ要素２８（例えば、年齢が受信から１週間と１月の間であるデータ要素）を記憶する第４保持場所６０−４で構成されうる。また、ホスト装置２５は、年時間（yearly-time）の時間統計識別子５５を有するデータ要素２８（例えば、年齢が受信から１月と１年の間であるデータ要素）を記憶する第５保持場所６０−５で構成されうる。
【００３５】
動作中に、データ保持機能４０を実行するとき、ホスト装置２５がコンピュータインフラ１１からデータ要素２８を受信すると、ホスト装置２５は、各データ要素２８に関連する時間統計識別子５５をレビューし、時間統計識別子５５に基づいてデータ要素２８を特定の保持場所６０に割り当てるように構成されている。例えば、ホスト装置２５はデータ要素２８をコンピュータインフラ１１からストリームとして受信するため、ホスト装置２５は、各データ要素２８に関連する時間統計識別子５５をレビューし、データ要素２８をリアルタイムデータ要素（例えば、年齢が受信から２０秒未満である）であると識別して、データ要素２８を第１保持場所６０−１に割り当てる。
【００３６】
なお、データ保持機能４０を実行するとき、ホスト装置２５は、保持ポリシー６５に対応する特定の期間の間、各保持場所６０にデータ要素２８を保持するように構成されている。
【００３７】
引き続き図４を参照すると、動作中、データ保持機能４０は、データ要素２８を次の精度低下した保持場所６０に再割り当てするために、古くなったデータ要素２８（例えば、精度が低下したデータ要素２８）の各保持場所６０を見直すようにもホスト装置２５を構成する。例えば、特定の保持場所６０に対して、データ保持機能４０は、各データ要素２８に関連する時間統計識別子５５をデータ保持場所６０に関連する保持ポリシー６５と比較するようにホスト装置２５を構成する。データ保持場所６０の特定のデータ要素２８の時間統計識別子５５が保持ポリシー６５を満たす（例えば、保持ポリシー６５によって設定された期間以上である）場合、ホスト装置２５は、第２保持ポリシー６５を有する第２データ保持場所６０にデータ要素２８を割り当てるように構成されている。第２保持ポリシー６５は、以前の保持ポリシー６５によって定義された保持時間よりも長い持続時間を定義する。
【００３８】
例えば、第４データ保持場所６０−４が、年齢が受信から１週間と１月の間であるデータ要素２８を記憶するように構成されていることを示す保持ポリシー６５−４を、第４データ保持場所６０−４が含むと想定する。ホスト装置２５が第４データ保持場所６０−４内のデータ要素２８を見直す場合、データ保持機能４０は、データ要素２８を年齢が受領から１月を超えるとして識別する時間統計識別子５５を有するデータ要素を識別するようにホスト装置２５を構成する。ホスト装置２５がこのような基準で１つ以上のデータ要素２８を検出した場合、ホスト装置２５は、データ保持機能４０による指示どおりに、データ要素２８を第５保持場所６０−５に進めるように構成されている。
【００３９】
データ保持機能４０のこのような構成により、ホスト装置２５は、コンピュータ環境１１に関連するオブジェクトのための大きな数値データセット２４を保持することができる。加えて、データ保持機能４０を実行することにより、データ要素２８の年齢に基づいてデータ要素２８を即時に分析することができる。すなわち、データ保持機能４０は、ホスト装置２５によって収取されたデータ要素２８の精度全体（つまり、相対経時）に対処することによって、リアルタイムのデータ要素２８を分析する。例えば、データ保持機能４０は、時間単位、週単位、または月単位の時間統計に基づいてデータ要素２８を分離するようにホスト装置２５を構成する。したがって、ホスト装置２５は、特定のデータ要素２８（例えば、ＣＰＵの使用に関するデータ要素など）を特定のデータ保持場所（例えば、日単位の保持場所６０−２など）から取り出して特定の傾向を分析する（例えば、ＣＰＵの使用状況を日単位で分析する）ように後で構成可能である。
【００４０】
また、データ保持機能４０は、古くなったデータ要素２８をデータ保持場所６０から削除するようにホスト装置２５を構成することもできる。例えば、データ保持機能４０を実行するとき、ホスト装置２５は、最小限の精度（例えば、年時間の時間統計識別子）しか有しないデータ要素２８を記憶する、一連の保持場所中の最後の保持場所（この例では、第５保持場所６０−５）を見直すように構成されている。ホスト装置２５が、データ保持場所６０−５の精度レベル構成またはポリシーレベル６５−５よりも大きい（例えば、受信から１年を超えている）時間統計識別子５５を有するデータ要素２８を検出したとき、ホスト装置２５は、保持場所６０−５からそのデータ要素２８を削除するように構成されている。
【００４１】
図４を参照すると、１つの構成では、ホスト装置２５は、データ保持場所６０に関連するデータ要素２８に変換機能４２を提供するように構成されている。図示のように、分析機能４４を適用する前に、ホスト装置２５は、特定のデータ保持場所６０に関連する一連のデータ要素２４に変換機能４２を適用して、一連の変換データ要素２８’を生成することができる。
【００４２】
１つの構成では、変換機能４２は、変換ポリシー５０に従ってコンピュータ環境リソース１２に関連するデータ要素２８を操作するように構成されている。例えば、データ保持場所６０が、コンピュータ環境リソース１２のストレージ装置１８によって利用されるストレージ量を特定するデータ要素２８を記憶する場合を想定する。さらに、ホスト装置２５が、コンピュータ環境リソース１２のストレージ装置１８に関連する毎月のコストを分析するように構成されていると想定する。この構成に基づいて、変換機能４２は、第４データ保持場所６０−４（つまり、月時間の時間統計識別子５５を有するデータ要素２８を記憶するデータ保持場所６０−４）から、ストレージ装置１８によって利用されたストレージ量に関連するデータ要素２８を検索する。さらに、変換ポリシー５０は、各データ要素２８にコストを乗算する。結果として生じる一連の変換データ２８’は、ストレージ装置１８に関連する毎月のコストに関する。その結果、ホスト装置２５が変換機能４２を利用する場合、ホスト装置２５は、選択されたデータ保持場所６０に関連する一連の変換データ２８’に分析機能４４を適用するように構成されている。
【００４３】
１つの構成では、変換機能４２は、特定のデータ保持場所６０からデータ要素２８を選択し、必要な分析の種類および／またはデータ要素２８の必要状態に基づいて変換データ要素２８’を次の分析機能４４および／またはトレーニング機能４３に提供するように構成されている。例えば、ホスト装置２５が、コンピュータインフラ１１のコントローラ２０のＣＰＵ使用率（つまり、ホスト装置２５の必要状態）を見直すように構成されている場合を想定する。このような場合、第１データ保持場所６０−１（例えば、ほぼリアルタイムのデータ要素２８に対するストレージ場所）におけるＣＰＵ使用率を表すデータ要素２８は、比較的多大な変動を有しうる。したがって、変換機能４２は、ホスト装置２５の必要状態を検出し（例えば、コンピュータインフラ１１のコントローラ２０のＣＰＵ使用率を見直し）、その必要状態に基づいて適切なデータ保持場所６０を選択するように構成されている。例えば、この場合、変換機能４２は、例えば年齢が受信から２０秒と１日の間であるデータ要素２８を記憶するデータ保持場所６０−２など、変動量が低減したデータ要素２８を提供しうるデータ保持場所６０を選択することができる。選択後、変換機能４２は、さらなる処理のために、選択された変換データ要素２８を分析機能４４に提供するように構成されている。
【００４４】
図２に示すフローチャート１００に戻ると、工程要素１０６において、機械学習分析アプリケーション２７を実行するとき、ホスト装置２５は、トレーニングデータセット４７と、選択されたデータ保持場所６０に関連するデータ要素２８とを比較して、一連のデータ要素２８に関連するデータ異常７０を検出するように構成されている。１つの構成では、ホスト装置２５は、そのような比較を行うために分析機能４４をトレーニングデータセット４７およびデータ要素２８の両方に適用するように構成されている。上記のように、ホスト装置２５は、変換機能４２からの変換データ要素２８’に分析機能４４を提供するように構成されうる。しかし、一例として、以下に、選択された保持場所６０からのデータ要素２８への分析機能４４の適用について説明する。また、後述するように、トレーニングデータセット４７およびデータエレメント２８の両方に分析機能４４を適用することにより、ホスト装置２５は、コンピュータインフラ１１のさまざまなコンピュータ環境リソース１２に関する異常な挙動の存在を検出することができる。
【００４５】
図５を参照すると、分析機能４４の適用前に、ホスト装置２５は、例えばトレーニング機能４３の使用などによって、トレーニングデータセット４７を作成するように構成されている。トレーニングデータセット４７は、コンピュータ環境リソース１２の特定の挙動パターンまたは傾向を識別する一連の基本データ（つまり、一連の学習された挙動データ）として構成されている。１つの構成では、トレーニング機能４３の実行によって、ホスト装置２５は、選択されたデータ保持場所６０からの一連のデータ要素２８にアクセスして、トレーニングデータセット４７を作成するように構成されている。例えば、コンピュータインフラ１１の毎週のＣＰＵ使用率に関するトレーニングデータセット４７を作成するために、ホスト装置２５は、週単位の保持場所６０−３からＣＰＵ使用率に関連するデータ要素２８を検索し、このデータ要素２８をトレーニングデータセット４７として記憶することができる。
【００４６】
特定のまたは選択された保持場所６０からのデータ要素２８の検索に応答して、トレーニング機能４３を実行するとき、ホスト装置２５は、選択されたデータ保持場所６０からのデータ要素２８に分類機能８０を適用してトレーニングデータセット４７を定義するように構成されている。
【００４７】
分類機能８０は、さまざまな方法で構成可能であるが、１つの構成では、分類機能８０は、例えばクラスタリング機能などの半教師付き機械学習機能として構成されている。クラスタリングは、クラスタと呼ばれる同じグループ内のオブジェクトが他のグループまたはクラスタ内のオブジェクトよりも互いに類似するような方法で、一連のオブジェクトをグループ化するタスクである。クラスタリングは、機械学習、パターン認識、画像解析、情報検索、およびバイオインフォマティクスを含む多くの分野で使用される、統計的データ分析のための従来の技術である。オブジェクトのクラスタへのグルーピングは、クラスタを構成するものの概念およびそれらを効率的に見つける方法の概念が大きく異なるさまざまなアルゴリズムによって達成することができる。例えば、既知のクラスタリングアルゴリズムは、階層的クラスタリング、重心ベースのクラスタリング（つまり、ｋ平均法クラスタリング）、分布に基づくクラスタリング、および密度に基づくクラスタリングを含む。クラスタリングに基づいて、ホスト装置２５は、コンピュータインフラ１１のさまざまな構成要素に関連する異常または性能低下を検出するように構成されている。
【００４８】
図６は、選択されたデータ保持場所６０からのデータ要素２８にクラスタリング機能８０を適用してトレーニングデータセット４７を生成する一例を示す図である。１つの構成では、データ要素２８への分類（つまり、クラスタリング）機能８０の適用の結果として一連のクラスタ８２が生成されうる。例えば、特性化機能８０を適用した後、トレーニングデータセット４７は、第１、第２、および第３クラスタ８２−１、８２−２、８２−３を含みうる。各クラスタ８２−１〜８２−３は、ある共通の類似性を有するコンピュータインフラ属性を識別する。
【００４９】
１つの構成では、ホスト装置２５は、選択されたデータ保持場所６０から時間と共にデータ要素２８を受信することによって、トレーニングデータセット４７をほぼ連続的かつ継続的に作成するように構成されている。例えば、図５を参照すると、コンピュータインフラ１１の特定の属性（例えば、ＣＰＵ使用率）に対するトレーニングデータセット４７を作成するために、ホスト装置２５は、一定期間にわたって、特定のデータ保持場所６０（例えば、第１データ保持場所６０−１、これはＣＰＵ使用率に関係する）からのデータ要素２８のほぼリアルタイムのストリームにアクセスするように構成可能である。ホスト装置２５は、データ要素２８にトレーニング機能４３を適用して、データ要素２８の継続的ストリームに基づいてトレーニングデータセット４７を連続的に作成し訓練するように構成されている。したがって、コンピュータインフラの属性値が時間と共に変化する（例えば、コンピュータインフラ１１の特定のコントローラに対するＣＰＵ使用率の増減を示す）ため、トレーニングデータセット４７も、時間と共に変化しうる。
【００５０】
上記のように、また図５を続けて参照すると、ホスト装置２５は、例えば変換機能４２によって提供された、特定のデータ保持場所６０からのデータ要素２８を、トレーニングデータセット４７と、例えば分析機能４４の適用によって、比較するように構成されている。分析機能４４のこのような適用によって、ホスト装置２５は、データ要素２８に関連する傾向およびコンピュータ環境リソース１１に関連する異常な挙動の存在を決定することができる。
【００５１】
例えば、ホスト装置２５が、コンピュータインフラ１１内のリアルタイムＣＰＵ使用率の偏差を検出するように構成されていると想定する。このような場合、ホスト装置２５は、前の週のＣＰＵ使用率に関連するデータ要素２８を、週単位のデータ保持場所６０−３から、トレーニングデータセット４７として検索することができる。また、ホスト装置２５は、例えばリアルタイムのデータ保持場所６０−１などの選択されたデータ保持場所から、例えば変換機能４２によって提供される、リアルタイムＣＰＵ使用率を表すデータ要素２８を受信することもできる。
【００５２】
分析機能４４の実行により、保持場所６０からのデータ要素２８をトレーニングデータセット４６と比較することによって、ホスト装置２５は、外れデータ要素８４を、コンピュータインフラ１１に関連する異常アクティビティを表すデータ異常として識別するように構成されている。例えば、図６を参照すると、保持場所６０からのデータ要素２８をトレーニングデータセット４７と比較することにより、クラスタ８２の外にある多数のデータ要素２８が得られる。分析（例えば、分析機能の適用）の結果として、ホスト装置２５は、外れデータ要素８４を、コンピュータインフラ１１に関連する異常な挙動（例えば、レイテンシ）を示す異常データ要素９０として識別することができる。
【００５３】
１つの構成では、図５を参照して、外れ要素８４の数を制限し、データ要素２８に関連するベストプラクティスを示すために、ホスト装置２５は、トレーニングデータセット４７と選択されたデータ保持場所６０からのデータ要素２８とにルール機能４６を適用するようにも構成されている。ルール機能４６は、コンピュータインフラの動作における潜在的な異常を識別するのに使用されるデータ要素２８の一部（subset）を定義するように構成されている。
【００５４】
例えば、図６を参照すると、ルール機能４６が、ＣＰＵ使用率が９０％未満である外れデータ要素８４を識別するように構成されていると想定する。ルール機能８６を適用することにより、外れ要素８４は、ＣＰＵ使用率が９０％未満である第１サブセット８７と、ＣＰＵ使用率が９０％を超える第２サブセット８８とに分かれる（例えば、不良または誤ったデータ要素を示す）。ルール機能４６の適用の結果として、ホスト装置２５は、第１サブセット８７のデータ要素を異常データ要素９０として識別することができる。異常データ要素９０は、一連のクラスタ８２または第２データサブセット８８のいずれにも属しない。
【００５５】
図２に示すフローチャート１００に戻ると、工程要素１０６において、機械学習分析アプリケーション２７を実行するとき、選択されたデータ保持場所６０に関連するデータ要素２８に関連するデータ異常９０の検出に応答して、ホスト装置は、データ異常通知５２を生成するように構成されている。
【００５６】
図５に示すように、また図３をさらに参照すると、データ要素２８に分析機能４４を適用し、データ異常９０を検出した後、ホスト装置２５は、データ異常通知５２をアプリケーションプログラムインタフェース（ＡＰＩ）によってディスプレイ５１に出力するように構成されている。１つの構成では、ホスト装置２５は、データ異常通知５２をグラフィカルユーザインタフェース（ＧＵＩ）の一部としてディスプレイ５１に表示するように構成されている。データ異常通知５２は、コンピュータインフラ１１のさまざまな側面の異常動作（例えば、１日のレイテンシや１ヶ月間にわたるレイテンシなど）に関するエンドユーザへの通知を提供する。
【００５７】
１つの構成では、コンピュータインフラ内の異常な挙動の検出に応答して、ホスト装置２５は、ＧＵＩ５０によって１つ以上のインフラ通知５３をエンドユーザに提供することができる。例えば、ホスト装置２５は、インフラ通知５３として、検出した異常９０に基づいて、分析、予測、および推奨通知をＡＰＩ４８によってエンドユーザに提供することができる。
【００５８】
エンジン機能４５が個別のモジュール（例えば、均一性機能３４、データ保持機能４０、変換機能４２、トレーニング機能４３、分析機能４４、およびルール機能４６）として構成されているため、管理者は、必要な処理の種類に応じて、さまざまな個別の異なるエンジン機能４５を有するホスト装置２５を更新することができる。したがって、処理のいかなる変更も、異なる変換（例えば、使用）の場合に対処するために、時間とエンジニアリングに最小限の投資しか必要としない。さらに、エンジン機能４５を使用することにより、ホスト装置２５は、異なるアルゴリズム、ツール、フレームワーク、および分散・並行分析の要求に対して、その分析フレームワークを採用することができる。
【００５９】
さらに、データ要素２８のストリームの分析に基づいて、また、データ要素をデータ保持場所のサブセットに分けることに基づいて、ホスト装置２５は、時間と共にインフラ１１内の異常を連続的に識別するために、コンピュータ環境リソースをほぼ連続的に分析するように構成されている。
【００６０】
さらに、異常について継続的にインフラからのデータ要素２８を分析することによって、ホスト装置２５は、コンピュータインフラ１１の動作を改善するように構成されている。例えば、コンピュータインフラ１１から受信したデータ要素２８を継続的に監視し学習することによって、ホスト装置２５は、コンピュータ環境リソース１２に関連するいかなる異常も容易に検出することができる。
【００６１】
以上特に本発明のさまざまな実施形態を示し説明してきたが、当業者であれば、添付の特許請求の範囲によって定義された本発明の精神および範囲から逸脱することなく、形式および詳細のさまざまな変更を行うことができることを理解するであろう。
【図１】
2018525728.tif 000003
【図２】
2018525728.tif 000004
【図３】
2018525728.tif 000005
【図４】
2018525728.tif 000006
【図５】
2018525728.tif 000007
【図６】
2018525728.tif 000008
【国際調査報告】
2018525728.tif 000009