(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-01-05
(54)【発明の名称】MLベースのイベント・ハンドリング
(51)【国際特許分類】
G06F 11/30 20060101AFI20221223BHJP
【FI】
G06F11/30 168
G06F11/30 140A
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022524256
(86)(22)【出願日】2020-10-19
(85)【翻訳文提出日】2022-04-25
(86)【国際出願番号】 EP2020079408
(87)【国際公開番号】W WO2021083713
(87)【国際公開日】2021-05-06
(32)【優先日】2019-10-31
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】521555742
【氏名又は名称】キンドリル・インク
【氏名又は名称原語表記】Kyndryl Inc.
【住所又は居所原語表記】One Vanderbilt Avenue,15th Floor,New York,New York 10017,USA
(74)【代理人】
【識別番号】110000420
【氏名又は名称】弁理士法人MIP
(72)【発明者】
【氏名】ニッド、ミカエル
(72)【発明者】
【氏名】ヴェルツアー、ハーゲン
(72)【発明者】
【氏名】プラグ、サンダー
(72)【発明者】
【氏名】シュバルツ、レリサ
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042MA08
5B042MA09
5B042MC40
(57)【要約】
【解決手段】 本発明は、イベントを処理するためのコンピュータ実装方法に関する。本方法は、標準イベント・オブジェクトに関連して格納されたオリジナル・イベント・オブジェクトを含むデータベースを提供する。本方法は、1つ又はそれ以上のオリジナル・データ・フォーマットの如何なる1つの折地ある・イベント・オブジェクトを、標準データ・フォーマットを有する標準イベント・オブジェクトへと変換するように適応されたトレーニングされたMLプログラムを生成するため、関連するオリジナル及び標準イベント・オブジェクトに対して学習アルゴリズムを実行すると共に、ITモニタリング・システムによって生成されたオリジナル・イベント・オブジェクトを、イベント・ハンドリング・システムによって処理可能な標準イベント・オブジェクトに自動的に変換するためのトレーニングされた機械学習プログラムを使用する。
【特許請求の範囲】
【請求項1】
イベントを処理するためのコンピュータ実装方法であって、前記方法が、
標準イベント・オブジェクトに関連してそれぞれ格納された複数のオリジナル・イベント・オブジェクトを含むデータベースを提供することであって、前記オリジナル・イベント・オブジェクトが1つ又はそれ以上のITモニタリング・システムにより生成され、前記オリジナル・イベント・オブジェクトのそれぞれが前記オリジナル・イベント・オブジェクトにより生成された前記ITモニタリング・システムのタイプに特有のオリジナル・データ・フォーマットを有し、それぞれのオリジナル・イベント・オブジェクトが、イベントを特徴づける1つ又はそれ以上のデータ値を含み、前記標準イベント・オブジェクトが、共有された標準データ・フォーマットを有し、それぞれの標準イベント・オブジェクトが、前記オリジナル・イベント・オブジェクトにより表された前記イベントを取扱うために、その関連するオリジナル・イベント・オブジェクトが指定された複数のイベント・クラスの1つを識別するクラスIDを含み、前記標準イベント・オブジェクトが、前記関連するオリジナル・イベント・オブジェクトの前記データ値から導出された1つ又はそれ以上のアトリビュート値を含むこと、
1つ又はそれ以上のオリジナル・データ・フォーマットのいずれか1つのオリジナル・イベント・オブジェクトを、前記標準データ・フォーマットを有する標準イベント・オブジェクトへと変換するように適合されるトレーニングされた機械学習プログラムを生成するため、前記関連するオリジナル・イベント・オブジェクト及び標準イベント・オブジェクトについて機械学習アルゴリズムを実行すること、及び
動作中のITモニタリング・システムにより生成されたオリジナル・イベント・オブジェクトを、それぞれがイベント・ハンドリング・システムにより処理可能な標準イベント・オブジェクトに自動的に変換するため、前記トレーニングされた機械学習プログラムを使用すること
を含むコンピュータ実装方法。
【請求項2】
前記トレーニングされた機械学習プログラムを使用することが、
1つの前記ITモニタリング・システムから新たなオリジナル・イベント・オブジェクトを受領し、前記新たなオリジナル・イベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトに自動的に変換するために、前記トレーニングされた機械学習プログラムを使用すること、
前記新たな標準イベント・オブジェクトにより表される前記新たなオリジナル・イベント・オブジェクトを、前記新たな標準イベント・オブジェクトに含まれる前記アトリビュート値の関数として自動的に取り扱うために、前記イベント・ハンドリング・システムに前記新たな標準イベント・オブジェクトを提供すること、及び
を含む請求項1に記載のコンピュータ実装方法。
【請求項3】
前記標準データ・フォーマットが、前記イベント・ハンドリング・システムにより解釈可能であり、少なくともいくつかの前記オリジナル・データ・フォーマットが前記イベント・ハンドリング・システムによって解釈できない、
請求項1に記載のコンピュータ実装方法。
【請求項4】
前記新たなオリジナル・ベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトに自動的に変換するために、前記トレーニングされた機械学習プログラムを使用することが、前記トレーニングされた機械学習プログラムにより直接に前記変換を実行することを含む、
請求項1に記載のコンピュータ実装方法。
【請求項5】
前記新たなオリジナル・ベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトに自動的に変換するために、前記トレーニングされた機械学習プログラムを使用することが、
前記トレーニングされた機械学習プログラムにより、1つ又はそれ以上の明示的なイベント・オブジェクト変換ルールをイクスポートすること、
ルール・エンジンに前記明示的なイベント・オブジェクト変換ルールを入力すること、及び
前記ルール・エンジンにより、前記入力されたオブジェクト変換ルールによって前記オリジナル・イベント・オブジェクトの前記標準イベント・オブジェクトへの前記変換を実行すること
を含む請求項1に記載のコンピュータ実装方法。
【請求項6】
さらに、
ユーザが前記1つ又はそれ以上の明示的なイベント・オブジェクト変換ルールを修正、又は確認、又はそれら両方を可能とするGUIを生成すること
を含む、
請求項5に記載のコンピュータ実装方法。
【請求項7】
前記データベース内の前記標準イベント・オブジェクトの少なくともいくつかの前記クラスID及び前記アトリビュート値が、人間のユーザにより手作業で特定される、
請求項1に記載のコンピュータ実装方法。
【請求項8】
前記データベース内の前記標準イベント・オブジェクトの少なくともいくつかの前記クラスID及び前記アトリビュート値が前記イベント・ハンドリング・システムにより自動的に生成される、
請求項1に記載のコンピュータ実装方法。
【請求項9】
さらに、
前記受領したオリジナル・イベント・オブジェクトをプリプロセッシングすることを含み、プリプロセッシングされた前記オリジナル・イベント・オブジェクトが前記機械学習プログラムにより前記新たな標準イベント・オブジェクトへと変換され、前記プリプロセシングが、
前記新たなオリジナル・イベント・オブジェクトに含まれる1つ又はそれ以上のデータ値を抽出するために、前記新たなオリジナル・イベント・オブジェクトに対して1つ又はそれ以上の自然言語処理機能を適用すること、
前記新たなオリジナル・イベント・オブジェクトに含まれる1つ又はそれ以上のデータ値を抽出するために、前記新たなオリジナル・イベント・オブジェクトにパーサを適用すること、
前記抽出されたデータ値が、1つ又はそれ以上の異なるイベント・クラスの名前を含むか否かをチェックし、そうであれば、前記抽出されたデータ値にイベント・クラスのラベルを指定すること、
前記抽出されたデータ値が、1つ又はそれ以上の異なるイベント・クラスの名前を含むか否かをチェックし、そうであれば、前記抽出されたデータ値にデータ・フィールド名を指定することであって、前記データ・フィールド名が、前記標準データ・フォーマットにしたがって選択されること、及び
前記自然言語処理機能により前記オリジナル・イベント・オブジェクトから抽出された1つ又はそれ以上のデータ値を、前記プリプロセッシングされたオリジナル・イベント・オブジェクトのアトリビュート値として、又はイベント・クラス名として追加すること
を含む、請求項1に記載のコンピュータ実装方法。
【請求項10】
前記受領したオリジナル・イベント・オブジェクトの、前記新たな標準イベント・オブジェクトへの変換が、
前記新たなオリジナル・イベント・オブジェクトの関数として優先レベルを自動的に計算すること、及び前記優先レベルを前記新たな標準イベント・オブジェクトのアトリビュートとして格納すること
を含む、
請求項1に記載のコンピュータ実装方法。
【請求項11】
さらに、
前記イベント・ハンドリング・システムによって前記優先レベルにより前記新たなイベントを自動的に優先付けるために、前記新たな標準イベント・オブジェクトの前記優先レベルを分析すること
を含む、
請求項10に記載のコンピュータ実装方法。
【請求項12】
前記オリジナル・イベント・オブジェクトのデータ値は、
前記オリジナル・イベントの生成をトリガしたデータ処理システムの識別子、
前記オリジナル・イベント・オブジェクトの生成をトリガしたコンピュータ・システムのオペレーティング・システム、
前記オリジナル・イベントがトリガされた時点の時刻及び日付、
前記オリジナル・イベント・オブジェクトの生成をトリガした「前記オブジェクトを含む地理的ロケーション、
重大性を示す数値範囲又は値の範囲、サイズ、又は技術的問題の優先度、
前記オリジナル・イベントの生成をトリガした前記イベント、又は前記データ処理システム、又はこれらの両方、又はシステム・コンポーネントを記述する1つ又はそれ以上のストリング、
媒体のマウント・プロセスの間に新たにマウントされた前記媒体が登録されたロケーションであるマウント・ポイントであって、前記マウント・プロセスが、前記オペレーティング・システムがファイル及びディレクトリを、前記コンピュータのファイル・システムを介してアクセス可能なストレージ・デバイス上に作成するプロセスである
を含む群から選択される、
請求項1に記載のコンピュータ実装方法。
【請求項13】
前記新たな標準イベント・オブジェクトが、
ストレージ満杯イベント、
ネットワーク接続障害イベント、
タスク・キュー満杯イベント、
サーバ利用不可イベント、
マウント・イベント、及び
デバイスに送付した要求又はコマンドのタイムアウト・イベント
を含む群から選択される、
請求項1に記載のコンピュータ実装方法。
【請求項14】
前記データベース内の1つ又はそれ以上の前記標準イベント・オブジェクトがイベント解決ワークフローに指定されており、前記学習アルゴリズムが関連するオリジナル及び標準イベント・オブジェクト及び前記指定されたイベント解決ワークフローについて実行され、前記トレーニングされた機械学習プログラムが前記1つ又はそれ以上のデータ・フォーマットの如何なる1つのオリジナル・イベント・オブジェクトを、前記標準データ・フォーマットを有すると共に予測されたイベント解決ワークフロー定義の指定された標準イベント・オブジェクトへと変換するように適応されており、前記新たなオリジナル・ベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトに自動的に変換するために、前記トレーニングされた機械学習プログラムを使用することが、好ましくはさらに、如何なる受領した新たなオリジナル・イベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトへと自動的に変換することを含み、前記標準イベント・オブジェクトが、前記受領された新たなオリジナル・イベント・オブジェクトの関数として前記トレーニングされたMLプログラムにより予測されたイベント解決ワークフロー定義を含む、
請求項1に記載のコンピュータ実装方法。
【請求項15】
前記オリジナル・イベント・オブジェクトに含まれる前記データ値に依存するオリジナル・イベント・オブジェクトが属するものにイベント・クラスの事前定義されたセットから1つを識別すると共に、前記オリジナル・イベント・オブジェクトの変換により生成された前記標準イベント・オブジェクトに前記クラスIDを指定するために前記識別されたイベント・オブジェクトを使用するように適応されたイベント分類器、及び
オリジナル・イベント・オブジェクトが属するものに含まれるデータ値に事前定義されたアトリビュート・タイプのセットから1つを識別すると共に、分類された前記データ値を、前記オリジナル・イベント・オブジェクトの変換により生成された前記標準イベント・オブジェクトの事前定義された位置のアトリビュート値として格納するように適応されたデータ値分類器
を含む、
請求項1に記載のコンピュータ実装方法。
【請求項16】
さらに、
前記データベース内の前記標準イベント・オブジェクトを、標準イベント・オブジェクトのいくつか又は全部が前記標準データ・フォーマットにより要求されるアトリビュート値を欠いているか否かを判断するために分析すること、
少なくとも1つの前記標準イベント・オブジェクトが、前記標準データ・フォーマットにより要求されるアトリビュート値を欠くとの判断に基づいて、欠けていると判断された前記アトリビュート値を含む前記標準イベント・オブジェクトのアップデート・バージョンを生成するために、前記データベース内の前記オリジナル・イベント・オブジェクトに前記トレーニングされたMLプログラムを適用すること、及び
前記機械学習プログラムのトレーニング・バージョンを生成するため、前記データベース内の前記オリジナル・イベント・オブジェクト及び前記標準データ・オブジェクトのそれぞれ指定されたアップデート・バージョンでトレーニングされたMLプログラムを再トレーニングすること
を含む請求項1に記載のコンピュータ実装方法。
【請求項17】
コンピュータ・システムであって、
それぞれが標準イベント・オブジェクトに関連して格納された複数のオリジナル・イベント・オブジェクトを含むデータベースを含み、
前記オリジナル・イベント・オブジェクトが1つ又はそれ以上のITモニタリング・システムにより生成され、前記オリジナル・イベント・オブジェクトのそれぞれが前記オリジナル・イベント・オブジェクトにより生成された前記ITモニタリング・システムのタイプに特有のオリジナル・データ・フォーマットを有し、それぞれのオリジナル・イベント・オブジェクトが、イベントを特徴づける1つ又はそれ以上のデータ値を含み、
共有された標準データ・フォーマットを有し、それぞれの標準イベント・オブジェクトが、前記オリジナル・イベント・オブジェクトにより表された前記イベントを取扱うために、その関連するオリジナル・イベント・オブジェクトが指定された複数のイベント・クラスの1つを識別し、それに関連するオリジナル・イベントが前記オリジナル・イベント・オブジェクトによって表されるイベントを取扱うために手作業、又は自動、又はこれらの両方で指定され、複数のイベント・クラスからの1つを指定するクラスIDを含み、前記標準イベント・オブジェクトが、前記関連するオリジナル・イベント・オブジェクトの前記データ値から導出された1つ又はそれ以上のアトリビュート値を含み、
1つ又はそれ以上のオリジナル・データ・フォーマットのいずれか1つのオリジナル・イベント・オブジェクトを、前記標準データ・フォーマットを有する標準イベント・オブジェクトへと変換するように適合されるトレーニングされた機械学習プログラムを生成するため、前記関連するオリジナル・イベント・オブジェクト及び標準イベント・オブジェクトについて機械学習アルゴリズムを実行する機械学習フレームワークと
を含む、
コンピュータ・システム。
【請求項18】
コンピュータ・システムであって、
1つ又はそれ以上のオリジナル・データ・フォーマットを有するオリジナル・イベント・オブジェクトを、標準データ・フォーマットを有する標準イベント・オブジェクトに変換するように構成されたトレーニングされた機械学習プログラムであって、前記オリジナル・イベント・オブジェクトのそれぞれがイベントを特徴づける1つ又はそれ以上のデータ値を含み、前記標準データ・フォーマットが、ローカル又はリモートのイベント・ハンドリング・システムにより処理可能であり、かつ前記オリジナル・イベント・オブジェクトそれぞれの前記オリジナル・データ・フォーマットのそれぞれが前記オリジナル・イベント・オブジェクトを生成したITモニタリング・システムのタイプに特有であり、
1つ又はそれ以上の動作中のITモニタリング・システムから新たなイベント・オブジェクトを受領するためのインタフェースであって、前記動作中のモニタリング・システムがそれぞれ、
前記ローカル又はリモートのイベント・ハンドリング・システムへのインタフェース、及び
前記受領した新たなオリジナル・イベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトに自動的に変換するために前記機械学習プログラムを使用し、前記標準イベント・オブジェクトが、関連する前記オリジナル・イベント・オブジェクトの前記データ値から導出された1つ又はそれ以上のアトリビュート値を含み、
前記新たな標準イベント・オブジェクトに含まれる前記アトリビュート値の関数として前記新たな標準イベント・オブジェクトによって表される前記新たなイベントを自動的に取り扱うために前記イベント・ハンドリング・システムに前記新たな標準イベント・オブジェクトを提供する
ように適応された変換連携プログラム
を含むシステム。
【請求項19】
さらに、前記イベント・ハンドリング・システムを含む、
請求項18に記載のコンピュータ・システム。
【請求項20】
イベントを処理するためのコンピュータ・プログラム製品であって、
1つ又はそれ以上のコンピュータ可読な有形のストレージ媒体、及び前記1つ又はそれ以上の有形のストレージ媒体の少なくとも1つに格納されたプログラム命令を含み、前記プログラム命令がプロセッサにより実行可能であり、前記プログラム命令が、
標準イベント・オブジェクトに関連してそれぞれ格納された複数のオリジナル・イベント・オブジェクトを含むデータベースを提供することであって、前記オリジナル・イベント・オブジェクトが1つ又はそれ以上のITモニタリング・システムにより生成され、前記オリジナル・イベント・オブジェクトのそれぞれが前記オリジナル・イベント・オブジェクトにより生成された前記ITモニタリング・システムのタイプに特有のオリジナル・データ・フォーマットを有し、それぞれのオリジナル・イベント・オブジェクトが、イベントを特徴づける1つ又はそれ以上のデータ値を含み、前記標準イベント・オブジェクトが、共有された標準データ・フォーマットを有し、それぞれの標準イベント・オブジェクトが、前記オリジナル・イベント・オブジェクトにより表された前記イベントを取扱うために、その関連するオリジナル・イベント・オブジェクトが指定された複数のイベント・クラスの1つを識別するクラスIDを含み、前記標準イベント・オブジェクトが、前記関連するオリジナル・イベント・オブジェクトの前記データ値から導出された1つ又はそれ以上のアトリビュート値を含むプログラム命令と、
1つ又はそれ以上のオリジナル・データ・フォーマットのいずれか1つのオリジナル・イベント・オブジェクトを、前記標準データ・フォーマットを有する標準イベント・オブジェクトへと変換するように適合されるトレーニングされた機械学習プログラムを生成するため、前記関連するオリジナル・イベント・オブジェクト及び標準イベント・オブジェクトについて機械学習アルゴリズムを実行するプログラム命令と、
動作中のITモニタリング・システムにより生成されたオリジナル・イベント・オブジェクトを、それぞれがイベント・ハンドリング・システムにより処理可能な標準イベント・オブジェクトに自動的に変換するため、前記トレーニングされた機械学習プログラムを使用するプログラム命令と
を含む、コンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、イベント管理システムに関し、より具体的には、1つ又はそれ以上のITモニタリング・システムにより生成されたイベントの管理に関する。
【背景技術】
【0002】
IT関連のソリューションは、そうこうしている間にも基本的には生命のすべての領域において決定的な重要性を有する。ビッグ・データ、クラウド・コンピューティング及びインターネット・オブ・シングスにおける新たな発達は、しばしば固有で、大きく、強力で信頼性のある利用可能なITシステムを必要とする。これらの要求はまた、これらのITシステムの複雑性、及びしたがって、これらのシステムのモニタリング及び維持することの複雑性を増大する。メモリ、CPU、又はネットワーク能力、又はそれらの両方の欠如といった決定的なイベントは、特に複雑で、分散され、ヘトロジェニアスなシステムにおいて、重大な、又はすべてのシステム・コンポーネントの迅速な障害を招く可能性がある。決定的なイベントが発生する場合、システム障害及びデータ損失、又はハードウェア・コンポーネントの破壊といったさらなる損傷を防止するために、しばしば、迅速で、好ましくは自動的な対処法が必要である。手作業のイベント管理は、しばしばシステムの複雑性において如何なる決定的なシステム・イベントにでも迅速に反応するべき必要性の故に、もはや任意的なものとすることはできない。
【0003】
手作業のシステム制御に関連するさらなる問題は、多くの現在のITシステムの所与の複雑について、すべての可能な障害モードを予測すること、それらのシステム・ワイドな影響を正確に決定すること、及びシステムを起動して動作を維持する構造の最良のモードを明示的に特定することは、不可能ではないと雖も困難である。
【0004】
ハードウェア及びソフトウェア・コンポーネントの両方を含むITシステム・コンポーネントの成長する数は、いくつかの自動化された自己モニタ及び診断機能を備える。これらのコンポーネント内部の機能は、その個別的なコンポーネントの現在状態、例えば、現在使用されている論理的、又は物理的ストレージ・ボリュームの割合、マルチ・ノードCPUクラスタにおけるCPUsの非占有の現在数を示すことができ、かつ複雑なITシステムの状態をモニタし、かつ制御するための自動化されたイベント・ハンドリングによる基礎として使用することができる。
【0005】
しかしながら、実際には、複雑なITシステムの自動的なイベント・ハンドリング及び制御は、しばしば大きな課題である:複雑なITシステムは、しばしば歴史的に成長し、かつヘテロジェニアスである。これは、これらのシステムは、異なるサプライヤからのハードウェア、又はソフトウェア・コンポーネントの固有の構成を含むことを意味する。システム・アーキテクチャは、それぞれの所有者の必要性、又はシステムの使用意図に対して仕立てられ、したがって固有的である。2つのシステムは同一のコンポーネント・セットを有している場合であったとしても、どのシステム・イベントが取扱われるかに関した必要性は、それぞれの必要性及びユースケースのシナリオに依存して大きく異なる可能性がある。さらに、自動化されたシステム・コンポーネントの自己モニタ及び診断機能により生成されたメッセージについての共通のスタンダードは存在しない。
【0006】
複雑なITシステムのためのいくつかの自動化されたイベント・ハンドリング・システムが市場に存在する。しかしながら、システム・コンポーネント及びイベント・メッセージのフォーマットのヘテロジェニアスさのため、現在のITシステムのすべてのソフトウェア及びハードウェアのすべてのイベント・メッセージを解釈することができる、イベント・ハンドリング・ツールは存在しない。これは、ITシステム・コンポーネントの異なるサブセットについて、いくつかのイベント・ハンドリング・システムを維持する機能を管理者に強制する可能性がある。このことは、ITシステム管理の分断化を生じさせ、かつITシステムの保守性及び利用可能性を大きく削減する可能性がある。
【0007】
したがって、複雑でヘテロジェニアスなITシステム内のイベント管理は、困難であり、かつしばしばシステム障害、システム柔軟性及び保守性の低下という現実的な制限を伴う、間違いやすいタスクである。
【発明の概要】
【0008】
本発明は、独立請求項に特定されるように、1つ又はそれ以上のITモニタリング・システムによって生成されたイベントを処理するための、コンピュータ実装方法、コンピュータ可読なストレージ媒体及び対応するコンピュータ・システムに関する。本発明の実施形態は、それらが相互に排他的ではない場合には、互いに自由に組み合わせすることができる。
【0009】
1つの側面において、本発明は、イベントを処理するためのコンピュータ実装方法に関する。本方法は、標準イベント・オブジェクトに関連してそれぞれ格納された複数のオリジナル・イベント・オブジェクトを含むデータベースを提供することであって、前記オリジナル・イベント・オブジェクトが1つ又はそれ以上のITモニタリング・システムにより生成され、前記オリジナル・イベント・オブジェクトのそれぞれが前記オリジナル・イベント・オブジェクトにより生成された前記ITモニタリング・システムのタイプに特有のオリジナル・データ・フォーマットを有し、それぞれのオリジナル・イベント・オブジェクトが、イベントを特徴づける1つ又はそれ以上のデータ値を含み、前記標準イベント・オブジェクトが、共有された標準データ・フォーマットを有し、それぞれの標準イベント・オブジェクトが、前記オリジナル・イベント・オブジェクトにより表された前記イベントを取扱うために、その関連するオリジナル・イベント・オブジェクトが指定された複数のイベント・クラスの1つを識別するクラスIDを含み、前記標準イベント・オブジェクトが、前記関連するオリジナル・イベント・オブジェクトの前記データ値から導出された1つ又はそれ以上のアトリビュート値を含むこと、1つ又はそれ以上のオリジナル・データ・フォーマットのいずれか1つのオリジナル・イベント・オブジェクトを、前記標準データ・フォーマットを有する標準イベント・オブジェクトへと変換するように適合されるトレーニングされた機械学習プログラムを生成するため、前記関連するオリジナル・イベント・オブジェクト及び標準イベント・オブジェクトについて機械学習アルゴリズムを実行することと、動作中のITモニタリング・システムにより生成されたオリジナル・イベント・オブジェクトを、それぞれがイベント・ハンドリング・システムにより処理可能な標準イベント・オブジェクトに自動的に変換するため、前記トレーニングされた機械学習プログラムを使用することを含み、動作中のITモニタリング・システムが、1つ又はそれ以上のITモニタリング・システムの1つであるか、又はさらにITモニタリング・システムである。
【0010】
さらなる側面において、本発明は、それに実体化されたプログラム命令を有するコンピュータ可読なストレージ媒体であって、前記プログラム命令がプロセッサによって実行可能であり、前記プロセッサをしてイベントを処理するための方法を実行させる。本方法は、標準イベント・オブジェクトに関連してそれぞれ格納された複数のオリジナル・イベント・オブジェクトを含むデータベースを提供することであって、前記オリジナル・イベント・オブジェクトが1つ又はそれ以上のITモニタリング・システムにより生成され、前記オリジナル・イベント・オブジェクトのそれぞれが前記オリジナル・イベント・オブジェクトにより生成された前記ITモニタリング・システムのタイプに特有のオリジナル・データ・フォーマットを有し、それぞれのオリジナル・イベント・オブジェクトが、イベントを特徴づける1つ又はそれ以上のデータ値を含み、前記標準イベント・オブジェクトが、共有された標準データ・フォーマットを有し、それぞれの標準イベント・オブジェクトが、前記オリジナル・イベント・オブジェクトにより表された前記イベントを取扱うために、その関連するオリジナル・イベント・オブジェクトが指定された複数のイベント・クラスの1つを識別し、それに関連するオリジナル・イベントが前記オリジナル・イベント・オブジェクトによって表されるイベントを取扱うために手作業、又は自動、又はこれらの両方で指定され、複数のイベント・クラスからの1つを指定するクラスIDを含み、前記標準イベント・オブジェクトが、前記関連するオリジナル・イベント・オブジェクトの前記データ値から導出された1つ又はそれ以上のアトリビュート値を含む。その後、方法は、1つ又はそれ以上のオリジナル・データ・フォーマットのいずれか1つのオリジナル・イベント・オブジェクトを、前記標準データ・フォーマットを有する標準イベント・オブジェクトへと変換するように適合されるトレーニングされた機械学習プログラムを生成するため、前記関連するオリジナル・イベント・オブジェクト及び標準イベント・オブジェクトについて機械学習アルゴリズムを実行し、かつ動作中のITモニタリング・システムにより生成されたオリジナル・イベント・オブジェクトを、それぞれがイベント・ハンドリング・システムにより処理可能な標準イベント・オブジェクトに自動的に変換するため、前記トレーニングされた機械学習プログラムを使用し、動作中のITモニタリング・システムが、1つ又はそれ以上のITモニタリング・システムの1つであるか、又はさらにITモニタリング・システムである。
【0011】
さらなる側面において、本発明は、コンピュータ・システムに関する。コンピュータ・システムは、また、“トレーニング・コンピュータ・システム”としても参照される。コンピュータ・システムは、それぞれが標準イベント・オブジェクトに関連して格納された複数のオリジナル・イベント・オブジェクトを含むデータベースを含み、前記オリジナル・イベント・オブジェクトが1つ又はそれ以上のITモニタリング・システムにより生成され、前記オリジナル・イベント・オブジェクトのそれぞれが前記オリジナル・イベント・オブジェクトにより生成された前記ITモニタリング・システムのタイプに特有のオリジナル・データ・フォーマットを有し、それぞれのオリジナル・イベント・オブジェクトが、イベントを特徴づける1つ又はそれ以上のデータ値を含み、共有された標準データ・フォーマットを有し、それぞれの標準イベント・オブジェクトが、前記オリジナル・イベント・オブジェクトにより表された前記イベントを取扱うために、その関連するオリジナル・イベント・オブジェクトが指定された複数のイベント・クラスの1つを識別し、それに関連するオリジナル・イベントが前記オリジナル・イベント・オブジェクトによって表されるイベントを取扱うために手作業、又は自動、又はこれらの両方で指定され、複数のイベント・クラスからの1つを指定するクラスIDを含み、前記標準イベント・オブジェクトが、前記関連するオリジナル・イベント・オブジェクトの前記データ値から導出された1つ又はそれ以上のアトリビュート値を含む。コンピュータ・システムは、1つ又はそれ以上のオリジナル・データ・フォーマットのいずれか1つのオリジナル・イベント・オブジェクトを、前記標準データ・フォーマットを有する標準イベント・オブジェクトへと変換するように適合されるトレーニングされた機械学習プログラムを生成するため、前記関連するオリジナル・イベント・オブジェクト及び標準イベント・オブジェクトについて機械学習アルゴリズムを実行する機械学習フレームワークを適用することができる。
【0012】
さらなる側面においては、本発明は、1つ又はそれ以上のオリジナル・データ・フォーマットを有するオリジナル・イベント・オブジェクトを、標準データ・フォーマットを有する標準イベント・オブジェクトに変換するように構成されたトレーニングされた機械学習プログラムであって、前記オリジナル・イベント・オブジェクトのそれぞれがイベントを特徴づける1つ又はそれ以上のデータ値を含み、前記標準データ・フォーマットが、ローカル又はリモートのイベント・ハンドリング・システムにより処理可能であり、かつ前記オリジナル・イベント・オブジェクトそれぞれの前記オリジナル・データ・フォーマットのそれぞれが前記オリジナル・イベント・オブジェクトを生成したITモニタリング・システムのタイプに特有である。トレーニングされた機械学習プログラムは、1つ又はそれ以上の動作中のITモニタリング・システムから新たなイベント・オブジェクトを受領するためのインタフェースであって、前記動作中のモニタリング・システムがそれぞれ、前記ローカル又はリモートのイベント・ハンドリング・システムへのインタフェース、及び前記受領した新たなオリジナル・イベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトに自動的に変換するために前記機械学習プログラムを使用し、前記標準イベント・オブジェクトが、前記関連するオリジナル・イベント・オブジェクトの前記データ値から導出された1つ又はそれ以上のアトリビュート値を含み、前記新たな標準イベント・オブジェクトに含まれる前記アトリビュート値の関数として前記新たな標準イベント・オブジェクトによって表される前記新たなイベントを自動的に取り扱うために前記イベント・ハンドリング・システムに前記新たな標準イベント・オブジェクトを提供する。
本発明の以下の実施形態において、実施例のみの目的により、図面を参照して、より詳細に説明する
【図面の簡単な説明】
【0013】
【
図1】
図1は、トレーニングされたイベント変換プログラムを含む、分散イベント・ハンドリング・システムを示す。
【
図2】
図2は、トレーニングされたイベント変換プログラムを使用するための方法のフローチャートを示す。
【
図3】
図3は、トレーニングされたイベント変換プログラムを使用するための方法のフローチャートを示す。
【
図4】
図4は、イベント変換プログラムをトレーニングするためのコンピュータ・システムを示す。
【
図5】
図5は、イベント変換プログラムをトレーニングする間に使用するプログラムを示す。
【
図6】
図6は、トレーニング・データを補充し、かつ改善する方法を示す。
【発明を実施するための形態】
【0014】
本発明の実施形態は、特に柔軟性を有し、かつ多くの異なるITモニタリング・システムにより生成されるイベントを処理すると共に自動的に反応することができる、イベントをハンドリングするためのシステム及び方法を提供するという効果を有することができる。特に、本システム及び方法は、1つ又はそれ以上の異なるITモニタリング・システムによりそれぞれモニタされた、1つ又はそれ以上のITシステムのコンポーネントにより生成されたイベントを正確に処理して解釈することを可能とし、それによって、これらのメッセージを受領したこれらのコンポーネント、又はITモニタリング・システムのタイプ及び組み合わせは、高度にヘテロジェニアスとすることができる。例えば、本発明の実施形態は、最新のイベント管理のアプローチに関連する技術的な欠点のいくつか、又はすべてを克服することが可能である。
【0015】
本発明の実施形態は、イベント、すなわち異なるITモニタリング・システムからのモニタリング・アラートを自動的に、下流側処理の標準化されたイベント、すなわち、イベントを投げかけた技術的問題を防止又は修復するため、チケットの生成、又は管理、又はそれら両方、ソフトウェア、又はハードウェア・モジュール又はそれら両方の自動的な実行へと変換することを可能とする。
【0016】
多くの組織は、種々の配置されたソフトウェア・アプリケーション、プロセッサ、ネットワーク・ルータ、ストレージ・デバイス、ネットワーク・ストレージ・サーバといった種々の異なるハードウェア・コンポーネント、及び任意的にまた、それらの1つ又はそれ以上のハードウェア、又はソフトウェア・コンポーネントをモニタするための種々のITモニタリング・システムを維持する。例えば、TGモニタリング・システムは、“バージョン6(ITM6)”として参照されるオリジナル・データ・フォーマットにおいて特定されるイベントを要求するIBM Tivoli Monitoringプログラムとすることができる。しかしながら、いくつかのシステム・コンポーネントは、IBM Tivoli Monitoringプログラム以外のツール、すなわち、特定の領域における機能を追加する可能性のあるサード・パーティ製のモニタリング・ツールによりモニタされる可能性がある。これらのサード・パーティのITモニタリング・ツールにより生成されたイベントの処理、すなわち、自動化されたチケッティング、通知、又は動的自動化を通した自動的な解決は、これらのイベントがいくつかのイベント・ハンドリング・システムによって解釈することができるITM6フォーマットを遵守しないイベントなので、困難であることを裏付ける。例えば、ITM6フォーマットは、イベントが特定の種類の情報で満たされた特定のセットのフィールドを含むことを要請する。サード・パーティのツールにより生成されたイベントは、異なるセットのフィールドを含むことができ、かつサード・パーティのモニタリング・ツールのイベントのフィールド名のいくつかが、ITM6のフィールド名と同一であるいくつかの場合でも、これらのフィールドは、サード・パーティのモニタリング・ツールに特有のデータで満たされる可能性があり、かつ如何なるITM6ベースのイベント・ハンドラによっても正確に解釈することができない可能性がある。
【0017】
本発明の実施形態は、多くの異なるITモニタリング・システムにより生成されるイベントを管理するための標準化されたアプローチの実装を、多くの異なるフォーマット、すなわち、ITM6フォーマット及び他の非ITM6互換性フォーマットに従って可能とし、かつ、すべてのこれらのイベントの下流側での自動的で、完全に一体化された処理を許容する。言い換えれば、本発明の実施形態は、多くの異なるITモニタリング・システムにより生成された多くの異なるフォーマットのイベントを、自動化されたイベント・ハンドリング、すなわちシステム・モニタリング及び制御の目的のため、自動化されたチケッティングのためなどの基礎として使用される、標準的なデータ・フォーマットに変換することを可能とする。本発明の実施形態は、複数のITソフトウェア、又はハードウェア、又はそれらを組み合わせたリソースをモニタリングするために使用されるITモニタリング・ツールに対処するイベント処理システム及び方法を提供することができる。
【0018】
さらに、利益的な側面においては、本発明の実施形態は、自動的、又は半自動的な機械学習アプローチ手段による、イベント・ハンドリング・システムに対処するモニタリング・ツールの確立を許容することができる。トレーイングされたMLプログラムは、複数のオリジナル・イベント(1つ又はそれ以上の異なるITモニタリング・システムからの)及びオリジナル・イベントの1つにそれぞれ割り当てられた標準的なイベントのセットを含むトレーニング・データセットで生成されることができる。例えば、トレーニング・データセットは、Nagios、システムをモニタするオープンソースのコンピュータ・ソフトウェア・アプリケーション、ネットワーク及びITインフラ基盤により生成された複数のイベントを含むことができる。Nagiosは、サーバ、スイッチ、アプリケーション及びサービスのためのサービスのモニタ及びアラートを提供する。それは、ユーザに対して、いつ物事が悪化するかをアラートすると共に、彼らにその問題がいつ決されたかの第2の時間をアラートする。トレーニング・データセット内のそれぞれのイベントは、標準的なデータ・フォーマット、すなわち、ITM6フォーマットにおいて特定されるイベントに割り当てられている。そのようなトレーニング・データセット上でトレーニングされたMLプログラムによって、フォーマット変換ロジックは、如何なるソース・コードにおいても明確にフォーマット変換ルーチンを特定するためのプログラマを必要とすることなく、容易に、迅速に、かつ自動的に生成することができる。
【0019】
本発明の実施形態は、モニタリング・アラート(“イベント”)を、標準化されたイベント(標準において規定された規格によるフィールドのフィールド及び内容)へと変換(“正規化”)することを許容することができ、このことは、モニタリング・アラートを生成したITモニタリング・ツールを考慮せずに、標準化された下流側処理を許容する。
【0020】
本発明の実施形態は、追加的なモニタリング・ツール、又は新たなイベント、すなわち専有性及びオリジナルのデータ・フォーマット、又はこれら両方を一体化する能力を、既存のイベント・ハンドリング・システムにおけるこれらのツール、又はイベントを一体化させるために必要とされる時間及び料力を削減することにより改善することができる。既存のイベント・ハンドリング・フレームワークのコードを修正、再コンパイル及び再配置する代わりに、実施形態は、同一の、又は類似の情報内容を有するこの未知のオリジナル・データ・フォーマット及び標準的なイベントを含むオリジナル・イベントのペアをもって補充されたトレーニング・データで、MLプログラムを再トレーニングするだけである。これにより、異なるタイプのハードウェア、又はソフトウェア又はそれら両方を有するヘテロジェニアスなシステムを全体として管理することを改善することができる。
【0021】
本発明の実施形態は、複数の異なるITシステム、ITシステム・コンポーネント及びそれぞれのITモニタリング・ツールのための標準化されたイベント・ハンドリング及び下流側処理を維持することを支援することができる。このことは、動的な自動化自動機械及び他の自動的一体化(すなわち、チケッティング及び通知)、イベントに基づくデータ分析の開発/保守のコストの削減を導き、システムを横断したモニタリング・ソリューションを提供する。いくつかの実施形態によれば、自動機械のための開発プロセスは、少なくとも10%加速されることが観測された。
【0022】
実施形態によれば、データベース内のオリジナルのイベント・オブジェクトは、複数のITモニタリング・システムにより生成される。複数のITモニタリング・システムは、2つ又はそれ以上の異なるタイプのITモニタリング・システムを含むことができ、それによって、オリジナルのイベント・オブジェクトのオリジナル・データ・フォーマットが、このITモニタチング・システムのタイプに特有のITモニタリング・システムによって生成される。学習フェーズの間、MLプログラムは、2つ又はそれ以上のITモニタリング・システムのタイプにより生成されたオリジナル・イベント・オブジェクトのオリジナル・データ・フォーマットを、共有される標準的なデータ・フォーマットへの変換を学習する。
【0023】
このことは、膨大な数の異なるタイプのITモニタリング・システムが容易に一体化され、かつ異なるITモニタリング・システムのタイプのイベント・データのトレーニングを提供できるので、効果的である可能性がある。
【0024】
いくつかの実施形態によれば、トレーニング・データは、単一のITモニタリング・システム、すなわち、そのオリジナル・イベント・オブジェクトが、特定のイベント・ハンドリング・システムによって部分的にだけ処理されることができるITモニタリング・システムにより生成される、オリジナル・イベント・オブジェクトを含む。それぞれのオリジナル・イベント・オブジェクトにそれぞれ割り当てられるような同一の情報を基本的に提供する標準的なデータ・オブジェクトに関連するイベント・ハンドリング・システムにより部分的にのみ解釈できないか、又は解釈可能なオリジナル・イベント・オブジェクトを含むトレーニング・データセットを提供することで、このITモニタリング・システムを迅速かつ正確に下流側のイベント・ハンドリング・ワークフローへと一体化することを可能とする。
【0025】
多くのユースケースのシナリオにおいては、オリジナル・イベント・オブジェクト及び標準的なイベント・オブジェクトを含むトレーニング・データは、容易に利用可能なので、標準的なイベント・オブジェクトの明示的な特定及びアノテーションは必要ない。例えば、いくつかのユースケースにおいて、変換プログラムのソース・コードにハード・コードされた明示的なフォーマット変換ルーチンは、時として、特定のITモニタリング・ツールのオリジナル・イベント・オブジェクトを、イベント・ハンドリング・ワークフローへと一体化させるために使用される。履歴データベース、すなわち、入来するオリジナル・イベント・オブジェクト及びハード・コードされたプログラムによりそれらから生成された標準的なイベント・オブジェクトを含むログ・ファイル、又はディレクトリは、MLプログラムをトレーニングするためのトレーニング・データセットとして使用することができる。2つ又はそれ以上の異なるITモニタリング・システムの変換履歴を結合することにより、トレーニング・データが提供され、これが、ユーザの如何なるプログラム・コードの修正を必要とすることなく、2つ又はそれ以上の異なるタイプのITモニタリング・システムに対するフォーマット変換を自動的に実行するように適応された、トレーニングされたMLプログラムの自動的生成を可能とする。
【0026】
例えば、MLプログラムは、トレーニング目的のために使用されるコンピュータ上のトレーニング・データセットでトレーニングすることができ、その後、入来するオリジナル・イベント・オブジェクトを、標準的なイベント・オブジェクトへと変換するために使用される他のコンピュータ・システムへと転送することができる。例えば、トレーニングされたMLプログラムの転送は、ネットワーク、例えばインターネット、又は携行型のデータキャリア、例えば、USBディスク、又はSDカードを介して実行することができる。他の実施形態によれば、同一のコンピュータ・システムは、MLプログラムのトレーニングのため、及びフォーマット変換を実行するためにトレーニングされたMLを使用するための両方に使用することができる。
【0027】
トレーニングされたMLプログラムへと入力されるオリジナル・イベント・オブジェクトを生成する1つ又はそれ以上の動作中のITモニタリング・システムは、トレーニング・データのオリジナル・イベント・オブジェクトが提供された、1つ又はそれ以上のITモニタリング・システムと同一とすることができ、そのサブセット、又はスーパーセットとすることができ、又は異なるITモニタリング・システムとすることができる。動作中のITモニタリング・システムは、単独、又はトレーニング・データセットのオリジナル・イベント・オブジェクトを生成するために使用されたITモニタリング・システムと組み合わされた他のタイプとするべきであろう。
【0028】
実施形態によれば、トレーニングされた機械学習プログラムの使用は:1つのITモニタリング・システムからの新たなオリジナル・イベント・オブジェクトを受領すること、新たなオリジナル・イベント・オブジェクトを、標準的データ・フォーマットを有する新たな標準的なイベント・オブジェクトへと自動的に変換するため、トレーニングされた機械学習プログラムを使用すること;及び新たなイベント・オブジェクトを、新たな標準イベント・オブジェクト内に含まれるアトリビュート値の関数として新たな標準イベント・オブジェクトを表現した新たなイベントを自動的にハンドリングするためのイベント・ハンドリング・システムへと提供することを含む。
【0029】
実施形態によれば、新たなイベント・オブジェクトを新たな標準イベント・オブジェクトへと自動的に変換するためにトレーニングされた機械学習プログラムを使用することは、トレーニングされた機械学習プログラムにより直接変換を実行することを含む。このことは、ユーザに対し複雑さを隠すという利点を有する可能性がある。例えば、いくつかの機械学習アプローチ、例えば、いくつかのタイプのニューラル・ネットワーク、又はサポートベクトル・マシンは、ユーザが、トレーニングされたMLプログラムにより使用される明示的な変換アルゴリズム、又は発見を受けとることを許可しない“ブラック・ボックス”として機能する。
【0030】
他の実施形態によれば、新たなオリジナル・イベント・オブジェクトを新たな標準イベント・オブジェクトに自動的に変換するためにトレーニングされた機械学習プログラムを使用することは:トレーニングされた機械学習プログラムによって1つ又はそれ以上の明示的なイベント・オブジェクトの変換ルールをイクスポートすること;及びルール・エンジンによって、オリジナル・イベント・オブジェクトを、入力されたオブジェクト変換ルールに従って標準イベント・オブジェクトへと変換することを含む。
【0031】
ここで、トレーニングされたMLプログラムは、いくつかの実施形態においては、オリジナル・イベント・オブジェクトを標準イベント・オブジェクトへと変換するために間接的に使用されることができる。このことは、ユーザが自動的な学習変換ロジックを理解し、かつレビューすることを可能とする効果を有する可能性がある。このことは、ユーザに対して自動的に学習された変換アルゴリズムを理解し、レビューし、承認し、又は修正し、又はこれらの組み合わせるための制御を提供することを可能とする。
【0032】
例えば、トレーニングされたMLプログラムから明示的な変換ルールを抽出するために使用することができる機械学習アプローチの種々のタイプのためのいくつかの抽出アルゴリズムが存在する。例えば、Hailesilassie、Tameru、2016、“ディープ・ニューラル・ネットワークのためのルール抽出アルゴリズム:レビュー”は、ディープ・ニューラル・ネットワークを含むニューラル・ネットワークからのいくつかのルール抽出アプローチを記載する。
【0033】
実施形態によれば、本方法は、さらに、ユーザが1つ又はそれ以上の明示的なイベント・オブジェクト変換ルールを修正、又は同意、又はそれらの両方を可能とするGUIを生成することを含む。このことは、ユーザが自動的な機械学習変換アルゴリズムを理解し、レビューし、承認し、又は修正し、又はこれらの組み合わせをするために利益的である。特に、トレーニング・データセットが小さいか、又は偏っている場合においては、MLプログラムにより暗黙的に学習された変換アルゴリズムは、誤りを含むというリスクが有する可能性がある。学習ルールを識別してイクスポートすることにより、ユーザは、自動的に抽出されたイベント・フォーマット変換ルールをレビューし、かつまた補正することが可能となり、これによって変換が誤ったイベント・ハンドリング・ワークフローを与える可能性のある標準イベント・オブジェクトへの如何なるエラーでも導入されないようにすることが可能となる。
【0034】
実施形態によれば、GUIは、ユーザが、ルールがルール・エンジンに入力される前に1つ又はそれ以上の明示的なイベント・オブジェクト変換ルールを修正、又は承認、又はそれらの両方を行うことを可能とする。このことは、実施形態により、ユーザがルールをレビューし、修正し、又は承認し、又はこれらの組み合わせをしない限り、トレーニングされたMLによりイベント・フォーマット変換が実行されないという効果を有する可能性がある。誤ったイベント・ハンドリングは、誤った分析結果の生成を生じさせる可能性があり、かつモニタされたITシステムの全体、又はそれらのコンポーネントの損傷でさえも生じさせる可能がある。したがって、ユーザに対して、ルールが実行される前にイベント・フォーマット変換ルールのレビュー及び修正の機会を提供することは、モニタされたITシステムのフォーマット変換の品質、及び精度、及び信頼性(堅牢性及び可用性)を増加することができる。
【0035】
実施形態によれば、データベース内の少なくとも1つの標準イベント・オブジェクトのクラスID及びアトリビュート値は、人間のユーザによる手作業で特定される。例えば、ユーザは、手作業でトレーニング・データ内の標準イベント・オブジェクトのいくつかを生成するか、又は自動的に生成された標準イベント・オブジェクトのセットの誤りを訂正することができる。このことは、ユーザが如何なる(完全に又は部分的に)不完全、又は不正確なトレーニング・データセットでも柔軟に補充し、又は訂正することを可能とする効果を有する可能性がある。トレーニング・データセットの品質を向上させることは、トレーニングされたMLプログラムにより実行されるフォーマット変換の精度を向上するであろう。
【0036】
いくつかの実施形態によれば、データベースの少なくともいくつかの標準イベント・オブジェクトのクラスID及びアトリビュート値は、イベント・ハンドラにより自動的に生成される。例えば、いくつかのオリジナル・イベント・オブジェクトのオリジナル・データ・フォーマットは、部分的にイベント・ハンドラ・システムによって解釈されることができる。いくつかのイベント・ハンドリング・システムは、内部データ構造、すなわち、XMLファイルとして、JSONファイルとして、又はバイナリ・データ・オブジェクトとして、如何なる入来オリジナル・イベントでも示すように構成され、かつ不揮発性のストレージ媒体上にその内部フォーマットにエンコードされた情報を格納するように構成される。これらの格納されたデータ構造は、好ましくはそれらが発生したオリジナル・イベント・オブジェクトに関連して格納されることが好ましい。格納されたデータ構造は、標準イベント・オブジェクトを部分的に完全な、又は不完全なものとして使用することができる。したがって、いくつかのタイプのイベント・ハンドリング・システムは、少なくとも1つのオリジナル・データ・フォーマットで正確に解釈するように、かつこのフォーマットを有するオリジナル・イベント・オブジェクトを、ワークフローのいくつかの下流側処理が実行された場合にイベント・ハンドラによって少なくとも部分的に解釈可能な標準イベント・オブジェクトへと変換するように適応化することができる。これらの内部的に変換された標準イベントをトレーニング・データセットとして格納することは、互換性のある大規模なトレーニング・データセットを半自動的、かつ迅速に生成するという効果を有する可能性がある。例えば、イベント・ハンドリング・システムにより、オリジナル・イベント・フォーマットのいくつかのフィールドが正確に処理できない場合、内部データ構造内のこれらのフィールドは、空である可能性があるか、又は非標準的な対応的データを含む可能性がある。加えて、又は代替的に、イベント・ハンドラのログ内のログ・エントリは、ログ変換プログラムにより自動生成された標準イベント・オブジェクトへと自動変換されることができる。
【0037】
本実施形態によれば、本方法はさらに、受領したオリジナル・イベント・オブジェクトの、例えば、MLプログラムのプリプロセッシング・プログラム、又はサブモジュールによるプリプロセッシングを含むことができる。その後、プリプロセッシングされたオリジナル・イベント・オブジェクトは、機械学習プログラムにより新たな標準イベント・オブジェクトへと変換される。プリプロセッシングは:
i.新たなオリジナル・イベント・オブジェクトに含まれる1つ又はそれ以上のデータ値を抽出するために、新たなオリジナル・イベント・オブジェクトに1つ又はそれ以上の自然言語処理(NLP)機能を適用すること;例えば、オリジナル・イベント・オブジェクトは、自然言語において、例えば“コンピュータ・システムTWEX2284のディスク・ドライブDR1が、70%を超えて一杯である。”と特定されるセンテンスを含むことができ、NLP機能は、オブジェクトの名前(例えば、“DR1及びTWEX2284”)、又はオブジェクトのアトリビュート(例えば、ストレージ占有率=70%”)、又はそれら両方を自動的に識別することができる;フィールドのタイプ及びフィールド内に含まれるデータ値のセマンティック的な意味に関する情報は、トレーニング、又はフォーマット変換のためにトレーニングされたMLプログラムを使用する場合に、又はそれら両方の間のMLプログラムの入力として使用することができる;例えば、NLP機能は、(ストレージ-デバイス=“DR1”,,コンピュータ・システムID=“TWEX2284”、及びストレージ占有率=“70%”);といった特性値のペアを抽出することができ;オリジナル・イベント・オブジェクトから名前-値ペアを抽出する場合に、NLP機能は、例えば、類義語辞書(例えば、“ディスク・ドライブが、“ストレージ・デバイス”であるべきといった)との組み合わせにおける、例えば構文パーサ、又はPOS(パート・オブ・スピーチ)、又はこれらの組み合わせのパーサを含むことができ;又は
ii.新たなオリジナル・イベント・オブジェクトに含まれる1つ又はそれ以上のデータ値を抽出するために新たなオリジナル・イベント・オブジェクトにパーサを適用すること;例えば、POSパーサ、又は構文パーサは、特定の構文機能を有する単語、又はフレーズを識別するために、オリジナル・イベント・オブジェクトに含まれる1つ又はそれ以上のテキスト・セクションに対して適用されることができるかそれらの両方であり;
iii.抽出されたデータ値が1つ又はそれ以上の別のイベント・クラス名を含むか否かをチェックすること;例えば、イベント・クラス名のリストは、ユーザ定義されることができ、かつ手作業で特定されるか、又は標準イベント・オブジェクト及びそれらのそれぞれのクラスIDsの全体からトレーニング・フェーズの間に自動的に抽出されるか、又はそれら両方である。もしそうであれば、抽出されたイベント・クラスのラベルは、抽出されたデータ値(複数でもよい)に割り当てられる;例えば、抽出されたイベント・クラスのラベルが、MLプログラムがこの抽出されたイベント・クラスのラベルを出力される標準イベント・オブジェクトへと指定することを可能とするため、トレーニングされたMLプログラムの入力として提供されることができ;又は
iv.抽出されたデータ値が、1つ又はそれ以上の別のアトリビュート名を有しているか否かをチェックする;例えば、アトリビュート名のリストは、ユーザ定義されることができ、かつ手作業で特定されるか、又は標準イベント・オブジェクト及びそれらのそれぞれのアトリビュートの全体からトレーニング・フェーズの間に自動的に抽出されるか、又はそれら両方である;もし、抽出されたデータ値が、1つ又はそれ以上の異なるアトリビュート名を有するならば、プリプロセッシングは、抽出されたデータ値にデータ・フィールド名を割り当て、データ・フィールド名が、標準データ・フォーマットによって選択される;例えば、オリジナル・データ・オブジェクトがアトリビュート名“ディスク・ドライブ”を有するフィールドを含むが、標準イベント・オブジェクトのそれぞれのフィールド及びアトリビュート名が、“ストレージ・デバイス”の場合がある。標準データ・フォーマットのすべてのアトリビュート名及びそれらの類義語の辞書に基づいて、オリジナル・イベント・オブジェクト内のデータ値は、それらのセマンティック的な意味に加えて自動的に識別され、かつMLプログラムへの入力として提供することができ、それによって、MLプログラムがこれらのデータ値を、データ値が導出されたオリジナル・イベント・オブジェクト内の位置としての同一のセマンティック的概念を表すフィールド内に含む標準イベント・オブジェクトを生成することを可能とする。
v.パーサ又は自然言語処理機能、又はこれらの両方によってオリジナル・イベント・オブジェクトから抽出された1つ又はそれ以上のデータ値を、イベント・クラス名としてプリプロセッシングされたオリジナル・イベント・オブジェクトに追加すること;抽出されたデータ値が標準データ・フォーマットのアトリビュートにマップできない場合であっても、それにもかかわらず、これらのデータ値をMLプログラムへと入力されるプロプロセッシングされたオリジナル・イベント・データに割り当てることは有用である可能性がある。例えば、オリジナル・イベント・オブジェクトは、プリプロセッシングを実行するプログラムに提供されたイベントを有するITモニタリング・システムに接続する、ネットワーク・スイッチの状態を含む可能性がある;イベントは、ネットワーク・スイッチの状態に事前定義された関係がない、かつしたがって、標準データ・フォーマットにおいて、アトリビュート“ネットワーク・スイッチ状態”を含まない“ディスク満杯”イベントに関連することができる。しかしながら、複雑なシステムにおいては、ネットワーク・スイッチの特定の状態、又は構成は、例えば、間違ったシステム構成、又は複雑で、予測できないシステム・コンポーネントの相互依存性のため、ネットワーク接続性に不測の影響を有する可能性があり、この場合において、-投機的に関連性のない-ネットワーク・スイッチの状態に関する情報を、このデータを特定のイベント・タイプに関連付けることを学習する機械学習プログラムに提供する。本発明の実施形態は、未知のシステム・コンポーネントの相互依存性を解明するために使用することができる。典型的には、これらの相互依存性は、望まれず、かつ本発明の実施形態は、複雑なITシステムをより一貫性がある、かつ信頼されるようにするために、それらの相互依存性を識別し、かつ取り除くために使用することができる。
【0038】
実施形態によれば、受領したオリジナル・イベント・オブジェクトの新たな標準イベント・オブジェクトへの変換は、新たなオリジナル・イベント・オブジェクトのデータ値の関数として優先レベルを自動的に計算すること、及び新たな標準イベント・オブジェクトにおけるアトリビュート値として優先レベルを格納することを含む。
【0039】
実施形態によれば、本方法は、さらに、イベント・ハンドリング・システムによって、その優先レベルにしたがって新たなイベントを自動的に優先化するために、新たな標準イベント・オブジェクトの優先レベルを分析することを含む。
【0040】
これは、イベント・ハンドラが他のイベントに先立ってより高い優先レベルが割り当てられるように処理することを可能とするか、又は高い優先レベルが割り当てられた標準イベントを処理するプログラム・ルーティンに対してより多くのIT資源(例えば、CPU、ストレージ、又はメモリ、又はこれらの組み合わせ)を割り当てるか、又はこれらの組み合わせを可能とする効果を有する可能性がある。
【0041】
本明細書で使用する“優先レベル”、又は“優先度”は、データ値であり、典型的には、イベントの重要度を特定する数値データ値である。特に、重要度は、ITモニタリング・システムによってモニタされるITコンポーネントの可用性、精度及び機能に関する重要度とすることができる。例えば、オペレーティング・システムにより要求されるテンポラリ・ファイルを格納するために使用されるデータ・ストレージに影響する“ディスク満杯”イベントは、オペレーティング・システムがテンポラリ・ファイルを格納することを妨害される場合、オペレーティング・システム及びオペレーティング・システムに依存するすべてのソフトウェア・アプリケーション及びITコンポーネントが停止する可能性があるので、バクアップ目的のみに使用されるデータ・ストレージに影響するディスク満杯イベントよりも、より高い優先レベルに割り当てられる。例えば、本発明の実施形態によれば、MLプログラムをトレーニングするために使用されるトレーニング・データセットは、指定された優先レベルを有する標準イベント・オブジェクトを含む。トレーニング中に、MLプログラムは、オペレーティング・システムを含む特定のデータ・ストアに関連するディスク満杯イベントは、例えば、バックアップ・ドライブといった他のデータ・ストアに関連する全イベントよりもより高い優先レベルが割り当てられるべきであることを学習することができる。オペレーティング・システムのためのデータ・ストア及びバックアップのためのデータ・ストアは、同一のタイプのハードウェアに基づくものであり、かつ同一のオリジナル・データ・フォーマットを有するオリジナル・ディスク満杯イベントを生成することができることに留意するべきである。トレーニング・データセット内のそれぞれの標準イベント・オブジェクト内の優先レベルは、ユーザが手作業で割り当てることができ、かつITコンポーネントそれ自体から直接、又は生成されたオリジナル・イベントから得ることができないITシステム全体についての特定のITコンポーネントの関連性を反映することができる。したがって、いくつかの手作業で又は自動的にアノテートされた優先レベルを含むトレーニング・データセットでMLプログラムをトレーニングすることは、ITシステムの機能についてのそれらの技術的関連性の正確な指標を含む標準イベント・オブジェクトへと、オリジナル・イベント・オブジェクトを変換することを可能とするトレーニングされたMLを提供する効果を有する可能性がある(この全体の関連性は、オリジナル・イベント・オブジェクトに含まれる情報から明示的に導出されない場合であっても)。したがって、トレーニングされたMLプログラムは、MLプログラムが特定のタイプのIT資源について生成されたディスク満杯イベントを、そのフォーマットがイベント・ハンドラによって解釈可能である標準イベント・オブジェクトへの学習された変換を有するばかりではなく、MLプログラムはまた、複数のITソースのどの1つ(識別できるタイプである場合)が、モニタされる特定の関連性である複雑なITシステムの所与の特定の構成及び設定であるのかを学習済みである。これは、イベント・ハンドリングの品質を大きく増加させることができると共に、イベント処理を高精度に優先付けすることを支援することができる。
【0042】
実施形態によれば、オリジナル・イベント・オブジェクトのデータ値は、以下を含むグループから選択される:
オリジナル・イベントの生成をトリガしたデータ処理システムの識別値(例えば、IPアドレス、MACアドレスなど);又は
オリジナル・イベント・オブジェクトの生成をトリガしたコンピュータ・システムのオペレーティング・システム(例えば、MS Windows(登録商標)7、特定のバージョンのLinux(登録商標)など);又はオリジナル・イベントの生成がトリガされた時の時間及び日付;又はオリジナル・イベント・オブジェクトの生成がトリガされたオブジェクトを含む地理的ロケーション(例えば、地理的領域の識別値、建物、建物内の部屋など);又は
技術的問題の激しさ、規模、又は優先度を示す数値又は値の範囲;又は
オリジナル・イベントの生成をトリガしたイベントを記述する1つ又はそれ以上のストリング、又はデータ処理システム、又はシステム・コンポーネント又はそれらの組み合わせ;又は
マウント・ポイント、すなわち、新たにマウントされた媒体が媒体のマウンティング・プロセスの間に登録されたファイル・システムのロケーションであって、マウンティング・プロセスが、オペレーティング・システムがファイル及びディレクトリを、コンピュータのファイル・システムを介してアクセス可能なストレージ・デバイス上に作成するプロセスである;これは、例えば、マウンティングに失敗したイベント、又はマウンティングが完了したイベントといった、えば、マウンティング関連のイベントであるイベントについての重要な情報となる;又は
例えば、オリジナル・イベントの生成をリガしたデバイスの内部デバイスIDといった内部デバイスID;又は
上述したデータ値の2つ又はそれ以上の組み合わせ。
【0043】
実施形態によれば、標準イベント・オブジェクトのアトリビュート値は、上述したデータ値のグループから、また(これらのデータ値から得られるいくつか、又はそれら全部)から選択される。アトリビュート値は、標準データ・オブジェクトの特定のフィールド内のセマンティック概念(アトリビュート)を互いに表す、1つ又はそれ以上のデータ値を格納することによって、1つ又はそれ以上のデータ値から生成することができ、それによって、フィールドは、標準・データ・フォーマットによる事前定義された意味(それがアトリビュートを表す。)を表す。したがって、オリジナル・イベント・オブジェクトのデータ値は、標準イベント・オブジェクトの1つ又はそれ以上のフィールド内に格納され、データ値において搬送される情報は、標準データ・オブジェクトのフィールドの事前定義されたセマンティック的な意味にマッチし、かつイベント管理システムにより解釈することが可能である。
【0044】
本実施形態によれば、新たな標準イベント・オブジェクトのイベント・クラスは、以下を含むグループから選択される:
ストレージ満杯イベント;ストレージ満杯イベントは、論理的又は物理的なストレージに関連することができ、特定のストレージが所定のパーセンテイジ、例えば、85%、又は90%、又は100%まで満杯になったことを示す;
ネットワーク接続失敗イベント;
タスク・キュー満杯イベント;
サーバ利用不可イベント;
デバイスに送付した要求又はコマンドのタイムアウト・イベント;
マウンティング・イベント。
【0045】
イベントのクラスIDの自動的な識別は、MLプログラムが自動的に、クラス特定構文、例えば、クラス特定のセット及びアトリビュートの順序及びそれぞれの特定のアトリビュート値を格納するために使用される、定義されたセマンティック的意味を有するフィールドを含む標準イベント・オブジェクトを生成することを学習するという効果を有する可能性がある。いくつかのイベント・ハンドリング・システムは、事前定義された標準イベント・クラスのセットをサポートしており、それによって、特定のイベント・クラスの標準イベントは、事前定義されたフィールド内に1つ又はそれ以上のアトリビュート値を含むことが要求される。自動的にオリジナル・イベント・オブジェクト内のデータ値及びそれらのセマンティック的な意味の両方を識別し、かつ少なくとも1つの識別されたデータ値が事前定義された標準イベント・クラスに対応するか否かをチェックすることにより、MLプログラムは、イベント・ハンドラによりサポートされ、かつ解釈可能な標準イベントのクラスに対応する標準イベント・オブジェクトを自動的に生成することができる。
【0046】
本実施形態によれば、1つ又はそれ以上のイベント・クラスは、イベント解決ワークフロー定義が割り当てられる。イベント解決ワークフロー定義は、イベントの特定のクラスのイベントを処理するために使用されるべきコンピュータ実装ワークフローを特定する。例えば、“ストレージ満杯イベント”のイベント解決ワークフローは、例えば、管理者、又はストレージにデータを格納することを許されたユーザ、又はそれら両方といった1人又はそれ以上のユーザに対して警告メッセージを送付することに組み合わせて、自動的に追加のストレージを割り当てることとすることができる。対照的に、“サーバ使用不可イベント”についてのイベント解決ワークフローは、サーバの自動的な再スタート、又はサーバに対していくつかのステータス試験を自動的に実行して底流にある問題を識別すること、又はこれらの両方を含むことができる。
例えば、イベント解決ワークフロー定義は、人間、又は例えばXMLファイル、Jsonファイルなどといった機械可読なファイルとすることができる。イベント解決ワークフロー定義は、また、イベント解決ワークフロー、又はその一部を実行するために使用される実行可能物とすることができるか、又はそれを含むことができる。本方法は、イベント・ハンドリング・システムが提供されたイベント解決ワークフロー定義にしたがってイベント解決ワークフローを実行することにより、新たなイベントを自動的に処理するべく、イベント・ハンドリング・システムをイネーブルするためのイベント・ハンドリング・システムに新たな標準イベント・オブジェクトのイベン・クラスに関連するイベント解決ワークフロー定義を提供することを含む。
【0047】
実施形態によれば、それぞれのトレーニング・データセット内の少なくともいくつかの標準イベント・オブジェクトは、例えば、ITシステムの動作モードを制御するか、又は標準イベント・オブジェクト内で指定されたイベントに反応してそのコンポーネントを制御するといった特定の標準イベント・オブジェクトを受領することに応答して、イベント・ハンドリング・システムにより使用されたワークフローを指定するイベント解決ワークフロー定義が割り当てられる。例えば、反応は、反作用するように、緩和するように、又はそうでなければ、例えばストレージ満杯イベントといった特定のイベントに対応するように適応されることができる。
【0048】
トレーニングの間に、MLプログラムは、オリジナル及び標準イベント・オブジェクトのペアを評価すると共に、またそれぞれの標準イベント・オブジェクトに割り当てられたイベント解決ワークフロー定義を評価する。この情報に基づいて、MLプログラムは、このタイプのイベントに応答する、如何なる下流側のイベント・ハンドリング・システムによって追行されるべきイベント解決ワークフローの規格を予測するために、以前に、かつ多分成功裏にイベントに対して反応するために使用されたイベント解決ワークフローから学習する。
【0049】
実施形態によれば、イベント解決ワークフロー定義は、データベースにイベント-クラスを特定する仕方において標準イベント・オブジェクトに指定される。他の実施形態においては、指定は、より粒子的であり、かつイベント解決ワークフローは、イベントごとの基準において標準イベント・オブジェクトに指定される。このことは、特定の、現在受領しているオリジナル・イベント・オブジェクトのために適切なイベント解決ワークフロー定義を、より微細な粒子での仕方で予測することを可能とする、MLプログラムの生成を許容する。
【0050】
少なくともいくつかの標準イベント・オブジェクトが、特定のイベントを解決するために(成功裏に)使用されたワークフローのイベント解決ワークフロー定義に指定される、オリジナル及びそれに関連する標準イベント・オブジェクトを有するトレーニング・データセットでMLプログラムをトレーニングすることは、例えば、イベント解決ワークフロー定義の1つを、標準イベント・クラスの1つに指定するといった手作業で定義されたルールの手段によるというような明示的に特定する必要がないので、高度に効果的である可能性がある。第1に、多くの異なるタイプの相互接続されたコンポーネント及びそれぞれのイベント・タイプを含む特に高度に複雑なITシステムにおいては、特定のイベントに応答する最良の解決ワークフローの手作業の測定は、高度に時間の浪費であり、かつしばしばシステムの複雑性のため可能ではない。
第2に、出願人は、イベント・タイプだけではなく、またトレンド、優先レベル、及び1つ又はそれ以上のアトリビュート値の量が、どの種類のイベント解決ワークフローが好ましいかの問い合わせについて効果を有する可能性のあることを見出した。例えば、低い優先レベルを有するデータ・ストレージについて50%の占有レベルを示すストレージ満杯イベントの場合、特定の企業は、これらのイベントをより大きなストレージ・デバイス又は1つ又はそれ以上の追加的なストレージ・デバイスを発注することによっていつもは対処してきた可能性がある。同一のデータ・ストレージについて占有レベルが90%であることを示すストレージ満杯イベントの場合には、この特定の企業は、過去には、いつもこれらのイベントに対して、テンポラリ・ファイル、又はもはや必要ではない他のファイルを識別して削除するか、又はいくつかのストレージ・クリーニング機能を実行することにより対処してきた可能性がある。これらのこととは異なり、企業特定のイベント解決ワークフローは、トレーニング・データセットにより網羅され、このトレーニング・データセットでトレーニングされた機械学習プログラムは、この企業がすでに成功裏に過去に実行したイベント解決ストラテジーに対応する如何なる新たに生成される標準イベント・オブジェクトについてのイベント解決ワークフロー定義を自動的に割当てることを可能とする。
【0051】
この実施例は、また、同一のタイプのイベント(ストレージ満杯イベント)は、1つ又はそれ以上のそのアトリビュート値(例えば占有レベル50%、90%)が異なるか、又は標準イベント・オブジェクトが異なる予測トレンド、又は優先レベルに指定された場合には、異なるイベント解決ワークフロー定義にでも指定される可能性がある。したがって、トレーニングされたMLプログラムは、標準イベント・オブジェクトに指定されたそれらのアトリビュート値に依存、又は予測トレンド及び優先レベルの如何なるものに依存して、異なる標準イベント解決ワークフロー定義を指定することができる同一のイベント・クラスの異なる標準イベント・オブジェクトを生成するように構成することができる。このことは、これらの特徴が、イベント・ハンドリング・システムをして多くの異なる状況及びイベントに高度な柔軟性をもって、かつ細かな粒度において反応することを可能とするので、有効である可能性を有する。
【0052】
さらなる利便性ある側面においては、本発明の実施形態は、特定の組織のためのイベント解決ワークフローを使用して複数の異なるイベントを、自動的で、かつ高度に柔軟性のある処理を許容する。ストレージの不足が追加のハードウェアの購入、又はいくつかのデータの削除により対処されるべきという問い掛けは、ハードウェア手段により達成しようとする組織の目的及び格納されたデータのタイプに強く依存する。特定の組織のために特有のオリジナル・イベント及び標準イベント(及びそれぞれイベント解決ワークフローに指定された)のデータを含むトレーニング・データセットを提供することにより、例えば、トレーニング・データは、その組織のイベント及びイベント解決ワークフローを含むので、現在のアラート・メッセージを、すでに推奨され、かつ特定の組織の必要性に最も適合するものと仮定することができるイベント解決ワークフロー定義に指定された標準データ・オブジェクトへと自動的に変換することが可能なプログラムを、迅速に生成することができる。機械学習プログラムが、トレーニング・データセットのセットでトレーニングされることだけが必要である。
【0053】
具体的な実施例を提供するために、トレーニング・データセットには、多数の企業特有のサブセットが提供される。
【0054】
トレーニング・データセットの第1のサブセットは、1.5年以上にわたり収集されたカナダ企業のイベント履歴データを含む。第1のサブセットは、Icinga2のオリジナル・データ・フォーマットを有するオリジナル・イベント・オブジェクトを含む。これらのオリジナル・データ・オブジェクトは、IBMネットワーク・マネージメント標準データ・フォーマットを有する標準イベント・オブジェクトにそれぞれ指定される。すべてのオリジナル及び標準イベント・オブジェクトは、イベント時刻を含む。標準データ・オブジェクトの少なくともいくつかには、優先レベル及び少なくとも部分的にいくつかのカナダ企業のプリファレンスを反映する、イベント解決ワークフロー規格が指定されている。標準イベント・オブジェクト及びイベント解決ワークフロー規格の優先レベルは、手作業でそれぞれのイベント・オブジェクトに特定され、かつ指定されている。
【0055】
トレーニング・データセットの第2のサブセットは、6カ月にわたって収集されたスイス企業のイベント履歴データを含む。第2のサブセットは、SCOMオリジナル・データ・フォーマットを有するオリジナル・イベント・オブジェクトを含む。これらのオリジナル・データ・オブジェクトはそれぞれIBMネットワーク・マネージメント標準データ・フォーマットを有する標準イベント・オブジェクトに指定されている。再度、標準データ・オブジェクトの少なくともいくつかには、優先レベル及びイベント解決ワークフロー規格が指定されている。しかしながら、この場合、イベント解決ワークフロー内の標準イベント・オブジェクト及び優先レベルは、ルール・エンジンにより実行された手作業で特定されたルールのセット手段により自動的に生成され、かつ指定されたものである。
【0056】
トレーニング・データセットの第3のサブセットは、6カ月にわたって収集されたドイツ企業のイベント履歴データを含む。オリジナル・イベント・オブジェクトは、SCOMオリジナル・データ・フォーマットを有する。標準イベント・オブジェクトは、IBMネットワーク・マネージメント標準データ・フォーマットを有する。第2のサブセットについて説明したように、標準イベント・オブジェクト、優先レベル及び予測されたトレンドは、ルール手段により生成された。しかしながら、ドイツ企業は、スイス企業とは異なるイベント解決ワークフロー定義を使用し、かつまたイベントを違って優先付けする。
【0057】
トレーニング・データセットの第4のサブセットは、3年以上にわたるNagiosイベントとして特定されたオリジナル・イベント・オブジェクトを、IBMネットワーク・マネージメント標準データ・フォーマットへと変換したフランス企業のイベント履歴データを含む。
【0058】
このヘテロジェニアスなトレーニング・データセットでプログラムをトレーニングし、かつ機械学習させることによって、トレーニングされたMLプログラムは、多くの異なるオリジナル・データ・フォーマットで特定されたイベント・オブジェクトを正確に、共通する標準データ・フォーマットへと変換することばかりではないことを可能とすることができる。トレーニングされたMLプログラムは、これに加えて、それぞれの標準イベント・オブジェクトのそれぞれに対して予測された優先レベル、又は組織特有の戦略、又は要求に対応するイベント解決ワークフロー定義、又はそれらの両方を指定することができる。これによって、トレーニングされたMLプログラムは、好ましくは異なるデータ・フォーマットによりセマンティック的に暗示される粒状性ばかりではなく、名前変換及び企業のITシステムの技術的特性を暗示する粒状性を考慮する。
【0059】
例えば、カナダ企業は、パターンDB[0-9][0-9][0-9][0-9]に従った名前を、データベース・サーバのための識別子として使用することができ、かつ、パターンSRV[0-9][0-9][0-9][0-9]に従った名前を、アプリケーション・サービス・プロバイダとして機能するサーバ・コンピュータのための識別子として使用することができ、ここで、表現“[0-9]”は、0~9の如何なる単一の数字を表す。すべてのデータベース・サーバは、Linux(登録商標)をオペレーティング・システムとして使用することができ、かつすべてのアプリケーション・サーバ・コンピュータは、Windows(登録商標)を使用することができる。すべてのネットワーク・ルータは、キャラクタ“R”で開始し、これに続く10桁の数字の識別子が指定される。
【0060】
これと対照的に、フランス企業のすべてのコンピュータは、Linux(登録商標)オペレーティング・システムを有し、かつ2つのキャラクタ“CS”で開始し、これに続く6桁の数字の識別子を有する。すべてのネットワーク・ルータは、8桁の数字で開始し、これに続く部門ID、続くサフィックス“NRI”の識別子が指定される。
【0061】
実施形態によれば、トレーニングされたMLプログラムは、構文に基づくが、また組織特有の名称習慣、及び暗黙的に、又は明示的にオリジナル・イベント・オブジェクト内に表現された他の情報に基づいて識別するように、オリジナル・データ・フォーマット内の、特定のアトリビュートのアトリビュート値を識別するように学習される。いくつかの場合においては、特定の組織により使用された名称習慣からすでに得られたITシステム・コンポーネントのタイプを導出することが可能である。この場合、トレーニング・データは、少なくとも部分的に不完全である。
【0062】
実施形態によれば、本方法は、複数のオリジナル・イベント・オブジェクト及びそれぞれに指定された標準イベント・オブジェクトを有するトレーニング・データセットを提供することを含み、それにより、標準イベント・オブジェクトが、対応するアトリビュート値を含まない、少なくとも1つのアトリビュート・フィールドを含み;少なくともこの1つのフィールド内にユーザがアトリビュート値を記入することによってトレーニング・データセット内の少なくとも1つの標準データ・オブジェクトを補充することを可能とすること;又は予測されたトレンド、優先レベル、又はこの標準イベント・オブジェクトに対するイベント解決ワークフロー、又はこれらの組み合わせを指定することを可能とすること;ユーザによって提供された補充データを、トレーニング・データセットの補充されたバージョンを生成するためにトレーニング・データセット内に格納すること;及び補充されたトレーニング・データセットでトレーニングされたMLプログラムを再トレーニングすることを含む。これらのステップは、多数回反復され、これにいって、反復的にトレーニング・データセットを補充し、かつMLプログラムの精度を改善する。
【0063】
実施形態によれば、トレーニングされたMLプログラム、又はMLプログラムのトレーニングを実行するためのフレームワークは、トレーニング・データとして使用されたデータベース内の標準イベント・オブジェクトが標準データ・フォーマットにより、特定のイベント・クラスの標準イベントのすべてのアトリビュートについての値を含むか否かを自動的に分析するように構成される。例えば、標準データ・フォーマットが、“ストレージ満杯”のタイプのイベントが少なくとも“ストレージID”、“占有パーセンテイジ”、及び“ファイル・システム”のアトリビュートを要求することを意味することができる。しかしながら、分析は、トレーニング・データセット内のすべての標準イベント・オブジェクトのいくつかにおいて、例えば、トレーニング・データセットを生成するためにオリジナル・イベント・オブジェクトを標準イベント・オブジェクトに変換するために使用されたイベント・ハンドリング・ルールが、ソース・イベント・オブジェクトからそれぞれの情報を抽出することができないことのため、又はオリジナル・イベント・オブジェクトが“ファイル・システム”のアトリビュート値を認識することができなかったために、ITモニタリング・システム“ファイル・システム”のフィールドのアトリビュートが空であることを見出す可能性がある。トレーニング・コンピュータ・システムにインスタンス化されるフレームワーク、又はもう1つのソフトウェア・アプリケーションは、いくつか又はすべての標準イベント・オブジェクトが標準データ・フォーマットによって要求されるいくつかのアトリビュート値を欠損しているか否かを判断するため、標準イベント・オブジェクトを自動的に分析するように構成される。もしそうであれば、この分析を実行したソフトウェアは、任意的に、例えばユーザに対してGUIのメッセージボックス、電子メールなどの、手作業により標準データ・オブジェクトの欠損したアトリビュート値の少なくともいくつかを特定することを要求するか、又はトレーニング・データセット内の標準イベント・オブジェクトのアップデート・バージョンを生成するためにトレーニング・データセット内のオリジナル・イベント・オブジェクトに対してトレーニングされたMLプログラムを適用することを要求するか、又はこれらの両方についてのアラートを送付することができる。アラートの受領に応答して、ユーザは、少なくともいくつかの標準イベント・オブジェクト内の欠損したアトリビュート値を手作業で補充するか、又はアップデートし、かつ完了された標準イベント・オブジェクトのバージョンを生成するためにトレーニング・データセットのオリジナル・イベント・オブジェクトにトレーニングされたMLプログラムを手動で適用することができる。アラートの生成は、任意的なステップである。いくつかの場合には、分析を実行した他のソフトウェア・アプリケーションのフレームワークが、標準イベント・オブジェクトの少なくとも1つが標準データ・フォーマットにより必要とされるいくつかのアトリビュート値を欠損していることを判断すると、自動的にトレーニング・データに対してMLプログラムを適用することができ、これにより、トレーニング・データのオリジナル・イベント・オブジェクトを、標準イベント・オブジェクトのアップデート・バージョンへと変換させる。ここで、標準イベント・オブジェクトのアップデート・バージョンのいくつか、又はすべては、少なくとも1つの標準イベント・オブジェクトが欠落していたアトリビュート値を含む。この結果、アップデートされた標準イベント・オブジェクトは、もともと提供されたトレーニング・データセットにおける標準イベント・オブジェクトが欠落している(していた)アトリビュート値(複数でもよい)を含むことになる。その後、準備ができたトレーニングされたMLプログラムは、標準イベント・オブジェクトのアップデート・バージョンを含むトレーニング・データセットで再トレーニングされる。これにより、再トレーニングされ、かつ典型的にはより正確にトレーニングされたMLプログラムが提供される。
【0064】
トレーニング・データセット内の、アップデートされ、より完全なバージョンの標準イベント・オブジェクトを生成するために、トレーニング・データセットにMLプログラムを再適用するステップ、及びトレーニング・データセットのアップデート・バージョンでMLプログラムを再トレーニングするこれらのステップは、多数回実行することができ、これによって、トレーニング・データセットの品質及びトレーニングされたMLプログラムの精度の両方を反復的に改善する。
【0065】
したがって、それぞれのイベント・タイプ、トレーニング・フレームワーク、又は他のソフトウェア・プログラムは、どのアトリビュートが、標準データ・フォーマットによる特定のイベント、又はイベント・クラスのために必要とされるかを分析することができ、アトリビュート値が必要であるが、トレーニング・データセット内の標準イベント・オブジェクト内で欠損している場合、すでにトレーニングされたMLプログラムが欠損した情報を含ませるための標準イベント・オブジェクトの補充バージョン内のオリジナル・イベント・オブジェクトの変換のために使用される。
【0066】
この、オリジナル・イベント・オブジェクトを標準イベント・オブジェクトに変換することを最小の時間及び労力で反復的に改善することができることは、MLプログラムの能力として効果的である可能性がある。
【0067】
例えば、ユーザには、例えば、ユーザがオリジナル・イベント・データから導出することができるが、トレーニングされたMLプログラムによって抽出できなかった1つ又はそれ以上のアトリビュート値を手作業で特定するといった標準イベント・オブジェクトの手作業による編集を可能とするGUIが提供することができる。追加的に、又は代替的に、ユーザは、彼、又は彼女が適切と考える予測されたトレンド、優先レベル、又はイベント解決・ワークフロー記述、又はこれらの組み合わせを指定することができる。MLプログラムを補充されたトレーニング・データセットで再トレーニングすることによって、再トレーニングされたMLプログラムが提供され、これは、いまやオリジナル・イベント・オブジェクト内で、以前のバージョンのMLプログラムは、自動的に埋めることができなかった1つのアトリビュート内に抽出され、かつ格納されるべきデータ値を正確に識別することができる。
【0068】
例えば、サーバ・コンピュータによって生成された特定のイベント・クラスについての標準データ・フォーマットは、アトリビュート“サーバ・ネーム”を要求する可能性がある。しかしながら、カナダ企業のデータベース・サーバにより、又はそのために生成されたオリジナル・イベント・オブジェクトは、標準データ・フォーマットによるアトリビュートとして要求されるフィールド“サーバ・ネーム”を含まない可能性がある。そればかりではなく、オリジナル・データ・オブジェクトは、パターンSRV[0-9][0-9][0-9][0-9]で続く名称でそれぞれ埋められたフィールド“ID”を含む可能性がある。オリジナル・データ・オブジェクトに指定される標準データ・オブジェクトは、空のアトリビュートのフィールド“サーバ・ネーム”を含む可能性がある。したがって、トレーニング・データセットは、不完全である。この状況は、例えば、標準イベント・オブジェクトを生成するために手作業、又は半自動アルゴリズム又はルールが実行されるが、このアルゴリズム、又はルールが、オリジナル・イベント・オブジェクト内で全部のデータ値を正確にパースし、かつ処理することに失敗する場合、極めて頻繁に発生する。
【0069】
MLプログラムが、この“不完全”/“低品質”なトレーニング・データセットでトレーニングされた場合、MLプログラムは、標準データ・フォーマットによって要求されるアトリビュート“サーバ・ネーム”に対応するパターンSRV[0-9][0-9][0-9][0-9]の名前を正確に判断することができない可能性がある。したがって、この不完全のプログラムに基づいて生成されたMLプログラムは、また、不完全で、かついくつかのアトリビュート値を欠落した標準イベント・オブジェクトを生成する可能性がある。
【0070】
しかしながら、追加的な情報で数少ない不完全の標準イベント・オブジェクトのみを補充すること(これは、例えば、ユーザが手作業で提供される。)及びMLプログラムをこのわずかに補充されたトレーニング・データセットで再トレーニングすることは、オリジナル・イベント・オブジェクトを、標準イベント・オブジェクトに変換するためのMLプログラムの能力を顕著に改善するに充分である可能性がある:例えば、カナダ企業のオリジナル・イベント・オブジェクトにおけるフィールド“ID”は、いつもパターンDB[0-9][0-9][0-9][0-9]、又はSRV[0-9][0-9][0-9][0-9]で続く名前で埋められている。ユーザが手作業でいくつか(例えば20未満、例えば10未満)の標準データ・オブジェクトを、それぞれのオリジナル・イベント・オブジェクトで特定されたDB9238又はSRV7288でフィールド“サーバ・ネームを”補充するだけの場合でも、MLプログラムは、再トレーニングの間に学習し、要求されたアトリビュート“サーバ・ネーム”についてのアトリビュート値を、オリジナル・イベント・オブジェクト内の特定の位置、すなわち、フィールド“ID”において見出することができる。MLプログラムは、また、特定のデータ値が要求されたアトリビュートを表すか否かの識別子として、企業特有の名称習慣を使用することができる。
【0071】
さらに実施例を提供するため、ITM6からのディスク満杯イベントは、イベントをディスク満杯イベントであるとクラス分けすると共に、イベント・ハンドリング・システムをイネーブルするために埋められるべきオリジナル・イベント・オブジェクト内に、1つ又はそれ以上のアトリビュート及びそれぞれのアトリビュート・フィールドを要求するであろう。完全なオリジナルのITM6イベント・オブジェクトは、現在の利用及びそれが解消される閾値パーセンテイジに加えて、そのディスク(名前)についてのイベントであるかを特定することが要求される。正確に同一の情報及びフォーマットでオリジナル・イベント・オブジェクトのデータ・フィールドを埋めることは、またNagios又は如何なる他のモニタリング・ツールに由来するディスク満杯イベントについても適用されるであろう。しかしながら、M&E Netcoolイベント・マネージメント・ツールは、Nagios及びITM6ITモニタリング・ツールからのオリジナル・イベントを収集することができる上位ITモニタリング・ツールであり、これらのフィールドは、同一の方法で埋められ、これからは、そのモニタリング・サブシステム及びツールからイベントが生じたのかをそれ以上には判断することができない。しかしながら、NetcoolE&Mツールにより提供されるオリジナル・イベント・オブジェクトの他のフィールドは、依然としてオリジナル・システム及びシステム・コンポーネントの識別値を再構成することを許容することができるモニタリング・ツールに特有の情報を保持することができる。本発明の実施形態によるオリジナル・イベント・オブジェクトの標準イベント・オブジェクトへの自動的な変換は、どこからモニタリング・アラートが来たのか、又はどの技術が使用されたのかを考慮することなく標準化された下流側処理を許容する。これは、新たなアラート・フォーマット(応力を減少し、一体化への品質及びスピード向上)への適応性を改善することができると共に、イベント・ソースの異なるタイプを有するヘテロジェニアス・システムの管理のための全体の能力を改善することができる。
【0072】
実施形態によれば、MLプログラムは、事前定義されたイベント・クラスのセットからオリジナル・イベント・オブジェクト内に含まれるデータ値の依存性に属するオリジナル・イベント・オブジェクトの1つを識別すると共に、識別されたイベント・オブジェクトを、クラスIDを、オリジナル・イベント・オブジェクトを変換することにより生成された標準イベント・オブジェクトに指定するために使用するように適応化されたイベント分類器を含む。追加的に、MLプログラムは、事前定義されたアトリビュート・タイプのセットから、オリジナル・イベント・オブジェクトが、オリジナル・イベント・オブジェクト内に含まれるデータ値の位置及び組み合わせに依存して実行される決定に属するオリジナル・イベント・オブジェクト内に含まれるデータ・タイプのアトリビュート値のセットの1つを識別すると共に、オリジナル・イベント・オブジェクトの変換により生成された標準イベント・オブジェクト内の事前定義された位置でのアトリビュート値としてクラス分けされたデータを格納するように適応されたデータ値分類器を含む。例えば、データ値分類器は、オリジナル・イベント・オブジェクト内の特定のデータ・フィールドのデータ値が、“ソースID”、“ソース名称”、“イベント日付”、“イベント時刻”、及び“ストレージ満杯”の1つであるか否かを判断するために使用されることができる。第1の4つのデータ値は、例えば、“ソース識別子”、“ソース名称”、“時刻”といったアトリビュートの標準データ・フォーマットのアトリビュート値を識別するために使用することができ、ここによって、アトリビュート“時刻”は、“イベント日付”及び“イベント時刻”を組み合わせることによって構築することができる。この第1のデータ値の何れも特定のイベント・クラスに特有ではない。したがって、これらのデータ値は、典型的には、イベント・クラスを予測するためにMLプログラムによって使用することはできない。しかしながら、識別されたアトリビュート“ストレージ満杯”は、イベントが“ストレージ満杯”イベントであることの強力な識別子とすることができる。“ストレージ・アトリビュート”は、生成されるべき、標準イベント・オブジェクトのイベント・クラスを自動的に予測するため、かつこの特定のクラスに属する標準イベント・オブジェクトについて必要な全部のアトリビュート・フィールドを含む標準イベント・オブジェクトを生成するために、イベント分類器によって使用されることができる。
【0073】
イベントの自動的なクラス分けは、本特徴が、モニタリングが複数行われた場合、又はモニタリングが欠損した可能性がある場合についての洞察を提供することから、利益的である可能性がある。追加的に、本特徴は、GSMAモニタリング・ベスト・プラクティスに対するクラス分けされたイベントのモニタリングと比較することを許容することができる。さらに、ハイブリッド・クラウド・モニタリング・システムにおける複雑なITモニタリング・システム多数のイベント・ソースからのイベントの自動的なクラス分けは、数年か/数か月から数日への所要時間及び労力を削減する。これは、事前にイベントを手作業でマッピングし、かつイベントが変化した場合(又は、異なるモニタリング・ツールが使用される場合)に、その後の保守の必要性を排除する。
【0074】
MLプログラムをトレーニングするためのフレームワークを含むコンピュータ・システムは、また、“トレーニング・コンピュータ・システム”として参照することができる。トレーニング・コンピュータ・システムは、例えば、標準的なコンピュータ・システム、又はネットワークを介してそれぞれ他と接続される1つ又はそれ以上のプロセッシング・ユニット、1つ又はそれ以上のストレージ・ユニット及びメモリ・コンポーネントを含む分散コンピュータ・システムといった画一的なものとすることができる。
【0075】
1つ又はそれ以上の動作中のITモニタリング・システムからのオリジナル・イベント・オブジェクトを処理するように構成されたトレーニングされたMLプログラムを含むコンピュータ・システムは、また、“イベント変換コンピュータ・システム”として参照することができる。モニタリング・コンピュータ・システムは、例えば、標準的なコンピュータ・システム、又はネットワークを介してそれぞれ他と接続される1つ又はそれ以上のプロセッシング・ユニット、1つ又はそれ以上のストレージ・ユニット及びメモリ・コンポーネントを含む分散コンピュータ・システムといった画一的なものとすることができる。いくつかの実施形態により、コンピュータ・システムは、トレーニング・コンピュータ・システム及びイベント変換コンピュータ・システムとしての両方に使用される。他の実施形態によれば、トレーニング・コンピュータ・システム及びイベント変換コンピュータ・システムは、異なるコンピュータ・システムであり、かつトレーニングされたMLプログラムは、トレーニング・コンピュータ・システムからイベント変換コンピュータ・システムへと転送されるべきである。いくつかの実施形態によれば、トレーニング・コンピュータ・システムは、追加的にトレーニング・データのいくつかを提供するか、又は増強するために使用することができるイベント・ハンドリング・システムを含むか、又は動作的に結合される。いくつかの実施形態によれば、イベント変換コンピュータ・システムは、追加的に、トレーニングされたMLプログラムにより生成された標準オブジェクトを受領するイベント・ハンドリング・システムを含むか、又は動作的に結合することができる。
【0076】
“データベース”は、本明細書で使用されるように、メモリ、又は不揮発性ストレージ・ボリューム内に組織化される電子的情報(“データ”)の集積である。例えば、データベースは、1つ又はそれ以上のファイルを含むファイル、又はディレクトリとすることができる。いくつかの実施形態によれば、データベースは、特定のタイプのデータベース・クエリによりデータ検索をサポートするか、又はそのために最適化された特定の、定義されたデータ構造を有する。データは、典型的には、データベース・テーブル内に論理的に組織化される。データベースは、特に例えば、カラム指向のデータベース、又は行指向のデータベースといったリレーショナル・データベースとすることができる。
【0077】
“データベース・マネージメント・システム(DBMS)”は、本明細書で使用されるように、データベースの定義、生成、クエリ、アップデート及び管理を許容するように設計されたソフトウェア・アプリケーションである。DBMSの実施例は、z/OSのためのIBMDb2、MySQL、PostgreSQL、IBMDb2 アナリティクス・アクセラレータ(Analytics Accelerator)(IDAA)その他である。
【0078】
“モジュール”は、本明細書で使用するように、情報技術(IT)フレームワーク内で特定の機能を実行するために構成された、ハードウェア、ファームウェア、ソフトウェア、又はこれらの組み合わせである。例えば、モジュールは、スタンドアローンのソフトウェア・アプリケーション、又は1つ又はそれ以上の他のモジュールを含むソフトウェア・アプリケーションのサブモジュール、又はサブルーチンとすることができる。
【0079】
“イベント”は、本明細書で使用されるように、ソフトウェア、又はハードウェア、又はそれら両方に基づくITシステムにより認識される活動、又は発生である。例えば、ITシステムの複数のコンポーネントのそれぞれは、ソフトウェアにより取扱われるアラート・メッセージ、又はステータス・メッセージの形態におけるイベントを非同期的に生成するように構成することができる。コンピュータ・イベントは、システムにより、ユーザ、又は他の方法により生成され、又はトリガされることができる。実施形態により、イベント・ハンドリング・システムによって実行されるワークフローは、イベント・ハンドリング・プロセス・フローに同期的な、少なくともいくつかのイベントを処理するように構成することができ、すなわち、イベント・ハンドリング・ワークフローが、イベントが処理され、頻繁にイベント・ループする1つ又はそれ以上の専用の場所を有することができる。イベントのソースは、実施例の目的で、キーボード上でのキー・ストロークによりソフトウェアと相互作用することができるユーザを含む。もう1つのソースは、タイマ、CPU、ディスク、ネットワーク・スイッチなどといったハードウェア・デバイスである。ソフトウェアは、また、例えばシステム・コンポーネントのステータス変化、又はタスクの完了を通信するか、またはこれらの両方を行うイベントを生成する。
【0080】
“イベント・オブジェクト”は、本明細書で使用するように、イベントのいくつかの側面を記述するデータ値を含むデータ構造である。
【0081】
“イベント・クラス”は、本明細書で使用するように、イベントの特定のタイプを示すことである。例えば、イベント・ハンドリング・システムは、事前定義された“ディスク満杯イベント”、“ネットワーク障害イベント”、“メモリ不足イベント”、“バックアップ処理完了イベント”などのイベント・クラスの限定的なセットに属するイベントを処理することができる。実施形態によれば、それぞれのイベント・クラスは、それぞれ、アトリビュートの固有のセットに対応し、トレーニングされたMLプログラムは、特定のイベント・クラスのメンバであるとして判断されるオリジナル・イベント・オブジェクトを変換するように構成されて、このイベント・クラスを特定するための標準データ・フォーマットにおける、少なくともすべての必須的なアトリビュート・フィールドが対応するデータ値で埋められる。
【0082】
“オリジナル・イベント・オブジェクト”は、本明細書で使用されるように、“オリジナル・データ・フォーマット”として参照されるデータ・フォーマットに従って特定されるデータ値を含むイベント・オブジェクトである。オリジナル・イベント・オブジェクトは、例えば、ITモニタリング・システムにより、又はITモニタリング・システムによりモニタされるシステムのシステム・コンポーネントにより生成されることができる。実施形態により、特定のITモニタリング・システムにより生成されたオリジナル・イベント・オブジェクトは、イベント・ハンドリング・システムがオリジナル・イベント・オブジェクトのオリジナル・データ・フォーマットをサポートしていないので、イベント・ハンドリング・システムにより解釈することができず(正確に)、かつ処理することができない。
【0083】
“標準イベント・オブジェクト”は、本明細書で使用されるように、“標準データ・フォーマット”として参照されるデータ・フォーマットにより特定されるデータ値を含むイベント・オブジェクトである。標準イベント・オブジェクトは、例えば、オリジナル・イベント・オブジェクトを標準イベント・オブジェクトに自動的に変換するMLプログラムによって生成することができるので、オリジナル・イベント・オブジェクト内にエンコードされた少なくともいくつか、又はすべての情報が、また標準イベント・オブジェクトに含まれる。実施形態によれば、標準イベント・オブジェクトは、イベント・ハンドリング・システムが標準イベント・オブジェクトをサポートしているので、イベント・ハンドリング・システムにより(正確に)解釈され、かつ処理されることができる。
【0084】
“オリジナル・データ・フォーマット”は、本明細書で使用されるように、オリジナル・イベント・オブジェクトに含まれるべきデータ値のタイプ、及び任意的にオリジナル・イベント・オブジェクト内のこれらのデータ値の位置、又は名前、又はそれらの両方を特定するイベント・オブジェクトのデータ・フォーマットである。例えば、オリジナル・データ・フォーマットは、要素ドキュメントの正規なビルド・ブロック(例えば、データ・フィールド又はXML要素)を規定するドキュメント・タイプ定義(DTD)とすることができる。オリジナル・データ・フォーマットは、オリジナル・イベント・オブジェクトを生成するインスタンス、すなわち、ITコンポーネント、又はITモニタリング・システムにより定義される。オリジナル・データ・フォーマットは、特定のITコンポーネント、又はITモニタリング・システムに対する専用のフォーマットとすることができる。
【0085】
“標準データ・フォーマット”は、本明細書で使用されるように、オリジナル・イベント・オブジェクトに含まれるべきデータ値のタイプ、及び任意的にオリジナル・イベント・オブジェクト内のこれらのデータ値の位置、又は名前、又はそれらの両方を特定するイベント・オブジェクトのデータ・フォーマットである。例えば、標準データ・フォーマットは、要素ドキュメントの正規なビルド・ブロック(例えば、データ・フィールド又はXML要素)を規定するドキュメント・タイプ定義(DTD)とすることができる。標準データ・フォーマットは、イベント・ハンドリング・システムはイベント・オブジェクトを正確に解釈して処理することを可能とするために、イベント・ハンドリング・システムにより要求されるデータ・フォーマットである。標準データ・フォーマットは、イベント・ハンドリング・システムに対する専用のフォーマットとすることができる。
【0086】
本実施形態によれば、標準データ・フォーマットは、イベント・ハンドリング・システムにより解釈可能なデータ・フォーマットであり、ここで、オリジナル・データ・フォーマット(トレーニング・データ、又は動作中のITモニタリング・システム(複数でもよい)におけるオリジナル・イベント・オブジェクトの)は、イベント・ハンドリング・システムにより解釈できないか、又は部分的にのみ解釈可能なデータ・フォーマットである。
【0087】
“ITモニタリング・システム”は、本明細書で使用されるように、ITシステム、又はITシステム・コンポーネントをモニタするソフトウェア・アプリケーション、又はハードウェア・コンポーネント、又はこれらの両方である。ITコンポーネントは、ITシステムの如何なるソフトウェア、又はハードウェアとすることができる。例えば、ITコンポーネントは、コンピュータ・システム、CPU、論理的、又は物理的ストレージ・デバイス、メモリ、ゲートウェイ、スイッチ、ネットワーク、及び如何なる他のハードウェア・コンポーネントに加え、例えば、ウェブ・サーバ・プログラム、アプリケーション・サーバ・プログラム、アプリケーション・プログラムなどとすることができる、ITモニタリング・システムの実施例は、ITM6、Icinga2、及びNagiosである。
【0088】
“データ値”は、本明細書で使用するように、例えば、ITコンポーネントの特性に関することにおいて定性又は定量性の特性に関する情報の一片である。データ値は、例えば、自然言語テキストのような、特性フィールド値というような、特性値のリストというような、又はこれらの組み合わせといった如何なる形式におけるオリジナル・イベント・オブジェクトにおいて特定することができる。オリジナル・データ・オブジェクトのデータ値は、オリジナルに生成されたオリジナル・イベント・オブジェクトを有するITコンポーネントにより生成されたデータ値の混合、及び受領され、かつトレーニングされたMLプログラムへと処理されたオリジナル・イベント・オブジェクトが送られる前に、さらに処理されたITモニタリング・システムによって追加された、いくつかの追加データを含むことができる。
【0089】
“アトリビュート値”は、本明細書で使用されるように、例えば、ITコンポーネントに関連することにおける定性、又は定量性の特性に関する情報の一片であり、それによって、標準データ・オブジェクト内の値の名前、又は位置、又はそれらの両方が標準データ・フォーマットのアトリビュートに関連するセットによる。例えば、標準データ・フォーマットは、特定のイベント・クラスの標準イベントが、アトリビュート特注のデータ・フィールドの特定のセット内に対応するアトリビュート値を含まなければならないことを要求することができる。実施例によれば、標準データ・フォーマットにより、アトリビュート値は、定義された位置、又は標準イベント・オブジェクト内の定義されたアトリビュート名に関連して、又はこれら両方で格納されたデータ値である。
【0090】
“機械学習プログラム”又は“MLプログラム”は、本明細書で使用されるように、データ処理タスクを、明示的な指令なく、その代わりにトレーニング・フェーズにおいて学習されたパターン及び推定に依存して効果的に実行することが可能なソフトウェア・プログラム、又はモジュールである(例えば、予測、分類、データ変換など)。
【0091】
本実施形態によれば、機械学習フレームワークは、1つ又はそれ以上の異なるオリジナル・データ・フォーマットの如何なる1つのオリジナル・イベント・オブジェクトでも、標準データ・フォーマットを有する標準イベント・オブジェクトへと変換するように適応されたトレーニングされた機械学習プログラムを生成するための関連するオリジナル及び標準イベント・オブジェクトに対する学習アルゴリズムを提供するために構成され、かつ使用される。
【0092】
“イベント・ハンドリング・システム”は、本明細書で使用されるように、完全に、又は半自動的にイベントを処理するために構成されたソフトウェア、又はハードウェア、又はこれらの組み合わせに基づくシステムであり、典型的には、技術的システム、特にITシステムを保守し、技術的システムによって現在実行された特定の技術的ワークフローが中断及び障害なく継続できるように、立ち上げ、動作し、保証し、又はこれらの組み合わせを目的とする。例えば、ワークフローは、特定の製品を製造するための製造ワークフローとすることができる。イベント・ハンドリング・システムは、好ましくは、技術的システムの少なくともいくつかのコンポーネントの動作を制御するか、又は上記の技術的システムから動的に受領されたイベントの情報内容に依存して、少なくともいくつかのワークフロー・ステップを制御するか、又はこれらの両方の能力を有する。例えば、イベント・ハンドリング・システムによって制御されたITシステムは、トレーニングされてMLプログラムに対してオリジナル・イベント・オブジェクトを提供するITモニタリング・システムとすることができる。
【0093】
イベント・ハンドリング・システムの実施例は、IBM Netcool Impact(リアルタイムの自動的なイベント準備及びビジネス的に重要な分析のための)、IBM Business Service Management(ビジネス・プロセス、サービス、SLAsをモニタするためのサービス・マネージメント・システム)、IBM Network Management(レイヤ2及びレイヤ3ネットワークのリアルタイムの検出、モニタリング及びトポロジーのための)、IBM Netcool Configuration Manager(機動的な構成及びマネージメントタスクの変更のための)、IBM Operations Analytics-Log Analytics Managed(すべての動作可能なデータの迅速な分析を通じた問題の検出及び解決のため)、IBM Runbook Automation(共通タスクの自動化及び共通動作エラーの迅速な解決のため)、及びIBM Alert Notification(Saas)、及び上述したイベント・ハンドリング・システムの2つ又はそれ以上の組み合わせである。
【0094】
図1は、トレーニングされたイベント変換プログラム102を含む分散イベント処理システム100を示す。システム100は、例えば、
図3に示した方法を実行するために使用することができる。
【0095】
システム100は、トレーニングされたMLプログラム102を有するコンピュータ・システム152を含む分散コンピュータ・システムである。例えば、システム100は、クラウド・コンピュータ・システム、又は標準的な単一のサーバ・コンピュータとすることができる。トレーニングされたMLプログラム102は、例えば、インターネットといったネットワークを介してコンピュータ・システム152に接続された、1つ又はそれ以上のITモニタリング・システム110、112、114からオリジナル・イベント・オブジェクトを受領する1つ又はそれ以上のインタフェース104、106、108を含む。それぞれのモニタリング・システム110、112、114は、ハードウェア、又はソフトウェア・コンポーネント116~132、又はこれらの組み合わせを含むか、又はモニタするように構成されるか、又はそれらの両方とされている。例えば、ITモニタリング・システム110は、コンポーネント116~120の状態をモニタすると共に、トレーニングされたMLプログラム102へと、イベント・インタフェース104を介して1つ又はそれ以上のコンポーネントにより生成されたオリジナル・イベント・オブジェクト138を送付するように構成される。それぞれのITモニタリング・システム110~114によりモニタされるコンポーネントの数及びタイプは、同一であるか、又は互いに異なることができる。異なるモニタリング・システム110~114は、同一のタイプのものとすることができ、かつこの場合には、オリジナル・データ・フォーマットの同一のタイプを有するオリジナル・イベント・オブジェクトを生成する。しかしながら、異なるITモニタリング・システムを、異なるタイプものとすることは、また、可能である。例えば、システム110は、IBM Tivoli Monitoring ITM6.X Platform(“ITM6”)とすることができるであろうし、システム112は、Nagios(システム、ネットワーク、及びサーバ、スイッチ、アプリケーション及びサービスといったインフラ基盤をモニタして、いつ物事が悪化し、かつ、いつ問題が解決されたかをユーザに対してアラートする、フリーなオープンソースのコンピュータ-ソフトウェア・アプリケーションである。)とすることができるであろうし、システム114は、ネットワーク資源の利用性をチェックし、ユーザに停電を通知し、かつ多数のロケーションを横断して報告をするための性能データを生成するオープンソースのモニタリング・システム、Icinga 2とすることができるであろう(Asay、Matt、2009年5月6日、“広告としてのオープンソース・ワーキング:ICINGAがNagiosを提案”、CNET)。
【0096】
多くの実施形態においては、IBM(登録商標)Tivoli(登録商標)Monitoring製品は、半自動的、又は自動的モニタリングのためのTG-モニタリングとして使用されており、かつ任意的にまた複雑なITシステム及びそのコンポーネントの動作及び状態を制御するために使用されている。Tivoli Monitoring製品は、ITシステムのソフトウェア・コンポーネントをインストール、アップグレード、及び構成を配置、かつ調整するために使用することができる。IBM Tivoli Minitoring製品は、分散オペレーティング・システム及びアプリケーションの性能及び可用性をモニタする。これらの製品は、共通のサービス・コンポーネントのセットに基づいており、集合的にTivoli管理サービスとして参照される。Tivoli管理サービスのコンポーネントは、セキュリティ、データ転送及び格納、通知機構、ユーザ・インタフェース提示、及び通信サービスを提供する。
【0097】
多くの異なるITモニタリング・システムのイベントを統合する場合、問題は、アラート(例えば、アラート・キー)内のフィールドが、モニタリング・ツール依存の情報で埋められていることから発生する。
【0098】
このことは、自動化ルールを生成し、又は動的自動化(Dynamic Automation)にマッピングするか、又はそれらの両方を生成するための標準的なアプローチを許容しない。また、重要な情報は、現在ではアラートに提供されないので、失われる可能性がある。本発明の実施形態は、如何なる入来するオリジナル・イベント・オブジェクトでも正規化された標準データ・フォーマットに自動変換することによる、“ハイブリッド・クラウド・モニタリング・ツール対応イベント・モデル”を提供することを可能とする。このことは、自動化ルールの世代的生成を許容するであろう。これらのイベントの標準化は、また、クロス・モニタリング・ツールの分析的洞察、イベントの訂正、及びさらなる自動化の機会の識別を容易にするであろう(例えば、IBMのDynamic Auromation)。
【0099】
コンピュータ・システム152は、1つ又はそれ以上のプロセッサ及びトレーニングされたMLプログラム102、いくつかの追加的なソフトウェア・モジュール144及びインタフェース146を含む不揮発性ストレージ媒体を含む。好ましくは、コンピュータ・システム152は、1つ又はそれ以上のデータベースを含むDBMS134を含むか、又は動作的に結合されている。例えば、データベースは、1つ又はそれ以上のITモニタリング・システム110~114から受領した標準イベントの履歴及び動的に受領されたオリジナル・イベント・オブジェクト138からトレーニングされたMLプログラムにより生成された標準イベント・オブジェクトの履歴を含むことができる。コンピュータ・システム152、又はそのコンポーネント、例えば、変換連携プログラム、又はプログラム・モジュール144は、1つ又はそれ以上の動作中のITモニタリング・システムからトレーニングされたMLプログラムのランタイム中に動的に受領されたオリジナル・イベント・オブジェクト138を、イベント・ハンドリング・システム150により、それぞれ処理可能な標準イベント・オブジェクトへと自動的に変換するため、トレーニングされたMLプログラム102を使用する。イベント・ハンドリング・システム150は、例えば、イベント処理ワークフローを自動的に実行させるため、イベントを取扱うために構成されたソフトウェア・プログラム、又はフレームワークとすることができる。イベント処理ワークフローは、例えば、製品の製造、例えば製造された製品の物理的物体の品質チェックの実行を提供するか、又は制御するか、又はそれらの両方を行うか、又はオリジナル・イベントの提供を受けたITモニタリング・システムによってモニタされた1つ又はそれ以上のコンポーネントのシステム障害、又は長い応答時間、又はそれら両方を防ぐような方法において、1つ又はそれ以上のコンポーネント116~132の動作を制御する。イベント・ハンドリング・システム150は、ユーザ156が例えば、生成されたアラートのタイプ及び影響を受けたコンポーネントの識別について通知されるために、トレーニングされたMLプログラムから受領した標準イベント・オブジェクトを検査することができるようにする、グラフィカル・ユーザ・インタフェース154を含むことができる。GUIはまた、ユーザがイベント・ハンドラ150により実装されるイベント処理ワークフローをモニタすること、又は実行中のイベント・ハンドリング・プロセスを、イベント・ハンドリング・システム150がネットワークを介してトレーニングされたMLプログラムを含むコンピュータ・システム152に接続された別のコンピュータ・システム148上にホストされたアプリケーション・プログラムとすることができるように修正するか、又はそれらの両方を可能とする。他の実施形態においては、イベント・ハンドリング・システム150は、トレーニングされたMLプログラム102と同一のコンピュータ・システム152上にホストされることができる。
【0100】
図3に示すようにトレーニングされたプログラム102は、イベント・インタフェース104、106、108を含むか、又はこれらを介してネットワーク越しに1つ又はそれ以上のITモニタリング・システム110、112、114に動作的に結合されることができる。
【0101】
第1のステップ302では、トレーニングされたMLプログラム102は、1つ又はそれ以上の動作中のITモニタリング・システム110~114の1つにより生成されたオリジナル・イベント・オブジェクトを受領する。受領されたオリジナル・イベント・オブジェクト138は、例えば、いつ名前の記述がされたのか、ストレージ満杯イベントが発生した特定のデータ・ストアのタイプ、又はロケーション、又はそれらの両方といった詳細な記述である複数のデータ値を含む。オリジナル・イベント・オブジェクトは、さらに、データ・ストアのファイル・システムと言った関連する側面、データ・ストアを保守する責任のある特定のユーザ、データ・ストアへの書き込みアクセスを有し、かつストレージ満杯イベントを通知する必要があるユーザの1つ又はそれ以上の識別子、占有の程度を示すパーセンテイジ値などを示すデータ値を含むことができる。イベントを記述するデータ値は、MLプログラム102へとオリジナル・イベント・オブジェクトを送付したITモニタリング・システムに特有のオリジナル・データ・フォーマットで特定されるイベントを記述するデータ値である。イベントをハンドリングする責務のあるイベント・ハンドリング・システム150は、オリジナル・イベント・オブジェクトの構文を正確に処理し、かつ解釈することができない場合がある。例えば、イベント・ハンドリング・システムは、イベント・オブジェクト内の特定の位置のフィールド内、又はフィールド位置とは違うフィールド名の下に、又はそれぞれの情報を含むオリジナル・イベント・オブジェクトのフィールド名の下に、又はそれらの組み合わせにおいてフィールド内に格納された、いくつかの特定のデータ値を期待する。
【0102】
次にステップ304で、トレーニングされたMLプログラム102は、受領したオリジナル・イベント・オブジェクトを、イベント・ハンドリング・システム150により処理可能なそれぞれの標準イベント・オブジェクトへと自動的に変換するために使用される。例えば、オリジナル・イベントの受領及びMLプログラム102によるイベント・オブジェクトの変換の開始は、変換連携144により連携されることができ、これは、トレーニングされたMLプログラムと相互動作可能なスタンドアローン・ソフトウェアであるか、又はトレーニングされたMLプログラムを含むか、又はこれと相互動作可能なソフトウェア・アプリケーションのモジュールとすることができる。
【0103】
いくつかの実施形態によれば、トレーニングされたプログラム102は、特定のデータ値のセマンティック的な意味を識別すると共に、この情報を標準イベント・オブジェクトのアトリビュートを生成するために使用するように構成された、データ値分類器142を含む。いくつかの実施例の実施形態においては、このデータ値分類器は、MLプログラムのトレーニング・フェーズの間にオリジナル・データ・オブジェクトのデータのどの1つが例えば、トレンドを予測すること、優先レベル、又はオリジナル・イベント・オブジェクトから生成される標準イベント・オブジェクトに指定されるべきイベント解決ワークフロー定義、又はこれらの組み合わせについて特定の関連性があることを追加的に学習する。どの特徴に情報性があるかを認識することは、MLプログラムがオリジナル・イベント・オブジェクトのデータ値のどの1つが関連し、かつイベント・ハンドラにより要求されるアトリビュート値を抽出するために処理されるかを決定することを許容する。イベント・ハンドラは、特定のクラスのイベントのアトリビュート値の少なくともいくつか又は全部を受領することを期待する。
【0104】
追加的に、MLプログラムは、例えば、オリジナル・イベント・オブジェクトの1つ又はそれ以上のデータ値に基づいて、このオリジナル・イベント・オブジェクトのイベント・クラス及びしたがってまた、それから導出される帰属する標準イベント・オブジェクトを自動的に判断するように適応化されたイベント分類器140を含むことができる。
【0105】
変換の結果、トレーニングされたMLプログラムは、受領したオリジナル・イベント・オブジェクトに含まれる情報のいくつか、又は少なくともサブセットを含む標準イベント・オブジェクト158を出力し、これによって、イベント・ハンドリング・システム150により解釈され、処理されることができる標準データ・フォーマットに特定されるような情報となる。任意的に、システム152は、動的に受領したオリジナル・イベント・オブジェクト138及びそれから生成された標準イベント・オブジェクト158を、DBMS134により管理されたイベント・オブジェクト履歴データベースに格納する。
【0106】
次のステップ306において、コンピュータ・システム152、例えばトレーニングされたMLプログラム102、又は変換連携プログラム144は、イベント・ハンドリング・システム150内のイベント・ハンドリング・インタフェース146を介して標準イベント・オブジェクト158を送付する。
【0107】
次にステップ308において、イベント・ハンドリング・システムは、受領した標準イベント・オブジェクト158を分析すると共に、ITモニタリング・システムの分析の結果に依存して受領されるオリジナル・イベント・オブジェクトを受領する、1つ又はそれ以上のコンポーネント116~132の動作を制御する。例えば、イベント・ハンドリング・システム150は、新たな標準イベント・オブジェクト内に含まれるアトリビュート値の関数として、如何なる入来する標準イベント・オブジェクトでも取り扱うように構成される。これは、イベント・ハンドリング・システム150により実行されるか、又はトリガされるワークフロー・ステップの数、タイプ、又はシーケンス、又はこれらの組み合わせが、受領された標準イベント・オブジェクト158のアトリビュート値及びイベント・クラスに依存することを意味する。例えば、標準イベント・オブジェクトが、アトリビュート値“コンポーネント-ID=D2352”を有する特定の論理的ストレージ・ボリュームでストレージ満杯イベントが発生したことを示す場合において、イベント・ハンドリング・システムは、この特定のストレージ・ボリュームに対して追加的なストレージ空間を自動的に指定する。もし、アトリビュート“コンポーネントID”が、値“D2384”を含むであろう場合、追加的なストレージ空間は、論理的ボリューム“D2384”に指定されるであろう。
【0108】
図2は、イベント変換プログラムのトレーニングのための方法のフローチャートを示す。
【0109】
先ず、ステップ202において、複数のオリジナル・イベント・オブジェクトを含むデータベースを提供する。例えば、データベースは、MySQL又はPostgreSQLデータベースといった、リレーショナル・データベースとすることができる。同様に、データベースは、1つ又はそれ以上のファイルを含む単純なディレクトリとすることができる。追加的に、複数の標準イベント・オブジェクトは、それを導出したオリジナル・データ・オブジェクトの1つに関連してデータベースに格納される。オリジナル・イベント・オブジェクト及びそれらに関連する標準イベント・オブジェクトは、トレーニング・データとして使用される。
【0110】
トレーニング・データセットは、学習のために使用される実施例のデータセットであり、それによって、トレーニング・データセット内のデータ・レコードが正確(少なくとも大体が)であることが知られる。そのため、トレーニング・データセット内の標準データ・オブジェクトは、データ値が標準データ・フォーマットによって期待されるデータ・フィールド内の全部、又はほとんどのアトリビュート値を含む。追加的に、標準データ・オブジェクトのアトリビュート値(少なくとも大体が)は、オリジナル・データ・フォーマットによりオリジナル・イベント・オブジェクトに指定されたデータ値にエンコードされた情報及びセマンティック的な意味を正確に反映する。
【0111】
次にステップ204において、機械学習プログラムは、トレーニング・データについてトレーニングされる。
【0112】
トレーニングの間に、MLプログラムは、フィールド、フィールド名、そのフィールドに含まれるデータ値、データ値の構文、又はオリジナル・イベント・オブジェクト内のフィールド位置、及びフィールド、フィールド名、そのフィールドに含まれるアトリビュート値、又は標準イベント・オブジェクトがそれぞれ指定されたフィールド位置、又はこれらの組み合わせの間の統計的な既存の関係を学習する。トレーニング・フェーズ(又は“学習フェーズ”)は、トレーニング・データにエンコードされた情報に基づいて学習されて、トレーニング・データの同様な部分の同一、又は類似構造である入力データを予測する、自動的に構成されるアルゴリズムを含む。言い換えれば、トレーニングされたMLプログラムは、学習して、オリジナル・イベント・オブジェクト内の特定のデータ値がどのようにして、どこに配置及び特定されるべき必要があるかについてデータ駆動の予測を行うので、得られる“標準”イベント・オブジェクトは、特定のイベント・ハンドリング・システムにより解釈可能な標準・データ・フォーマットで編集される。
【0113】
最終的なモデルを構築するために使用されるデータは、通常、多数のデータベースに由来する。特に、3つのデータセットがモデルの生成の異なるステージにおいて共通に使用される。
【0114】
トレーニング・データセットは、オリジナル・イベント・オブジェクトからの手作業、又は自動的な変換処理において生成されたオリジナル・イベント・オブジェクト及び対応する標準イベント・オブジェクトのペアを構成することができる。トレーニングの間、MLプログラムの現在のモデルは、トレーニング・データセットで動作し、例えば入力されたオリジナル・イベント・オブジェクトから導出された標準イベント・オブジェクトがどのように見えるかといった結果を生成する。この“予測された”標準イベント・オブジェクトはその後、トレーニング・データセット内の入力されたオリジナル・イベント・オブジェクトについて実際に指定された“真の”標準イベント・オブジェクトと学習の間に比較される。比較の結果及び使用される特定の学習アルゴリズムに基づいて、モデルのパラメータが調整される(“モデル・フイッティング”)。その後、トレーニング・フェーズにおいて得られたトレーニングされたMLプログラムが、動的に受領されたオリジナル・イベント・オブジェクトを自動的に変換するために使用することができる。動的に受領されたオリジナル・イベント・オブジェクトは、トレーニング・データセットには含まれず、そのオリジナル・イベント・オブジェクトが、トレーニング・データセットに含まれていないITモニタリング・システムにより提供される可能性がある。
【0115】
トレーニングの結果として、トレーニングされたMLプログラムは、学習されて、イベントのタイプ(又は“クラス”)を自動的に判断するためにオリジナル・イベント・オブジェクトを動的に分析し、関連する情報を含むと考えられるすべてのデータ・フィールドからデータ値を抽出し、かつ標準データ・フォーマットにより、適切な位置にアトリビュート値のある形式において、抽出されたデータ値を含む標準イベント・オブジェクトを自動的に生成する。
【0116】
図4は、トレーニングされたMLプログラム102として本明細書において参照する、イベント変換プログラムをトレーニングするために使用するコンピュータ・システム400を示す。システムは、オリジナル・データ・オブジェクト404及びそれから生成された標準データ・オブジェクト406のペアを含むトレーニング・データセット402を含む。システムは、さらに、トレーニング・データセットを、ユーザが生成、又は修正することを可能とするGUI412を含み、例えば、基本的にはオリジナル・イベント・オブジェクトと同一、又は類似の情報を含むが、オリジナル・データ・フォーマットではなく標準において特定される標準イベント・オブジェクトを手作業により生成することによる。
【0117】
図5は、MLプログラムのトレーニング中及び任意的に、またトレーニング後に使用することができるソフトウェア・プログラム508を含むトレーニング・コンピュータ・システムを示す。プログラムは、ユーザ414がトレーニング・データセット402を生成、修正、又は補充することを可能とするGUI412を含むことができる。
【0118】
いくつかの実施形態によれば、MLプログラム102は、ルール・イクスポート機能502を含む。典型的には、MLプログラムのトレーニング中に生成された統計的モデルは、特定の出力をどのように計算するかについてのアルゴリズム又は発見を解明しない。しかしながら、それでも学習されたアルゴリズムの正確な仕様をイクスポートすることを許容する、いくつかのアプローチが存在する(例えば、Hailesilassie、Tameru、2016、“ディープ・ニューラル・ネットワークに対するルール抽出アルゴリズム;レビュー”を参照されたい。)。いくつかの実施形態によれば、GUI412は、追加的に、ユーザがトレーニングされたMLプログラムから明示的にイベント・オブジェクト変換ルールをイクスポートすること、又はユーザ414により、ルールを表示させること、及び任意的にまた表示されたルールを承認すること、又は修正すること、又はこれらの組み合わせを可能とする機能及びGUI要素506を含む。このことは、ユーザが自動的に学習されたオブジェクト変換スキームをレビューすること、確認すること、又は修正すること、又はこれらの組み合わせたオプションを提供するため、イベント・オブジェクト変換のセキュリティ及び精度を向上することができる。他の実施形態によれば、ユーザがルールの形態で、学習されたオブジェクト変換アルゴリズムをイクスポート、表示、又は修正、又はそれらの組み合わせを可能とするGUIは、トレーニング・フレームワーク508の部分ではないが、そうではなく、例えば、動作中のITモニタリング・システムから受領したオリジナル・イベント・オブジェクトを変換するために使用されるコンピュータ・システムといったもう1つのコンピュータ・システム上で動作するもう1つのソフトウェア・アプリケーションにより提供される。
【0119】
実施形態によれば、トレーニング・データセット内のそれぞれのオリジナル・イベント・オブジェクトは、何時イベントが発生したのかを示す時刻を含み、ここで、トレーニング・データセットは、同一のITシステムのコンポーネントに発生し、かつ異なる時刻に発生した同一のタイプのイベントを示す多数のオリジナル・イベント・オブジェクトを含む。トレーニングの間に、MLプログラムは、同一のITコンポーネントに関連するオリジナル・イベントのシリーズの関数としてトレンドを予測することを学習する。トレーニングされたMLプログラムは、動作中のITモニタリング・システムからオリジナル・イベント・オブジェクトのシリーズを受領し、かつ処理することに応答して、このシリーズのオリジナル・イベント・オブジェクトの少なくとも最も最近の1つのトレンドを予測すると共に、予測されたトレンドを最も最近のオリジナル・イベント・オブジェクトから導出された標準イベント・オブジェクトと組み合わせてイベント・ハンドリング・システムへと提供するように構成される。
【0120】
“シリーズ”は、イベントの時間的連続を意味し、それにより、2つの連続するイベントの間の時間間隔は一定でもよく、又は異なっていてもよい。
【0121】
いくつかの実施形態によれば、トレーニングされたMLプログラムは、予測されたトレンドの関数として標準イベント・オブジェクトの優先レベルを予測するように構成される。
【0122】
例えば、トレーニング・データセットが、ハードディスク・ドライブDR2321についての、4つの“ストレージ満杯”のオリジナル・イベント・オブジェクトのシリーズを含むことができる。第1のオリジナル・イベント・オブジェクトは、2019年5月23日、10:23に占有率が70%であることを示すことができる。第2のオリジナル・イベント・オブジェクトは、2019年6月21日、09:23に占有率が80%であることを示すことができる。第3のオリジナル・イベント・オブジェクトは、2019年6月21日、14:33に占有率が90%であることを示すことができる。第4のオリジナル・イベント・オブジェクトは、2019年6月21日、14:45に占有率が98%であることを示すことができる。MLプログラムは、タイプ“ストレージ満杯”の多数のオリジナル・イベントのシリーズに基づいて将来の占有レベルを外装するようにトレーニングされる。第1から第2のイベントまでのストレージ占有率は、第3から第4のイベントの間の劇的な変化(12秒で、8%)に比較して、まったく穏やかである(1月で約10%)。トレーニングされたMLプログラムは、ストレージが、約2カ月で完全に占有される可能性があることを示すトレンドを指定する、それぞれ第1及び第2のオリジナル・イベント・オブジェクトから第1及び第2の標準イベント・オブジェクトを生成するように構成することができる。第1の及び第2の標準イベント・オブジェクトに指定される優先レベルは、もしあるならば、低い優先レベルを指定することができる。しかしながら、トレーニングされたMLプログラムは、第3及び第4のオリジナル・イベント・オブジェクトから第3及び第4の標準イベント・オブジェクトを生成することとなるであろうが、これにより、第3及び特に第4の標準イベント・オブジェクトは、数時間内、又は次の数秒内に完全に占有される可能性があることを示す予測トレンドを指定するであろう。第3及び特に第4の標準イベント・オブジェクトに対して指定される優先レベルは、もしあるならばイベント・ハンドラに対して、例えば、自動的にこのディスク上のテンポラリ・ファイルを削除すること、新たな書き込みトランザクションを他のディスク・ドライブにリダイレクトすることにより、このディスクへの書き込みトランザクションが阻害されることを回避する機能を即時に開始するようにトリガするように適応させる、高又は極めて高い優先レベルを指示することができる。
【0123】
これらの特徴は、トレーニングされたMLプログラムが予測されたトレンド、又は特定の技術的問題が対処される必要がどの程度緊急であるか及び将来の何時ITシステム又はそのいくつかのコンポーネントが重大な障害となると期待されるかを、迅速かつ正確に判断することを許容するトレンド依存の優先レベル、又はそれら両方を含む標準イベント・オブジェクトを自動的に生成することを可能とする可能性があるので、効果的である可能性がある。複雑なITシステムにおいては、トレンド及び緊急性は、上述に特定されるディスク満杯イベントの実施例にように常時明確であることはないことについて、留意されるべきである。例えば、複雑なITシステムにおいては、多くの異なるコンポーネント及び動作が特定のディスクの専有性に影響をする可能性がある:ディスクに対する書き込みアクセスを有するユーザの数及び識別性;ユーザ及び日の時間に依存する利用パターン;バックアップを格納するためにディスクを使用することができるいくつかのバックアップ・ルーチン;テンポラリ・ファイルを格納するためにディスクを使用することができる1つ又はそれ以上のアプリケーション・プログラム、又はサービス;これらのアプリケーションのいくつかがネットワークを介して複数のユーザに対してサービスを提供できること;及びサービスの特定のインスタンスによりサービスを受けるユーザの数は、複雑なクラウドITインフラ基盤内で実行されるロード・バランシング・アルゴリズムに依存する。このため、何時特定のディスク・ドライブが完全に占有されるかという簡単な質問は、実際上高度に複雑で、かつ事実上、人間のユーザでは予測不可能である。本発明の実施形態は、オリジナル・イベント・オブジェクトを、下流側処理のために積雪なフォーマットを有する標準イベント・オブジェクトへと変換することを可能とするばかりではなく、これに加えて、ITコンポーネントに関する価値ある情報(ストレージ占有率、CPU占有率、ネットワーク・トラフィック、ウェブ・アプリケーションにより提供されるセッション数、同期的なオープンデータ接続の数など)及び複数の高度に相互依存し、線形的又は非線形的に相互作用するITシステム・コンポーネントの一体化され、かつアグリゲートすることができるこのイベントの優先レベルに関する情報提供するアプリケーション・プログラムを自動的に生成することを許容する。予測されたトレンド、又は予測された優先レベルを、そのために計算された標準イベント・オブジェクトの一体的な部分又はそれに関連するものとして提供することによって、下流側のイベント・ハンドリング・システムは、より迅速、かつより正確な仕方でITシステム及びITシステムにより実行される如何なるワークフローでも、制御及び管理を可能とする。複雑な予測論理は、ITシステムの多数の複雑な相互依存性を理解することを如何なるユーザに対しても要求しないことについて留意されるべきである。そうではなく、これらの相互依存性は、トレーニング・データセットからのMLプログラムによるトレーニング・フェーズの間に暗黙的に学習される。
【0124】
結果として、トレーニングされたMLプログラムは、如何なる下流側のイベント・ハンドリング・システムでも提供されたイベントの、どれが第1に対処されるべきであるか、どの種類の対処法を採用する必要があるか、及びどの可能性のある原因が特定のイベントについての責任がある可能性があるのかを、迅速、かつ正確に決定することを可能とする標準イベント・データを生成することを可能とする。例えば、対処法は、全体のストレージ空間を消費したデータが主に個別的なユーザにより書き込まれたのか、又はバックアップ・システムにより自動的に生成されたバックアップ・データであるのか否か、に依存する可能性がある。対処法は、トレンドが線形的であるか否か、又はストレージ消費に非線形的な加速があるか否か、又はトレンドが、例えば、複数のリモート・クラウド・サービス・クライアントによる、特定のサービス・インスタンスのユーザセッションの現在数を示すイベントといった他の標準的なイベントに相関するか否かに依存する可能性がある。
【0125】
図6は、トレーニング・データ及び対応する分散コンピュータ・システム600を補充し、かつ改善する方法を示す。システム600は、データベース602を含むか、又はこれに動作的に結合し、トレーニングされたMLプログラム102を含むトレーニング・コンピュータ・システム400を含む。データベースは、トレーニングされたMLプログラム102をトレーニングするために使用されたトレーニング・データ402を含む。トレーニング・データは、オリジナル・イベント・オブジェクト404及びそれぞれに割り当てられた標準イベント406を含む。
【0126】
追加的に、システム600は、トレーニングされたMLプログラムに対してネットワークを介して“新たな”オリジナル・イベント・オブジェクト606を現在送付する動作中の1つ又はそれ以上のITモニタリング・システム110を含む。“新たな”オリジナル・イベント・オブジェクトは、MLプログラムがトレーニング・データセット402においてトレーニングされた後に生成され、かつ提供されたオリジナル・イベント・オブジェクトである。MLプログラムは、動作中のITモニタリング・システムから受領した如何なるオリジナル・イベント・オブジェクト606でも新たな標準イベント・オブジェクト608へと自動的に変換するように構成され、これは、それを導出したそれぞれの新たなオリジナル・イベント・オブジェクト606に関連してデータベース602内に格納される。その後、トレーニングされたMLプログラムは、生成された標準イベント・オブジェクト608をイベント・ハンドリング・システム(不図示)に送付する。任意的に、トレーニングされたMLプログラムは、イベント・解決ワークフロー定義を予測し、かつ予測した定義をイベント・ハンドリング・システムに送付された標準イベント・オブジェクトに指定する。それによって、イベント・ハンドリング・システムは、ワークフロー定義によりイベントを取扱うことが可能となる。
【0127】
このため、データベース602は、1つ又はそれ以上の独立したITモニタリング・システム、又は組織、又はそれらの両方から受領した履歴的イベント情報に加え、現在のオリジナル・イベント・オブジェクトの両方、及びそれらの“正規化された”標準形態の両方を含む。
【0128】
実施形態によれば、トレーニング・コンピュータ・システム400上でインスタンス化されたフレームワーク、又は他のソフトウェア・アプリケーションをトレーニングすることは、所謂、“エンリッチメント・サービス”と呼ばれ、定期的に新たなオリジナル・イベント・オブジェクト及びそれらの関連する標準イベント・オブジェクトを分析し、かつ欠損したアトリビュート値により標準イベント・オブジェクトを手作業又は自動的に補充することで、新たな標準イベント・オブジェクトを“示唆”することである。例えば、すでにトレーニングされたMLプログラムは、オリジナル・トレーニング・データ402について、及び新たな入来オリジナル・イベント・オブジェクトについて手作業、又は自動的に生成された、さらなる標準イベント・データ・オブジェクト610について再適用されることができる。言い換えれば、すでにトレーニングされたMLプログラムは、改善され、トレーニングのための以前に使用されたトレーニング・データ402の補充されたバージョン604について再適用される。これによって、オリジナル・イベント・オブジェクト内の情報を、標準イベント・オブジェクトへとより完全に変換することにおいて、より正確に実行するように適応され、トレーニングされたMLプログラムの再トレーニング・バージョンが提供される。
【0129】
追加的に、又は代替的に、トレーニングされ、又は再トレーニングされ、又はそれら両方のMLプログラムは、1つ又はそれ以上の明示的で人間が読み取ることができるルールへと暗黙的に学習されたイベント・オブジェクトの変換論理をイクスポートするように構成される。これらのルールは、ユーザがルールを修正し、又は承認することを可能とするGUIを介してユーザに提示される。ユーザが再トレーニングされたMLプログラムによりイクスポートされたルールを承認する場合、再トレーニングされたMLプログラム、又は再トレーニングされたMLプログラムによりイクスポーとされたルールは、将来に受領されるであろうすべての新たなオリジナル・イベント・オブジェクトを処理するために使用されるであろう。
【0130】
例えば、MLプログラムのトレーニング及び標準イベント・オブジェクトの補充を以下のように実行することができる:
【0131】
トレーニングされたMLプログラム102は、初期トレーニングの間に学習して、オリジナル・イベント・オブジェクト内の重要な名前値のペア(欠損情報を識別/フラグ付けすることを含む)を以下のように識別する:
-ディスクYがシステムX上で50%を超える-ストレージ・ボリューム-‘Y”ストレージ利用率=“>50%” システム=“X”
-ファイル・システムYが満杯->ストレージ・ボリューム-‘Y” ストレージ利用率=“満杯” システム=<欠損>
-ウェブ・サイトの応答時間が2msを超える-応答時間=“>2ms” システム=“ウェブ・サイト”
【0132】
トレーニングの間に、MLプログラムは、オリジナル・イベント・オブジェクト内に含まれる情報に基づいてイベント・クラスを予測するように学習する。トレーニングされたMLプログラムはまた、標準データ・フォーマットによって要求されるどのアトリビュートがオリジナル・イベント・オブジェクトから抽出されたデータ値に対応するかを学習した:
-§“ITM6ファイル・システムXが80%満杯”->ストレージ・イベント、“ファイル・システムX”=“80%満杯”
-§“SCOMディスクC:20%を超える”-ストレージ・イベント“ディスクC:”=“20%を超える”
【0133】
実施形態によれば、トレーニングされたMLプログラムは、アトリビュート名の類義語を識別すると共に解決すると共に、要求されるアトリビュート及びアトリビュート値を、オリジナル・イベント・オブジェクト内の自然言語テキストから抽出するためのNLP技術を使用することを学習した:
-§ストレージ・イベント、“ファイル・システムX”=“80%満杯”-
ストレージ・イベント(利用率=“=80%”)
-§ストレージ・イベント、“ディスクC:”=“20%を超える”
ストレージ・イベント(利用率=“>20%”)
-§ストレージ・イベント、“ディスクC:”=“90GBを超える”
ストレージ・イベント(利用率=“>90GB”)
【0134】
実施形態によれば、トレーニングされた、又は再トレーニングされたMLプログラムからの標準イベント・オブジェクトを受領したイベント・ハンドリング・システムは、チケッティング、通知、又は自動化、又はそれらの組み合わせを要求するように構成されることができる。例えば、イベント・ハンドリング・システムは、動的自動化サービスであることができるか、又はイベント・ハンドリング・システムは、標準イベント・オブジェクトを利用可能な自動機械にマップする動的自動化サービスへと送付することができる。標準イベント・オブジェクトを処理するためにイベント・ハンドラにより選択されたワークフローは、また、それぞれの標準イベント・オブジェクトのメタデータとして、データベース602内に格納されることができる。このメタデータは、また、再トレーニングの間にMLプログラムの入力として提供されることができる。
【0135】
本発明は、システム、方法、又はコンピュータ・プログラム製品、又はそれらの組み合わせとすることができる。コンピュータ・プログラム製品は、それ上に、プロセッサに対して本開示の特徴を遂行させるためのコンピュータ可読なプログラム命令を有する、コンピュータ可読な記録媒体(又は複数の媒体)を含む。コンピュータ可読な記録媒体は、命令実行デバイスが使用するための複数の命令を保持し格納することができる有形のデバイスとすることができる。コンピュータ可読な媒体は、例えば、これらに限定されないが、電気的記録デバイス、磁気的記録デバイス、光学的記録デバイス、電気磁気的記録デバイス、半導体記録デバイス、又はこれらの如何なる好ましい組み合わせとすることができる。コンピュータ可読な記録媒体のより具体的な実施例は、次のポータブル・コンピュータ・ディスク、ハードディスク、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)、消去可能なプログラマブル・リード・オンリー・メモリ(EPROM又はフラッシュ・メモリ(登録商標))、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク・リード・イオンリー・メモリ(CD-ROM)、デジタル多目的ディスク(DVD)、メモリ・スティック、フロッピー・ディスク(登録商標)、パンチ・カード又は命令を記録した溝内に突出する構造を有する機械的にエンコードされたデバイス、及びこれらの好ましい如何なる組合せを含む。本明細書で使用するように、コンピュータ可読な記録媒体は、ラジオ波又は他の自由に伝搬する電磁波、導波路又は他の通信媒体(例えば、光ファイバ・ケーブルを通過する光パルス)といった電磁波、又はワイヤを通して通信される電気信号といったそれ自体が一時的な信号として解釈されることはない。本明細書において説明されるコンピュータ・プログラム命令は、コンピュータ可読な記録媒体からそれぞれのコンピューティング/プロセッシング・デバイスにダウンロードでき、又は例えばインターネット、ローカル・エリア・ネットワーク、ワイドエリア・ネットワーク又はワイヤレス・ネットワーク及びそれからの組み合わせといったネットワークを介して外部コンピュータ又は外部記録デバイスにダウンロードすることができる。ネットワークは、銅通信ケーブル、光通信ファイバ、ワイヤレス通信、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ及びエッジ・サーバ又はこれらの組み合わせを含むことができる。それぞれのコンピューティング/プロセッシング・デバイスにおけるネットワーク・アダプタ・カード又はネットワーク・インタフェースは、ネットワークからコンピュータ可読なプログラム命令を受領し、このコンピュータ可読なプログラム命令を格納するためにそれぞれのコンピューティング/プロセッシング・デバイス内のコンピュータ可読な記録媒体内に転送する。本発明の操作を遂行するためのコンピュータ可読なプログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、機械語命令、マシン依存命令、マイクロ・コード、ファームウェア命令、状態設定データ、集積回路のための構成データ、又は1つ又はそれ以上の、Smalltalk(登録商標)、C++などのオブジェクト指向プログラミング言語、“C”プログラミング言語又は類似のプログラム言語といった従来の手続き型プログラミング言語を含むプログラミング言語のいかなる組合せにおいて記述されたソース・コード、又はオブジェクト・コードのいずれかとすることができる。コンピュータ可読なプログラム命令は、全体がユーザ・コンピュータ上で、部分的にユーザ・コンピュータ上でスタンドアローン・ソフトウェア・パッケージとして、部分的にユーザ・コンピュータ上で、かつ部分的にリモート・コンピュータ上で、又は全体がリモート・コンピュータ又はサーバ上で実行することができる。後者のシナリオにおいて、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)を含むいかなるタイプのネットワークを通してユーザ・コンピュータに接続することができ、又は接続は、外部コンピュータ(例えばインターネット・サービス・プロバイダを通じて)へと行うことができる。いくつかの実施形態では、例えばプログラマブル論理回路、フィールド・プログラマブル・ゲートアレイ(FPGA)、又はプログラマブル論理アレイ(PLA)を含む電気回路がコンピュータ可読なプログラム命令を、コンピュータ可読なプログラム命令の状態情報を使用して、本発明の特徴を実行するために電気回路をパーソナライズして実行することができる。本明細書で説明した本発明の側面を、本発明の実施形態にしたがい、フローチャート命令及び方法のブロック図、又はそれらの両方、装置(システム)、及びコンピュータ可読な記録媒体及びコンピュータ・プログラム製品を参照して説明した。フローチャートの図示及びブロック図又はそれら両方及びフローチャートの図示におけるブロック及びブロック図、又はそれらの両方のいかなる組合せでもコンピュータ可読なプログラム命令により実装することができることを理解されたい。
【0136】
コンピュータ可読なプログラム命令は、汎用目的のコンピュータ、特定目的のコンピュータ、又は他のプロセッサ又は機械を生成するための他のプログラマブル・データ・プロセッシング装置に提供することができ、コンピュータのプロセッサ又は他のプログラマブル・データ・プロセッシング装置による実行がフローチャート及びブロック図のブロック又は複数のブロック又はこれらの組み合わせで特定される機能/動作を実装するための手段を生成する。コンピュータ、プログラマブル・データ・プロセッシング装置及び他の装置又はこれらの組み合わせが特定の仕方で機能するように指令するこれらのコンピュータ可読なプログラム命令は、またコンピュータ可読な記録媒体に格納することができ、その内に命令を格納したコンピュータ可読な記録媒体は、フローチャート及びブロック図のブロック又は複数のブロック又はこれらの組み合わせで特定される機能/動作の特徴を実装する命令を含む製造品を構成する。コンピュータ可読なプログラム命令は、またコンピュータ、他のプログラマブル・データ・プロセッシング装置、又は他のデバイス上にロードされ、コンピュータ、他のプログラマブル装置、又は他のデバイス上で操作ステップのシリーズに対してコンピュータ実装プロセスを生じさせることで、コンピュータ、他のプログラマブル装置又は他のデバイス上でフローチャート及びブロック図のブロック又は複数のブロック又はこれらの組み合わせで特定される機能/動作を実装させる。図のフローチャート及びブロック図は、本発明の種々の実施形態にしたがったシステム、方法及びコンピュータ・プログラムのアーキテクチャ、機能、及び可能な実装操作を示す。この観点において、フローチャート又はブロック図は、モジュール、セグメント又は命令の部分を表すことかでき、これらは、特定の論理的機能(又は複数の機能)を実装するための1つ又はそれ以上の実行可能な命令を含む。いくつかの代替的な実装においては、ブロックにおいて記述された機能は、図示した以外で実行することができる。例えば、連続して示された2つのブロックは、含まれる機能に応じて、実質的に同時的に、又は複数のブロックは、時として逆の順番で実行することができる。またブロック図及びフローチャートの図示、又はこれらの両方及びブロック図中のブロック及びフローチャートの図示又はこれらの組み合わせは、特定の機能又は動作を実行するか又は特定の目的のハードウェア及びコンピュータ命令を遂行する特定目的のハードウェアに基づいたシステムにより実装することができることを指摘する。
【0137】
上述の特徴の可能な組み合わせは、以下とすることができる。
特徴の組み合わせ 1(FC1)
FC1:イベントを処理するためのコンピュータ実装方法であって、前記方法が、
標準イベント・オブジェクトに関連してそれぞれ格納された複数のオリジナル・イベント・オブジェクトを含むデータベースを提供することであって、
・前記オリジナル・イベント・オブジェクトが1つ又はそれ以上のITモニタリング・システムにより生成され、前記オリジナル・イベント・オブジェクトのそれぞれが前記オリジナル・イベント・オブジェクトにより生成された前記ITモニタリング・システムのタイプに特有のオリジナル・データ・フォーマットを有し、それぞれのオリジナル・イベント・オブジェクトが、イベントを特徴づける1つ又はそれ以上のデータ値を含み、
・前記標準イベント・オブジェクトが、共有された標準データ・フォーマットを有し、それぞれの標準イベント・オブジェクトが、前記オリジナル・イベント・オブジェクトにより表された前記イベントを取扱うために、その関連するオリジナル・イベント・オブジェクトが指定された複数のイベント・クラスの1つを識別するクラスIDを含み、前記標準イベント・オブジェクトが、前記関連するオリジナル・イベント・オブジェクトの前記データ値から導出された1つ又はそれ以上のアトリビュート値を含むこと、
1つ又はそれ以上のオリジナル・データ・フォーマットのいずれか1つのオリジナル・イベント・オブジェクトを、前記標準データ・フォーマットを有する標準イベント・オブジェクトへと変換するように適合されるトレーニングされた機械学習プログラムを生成するため、前記関連するオリジナル・イベント・オブジェクト及び標準イベント・オブジェクトについて機械学習アルゴリズムを実行することと、
動作中のITモニタリング・システムにより生成されたオリジナル・イベント・オブジェクトを、それぞれがイベント・ハンドリング・システムにより処理可能な標準イベント・オブジェクトに自動的に変換するため、前記トレーニングされた機械学習プログラムを使用することを含み、動作中のITモニタリング・システムが、1つ又はそれ以上のITモニタリング・システムの1つであるか、又はさらにITモニタリング・システムである。コンピュータ実装方法。
FC2:前記トレーニングされた機械学習プログラムを使用することが、
1つの前記ITモニタリング・システムから新たなオリジナル・イベント・オブジェクトを受領し、前記新たなオリジナル・イベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトに自動的に変換するために、前記トレーニングされた機械学習プログラムを使用することと、
前記新たな標準イベント・オブジェクトにより表される前記新たなオリジナル・イベント・オブジェクトを、前記新たな標準イベント・オブジェクトに含まれる前記アトリビュート値の関数として自動的に取り扱うために、前記イベント・ハンドリング・システムに前記新たな標準イベント・オブジェクトを提供することと
を含むFC1に記載のコンピュータ実装方法。
FC3:前記標準データ・フォーマットが、前記イベント・ハンドリング・システムにより解釈可能であり、少なくともいくつかの前記オリジナル・データ・フォーマットが前記イベント・ハンドリング・システムによって解釈できない、
上記特徴の組み合わせFC1~FC2に記載のコンピュータ実装方法。
FC4:前記新たなオリジナル・ベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトに自動的に変換するために、前記トレーニングされた機械学習プログラムを使用することが、前記トレーニングされた機械学習プログラムにより直接に前記変換を実行することを含む、
上記特徴の組み合わせFC1~FC3の何れか1つに記載のコンピュータ実装方法。
FC5:前記新たなオリジナル・ベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトに自動的に変換するために、前記トレーニングされた機械学習プログラムを使用することが、
前記トレーニングされた機械学習プログラムにより、1つ又はそれ以上の明示的なイベント・オブジェクト変換ルールをイクスポートすること、
ルール・エンジンに前記明示的なイベント・オブジェクト変換ルールを入力すること、及び
前記ルール・エンジンにより、前記入力されたオブジェクト変換ルールによって前記オリジナル・イベント・オブジェクトの前記標準イベント・オブジェクトへの前記変換を実行すること
を含む上記特徴の組み合わせFC1~FC4の何れか1つに記載のコンピュータ実装方法。
FC6:さらに、
ユーザが前記1つ又はそれ以上の明示的なイベント・オブジェクト変換ルールを修正、又は確認、又はそれら両方を可能とするGUIを生成すること
を含む、
上記特徴の組み合わせFC5に記載のコンピュータ実装方法。
FC7:前記データベース内の前記標準イベント・オブジェクトの少なくともいくつかの前記クラスID及び前記アトリビュート値が、人間のユーザにより手作業で特定される、
上記特徴の組み合わせFC1~FC6の何れか1つに記載のコンピュータ実装方法。
FC8:前記データベース内の前記標準イベント・オブジェクトの少なくともいくつかの前記クラスID及び前記アトリビュート値が前記イベント・ハンドリング・システムにより自動的に生成される、
上記特徴の組み合わせFC1~FC7の何れか1つに記載のコンピュータ実装方法。
FC9:さらに、
前記受領したオリジナル・イベント・オブジェクトをプリプロセッシングすることを含み、プリプロセッシングされた前記オリジナル・イベント・オブジェクトが前記機械学習プログラムにより前記新たな標準イベント・オブジェクトへと変換され、前記プリプロセシングが、
前記新たなオリジナル・イベント・オブジェクトに含まれる1つ又はそれ以上のデータ値を抽出するために、前記新たなオリジナル・イベント・オブジェクトに対して1つ又はそれ以上の自然言語処理機能を適用すること、
・前記新たなオリジナル・イベント・オブジェクトに含まれる1つ又はそれ以上のデータ値を抽出するために、前記新たなオリジナル・イベント・オブジェクトにパーサを適用すること、
・前記抽出されたデータ値が、1つ又はそれ以上の異なるイベント・クラスの名前を含むか否かをチェックし、そうであれば、前記抽出されたデータ値にイベント・クラスのラベルを指定すること、
・前記抽出されたデータ値が、1つ又はそれ以上の異なるイベント・クラスの名前を含むか否かをチェックし、そうであれば、前記抽出されたデータ値にデータ・フィールド名を指定することであって、前記データ・フィールド名が、前記標準データ・フォーマットにしたがって選択されること、及び
・前記自然言語処理機能により前記オリジナル・イベント・オブジェクトから抽出された1つ又はそれ以上のデータ値を、前記プリプロセッシングされたオリジナル・イベント・オブジェクトのアトリビュート値として、又はイベント・クラス名として追加すること
を含む、上記特徴の組み合わせFC1~FC8の何れか1つに記載のコンピュータ実装方法。
FC10:前記受領したオリジナル・イベント・オブジェクトの、前記新たな標準イベント・オブジェクトへの変換が、
前記新たなオリジナル・イベント・オブジェクトの関数として優先レベルを自動的に計算すること、及び前記優先レベルを前記新たな標準イベント・オブジェクトのアトリビュートとして格納すること
を含む、
上記特徴の組み合わせFC1~FC9の何れか1つに記載のコンピュータ実装方法。
FC11:さらに、
前記イベント・ハンドリング・システムによって前記優先レベルにより前記新たなイベントを自動的に優先付けるために、前記新たな標準イベント・オブジェクトの前記優先レベルを分析すること
を含む、
上記特徴の組み合わせFC10に記載のコンピュータ実装方法。
FC12:前記オリジナル・イベント・オブジェクトのデータ値は、
前記オリジナル・イベントの生成をトリガしたデータ処理システムの識別子、
前記オリジナル・イベント・オブジェクトの生成をトリガしたコンピュータ・システムのオペレーティング・システム、
前記オリジナル・イベントがトリガされた時点の時刻及び日付、
前記オリジナル・イベント・オブジェクトの生成をトリガした「前記オブジェクトを含む地理的ロケーション、
重大性を示す数値範囲又は値の範囲、サイズ、又は技術的問題の優先度、
前記オリジナル・イベントの生成をトリガした前記イベント、又は前記プロセッシング・システム、又はこれらの両方、又はシステム・コンポーネントを記述する1つ又はそれ以上のストリング、
媒体のマウント・プロセスの間に新たにマウントされた前記媒体が登録されたロケーションであるマウント・ポイント、すなわち新たにマウントされた媒体が前記媒体のマウント・プロセスの間に登録されたファイル・システム内の前記ロケーションであって、前記マウント・プロセスが、前記オペレーティング・システムがファイル及びディレクトリを、前記コンピュータのファイル・システムを介してアクセス可能なストレージ・デバイス上に作成するプロセスであり;これは、例えばマウント関連イベント、例えばマウント失敗イベント、又はマウント完了イベントといったイベント、又は例えば、前記オリジナル・イベントの生成ヲトリガしたデバイスの内部IDといったデバイスIDについて重要であり、
2つ又はそれ以上の上述したデータ値の組み合わせ
を含む群から選択される、
上記特徴の組み合わせFC1~FC11の何れか1つに記載のコンピュータ実装方法。
FC13:前記新たな標準イベント・オブジェクトが、
ストレージ満杯イベント、
ネットワーク接続障害イベント、
タスク・キュー満杯イベント、
サーバ利用不可イベント、
マウント・イベント、及び
デバイスに送付した要求又はコマンドのタイムアウト・イベント
を含む群から選択される、
FC1~FC12の何れか1項に記載のコンピュータ実装方法。
FC14:前記データベース内の1つ又はそれ以上の前記標準イベント・オブジェクトがイベント解決ワークフローに指定されており、前記学習アルゴリズムが関連するオリジナル及び標準イベント・オブジェクト及び前記指定されたイベント解決ワークフローについて実行され、前記トレーニングされた機械学習プログラムが前記1つ又はそれ以上のデータ・フォーマットの如何なる1つのオリジナル・イベント・オブジェクトを、前記標準データ・フォーマットを有すると共に予測されたイベント解決ワークフロー定義の指定された標準イベント・オブジェクトへと変換するように適応されており、前記新たなオリジナル・ベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトに自動的に変換するために、前記トレーニングされた機械学習プログラムを使用することが、好ましくはさらに、如何なる受領した新たなオリジナル・イベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトへと自動的に変換することを含み、前記標準イベント・オブジェクトが、前記受領された新たなオリジナル・イベント・オブジェクトの関数として前記トレーニングされたMLプログラムにより予測されたイベント解決ワークフロー定義を含む、
上記特徴の組み合わせFC1~FC13の何れか1つに記載のコンピュータ実装方法。
FC15:前記オリジナル・イベント・オブジェクトに含まれる前記データ値に依存するオリジナル・イベント・オブジェクトが属するものにイベント・クラスの事前定義されたセットから1つを識別すると共に、前記オリジナル・イベント・オブジェクトの変換により生成された前記標準イベント・オブジェクトに前記クラスIDを指定するために前記識別されたイベント・オブジェクトを使用するように適応されたイベント分類器、及び
オリジナル・イベント・オブジェクトが属するものに含まれるデータ値に事前定義されたアトリビュート・タイプのセットから1つを識別すると共に、前記分類されたデータ値を、前記オリジナル・イベント・オブジェクトの変換により生成された前記標準イベント・オブジェクトの事前定義された位置のアトリビュート値として格納するように適応されたデータ値分類器
を含む、
上記特徴の組み合わせFC1~FC14の何れか1つに記載のコンピュータ実装方法。
FC16:さらに、
前記データベース内の前記標準イベント・オブジェクトを、標準イベント・オブジェクトのいくつか又は全部が前記標準データ・フォーマットにより要求されるアトリビュート値を欠いているか否かを判断するために分析すること、
少なくとも1つの前記標準イベント・オブジェクトが、前記標準データ・フォーマットにより要求されるアトリビュート値を欠くとの判断に基づいて、欠けていると判断された前記アトリビュート値を含む前記標準エベント・オブジェクトのアップデート・バージョンを生成するために、前記データベース内の前記オリジナル・イベント・オブジェクトに前記トレーニングされたMLプログラムを適用すること、及び
前記機械学習プログラムの例とレーニング・バージョンを生成するため、前記データベース内の前記オリジナル・イベント・オブジェクト及び前記標準データ・オブジェクトのそれぞれ指定されたアップデート・バージョンでトレーニングされたMLプログラムを再トレーニングすること
を含む、
上記特徴の組み合わせFC1~FC15の何れか1つに記載のコンピュータ実装方法。
FC17:コンピュータ・システムであって、
・それぞれが標準イベント・オブジェクトに関連して格納された複数のオリジナル・イベント・オブジェクトを含むデータベースを含み、
・前記オリジナル・イベント・オブジェクトが1つ又はそれ以上のITモニタリング・システムにより生成され、前記オリジナル・イベント・オブジェクトのそれぞれが前記オリジナル・イベント・オブジェクトにより生成された前記ITモニタリング・システムのタイプに特有のオリジナル・データ・フォーマットを有し、それぞれのオリジナル・イベント・オブジェクトが、イベントを特徴づける1つ又はそれ以上のデータ値を含み、
・共有された標準データ・フォーマットを有し、それぞれの標準イベント・オブジェクトが、前記オリジナル・イベント・オブジェクトにより表された前記イベントを取扱うために、その関連するオリジナル・イベント・オブジェクトが指定された複数のイベント・クラスの1つを識別し、それに関連するオリジナル・イベントが前記オリジナル・イベント・オブジェクトによって表されるイベントを取扱うために手作業、又は自動、又はこれらの両方で指定され、複数のイベント・クラスからの1つを指定するクラスIDを含み、前記標準イベント・オブジェクトが、前記関連するオリジナル・イベント・オブジェクトの前記データ値から導出された1つ又はそれ以上のアトリビュート値を含み、
1つ又はそれ以上のオリジナル・データ・フォーマットのいずれか1つのオリジナル・イベント・オブジェクトを、前記標準データ・フォーマットを有する標準イベント・オブジェクトへと変換するように適合されるトレーニングされた機械学習プログラムを生成するため、前記関連するオリジナル・イベント・オブジェクト及び標準イベント・オブジェクトについて機械学習アルゴリズムを実行する機械学習フレームワークと
を含む、
システム。
FC18:
1つ又はそれ以上のオリジナル・データ・フォーマットを有するオリジナル・イベント・オブジェクトを、標準データ・フォーマットを有する標準イベント・オブジェクトに変換するように構成されたトレーニングされた機械学習プログラムであって、前記オリジナル・イベント・オブジェクトのそれぞれがイベントを特徴づける1つ又はそれ以上のデータ値を含み、前記標準データ・フォーマットが、ローカル又はリモートのイベント・ハンドリング・システムにより処理可能であり、かつ前記オリジナル・イベント・オブジェクトそれぞれの前記オリジナル・データ・フォーマットのそれぞれが前記オリジナル・イベント・オブジェクトを生成したITモニタリング・システムのタイプに特有であり、
1つ又はそれ以上の動作中のITモニタリング・システムから新たなイベント・オブジェクトを受領するためのインタフェースであって、前記動作中のモニタリング・システムがそれぞれ、
前記ローカル又はリモートのイベント・ハンドリング・システムへのインタフェース、及び
・前記受領した新たなオリジナル・イベント・オブジェクトを、標準データ・フォーマットを有する新たな標準イベント・オブジェクトに自動的に変換するために前記機械学習プログラムを使用し、前記標準イベント・オブジェクトが、前記関連するオリジナル・イベント・オブジェクトの前記データ値から導出された1つ又はそれ以上のアトリビュート値を含み、
・前記新たな標準イベント・オブジェクトに含まれる前記アトリビュート値の関数として前記新たな標準イベント・オブジェクトによって表される前記新たなイベントを自動的に取り扱うために前記イベント・ハンドリング・システムに前記新たな標準イベント・オブジェクトを提供する
ように適応された変換連携プログラム
を含むシステム。
FC19:さらに、前記イベント・ハンドリング・システムを含む、
FC18に記載のコンピュータ・システム。
FC20:FC18、又はFC19のイベント・ハンドリング・システムであるか、又はこれらを含む前記コンピュータ・システムであるか、又はこれらを含むシステム。
【国際調査報告】