(57)【要約】【課題】リクエストごとにサーバに与える負荷が異なる場合でも、リクエストとサーバ負荷との関係を特定できる負荷分析システムを提供する。【解決手段】分類方式導出手段２０１は、リクエストの分類方式を導出する。選択手段２０２は、導出された分類方式の各組合せについて、解析手段２０３及び評価手段２０４により、分類方式の各組合せでリクエストを分類した際の分類ごとのリクエスト数とサーバ負荷との相関、及び、その相関の妥当性をそれぞれ算出する。選択手段２０２は、算出された妥当性が高い分類方式のうちで、分類の数が最も少ない分類方式、及び、その分類方式でリクエストを分類した際の相関を、出力装置３００に出力する。【選択図】図１
2008225651.tif 000002
【特許請求の範囲】
【請求項１】
区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、リクエストの分類方式を導出する分類方式導出手段と、
複数のリクエストを含むリクエスト群を、前記分類方式を利用して分類し、分類ごとのリクエスト数とサーバ負荷情報との相関を算出する解析手段と、
前記解析手段にて算出された相関の妥当性を算出する評価手段と、
前記解析手段及び前記評価手段により、前記導出された分類方式の各組合せを分類方針として前記リクエストを分類した際のリクエスト数とサーバ負荷との相関、及び、該相関の妥当性をそれぞれ算出し、前記算出された妥当性が基準となる妥当性よりも高い分類方針のうちで分類の数が最も少ない分類方針を選択し、該選択した分類方針、及び、当該分類方針でリクエストを分類したときに算出された相関を出力する選択手段とを備えることを特徴とする負荷分析システム。
【請求項２】
区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、リクエストの分類方式を導出する分類方式導出手段と、
複数のリクエストを含むリクエスト群を、前記分類方式を利用して分類し、分類ごとのリクエスト数とサーバ負荷情報との相関を算出する解析手段と、
前記解析手段にて算出された相関の妥当性を算出する評価手段と、
前記導出された分類方式の中から、リクエストを２分類する分類方針を選択し、該選択した分類方針と、相関、該相関の妥当性、及び、相関を算出する際に用いた分類方針を記憶する分析結果記憶部に記憶された分類方針とを結合した分類方針を生成し、前記解析手段及び前記評価手段により、前記生成した分類方針で前記リクエストを分類した際のリクエスト数とサーバ負荷との相関、及び、該相関の妥当性をそれぞれ算出し、該算出された相関の妥当性と、前記分析結果記憶部に記憶された相関の妥当性とを比較し、前記算出された相関の妥当性が前記分析結果記憶部の妥当性に記憶された相関の妥当性よりも大きいときには、前記分析結果記憶部に、前記算出された相関、当該相関の妥当性、及び、当該相関を算出する際に用いた分類方針を記憶する組合せ手段とを備えることを特徴とする負荷分析システム。
【請求項３】
前記分類方式導出手段は、木構造で表される分類方式を導出し、前記解析手段は、前記リクエスト群を、前記木構造で表される分類方式のノードのうちで、前記分類方針に対応するノードに何回到達したかで分類して分類ごとのリクエスト数をカウントし、分類ごとのリクエスト数とサーバ負荷情報との相関を算出する、請求項１又は２に記載の負荷分析システム。
【請求項４】
前記リクエスト群を、前記分類方式導出手段によって導出された各分類方式で分類して各分類方式に属するリクエスト数をカウントし、該カウントされたリクエスト数が全体リクエスト数よりも所定の割合よりも少ない分類方式を、前記導出された分類方式から除去する除去手段を更に有する、請求項１〜３の何れか一に記載の負荷分析システム。
【請求項５】
前記リクエストの数、及び、内容に関する情報を取得し、前記分類方式導出手段及び解析手段に提供するリクエスト取得手段と、サーバのＣＰＵ、メモリ、Ｉ／Ｏに関する負荷情報を取得し、前記解析手段に提供する性能取得手段とを更に有する、請求項１〜４の何れか一に記載の負荷分析システム。
【請求項６】
前記解析手段は、前記リクエスト群取得時のサーバの負荷情報と、前記分類ごとのリクエスト数とに基づいて、回帰分析により前記相関を算出する、請求項１〜５の何れか一に記載の負荷分析システム。
【請求項７】
前記リクエストが“／”、“＆”、“＝”、“＋”を区切り文字とするＨＴＴＰリクエストであり、前記解析手段は、前記区切り文字を利用して、ＨＴＴＰリクエストのＵＲＩを分類する、請求項１〜６の何れか一に記載の負荷分析システム。
【請求項８】
コンピュータを用いて、負荷分析に用いるリクエストの分類方針、及び、分類ごとのリクエスト数とサーバ負荷との相関を算出する方法であって、
前記コンピュータが、区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、リクエストの分類方式を導出するステップと、
前記コンピュータが、前記導出された分類方式の各組合せを分類方針として前記リクエストを分類した際の分類ごとのリクエスト数とサーバ負荷との相関、及び、該相関の妥当性を算出するステップと、
前記コンピュータが、前記分類方式の各組合せのそれぞれについて算出された前記相関の妥当性が基準となる妥当性よりも高い分類方針のうちで分類の数が最も少ない分類方針を選択し、該選択した分類方針、及び、当該分類方針でリクエストを分類したときに算出された相関を出力するステップとを有することを特徴とする方法。
【請求項９】
前記相関及び相関の妥当性を算出するステップが、
前記コンピュータが、前記導出された分類方式の各組合せの中から分類方針として用いる分類方式の組合せを選択するステップと、
前記コンピュータが、複数のリクエストを含むリクエスト群を、前記選択された分類方針に従って分類し、分類ごとのリクエスト数とサーバ負荷情報との相関を算出するステップと、
前記コンピュータが、前記算出された相関の妥当性を算出するステップとを含む、請求項８に記載の方法。
【請求項１０】
コンピュータを用いて、負荷分析に用いるリクエストの分類方針、及び、分類ごとのリクエスト数とサーバとの相関を算出する方法であって、
前記コンピュータが、区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、リクエストの分類方式を導出するステップと、
前記コンピュータが、前記導出された分類方式の中から、リクエストを２分類する分類方針を選択し、該選択した分類方針と、相関、該相関の妥当性、及び、相関を算出する際に用いた分類方針を記憶する分析結果記憶部に記憶された分類方針とを結合した分類方針を生成するステップと、
前記コンピュータが、複数のリクエストを含むリクエスト群を、前記生成した分類方針に従って分類し、分類ごとのリクエスト数とサーバ負荷情報との相関、及び、該算出した相関の妥当性を算出するステップと、
前記コンピュータが、前記算出した相関の妥当性と、前記分析結果記憶部に記憶された相関の妥当性とを比較し、比較の結果、前記算出した相関の妥当性が前記分析結果記憶部の妥当性に記憶された相関の妥当性よりも大きいと判断すると、前記分析結果記憶部に、前記算出された相関、当該相関の妥当性、及び、当該相関を算出する際に用いた分類方針を記憶するステップと、
前記コンピュータが、前記分析結果記憶部に記憶された分類方針、相関、及び、相関の妥当性を出力するステップとを有することを特徴とする方法。
【請求項１１】
コンピュータに、負荷分析に用いるリクエストの分類方針、及び、分類ごとのリクエスト数とサーバ負荷との相関を算出する処理を実行させるプログラムであって、前記コンピュータに、
区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、リクエストの分類方式を導出する処理と、
前記導出された分類方式の各組合せを分類方針として前記リクエストを分類した際の分類ごとのリクエスト数とサーバ負荷との相関、及び、該相関の妥当性を算出する処理と、
前記分類方式の各組合せのそれぞれについて算出された前記相関の妥当性が基準となる妥当性よりも高い分類方針のうちで分類の数が最も少ない分類方針を選択し、該選択した分類方針、及び、当該分類方針でリクエストを分類したときに算出された相関を出力する処理とを実行させることを特徴とするプログラム。
【請求項１２】
前記相関及び相関の妥当性を算出する処理が、
前記導出された分類方式の各組合せの中から分類方針として用いる分類方式の組合せを選択する処理と、
複数のリクエストを含むリクエスト群を、前記選択された分類方針に従って分類し、分類ごとのリクエスト数とサーバ負荷情報との相関を算出する処理と、
前記算出された相関の妥当性を算出する処理とを含む、請求項１１に記載のプログラム。
【請求項１３】
コンピュータに、負荷分析に用いるリクエストの分類方針、及び、分類ごとのリクエスト数とサーバとの相関を算出する処理を実行させるプログラムであって、前記コンピュータに、
区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、リクエストの分類方式を導出する処理と、
前記導出された分類方式の中から、リクエストを２分類する分類方針を選択し、該選択した分類方針と、相関、該相関の妥当性、及び、相関を算出する際に用いた分類方針を記憶する分析結果記憶部に記憶された分類方針とを結合した分類方針を生成する処理と、
複数のリクエストを含むリクエスト群を、前記生成した分類方針に従って分類し、分類ごとのリクエスト数とサーバ負荷情報との相関、及び、該算出した相関の妥当性を算出する処理と、
前記算出した相関の妥当性と、前記分析結果記憶部に記憶された相関の妥当性とを比較し、比較の結果、前記算出した相関の妥当性が前記分析結果記憶部の妥当性に記憶された相関の妥当性よりも大きいと判断すると、前記分析結果記憶部に、前記算出された相関、当該相関の妥当性、及び、当該相関を算出する際に用いた分類方針を記憶する処理と、
前記分析結果記憶部に記憶された分類方針、相関、及び、相関の妥当性を出力する処理とを有することを特徴とするプログラム。
【請求項１４】
区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、木構造で表されるリクエストの分類方式を導出する分類方式導出手段と、
複数のリクエストを含むリクエスト群を、前記木構造の分類方式のノードに何回到達するかによって分類し、分類ごとのリクエスト数とサーバ負荷との相関を算出する解析手段と備えることを特徴とする負荷分析システム。
【請求項１５】
前記木構造の分類方式のノードの少なくとも１箇所にマークを付け、前記マークが付けられたノードに何回到達したかを分類方針として、前記解析手段により、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、前記相関の妥当性を算出する評価手段により、前記解析手段にて算出された相関の妥当性を算出する選択手段を更に有する、請求項１４に記載の負荷分析システム。
【請求項１６】
前記選択手段は、前記導出された全ての分類方式の組合せのそれぞれについて、各組合せに対応するノードに前記マークを付け、前記解析手段によって前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、前記評価手段により算出された相関の妥当性を算出し、該算出された妥当性が基準となる妥当性よりも高い分類方針のうちで分類の数が最も少ない分類方針を選択し、該選択した分類方針、及び、当該分類方針でリクエストを分類したときに算出された相関を出力する、請求項１５に記載の負荷分析システム。
【請求項１７】
前記導出された分類方式の木構造のノードの中から未選択のノードを１つ選択し、該選択したノードと、相関、該相関の妥当性、及び、相関を算出する際に用いた分類方針に対応する選択ノードを記憶する分析結果記憶部に記憶された選択ノードとにマークを付け、前記マークが付けられたノードに何回到達したかを分類方針として、前記解析手段により、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、前記相関の妥当性を算出する評価手段により、前記解析手段にて算出された相関の妥当性を算出し、該算出された相関の妥当性と、前記分析結果記憶部に記憶された相関の妥当性とを比較し、前記算出された相関の妥当性が前記分析結果記憶部の妥当性に記憶された相関の妥当性よりも大きいときには、前記分析結果記憶部に、前記算出された相関、当該相関の妥当性、及び、当該相関を算出する際に用いた分類方針に対応する選択ノードを記憶する組合せ手段とを更に有する、請求項１４に記載の負荷分析システム。
【請求項１８】
複数のリクエストを含むリクエスト群を、前記リクエストに含まれる区切り文字を利用して導出された木構造で表されるリクエストの分類方式に従って、該木構造の分類方式のノードに何回到達するかによって分類する分類手段と、
記憶装置に記憶された、分類ごとのリクエスト数とサーバ負荷との相関と、前記分類手段で分類された分類ごとのリクエスト数とに基づいて、サーバ負荷を計算する負荷計算部とを備えることを特徴とする負荷分析システム。
【請求項１９】
コンピュータを用いて、負荷分析に用いるリクエストの分類方針、及び、分類ごとのリクエスト数とサーバ負荷との相関を算出する方法であって、
前記コンピュータが、区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、木構造で表されるリクエストの分類方式を導出するステップと、
前記コンピュータが、複数のリクエストを含むリクエスト群を、前記木構造の分類方式のノードに何回到達するかによって分類し、分類ごとのリクエスト数とサーバ負荷との相関を算出するステップとを有することを特徴とする方法。
【請求項２０】
前記相関を算出するステップでは、前記コンピュータは、前記木構造の分類方式のノードの少なくとも１箇所にマークを付け、前記マークが付けられたノードに何回到達したかを分類方針として、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、該算出された相関の妥当性を算出する、請求項１９に記載の方法。
【請求項２１】
前記コンピュータが、前記導出された全ての分類方式の組合せのそれぞれについて、各組合せに対応するノードに前記マークを付け、前記相関を算出するステップにて、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、該算出された相関の妥当性を算出し、前記算出された妥当性が基準となる妥当性よりも高い分類方針のうちで分類の数が最も少ない分類方針を選択し、該選択した分類方針、及び、当該分類方針でリクエストを分類したときに算出された相関を出力するステップを更に有する、請求項２０に記載の方法。
【請求項２２】
前記コンピュータが、前記導出された分類方式の木構造のノードの中から未選択のノードを１つ選択し、該選択したノードと、相関、該相関の妥当性、及び、相関を算出する際に用いた分類方針に対応する選択ノードを記憶する分析結果記憶部に記憶された選択ノードとにマークを付け、前記相関を算出するステップにて、前記マークが付けられたノードに何回到達したかを分類方針として、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、該算出された相関の妥当性を算出し、該算出された相関の妥当性と、前記分析結果記憶部に記憶された相関の妥当性とを比較し、前記算出された相関の妥当性が前記分析結果記憶部の妥当性に記憶された相関の妥当性よりも大きいときには、前記分析結果記憶部に、前記算出された相関、当該相関の妥当性、及び、当該相関を算出する際に用いた分類方針に対応する選択ノードを記憶するステップを更に有する、請求項１９に記載の方法。
【請求項２３】
コンピュータを用いて、サーバ負荷の予測値を計算する方法であって、
前記コンピュータが、複数のリクエストを含むリクエスト群を、前記リクエストに含まれる区切り文字を利用して導出された木構造で表されるリクエストの分類方式のノードに何回到達するかによって分類するステップと、
前記コンピュータが、記憶装置に記憶された、分類ごとのリクエスト数とサーバ負荷との相関と、前記分類ステップで分類された分類ごとのリクエスト数とに基づいて、サーバ負荷を計算するステップとを有することを特徴とする方法。
【請求項２４】
コンピュータに、負荷分析に用いるリクエストの分類方針、及び、分類ごとのリクエスト数とサーバ負荷との相関を算出する処理を実行させるプログラムであって、前記コンピュータに、
区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、木構造で表されるリクエストの分類方式を導出する処理と、
複数のリクエストを含むリクエスト群を、前記木構造の分類方式のノードに何回到達するかによって分類し、分類ごとのリクエスト数とサーバ負荷との相関を算出する処理とを実行させることを特徴とするプログラム。
【請求項２５】
前記相関を算出する処理では、前記木構造の分類方式のノードの少なくとも１箇所にマークを付け、前記マークが付けられたノードに何回到達したかを分類方針として、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、該算出された相関の妥当性を算出する、請求項２４に記載のプログラム。
【請求項２６】
前記コンピュータに、前記導出された全ての分類方式の組合せのそれぞれについて、各組合せに対応するノードに前記マークを付け、前記相関を算出する処理にて、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、該算出された相関の妥当性を算出し、前記算出された妥当性が基準となる妥当性よりも高い分類方針のうちで分類の数が最も少ない分類方針を選択し、該選択した分類方針、及び、当該分類方針でリクエストを分類したときに算出された相関を出力する処理を更に実行させる、請求項２５に記載のプログラム。
【請求項２７】
前記コンピュータに、前記導出された分類方式の木構造のノードの中から未選択のノードを１つ選択し、該選択したノードと、相関、該相関の妥当性、及び、相関を算出する際に用いた分類方針に対応する選択ノードを記憶する分析結果記憶部に記憶された選択ノードとにマークを付け、前記相関を算出する処理にて、前記マークが付けられたノードに何回到達したかを分類方針として、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、該算出された相関の妥当性を算出し、該算出された相関の妥当性と、前記分析結果記憶部に記憶された相関の妥当性とを比較し、前記算出された相関の妥当性が前記分析結果記憶部の妥当性に記憶された相関の妥当性よりも大きいときには、前記分析結果記憶部に、前記算出された相関、当該相関の妥当性、及び、当該相関を算出する際に用いた分類方針に対応する選択ノードを記憶する処理を更に実行させる、請求項２４に記載のプログラム。
【請求項２８】
コンピュータに、サーバ負荷の予測値を計算する処理を実行させるプログラムであって、前記コンピュータに、
複数のリクエストを含むリクエスト群を、前記リクエストに含まれる区切り文字を利用して導出された木構造で表されるリクエストの分類方式のノードに何回到達するかによって分類する処理と、
記憶装置に記憶された、分類ごとのリクエスト数とサーバ負荷との相関と、前記分類ステップで分類された分類ごとのリクエスト数とに基づいて、サーバ負荷を計算する処理とを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、負荷分析システム、方法、及び、プログラムに関し、更に詳しくは、システムへのリクエストとシステムを構成するサーバの負荷との相関を導出できる負荷分析システム、方法、及び、プログラムに関する。また、本発明は、システムへのリクエストとシステムを構成するサーバの負荷との相関から、サーバ負荷の予測値を計算する負荷分析システム、方法、及び、プログラムに関する。
【背景技術】
【０００２】
Ｗｅｂシステムは、経理システムや人事システムなどの企業内システム、チケット販売や宿泊予約等の一般顧客向けシステム等、その用途は多様である。Ｗｅｂシステムを構成するサーバに障害が発生し、或いは、ユーザからのアクセスが集中すると、Ｗｅｂシステムが提供するサービスを利用できないユーザが増えるため、企業システムであれば日常業務に支障をきたし、また、一般顧客向けシステムであれば、顧客を取り逃がす可能性があり、ビジネスに大きな影響を及ぼす可能性が高い。そのため、システム管理者は、システムの障害や負荷変動を常に監視し、異常発生時には、早急な対応が必要となる。
【０００３】
Ｗｅｂシステムにおいて、リクエスト増加に起因するシステム負荷増加に注目すると、リクエストが増加し始めた時点で、どこまでの増加に対応するか、そして、そのためにはどの程度のサーバ性能が必要かを見積もる必要がある。すなわち、Ｗｅｂコンテンツに対するリクエストが、サーバに与える負荷の計測が必要となる。
【０００４】
従来の負荷予測システムの一例としては、非特許文献１に記載されたものがある。非特許文献１に記載されたサーバ負荷導出システムは、Ｗｅｂシステムに対するリクエスト数と、Ｗｅｂシステムがクライアントに返却するデータの総容量と、ＣＰＵ等のサーバ負荷とから、それらの相関を導出するシステムである。非特許文献１では、導出した相関を、システム構成変更時に得られる実測値を基に補正している。従来の別の負荷予測システムとしては、特許文献１に記載されるものがある。特許文献１に記載されたサーバ負荷導出システムは、コンテンツへのリクエストごとにサーバ負荷への影響を求める。
【０００５】
【非特許文献１】Tarek F. Abdelzaher, Kang G. Shin, Nina Bahatti, “Performance Guarantees for Web Server End-System: A Control-Theoretical Approach”, IEEE Transactions on Parallel and Distribted Systems, Vol. 13, No. 1, Jan2002.
【特許文献１】特開２００６−２４０１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ここで、Ｗｅｂコンテンツには、静的コンテンツと動的コンテンツとがある。静的コンテンツとは、同じリクエストに対して同じデータを返却するコンテンツであり、ＨＴＭＬで記述されるＷｅｂページや、ＪＰＥＧ、ＧＩＦ等の画像データ、ＭＰＥＧなどの動画データがこれに当たる。静的コンテンツへのリクエストにおいて、サーバ負荷の要因となるのは、主に、リクエスト数、及び、その結果として返されるデータの容量である。システムに与えるリクエスト数とデータ量とについて、それぞれの総量を知ることができれば、サーバ負荷を予測することが可能となる。
【０００７】
また、動的コンテンツとは、リクエストによって動的に生成されるコンテンツであり、例えば、ＪＳＰ、ＡＳＰ、ＣＧＩ等がこれにあたる。動的コンテンツは、コンテンツごとにサーバによる処理内容が異なり、更に、同じコンテンツをリクエストする場合でも、リクエストのたびにサーバによる処理内容が異なるという性質を有する。
【０００８】
一方、Ｗｅｂシステムでは、時間・時期・イベントによって負荷が異なる。例えば、月末にはデータ入力処理が増加し、月初めには入力内容の確認処理が増加することがある。また、人気商品の発売時期には商品購入処理が増え、ボーナス時期には商品検索処理が増えることがある。データの入力処理と確認処理、或いは、商品の購入処理と検索処理は、同じ動的コンテンツで実現されている場合もあれば、異なる動的コンテンツで実現されている場合もある。動的コンテンツを含むシステムへのリクエストがサーバに与える負荷を計測するためには、動的コンテンツごとに、リクエストとサーバ負荷との相関を求めるだけでなく、同じ動的コンテンツをリクエストするたびに異なるサーバ負荷を考慮する必要がある。
【０００９】
非特許文献１では、動的コンテンツをリクエストするたびにサーバに与える負荷が異なることについては考慮されておらず、対象は、静的コンテンツに対するリクエストに限定される。従って、動的コンテンツについては、リクエストがサーバに与える負荷を特定することができない。また、特許文献１では、リクエストに、トランザクションごとに付与されるＩＤやユーザを特定するＩＤ等のパラメータが付加されている場合には、サーバ負荷の算出の対象となるリクエストの種類が膨大となる。このため、サーバ負荷予測に際して、大容量の記憶装置が必要となり、予測時間も遅くなるという問題がある。また、特許文献１では、これまでに計測したリクエスト以外に対応できない。これまでに計測したリクエストに似ていたとしても、同じリクエストで無ければ、それに対応することができないという問題がある。
【００１０】
本発明は、上記従来技術の問題点を解消し、リクエストのたびにサーバへ与える負荷が異なるシステムにおいて、リクエストとサーバ負荷との相関を特定できる負荷分析システム、方法、及び、プログラムを提供することを目的とする。
【００１１】
本発明の別の目的は、動的コンテンツへのリクエストがサーバに与える負荷を特定するにあたり、大容量の記憶装置を必要とせず、予測時間を短くできる負荷分析システム、方法、及び、プログラムを提供することを目的とする。
【００１２】
本発明の別の目的は、サーバ負荷との相関を求めたリクエストとは一部が異なるリクエストに対しても、サーバへ与える負荷を特定できる負荷分析システム、方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成するために、本発明の負荷分析システムは、区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、リクエストの分類方式を導出する分類方式導出手段と、複数のリクエストを含むリクエスト群を、前記分類方式を利用して分類し、分類ごとのリクエスト数とサーバ負荷情報との相関を算出する解析手段と、前記解析手段にて算出された相関の妥当性を算出する評価手段と、前記解析手段及び前記評価手段により、前記導出された分類方式の各組合せを分類方針として前記リクエストを分類した際のリクエスト数とサーバ負荷との相関、及び、該相関の妥当性をそれぞれ算出し、前記算出された妥当性が基準となる妥当性よりも高い分類方針のうちで分類の数が最も少ない分類方針を選択し、該選択した分類方針、及び、当該分類方針でリクエストを分類したときに算出された相関を出力する選択手段とを備えることを特徴とする。
【００１４】
本発明の負荷分析システムでは、分類方式導出手段によって分類方式を導出し、解析手段によって、分類方式の組合せごとに、分類に属するリクエスト数とサーバ負荷との相関を求め、評価手段により、求めた相関の妥当性を求める。その後、求めた妥当性が高い分類方針のうちで妥当性の高い分類方式を選別し、そのうちで、分類の数が最も少ない分類方針を選択し、選択した分類方針と、その分類方針でリクエストを分類したときに算出された相関とを出力する。このようにすることで、分類方式の中から、リクエストを、サーバに対して同程度の負荷を与える分類に分類できる分類方式の組合せを求めることができ、その分類方式の組合せにてリクエストを分類した際の分類ごとのリクエスト数サーバ負荷との相関を利用することで、動的コンテンツのリクエストがサーバ負荷に与える影響を見積もることができる。また、分類方針の選択に際して、妥当性が高い相関が得られる分類方針のうちで、分類の数が少ない分類方針を選択することで、算出された相関を用いてサーバ負荷の予測値を計算する際の分類数を最小化することができ、予測値計算の処理負担を軽減できる。
【００１５】
本発明の方法は、コンピュータを用いて、負荷分析に用いるリクエストの分類方針、及び、分類ごとのリクエスト数とサーバ負荷との相関を算出する方法であって、前記コンピュータが、区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、リクエストの分類方式を導出するステップと、前記コンピュータが、前記導出された分類方式の各組合せを分類方針として前記リクエストを分類した際の分類ごとのリクエスト数とサーバ負荷との相関、及び、該相関の妥当性を算出するステップと、前記コンピュータが、前記分類方式の各組合せのそれぞれについて算出された前記相関の妥当性が基準となる妥当性よりも高い分類方針のうちで分類の数が最も少ない分類方針を選択し、該選択した分類方針、及び、当該分類方針でリクエストを分類したときに算出された相関を出力するステップとを有することを特徴とする。
【００１６】
本発明の方法では、前記相関及び相関の妥当性を算出するステップが、前記コンピュータが、前記導出された分類方式の各組合せの中から分類方針として用いる分類方式の組合せを選択するステップと、前記コンピュータが、複数のリクエストを含むリクエスト群を、前記選択された分類方針に従って分類し、分類ごとのリクエスト数とサーバ負荷情報との相関を算出するステップと、前記コンピュータが、前記算出された相関の妥当性を算出するステップとを含む構成を採用できる。
【００１７】
本発明のプログラムは、コンピュータに、負荷分析に用いるリクエストの分類方針、及び、分類ごとのリクエスト数とサーバ負荷との相関を算出する処理を実行させるプログラムであって、前記コンピュータに、区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、リクエストの分類方式を導出する処理と、前記導出された分類方式の各組合せを分類方針として前記リクエストを分類した際の分類ごとのリクエスト数とサーバ負荷との相関、及び、該相関の妥当性を算出する処理と、前記分類方式の各組合せのそれぞれについて算出された前記相関の妥当性が基準となる妥当性よりも高い分類方針のうちで分類の数が最も少ない分類方針を選択し、該選択した分類方針、及び、当該分類方針でリクエストを分類したときに算出された相関を出力する処理とを実行させることを特徴とする。
【００１８】
本発明のプログラムでは、前記相関及び相関の妥当性を算出する処理が、前記導出された分類方式の各組合せの中から分類方針として用いる分類方式の組合せを選択する処理と、複数のリクエストを含むリクエスト群を、前記選択された分類方針に従って分類し、分類ごとのリクエスト数とサーバ負荷情報との相関を算出する処理と、前記算出された相関の妥当性を算出する処理とを含む構成を採用できる。
【００１９】
本発明の負荷分析システムは、区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、リクエストの分類方式を導出する分類方式導出手段と、複数のリクエストを含むリクエスト群を、前記分類方式を利用して分類し、分類ごとのリクエスト数とサーバ負荷情報との相関を算出する解析手段と、前記解析手段にて算出された相関の妥当性を算出する評価手段と、前記導出された分類方式の中から、リクエストを２分類する分類方針を選択し、該選択した分類方針と、相関、該相関の妥当性、及び、相関を算出する際に用いた分類方針を記憶する分析結果記憶部に記憶された分類方針とを結合した分類方針を生成し、前記解析手段及び前記評価手段により、前記生成した分類方針で前記リクエストを分類した際のリクエスト数とサーバ負荷との相関、及び、該相関の妥当性をそれぞれ算出し、該算出された相関の妥当性と、前記分析結果記憶部に記憶された相関の妥当性とを比較し、前記算出された相関の妥当性が前記分析結果記憶部の妥当性に記憶された相関の妥当性よりも大きいときには、前記分析結果記憶部に、前記算出された相関、当該相関の妥当性、及び、当該相関を算出する際に用いた分類方針を記憶する組合せ手段とを備えることを特徴とする。
【００２０】
本発明の負荷分析システムでは、分析結果記憶装置に、解析手段にて算出された相関の妥当性が高い分類方針を記憶し、組合せ手段にて、分析結果記憶装置に記憶された分類方針と、リクエストを２分類する分類方針とを結合した分類方針を生成し、生成した分類方針について、解析手段及び評価手段にて、リクエスト数とサーバ負荷との相関、及び、その相関の妥当性をそれぞれ算出する。そして、算出した相関の妥当性が、分析結果記憶装置に記憶された相関の妥当性よりも高いときには、分析結果記憶装置に、組合せ手段にて生成された分類方針、解析手段にて算出された相関、及び、評価手段にて算出された相関の妥当性を記憶していく。記憶済みの相関の妥当性と、記憶済みの分類方針に新たに１つ分類方針を結合した分類方針にて算出された相関の妥当性との比較を繰り返し行うことで、最終的に、分析結果記憶装置には、相関の妥当性が高い分類方針、及び、そのときの相関が記憶されることになる。このように、相関の妥当性が高い分類方針に、分類方針を１つ加えて、より高い妥当性が得られるかを調べていくことで、分類方式の中から、リクエストを、サーバに対して同程度の負荷を与える分類に分類できる分類方式の組合せを求めることができ、その分類方式の組合せにてリクエストを分類した際の分類ごとのリクエスト数サーバ負荷との相関を利用することで、動的コンテンツのリクエストがサーバ負荷に与える影響を見積もることができる。また、本方式は、分類方式導出手段が導出した分類方式の全ての組合せについて、相関の妥当性を求めて、それを比較するのではなく、リクエストを２分類する分類方針のうちで、リクエストとサーバ負荷との相関の妥当性が高い分類方針を組み合わせていく方式であるので、リクエスト数とサーバ負荷との相関を算出する際の処理時間、及び、分類方針を記憶するための記憶容量を削減することができる。
【００２１】
本発明の方法は、コンピュータを用いて、負荷分析に用いるリクエストの分類方針、及び、分類ごとのリクエスト数とサーバとの相関を算出する方法であって、前記コンピュータが、区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、リクエストの分類方式を導出するステップと、前記コンピュータが、前記導出された分類方式の中から、リクエストを２分類する分類方針を選択し、該選択した分類方針と、相関、該相関の妥当性、及び、相関を算出する際に用いた分類方針を記憶する分析結果記憶部に記憶された分類方針とを結合した分類方針を生成するステップと、前記コンピュータが、複数のリクエストを含むリクエスト群を、前記生成した分類方針に従って分類し、分類ごとのリクエスト数とサーバ負荷情報との相関、及び、該算出した相関の妥当性を算出するステップと、前記コンピュータが、前記算出した相関の妥当性と、前記分析結果記憶部に記憶された相関の妥当性とを比較し、比較の結果、前記算出した相関の妥当性が前記分析結果記憶部の妥当性に記憶された相関の妥当性よりも大きいと判断すると、前記分析結果記憶部に、前記算出された相関、当該相関の妥当性、及び、当該相関を算出する際に用いた分類方針を記憶するステップと、前記コンピュータが、前記分析結果記憶部に記憶された分類方針、相関、及び、相関の妥当性を出力するステップとを有することを特徴とする。
【００２２】
本発明のプログラムは、コンピュータに、負荷分析に用いるリクエストの分類方針、及び、分類ごとのリクエスト数とサーバとの相関を算出する処理を実行させるプログラムであって、前記コンピュータに、区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、リクエストの分類方式を導出する処理と、前記導出された分類方式の中から、リクエストを２分類する分類方針を選択し、該選択した分類方針と、相関、該相関の妥当性、及び、相関を算出する際に用いた分類方針を記憶する分析結果記憶部に記憶された分類方針とを結合した分類方針を生成する処理と、複数のリクエストを含むリクエスト群を、前記生成した分類方針に従って分類し、分類ごとのリクエスト数とサーバ負荷情報との相関、及び、該算出した相関の妥当性を算出する処理と、前記算出した相関の妥当性と、前記分析結果記憶部に記憶された相関の妥当性とを比較し、比較の結果、前記算出した相関の妥当性が前記分析結果記憶部の妥当性に記憶された相関の妥当性よりも大きいと判断すると、前記分析結果記憶部に、前記算出された相関、当該相関の妥当性、及び、当該相関を算出する際に用いた分類方針を記憶する処理と、前記分析結果記憶部に記憶された分類方針、相関、及び、相関の妥当性を出力する処理とを有することを特徴とする。
【００２３】
本発明の負荷分析システムでは、前記分類方式導出手段は、木構造で表される分類方式を導出し、前記解析手段は、前記リクエスト群を、前記木構造で表される分類方式のノードのうちで、前記分類方針に対応するノードに何回到達したかで分類して分類ごとのリクエスト数をカウントし、分類ごとのリクエスト数とサーバ負荷情報との相関を算出する構成を採用できる。例えば、リクエストの分類方式の木構造の中から、２つのノードを分類方針とて選択した場合を考える。この場合、リクエストは、２つのノードの何れにも到達しないリクエスト、２つのノードのうちの何れか一方に到達するリクエスト、２つのノードの双方に到達するリクエストの３つに分類されることになる。これら３つの分類について、各分類に属するリクエスト数をカウントし、分類ごとのリクエスト数とサーバ負荷との相関を算出することで、リクエストを、２つのノードを分類方針として分類した際の相関を算出できる。
【００２４】
本発明の負荷分析システムは、前記リクエスト群を、前記分類方式導出手段によって導出された各分類方式で分類して各分類方式に属するリクエスト数をカウントし、該カウントされたリクエスト数が全体リクエスト数よりも所定の割合よりも少ない分類方式を、前記導出された分類方式から除去する除去手段を更に有する構成を採用することができる。導出された分類方式のうちで、分類方式を用いて分類されるリクエスト数が、全体のリクエスト数に対して少ない場合には、その分類方針を、リクエスト数とサーバ負荷との相関を求め際の分類方針から除外する。このようにすることで、リクエストを極端に限定するような特徴を除いてリクエストを分類することができ、リクエスト数とサーバ負荷との相関を算出する際の対象となる分類方針の数を削減して、相関算出の処理負担を軽減できる。
【００２５】
本発明の負荷分析システムは、前記リクエストの数、及び、内容に関する情報を取得し、前記分類方式導出手段及び解析手段に提供するリクエスト取得手段と、サーバのＣＰＵ、メモリ、Ｉ／Ｏに関する負荷情報を取得し、前記解析手段に提供する性能取得手段とを更に有する構成を採用できる。この場合、分類方式導出手段は、リクエスト取得手段から提供される複数のリクエストに基づいて、分類方式を導出すればよい。また、解析手段は、リクエスト取得手段から提供される複数のリクエストを分類方針に従って分類し、分類によって得られた分類ごとのリクエスト数と、性能取得手段から提供されたリクエスト取得時の負荷情報とに基づいて、リクエスト数とサーバ負荷との相関を算出すればよい。
【００２６】
本発明の負荷分析システムでは、前記解析手段は、前記リクエスト群取得時のサーバの負荷情報と、前記分類ごとのリクエスト数とに基づいて、回帰分析により前記相関を算出する構成を採用することができる。解析手段が、リクエスト取得時のサーバ負荷と、分類ごとのリクエスト数との組を複数個取得し、回帰分析を行うことにより、各分類のリクエストがサーバ負荷に与える影響を求めることで、リクエスト数とサーバ負荷との相関を算出することができる。
【００２７】
本発明の負荷分析システムでは、前記リクエストが“／”、“＆”、“＝”、“＋”を区切り文字とするＨＴＴＰリクエストであり、前記解析手段は、前記区切り文字を利用して、ＨＴＴＰリクエストのＵＲＩを分類する構成を採用できる。
【００２８】
本発明の負荷分析システムは、区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、木構造で表されるリクエストの分類方式を導出する分類方式導出手段と、複数のリクエストを含むリクエスト群を、前記木構造の分類方式のノードに何回到達するかによって分類し、分類ごとのリクエスト数とサーバ負荷との相関を算出する解析手段と備えることを特徴とする。
【００２９】
本発明の負荷分析システムでは、リクエストから、区切り文字を利用して木構造で表される分類方式を導出し、リクエスト群を、木構造の分類方式のノードに何回到達するかで分類し、分類ごとのリクエスト数とサーバ負荷との相関を算出する。複数の分類方式の組合せにて、分類ごとのリクエストとサーバ負荷との相関を算出し、相関の妥当性を高くできる分類の仕方を求めることで、サーバに対して同様な負荷を与えるリクエストをノード到達回数でまとめることができ、リクエストごとにサーバに与える負荷が異なる場合でも、リクエストとサーバ負荷との相関を特定することができる。また、本発明は、ノード到達回数によってリクエストを分類する方式であるため、木構造の分類方式をそのまま適用してリクエストを分類する場合に比して大まかな分類が可能であり、相関の算出に際して、相関算出の対象となるリクエストの分類数が少なくて済むというメリットがある。
【００３０】
本発明の方法は、コンピュータを用いて、負荷分析に用いるリクエストの分類方針、及び、分類ごとのリクエスト数とサーバ負荷との相関を算出する方法であって、前記コンピュータが、区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、木構造で表されるリクエストの分類方式を導出するステップと、前記コンピュータが、複数のリクエストを含むリクエスト群を、前記木構造の分類方式のノードに何回到達するかによって分類し、分類ごとのリクエスト数とサーバ負荷との相関を算出するステップとを有することを特徴とする。
【００３１】
本発明のプログラムは、コンピュータに、負荷分析に用いるリクエストの分類方針、及び、分類ごとのリクエスト数とサーバ負荷との相関を算出する処理を実行させるプログラムであって、前記コンピュータに、区切り文字を１つ以上含むリクエストから、前記区切り文字を利用して、木構造で表されるリクエストの分類方式を導出する処理と、複数のリクエストを含むリクエスト群を、前記木構造の分類方式のノードに何回到達するかによって分類し、分類ごとのリクエスト数とサーバ負荷との相関を算出する処理とを実行させることを特徴とする。
【００３２】
本発明の負荷分析システムでは、前記木構造の分類方式のノードの少なくとも１箇所にマークを付け、前記マークが付けられたノードに何回到達したかを分類方針として、前記解析手段により、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、前記相関の妥当性を算出する評価手段により、前記解析手段にて算出された相関の妥当性を算出する選択手段を更に有する構成を採用できる。
【００３３】
本発明の方法は、前記相関を算出するステップでは、前記コンピュータは、前記木構造の分類方式のノードの少なくとも１箇所にマークを付け、前記マークが付けられたノードに何回到達したかを分類方針として、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、該算出された相関の妥当性を算出する構成を採用できる。
【００３４】
本発明のプログラムは、前記相関を算出する処理では、前記木構造の分類方式のノードの少なくとも１箇所にマークを付け、前記マークが付けられたノードに何回到達したかを分類方針として、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、該算出された相関の妥当性を算出する構成を採用できる。
【００３５】
本発明の負荷分析システムでは、前記選択手段は、前記導出された全ての分類方式の組合せのそれぞれについて、各組合せに対応するノードに前記マークを付け、前記解析手段によって前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、前記評価手段により算出された相関の妥当性を算出し、該算出された妥当性が基準となる妥当性よりも高い分類方針のうちで分類の数が最も少ない分類方針を選択し、該選択した分類方針、及び、当該分類方針でリクエストを分類したときに算出された相関を出力する構成を採用できる。この場合、選択手段により、算出されたリクエスト数とサーバ負荷との相関の妥当性が高いもののうちで、リクエスト分類の際の分類の数が最も少ない分類方針を選択することで、分類の数を少なくしつつも、妥当性の高い相関を得ることができる。
【００３６】
本発明の方法は、前記コンピュータが、前記導出された全ての分類方式の組合せのそれぞれについて、各組合せに対応するノードに前記マークを付け、前記相関を算出するステップにて、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、該算出された相関の妥当性を算出し、前記算出された妥当性が基準となる妥当性よりも高い分類方針のうちで分類の数が最も少ない分類方針を選択し、該選択した分類方針、及び、当該分類方針でリクエストを分類したときに算出された相関を出力するステップを更に有する構成を採用できる。
【００３７】
本発明のプログラムは、前記コンピュータに、前記導出された全ての分類方式の組合せのそれぞれについて、各組合せに対応するノードに前記マークを付け、前記相関を算出する処理にて、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、該算出された相関の妥当性を算出し、前記算出された妥当性が基準となる妥当性よりも高い分類方針のうちで分類の数が最も少ない分類方針を選択し、該選択した分類方針、及び、当該分類方針でリクエストを分類したときに算出された相関を出力する処理を更に実行させる構成を採用できる。
【００３８】
本発明の負荷分析システムでは、前記導出された分類方式の木構造のノードの中から未選択のノードを１つ選択し、該選択したノードと、相関、該相関の妥当性、及び、相関を算出する際に用いた分類方針に対応する選択ノードを記憶する分析結果記憶部に記憶された選択ノードとにマークを付け、前記マークが付けられたノードに何回到達したかを分類方針として、前記解析手段により、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、前記相関の妥当性を算出する評価手段により、前記解析手段にて算出された相関の妥当性を算出し、該算出された相関の妥当性と、前記分析結果記憶部に記憶された相関の妥当性とを比較し、前記算出された相関の妥当性が前記分析結果記憶部の妥当性に記憶された相関の妥当性よりも大きいときには、前記分析結果記憶部に、前記算出された相関、当該相関の妥当性、及び、当該相関を算出する際に用いた分類方針に対応する選択ノードを記憶する組合せ手段とを更に有する構成を採用できる。この場合、組合せ手段によって、リクエストを２分類する分類方式のうち、リクエストとサーバ負荷との相関の妥当性が高い分類方式を組み合わせていくことで、妥当性の高い相関、及び、その相関の算出に用いたリクエストの分類方針を得ることができる。このように、妥当性の高い相関が得られる分類方式を組み合わせていくことで妥当性の高い相関を得る場合は、リクエストの全ての分類に対して相関とその妥当性を算出する場合に比して、相関算出に要する時間を短縮することができ、また、使用する記憶容量を減らすことができる。
【００３９】
本発明の方法は、前記コンピュータが、前記導出された分類方式の木構造のノードの中から未選択のノードを１つ選択し、該選択したノードと、相関、該相関の妥当性、及び、相関を算出する際に用いた分類方針に対応する選択ノードを記憶する分析結果記憶部に記憶された選択ノードとにマークを付け、前記相関を算出するステップにて、前記マークが付けられたノードに何回到達したかを分類方針として、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、該算出された相関の妥当性を算出し、該算出された相関の妥当性と、前記分析結果記憶部に記憶された相関の妥当性とを比較し、前記算出された相関の妥当性が前記分析結果記憶部の妥当性に記憶された相関の妥当性よりも大きいときには、前記分析結果記憶部に、前記算出された相関、当該相関の妥当性、及び、当該相関を算出する際に用いた分類方針に対応する選択ノードを記憶するステップを更に有する構成を採用できる。
【００４０】
本発明プログラムは、前記コンピュータに、前記導出された分類方式の木構造のノードの中から未選択のノードを１つ選択し、該選択したノードと、相関、該相関の妥当性、及び、相関を算出する際に用いた分類方針に対応する選択ノードを記憶する分析結果記憶部に記憶された選択ノードとにマークを付け、前記相関を算出する処理にて、前記マークが付けられたノードに何回到達したかを分類方針として、前記分類ごとのリクエスト数とサーバ負荷との相関を算出すると共に、該算出された相関の妥当性を算出し、該算出された相関の妥当性と、前記分析結果記憶部に記憶された相関の妥当性とを比較し、前記算出された相関の妥当性が前記分析結果記憶部の妥当性に記憶された相関の妥当性よりも大きいときには、前記分析結果記憶部に、前記算出された相関、当該相関の妥当性、及び、当該相関を算出する際に用いた分類方針に対応する選択ノードを記憶する処理を更に実行させる構成を採用できる。
【００４１】
本発明の負荷分析システムは、複数のリクエストを含むリクエスト群を、前記リクエストに含まれる区切り文字を利用して導出された木構造で表されるリクエストの分類方式に従って、該木構造の分類方式のノードに何回到達するかによって分類する分類手段と、記憶装置に記憶された、分類ごとのリクエスト数とサーバ負荷との相関と、前記分類手段で分類された分類ごとのリクエスト数とに基づいて、サーバ負荷を計算する負荷計算部とを備えることを特徴とする。
【００４２】
本発明の負荷分析システムでは、木構造の分類方式のノードに何回到達したかでリクエストを分類し、分類ごとのリクエスト数と、あらかじめ用意された、分類ごとのリクエスト数とサーバ負荷との相関とに基づいて、サーバ負荷の予測値を計算する。本発明では、リクエストを、木構造の分類方式のノードに何回到達したかでリクエストを分類するため、リクエストの一部に変化がある場合でもリクエストの分類が可能であり、リクエストがサーバ負荷に与える影響を予測することができる。従って、リクエストごとにサーバに与える負荷が異なる動的コンテンツについても、リクエストから、サーバ負荷の予測値を計算することができる。
【００４３】
本発明の方法は、コンピュータを用いて、サーバ負荷の予測値を計算する方法であって、前記コンピュータが、複数のリクエストを含むリクエスト群を、前記リクエストに含まれる区切り文字を利用して導出された木構造で表されるリクエストの分類方式のノードに何回到達するかによって分類するステップと、前記コンピュータが、記憶装置に記憶された、分類ごとのリクエスト数とサーバ負荷との相関と、前記分類ステップで分類された分類ごとのリクエスト数とに基づいて、サーバ負荷を計算するステップとを有することを特徴とする。
【００４４】
本発明のプログラムは、コンピュータに、サーバ負荷の予測値を計算する処理を実行させるプログラムであって、前記コンピュータに、複数のリクエストを含むリクエスト群を、前記リクエストに含まれる区切り文字を利用して導出された木構造で表されるリクエストの分類方式のノードに何回到達するかによって分類する処理と、記憶装置に記憶された、分類ごとのリクエスト数とサーバ負荷との相関と、前記分類ステップで分類された分類ごとのリクエスト数とに基づいて、サーバ負荷を計算する処理とを実行させることを特徴とする。
【発明の効果】
【００４５】
本発明の負荷分析システム、方法、及び、プログラムでは、分類方式の組合せごとに、分類に属するリクエスト数とサーバ負荷との相関を算出し、算出した相関の妥当性が高い分類のうちで、分類の数が最も少ない分類方針を選択し、選択した分類方針と、その分類方針でリクエストを分類したときに算出された相関とを出力する。このようにすることで、分類方式の中から、リクエストを、サーバに対して同程度の負荷を与える分類に分類できる分類方式の組合せを求めることができ、その分類方式の組合せにてリクエストを分類した際の分類ごとのリクエスト数サーバ負荷との相関を利用することで、動的コンテンツのリクエストがサーバ負荷に与える影響を見積もることができる。また、分類方針の選択に際して、妥当性が高い相関が得られる分類方針のうちで、分類の数が少ない分類方針を選択することで、算出された相関を用いてサーバ負荷の予測値を計算する際の分類数を最小化することができる。
【００４６】
本発明の負荷分析システム、方法、及び、プログラムでは、分析結果記憶装置に、相関の妥当性が高い分類方針を記憶し、分析結果記憶装置に記憶された分類方針と、リクエストを２分類する分類方針とを結合した分類方針を生成し、生成した分類方針について、リクエスト数とサーバ負荷との相関、及び、その相関の妥当性をそれぞれ算出する。そして、算出した相関の妥当性が、分析結果記憶装置に記憶された相関の妥当性よりも高いときには、分析結果記憶装置に、生成された分類方針、相関、及び、相関の妥当性を記憶していく。このようにすることで、分類方式の中から、リクエストを、サーバに対して同程度の負荷を与える分類に分類できる分類方式の組合せを求めることができ、その分類方式の組合せにてリクエストを分類した際の分類ごとのリクエスト数サーバ負荷との相関を利用することで、動的コンテンツのリクエストがサーバ負荷に与える影響を見積もることができる。また、本方式は、リクエストを２分類する分類方針のうちで、リクエストとサーバ負荷との相関の妥当性が高い分類方針を組み合わせていく方式であるので、分類方式の全ての組合せについて相関及びその妥当性を計算する場合に比して、相関及びその妥当性を算出する際の処理時間、及び、分類方針を記憶するための記憶容量を削減することができる。
【００４７】
本発明の負荷分析システム、方法、及び、プログラムでは、リクエストから、区切り文字を利用して木構造で表される分類方式を導出し、リクエスト群を、木構造の分類方式のノードに何回到達するかで分類し、分類ごとのリクエスト数とサーバ負荷との相関を算出する。複数の分類方式の組合せにて、分類ごとのリクエストとサーバ負荷との相関を算出し、相関の妥当性を高くできる分類の仕方を求めることで、サーバに対して同様な負荷を与えるリクエストをノード到達回数でまとめることができ、リクエストごとにサーバに与える負荷が異なる場合でも、リクエストとサーバ負荷との相関を特定することができる。
【００４８】
本発明の負荷分析システム、方法、及び、プログラムでは、木構造の分類方式のノードに何回到達したかでリクエストを分類し、分類ごとのリクエスト数と、あらかじめ用意された、分類ごとのリクエスト数とサーバ負荷との相関とに基づいて、サーバ負荷の予測値を計算する。本発明では、リクエストを、木構造の分類方式のノードに何回到達したかでリクエストを分類するため、リクエストの一部に変化がある場合でもリクエストの分類が可能であり、リクエストがサーバ負荷に与える影響を予測することができる。従って、リクエストごとにサーバに与える負荷が異なる動的コンテンツについても、リクエストから、サーバ負荷の予測値を計算することができる。
【発明を実施するための最良の形態】
【００４９】
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図１は、本発明の第１実施形態の負荷分析システムの構成を示している。負荷分析システム１０は、キーボード等の入力装置１００、プログラム制御により動作するデータ処理装置２００、及び、ディスプレイ装置や印刷装置等の出力装置３００を有する。データ処理装置２００は、分類方式導出手段２０１、選択手段２０２、解析手段２０３、評価手段２０４、リクエスト取得手段２０５、及び、性能取得手段２０６を備える。データ処理装置２００は、コンピュータであり、プログラム動作により、各部の機能を実現する中央演算装置を有している。
【００５０】
性能取得手段２０６は、システムを構成するサーバの性能情報を取得する。性能情報は、例えば、単位時間あたりのＣＰＵや、メモリ、ディスクＩ／Ｏ等への負荷を示す情報である。リクエスト取得手段２０５は、システムのログ等を利用して、システムに対して発行されたリクエストに関する情報を取得し、これを図示しない記憶装置に記憶する。リクエスト情報は、ＨＴＴＰリクエストであれば、ＵＲＩ、ＨＴＴＰヘッダ、ＨＴＴＰボディ等がある。図２に、システムに対するリクエストの具体例を示す。この例は、ＨＴＴＰリクエストであり、同図における＜ｍｓｇ＞は任意の文字列を表し、＜５０｜１００｜ａｌｌ＞はそれぞれ５０、１００、ａｌｌの何れかを表す。
【００５１】
分類方式導出手段２０１は、リクエストに含まれる区切り文字を利用して、リクエスト取得手段２０５から得られたＨＴＴＰリクエスト群を、１つ以上に分類する分類方式を全て導出する。ＨＴＴＰリクエストの場合、区切り文字としては、“／”、“？”、“＝”、“＆”、“＋”等がある。導出された分類方式の具体例を図３に示す。リクエスト取得手段２０５は、図２に示すＨＴＴＰリクエストから、区切り文字を利用して、図３に示すような分類方式の木構造を作成する。この分類方式の導出の詳細については後述する。
【００５２】
選択手段２０２は、分類方式導出手段２０１が導出した分類方式の全ての組合せを列挙し、これを図示しない記憶装置に記憶する。選択手段２０２は、列挙した分類方式の組合せの中から、任意の分類方式の組合せを選択する。分類方式の選択は、図３に示すような分類木のノードのうちの任意のノードにマークを付けることで行う。例えば、図３中の「ｉｎｐｕｔ．ｃｇｉ」及び「ｃｏｍｍａｎｄ」のノードにマークを付ける。分類は、リクエストが、マークしたノードを何回到達するかで行う。例えば、リクエストが、「ｉｎｐｕｔ．ｃｇｉ」及び「ｃｏｍｍａｎｄ」のノードにそれぞれ到達した回数をカウントし、そのカウント値によって、リクエストを分類する。すなわち、リクエストを、「ｉｎｐｕｔ．ｃｇｉ」及び「ｃｏｍｍａｎｄ」のノードに１回も到達しないリクエスト、何れか一方のノードにのみ到達するリクエスト、及び、双方のノードに到達するリクエストの３つに分類する。
【００５３】
解析手段２０３は、リクエスト取得手段２０５からＨＴＴＰリクエスト群を取得し、性能取得手段２０６からリクエスト群取得時のサーバの性能情報を取得して、選択手段２０２にて選択された分類方式の組合せを分類方針としてリクエストを分類した際の分類ごとのリクエスト数とサーバ負荷との相関を算出する。相関の算出では、まず、リクエスト取得手段２０５が取得したＨＴＴＰリクエスト群を、選択手段２０２が選択した分類方式に従って分類し、各分類でのリクエスト数を算出する。例えば、「ｉｎｐｕｔ．ｃｇｉ」及び「ｃｏｍｍａｎｄ」のノードにマークが付けられているときには、ＨＴＴＰリクエスト群を、「ｉｎｐｕｔ．ｃｇｉ」及び「ｃｏｍｍａｎｄ」のノードに１回も到達しないリクエスト、何れか一方のノードにのみ到達するリクエスト、及び、双方のノードに到達するリクエストの３つに分類し、各分類のリクエスト数を算出する。その後、分類ごとのリクエスト数と、性能取得手段２０６から取得したサーバ負荷の実測値とを利用して回帰分析を行い、リクエスト数とサーバ負荷との相関を求める。評価手段２０４は、解析手段２０３が導出した相関の妥当性を評価する。
【００５４】
選択手段２０２は、選択した分類方式の組合せについて、リクエスト数とサーバ負荷との相関、及び、その妥当性が得られると、選択した分類方式の組合せと、相関及びその妥当性とを対応付けて記憶装置に記憶する。その後、列挙した分類方式の組合せの中から、まだ、相関及びその妥当性を計算していない分類方式の組合せを選択し、全ての組合せについて、相関及びその妥当性を算出する。選択手段２０２は、列挙した分類方式の組合せの全てについて、分類ごとのリクエスト群の数とサーバ負荷との相関、及び、その相関の妥当性が得られると、妥当性の高い相関のうちで、少ない分類によって算出された相関と、その相関を導出するために利用した分類方式とを出力装置３００に出力する。
【００５５】
図４は、負荷分析システム１０の動作手順を示している。分類方式導出手段２０１は、入力装置１００より解析の指示が与えられると、リクエスト取得手段２０５が取得したリクエスト群について、リクエスト中の区切り文字を利用して、リクエストを１つ以上の分類に分類する分類方式を導出する（ステップＳ１０１）。分類方式導出手段２０１は、分類方式の導出後、導出した分類方式を図示しない記憶装置に記憶する。
【００５６】
ＨＴＴＰリクエスト群の分類方式の導出は、例えば次のようにして行う。区切り文字の優先度を、“／”＞“？”＞“＆”＞“＝”＞“＋”と定める。リクエストの文字列の左から走査するにあたって、優先度の高い文字列を検索した後に、優先度の低い文字列を探索する。分類方式は、木構造で表現する。ルートノードは、ＨＴＴＰリクエストのＵＲＩの開始点を表す。ルートノードの子ノードは、ＵＲＩの開始点から区切り文字までの文字列を表す。子ノードの子ノードは、区切り文字から次に見つかる区切り文字までの文字列を表す。分類方式の木構造に対する関数を、以下のように定義する。
・Ａ（Ｍ，Ｔ）は木Ｔの小ノードにＭが存在しなければ小ノードＭを追加する。
・Ｓ（Ｍ，Ｔ）は木Ｔから小ノードのＭを最上位ノードとする部分木を取り出す。
・文字列Ｍから分類方式Ｔを導出するＣ（Ｍ，Ｔ）は、次のように定義される。
Ｃ（Ｍ，Ｔ）＝
Ｃ（Ｍ１／Ｍ２，Ｔ）ならば  Ａ（Ｍ１，Ｔ）＆Ｃ（Ｍ２，Ｓ（Ｍ１，Ｔ））
Ｃ（Ｍ１？Ｍ２，Ｔ）ならば  Ｃ（Ｍ１／Ｍ２，Ｔ）
Ｃ（Ｍ１＆Ｍ２，Ｔ）ならば  Ｃ（Ｍ１，Ｔ）＆Ｃ（Ｍ２，Ｔ）
Ｃ（Ｍ１＝Ｍ２，Ｔ）ならば  Ａ（Ｍ１，Ｔ）＆Ｃ（Ｍ２，Ｓ（Ｍ１，Ｔ））
Ｃ（Ｍ１＋Ｍ２，Ｔ）ならば  Ｃ（Ｍ１，Ｔ）＆Ｃ（Ｍ２，Ｔ）
それ以外ならば  Ａ（Ｍ，Ｔ）
【００５７】
選択手段２０２は、分類方式導出手段２０１によって導出された分類方式の組合せを列挙し、その中から任意の分類方式（組合せ）を選択する（ステップＳ１０２）。分類方式を、上記のように木構造で表現したとすれば、ステップＳ１０２では、任意の１つ以上のノードにマークをつけることで、分類方式を選択する。選択手段２０２は、分類方式の選択後、解析手段２０３と評価手段２０４とを順に呼び出し、選択した分類方式を分類方針としてリクエストを分類した際の分類ごとのリクエスト数とサーバ負荷との相関、及び、その妥当性を計算する。
【００５８】
解析手段２０３は、リクエスト取得手段２０５から、単位時間当たりのリクエスト群の情報を取得し、選択手段２０２が選択した分類方式に従って、取得したリクエスト群を分類し、分類ごとのリクエスト数を得る（ステップＳ１０３）。分類方式の木構造を用いた場合には、Ｉ（Ｍ，Ｔ）を、木Ｔの子ノードＭがチェックされていれば「１」を、それ以外の場合には「０」を返す補助関数として、文字列Ｍにおける木構造Ｔのチェックノードの到達回数を計測するＢ（Ｍ，Ｔ）を、以下のように定義する。
Ｂ（Ｍ，Ｔ）＝
Ｂ（Ｍ１／Ｍ２，Ｔ）ならば  Ｂ（Ｍ１，Ｔ）＋Ｂ（Ｍ２，Ｓ（Ｍ１，Ｔ））
Ｂ（Ｍ１？Ｍ２，Ｔ）ならば  Ｂ（Ｍ１／Ｍ２，Ｔ）
Ｂ（Ｍ１＆Ｍ２，Ｔ）ならば  Ｂ（Ｍ１，Ｔ）＋Ｂ（Ｍ２，Ｔ）
Ｂ（Ｍ１＝Ｍ２，Ｔ）ならば  Ｂ（Ｍ１，Ｔ）＋Ｂ（Ｍ２，Ｓ（Ｍ１，Ｔ））
Ｂ（Ｍ１＋Ｍ２，Ｔ）ならば  Ｉ（Ｍ１，Ｔ）＋Ｉ（Ｍ２，Ｔ）
それ以外ならば  Ｉ（Ｍ，Ｔ）
【００５９】
ステップＳ１０３では、解析手段２０３は、上記Ｂ（Ｍ，Ｔ）を利用して、取得したＨＴＴＰリクエストを解析したときに、分類方針の木構造のマークしたノードを何箇所通過するかを確認し、到達（通過）回数によってリクエストを分類する。例えば、４箇所のノードをマークしていた場合、リクエストを、４つのマークのうちの４箇所を通るリクエスト、３箇所を通るリクエスト、２箇所を通るリクエスト、１箇所を通るリクエスト、１箇所も通らないリクエストの５つに分類する。リクエスト群（総数１０００）に対して、分類ごとのリクエスト数を計算し、ノード通過０箇所は１００リクエスト、１箇所は２００リクエスト、２箇所は５００リクエスト、３箇所は３００リクエスト、４箇所は１００リクエストといった結果を得る。
【００６０】
解析手段２０３は、ステップＳ１０３で得られた分類ごとのリクエスト数と、性能取得手段２０６が取得した単位時間当たりのサーバ負荷とを利用して、リクエストとサーバ負荷との相関を導出する（ステップＳ１０４）。ステップＳ１０４では、ｎ分類されたリクエスト群を、１つの集合ｉ（ｉ＝１，．．．，ｎ）としたとき、サーバへ与える負荷Ｕｉを、下記式１のように考える。
Ｕｉ＝ａｉλｉ      （１）
式１におけるλｉは、分類ｉに属するリクエストの数であり、ａｉはその分類のリクエストについての負荷係数である。全てのリクエストの集合がサーバに与える負荷を足し合わせることで、サーバ全体の負荷Ｕを、下記式２のように求める。
【数１】
2008225651.tif 000003
例えば、４箇所のノードにマークがつけられていた場合には、５つに分類されたリクエストが与えるサーバ全体の負荷Ｕは、
Ｕ＝ａ０λ０＋ａ１λ１＋ａ２λ２＋ａ３λ３＋ａ４λ４＋ｂ      （３）
で表される。
【００６１】
解析手段２０３は、ステップＳ１０４では、リクエスト群取得時点でのサーバ負荷の実績値を取得する。例えば、リクエスト群取得と同時刻でのサーバ負荷の実績値として、最大負荷に対して０．８という値を取得する。これにより、式３の変数｛Ｕ，λ０、λ１、λ２、λ３、λ４｝に対して、実測値｛０．８，１００，２００，５００，３００，１００｝が得られたことになる。解析手段２０３は、サーバ負荷の実績値と、取得したリクエスト群の分類ごとのリクエスト数とを式２に代入する処理を繰り返し行い、例えば重回帰分析を用いて、ａｉとｂの値を求める。この処理における繰り返し回数については、繰り返し回数が多いほど、得られるａｉとｂの値の信頼性が高くなる。このようにして求められたａｉ及びｂの値が、リクエスト数とサーバ負荷との相関となる。
【００６２】
評価手段２０４は、ステップＳ１０４で導出した相関の妥当性を求める（ステップＳ１０５）。妥当性には、下記式４で示すような決定係数を用いる。
【数２】
2008225651.tif 000004
ただし、Ｓλは残差平方和、Ｓｕはサーバ負荷Ｕの偏差平方和、
ｐは分類数、ｎはサンプル数
解析手段２０３にて算出された相関、及び、評価手段２０４にて算出された相関の妥当性（決定係数）は、ステップＳ１０２で選択された分類方式の組合せに対応付けて、記憶装置に記憶される。
【００６３】
選択手段２０２は、列挙した分類方式の組合せの全てについて、ステップＳ１０２〜Ｓ１０５の処理を行ったか否かを判断する（ステップＳ１０６）。まだ処理を行っていない分類方式があるときには、ステップＳ１０２に戻り、次の分類方式を選択する。ステップＳ１０２〜Ｓ１０５までを繰り返し行うことで、図３に示すノードの全ての選択の組合せに対して、相関と、決定係数とを算出する。
【００６４】
選択手段２０２は、全ての分類方式について処理を終えると、記憶装置を参照して、ステップＳ１０４で算出された相関のうちで、ステップＳ１０５で算出された決定係数が高いものを抽出する。この抽出では、例えば、決定係数が所定のしきい値以上となる相関を抽出する。或いは、決定係数を高い方から並べたときに、上から全体のうちの２０％の範囲に入る相関を抽出するなどでもよい。選択手段２０２は、抽出された相関のうちで、最も少ない分類によって導出された相関、すなわち、ステップＳ１０２でマークをつけられたノードが最も少ない分類によって導出された相関と、その相関を導出するために利用された分類方式とを、出力装置３００に出力する（ステップＳ１０７）。
【００６５】
本実施形態では、区切り文字を利用してリクエストを分類する方式を列挙し、各分類方式の組合せについて、分類ごとのリクエスト数とサーバ負荷との相関、及び、その妥当性を計算し、相関の妥当性を高くできる分類方式を見つけ出す。このようにすることで、リクエストごとにサーバに与える負荷が異なる場合でも、サーバに与える負荷が同程度になるリクエストをまとめる分類方式を見つけ出すことができ、リクエストとサーバ負荷との相関を特定することができる。これにより、動的コンテンツに対するリクエストについて、サーバ負荷の予測値の計算が可能となる。
【００６６】
ここで、分類ごとのリクエスト数とサーバ負荷との相関の算出に際しては、分類に用いる分類方式（ノード）の数を増やして、リクエストを細かく分類するほど、得られる相関の妥当性は高くなると考えられる。しかし、分類数を多くすると、それに伴って、リクエスト分類の際の処理負担が増加することから、分類の数は、少ない方が有利である。本実施形態では、相関の妥当性が高いもののうちで、分類の数が最も少ない分類方式を、相関算出に用いる分類方式として選択する。このようにすることで、リクエストを分類する際の分類数を少なくすることができる。
【００６７】
また、本実施形態では、リクエストの分類を、木構造の分類方式のノードに何回到達したかで行う。仮に、木構造の分類方式のうちの、どのノードを通ったかによってリクエスト分類するとすると、分類の数は、分類方針として用いるノードの組合せによって決まることなる。例えば、図３において、「ｄｅｌｅｔｅ」、「＜ｍｓｇ１＞」、「１００」の３つで、リクエストを分類する場合、「ｄｅｌｅｔｅ」、「＜ｍｓｇ１＞」、「１００」の何れも通らないリクエスト、「ｄｅｌｅｔｅ」のみを通るリクエスト、「ｄｅｌｅｔｅ」と「＜ｍｓｇ１＞」とを通るリクエスト、「ｄｅｌｅｔｅ」と「＜ｍｓｇ１＞」と「１００」とを通るリクエスト、「＜ｍｓｇ１＞」のみを通るリクエスト、・・・、のように、３つのノードの組合せで、分類数が決まることになる。この場合は、ノード数増加に伴って分類数が増大する。本実施形態では、木構造の分類方式のノードに何回到達したかでリクエストを分類するため、ノード数が増加しても、分類の数は増大せず、どのノードを通ったかでリクエストを分類する場合に比して、リクエスト分類の処理負担を軽減することができる。
【００６８】
図５は、本発明の第２実施形態の負荷分析システムの構成を示している。本実施形態の負荷分析システム１０ａは、データ処理装置４００が、選択手段２０２に代えて、組合せ手段２０８を有する点で、第１実施形態の負荷分析システム１０と相違する。第１実施形態では、分類方式導出手段２０１が導出した分類方式の全ての組合せについて、リクエスト数とサーバ負荷との相関を調べ、妥当性が高い分類方式を導出した。本実施形態では、相関の妥当性が高い分類方式を記憶装置５００に記憶し、導出された分類方式の中からノードを１つずつ取り出して、記憶装置５００に記憶された相関の妥当性が高い分類方式を結合し、相関及びその妥当性を求めていく。
【００６９】
記憶装置５００は、分析結果記憶部５０１を有する。分析結果記憶部５０１は、リクエスト数とサーバ性能との相関の妥当性が高いと計算された分類方式について、分類方式、その分類方式を用いて得られたリクエスト数とサーバ性能との相関、及び、その相関の妥当性を記憶する。組合せ手段２０８は、分類方式導出手段２０１によって導出された分類木の中から、任意のノードを選択する。このとき、リクエストは、選択されたノードに到達するリクエストと、到達しないリクエストとの２つに分類可能であるから、組合せ手段２０８は、リクエストを２分類する分類方式を１つ選択するという言い方もできる。組合せ手段２０８は、任意のノードの選択後、これと、分析結果記憶部５０１に記憶された分類方式とを結合した分類方式を生成する。
【００７０】
組合せ手段２０８は、分類方式の結合後、解析手段２０３と評価手段２０４とによって、生成した分類方式について、リクエスト数とサーバ性能との相関、及び、その妥当性を計算する。その後、評価手段２０４によって計算された妥当性と、分析結果記憶部５０１に記憶されている妥当性とを比較する。計算された妥当性が、記憶済みの妥当性よりも高いときには、相関の計算に用いたリクエストの分類方式、リクエスト数とサーバ性能との相関、及び、その妥当性を、分析結果記憶部５０１に上書きする。組合せ手段２０８は、選択可能なノードがなくなるまで、分類方式の結合と、相関及びその妥当性の算出とを繰り返し行う。組合せ手段２０８は、全ての分類方式について処理を終えると、分析結果記憶部５０１に記憶された相関及び分類方式を、出力装置３００に出力する。
【００７１】
図６は、負荷分析システム１０ａの動作手順を示している。分類方式導出手段２０１は、入力装置１００より解析の指示が与えられると、リクエスト取得手段２０５が取得したリクエスト群から、リクエスト中の区切り文字を利用して、リクエストを１つ以上の分類に分類する分類方式を導出する（ステップＳ２０１）。このステップは、図４のステップＳ１０１と同様である。組合せ手段２０８は、分類方式導出手段２０１によって導出された分類方式の中から任意のノードを選択し、リクエストを、選択したノードを通るリクエストと、通らないリクエストとの２つに分類する分類方式を生成する（ステップＳ２０２）。
【００７２】
組合せ手段２０８は、記憶装置５００を参照し、分析結果記憶部５０１に格納されている分類方式と、ステップＳ２０２で選択した分類方式とを結合する（ステップＳ２０３）。組合せ手段２０８は、分類方式の結合後、解析手段２０３と評価手段２０４とを順に呼び出し、リクエスト群の分類（ステップＳ２０４）、リクエスト数とサーバ性能との相関の算出（ステップＳ２０５）、及び、相関の妥当性（決定係数）の算出（ステップＳ２０６）を行う。ステップＳ２０４〜ステップＳ２０６の動作は、図４のステップＳ１０３〜Ｓ１０５の動作と同様である。
【００７３】
組合せ手段２０８は、ステップＳ２０３で生成した分類方式についての相関、及びその決定係数が得られると、その決定係数と、分析結果記憶部５０１に記憶された妥当性（決定係数）とを比較する（ステップＳ２０７）。ステップＳ２０６で得られた決定係数が、分析結果記憶部５０１に記憶された決定係数よりも高いときには、ステップＳ２０３で生成した分類方式、ステップＳ２０５で算出されたリクエスト数とサーバ性能との相関、及び、ステップＳ２０６で算出された決定係数を、分析結果記憶部５０１に上書き保存する(ステップＳ２０８)。ここで、決定係数が同程度であれば、分類数を増やしても相関の妥当性は余り変化がないということになるので、決定係数の比較では、ある程度のマージンをとって、算出された決定係数が、記憶済みの決定係数よりも所定の値以上大きいときに、ステップＳ２０８へ移行して、分類方式、相関、及び、決定係数を保存するようにするとよい。
【００７４】
組合せ手段２０８は、ステップＳ２０１で導出された分類方式の全てのノードについて、処理を行ったか否かについて判断する（ステップＳ２０９）。ステップＳ２０２で選択していないノードが存在する場合には、ステップＳ２０２に戻り、未選択のノードの中から、任意のノードを選択する。組合せ手段２０８は、ステップＳ２０２〜ステップＳ２０９の処理を繰り返し行い、全てのノードについて、分析結果記憶部５０１に記憶された分類方式との結合、リクエスト数とサーバ性能との相関、及び、その妥当性の算出を行う。組合せ手段２０８は、ステップＳ２０９で、全てのノードについて処理を行ったと判断すると、分析結果記憶部５０１に記憶された分類方式及び相関を出力装置３００に出力する（ステップＳ２１０）。
【００７５】
以下、具体例を用いて説明する。組合せ手段２０８は、例えば、図３に示す分類方式から、最初に「ｄｅｌｅｔｅ」ノードを選択し、このノードにマークを付ける。分析結果記憶部５０１に、まだ、リクエスト数とサーバ性能との相関の妥当性が高い分類方式が記憶されていないときには、結合すべき分類方式が存在しないので、ステップＳ２０３で生成される分類方式は、ステップＳ２０２で選択された分類方式に等しい。ステップＳ２０４では、解析手段２０３は、リクエスト取得手段２０５から単位時間当たりのリクエスト群の情報を取得し、Ｂ（Ｍ，Ｔ）を利用して、ＨＴＴＰリクエスト群を解析した際に、分類方針の木構造のマークノード（「ｄｅｌｅｔｅ」ノード）を何箇所通るかを計算する。
【００７６】
ステップＳ２０４では、取得したリクエスト群（総数１０００）について、Ｂ（Ｍ，Ｔ）を利用して「ｄｅｌｅｔｅ」ノードへの到達数を調べることで、「ｄｅｌｅｔｅ」ノードを通らないリクエスト数：７００、１回到達するリクエスト数：３００といった結果を得る。また、解析手段２０３は、リクエスト群取得時と同時刻に取得した単位時間当たりのサーバ負荷情報を取得する。解析手段２０３は、分類ごとのリクエスト数、及び、リクエスト群取得時のサーバ負荷について複数のサンプル値を取得し、ステップＳ２０５にて、重回帰分析により、リクエスト数とサーバ性能との相関を算出する。その後、ステップＳ２０６で、評価手段２０４により、算出された相関について、決定係数を求める。
【００７７】
組合せ手段２０８は、ステップＳ２０７で、算出された決定係数と、分析結果記憶部５０１に記憶された決定係数とを比較するが、初め、分析結果記憶部５０１には何も記憶されていないので、ステップＳ２０８へ移行して、分析結果記憶部５０１に、相関を求めた分類方式（「ｄｅｌｅｔｅ」ノード）、算出された相関、及び、その決定係数を記憶する。その後、未処理のノードが存在するため、ステップＳ２０９から、ステップＳ２０２に戻り、次のノードを選択する。
【００７８】
組合せ手段２０８は、２回目のループでは、分類方式の木構造の中から、まだマークが付けられていないノード、すなわち、「ｄｅｌｅｔｅ」ノード以外のノードの中から、任意のノードを選択する。ここでは、「ｒａｎｇｅ」の子ノードである「５０」のノードにマークが付けられたとする。ステップＳ２０３では、分析結果記憶部５０１に記憶された分類方式、すなわち、「ｄｅｌｅｔｅ」ノードを通るか否かを分類方針とする分類方式と、今回選択された「５０」のノードを通るか否かを分類方針とする分類方式とを結合する。この結合により、「ｄｅｌｅｔｅ」ノード及び「５０」ノードの２つのノードへの到達回数を分類方針とする分類方式が生成される。
【００７９】
解析手段２０３は、単位時間当たりのリクエスト群の情報を取得し、Ｂ（Ｍ，Ｔ）を利用して、「ｄｅｌｅｔｅ」ノード及び「５０」ノードを何回通過するかを計算する。例えば、リクエスト総数１０００に対して、「ｄｅｌｅｔｅ」ノード及び「５０」ノードの何れにも到達しないリクエスト数：３００、何れか一方のノードに到達するリクエスト数：２００、双方のノードに到達するリクエスト数：５００という結果を得る。また、解析手段２０３は、リクエスト群取得時の単位時間当たりのサーバの負荷情報を取得する。分類ごとのリクエスト数とサーバ負荷の実測値とを複数回取得して回帰分析を行い、リクエスト数とサーバ性能との相関を算出する。その後、評価手段２０４は、算出した相関についての決定係数を算出する。
【００８０】
組合せ手段２０８は、評価手段２０４にて算出された決定係数と、分析結果記憶部５０１に記憶された決定係数、すなわち、今回求めた「ｄｅｌｅｔｅ」ノード及び「５０」ノードの２つのノードを分類方針とする分類方式での決定係数と、前回求めた「ｄｅｌｅｔｅ」ノードのみを分類方針とする分類方式での決定係数とを比較する。今回求めた決定係数が、分析結果記憶部５０１に記憶された過去に算出された決定係数よりも大きければ、「ｄｅｌｅｔｅ」ノード及び「５０」ノードを用いて分類したときのリクエスト数とサーバ負荷との相関、その決定係数、及び、分類方式として「ｄｅｌｅｔｅ」ノード及び「５０」ノードを用いる旨を、分析結果記憶部５０１に上書き保存する。
【００８１】
評価手段２０４にて算出された決定係数が、分析結果記憶部５０１に記憶された過去に算出された決定係数よりも小さい、或いは、同程度であるときには、分析結果記憶部５０１の書換えは行わない。この場合には、「５０」ノードを無効化して、ステップＳ２０９にて、未処理のノードが存在するか否かを判断する。このようにして、ステップＳ２０２にて、ノードを１つずつ選択し、ステップＳ２０３にて、分析結果記憶部５０１に記憶された分類方式との統合を行い、決定係数が高い分類方式を、分析結果記憶部５０１に記憶していく。未処理のノードがなくなるまで、処理を繰り返すことで、最終的に、決定係数を高くできる相関、及び、その相関を計算する際の分類方式が得られる。
【００８２】
本実施形態では、分析結果記憶部５０１に、高い妥当性が得られる分類方式、及び、その分類方式でリクエストを分類したときの分類ごとのリクエスト数とサーバ負荷との相関を記憶し、分析結果記憶部５０１に記憶された分類方式に、リクエストを２分類する分類方式を結合して相関及びその妥当性を算出し、より高い妥当性が得られるかを調べていく。第１実施形態では、導出された分類方式のすべての組合せについて、リクエスト数とサーバ負荷との相関を算出したが、この方式では、分類方式が増えるにつれて、組合せの数が爆発的に増加するので、相関算出に要する時間や、必要とする記憶容量が増大する。本実施形態では、リクエストを２分類する分類方式の適切な組合せを見つけることで、妥当性の高い相関、及び、そのときの分類方式を得るため、分類方式の全ての組合せについて相関を算出する場合に比して、相関算出に要する時間の短縮、及び、分類方式の組合せを記憶する記憶領域の削減を期待できる。
【００８３】
図７は、本発明の第３実施形態の負荷分析システムの構成を示している。本実施形態の負荷分析システム１０ｂは、データ処理装置７００が、図５に示す第２実施形態におけるデータ処理装置４００の構成に加えて、除去手段２０９を有する点で、第２実施形態の負荷分析システム１０ａと相違する。除去手段２０９は、分類方式導出手段２０１が導出した分類方式の中から、分類方式を用いて分類されるリクエスト数が、全体のリクエスト数に比べて遥かに少なくなる分類方式を除外する。
【００８４】
図８は、負荷分析システム１０ｂの動作手順を示している。分類方式導出手段２０１は、入力装置１００より解析の指示が与えられると、リクエスト取得手段２０５が取得したリクエスト群から、リクエスト中の区切り文字を利用して、リクエストを１つ以上の分類に分類する分類方式を導出する（ステップＳ２０１）。この動作は、第２実施形態における分類方式導出手段の動作と同様である。除去手段２０９は、導出された分類方式の中から、分類方式を適用した際にリクエストを細分化する分類方式を除去する（ステップＳ３０１）。
【００８５】
ステップＳ３０１では、まず、リクエスト群のうちで、各分類方式に到達するリクエスト数を計算する。分類方式を図３の木構造で表現した場合、木構造の各ノードに初期値０を付与し、Ｊ（Ｍ，Ｔ）を木構造Ｔの小ノードＭの数字を１上げる補助関数としたとき、文字列Ｍの木構造Ｔでの出現回数は、Ｄ（Ｍ，Ｔ）で定義される。
Ｄ（Ｍ，Ｔ）  ＝
Ｄ（Ｍ１／Ｍ２，Ｔ）ならば  Ｊ（Ｍ１，Ｔ）＆Ｄ（Ｍ２，Ｓ（Ｍ１，Ｔ））
Ｄ（Ｍ１？Ｍ２，Ｔ）ならば  Ｄ（Ｍ１／Ｍ２，Ｔ）
Ｄ（Ｍ１＆Ｍ２，Ｔ）ならば  Ｄ（Ｍ１，Ｔ）＋Ｂ（Ｍ２，Ｔ）
Ｄ（Ｍ１＝Ｍ２，Ｔ）ならば  Ｄ（Ｍ１，Ｔ）＋Ｂ（Ｍ２，Ｓ（Ｍ１，Ｔ））
Ｄ（Ｍ１＋Ｍ２，Ｔ）ならば  Ｄ（Ｍ１，Ｔ）＋Ｄ（Ｍ２，Ｔ）
上記以外ならば  Ｊ（Ｍ、Ｔ）
【００８６】
上記Ｄ（Ｍ，Ｔ）で付与された、各分類方式（各ノード）の出現回数と、リクエスト群に含まれるリクエストの総数とを比較し、リクエスト総数に比して、出現回数が少ない分類方式を、導出された分類方式から削除する。例えば、リクエスト総数に対して、出現回数が所定割合以下のノードを削除する。組合せ手段２０８は、除去手段２０９にて、全体のリクエスト数に比して出現回数が少ないノードが削除されたノード中から、ノードを選択する（ステップＳ２０２）。その後の動作は、第２実施形態における動作（図６）と同様である。
【００８７】
具体例を用いて説明する。リクエストとして、図２に示すようなＨＴＴＰリクエストを考える。分類方式導出手段２０１は、図２に示すようなＨＴＴＰリクエストから、図３に示す木構造の分類方式を導出する。除去手段２０９は、上記のＨＴＴＰリクエストを利用して、Ｄ（Ｍ，Ｔ）を実行することにより、ノードごとに、ノードの文字列を含むＨＴＴＰリクエストの数を算出する。算出結果を図９に示す。この例では、リクエスト総数は１０００であり、そのうちで、「ｉｎｓｅｒｔ」を含むリクエストの数は２００、「ｄｅｌｅｔｅ」を含むリクエストの数は３００、「ｒｅｆｅｒ」を含むリクエストの数は５００であることを示している。
【００８８】
除去手段２０９は、リクエスト総数に対してリクエスト数が極端に少ないノードを分類方式から削除する。図９では、＜ｍｓｇ１＞、＜ｍｓｇ２＞、＜ｍｓｇ３＞のノードの出現回数が、リクエスト総数１０００に対して少ないので、これらのノードを削除する。これにより、組合せ手段２０８は、ステップＳ２０２にて、出現回数の少ないノードを選択することができなくなる。なお、ここでは、便宜上「削除」という表現を用いたが、実際には、導出された分類方式を記憶する記憶装置から削除する必要はなく、組合せ手段２０８によって選択不能とするだけでよい。
【００８９】
本実施形態では、除去手段２０９により、リクエスト総数に対して出現回数が少ないノードを、削除する処理を行う。このようにすることで、分類方式を適用した際にリクエストを細分化する分類方式については、組合せ手段２０８が、ノードを選択する際の選択対象から外すことができ、組み合わせ対象の分類方式の数を減らすことができる。本実施形態では、リクエストを極端に限定するような特徴を除いて分類し、サーバ負荷との相関を算出することで、リクエストの一部に変化があった場合でも、サーバ負荷を特定することができる。その他の効果は、第２実施形態と同様である。
【００９０】
図１０は、本発明の第４実施形態の負荷分析システムを示している。本実施形態の負荷分析システム１０ｃは、入力装置１００、出力装置３００、負荷分析用プログラム８００、及び、データ処理装置９００を有する。負荷分析用プログラム８００は、データ処理装置９００に読み込まれ、データ処理装置９００の動作を制御する。データ処理装置９００は、負荷分析用プログラム８００が動作することにより、図１に示す第１実施形態の負荷分析システム１０におけるデータ処理装置２００と同様の処理を実行する。
【００９１】
図１１は、本発明の第５実施形態の負荷分析システムを示している。本実施形態の負荷分析システム１０ｄは、入力装置１００、出力装置３００、記憶装置５００、負荷分析用プログラム１０００、及び、データ処理装置１１００を有する。負荷分析用プログラム１０００は、データ処理装置１１００に読み込まれ、データ処理装置１１００の動作を制御する。データ処理装置１１００は、負荷分析用プログラム１０００が動作することにより、図５に示す第２実施形態の負荷分析システム１０ａにおけるデータ処理装置４００、又は、図７に示す第３実施形態の負荷分析システム１０ｂにおけるデータ処理装置７００と同様の処理を実行する。
【００９２】
負荷分析システムにて算出された相関を用いたサーバ負荷の予測について説明する。図１２は、負荷予測に用いる負荷分析システムの構成を示している。リクエスト取得手段１２０１は、サーバに対するリクエストを取得する。記憶装置１２０３は、負荷分析システム（図１等）によって出力された、分類ごとのリクエスト数とサーバ負荷との相関、及び、分類方式を記憶する。サーバ負荷予測値算出手段１２０２は、リクエスト取得手段１２０１から複数のリクエストを含むリクエスト群を取得し、取得したリクエスト群を、図示しない分類手段により、記憶装置１２０３に記憶された分類方式に従って分類し、分類ごとのリクエスト数を計算する。分類手段による分類の仕方は、選択手段２０２（図１）及び組合せ手段２０８（図５）におけるリクエスト分類と同様の分類の仕方である。サーバ負荷予測値算出手段１２０２は、記憶装置１２０３に記憶された相関に、計算した分類ごとのリクエスト数を当てはめ、サーバ負荷の予測値を計算する。
【００９３】
なお、第３実施形態では、第２実施形態の構成に、除去手段２０９を追加する構成としたが、第１実施形態の構成に除去手段２０９を追加した構成も可能である。この場合には、選択手段２０２にて、分類方式導出手段２０１により導出された分類方式の中から除去手段２０９によって除去された分類方式を除いた分類方式の組合せを列挙し、各組合せについて、分類ごとのリクエスト数とサーバ負荷との相関、及び、その妥当性を算出すればよい。
【００９４】
以上、本発明をその好適な実施形態に基づいて説明したが、本発明の負荷分析システム、方法、及び、プログラムは、上記実施形態にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。
【産業上の利用可能性】
【００９５】
本発明は、リクエストとサーバ負荷の相関を解析する運用管理装置や運用管理装置をコンピュータに実現するためのプログラムといった用途に適用できる。また、リクエストとサーバ負荷との相関を解析する機能を、自律制御装置に搭載されている分析機能、又は、監視装置に搭載されている分析機能といった用途にも適用できる。
【図面の簡単な説明】
【００９６】
【図１】本発明の第１実施形態の負荷分析システムの構成を示すブロック図。
【図２】リクエストの具体例を示す図。
【図３】木構造の分類方式の具体例を示す図。
【図４】第１実施形態の負荷分析システムの動作手順を示すフローチャート。
【図５】本発明の第２実施形態の負荷分析システムの構成を示すブロック図。
【図６】第２実施形態の負荷分析システムの動作手順を示すフローチャート。
【図７】本発明の第３実施形態の負荷分析システムの構成を示すブロック図。
【図８】第３実施形態の負荷分析システムの動作手順を示すフローチャート。
【図９】各ノードに到達するリクエスト数を示す図。
【図１０】本発明の第４実施形態の負荷分析システムの構成を示すブロック図。
【図１１】本発明の第５実施形態の負荷分析システムの構成を示すブロック図。
【図１２】負荷予測に用いる負荷分析システムの構成を示すブロック図。
【符号の説明】
【００９７】
１０：負荷分析システム
１００：入力装置
２００、４００、７００：データ処理装置
２０１：分類方式導出手段
２０２：選択手段
２０３：解析手段
２０４：評価手段
２０５：リクエスト取得手段
２０６：性能取得手段
２０８：組合せ手段
２０９：除去手段
３００：出力装置
５００：記憶装置
５０１：分析結果記憶部
８００、１０００：負荷分析用プログラム
９００、１１００：データ処理装置
１２０１：リクエスト取得手段
１２０２：サーバ負荷予測値算出手段
１２０３：記憶装置
【図１】
2008225651.tif 000005
【図２】
2008225651.tif 000006
【図３】
2008225651.tif 000007
【図４】
2008225651.tif 000008
【図５】
2008225651.tif 000009
【図６】
2008225651.tif 000010
【図７】
2008225651.tif 000011
【図８】
2008225651.tif 000012
【図９】
2008225651.tif 000013
【図１０】
2008225651.tif 000014
【図１１】
2008225651.tif 000015
【図１２】
2008225651.tif 000016