JPWO2018146714A1 - コンピュータシステムの監視装置および方法 - Google Patents

コンピュータシステムの監視装置および方法 Download PDF

Info

Publication number
JPWO2018146714A1
JPWO2018146714A1 JP2018538896A JP2018538896A JPWO2018146714A1 JP WO2018146714 A1 JPWO2018146714 A1 JP WO2018146714A1 JP 2018538896 A JP2018538896 A JP 2018538896A JP 2018538896 A JP2018538896 A JP 2018538896A JP WO2018146714 A1 JPWO2018146714 A1 JP WO2018146714A1
Authority
JP
Japan
Prior art keywords
performance
performance data
data
computer system
items
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018538896A
Other languages
English (en)
Other versions
JP6689995B2 (ja
Inventor
峰義 増田
峰義 増田
鈴木 克典
克典 鈴木
裕教 江丸
裕教 江丸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPWO2018146714A1 publication Critical patent/JPWO2018146714A1/ja
Application granted granted Critical
Publication of JP6689995B2 publication Critical patent/JP6689995B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0787Storage of error reports, e.g. persistent data storage, storage using memory protection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)

Abstract

コンピュータシステムの監視装置は、コンピュータシステムの性能に係る複数の性能項目に関する性能データを収集するデータ収集部と、原因事象と、原因事象によって劣化する一以上の性能項目である劣化性能項目とを関連付けた性能劣化原因モデル30と、因事象について、一以上の劣化性能項目の性能データの正常範囲が予め定められていて、データ収集部により収集された前記劣化性能項目の性能データである対象性能データが正常範囲から外れるとき、その外れ度合いを特定する外れ値スコア算出器50とを有し、外れ度合いの経時変化に基づいて、原因事象に関する情報を出力する。

Description

