(57)【要約】【課題】情報処理システムにおける無駄なリソースを削減し、効率的なリソース運用を行う。【解決手段】プロビジョニング装置１０は、情報処理システムの測定データ、リソース状況、および、パラメータ値を用いて、情報処理システム全体の性能の予測値を計算する。ここで、計算した予測値が所定の閾値に達しないとき、プロビジョニング装置１０は、情報処理システムへの入力データ量をすべて処理できる範囲で、パラメータ値を変更しながら、予測値を所定の閾値以上とするためのパラメータ値を探索する。ここで、探索の結果、予測値を所定の閾値以上とするためのパラメータ値を発見できなかったとき、プロビジョニング装置１０は、情報処理システムのリソースの増加を行う。また、プロビジョニング装置１０は、計算した予測値が所定の閾値以上であるとき、情報処理システムのリソースから余剰リソースを削減する。【選択図】図２
2015011365.tif 000002
【特許請求の範囲】
【請求項１】
情報処理システムの測定データ、および、前記情報処理システムの各装置のリソースのリソース状況を収集する収集部と、
前記測定データ、および、前記リソース状況を用いて、前記情報処理システム全体の性能の予測値を計算し、前記計算した性能の予測値が所定の閾値に達しないとき、前記性能の予測値を所定の閾値以上とするための前記各装置のパラメータ値を探索する解析部と、
前記性能の予測値を所定の閾値以上とするためのパラメータ値を、前記情報処理システムの各装置に設定するパラメータ設定部と、
前記情報処理システムの各装置へリソースの増加および削減を指示するリソース調整部とを備え、
前記解析部は、
前記探索の結果、前記予測値を所定の閾値以上とするためのパラメータ値を発見できなかったとき、前記リソースの増加を前記リソース調整部に依頼し、
前記計算した性能の予測値が所定の閾値以上であるとき、前記性能の予測値が前記所定の閾値以上となる範囲で各リソースの値を変更して、前記予測値に影響を与えるリソースを探索し、前記探索されたリソースの削減を、前記リソース調整部に依頼することを特徴とするプロビジョニング装置。
【請求項２】
前記解析部は、
前記測定データ、および、前記リソース状況を用いて、前記情報処理システム全体の性能の予測値を計算し、前記計算した性能の予測値が所定の閾値に達しないとき、前記性能の予測値が前記所定の閾値に最も近づくような、前記情報処理システムの各装置のパラメータ値を探索することを特徴とする請求項１に記載のプロビジョニング装置。
【請求項３】
前記測定データは、前記情報システムへの入力データ量の情報を含み、
前記解析部は、
前記測定データ、および、前記リソース状況を用いて、前記情報処理システム全体の性能の予測値を計算し、前記計算した性能の予測値が所定の閾値に達しないとき、前記情報処理システムへの入力データ量を所定値以上処理できる範囲で、前記性能の予測値を所定の閾値以上とするための前記各装置のパラメータ値を探索することを特徴とする請求項１に記載のプロビジョニング装置。
【請求項４】
前記解析部は、
前記計算した性能の予測値が所定の閾値以上である場合において、前記情報処理システムの性能の予測値の変動が、過去所定期間内において、所定範囲内であるとき、または、前記情報処理システムへの入力データ量が減少傾向にあるとき、前性能の予測値が前記所定の閾値以上となる範囲で各リソースの値を変更して、前記性能の予測値に影響を与えるリソースを探索し、前記探索されたリソースの削減を、前記リソース調整部に依頼することを特徴とする請求項１または請求項２に記載のプロビジョニング装置。
【請求項５】
情報処理システムの各装置のリソースの増加および削減と、前記各装置の設定値であるパラメータ値の設定とを行うプロビジョニング装置、および、前記各装置に設置されるモニタリング・設定変更部を備えるシステムであって、
前記プロビジョニング装置は、
前記情報処理システムの測定データ、および、前記情報処理システムの各装置のリソースのリソース状況を収集する収集部と、
前記測定データ、および、前記リソース状況を用いて、前記情報処理システム全体の性能の予測値を計算し、前記計算した性能の予測値が所定の閾値に達しないとき、前記性能の予測値を所定の閾値以上とするための前記各装置のパラメータ値を探索する解析部と、
前記性能の予測値を所定の閾値以上とするためのパラメータ値を、前記情報処理システムの各装置に設定するパラメータ設定部と、
前記情報処理システムの各装置へリソースの増加および削減を指示するリソース調整部とを備え、
前記解析部は、
前記探索の結果、前記予測値を所定の閾値以上とするためのパラメータ値を発見できなかったとき、前記リソースの増加を前記リソース調整部に依頼し、
前記計算した性能の予測値が所定の閾値以上であるとき、前記性能の予測値が前記所定の閾値以上となる範囲で各リソースの値を変更して、前記予測値に影響を与えるリソースを探索し、前記探索されたリソースの削減を、前記リソース調整部に依頼し、
前記モニタリング・設定変更部は、
前記測定データ、および、前記リソース状況を前記プロビジョニング装置へ送信し、前記プロビジョニング装置からの指示に基づき、前記各装置のリソースの増加および削減と、前記各装置のパラメータ値の設定とを行うことを特徴とするシステム。
【請求項６】
情報処理システムの各装置のリソースの増加および削減と、前記各装置の設定値であるパラメータ値の設定とを行うプロビジョニング装置が、
前記情報処理システムの測定データ、および、前記情報処理システムの各装置のリソースのリソース状況を収集する収集ステップと、
前記測定データ、および、前記リソース状況を用いて、前記情報処理システム全体の性能の予測値を計算し、前記計算した性能の予測値が所定の閾値に達しないとき、前記性能の予測値を所定の閾値以上とするための前記各装置のパラメータ値を探索する解析ステップと、
前記性能の予測値を所定の閾値以上とするためのパラメータ値を、前記情報処理システムの各装置に設定するパラメータ設定ステップと、
前記情報処理システムの各装置へリソースの増加および削減を指示するリソース調整ステップとを実行し、
前記予測ステップにおいて、
前記探索の結果、前記予測値を所定の閾値以上とするためのパラメータ値を発見できなかったとき、前記リソースの増加を前記リソース調整ステップにより実行し、
前記計算した性能の予測値が所定の閾値以上であるとき、前記性能の予測値が前記所定の閾値以上となる範囲で各リソースの値を変更して、前記予測値に影響を与えるリソースを探索し、前記探索されたリソースの削減を、前記リソース調整ステップにより実行することを特徴とするプロビジョニング方法。
【請求項７】
情報処理システムの各装置のリソースの増加および削減と、前記各装置の設定値であるパラメータ値の設定とを行うプロビジョニング装置に、
前記情報処理システムの測定データ、および、前記情報処理システムの各装置のリソースのリソース状況を収集する収集ステップと、
前記測定データ、および、前記リソース状況を用いて、前記情報処理システム全体の性能の予測値を計算し、前記計算した性能の予測値が所定の閾値に達しないとき、前記性能の予測値を所定の閾値以上とするための前記各装置のパラメータ値を探索する解析ステップと、
前記性能の予測値を所定の閾値以上とするためのパラメータ値を、前記情報処理システムの各装置に設定するパラメータ設定ステップと、
前記情報処理システムの各装置へリソースの増加および削減を指示するリソース調整ステップとを実行させ、
前記予測ステップにおいて、
前記探索の結果、前記予測値を所定の閾値以上とするためのパラメータ値を発見できなかったとき、前記リソースの増加を前記リソース調整ステップにより実行させ、
前記計算した性能の予測値が所定の閾値以上であるとき、前記性能の予測値が前記所定の閾値以上となる範囲で各リソースの値を変更して、前記予測値に影響を与えるリソースを探索し、前記探索されたリソースの削減を、前記リソース調整ステップにより実行させるためのプロビジョニングプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロビジョニング装置、システム、プロビジョニング方法、および、プロビジョニングプログラムに関する。
【背景技術】
【０００２】
情報処理システムでは、処理すべき入力データを一時的にバッファに保持し、当該バッファ内のデータ量に対して順次、決められた処理を行う。
【０００３】
ここで、情報処理システムへの入力データが急激に増大した場合は、バッファ内のデータがあふれてしまうおそれがある。そこで入力データが急激に増大した場合は、情報処理システムに対して確保された余剰リソースを用いて、リソースの追加等を行うことが行われる（非特許文献１参照）。このようなリソースの追加のため、情報処理システムに余剰リソースを確保しておくことが必要である。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】A.Chandra他“Dynamic  Resource  Allocation  for  Shared  Data  Centers  Using  Online  Measurements,”  IWQoS  2003、pp.381-398、2003年
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、情報処理システムへの入力データ量が減少した場合には、リソースの利用効率が低下してしまう。つまり、情報処理システムに余剰リソースを過剰に確保してしまうと、無駄が生じてしまうおそれがあるという問題があった。
【課題を解決するための手段】
【０００６】
前記した課題を解決するため、本発明は、情報処理システムの測定データ、および、前記情報処理システムの各装置のリソースのリソース状況を収集する収集部と、前記測定データ、および、前記リソース状況を用いて、前記情報処理システム全体の性能の予測値を計算し、前記計算した性能の予測値が所定の閾値に達しないとき、前記性能の予測値を所定の閾値以上とするための前記各装置のパラメータ値を探索する解析部と、前記性能の予測値を所定の閾値以上とするためのパラメータ値を、前記情報処理システムの各装置に設定するパラメータ設定部と、前記情報処理システムの各装置へリソースの増加および削減を指示するリソース調整部とを備え、前記解析部は、前記探索の結果、前記予測値を所定の閾値以上とするためのパラメータ値を発見できなかったとき、前記リソースの増加を前記リソース調整部に依頼し、前記計算した性能の予測値が所定の閾値以上であるとき、前記性能の予測値が前記所定の閾値以上となる範囲で各リソースの値を変更して、前記予測値に影響を与えるリソースを探索し、前記探索されたリソースの削減を、前記リソース調整部に依頼することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、情報処理システムにおける無駄なリソースを削減し、効率的なリソース運用を行うことができる。
【図面の簡単な説明】
【０００８】
【図１】図１は、システムの構成例を示す図である。
【図２】図２は、プロビジョニング装置の処理の流れの概要を示す図である。
【図３】図３は、プロビジョニング装置の機能ブロック図である。
【図４】図４は、図３の予測部の処理手順の一例を示す図である。
【図５】図５は、図３のトレードオフ調整部の処理手順の一例を示す図である。
【図６】図６は、プロビジョニングプログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【０００９】
［全体構成］
以下、本発明を実施するための形態（実施形態）について説明する。まず、図１を用いて、本実施形態のシステムの構成例を説明する。図１は、システムの構成例を示す図である。システムは、情報処理システムと、プロビジョニング装置１０とを備える。
【００１０】
この情報処理システムは、例えば、テキストデータから様々な機械学習等の情報処理を行う分散処理システムである。この情報処理システムは、情報処理の要求を送信するクライアント（クライアント装置）群と、クライアントからの情報処理の要求を、処理サーバ群の処理サーバへ割り振るプロキシ（プロキシサーバ）群と、情報処理を行う処理サーバ群とを備える。例えば、クライアントから送信された情報処理の要求は、いずれかのプロキシで受け付けられ、いずれかの処理サーバへ送信される。そして、プロキシは、処理サーバによる情報処理の結果を受信すると、この情報処理の結果を、情報処理の要求元のクライアントへ返す。
【００１１】
このクライアント、プロキシ、処理サーバはそれぞれ、モニタリング・設定変更モジュール（モニタリング・設定変更部２０）を備える。このモニタリング・設定変更部２０は、クライアント、プロキシ、処理サーバに設置されるプログラムモジュールまたはハードウエアであり、クライアント、プロキシ、処理サーバの入力データ量等を含む測定データ（詳細は後記）等を取得し、プロビジョニング装置１０へ送信する。また、プロビジョニング装置１０からの指示に基づきプロキシ、処理サーバへ各種設定を行う。
【００１２】
プロビジョニング装置１０は、収集部１３１、解析部１３２、設定部１３３（詳細は後記）を備え、モニタリング・設定変更部２０から取得したクライアント、プロキシ、処理サーバに関する測定データ等の情報を解析する。そして、プロビジョニング装置１０は、この解析結果から、情報処理システムの性能を所定の閾値以上とするような（つまり、目標値を達成するような）、情報処理システムの設定値等を決定し、モニタリング・設定変更部２０へ指示する。
【００１３】
また、プロビジョニング装置１０において、解析の結果、情報処理システムの性能の目標値を達成するためには、情報処理システムのリソースの増加が必要と判断した場合、モニタリング・設定変更部２０へ情報処理システムのリソース（例えば、プロキシ、処理サーバ等のＣＰＵ、メモリの使用率等）の増加を指示する。また、情報処理システムの性能が目標値を達成しており、近い将来利用されない可能性の高いリソース（余剰リソース）がある場合、余剰リソースの削減を指示する。
【００１４】
[処理の流れの概要]
ここで、図２を用いて、プロビジョニング装置１０の処理の流れの概要を説明する。図２は、プロビジョニング装置の処理の流れの概要を示す図である。プロビジョニング装置１０の収集部１３１は、モニタリング・設定変更部２０から、情報処理システムのクライアント、プロキシ、処理サーバに関する測定データ等の情報を取得し、解析部１３２へ出力する。
【００１５】
解析部１３２の予測部１３２ａは、出力された情報処理システムの測定データ等の情報に基づき、複数の回帰モデル（例えば、リアルタイム回帰モデル）を用いて、情報処理システムの各装置における測定データ、リソース状況、設定値の予測値等を求め、トレードオフ調整部１３２ｂへ出力する。トレードオフ調整部１３２ｂは、出力された予測値等で情報処理システム全体として性能が目標値を達成できるか否かを判断し、目標値を達成できないと判断したとき、予測部１３２ａへ情報処理システムのリソース状況や設定値の予測値の調整を依頼する（パラメータ・リソース再調整）。
【００１６】
そして、トレードオフ調整部１３２ｂは、予測部１３２ａから調整の結果を受け取り、調整により、情報処理システムの性能が目標値を達成できているか確認する。このような処理を繰り返し、情報処理システムの性能が目標値を達成するような設定等を決定すると、トレードオフ調整部１３２ｂは、決定した設定値を設定部１３３のパラメータ設定部１３３ａへ出力する。これを受けたパラメータ設定部１３３ａは、モニタリング・設定変更部２０に対し、情報処理システムの設定値等の変更を指示する（パラメータ・設定変更）。
【００１７】
一方、トレードオフ調整部１３２ｂが、パラメータ・リソース再調整を所定回数行ったが、情報処理システムの性能が目標値を達成できなかったとき、リソース調整部１３３ｂに対し、情報処理システムにおけるリソースの増加依頼を出力する。つまり、トレードオフ調整部１３２ｂは、情報処理システムの設定値の調整等では、性能の目標値を達成できないと判断した場合、リソースを増加させると判断する。そして、リソースの増加依頼を受けたリソース調整部１３３ｂは、モニタリング・設定変更部２０に対し、処理サーバのＣＰＵやメモリの使用率を増加させたり、今まで電源オフだった処理サーバの電源オンをしたりして、情報処理システムのリソースの増加を指示する。
【００１８】
また、トレードオフ調整部１３２ｂは、情報処理システムの目標値を達成できている場合において、予測部１３２ａに依頼してリソースを変化させ、リソースの削減を行ったとしても、目標値を達成できると判断したときは、リソース調整部１３３ｂに対し、情報処理システムのリソースの削減を指示する。
【００１９】
このようにしてリソース調整部１３３ｂは、トレードオフ調整部１３２ｂからのリソースの増加または削減の指示を受信すると、これに基づきモニタリング・設定変更部２０へリソースの増加または削減を指示する（リソース増減）。
【００２０】
このようにプロビジョニング装置１０は、情報処理システムの設定値の変更等により情報処理システムの性能が目標値を達成できる場合、設定値の変更等を指示する。一方、設定値の変更等をしても目標値を達成できない場合、プロビジョニング装置１０はリソースの増加を指示する。また、プロビジョニング装置１０は、現状の情報処理システムが性能の目標値を達成しており、リソースを削減しても、その目標値を達成できると判断したときには、リソースの削減を行う。このようにすることで情報処理システムにおける無駄なリソースを削減し、効率的なリソース運用を行うことができる。
【００２１】
（モニタリング・設定変更部）
次に、システムの各構成を説明する。まず、情報処理システムのモニタリング・設定変更部２０を説明する。モニタリング・設定変更部２０は、当該モニタリング・設定変更部２０が設置される装置の入力データ量（データ流入量）を含む測定データ、リソース状況、設定値等を取得し、プロビジョニング装置１０へ送信する。また、モニタリング・設定変更部２０は、プロビジョニング装置１０からの指示に基づき、当該モニタリング・設定変更部２０が設置される装置の設定値を変更する。さらに、モニタリング・設定変更部２０は、プロビジョニング装置１０からの指示に基づき、当該モニタリング・設定変更部２０が設置される装置におけるＣＰＵ使用率、メモリ使用率の増減や、待機用リソース（処理サーバ等）の電源オン、電源オフ、待機等の状態切り替えを行う。
【００２２】
モニタリング・設定変更部２０がプロビジョニング装置１０へ送信するデータは、例えば、モニタリング・設定変更部２０の識別情報（モニタリングモジュールＩＤ）、当該モニタリング・設定変更部２０が設置される装置の種別（クライアント、プロキシ、処理サーバ等）、測定データのリスト、リソース状況のリスト、設定値（パラメータ）のリスト等を含む。
【００２３】
（測定データのリスト）
測定データは、情報処理システムの各装置に、データやクエリがどの程度入力されているか示したデータであり、この測定データのリストには、例えば、情報処理システムのクライアント、プロキシ、処理サーバに関する以下の情報が示される。
（Ｍ１）データ流入量(bps（bit  per  second）)
（Ｍ２）処理データ量(bps)
（Ｍ３）秒間クエリ数(QPS（Queries  Per  Second）)
（Ｍ４）秒間処理クエリ数(QPS）
【００２４】
(リソース状況のリスト)
また、リソース状況は、情報処理システムの各装置において、当該情報処理システムの処理にリソースがどの程度割り当てられているかを示したデータであり、このリソース状況のリストには、例えば、情報処理システムのプロキシ、処理サーバに関する以下の情報が示される。
（Ｒ１）ＣＰＵ使用率
（Ｒ２）メモリ使用率
（Ｒ３）メモリ総量
（Ｒ４）ネットワーク使用率
（Ｒ５）ネットワーク量
（Ｒ６）ディスクwrite数
（Ｒ７）ディスクread数
【００２５】
（パラメータのリスト）
さらに、パラメータは、情報処理システムの各装置において、当該情報処理システムの処理にどのようなパラメータ値を設定したかを示したデータであり、このパラメータのリストには、例えば、情報処理システムのプロキシ、処理サーバに関する以下の情報が示される。
（Ｐ１）複数の処理サーバ間で、各種情報やモデルを共有するタイミング（共有間隔）
（Ｐ２）処理サーバ間で情報の送受信を行う際のタイムアウト時間
（Ｐ３）処理サーバが情報処理に用いる関数
（Ｐ４）１台の処理サーバが受ける秒間クエリ数(QPS）
【００２６】
また、モニタリング・設定変更部２０は、プロビジョニング装置１０のパラメータ設定部１３３ａから、設定値を受信する。例えば、モニタリング・設定変更部２０は、当該設定値の設定先の装置の種別（クライアント、プロキシ、処理サーバ等）、設定値の中身（例えば、複数の処理サーバ間で、各種情報やモデルを共有するタイミング、処理サーバ間で情報の送受信を行う際のタイムアウト時間、処理サーバが情報処理に用いる関数、１台の処理サーバが受ける秒間クエリ数(QPS））等を受信する。なお、パラメータ設定部１３３ａからの設定値は、例えば、各モニタリング・設定変更部２０へのマルチキャストで送信される。モニタリング・設定変更部２０は、この受信した設定値に基づき、当該モニタリング・設定変更部２０が設置される装置の設定値の変更等を行う。
【００２７】
また、モニタリング・設定変更部２０は、プロビジョニング装置１０のリソース調整部１３３ｂから、例えば、モニタリングモジュールＩＤ、各装置のＣＰＵ使用率、メモリ使用率、電源状態（電源オン、電源オフ、待機等）の指定等を含むリソース情報を受信する。なお、ここでのＣＰＵ使用率、メモリ使用率は、このモニタリング・設定変更部２０の設置される装置（処理サーバ等）において、当該情報処理システムの情報処理の実行のために割り当てるＣＰＵやメモリの割当率を示す。
【００２８】
また、パラメータ設定部１３３ａからのリソース情報は、例えば、ユニキャストで送信される。モニタリング・設定変更部２０は、この受信したリソース情報に基づき、自身のモニタリング・設定変更部２０が設置される装置に対し、当該情報処理システムの情報処理の実行に割り当てるＣＰＵ使用率、メモリ使用率の変更、電源状態（電源オン、電源オフ、待機等）への切り替えを行う。
【００２９】
なお、このモニタリング・設定変更部２０は、リソースの種類ごと、設定値の種類ごとに用意してもよいし、１つのモニタリング・設定変更部２０で複数の種類のリソース、複数の種類の設定値を管理するようにしてもよい。
【００３０】
次に、図３を用いて、プロビジョニング装置１０の構成を説明する。図３は、プロビジョニング装置の機能ブロック図である。
【００３１】
図３に示すように、プロビジョニング装置１０は、通信制御部１１、記憶部１２、制御部１３を備える。通信制御部１１は、制御部１３から出力された情報をインターネット等のネットワーク経由で、情報処理システムのモニタリング・設定変更部２０へ送信したり、モニタリング・設定変更部２０から送信された情報を制御部１３へ出力したりする通信インタフェースである。
【００３２】
記憶部１２は、モニタリング・設定変更部２０の識別情報（例えば、ＩＰアドレス等）や、当該モニタリング・設定変更部２０により取得された情報を記憶するＤＢ（データベース）１２１を備える。
【００３３】
制御部１３は、プロビジョニング装置１０全体の制御を司り、ここでは主にモニタリング・設定変更部２０から取得した情報を解析し、情報処理システムの各装置の設定値の変更や、リソースの増減を行う。この制御部１３は、収集部１３１と、解析部１３２と、設定部１３３とを備える。
【００３４】
（収集部）
収集部１３１は、モニタリング・設定変更部２０から送信された情報を、解析部１３２へ出力する。例えば、収集部１３１は、複数のモニタリング・設定変更部２０から送信された情報を、（種別（クライアント、プロキシ、サーバ等），（［測定データのリスト１］，［リソース状況のリスト１］，［パラメータのリスト１］），（［測定データのリスト２］，［リソース状況のリスト２］，［パラメータのリスト２］），…）のようなデータ形式に整形し、解析部１３２へ出力する。
【００３５】
（解析部）
解析部１３２は、収集部１３１から出力された情報処理システムの各装置の測定データ、リソース状況、パラメータのリストの情報を解析する。具体的には、解析部１３２は、回帰予測により、情報処理システムの測定データ、リソースおよびパラメータの予測値と、情報処理システム全体として性能の予測値とを求める。
【００３６】
ここで解析部１３２が、各予測値を求める際、どの程度の未来の予測値を求めるか、また、情報処理システムの性能の予測値がどの程度変動してよいかの閾値はユーザが設定する。ちなみに、この情報処理システムの性能の予測値は、情報処理システムにおけるリソース状況等とトレードオフの関係になる。
【００３７】
例えば、情報処理システムがテキストデータから機械学習を行うシステムである場合を考える。この場合、情報処理システムの性能は、機械学習の結果を用いて行われる予測の精度に相当する。このような情報処理システムの処理サーバ間で、モデルの共有頻度を少なくすると、情報処理システムのリソースはあまり多く使わないで済むが、機械学習の結果を用いて行われる予測の精度が落ちる。一方、情報処理システムの処理サーバ間で、モデルの共有頻度を多くすると、情報処理システムのリソースを多く使うことになるが、機械学習の結果を用いて行われる予測の精度は高くなる。
【００３８】
この解析部１３２は、予測部１３２ａとトレードオフ調整部１３２ｂとを備える。
【００３９】
（予測部）
予測部１３２ａは、収集部１３１から出力される情報（例えば、前記した測定データのリスト、リソース状況のリスト、パラメータのリスト等）における変数ごとに、この変数に対応する回帰モデルを持ち、当該回帰モデルに基づき回帰予測を行う。以下の表１に、予測部１３２ａの持つ回帰モデルを例示する。
【００４０】
【表１】
2015011365.tif 000003
【００４１】
例えば、表１の回帰モデル１は、入力ＱＰＳの予測値を計算するための回帰モデルである。すなわち、回帰モデル１に対し、入力ＱＰＳ、ＣＰＵ使用率、メモリ使用率、ネットワーク使用率、モデル共有間隔、処理サーバのタイムアウト、精度（性能）等が示される情報が入力されると、この情報に基づき入力ＱＰＳの予測値が計算される。また、回帰モデル２は、ＣＰＵ使用率の予測値を計算するための回帰モデルである。すなわち、回帰モデル２に対し、入力ＱＰＳ、ＣＰＵ使用率、メモリ使用率、ネットワーク使用率、モデル共有間隔、処理サーバのタイムアウト、精度（性能）等を含む入力データが入力されると、ＣＰＵ使用率の予測値を計算する。
【００４２】
ここで、予測部１３２ａがどの変数に関する回帰予測を行うかについては、例えば、ラウンドロビン、コンシンステントハッシュ等のアルゴリズムを利用して選択する。ここでの予測部１３２ａが、どの変数に関する回帰予測を行うかの選択の詳細は、図４を用いて後記する。
【００４３】
そして、予測部１３２ａは、選択した変数に関する回帰モデルに基づき、回帰予測を行う。例えば、予測部１３２ａは、入力された情報における各変数の値の正規化を行った上で、以下の式（１）に基づき、情報処理システムの性能の予測値の計算を行う。
【００４４】
情報処理システムの性能の予測値＝ａ［測定データのリスト１］＋ｂ［リソース状況のリスト１］＋ｃ［パラメータのリスト１］…式（１）
【００４５】
なお、式（１）におけるａ，ｂ，ｃは、例えば、PA(Passive  Aggressive)、PA-II等の回帰アルゴリズムを用いて学習した重み値である。ここでは、それぞれのリストに重み値をつけたが、各リスト中の１つ１つの変数についてａ１，ａ２，…，のように重み値をつけた状態で予測を行ってももちろんよい。予測部１３２ａは、計算した予測値をトレードオフ調整部１３２ｂへ出力する。
【００４６】
また、予測部１３２ａは、トレードオフ調整部１３２ｂからのパラメータ・リソース再調整依頼を受けたとき、このトレードオフ調整部１３２ｂからの指示に基づき変数の値を変えながら複数回、情報処理システムの性能の予測値の計算を行う。すなわち、予測部１３２ａは、設定値の値を変化させて、情報処理システムの性能の予測値が目標値を達成するために必要な他の変数の値を予測する。例えば、予測部１３２ａは、情報処理システムへの入力データ量をすべて、あるいは、所定値以上処理しつつ、この情報処理システムの性能の予測値を所定の閾値以上とするための変数の値を探索する。ここで、予測部１３２ａは、情報処理システムの性能の予測値を最も高くする変数の値を探索してもよい。
【００４７】
なお、予測部１３２ａにおける変数の値の予測にあたり、ユーザが事前に設定した計算の試行回数を超えた場合には、設定値の変更のみでは目標値の達成が不可能と判断し、リソースの追加を行うようトレードオフ調整部１３２ｂへ指示する。
【００４８】
（トレードオフ調整部）
トレードオフ調整部１３２ｂは、予測部１３２ａで計算されたリソースや設定値の予測値より、情報処理システムの性能の予測値が目標値を達成できるか否かを判断する。そして、トレードオフ調整部１３２ｂは、予測部１３２ａで計算されたリソースや設定値の予測値で、情報処理システムの予測値が目標値を達成できると判断したときは、予測部１３２ａで計算された設定値の値（設定値の予測値）をパラメータ設定部１３３ａへ出力する。また、トレードオフ調整部１３２ｂは、予測部１３２ａで計算されたリソースの予測値をリソース調整部１３３ｂへ出力する。これにより、情報処理システムの性能が目標値を達成するような、設定値の変更や、リソースの増減等が実行される。なお、トレードオフ調整部１３２ｂは、予測部１３２ａから、リソースの増加の指示を受けた場合、リソース調整部１３３ｂへリソースの増加指示を出力する。
【００４９】
一方、トレードオフ調整部１３２ｂは、予測部１３２ａで計算されたリソースや設定値の予測値では、情報処理システムの性能の予測値が目標値を達成できないと判断したときは、予測部１３２ａに対し、パラメータ・リソースの再調整を依頼する。また、トレードオフ調整部１３２ｂは、現在の情報処理システムのリソースや設定値の予測値で、性能の予測値が目標値を達成できている場合において、削減可能なリソース（余剰リソース）があるとき、リソース調整部１３３ｂにリソースの削減を指示する。
【００５０】
このトレードオフ調整部１３２ｂの処理の詳細は、図４のフローチャートを用いて後記する。
【００５１】
（設定部）
設定部１３３は、トレードオフ調整部１３２ｂから出力された設定値やリソース増減の指示に基づき、各モニタリング・設定変更部２０へ通知する設定値や、リソースの増減値を決定する。そして、設定部１３３は、この決定した値を各モニタリング・設定変更部２０へ送信する。この設定部１３３は、パラメータ設定部１３３ａと、リソース調整部１３３ｂとを備える。
【００５２】
パラメータ設定部１３３ａは、トレードオフ調整部１３２ｂから出力されたパラメータの値に基づき、各モニタリング・設定変更部２０へ送信するパラメータの設定値を決定する。そして、パラメータ設定部１３３ａは、決定した設定値を、各モニタリング・設定変更部２０へ送信する。
【００５３】
リソース調整部１３３ｂは、トレードオフ調整部１３２ｂから出力されたリソース増減の指示に基づき、ＤＢ１２１の情報を参照して、情報処理システムのどの装置のどのリソースをどの程度増減させるか（リソース増減の設定値）を決定する。そして、リソース調整部１３３ｂは、リソース増減の対象となる装置に設置されるモニタリング・設定変更部２０に対し、リソースの増減値を示した設定値を送信する。なお、パラメータ設定部１３３ａおよびリソース調整部１３３ｂからの設定値の送信先となるモニタリング・設定変更部２０の識別情報は、ＤＢ１２１に記憶される情報を参照して特定する。
【００５４】
（予測部の処理手順）
次に、図４を用いて、予測部１３２ａの処理手順を説明する。図４は、図３の予測部の処理手順の一例を示す図である。ここでは、予測部１３２ａに入力される情報における変数の数（種類）がＮ個である場合を例に説明する。つまり、予測部１３２ａが保持する回帰モデルの数もＮ個とする。ここでは、予測部１３２ａが、入力された情報のどの変数の予測値を計算するかを、ラウンドロビンにより決定する場合を例に説明する。
【００５５】
まず、予測部１３２ａが収集部１３１からの情報の入力を受け付けると（Ｓ１）、この入力された情報に順に入力番号（入力Ｎｏ.）を振り、この入力番号に対してラウンドロビンにより０〜Ｎの値（整数）を割り当てる。そして、予測部１３２ａは、入力番号に対して割り当てた値が０〜Ｎのいずれであったかを判断する（Ｓ２）。具体的には、予測部１３２ａは、入力番号を（Ｎ＋１）で割った値の余りの値を判断する。
【００５６】
例えば、割り当てた値が、１であった場合（Ｓ２で「１」）、予測部１３２ａは、回帰モデル１（パラメータ１の予測値を計算するための回帰モデル）を選択し（Ｓ３１）、入力された情報に対し回帰モデル１を用いてパラメータ１の予測値を計算する（Ｓ４１）。その後、Ｓ５１へ進む。
【００５７】
また、割り当てた値が、２であった場合（Ｓ２で「２」）、予測部１３２ａは、回帰モデル２（パラメータ２の予測値を計算するための回帰モデル）を選択し（Ｓ３２）、入力された情報に対し回帰モデル２を用いてパラメータ２の予測値を計算する（Ｓ４２）。その後、Ｓ５１へ進む。
【００５８】
さらに、割り当てた値が、Ｎであった場合（Ｓ２で「Ｎ」）、予測部１３２ａは、回帰モデルＮ（リソースＮの予測値を計算するための回帰モデル）を選択し（Ｓ３３）、入力された情報に対し回帰モデルＮを用いてリソースＮの予測値を計算する（Ｓ４３）。その後、Ｓ５１へ進む。
【００５９】
また、割り当てた値が、０であった場合（Ｓ２で「０」）において、入力された変数の個数のカウントを行い、このカウント値をＭで割った値が０であったとき（Ｓ３４：Ｃｏｕｎｔ％Ｍで「０」）、入力された情報の各変数を実測値とし（Ｓ４４）、Ｓ５１へ進む。
【００６０】
一方、Ｓ３４において、入力された情報の数のカウントを行い、このカウント値をＭで割った値が０以外であったとき（Ｓ３４：Ｃｏｕｎｔ％Ｍで「その他」）、カウント値をインクリメントして（Ｓ４６：Ｃｏｕｎｔ＋＋）、入力された情報における各変数の値の変更なし（Ｓ４７）で、Ｓ５１へ進む。つまり、予測部１３２ａは、Ｓ２においてラウンドロビンで０が割り当てられた情報の各変数についてＭ回に１回の頻度で実測値を反映させる。これにより、予測部１３２ａが複数回、回帰モデルを用いて予測値を計算する場合（例えば、トレードオフ調整部１３２ｂからの再調整により再度予測値を計算する場合等）に、予測値の計算精度を向上させることができる。なお、このＭの値は整数であり、プロビジョニング装置１０のユーザにより適宜設定される値である。
【００６１】
Ｓ５１において、予測部１３２ａは、Ｓ４１〜Ｓ４４、Ｓ４７で得られた値をトレードオフ調整部１３２ｂへ出力する。
【００６２】
このようにすることで、予測部１３２ａは各変数の予測値を、回帰モデルを用いて計算することができる。
【００６３】
（トレードオフ調整部の処理手順）
次に、図５を用いて、トレードオフ調整部１３２ｂの処理手順を説明する。図５は、図３のトレードオフ調整部の処理手順の一例を示す図である。
【００６４】
まず、トレードオフ調整部１３２ｂは、予測部１３２ａの回帰モデルからの情報の入力を受け付けると（Ｓ６１）、この情報に基づき、情報処理システムの性能の予測値が所定の閾値未満か否かを判断する（Ｓ６２）。ここで性能の予測値が所定の閾値未満であった場合（Ｓ６２で閾値未満）、トレードオフ調整部１３２ｂは、予測部１３２ａを用いて情報処理システムの性能の予測値を所定の閾値以上とするためのパラメータ（設定値）の選定が可能か否かを判断する（Ｓ６３）。
【００６５】
すなわち、Ｓ６３において、トレードオフ調整部１３２ｂは、予測部１３２ａに、パラメータの再調整を依頼し、パラメータの値を１つずつ実験的に変更してみて、情報処理システムの性能の予測値に影響を与えるものを選定する。どのパラメータから調整を行うか等については、例えば、ランダムに行う、予め順序を決めておく、今までの変化を保存しておきそれを利用する等の方法が利用可能である。トレードオフ調整部１３２ｂは、調整対象とするパラメータを決定後、予測部１３２ａの回帰モデルを利用して、それぞれのパラメータを変化させ、情報処理システムへの入力データ量をすべて処理できるパラメータの値の範囲を見つける。トレードオフ調整部１３２ｂは、その上で、情報処理システムの性能の予測値に最も影響を与えるパラメータを選定し、そのパラメータを変化させながら、情報処理システムの性能の予測値が閾値以上になるか否かを確認する。
【００６６】
この「情報処理システムの性能の予測値に最も影響を与えるパラメータ」とは、情報処理システムが「入力データ量をすべて処理可能」な要件を満たす上で、例えば、上記試行でパラメータを変更させた際の、現在の値と変更シミュレーションを行った値との差である性能の予測値の変化を記録しておき、性能の特性に応じて状態が最善となるよう、よい方への性能の予測値の変化が最大となる値を導くパラメータを意味する。よい方への予測値の変化について、予測値の値が増加した場合がよいか、もしくは減少した場合がよいかは性能の特性により異なり、例えば、情報処理システムの性能が、「精度」の高さである場合については増加したほうがよい方への変化となる。
【００６７】
図５の説明に戻る。Ｓ６３において、トレードオフ調整部１３２ｂが、パラメータの変更により、情報処理システムの性能の予測値が所定の閾値以上になると判断したとき、つまり、情報処理システムの性能の予測値が所定の閾値以上になるようなパラメータの選定が可能と判断したとき（Ｓ６３でＹｅｓ）、リソース調整部１３３ｂへ、情報処理システムの性能の予測値が所定の閾値以上になるようなパラメータの値を出力し、パラメータ設定を依頼する（Ｓ６４）。
【００６８】
一方、Ｓ６３において、情報処理システムの性能の予測値が所定の閾値以上になるようなパラメータの選定ができないと判断したとき（Ｓ６３でＮｏ）、リソース増加シミュレーションを実行する（Ｓ６５）。
【００６９】
このリソース増加シミュレーションは、以下のようにして実行される。すなわち、トレードオフ調整部１３２ｂは、予測部１３２ａに依頼して、それぞれのリソースの値を変化させて、情報処理システムの目標値に影響を与えるリソースを選定する。手順についてはＳ６３のパラメータの選定で説明した手順とほぼ同様であるので説明を省略する。そして、トレードオフ調整部１３２ｂは、情報処理システムの性能の予測値を最も向上させることのできるリソースを選択し、選択したリソースの値を増加させる。
【００７０】
Ｓ６５の後、トレードオフ調整部１３２ｂは、予測部１３２ａに依頼して、現状のリソース（リソース削減またはリソース増加済みの状態）で、パラメータを変更した際に情報処理システムの性能の予測値が高くなるかを計算する。そして、トレードオフ調整部１３２ｂは、予測部１３２ａによる計算結果を基に情報処理システムの性能の予測値を最大化できるようなパラメータを選定し、この選択したパラメータの値を再計算する（Ｓ６６）。
【００７１】
Ｓ６６の後、トレードオフ調整部１３２ｂは、Ｓ６６で再計算したパラメータの値に基づき、リソース追加・パラメータ設定を行う（Ｓ６７）。つまり、トレードオフ調整部１３２ｂは、リソース追加については設定部１３３のリソース調整部１３３ｂへ、パラメータ設定については設定部１３３のパラメータ設定部１３３ａへＳ６６で計算した値を出力する。
【００７２】
なお、Ｓ６３において、トレードオフ調整部１３２ｂは、予測部１３２ａを用いて情報処理システムの目標値を所定の閾値以上にするようなパラメータ（変数）の選定が不可能と判断したとき（Ｓ６３でＮｏ）、Ｓ６５へ進む。
【００７３】
一方、Ｓ６２において性能の予測値が閾値以上であり（Ｓ６２で閾値以上）、トレードオフ調整部１３２ｂは、予測部１３２ａで計算された情報処理システムの性能の予測値が、前回の計算した値とほぼ同じ値を継続している、または、情報処理システムへの入力データ量が減少していると判断したとき（Ｓ６８でＹｅｓ）、Ｓ６９へ進む。つまり、トレードオフ調整部１３２ｂは、情報処理システムの性能の予測値の変動が、過去所定期間内において、所定範囲内であるとき、または、情報処理システムへの入力データ量が減少傾向にあると判断したとき、Ｓ６９へ進む。一方、トレードオフ調整部１３２ｂは、予測部１３２ａで計算された情報処理システムの目標値が、前回の計算した値とほぼ同じ値を継続しておらず、また、情報処理システムへの入力データ量も減少していない判断したとき（Ｓ６８でＮｏ）、処理を終了する。
【００７４】
Ｓ６８でＹｅｓだったとき、トレードオフ調整部１３２ｂは、リソース削減シミュレーションを行い、リソース削減が可能か否かを判断する（Ｓ６９）。このリソース削減シミュレーションは、トレードオフ調整部１３２ｂが、予測部１３２ａに依頼して、それぞれのリソースの値を変化させて、情報処理システムの性能の予測値に影響を与えるリソースを見つける。手順についてはＳ６３のパラメータの選定とほぼ同様であるので説明を省略する。そして、トレードオフ調整部１３２ｂは、情報処理システムの性能の予測値に影響を与えるリソースを選択し、その選択したリソースの値を変更しても性能の予測値を所定の閾値以上のままとすることが可能であれば、その選択したリソースの値を削減（減少）可能と判断し（Ｓ６９でＹｅｓ）、Ｓ７０へ進む。Ｓ７０は、Ｓ６６の処理と同様なので説明を省略する。
【００７５】
なお、トレードオフ調整部１３２ｂは、情報処理システムへの入力データをすべてさばききれる上で、目標値に最も影響を及ぼさないリソースを予め学習しておき、そのリソースから削減するようにしてもよい。
【００７６】
一方、Ｓ６９のリソース削減シミュレーションの結果、情報処理システムの性能の予測値に影響を与えないリソースが見つからなかった場合、つまり、どのリソースの値を削減しても目標値が低下するおそれがある場合、リソース削減は不可能と判断し（Ｓ６９でＮｏ）、処理を終了する。
【００７７】
Ｓ７０の後、トレードオフ調整部１３２ｂは、Ｓ７０で再計算したパラメータの値に基づき、リソース削減・パラメータ設定を行う（Ｓ７１）。つまり、トレードオフ調整部１３２ｂは、リソース削減については設定部１３３のリソース調整部１３３ｂへ、パラメータ設定については設定部１３３のパラメータ設定部１３３ａへＳ７０で計算した値を出力する。そして、処理を終了する。
【００７８】
このようにトレードオフ調整部１３２ｂは、情報処理システムの性能の予測値が所定の閾値に達していなかった場合、情報処理システムで用いるリソースを増加させる前に、パラメータを調整することで情報処理システムの性能の改善を行う。
【００７９】
例えば、情報処理システムの目標値として機械学習の精度を採用して設定した場合、一般的に機械学習を行う処理サーバが分散すればするほど、処理モデルの共有に時間と再計算が必要になる。このため、この機械学習の精度(性能)を向上させるためには、情報処理システムの各処理サーバは多くのリソースを利用する必要がある。そのため、情報処理システムの各処理サーバのリソースに余裕がない場合、プロビジョニング装置１０は、リソース状況に余裕をもたせるようなパラメータ調整を実施することが有効である。
【００８０】
ユーザは予め目標値の達成状況を判断するための所定閾値を設定しておき、プロビジョニング装置１０は、パラメータを調整しても、情報処理システムの性能の予測値が、目標値に達成できない場合、リソースを増加させることで目標値を達成できるようにする。
【００８１】
もし、情報処理システムの性能の予測値の変動が、過去所定期間内、所定範囲内であるとき、もしくは、一時的な入力データのバースト（秒間クエリ数が増大していたものが、平常に戻る等）が去り、入力データ量が減少傾向にあるとき等、リソースが余剰していると考えられる場合は、情報処理システムにおけるリソースを削減できる可能性がある。その際には、プロビジョニング装置１０は、現状の情報処理システムのリソース状況を確認し、どこまでリソースを削減できるかを予測し、リソースの削減を行う。ここで、パラメータについては、情報処理システムの性能の予測値を最大化するように再計算される。なお、性能の予測値の継続に対する指標や、余剰リソースの確認タイミングについてはあらかじめ設定が可能である。また、性能の予測値に関する閾値に対し、どの程度までリソースを残存させるか等のポリシも予め設定が可能である。
【００８２】
さらに、プロビジョニング装置１０は、入力データ量の予測値を計算するので、情報処理システムへのデータ流入のバーストが発生しそうなときは、これを事前に予測し、情報処理システムのパラメータ調整や、リソースの増加等の対策を取ることができる。よって、情報処理システムは、バッファをもつ必要がないため、データ欠損の防止、データ処理の遅延防止等の効果を期待できる。
【００８３】
なお、前記した実施形態において、プロビジョニング装置１０の解析部１３２は、測定データのリスト、リソース状況のリスト、パラメータのリスト等を用いて計算した情報処理システムの性能の予測値が所定の閾値に達しないとき、この予測値を所定の閾値以上とするためのパラメータ値を探索するようにしたが、これに限定されない。例えば、解析部１３２は、情報処理システムの予測値が、所定の閾値に最も近づくようなパラメータ値を探索する。そして、解析部１３２は、この探索したパラメータ値をパラメータ設定部１３３ａへ出力する。なお、ここで解析部１３２が探索するパラメータ値は、前記した所定の閾値以上の値であってもよいし、所定の閾値以下の値であってもよい。このようにすることで、プロビジョニング装置１０は、情報処理システムの性能を所定の閾値（目標値）に最も近づけるような、各装置のパラメータ値を得ることができる。
【００８４】
（本実施形態の適用例）
なお、情報処理システムが、現在設定しているリソース、パラメータで、入力データをさばくことができなくなった場合の、プロビジョニング装置１０におけるパラメータ調整の例を以下に示す。なお、ここでは情報処理システムの性能として、情報処理システムにより得られた機械学習の結果を用いた予測の精度を用いる場合を例に説明する。
【００８５】
例えば、予測部１３２ａの持つ回帰モデルが、表２に例示する回帰モデル１（入力ＱＰＳの予測値を計算するための回帰モデル）および回帰モデル７（精度の予測値を計算するための回帰モデル）である場合を考える。この場合、トレードオフ調整部１３２ｂは、予測部１３２ａの持つ回帰モデル１（表２参照）を利用して、モデル共有間隔および処理サーバのタイムアウトのパラメータ値を変化させながら、入力ＱＰＳの予測値がどの程度上昇するかを計算する。
【００８６】
【表２】
2015011365.tif 000004
【００８７】
そして、トレードオフ調整部１３２ｂは、回帰モデル１（モデル１）で計算した予測値を用いて、回帰モデル７により、機械学習の結果の精度の予測値を計算する。ここで計算した機械学習の結果の精度の予測値が、所定の閾値未満である場合には、トレードオフ調整部１３２ｂは、回帰モデル１に戻り、パラメータの値を変化させて再度入力ＱＰＳを変化させる。このようなプロセスを繰り返す。ここで、トレードオフ調整部１３２ｂは、機械学習の結果の精度の予測値が、所定の閾値以上となるパラメータの値を見つけた場合、そのパラメータの値を、パラメータ設定部１３３ａへ出力する。
【００８８】
一方、トレードオフ調整部１３２ｂにおいて、モデル共有間隔および処理サーバのタイムアウトのパラメータ値の調整では機械学習の結果の精度の予測値を、所定の閾値以上にできないと判断したとき、以下の表３に例示するように、回帰モデル１を用いて、リソース（ＣＰＵ使用率、メモリ使用率、ネットワーク使用率）の値を変化させながら、入力ＱＰＳの予測値がどの程度上昇するかを計算する。
【００８９】
【表３】
2015011365.tif 000005
【００９０】
そして、トレードオフ調整部１３２ｂは、回帰モデル１（モデル１）で計算した予測値を用いて、回帰モデル７により、機械学習の結果の精度の予測値を計算する。ここで計算した機械学習の結果の精度の予測値が、所定の閾値未満である場合には、トレードオフ調整部１３２ｂは、回帰モデル１に戻り、ＣＰＵ使用率、メモリ使用率、ネットワーク使用率等のリソースの値を変化させて再度入力ＱＰＳを変化させる。このようなプロセスを繰り返す。ここで、トレードオフ調整部１３２ｂは、精度の予測値が、所定の閾値以上となるリソースの値を見つけ、その値を、リソース調整部１３３ｂへ出力する。
【００９１】
（システム構成など）
図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示された構成要素と同一であることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【００９２】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともできる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００９３】
（プログラム）
また、上記実施形態に係るプロビジョニング装置１０が実行する処理をコンピュータが実行可能な言語で記述したプロビジョニングプログラムを作成することもできる。この場合、コンピュータがプロビジョニングプログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるプロビジョニングプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプロビジョニングプログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。
【００９４】
図６は、プロビジョニングプログラムを実行するコンピュータを示す図である。図６に示すように、コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有する。これらの各部は、バス１０８０によって接続される。
【００９５】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）などのブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。ディスクドライブ１１００には、例えば、磁気ディスクや光ディスクなどの着脱可能な記憶媒体が挿入される。シリアルポートインタフェース１０５０には、例えば、マウス１１１０およびキーボード１１２０が接続される。ビデオアダプタ１０６０には、例えば、ディスプレイ１１３０が接続される。ここで、図６に示すように、ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３およびプログラムデータ１０９４を記憶する。上記実施形態で説明した各テーブルは、例えばハードディスクドライブ１０９０やメモリ１０１０に記憶される。また、プロビジョニングプログラムは、例えば、コンピュータ１０００によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ１０９０に記憶される。具体的には、上記実施形態で説明した制御部１３の実行する各ステップが記述されたプログラムモジュールが、ハードディスクドライブ１０９０に記憶される。
【００９６】
また、プロビジョニングプログラムによる情報処理に用いられるデータは、プログラムデータとして、例えば、ハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、ハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して、上述した各手順を実行する。
【００９７】
なお、プロビジョニングプログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ１１００などを介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プロビジョニングプログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ＬＡＮ（Local  Area  Network）やＷＡＮ（Wide  Area  Network）などのネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【００９８】
１０    プロビジョニング装置
１１    通信制御部
１２    記憶部
１３    制御部
２０    モニタリング・設定変更部
１３１  収集部
１３２  解析部
１３２ａ  予測部
１３２ｂ  トレードオフ調整部
１３３  設定部
１３３ａ  パラメータ設定部
１３３ｂ  リソース調整部
【図１】
2015011365.tif 000006
【図２】
2015011365.tif 000007
【図３】
2015011365.tif 000008
【図４】
2015011365.tif 000009
【図５】
2015011365.tif 000010
【図６】
2015011365.tif 000011