(57)【要約】【課題】階層全体のリクエストによる影響を除いた処理間の相関係数を算出すること。【解決手段】性能診断サーバ１００は、多階層システム７０から、時刻毎の実行回数を示す時系列データを取得し、時系列データを基にして、各階層でサーバに実行される処理タイプ間の相関係数を算出する。性能診断サーバ１００は、各処理タイプ間の相関係数から、多階層全体のトレンドの影響を除去した偏相関係数を算出し、算出した偏相関係数によって、各処理タイプ間の相関係数を更新する。【選択図】図１
2015210788.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが実行する相関係数算出方法であって、
多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、
第１階層における第１の処理の時系列データと第２階層における第２の処理の時系列データ間の第１相関係数を算出し、
前記第２階層の全体リクエスト数の時系列データと前記第２の処理の時系列データ間の第２相関係数を算出し、
前記第２階層の全体リクエスト数の時系列データと前記第１の処理の時系列データ間の第３相関係数を算出し、
前記第１階層の全体リクエストが前記第３相関係数に与える影響を除いた第３偏相関係数を算出し、
前記第１階層の全体リクエストが前記第２相関係数に与える影響を除いた第２偏相関係数を算出し、
前記第１階層の全体リクエストが前記第１相関係数に与える影響を除いた第１偏相関係数を算出し、
前記第３偏相関係数および前記第２偏相関係数を用いて、前記第２階層の全体リクエストが前記第１偏相関係数に与える影響を除いた相関係数を前記第１処理と前記第２処理間の相関係数とする
処理を実行することを特徴とする相関係数算出方法。
【請求項２】
前記第１階層に存在する前記第１の処理と異なる第３の処理と前記第１階層よりも上の階層に存在する第４の処理とを特定し、
前記第２の処理の時系列データおよび前記第３の処理の時系列データ間の第４相関係数を、前記第３の処理の時系列データおよび前記第４の処理の時系列データ間の第５相関係数と、前記第２の処理の時系列データと前記第４の処理の時系列データ間の第６相関係数とを基にして算出し、
前記第１相関係数を、前記第１の処理の時系列データおよび前記第４の処理の時系列データ間の第７相関係数と、前記第６相関係数とを基にして更新し、
さらに前記第１相関係数を、前記第１の処理の時系列データおよび前記第３の処理の時系列データ間の第８相関係数と、前記第４相関係数とを基にして更新する処理を更に実行することを特徴とする請求項１に記載の相関係数算出方法。
【請求項３】
前記特定する処理は、複数の第３の処理のうち前記第２の処理と有意に相関のある第３の処理を特定し、複数の第４の処理のうち前記第１の処理と有意に相関のある第４の処理を特定することを特徴とする請求項２に記載の相関係数算出方法。
【請求項４】
前記第１の処理の時系列データを基にして前記第１の処理に応答遅延が発生している場合に、前記第１の処理から呼び出される第２の処理を特定し、前記第２の処理に応答遅延が発生しているか否かを判定し、判定結果を出力する処理を更に実行することを特徴とする請求項１、２または３に記載の相関係数算出方法。
【請求項５】
コンピュータに、
多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、
第１階層における第１の処理の時系列データと第２階層における第２の処理の時系列データ間の第１相関係数を算出し、
前記第２階層の全体リクエスト数の時系列データと前記第２の処理の時系列データ間の第２相関係数を算出し、
前記第２階層の全体リクエスト数の時系列データと前記第１の処理の時系列データ間の第３相関係数を算出し、
前記第１階層の全体リクエストが前記第３相関係数に与える影響を除いた第３偏相関係数を算出し、
前記第１階層の全体リクエストが前記第２相関係数に与える影響を除いた第２偏相関係数を算出し、
前記第１階層の全体リクエストが前記第１相関係数に与える影響を除いた第１偏相関係数を算出し、
前記第３偏相関係数および前記第２偏相関係数を用いて、前記第２階層の全体リクエストが前記第１偏相関係数に与える影響を除いた相関係数を前記第１処理と前記第２処理間の相関係数とする
処理を実行させることを特徴とする相関係数算出プログラム。
【請求項６】
多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、第１階層における第１の処理の時系列データと第２階層における第２の処理の時系列データ間の第１相関係数を算出し、前記第２階層の全体リクエスト数の時系列データと前記第２の処理の時系列データ間の第２相関係数を算出し、前記第２階層の全体リクエスト数の時系列データと前記第１の処理の時系列データ間の第３相関係数を算出し、前記第１階層の全体リクエストが前記第３相関係数に与える影響を除いた第３偏相関係数を算出し、前記第１階層の全体リクエストが前記第２相関係数に与える影響を除いた第２偏相関係数を算出し、前記第１階層の全体リクエストが前記第１相関係数に与える影響を除いた第１偏相関係数を算出し、前記第３偏相関係数および前記第２偏相関係数を用いて、前記第２階層の全体リクエストが前記第１偏相関係数に与える影響を除いた相関係数を前記第１処理と前記第２処理間の相関係数とする第１算出部
を有することを特徴とする相関係数算出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、相関係数算出方法等に関する。
【背景技術】
【０００２】
近年、多階層システムに対して応答遅延等に関する性能診断が行われている。例えば、多階層システムは、Ｗｅｂ層、ＡＰ（Application）層、ＤＢ（Database）層など複数の階層から構成されている。多階層システムでは、各階層で処理が実行されて次の階層を呼び出すことにより処理が継続される。ここで、階層間での呼び出し関係が分からないので、下の階層のある処理タイプの応答遅延の影響を受けて、それを呼び出している上の階層の処理タイプの応答が遅延したとしても、この遅延を上の階層に起因する応答遅延と誤判定する場合がある。
【０００３】
図３８は、階層間における応答遅延の伝搬の一例を示す図である。図３８の各グラフにおいて、縦軸は応答時間に対応する軸であり、横軸は時刻に対応する軸である。グラフ１０ａ，１０ｂは、Ｗｅｂ層１０で動作する処理タイプＷ１，Ｗ２の応答時間と時刻との関係を示すグラフである。例えば、処理タイプＷ１は、１１で応答遅延が発生している。処理タイプＷ２は、１２ａ，１２ｂで応答遅延が発生している。
【０００４】
グラフ２０ａ，２０ｂは、ＡＰ層２０で動作する処理タイプＡ１，Ａ２の応答時間と時刻との関係を示すグラフである。例えば、処理タイプＡ１は、２１で応答遅延が発生している。処理タイプＡ２は、２２で応答遅延が発生している。
【０００５】
グラフ３０ａ，３０ｂは、ＤＢ層３０で動作する処理タイプＤ１，Ｄ２の応答時間と時刻との関係を示すグラフである。例えば、処理タイプＤ１は、３１で応答遅延が発生している。
【０００６】
例えば、ＤＢ装置３０のある処理タイプに応答遅延が発生すると、この処理タイプを呼び出している上の層の処理タイプの応答時間も増大し、見かけ上は、上位の階層の処理タイプに問題があるように見えてしまう。例えば、図３８に示す例では、処理タイプＤ１の応答遅延３１が伝搬して、応答遅延１１，１２ａ，１２ｂ，２１，２２が発生した場合には、見かけ上は、処理タイプＡ１，Ａ２や、処理タイプＷ１，Ｗ２に問題があるように見える。
【０００７】
階層間の処理タイプ同士の呼び出し関係を特定すれば、応答遅延が、呼び出し関係によるものなのか、偶然の一致であるのかを判定でき、応答遅延を発生している処理タイプを特定できる。ここで、処理タイプの呼び出し関係を判定する従来技術１、従来技術２が存在する。
【０００８】
従来技術１は、異なる階層に属する２つの処理タイプについて、実行数の時系列データ同士を相関分析する。従来技術１は、相関分析した結果、「有意に相関あり」と判定した場合に、各処理タイプの間には呼び出し関係があると判定する。
【０００９】
図３９は、従来技術１を説明するための図である。図３９に示す例では、ＡＰ層２０で動作する処理タイプを、処理タイプＸ，Ｙ，Ｚとする。ＤＢ層３０で動作する処理タイプを、処理タイプＡ，Ｂ，Ｃとする。処理タイプＸ，Ｙ，Ｚの時系列データをそれぞれ、時系列データ２０Ｘ，２０Ｙ，２０Ｚとする。処理タイプＡの時系列データを時系列データ３０Ａとする。各時系列データは、処理タイプによる各時刻の実行数を示すデータである。
【００１０】
従来技術１は、時系列データ３０Ａと時系列データ２０Ｘとの相関係数を算出し、算出した相関係数が有意に相関有りといえる場合に、処理タイプＡと処理対応Ｘとが呼び出し関係にあると判定する。従来技術１は、時系列データ３０Ａと時系列データ２０Ｙとの相関係数を算出し、算出した相関係数が有意に相関有りといえる場合に、処理タイプＡと処理対応Ｙとが呼び出し関係にあると判定する。従来技術１は、時系列データ３０Ａと時系列データ２０Ｚとの相関係数を算出し、算出した相関係数が有意に相関有りといえる場合に、処理タイプＡと処理対応Ｚとが呼び出し関係にあると判定する。
【００１１】
従来技術２は、下の階層のある処理タイプと、この処理タイプについて呼び出し候補となり得る上の階層の全処理タイプとの間で、時系列データの相関係数を総当たりで算出する。従来技術２は、上の階層の処理タイプを該当する相関係数の値に基づき、クラスタリングによって、相関係数の高いグループと、相関係数の低いグループに分け、相関係数の高いグループにグループ分けされた処理タイプを、呼び出し元の処理タイプとして判定する。
【００１２】
図４０および図４１は、従来技術２を説明するための図である。図４０に示す例では、ＡＰ層２０で動作する処理タイプを、処理タイプＸ，Ｙ，Ｚとする。また、ＡＰ層２０で動作する他の処理タイプの図示を省略する。ＤＢ層３０で動作する処理タイプを、処理タイプ３０Ａとする。従来技術２は、処理タイプＡと、ＡＰ層２０の全処理タイプとの間で、時系列データの相関係数を総当たりで算出する。
【００１３】
従来技術２は、相関係数の算出結果を基にして、処理タイプをクラスタリングする。図４１は、相関係数の分布を示すグラフであり、縦軸は処理タイプの数に対応する軸であり、横軸は相関係数に対応する軸である。従来技術２は、相関係数の大きさに応じて、グループ１Ａ，１Ｂに分類し、グループＢの相関係数に対応する処理タイプを、処理タイプＡと呼び出し関係にある処理タイプとして判定する。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特開２００２−７６５９号公報
【特許文献２】特開２００７−３０４６４７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１５】
しかしながら、上述した従来技術では、階層全体のリクエストによる影響を考慮していないため処理タイプ間の呼び出し関係の有無を正確に判定できないという問題がある。
【００１６】
図４２は、階層全体のリクエストによる影響の一例を示す図である。図４２において、時系列データ４０ａは、多階層システムの全体の実行数と時刻との関係を示すものである。呼び出し頻度の高い処理タイプは、実行回数が多階層システムの全体の実行数に比例する傾向がある。例えば、処理タイプＹおよび処理タイプＡが呼び出し頻度の高い処理タイプとすると、処理タイプＹの時系列データ４０ｂと、処理タイプＡの時系列データ４０ｃとは、時系列データ４０ａに類似したものとなる。このため、処理タイプＡが処理タイプＹによって呼び出されていない場合でも、処理タイプＡと処理タイプＹとの相関係数が高くなり、処理タイプＡが処理タイプＹによって呼び出されていると誤判定してしまう。
【００１７】
１つの側面では、階層全体のリクエストによる影響を除いた処理間の相関係数を算出することができる相関係数算出方法、相関係数算出プログラムおよび相関係数算出装置を提供することを目的とする。
【課題を解決するための手段】
【００１８】
第１の案では、コンピュータは、下記の処理を実行する。コンピュータは、多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出する。コンピュータは、第１階層における第１の処理の時系列データと第２階層における第２の処理の時系列データ間の第１相関係数を算出する。コンピュータは、第２階層の全体リクエスト数の時系列データと第２の処理の時系列データ間の第２相関係数を算出する。コンピュータは、第２階層の全体リクエスト数の時系列データと第１の処理の時系列データ間の第３相関係数を算出する。コンピュータは、第１階層の全体リクエストが第３相関係数に与える影響を除いた第３偏相関係数を算出する。コンピュータは、第１階層の全体リクエストが第２相関係数に与える影響を除いた第２偏相関係数を算出する。コンピュータは、第１階層の全体リクエストが第１相関係数に与える影響を除いた第１偏相関係数を算出する。コンピュータは、第３偏相関係数および前記第２偏相関係数を用いて、第２階層の全体リクエストが第１偏相関係数に与える影響を除いた相関係数を前記第１処理と第２処理間の相関係数とする。
【発明の効果】
【００１９】
本発明の１実施態様によれば、階層全体のリクエストによる影響を除いた処理間の相関係数を算出することができる。
【図面の簡単な説明】
【００２０】
【図１】図１は、本実施例にかかるシステムの構成を示す図である。
【図２】図２は、本実施例に係る性能診断サーバの構成を示す機能ブロック図である。
【図３】図３は、第１時系列データのデータ構造の一例を示す図である。
【図４】図４は、相関係数テーブルのデータ構造の一例を示す図である。
【図５】図５は、第１偏相関係数テーブルのデータ構造の一例を示す図である。
【図６】図６は、ノードリストのデータ構造の一例を示す図である。
【図７】図７は、呼び出し関係情報のデータ構造の一例を示す図である。
【図８】図８は、多階層全体のトレンドの影響を示す図である。
【図９】図９は、多階層全体のトレンドの影響を除去する処理の一例を示す図（１）である。
【図１０】図１０は、多階層全体のトレンドの影響を除去する処理の一例を示す図（２）である。
【図１１】図１１は、多階層全体のトレンドの影響を除去する処理の一例を示す図（３）である。
【図１２】図１２は、多階層全体のトレンドの影響を除去する処理の一例を示す図（４）である。
【図１３】図１３は、同時呼び出しの影響を除去する処理の一例を示す図（１）である。
【図１４】図１４は、同時呼び出しの影響を除去する処理の一例を示す図（２）である。
【図１５】図１５は、同時呼び出しの影響を除去する処理の一例を示す図（３）である。
【図１６】図１６は、同時呼び出しの影響を除去する処理の一例を示す図（４）である。
【図１７】図１７は、同時呼び出しの影響を除去する処理の一例を示す図（５）である。
【図１８】図１８は、同時呼び出しの影響を除去する処理の一例を示す図（６）である。
【図１９】図１９は、同時呼び出しの影響を除去する処理の一例を示す図（７）である。
【図２０】図２０は、同時呼び出しの影響を除去する処理の一例を示す図（８）である。
【図２１】図２１は、同時呼び出しの影響を除去する処理の一例を示す図（９）である。
【図２２】図２２は、同時呼び出しの影響を除去する処理の一例を示す図（１０）である。
【図２３】図２３は、同時呼び出しの影響を除去する処理の一例を示す図（１１）である。
【図２４】図２４は、同時呼び出しの影響を除去する処理の一例を示す図（１２）である。
【図２５】図２５は、同時呼び出しの影響を除去する処理の一例を示す図（１３）である。
【図２６】図２６は、同時呼び出しの影響を除去する処理の一例を示す図（１４）である。
【図２７】図２７は、同時呼び出しの影響を除去する処理の一例を示す図（１５）である。
【図２８】図２８は、同時呼び出しの影響を除去する処理の一例を示す図（１６）である。
【図２９】図２９は、同時呼び出しの影響を除去する処理の一例を示す図（１７）である。
【図３０】図３０は、判定部の処理の一例を示す図である。
【図３１】図３１は、判定部の判定結果の画面例を示す図である。
【図３２】図３２は、呼び出し関係を判定する処理手順を示すフローチャート（１）である。
【図３３】図３３は、呼び出し関係を判定する処理手順を示すフローチャート（２）である。
【図３４】図３４は、同時呼び出しされる処理による影響を除去する処理手順を示すフローチャートである。
【図３５】図３５は、応答遅延を発生している処理タイプを判定する処理手順を示すフローチャートである。
【図３６】図３６は、同時呼び出しによる影響の一例を説明するための図である。
【図３７】図３７は、相関係数算出プログラムを実行するコンピュータの一例を示す図である。
【図３８】図３８は、階層間における応答遅延の伝搬の一例を示す図である。
【図３９】図３９は、従来技術１を説明するための図である。
【図４０】図４０は、従来技術２を説明するための図（１）である。
【図４１】図４１は、従来技術２を説明するための図（２）である。
【図４２】図４２は、階層全体のリクエストによる影響の一例を示す図である。
【発明を実施するための形態】
【００２１】
以下に、本願の開示する相関係数算出方法、相関係数算出プログラムおよび相関係数算出装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例】
【００２２】
図１は、本実施例にかかるシステムの構成を示す図である。図１に示すように、このシステムは、スイッチ６０と、多階層システム７０と、性能診断サーバ１００とを有する。性能診断サーバ１００は、相関係数算出装置の一例である。多階層システム７０および性能診断サーバ１００は、スイッチ６０に接続される。スイッチ６０は、ネットワーク５０に接続される。
【００２３】
スイッチ６０は、多階層システム７０とネットワーク５０とのデータ通信を中継する装置である。また、スイッチ６０は、多階層システム７０から実行回数の時系列データを受信した場合には、時系列データを性能診断サーバ１００に送信する。
【００２４】
多階層システム７０は、各層のサーバが協働して、サービスを提供するシステムである。例えば、多階層システムは、Ｗｅｂ層７１と、ＡＰ層７２と、ＤＢ層７３とを有する。Ｗｅｂ層７１は、Ｗｅｂブラウザなどのクライアントソフトウェアの要求に応じて、サービスを提供するサーバを有する層であり、サーバ７１ａ，７１ｂ，７１ｃを有する。Ｗｅｂ層７１は、その他のサーバを有していても良い。
【００２５】
ＡＰ層７２は、プログラムの実行環境やＷｅｂ層７１とＤＢ層７３とを連結する機能を有するサーバを有する層であり、サーバ７２ａ，７２ｂを有する。ＡＰ層７２は、その他のサーバを有していても良い。ＤＢ層７３は、Ｗｅｂ層７１やＡＰ層７２のサーバから要求されたデータを送信したり、操作要求を受け付けてデータの書き換えを行うサーバを有する層であり、サーバ７３ａ，７３ｂを有する。ＤＢ層７３は、その他のサーバを有していても良い。
【００２６】
また、多階層システム７０は、性能診断サーバ１００からの要求に応じて、時系列データを性能診断サーバ１００に送信する。この時系列データは、多階層システムの階層毎の各処理タイプの実行回数を、時刻毎に示す情報である。時系列データに関する具体的な説明は後述する。
【００２７】
性能診断サーバ１００は、多階層システム７０に対して応答遅延に関する性能診断を実行するサーバである。図２は、本実施例に係る性能診断サーバの構成を示す機能ブロック図である。図２に示すように、性能診断サーバ１００は、通信部１１０と、入力部１２０と、表示部１３０と、記憶部１４０と、制御部１５０とを有する。
【００２８】
通信部１１０は、スイッチ６０、ネットワーク５０を介して他の装置とデータ通信を実行する処理部である。例えば、通信部１１０は、通信装置に対応する。後述する制御部１５０は、通信部１１０を介して、他の装置とデータをやり取りする。
【００２９】
入力部１２０は、各種の情報を性能診断サーバ１００に入力するための入力装置である。例えば、入力部１２０は、キーボードやマウス、タッチパネル、入力ボタン等に対応する。表示部１３０は、制御部１５０から出力される情報を表示する表示装置である。表示部１３０は、液晶ディスプレイ、タッチパネル等に対応する。
【００３０】
記憶部１４０は、第１時系列データ１４１、相関係数テーブル１４２、偏相関係数テーブル１４３、ノードリスト１４４、呼び出し関係テーブル１４５、第２時系列データ１４６を有する。記憶部１４０は、例えば、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子などの記憶装置に対応する。
【００３１】
第１時系列データ１４１は、多階層システム７０の各階層のサーバで実行される処理タイプの実行回数を時刻毎に示す情報である。第１時系列データ１４１は、呼び出し関係テーブル１４５を生成するために用いられる学習用の時系列データである。
【００３２】
図３は、第１時系列データのデータ構造の一例を示す図である。図３に示すように、この第１時系列データ１４１は、時刻と、階層情報と、処理タイプＩＤと、実行回数とを対応付ける。このうち、階層情報は、多階層システム７０の階層を識別する情報である。処理タイプＩＤは、サーバで実行される処理タイプを識別する情報である。実行回数は、該当する時刻に、該当する処理タイプが何回実行されたのかを示す情報である。例えば、図３の１行目のレコードでは、時刻「７：００：０１」において、「Ｗｅｂ層」の「処理タイプＯ」が、「４回」実行されたことが示されている。
【００３３】
相関係数テーブル１４２は、処理タイプ間の相関係数の情報を保持するテーブルである。図４は、相関係数テーブルのデータ構造の一例を示す図である。図４に示すように、この相関係数テーブル１４２は、相関係数の組情報と、サンプル数と、相関係数とを対応付ける。相関係数の組情報は、相関係数を算出した処理タイプ等の組を示す情報である。なお、Ｗｅｂ層全体は、Ｗｅｂ層７１で実行される全ての処理タイプを示す。ＡＰ層全体は、ＡＰ層７２で実行される全ての処理タイプを示す。ＤＢ層全体は、ＤＢ層７３で実行される全ての処理タイプを示す。図４の１行目のレコードでは「処理タイプＸ」と「処理タイプＡ」との相関係数が「ＣＣ（Ｘ，Ａ）」であることを示される。図４の２行目のレコードでは「処理タイプＸ」と「ＡＰ層全体」との相関係数が「ＣＣ（Ｘ、ＴＡＰＰ）」であることが示される。サンプル数の説明は後述する。
【００３４】
第１偏相関係数テーブル１４３ａは、処理タイプ間の偏相関係数の情報を保持するテーブルである。図５は、第１偏相関係数テーブルのデータ構造の一例を示す図である。図５に示すように、この第１偏相関係数テーブル１４３ａは、偏相関係数の組情報と、サンプル数と、偏相関係数とを対応付ける。偏相関係数の組情報は、偏相関係数を算出した処理タイプの組を示す情報である。図５の１行目のレコードでは「処理タイプＸ」と「処理タイプＡ」との偏相関係数が「ＰＣＣ（Ｘ，Ａ−ＴＡＰＰ，ＴＤＢ）」であることが示される。サンプル数の説明は後述する。
【００３５】
第２偏相関係数テーブル１４３ｂは、後述する第２算出部１５３によって算出された各処理タイプの偏相関係数の情報を保持するテーブルである。
【００３６】
ノードリスト１４４は、相関係数を算出した処理タイプについて、この処理タイプと同時に呼び出される処理タイプの候補の情報を保持するテーブルである。図６は、ノードリストのデータ構造の一例を示す図である。図６に示すように、このノードリスト１４４は、相関係数の組情報と、同時呼び出しされる処理タイプの候補とを対応付ける。相関係数の組情報は、相関係数を算出した処理タイプの組を示す情報である。同時呼び出しされる処理タイプの候補は、相関係数を算出した処理タイプについて、この処理タイプと同時に呼び出される処理タイプの候補を示す。例えば、図６の１行目に示す例では「処理タイプＰ、処理タイプＱ、処理タイプＹ、処理タイプＺ」は、「処理タイプＸ」および「処理タイプＡ」と同時に呼び出される処理タイプの候補である。
【００３７】
呼び出し関係テーブル１４５は、呼び出し関係にある処理タイプの組の情報を保持するテーブルである。図７は、呼び出し関係情報のデータ構造の一例を示す図である。図７の１行目のレコードでは「処理タイプＸ」と「処理タイプＡ」とが呼び出し関係にあることが示される。
【００３８】
第２時系列データ１４６は、多階層システム７０の各階層のサーバで実行される各処理タイプの応答時間と時刻とを対応付けた情報である。応答時間は、サーバがサービスの要求を受けてから、サービスを提供するまでの時間である。
【００３９】
制御部１５０は、取得部１５１と、第１算出部１５２と、第２算出部１５３と、特定部１５４と、判定部１５５とを有する。制御部１５０は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）や、ＦＰＧＡ（Field  Programmable  Gate  Array）などの集積装置に対応する。また、制御部１５０は、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等の電子回路に対応する。
【００４０】
取得部１５１は、多階層システム７０から時系列データを取得する処理部である。取得部１５１は、取得した時系列データを第１時系列データ１４１として、記憶部１４０に格納する。また、取得部１５１は、多階層システム７０から、応答時間と時刻との関係を示すデータを取得した場合に、取得したデータを第２時系列データ１４６として、記憶部１４０に格納する。
【００４１】
第１算出部１５２は、第１時系列データ１４１を基にして、各処理タイプ間の相関係数を算出する処理部である。また、第１算出部１５２は、各処理タイプ間の相関係数から、多階層全体のトレンドの影響を除去することで、各処理タイプ間の相関係数を更新する。第１算出部１５２は、算出した各処理タイプ間の相関係数の情報を、相関係数テーブル１４２に登録する。
【００４２】
第１算出部１５２の処理について具体的に説明する。まず、第１算出部１５２は、第１時系列データ１４１を基にして、各処理タイプの実行回数と時刻との関係を示す時系列データを生成する。第１算出部１５２は、Ｗｅｂ層７１に含まれる全ての処理タイプの実行回数と時刻との関係を示す時系列データを生成する。第１算出部１５２は、ＡＰ層７２に含まれる全ての処理タイプの実行回数と時刻との関係を示す時系列データを生成する。第１算出部１５２は、ＤＰ層７３に含まれる全ての処理タイプの実行回数と時刻との関係を示す時系列データを生成する。
【００４３】
続いて、第１算出部１５２は、各時系列データを生成した後に、各処理タイプ間の相関係数を算出する。例えば、処理タイプＸの時系列データと処理タイプＡの時系列データとの相関係数をＣＣ（Ｘ，Ａ）と表記する。
【００４４】
第１算出部１５２は、Ｗｅｂ層７１全体の時系列データと各処理タイプの時系列データとの相関係数を算出する。例えば、Ｗｅｂ層７１全体の時系列データと処理タイプＸの時系列データとの相関係数をＣＣ（Ｘ，ＴＷｅｂ）と表記する。
【００４５】
第１算出部１５２は、ＡＰ層７２全体の時系列データと各処理タイプの時系列データとの相関係数を算出する。例えば、ＡＰ層７２全体の時系列データと処理タイプＸの時系列データとの相関係数をＣＣ（Ｘ，ＴＡＰＰ）と表記する。
【００４６】
第１算出部１５２は、ＤＢ層７３全体の時系列データと各処理タイプの時系列データとの相関係数を算出する。例えば、ＤＢ層７３全体の時系列データと処理タイプＸの時系列データとの相関係数をＣＣ（Ｘ，ＴＤＢ）と表記する。
【００４７】
また、第１算出部１５２は、Ｗｅｂ層７１全体の時系列データとＡＰ層７２全体の時系列データとの相関係数ＣＣ（ＴＷｅｂ，ＴＡＰＰ）を算出する。第１算出部１５２は、ＡＰ層７２全体の時系列データとＤＢ層７３全体の時系列データとの相関係数ＣＣ（ＴＡＰＰ，ＴＤＢ）を算出する。第１算出部１５２は、相関係数の算出結果を、相関係数テーブル１４２に登録する。
【００４８】
続いて、第１算出部１５２は、各相関係数を算出した後に、各処理タイプ間の相関係数から、多階層全体のトレンドの影響を除去するための処理を実行する。図８は、多階層全体のトレンドの影響を示す図である。図８では一例として、ＡＰ層７２、ＤＢ層７３について説明する。
【００４９】
図８に示すように、ＡＰ層全体の時系列データ７４のトレンドが、処理タイプＸの時系列データ７２Ｘ、処理タイプＹの時系列データ７２Ｙ、処理タイプＺの時系列データ７２Ｚに影響を与える。ＡＰ層全体の時系列データ７４のトレンドが、ＤＢ層全体の時系列データ７５に影響を与える。ＤＢ層全体の時系列データ７５のトレンドが、処理タイプＡの時系列データ７３Ａ、処理タイプＢの時系列データ７３Ｂ、処理タイプＣの時系列データ７３Ｃに影響を与える。
【００５０】
図９〜図１２は、多階層全体のトレンドの影響を除去する処理の一例を示す図である。図９〜図１２に示す例では、処理タイプＸと処理タイプＡとの相関係数から、多階層全体のトレンドの影響を除去した偏相関係数ＰＣＣ（Ｘ，Ａ−ＴＡＰＰ，ＴＤＢ）を算出する例について説明する。ここでは、多階層全体のトレンドの一例として、ＡＰ層７２全体の時系列データ７４のトレンドおよびＤＢ層７３全体の時系列データ７５のトレンドを示す。
【００５１】
図９について説明する。ＡＰ層７２全体の時系列データ７４とＤＢ層７３全体の時系列データ７５との相関係数を、相関係数ＣＣ（ＴＡＰＰ，ＴＤＢ）とする。ＡＰ層７２全体の時系列データ７４と処理タイプＸの時系列データ７２Ｘとの相関係数を、相関係数ＣＣ（Ｘ，ＴＡＰＰ）とする。ＡＰ層７２全体の時系列データ７４と処理タイプＡの時系列データ７３Ａとの相関係数を、相関係数ＣＣ（Ａ，ＴＡＰＰ）とする。ＤＢ層７３全体の時系列データ７５と処理タイプＸの時系列データ７２Ｘとの相関係数を、相関係数ＣＣ（Ｘ，ＴＤＢ）とする。ＤＢ層７３全体の時系列データ７５と処理タイプＡの時系列データ７３Ａとの相関係数を、相関係数ＣＣ（Ａ，ＴＤＢ）とする。処理タイプＸの時系列データ７２Ｘと処理タイプＡの時系列データ７３Ａとの相関係数を、相関係数ＣＣ（Ｘ，Ａ）とする。
【００５２】
第１算出部１５２は、以下の処理を実行して、ＡＰ層７２全体の時系列データ７４が、他の相関係数に与える影響を一つずつ除去する。図９において、第１算出部１５２は、相関係数ＣＣ（Ｘ，ＴＤＢ）から、ＡＰ層７２全体の時系列データ７４の影響を除去した偏相関係数ＰＣＣ（Ｘ，ＴＤＢ−ＴＡＰＰ）を算出する。第１算出部１５２は、例えば、第１算出部１５２は、式（１）に基づいて、偏相関係数ＰＣＣ（Ｘ，ＴＤＢ−ＴＡＰＰ）を算出する。
【００５３】
【数１】
2015210788.tif 000003
【００５４】
図１０について説明する。第１算出部１５２は、相関係数ＣＣ（Ａ，ＴＤＢ）から、ＡＰ層７２全体の時系列データ７４の影響を除去した偏相関係数ＰＣＣ（Ａ，ＴＤＢ−ＴＡＰＰ）を算出する。例えば、第１算出部１５２は、式（２）に基づいて、偏相関係数ＰＣＣ（Ａ，ＴＤＢ−ＴＡＰＰ）を算出する。
【００５５】
【数２】
2015210788.tif 000004
【００５６】
図１１について説明する。第１算出部１５２は、相関係数ＣＣ（Ｘ，Ａ）から、ＡＰ層７２全体の時系列データ７４の影響を除去した偏相関係数ＰＣＣ（Ｘ，Ａ−ＴＡＰＰ）を算出する。例えば、第１算出部１５２は、式（３）に基づいて、偏相関係数ＰＣＣ（Ｘ，Ａ−ＴＡＰＰ）を算出する。算出部１５２が、図９〜図１１に示す処理を実行することで、ＡＰ層７２全体の時系列データ７４の影響を、相関係数ＣＣ（Ｘ，ＴＤＢ）、ＣＣ（Ａ，ＴＤＢ）、ＣＣ（Ｘ，Ａ）から除去できる。
【００５７】
【数３】
2015210788.tif 000005
【００５８】
図１２について説明する。第１算出部１５２は、ＤＢ層７３全体の時系列データ７５が、処理タイプＸと処理タイプＡとの相関係数に与える影響を除去する。具体的に、第１算出部１５２は、式（４）に基づいて、ＤＢ層７３全体の時系列データ７５が、処理タイプＸと処理タイプＡとの相関係数（偏相関係数ＰＣＣ（Ｘ，Ａ−ＴＡＰＰ））に与える影響を除去した偏相関係数ＰＣＣ（Ｘ，Ａ−ＴＡＰＰ，ＴＤＢ）を算出する。
【００５９】
【数４】
2015210788.tif 000006
【００６０】
第１算出部１５２は、その他の処理タイプ間の相関係数についても、上記の処理と同様の処理を繰り返し実行することで、各処理タイプ間の相関係数から多階層全体のトレンドの影響を除去した偏相関係数を算出する。第１算出部１５２は、偏相関係数の算出結果を、第１偏相関数テーブル１４３ａに登録する。
【００６１】
図２の説明に戻る。第２算出部１５３は、各処理タイプ間の相関係数（偏相関係数）から、同時呼び出しによる影響を除去する処理部である。図１３〜図２９は、同時呼び出しの影響を除去する処理の一例を示す図である。図１３に示すように、ここでは一例として、処理タイプＸと処理タイプＡとの相関係数から、同時呼び出しによる影響を除去する場合について説明する。Ｗｅｂ層７１には、処理タイプＯ、処理タイプＰ、処理タイプＱが存在するものとする。ＡＰ層７２には、処理タイプＸ、処理タイプＹ、処理タイプＺが存在するものとする。ＤＢ層７３には、処理タイプＡ、処理タイプＢ、処理タイプＣが存在するものとする。
【００６２】
図１４について説明する。第２算出部１５３は、処理タイプＸの階層以上にある全ての処理タイプＯ，Ｐ，Ｑ，Ｙ，Ｚを、処理タイプＸと同時に呼び出される処理タイプの候補として特定する。第２算出部１５３は、第１偏相関数テーブル１４３ａを参照し、同時に呼び出される処理タイプの候補のうち、処理タイプＸ，Ａと有意水準α１で有意に相関がある処理タイプを特定する。第２算出部１５３は、処理タイプＸ，Ａと有意水準α１で有意に相関のない処理タイプを、同時に呼び出される処理タイプの候補から削除する。第２算出部１５３は、処理タイプの組と、この処理タイプに対して、同時に呼び出される処理タイプとを、ノードリスト１４４に登録する。例えば、有意水準α１の値を、０．１０とする。第２算出部１５３は、第１時系列データ１４１のサンプル数に応じて、適宜補正しても良い。
【００６３】
図１４において、例えば、処理タイプＸと、処理タイプＰ，Ｑ，Ｚとの偏相関係数がそれぞれ、有意水準α１において有意に相関があるとする。また、処理タイプＡと、処理タイプＹとの偏相関係数が、有意水準α１において有意に相関があるとする。ここで、同時に呼び出される処理タイプの候補Ｏ，Ｐ，Ｑ，Ｙ，Ｚのうち、処理タイプＯは、処理タイプＸ，Ａの何れに対しても、偏相関係数が、有意水準α１において有意な相関が認められない。このため、第２算出部１５３は、同時に呼び出される処理タイプの候補から、処理タイプＯを削除する。第２算出部１５３は、処理タイプＸ，Ａの組と、同時に呼び出しされる処理タイプ候補Ｐ，Ｑ，Ｙ，Ｚとを対応付けて、ノードリスト１４４に登録する。第２算出部１５３は、その他の処理タイプの組に対しても、同時に呼び出しされる処理タイプ候補を特定し、ノードリスト１４４に登録する。
【００６４】
図１５について説明する。第２算出部１５３は、残った処理タイプの間を全結合する。すなわち、第２算出部１５３は、処理タイプＡと処理タイプＰ，Ｑ，Ｙ，Ｚとを結合する。第２算出部１５３は、処理タイプＸと処理タイプＰ，Ｑ，Ｙ，Ｚとを結合する。第２算出部１５３は、処理タイプＹと処理タイプＡ，Ｘ，Ｚ，Ｐ，Ｑとを結合する。第２算出部１５３は、処理タイプＺと、処理タイプＡ，Ｘ，Ｙ，Ｐ，Ｑとを結合する。第２算出部１５３は、処理タイプＰと、処理タイプＡ，Ｘ，Ｙ，Ｚ，Ｑとを結合する。第２算出部１５３は、処理タイプＱと、処理タイプＡ，Ｘ，Ｙ，Ｚ，Ｐとを結合する。各リンクの初期値は、リンクの両端の処理タイプの偏相関係数となる。
【００６５】
図１６について説明する。第２算出部１５３は、処理タイプＰ，Ｑ，Ｙ，Ｚを一つずつ取り除いていく。第２算出部１５３は、処理タイプを取り除く前に、取り除く処理タイプの影響を、リンクで結ばれる処理タイプ同士の偏相関係数に反映させる。ここでは、処理タイプＱを、取り除く場合について説明する。第２算出部１５３は、処理タイプＱを取り除く場合に、処理タイプＺ−Ａ間（１）の偏相関係数と、処理タイプＱ−Ｚ間の偏相関係数と、処理タイプＱ−Ａ間の偏相関係数とを基にして、処理タイプＺ−Ａ間（１）の偏相関係数を更新する。例えば、第２算出部１５３は、式（５）を基にして、処理タイプＡ−Ｚ間（１）の偏相関係数を算出し、処理タイプＡ−Ｚ間の偏相関係数を更新する。式（５）は、一般的な偏相関係数を算出する式に対応する。偏相関係数を算出する算出式は、一般的な偏相関係数を算出する式に従うものであるため、以下の説明では、具体的な式を省略する。
【００６６】
【数５】
2015210788.tif 000007
【００６７】
図１７について説明する。第２算出部１５３は、処理タイプＱを取り除く場合に、処理タイプＹ−Ａ間（２）の偏相関係数と、処理タイプＱ−Ｙ間の偏相関係数と、処理タイプＱ−Ａ間の偏相関係数とを基にして、処理タイプＹ−Ａ間（２）の偏相関係数を更新する。
【００６８】
図１８について説明する。第２算出部１５３は、処理タイプＱを取り除く場合に、処理タイプＸ−Ａ間（３）の偏相関係数と、処理タイプＱ−Ｘ間の偏相関係数と、処理タイプＱ−Ａ間の偏相関係数を基にして、処理タイプＸ−Ａ間（３）の偏相関係数を更新する。
【００６９】
図１９について説明する。第２算出部１５３は、処理タイプＱを取り除く場合に、処理タイプＰ−Ａ間（４）の偏相関係数と、処理タイプＱ−Ｐ間の偏相関係数と、処理タイプＱ−Ａ間の偏相関係数とを基にして、処理タイプＰ−Ａ間（４）の偏相関係数を更新する。
【００７０】
図２０について説明する。第２算出部１５３は、処理タイプＱを取り除く場合に、処理タイプＹ−Ｚ間（５）の偏相関係数と、処理タイプＱ−Ｙ間の偏相関係数と、処理タイプＱ−Ｚ間の偏相関係数とを基にして、処理タイプＹ−Ｚ間（５）の偏相関係数を更新する。
【００７１】
図２１について説明する。第２算出部１５３は、処理タイプＱを取り除く場合に、処理タイプＸ−Ｚ間（６）の偏相関係数と、処理タイプＱ−Ｘ間の偏相関係数と、処理タイプＱ−Ｚ間の偏相関係数と基にして、処理タイプＸ−Ｚ間（６）の偏相関係数を更新する。
【００７２】
図２２について説明する。第２算出部１５３は、処理タイプＱを取り除く場合に、処理タイプＰ−Ｚ間（７）の偏相関係数と、処理タイプＱ−Ｐ間の偏相関係数と、処理タイプＱ−Ｚ間の偏相関係数と基にして、処理タイプＰ−Ｚ間（７）の偏相関係数を更新する。
【００７３】
図２３について説明する。第２算出部１５３は、処理タイプＱを取り除く場合に、処理タイプＸ−Ｙ間（８）の偏相関係数と、処理タイプＱ−Ｘ間の偏相関係数と、処理タイプＱ−Ｙ間の偏相関係数とを基にして、処理タイプＸ−Ｙ間（８）の偏相関係数を更新する。
【００７４】
図２４について説明する。第２算出部１５３は、処理タイプＱを取り除く場合に、処理タイプＰ−Ｙ間（９）の偏相関係数と、処理タイプＱ−Ｐ間の偏相関係数と、処理タイプＱ−Ｙ間の偏相関係数を基にして、処理タイプＰ−Ｙ間（９）の偏相関係数を更新する。
【００７５】
図２５について説明する。第２算出部１５３は、処理タイプＱを取り除く場合に、処理タイプＰ−Ｘ間（１０）の偏相関係数と、処理タイプＱ−Ｐ間の偏相関係数と、処理タイプＱ−Ｘ間の偏相関係数を基にして、処理タイプＰ−Ｘ間（１０）の偏相関係数を更新する。
【００７６】
図２６について説明する。第２算出部１５３は、図１３〜図２５の処理を実行することで、各処理タイプ間（１）〜（１０）の偏相関係数を更新し、処理タイプＱの影響を取り除く。第２算出部１５３は、処理タイプＱの影響を取り除いた後に、処理タイプＱを除去する。例えば、第２算出部１５３は、ノードリスト１４４に登録された相関関係の組情報「処理タイプＸ、処理タイプＡ」に対応する同時呼び出しされる処理タイプから、処理タイプＱを除去する。
【００７７】
図２７について説明する。第２算出部１５３は、処理タイプＱの影響を取り除く場合と同様にして、処理タイプＺの影響を、各処理タイプ間の偏相関係数から取り除くことで、各処理タイプ間の偏相関係数の値を更新する。第２算出部１５３は、処理タイプＺの影響を取り除いた後に、処理タイプＺを除去する。例えば、第２算出部１５３は、ノードリスト１４４に登録された相関関係の組情報「処理タイプＸ、処理タイプＡ」に対応する同時呼び出しされる処理タイプから、処理タイプＺを除去する。
【００７８】
図２８について説明する。第２算出部１５３は、処理タイプＱの影響を取り除く場合と同様にして、処理タイプＰの影響を、各処理タイプ間の偏相関係数から取り除くことで、各処理タイプ間の偏相関係数の値を更新する。第２算出部１５３は、処理タイプＰの影響を取り除いた後に、処理タイプＰを除去する。例えば、第２算出部１５３は、ノードリスト１４４に登録された相関関係の組情報「処理タイプＸ、処理タイプＡ」に対応する同時呼び出しされる処理タイプから、処理タイプＰを除去する。
【００７９】
図２９について説明する。第２算出部１５３は、処理タイプＱの影響を取り除く場合と同様にして、処理タイプＹの影響を、各処理タイプ間の偏相関係数から取り除くことで、各処理タイプ間の偏相関係数の値を更新する。第２算出部１５３は、処理タイプＹの影響を取り除いた後に、処理タイプＹを除去する。例えば、第２算出部１５３は、ノードリスト１４４に登録された相関関係の組情報「処理タイプＸ、処理タイプＡ」に対応する同時呼び出しされる処理タイプから、処理タイプＹを除去する。
【００８０】
第２算出部１５３は、図１３〜図２９に示す処理を実行することで、処理タイプＸと処理タイプＡとの偏相関係数から、同時呼び出しによる影響を除去することができる。第２算出部１５３は、最終的に得られた処理タイプＸと処理タイプＡとの偏相関係数を、第２偏相関係数テーブル１４３ｂに格納する。第２算出部１５３は、他の処理タイプ間の偏相関係数についても、図１３〜図２９に対応する処理を行うことで、各処理タイプ間の偏相関数から、同時呼び出しによる影響を除去することができる。
【００８１】
上記の第１算出部１５２および第２算出部１５３が処理を実行することで、第２偏相関係数テーブル１４３ｂに登録された偏相関係数は、多階層全体のトレンドの影響と、同時呼び出しによる影響が除去された偏相関係数となる。
【００８２】
特定部１５４は、第２偏相関係数テーブル１４３ｂを基にして、呼び出し関係にある処理タイプの組を特定する処理部である。特定部１５４は、呼び出し関係にある処理タイプの組の情報を、呼び出し関係テーブル１４５に登録する。
【００８３】
特定部１５４は、第２偏相関係数テーブル１４７を参照し、有意水準α２において、有意に相関があるといえる処理タイプの組を特定する。例えば、有意水準α２の値を、０．０１とする。特定部１５４は、有意水準α２と、相関係数を算出した際のサンプル数から算出される自由度（少ない方のサンプル数−２）と、第２偏相関係数テーブル１４７の偏相関係数とを比較し、偏相関係数が有意水準α２において有意に相関がある、処理タイプの組を特定する。例えば、図５において、偏相関係数ＰＣＣ（Ｘ，Ａ−ＴＡＰＰ，ＴＤＢ）が、有意水準α２と与えられた自由度において相関があると認められる値以上である場合には、特定部１５４は、処理タイプＸおよび処理タイプＡが、呼び出し関係にあると特定する。ただし、図５の偏相関係数は、第１算出部１５２および第２算出部１５３によって、多階層全体のトレンドの影響と、同時呼び出しによる影響が除去された偏相関係数とする。また、ここで言うサンプル数とは、図３において、当該処理タイプの実行数が１以上であった時刻の数である。
【００８４】
判定部１５５は、呼び出し関係テーブル１４５および第２時系列データ１４６を基にして、応答遅延の発生している処理タイプを判定する処理部である。判定部１５５は、判定結果を、表示部１３０に表示させる。以下において、判定部１５５の処理について具体的に説明する。
【００８５】
判定部１５５は、第２時系列データ１４６をスキャンし、応答時間が閾値以上となる処理タイプを特定する。判定部１５５は、呼び出し関係テーブル１４５を参照し、各処理タイプの呼び出し関係を特定する。判定部１５５は、応答時間が閾値以上となる処理タイプのうち、呼び出し先の処理タイプも応答時間が閾値以上となっている場合には、呼び出し先の処理タイプを、応答遅延の発生している処理タイプとして判定する。また、判定部１５５は、応答時間が閾値以上となる処理タイプのうち、呼び出し先の処理タイプの応答時間が閾値以上となっていない場合には、呼び出し元の処理タイプを、応答遅延の発生している処理タイプとして判定する。
【００８６】
図３０は、判定部の処理の一例を示す図である。図３０において、応答時間データ７２ｘは、処理タイプＸの応答時間と時刻との関係を示すデータである。応答時間データ７２ｙは、処理タイプＹの応答時間と時刻との関係を示すデータである。応答時間データ７３ａは、処理タイプＡの応答時間と時刻との関係を示すデータである。応答時間データ７３ｂは、処理タイプＢの応答時間と時刻との関係を示すデータである。また、図３０に示す例では、処理タイプＸと処理タイプＡとが呼び出し関係にあり、呼び出し元を処理タイプＸ、呼び出し先を処理タイプＡとする。処理タイプＹと処理タイプＢとが呼び出し関係にあり、呼び出し元を処理タイプＹ、呼び出し先を処理タイプＢとする。
【００８７】
例えば、判定部１５５が、各応答時間データをスキャンすると、処理タイプＸ，Ａ，Ｙにおいて、応答時間が閾値以上になっており、そのうちで処理タイプＸとＡは同時刻に応答遅延が発生している。判定部１５５は、処理タイプＸ、処理タイプＡは、呼び出し関係にあるため、処理タイプＸおよび処理タイプＡのうち、呼び出し先の処理タイプＡを、応答遅延の発生している処理タイプであると判定する。また、判定部１５５は、処理タイプＹについて、呼び出し先の処理タイプＢの同時刻の応答時間が閾値以上となっていないため、処理タイプＹを、応答遅延の発生している処理タイプであると判定する。
【００８８】
図３１は、判定部の判定結果の画面例を示す図である。図３１において、１つのバーが処理タイプに対応する。例えば、バー８１〜８６は、Ｗｅｂ層７１で実行される各処理タイプにそれぞれ対応する。バー８７〜８９は、ＡＰ層７２で実行される各処理タイプに対応する。バー９０〜９３は、ＤＢ層７３で実行される各処理タイプに対応する。判定部１５５は、各バー８１〜９３の高さを、処理タイプの実行回数に応じて変化させる。例えば、判定部１５５は、実行回数の多い処理タイプのバーをより高く設定する。判定部１５５は、呼び出し関係テーブル１４５を基にして、呼び出し関係にある処理タイプのバーの間にリンクを設定する。
【００８９】
図３１の点線の枠は、サーバを表す。図３１の例では、Ｗｅｂ層７１およびＡＰ層７２に２台のサーバが存在し、ＤＢ層７３に１台のサーバが存在する例を示す。判定部１５５は、バーの色を過去の応答遅延の発生回数に応じて、変化させても良い。例えば、判定部１５５は、過去に、所定回数以上応答遅延を観測した処理タイプのバーを、第１の色に設定する。判定部１５５は、過去に、応答遅延を１回以上、所定回数未満だけ観測した処理タイプのバーを、第２の色に設定する。判定部１５５は、応答遅延を１回も観測していない処理タイプのバーを、第３の色に設定する。
【００９０】
また、判定部１５５は、応答遅延を発生している処理タイプのバーに、マークを設定する。例えば、応答遅延を発生している処理タイプのバーを、バー９１とすると、判定部１５５は、バー９１にマーク９５を設定する。更に、判定部１５５は、応答遅延を発生している処理タイプのバーにつながるリンクを強調表示してもよい。例えば、バー９１とバー８８とのリンク、バー８８とバー８３，８５とのリンクを強調表示させても良い。
【００９１】
次に、本実施例に係る性能診断サーバ１００の処理手順について説明する。図３２および図３３は、呼び出し関係を判定する処理手順を示すフローチャートである。図３２に示すように、性能診断サーバ１００の第１算出部１５２は、ステップＳ１０１Ａ〜ステップＳ１０１Ｂまでの処理を、処理タイプ毎にループし、全ての処理タイプに対して処理が終了した後に、ステップＳ１１０Ａに移行する。
【００９２】
第１算出部１５２は、現在の処理タイプについて、上位の階層が存在するか否かを判定する（ステップＳ１０２）。第１算出部１５２は、上位の階層が存在しない場合には（ステップＳ１０２，Ｎｏ）、再度ステップＳ１０１Ａに移行する。
【００９３】
第１算出部１５２は、上位の階層が存在する場合には（ステップＳ１０２，Ｙｅｓ）、ステップＳ１０３Ａに移行する。第１算出部１５２は、ステップＳ１０３Ａ〜ステップＳ１０３Ｂまでの処理を、上位の処理タイプ毎にループし、全ての上の処理タイプに対して処理が終了した後に、ループを抜ける。
【００９４】
第１算出部１５２は、２つの処理タイプの実行回数の時系列データ間で相関係数を計算する（ステップＳ１０４）。第１算出部１５２は、上位階層との偏相関係数を算出し、上位階層における実行回数の影響を除去する（ステップＳ１０５）。第１算出部１５２は、下位階層との偏相関係数を算出し、下位階層における実行回数の影響を除去する（ステップＳ１０６）。
【００９５】
第２算出部１５３は、得られた偏相関係数が与えられたサンプル数と有意水準において、有意に相関があると言えるか否かを判定する（ステップＳ１０７）。第１算出部１５１は、有意に相関があると言えない場合には（ステップＳ１０７，Ｎｏ）、ステップＳ１０９に移行する。一方、第２算出部１５３は、有意に相関があると言える場合には（ステップＳ１０７，Ｙｅｓ）、該当するペアをお互いに「同時呼び出しされる処理の候補」として、ノードリスト１４４に記録する（ステップＳ１０８）。
【００９６】
第１算出部１５２は、偏相関係数を偏相関係数テーブル１４３に登録する（ステップＳ１０９）。
【００９７】
図３３の説明に移行する。性能診断サーバ１００の第２算出部１５３は、ステップＳ１１０Ａ〜ステップＳ１１０Ｂまでの処理を、処理タイプ毎にループし、全ての処理タイプに対して処理が終了した後に、呼び出し関係を判定する処理を終了する。
【００９８】
第２算出部１５３は、現在の処理タイプについて、上位の階層が存在するか否かを判定する（ステップＳ１１１）。第２算出部１５３は、上位の階層が存在しない場合には（ステップＳ１１１，Ｎｏ）、再度ステップＳ１１０Ａに移行する。
【００９９】
第２算出部１５３は、上位の階層が存在する場合には（ステップＳ１１１，Ｙｅｓ）、ステップＳ１１２Ａに移行する。第２算出部１５３は、ステップＳ１１２Ａ〜１１２Ｂまでの処理を、上位の処理タイプ毎にループし、全ての上位の処理タイプに対して処理が終了した後に、ループを抜ける。
【０１００】
第２算出部１５３は、「同時呼び出しされる処理」により影響を除去する（ステップＳ１１３）。第２算出部１５３は、得られた偏相関係数が与えられたサンプル数と有意水準において、有意に相関があると言えるか否かを判定する（ステップＳ１１４）。第２算出部１５３は、有意に相関があると言えない場合には（ステップＳ１１４，Ｎｏ）、再度ステップＳ１１２Ａに移行する。一方、第２算出部１５３は、有意に相関があると言える場合には（ステップＳ１１４，Ｙｅｓ）、該当するペアの間に呼び出し関係があると判定し、呼び出し関係テーブルに登録する（ステップＳ１１５）。
【０１０１】
次に、図３３のステップＳ１１３に示した「同時呼び出しされる処理」による影響を除去する処理手順の一例について説明する。図３４は、同時呼び出しされる処理による影響を除去する処理手順を示すフローチャートである。図３４に示すように、第２算出部１５３は、第１処理タイプと第２処理タイプのいずれかと同時に「同時に呼び出される処理タイプ」の候補として記録された処理タイプで、第１処理タイプの階層以上のものを全て収集し、ノードリスト１４４に登録する（ステップＳ２０１）。
【０１０２】
第２算出部１５３は、ノードリスト１４４の端末に第１処理タイプ、第２処理タイプを追加する（ステップＳ２０２）。なお、図６に示したノードリスト１４４において、第２算出部１５３は、第１処理タイプおよび第２処理タイプに相当する情報を、相関係数の組情報に登録していた。しかし、これに限定されるものではなく、ステップＳ２０２に示すように、第２算出部１５３は、同時呼び出しされる処理タイプの後に、第１処理タイプおよび第２処理タイプに相当する情報を追加しても良い。
【０１０３】
第２算出部１５３は、ノードリスト１４４内の処理タイプ２つの全ての組合せについて、各偏相関係数を記憶部１４０上の作業領域にコピーする（ステップＳ２０３）。第２算出部１５３は、ステップＳ２０４Ａ〜２０４Ｂまでの処理をループする。
【０１０４】
第２算出部１５３は、ノードリスト１４４内の処理タイプ数が２より大きいか否かを判定する（ステップＳ２０５）。第２算出部１５３は、ノードリスト１４４内の処理タイプ数が２より大きくない場合には（ステップＳ２０５，Ｎｏ）、ループを抜け、ステップＳ２１０に移行する。
【０１０５】
一方、第２算出部１５３は、ノードリスト１４４内の処理タイプ数が２より大きい場合には（ステップＳ２０５，Ｙｅｓ）、ノードリスト１４４内の先頭の処理タイプを取り外す（ステップＳ２０６）。この先頭の処理タイプを処理タイプ（１）と表記する。
【０１０６】
第２算出部１５３は、ノードリスト１４４内の２つの処理タイプのペア全てについて、ステップＳ２０７Ａ〜２０７Ｂまでの処理をループする。ある処理タイプのペアを、処理タイプ（２）、処理タイプ（３）と表記する。
【０１０７】
第２算出部１５３は、処理タイプ（２）と処理タイプ（３）の間の暫定相関係数から、処理タイプ（１）の影響を除去することで、処理タイプ（２）と処理タイプ（３）との間の偏相関係数を算出する（ステップＳ２０８）。
【０１０８】
第２算出部１５３は、算出した偏相関係数を、処理タイプ（２）と処理タイプ（３）との間の新しい暫定相関係数に設定する（ステップＳ２０９）。
【０１０９】
第２算出部１５３は、ステップＳ２０７Ａ〜２０７Ｂまでの処理をループが終了した後に、各処理タイプ間の偏相関係数を偏相関係数テーブルに記録し（ステップＳ２１０）、同時呼び出しされる処理」による影響を除去する処理を終了する。
【０１１０】
次に、応答遅延を発生している処理タイプを判定する処理手順について説明する。図３５は、応答遅延を発生している処理タイプを判定する処理手順を示すフローチャートである。図３５に示すように、性能診断サーバ１００の判定部１５５は、応答遅延している処理タイプを検出し、遅延一覧リストに登録する（ステップＳ３０１）。ここでは、遅延一覧リストの図示を省略する。
【０１１１】
判定部１５５は、ステップＳ３０２Ａ〜ステップ３０２Ｂまでの処理を、応答遅延している処理タイプの数だけループする。判定部１５５は、応答遅延している全ての処理タイプに対して処理が終了した後に、ループを抜ける。
【０１１２】
判定部１５５は、現在の処理タイプについて、下位の階層が存在するか否かを判定する（ステップＳ３０３）。判定部１５５は、下位の階層が存在しない場合には（ステップＳ３０３，Ｎｏ）、現在の処理タイプを応答遅延の発生源として診断結果に記録し、ステップＳ３０４に移行する。ここでは、診断結果の図示を省略する。
【０１１３】
一方、判定部１５５は、下位の階層が存在する場合には（ステップＳ３０３，Ｙｅｓ）、現在の処理タイプと、下位の階層のいずれかの処理タイプとの間に呼び出し関係が存在するか否かを判定する（ステップＳ３０５）。判定部１５５は、下位の階層のいずれかの処理タイプとの間に呼び出し関係がない場合には（ステップＳ３０５，Ｎｏ）、ステップＳ３０４に移行する。
【０１１４】
一方、判定部１５５は、下位の階層のいずれかの処理タイプとの間に呼び出し関係が存在する場合には（ステップＳ３０５，Ｙｅｓ）、下位の階層の各処理タイプについて、同一期間において応答遅延しているか否かを判定する（ステップＳ３０６）。判定部１５５は、呼び出し関係にある下位の階層の処理タイプの中に、同一期間において応答遅延している処理タイプが存在しない場合には（ステップＳ３０７，Ｎｏ）、ステップＳ３０４に移行する。
【０１１５】
一方、判定部１５５は、呼び出し関係にある下位の階層の処理タイプの中に、同一期間において応答遅延している処理タイプが存在する場合には（ステップＳ３０７，Ｙｅｓ）、ステップＳ３０８に移行する。
【０１１６】
判定部１５５は、現在の処理タイプの応答遅延は、下位の階層の処理タイプにおける応答遅延が伝搬してきたものと判定する。判定部１５５は、現在の処理タイプと、呼び出し関係にある処理タイプとを対応付けて、診断結果に記憶する（ステップＳ３０８）。
【０１１７】
次に、本実施例に係る性能診断サーバ１００の効果について説明する。性能診断サーバ１００は、各処理タイプの相関係数から多階層全体のトレンドの影響を除去した偏相関係数を算出し、各処理タイプ間の相関係数を更新する。このため、性能診断サーバ１００によれば、階層全体のリクエストによる影響を除いた処理タイプ間の相関係数を算出することができ、これによって、各処理タイプの呼び出し関係を精密に特定することができる。
【０１１８】
性能診断サーバ１００は、各処理タイプの相関係数から同時呼び出しによる影響を除去した偏相関係数を算出し、各処理タイプの相関係数を更新する。このため、性能診断サーバ１００によれば、同時呼び出しによる影響を除いた処理タイプ間の相関係数を算出することができ、これによって、各処理タイプの呼び出し関係を精密に特定することができる。
【０１１９】
図３６は、同時呼び出しによる影響の一例を説明するための図である。図３６において、例えば、処理タイプＸと処理タイプＹとが同時に呼び出される関係にあると、処理タイプＸと処理タイプＹとの相関係数が大きくなる。また、処理タイプＸと処理タイプＡとの間に呼び出し関係がある場合には、処理タイプＸと処理タイプＹとが同時に呼び出されるが故に、処理タイプＹと処理タイプＡとの間に呼び出し関係がないにもかかわらず、処理タイプＹと処理タイプＡとの相関係数が高くなる。このため、処理タイプＹと処理タイプＡとの間に呼び出し関係があると誤判定してしまう。これに対して、性能診断サーバ１００は、上記のようにして、同時呼び出しの影響を取り除くため、誤判定を防止することができる。
【０１２０】
性能診断サーバ１００は、該当する処理タイプの階層以上にある全ての処理タイプのうち、該当する処理タイプとの相関係数を基にして、同時呼び出しの候補となる処理タイプを絞り込み。そして、性能診断サーバ１００は、絞り込んだ処理タイプを基にして、同時呼び出しによる影響を除去する。このため、計算コストを削減することができる。
【０１２１】
性能診断サーバ１００は、多階層全体のトレンドの影響を除去し、同時呼び出しによる影響を除去した各処理タイプ間の相関係数に基づき、呼び出し関係を特定し、この呼び出し関係を基にして、応答遅延の発生源となる処理タイプを判定する。このため、応答遅延の発生源となる処理タイプを正確に特定することができる。
【０１２２】
次に、上記実施例に示した性能診断サーバ１００と同様の機能を実現する相関係数算出プログラムを実行するコンピュータの一例について説明する。図３７は、相関係数算出プログラムを実行するコンピュータの一例を示す図である。
【０１２３】
図３７に示すように、コンピュータ２００は、各種演算処理を実行するＣＰＵ２０１と、ユーザからのデータの入力を受け付ける入力装置２０２と、ディスプレイ２０３とを有する。また、コンピュータ２００は、記憶媒体からプログラム等を読取る読み取り装置２０４と、ネットワークを介して他のコンピュータとの間でデータの授受を行うインターフェース装置２０５とを有する。また、コンピュータ２００は、各種情報を一時記憶するＲＡＭ２０６と、ハードディスク装置２０７とを有する。そして、各装置２０１〜２０７は、バス２０８に接続される。
【０１２４】
ハードディスク装置２０７は、算出プログラム２０７ａ、特定プログラム２０７ｂ、判定プログラム２０７ｃを有する。ＣＰＵ２０１は、算出プログラム２０７ａ、特定プログラム２０７ｂ、判定プログラム２０７ｃを読み出してＲＡＭ２０６に展開する。算出プログラム２０７ａは、算出プロセス２０６ａとして機能する。特定プログラム２０７ｂは、特定プロセス２０６ｂとして機能する。判定プログラム２０７ｃは、判定プロセス２０６ｃとして機能する。
【０１２５】
例えば、算出プロセス２０６ａは、第１算出部１５２、第２算出部１５３に対応する。特定プロセス２０６ｂは、特定部１５４に対応する。判定プロセス２０６ｃは、判定部１５５に対応する。
【０１２６】
なお、算出プログラム２０７ａ、特定プログラム２０７ｂ、判定プログラム２０７ｃについては、必ずしも最初からハードディスク装置２０７に記憶させておかなくても良い。例えば、コンピュータ２００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ２００が算出プログラム２０７ａ、特定プログラム２０７ｂ、判定プログラム２０７ｃを読み出して実行するようにしてもよい。
【０１２７】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１２８】
（付記１）コンピュータが実行する相関係数算出方法であって、
多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、
第１階層における第１の処理の時系列データと第２階層における第２の処理の時系列データ間の第１相関係数を算出し、
前記第２階層の全体リクエスト数の時系列データと前記第２の処理の時系列データ間の第２相関係数を算出し、
前記第２階層の全体リクエスト数の時系列データと前記第１の処理の時系列データ間の第３相関係数を算出し、
前記第１階層の全体リクエストが前記第３相関係数に与える影響を除いた第３偏相関係数を算出し、
前記第１階層の全体リクエストが前記第２相関係数に与える影響を除いた第２偏相関係数を算出し、
前記第１階層の全体リクエストが前記第１相関係数に与える影響を除いた第１偏相関係数を算出し、
前記第３偏相関係数および前記第２偏相関係数を用いて、前記第２階層の全体リクエストが前記第１偏相関係数に与える影響を除いた相関係数を前記第１処理と前記第２処理間の相関係数とする
処理を実行することを特徴とする相関係数算出方法。
【０１２９】
（付記２）前記第１階層に存在する前記第１の処理と異なる第３の処理と、前記第１階層よりも上の階層に存在する第４の処理とを特定し、
前記第２の処理の時系列データおよび前記第３の処理の時系列データ間の第４相関係数を、前記第３の処理の時系列データおよび前記第４の処理の時系列データ間の第５相関係数と、前記第２の処理の時系列データと前記第４の処理の時系列データ間の第６相関係数とを基にして算出し、
前記第１相関係数を、前記第１の処理の時系列データおよび前記第４の処理の時系列データ間の第７相関係数と、前記第６相関係数とを基にして更新し、
さらに前記第１相関係数を、前記第１の処理の時系列データおよび前記第３の処理の時系列データ間の第８相関係数と、前記第４相関係数とを基にして更新する処理を更に実行することを特徴とする付記１に記載の相関係数算出方法。
【０１３０】
（付記３）前記特定する処理は、複数の第３の処理のうち前記第２の処理と有意に相関のある第３の処理を特定し、複数の第４の処理のうち前記第１の処理と有意に相関のある第４の処理を特定することを特徴とする付記２に記載の相関係数算出方法。
【０１３１】
（付記４）前記第１の処理の時系列データを基にして前記第１の処理に応答遅延が発生している場合に、前記第１の処理から呼び出される第２の処理を特定し、前記第２の処理に応答遅延が発生しているか否かを判定し、判定結果を出力する処理を更に実行することを特徴とする付記１、２または３に記載の相関係数算出方法。
【０１３２】
（付記５）コンピュータに、
多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、
第１階層における第１の処理の時系列データと第２階層における第２の処理の時系列データ間の第１相関係数を算出し、
前記第２階層の全体リクエスト数の時系列データと前記第２の処理の時系列データ間の第２相関係数を算出し、
前記第２階層の全体リクエスト数の時系列データと前記第１の処理の時系列データ間の第３相関係数を算出し、
前記第１階層の全体リクエストが前記第３相関係数に与える影響を除いた第３偏相関係数を算出し、
前記第１階層の全体リクエストが前記第２相関係数に与える影響を除いた第２偏相関係数を算出し、
前記第１階層の全体リクエストが前記第１相関係数に与える影響を除いた第１偏相関係数を算出し、
前記第３偏相関係数および前記第２偏相関係数を用いて、前記第２階層の全体リクエストが前記第１偏相関係数に与える影響を除いた相関係数を前記第１処理と前記第２処理間の相関係数とする
処理を実行させることを特徴とする相関係数算出プログラム。
【０１３３】
（付記６）前記第１階層に存在する前記第１の処理と異なる第３の処理と、前記第１階層よりも上の階層に存在する第４の処理とを特定し、
前記第２の処理の時系列データおよび前記第３の処理の時系列データ間の第４相関係数を、前記第３の処理の時系列データおよび前記第４の処理の時系列データ間の第５相関係数と、前記第２の処理の時系列データと前記第４の処理の時系列データ間の第６相関係数とを基にして算出し、
前記第１相関係数を、前記第１の処理の時系列データおよび前記第４の処理の時系列データ間の第７相関係数と、前記第６相関係数とを基にして更新し、
さらに前記第１相関係数を、前記第１の処理の時系列データおよび前記第３の処理の時系列データ間の第８相関係数と、前記第４相関係数とを基にして更新する処理を更に実行することを特徴とする付記５に記載の相関係数算出プログラム。
【０１３４】
（付記７）前記特定する処理は、複数の第３の処理のうち前記第２の処理と有意に相関のある第３の処理を特定し、複数の第４の処理のうち前記第１の処理と有意に相関のある第４の処理を特定することを特徴とする付記６に記載の相関係数算出プログラム。
【０１３５】
（付記８）前記第１の処理の時系列データを基にして前記第１の処理に応答遅延が発生している場合に、前記第１の処理から呼び出される第２の処理を特定し、前記第２の処理に応答遅延が発生しているか否かを判定し、判定結果を出力する処理を更に実行することを特徴とする付記５、６または７に記載の相関係数算出プログラム。
【０１３６】
（付記９）多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、第１階層における第１の処理の時系列データと第２階層における第２の処理の時系列データ間の第１相関係数を算出し、前記第２階層の全体リクエスト数の時系列データと前記第２の処理の時系列データ間の第２相関係数を算出し、前記第２階層の全体リクエスト数の時系列データと前記第１の処理の時系列データ間の第３相関係数を算出し、前記第１階層の全体リクエストが前記第３相関係数に与える影響を除いた第３偏相関係数を算出し、前記第１階層の全体リクエストが前記第２相関係数に与える影響を除いた第２偏相関係数を算出し、前記第１階層の全体リクエストが前記第１相関係数に与える影響を除いた第１偏相関係数を算出し、前記第３偏相関係数および前記第２偏相関係数を用いて、前記第２階層の全体リクエストが前記第１偏相関係数に与える影響を除いた相関係数を前記第１処理と前記第２処理間の相関係数とする第１算出部
を有することを特徴とする相関係数算出装置。
【０１３７】
（付記１０）前記第１階層に存在する前記第１の処理と異なる第３の処理と、前記第１階層よりも上の階層に存在する第４の処理とを特定し、前記第２の処理の時系列データおよび前記第３の処理の時系列データ間の第４相関係数を、前記第３の処理の時系列データおよび前記第４の処理の時系列データ間の第５相関係数と、前記第２の処理の時系列データと前記第４の処理の時系列データ間の第６相関係数とを基にして算出し、前記第１相関係数を、前記第１の処理の時系列データおよび前記第４の処理の時系列データ間の第７相関係数と、前記第６相関係数とを基にして更新し、さらに前記第１相関係数を、前記第１の処理の時系列データおよび前記第３の処理の時系列データ間の第８相関係数と、前記第４相関係数とを基にして更新する第２算出部を更に有することを特徴とする相関係数算出装置。
【０１３８】
（付記１１）前記第２算出部は、複数の第３の処理のうち前記第２の処理と有意に相関のある第３の処理を特定し、複数の第４の処理のうち前記第１の処理と有意に相関のある第４の処理を特定することを特徴とする付記１０に記載の相関係数算出装置。
【０１３９】
（付記１２）前記第１の処理の時系列データを基にして前記第１の処理に応答遅延が発生している場合に、前記第１の処理から呼び出される第２の処理を特定し、前記第２の処理に応答遅延が発生しているか否かを判定し、判定結果を出力する判定部を更に有することを特徴とする付記９、１０または１１に記載の相関係数算出装置。
【符号の説明】
【０１４０】
５０  ネットワーク
６０  スイッチ
７０  多階層システム
１００  性能診断サーバ
【図１】
2015210788.tif 000008
【図２】
2015210788.tif 000009
【図３】
2015210788.tif 000010
【図４】
2015210788.tif 000011
【図５】
2015210788.tif 000012
【図６】
2015210788.tif 000013
【図７】
2015210788.tif 000014
【図８】
2015210788.tif 000015
【図９】
2015210788.tif 000016
【図１０】
2015210788.tif 000017
【図１１】
2015210788.tif 000018
【図１２】
2015210788.tif 000019
【図１３】
2015210788.tif 000020
【図１４】
2015210788.tif 000021
【図１５】
2015210788.tif 000022
【図１６】
2015210788.tif 000023
【図１７】
2015210788.tif 000024
【図１８】
2015210788.tif 000025
【図１９】
2015210788.tif 000026
【図２０】
2015210788.tif 000027
【図２１】
2015210788.tif 000028
【図２２】
2015210788.tif 000029
【図２３】
2015210788.tif 000030
【図２４】
2015210788.tif 000031
【図２５】
2015210788.tif 000032
【図２６】
2015210788.tif 000033
【図２７】
2015210788.tif 000034
【図２８】
2015210788.tif 000035
【図２９】
2015210788.tif 000036
【図３０】
2015210788.tif 000037
【図３１】
2015210788.tif 000038
【図３２】
2015210788.tif 000039
【図３３】
2015210788.tif 000040
【図３４】
2015210788.tif 000041
【図３５】
2015210788.tif 000042
【図３６】
2015210788.tif 000043
【図３７】
2015210788.tif 000044
【図３８】
2015210788.tif 000045
【図３９】
2015210788.tif 000046
【図４０】
2015210788.tif 000047
【図４１】
2015210788.tif 000048
【図４２】
2015210788.tif 000049
【手続補正書】
【提出日】平成27年3月25日(2015.3.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータが実行する相関係数算出方法であって、
多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、
第１階層における第１の処理の時系列データと第２階層における第２の処理の時系列データ間の第１相関係数を算出し、
前記第１階層の全体リクエスト数の時系列データと前記第１の処理の時系列データ間の第２相関係数を算出し、
前記第１階層の全体リクエスト数の時系列データと前記第２階層の全体リクエスト数の時系列データ間の第３相関係数を算出し、
前記第２階層の全体リクエスト数の時系列データと前記第２の処理の時系列データ間の第４相関係数を算出し、
前記第１階層の全体リクエスト数の時系列データと前記第２の処理の時系列データ間の第５相関係数を算出し、
前記第２階層の全体リクエスト数の時系列データと前記第１の処理の時系列データ間の第６相関係数を算出し、
前記第２相関係数および前記第３相関係数を用いて、前記第１階層の全体リクエストが前記第６相関係数に与える影響を除いた第６偏相関係数を算出し、
前記第３相関係数および前記第５相関係数を用いて、前記第１階層の全体リクエストが前記第４相関係数に与える影響を除いた第４偏相関係数を算出し、
前記第２相関係数および前記第５相関係数を用いて、前記第１階層の全体リクエストが前記第１相関係数に与える影響を除いた第１偏相関係数を算出し、
前記第６偏相関係数および前記第４偏相関係数を用いて、前記第２階層の全体リクエストが前記第１偏相関係数に与える影響を除いた相関係数を前記第１処理と前記第２処理間の相関係数とする
処理を実行することを特徴とする相関係数算出方法。
【請求項２】
前記第１階層に存在する前記第１の処理と異なる第３の処理と前記第１階層よりも上の階層に存在する第４の処理とを特定し、
前記第２の処理の時系列データおよび前記第３の処理の時系列データ間の第４相関係数を、前記第３の処理の時系列データおよび前記第４の処理の時系列データ間の第５相関係数と、前記第２の処理の時系列データと前記第４の処理の時系列データ間の第６相関係数とを基にして算出し、
前記第１相関係数を、前記第１の処理の時系列データおよび前記第４の処理の時系列データ間の第７相関係数と、前記第６相関係数とを基にして更新し、
さらに前記第１相関係数を、前記第１の処理の時系列データおよび前記第３の処理の時系列データ間の第８相関係数と、前記第４相関係数とを基にして更新する処理を更に実行することを特徴とする請求項１に記載の相関係数算出方法。
【請求項３】
前記特定する処理は、複数の第３の処理のうち前記第２の処理と有意に相関のある第３の処理を特定し、複数の第４の処理のうち前記第１の処理と有意に相関のある第４の処理を特定することを特徴とする請求項２に記載の相関係数算出方法。
【請求項４】
前記第１の処理の時系列データを基にして前記第１の処理に応答遅延が発生している場合に、前記第１の処理から呼び出される第２の処理を特定し、前記第２の処理に応答遅延が発生しているか否かを判定し、判定結果を出力する処理を更に実行することを特徴とする請求項１、２または３に記載の相関係数算出方法。
【請求項５】
コンピュータに、
多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、
第１階層における第１の処理の時系列データと第２階層における第２の処理の時系列データ間の第１相関係数を算出し、
前記第１階層の全体リクエスト数の時系列データと前記第１の処理の時系列データ間の第２相関係数を算出し、
前記第１階層の全体リクエスト数の時系列データと前記第２階層の全体リクエスト数の時系列データ間の第３相関係数を算出し、
前記第２階層の全体リクエスト数の時系列データと前記第２の処理の時系列データ間の第４相関係数を算出し、
前記第１階層の全体リクエスト数の時系列データと前記第２の処理の時系列データ間の第５相関係数を算出し、
前記第２階層の全体リクエスト数の時系列データと前記第１の処理の時系列データ間の第６相関係数を算出し、
前記第２相関係数および前記第３相関係数を用いて、前記第１階層の全体リクエストが前記第６相関係数に与える影響を除いた第６偏相関係数を算出し、
前記第３相関係数および前記第５相関係数を用いて、前記第１階層の全体リクエストが前記第４相関係数に与える影響を除いた第４偏相関係数を算出し、
前記第２相関係数および前記第５相関係数を用いて、前記第１階層の全体リクエストが前記第１相関係数に与える影響を除いた第１偏相関係数を算出し、
前記第６偏相関係数および前記第４偏相関係数を用いて、前記第２階層の全体リクエストが前記第１偏相関係数に与える影響を除いた相関係数を前記第１処理と前記第２処理間の相関係数とする
処理を実行させることを特徴とする相関係数算出プログラム。
【請求項６】
多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、第１階層における第１の処理の時系列データと第２階層における第２の処理の時系列データ間の第１相関係数を算出し、前記第１階層の全体リクエスト数の時系列データと前記第１の処理の時系列データ間の第２相関係数を算出し、前記第１階層の全体リクエスト数の時系列データと前記第２階層の全体リクエスト数の時系列データ間の第３相関係数を算出し、前記第２階層の全体リクエスト数の時系列データと前記第２の処理の時系列データ間の第４相関係数を算出し、前記第１階層の全体リクエスト数の時系列データと前記第２の処理の時系列データ間の第５相関係数を算出し、前記第２階層の全体リクエスト数の時系列データと前記第１の処理の時系列データ間の第６相関係数を算出し、前記第２相関係数および前記第３相関係数を用いて、前記第１階層の全体リクエストが前記第６相関係数に与える影響を除いた第６偏相関係数を算出し、前記第３相関係数および前記第５相関係数を用いて、前記第１階層の全体リクエストが前記第４相関係数に与える影響を除いた第４偏相関係数を算出し、前記第２相関係数および前記第５相関係数を用いて、前記第１階層の全体リクエストが前記第１相関係数に与える影響を除いた第１偏相関係数を算出し、前記第６偏相関係数および前記第４偏相関係数を用いて、前記第２階層の全体リクエストが前記第１偏相関係数に与える影響を除いた相関係数を前記第１処理と前記第２処理間の相関係数とする第１算出部
を有することを特徴とする相関係数算出装置。