本発明は、コンピュータシステムの性能を計測し、性能劣化の原因分析を支援する技術に関する。
コンピュータシステムの性能が劣化すると、そのコンピュータシステム利用者の快適な利用を妨げ、利用者満足度が低下する。そのため、コンピュータシステムの監視装置がコンピュータシステムから収集した性能データを分析し、性能劣化の発生時刻、劣化原因(性能を劣化させたコンピュータシステムの構成要素)を特定する。コンピュータシステムの管理者は、監視装置の分析結果に基づいて、コンピュータシステムの性能を回復させるための対策を実行する。
性能の劣化を検知する方法には様々なものが知られている。例えば、特許文献1には、コンピュータシステムから収集した性能データを学習することで、相互に相関する性能項目を発見する方法が記載されている。この方法によれば、監視装置は、複数の性能項目の性能データを収集するごとに、性能項目間の相関を計算し、正常時に存在した相関関係の喪失を検出することで、性能劣化を検知する。
特開2009−199534
ところで、コンピュータシステムにおいて明らかに性能が劣化しているときはその検出が比較的容易である一方、性能劣化が必ずしも明らかではなく、徐々に性能が劣化している場面でそれを検知するのは容易ではない。一般には、閾値を用いて性能劣化の有無の判定を行うことが行われているが、様々な理由で誤判定も多い。
また、性能の劣化が検出されたときでも、計測された性能データから直ちにその原因事象を特定できないことも多い。
本発明の一つの態様に係るコンピュータシステムを監視する監視装置は、原因事象と関連する性能項目の性能データの正常範囲が予め定められているとき、その性能項目に係る性能データが正常範囲から外れるとき、その外れ度合いを特定し、その外れ度合いの経時変化に基づいて、原因事象に関する情報を出力する。
本発明の他の態様に係るコンピュータシステムを監視する監視装置は、コンピュータシステムの評価指標と関連する複数の性能項目の性能データをグルーピングして得られた複数の性能データグループであるとき、その性能項目に係る性能データと性能データグループとの類似度を判定し、最も類似する性能データグループのラベルを出力する。
第1及び第2実施形態の性能監視システムのハードウェア構成図 第1実施形態のメモリ3が有するデータ 第1実施形態のストレージ4が有するデータ 性能劣化原因モデル30の説明図 性能劣化原因モデル30の具体例 性能劣化原因モデル30の具体例 性能データテーブル40の説明図 外れ値スコア算出器50の説明図 外れ値スコア履歴テーブル60の説明図 外れ値スコア集計テーブル70の説明図 バッチ用外れ値スコア集計テーブル80の説明図 第1実施形態の処理概要のフローチャート 外れ値スコア算出器作成処理のフローチャート 外れ値スコア算出処理のフローチャート 性能劣化傾向分析処理のフローチャート バッチジョブの性能劣化傾向分析処理のフローチャート 第2実施形態のメモリ3が有するデータ 第2実施形態のストレージ4が有するデータ KPI性能モデル230の説明図 KPI性能モデル230の具体例 パタンスコアテーブル260の説明図 性能劣化パタンテーブル270の説明図 第1実施形態の処理概要のフローチャート パタンスコア算出処理のフローチャート 性能劣化パタン分類器作成処理のフローチャート 表示装置に表示される画面300の一例 表示装置に表示される画面400の一例 画面を表示する処理のフローチャート パタンスコアの経時変化傾向の分析処理のフローチャート
本発明の一つの実施形態に係る性能分析システムは、コンピュータシステムを監視する監視装置である管理計算機1を有する。管理計算機1は、コンピュータシステムの性能に係る複数の性能項目に関する性能データを収集するデータ収集部と、原因事象と、その原因事象によって劣化する一以上の性能項目である劣化性能項目とを関連付けた性能劣化原因モデルと、を有する。さらに、管理計算機1は、原因事象に対する一以上の劣化性能項目の性能データの正常範囲が予め定められているとき、劣化性能項目の性能データである対象性能データが正常範囲から外れるとき、その外れ度合いを特定する外れ度合い特定部と、外れ度合いの経時変化に基づいて、原因事象に関する情報を出力する出力部と、を有する。
管理計算機1は、さらに、コンピュータシステムで実行されたジョブの種類及びジョブの実行期間を含むジョブ実行履歴を有してもよい。外れ度合い特定部は、ジョブ実行履歴及び対象性能データに基づいて、ジョブの種類別及びジョブの実行期間別に外れ度合いを特定してもよい。
管理計算機1は、複数の原因事象に係る複数種類の性能劣化原因モデルを有してもよい。外れ度合い特定部は、ジョブの種類別及びジョブの実行期間別に、複数の原因事象別の外れ度合いを特定してもよい。管理計算機1は、複数の原因事象別の外れ度合いの経時変化のうち、各ジョブの実行に要した時間である所要時間の長さの変化と最もマッチする経時変化に係る原因事象を特定する分析部をさらに有してもよい。出力部は、分析部で特定された原因事象を示す情報を出力してもよい。
管理計算機1は、原因事象が生じていないときの一以上の劣化性能項目の過去の性能データに基づいて、原因事象に対する一以上の劣化性能項目の性能データの正常範囲を特定する正常範囲特定部をさらに有してもよい。
本発明の別の一つの実施形態に係る性能分析システムは、コンピュータシステムを監視する管理計算機1を有する。管理計算機1は、コンピュータシステムの性能に係る複数の性能項目に関する性能データを収集するデータ収集部と、コンピュータシステムの評価指標と、評価指標と関連する複数の性能項目である関連性能項目とを関連付けた評価指標モデルと、を有する。管理計算機1は、さらに、評価指標が劣化しているときの、前記複数の関連性能項目の性能データをグルーピングして得られた複数の性能データグループと、データ収集部により収集された関連性能項目の性能データである対象性能データとの類似度を判定する類似度判定部を有する。管理計算機1は、対象性能データに最も類似する性能データグループと、その性能データグループの特徴を示すラベルを出力する。
管理計算機1は、評価指標の劣化に寄与している複数の関連性能項目の性能データに基づいて、各関連性能項目の評価指標の劣化への寄与度を示す情報を出力してもよい。
劣化への寄与度を示す情報は、例えば、各関連性能項目のそれぞれの寄与度が長さで示された1次元のグラフである。
1次元のグラフには、劣化への寄与度が所定よりも大きい関連性能項目の劣化への寄与度が含まれていてもよい。
対象性能データが、複数の性能データグループのいずれとも類似しないとき、管理計算機1は、評価指標の劣化に寄与している複数の関連性能項目の性能データに基づいて、新たな性能データグループを生成しても良い。さらに、管理計算機1は、各関連性能項目の評価指標の劣化への寄与度を示す情報を出力し、対象性能データが属する新たな性能データグループに付与するラベルに関する情報の入力を受け付けるようにしてもよい。
管理計算機1は、評価指標が劣化しているときの一以上の関連性能項目の過去の性能データ性能データが有する特徴に基づいてグルーピングして複数の性能データグループを生成するグループ生成部を、さらに有してもよい。グループ生成部は、生成された性能データグループに各性能データグループの特徴に基づくラベルを付与してもよい。
以下、本発明の実施形態に係る性能分析システムについて、図面を参照しながら説明する。
図1Aは、本発明の第1の実施形態に係る性能分析システムのハードウェア構成図である。
同図に示すように、性能分析システムは管理計算機1を有する。管理計算機1は、CPU2、メモリ3、ストレージ4、出力I/F5、ネットワークI/F7及び入力I/F8を備える。管理計算機1は、ストレージ4に格納されたプログラムをCPU2に読み込み実行する。プログラムの実行に必要な各種のデータ等はメモリ3に格納される。また、管理計算機1は、出力I/F5を介して、後述する性能監視及び性能分析結果などのインタフェース画面を表示装置6に表示させる。管理計算機1は、表示装置6以外に、電子メールの送信、音声出力などの出力手段を有していてもよい。管理計算機1は、ネットワークI/F7を介して、管理対象計算機であるホスト(9a〜9c)あるいはストレージ10と通信し、性能データを収集する。管理計算機1は、入力I/F8を介して、管理者からのマウス、キーボード等の入力デバイスによる情報入力を受け取り、CPU2へ送る。
図1B及び図1Cは、本発明の第1の実施形態に係る管理計算機1のメモリ3及びストレージ4が有するデータを示す。
図1Cに示すように、本実施形態では、ストレージ4には性能監視プログラム12及び性能分析プログラム13が格納されている。
性能監視プログラム12は、CPU2に実行されてデータ収集部として動作する。性能監視プログラム12は、監視対象であるホスト9及びストレージシステム10から定期的または不定期に複数の性能項目に関する計測値を性能データとして収集し、収集したデータを性能データテーブル40に格納する。
性能分析プログラム13は、CPU2に実行されて性能データの正常範囲を特定して外れ値スコア算出器50を生成する正常範囲特定部と、外れ値スコア算出器50を用いて正常範囲からの外れ度合いに係る外れ値スコアを算出する外れ度合い特定部と、外れ値スコアの経時変化を分析して原因事象を特定する分析部として動作する。
性能分析プログラム13は、正常時の性能データに基づいて、正常の範囲からの外れ度合いを示す外れ値スコアを算出する外れ値スコア算出器50を作成する。性能分析プログラム13は、外れ値スコア算出器50を用いて外れ値スコアを算出する。さらに、性能分析プログラム13は、外れ値スコア算出器50が算出した外れ値スコアを統計処理して監視対象システムの性能劣化傾向を分析する。
図1Bに示すように、本実施形態では、メモリ3には性能劣化原因モデル30、性能データテーブル40、外れ値スコア算出器50、外れ値スコア履歴テーブル60、外れ値スコア集計テーブル70、バッチ用外れ値スコア集計テーブル80及びジョブ実行履歴90が格納されている。
性能劣化原因モデル30は、性能劣化の原因となる原因事象31と、その原因事象31によって劣化する性能項目32とを関連付ける因果関係モデルである。
図2Aは、性能劣化原因モデル30の構成の一例を示す。性能劣化原因モデル30では、一つの原因事象31に対して複数の性能項目32が関連付けられてもよい。また、性能項目32の関連は、図のように階層構造を有してもよい。
図2B及び図2Cは、性能劣化原因モデル30の具体例を示す。図2Bは、データベースの性能障害「ロック競合待ち」という原因事象31aと、その原因事象によって劣化する「トランザクション数」、「セッション待機時間」及び「ロック待機回数」という性能項目32a〜cとが関連付けられている。図2Cは、ストレージの性能障害「Read I/O処理遅延」という原因事象31bと、その事象によって劣化する「ランダムReadIOPS」、「シーケンシャルReadIOPS」及び「ランダムReadキャッシュヒット率」という性能項目32d〜fとが対応付けられている。
性能データテーブル40は、監視対象のコンピュータシステムのホスト9またはストレージシステム10から収集した性能データを有する。
図3は、性能データテーブル40の一例を示す。
性能データテーブル40は、データ項目として、監視対象のシステムの名称を示すシステム41と、性能項目42と、計測値44を計測した時刻を示す計測時刻43と、計測値44とを有する。性能データテーブル40には性能監視プログラム12によって適宜データが保存される。
外れ値スコア算出器50に基づく外れ値スコア算出処理で、性能劣化原因モデル30に定める原因事象31ごとに、対応する性能項目32の性能データの正常範囲からの外れ度合いに係る外れ値スコアが特定される。外れ値スコア算出器50は、機械学習によって生成された学習済みモデルでよく、例えば、回帰分析により生成された回帰モデルでよい。ここでは、外れ値スコア算出器50はいくつかの数値パラメタの集合体でよい。外れ値スコア算出器50を生成するために用いた回帰アルゴリズムの種類によって、数値パラメタの内容は異なる。
図4は、外れ値スコア算出器50の一例を示す。
同図に示す通り、外れ値スコア算出器50は、データ項目として、監視対象のシステムの名称を示すシステム51と、原因事象の識別情報である原因事象ID52と、原因事象53と、数値パラメタ集合54とを有する。つまり、外れ値スコア算出器50は、システム51および原因事象ID52別に、数値パラメタ集合54を有する。
外れ値スコア履歴テーブル60は、外れ値スコア算出器50により算出された外れ値スコアを有する。
図5は、外れ値スコア履歴テーブル60の一例を示す。
同図に示す通り、外れ値スコア履歴テーブル60は、データ項目として、システム61と、計測時刻62と、原因事象ID63と、外れ値スコア64とを有する。外れ値スコア64は、後述する外れ値スコア算出処理で算出されたスコアである。
外れ値スコア集計テーブル70は、外れ値スコアを集計した統計値等を有する。
図6は、外れ値スコア集計テーブル70の一例を示す。
同図に示す通り、外れ値スコア集計テーブル70は、データ項目として、システム71と、集計を行った期間の識別情報である期間ID72と、原因事象ID73と、外れ値スコア統計値74とを有する。
外れ値スコア統計値74は、システム71、期間ID72及び原因事象ID73ごとに外れ値スコアが統計処理された値である。外れ値スコア統計値74は、例えば、外れ値スコア履歴テーブル60のデータに基づいて算出された値である。この図では、外れ値スコア統計値74は、計測時刻62が期間ID72に示す期間内である外れ値スコア64の平均値および標準偏差である。
図7は、バッチ用外れ値スコア集計テーブル80の一例を示す。
バッチ用外れ値スコア集計テーブル80は、バッチ処理に関する外れ値スコアを記憶するテーブルであり、外れ値スコア集計テーブル70の変形である。
同図に示す通り、バッチ用外れ値スコア集計テーブル80は、データ項目として、システム81と、バッチ種類85と、実行期間86と、原因事象ID83と、外れ値スコア統計値84とを有する。実行期間86は、バッチ種類85に示すバッチジョブの開始時刻及び終了時刻を示す。つまり、バッチ用外れ値スコア集計テーブル80は、バッチ種類85、実行期間86及び原因事象ID83ごとに算出された外れ値スコア統計値84を有する。
ジョブ実行履歴90は、コンピュータシステムで実行されたジョブの種類、開始時刻及び終了時刻等を有する。ジョブ実行履歴90は、ジョブスケジューラ19から取得する。
図8は、性能分析プログラム13が行う処理の流れの概略を示す。この図は、主要な処理ステップであるS1〜S3と、その入出力データとの関係を示している。以下、各ステップの動作を説明する。
まず、性能分析プログラム13は、性能劣化原因モデル30と性能データテーブル40に格納された正常時の性能データとに基づいて外れ値スコア算出器50を作成する(S1)。例えば、性能分析プログラム13は、性能劣化の原因事象別に定義された性能劣化原因モデル30に従って、機械学習技術により、外れ値原因事象別の外れ値スコア算出器50を作成してもよい。
次に、性能分析プログラム13は、ステップS1で生成された外れ値スコア算出器50を用いて、解析対象の性能データの外れ値スコアを算出する(S2)。例えば、性能分析プログラム13は、性能劣化原因モデル30に従って、原因事象31別にそれぞれの外れ値スコアを計算する。外れ値スコア算出器50で生成された外れ値スコアは、外れ値スコア履歴テーブル60に格納される。
ここで、外れ値スコアとは、性能劣化が発生した確からしさを示すスコアでよい。外れ値スコアは、正常からどの程度乖離しているかの外れ度合いを示している。
性能分析プログラム13は、外れ値スコア履歴テーブル60に格納されたデータに基づいて、性能劣化傾向を分析する(S3)。例えば、性能分析プログラム13は、一定期間の外れ値スコアを統計処理して、外れ値スコアの変化傾向(経時変化)を分析する。性能分析プログラム13が傾向変化を検知したときは、その旨を管理者へ通知してもよい。
つぎに、上述のステップS1〜S3の詳細をそれぞれ説明する。
図9は、ステップS1の外れ値スコア算出器作成処理の詳細な処理手順を示す。
性能分析プログラム13は、学習期間として、監視対象のシステムが正常なふるまいを示した期間の指定を受領する(S21)。例えば、管理者が入力デバイスを用いて指定してもよい。この期間は、少なくとも対象としている原因事象が発生していない期間でよい。
性能分析プログラム13は、性能劣化原因モデル30から原因事象31を一つ選択する(S22)。
性能分析プログラム13は、選択された原因事象31に対応する性能劣化原因モデル30を参照し、原因事象31に関連する性能項目32の種類を特定する。さらに、性能分析プログラム13は、ステップS21で指定された学習期間分の特定された性能項目42の計測値44を性能データテーブル40から取得する(S23)。
性能分析プログラム13は、ステップS23で取得した計測値44に基づいて、機械学習により、外れ値スコア算出器50を作成する(S24)。外れ値スコア算出器50の作成アルゴリズムは様々なものが採用可能である。例えば、その作成アルゴリズムは、回帰分析、クラスタリング、ニューラルネット等でもよいし、それらを組み合わせたものでもよい。
例えば、外れ値スコア算出器50の作成アルゴリズムとして回帰分析が採用された場合について説明する。性能分析プログラム13は、原因事象31に関連する性能項目32の一つを選択する(例えば、性能項目1とする)。次に、性能分析プログラム13は、性能項目1と、他の性能項目32(性能項目2)との関係性を示す回帰モデルを回帰分析により作成する。回帰分析に用いるアルゴリズムは、特に限定しない。単純な線形回帰分析でもよいし、Support Vector Machineやニューラルネット、Random Forestのような集合学習でもよい。この外れ値スコア算出器50では、性能項目2に対する性能項目1の予測値が得られる。従って、この外れ値スコア算出器50によれば、性能項目1の予測値と実測値との乖離を外れ値スコアとしてもよい。
性能分析プログラム13は、ステップS24で作成した外れ値スコア算出器50をストレージ4に保存する(S25)。
複数の原因事象31の外れ値スコア算出器50を生成する場合、性能分析プログラム13は、それぞれの原因事象31について上記の処理を繰り返して実行してもよい。
図10は、ステップS2の外れ値スコア算出処理の詳細な処理手順を示す。
ステップS2では、ステップS1で作成された外れ値スコア算出器50を用いて、分析対象データの外れ値のスコアを算出する。ここで、外れ値スコアが大きいほど、対象とする原因事象が発生している確度が高いことを意味する。ステップS2は、性能分析プログラム13によって定期的に実行されてもよい。性能分析プログラム13は、前回の実行時の後に蓄積された新規データを対象にして外れ値スコアを算出してもよい。以下、各ステップについて説明する。
性能分析プログラム13は、監視対象システムの複数ある原因事象31の一つを選択する(S30)。性能分析プログラム13は、さらに、選択した原因事象31に対応する、性能劣化原因モデル30を取得する。
性能分析プログラム13は、ステップS30で選択された原因事象31に対応する外れ値スコア算出器50を選択する(S31)。
性能分析プログラム13は、対象の性能データを性能データテーブル40から取得する(S32)。ここで性能データテーブル40から取得するデータは、例えば、ステップS30で取得した性能劣化原因モデル30の性能項目42の、計測時刻43が分析対象の期間内の計測値44でよい。
性能分析プログラム13は、ステップS32で取得した性能データを、ステップS31で取得した外れ値スコア算出器50に入力する。外れ値スコア算出器50は、入力されたデータに基づいて外れ値スコアを算出し、外れ値スコア履歴テーブル60に保存する(S33)。
例えば、上述の回帰分析を用いて作成された外れ値スコア算出器50では、分析対象の性能項目2に対する性能項目1の予測値を算出して、性能項目1の実測値と算出された予測値との差を外れ値スコアとしてもよい。
図11は、ステップS3の性能劣化傾向分析処理の詳細な処理手順を示す。
ステップS3では、ステップS2で算出された外れ値スコアの経時変化の傾向を分析し、性能劣化の兆候を検知する。以下、各ステップについて説明する。
性能分析プログラム13は、外れ値スコア履歴テーブル60に格納された外れ値スコア64を読み出して統計処理する(S40)。例えば、性能分析プログラム13は、外れ値スコア64を、システム61別、原因事象ID63別にグルーピングし、計測時刻62に基づいて一定期間(例えば、1日や1週間)ごとに統計処理してもよい。統計処理は、例えば、平均値、標準偏差、分散、中央値、最大値、最小値、最頻値などを求める処理でよい。ここで算出された外れ値スコアの統計値は外れ値スコア集計テーブル70に格納される。
性能分析プログラム13は、ステップS40で算出された外れ値スコアの統計値74の経時変化量を計算する(S41)。経時変化量は、例えば、一定期間ごとに算出された統計値の隣り合う期間同士の差分値でよい。
性能分析プログラム13は、ステップS41で求めた外れ値スコアの統計値の経時変化量に基づいて、傾向変化の有無を判定する(S42)。傾向変化の有無の判定は、例えば、経時変化量が所定の閾値を超過しているか否かで行ってもよい。
傾向変化が認められないときは、ステップS43をスキップして終了する。
傾向変化が認められたときは、性能分析プログラム13は傾向変化が認められた原因事象およびその期間を、電子メールや画面表示等の手段で管理者へ通知する(S43)。
これにより、原因事象の発生、または原因事象の兆候をいち早く検知できる。この通知を受けた管理者は、システムの性能が大幅に劣化する前に原因事象の解消または予防のためのアクションをとることができる。
傾向変化を検出する方法は、上記の方法以外にも多く研究されており、それらの方法を使用しても構わない。例えば、各期間の外れ値スコア統計値74の更なる平均値及び標準偏差等を求め、これらの中の更なる外れ値を検出して傾向変化を検出してもよい。あるいは、機械学習技術を用いて外れ値スコア統計値74の回帰モデルを作成し、回帰による予測値と実測値とのずれの大きさで傾向変化を検出してもよい。さらには、ARIMAモデル等に基づき外れ値スコア統計値74を予測し、実測値との差の大きさが所定の閾値と比較して傾向変化の判定をしてもよい。
次に、バッチジョブが実行されているときの性能劣化傾向の分析について説明する。
バッチジョブは、システムのリソースを最大限使って、特定の処理を短期間で完了させることが目的となる。そのため、一般に、バッチジョブの種類によって処理の内容(ワークロード)が大きく異なる。そこで、バッチジョブに関連して、ステップS3の性能劣化傾向分析処理を次のようにしてもよい。
図12は、ステップS3で行われるバッチジョブの性能劣化傾向分析処理の手順を示す。
性能分析プログラム13は、バッチジョブの実行期間別に外れ値スコアを統計処理する(S50)。例えば、性能分析プログラム13は、ジョブスケジューラ19から取得した情報に基づいて、一定の期間内(例えば、数日〜1ヶ月)について、ジョブ種類ごとにその実行期間(開始時刻から終了時刻まで)を特定する。性能分析プログラム13は、外れ値スコア履歴テーブル60を参照し、計測時刻62がこのバッチジョブの実行期間内の外れ値スコア64を統計処理する。性能分析プログラム13は、上記の統計処理の結果をバッチ用外れ値スコア集計テーブル80に格納する。
性能分析プログラム13は、さらに、各バッチジョブの実行時間、すなわち実行期間86の開始時刻から終了時刻までのバッチジョブの実行に要した所要時間を算出する(S51)。
性能分析プログラム13は、一定期間内のバッチジョブの実行時間の傾向変化をバッチジョブの種類ごとに分析し、実行時間が増加傾向にあるか否かを判定する(S52)。バッチジョブの実行時間が増加傾向にある否かの判定方法は、例えば、バッチジョブの実行時間を時系列に並べ、その線形回帰式における時間項の係数が所定の閾値よりも大きいか否かで判定してもよい。
バッチジョブの実行時間が増加傾向でないときは、ステップS53をスキップして終了するする。
バッチジョブの実行時間が増加傾向であるときは、性能分析プログラム13は、その増加を引き起こしている原因事象を推定する(S53)。例えば、性能分析プログラム13は、バッチジョブ実行時間と外れ値スコア統計値84とをマッチングして原因事象を推定してもよい。性能分析プログラム13は、例えば、バッチ用外れ値スコア集計テーブル80を参照して、原因事象ID83ごとに、一定期間内のバッチジョブの実行時間と外れ値スコア統計値84との相関係数を算出してもよい。そして、性能分析プログラム13は、相関係数が最も高い原因事象ID83を、バッチジョブの実行時間の増加の原因事象と推定してもよい。性能分析プログラム13は、この原因事象を管理者へ通知してもよい。
これにより、バッチジョブを実行中の性能劣化の原因事象を推定できる。
以上、性能劣化原因モデル30を用いた性能分析について説明した。
次に、本発明の第2の実施形態に係る性能分析システムについて説明する。なお、以下の第2の実施形態の説明では、第1の実施形態と共通する機能ないし構成については同一の符号を付して説明を省略する場合がある。
本実施形態に係る性能分析システムは、性能データに基づいてコンピュータシステムの評価指標の劣化原因を分析する。本実施形態では、管理者との最小限のやり取りで、性能劣化の原因を特定するノウハウを蓄積することができる。
本実施形態に係る性能分析システムのハードウェア構成は、第1の実施形態と同様である。
本実施形態における管理計算機1は、コンピュータシステムの評価指標であるKPI(Key Performance Indicator)が劣化した時点における性能データで機械学習することにより、それぞれ異なる特徴を有する複数の性能データのパタンを生成する。そして、分析対象データが既知のパタンに合致すると、そのパタンを特徴付けるラベルを管理者へ通知する。これにより、分析対象データが検出された時間帯に発生した原因事象を推定できる。管理計算機1は、既知のパタンとは異なる特徴を有する未知の性能データのパタンを検出すると、その旨を管理者へ通知する。管理者は、そのパタンが示す特徴に基づいてそのパタンを特徴付けるラベルを付与してもよい。そのラベルは、例えば、性能劣化の原因の事象でよい。管理計算機1は、パタンとラベルとを関連づけて記録し、類似するパタンの増加等を監視する。
図13A及び図13Bは、本発明の第2の実施形態に係る管理計算機1のメモリ3及びストレージ4が有するデータを示す。
図13Bに示すように、本実施形態では、ストレージ4には性能監視プログラム12及び性能分析プログラム213が格納されている。
性能分析プログラム213は、CPU2に実行されて、性能データが有する特徴に基づいてグループ化してKPIの劣化パタンを判定する性能劣化パタン分類器250を生成するグループ生成部と、性能劣化パタン分類器250を用いて分析対象の性能データとKPIの劣化パタンとの類似度を判定する類似度判定部と、KPIが劣化しているときの性能項目別にその劣化への寄与度を示す情報を出力する出力部として動作する。
性能分析プログラム213は、KPIが劣化したときの性能データに基づいて、性能データの特徴別のグループに分類するための性能劣化パタン分類器250を作成する。性能分析プログラム213は、性能劣化パタン分類器250を用いて分析対象の性能データと性能劣化パタンとの類似度を判定する。さらに、性能分析プログラム213は、性能劣化パタン分類器250の判定結果を表示装置6に表させる。
図13Aに示すように、本実施形態では、メモリ3にはKPI性能モデル230、性能データテーブル40、性能劣化パタン分類器250、パタンスコアテーブル260及び性能劣化パタンテーブル270が格納されている。
KPI性能モデル230は、コンピュータシステムの評価指標であるKPI231とそのKPI231の劣化に寄与しうる複数の性能項目232とが関連付けられている。
図14Aは、KPI性能モデル230の構成の一例を示す。KPI性能モデル230では、一つのKPI223と、KPI223に連動すると考えられる複数の性能項目232とが関連付けられてもよい。複数の性能項目232は階層関係があってもよい。なお、KPI223は、KPIと対応する性能項目でもよく、KPIの性能は性能データとして性能監視プログラム12により収集されてもよい。
図14Bは、KPI性能モデル230の具体例を示す。図14Bは、「ストレージのRead応答時間」をKPI223としたとき、「プロセッサ使用率」(ストレージ内部のプロセッサ使用率)、「キャッシュヒット率」(同じくストレージ内部のキャッシュのヒット率)、及び「IOPS」という性能項目232a、232b、232cが関連付けられている。
性能劣化パタン分類器250は、分析対象の性能データと既存の性能劣化パタンとの類似度を示すパタンスコアを算出する。性能劣化パタン分類器250は、例えば、機械学習によって生成された学習済みモデルでよく、例えば、クラスタリングによって生成されたクラスタモデルでよい。
パタンスコアテーブル260は、性能劣化パタン分類器250で算出されたパタンスコアを有する。
図15は、パタンスコアテーブル260の一例を示す。
同図に示す通り、パタンスコアテーブル260は、データ項目として、システム261、KPI262、計測時刻263、性能劣化パタン分類器250が分類したパタンのパタンID264、およびパタンスコア265を有する。パタンスコア265は、後述するパタンスコア算出処理で性能データテーブル40の計測値44に基づいて算出される。
性能劣化パタンテーブル270は、性能劣化パタンに関する情報を有する。
図16は、性能劣化パタンテーブル270の一例を示す。
同図に示す通り、性能劣化パタンテーブル270は、データ項目として、システム271、KPI272、パタンID273、特徴性能項目274及びラベル275を有する。特徴性能項目274は、パタンID273で特定される性能劣化パタンで特徴的な値を示す性能項目である。特徴性能項目274は複数の性能項目を含んでよい。ラベル275はパタンの特徴を示す識別情報であり、例えば、パタンを生じさせた原因事象を示す文字列でよい。
例えば、同図の例では、ストレージシステムのKPI「平均Read応答時間」について得られたパタンが、特徴性能項目274にある「IOPS」および「キャッシュヒット率」で規定されている。そして、このパタンには「Write処理衝突」という文字列がラベル275として付与されている。ラベル275が付与されていないパタンには「No Data」が格納されている。
図17は、性能分析プログラム213が行う処理の流れの概略を示す。この図は、主要な処理ステップであるS4〜S7と、その入出力データとの関係を示している。以下、各ステップの動作を説明する。
まず、性能分析プログラム213は、KPI性能モデル230と性能データテーブル40に格納された性能データとに基づいて性能劣化パタン分類器250を作成する(S4)。ここではKPIが劣化しているときの性能データを用いて行う。特に、劣化の程度が軽微なときの性能データを用いてもよい。例えば、性能分析プログラム213は、機械学習技術により、性能データを複数にグルーピングして得られたグループで構成される性能劣化パタンを有する性能劣化パタン分類器250を作成してもよい。
ここで未知パタンが出願したときは、ステップS6へ進んでもよい。
次に、性能分析プログラム213は、ステップS4で生成された性能劣化パタン分類器250を用いて、分析対象の性能データのパタンスコアを算出する(S5)。例えば、性能分析プログラム213は、性能劣化パタン分類器250に従って、KPI231別に、それぞれの性能劣化パタンのパタンスコアを計算する。性能劣化パタン分類器250で生成されたパタンスコアは、パタンスコアテーブル260に格納される。
ここで、性能劣化パタン分類器250で算出されたパタンスコアにより、分析対象データがどの既存のパタンとも類似しないとき(例えば、パタンスコアが所定の閾値よりも大きい(または小さい)とき)、ステップS6へ進む。
性能分析プログラム213は、後述するインタフェース画面(図20、図21参照)を表示装置6に表させる(S6)。この画面で管理者はその未知パタンが示す事象、つまり、KPIが劣化している原因事象等を示すラベルを付与することができる。
性能分析プログラム213は、パタンスコアテーブル260に格納されたデータに基づいて、性能劣化傾向を分析する(S7)。例えば、性能分析プログラム213は、一定期間のパタンスコアを統計処理して、パタンの出現頻度、または、パタンスコアの変化傾向(経時変化)などを分析する。性能分析プログラム213が傾向変化を検知したときは、その旨を管理者へ通知してもよい。
つぎに、上述のステップS4〜S7の詳細をそれぞれ説明する。
図18は、ステップS4の性能劣化パタン分類器作成処理の詳細な処理手順を示す。
性能分析プログラム13は、KPIと学習期間の指定を受領する(S51)。これは、例えば、管理者が入力デバイスを用いて指定してもよい。学習期間は、少なくとも対象のKPIが劣化している期間でよい。
性能分析プログラム213は、KPIが劣化している期間を特定する(S52)。例えば、性能分析プログラム213は、性能データテーブル40から指定されたKPIの性能データを取得し、指定された学習期間内のKPIの値の分布のうち、所定の基準より悪い(劣化した)値を示す期間を、KPIの性能劣化期間としてもよい。所定の基準は、例えば、KPIの値の分布のうちのワースト5%の値でもよい。KPIの劣化期間は方法で特定しても構わない。例えば、平均値からの偏差が、所定の閾値を超過した期間としてもよい。
性能分析プログラム213は、KPI性能モデル230で指定されたKPI231と関連付けられている性能項目232を特定する。さらに、性能分析プログラム213は、学習期間内の特定された性能項目42の計測値44を性能データテーブル40から取得する(S53)。性能分析プログラム213は、ここで取得した性能データを、ステップS52で指定されたKPIの性能劣化期間のデータ群と、その他の期間のKPIが正常であると判断された期間のデータ群とに分ける。
性能分析プログラム213は、ステップS53で取得した性能データの前処理を行う(S54)。
例えば、性能分析プログラム213は、性能データの計測値を性能項目ごとに正規化する。正規化には様々な方法があるが、例えば、性能項目ごとのデータ集合の平均値と標準偏差を求め、それぞれのデータから平均値を引き、標準偏差で除算する方法がある。
また、性能分析プログラム213は、KPIと各関連性能データとの相関係数を算出してもよい。このとき、負相関であれば相関係数が0未満の負の値になる。本実施形態では、関連の強さは相関係数の絶対値で評価されるので、符号を無視する。つまり、負相関の場合は、相関係数に−1を乗算して符号を反転させる。例えば、KPIが「応答時間」で、関連性能項目が「キャッシュヒット率」の場合、一般に、「キャッシュヒット率」が低いほど「応答時間」が大きくなるため、両者は負相関の関係にある。この場合、「キャッシュヒット率」の計測値に−1を乗算し符号を反転させ、正相関の関係とする。
さらに、性能分析プログラム213は性能データのスクリーニングを行っても良い。例えば、性能分析プログラム213は、正規化済みの性能データのうち所定の閾値未満である性能項目を除外し、所定の閾値以上である性能項目のみを以下の処理対象としてもよい。つまり、KPIの劣化への寄与が所定以上の性能項目を処理対象としてもよい。
性能分析プログラム213は、ステップS54で前処理された性能データに基づいて、機械学習により、性能劣化パタン分類器250を作成する(S55)。性能劣化パタン分類器250の作成アルゴリズムは様々なものが採用可能である。例えば、その作成アルゴリズムは、回帰分析、クラスタリング、ニューラルネット等でもよいし、それらを組み合わせたものでもよい。クラスタリングのアルゴリズムは、どのようなものでも良く、例えば、K-means や X-means 等のアルゴリズムでよい。
例えば、性能劣化パタン分類器250の作成アルゴリズムとしてクラスタ分析が採用された場合の例について説明する。性能分析プログラム213は、KPI性能モデル230で定義されているKPI231ごとに、KPI231と関連付けられているn個(nは一以上)の性能項目232の計測値44をデータグループとしてクラスタリングする。例えば、性能分析プログラム213は、一つのKPI231に関連する複数の性能項目232の計測値44をn次元ベクトルとして扱う。そして、性能分析プログラム213は、正常に分類されたデータ群から、正常範囲を示すn次元空間のクラスタを生成してもよい。正常範囲は単一のクラスタで表現されてもよいし、複数のクラスタの組み合わせで表現されてもよい。また、性能分析プログラム213は、KPI性能劣化期間の性能データに基づいて、性能劣化時の計測値の範囲を示す複数のクラスタを生成しても良い。これらのクラスタは性能劣化の要因別に作成されてよい。各クラスタが類似の特徴を有する計測値で構成されるグループであり、性能劣化パタンである。計測値で構成される性能データのn次元ベクトルと各クラスタとの距離が、その性能データとクラスタとの類似度を示す。例えば、各ベクトルとクラスタとの距離または距離の逆数をパタンスコアとしてもよい。
性能分析プログラム213は、性能劣化パタンテーブル270を参照し、ステップS55で生成したそれぞれのパタンに対して「ラベル」を自動付与してもよい(S56)。例えば、あるシステムである原因事象が起きると影響を受ける性能項目と、それにより悪化するKPIとの組合わせが既知のとき、性能分析プログラム213はこれらの組を予め有していてもよい。そして、性能分析プログラム213は、生成されたクラスタのパタンと既知の組合わせと合致するものがあれば、その原因事象をラベル275に設定してもよい。生成されたクラスタのパタンと既知の組合わせと合致するものがなければ、性能分析プログラム213はラベル275に「No Data」を設定する。正常範囲のクラスタには「正常」ラベルが付与されてもよい。
性能分析プログラム213は、性能劣化パタンテーブル270を参照し、ラベルのない(ラベル275が「No Data」である)未知パタンの有無を調べる(S57)。
未知パタンがないときは、そのまま終了する。
未知パタンがあるときは、性能分析プログラム213は、未知パタンについての情報を表示装置6に表示し、管理者が未知パタンに手動でラベルを付与する(S58)。管理者は、未知パタンに付与するラベルの文字列を入力デバイスを使って入力してもよい。性能分析プログラム213は、入力された文字列を、当該パタンのエントリのラベル275へ格納する。
KPIごとに性能劣化パタン分類器250が作成される場合、性能分析プログラム213はKPIごとに上記の処理を繰り返し実行してもよい。
図19は、ステップS5のパタンスコア算出処理の詳細な処理手順を示す。
性能分析プログラム213が、新規に計測した性能データを250を用いてパタンに分類する。
性能分析プログラム213は、性能データテーブル40から分析対象の性能データを取得する(S60)。
性能分析プログラム213は、性能劣化パタン分類器250を用いてステップS60で取得した性能データを既存パタンに分類し、パタンスコアを算出する(S61)。性能分析プログラム13は、この結果を、パタンスコアテーブル260へ格納する。
例えば、性能分析プログラム213は、ステップS60で取得した性能データにステップS54と同じ前処理を施し、同一時刻のデータをまとめてn次元ベクトルとする。性能分析プログラム13は、このn次元ベクトルを性能劣化パタン分類器250へ入力する。性能劣化パタン分類器250は、各n次元ベクトルと既存パタンとの類似度に係るパタンスコアを算出する。
性能分析プログラム213は、既存のどのパタンとも類似しないデータで構成される未知のパタンの有無を判定する(S62)。例えば、性能分析プログラム213は、既存のクラスタのいずれとも異なる新たなクラスタが生成されたか否かを判定してもよい。
未知のパタンがないときは、そのまま終了する。
未知のパタンがあるときは、ステップS4におけるステップS58と同様の処理により、管理者が手動でラベルを付与する(S63)。
以上により、性能分析プログラム13は、新規の性能データが、どのパタンに該当するかを分類することができる。
次に、ステップS58およびステップS63におけるラベルの手動付与について詳細に説明する。
まず、表示装置6に表示されるGUIの一例を図20および図21に示す。
図20は、表示装置6に表示される画面300の一例を示す。画面300は、性能分析プログラム213が管理者から未知パタンに関する情報を受領するための画面である。
画面300は、チャート表示領域310を有する。チャート表示領域310は、KPIを示す細線93と、KPIに関連する性能データを示す棒グラフ90a〜90cと、性能データが示すパタンを示す矩形91a〜91bとを有する。
細線93は時刻ごとのKPIを示す。
棒グラフ90a〜90cは、KPIの劣化に寄与している複数の関連性能項目の性能データに基づいて、各関連性能項目のKPIの劣化への寄与度を示す。同図の例では、棒グラフ90a〜90cは、各時刻の性能項目の値を積み上げた1次元のグラフである。積み上げる各性能データの値は、例えば、上述した前処理が施された値でよい。棒グラフにおける各性能項目の領域の長さが各関連性能項目のそれぞれの寄与度に対応する。このような表示にすることで、管理者は各性能劣化パターンを直感的に理解しやすい。
矩形91a〜91bは、背景として棒グラフに重ねて表示されていて、各時刻におけるパタンを示している。矩形91a〜91bの領域が選択されると、選択された領域のパタンに対応するラベル94が表示されるようにしてもよい。
チャート表示領域310は、さらに、未知パタンを示す矩形92を有する。管理者は、この未知パタンに対するラベルを付与する。例えば、未知パタンの矩形92が選択されると、パタン情報入力ダイアログ95が表示されるようにしてもよい。この場合、管理者は、棒グラフ90の性能項目の組合せから考察した、この時点における発生事象の内容をラベル入力フォーム96に入力することができる。フォームに入力された情報は、性能分析プログラム213が、性能劣化パタンテーブル270のラベル275へ格納する。
図21は、別の画面400の例を示す。
画面400は、複数のチャート表示領域を有する。すなわち、画面400は、外部性能データチャート領域410と、内部性能データチャート領域420とを有する。
外部性能データチャート領域410には、外部からシステムに与えられるワークロード量にあたる性能データに関するチャートが表示される。内部性能データチャート領域420には、外部から与えられるワークロード量におけるシステム内部の性能データが表示される。このように外部性能データチャートと内部性能データチャートとを分けて表示することで、管理者による因果関係の理解を助け、未知パタンを考察しやすくする。
ワークロード量に相当する性能データは、例えば、ストレージにおける秒間I/O量(IOPS)、データベースにおける秒間トランザクション数、秒間SQL数などでよい。また、このように性能データの種類(ワークロード量か否か)を区別するために、図2および図14の性能項目32、232に、性能データの種類を示すデータ構造が付与されていてもよい。
図22は、図20及び図21の画面300、400に関して、性能分析プログラム213が行う処理のフローで、図16のステップS58および図17のステップS63の詳細な処理である。
未知パタンが出現したとき、性能分析プログラム213は、未知パタンを含む一定の期間と未知パタンに対応するKPIとを特定する(S70)。
性能分析プログラム213は、KPI性能モデル230を参照して、特定されたKPI231と関連する性能項目232を特定する(S71)。
性能分析プログラム213は、性能劣化パタンテーブル270とパタンスコアテーブル260を参照し、ステップS70で特定されたKPI及び期間に対応するパタンおよびパタンのラベル275を取得する(S72)。
性能分析プログラム213は、ステップS71で特定された性能項目の各時刻における計測値44を性能データテーブル40から取得する(S73)。
性能分析プログラム213は、ステップS73で取得した計測値に基づいてチャートを作成し、表示装置6に表示させる(S74)。例えば、性能分析プログラム213は、ステップS54と同じ前処理をした性能データに基づいてチャートを作成してもよい。
性能分析プログラム213は、画面300、400に対して管理者が入力した、新規ラベルを受領し、性能劣化パタンテーブル270のラベル275へ格納する(S75)。
次に、図23を用いて、ステップS7の詳細を述べる。
ステップS7では、ステップS5で算出されたパタンスコアの経時変化の傾向を分析し、KPI劣化の兆候を検知する。以下、各ステップについて説明する。
性能分析プログラム213は、パタンスコアテーブル260に格納されたパタンスコア265を統計処理してパタンスコア統計値を算出する(S80)。例えば、パタンスコア265がパタンのクラスタからの距離であるときは、パタンスコア265が小さいほどパタンに類似し、大きいほど非類似である。そこで、性能分析プログラム213はパタンID264別にパタンスコア265の値が所定値よりも大きい行数をカウントし、これを統計値としてもよい。
性能分析プログラム213は、ステップS80で算出されたパタンスコア統計値の経時変化量を計算する(S81)。経時変化量は、例えば、一定期間ごとに算出された統計値の隣り合う期間同士の差分値でよい。
性能分析プログラム213は、ステップS81で求めたパタンスコアの統計値の経時変化量に基づいて、傾向変化の有無を判定する(S82)。傾向変化の有無の判定は、例えば、経時変化量が所定の閾値を超過しているか否かで行ってもよい。
傾向変化が認められないときは、ステップS83をスキップして終了する。
傾向変化が認められたときは、性能分析プログラム213は傾向変化が見られたKPIおよびその期間を、電子メールや画面表示等の手段で管理者へ通知してもよい(S83)。
これにより、KPIの劣化、または劣化の兆候をいち早く検知できる。この通知を受けた管理者は、システムの性能が大幅に劣化する前に原因事象の解消または予防のためのアクションをとることができる。
1 管理計算機、12 性能監視プログラム、13 性能分析プログラム、30 性能劣化原因モデル、40 性能データテーブル、50 外れ値スコア算出器、60 外れ値スコア履歴テーブル、70 外れ値スコア集計テーブル、80 バッチ用外れ値スコア集計テーブル、90 ジョブ実行履歴、213 性能分析プログラム、230 KPI性能モデル、250 性能劣化パタン分類器、260 パタンスコアテーブル、270 性能劣化パタンテーブル

