(57)【要約】  サービスレベル管理装置（１００）は、サービスレベル定義テーブル（１１０）を分析し、各属性の異なる集計単位の関係を定義した単位換算定義テーブル（１０８）に基づいて、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義する分析部（１０６）と、管理データの集計値を求める集計部（１０２）と、複数のサービスレベル定義テーブル（１１０）に基づき、集計値からサービスレベルを算出するサービスレベル算出部（１０４）と、を備え、集計部（１０２）は、集約集計単位毎に管理データを集計して集計値を求め、サービスレベル算出部（１０４）は、集約集計単位毎の集計値に基づいて、複数のサービスレベル定義テーブル（１１０）で定義されたサービスレベルを算出する。
2013105174.tif 000002
【特許請求の範囲】
【請求項１】
情報処理システムの満たすべき保証レベルであるサービスレベルの算出方法を定義した複数のサービスレベル定義を分析し、各属性の異なる集計単位の関係を定義した単位換算定義テーブルに基づいて、同じ属性で異なる前記集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義する分析手段と、
前記情報処理システムの動作状態を監視する管理データを前記集計単位で集計して集計値を求める集計手段と、
複数の前記サービスレベル定義に基づき、前記集計手段が集計した前記集計値からサービスレベルを算出するサービスレベル算出手段と、
を備え、
前記集計手段は、前記分析手段が定義した前記集約集計単位毎に前記管理データを集計して集計値を求め、
前記サービスレベル算出手段は、前記集計手段が集計した前記集約集計単位毎の前記集計値に基づいて、複数の前記サービスレベル定義で定義された前記サービスレベルを算出するサービスレベル管理装置。
【請求項２】
請求項１に記載のサービスレベル管理装置において、
前記分析手段は、前記集計単位が互いに上下関係にあるサービスレベル間では、前記サービスレベル定義で定義されている前記サービスレベルの中で最も上位の単位を前記集約集計単位として定義するサービスレベル管理装置。
【請求項３】
請求項１または２に記載のサービスレベル管理装置において、
前記分析手段は、前記集計単位が互いに包含関係にあるサービスレベル間では、前記サービスレベル定義で定義されている前記サービスレベルの中で最も内側となる最小の単位を前記集約集計単位として定義するサービスレベル管理装置。
【請求項４】
請求項１乃至３いずれかに記載のサービスレベル管理装置において、
前記分析手段は、前記集約集計単位で定義した前記集計単位を用いて、複数の前記サービスレベル定義を単位換算するルールを定義し、
前記サービスレベル算出手段は、前記分析手段が定義した前記ルールに従って、複数の前記サービスレベル定義を単位換算して前記サービスレベルを算出するサービスレベル管理装置。
【請求項５】
請求項１乃至４いずれかに記載のサービスレベル管理装置において、
前記分析手段は、定義した前記集約集計単位を単位変数定義テーブルに記憶し、
前記集計手段は、前記単位変数定義テーブルを参照し、前記管理データを集計して集計値を求めるサービスレベル管理装置。
【請求項６】
請求項１乃至５いずれかに記載のサービスレベル管理装置において、
前記サービスレベル定義および前記情報処理システムの構成情報に基づき、前記単位換算定義テーブルを生成する生成手段をさらに備えるサービスレベル管理装置。
【請求項７】
情報処理システムの満たすべき保証レベルであるサービスレベルを管理する管理装置におけるサービスレベル管理方法であって、
前記管理装置が、
前記サービスレベルの算出方法を定義した複数のサービスレベル定義を分析し、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義し、
前記情報処理システムの動作状態を監視した管理データを、定義した前記集約集計単位を用いて前記集計単位毎に集計して集計値を求め、
前記サービスレベルを定義した複数のサービスレベル定義に基づき、集計した前記集計単位毎の前記集計値に基づいて、複数の前記サービスレベル定義で定義されたサービスレベルを算出するサービスレベル管理方法。
【請求項８】
情報処理システムの満たすべき保証レベルであるサービスレベルを管理する管理装置を実現するコンピュータに、
前記サービスレベルの算出方法を定義した複数のサービスレベル定義を分析し、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義する手順、
前記情報処理システムの動作状態を監視した管理データを、定義した前記集約集計単位を用いて前記集計単位毎に集計して集計値を求める手順、
前記サービスレベルを定義した複数のサービスレベル定義に基づき、集計した前記集計単位毎の前記集計値に基づいて、複数の前記サービスレベル定義で定義された前記集計値からサービスレベルを算出する手順を実行させるためのプログラム。
【請求項９】
請求項１乃至６いずれかに記載のサービスレベル管理装置を備え、
算出されたサービスレベルを利用して情報処理システムの動作状態を監視するサービスレベル監視システム。
【請求項１０】
情報処理システムの満たすべき保証レベルであるサービスレベルを算出するサービスレベル管理装置を実現するコンピュータに、
前記サービスレベルの算出方法を定義した複数のサービスレベル定義を分析し、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義する手順、
定義した前記集約集計単位を出力する手順を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サービスレベル管理装置、サービスレベル管理方法、およびプログラム、ならびに、サービスレベル監視システムに関し、特に、サービスの品質を管理するサービスレベル管理装置、サービスレベル管理方法、およびプログラム、ならびに、サービスレベル監視システムに関する。
【背景技術】
【０００２】
近年、ＩＴ（Information Technology）分野において、ＳａａＳ（Software as a Service）など、クラウドコンピューティングと呼ばれる利用形態が増加してきた。クラウドコンピューティング環境においては、ソフトウェアやハードウェアではなく、サービスが契約の中心となる。【０００３】
こうした契約において、サービスの品質を保証する手段として、サービスレベル契約（Service Level Agreement：ＳＬＡ）が用いられる。ＳＬＡとは、サービスの提供者と利用者間で結ばれる、１つ以上のサービスレベル項目（Service Level Objective：ＳＬＯ）それぞれに関するサービスレベル（Service Level：ＳＬ）（たとえば、サービスの内容、範囲および品質）に対する定量的かつ明示的な合意の契約である。ＳＬＡにおけるサービスレベル項目のサービスレベルは、たとえば、「サービス稼働率が９９．９％以上であること」、「障害発生時の平均復旧時間が１２時間以内であること」などである。【０００４】
サービス評価システムの一例が特許文献１に記載されている。特許文献１のサービス評価システムでは、まず、サービス評価システムの利用者がネットワークを介してサービス評価システムにデータ処理命令を送信する。次に、サービス評価システムがデータ処理命令に従い、サービス（業務単位）ごとのサーバ群の運用データ（稼働ログ、処理件数など）を収集し、稼働率や平均処理時間などのサービスレベルを算出する。【０００５】
さらに、特許文献２に記載されたサービス評価システムの例では、まず、システムが、事前に与えられたＳＬＡ定義情報（即ち、サービスレベル項目とサービスレベルの定義情報）を、監視項目（設定値、監視方法）に変換する。次にサービス評価システムは、ソフトウェアサービスの個別の項目（たとえば、稼働状況、応答状況および接続ユーザ数）について、監視を行い、履歴を記録する。次に、サービス評価システムは、記録した履歴を解析し、予め定められた期間（たとえば、前日の０時から２４時）の履歴に基づいて解析した結果を利用実績として記録する。【０００６】
また、特許文献３に記載されたデータ処理システムの例では、データ処理システムは、あらかじめ存在する集計テーブルと、集計テーブルの項目およびデータ件数に関する情報を有するコントロールテーブルを備える。このデータ処理システムは、要求された条件に適合する集計値を算出する際に、コントロールテーブルに基づいて、集計可能な集計テーブルのうち、データの件数が最小となる集計テーブルを探索し、探索された集計テーブルに基づいて集計値を算出する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００９−１４６００１号公報
【特許文献２】特開２０１０−２５７２７２号公報
【特許文献３】特開２００１−２５６２４２号公報
【発明の概要】
【０００８】
上述したシステムにおいては、監視対象サービスが同一であっても、利用者やサービスの状態に応じて、複数のサービスレベルを監視する必要があり、これらのサービスレベルの算出過程に重複が存在するため、システム規模の増大に伴い、算出処理負荷が高くなるという問題点があった。
【０００９】
本発明の目的は、上述した課題である処理の高負荷を解決するサービスレベル管理装置、サービスレベル管理方法、およびプログラム、ならびに、サービスレベル監視システムを提供することにある。
【００１０】
本発明のサービスレベル管理装置は、
情報処理システムの満たすべき保証レベルであるサービスレベルの算出方法を定義した複数のサービスレベル定義を分析し、各属性の異なる集計単位の関係を定義した単位換算定義テーブルに基づいて、同じ属性で異なる前記集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義する分析手段と、
前記情報処理システムの動作状態を監視する管理データを前記集計単位で集計して集計値を求める集計手段と、
複数の前記サービスレベル定義に基づき、前記集計手段が集計した前記集計値からサービスレベルを算出するサービスレベル算出手段と、
を備え、
前記集計手段は、前記分析手段が定義した前記集約集計単位毎に前記管理データを集計して集計値を求め、
前記サービスレベル算出手段は、前記集計手段が集計した前記集約集計単位毎の前記集計値に基づいて、複数の前記サービスレベル定義で定義された前記サービスレベルを算出する。
【００１１】
本発明のサービスレベル管理方法は、
情報処理システムの満たすべき保証レベルであるサービスレベルを管理する管理装置におけるサービスレベル管理方法であって、
前記管理装置が、
前記サービスレベルの算出方法を定義した複数のサービスレベル定義を分析し、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義し、
前記情報処理システムの動作状態を監視した管理データを、定義した前記集約集計単位を用いて前記集計単位毎に集計して集計値を求め、
前記サービスレベルを定義した複数のサービスレベル定義に基づき、集計した前記集計単位毎の前記集計値に基づいて、複数の前記サービスレベル定義で定義されたサービスレベルを算出する。
【００１２】
本発明のコンピュータプログラムは、
情報処理システムの満たすべき保証レベルであるサービスレベルを管理する管理装置を実現するコンピュータに、
前記サービスレベルの算出方法を定義した複数のサービスレベル定義を分析し、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義する手順、
前記情報処理システムの動作状態を監視した管理データを、定義した前記集約集計単位を用いて前記集計単位毎に集計して集計値を求める手順、
前記サービスレベルを定義した複数のサービスレベル定義に基づき、集計した前記集計単位毎の前記集計値に基づいて、複数の前記サービスレベル定義で定義された前記集計値からサービスレベルを算出する手順を実行させるためのものである。
【００１３】
本発明のサービスレベル監視システムは、
本発明の上記サービスレベル管理装置を備え、
算出されたサービスレベルを利用して情報処理システムの動作状態を監視する。
【００１４】
本発明のコンピュータプログラムは、
情報処理システムの満たすべき保証レベルであるサービスレベルを算出するサービスレベル管理装置を実現するコンピュータに、
前記サービスレベルの算出方法を定義した複数のサービスレベル定義を分析し、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義する手順、
定義した前記集約集計単位を出力する手順を実行させるためのものである。
【００１５】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【００１６】
また、本発明の各種の構成要素は、必ずしも個々に独立した存在である必要はなく、複数の構成要素が一個の部材として形成されていること、一つの構成要素が複数の部材で形成されていること、ある構成要素が他の構成要素の一部であること、ある構成要素の一部と他の構成要素の一部とが重複していること、等でもよい。
【００１７】
また、本発明の方法およびコンピュータプログラムには複数の手順を順番に記載してあるが、その記載の順番は複数の手順を実行する順番を限定するものではない。このため、本発明の方法およびコンピュータプログラムを実施するときには、その複数の手順の順番は内容的に支障のない範囲で変更することができる。
【００１８】
さらに、本発明の方法およびコンピュータプログラムの複数の手順は個々に相違するタイミングで実行されることに限定されない。このため、ある手順の実行中に他の手順が発生すること、ある手順の実行タイミングと他の手順の実行タイミングとの一部ないし全部が重複していること、等でもよい。
【００１９】
本発明によれば、処理負荷を低減し、効率のよいサービスレベル管理装置、サービスレベル管理方法、およびプログラム、ならびに、サービスレベル監視システムが提供される。
【図面の簡単な説明】
【００２０】
上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。【００２１】
【図１】本発明の実施の形態に係るサービスレベル監視システムの構成を示す機能ブロック図である。
【図２】本発明の実施の形態に係るサービスレベル管理装置の動作の一例を示すフローチャートである。
【図３】本発明の実施の形態に係るサービスレベル監視システムの構成を示す機能ブロック図である。
【図４】本発明の実施の形態に係るサービスレベル管理装置の管理データ記憶部の構造の一例を示す図である。
【図５】本発明の実施の形態に係るサービスレベル管理装置のサービスレベル定義テーブルの構造の一例を示す図である。
【図６】本発明の実施の形態に係るサービスレベル管理装置の時間定義テーブルの構造の一例を示す図である。
【図７】本発明の実施の形態に係るサービスレベル管理装置の空間定義テーブルの構造の一例を示す図である。
【図８】本発明の実施の形態に係るサービスレベル管理装置の個別定義テーブルの構造の一例を示す図である。
【図９】本発明の実施の形態に係るサービスレベル管理装置の単位変数定義テーブルの構造の一例を示す図である。
【図１０】本発明の実施の形態に係るサービスレベル管理装置のサービスレベル算出定義テーブルの構造の一例を示す図である。
【図１１】本発明の実施の形態に係るサービスレベル管理装置の単位変数データ記憶部の構造の一例を示す図である。
【図１２】本発明の実施の形態に係るサービスレベル管理装置のサービスレベル記憶部の構造の一例を示す図である。
【図１３】本発明の実施の形態に係るサービスレベル管理装置の動作の一例を示すフローチャートである。
【図１４】本発明の実施の形態に係るサービスレベル管理装置の動作の一例を示すフローチャートである。
【図１５】本発明の実施の形態に係るサービスレベル管理装置の動作の一例を示すフローチャートである。
【図１６】本発明の実施の形態に係るサービスレベル管理装置の動作の一例を示すフローチャートである。
【図１７】本発明の実施の形態に係るサービスレベル管理装置の動作の一例を示すフローチャートである。
【図１８】本発明の実施の形態に係るサービスレベル監視システムの部分構成を示す機能ブロック図である。
【図１９】本発明の実施の形態に係るサービスレベル監視システムの管理データ収集定義テーブルの構造の一例を示す図である。
【図２０】本発明の実施の形態に係るサービスレベル監視システムの動作の一例を示すフローチャートである。
【図２１】本発明の実施の形態に係るサービスレベル監視システムの構成を示す機能ブロック図である。
【図２２】本発明の実施の形態に係るサービスレベル管理装置のサービスレベル定義テーブルの構造の一例を示す図である。
【図２３】本発明の実施の形態に係るサービスレベル管理装置の方法定義テーブルの構造の一例を示す図である。
【図２４】本発明の実施の形態に係るサービスレベル管理装置の動作の一例を示すフローチャートである。
【図２５】本発明の実施の形態に係るサービスレベル管理装置の単位変数定義テーブルの構造の一例を示す図である。
【図２６】本発明の実施の形態に係るサービスレベル管理装置のサービスレベル算出定義テーブルの構造の一例を示す図である。
【図２７】本発明の実施の形態に係るサービスレベル監視システムの構成を示す機能ブロック図である。
【図２８】本発明の実施の形態に係るサービスレベル管理装置のサービスレベル定義テーブルの構造の一例を示す図である。
【図２９】本発明の実施の形態に係るサービスレベル管理装置のサービスレベル変数定義テーブルの構造の一例を示す図である。
【図３０】本発明の実施の形態に係るサービスレベル管理装置のサービスレベル算出定義テーブルの構造の一例を示す図である。
【図３１】本発明の実施の形態に係るサービスレベル管理装置の動作の一例を示すフローチャートである。
【図３２】本発明の実施の形態に係るサービスレベル管理装置の動作の一例を示すフローチャートである。
【図３３】本発明の実施の形態に係るサービスレベル監視システムの構成を示す機能ブロック図である。
【図３４】本発明の実施の形態に係るサービスレベル管理装置の単位変数テーブルの構造の一例を示す図である。
【図３５】本発明の実施の形態に係るサービスレベル監視システムの要部構成を示す機能ブロック図である。
【図３６】本発明の実施の形態に係るサービスレベル管理装置の構成情報テーブルの構造の一例を示す図である。
【図３７】本発明の実施の形態に係るサービスレベル管理装置の動作の一例を示すフローチャートである。
【図３８】本発明の実施の形態に係るサービスレベル管理装置の動作の一例を示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００２３】
（第１の実施の形態）
図１は、本発明の実施の形態に係るサービスレベル監視システム１の構成を示す機能ブロック図である。
図１に示すように、本実施形態のサービスレベル監視システム１は、たとえば、ネットワーク３を介してデータセンタ５などの情報処理システムに接続される。サービスレベル監視システム１は、データセンタ５の動作状態を監視するとともに、情報処理システムが満たすべき保証レベルであるサービスレベルを管理するサービスレベル管理装置１００を備える。
データセンタ５とは、たとえば、多数のコンピュータや通信機器などの装置が設置され、管理運用される施設である。
【００２４】
上述したように、利用者にサービスを提供する提供者と、その利用者間では、サービスの品質を保証するサービスレベル契約（Service Level Agreement：ＳＬＡ）が結ばれる。ＳＬＡとは、１つ以上のサービスレベル項目（Service Level Objective：ＳＬＯ）それぞれに関するサービスレベル（Service Level：ＳＬ）（たとえば、サービスの内容、範囲および品質）に対する定量的かつ明示的な合意の契約である。ＳＬＡにおけるサービスレベル項目のサービスレベルは、たとえば、「サービス稼働率が９９．９％以上であること」、「障害発生時の平均復旧時間が１２時間以内であること」などである。
【００２５】
一般に、サービスレベルの値を算出する際には、集計を行う時間の幅（四半期、１月、１日など）、監視対象となるシステムの規模（データセンタ全体、サービス全体、ウェブ（ＷＥＢ）層、アプリケーション（APplication：ＡＰ）層、データベース（DataBase：ＤＢ）層（サーバ）など）、または算出の方法（合計、平均、最大、最小、パーセンタイルなど）などの情報が必要である。これらに加え、閾値を設定してはじめてＳＬＡに用いるサービスレベルを定義することができる。
【００２６】
さらに、サービスレベルは、対象となるサービスが同一の場合でも、利用者や、サービスの状態に応じて、異なる複数の定義を必要とする。たとえば、集計を行う時間の幅に関して、顧客の経営層が必要とするのは、四半期単位のサービスレベルであるが、情報システム部門など、運用を担う利用者が必要とするのは、１日単位のサービスレベルであることなどが想定される。
【００２７】
本発明は、ＳＬＡにおけるサービスレベル項目に対するサービスレベルを算出し、監視するサービスレベル監視システム１の処理の効率化を図るものである。特に、本発明は、サービスレベル契約が締結されたシステムの運用に好適に適用できる。本発明のサービスレベル管理装置１００は、データセンタ５などの情報処理システムの動作状態を監視するためのサービスレベルを算出し、管理するものである。
【００２８】
本発明の実施の形態に係るサービスレベル管理装置１００は、情報処理システム（データセンタ５のコンピュータ（不図示）や機器（不図示））の満たすべき保証レベルであるサービスレベルの算出方法を定義した複数のサービスレベル定義（サービスレベル定義テーブル１１０に記憶）を分析し、各属性の異なる集計単位の関係を定義した単位換算定義テーブル１０８に基づいて、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位（単位変数）を定義する分析部１０６と、情報処理システム（データセンタ５のコンピュータ（不図示）や機器（不図示））の動作状態を監視する管理データ（管理データ記憶部１６０に記憶）を集計単位で集計して集計値を求める集計部１０２と、複数のサービスレベル定義（サービスレベル定義テーブル１１０に記憶）に基づき、集計部１０２が集計した集計値からサービスレベルを算出するサービスレベル算出部１０４と、を備える。
集計部１０２は、分析部１０６が定義した集約集計単位（単位変数）毎に管理データを集計して集計値（単位変数データ）を求める。
サービスレベル算出部１０４は、集計部１０２が集計した集約集計単位（単位変数）毎の集計値（単位変数データ）に基づいて、複数のサービスレベル定義（サービスレベル定義テーブル１１０に記憶）で定義されたサービスレベルを算出する。
【００２９】
具体的には、本実施形態のサービスレベル管理装置１００は、ネットワーク３を介してデータセンタ５から収集した管理データを記憶する管理データ記憶部（図中、「管理データ」と示す）１６０に接続される。管理データとは、本実施形態のサービスレベル監視システム１で監視されるサービスレベルの元データである。管理データは、データセンタ５からネットワーク３を介して適宜収集され、管理データ記憶部１６０に記憶される。管理データについては、後述する実施形態で詳細に説明する。管理データ記憶部１６０は、サービスレベル管理装置１００に含まれてもよいし、サービスレベル管理装置１００に接続された記憶装置に含まれてもよい。あるいは、管理データは、サービスレベル管理装置１００が読み取り可能な記録媒体に記録されてもよい。
【００３０】
本実施形態のサービスレベル管理装置１００は、集計部１０２と、サービスレベル算出部１０４と、分析部１０６と、単位換算定義テーブル記憶部（図中、「単位換算定義テーブル」と示す）１０８と、サービスレベル定義テーブル１１０と、単位変数定義テーブル１５０と、サービスレベル記憶部（図中、「サービスレベル」と示す）１７０と、を備える。
【００３１】
本発明のサービスレベル管理装置は、たとえば、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、およびＩ／Ｏ（Input/Output）を備え（不図示）、キーボードやマウス等の入力装置（不図示）、ディスプレイやプリンタ等の出力装置（不図示）、またはネットワークを介して他の装置（不図示）と接続されるコンピュータ、またはそれらに相当する装置により実現することができる。サービスレベル管理装置のこれらの各要素は、バス（不図示）を介して互いに接続され、ＣＰＵにより各要素とともにサービスレベル管理装置全体が制御される。そして、ＣＰＵが、ＲＯＭに記憶されるプログラムをＲＡＭに読み出して実行することにより、コンピュータのハードウェアとソフトウェアの任意の組合せによって、後述する本発明の各サービスレベル管理装置の各ユニットの各機能を実現することができる。そして、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。説明に使用する各図は、ハードウェア単位の構成ではなく、機能単位のブロックを示している。
また、各図において、本発明の本質に関わらない部分の構成については省略してあり、図示されていない。
【００３２】
また、本実施形態では、サービスレベル管理装置１００は、１台のみ図示されているが、これに限定されない。大規模なデータセンタ５を監視する場合、複数のサービスレベル管理装置１００を備えてもよい。また、サービスレベル管理装置１００は、仮想サーバなどにより構成されてもよい。以下、他の実施形態のサービスレベル管理装置においても同様である。
【００３３】
本実施形態のコンピュータプログラムは、本発明のサービスレベル管理装置を実現させるためのコンピュータに、サービスレベルの算出方法を定義した複数のサービスレベル定義を分析し、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位（単位変数）を定義する手順、定義した集約集計単位（単位変数）を出力する手順を実行させるように記述されている。
このコンピュータプログラムは、オブジェクトコード、またはインタプリタにより実行されるプログラムなど、プログラムの形態を問わない。また、上述のプログラムは、一般のパソコンや携帯型情報端末などで動作可能なアプリケーションソフトに組み込まれた形態でコンピュータに提供されてもよい。
【００３４】
また、本実施形態のコンピュータプログラムは、本発明のサービスレベル管理装置を実現させるためのコンピュータに、サービスレベルの算出方法を定義した複数のサービスレベル定義（サービスレベル定義テーブル１１０に記憶）を分析し、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義する手順、情報処理システムの動作状態を監視した管理データを、定義した集約集計単位（単位変数）を用いて集計単位毎に集計して集計値（単位変数データ）を求める手順、サービスレベルを定義した複数のサービスレベル定義（サービスレベル定義テーブル１１０に記憶）に基づき、集計した集計単位毎の集計値（単位変数データ）に基づいて、複数のサービスレベル定義（サービスレベル定義テーブル１１０に記憶）で定義された集計値（単位変数データ）からサービスレベルを算出する手順を実行させるように記述されている。
【００３５】
本発明のコンピュータプログラムは、コンピュータで読み取り可能な記録媒体（不図示）に記録されてもよい。記録媒体は特に限定されず、様々な形態のものが考えられる。また、プログラムは、記録媒体からコンピュータのＲＯＭにロードされてもよいし、ネットワークを通じてコンピュータにダウンロードされ、ＲＯＭにロードされてもよい。
【００３６】
また、図１の単位換算定義テーブル記憶部１０８、サービスレベル定義テーブル１１０、単位変数定義テーブル１５０、またはサービスレベル記憶部１７０に記憶される情報は、サービスレベル管理装置１００を構成する上述したコンピュータのＲＯＭまたはＲＡＭに記憶できる。あるいは、これらの情報は、サービスレベル管理装置１００に接続され、サービスレベル管理装置１００がアクセス可能な記憶装置（不図示）または他のコンピュータ（不図示）に記憶されてもよい。
【００３７】
サービスレベル定義テーブル１１０は、サービスレベル監視システム１が監視すべき複数のサービスレベルの定義を含む。監視対象となるサービスレベルは様々なものが含まれる。たとえば、サービスレベルは、稼働率などの可用性、または応答時間（ＴＡＴ）やＣＰＵ使用率などの性能に関する情報、あるいは消費電力量などを含むことができる。
【００３８】
サービスレベル定義テーブル１１０は、上記サービスレベルの種類や、監視対象となる時間や空間の範囲などが定義される。サービスレベル監視システム１は、サービスレベル定義テーブル１１０で定義されたサービスレベルを算出し、設定された閾値でサービスレベルを監視することができる。なお、サービスレベルの閾値に基づく監視処理自体は、本発明の本質には関係ないので詳細な説明は省略する。
【００３９】
単位換算定義テーブル記憶部１０８は、分析部１０６が同一属性で異なる集計単位をまとめるときに使用する単位換算を定義した単位換算定義テーブルを記憶する。上述したように、サービスレベルの値を算出する際には、集計を行う時間の幅（四半期、１月、１日など）、監視対象となるシステムの規模（データセンタ全体、サービス全体、ウェブ（ＷＥＢ）層、アプリケーション（Application：ＡＰ）層、データベース（DataBase：ＤＢ）層（サーバ）など）、または、算出の方法（合計、平均、最大、最小、パーセンタイルなど）などの情報を予め定義することが必要である。
【００４０】
本実施形態において、上記の集計時間、集計空間、または集計方法毎に、集計単位の関係を定義し、単位換算定義テーブルとして持つ。集計時間であれば、その集計単位は、たとえば、１年、半年、四半期、２カ月、１カ月、２週間、１週間、１日、１時間、または１０分などが考えられる。各集計単位の相互関係、たとえば、１年は３６５日、１日は２４時間などを予め単位換算定義テーブルに保持しておく。集計空間または集計方法についても同様に各集計単位の相互関係をそれぞれ単位換算定義テーブルとして保持しておく。単位換算定義テーブル記憶部１０８に記憶される各種の単位換算定義テーブルについては後述する実施形態で詳細に説明する。
【００４１】
単位換算定義テーブル記憶部１０８は、複数の単位換算定義テーブルを記憶する。各単位換算定義テーブルには、各属性の異なる集計単位の関係がそれぞれ定義される。
分析部１０６は、各単位換算定義テーブルに基づいて、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる単位変数として定義し、出力する。
単位変数定義テーブル１５０は、分析部１０６により定義された単位変数を保持する。
【００４２】
たとえば、集計時間が１日かつ集計空間がノードであるＴＡＴの最大値（ＭＡＸ）をサービスレベルとして定義されているものと、集計時間が１ヶ月かつ集計空間がノードであるＴＡＴの最大値（ＭＡＸ）をサービスレベルとして定義されているものが存在する場合について説明する。分析部１０６は、これら２つのサービスレベルは、属性がＴＡＴの最大値（ＭＡＸ）で同じであり、かつ、集計時間が異なるので、単位換算定義テーブルを参照し、より小さい集計単位の「１日」に集約することを決定する。そして、分析部１０６は、集計時間が１日かつ集計空間がノードであるＴＡＴの最大値（ＭＡＸ）を単位変数（集約集計単位）と定義する。
【００４３】
このように、分析部１０６は、サービスレベル定義テーブル１１０の複数のサービスレベル定義（以下、「サービスレベル定義１１０」とも呼ぶ）を分析する。そして、分析部１０６は、集計単位がより小さいものを単位変数として定義する。あるいは、分析部１０６は、集計方法が従属関係にある場合、先に実行すべき集計を単位変数として定義する。そして、分析部１０６は、集計単位を集約する。
【００４４】
集計部１０２は、管理データ記憶部１６０の管理データを用いて、分析部１０６が定義した単位変数を用いて集計し、集計結果を単位変数データとして出力する。本実施形態では、集計部１０２から出力された単位変数データは、サービスレベル算出部１０４に入力される。
【００４５】
サービスレベル算出部１０４は、集計部１０２が集計した単位変数データを用いて、サービスレベル定義テーブル１１０に定義されている各サービスレベルを算出し、出力する。このとき、サービスレベル算出部１０４は、集約された集計単位（単位変数）を用いて、他のサービスレベルの算出方法を再定義することで、重複処理を回避するようにする。たとえば、集計単位が１ヶ月かつ集計空間がノードであるＴＡＴの最大値（ＭＡＸ）は、集計部１０２が集計した集計単位が１日かつ集計空間がノードである単位変数データを元に、１ヶ月分の集計を行えばよい。
なお、サービスレベル算出方法の再定義は、分析部１０６で行ってもよい。
【００４６】
本実施形態では、算出されたサービスレベルは、サービスレベル記憶部１７０に記憶される。サービスレベルは、ディスプレイ装置などに表示される。または、サービスレベルは、各種アプリケーションプログラムで処理されて、利用者に提示される。
【００４７】
上述のような構成において、本発明の実施の形態に係るサービスレベル管理装置１００によるサービスレベル管理方法を以下に説明する。
図２は、本発明の実施の形態に係るサービスレベル管理装置１００の動作の一例を示すフローチャートである。
本発明のサービスレベル管理方法は、情報処理システム（データセンタ５のコンピュータ（不図示）や機器（不図示））の満たすべき保証レベルであるサービスレベルを管理する管理装置（サービスレベル管理装置１００）におけるサービスレベル管理方法であって、サービスレベル管理装置１００が、サービスレベルの算出方法を定義した複数のサービスレベル定義（サービスレベル定義テーブル１１０に記憶）を分析し、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位（単位変数）を定義し（ステップＳ１０１）、情報処理システムの動作状態を監視した管理データ（管理データ記憶部１６０に記憶）を、定義した集約集計単位（単位変数）を用いて集約集計単位（単位変数）毎に集計して集計値（単位変数データ）を求め（ステップＳ１０３）、サービスレベルを定義した複数のサービスレベル定義（サービスレベル定義テーブル１１０に記憶）に基づき、集計した集約集計単位（単位変数）毎の集計値（単位変数データ）に基づいて、複数のサービスレベル定義（サービスレベル定義テーブル１１０に記憶）で定義されたサービスレベルを算出する（ステップＳ１０５）。
【００４８】
以上説明したように、本発明の実施の形態に係るサービスレベル監視システム１によれば、複数のサービスレベルを算出する時、算出手順の重複を自動的に検出し、重複を回避する処理を行うことができるので、処理の負荷を低減し、効率化が図れる。
【００４９】
（第２の実施の形態）
図３は、本発明の実施の形態に係るサービスレベル監視システム１の構成を示す機能ブロック図である。
本実施形態のサービスレベル監視システム１は、サービスレベル管理装置２００を備える。本実施形態のサービスレベル管理装置２００は、本発明のサービスレベル管理装置を実現するための具体的な構成の例を示す。本実施形態のサービスレベル管理装置２００は、上記実施形態のサービスレベル管理装置１００と同様な構成を有するとともに、さらに、サービスレベル表示部２０８と、単位変数データ記憶部（図中、「単位変数データ」と示す）２１０と、サービスレベル算出定義テーブル２２０と、を備える。
【００５０】
なお、本発明の実施形態では、各データをテーブル形式で記憶するように説明しているが、これに限定されず、様々な形態で記憶することができる。たとえば、各データは、任意のプログラム言語で記述されたファイル、または、ＣＳＶ（Comma Separated Values）形式で記述されたテキストファイル等の形式でもよい。または、各データは、データベース形式でもよい。各データは、ユーザが任意のエディタなどを利用して閲覧および編集できることが望ましい。
【００５１】
管理データ記憶部１６０は、データセンタ５から収集された管理データを記憶する。
本発明において、管理データは、監視対象システムの、予定外停止時間などの可用性に関する情報、応答時間（ＴＡＴ）、ＣＰＵ使用率、メモリ使用量、ディスク使用量、またはバッチ処理完了率などの性能に関する情報、あるいは、消費電力などを含む。
【００５２】
図４に示すように、管理データ記憶部１６０は、少なくとも１つのレコード１６５（図４には、１６５ａ〜１６５ｅの５つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「１６５」と符号を付す）を含むことができる。各レコード１６５には、監視対象システムから収集された各データのログが記録される。そして、各レコード１６５は、記録日時１６１、管理データ名１６２、対象１６３、または値１６４を含む。なお、図４の管理データ記憶部１６０に記憶される管理データの構成は一例であり、これに限定されるものではない。
【００５３】
記録日時１６１は、管理データが管理データ記憶部１６０に記録された日時を示す。また、記録日時１６１は、管理データが収集された日時としてもよい。管理データ名１６２は、記録された管理データの名称を示す。対象１６３は、管理データを収集した空間、たとえば、ノード、サービスまたはデータセンタを示す。値１６４は、実際に収集された管理データの値を示す。ここでは、値と単位が記録されているが、数値のみでもよい。
なお、本発明の実施形態で説明する各テーブルの各項目のデータは、種類や名称（ＴＡＴやノードＡ）等で示しているが、これに限定されず、たとえば、識別子など識別可能な情報であればよい。
【００５４】
図４は、「２０１１／０８／０１，１５：００」に記録された「サービスＡ」の「ＴＡＴ」が「１０ｍｓｅｃ」であることを示す。同様に、同時刻に記録された「サービスＡ」の「予定外停止時間」は「２分」である。この例は、たとえば、過去１時間における予定外停止時間が「２分」であったことを意味している。また、同時刻の「ノードＡ」の「稼働状況」の値は「応答あり」である。この例は、記録された時刻において、稼働状況を調べるためのｐｉｎｇに対する応答があったことを意味する。
【００５５】
サービスレベル定義テーブル１１０は、図５に示すように、サービスレベル監視システム１が監視すべきサービスレベルの種類や、監視対象となる時間や空間の範囲などの定義を複数記憶する。サービスレベル監視システム１は、サービスレベル定義テーブル１１０に定義されたサービスレベルを算出し、設定された閾値でサービスレベルを監視することができる。なお、サービスレベルの閾値に基づく監視処理自体は、本発明の本質には関係ないので詳細な説明は省略する。
【００５６】
本発明のサービスレベルは様々なものを含む。たとえば、サービスレベルは、稼働率やサービス時間などの可用性、平均復旧時間などの信頼性、あるいは、応答時間（ＴＡＴ）やＣＰＵ使用率、メモリ使用量、またはディスク使用量などの性能に関する情報、消費電力量、二酸化炭素換算量、あるいは、Power Usage Effectiveness（ＰＵＥ）などを含むことができる。
【００５７】
サービスレベル定義テーブル１１０は、図５に示すように、少なくとも１つのレコード１１７（図５には、１１７ａ、１１７ｂ、１１７ｃの３つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「１１７」と符号を付す）を含むことができる。各レコード１１７は、サービスレベル（以下、「ＳＬ（Service Level）」とも呼ぶ）名１１１、ＳＬ種別１１２、集計変数１１３、集計時間１１４、集計空間１１５、または集計方法１１６を含む。
【００５８】
ＳＬ名１１１は、サービスレベルを識別する名称を示す。ＳＬ種別１１２は、算出するサービスレベルの種類を示す。集計変数１１３は、サービスレベルの値を算出するために用いる管理データの種類を示す。集計時間１１４は、集計変数１１３を集計し、サービスレベルの値を算出する時間の範囲を示す。集計空間１１５は、集計変数１１３を集計し、サービスレベルの値を算出する空間の範囲を示す。集計方法１１６は、集計変数１１３を集計する方法を示す。なお、図５のサービスレベル定義テーブル１１０の構成は一例であり、これに限定されるものではない。
【００５９】
ＳＬ種別１１２は、たとえば、稼働率またはサービス時間などの可用性、平均復旧時間などの信頼性、および、応答時間（Turn Around Time：ＴＡＴ）、ＣＰＵ使用率、メモリ使用量、またはディスク使用量などの性能に関する情報、消費電力量、二酸化炭素換算量、あるいは、電力使用効率（Power Usage Effectiveness：ＰＵＥ）などである。
集計変数１１３は、たとえば、予定外停止時間や、応答時間（ＴＡＴ）、ＣＰＵ使用率、メモリ使用量、ディスク使用量などの性能に関する情報、消費電力など、ＳＬ種別１１２で挙げたサービスレベルの値を算出するために必要となる管理データの種類である。
集計時間１１４は、たとえば、１年、四半期、２カ月、１カ月、２週間、１週間、１日、１時間、１０分、または１分などである。
【００６０】
集計空間１１５は、たとえば、複数のデータセンタ、１個のデータセンタ、運用体制に基づき定義される管理の単位、顧客、顧客の部門、特定のシステム、サービス全体、ＡＰ層、ＷＥＢ層、ＤＢ層などの層、ノードなどである。
集計方法１１６は、たとえば、総和、平均、最大、最小、パーセンタイルなどである。または、集計方法１１６は、算出式を指定してもよい。図５に示すサービスレベル定義テーブル１１０の例は、「稼働率」の集計方法を「式」と定義しているが、これは別途、定義するものとする。
【００６１】
図３の単位換算定義テーブル記憶部１０８は、図３の分析部１０６が同一属性で異なる集計単位をまとめるときに使用する単位換算を定義した単位換算定義テーブルを複数記憶する。
本実施形態において、単位換算定義テーブル記憶部１０８は、図６〜図８に示す各属性の異なる集計単位の関係を定義する少なくとも一つの単位換算定義テーブルを含む。本実施形態では、単位換算定義テーブル記憶部１０８は、図６の時間定義テーブル１２０と、図７の空間定義テーブル１３０と、図８の個別定義テーブル１４０とを含む。
【００６２】
時間定義テーブル１２０は、時間の集計単位の関係を定義している。時間定義テーブル１２０は、図６に示すように、少なくとも１つのレコード１２７（図６には、１２７ａ〜１２７ｆの６つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「１２７」と符号を付す）を含む。
それぞれのレコード１２７は、単位名１２１、および各単位換算値１２２〜１２６を含むことができる。なお、図からも分かるように、時間の集計単位は、互いに包含関係にあり、時間定義テーブル１２０では、時間の集計単位の包含関係が定義される。
なお、図６の時間定義テーブル１２０の構成は一例であり、これに限定されるものではない。
【００６３】
単位名１２１は、時間単位の名称を示す。なお、時間単位は、サービスレベルの値の算出に用いる変数の時間の幅を意味する。たとえば、時間単位が「１日」ならば、サービスレベルの値の算出に用いる変数の時間の幅が「１日間隔で計測された値」あるいは「１日分の管理データを平均、総和など統計処理した値」であることを意味する。単位換算値１２２〜１２６は、括弧内の時間を、集計単位を基準とした場合の、時間の集計単位の数を示す。
たとえば、図６では、「四半期」の「単位換算値（１日）」に「９０」が記録されている。これは、「１日」を単位としたとき、「四半期」が「９０日」であることを示す。一方、「四半期」の「単位換算値（１年）」に「−」が記録されている。これは、「１年」の方が「四半期」より大きいため、該当するデータがないことを示す。
【００６４】
空間定義テーブル１３０は、管理対象の空間の集計単位の関係を定義している。空間定義テーブル１３０は、図７に示すように、少なくとも１つのレコード１３５（図７には、１３５ａ〜１３５ｅの５つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「１３５」と符号を付す）を含む。
【００６５】
それぞれのレコード１３５は、単位名１３１、単位換算値１３２〜１３４を含むことができる。なお、図からも分かるように、本実施形態では、空間の集計単位は、互いに包含関係にあり、空間定義テーブル１３０では、空間の集計単位の包含関係が定義される。包含関係とは、たとえば、単位の大小、長短、広狭などの関係である。さらに、包含関係は、集計単位同士の共通部分の関係も含むことができる。他の実施形態において、空間の集計単位は包含関係にない場合も考えられる。それらの関係も含め、空間定義テーブル１３０に定義し、記憶してもよい。
なお、図７の空間定義テーブル１３０の構成は一例であり、これに限定されるものではない。
【００６６】
単位名１３１は、空間単位の名称を示す。なお、空間単位は、サービスレベルの値の算出に用いる変数の空間の幅を意味する。たとえば、空間単位が「ＡＰ層」ならば、サービスレベルの値の算出に用いる変数の空間の幅が「ＡＰ層全体で計測された値」あるいは「ＡＰ層に含まれるノードの管理データを平均、総和など統計処理した値」であることを意味する。
【００６７】
単位換算値１３２〜１３４は、括弧内の空間単位を基準とした場合の空間単位の数を示す。たとえば、図７では、「ＤＣ」の「単位換算値（ノード）」に、「１００００」が記録されている。これは、「ノード」を単位とした時、「ＤＣ」が「１００００ノード」で構成されていることを示す。一方、「ＤＣ」の「単位換算値（複数のＤＣ）」に「−」が記録されている。これは「複数のＤＣ」の方が「ＤＣ」より大きいため、該当するデータがないことを示す。
【００６８】
個別定義テーブル１４０は、特定の監視項目に関する定義であり、サービスレベルを数式などで任意に定義した集計方法を定義する情報が記憶される。個別定義テーブル１４０は、図８に示すように、少なくとも一つのレコード１４６（図８には、１４６ａの１つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「１４６」と符号を付す）を含む。
【００６９】
それぞれのレコード１４６は、ＳＬ種別１４１、集計方法１４２、変数１４３、時間単位１４４または空間単位１４５を含む。
なお、図８の個別定義テーブル１４０の構成は一例であり、これに限定されるものではない。
【００７０】
ＳＬ種別１４１は、個別定義テーブル１４０に定義された個別定義（以下、「個別定義１４０」とも呼ぶ）に基づき算出するサービスレベルの種別を示す。集計方法１４２は、サービスレベルの値の算出に用いられる計算式や関数を示す。なお、ｍは予定稼働時間、ｎは予定外停止時間を意味している。予定稼働時間は、一定値を指定するものとする。次に、変数１４３は、サービスレベルの値の算出に用いられる変数を示す。時間単位１４４は、サービスレベルの値を算出する集計時間の幅を示す。空間単位１４５は、サービスレベルの値を算出する集計空間の幅を示す。
【００７１】
たとえば、図８では、「予定外停止時間」が変数である。また、時間単位１４４は「１日」、かつ、空間単位１４５は「サービス」である。なお、図５のサービスレベル定義テーブル１１０のレコード１１７ｃの集計方法１１６で「式」と定義された収集方法が、この個別定義テーブル１４０で定義された集計方法１４２に相当する。図５では集計方法１１６を「式」と示してあるが、個別定義テーブル１４０は、集計方法１４２の式を識別可能な情報、たとえば、関数名などを定義することができる。
【００７２】
図３に戻り、分析部１０６は、サービスレベル定義テーブル１１０および単位換算定義テーブル記憶部１０８に記録した時間定義テーブル１２０、空間定義テーブル１３０または個別定義テーブル１４０で構成される単位換算定義に基づき、サービスレベル算出過程の重複を検出する。そして、分析部１０６は、重複を回避してサービスレベルの値の算出を行うための定義であるサービスレベル算出定義と、サービスレベルの値の算出に用いる値（集計値）を算出するための定義である単位変数定義とを出力する。
【００７３】
本実施形態では、出力された単位変数定義およびサービスレベル算出定義は、単位変数定義テーブル１５０およびサービスレベル算出定義テーブル２２０にそれぞれ記憶される。以後、単位変数定義テーブル１５０に記憶される単位変数定義を、「単位変数定義１５０」と表記する。さらに、サービスレベル算出定義テーブル２２０に記憶されるサービスレベル算出定義を、「サービスレベル算出定義２２０」と表記する。
【００７４】
分析部１０６は、まず、サービスレベル定義テーブル１１０を参照し、サービスレベル定義を読み込み、単位換算定義テーブル記憶部１０８に記録された時間定義テーブル１２０、空間定義テーブル１３０、または個別定義テーブル１４０に基づき、サービスレベルの値の算出に関する重複を分析する。分析部１０６は、同一属性で異なる集計単位のサービスレベルについて集計単位をまとめ、単位変数を定義するとともに、単位変数から各サービスレベルを算出するためのサービスレベル算出定義を生成する。後述する集計部１０２とサービスレベル算出部１０４は、単位変数定義とサービスレベル算出定義を用いることで、重複を避けてサービスレベルの値を算出することができることとなる。
【００７５】
本実施形態において、分析部１０６は、集計単位が互いに包含関係にあるサービスレベル間では、サービスレベル定義１１０で定義されているサービスレベルの中で最も内側となる最小の単位を単位変数として定義する。
【００７６】
分析部１０６は、単位変数定義１５０を集計部１０２へ出力する。なお、単位変数はサービスレベル算出部１０４がサービスレベルの値を算出するために用いる変数である。さらに、単位変数定義１５０は、集計部１０２が単位変数を算出するために用いる定義である。
【００７７】
単位変数定義テーブル１５０は、分析部１０６が定義した集計単位をまとめる単位変数の定義を記憶する。図９に示すように、単位変数定義テーブル１５０は、少なくとも１つのレコード１５８（図９には、１５８ａの１つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「１５８」と符号を付す）を含むことができる。それぞれのレコード１５８は、単位変数名１５１、集計方法１５２、変数１５３、集計時間１５４、集計空間１５５、時間単位１５６、または空間単位１５７を含む。
なお、図９の単位変数定義テーブル１５０の構成は一例であり、これに限定されるものではない。
【００７８】
単位変数名１５１は、単位変数の名称を示す。集計方法１５２は、図５のサービスレベル定義テーブル１１０の集計方法１１６に相当し、サービスレベルの値を算出するとき用いる変数の集計方法を示す。変数１５３は、図５のサービスレベル定義テーブル１１０の集計変数１１３に相当し、サービスレベルの値を算出するために用いる管理データの種類を示す。
【００７９】
集計時間１５４は、図５のサービスレベル定義テーブル１１０の集計時間１１４に相当し、変数１５３を集計し、サービスレベルの値を算出する時間の範囲を示す。集計空間１５５は、図５のサービスレベル定義テーブル１１０の集計空間１１５に相当し、変数１５３を集計し、サービスレベルの値を算出する空間の範囲を示す。
【００８０】
時間単位１５６は、サービスレベルの値を算出するとき用いる変数１５３の元データ（管理データ）を読み出すタイミング（時間間隔）を示す。時間単位１５６は、集計時間１５４の大きさ以下の単位を選択する。たとえば、時間単位１５６として、管理データの収集または記録時間の単位（５分）をそのまま用いてもよい。あるいは、時間単位１５６として、管理データの収集間隔が５分の整数倍の１０分間隔などの時間単位を設定してもよい。これらは、設定テーブルを別途設けて適宜設定できるようにしてもよい。
【００８１】
空間単位１５７は、サービスレベルの値を算出するとき用いる変数１５３の元データ（管理データ）を読み出す対象空間の範囲を示す。空間単位１５７は、集計空間１５５の大きさ以下の単位を選択する。
【００８２】
また、各レコード１５８は、単位変数を算出するために用いる変数１５３の具体的な集計時間１５４、たとえば、何時から何時等を指定した範囲、または集計空間１５５の具体的な範囲、たとえば、ノードＡ、Ｂ、Ｄなどの範囲などを含んでもよい。これらは、設定テーブルを別途設けて適宜設定できるようにしてもよい。分析部１０６が単位変数定義１５０を定義するとき、これらの設定テーブルを参照すればよい。
【００８３】
たとえば、図９の単位変数「ＴＡＴ（１日、ノード）」は、「１０分」、「ノード」という単位で管理データ記憶部１６０に記録された変数「ＴＡＴ」を、「１日」分、各「ノード」の範囲で読み込み、その範囲内の最大値（ＭＡＸ）を算出することを意味している。
【００８４】
サービスレベル算出定義テーブル２２０は、サービスレベル算出部１０４がサービスレベルの値を算出するときに用いる定義である。サービスレベル算出定義テーブル２２０は、図１０に示すように、少なくとも１つのレコード２２９（図１０には、２２９ａ〜２２９ｃの３つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「２２９」と符号を付す）を含むことができる。各レコード２２９は、ＳＬ名２２１、集計方法２２２、変数２２３、集計時間２２４、集計空間２２５、時間単位２２６、空間単位２２７または集約判定２２８を含む。
なお、図１０のサービスレベル算出定義テーブル２２０の構成は一例であり、これに限定されるものではない。
【００８５】
ＳＬ名２２１は、サービスレベル算出定義２２０に基づき、サービスレベル算出部１０４が算出するサービスレベルの名称を示す。集計方法２２２は、サービスレベルの値を算出する方法を示す。変数２２３は、サービスレベルの値を算出するとき用いる変数の名称を示す。
【００８６】
集計時間２２４は、変数２２３を集計し、サービスレベルの値を算出する時間の幅を示す。集計空間２２５は、変数２２３を集計し、サービスレベルの値を算出する空間の幅を示す。時間単位２２６は、サービスレベルの値を算出するとき用いる変数２２３の時間の幅を示す。空間単位２２７は、サービスレベルの値を算出するとき用いる変数２２３の空間の幅を示す。ここで、時間単位２２６または空間単位２２７は、それぞれ集計時間２２４または集計空間２２５の大きさ以下の単位を選択する。どのような単位を選択するかは、設定テーブルを別途設けて適宜設定できるようにしてもよい。
集約判定２２８は、対象のサービスレベルが算出の集約対象であるか否かを識別する情報（フラグ等）を示す。
【００８７】
たとえば、図１０では、集約判定２２８は、分析部１０６により、集約対象と判定されたものが「１」、それ以外が「０」と定義される。たとえば、図１０の「ＴＡＴ＿Ｂ」は、「１日」かつ「ノード」という単位で記録された「ＴＡＴ（１日、ノード）」という変数２２３を、サービスレベル算出部１０４が、「１月」かつ「サービス」の範囲で読み込み、その中の「ＭＡＸ」すなわち最大値を算出することを意味している。「ＴＡＴ（１日、ノード）」という変数２２３は、図９の単位変数定義１５０で定義された単位変数に対応する。
【００８８】
また、「ＴＡＴ＿Ｂ」の集約判定は「１」であり、これは、サービスレベル算出部１０４が、変数２２３を単位変数データ記憶部２１０から読み込むことを意味している。図１０の場合、集約判定２２８が「０」のサービスレベルに対しては、サービスレベル算出部１０４は変数２２３を管理データ記憶部１６０から読み込むものとする。なお、サービスレベル算出定義２２０のレコード２２９は、サービスレベルの値を算出するために用いる変数２２３の集計時間２２４および集計空間２２５の具体的範囲などを含んでいてもよい。これの具体的な範囲は、設定テーブルを別途設けて適宜設定できるようにしてもよい。分析部１０６がサービスレベル算出定義２２０を定義するとき、これらの設定テーブルを参照すればよい。
【００８９】
図３の集計部１０２は、単位変数定義テーブル１５０を参照し、単位変数定義に基づき、管理データ記憶部１６０から読み込んだ管理データを集計し、集計値を出力する。本実施形態では、出力された集計値は単位変数データ記憶部２１０に単位変数データとして記憶される。
【００９０】
単位変数データ記憶部２１０は、集計部１０２が出力した単位変数データ（以後、「単位変数データ２１０」とも呼ぶ）を記録する。単位変数データ２１０は、サービスレベル算出部１０４がサービスレベルの値を算出するために用いるデータである。図１１に示すように、単位変数データ記憶部２１０は、少なくとも１つのレコード２１７（図１１には、２１７ａ、２１７ｂ、２１７ｃの３つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「２１７」と符号を付す）を含むことができる。
【００９１】
各レコード２１７は、記録日時２１１、単位変数名２１２、集計時間２１３、集計空間２１４、集計方法２１５または値２１６を含む。
なお、図１１の単位変数データ記憶部２１０の構造は一例であり、これに限定されるものではない。
【００９２】
記録日時２１１は、単位変数データ２１０のレコードが記録された日時を示す。単位変数名２１２は、図９の単位変数定義１５０の単位変数名１５１に相当し、単位変数データ２１０を識別する名称を示す。集計時間２１３は、単位変数データ２１０の値を集計した時間範囲を示す。集計空間２１４は、単位変数データ２１０の値を集計した空間範囲を示す。集計方法２１５は、図９の単位変数定義１５０の集計方法１５２に相当し、単位変数データ２１０の値を算出した方法を示す。値２１６は、算出した単位変数データ２１０の値である。
【００９３】
たとえば、図１１は、「２０１１／０７／３１，１５：０１〜２０１１／０８／０１，１５：００」の時間範囲で、「ノードＡ」を対象に最大値を算出した「ＴＡＴ（１日、ノード）」の値が「５．１ｓｅｃ」であることを示している。図１１には、８月１日のデータとして、ノードＡのＴＡＴ（１日、ノード）の値のレコード２１７のみが示されているが、他のノードの値のレコード２１７も単位変数データ記憶部２１０に記録されているものとする。
【００９４】
図３に戻り、サービスレベル算出部１０４は、サービスレベル定義テーブル１１０を参照し、各サービスレベル定義に基づき、管理データ記憶部１６０に記録された管理データおよび単位変数データ記憶部２１０に記録された単位変数データを入力として、サービスレベルの値を算出する。サービスレベル算出部１０４は、算出したサービスレベルの値をサービスレベル記憶部１７０に記憶することができる。
【００９５】
サービスレベル記憶部１７０は、サービスレベル算出部１０４が算出したサービスレベルの値を記憶する。図１２に示すように、サービスレベル記憶部１７０は、サービスレベルの少なくとも１つのレコード１７７（図１２には、１７７ａ、１７７ｂの２つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「１７７」と符号を付す）を含むことができる。各レコード１７７は、記録日時１７１、ＳＬ名１７２、集計時間１７３、集計空間１７４、集計方法１７５または値１７６を含む。
なお、図１２のサービスレベル記憶部１７０の構造は一例であり、これに限定されるものではない。たとえば、集計方法１７５は、対応する図５のサービスレベル定義テーブル１１０のＳＬ名１１１の集計方法１１６を参照すれば知ることが可能であるので、必ずしも必要ない。
【００９６】
記録日時１７１は、サービスレベルの各レコード１７７がサービスレベル記憶部１７０に記録された日時を示す。ＳＬ名１７２は、図５のＳＬ名１１１に相当し、サービスレベルを識別する名称を示す。集計時間１７３は、サービスレベルの値を集計した時間範囲を示す。集計空間１７４は、サービスレベルの値を算出した空間範囲を示す。集計方法１７５は、図５の集計方法１１６に相当し、サービスレベルの値を算出した方法を示す。値１７６は、算出したサービスレベルの値である。
【００９７】
たとえば、図１２では、「２０１１／０７／３１  １５：０１〜２０１１／０８／０１  １５：００」の時間範囲で、「ノードＡ」を対象に最大値を算出した「ＴＡＴ＿Ａ」の値が「５．１ｓｅｃ」であることを示している。同様に「２０１１／０７／０１  １５：０１〜２０１１／０８／０１  １５：００」の時間範囲で、「サービスＡ」を対象に最大値を算出した「ＴＡＴ＿Ｂ」の値が「６．４ｓｅｃ」である。
【００９８】
図１１および図１２の集計時間２１３および１７３は、時間範囲を開始時刻と終了時刻で示しているが、これに限定されない。単位変数名２１２またはＳＬ名１７２を元に、集計時間の幅は取得できるので、集計時間２１３および１７３は、開始時刻または終了時刻のみでもよく、または、開始時刻または終了時刻と、集計時間の幅の情報を持つようにしてもよい。また、集計時間のタイミングが運用上予め決まっているのであれば、時刻は必ずしも必要なく、日付だけでもよい。
【００９９】
サービスレベル表示部２０８は、サービスレベル記憶部１７０を参照し、サービスレベル算出部１０４が算出したサービスレベルの値をユーザに提示する。なお、サービスレベル表示部２０８は、ディスプレイなどの表示装置（不図示）または、サービスレベルの値や動作状態をユーザに提示するアプリケーションなどで構成されてもよい。
また、サービスレベル表示部２０８は、サービスレベル記憶部１７０を参照せず、サービスレベル算出部１０４が算出したサービスレベルを直接受け取り、提示してもよい。
【０１００】
このように構成された本実施形態のサービスレベル監視システム１の動作について、以下説明する。
図１３乃至図１７は、本発明の実施の形態に係るサービスレベル監視システム１の動作の一例を示すフローチャートである。図１３は、本実施形態における分析部１０６の動作を示す。図１４および図１５は、図１３の各処理手順の詳細を示す。図１６は、本実施形態における集計部１０２の動作を示す。図１７は、本実施形態におけるサービスレベル算出部１０４の動作を示す。
【０１０１】
まず、図１３を用いて、分析部１０６の動作について説明する。
はじめに、分析部１０６は、サービスレベル定義テーブル１１０を参照し、サービスレベル定義を読み込む（ステップＳ２０１）。
次に、分析部１０６は、各サービスレベル定義について、同一属性で集計単位をまとめるサービスレベルがあるか否か、すなわち、算出するサービスレベルが集約対象か否かを判定する（ステップＳ２０３）。分析部１０６は、図５のサービスレベル定義テーブル１１０の中で、集計変数１１３と集計方法１１６が同一のレコード１１７ａと１１７ｂを抽出し、集約対象とする（ステップＳ２０３のＹＥＳ）。
【０１０２】
ここでは、１組みのレコード１１７ａと１１７ｂのみが集約対象となるが、実際には複数組みのレコード１１７がそれぞれ抽出される。また、２つのレコード１１７ａと１１７ｂのみが抽出されたが、２つ以上のレコード１１７が集約対象としてそれぞれ抽出されてもよい。一方、分析部１０６は、集計変数１１３と集計方法１１６が同一のレコード１１７が存在しないレコード１１７ｃを、集約対象外と判定する（ステップＳ２０３のＮＯ）。なお、集約対象とは、算出過程に他のサービスレベルと重複する処理が存在するサービスレベルを意味する。
【０１０３】
たとえば、図５のサービスレベル定義１１０において「ＴＡＴ＿Ａ」と「ＴＡＴ＿Ｂ」はともに、集計変数１１３が「ＴＡＴ」、かつ集計方法１１６が「ＭＡＸ」で同じあるため（ステップＳ２０３のＹＥＳ）、分析部１０６は、「ＴＡＴ＿Ａ」と「ＴＡＴ＿Ｂ」を集約対象と判定し、ステップＳ２０５に進む。一方、「稼働率＿Ａ」と同一の集計変数１１３および集計方法１１６を持つサービスレベルがサービスレベル定義１１０に存在しないため（ステップＳ２０３のＮＯ）、分析部１０６は「稼働率＿Ａ」を集約対象ではないと判定し、ステップＳ２０７に進む。
【０１０４】
次に、分析部１０６は、サービスレベル定義１１０と、単位換算定義テーブル記憶部１０８に記録された時間定義１２０、空間定義１３０または個別定義１４０に基づき、単位変数定義を出力し、単位変数定義テーブル１５０に記憶する（ステップＳ２０５）。
次に、分析部１０６は、サービスレベル定義１１０と単位変数定義１５０に基づき、サービスレベル算出定義を出力し、サービスレベル算出定義テーブル２２０に記憶する（ステップＳ２０７）。
このようにして、本実施形態のサービスレベル管理装置２００は、複数のサービスレベル定義１１０を分析し、同一属性で集計単位をまとめることができるサービスレベルについて、単位変数定義１５０とサービスレベル算出定義２２０を出力することができる。
【０１０５】
次に、図１４を参照して、図１３のステップＳ２０５に対応する分析部１０６の単位変数定義処理Ｓ２１０の手順について詳細に説明する。
まず、分析部１０６は、図１３のステップＳ２０３で集約対象と判定したサービスレベルに対し、集約集計単位（単位変数）を定義する（ステップＳ２１１）。なお、集約集計単位（単位変数）は、算出過程に重複がある複数のサービスレベルの値を算出する際に共通して利用可能なサービスレベル定義１１０の集計変数１１３の集計時間１１４または集計空間１１５の組である。分析部１０６は、集約対象と判定したサービスレベル定義１１０のサービスレベルのうち、同一の集計方法１１６を持つ複数のサービスレベルから最小の集計時間１１４および集計空間１１５を選択し、単位変数として定義する。なお、分析部１０６は、単位変数の定義の際に、単位換算定義テーブル記憶部１０８に記録された時間定義１２０または個別定義１４０を参照してもよい。
【０１０６】
たとえば、図５のサービスレベル定義１１０に記録されたサービスレベルのうち集約対象は「ＴＡＴ＿Ａ」と「ＴＡＴ＿Ｂ」であり、それらの集計時間１１４はそれぞれ「１カ月」と「１日」である。ここで、時間定義１２０を参照すると、「１日」は「１カ月」に包含される内側の集計単位である。よって、分析部１０６は、時間定義１２０に基づき、単位変数として、「１日」を選択する。同様に、集約対象の集計空間１１５は「サービス」と「ノード」であるため、分析部１０６は空間定義１３０に基づき、「サービス」に包含される内側の「ノード」を単位変数として選択する。したがって分析部１０６は、単位変数を「１日」かつ「ノード」と定義する。
【０１０７】
次に、分析部１０６は、サービスレベル定義１１０およびステップＳ２１１で定義した単位変数に基づき、図９の単位変数定義１５０の単位変数名１５１を定義する（ステップＳ２１３）。なお、単位変数は、サービスレベル算出部１０４がサービスレベルの値を算出するときに用いる値である。
【０１０８】
たとえば、サービスレベル定義１１０における集約対象は「ＴＡＴ＿Ａ」と「ＴＡＴ＿Ｂ」であり、その変数は「ＴＡＴ」である。また、上述したように、この例では、ステップＳ２１１の結果に基づき、単位変数は、「１日」および「ノード」である。これより、分析部１０６は、単位変数名１５１を「ＴＡＴ（１日、ノード）」と定義する。すなわち、単位変数を、集約対象のサービスレベルの変数の属性とともに、集計時間、集計空間、または集計方法のいずれか、あるいは、これらの組み合わせで定義する。
【０１０９】
次に、分析部１０６は、サービスレベル定義テーブル１１０を参照し、集約対象であるサービスレベルのＳＬ種別１１２および集計方法１１６と、個別定義１４０とを比較し、個別定義１４０に一致するサービスレベルが存在するか否かを判定する（ステップＳ２１５）。一致するサービスレベルが存在する場合（ステップＳ２１５のＹＥＳ）、そのサービスレベルについて、ステップＳ２１７とステップＳ２１９をバイパスし、ステップＳ２２１に進む。分析部１０６は、個別定義１４０に記録された集計方法１４２、変数１４３、時間単位１４４および空間単位１４５をそのまま単位変数定義テーブル１５０の集計方法１５２、変数１５３、時間単位１５６および空間単位１５７として定義する（ステップＳ２２１）。
【０１１０】
たとえば、図５のサービスレベル定義１１０における集約対象は、「ＴＡＴ＿Ａ」と「ＴＡＴ＿Ｂ」であり、これらのＳＬ種別１１２と集計方法１１６について個別定義１４０に一致する項目は存在しない（ステップＳ２１５のＮＯ）。したがって、単位変数定義１５０として個別定義１４０の情報は利用しない。
【０１１１】
次に、ステップＳ２１５の判定の後、個別定義１４０と一致するサービスレベルの処理とは別に、一致しないサービスレベルについて（ステップＳ２１５のＮＯ）、ステップＳ２１７に進む。
分析部１０６は、サービスレベル定義１１０に基づき、単位変数を算出するときの集計方法１５２、集計時間１５４、または集計空間１５５を定義する（ステップＳ２１７）。
たとえば、分析部１０６は、サービスレベル定義１１０に基づき、単位変数定義１５０における単位変数「ＴＡＴ（１日、ノード）」の集計方法１５２を「ＭＡＸ」と定義する。同様に、分析部１０６は、サービスレベル定義１１０およびステップＳ２１１で定義した単位変数に基づき、単位変数定義１５０における集計時間１５４を「１日」、集計空間１５５を「ノード」と定義する。
【０１１２】
次に、分析部１０６は、サービスレベル定義１１０に基づき、単位変数を算出するときに用いる変数１５３を定義する。さらに、分析部１０６は、単位変数、時間定義１２０および空間定義１３０に基づき、単位変数を算出するときの時間単位１５６および空間単位１５７を定義する（ステップＳ２１９）。このとき、分析部１０６は、時間単位１５６および空間単位１５７として、集計時間１５４および集計空間１５５以下の単位を選択する。
【０１１３】
たとえば、分析部１０６は、まず、サービスレベル定義１１０に基づき、単位変数「ＴＡＴ（１日、ノード）」の変数１５３を、「ＴＡＴ」と定義する。次に、単位変数「ＴＡＴ（１日、ノード）」の集計時間１５４は、「１日」であるため、分析部１０６は、時間定義１２０に基づき、単位変数を算出するための時間単位１５６としてそれより小さな単位で、かつ、管理データの収集タイミングの５分の整数倍（２倍）の「１０分」を定義する。同様に、単位変数「ＴＡＴ（１日、ノード）」の集計空間１５５は、「ノード」であるため、分析部１０６は、空間定義１３０に基づき、単位変数を算出するための空間単位１５７として、それと等しい単位である「ノード」を定義する。
【０１１４】
次に、分析部１０６は、ステップＳ２１１乃至ステップＳ２１９の結果に基づき、単位変数定義を出力し、単位変数定義テーブル１５０に記憶する（ステップＳ２２１）。
このようにして、本実施形態のサービスレベル管理装置２００は、単位変数定義テーブル１５０を生成することができる。
【０１１５】
次に、図１５を参照して、図１３のステップＳ２０７に対応する分析部１０６のサービスレベル算出定義処理Ｓ２３０の手順について詳細に説明する。
分析部１０６は、まず、図１３のステップＳ２０３の結果に基づき、サービスレベルが算出の集約対象であるか否かに応じて、サービスレベル定義１１０のサービスレベルを分類する（ステップＳ２３１）。なお、分析部１０６は、図５のサービスレベル定義テーブル１１０のレコード１１７ａ、１１７ｂ、および１１７ｃにそれぞれ対応するレコード２２９ａ、２２９ｂ、および２２９ｃを図１０のサービスレベル算出定義テーブル２２０に生成する。すなわち、サービスレベル定義１１０の各レコード１１７のＳＬ名１１１が、サービスレベル算出定義２２０の各レコード２２９のＳＬ名２２１にそれぞれ定義される。
【０１１６】
そして、分析部１０６は、ステップＳ２３１で集約対象に分類されたサービスレベルのサービスレベル算出定義２２０の集約判定２２８を「１」、集約対象ではないサービスレベルに分類されたものの集約判定２２８を「０」とそれぞれ定義する。なお、集約判定２２８は、サービスレベル算出部１０４がサービスレベルの値を算出する際に、単位変数データ記憶部２１０および管理データ記憶部１６０のいずれから変数を読み込むか決定するために用いる指標である。すなわち、集約判定２２８は、集計部１０２によって集計された管理データの集計値を用いるか、管理データそのものを用いるかを示している。
【０１１７】
たとえば、分析部１０６は、サービスレベル定義１１０に基づく図１３のステップＳ２０１の結果から、サービスレベル算出定義２２０のレコード２２９ａの「ＴＡＴ＿Ａ」およびレコード２２９ｂの「ＴＡＴ＿Ｂ」の集約判定２２８をそれぞれ「１」と定義する。同様に、分析部１０６は、サービスレベル算出定義２２０のレコード２２９ｃの「稼働率＿Ａ」の集約判定２２８を「０」と定義する。
【０１１８】
次に、分析部１０６は、サービスレベル定義１１０のＳＬ種別１１２および集計方法１１６と、個別定義１４０のＳＬ種別１４１および集計方法１４２を比較し、サービスレベル定義１１０のＳＬ種別１１２および集計方法１１６と、個別定義１４０のＳＬ種別１４１および集計方法１４２がともに一致するサービスレベルのレコード１１７が、サービスレベル定義１１０に存在するか否かを判定する（ステップＳ２３３）。一致するサービスレベルが存在する場合（ステップＳ２３３のＹＥＳ）、ステップＳ２３５およびステップＳ２３７をバイパスし、ステップＳ２３９に進む。分析部１０６は、個別定義１４０の集計方法１４２、変数１４３、時間単位１４４および空間単位１４５をサービスレベル算出定義２２０の集計方法２２２、変数２２３、時間単位２２６、および空間単位２２７としてそれぞれ定義する（ステップＳ２３９）。
【０１１９】
たとえば、サービスレベル定義１１０の「稼働率＿Ａ」で定義されたＳＬ種別１１２「稼働率」と個別定義１４０に記録されたＳＬ種別１４１「稼働率」が一致するため（ステップＳ２３３のＹＥＳ）、分析部１０６は、個別定義１４０に記録された集計方法１４２「（ｍ−Σｎｉ）／ｍ」、変数１４３「予定外停止時間」、時間単位１４４「１日」、および空間単位１４５「サービス」を、サービスレベル算出定義２２０のレコード２２９ｃの「稼働率＿Ａ」の集計方法２２２、変数２２３、時間単位２２６、および空間単位２２７としてそれぞれ定義する（ステップＳ２３９）。
【０１２０】
次に、ステップＳ２３３の判定の後、個別定義１４０と一致するサービスレベルの処理とは別に、個別定義１４０と一致しないサービスレベルについて（ステップＳ２３３のＮＯ）、ステップＳ２３５に進み、分析部１０６は以下の処理を行う。
分析部１０６は、個別定義１４０と一致する項目がなかったサービスレベルに対し、算出に用いる変数２２３を定義する（ステップＳ２３５）。まず、分析部１０６は、ステップＳ２３１の結果に基づき、ステップＳ２０５で定義された単位変数を、集約判定２２８が「１」のサービスレベルの値の算出に用いる変数２２３として定義する。次に、分析部１０６は、サービスレベル定義１１０に基づき、集約判定２２８が「０」のサービスレベルの値の算出に用いる変数２２３を定義する。さらに、分析部１０６は、個別定義１４０と一致する項目がなかったサービスレベルに対し、サービスレベル定義１１０に基づき集計時間２２４および集計空間２２５を定義する。
【０１２１】
たとえば、ステップＳ２０５で定義された単位変数定義１５０に基づき、分析部１０６は、「ＴＡＴ＿Ａ」および「ＴＡＴ＿Ｂ」を算出するための変数２２３として単位変数「ＴＡＴ（１日、ノード）」を定義する。また、分析部１０６は、サービスレベル定義１１０に基づき、レコード１１７ａの集計時間１１４および集計空間１１５をサービスレベル算出定義２２０のレコード２２９ａの「ＴＡＴ＿Ａ」の集計時間２２４「１日」および集計空間２２５「ノード」として定義する。分析部１０６は、サービスレベル算出定義２２０のレコード２２９ｂの「ＴＡＴ＿Ｂ」も同様に、サービスレベル定義１１０のレコード１１７ｂを元に定義する。
【０１２２】
次に、分析部１０６は、サービスレベル定義１１０に基づき、サービスレベルの値を算出するときに用いる集計方法２２２を定義する（ステップＳ２３７）。また、分析部１０６は、サービスレベル定義１１０、単位変数定義１５０、時間定義１２０または空間定義１３０に基づき、サービスレベルの値を算出するときの時間単位２２６および空間単位２２７を定義する。このとき、分析部１０６は、時間単位２２６および空間単位２２７として、サービスレベル定義１１０に記録された集計時間１１４および集計空間１１５の大きさ以下の単位を選択する。
【０１２３】
たとえば、ステップＳ２３５で「ＴＡＴ＿Ａ」を算出するための変数２２３は単位変数「ＴＡＴ（１日、ノード）」と定義された。サービスレベル定義１１０によれば、サービスレベル定義１１０のレコード１１７ａのサービスレベル「ＴＡＴ＿Ａ」と、サービスレベル算出定義２２０のレコード２２９ａの変数２２３の単位変数「ＴＡＴ（１日、ノード）」（図９の単位変数定義１５０のレコード１５８ａに相当）は同一のものである。したがって、分析部１０６は、このサービスレベル「ＴＡＴ＿Ａ」を算出するとき、単位変数定義１５０に基づき集計部１０２により既に算出が完了している「ＴＡＴ（１日、ノード）」の単位変数データを単位変数データ記憶部２１０から読み込むだけでよい。このように、分析部１０６は、サービスレベル定義１１０および変数２２３を比較し、同一と判断した場合、レコード２２９ａのサービスレベル「ＴＡＴ＿Ａ」の集計方法２２２として「Ｒｅａｄ」を定義する。なお、集計方法２２２「Ｒｅａｄ」は、分析部１０６が、単位変数データ記憶部２１０からデータを読み込むことを意味する。
【０１２４】
次に、分析部１０６は、「ＴＡＴ＿Ｂ」の集計方法２２２を定義する。ステップＳ２３５で「ＴＡＴ＿Ｂ」を算出するための変数２２３は「ＴＡＴ（１日、ノード）」と定義された。サービスレベル定義１１０によれば、サービスレベル定義１１０のサービスレベル「ＴＡＴ＿Ｂ」と、変数２２３の単位変数「ＴＡＴ（１日、ノード）」は同一ではない。したがって、分析部１０６は、サービスレベル定義１１０に基づき、レコード１１７ｂの集計方法１１６の「ＭＡＸ」を、サービスレベル算出定義２２０のレコード２２９ｂの「ＴＡＴ＿Ｂ」の集計方法２２２として定義する。
【０１２５】
次に、サービスレベル算出定義２２０のレコード２２９ａの「ＴＡＴ＿Ａ」の集計時間２２４および集計空間２２５は、変数２２３「ＴＡＴ（１日、ノード）」に相当する単位変数定義１５０のレコード１５８ａの集計時間１５４および集計空間１５５と同一であるため、ステップＳ２１１で定義した単位変数の「１日」かつ「ノード」に基づき、分析部１０６は、時間単位２２６を「１日」、および、空間単位２２７を「ノード」とそれぞれ定義する。また、「ＴＡＴ＿Ｂ」についても同様に定義する。
【０１２６】
次に、分析部１０６は、ステップＳ２３１〜ステップＳ２３７の結果に基づき、サービスレベルの値を算出するための定義であるサービスレベル算出定義を出力し、サービスレベル算出定義テーブル２２０に記憶する（ステップＳ２３９）。
本実施形態では、上記動作の結果、図１０に示すサービスレベル算出定義２２０が得られることとなる。
【０１２７】
以上のようにして、分析部１０６は、サービスレベル定義１１０の算出過程の重複を分析し、サービスレベル算出定義２２０と単位変数定義１５０とを出力することができる。
【０１２８】
次に、集計部１０２の動作について詳細に説明する。図１６は、集計部１０２の動作を示すフローチャートである。
まず、集計部１０２は、単位変数定義１５０を読み込む（ステップＳ２４１）。
次に、集計部１０２は、単位変数定義１５０に基づき、単位変数の値の算出に用いる変数１５３の範囲を決定する（ステップＳ２４３）。
【０１２９】
たとえば、単位変数定義１５０によれば、「ＴＡＴ（１日、ノード）」を算出するための変数１５３は「ＴＡＴ」である。同様に、時間単位１５６は「１０分」、および、空間単位１５７は「ノード」である。したがって、集計部１０２は、「１０分」および「ノード」単位で記録された「ＴＡＴ」を単位変数の値を算出するための変数であると判定する。また、集計時間１５４は「１日」であるため、集計部１０２は「１０分」単位で記録された管理データ「１日」分を変数１５３の範囲と定義する。
【０１３０】
なお、集計部１０２は、単位変数の値の算出に用いる変数の範囲および個数を決定するために、時間定義１２０および空間定義１３０を参照してもよい。
【０１３１】
次に、集計部１０２は、単位変数定義１５０に基づき、管理データ記憶部１６０から単位変数の値の算出に用いる変数１５３を読み込む（ステップＳ２４５）。
たとえば、集計部１０２は、単位変数定義１５０のレコード１５８ａの「ＴＡＴ（１日、ノード）」の値を算出するために、算出時点より、１日前までの、「１０分」および「ノード」単位で記録された「ＴＡＴ」を管理データ記憶部１６０から読み込む。
【０１３２】
次に、集計部１０２は、読み込んだ変数１５３および集計方法１５２に基づき、単位変数の値を算出する（ステップＳ２４７）。
この例では、単位変数定義１５０に基づき、「ＴＡＴ（１日、ノード）」の集計方法１５２は、「ＭＡＸ」であるため、集計部１０２はステップＳ２４５で読み込んだ範囲のＴＡＴの値の中から最大値を選択する。
【０１３３】
次に、集計部１０２は、ステップＳ２４７で算出した単位変数の値２１６を単位変数データ記憶部２１０へ出力する（ステップＳ２４９）。このとき、集計部１０２は、図１１の単位変数データのレコード２１７に、値２１６とともに、記録日時２１１と、単位変数名２１２と、集計時間２１３と、集計空間２１４と、集計方法２１５と、を記録する。
【０１３４】
たとえば、図１１に示す単位変数データ２１０の一例では、レコード２１７ａにあるように、「２０１１／０７／３１  １５：０１〜２０１１／０８／０１  １５：００」の間に「ノードＡ」で記録された管理データ「ＴＡＴ」の最大値が「５．１ｓｅｃ」であったことを意味している。なお、集計部１０２は、図９の単位変数定義１５０に記録された集計時間１５４と、図１１の単位変数データを算出した記録日時２１１に基づき、単位変数データにおける集計時間２１３を出力する。図１１の例では、図９の単位変数定義１５０に基づき、「ＴＡＴ（１日、ノード）」の集計時間１５４が「１日」であるため、集計部１０２は、記録日時２１１より前の１日間を単位変数データ２１０における集計時間２１３とする。また、集計方法２１５は、単位変数定義１５０の集計方法１５２の「ＭＡＸ」とする。
【０１３５】
以上のようにして、集計部１０２は、単位変数定義１５０および管理データに基づき単位変数を算出することができる。
【０１３６】
次に、サービスレベル算出部１０４の動作について説明する。図１７は、サービスレベル算出部１０４の動作を示すフローチャートである。
【０１３７】
まず、サービスレベル算出部１０４は、サービスレベル算出定義２２０から各レコード２２９を読み込む（ステップＳ２５１）。
次に、サービスレベル算出部１０４は、レコード２２９に基づき、サービスレベルの値の算出に用いる変数２２３を決定する。次に、サービスレベル算出部１０４は、サービスレベル算出定義２２０に記録された集計時間２２４、集計空間２２５、時間単位２２６および空間単位２２７に基づき、サービスレベルの値の算出に用いる変数２２３の範囲を決定する（ステップＳ２５３）。
【０１３８】
たとえば、図１０のサービスレベル算出定義２２０によれば、レコード２２９ｂの「ＴＡＴ＿Ｂ」を算出するための変数２２３は「ＴＡＴ（１日、ノード）」である。同様に、レコード２２９ｂの時間単位２２６は「１日」、および、空間単位２２７は「ノード」である。したがって、サービスレベル算出部１０４は、「１日」および「ノード」単位で記録された「ＴＡＴ」を「ＴＡＴ＿Ｂ」の値を算出するための変数と決定する。また、集計時間２２４は「１月」、かつ、集計空間２２５は「サービス」であるため、サービスレベル算出部１０４は「１日」単位で記録された「１月」分かつ「サービス」を構成する「ノード」の値を変数２２３の範囲とする。
【０１３９】
なお、サービスレベル算出部１０４は、サービスレベルの値の算出に用いる変数の範囲および個数を決定するために、時間定義１２０および空間定義１３０を参照してもよい。
【０１４０】
次に、サービスレベル算出部１０４は、ステップＳ２４３で定義した範囲に該当する変数２２３を単位変数データ記憶部２１０または、管理データ記憶部１６０のいずれかから読み込む。ここで、サービスレベル算出部１０４は、サービスレベル算出定義２２０の集約判定２２８に基づき、どちらの記憶部から変数２２３を読み込むかを判別する。集約判定２２８が「１」ならば、サービスレベル算出部１０４は、単位変数データ記憶部２１０から変数２２３を読み込む。一方、集約判定２２８が「０」ならば、サービスレベル算出部１０４は、管理データ記憶部１６０から変数２２３を読み込む（ステップＳ２５５）。
【０１４１】
たとえば、図１０のレコード２２９ａの「ＴＡＴ＿Ａ」およびレコード２２９ｂの「ＴＡＴ＿Ｂ」の集約判定２２８はともに「１」であるので、サービスレベル算出部１０４は、ステップＳ２５３で定義した変数２２３を単位変数データ記憶部２１０から読み込む。一方、レコード２２９ｃの「稼働率＿Ａ」の集約判定２２８は「０」であるので、サービスレベル算出部１０４は、ステップＳ２５３で定義した変数２２３を管理データ記憶部１６０から読み込む。
【０１４２】
次に、サービスレベル算出部１０４は、ステップＳ２４５で読み込んだ変数を用いて、サービスレベル算出定義２２０の集計方法２２２に基づき、サービスレベルの値を算出する。サービスレベル算出部１０４は、算出したサービスレベルの値を、サービスレベル表示部２０８へ出力する（ステップＳ２５７）。
【０１４３】
たとえば、サービスレベル算出定義２２０に基づき、「ＴＡＴ＿Ｂ」の集計方法は「ＭＡＸ」であるため、サービスレベル算出部１０４は、ステップＳ２５５で読み込んだ値の中から最大値を選択する。なお、サービスレベル算出部１０４が出力するサービスレベルの値は、一例として図１２のサービスレベル記憶部１７０に記憶されてもよい。
以上のようにして、サービスレベル算出部１０４は、サービスレベルの値を算出することができる。
【０１４４】
また、本実施形態において、サービスレベル監視システム１は、図１８に示すように、さらに、管理データ収集部２４０と、管理データ収集定義テーブル２３０と、を備えてもよい。
管理データ収集部２４０は、まず、管理データ収集定義テーブル２３０に基づき、監視対象システム（不図示）に関する管理データを収集する。次に、管理データ収集部２４０は、管理データ収集定義テーブル２３０に基づき、各項目の管理データを管理データログとして管理データ記憶部１６０へ出力する。監視対象システムは、たとえば、サーバ単体や、複数のサーバで構成されるＷＥＢ三層システム、あるいは、１つのラックに格納されたサーバ群、データセンタ全体や、あるサービスを構成する全てのサーバ、さらに、あるユーザが利用している全てのサーバ、あるユーザ群の一部が利用しているサーバ群、または、複数のデータセンタ全体のサーバなどである。
【０１４５】
管理データ収集部２４０が収集する管理データは、監視対象システムの、予定外停止時間などの可用性に関する情報、応答時間（ＴＡＴ）、ＣＰＵ使用率、メモリ使用量、ディスク使用量、バッチ処理完了率、などの性能に関する情報および消費電力などである。
【０１４６】
管理データ収集定義テーブル２３０は、管理データ収集部２４０が収集する管理データに関する定義を記述したものである。図１９に示すように、管理データ収集定義テーブル２３０は、少なくとも１つのレコード２３４（図１９には、２３４ａ、２３４ｂ、２３４ｃの３つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「２３４」と符号を付す）を含んで構成される。各レコード２３４は、管理データ名２３１、収集方法２３２、または記録間隔２３３を含む。
なお、図１９の管理データ収集定義テーブル２３０の構成は一例であり、これに限定されるものではない。
【０１４７】
管理データ名２３１は、管理データを識別するための名称を示す。収集方法２３２は、管理データを収集するための方法を示す。記録間隔２３３は、収集した管理データを管理データ記憶部１６０に記録する間隔を示す。
【０１４８】
たとえば、図１９のレコードと２３４ａの「ＴＡＴ」は、「５分毎」に「ミドルウェアにより計測」された管理データ「ＴＡＴ」を５分毎に管理データ記憶部１６０に出力することを意味する。同様に、レコード２３４ｃの「稼働状況」は、「５分毎」に「Ｐｉｎｇによる応答確認」を行い、その結果を管理データ記憶部１６０に出力することを意味する。
【０１４９】
そして、管理データ収集部２４０が収集した管理データは、管理データ記憶部１６０にログとして記録される。
なお、上述したサービスレベル算出部１０４は、管理データ記憶部１６０に格納された管理データに替えて、管理データ収集部２４０から管理データを入力として直接受け取り、サービスレベルの値を算出してもよい。
【０１５０】
上記管理データ収集部２４０の動作について以下説明する。図２０は、本実施の形態における管理データ収集部２４０の動作を示すフローチャートである。
まず、管理データ収集部２４０は、管理データ収集定義テーブル２３０を読み込む（ステップＳ２６１）。
次に、管理データ収集部２４０は、管理データ収集定義テーブル２３０のレコード２３４毎に定義された収集方法２３２および記録間隔２３３に従って、対象システム（データセンタ５）の管理データを収集する（ステップＳ２６３）。
【０１５１】
たとえば、管理データ収集部２４０は、管理データ収集定義テーブル２３０に基づき、対象システムのミドルウェアによって計測された「ＴＡＴ」を５分毎に収集する。あるいは、管理データ収集部２４０は、管理データ収集定義テーブル２３０に基づき、対象システムにＰｉｎｇを送信し、応答があるか否かを５分毎に確認し、「稼働状況」を収集する。
【０１５２】
次に、管理データ収集部２４０は、各管理データの値をレコード１６５として、管理データ記憶部１６０（図４）へ逐次出力し、記憶する（ステップＳ２６５）。
【０１５３】
たとえば、図４に示す管理データ記憶部１６０の一例は、レコード１６５ａでは、「２０１１／０８／０１  １５：００」に「サービスＡ」で計測された「ＴＡＴ」が「１０ｍｓｅｃ」であったことを示している。同様に、レコード１６５ｃでは、「２０１１／０８／０１  １５：００」の「ノードＡ」の「稼働状況」が「応答あり」であったことを示している。これは、管理データ収集部２４０が送信したＰｉｎｇに対する応答があったことを意味している。また、レコード１６５ｂでは、「２０１１／０８／０１  １５：００」の「サービスＡ」の「予定外停止時間」は「２分／１時間」であったことを示している。これは、記録日時から、過去１時間に予定外停止時間が２分あったことを意味している。
【０１５４】
以上のようにして、管理データ収集部２４０は、監視対象システムの管理データを収集し、管理データログとして管理データ記憶部１６０に記録することができる。
【０１５５】
以上説明したように、本発明の実施の形態に係るサービスレベル監視システム１によれば、複数のサービスレベル算出時に、重複過程を自動で検出することができる。
その理由は、分析部１０６が、重複に関する定義（時間定義１２０、空間定義１３０、または個別定義１４０）に基づき、サービスレベル定義１１０内に存在する、算出過程の時間および空間的重複部分を検出するからである。
【０１５６】
また、上記文献に記載されたように、同一の監視対象に関し、複数のサービスレベルを算出する場合に、次の３点の課題が存在した。
第１の課題は、記録した履歴情報の読み出しを重複して行うなど、サービスレベルの算出過程に重複が存在する点である。
【０１５７】
前記特許文献１のサービス評価システムは、利用者が入力する命令に従ってサービスレベルの値を算出する。たとえば、１月単位のサービスレベルの値を算出する場合には、システムは、１カ月分全ての履歴情報を読み出す。また、１日単位のサービスレベルの値を算出する場合には、システムは、１日分の履歴情報を読み出す。そのため、上記２種類のサービスレベルを算出する場合、システムは、１カ月分の履歴情報を重複して読み出している。
【０１５８】
したがって、前記特許文献１のサービス評価システムは、ある特定の期間について、上に例示した複数のサービスレベルの値を算出する場合に、履歴情報を重複して読み出す、という課題を有していた。
【０１５９】
これは、特許文献２のサービス評価システムについても同様である。特許文献２のシステムは命令を入力する代わりに、予め与えたＳＬＡ定義情報に従ってサービスレベルの値を算出する。複数のサービスレベルの値を算出する際には、複数の定義を与え、その重複に関しては考慮していない。
【０１６０】
第２の課題は、重複を回避する際に、事前に集計されたデータを必要とする点である。
前記特許文献３では、第１の課題を解決するために、システムは、あらかじめ所定の項目についてデータベースのデータを集計した複数の集計テーブルと、集計テーブルの項目およびデータ件数に関する情報を有するコントロールテーブルを備える。そして、システムは、要求された条件に適合する集計値を算出する際には、コントロールテーブルに基づき、集計条件に適合する集計が可能である集計データのうち、集計データの件数が最小となる集計テーブルを探索するよう構成されている。
【０１６１】
しかしながら、近年では、監視対象となるサービスが大規模化しているため、それに伴い履歴情報のサイズが大きくなっており、事前に個別の集計テーブルを集計、用意しておくことは困難である。
したがって、前記特許文献３のデータ処理システムは、データ処理を効率化するために、事前に元のデータより集計された集計データを必要とする、という課題を有していた。
【０１６２】
第３の課題は、サービスレベル算出過程の重複を、人が判断して、回避する点である。
前記特許文献１のサービス評価システムは、利用者の命令に従ってサービスレベルの算出を行うため、算出過程の重複が自明な場合には、一定のルールを設定することで、重複を回避することが可能である。しかしながら、どこが重複しているかは、その都度、利用者が判断し、ルールを設定しなければならない。つまり、特許文献１のシステムは、サービスレベル算出時の重複を回避するために、人が条件を判断し、算出のためのルールを設定しなければならないという課題を有していた。
【０１６３】
たとえば、特許文献１および特許文献２のサービス評価システムにおいて、あるサービス全体の１カ月毎、１日毎のサービス稼働率を、半年分算出する場合を考える。この場合、どちらのシステムも、まず、１日毎に履歴情報を読み出し、１日分のサービス稼働率を算出する。次に、システムは、１カ月毎に、１か月分の履歴情報を読み出し、１カ月分のサービス稼働率を算出する。これを半年間継続する。このとき、特許文献１および特許文献２のサービス評価システムでは半年分の履歴情報全てを少なくとも２回は読み出さなければならない。さらに、特許文献１のサービス評価システムにおいて上記の重複を回避するためには、重複過程を特定し、算出のためのルールを人が設定しなければならない。
【０１６４】
本発明のサービスレベル監視システム１によれば、上記課題を解決することができる。
すなわち、本発明の実施の形態に係るサービスレベル監視システム１によれば、記憶装置からのデータの読込回数および読み込み量を減少させることで複数のサービスレベルを効率よく算出することができる。
その理由は、以下の要素を含むように構成したからである。まず、分析部１０６がサービスレベル定義１１０に含まれる重複部分を回避してサービスレベルの値を算出するために、サービスレベル算出定義２２０および単位変数定義１５０を出力する。集計部１０２が単位変数定義１５０に基づき、単位変数を算出し、単位変数データ記憶部２１０へ出力する。次に、サービスレベル算出部１０４がサービスレベル算出定義２２０に基づきサービスレベルの値を算出する。その際、サービスレベル算出部１０４は、管理データ記憶部１６０および単位変数データ記憶部２１０から必要な変数を読み込む。なお、サービスレベル算出部１０４がどちらの記憶部から変数２２３を読み込むかは、サービスレベル算出定義２２０に集約判定２２８として定義する。前記動作により、サービスレベル監視システム１において、管理データ記憶部１６０から同一のデータを繰り返し読み込む回数および量を減少させることができる。
【０１６５】
さらに、本発明の実施の形態に係るサービスレベル監視システム１によれば、事前に、集計データを準備せずに、データ処理の効率化が可能となる。
その理由は、以下の要素を含むように構成したからである。分析部１０６がサービスレベル定義１１０に基づき、複数のサービスレベルの値を算出する際に、重複する部分を自動で検出し、その重複する部分を算出するための定義を単位変数定義１５０として出力する。次に、集計部１０２が管理データおよび単位変数定義１５０に基づき単位変数を算出し、単位変数データ記憶部２１０へ出力する。サービスレベル算出部１０４は、サービスレベル算出定義２２０に従い、単位変数データ記憶部２１０および管理データ記憶部１６０から変数２２３を読み込み、サービスレベルの値を算出する。
【０１６６】
（第３の実施の形態）
図２１は、本発明の実施の形態に係るサービスレベル監視システム１の構成を示す機能ブロック図である。
本実施形態のサービスレベル監視システム１は、上記実施形態とは、サービスレベルの算出方法が、互いに上下関係にあるものについて、最も上位のもの集計単位（単位変数）として定義する点で相違する。ここで、上下関係は、複数のサービスレベル算出処理手順の順序、優先順位、または依存関係などで定義される。より前に処理される手順を上位とし、上位の手順より後、または上位手順で算出された値を用いて算出処理を行う手順を下位とする。
【０１６７】
図２１に示すように、本実施形態のサービスレベル管理装置３００は、図３の上記実施形態のサービスレベル管理装置２００と同様な、集計部１０２、サービスレベル算出部１０４、およびサービスレベル表示部２０８を備えるとともに、さらに、分析部３０６と、単位換算定義テーブル３０８と、を備える。
また、図３の上記実施形態のサービスレベル管理装置２００のサービスレベル定義テーブル１１０、単位変数定義テーブル１５０、サービスレベル記憶部１７０、単位変数データ記憶部２１０、およびサービスレベル算出定義テーブル２２０と同様な構造をそれぞれ有するサービスレベル定義テーブル３１０、単位変数定義テーブル３３０、サービスレベル記憶部３７０、単位変数データ記憶部３５０、およびサービスレベル算出定義テーブル３４０を備える。
【０１６８】
図２２に示すように、本実施形態のサービスレベル定義テーブル３１０は、上記実施形態の図５のサービスレベル定義テーブル１１０と同様な構成を有する。図２２は、図５のサービスレベル定義テーブル１１０とは異なるレコード３１７ａ〜３１７ｄがサービスレベル定義テーブル３１０に記憶されている例を示す。
【０１６９】
本実施形態において、図２１の単位換算定義テーブル３０８は、上記実施形態の図６の時間定義テーブル１２０と、図７の空間定義テーブル１３０と、図８の個別定義テーブル１４０を有するとともに、さらに、図２３の方法定義テーブル３２０を有する。
【０１７０】
方法定義テーブル３２０（以下、「方法定義３２０」とも呼ぶ）は、サービスレベル定義テーブル３１０に記録されたサービスレベルの集計方法１１６の包含関係、依存関係、主従関係または優先順位などの関係を定義するものである。また、方法定義テーブル３２０は、集計方法の共通部分の定義も含むことができる。図２３に示すように、方法定義テーブル３２０は、少なくとも１つのレコード３２５（図２３には、３２５ａ〜３２５ｅの５つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「３２５」と符号を付す）を含むことができる。それぞれのレコード３２５は、集計方法名３２１、集計種別３２２、上位手法３２３、または下位手法３２４を含む。
なお、図２３の方法定義テーブル３２０の構成は一例であり、これに限定されるものではない。
【０１７１】
集計方法名３２１は、サービスレベルの値を算出する方法の名称を示す。集計方法名３２１は、サービスレベル定義３１０に記録された集計方法１１６に対応する項目である。
【０１７２】
集計種別３２２は、該当する集計方法がどのような演算を行うかの分類を示す。図２３は、「四則演算」と「比較」の２種類を例として示している。この集計種別３２２は、分析部３０６が、同一の集計種別に属する集計方法に関して、集計方法の集約を検討するために用いる。
【０１７３】
上位手法３２３は、その集計結果を用いて異なる集計が可能な集計方法を示す。図２３は、「平均」の上位手法３２３として「合計」を、また「パーセンタイル」および「ＭＡＸ」の上位手法３２３として「並び替え」を例示している。
下位手法３２４は、該当する集計方法で集計した結果を用いて集計を行うことができる集計方法を示している。上位手法３２３と下位手法３２４は関連する集計方法名が互いの上下関係に対応して記録される。図２３は、「合計」の下位手法３２４として「平均」を、「並び替え」の下位手法３２４として「ＭＡＸ」、「ＭＩＮ」、および「パーセンタイル」を示している。なお、方法定義テーブル３２０の上位手法３２３または下位手法３２４において、「−」は該当する手法が存在しないことを意味する。
【０１７４】
なお、本実施の形態においては、方法定義３２０の集計種別の例として「四則演算」および「比較」のみを挙げているが、その他にも、個別定義１４０に記録した個別の計算式などを含むことができる。上位手法３２３または下位手法３２４のように入出力する値に基づく依存関係などに基づき、木構造を形成できるものを「集計種別３２２」として新たに定義してもよい。また、個別定義１４０に記録した個別の計算式などであっても、計算式を演算記号と文字列に分けるように構文解析することで上位手法３２３または下位手法３２４を抽出できる場合がある。このような上位手法３２３または下位手法３２４を計算式と関連付けて方法定義３２０として記録しておいてもよい。
【０１７５】
分析部３０６は、サービスレベル定義テーブル３１０を参照し、複数のサービスレベルについて、単位換算定義テーブル３０８に記録された時間定義１２０、空間定義１３０、個別定義１４０、または方法定義３２０に基づき、算出過程の重複個所を検出し、重複を回避してサービスレベルの値の算出を行うためのルールである単位変数定義およびサービスレベル算出定義を出力する。
【０１７６】
本実施形態において、分析部３０６は、集計単位が互いに上下関係にあるサービスレベル間では、サービスレベル定義１１０で定義されているサービスレベルの中で最も上位の単位を単位変数として定義する。分析部３０６は、サービスレベルの集計単位の上下関係の判別に方法定義３２０を使用する。
【０１７７】
図２５および図２６に示すように、単位変数定義テーブル３３０およびサービスレベル算出定義テーブル３４０は、上記実施形態の図９の単位変数定義テーブル１５０および図１０のサービスレベル算出定義テーブル２２０と同様な構成を有する。図２５は、図９の単位変数定義テーブル１５０とは異なるレコード３３８ａが単位変数定義テーブル３３０に記録されている例を示している。図２６は、図１０のサービスレベル算出定義テーブル２２０とは異なるレコード３４９ａ〜３４９ｄがサービスレベル算出定義テーブル３４０に記録されている例を示している。以下、サービスレベル定義テーブル３１０は「サービスレベル定義３１０」、単位変数定義テーブル３３０は「単位変数定義３３０」、サービスレベル算出定義テーブル３４０は「サービスレベル算出定義３４０」とも呼ぶものとする。
【０１７８】
このように構成された本実施形態のサービスレベル監視システム１の動作について、以下説明する。
図２４は、本実施形態のサービスレベル監視システム１のサービスレベル管理装置３００の動作の一例を示すフローチャートである。なお、本実施形態において、上記実施形態で説明した管理データ収集部２４０（図１８）の動作は同様である。以下、分析部３０６の動作について説明する。
【０１７９】
まず、分析部３０６は、図２２のサービスレベル定義３１０を読み込む（ステップＳ３０１）。なお、以下の処理は、サービスレベル定義テーブル３１０に定義されているサービスレベル定義毎に繰り返し行うものとする。
次に、分析部３０６は、読み込んだレコード３１７に記録された集計方法１１６について、単位換算定義テーブル３０８に記憶された方法定義３２０と照会し、対象となるサービスレベルの集計方法１１６の集計種別３２２が「比較」であるか否かを判定する（ステップＳ３０３）。
【０１８０】
たとえば、図２２のサービスレベル定義３１０においてレコード３１７ｄの「ＴＡＴ＿Ｃ」の集計方法１１６は「平均」である。分析部３０６は、図２３の方法定義３２０に従って、集計方法名３２１「平均」の集計種別３２２は「四則演算」であると判定する（ステップＳ３０３のＮＯ）。一方、分析部３０６は、サービスレベル定義３１０のレコード３１７ａの「ＴＡＴ＿Ａ」およびレコード３１７ｂの「ＴＡＴ＿Ｂ」の集計方法１１６は、「ＭＡＸ」および「９８パーセンタイル」であるため、方法定義３２０に基づき、集計種別３２２は「比較」であると判定する（ステップＳ３０３のＹＥＳ）。
【０１８１】
上記ステップＳ３０３で、分析部３０６が、レコード３１７の集計方法１１６の集計種別３２２が「比較」以外であると判定した場合（ステップＳ３０３のＮＯ）、分析部３０６は、集計種別が「比較」以外であると判定したサービスレベルを、上記実施形態の図１４の単位変数定義処理（ステップＳ２１０）と同様に処理する。そして、分析部３０６は、処理後、ステップＳ２３０に進む。
【０１８２】
一方、上記ステップＳ３０３で、分析部３０６が、レコード３１７の集計方法１１６の集計種別３２２が「比較」であると判定した場合（ステップＳ３０３のＹＥＳ）、まず、分析部３０６は、サービスレベル定義３１０を参照し、対象となるサービスレベルの中で、集計時間１１４および集計空間１１５が同一かつ集計方法１１６が異なるサービスレベルがあるか否かを判定する（ステップＳ３０５）。
分析部３０６は、対象のサービスレベルと集計時間１１４および集計空間１１５が同一かつ集計方法１１６が異なるサービスレベルが存在しない場合（ステップＳ３０５のＮＯ）、対象のサービスレベルを集約対象としない。そして、分析部３０６は、ステップＳ２３０に進む。
一方、対象のサービスレベルと集計時間１１４および集計空間１１５が同一かつ集計方法１１６が異なるサービスレベルが存在する場合（ステップＳ３０５のＹＥＳ）、分析部３０６は、対象のサービスレベルを集約対象とし、次のステップＳ３０７へ進む。
【０１８３】
たとえば、図２２のサービスレベル定義３１０において、レコード３１７ａの「ＴＡＴ＿Ａ」およびレコード３１７ｂの「ＴＡＴ＿Ｂ」の集計時間１１４および集計空間１１５は同一であるが、集計方法１１６が異なる。したがって、分析部３０６は、前記２種類のサービスレベル「ＴＡＴ＿Ａ」および「ＴＡＴ＿Ｂ」を集約対象と判定する。仮に、集計時間１１４および集計空間１１５の少なくともいずれか一方が異なっていた場合、分析部３０６は、サービスレベル定義３１０に基づき、いずれのサービスレベルも集約対象ではないと判定する。
【０１８４】
そして、分析部３０６は、サービスレベル定義３１０に基づき、集計時間１１４および集計空間１１５が同一であるサービスレベルについて、その集計時間１１４および集計空間１１５を集計単位とする（ステップＳ３０７）。
たとえば、図２２のサービスレベル定義３１０の例では、分析部３０６は、集計時間１１４「１月」および集計空間１１５「サービス」を、「ＴＡＴ＿Ａ」および「ＴＡＴ＿Ｂ」を算出するための集計単位として定義する。
【０１８５】
次に、分析部３０６は、集約対象と判定したサービスレベルの値を算出するために用いる単位変数の名称を定義する（ステップＳ３０９）。
たとえば、分析部３０６は、図２５に示すように、単位変数定義３３０において、「ＴＡＴ＿Ａ」および「ＴＡＴ＿Ｂ」の値の算出に用いる単位変数名１５１を「参考ＳＬ＿１」と定義する。
【０１８６】
次に、分析部３０６は、図２２のサービスレベル定義３１０に記録された集約対象であるサービスレベルの集計方法１１６に基づき、図２３の方法定義３２０を参照し、前記集計方法の上位手法３２３に該当する方法を、単位変数定義３３０の集計方法１５２として定義する（ステップＳ３１１）。
たとえば、ステップＳ３０５で集約対象と判定した「ＴＡＴ＿Ａ」および「ＴＡＴ＿Ｂ」の集計方法１１６はそれぞれ「ＭＡＸ」および「９８パーセンタイル」である。方法定義３２０に基づき、これらの集計方法１１６の上位手法３２３は、「並び替え」である。したがって、分析部３０６は、ステップＳ３０９で定義した単位変数「参考ＳＬ＿１」の集計方法１５２として「並び替え」を定義する。
【０１８７】
次に、分析部３０６は、サービスレベル定義３１０および方法定義３２０に基づき単位変数の集計に用いる変数１５３を定義する。また、分析部３０６は、時間定義１２０、空間定義１３０、方法定義３２０またはサービスレベル定義３１０に基づき、集計時間１５４、集計空間１５５、時間単位１５６および空間単位１５７を定義する（ステップＳ３１３）。
【０１８８】
たとえば、分析部３０６は、「参考ＳＬ＿１」を算出するための変数１５３として単位変数「ＴＡＴ」を定義する。また、分析部３０６は、サービスレベル定義３１０に基づき「参考ＳＬ＿１」を算出するための集計時間１５４および集計空間１５５として「１月」、「サービス」をそれぞれ定義する。さらに、分析部３０６は、時間定義１２０および空間定義１３０に基づき、時間単位１５６および空間単位１５７として「１０分」、「サービス」をそれぞれ定義する。
【０１８９】
そして、分析部３０６は、ステップＳ３０７〜ステップＳ３１３の結果に基づき、単位変数定義を出力し、図２５に示す単位変数定義テーブル３３０にする（ステップＳ３１５）。
このようにして、分析部３０６は、単位変数定義３３０を生成する。
【０１９０】
なお、ステップＳ３１５またはステップＳ２１０の後の動作は、上記実施形態の図１５のサービスレベル算出定義処理（ステップＳ２３０）と同様に、分析部３０６が、サービスレベル定義３１０および単位変数定義３３０に基づき、サービスレベル算出定義を出力し、図２６に示すサービスレベル算出定義テーブル３４０に記憶する。
【０１９１】
図２４に示すように、サービスレベル定義３１０において、「ＴＡＴ＿Ａ」および「ＴＡＴ＿Ｂ」は集約対象であるため、これらの変数２２３は上記処理で定義した「参考ＳＬ＿１」である。また、同様に「ＴＡＴ＿Ａ」および「ＴＡＴ＿Ｂ」の集約判定２２８は「１」である。一方、集約対象で否かあるかに関わらず、その他の項目はサービスレベル定義３１０と同一である。
【０１９２】
以上のようにして、分析部３０６は、サービスレベル定義３１０における算出過程の重複を分析し、単位変数定義３３０およびサービスレベル算出定義３４０を出力することができる。
【０１９３】
次に、集計部１０２の動作について説明する。
本実施形態の集計部１０２は、上記実施形態のサービスレベル管理装置２００で図１６を用いて説明した手順と同様に動作する。
集計部１０２は、上記実施形態と同様に、単位変数定義３３０に基づき単位変数を算出し、単位変数データ記憶部３５０へ出力する。
【０１９４】
たとえば、集計部１０２が図２５の単位変数定義３３０に基づき、「参考ＳＬ＿１」を算出する場合について説明する。図２５のレコード３３８ａによれば、集計部１０２は、まず、管理データ記憶部１６０から「１０分」および「サービス」の単位で記録された「ＴＡＴ」の値を、計測時点より１月前の値まで読み込む。次に、集計部１０２は、単位変数定義３３０に記録された集計方法「並び替え」に従い、読み込んだ管理データを、昇順に並び替える。最後に、集計部１０２が、並び替えた管理データを「参考ＳＬ＿１」として単位変数データ記憶部３５０へ出力する。
【０１９５】
以上が、単位変数定義３３０および管理データ記憶部１６０に基づき、単位変数を算出し、単位変数データ記憶部３５０へ出力する集計部１０２の動作である。
【０１９６】
次に、本実施形態のサービスレベル算出部１０４の動作について説明する。
本実施形態のサービスレベル算出部１０４は、上記実施形態のサービスレベル管理装置２００で図１７を用いて説明した手順と同様に動作する。
【０１９７】
たとえば、図２６に示すサービスレベル算出定義テーブル３４０に従って、サービスレベル算出部１０４が、サービスレベルの値を算出する場合について説明する。
レコード３４９ａの「ＴＡＴ＿Ａ」を算出する場合、集約判定２２８が「１」であるため、サービスレベル算出部１０４は、単位変数データ記憶部３５０から「参考ＳＬ＿１」を読み込む。なお、読み込む「参考ＳＬ＿１」は、集計時間２２４、集計空間２２５、時間単位２２６および空間単位２２７に基づき「１月、サービス」を単位として集計された値となる。サービスレベル算出部１０４は、「参考ＳＬ＿１」として読み込んだ、管理データの値の集合から集計方法２２２に基づき、最大値（ＭＡＸ）を算出する。
レコード３４９ｂの「ＴＡＴ＿Ｂ」の場合、サービスレベル算出部１０４は、前記値の集合より９８パーセンタイル値を算出する。
【０１９８】
一方、「稼働率＿Ａ」および「ＴＡＴ＿Ｃ」の集約判定２２８は「０」であるため、サービスレベル算出部１０４は、サービスレベルの値の算出に用いる変数を管理データ記憶部１６０から読み込む。なお、サービスレベル算出定義３４０に基づき、サービスレベル算出部１０４が読み込む変数２２３の範囲は、「稼働率＿Ａ」に対しては、「１日」かつ「サービス」単位で収集された「予定外停止時間」を「１月」分である。同様に、「ＴＡＴ＿Ｃ」に対しては、「１０分」かつ「ノード」単位で収集された「ＴＡＴ」を「１日」分かつ「サービス」分である。次にサービスレベル算出部１０４は、読み込んだ変数２２３に対し、サービスレベル算出定義３４０に記録された集計方法２２２を適用する。
【０１９９】
以上のようにして、サービスレベル算出部１０４は、サービスレベル算出定義３４０、単位変数データおよび管理データに基づき、サービスレベルの値を算出することができる。
【０２００】
以上、説明したように、本発明の実施の形態に係るサービスレベル監視システム１によれば、上記実施形態の効果を奏するとともに、さらに、複数のサービスレベル算出時に、集計種別が「並び替え」に分類される集計手法の算出過程を集約することができる。
その理由は、以下の要素を含むように構成したからである。まず、上記実施形態に加え、重複定義として方法定義３２０を加えたからである。分析部３０６が前記方法定義３２０を参照し、サービスレベル算出時の集計方法に関しても、上記実施形態における集計時間および集計空間と同様に、重複部分を回避してサービスレベルを算出するよう定義したおよび単位変数定義３３０およびサービスレベル算出定義３４０を出力する。
【０２０１】
さらに、本発明の実施の形態に係るサービスレベル監視システム１によれば、集計種別が「並び替え」に分類される集計手法を用いる複数のサービスレベルを集計する際に、データの読み込みを効率化できる。
その理由は、次のように動作するからである。まず、集計部１０２が、単位変数定義３３０に基づき、サービスレベルを算出する際に必要な変数を、単位変数として算出し、単位変数データ記憶部３５０へ記録する。次に、サービスレベル算出部１０４は、サービスレベル算出定義３４０に基づき、単位変数データ記憶部３５０に記録された単位変数を読みこみ、サービスレベルの値を算出する。
【０２０２】
（第４の実施の形態）
図２７は、本発明の実施の形態に係るサービスレベル監視システム１の構成を示す機能ブロック図である。
本実施形態のサービスレベル監視システム１のサービスレベル管理装置４００は、上記実施形態とは、上記実施形態で定義した単位変数を単位として、さらに、サービスレベル定義の異なる集計単位をまとめる定義を生成し、サービスレベル算出過程の重複をさらに削減する点で相違する。
【０２０３】
図２７に示すように、本実施形態のサービスレベル監視システム１におけるサービスレベル管理装置４００は、図２１の上記実施形態のサービスレベル管理装置３００と同様なサービスレベル算出部１０４と、サービスレベル表示部２０８と、単位換算定義テーブル３０８と、単位変数定義テーブル３３０とを備えるとともに、さらに、分析部４０６と、サービスレベル変数算出部４０２と、サービスレベル変数定義テーブル４３０と、サービスレベル変数データ記憶部４５０と、を備える。
また、図３の上記実施形態のサービスレベル管理装置２００のサービスレベル定義テーブル１１０、サービスレベル記憶部１７０、およびサービスレベル算出定義テーブル２２０と同様な構造をそれぞれ有するサービスレベル定義テーブル４１０、サービスレベル記憶部４７０、およびサービスレベル算出定義テーブル４４０を備える。
【０２０４】
図２８に示すように、本実施形態のサービスレベル定義テーブル４１０は、上記実施形態の図５のサービスレベル定義テーブル１１０または図２２のサービスレベル定義テーブル３１０と同様な構成を有する。図２８は、サービスレベル定義テーブル１１０またはサービスレベル定義テーブル３１０とは異なるレコード４１７ａ〜４１７ｃがサービスレベル定義テーブル４１０に記憶されている例を示す。
【０２０５】
また、本実施形態において、図３０のサービスレベル算出定義テーブル４４０は、上記実施形態の図１０のサービスレベル算出定義テーブル２２０または図２６のサービスレベル算出定義テーブル３４０と同様な構成を有する。図３０は、サービスレベル算出定義テーブル２２０またはサービスレベル算出定義テーブル３４０とは異なるレコード４４９ａ〜４４９ｃがサービスレベル算出定義テーブル４４０に記憶されている例を示す。
【０２０６】
なお、本実施形態のサービスレベル管理装置４００の構成は、図２１の上記実施形態のサービスレベル管理装置３００だけでなく、本実施形態は、上記実施形態の図１のサービスレベル管理装置１００または図３のサービスレベル管理装置２００の構成と組み合わせてもよい。
【０２０７】
本実施形態において、分析部４０６は、単位変数で定義した集計単位を用いて、複数のサービスレベル定義４１０を単位換算するルール（サービスレベル変数定義４３０）を定義する。サービスレベル算出部１０４は、分析部４０６が定義した（サービスレベル変数定義４３０）に従って、複数のサービスレベル定義４１０を単位換算してサービスレベルを算出する。
【０２０８】
サービスレベル変数定義テーブル４３０は、サービスレベル算出部１０４がＳＬ変数の値を算出するために用いる定義である。ＳＬ変数は、サービスレベル算出部１０４がサービスレベルの値を算出するために用いる値を示す。
【０２０９】
図２９は、サービスレベル変数定義テーブル４３０のデータ構成の一例を示す。サービスレベル変数定義テーブル４３０は、少なくとも１つのレコード４３４（図２９には、４３４ａと４３４ｂの２つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「４３４」と符号を付す）を含むことができる。それぞれのレコード４３４は、上記実施形態の図９の単位変数定義テーブル１５０または図２５の単位変数定義テーブル３３０のレコードと同様な集計方法１５２、変数１５３、集計時間１５４、集計空間１５５、時間単位１５６、または空間単位１５７を含むとともに、さらに、算出順序４３１、ＳＬ変数名４３２、または参照元４３３を含む。
なお、図２９のサービスレベル変数定義テーブル４３０の構成は一例であり、これに限定されるものではない。
【０２１０】
算出順序４３１は、ＳＬ変数を算出する順序を意味する。ＳＬ変数名４３２は、ＳＬ変数を識別するための名称を示す。集計方法１５２はＳＬ変数の値を算出するための方法を示す。変数１５３は、ＳＬ変数の値を算出するために用いる変数の名称を示す。集計時間１５４は、前記変数を集計し、ＳＬ変数の値を算出する時間の範囲を示す。集計空間１５５は、前記変数を集計し、ＳＬ変数の値を算出する空間の範囲を示す。時間単位１５６は、ＳＬ変数を算出するために用いる変数の時間の幅を示す。空間単位１５７は、ＳＬ変数を算出するために用いる変数の空間の幅を示す。また、参照元４３３は変数を読み込む場所を示す。図２５の例では、参照元４３３が「０」の場合、サービスレベル変数算出部４０２は管理データ記憶部１６０から変数を読み込む。一方、参照元が「１」の場合、サービスレベル変数算出部４０２は、サービスレベル変数データ記憶部４５０から変数を読み込むものとする。
【０２１１】
このように構成された本実施形態のサービスレベル管理装置４００の動作について、以下説明する。
図３１は、本発明の実施の形態に係るサービスレベル監視システム１のサービスレベル管理装置４００の動作を示すフローチャートである。なお、上記実施形態で説明した管理データ収集部２４０（図１８）の動作は、上記実施形態と同様である。以下、分析部４０６の動作について説明する。
【０２１２】
まず、分析部４０６は、サービスレベル定義４１０を読み込む（ステップＳ２０１）。
ステップＳ２０１とステップＳ２０３の動作は上記実施形態の図１３のフローチャートに示す分析部１０６の動作と同様である。また、ステップＳ２１１〜ステップＳ２１９の動作は、上記実施形態の図１４のフローチャートに示す分析部１０６の動作と同様である。
【０２１３】
次に、分析部４０６は、サービスレベル定義４１０および上記処理結果に基づき、ＳＬ変数の探索を行う（ステップＳ４０１）。ＳＬ変数はサービスレベルを算出するために用いる変数を示す。ここでは、単位変数を用いて算出するサービスレベルの値自体が、他のサービスレベルを算出するための変数として用いることができるか否か判定する。
【０２１４】
たとえば、図２８に示したサービスレベル定義４１０の場合、単位変数は、「ＴＡＴ（１日、ノード）」と定義される。しかし、図６の時間定義１２０に基づき、集計単位と「ＴＡＴ＿Ｂ」および「ＴＡＴ＿Ｃ」の集計時間２２４および集計空間２２５を比較すると、「ＴＡＴ＿Ｂ」は単位変数と「ＴＡＴ＿Ｃ」の中間に該当することがわかる。この場合、分析部４０６は、「ＴＡＴ＿Ｂ」をＳＬ変数であると判定する。
【０２１５】
次に、分析部４０６は、サービスレベル定義１１０および上記処理結果に基づき、ＳＬ変数を定義する（ステップＳ４０３）。
たとえば、図２８に示したサービスレベル定義４１０の場合、上記処理結果により「ＴＡＴ（１日、ノード）」が単位変数として定義されている。この場合、分析部４０６は、単位変数をそのままＳＬ変数として定義する。なお、単位変数としての定義に加え、分析部４０６は、算出順序４３１および参照元４３３を定義してもよい。算出順序４３１は、ＳＬ変数を算出する順序である。複数のＳＬ変数が存在する場合、時間単位および空間単位が小さいＳＬ変数の算出順序が優先される。
【０２１６】
なお、空間単位が等しい場合は、時間単位が小さいＳＬ変数の算出順序を優先する。参照元４３３は、ＳＬ変数を算出するために用いる変数１５３を読み出す記憶装置を示す。ここでは「０」は管理データ記憶部１６０を意味する。同様に「１」はサービスレベル変数データ記憶部４５０を意味する。分析部４０６は、次に「ＴＡＴ＿Ｂ」をＳＬ変数として定義する。この時、分析部４０６は、「ＴＡＴ＿Ｂ」のＳＬ変数名４３２をサービスレベル定義４１０に基づき、「ＴＡＴ（１日、サービス）」と定義する。変数１５３は上記処理結果により「ＴＡＴ（１日、ノード）」である。さらに変数「ＴＡＴ（１日、ノード）」の値を利用してＳＬ変数「ＴＡＴ（１日、サービス）」を算出するため、時間単位１５６は「１日」、かつ、空間単位１５７は「ノード」である。また、ＳＬ変数「ＴＡＴ（１日、サービス）」は、サービスレベル変数データ記憶部４５０に記録されているため、参照元４３３は「１」である。
【０２１７】
次に、分析部４０６は、上記処理結果に基づきサービスレベル変数定義４３０を出力する（ステップＳ４０５）。
次に、分析部４０６は、サービスレベル算出定義４４０を出力する（ステップＳ２３０）。このサービスレベル算出定義２２０を出力する分析部４０６の動作は、上記実施の形態の図１５のサービスレベル算出定義処理Ｓ２３０と同様である。
このようにして、本実施形態の分析部４０６は、サービスレベル変数定義４３０とサービスレベル算出定義４４０を出力することができる。
【０２１８】
次に、サービスレベル変数算出部４０２が、サービスレベル変数定義４３０に基づき、ＳＬ変数を算出する動作について説明する。
図３２は、本実施形態のサービスレベル変数算出部４０２の動作を示すフローチャートである。
【０２１９】
まず、サービスレベル変数算出部４０２は、サービスレベル変数定義４３０を読み込む（ステップＳ４１１）。
次にサービスレベル変数算出部４０２は、サービスレベル変数定義４３０に記録された算出順序４３１、ＳＬ変数名４３２、集計方法１５２、変数１５３、集計時間１５４、集計空間１５５、時間単位１５６、空間単位１５７または参照元４３３に基づき、管理データを読み込み（ステップＳ４１３）、ＳＬ変数を算出し（ステップＳ４１５）、サービスレベル変数データ記憶部４５０へ出力する（ステップＳ４１７）。
【０２２０】
たとえば、図２９のサービスレベル変数定義４３０に従い、ＳＬ変数を算出する場合、サービスレベル変数算出部４０２は、まず、管理データ記憶部１６０より、算出時点から過去１日分の「１０分」、かつ、「ノード」単位の「ＴＡＴ」を読み込む。次に、サービスレベル変数算出部４０２は、読み込んだ値の最大値を「ＴＡＴ（１日、ノード）」としてサービスレベル変数データ記憶部４５０へ記録する。次に、サービスレベル変数算出部４０２は、サービスレベル変数データ記憶部４５０に記録された、過去１日分の「ＴＡＴ（１日、ノード）」の値を「サービス」を構成するノードの数に基づき読み込む。次に、サービスレベル変数算出部４０２は、読み込んだ値の最大値を「ＴＡＴ（１日、サービス）」としてサービスレベル変数データ記憶部４５０へ記録する。
【０２２１】
なお、サービスレベル変数算出部４０２は、ＳＬ変数の値の算出に用いる変数１５３の数、依存関係などを定義するために、時間定義１２０および空間定義１３０を参照してもよい。
以上のようにして、サービスレベル変数算出部４０２は、サービスレベル変数定義４３０に基づき、ＳＬ変数を算出することができる。
【０２２２】
また、本実施の形態におけるサービスレベル算出部１０４は、図１７のフローチャートを用いて説明した上記実施形態のサービスレベル算出部１０４と同様に動作する。そして、サービスレベル算出部１０４は、サービスレベルの値を出力し、サービスレベル記憶部４７０に記憶することができる。
【０２２３】
以上説明したように、本発明の実施の形態に係るサービスレベル管理装置４００によれば、上記実施形態と同様な効果を奏するとともに、さらに、サービスレベルを算出するために、他のサービスレベルを利用することが可能となる。
その理由は、次のように構成したからである。まず、分析部４０６が、サービスレベル定義４１０に基づき、サービスレベル変数定義４３０およびサービスレベル算出定義４４０を出力する。サービスレベル変数定義４３０は、サービスレベルを算出するために共通の変数だけでなく、他のサービスレベルを算出するために変数として用いるサービスレベル自体を定義することが可能である。
【０２２４】
さらに、本実施形態のサービスレベル管理装置４００によれば、サービスレベルを算出するために、他のサービスレベルを利用することで元となる管理データの読み出し量および回数を削減することが可能である。
その理由は、次のように構成したからである。まず、サービスレベル変数算出部４０２がサービスレベル変数定義４３０に基づき、ＳＬ変数をサービスレベル変数データ記憶部４５０に記録する。次に、サービスレベル算出部１０４が、サービスレベル算出定義４４０に基づき、管理データ記憶部１６０またはサービスレベル変数データ記憶部４５０から変数を読み込む。次にサービスレベル算出部１０４が、読み込んだ変数を用いてサービスレベルを算出する。その際に、管理データから算出済みのＳＬ変数を利用することで、元となる管理データを再度読み込む必要がない。また、サービスレベル変数データ記憶部４５０には、ＳＬ変数を用いて算出したＳＬ変数も記録されているので、変数を読み込む量および回数はさらに削減される。
【０２２５】
（第５の実施形態）
図３３は、本発明の実施の形態に係るサービスレベル監視システム１の構成を示す機能ブロック図である。
本実施形態のサービスレベル監視システム１のサービスレベル管理装置５００は、上記実施形態とは、サービスレベル算出に使用する変数を事前に定義することなく自動判定できる点で相違する。
【０２２６】
図３３に示すように、本実施形態のサービスレベル監視システム１におけるサービスレベル管理装置５００は、図３の上記実施形態のサービスレベル管理装置２００と同様な分析部１０６と、サービスレベル表示部２０８と、を備えるとともに、さらに、集計部５０２と、サービスレベル算出部５０４と、を備える。
【０２２７】
また、本実施形態のサービスレベル管理装置５００は、図３の上記実施形態のサービスレベル管理装置２００と同様なサービスレベル定義テーブル１１０と、単位換算定義テーブル記憶部１０８と、単位変数定義テーブル１５０と、単位変数データ記憶部２１０と、サービスレベル算出定義テーブル２２０と、サービスレベル記憶部１７０と、を備えるとともに、さらに、単位変数テーブル５１０を備える。
【０２２８】
なお、本実施形態のサービスレベル管理装置５００は、図３の上記実施形態のサービスレベル管理装置２００の構成だけでなく、図１のサービスレベル管理装置１００、図２１のサービスレベル管理装置３００、図２７のサービスレベル管理装置４００の構成に適用することもできる。
【０２２９】
単位変数テーブル５１０は、単位変数データ記憶部２１０に記録されている単位変数の名称、集計方法、変数、時間単位、または、空間単位などの情報が含まれているテーブルである。
【０２３０】
図３４に単位変数テーブル５１０の一例を示す。図３４を参照すると、単位変数テーブル５１０は、少なくとも１つのレコード５１５（図３４には、５１５ａ〜５１５ｃの３つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「５１５」と符号を付す）を含むことができる。それぞれのレコード５１５は、単位変数名５１１、集計時間５１２、集計空間５１３、または集計方法５１４を含む。
なお、図３４の単位変数テーブル５１０の構成は一例であり、これに限定されるものではない。たとえば、レコード５１５は、集計した変数の名称、値、時間単位または空間単位などをさらに含んでもよい。
【０２３１】
たとえば、図３４の単位変数テーブル５１０を参照すると、レコード５１５ａの「ノードＡ」について「２０１１／０７／３１  １５：０１〜２０１１／０８／０１  １５：００」の期間集計した最大値が「ＴＡＴ（１日、ノード）」の値として単位変数データ記憶部２１０に記録されていることを示す。その他のレコード５１５についても同様である。
【０２３２】
集計部５０２は、上記実施の形態の集計部１０２の動作に加え、単位変数定義１５０に従い、単位変数を算出し出力する際に、単位変数データ記憶部２１０に出力した単位変数に関する単位変数名２１２、集計時間２１３、集計空間２１４および集計方法２１５などの情報を単位変数テーブル５１０の単位変数名５１１、集計時間５１２、集計空間５１３および集計方法５１４にそれぞれ出力する。なお、集計した単位変数定義１５０に対応する変数１５３、時間単位１５６、空間単位１５７などの情報をさらに単位変数テーブル５１０に出力してもよい。
【０２３３】
本実施形態の単位変数テーブル５１０には、図１１の単位変数データ記憶部２１０のデータ項目と異なり、値２１６が含まれていない。値２１６は、数値データなどを含むため、データサイズが比較的大きくなり、大規模システムで長期間情報管理を継続した場合に、単位変数データ記憶部２１０の容量も大きくなってしまう。そのため、単位変数データ記憶部２１０のデータを参照する処理は負荷が高くなってしまう。一方、単位変数テーブル５１０に記録される情報は、単位変数名５１１などの識別情報のみを含む構成できるため、容量を比較的小さく抑えることができ、単位変数テーブル５１０の参照処理の負荷も軽くすることができる。
【０２３４】
また、サービスレベル算出部５０４は、サービスレベル算出定義２２０に従い、サービスレベルの値を算出する。この時、サービスレベル算出部５０４は、上記実施形態のサービスレベル算出部１０４の動作に加え、サービスレベル算出定義２２０に記録された変数が、単位変数データ記憶部２１０に記録されているか否かを、単位変数テーブル５１０を参照し、判定する。単位変数テーブル５１０に該当する変数が存在する場合、サービスレベル算出部５０４は、変数を単位変数データ記憶部２１０から読み込む。一方、該当する変数が単位変数テーブル５１０に存在しない場合、サービスレベル算出部５０４は、変数を管理データ記憶部１６０から読み込む。
【０２３５】
以上説明したように、本実施形態のサービスレベル管理装置５００によれば、上記実施形態と同様な効果を奏するとともに、サービスレベル算出部５０４が管理データ記憶部１６０または単位変数データ記憶部２１０のいずれから必要な変数を読み込むのか、事前に定義することなく自動で判定可能となる。
その理由は、集計部５０２が、単位変数データ記憶部２１０に出力する単位変数に関する情報を単位変数テーブル５１０に出力するよう構成したためである。サービスレベル算出部５０４は、単位変数テーブル５１０を参照することで、サービスレベルの値に必要な変数が単位変数データ記憶部２１０に記録されているか、されていないか判定することができる。
【０２３６】
さらに、本実施形態のサービスレベル管理装置５００によれば、サービスレベル算出部５０４が集計部５０２から独立してサービスレベルの値を算出することが可能となる。
その理由は、集計部５０２が、単位変数テーブル５１０を出力するので、単位変数の算出時点とは異なる時点においても、サービスレベル算出部５０４が単位変数テーブル５１０を参照してサービスレベルの値を算出することが可能なためである。たとえば、分析部１０６によらず、単位変数テーブル５１０と、サービスレベル定義１１０に基づいてサービスレベル算出定義２２０を決定することも可能である。
【０２３７】
（第６の実施形態）
図３５は、本発明の実施の形態に係るサービスレベル監視システム１のサービスレベル管理装置６００の要部構成を示す機能ブロック図である。
本実施形態のサービスレベル監視システム１のサービスレベル管理装置６００は、上記実施形態とは、単位換算定義をシステム構成情報に基づき生成する点で相違する。
【０２３８】
本実施形態のサービスレベル管理装置６００は、図３５に示すように、本実施形態のサービスレベル管理装置６００は、図３の上記実施形態のサービスレベル管理装置２００と同様な構成に加え、さらに、単位換算定義生成部６０２と、構成情報テーブル６１０と、を備える。
【０２３９】
なお、本実施形態のサービスレベル管理装置６００の構成は、図３のサービスレベル管理装置２００の構成だけでなく、上記実施形態の図１のサービスレベル管理装置１００、図２１のサービスレベル管理装置３００、図２７のサービスレベル管理装置４００、図３３のサービスレベル管理装置５００の構成にも適用できる。
【０２４０】
単位換算定義生成部６０２は、サービスレベル定義１１０および情報処理システムの構成情報（構成情報テーブル６１０に記憶）に基づき、単位換算定義テーブル記憶部１０８に記憶される時間定義１２０または空間定義１３０を生成する。
【０２４１】
構成情報テーブル６１０は、監視対象の情報処理システムの各ノードの構成情報を記録したものである。
図３６は、構成情報テーブル６１０の一例を示す。図３６を参照すると、構成情報テーブル６１０は、少なくとも１つのレコード６１５（図３６には、６１５ａ〜６１５ｄの４つのレコードを示す。以下、特に各レコードを区別する必要がない場合は、「６１５」と符号を付す）を含むことができる。それぞれのレコード６１５は、番号６１１、ＩＰアドレス６１２、サービスＩＤ６１３、またはソフトウェア名（図中、「ソフトウェア」と示す）６１４を含む。
なお、図３６の構成情報テーブル６１０の構成は一例であり、これに限定されるものではない。
【０２４２】
番号６１１は、監視対象システムに含まれるノードの番号を示す。ＩＰアドレス６１２は各ノードに割り振られたＩＰアドレスを示す。サービスＩＤ６１３は、各ノードを利用しているサービスのＩＤを示す。ソフトウェア名６１４は、各ノードにインストールされたソフトウェアの名称を示す。
【０２４３】
たとえば、図３６のレコード６１５ａの番号６１１が「１」のノードは、ＩＰアドレス「１２８．１６．１．１０１」を持ち、「ｓｅｒｖｉｃｅ００１＿ｅ＿ｃｏｍｍｅｒｃｅ」というサービスに所属し、かつ、「Ａｐａｃｈｅ」をインストールしていることを示す。なお、図３６では、ＩＰアドレスをＩＰｖ４で記述しているが、ＩＰｖ６あるいは、同様の性質を持ち、ノード単位で識別可能な名称情報などを用いて記述してもよい。
【０２４４】
たとえば、単位換算定義生成部６０２が、構成情報６１０に基づき各ノードを分類する場合、まずＩＰアドレスに基づき各ノードを分類する。図３６の例では、番号６１１が「１」〜「３」のノードのＩＰアドレスが「１２８．１６．１．＊＊＊」であるため、単位換算定義生成部６０２は、番号６１１が「１」〜「３」のノードは同一の「データセンタ」ないし同一のネットワークに属するクラスタ内部に存在すると判定する。ここで、「＊＊＊」は、任意の値（ただし、０〜２５６）であることを意味する。
【０２４５】
次に、単位換算定義生成部６０２は、サービスＩＤ６１３に基づき、各ノードを分類する。図３６の番号「１」〜番号「３」のノードのサービスＩＤ６１３は全て「ｓｅｒｖｉｃｅ００１＿ｅ＿ｃｏｍｍｅｒｃｅ」であるため、単位換算定義生成部６０２は、番号「１」〜番号「３」のノードが同一の「サービス」に属していると判定する。
【０２４６】
次に、単位換算定義生成部６０２は、ソフトウェア名に基づき、各ノードを分類する。たとえば、図３６のうち、番号６１１が「１」および「２」のソフトウェア名は「Ａｐａｃｈｅ」であるため、単位換算定義生成部６０２は、２つのノードが、同一の「層」に属すると判定する。なお、ソフトウェアと層の関係を事前に入力し、ノードが属する層を判定するように単位換算定義生成部６０２を構成してもよい。たとえば、単位換算定義生成部６０２が、「Ａｐａｃｈｅ」ならば「ＷＥＢ層」に属する、また、「ＭｙＳＱＬ」ならば「ＤＢ層」に属するなどと判定してもよい。
【０２４７】
単位換算定義生成部６０２は、サービスレベル定義１１０および構成情報６１０に基づき、時間定義１２０および空間定義１３０を生成し、単位換算定義テーブル記憶部１０８へ出力する。
【０２４８】
次に、図３７および図３８を参照して本実施の形態の動作について説明する。図３７および図３８は、本実施の形態の単位換算定義生成部６０２の動作を示すフローチャートである。
【０２４９】
まず、図３７のフローチャートを参照し、単位換算定義生成部６０２が時間定義１２０を出力する動作について説明する。
はじめに、単位換算定義生成部６０２は、図５のサービスレベル定義１１０を読み込む（ステップＳ６０１）。
次に、単位換算定義生成部６０２は、サービスレベル定義１１０の各レコード１１７から集計時間１１４に関する情報を収集する（ステップＳ６０３）。
たとえば、図５のサービスレベル定義１１０の場合、単位換算定義生成部６０２は、「１月」、または「１日」という情報を読み込む。
【０２５０】
次に、単位換算定義生成部６０２は、読み込んだ集計時間１１４から単位を判定する（ステップＳ６０５）。
たとえば、図５のサービスレベル定義１１０の場合、単位換算定義生成部６０２は、「月」、または「日」を単位と判定する。
【０２５１】
次に、単位換算定義生成部６０２は、事前に入力した情報に基づき、単位間の関係を算出する（ステップＳ６０７）。
たとえば、図５のサービスレベル定義１１０の場合、「１月」＝「３０日」と事前に定義しておくことで、関係が算出できる。また、時間定義１２０において、たとえば、単位換算定義生成部６０２が「半年」を「日」ないし「時間」の単位に変換する場合、「半年」＝「６か月」と事前に定義し、別途定義した「１月」＝「３０日」の情報に基づき「半年」＝「１８０日」と算出するよう単位換算定義生成部６０２を構成してもよい。
【０２５２】
次に、単位換算定義生成部６０２は、サービスレベル定義１１０より収集した集計時間１１４の単位および単位同士の関係を時間定義１２０として出力する（ステップＳ６０９）。なお、図６は、単位換算定義生成部６０２が出力する時間定義１２０の一例である。
以上のようにして、単位換算定義生成部６０２は、時間定義１２０を出力することができる。
【０２５３】
次に、図３８のフローチャートを参照し、単位換算定義生成部６０２が、空間定義１３０を出力する動作について説明する。
はじめに、単位換算定義生成部６０２は、構成情報６１０を読み込む（ステップＳ６１１）。
次に、単位換算定義生成部６０２は、構成情報６１０に記録された項目毎に各ノードを分類する。まず、単位換算定義生成部６０２は、ＩＰアドレスに基づき各ノードを分類する。次に、単位換算定義生成部６０２は、サービスＩＤ６１３に基づき、各ノードを分類する。次に、単位換算定義生成部６０２は、ソフトウェア名６１４に基づき、各ノードを分類する（ステップＳ６１３）。
【０２５４】
次に、単位換算定義生成部６０２は、ステップＳ６１３で分類した各ノードの情報に基づき、各分類項目の要素数を求める（ステップＳ６１５）。
たとえば、前記動作ステップの例を参照すると、単位換算定義生成部６０２は、構成情報６１０に基づき、ＩＰアドレスが「１２８．１６．１．＊＊＊」の空間に関し、所属するノードは３台であり、そのうち、サービスＩＤ６１３「ｓｅｒｖｉｃｅ００１＿ｅ＿ｃｏｍｍｅｒｃｅ」に所属するノードが３台、「ＡＰ層」に属するノードが２台、「ＤＢ層」に属するノードが１台であると分類する。ここで、「＊＊＊」は、任意の値（ただし、０〜２５６）であることを意味する。
【０２５５】
次に、単位換算定義生成部６０２は、前ステップまでにまとめた情報を空間定義１３０として出力する（ステップＳ６１７）。なお、図７は、単位換算定義生成部６０２が出力する空間定義１３０の一例である。
以上のようにして、単位換算定義生成部６０２は、空間定義１３０を出力することができる。
【０２５６】
以上説明したように、本発明の実施の形態に係るサービスレベル管理装置６００によれば、上記実施形態と同様な効果を奏するとともに、さらに、サービスレベル定義１１０および構成情報６１０に基づき、自動で時間定義１２０および空間定義１３０を出力できる。
その理由は、サービスレベル定義１１０および構成情報に基づき、単位換算定義生成部６０２が、時間定義１２０および空間定義１３０を出力するからである。
【０２５７】
以上、各実施形態および実施例を参照して本発明を説明したが、本発明は上記実施形態および実施例に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しえるさまざまな変更をすることができる。
【０２５８】
また、以上の各実施形態で説明した各構成要素は、必ずしも個々に独立した存在である必要はない。たとえば、各構成要素は、複数の構成要素が１個のモジュールとして実現されたり、１つの構成要素が複数のモジュールで実現されたりしてもよい。また、各構成要素は、ある構成要素が他の構成要素の一部であったり、ある構成要素の一部と他の構成要素の一部とが重複していたり、といったような構成であってもよい。
【０２５９】
さらに、以上説明した各実施形態における各構成要素および各構成要素を実現するモジュールは、必要に応じ可能であれば、ハードウェア的に実現されてもよいし、コンピュータおよびプログラムで実現されてもよいし、ハードウェア的なモジュールとコンピュータおよびプログラムとの混在により実現されてもよい。プログラムは、磁気ディスクや半導体メモリなど、不揮発性のコンピュータ可読記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られる。この読み取られたプログラムは、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施形態における構成要素として機能させる。
【０２６０】
また、以上説明した各実施形態では、複数の動作をフローチャートの形式で順番に記載してあるが、その記載の順番は複数の動作を実行する順番を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の順番は内容的に支障のない範囲で変更することができる。
【０２６１】
さらに、以上説明した各実施形態では、複数の動作は個々に相違するタイミングで実行されることに限定されない。たとえば、ある動作の実行中に他の動作が発生したり、ある動作と他の動作との実行タイミングが部分的に乃至全部において重複していたりしていてもよい。
【０２６２】
さらに、以上説明した各実施形態では、ある動作が他の動作の契機になるように記載しているが、その記載はある動作と他の動作の全ての関係を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の関係は内容的に支障のない範囲で変更することができる。また各構成要素の各動作の具体的な記載は、各構成要素の各動作を限定するものではない。このため、各構成要素の具体的な各動作は、各実施形態を実施する上で機能的、性能的、その他の特性に対して支障をきたさない範囲内で変更されてよい。
【０２６３】
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
【０２６４】
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
（付記１）
情報処理システムの満たすべき保証レベルであるサービスレベルを管理する管理装置におけるサービスレベル管理方法であって、
前記管理装置が、
前記サービスレベルの算出方法を定義した複数のサービスレベル定義を分析し、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義し、
前記情報処理システムの動作状態を監視した管理データを、定義した前記集約集計単位を用いて前記集計単位毎に集計して集計値を求め、
前記サービスレベルを定義した複数のサービスレベル定義に基づき、集計した前記集計単位毎の前記集計値に基づいて、複数の前記サービスレベル定義で定義されたサービスレベルを算出するサービスレベル管理方法。
（付記２）
付記１に記載のサービスレベル管理方法において、
前記管理装置が、前記集計単位が互いに上下関係にあるサービスレベル間では、前記サービスレベル定義で定義されている前記サービスレベルの中で最も上位の単位を前記集約集計単位として定義するサービスレベル管理方法。
（付記３）
付記１または付記２に記載のサービスレベル管理方法において、
前記管理装置が、前記集計単位が互いに包含関係にあるサービスレベル間では、前記サービスレベル定義で定義されている前記サービスレベルの中で最も内側となる最小の単位を前記集約集計単位として定義するサービスレベル管理方法。
（付記４）
付記１乃至付記３いずれかに記載のサービスレベル管理方法において、
前記管理装置が、
前記集約集計単位で定義した前記集計単位を用いて、複数の前記サービスレベル定義を単位換算するルールを定義し、
定義した前記ルールに従って、複数の前記サービスレベル定義を単位換算して前記サービスレベルを算出するサービスレベル管理方法。
（付記５）
付記１乃至付記４いずれかに記載のサービスレベル管理方法において、
前記管理装置が、
定義した前記集約集計単位を単位変数定義テーブルに記憶し、
前記単位変数定義テーブルを参照し、前記管理データを集計して集計値を求めるサービスレベル管理方法。
（付記６）
付記１乃至付記５いずれかに記載のサービスレベル管理方法において、
前記管理装置が、さらに、前記サービスレベル定義および前記情報処理システムの構成情報に基づき、前記単位換算定義テーブルを生成するサービスレベル管理方法。
【０２６５】
（付記７）
情報処理システムの満たすべき保証レベルであるサービスレベルを管理する管理装置を実現するコンピュータに、
前記サービスレベルの算出方法を定義した複数のサービスレベル定義を分析し、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義する手順、
前記情報処理システムの動作状態を監視した管理データを、定義した前記集約集計単位を用いて前記集計単位毎に集計して集計値を求める手順、
前記サービスレベルを定義した複数のサービスレベル定義に基づき、集計した前記集計単位毎の前記集計値に基づいて、複数の前記サービスレベル定義で定義された前記集計値からサービスレベルを算出する手順を実行させるためのプログラム。
（付記８）
付記７に記載のプログラムにおいて、
前記集計単位が互いに上下関係にあるサービスレベル間では、前記サービスレベル定義で定義されている前記サービスレベルの中で最も上位の単位を前記集約集計単位として定義する手順をコンピュータにさらに実行させるためのプログラム。
（付記９）
付記７または付記８に記載のプログラムにおいて、
前記集計単位が互いに包含関係にあるサービスレベル間では、前記サービスレベル定義で定義されている前記サービスレベルの中で最も内側となる最小の単位を前記集約集計単位として定義する手順をコンピュータにさらに実行させるためのプログラム。
（付記１０）
付記７乃至付記９いずれかに記載のプログラムにおいて、
前記集約集計単位で定義した前記集計単位を用いて、複数の前記サービスレベル定義を単位換算するルールを定義する手順、
定義した前記ルールに従って、複数の前記サービスレベル定義を単位換算して前記サービスレベルを算出する手順をコンピュータにさらに実行させるためのプログラム。
（付記１１）
付記７乃至付記１０いずれかに記載のプログラムにおいて、
定義した前記集約集計単位を単位変数定義テーブルに記憶する手順、
前記単位変数定義テーブルを参照し、前記管理データを集計して集計値を求める手順をコンピュータにさらに実行させるためのプログラム。
（付記１２）
付記７乃至付記１１いずれかに記載のプログラムにおいて、
前記サービスレベル定義および前記情報処理システムの構成情報に基づき、前記単位換算定義テーブルを生成する手順をコンピュータにさらに実行させるためのプログラム。
【０２６６】
（付記１３）
情報処理システムの満たすべき保証レベルであるサービスレベルを算出するサービスレベル管理装置を実現するコンピュータに、
前記サービスレベルの算出方法を定義した複数のサービスレベル定義を分析し、同じ属性で異なる集計単位を有する異なる複数のサービスレベルを、同一属性間で集計単位をまとめる集約集計単位を定義する手順、
定義した前記集約集計単位を出力する手順を実行させるためのプログラム。
（付記１４）
付記１３に記載のプログラムにおいて、
前記集計単位が互いに上下関係にあるサービスレベル間では、前記サービスレベル定義で定義されている前記サービスレベルの中で最も上位の単位を前記集約集計単位として定義する手順をコンピュータにさらに実行させるためのプログラム。
（付記１５）
付記１３または付記１４に記載のプログラムにおいて、
前記集計単位が互いに包含関係にあるサービスレベル間では、前記サービスレベル定義で定義されている前記サービスレベルの中で最も内側となる最小の単位を前記集約集計単位として定義する手順をコンピュータにさらに実行させるためのプログラム。
【０２６７】
この出願は、２０１２年１月１２日に出願された日本出願特願２０１２−００４３９８号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2013105174.tif 000003
【図２】
2013105174.tif 000004
【図３】
2013105174.tif 000005
【図４】
2013105174.tif 000006
【図５】
2013105174.tif 000007
【図６】
2013105174.tif 000008
【図７】
2013105174.tif 000009
【図８】
2013105174.tif 000010
【図９】
2013105174.tif 000011
【図１０】
2013105174.tif 000012
【図１１】
2013105174.tif 000013
【図１２】
2013105174.tif 000014
【図１３】
2013105174.tif 000015
【図１４】
2013105174.tif 000016
【図１５】
2013105174.tif 000017
【図１６】
2013105174.tif 000018
【図１７】
2013105174.tif 000019
【図１８】
2013105174.tif 000020
【図１９】
2013105174.tif 000021
【図２０】
2013105174.tif 000022
【図２１】
2013105174.tif 000023
【図２２】
2013105174.tif 000024
【図２３】
2013105174.tif 000025
【図２４】
2013105174.tif 000026
【図２５】
2013105174.tif 000027
【図２６】
2013105174.tif 000028
【図２７】
2013105174.tif 000029
【図２８】
2013105174.tif 000030
【図２９】
2013105174.tif 000031
【図３０】
2013105174.tif 000032
【図３１】
2013105174.tif 000033
【図３２】
2013105174.tif 000034
【図３３】
2013105174.tif 000035
【図３４】
2013105174.tif 000036
【図３５】
2013105174.tif 000037
【図３６】
2013105174.tif 000038
【図３７】
2013105174.tif 000039
【図３８】
2013105174.tif 000040
【国際調査報告】
2013105174.tif 000041
2013105174.tif 000042