(57)【要約】【課題】広域分散された複数のマシンで同一処理を実行する際の複数の処理の呼び出し関係を把握する。【解決手段】複数の処理を実行してサービスを提供するシステムにおいて複数の処理のそれぞれの処理が他の処理を呼び出すログ情報に基づき、複数の処理のうちの第１の処理が呼び出されてから第２の処理が最初に呼び出されるまでの時間間隔を算出し、第２の処理を複数のマシンに振り分ける負荷分散装置から複数のマシンが存在する拠点の識別情報と複数のマシンの拠点毎のマシン数を示す振分情報とを取得し、算出した前記時間間隔の分散により分類されるグループの数が識別情報から識別される拠点数と等しく、かつ、分類されるグループ毎の時間間隔の数の比率が拠点毎のマシン数の比率と等しいときに、第１の処理と第２の処理とが呼び出し関係にあると判定する処理をコンピュータが実行する性能分析方法が提供される。【選択図】図１２
2016167137.tif 000002
【特許請求の範囲】
【請求項１】
複数の処理を実行してサービスを提供するシステムにおいて、該複数の処理のそれぞれの処理が他の処理を呼び出す情報を含むログ情報に基づき、前記複数の処理のうちの第１の処理が呼び出されてから該複数の処理のうちの第２の処理が最初に呼び出されるまでの時間間隔を算出し、
前記第２の処理を複数のマシンに振り分ける負荷分散装置から該複数のマシンが存在する拠点の識別情報と、該複数のマシンの該拠点毎のマシン数を示す振分情報とを取得し、
算出した前記時間間隔の分散により分類されるグループの数が前記識別情報から識別される拠点数と等しく、かつ、前記分類されるグループ毎の時間間隔の数の比率が前記拠点毎のマシン数の比率と等しいときに、前記第１の処理と前記第２の処理とが呼び出し関係にあると判定する、
処理をコンピュータが実行する性能分析方法。
【請求項２】
前記分類されるグループ毎の時間間隔の平均値の差分に基づき、分類されるグループの所定の時間間隔を補正する、
請求項１に記載の性能分析方法。
【請求項３】
呼び出し関係にあると判定された前記第１の処理と前記第２の処理とが呼び出し関係にないと判定されたとき、前記識別情報から識別される全拠点のうちの２拠点の組み合わせのすべてに対して前記第１の処理と前記第２の処理とが呼び出し関係にあるかの判定を行う、
請求項１又は２に記載の性能分析方法。
【請求項４】
複数の処理を実行してサービスを提供するシステムにおいて、該複数の処理のそれぞれの処理が他の処理を呼び出す情報を含むログ情報に基づき、前記複数の処理のうちの第１の処理が呼び出されてから該複数の処理のうちの第２の処理が最初に呼び出されるまでの時間間隔を算出し、
前記第２の処理を複数のマシンに振り分ける負荷分散装置から該複数のマシンが存在する拠点の識別情報と、該複数のマシンの該拠点毎のマシン数を示す振分情報とを取得し、
算出した前記時間間隔の分散により分類されるグループの数が前記識別情報から識別される拠点数と等しく、かつ、前記分類されるグループ毎の時間間隔の数の比率が前記拠点毎のマシン数の比率と等しいときに、前記第１の処理と前記第２の処理とが呼び出し関係にあると判定する、
処理をコンピュータに実行させるための性能分析プログラム。
【請求項５】
複数の処理を実行してサービスを提供するシステムにおいて、該複数の処理のそれぞれの処理が他の処理を呼び出す情報を含むログ情報に基づき、前記複数の処理のうちの第１の処理が呼び出されてから該複数の処理のうちの第２の処理が最初に呼び出されるまでの時間間隔を算出する時間間隔算出部と、
前記第２の処理を複数のマシンに振り分ける負荷分散装置から該複数のマシンが存在する拠点の識別情報と、該複数のマシンの該拠点毎のマシン数を示す振分情報とを取得する保持情報取得部と、
算出した前記時間間隔の分散により分類されるグループの数が前記識別情報から識別される拠点数と等しく、かつ、前記分類されるグループ毎の時間間隔の数の比率が前記拠点毎のマシン数の比率と等しいときに、前記第１の処理と前記第２の処理とが呼び出し関係にあると判定する判定部と、
を有する性能分析装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、性能分析方法、性能分析プログラム及び性能分析装置に関する。
【背景技術】
【０００２】
ウェブサーバ、アプリケーションサーバ、データベースサーバ等のマシン上でコンポーネントのプログラムが動作し、コンポーネントが持つ多種のアプリケーションを処理することで所定のサービスを提供するシステムが知られている。また、当該システムにおいて負荷分散装置の制御によりネットワーク上の複数のマシンで同一処理を分散処理することが知られている。かかる構成のシステムの性能を解析するために、例えばネットワーク上の各サービスが相互に依存する関係を検出し、解析する解析システムが提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−１９０２７７号公報
【特許文献２】特開２００３−１８６８３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記解析システムでは、上記複数のマシンが地理的に分散（以下、「広域分散」ともいう。）して配置されている場合に顕在化するネットワークの距離に応じた伝搬遅延やネットワークの負荷に応じた遅延を考慮していない。このため、上記解析システムでは、複数のアプリケーション（以下、「ＡＰＩ」ともいう。）の呼び出し関係を誤って判定し、解析に影響を及ぼす場合がある。
【０００５】
また、同一処理を行う複数のマシンを処理の負荷状況に応じて動的に変化させることが可能なシステムでは、解析時点で使用されているマシンを把握して伝播遅延等を把握し、複数のＡＰＩの呼び出し関係を解析することが好ましい。
【０００６】
そこで、一側面では、本発明は、広域分散された複数のマシンで同一処理を実行する際の複数の処理の呼び出し関係を把握することを目的とする。
【課題を解決するための手段】
【０００７】
一つの案では、複数の処理を実行してサービスを提供するシステムにおいて、該複数の処理のそれぞれの処理が他の処理を呼び出す情報を含むログ情報に基づき、前記複数の処理のうちの第１の処理が呼び出されてから該複数の処理のうちの第２の処理が最初に呼び出されるまでの時間間隔を算出し、前記第２の処理を複数のマシンに振り分ける負荷分散装置から該複数のマシンが存在する拠点の識別情報と、該複数のマシンの該拠点毎のマシン数を示す振分情報とを取得し、算出した前記時間間隔の分散により分類されるグループの数が前記識別情報から識別される拠点数と等しく、かつ、前記分類されるグループ毎の時間間隔の数の比率が前記拠点毎のマシン数の比率と等しいときに、前記第１の処理と前記第２の処理とが呼び出し関係にあると判定する、処理をコンピュータが実行する性能分析方法が提供される。
【発明の効果】
【０００８】
一側面によれば、広域分散された複数のマシンで同一処理を実行する際の複数の処理の呼び出し関係を把握することができる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態にかかる広域分散システムの一例を示す図。
【図２】複数のコンポーネントのログファイルの一例を示す図。
【図３】広域分散システムの性能を計測する機器の一例を示す図。
【図４】複数のコンポーネントのアプリの呼び出し関係の有無を説明するための図。
【図５】広域分散システムにおけるアプリの呼び出し関係の有無を説明するための図。
【図６】一実施形態にかかる広域分散システムの機能構成の一例を示す図。
【図７】一実施形態にかかるコンポーネントログＤＢの一例を示す図。
【図８】一実施形態にかかる呼び出し間隔ＤＢの一例を示す図。
【図９】一実施形態にかかるロードバランサ保持情報ＤＢの一例を示す図。
【図１０】一実施形態にかかる呼び出し関係ＤＢの一例を示す図。
【図１１】一実施形態にかかる情報収集処理の一例を示すフローチャート。
【図１２】第１実施形態にかかる性能評価処理の一例を示すフローチャート。
【図１３】第１実施形態にかかる呼び出し時間間隔の算出の一例を示す図。
【図１４】第１実施形態にかかる性能評価の一例を示す図。
【図１５】第１実施形態にかかる性能評価を説明するための図。
【図１６】第２実施形態にかかる性能評価処理の一例を示すフローチャート。
【図１７】第２実施形態にかかる性能評価の一例を示す図。
【図１８】第２実施形態にかかる性能評価を説明するための図。
【図１９】一実施形態にかかる性能分析装置のハードウェア構成例を示す図。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
【００１１】
［広域分散システムの全体構成］
まず、本発明の一実施形態に係る広域分散システム１の全体構成について、図１を参照しながら説明する。一実施形態に係る広域分散システム１は、自社の拠点間やデータセンタ間等、地理的に分散した拠点間に跨って同一処理を分散処理するシステムである。例えば、図１では、地理的に分散した拠点Ａ及び拠点Ｂに跨って仮想マシン（以下、「ＶＭ（Virtual Machine）」ともいう。）６０ａ〜６０ｃが同一処理を分散処理する。具体的には、広域分散システム１は、システムインタフェース（システムＩ／Ｆ）に接続可能な複数のコンポーネントＡ，Ｂ，Ｃを有し、ＶＭ６０ａ、６０ｂは、拠点ＡのデータセンタにおいてコンポーネントＢのプログラムを実行し、ＶＭ６０ｃは、拠点Ｂの本社においてコンポーネントＢのプログラム（拠点ＡのコンポーネントＢと同一処理）を実行する。同一処理を行うＶＭは、ロードバランサ３０により管理されている。ロードバランサ３０は、処理の負荷に応じて同一処理を分散処理する複数のＶＭを動的に制御する負荷分散装置の一例である。図１では、コンポーネントＢのプログラムを実行するＶＭ６０ａ〜６０ｃのうち拠点ＡのＶＭ６０ａ、６０ｂはネットワーク５０を介して接続されている。拠点ＢのＶＭ６０ｃはＷＡＮ（Wide Area Network）を含むネットワーク４０を介して接続されている。
【００１２】
なお、ＶＭ６０ｄは、拠点ＡのデータセンタにおいてコンポーネントＡのプログラムを実行し、コンポーネントＡの持つ多種のＡＰＩを処理する。ＶＭ６０ｅは、拠点Ｂの本社においてコンポーネントＣのプログラムを実行し、コンポーネントＣの持つ多種のＡＰＩを処理する。また、ＶＭ６０ａ〜６０ｃは、ウェブサーバ、アプリケーションサーバ、データベースサーバ等のマシンを仮想化し、同一処理を行う複数のマシンの一例である。
【００１３】
性能分析装置１００は、ユーザからの要求に応じて広域分散システム１の応答性能を分析し、分析結果をユーザに提示する。性能分析装置１００は、システムインタフェースのログＤＢ、コンポーネントＡ〜ＣのそれぞれのＡＰＩログＤＢからシステムＩ／Ｆ呼び出しログ情報及び各コンポーネントのＡＰＩ呼び出しログ情報を取得する。また、性能分析装置１００は、ロードバランサ３０から振り分け先のＶＭや拠点に関する情報を取得する。コンポーネントＡ〜ＣのＡＰＩログＤＢには、コンポーネントＡ〜Ｃの各ＡＰＩが呼び出された際のログ情報が記録される。システムＩ／ＦログＤＢには、システムＩ／Ｆが呼び出された際のログ情報が記録される。
【００１４】
性能分析装置１００は、複数の拠点に跨って同一処理が実行される広域分散システム１のシステムテストにおいて性能分析を行う。システムテスト中であるため、性能分析装置１００は、予想外のシステム負荷は発生しない環境で性能分析を行う。性能分析装置１００は、ユーザが性能評価を要求したシステムＩ／Ｆを介して呼び出される複数のコンポーネントのＡＰＩの呼び出し関係の判定及び呼び出し関係があると判定された場合の呼び出し時間間隔の平均値（以下、「平均時間間隔」ともいう。）を算出する。平均時間間隔は、広域分散システム１のシステムテストにおける性能分析結果の一例である。コンポーネントＡ〜Ｃは、ＯＳＳ（Open Source Software）やパッケージ化されたソフトウエアであってもよい。
【００１５】
なお、広域分散システム１は、地理的に分離された複数拠点に配置されたマシンで同一処理を分散処理するシステムであればよく、拠点数は２つに限られない。また、各拠点に配置されたマシンは、パブリッククラウド上にあってもよく、プライベートクラウド上にあってもよい。
【００１６】
同様に、性能分析装置１００は、パブリッククラウド上にあってもよく、プライベートクラウド上にあってもよい。また、性能分析装置１００は、コンポーネントＡ〜ＣのＡＰＩログＤＢ及びシステムＩ／ＦログＤＢに記憶されたログ情報を取得でき、かつ、ロードバランサ３０が設定するＶＭ等の設定情報（以下、「ロードバランサ保持情報」ともいう。）を取得できる位置に配置されればよく、複数個所に分散して配置されてもよい。
【００１７】
［応答性能］
システムＩ／Ｆが呼び出されたときのシステムＩ／Ｆ及び各コンポーネントＡ〜ＣのＡＰＩの呼び出し関係から各コンポーネントＡ〜Ｃの応答性能を分析することができる。図２には、システムＩ／ＦログＤＢ、コンポーネントＡ〜ＣのＡＰＩログＤＢにそれぞれ記憶されているログ情報の一例が示されている。取得したログには、複数のシステムＩ／Ｆの呼び出し（例えば、ｉｆ−１、ｉｆ−２、ｉｆ−３・・・のログ情報で示される各呼び出し）に対応する各コンポーネントのログ情報が混ざっている。よって、各システムＩ／Ｆから呼び出されたコンポーネントのログ情報がどれかは、システムＩ／ＦログＤＢ及び各コンポーネントのＡＰＩログＤＢのログ情報だけでは把握できない。つまり、システムＩ／Ｆの呼び出し毎に各コンポーネントのＡＰＩの呼び出し関係を調べてシステムＩ／Ｆの呼び出し毎にログ情報を分離する必要がある。
【００１８】
ここで、図３に示すように、ＷＡＮを含むネットワーク４０上に２つの計測装置７０を設置し、各計測装置７０にてパケットをキャプチャした時刻の差分からパケットにどのくらい遅延が生じているかを判定することが考えられる。しかしながら、広域分散システム１がパブリッククラウドで構築されている場合、パブリッククラウドのネットワーク上のどの位置に計測装置７０を配置すべきかを特定することは困難である。また、ロードバランサ３０は、各コンポーネントのＡＰＩの処理の負荷の程度に応じてＶＭ数を動的に変える。このため、動的に変わるＶＭに接続されたネットワーク上のどの位置に計測装置７０を配置すべきかを特定することは困難である。
【００１９】
そこで、本実施形態にかかる性能分析装置１００は、一のコンポーネントのＡＰＩが呼び出されてから他のコンポーネントのＡＰＩが最初に呼び出されるまでの時間間隔を算出する。そして、性能分析装置１００は、時間間隔の分散からグルーピングした数（分類されるグループの数）と拠点数とを比較し、かつグルーピングされた時間間隔の数（分類されるグループ毎の時間間隔の数）の比率と拠点毎のマシン数の比率とを比較する。これにより、性能分析装置１００は、呼び出し関係の有無を判定する。判定結果に基づき図２に示すシステムＩ／Ｆの呼び出し毎に各コンポーネントのＡＰＩログＤＢからログ情報を分離する。
【００２０】
例えば、図４の（ａ）に示すＡＰＩの呼び出しを例に挙げて呼び出し関係について説明する。コンポーネントＡのＡＰＩが呼び出されたとき、コンポーネントＡのＡＰＩログＤＢにログ情報が記憶される。また、コンポーネントＡからコンポーネントＢのＡＰＩが呼び出されたとき、コンポーネントＢのログＤＢにログ情報が記憶される。コンポーネントＡのＡＰＩが呼び出された時刻とコンポーネントＢのＡＰＩが呼び出された時刻の差分が呼び出し時間間隔である。
【００２１】
コンポーネントＡのＡＰＩの後に呼び出される確率が１００％のコンポーネントＢのＡＰＩは、呼び出し関係にある。コンポーネントＡのＡＰＩの後に呼び出される確率が０％のコンポーネントＢのＡＰＩは、呼び出し関係にない。これに対して、コンポーネントＡのＡＰＩの後に呼び出される確率がｘ％（１００＞ｘ＞０）のコンポーネントＢのＡＰＩは、下記判定に基づいて呼び出し関係が定められる。
【００２２】
コンポーネントＡのＡＰＩが呼ばれてからコンポーネントＢのＡＰＩが呼ばれるまでの時間間隔の分散が所定の閾値（例えば、数ｍｓ程度）以下であれば、呼び出し関係にある（図４の（ｂ）参照）。コンポーネントＡのＡＰＩが呼ばれてからコンポーネントＢのＡＰＩが呼ばれるまでの時間間隔の分散が所定の閾値よりも大きければ、呼び出し関係にない（図４の（ｃ）参照）。
【００２３】
ところが、同一処理を拠点Ａ及び拠点Ｂというように地理的に分散して配置されたＶＭで処理する場合、図１に示すように異なるネットワーク４０、５０を経由してデータが伝搬される。このため、ＡＰＩの呼び出し時間間隔が、ネットワークの距離に応じた伝搬遅延やネットワークの負荷に応じた遅延（例えば、ルータの処理による遅延）の影響を受ける。これらの遅延の影響を考慮しない場合、性能分析装置１００は、図５の（ａ）に示すように遅延の影響が小さい場合、呼び出し関係があると正しく判定できる。一方、図５の（ｂ）に示すように遅延の影響が大きい場合、実際には呼び出し関係にあるＡＰＩ同士を伝搬遅延の影響で呼び出し関係にないと誤って判定してしまう。このように広域分散システム１では、ロードバランサ３０が処理を振り分けるＶＭ（コンポーネントの実体）が地理的に分離した複数の拠点に跨っているため、ネットワークの距離に応じた伝搬遅延やネットワークの負荷に応じた遅延に差が生じる。そこで、以下に説明する一実施形態にかかる性能分析装置１００は、広域分散システム１における伝搬遅延等を考慮を除去してシステムＩ／Ｆに対する各コンポーネントのＡＰＩの呼び出し関係を分析し、各コンポーネントの応答性能の分析を行う。
【００２４】
［性能分析装置１００の機能構成］
本実施形態にかかる性能分析装置１００の機能構成の一例について、図６を参照しながら説明する。なお、以下の説明では、システムＩ／Ｆ呼び出しのログ情報と各コンポーネントのＡＰＩ呼び出しのログ情報とを同列に扱う。よって、以下で説明するコンポーネントのＡＰＩの呼び出し関係を分析する例には、システムＩ／Ｆの呼び出しを含めたＡＰＩの呼び出し関係の分析が含まれる。
【００２５】
性能分析装置１００は、通信部１０、ログ情報取得部１１、コンポーネントログＤＢ１２、呼び出し時間間隔算出部１３、呼び出し間隔ＤＢ１４、計測要求受付部１５、ロードバランサ保持情報取得部１６、ロードバランサ保持情報ＤＢ１７、提示要求受付部１８、呼び出し関係判定部１９、呼び出し関係ＤＢ２０、応答性能算出部２１、応答性能情報ＤＢ２２及び出力部２３を有する。
【００２６】
通信部１０は、システムＩ／ＦログＤＢ及び各コンポーネントＡ〜ＣのＡＰＩログＤＢからログ情報を受信する。通信部１０は、ロードバランサ３０が管理するＶＭに関する情報を含むロードバランサ保持情報を受信する。
【００２７】
ログ情報取得部１１は、受信したログ情報を取得し、コンポーネントログＤＢ１２に記憶する。図７は、コンポーネントログＤＢ１２の一例を示す。コンポーネントログＤＢ１２は、各コンポーネントのログ情報として、ログ情報を識別するためのＩＤ１２１、コンポーネント１２２、ＡＰＩ名１２３及びログ情報を取得した時刻情報１２４を記憶する。このようにして広域分散システム１において複数のコンポーネントのＡＰＩを実行してサービスを提供する際、複数のＡＰＩのそれぞれの処理が他の処理を呼び出すときのログ情報が収集される。
【００２８】
呼び出し時間間隔算出部１３は、上記のログ情報に基づき、複数のＡＰＩのうちの第１のＡＰＩが呼び出されてから該複数のＡＰＩ処理のうちの第２のＡＰＩが最初に呼び出されるまでの時間間隔を算出し、呼び出し間隔ＤＢ１４に記憶する。図４の（ａ）の例では、コンポーネントＡのＡＰＩが第１のＡＰＩ（第１の処理）の一例であり、コンポーネントＢのＡＰＩが第２のＡＰＩ（第２の処理）の一例である。「第２の処理が最初に呼び出される」としたのは、コンポーネントＢのＡＰＩがコンポーネントＡのＡＰＩから２回以上呼び出される場合に最初の呼び出されたときの時間間隔を算出するためである。
【００２９】
図８は、呼び出し間隔ＤＢ１４の一例を示す。呼び出し間隔ＤＢ１４は、第１のＡＰＩと第２のＡＰＩとの組み合わせを示すログＩＤペア１４１、第１のＡＰＩと第２のＡＰＩのＡＰＩ名ペア１４２及び呼び出し時間間隔１４３を記憶する。
【００３０】
計測要求受付部１５は、ユーザから応答性能の計測要求を受け付ける。ロードバランサ保持情報取得部１６は、ロードバランサ３０が振り分けたＶＭ数等のロードバランサ保持情報を取得し、ロードバランサ保持情報ＤＢ１７に保存する。ロードバランサ３０は、処理の負荷に応じて同一処理を分散処理する複数のＶＭを動的に制御する。よって、ロードバランサ保持情報取得部１６は、動的に変更されるロードバランサ保持情報を所定のタイミングで取得する。
【００３１】
図９は、ロードバランサ保持情報ＤＢ１７の一例を示す。ロードバランサ保持情報ＤＢ１７は、ロードバランサ保持情報の一例として振り分けたＶＭが存在する拠点名１７１、振り分けたＶＭ数１７２及び振り分けアルゴリズム１７３を記憶する。拠点名１７１は、複数のマシンが存在する拠点の識別情報の一例である。ＶＭ数１７２は、複数のマシンの拠点毎のマシン数を示す振分情報の一例である。
【００３２】
振り分けアルゴリズム１７３は、ロードバランサ３０が振り分け先のＶＭにデータを振り分ける際に使用するアルゴリズムの一例である。なお、振り分けアルゴリズム１７３が「ラウンドロビン」の場合、ロードバランサ３０は、ＶＭ数に応じてデータを振り分ける。例えば、図１の例では、拠点Ａのデータセンタと拠点Ｂの本社のＶＭ数の比率は、２対１である。よって、ロードバランサ３０は、「ラウンドロビン」のアルゴリズムを用いて拠点Ａと拠点Ｂとのロードの負荷の比率を２対１にするように各ＶＭにデータを振り分ける。
【００３３】
提示要求受付部１８は、ユーザからの応答性能の提示要求を受け付ける。呼び出し関係判定部１９は、時間間隔の分散によりグルーピングする数が拠点名１７１から識別される拠点数と等しく、かつ各グループに属する時間間隔の数の比率が拠点毎のＶＭ数の比率と等しいときに該当ＡＰＩペアが呼び出し関係にあると判定する。
【００３４】
呼び出し関係ＤＢ２０は、呼び出し関係があるＡＰＩペアを記憶する。図１０は、呼び出し関係ＤＢ２０の一例を示す。呼び出し関係ＤＢ２０には、ＡＰＩ名ペアリスト２０１及び判定結果（例えば、補正後の平均時間間隔２０２）が記憶される。判定結果には、呼び出し関係の有無のみが記憶されてもよい。
【００３５】
応答性能算出部２１は、グルーピングされた平均時間間隔の差分に基づき、伝搬遅延の影響を受けているグループの時間間隔を補正し、補正後の平均時間間隔を算出する。算出した補正後の平均時間間隔は、応答性能情報ＤＢ２２に記憶してもよいし、図１０に示すように呼び出し関係ＤＢ２０に記憶してもよい。出力部２３は、ＡＰＩペア毎の呼び出し関係の有無と呼び出し関係があるときの補正後の平均時間間隔をユーザに提示する。例えば、ＡＰＩペア毎の補正後の平均時間間隔をディスプレイに表示してもよいし、紙媒体に出力してもよい。
＜第１実施形態＞
［情報収集処理］
次に、本発明の第１実施形態に係る情報収集処理について図１１を参照して説明する。図１１は、情報収集処理の一例を示したフローチャートである。本実施形態にかかる情報収集処理は、通信部１０がユーザから応答性能の計測要求を受信したことに応じて開始される。
【００３６】
まず、ログ情報取得部１１は、各コンポーネントにログ情報を要求し（ステップＳ１０）、ロードバランサ保持情報取得部１６は、ロードバランサ３０にロードバランサ保持情報を要求する（ステップＳ１２）。
【００３７】
次に、ログ情報取得部１１は、各コンポーネントから応答があったかを判定する（ステップＳ１４）。ログ情報取得部１１は、各コンポーネントから応答があったと判定した場合、取得した各コンポーネントのログ情報をコンポーネントログＤＢ１２に記憶する（ステップＳ１６）。一定時間待機後（ステップＳ１８）、ステップＳ１０に戻り、ステップＳ１０以降の処理が繰り返される。
【００３８】
ステップＳ１４にて各コンポーネントから応答がなかったと判定された場合、又は、ステップＳ１２にてロードバランサ保持情報が要求された後、ロードバランサ保持情報取得部１６は、ロードバランサ３０から応答があったかを判定する（ステップＳ２０）。ロードバランサ保持情報取得部１６は、ロードバランサ３０から応答があったと判定した場合、取得したロードバランサ保持情報をロードバランサ保持情報ＤＢ１７に記憶する（ステップＳ２２）。一定時間待機後（ステップＳ１８）、ステップＳ１２に戻り、ステップＳ１２以降の処理が繰り返される。
【００３９】
一方、ロードバランサ保持情報取得部１６は、ステップＳ２０にてロードバランサ３０から応答がなかったと判定した場合、警告を表示する等のエラー処理を行い（ステップＳ２４）、本処理を終了する。
【００４０】
［性能評価処理］
次に、本実施形態に係る性能評価処理について図１２を参照して説明する。図１２は、第１実施形態に係る性能評価処理の一例を示したフローチャートである。本実施形態にかかる性能評価処理は、通信部１０がユーザから応答性能の提示要求を受信したことに応じて開始される。なお、本処理の開始前に、呼び出し時間間隔算出部１３は、収集されたログ情報から時間間隔１４３を算出し、算出された時間間隔１４３を呼び出し間隔ＤＢ１４に記憶している。
【００４１】
まず、呼び出し関係判定部１９は、性能評価の要求対象のシステムＩ／Ｆについて、あるＡＰＩペアの呼び出し時間間隔の分散が所定の閾値以下になるように時間間隔のグルーピングを行う（ステップＳ３０）。例えば、取得したＡＰＩの呼び出し時間間隔のバラツキが閾値（例えば、数ｍｓ）以下になる時間間隔の集団になるようにグルーピングが実行されてもよい。
【００４２】
具体的には、図１３の上図に示すコンポーネントログＤＢ１２には、ＩＤ１２１毎にＡＰＩ名１２３で示されるＡＰＩ毎の呼び出し時刻情報１２４が記憶されている。よって、コンポーネントログＤＢ１２に記憶された時刻情報１２４からＡＰＩペアの時間間隔が算出される（図１３の「１」）。図１３の下図に示す呼出し間隔ＤＢには、ログＩＤペア１４１毎にＡＰＩ名ペア１４２で示されるＡＰＩペアの呼び出し時間間隔１４３が記憶されている。そこで、呼び出し関係判定部１９は、呼出し間隔ＤＢから同一ＡＰＩ名のＡＰＩペアの呼び出し時間間隔１４３を抽出する（図１３の「２」）。呼び出し関係判定部１９は、抽出した時間間隔の分散により時間間隔をグルーピングしてグループ毎の平均時間間隔を算出する。
【００４３】
例えば、図１４の（ａ）に示すように、抽出した時間間隔のうち０．１０９〜０．１１３に含まれる２０個のサンプルの時間間隔の分散が所定の閾値以下であるため、これらの時間間隔はグルーピングされる。そのときの平均時間間隔は、２０個のサンプルの平均時間間隔「０．１１１」となる。同様に、抽出した時間間隔のうち２０．１０９〜２０．１１３に含まれる１０個のサンプルの時間間隔の分散が所定の閾値以下であるため、これらの時間間隔はグルーピングされる。そのときの平均時間間隔は、１０個のサンプルの平均時間間隔「２０．１１１」となる（図１４の「３」）。
【００４４】
図１２に戻り、次に、呼び出し関係判定部１９は、ロードバランサ保持情報ＤＢ１７から拠点数１７１を取得する（ステップＳ３２）。次に、呼び出し関係判定部１９は、グルーピングした数が、取得した拠点数と等しいかを判定する（ステップＳ３４）。呼び出し関係判定部１９は、グルーピングした数が取得した拠点数と等しくないと判定した場合、ステップＳ４６に進む。一方、呼び出し関係判定部１９はグルーピングした数が取得した拠点数と等しいと判定した場合、ロードバランサ保持情報ＤＢ１７からＶＭ数１７２と振り分けアルゴリズム１７３とを取得する（ステップＳ３６）。
【００４５】
次に、呼び出し関係判定部１９は、ロードバランサ３０の振り分け比率を算出する（ステップＳ３８）。次に、呼び出し関係判定部１９は、各グループのサンプル数の比率と振り分け比率とが一致するかを判定する（ステップＳ４０）。呼び出し関係判定部１９は各グループのサンプル数の比率と振り分け比率とが一致しないと判定した場合、ステップＳ４６に進む。一方、呼び出し関係判定部１９は各グループのサンプル数の比率と振り分け比率とが一致すると判定した場合、該当ＡＰＩペアを呼び出し関係ありと判定し、呼び出し関係ＤＢ２０に該当ＡＰＩペアの情報を追加する（ステップＳ４２）。
【００４６】
図１４の（ａ）では、グルーピングした数が「２」であり、拠点名１７１が示す拠点数「２」と等しい（図１４の「４」）。そこで、呼び出し関係判定部１９は、取得したＶＭ数１７２から振り分け比率を算出し、サンプル数の比率と比較する（図１４の「５」）。この例では、ＶＭ数１７２から算出される振り分け比率は２対１、サンプル数の比率は２対１であり等しい。そこで、呼び出し関係判定部１９は該当ＡＰＩペアを呼び出し関係ありと判定し、呼び出し関係ＤＢ２０に該当ＡＰＩ名ペアリスト２０１の情報を追加する（図１４の「６」）。
【００４７】
図１２に戻り、呼び出し関係判定部１９は、判定結果の一例として伝搬遅延を除いた補正後の平均時間間隔２０２を呼び出し関係ＤＢ２０に保存する（ステップＳ４４）。なお、応答性能算出部２１がグルーピングされた平均時間間隔の差分に基づき、伝搬遅延の影響を受けているグループの時間間隔を補正し、補正後の平均時間間隔を算出する。
【００４８】
次に、呼び出し関係判定部１９は、ＡＰＩペアのすべての呼び出し関係の判定を行ったかを判定する（ステップＳ４６）。呼び出し関係判定部１９は、ＡＰＩペアのすべての呼び出し関係の判定を行っていないと判定した場合、ステップＳ３０に戻り、他のＡＰＩペアについてステップＳ３０〜Ｓ４６の処理を行う。
【００４９】
呼び出し関係判定部１９は、ＡＰＩペアのすべての呼び出し関係の判定を行ったと判定した場合、応答性能算出部２１は、呼び出し関係ＤＢ２０に記憶した各ＡＰＩペアの平均時間間隔２０２から応答性能を計算する（ステップＳ４８）。出力部２３は、計算した応答性能を表示し（ステップＳ５０）、本処理を終了する。応答性能は、応答性能情報ＤＢ２２に格納されてもよい。
【００５０】
本実施形態では、性能分析装置１００は、グループ毎のサンプル数とロードバランサ３０の持つＶＭ数とから伝搬遅延の影響を除去する処理を行う。グループ毎のサンプル数に基づきグループ毎のバラツキが示す傾向が、ロードバランサ３０の持つ各拠点のＶＭ数と一致するかを判断することで伝搬遅延の影響か否かを判断できる。この結果、伝搬遅延の影響であると判断された場合、影響を受けていないグループの時間間隔のログ情報と影響を受けているグループの時間間隔のログ情報との差分に基づき、影響を受けているグループの時間間隔を補正することで伝搬遅延の影響を除去できる。これにより、本実施形態にかかる性能分析装置１００では、計測装置７０を設置することなく、伝搬遅延の影響を除去した正しい呼び出し関係を判定することができる。
【００５１】
例えば、図１４の（ａ）に示す時間間隔、サンプル数及び平均時間間隔から伝搬遅延の影響を除去することなく、平均時間間隔及び分散を算出すると以下の結果となる。
平均時間間隔＝（０．１１１×２０＋２０．１１１×１０）／３０＝６．７７８
分散＝｛（０．１１１−６．７７８）２×２０＋（２０．１１１−６．７７８）２×１０｝／３０＝８８．８８９
この結果、呼び出し関係判定部１９は、分散値が予め定められた閾値よりも大きいために呼び出し関係にないと判定する。この判定は、伝搬遅延の影響を除去しなかったために生じる誤判定の一例である。
【００５２】
一方、本実施形態にかかる性能分析方法によれば、図１５に示すように時間間隔の分散によりグルーピングした数「２」が拠点数「２」に等しく、かつグループＧ１、Ｇ２のサンプル数の比率「２：１」が振分先のＶＭ数の比率「２：１」と一致するかが判定される。そして、上記二つの条件が満たされると判定された場合、ＡＰＩペアは呼び出し関係にあると判定される。一方、上記二つの条件のいずれかが満たされないと判定された場合、ＡＰＩペアは呼び出し関係にないと判定される。
【００５３】
本実施形態にかかる性能分析装置１００では、地理的に分散したＶＭにより同一処理を分散処理する際に現れる特徴（例えば、図１の拠点Ａ、Ｂ間のＷＡＮ４０を含むネットワークを介した広域網越えの伝搬遅延)に基づき、ログ情報から算出された時間間隔をグルーピングする。性能分析装置１００は、グルーピングした数とロードバランサ３０の持つ拠点数とが一致した場合、伝搬遅延及びネットワークの負荷による遅延の影響を受けていると判断する。
【００５４】
この場合、図１５に示すように、各グループＧ１、Ｇ２の平均時間間隔ｙ、ｘをそれぞれ計算し、平均時間間隔の差分（ｘ−ｙ）を伝搬遅延の影響とする。そして、遅延の影響を受けているグループＧ２の平均時間間隔ｘから差分（ｘ−ｙ）を除算した後の平均時間間隔とグループＧ１の平均時間間隔との平均値が補正後の平均時間間隔として算出される。算出された補正後の平均時間間隔は、呼び出し関係ＤＢ２０の判定結果に保存する。これにより、振り分け先の拠点数や各拠点のＶＭ数が動的に変化する状況において、伝搬遅延の影響を排除し、システムの応答性能について正しい評価を行うことができる。
【００５５】
以上に説明したように、第１実施形態に係る性能分析装置１００によれば、例えば、パブリッククラウドを含む広域分散システム１のように拠点間の伝搬遅延がわからない場合においても各コンポーネントの応答性能を把握することができる。
【００５６】
また、本実施形態に係る性能分析装置１００によれば、ロードバランサ３０が保持している情報と各コンポーネントが記録するログ情報に基づき広域分散システム１の応答性能を正しく判定することができる。
【００５７】
なお、呼び出し関係ＤＢ２０に基づき複数のＡＰＩペアを連結すれば、ＡＰＩが３つ以上のＡＰＩの呼び出し関係も把握することができる。
＜第２実施形態＞
第１実施形態に係る性能分析方法では、振り分け先の拠点間の距離に応じて発生する伝搬遅延の差が小さい場合に呼び出し関係の判定が難しい場合がある。そこで、第２実施形態に係る性能分析方法では、振り分け先の各拠点が負荷状況に応じて増減する場合において、呼び出し関係の判定処理を時系列でみた場合の特性を用いてＡＰＩ呼び出し関係を判定する。これにより、拠点間の伝搬遅延の差が小さい場合においてもＡＰＩ呼び出し関係の誤判定を回避することができる。
【００５８】
［性能評価処理］
本発明の第２実施形態に係る性能評価処理について図１６を参照して説明する。図１６は、第２実施形態に係る性能評価処理の一例を示したフローチャートである。本実施形態にかかる性能評価処理は、通信部１０がユーザからの応答性能の提示要求を受信（複数回目の受信）したことに応じて開始される。
【００５９】
まず、呼び出し関係判定部１９は、性能評価の要求対象のシステムＩ／Ｆについて、あるＡＰＩペアの呼び出し時間間隔の分散により時間間隔のグルーピングを行う（ステップＳ６０）。
【００６０】
次に、ロードバランサ保持情報取得部１６は、ロードバランサ保持情報ＤＢ１７から拠点数１７１を取得する（ステップＳ６２）。次に、呼び出し関係判定部１９は、グルーピングした数が、取得した拠点数と等しいかを判定する（ステップＳ６４）。
【００６１】
呼び出し関係判定部１９は、グルーピングした数が取得した拠点数と等しくないと判定した場合、呼び出し関係判定部１９は、以前に対象のＡＰＩペアが呼び出し関係にあると判定されていたかを判定する（ステップＳ８２）。呼び出し関係判定部１９は、以前に呼び出し関係にあると判定されていないと判定した場合、ステップＳ７６に進む。一方、呼び出し関係判定部１９は、ステップＳ８２にて以前に呼び出し関係にあると判定されていたと判定した場合、その時点の各拠点のログ情報のみで時間間隔に対するグルーピングを行う（ステップＳ８４）。次に、ロードバランサ保持情報取得部１６は、ロードバランサ保持情報ＤＢ１７からＶＭ数１７２と振り分けアルゴリズム１７３とを取得する（ステップＳ６６）。
【００６２】
次に、呼び出し関係判定部１９は、ロードバランサ３０の振り分け比率を算出する（ステップＳ６８）。次に、呼び出し関係判定部１９は、各グループのサンプル数の比率と振り分け比率とが一致するかを判定する（ステップＳ７０）。呼び出し関係判定部１９は、各グループのサンプル数の比率と振り分け比率とが一致しないと判定した場合、ステップＳ８６に進む。
【００６３】
呼び出し関係判定部１９は、ステップＳ７０にて各グループのサンプル数の比率と振り分け比率とが一致すると判定した場合、該当ＡＰＩペアを呼び出し関係ありと判定し、呼び出し関係ＤＢ２０に該当ＡＰＩペアを追加する（ステップＳ７２）。次に、呼び出し関係判定部１９は、判定結果の一例として伝搬遅延を除いた補正後の平均時間間隔を呼び出し関係ＤＢ２０に保存する（ステップＳ７４）。
【００６４】
次に、呼び出し関係判定部１９は、ＡＰＩペアのすべての呼び出し関係の判定を行ったかを判定する（ステップＳ７６）。呼び出し関係判定部１９は、ＡＰＩペアのすべての呼び出し関係の判定を行っていないと判定した場合、ステップＳ６０に戻り、ステップＳ６０以降の処理を繰り返す。
【００６５】
一方、呼び出し関係判定部１９は、ステップＳ７６にてＡＰＩペアのすべての呼び出し関係の判定を行ったと判定した場合、応答性能算出部２１は、呼び出し関係ＤＢ２０に記憶した各ＡＰＩペアの平均時間間隔２０２から応答性能を計算する（ステップＳ７８）。出力部２３は、応答性能算出部２１が算出した応答性能を表示し（ステップＳ８０）、本処理を終了する。
【００６６】
呼び出し関係判定部１９は、ステップＳ７０にて各グループのサンプル数の比率と振り分け比率とが一致しないと判定した場合、すべての拠点の組み合わせについてＡＰＩの呼び出し関係の有無を評価したかを判定する（ステップＳ８６）。呼び出し関係判定部１９は、すべての拠点の組み合わせについての呼び出し関係の有無を評価したと判定した場合、ステップＳ７６に進み、以後の処理を行う。呼び出し関係判定部１９は、すべての拠点の組み合わせについての呼び出し関係の有無を評価していないと判定した場合、ステップＳ８４に進み、評価していない拠点の組み合わせについて、その時点の拠点のログ情報のみで時間間隔に対するグルーピングを行い（ステップＳ８４）、ステップＳ６６以降の処理を繰り返す。
【００６７】
例えば、図１７の（ａ）に示すように、時刻ｔ１において、呼び出し関係ＤＢ２０には、二つのＡＰＩ名のペアリスト２０１が記憶されていたとする。その後、図１７の（ｂ）に示すように、時刻ｔ２（ｔ２＞ｔ１）において、ロードバランサ３０によるＶＭの振り分けの変更により、呼び出し関係ＤＢ２０に記憶されていた二つのＡＰＩ名のペアリスト２０１の一つが削除されたとする（図１７の「１」）。
【００６８】
この場合、呼び出し関係判定部１９は、その時点ｔ２以降の拠点のログ情報のみに基づき時間間隔に対するグルーピングを行う（図１７の「２」）。例えば、図１７のロードバランサ保持情報ＤＢ１７が記憶する、この時点のロードバランサ保持情報に含まれる拠点が拠点Ａ〜Ｃであった場合について説明する。この場合、図１８に示すように、全拠点のうちの２拠点の組み合わせのすべて、つまり、（拠点Ａ、拠点Ｂ）、（拠点Ａ、拠点Ｃ）、（拠点Ｂ、拠点Ｃ）の全通りについて各組み合わせのグルーピングが行われる。（拠点Ｂ、拠点Ｃ）の組み合わせについてグルーピングした結果、図１８のグラフに示すように時間間隔のサンプル数の比率が、１対１であったとする。
【００６９】
呼び出し関係判定部１９は、全通りのグルーピングに対して振り分け比率を計算し、振り分け比率とサンプル数の比率とを比較する（図１７の「３」）。全通りのグルーピングに対する振り分け比率を計算した結果、（拠点Ａ、拠点Ｂ）及び（拠点Ａ、拠点Ｃ）の場合の振り分け比率が２：１、（拠点Ｂ、拠点Ｃ）の場合の振り分け比率が１：１である場合を想定する。
【００７０】
その結果、呼び出し関係判定部１９は、（拠点Ｂ、拠点Ｃ）の場合のグルーピングに対して振り分け比率とサンプル数の比率とが一致すると判定する（図１７の「４」）。これにより、呼び出し関係判定部１９は、削除されたＡＰＩペアは呼び出し関係にあると判定し、該当ＡＰＩペアの情報を呼び出し関係ＤＢ２０に再登録する（図１７の「５」）。
【００７１】
以上に説明したように、第２実施形態に係る性能分析装置１００によれば、振り分け先の拠点間の距離に応じて発生する伝搬遅延の差が小さい場合において、呼び出し関係の判定処理を時系列でみた場合の特性を用いてＡＰＩ呼び出し関係が判定される。これにより、拠点間の伝搬遅延の差が小さい場合においてＡＰＩ呼び出し関係の誤判定を回避し、各コンポーネントの応答性能を把握することができる。
【００７２】
（ハードウェア構成例）
最後に、本実施形態に係る性能分析装置１００のハードウェア構成について、図１９を参照して説明する。図１９は、本実施形態に係る性能分析装置１００のハードウェア構成の一例を示す。性能分析装置１００は、入力装置１０１、表示装置１０２、外部Ｉ／Ｆ１０３、ＲＡＭ（Random Access Memory）１０４、ＲＯＭ（Read Only Memory）１０５、ＣＰＵ（Central Processing Unit）１０６、通信Ｉ／Ｆ１０７、及びＨＤＤ（Hard Disk Drive）１０８を備え、それぞれがバスＢで相互に接続されている。
【００７３】
入力装置１０１は、キーボードやマウスなどを含み、性能分析装置１００に各操作信号を入力するために用いられる。表示装置１０２は、ディスプレイなどを含み、応答性能の分析結果を表示する。通信Ｉ／Ｆ１０７は、性能分析装置１００をネットワークに接続するインタフェースである。これにより、性能分析装置１００は、通信Ｉ／Ｆ１０７を介して、ロードバランサ３０、システムインタフェースのログＤＢ及びコンポーネントＡ〜ＣのそれぞれのＡＰＩログＤＢとデータ通信を行うことができる。
【００７４】
ＨＤＤ１０８は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、性能分析装置１００の全体を制御する基本ソフトウェア及びアプリケーションソフトウェアがある。例えば、ＨＤＤ１０８には、各種のデータベースやプログラム等が格納されてもよい。
【００７５】
外部Ｉ／Ｆ１０３は、外部装置とのインタフェースである。外部装置には、記録媒体１０３ａなどがある。これにより、性能分析装置１００は、外部Ｉ／Ｆ１０３を介して記録媒体１０３ａの読み取り及び／又は書き込みを行うことができる。記録媒体１０３ａには、ＣＤ（Compact Disk）、及びＤＶＤ（Digital Versatile Disk）、ならびに、ＳＤメモリカード（SD Memory card）やＵＳＢメモリ（Universal Serial Bus memory）等がある。
【００７６】
ＲＯＭ１０５は、電源を切っても内部データを保持することができる不揮発性の半導体メモリ（記憶装置）である。ＲＯＭ１０５には、ネットワーク設定等のプログラム及びデータが格納されている。ＲＡＭ１０４は、プログラムやデータを一時保持する揮発性の半導体メモリ（記憶装置）である。ＣＰＵ１０６は、上記記憶装置（例えば「ＨＤＤ１０８」や「ＲＯＭ１０５」など）から、プログラムやデータをＲＡＭ１０４上に読み出し、処理を実行することで、装置全体の制御や搭載機能を実現する演算装置である。
【００７７】
かかる構成により、本実施形態に係る性能分析装置１００では、ＣＰＵ１０６が、ＲＯＭ１０５やＨＤＤ１０８内に格納されたデータ及びプログラムを用いて情報収集処理及び性能評価処理を実行する。コンポーネントログＤＢ１２、呼び出し間隔ＤＢ１４、ロードバランサ保持情報ＤＢ１７及び呼び出し関係ＤＢ２０に記憶された情報は、ＲＡＭ１０４、ＨＤＤ１０８、又はネットワークを介して性能分析装置１００に接続されるクラウド上のサーバ等に格納され得る。
【００７８】
以上、性能分析方法、性能分析プログラム及び性能分析装置１００を上記実施形態により説明したが、本発明にかかる性能分析方法、性能分析プログラム及び性能分析装置１００は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。また、上記実施形態及び変形例が複数存在する場合、矛盾しない範囲で組み合わせることができる。
【００７９】
また、上記実施形態に係る広域分散システムの構成は一例であり、本発明の範囲を限定するものではなく、用途や目的に応じて様々なシステム構成例があることは言うまでもない。例えば、広域分散システムが実行する複数のＡＰＩは、２以上であればいくつであってもよい。
【００８０】
以上の説明に関し、更に以下の項を開示する。
（付記１）
複数の処理を実行してサービスを提供するシステムにおいて、該複数の処理のそれぞれの処理が他の処理を呼び出す情報を含むログ情報に基づき、前記複数の処理のうちの第１の処理が呼び出されてから該複数の処理のうちの第２の処理が最初に呼び出されるまでの時間間隔を算出し、前記第２の処理を複数のマシンに振り分ける負荷分散装置から該複数のマシンが存在する拠点の識別情報と、該複数のマシンの該拠点毎のマシン数を示す振分情報とを取得し、算出した前記時間間隔の分散により分類されるグループの数が前記識別情報から識別される拠点数と等しく、かつ、前記分類されるグループ毎の時間間隔の数の比率が前記拠点毎のマシン数の比率と等しいときに、前記第１の処理と前記第２の処理とが呼び出し関係にあると判定する、処理をコンピュータが実行する性能分析方法。
（付記２）
前記分類されるグループ毎の時間間隔毎の平均値の差分に基づき、分類されるグループの所定の時間間隔を補正する、
付記１に記載の性能分析方法。
（付記３）
呼び出し関係にあると判定された前記第１の処理と前記第２の処理とが呼び出し関係にないと判定されたとき、前記識別情報から識別される全拠点のうちの２拠点の組み合わせのすべてに対して前記第１の処理と前記第２の処理とが呼び出し関係にあるかの判定を行う、
付記１又は２に記載の性能分析方法。
（付記４）
複数の処理を実行してサービスを提供するシステムにおいて、該複数の処理のそれぞれの処理が他の処理を呼び出す情報を含むログ情報に基づき、前記複数の処理のうちの第１の処理が呼び出されてから該複数の処理のうちの第２の処理が最初に呼び出されるまでの時間間隔を算出し、
前記第２の処理を複数のマシンに振り分ける負荷分散装置から該複数のマシンが存在する拠点の識別情報と、該複数のマシンの該拠点毎のマシン数を示す振分情報とを取得し、
算出した前記時間間隔の分散により分類されるグループの数が前記識別情報から識別される拠点数と等しく、かつ、前記分類されるグループ毎の時間間隔の数の比率が前記拠点毎のマシン数の比率と等しいときに、前記第１の処理と前記第２の処理とが呼び出し関係にあると判定する、
処理をコンピュータに実行させるための性能分析プログラム。
（付記５）
前記分類されるグループ毎の時間間隔毎の平均値の差分に基づき、分類されるグループの所定の時間間隔を補正する、
付記４に記載の性能分析プログラム。
（付記６）
呼び出し関係にあると判定された前記第１の処理と前記第２の処理とが呼び出し関係にないと判定されたとき、前記識別情報から識別される全拠点のうちの２拠点の組み合わせのすべてに対して前記第１の処理と前記第２の処理とが呼び出し関係にあるかの判定を行う、
付記４又は５に記載の性能分析プログラム。
（付記７）
複数の処理を実行してサービスを提供するシステムにおいて、該複数の処理のそれぞれの処理が他の処理を呼び出す情報を含むログ情報に基づき、前記複数の処理のうちの第１の処理が呼び出されてから該複数の処理のうちの第２の処理が最初に呼び出されるまでの時間間隔を算出する時間間隔算出部と、
前記第２の処理を複数のマシンに振り分ける負荷分散装置から該複数のマシンが存在する拠点の識別情報と、該複数のマシンの該拠点毎のマシン数を示す振分情報とを取得する保持情報取得部と、
算出した前記時間間隔の分散により分類されるグループの数が前記識別情報から識別される拠点数と等しく、かつ、前記分類されるグループ毎の時間間隔の数の比率が前記拠点毎のマシン数の比率と等しいときに、前記第１の処理と前記第２の処理とが呼び出し関係にあると判定する判定部と、
を有する性能分析装置。
（付記８）
前記分類されるグループ毎の時間間隔毎の平均値の差分に基づき、分類されるグループの所定の時間間隔を補正する応答性能算出部２１を有する、
付記７に記載の性能分析装置。
（付記９）
前記判定部は、
呼び出し関係にあると判定された前記第１の処理と前記第２の処理とが呼び出し関係にないと判定されたとき、前記識別情報から識別される全拠点のうちの２拠点の組み合わせのすべてに対して前記第１の処理と前記第２の処理とが呼び出し関係にあるかの判定を行う、
付記７又は８に記載の性能分析装置。
【符号の説明】
【００８１】
１：広域分散システム
１０：通信部
１１：ログ情報取得部
１２：コンポーネントログＤＢ
１３：呼び出し時間間隔算出部
１４：呼び出し間隔ＤＢ
１５：計測要求受付部
１６：ロードバランサ保持情報取得部
１７：ロードバランサ保持情報ＤＢ
１８：提示要求受付部
１９：呼び出し関係判定部
２０：呼び出し関係ＤＢ
２１：応答性能算出部
２２：応答性能情報ＤＢ
２３：出力部
３０：ロードバランサ
６０ａ〜６０ｅ：ＶＭ
１００：性能分析装置
【図１】
2016167137.tif 000003
【図２】
2016167137.tif 000004
【図３】
2016167137.tif 000005
【図４】
2016167137.tif 000006
【図５】
2016167137.tif 000007
【図６】
2016167137.tif 000008
【図７】
2016167137.tif 000009
【図８】
2016167137.tif 000010
【図９】
2016167137.tif 000011
【図１０】
2016167137.tif 000012
【図１１】
2016167137.tif 000013
【図１２】
2016167137.tif 000014
【図１３】
2016167137.tif 000015
【図１４】
2016167137.tif 000016
【図１５】
2016167137.tif 000017
【図１６】
2016167137.tif 000018
【図１７】
2016167137.tif 000019
【図１８】
2016167137.tif 000020
【図１９】
2016167137.tif 000021