Claims (11)

  1. コンピュータシステムを監視する監視装置であって、
    前記コンピュータシステムの性能に係る複数の性能項目に関する性能データを収集するデータ収集部と、
    原因事象と、前記原因事象によって劣化する一以上の性能項目である劣化性能項目とを関連付けた性能劣化原因モデルと、
    前記原因事象について、前記一以上の劣化性能項目の性能データの正常範囲が予め定められていて、前記データ収集部により収集された前記劣化性能項目の性能データである対象性能データが前記正常範囲から外れるとき、その外れ度合いを特定する外れ度合い特定部と、
    前記外れ度合いの経時変化に基づいて、前記原因事象に関する情報を出力する出力部と、を有するコンピュータシステムの監視装置。
  2. 前記コンピュータシステムで実行されたジョブの種類及びジョブの実行期間を含むジョブ実行履歴を有し、
    前記外れ度合い特定部は、前記ジョブ実行履歴及び前記対象性能データに基づいて、ジョブの種類別及びジョブの実行期間別に前記外れ度合いを特定する、請求項1記載のコンピュータシステムの監視装置。
  3. 複数の原因事象に係る複数の性能劣化原因モデルを有し、
    前記外れ度合い特定部は、ジョブの種類別及びジョブの実行期間別に、前記複数の原因事象別の前記外れ度合いを特定し、
    前記監視装置は、
    前記複数の原因事象別の外れ度合いの経時変化のうち、各ジョブの実行に要した時間である所要時間の長さの変化と最もマッチする経時変化に係る原因事象を特定する分析部をさらに有し、
    前記出力部は、前記分析部で特定された原因事象を示す情報を出力する、請求項2記載のコンピュータシステムの監視装置。
  4. 前記原因事象が生じていないときの前記一以上の劣化性能項目の過去の性能データに基づいて前記正常範囲を特定する正常範囲特定部を、さらに有する請求項1記載のコンピュータシステムの監視装置。
  5. コンピュータシステムを監視する監視装置であって、
    前記コンピュータシステムの性能に係る複数の性能項目に関する性能データを収集するデータ収集部と、
    前記コンピュータシステムの評価指標と、前記評価指標と関連する複数の性能項目である関連性能項目とを関連付けた評価指標モデルと、
    前記評価指標が劣化しているときの、前記複数の関連性能項目の性能データをグルーピングして得られた複数の性能データグループであって、それぞれが有する特徴に基づくラベルを有する前記複数の性能データグループと、前記データ収集部により収集された前記関連性能項目の性能データである対象性能データとの類似度を判定する類似度判定部と、
    前記対象性能データに最も類似する性能データグループ及びその性能データグループのラベルを出力する出力部と、を有するコンピュータシステムの監視装置。
  6. 前記出力部は、前記評価指標の劣化に寄与している複数の関連性能項目の性能データに基づいて、各関連性能項目の前記評価指標の劣化への寄与度を示す情報を出力する、請求項5記載のコンピュータシステムの監視装置。
  7. 前記劣化への寄与度を示す情報は、各関連性能項目のそれぞれの寄与度が長さで示された1次元のグラフである、請求項6記載のコンピュータシステムの監視装置。
  8. 前記1次元のグラフには、前記劣化への寄与度が所定よりも大きい関連性能項目の前記劣化への寄与度が含まれる、請求項7記載のコンピュータシステムの監視装置。
  9. 前記対象性能データが、前記複数の性能データグループのいずれとも類似しないとき、
    前記出力部は、前記評価指標の劣化に寄与している複数の関連性能項目の性能データに基づいて、各関連性能項目の前記評価指標の劣化への寄与度を示す情報を出力し、前記対象性能データが属する新たな性能データグループに付与するラベルに関する情報の入力を受け付ける画面を出力する、請求項5記載のコンピュータシステムの監視装置。
  10. 前記評価指標が劣化しているときの前記一以上の関連性能項目の過去の性能データを前記性能データが有する特徴に基づいてグルーピングして前記複数の性能データグループを生成し、生成された性能データグループに各性能データグループの特徴に基づく前記ラベルを付与するグループ生成部を、さらに有する請求項5記載のコンピュータシステムの監視装置。
  11. コンピュータシステムを監視する監視装置が行う方法であって、
    前記監視装置は、原因事象と、前記原因事象によって劣化する一以上の性能項目である劣化性能項目とを関連付けた性能劣化原因モデルを有し、
    前記コンピュータシステムの性能に係る複数の性能項目に関する性能データを収集するステップと、
    前記原因事象について、前記一以上の劣化性能項目の性能データの正常範囲が予め定められていて、前記データ収集部により収集された前記劣化性能項目の性能データである対象性能データが前記正常範囲から外れるとき、その外れ度合いを特定するステップと、
    前記外れ度合いの経時変化に基づいて、前記原因事象に関する情報を出力するステップと、を行うコンピュータシステムの監視方法。
