(57)【要約】      （修正有）【課題】サーバコンピュータの負荷やインターネットのトラフィックに関する予測モデルにおいて、サーバコンピュータ個別の負荷特性の違い、時間による負荷の変化、サーバルーム内における空間的な位置によるサーバ負荷の違いをモデリングでき、より効率的な省エネルギーシステムを構築できる、予測精度が十分なサーバ負荷のモデリング方法を提供する。【解決手段】サーバルーム５００内のサーバコンピュータ１０−１〜１０−Ｘごとのサーバ負荷に対する寄与度を確率的にモデリングするために、サーバルーム５００内の複数のサーバコンピュータ１０−１〜１０−Ｘから取得したサーバ負荷量を、階層ベイズ法およびマルコフ連鎖モンテカルロ（ＭＣＭＣ）法によって確率的に推定する。【選択図】図１
2015082224.tif 000002
【特許請求の範囲】
【請求項１】
中央処理装置（ＣＰＵ）およびメモリを少なくとも含むコンピュータ装置において実施される、複数のサーバコンピュータを備えた所定の空間内におけるサーバ負荷を推定する方法において、
前記空間の温度を上昇させ得る、前記複数のサーバコンピュータの各々からの排熱量に対応するサーバ負荷データを、前記複数のサーバコンピュータから取得して、前記メモリにストアするステップと、
前記各サーバコンピュータの各々から取得した前記データまたは前記メモリにストアされたデータに基づいて、二項分布またはガウス分布を含むサーバ負荷の事前確率分布モデルを、前記データを取得した前記複数のサーバコンピュータに各々に対して設定するステップと、
得られるデータを確率で表現した尤度と、前もって得ている知識を確率で表現した前記事前確率分布との積からなる事後分布を設定するステップと、
階層ベイズモデルの枠組みにおいて、前記複数のサーバコンピュータの各々に対して、前記事後分布を、時系列的に１つ前の状態によってのみ次の状態が決定される連鎖モデルであるマルコフ連鎖およびモンテカルロ法による乱数を用いる、マルコフ連鎖モンテカルロ（ＭＣＭＣ）法を適用する確率的演算によって、推定するステップと、
前記推定された事後分布のパラメータから、各複数のサーバコンピュータの各々のサーバ負荷を推定するステップと
を備えることを特徴とするサーバ負荷推定方法。
【請求項２】
前記複数のサーバコンピュータは、ｉ個のラックの各々の中に所定の数だけ含まれており、前記事前確率分布は、前記ラックごとに設定され、前記ラックごとのサーバ負荷のばらつきがモデル化されることを特徴とする請求項１に記載の方法。
【請求項３】
前記事前確率分布モデルは、前記ｉ番目のラックに対して、前記複数のサーバコンピュータからの前記サーバ負荷の全体平均σおよびばらつきｒｉによって定義される線形予測子ｚｉによって表され、確率分布は
【数１】
2015082224.tif 000016
で表されることを特徴とする請求項２に記載の方法。
【請求項４】
サーバ負荷データは、前記空間の構造データ、前記ラックの前記空間内における位置情報、前記ラック内にある各サーバコンピュータの位置情報を含むことを特徴とする請求項２に記載の方法。
【請求項５】
前記請求項１乃至４いずれかの方法を実施するコンピュータ読取り可能命令をその中にストアしたコンピュータ読取り可能記憶媒体。
【請求項６】
複数のサーバコンピュータを備えた所定の空間内におけるサーバ負荷を推定する装置において、
前記各サーバコンピュータの各々から取得したデータまたはメモリにストアされたデータに基づいて、二項分布またはガウス分布を含むサーバ負荷の事前確率分布モデルを前記複数のサーコンピュータに各々に対して設定する事前確率分布設定部と、
得られるデータを確率で表現した尤度と、前もって得ている知識を確率で表現した前記事前確率分布との積からなる事後分布を設定する事後分布推定部と、
前記事後分布推定部と協働して、階層ベイズモデルの枠組みにおいて、前記複数のサーバコンピュータの各々に対して、前記事後分布を、時系列的に１つ前の状態によってのみ次の状態が決定される連鎖モデルであるマルコフ連鎖およびモンテカルロ法による乱数を用いる、マルコフ連鎖モンテカルロ（ＭＣＭＣ）法を適用する確率的演算によって、推定する確率的演算部と
を備えたことを特徴とするサーバ負荷推定装置。
【請求項７】
前記複数のサーバコンピュータは、ｉ個のラックの各々の中に所定の数だけ含まれており、前記事前確率分布は、前記ラックごとに設定されて、前記ラックごとのサーバ負荷のばらつきがモデル化され、
前記事前確率分布モデルは、前記ｉ番目のラックに対して、前記複数のサーバコンピュータからの前記サーバ負荷の全体平均σおよびばらつきｒｉによって定義される線形予測子ｚｉによって表され、確率分布は
【数２】
2015082224.tif 000017
で表されることを特徴とする請求項６に記載の装置。
【請求項８】
前記サーバ負荷推定装置は、
前記事前確率分布設定部、前記事後分布推定部および前記確率的演算部の動作を実施するコンピュータ実施可能命令を実行する中央処理装置（ＣＰＵ）と、
前記各サーバコンピュータの各々から取得したデータデータをストアし、および、前記コンピュータ実施可能命令を含むコンピュータプログラムをストアするメモリと
を少なくとも含む単一のまたは分散型のコンピュータ装置で構成されことを特徴とする請求項６に記載の装置。
【発明の詳細な説明】
【背景技術】
【０００１】
本発明は、電力分野、エネルギー分野、通信分野、センシング分野において、実環境におけるモニタリングや画像センシングなどに関係する産業分野に属する。
【０００２】
インターネットの世界的な普及に伴い、ネットワークの高速大容量化が進んでいる。さらに、ＬＴＥ等の新世代のデジタル移動通信サービスの開始やスマートフォンなどのデバイスの普及は、無線ネットワークにおけるデータ通信のトラフィックの高速大容量化を必要とする。ネットワークを経由した様々なサービスが提供され、膨大なデジタル情報をビッグデータとして利用する動きも止まるところがない。このような中で、インターネットや無線ネットワークを流れる大量のデータを扱い、ＩＴサービスを支える基幹拠点として、膨大な数のサーバコンピュータを備えたデータセンタの役割がますます高まっている。
【０００３】
データセンタにおけるサーバコンピュータの能力にも、高速大容量化が求められるが、同時に、データセンタの低消費電力化が非常に重大な課題となっている。サーバコンピュータにおいては、処理動作が高速化するとともに中央処理装置（ＣＰＵ）やハードディスク（ＨＤＤ）などの発熱量が大きくなる。サーバコンピュータの信頼性および安定性を確保するためには、十分な冷却が必要となる。サーバコンピュータの数が増えれば発熱源が増え、データセンタ内の冷却を行う冷却装置における消費電力も膨大となるため、多数のサーバコンピュータをいかに効率よく冷却するかが大きな課題となっている。冷却装置の規模が大きくなれば、データセンタ内で大きなスペースを使用し、使用される電気エネルギーも膨大となる。データセンタの消費電力は通常のビルディングなどとくらべて、桁違いに大きい。電力供給設備の準備や拡張のためにも時間およびコストが掛るため、データセンタ全体の省エネルギー動作は必須のものとなっている。データセンタ全体での冷却装置の効率的な動作が、データセンタの運営コストも決定する。
【０００４】
このような中で、膨大化しているサーバコンピュータ数に応じた効率的な省電力化システムが広く求められている。サーバコンピュータの負荷は、サーバコンピュータ上で処理される命令および／またはプログラム演算に対応している。サーバ負荷量は命令量に対応し、負荷量の増大とともに、サーバコンピュータ内のＣＰＵ、ＨＤＤ、冷却ファンが高温となって、個々のサーバコンピュータから排熱が生じる。特にＣＰＵからの発熱は命令量に概ね比例し、ＣＰＵ負荷（発熱）はサーバコンピュータ全体の負荷の大きな割合を占める。データセンタにおける効率的な省ネルギーシステムを構築するための前提として、サーバコンピュータの負荷、すなわちデータセンタ内の個々のサーバコンピュータからの排熱量をいかに正確に把握するかが非常に重要となる。
【０００５】
サーバコンピュータごとのＣＰＵ負荷量は、そのサーバで利用されるサービス、アプリケーションや、そのサービスを利用するユーザのアクティビティに応じて大きく変動する。したがって、サーバ負荷を時間軸上で一定値のものとして取り扱うこと、また、データセンタ内における多数のサーバコンピュータのサーバ負荷の分布を一様なものとして取り扱うことも難しい。ＣＰＵ負荷は、時間的および空間的に一律なものとして取り扱うことが難しいために、その把握の精度の難しさから最適な制御が困難な対象の一つである。サーバの負荷分散技術やサーバ負荷量に関する予測制御技術も検討されているが、データセンタ全体においてさらなる省エネルギー化が必要となっている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】吉田裕志他、“ＴＣＰスループットの確率的拡散予測に基づく映像配信”、[online]、インターネットコンファレンス２０１１、２０１１年１０月２７日インターネット＜http://www.omori.e.u-tokyo.ac.jp/MCMC/mcmc-ism04.pdf＞
【非特許文献２】大森裕浩、“ＭＣＭＣの基礎と統計科学への応用”、[online]、２００４年２月２３日インターネット＜http://www.omori.e.u-tokyo.ac.jp/MCMC/mcmc-ism04.pdf＞
【非特許文献３】S. Giordano 他, “A prediction-based overload control algorithm for SIP servers,” 、[online]、 IEEE Trans. Network and Service Management, vol. 8., no. 1, pp. 39-51,  ２０１１年、インターネット＜http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=5699971&url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel5%2F4275028%2F5699970%2F05699971.pdf%3Farnumber%3D5699971＞
【非特許文献４】Nidhi Singh他、“Online Ensemble Learning Approach for Server Workload Prediction in Large Datacenters”、[online]、2012 11th International Conference on Machine Learning and Applications、２０１２年、インターネット＜http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=6406729&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D6406729＞
【非特許文献５】Sara Casolari他、“Short-term prediction models for server management in Internet-based contexts”、Decision Support Systems 48 (2009) 212-223 、[online]インターネット＜http://weblab.ing.unimo.it/people/sara/papers/casolari-sdarticle.pdf＞
【非特許文献６】Jeonghwan Choi他、“Power Consumption Prediction and Power-Aware Packing in Consolidated Environments”IEEE Trans. Computers, vol. 59, no.12, pp.1640 、 [online] 、2010年１２月、インターネット＜http://csl.cse.psu.edu/publications/power-tc10.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、データセンタの冷却装置の効率的な動作などによる省エネルギー化の達成に密接に関係しているサーバコンピュータからの排熱量については、これまで、ごく簡便なモデリングしか検討されていなかった。サーバの負荷量および負荷変動率は、時間とともに大幅に変動し得る。またデータセンタ内では、個々のサーバコンピュータは、複数のサーバコンピュータがラックの中に搭載され、サーバルーム内においてさらにこのラックが多数設置されている。サーバの負荷量および負荷変動率は、データセンタ内の空間的な設置場所によっても異なっている。このようなサーバ負荷の複雑な特性に起因して、簡単化のために、サーバ負荷を一定量とするモデリングまたは決定論的なモデリングがなされてきた。ガウス分布を使ったモデリングもあったが（非特許文献１）、非ガウス分布な特性、即ちより強い不確定要因がモデリングに加味されていなかったため、予測精度の向上に限界があった。
【０００８】
従来、サーバコンピュータの負荷やインターネットのトラフィックに関する予測モデルについては数多くのモデルが報告されている（非特許文献３〜６）。しかしながら、いずれもサーバ負荷を一定のものとして取り扱うか、または、決定論的なモデリングに基づくものであった。サーバコンピュータ個別の負荷特性の違い、時間による負荷の変化、サーバルーム内における空間的な位置によるサーバ負荷の違いがモデリングされていなかった。従来技術における簡単化したサーバ負荷のモデリングは、より効率的な省エネルギーシステムを構築する場合の予測精度の点で、十分なものではなかった。
【０００９】
本発明はこのような課題に鑑みてなされたものであって、その目的とするところは、データセンタ等におけるサーバコンピュータの負荷量や負荷変動率の推定精度を高めたモデリングを提案し、サーバ負荷推定方法およびサーバ負荷推定装置を提供することにある。
【課題を解決するための手段】
【００１０】
本発明はこのような課題に鑑みてなされたものであって、請求項１に記載の発明は、中央処理装置（ＣＰＵ）およびメモリを少なくとも含むコンピュータ装置において実施される、複数のサーバコンピュータを備えた所定の空間内におけるサーバ負荷を推定する方法において、前記空間の温度を上昇させ得る、前記複数のサーバコンピュータの各々からの排熱量に対応するサーバ負荷データを、前記複数のサーバコンピュータから取得して、前記メモリにストアするステップと、前記各サーバコンピュータの各々から取得した前記データまたは前記メモリにストアされたデータに基づいて、二項分布またはガウス分布を含むサーバ負荷の事前確率分布モデルを、前記データを取得した前記複数のサーバコンピュータに各々に対して設定するステップと、得られるデータを確率で表現した尤度と、前もって得ている知識を確率で表現した前記事前確率分布との積からなる事後分布を設定するステップと、階層ベイズモデルの枠組みにおいて、前記複数のサーバコンピュータの各々に対して、前記事後分布を、時系列的に１つ前の状態によってのみ次の状態が決定される連鎖モデルであるマルコフ連鎖およびモンテカルロ法による乱数を用いる、マルコフ連鎖モンテカルロ（ＭＣＭＣ）法を適用する確率的演算によって、推定するステップと、前記推定された事後分布のパラメータから、各複数のサーバコンピュータの各々のサーバ負荷を推定するステップとを備えることを特徴とするサーバ負荷推定方法である。
【００１１】
請求項２に記載の発明は、請求項１の方法であって、前記複数のサーバコンピュータは、ｉ個のラックの各々の中に所定の数だけ含まれており、前記事前確率分布は、前記ラックごとに設定され、前記ラックごとのサーバ負荷のばらつきがモデル化されることを特徴とする。
【００１２】
請求項３に記載の発明は、請求項２の方法であって、前記事前確率分布モデルは、前記ｉ番目のラックに対して、前記複数のサーバコンピュータからの前記サーバ負荷の全体平均σおよびばらつきｒｉによって定義される線形予測子ｚｉによって表され、確率分布は
【００１３】
【数１】
2015082224.tif 000003
【００１４】
で表されることを特徴とする。
【００１５】
請求項４に記載の発明は、請求項２の方法であって、サーバ負荷データは、前記空間の構造データ、前記ラックの前記空間内における位置情報、前記ラック内にある各サーバコンピュータの位置情報を含むことを特徴とする。
【００１６】
請求項５に記載の発明は、前記請求項１乃至４いずれかの方法を実施するコンピュータ読取り可能命令をその中にストアしたコンピュータ読取り可能記憶媒体である。
【００１７】
請求項６に記載の発明は、複数のサーバコンピュータを備えた所定の空間内におけるサーバ負荷を推定する装置において、前記各サーバコンピュータの各々から取得したデータまたはメモリにストアされたデータに基づいて、二項分布またはガウス分布を含むサーバ負荷の事前確率分布モデルを前記複数のサーコンピュータに各々に対して設定する事前確率分布設定部と、得られるデータを確率で表現した尤度と、前もって得ている知識を確率で表現した前記事前確率分布との積からなる事後分布を設定する事後分布推定部と、前記事後分布推定部と協働して、階層ベイズモデルの枠組みにおいて、前記複数のサーバコンピュータの各々に対して、前記事後分布を、時系列的に１つ前の状態によってのみ次の状態が決定される連鎖モデルであるマルコフ連鎖およびモンテカルロ法による乱数を用いる、マルコフ連鎖モンテカルロ（ＭＣＭＣ）法を適用する確率的演算によって、推定する確率的演算部とを備えたことを特徴とするサーバ負荷推定装置である。
【００１８】
請求項７に記載の発明は、請求項６サーバ負荷推定装置であって、前記複数のサーバコンピュータは、ｉ個のラックの各々の中に所定の数だけ含まれており、前記事前確率分布は、前記ラックごとに設定されて、前記ラックごとのサーバ負荷のばらつきがモデル化され、前記事前確率分布モデルは、前記ｉ番目のラックに対して、前記複数のサーバコンピュータからの前記サーバ負荷の全体平均σおよびばらつきｒｉによって定義される線形予測子ｚｉによって表され、確率分布は
【００１９】
【数２】
2015082224.tif 000004
【００２０】
で表されることを特徴とする。
【００２１】
請求項８に記載の発明は、請求項６の装置であって、前記サーバ負荷推定装置は、前記事前確率分布設定部、前記事後分布推定部および前記確率的演算部の動作を実施するコンピュータ実施可能命令を実行する中央処理装置（ＣＰＵ）と、前記各サーバコンピュータの各々から取得したデータデータをストアし、および、前記コンピュータ実施可能命令を含むコンピュータプログラムをストアするメモリとを少なくとも含む単一のまたは分散型のコンピュータ装置で構成されることを特徴とする。
【発明の効果】
【００２２】
以上説明したように、本発明により、サーバコンピュータの負荷量と排熱量とが比例するものとして、サーバコンピュータの排熱量やその分布のより正確な推定が可能となる。その結果、サーバコンピュータの冷却を無駄なくより効率的に実施することで、冷却のためのエネルギー消費を削減することが可能となる。
【図面の簡単な説明】
【００２３】
【図１】図１は、本発明のサーバ負荷推定装置を含むサーバルームの構成の概念図である。
【図２】図２は、本発明のサーバ負荷推定装置の構成を示すブロック図である。
【図３】図３は、本発明のサーバ負荷推定法のフローを説明する図である。
【図４】図４は、モデリングにおけるサーバ個体性の考慮の有無による省エネルギー率の達成の違いについて説明する図である。
【発明を実施するための形態】
【００２４】
本発明は、従来技術のようにサーバ負荷に関して決定論的なモデリングを用いるのではなく、サーバ負荷の推定のために確率的な観点に立ったサーバ負荷量推定モデルを導入するものである。
【００２５】
本発明では、サーバルーム内のサーバコンピュータごとのサーバ負荷に対する寄与度を確率的にモデリングする。サーバルーム内におけるサーバ負荷量を、階層ベイズ法およびＭＣＭＣ法（非特許文献２）によって確率的に推定する確率的なサーバ負荷量推定方法および装置について以下説明する。
【００２６】
図１は、本発明のサーバ負荷推定装置を含むサーバルームの構成の概念図である。サーバルーム５００の中には、各々にＸ台のサーバコンピュータが含まれたＹ台のラック１−１、１−２、・・１−Ｎ、・・１−Ｙがある。１つのラック内には、Ｘ台のサーバコンピュータ１０−１〜１０−Ｘが据え付けられてあり、冷却ファンなどの冷却装置がラック内に含まれている。個々のラックに対しては、電源装置２−１、２−２、・・２−Ｎ・・２−Ｙが対応しており、ラック内のサーバコンピュータや付属する冷却装置などに電力を供給する。尚、各ラックへ電力を供給する電源装置は、必ずしもサーバラックと１対１に対応している必要はない。本発明は、サーバ負荷のモデリングに関するものであるため、省エネルギーのシステム自体にはあまり言及はしないが、サーバルーム内全体の冷却やエネルギー消費を最適化するための信号・情報のやり取りが行われる。例えば、ラックごとの電力消費状態を示すサーバ負荷情報３−１、３−２、・・３−Ｎが各ラックから出力され、各電源装置の動作を制御する制御信号４−１、４−２、・・４−Ｎが、各電源装置へ入力され得る。また、本発明のサーバ負荷推定装置１００以外の、専用の省エネルギーシステム等を構成する別のコンピュータ装置があって、本発明のサーバ負荷推定装置１００と連携して動作する構成でも良い。
【００２７】
サーバルーム５００内には、各サーバコンピュータからの排熱を冷却するための冷却装置（空調機）５−１、５−２、５−３が備えられる。冷却装置の数や配置構成などは、サーバの配置や数、ラックの配置や数、サーバルームの構成によって、様々のものが可能であって、図１は例示でしかない。サーバラック内に冷却装置をそれぞれ含むことも可能である。そのほか、電源装置および冷却装置を駆動するための電源設備が、サーバルーム内またはサーバルーム外にあるのは言うまでもない。
【００２８】
本発明のサーバ負荷推定装置１００は、一例として、少なくともＣＰＵ１０２、メモリ１０３、外部との間で、データ・信号の入出インタフェースとして機能する入出力部１０１から構成されるコンピュータ装置として実現できる。さらに、サーバ負荷の推定結果を表示するためのモニタディスプレイやプリンタなどを含む表示装置１０４、例えばキーボードやマウスなどを含む入力装置１０５を備えることもできる。本発明のサーバ負荷推定方法は、本発明の方法の各ステップを実施する命令を含むコンピュータプログラムの発明としても実現できる。また、このコンピュータプログラムを含むコンピュータ読取可能な記憶媒体の発明としても実現可能である。さらに、コンピュータプログラムを記憶した記憶媒体を含む集積回路としても実現できる。
【００２９】
図１において、サーバ負荷推定装置は、１つのコンピュータ装置１００として構成されているが、本発明のサーバ負荷推定は、複数のコンピュータ装置が分担して動作する分散型の構成もよっても実現可能である。また、入出力部１０１から、または、入出力部１０１へ、信号・情報８が入出力される。これらの信号・情報８は、一例として、各ラックからのサーバ負荷情報８であり得るが、ラック毎以外の単位で、サーバ負荷推定装置に負荷情報が与えられても良い。また、これらの情報は、無線でも有線などの方法を問わず、どのような通信手段でサーバ負荷推定装置１００に供給されても良い。サーバ負荷推定装置１００から、各電源装置または各冷却装置へ何らかの制御情報・制御信号８が与えられても良い。次に、本発明のサーバ負荷推定で使用するモデルについて詳細に説明する。
【００３０】
サーバルーム５００において、１つのラックに最大Ｘ台（例えば１０台）のサーバが含まれており、ラックがＹ台（例えば１０００台）あるものとする。１つのラックの中のＸ台のサーバコンピュータの内で、ｘ台が一定値以上の負荷量を持っているものとする。先にも述べたように、サーバ負荷とは、サーバコンピュータ上で処理される命令およびプログラム演算に対応している。命令量に応じて、サーバコンピュータ内のＣＰＵ、ＨＤＤ、放熱ファンなどが高熱となって、これらの要素を熱源としてサーバコンピュータ外部へ排熱が生じる。サーバルーム内におけるサーバ負荷を推定するにあたっては、簡単のため、サーバルーム内の温度が、このサーバコンピュータからの排熱のみに依存すると仮定する。サーバ負荷は、サーバコンピュータからの排熱を示す量であれば、その単位に制約はなく、一例を挙げれば、熱流密度としてＷ／ｍ２の単位を持つものとして定義して良い。
【００３１】
従来技術のサーバ負荷のモデリングでは、ここで、１つのラック中で、一定値以上の負荷をもつサーバを例えば５０％と仮定していた。しかしながら実際には、個々のサーバコンピュータの負荷状態はラックごとに大きく異なっている。そこで本発明のサーバ負荷のモデリングでは、まずそのサーバ負荷の確率分布として、二項分布を仮定する。ｉ番目のラックのＸ台のサーバコンピュータの中で、ｘ台が所定の値以上のサーバ負荷を持っているという確率は、二項分布モデルにより次式で表される。
【００３２】
【数３】
2015082224.tif 000005
【００３３】
上式（１）で、Ｎｉはサーバルーム内のサーバコンピュータの総数を表す。本例の場合は、Ｎｉ＝１０（ラック内のサーバ数）×１０００（ラック数）＝１０，０００となる。上式（１）の確率分布を採用した場合において、ラックごとに、および、サーバコンピュータごとにサーバ負荷の個体差がないとすると、ラックごとでサーバコンピュータが所定の値を越える負荷を持つ確率はｑである。このとき、式（１）の二項分布は、みかけ上はガウス分布状に近くなる。次に、サーバルーム内の全体（ラックＹ台）において、ｑの尤度関数Ｌは次式のように定義される。
【００３４】
【数４】
2015082224.tif 000006
【００３５】
式（２）の尤度Ｌを最大化するパラメータの推定量
【００３６】
【数５】
2015082224.tif 000007
【００３７】
を計算する。
式（２）の尤度Ｌを対数尤度になおすと、次式を得る。
【００３８】
【数６】
2015082224.tif 000008
【００３９】
この対数尤度ｌｏｇＬを最大化するように未知パラメータｑの値を推定することを、最尤推定と呼ぶ。具体的には、式（３）の右辺に対してｑについて偏微分をとり、その結果を０とおいてｑを求めれば良い。推定量
【００４０】
【数７】
2015082224.tif 000009
【００４１】
が定まれば、式（３）により補間値および予測値が得られる。
【００４２】
実際的には、推定量
【００４３】
【数８】
2015082224.tif 000010
【００４４】
をマルコフ連鎖モンテカルロ（Markov chain Monte Carlo：ＭＣＭＣ）法を使って推定する。ＭＣＭＣ法において、尤度に比例するパラメータ分布からランダムサンプルが得られる。ＭＣＭＣ法は、事後分布からのサンプリングとなっている点で、後述するベイズ推定と関連している。すなわち、ベイズ推定においては事後最大化を行っているが、これと同様に、ＭＣＭＣ法では、事後分布から得られた結果をサンプリングする。以下、ＭＣＭＣ法の１つであるメトロポリス法（Metropolis method）の概要を説明する。
【００４５】
最初に、パラメータｑの初期値を適当に選択する。初期値は、現在の値となる（ステップ１）。次に、ｑの増減量を一様分布などからランダムに決定する（ステップ２）。ｑの現在の値および増減量に基づいて選択した新しいｑを、ｑｎとする。パラメータがｑｎにおける尤度Ｌ（ｑｎ）と、パラメータが元のｑにおける尤度Ｌ（ｑ）とを比較する（ステップ３）。Ｌ（ｑｎ）＞Ｌ（ｑ）ならば、当てはまりが改善されたことになるので、現在のｑの値を、ｑｎに更新する（ステップ４−１）。一方、Ｌ（ｑｎ）＜Ｌ（ｑ）ならば、確率ｒ＝Ｌ（ｑｎ）／Ｌ(ｑ)で置き換えて、現在のｑの値を、ｑｎに更新する。確率１−ｒで、ｑを更新しない（ステップ４−２）。ステップ２に戻り、ステップ２からステップ４までの過程を所定の回数（例えば、１００００回）繰り返す。定常分布まで収束した後、推定量
【００４６】
【数９】
2015082224.tif 000011
【００４７】
が得られる。 ＭＣＭＣ法の具体的な実行方法としては、メトロポリス法だけに限られず、ギブス・サンプラー法などが広く用いられている。
【００４８】
条件付確率に関して、次式のベイズの公式は成り立つことが知られている。
【００４９】
【数１０】
2015082224.tif 000012
【００５０】
式（４）において、ｐ（ｑ｜Ｚ）は何れかのデータ（Ｚ）のもとで何れかパラメータ（ｑ）が得られる確率（事後分布）を表す。また、ｐ（ｑ）は、あるパラメータｑが得られる確率(事前分布）を表す。さらに、ｐ（Ｚ｜ｑ）はパラメータ（ｑ）を決めたときにデータ（Ｚ）が得られる確率を表し、尤度に比例する。分母のｐ（Ｚ）は現在のデータＺが得られる確率であり、規格化定数として扱われることが多い。
【００５１】
これまで説明をしてきたサーバ負荷のモデリングでは、サーバ負荷に確率的な観点を取り込んで、サーバ負荷の確率分布として二項分布を仮定した。しかしながら依然として、ラックごとのサーバ負荷の個体差、および、個々のサーバコンピュータ毎の負荷の個体差を考慮していない。また、サーバ負荷の変動量についても、サーバコンピュータ毎の個体差を考慮はしてない。
【００５２】
そこで、式（１）におけるサーバ負荷の確率分布を、次のように見直した。
【００５３】
【数１１】
2015082224.tif 000013
【００５４】
式（５）では、式（１）における推定量ｑを、ｑｉと置いている。個体差の表現をするために線形予測子を導入し、線形予測子をｚｉ＝ａ＋ｒｉとする。このとき、パラメータａをサーバ負荷の全体平均、パラメータｒｉを各サーバコンピュータ個体iの個体差（ずれ、ばらつき）と考えることができる。このとき、推定すべきパラメータ数は、本事例ではＹ（Ｙはラック数）となる。パラメータｒｉの事前分布については、次式の確率分布を仮定する。
【００５５】
【数１２】
2015082224.tif 000014
【００５６】
式（６）において、σが小さいほど個体差のばらつきが小さく、σが大きいほど個体差のばらつきが大きいことに対応している。サーバコンピュータ個体間において類似性が大きいことは、σが小さい場合に相当する。
【００５７】
したがって、サーバルーム内の複数のサーバコンピュータは、ｉ個のラックの各々の中に所定の数だけ含まれており、事前確率分布はラックごとに設定され、そして、ラックごとのサーバ負荷のばらつきがモデル化されることになる。また、事前確率分布モデルは、ｉ番目のラックに対して、複数のサーバコンピュータからのサーバ負荷の全体平均σおよびばらつきｒｉによって定義される線形予測子ｚｉによって表され、確率分布は式（６）で表されることになる。
【００５８】
サーバルーム内にある各サーバコンピュータからの現実の負荷データから、式（６）の各パラメータを取り込むことができる。上記式（６）のように各サーバコンピュータの固体差をモデリングに取り入れた後で、階層ベイズモデルにより上記の全パラメータを次式に基づいて、すべてのサーバコンピュータに対して統一的に推定する。
【００５９】
【数１３】
2015082224.tif 000015
【００６０】
式（７）の右辺の確率については、上述したＭＣＭＣ法の枠組みによって全パラメータを推定することができる。即ち、サーバコンピュータ毎の特性の１つであるサーバ負荷量に関して、推定することができる。式（７）の右辺は、右端の項ｐ（σ）から左側に向かって条件付き確率の積となっていることに注意されたい。すなわち、累積的な条件付確率を示しており、式（７）の右辺は右端の項から順に階層的にサーバ負荷の要因（パラメータ）を考慮している。
【００６１】
図２は、本発明のサーバ負荷推定装置の構成を示すブロック図である。図１のサーバ負荷推定装置１００をより具体的に記載したものである。サーバ負荷推定装置２００は、少なくともメモリ２０３、中央処理装置（ＣＰＵ）２０２を含むコンピュータ装置として実現できる。サーバ負荷推定装置２００は、さらに、キーボードやマウスなどの入力デバイスを含む入力装置２０５、並びに、入力装置からの情報および各サーバコンピュータからの負荷に関する情報２１１を処理するデータインタフェース部２０１を含み得る。データインタフェース部の機能は、ＣＰＵ２０２の中に含まれても良い。情報２１１は、有線、無線を問わず、どのような手段で伝達されても良い。図２では、メモリ２０３はデータインタフェース部２０１を介してＣＰＵ２０２と通信をするように描かれているが、直接データをやり取りするなど、ＣＰＵ２０２と相互に連携して動作する構成であれば、どのような方法で情報をやり取りしても良い。
【００６２】
ＣＰＵ２０２内には、入力データ処理部２０６、事前分布設定部／事後分布推定部２０７、確率的演算部２０８を含む。これらの各部は、コンピュータプログラムに基づいたソフトウェア処理によって実現できる、本発明のサーバ負荷推定方法の各処理ステップに対応した機能ブロックを概念的に表現したものである。これらのソフトウェア処理は、ＣＰＵによって実施できる。したがって、ＣＰＵ２０２の中に各部２０６、２０７、２０８の機能を実現する専用のハードウェア回路が構成されている必要はない。いずれかの機能ブロックを、また、各機能ブロックの中の少なくとも一部を専用のハードウェア（ＣＰＵ内の回路またはＣＰＵ外の専用回路）で処理することも可能である。ハードウェアとソフトウェア処理を組み合わせて、各処理ステップを実行しても良い。また、入力データ処理部２０６、事前分布設定部／事後分布推定部２０７および確率的演算部２０８の３つのブロック分けは、説明のために便宜上行っているのであって、３つのブロックで実現される機能を別個のものとして処理する必要はなく、ソフトウェア処理として同時並行的に実施できる。
【００６３】
ＣＰＵ２０２は、推定結果を出力して表示する表示部２０４と接続される。また、サーバ負荷の推定結果に基づいて、サーバルーム内に電源装置や冷却装置に対して何らかの処理を行う場合には、電源装置や冷却装置に対する制御情報（制御命令、制御信号）を生成する制御情報生成部２０９が、ＣＰＵ２０２と接続されていても良い。表示部２０４および制御情報生成部２０９は、ＣＰＵ２０２との間に、他のインタフェース回路等を備えることもできる。また、他の省エネルギーシステム２１０において利用するために事前分布設定部／事後分布推定部２０７からの推定結果情報を渡しても良い。
【００６４】
したがって、詳細は後に述べる方法の発明としても説明するが、本発明は、複数のサーバコンピュータを備えた所定の空間内におけるサーバ負荷を推定する装置として実現できる。本発明のサーバ負荷を推定する装置は、前記各サーバコンピュータの各々から取得したデータまたはメモリにストアされたデータに基づいて、二項分布またはガウス分布を含むサーバ負荷の事前確率分布モデルを前記複数のサーコンピュータに各々に対して設定する事前確率分布設定部と、得られるデータを確率で表現した尤度と、前もって得ている知識を確率で表現した前記事前確率分布との積からなる事後分布を設定する事後分布推定部とを備える。
【００６５】
さらに、前記事後分布推定部と協働して、階層ベイズモデルの枠組みにおいて、前記複数のサーバコンピュータの各々に対して、前記事後分布を、時系列的に１つ前の状態によってのみ次の状態が決定される連鎖モデルであるマルコフ連鎖およびモンテカルロ法による乱数を用いる、マルコフ連鎖モンテカルロ（ＭＣＭＣ）法を適用する確率的演算によって、推定する確率的演算部を備えることになる。
【００６６】
また、上記の本発明のサーバ負荷推定装置を、前記事前確率分布設定部、前記事後分布推定部および前記確率的演算部の動作を実施するコンピュータ実施可能命令を実行する中央処理装置（ＣＰＵ）と、前記各サーバコンピュータの各々から取得したデータデータをストアし、および、前記コンピュータ実施可能命令を含むコンピュータプログラムをストアするメモリとを少なくとも含む単一のまたは分散型のコンピュータ装置として構成することもできる。
【００６７】
図３は、本発明のサーバ負荷推定法のフローを説明する図である。本発明のサーバ負荷推定方法は、サーバルーム内の各サーバコンピュータから得られる負荷データを取得することから始まる。すなわち、図３のフローにおいて、推定の対象となるサーバルーム内のサーバコンピュータの各々のサーバ負荷データを、データインタフェース２０１において受け取るステップ３０１で始まる。このステップ３０１で、対象とする多数のサーバコンピュータの各々に関するサーバ負荷量やその時間変動などのデータ２１１を、データインタフェース部２０１に入力する。入力するデータとしては、関連するサーバコンピュータの位置情報、さらには、他の熱源（電源装置）の情報、冷却装置に関する情報など、サーバルーム内の省エネルギー動作のために必要な情報を含めることができる。データ取得の方法は、ある一定期間における実サーバ負荷データをそのまま取り込む方法、または、他の機会に既に取得されたデータを利用する方法でも良い。サーバ負荷データは各サーバコンピュータからの排熱量に対応する量であれば、どのようなものでの良いが、例えば、熱流密度としてＷ／ｍ２の単位を持つものとして定義することができる。
【００６８】
関連するサーバコンピュータの位置情報には、サーバルームの構造データ、ラックの位置情報、ラック内にある各サーバコンピュータの位置情報などが含まれ得る。他に、冷却装置に関する情報（サーバルーム内の位置、冷却能力）が含まれても良い。本発明のサーバ負荷推定方法およびサーバ負荷推定装置は、新規なモデリングを利用したこれらの発明を利用して、さらに、データセンタ等のサーバルームにおける使用電力を減らすことにつながることが想定されている。したがって、サーバコンピュータに関連したほかの熱発生源または冷却源に関するデータが含まれて良い。
【００６９】
本発明のサーバ負荷推定方法は、次に、取得したデータを蓄積するステップ３０２に移行する。ステップ３０１で取得されたデータは、メモリ２０３などにストアされる。データ蓄積は、一時的にランダムアクセスメモリ（ＲＡＭ）にストアしても良いし、ＨＤＤなどに永続的にストアしても良い。また、データ２１１に対してＣＰＵ２０２によって一定の処理を施した上で、メモリ２０３にストアしても良い。
【００７０】
本発明のサーバ負荷推定方法は、さらにデータ蓄積ステップ３０２でストアされたデータに基づいて、確率的モデリングに関する事前分布を設定するステップ３０３へ移行する。このステップ３０３においては、例えば個々のサーバ負荷のばらつきが式（６）に示したガウス分布を持つと仮定して（事前知識）、線形予測子に関連するパラメータの内容を決定することに対応する。事前分布は、サーバ負荷に関する事前知識に基づいて、その事前知識を確率で表現した事前確率分布（モデル）を特定（設定）することに対応する。これは、ストアされたサーバ負荷データから、負荷の推定を行う対象の個々のサーバコンピュータに対して、入力データ処理部２０６および事前分布設定部２０７において実行される。より具体的には、ストアされたデータから得られる情報を、式（７）の右辺の確率変数に置き換えて行く作業に対応する。
【００７１】
本発明のサーバ負荷推定方法は、さらに、事後分布を推定するステップ３０４に移行する。このステップ３０４では、階層ベイズモデルの枠組みにおいて、得られるデータを確率で表現した尤度と、前もって得ている知識を確率で表現した事前確率との積からなる事後分布を定義することに対応する。すなわち、得られるデータを確率で表現した尤度は、式（４）のｐ（Ｚ｜ｑ）に対応し、前もって得ている知識を確率で表現した事前確率は、式（４）のｐ（ｑ）に対応する。そして、事後分布はｐ（ｑ｜Ｚ）に対応する。より具体的には、サーバ負荷に関する、線形予測子に関連するパラメータとともに決定した事前分布に対して、全パラメータを式（７）の右辺に基づいて推定する。
【００７２】
この推定作業は、次の確率的演算ステップ３０５において、一例としてＭＣＭＣ法を用いて実行される。したがって、図３のフロー図では、順次的に記載されているものの、ステップ３０４およびステップ３０５は実質的に同時にまたは関連して行われることになる。すなわち、確率的演算部２０８および事後分布推定部２０７が協働して事後分布を推定する。この事後推定は、一般的には、ベイズ推定を用いて、式（４）における左辺の確率ｐ（ｑ｜Ｚ）が最大となるように、Ｚおよびｑを求めることに対応する。より具体的には、確率的演算ステップ３０５は、確率的演算部２０８において、時系列的に１つ前の状態によってのみ次の状態が決定される連鎖モデルであるマルコフ連鎖およびモンテカルロ法による乱数を用いる、マルコフ連鎖モンテカルロ（ＭＣＭＣ）法を適用する。
【００７３】
本発明のサーバ負荷推定方法は、最後に、ステップ３０４、ステップ３０５で得られた各サーバコンピュータについての、個々の負荷量の推定結果を表示ステップ３０６に移行する。推定結果は、モニタディスプレイやプリンタなどの情報表示手段を含む表示部２０４によって提示される。推定結果は、制御情報生成部２０９において、サーバルーム内外の電源装置や、冷却装置などの最適な制御のための制御情報２１２として、サーバコンピュータに関連する装置などへ提供しても良い。制御情報２１２は、デジタルデータ（データ、命令）やアナログ的な制御信号も含み得る。したがって、制御情報生成部２０９は、推定結果から、さまざまな情報・信号に変換する機能を含むこともできる。制御情報生成は、ＣＰＵ２０２の機能の一部としても実施できる。また、表示部２０４において推定結果を表示するのとは別に、またはこれに加えて、推定結果のままでまたは何らかの変更を加えた形態で、別の省エネルギーシステム２１０のために、データ、命令、何らかの制御信号、情報などを提供することもできる。また、図３のフローには記載されていないが、推定結果をメモリ２０３または他の記憶媒体にストアすることもできる。
【００７４】
したがって、本発明のサーバ負荷推定方法は、中央処理装置（ＣＰＵ）およびメモリを少なくとも含むコンピュータ装置において実施される、複数のサーバコンピュータを備えた所定の空間内におけるサーバ負荷を推定する方法として実現できる。
【００７５】
本発明の方法は、前記空間の温度を上昇させ得る、前記複数のサーバコンピュータの各々からの排熱量に対応するサーバ負荷データを、前記複数のサーバコンピュータから取得して、前記メモリにストアするステップと、前記各サーバコンピュータの各々から取得した前記データまたは前記メモリにストアされたデータに基づいて、二項分布またはガウス分布を含むサーバ負荷の事前確率分布モデルを、前記データを取得した前記複数のサーバコンピュータに各々に対して設定するステップを備える。
【００７６】
さらに本発明の方法は、得られるデータを確率で表現した尤度と、前もって得ている知識を確率で表現した前記事前確率分布との積からなる事後分布を設定するステップと、階層ベイズモデルの枠組みにおいて、前記複数のサーバコンピュータの各々に対して、前記事後分布を、時系列的に１つ前の状態によってのみ次の状態が決定される連鎖モデルであるマルコフ連鎖およびモンテカルロ法による乱数を用いる、マルコフ連鎖モンテカルロ（ＭＣＭＣ）法を適用する確率的演算によって、推定するステップと、前記推定された事後分布のパラメータから、各複数のサーバコンピュータの各々のサーバ負荷を推定するステップとを備える。
【００７７】
また、本発明は、上記の方法を実施するコンピュータ読取り可能命令をその中にストアしたコンピュータ読取り可能記憶媒体としても実現できる。
【００７８】
図４は、モデリングにおけるサーバ個体性の考慮の有無による省エネルギー率の達成の違いについて説明する図である。同一のサーバルーム内において、ラック数およびサーバ数を変化させ、サーバコンピュータの個体性を考慮した本発明の場合と、サーバコンピュータの個体性を考慮しない従来技術の場合との間で、省エネルギー率を比較する実験を行った。省エネルギー率とは、さまざまな定義が可能であるが、ここでは一定期間においてラック数、サーバ数が同一という条件のもとで、サーバルーム内の総消費電力量がどれだけ削減されたかという割合と考えることができる。
【００７９】
その結果、従来技術の方法および本発明の方法のいずれの場合も、ラック数およびサーバ数が増加すると省エネルギー率は高まる。しかしながら、従来技術の方法では、ラック数およびサーバ数が一定数まで増加していくと、その省エネルギー率は頭打ちとなる。これに対して、本発明のサーバ負荷推定方法を利用して、サーバルーム内の各サーバコンピュータの負荷の推定を行い、その結果に基づいて電源装置、冷却装置を制御することで、頭打ちになることなく、省エネルギー率が高まった。サーバコンピュータの個体数を考慮したモデリングの有効性を示している。
【００８０】
本発明のサーバ負荷推定方法、推定装置においては、階層ベイズモデルを導入し、ＭＣＭＣ法による積分式を計算する確率論的にモデリングを通じて、サーバ個別の負荷量を推定できる。さらに、サーバ負荷データを用いたモデリング設定によって、サーバコンピュータ個別の十分な特性に関する知識が十分なくても、サーバ負荷推定を行えるため、簡易に省エネルギー化につなげていくシステム設計ための指針が得られる。
【００８１】
本発明においては、確率論的なモデリングに基づいて、サーバコンピュータの負荷量の推定を行う例を示しているが、本発明のサーバ負荷推定方法にさらに、サーバルーム内の空気の流れなどをモデリングした流体現象を扱う熱流体方程式を組み合わせた確率論的なモデルを構築することが可能になる。本発明は、サーバコンピュータを含むラックおよび冷却装置の配置の最適化を通じて、最も効率的なサーバルームの冷却方法を決定するための、基本的な情報を提供することができる。サーバコンピュータの冷却を無駄なくより効率的に実施することで、サーバルームの冷却のためのエネルギー消費を削減することが可能となる。データセンタの省エネルギー化のために、より予測精度の良いサーバ負荷推定方法を提供することができる。
【産業上の利用可能性】
【００８２】
本発明は、一般的に情報システムおよびデータ処理装置に利用することができる。特に、データセンタなどのサーバコンピュータに利用することができる。
【符号の説明】
【００８３】
１−１、１−２、１−Ｎ  ラック
２−１、２−２、２−Ｎ  電源装置
３−１、３−２、３−Ｎ  負荷情報
４−１、４−２、４−Ｎ、２１２  制御情報・制御信号
５−１、５−２、５−３  冷却装置
１００、２００  サーバ負荷推定装置
１０２、２０２  ＣＰＵ
１０３、２０３  メモリ
１０４、２０４  表示部
１０５、２０５  入力装置  
２０１  データインタフェース部
２０６  入力データ処理部
２０７  事前分布設定部／事後分布推定部
２０８  確率的演算部
５００  サーバルーム
【図１】
2015082224.tif 000018
【図２】
2015082224.tif 000019
【図３】
2015082224.tif 000020
【図４】
2015082224.tif 000021