JP2018538896A 2017-02-07 2017-02-07 コンピュータシステムの監視装置および方法 Active JP6689995B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/004327 WO2018146714A1 (ja) 2017-02-07 2017-02-07 コンピュータシステムの監視装置および方法

Publications (2)

Publication Number Publication Date
JPWO2018146714A1 true JPWO2018146714A1 (ja) 2019-02-14
JP6689995B2 JP6689995B2 (ja) 2020-04-28

Family

ID=63107289

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018538896A Active JP6689995B2 (ja) 2017-02-07 2017-02-07 コンピュータシステムの監視装置および方法

Country Status (3)

Country Link
US (1) US11080126B2 (ja)
JP (1) JP6689995B2 (ja)
WO (1) WO2018146714A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10853221B2 (en) * 2018-05-04 2020-12-01 EMC IP Holding Company LLC Performance evaluation and comparison of storage systems
US20210103830A1 (en) * 2019-10-08 2021-04-08 At&T Intellectual Property I, L.P. Machine learning based clustering and patterning system and method for network traffic data and its application
CN113422690A (zh) * 2020-03-02 2021-09-21 烽火通信科技股份有限公司 一种业务质量劣化预测方法及系统
JP7285798B2 (ja) * 2020-03-09 2023-06-02 株式会社日立製作所 性能分析装置、性能分析方法、及び性能分析プログラム
JP7401764B2 (ja) * 2020-03-11 2023-12-20 富士通株式会社 制御プログラム、制御方法および制御装置
JP7556199B2 (ja) * 2020-03-16 2024-09-26 日本電気株式会社 監視装置,監視方法及び監視プログラム
JP7214054B2 (ja) * 2020-09-03 2023-01-27 三菱電機株式会社 機器分析装置、機器分析方法および機器分析プログラム
CN114666221A (zh) * 2020-12-07 2022-06-24 中兴通讯股份有限公司 网络切片子网运维管理方法、装置、系统、设备及介质
US12056385B2 (en) * 2021-07-30 2024-08-06 EMC IP Holding Company LLC Storage media scrubber

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004145536A (ja) * 2002-10-23 2004-05-20 Hitachi Ltd 管理システム
JP2006011902A (ja) * 2004-06-28 2006-01-12 Hitachi Ltd 運用管理支援システムおよび性能情報表示方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4872945B2 (ja) 2008-02-25 2012-02-08 日本電気株式会社 運用管理装置、運用管理システム、情報処理方法、及び運用管理プログラム
CN104137078B (zh) * 2012-01-23 2017-03-22 日本电气株式会社 操作管理设备、操作管理方法和程序
US11010220B2 (en) * 2013-04-29 2021-05-18 Moogsoft, Inc. System and methods for decomposing events from managed infrastructures that includes a feedback signalizer functor
US20160055044A1 (en) * 2013-05-16 2016-02-25 Hitachi, Ltd. Fault analysis method, fault analysis system, and storage medium
US9355007B1 (en) * 2013-07-15 2016-05-31 Amazon Technologies, Inc. Identifying abnormal hosts using cluster processing
US9558056B2 (en) * 2013-07-28 2017-01-31 OpsClarity Inc. Organizing network performance metrics into historical anomaly dependency data
US10209956B2 (en) * 2014-10-09 2019-02-19 Splunk Inc. Automatic event group actions
US10261851B2 (en) * 2015-01-23 2019-04-16 Lightbend, Inc. Anomaly detection using circumstance-specific detectors
US10592328B1 (en) * 2015-03-26 2020-03-17 Amazon Technologies, Inc. Using cluster processing to identify sets of similarly failing hosts
US10210038B2 (en) * 2015-10-08 2019-02-19 Lightbend, Inc. Tuning context-aware rule engine for anomaly detection
US9471778B1 (en) * 2015-11-30 2016-10-18 International Business Machines Corporation Automatic baselining of anomalous event activity in time series data
WO2018225115A1 (ja) * 2017-06-05 2018-12-13 株式会社日立製作所 運用支援システム及び方法
US10963330B2 (en) * 2017-11-24 2021-03-30 Microsoft Technology Licensing, Llc Correlating failures with performance in application telemetry data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004145536A (ja) * 2002-10-23 2004-05-20 Hitachi Ltd 管理システム
JP2006011902A (ja) * 2004-06-28 2006-01-12 Hitachi Ltd 運用管理支援システムおよび性能情報表示方法

Also Published As

Publication number Publication date
US11080126B2 (en) 2021-08-03
WO2018146714A1 (ja) 2018-08-16
JP6689995B2 (ja) 2020-04-28
US20190121687A1 (en) 2019-04-25

Similar Documents

Publication Publication Date Title
JP6689995B2 (ja) コンピュータシステムの監視装置および方法
US20200358826A1 (en) Methods and apparatus to assess compliance of a virtual computing environment
US11956137B1 (en) Analyzing servers based on data streams generated by instrumented software executing on the servers
US10592308B2 (en) Aggregation based event identification
JP6555061B2 (ja) クラスタリングプログラム、クラスタリング方法、および情報処理装置
US20200293946A1 (en) Machine learning based incident classification and resolution
US9921937B2 (en) Behavior clustering analysis and alerting system for computer applications
US8635498B2 (en) Performance analysis of applications
US7676695B2 (en) Resolution of computer operations problems using fault trend analysis
US10452458B2 (en) Computer performance prediction using search technologies
US20150205691A1 (en) Event prediction using historical time series observations of a computer application
JP5285084B2 (ja) 検出イベントに応じたアクション実行を支援するシステム、検出イベントに応じたアクション実行を支援する方法、支援装置及びコンピュータプログラム
US9870294B2 (en) Visualization of behavior clustering of computer applications
US20110270853A1 (en) Dynamic Storage and Retrieval of Process Graphs
US20150356489A1 (en) Behavior-Based Evaluation Of Crowd Worker Quality
US11030258B1 (en) Ranking anomalies associated with populations of users based on relevance
US20220107858A1 (en) Methods and systems for multi-resource outage detection for a system of networked computing devices and root cause identification
US9860109B2 (en) Automatic alert generation
WO2015110873A1 (en) Computer performance prediction using search technologies
US8543552B2 (en) Detecting statistical variation from unclassified process log
US20080126283A1 (en) Method of capturing Problem Resolution for Subsequent Use in Managed Distributed Computer Systems
JP2011186706A (ja) 情報処理装置、情報処理方法およびプログラム
JP2007164346A (ja) 決定木変更方法、異常性判定方法およびプログラム
JP2021135541A (ja) モデル生成装置、モデル生成方法、及びモデル生成プログラム
JP2016099688A (ja) リスク評価方法およびリスク評価装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180725

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190924

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191030

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200310

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200408

R150 Certificate of patent or registration of utility model

Ref document number: 6689995

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150