(57)【特許請求の範囲】
【請求項１】
処理種別の識別子を含む処理実行要求をユーザ端末から受信した場合、処理種別の識別子と当該処理種別の処理を実行することにより消費される電力である処理消費電力のデータとを対応付けて格納する第１のデータ格納部から、受信した前記処理種別の識別子に対応する処理消費電力を特定するステップと、
前記ユーザ端末からの処理実行要求に応じて処理を実行し得る複数のサーバの各々について当該サーバが消費しており且つ時間変化する電力を表すサーバ消費電力のデータ及び当該サーバに商用電源から供給する最大電力の閾値を格納する第２のデータ格納部を用いて、特定された前記処理消費電力を前記サーバ消費電力に加えても前記閾値を超過しないという条件を満たすサーバを探索する探索ステップと、
前記探索ステップにおいて前記条件を満たすサーバが特定された場合には、当該サーバを実行サーバとして決定し、当該実行サーバに前記処理実行要求を送信する第１決定ステップと、
を含み、コンピュータにより実行される電力平準化方法。
【請求項２】
前記第２のデータ格納部には、前記複数のサーバの各々について当該サーバに電力を供給する給電装置のバッテリー残量のデータがさらに格納されており、
前記探索ステップにおいて前記条件を満たすサーバが特定されなかった場合には、前記第２のデータ格納部を用いて、バッテリー残量が最も多いサーバを前記実行サーバとして特定し、当該実行サーバに前記処理実行要求を送信する第２決定ステップ
をさらに含む請求項１記載の電力平準化方法。
【請求項３】
前記第２のデータ格納部には、前記複数のサーバの各々について当該サーバの処理負荷のデータがさらに格納されており、
前記探索ステップにおいて前記条件を満たすサーバが複数特定された場合には、前記第１決定ステップにおいて、前記第２のデータ格納部を用いて、特定された前記サーバのうち処理負荷が最も低いサーバを前記実行サーバとして決定する
ことを特徴とする請求項１記載の電力平準化方法。
【請求項４】
前記第２のデータ格納部には、前記複数のサーバの各々について当該サーバの処理負荷のデータがさらに格納されており、
前記第２決定ステップが、
前記探索ステップにおいて前記条件を満たすサーバが特定されなかった場合には、前記第２のデータ格納部を用いて、バッテリー残量が最も多いサーバを特定するステップと、
特定された前記サーバが複数である場合には、前記第２のデータ格納部を用いて、特定された前記サーバのうち処理負荷が最も低いサーバを前記実行サーバとして決定するステップと、
を含む請求項２記載の電力平準化方法。
【請求項５】
前記商用電源から前記複数のサーバを含むシステムに供給する最大電力の閾値である全体閾値を、前記システムに含まれる給電装置のバッテリー容量の総和及び前記システムにおいて消費される電力の予測に基づき算出するステップと、
前記第２のデータ格納部に格納されている、前記複数のサーバの各々についての前記閾値を、当該閾値の総和が前記全体閾値に等しくなるように算出するステップと、
をさらに含む請求項１乃至４のいずれか１つ記載の電力平準化方法。
【請求項６】
前記給電装置は、
当該給電装置が電力を供給するサーバの消費電力が前記閾値を超過した場合には、当該給電装置に含まれるバッテリーから超過分の電力を放電し、
当該給電装置が電力を供給するサーバの消費電力が前記閾値に満たない場合には、当該給電装置に含まれるバッテリーに余剰分の電力を充電する
ことを特徴とする請求項２、４又は５記載の電力平準化方法。
【請求項７】
処理種別の識別子と当該処理種別の処理を実行することにより消費される電力である処理消費電力のデータとを対応付けて格納する第１のデータ格納部と、
ユーザ端末からの処理実行要求に応じて処理を実行し得る複数のサーバの各々について当該サーバが消費しており且つ時間変化する電力を表すサーバ消費電力のデータ及び当該サーバに商用電源から供給する最大電力の閾値を格納する第２のデータ格納部と、
処理種別の識別子を含む処理実行要求を前記ユーザ端末から受信した場合、前記第１のデータ格納部から、受信した前記処理種別の識別子に対応する処理消費電力を特定する消費電力特定部と、
前記第２のデータ格納部を用いて、特定された前記処理消費電力を前記サーバ消費電力に加えても前記閾値を超過しないという条件を満たすサーバを探索するサーバ探索部と、
前記サーバ探索部により前記条件を満たすサーバが特定された場合には、当該サーバを実行サーバとして決定し、当該実行サーバに前記処理実行要求を送信する通信部と、
を有する電力平準化システム。
【請求項８】
前記第２のデータ格納部には、前記複数のサーバの各々について当該サーバに電力を供給する給電装置のバッテリー残量のデータがさらに格納されており、
前記サーバ探索部による探索で前記条件を満たすサーバが特定されなかった場合には、前記通信部は、前記第２のデータ格納部を用いて、バッテリー残量が最も多いサーバを前記実行サーバとして特定し、当該実行サーバに前記処理実行要求を送信する
請求項７記載の電力平準化システム。
【請求項９】
処理種別の識別子を含む処理実行要求をユーザ端末から受信した場合、処理種別の識別子と当該処理種別の処理を実行することにより消費される電力である処理消費電力のデータとを対応付けて格納する第１のデータ格納部から、受信した前記処理種別の識別子に対応する処理消費電力を特定するステップと、
前記ユーザ端末からの処理実行要求に応じて処理を実行し得る複数のサーバの各々について当該サーバが消費しており且つ時間変化する電力を表すサーバ消費電力のデータ及び当該サーバに商用電源から供給する最大電力の閾値を格納する第２のデータ格納部を用いて、特定された前記処理消費電力を前記サーバ消費電力に加えても前記閾値を超過しないという条件を満たすサーバを探索する探索ステップと、
前記探索ステップにおいて前記条件を満たすサーバが特定された場合には、当該サーバを実行サーバとして決定し、当該実行サーバに前記処理実行要求を送信する第１決定ステップと、
を、コンピュータに実行させるための電力平準化プログラム。
【請求項１０】
前記第２のデータ格納部には、前記複数のサーバの各々について当該サーバに電力を供給する給電装置のバッテリー残量のデータがさらに格納されており、
前記探索ステップにおいて前記条件を満たすサーバが特定されなかった場合には、前記第２のデータ格納部を用いて、バッテリー残量が最も多いサーバを前記実行サーバとして特定し、当該実行サーバに前記処理実行要求を送信する第２決定ステップ
をさらに前記コンピュータに実行させるための請求項９記載の電力平準化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、商用電源から供給する電力を制御する技術に関する。
【背景技術】
【０００２】
近年、情報サービスを提供する企業等は、増々大きな規模のデータセンタを管理するようになっている。データセンタでは、処理を実行するためのサーバはもちろん、冷却ファン等の空調設備や非常用のバッテリー等、電力を消費する機器を多数用意する必要があり、データセンタの規模の拡大により消費電力も増大する。消費電力の増大は、データセンタの管理者等にとって大きな負担となっており、商用電源から受電する電力を抑制するための技術が求められている。
【０００３】
一方、計算機の処理負荷を分散させるための従来技術が存在している。具体的には、複数の計算機により構成されるシステムにおいて、計算機において処理が行われた場合には、ＣＰＵ消費時間、メモリ使用量、データベースアクセス回数などを統計情報として記録しておく。そして、新たな処理要求があった場合には、この処理要求の処理に要する処理負荷を統計情報を用いて予測し、予測された処理負荷と現在の処理負荷の状況とに基づき、処理要求をいずれかの計算機に割り振る。
【０００４】
しかし、上記の従来技術のように計算機の処理負荷を分散させたとしても、必ずしもシステム全体として商用電源から受電する電力を抑制することはできない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−１４０３１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従って、本技術の目的は、商用電源から複数のサーバを含むシステムに供給する電力を抑制するための技術を提供することである。
【課題を解決するための手段】
【０００７】
本電力平準化方法は、処理種別の識別子を含む処理実行要求をユーザ端末から受信した場合、処理種別の識別子と当該処理種別の処理を実行することにより消費される電力である処理消費電力のデータとを対応付けて格納する処理テーブルから、受信した処理種別の識別子に対応する処理消費電力を特定するステップと、ユーザ端末からの処理実行要求に応じて処理を実行し得る複数のサーバの各々について当該サーバが消費している電力であるサーバ消費電力のデータ及び当該サーバに商用電源から供給する最大電力の閾値を格納するサーバテーブルを用いて、特定された処理消費電力をサーバ消費電力に加えても閾値を超過しないという条件を満たすサーバを探索する探索ステップと、探索ステップにおいて条件を満たすサーバが特定された場合には、当該サーバを実行サーバとして決定し、当該実行サーバに処理実行要求を送信する第１決定ステップとを含む。
【発明の効果】
【０００８】
商用電源から複数のサーバを含むシステムに供給する電力を抑制することができるようになる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本技術の実施の形態に係るシステムの構成図である。
【図２】図２は、平準化制御サーバの機能ブロック図である。
【図３】図３は、ジョブ処理サーバの機能ブロック図である。
【図４】図４は、給電装置の機能ブロック図である。
【図５】図５は、ジョブ振分サーバの機能ブロック図である。
【図６】図６は、サーバテーブルに格納されるデータの一例を示す図である。
【図７】図７は、ジョブテーブルに格納されるデータの一例を示す図である。
【図８】図８は、個別目標値テーブルに格納されるデータの一例を示す図である。
【図９】図９は、バッテリー容量テーブルに格納されるデータの一例を示す図である。
【図１０】図１０は、予測テーブルに格納されるデータの一例を示す図である。
【図１１】図１１は、給電装置に個別目標値を設定する処理の処理フローを示す図である。
【図１２】図１２は、システム全体の消費電力及びバッテリー残量について説明するための図である。
【図１３】図１３は、ジョブの振り分け処理の処理フローを示す図である。
【図１４】図１４は、サーバ特定処理の処理フローを示す図である。
【図１５】図１５は、ジョブの振り分け処理の処理フローを示す図である。
【図１６】図１６は、ジョブ処理サーバの消費電力及びバッテリー残量について説明するための図である。
【図１７】図１７は、ジョブ処理サーバの消費電力及びバッテリー残量について説明するための図である。
【図１８】図１８は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【００１０】
図１に、本実施の形態に係るシステムの構成図を示す。例えばインターネットであるネットワーク１には、ジョブ振分サーバ３と、クライアント端末７とが接続されている。ジョブ振分サーバ３には、平準化制御サーバ５と、ジョブ処理サーバ１１Ａ及びジョブ処理サーバ１１Ｂとが接続されている。平準化制御サーバ５には、ジョブ処理サーバ１１Ａ及びジョブ処理サーバ１１Ｂと、例えばＵＰＳ（Uninterruptible Power Supply）である給電装置１３Ａ及び給電装置１３Ｂとが接続されている。また、例えば受電設備である商用電源９は、給電装置１３Ａ及び給電装置１３Ｂに電力を供給する。給電装置１３Ａは、ジョブ処理サーバ１１Ａに電力を供給し、給電装置１３Ｂは、ジョブ処理サーバ１１Ｂに電力を供給する。図１の例では、ジョブ処理サーバ及び給電装置はそれぞれ２つしか図示していないが、数に限定はない。また、１つの給電装置に複数のジョブ処理サーバが接続される場合もある。なお、本実施の形態においては、ジョブ処理サーバにおいて実行される、特定の目的を達成するためのひとまとまりの処理のことを「ジョブ」と呼ぶ。
【００１１】
図２に、平準化制御サーバ５の機能ブロック図を示す。平準化制御サーバ５は、通信部５１と、管理データ格納部５３と、平準化制御部５５と、処理結果格納部５７とジョブ識別子格納部５９とを含む。また、平準化制御部５５は、消費電力特定部５５１と、サーバ特定部５５３とを含む。
【００１２】
通信部５１は、ジョブ処理サーバ１１Ａ及び１１Ｂから消費電力及び処理負荷のデータを受信すると共に、給電装置１３Ａ及び１３Ｂからバッテリー残量のデータを受信し、管理データ格納部５３を更新する処理を行う。また、通信部５１は、ジョブ振分サーバ３からジョブ識別子を含む平準化制御要求を受信し、当該ジョブ識別子をジョブ識別子格納部５９に格納する処理を行う。平準化制御部５５の消費電力特定部５５１及びサーバ特定部５５３は、管理データ格納部５３及びジョブ識別子格納部５９に格納されているデータに基づき、後で説明するサーバ特定処理を行い、処理結果を処理結果格納部５７に格納する。
【００１３】
図３に、ジョブ処理サーバ１１Ａ及び１１Ｂの機能ブロック図を示す。ジョブ処理サーバ１１Ａ及び１１Ｂは、通信部１１１と、ジョブ実行部１１３と、サーバデータ格納部１１５と、消費電力監視部１１７と、処理負荷監視部１１９とを含む。
【００１４】
消費電力監視部１１７は、ジョブ処理サーバ１１Ａ（又はジョブ処理サーバ１１Ｂ）の消費電力を例えば所定時間経過する毎に計測し、消費電力のデータをサーバデータ格納部１１５に格納する。処理負荷監視部１１９は、ジョブ処理サーバ１１Ａ（又はジョブ処理サーバ１１Ｂ）の処理負荷を例えば所定時間経過する毎に計測し、処理負荷のデータをサーバデータ格納部１１５に格納する。通信部１１１は、サーバデータ格納部１１５に格納されている消費電力及び処理負荷のデータを、平準化制御サーバ５に送信する。また、通信部１１１は、サーバデータ格納部１１５に格納されている消費電力のデータを給電装置１３Ａ及び１３Ｂに送信する。また、通信部１１１は、ジョブ振分サーバ３からジョブ実行要求を受信すると、ジョブ実行部１１３にジョブの実行を指示する。ジョブ実行部１１３は、ジョブの実行結果を通信部１１１に通知する。そして、通信部１１１は、ジョブの実行結果をジョブ振分サーバ３に送信する。
【００１５】
図４に、給電装置１３Ａ及び１３Ｂの機能ブロック図を示す。給電装置１３Ａ及び１３Ｂは、通信部１３０１と、バッテリーデータ格納部１３０３と、データ格納部１３０５と、バッテリー残量監視部１３０７と、充放電制御部１３０９と、バッテリー１３１１とを含む。
【００１６】
バッテリー残量監視部１３０７は、バッテリー１３１１の残量を計測し、残量のデータをバッテリーデータ格納部１３０３に格納する。通信部１３０１は、バッテリーデータ格納部１３０３に格納されているバッテリー残量のデータを平準化制御サーバ５に送信する。また、通信部１３０１は、個別目標値を含む充放電制御要求を平準化制御サーバ５から受信すると共に、消費電力のデータをジョブ処理サーバ１１Ａ及び１１Ｂから受信し、データ格納部１３０５に格納する。充放電制御部１３０９は、データ格納部１３０５に格納されている個別目標値及び消費電力のデータに従い、バッテリー１３１１の充放電を制御する。
【００１７】
図５に、ジョブ振分サーバ３の機能ブロック図を示す。ジョブ振分サーバ３は、クライアント端末７からジョブ処理要求を受信し、ジョブ処理サーバ１１Ａ及び１１Ｂに転送する処理、及びジョブ処理サーバ１１Ａ及び１１Ｂからジョブ処理結果を受信し、クライアント端末７に転送する処理等を行う通信部３１と、平準化制御サーバ５から受信したジョブ振分要求に基づき、ジョブの振り分けを通信部３１に指示するジョブ振分部３３とを含む。
【００１８】
図６に、管理データ格納部５３に格納されるサーバテーブルの一例を示す。図６の例では、ジョブ処理サーバの識別子の列と、ジョブ処理サーバの消費電力の列と、ジョブ処理サーバの処理負荷の列と、給電装置の識別子の列と、給電装置のバッテリー残量の列とが含まれる。例えば図６の第１行目の列は、識別子が「Ｓｊ1」であるジョブ処理サーバは、識別子が「Ｂ1」である給電装置から電力を供給されることを表している。ジョブ処理サーバ及び給電装置の識別子は、例えばＩＰアドレスである。
【００１９】
図７に、管理データ格納部５３に格納されるジョブテーブルの一例を示す。図７の例では、ジョブの識別子の列と、ジョブの消費電力の列と、ジョブの処理負荷の列とが含まれる。ジョブの消費電力とはジョブを実行することにより消費される電力のことであり、ジョブの処理負荷とはジョブを実行することによりかかる負荷（例えばＣＰＵ使用率等）である。ジョブの識別子は、例えばＵＲＬ（Uniform Resource Locator）である。なお、本実施の形態におけるジョブの識別子とは、ジョブの「種別」の識別子のことである。
【００２０】
図８に、管理データ格納部５３に格納される個別目標値テーブルの一例を示す。図８の例では、ジョブ処理サーバの列と、個別目標値の列とが含まれる。個別目標値とは、特定の期間（例えば１日）において商用電源からジョブ処理サーバに供給する最大電力（ピーク値）のことである。
【００２１】
図９に、管理データ格納部５３に格納されるバッテリー容量テーブルの一例を示す。図９の例では、ジョブ処理サーバの列と、バッテリー容量の列とが含まれる。
【００２２】
図１０に、管理データ格納部５３に格納される予測テーブルの一例を示す。図１０の例では、特徴の列と、日時の列と、電力の列とが含まれる。図１０の例では、本実施の形態の処理を行う日が月曜日に該当する場合には、０時００分からの３０分間にはジョブ処理サーバ１１Ａ及びジョブ処理サーバ１１Ｂの消費電力の合計の平均値が４．１０５３ｋＷになり、０時３０分からの３０分間には４．０８５８ｋＷになり、２３時３０分からの３０分間には４．１１６５ｋＷになると予測されることを表している。このデータは、例えば、共通する特徴を有する日の消費電力のデータを平均することにより生成する。図１０の例では、特徴として曜日のデータが格納されているが、例えば月やイベントのデータ等であってもよいし、それらの組み合わせであってもよい。また、より短い時間間隔での消費電力が格納されても良い。
【００２３】
次に、図１１乃至図１７を用いて、図１に示したシステムの処理内容について説明する。まず、図１１及び図１２を用いて、本実施の形態におけるジョブの振り分け処理に先立って行われる、個別目標値の算出及び設定のための処理について説明する。
【００２４】
まず、平準化制御サーバ５の平準化制御部５５は、管理データ格納部５３に格納されている消費電力の予測データ及びバッテリー容量のデータに基づき、特定の期間（例えば１日）における全体目標値Ｐ0を算出し、メインメモリ等の記憶装置に格納する（図１１：ステップＳ１）。
【００２５】
全体目標値Ｐ0の算出については、図１２を用いて説明する。図１２の上段のグラフは、縦軸がシステム全体の消費電力を表し、横軸が時刻を表す。図１２の下段のグラフは、縦軸がシステム全体のバッテリー残量の合計値を表し、横軸が時刻を表している。
【００２６】
図１２の例では、全体目標値Ｐ0の電力が時刻Ｔ1からＴ2までの間商用電源からシステムに供給されている。ここでは、時刻Ｔ1から時刻Ｔ2までの間及び時刻Ｔ3から時刻Ｔ4までの間は全体目標値Ｐ0より消費電力の予測値の方が小さいため、両者の差分の電力がバッテリーに充電される。従って、時刻Ｔ1から時刻Ｔ2までの間及び時刻Ｔ3から時刻Ｔ4までの間はバッテリー残量Ｒ0が増加している。一方、時刻Ｔ2から時刻Ｔ3までの間は全体目標値Ｐ0より消費電力の予測値の方が大きいため、両者の差分の電力がバッテリーからシステムに放電される。従って、時刻Ｔ2から時刻Ｔ3までの間はバッテリー残量Ｒ0が減少している。
【００２７】
図１２の例では、時刻Ｔ1から時刻Ｔ4までの間にはバッテリー残量が０に達することはなく、商用電源から供給する全体目標値Ｐ0の電力とバッテリーからの放電とにより消費電力を賄うことができている。従って、商用電源から供給する電力のピーク値は全体目標値Ｐ0と等しくなる。
【００２８】
なお、図１２の例では時刻Ｔ3においてバッテリー残量が０に近づいており、もし図１２の例よりも小さい値を全体目標値Ｐ0として設定した場合には、バッテリー残量が時刻Ｔ3付近において０に達する可能性もある。この場合には、システムの消費電力を商用電源から供給する電力だけで賄わなくてならず、商用電源から供給する電力のピーク値は図１２の例よりも大幅に大きくなる可能性がある。一方、図１２の例よりも大きい値を全体目標値Ｐ0として設定した場合には、図１２の例の場合と同様、バッテリー残量が０に達することはなく、システムの消費電力を商用電源から供給する電力だけで賄わなくてはならないような事態にはならない。但し、バッテリー残量の余剰は図１２の例よりも大きくなり、図１２の例ほどバッテリーを有効に活用できているとは言えない。
【００２９】
本実施の形態では、全体目標値Ｐ0の候補値を複数選択し、複数の候補値の各々について、商用電源から供給する電力のピーク値を算出する。そして、ピーク値が最も小さくなる候補値を全体目標値Ｐ0として決定する。これは、バッテリーを最大限有効に活用することができる全体目標値Ｐ0を特定するということを意味している。
【００３０】
なお、上で述べたようなステップＳ１の処理は、例えばメタヒューリスティック手法であるＰＳＯ（Particle Swarm Optimization）等を用いて行うことができる。これらは本実施の形態の主要な部分ではないので、ここでは詳しくは述べない。
【００３１】
図１１の説明に戻り、平準化制御サーバ５の平準化制御部５５は、ステップＳ１において算出された全体目標値Ｐ0に基づき個別目標値Ｐi（ｉ＝１，２，３・・・ｍ）を算出し、管理データ格納部５３の個別目標値テーブルに格納する（ステップＳ３）。
【００３２】
個別目標値Ｐiは、例えば各ジョブ処理サーバの単位時間当たりの消費電力が同等であるような場合には、Ｐm＝Ｐ0／ｍと設定すればよい。図１の例の場合には、Ｐ0／２と設定する。但し、各ジョブ処理サーバの単位時間当たりの消費電力が同等であっても、接続されている給電装置のバッテリー容量が異なるような場合には、バッテリー容量の比に基づき設定してもよい。例えばジョブ処理サーバ１１Ａ及び１１Ｂに電力を供給する給電装置のバッテリーが満充電の状態であり、バッテリー容量の比が１：２であり、Ｐ0＝３００［ｗ］であるとする。この場合には、ジョブ処理サーバ１１Ａの個別目標値を２００［ｗ］とし、ジョブ処理サーバ１１Ｂの個別目標値を１００［ｗ］とする。すなわち、バッテリー容量の少ない給電装置に接続されたジョブ処理サーバに、より多くの電力を商用電源から供給する。
【００３３】
次に、平準化制御サーバ５の通信部５１は、個別目標値テーブルに格納されている個別目標値Ｐiを含む充放電制御要求を給電装置１３Ａ及び１３Ｂに送信する（ステップＳ５）。そして、給電装置１３Ａ及び１３Ｂの通信部１３０１は、平準化制御サーバ５から充放電制御要求を受信し、データ格納部１３０５に格納する（ステップＳ７）。
【００３４】
そして、充放電制御部１３０９は、データ格納部１３０５に格納されている個別目標値Ｐi及びジョブ処理サーバの消費電力のデータに基づき、バッテリーの充放電を制御する（ステップＳ９）。ステップＳ９においては、（個別目標値Ｐi）＞（ジョブ処理サーバの消費電力）である場合には、（個別目標値Ｐi）−（ジョブ処理サーバの消費電力）に相当する電力をバッテリー１３１１に充電する。一方、（個別目標値Ｐi）＜（ジョブ処理サーバの消費電力）である場合には、（ジョブ処理サーバの消費電力）−（個別目標値Ｐi）に相当する電力をバッテリー１３１１から放電する。なお、ステップＳ９の処理は、例えば制御を終了すべき時刻になるまで又は管理者から終了を指示されるまで繰り返し行われる。
【００３５】
以上のような処理を実施することにより、給電装置におけるバッテリーの充放電を適切に行い、商用電源から供給する電力を抑制することができるようになる。
【００３６】
次に、図１３乃至図１７を用いて、ジョブの振り分け処理について説明する。まず、クライアント端末７は、ジョブの識別子を含むジョブ実行要求をジョブ振分サーバ３に送信する（図１３：ステップＳ１１）。一方、ジョブ振分サーバ３の通信部３１は、ジョブ実行要求をクライアント端末７から受信し、メインメモリ等の記憶装置に格納する（ステップＳ１３）。
【００３７】
そして、ジョブ振分サーバ３の通信部３１は、ステップＳ１３において受信したジョブ識別子を含む平準化制御要求を平準化制御サーバ５に送信する（ステップＳ１５）。一方、平準化制御サーバ５の通信部５１は、ジョブ振分サーバ３から平準化制御要求を受信し、ジョブ識別子格納部５９に格納する（ステップＳ１７）。そして、平準化制御部５５は、サーバ特定処理を実施する（ステップＳ１９）。サーバ特定処理については、図１４を用いて説明する。
【００３８】
まず、平準化制御部５５の消費電力特定部５５１は、ジョブ識別子格納部５９に格納されているジョブ識別子に対応する消費電力Ｐｊiを管理データ格納部５３のジョブテーブルから特定し、メインメモリ等の記憶装置に格納する（図１４：ステップＳ４１）。そして、サーバ特定部５５３は、管理データ格納部５３のサーバテーブルにおいて、（ステップＳ４１において特定されたジョブ消費電力Ｐｊi）＋消費電力Ｐｓi＜個別目標値Ｐiを満たすジョブ処理サーバを探索する（ステップＳ４３）。すなわち、クライアント端末７から要求されたジョブを実行しても消費電力が個別目標値を上回らないジョブ処理サーバを探索する。
【００３９】
そして、サーバ特定部５５３は、ステップＳ４３において該当するジョブ処理サーバが特定されたか判断する（ステップＳ４５）。該当するジョブ処理サーバが特定された場合（ステップＳ４５：Ｙｅｓルート）、サーバ特定部５５３は、管理データ格納部５３のサーバテーブルに格納されている処理負荷のデータに基づき、ステップＳ４３において特定されたジョブ処理サーバのうち処理負荷が最も低いジョブ処理サーバを実行サーバとして特定し、当該実行サーバの識別子を処理結果格納部５７に格納する（ステップＳ５３）。
【００４０】
一方、ステップＳ４３において該当するジョブ処理サーバが特定されなかった場合（ステップＳ４５：Ｎｏルート）、サーバ特定部５５３は、管理データ格納部５３のサーバテーブルに格納されているバッテリー残量のデータに基づき、バッテリー残量が最も多い給電装置に接続されているジョブ処理サーバを特定し、当該ジョブ処理サーバの識別子をメインメモリ等の記憶装置に格納する（ステップＳ４７）。
【００４１】
そして、サーバ特定部５５３は、ステップＳ４７においてジョブ処理サーバが複数特定されたか判断する（ステップＳ４９）。例えば、図１のように給電装置１台にジョブ処理サーバが１台接続される構成においてバッテリー残量が最大である給電装置が複数ある場合や、バッテリー残量が最大である給電装置に複数のジョブ処理サーバが接続されている場合が該当する。ジョブ処理サーバが複数特定されていない場合（ステップＳ４９：Ｎｏルート）、ステップＳ４７において特定されたジョブ処理サーバの識別子を処理結果格納部５７に格納する。すなわち、ステップＳ４７において特定されたジョブ処理サーバを実行サーバとして決定する。
【００４２】
一方、ジョブ処理サーバが複数特定された場合（ステップＳ４９：Ｙｅｓルート）、サーバ特定部５５３は、管理データ格納部５３のサーバテーブルに格納されている処理負荷のデータに基づき、特定されたジョブ処理サーバのうち処理負荷が最も低いジョブ処理サーバを実行サーバとして特定し、当該実行サーバの識別子を処理結果格納部５７に格納する（ステップＳ５１）。そして、元の処理に戻る。
【００４３】
以上のような処理を実施することにより、最適なジョブ処理サーバにジョブを実行させることができるようになる。
【００４４】
図１３の説明に戻り、平準化制御サーバ５の通信部５１は、処理結果格納部５７に格納されているジョブ処理サーバの識別子を含むジョブ振り分け要求を生成し、ジョブ振分サーバ３に送信する（ステップＳ２１）。一方、ジョブ振分サーバ３の通信部３１は、平準化制御サーバ５からジョブ振り分け要求を受信し、メインメモリ等の記憶装置に格納する（ステップＳ２３）。そして、処理は端子Ａ及びＢを介して図１５の処理に移行する。
【００４５】
図１５を用いて端子Ａ及びＢ以降の処理について説明する。ジョブ振分サーバ３のジョブ振分部３３は、受信したジョブ振り分け要求に含まれるジョブ処理サーバの識別子によりジョブを振り分けるジョブ処理サーバを特定し、当該ジョブ処理サーバへのジョブの振り分けを通信部３１に指示する。そして、通信部３１は、ステップＳ１３において受信したジョブ実行要求を、ジョブ振り分けサーバ（ここではジョブ処理サーバ１１Ａとする）に転送する（ステップＳ２５）。
【００４６】
一方、ジョブ処理サーバ１１Ａの通信部１１１は、ジョブ実行要求をジョブ振分サーバ３から受信し、メインメモリ等の記憶装置に格納する（ステップＳ２７）。また、通信部１１１は、ジョブ実行部１１３にジョブの実行を指示する。そして、ジョブ実行部１１３は、ステップＳ２７において受信したジョブ実行要求に係るジョブを実行する（ステップＳ２９）。また、ステップＳ２９において、ジョブ実行部１１３はジョブの実行結果を通信部３１に通知する。
【００４７】
ここで、図１６及び図１７を用いて、上で述べたようなジョブ振り分け処理を実施した場合における、ジョブ処理サーバの消費電力及びバッテリー残量の推移について説明する。図１６の上段のグラフは、縦軸がジョブ処理サーバ１１Ａの消費電力を表し、横軸が時刻を表す。図１６の下段のグラフは、縦軸がジョブ処理サーバ１１Ａに電力を供給する給電装置のバッテリーの残量を表し、横軸が時刻を表している。また、図１７の図の構成は図１６と同様であるが、図１７はジョブ処理サーバ１１Ｂについてのグラフとなっている。
【００４８】
上で述べたようなジョブ振り分け処理を実施した結果、ジョブ処理サーバ１１Ａ及び１１Ｂの消費電力は、時刻Ｔ1からＴ2までの間増加し、時刻Ｔ2において消費電力が個別目標値を上回っている。このように、同時刻において両ジョブ処理サーバの消費電力が個別目標値を上回るのは、ステップＳ４３において、要求されたジョブを実行しても消費電力が個別目標値を上回らないジョブ処理サーバを探索して処理を振り分けるようにしているためである。その後、時刻Ｔ2からＴ3までの間、ジョブ処理サーバ１１Ａ及び１１Ｂの消費電力はそれぞれ個別目標値を上回っているため、バッテリーの残量が減少している。そして、時刻Ｔ3において消費電力が個別目標値を下回ると、バッテリーへの充電が開始され、バッテリー残量が増加し始める。このように、バッテリー残量が最も少なくなるＴ3においても、バッテリー残量が０に達しないため、両ジョブ処理サーバが商用電源から受電する電力のピーク値は個別目標値と等しくなる。
【００４９】
このように、本実施の形態においては、各ジョブ処理サーバにおいて個別目標値を超える電力を商用電源から供給することがないように、バッテリーの充放電を制御している。この結果、システム全体としても、全体目標値を超える電力を商用電源から受電することがなくなる。すなわち、本実施の形態におけるジョブの振り分けを行うことにより、以下の２式が常に満たされるようになっている。
【００５０】
・Ｄ0＝Ｄ1＋Ｄ2
・Ｒ0＝Ｒ1＋Ｒ2
ここで、Ｄ0はシステムに含まれるバッテリーからの放電電力の合計値、Ｄ1は給電装置１３Ａのバッテリーからの放電電力、Ｄ2は給電装置１３Ｂのバッテリーからの放電電力、Ｒ0はシステムに含まれるバッテリーの残量の合計値、Ｒ1は給電装置１３Ａのバッテリーの残量、Ｒ2は給電装置１３Ｂのバッテリーの残量である。
【００５１】
図１５の説明に戻り、通信部３１は、ジョブの実行結果をジョブ振分サーバ３に送信する（ステップＳ３１）。一方、ジョブ振分サーバ３は、ジョブ処理サーバ１１Ａからジョブの実行結果を受信し、クライアント端末７に転送する（ステップＳ３３）。そして、クライアント端末７は、ジョブ振分サーバ３からジョブの実行結果を受信し、メインメモリ等の記憶装置に格納する（ステップＳ３５）。クライアント端末７は、例えば表示装置等にジョブ実行結果を表示し、クライアント端末７を操作するユーザに確認を促す。
【００５２】
以上のような処理を実施することにより、各ジョブ処理サーバの受電電力が個別目標値を超えないようにジョブが振り分けられるようになるため、システム全体の受電電力を抑制することができるようになる。
【００５３】
以上、本技術の実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、上で説明したジョブ振分サーバ３、平準化制御サーバ５、ジョブ処理サーバ１１Ａ及び１１Ｂ及び給電装置１３Ａ及び１３Ｂの機能ブロック図は必ずしも実際のプログラムモジュール構成に対応するものではない。
【００５４】
また、上で説明した各テーブルの構成は一例であって、必ずしも上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
【００５５】
なお、本実施の形態では、ジョブ振分サーバ３及び平準化制御サーバ５を設けるような例を示したが、両サーバの機能を１つのサーバで実現するようにしてもよい。
【００５６】
また、給電装置として非常用バッテリー（例えばＵＰＳ）を用いる場合には、上で述べた処理に割り当て可能なバッテリー容量の閾値（例えば全容量の５０％）を定め、その範囲内で上で述べた処理を行うようにしてもよい。このようにすれば、停電等の非常事態が発生したときに十分なバックアップ動作ができないといった事態を回避することができる。また、この閾値は、天候の状況や電気設備工事の有無等により商用電源からの給電が停止する確率が高いと判断される場合には低い値を設定する等、可変に設定してもよい。
【００５７】
また、上で述べた例では、要求されたジョブをいずれのジョブ処理サーバにおいても実行可能なことを前提としていたが、特定のジョブ処理サーバでしか実行できないジョブが存在するようなことも考えられる。この場合には、ジョブと当該ジョブを実行可能なジョブ処理サーバとの関係についてのデータを予め保持しておく。そして、ジョブ実行要求があった場合には、まず当該ジョブ実行要求に係るジョブを実行可能なジョブ処理サーバを特定し、特定されたジョブ処理サーバが１つである場合には、当該ジョブ処理サーバに処理を振り分ける。一方、特定されたジョブ処理サーバが複数である場合には、特定されたジョブ処理サーバに対して上で述べた処理を実施すればよい。
【００５８】
なお、クライアント端末７、ジョブ振分サーバ３、平準化制御サーバ５及びジョブ処理サーバ１１Ａ及び１１Ｂは、図１８に示すように、メモリ２５０１（記憶部）とＣＰＵ２５０３（処理部）とハードディスク・ドライブ（ＨＤＤ）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。ＯＳ及びＷｅｂブラウザを含むアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。必要に応じてＣＰＵ２５０３は、表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ２５０１に格納され、必要があればＨＤＤ２５０５に格納される。このようなコンピュータは、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【００５９】
以上述べた本技術の実施の形態をまとめると以下のようになる。
【００６０】
本電力平準化方法は、処理種別の識別子を含む処理実行要求をユーザ端末から受信した場合、処理種別の識別子と当該処理種別の処理を実行することにより消費される電力である処理消費電力のデータとを対応付けて格納する処理テーブルから、受信した処理種別の識別子に対応する処理消費電力を特定するステップと、ユーザ端末からの処理実行要求に応じて処理を実行し得る複数のサーバの各々について当該サーバが消費している電力であるサーバ消費電力のデータ及び当該サーバに商用電源から供給する最大電力の閾値を格納するサーバテーブルを用いて、特定された処理消費電力をサーバ消費電力に加えても閾値を超過しないという条件を満たすサーバを探索する探索ステップと、探索ステップにおいて条件を満たすサーバが特定された場合には、当該サーバを実行サーバとして決定し、当該実行サーバに処理実行要求を送信する第１決定ステップとを含む。
【００６１】
このように、複数のサーバの各々について、商用電源から供給する電力を閾値以下に抑制すれば、複数のサーバを含むシステム全体に対して商用電源から供給する電力を抑制することができるようになる。
【００６２】
また、上で述べたサーバテーブルに、複数のサーバの各々について当該サーバに電力を供給する給電装置のバッテリー残量のデータがさらに格納されるようにしてもよい。そして、上で述べた探索ステップにおいて条件を満たすサーバが特定されなかった場合には、サーバテーブルを用いて、バッテリー残量が最も多いサーバを実行サーバとして特定し、当該実行サーバに処理実行要求を送信する第２決定ステップをさらに含むようにしてもよい。このように、給電装置を活用することにより、商用電力から供給する電力を閾値以下に抑えることができるようになる。また、バッテリー残量が最も多いサーバを実行サーバとして特定するので、処理を振り分けた結果バッテリーが切れてしまうという可能性を最小限にすることができる。これにより、バッテリーが切れてしまったが為に商用電源から供給する電力を増加させなければならないという事態を回避できるようになる。
【００６３】
また、上で述べたサーバテーブルに、複数のサーバの各々について当該サーバの処理負荷のデータがさらに格納されるようにしてもよい。そして、上で述べた探索ステップにおいて条件を満たすサーバが複数特定された場合には、第１決定ステップにおいて、サーバテーブルを用いて、特定されたサーバのうち処理負荷が最も低いサーバを実行サーバとして決定するようにしてもよい。これにより、商用電源から供給する電力を抑制しつつ、さらにサーバの応答性能の劣化を防ぐことができるようになる。
【００６４】
また、上で述べたサーバテーブルに、複数のサーバの各々について当該サーバの処理負荷のデータがさらに格納されるようにしてもよい。そして、上で述べた第２決定ステップが、探索ステップにおいて条件を満たすサーバが特定されなかった場合には、サーバテーブルを用いて、バッテリー残量が最も多いサーバを特定するステップと、特定されたサーバが複数である場合には、サーバテーブルを用いて、特定されたサーバのうち処理負荷が最も低いサーバを実行サーバとして決定するステップとを含むようにしてもよい。このようにすれば、バッテリーを有効活用して商用電源からサーバに供給する電力を抑制しつつ、さらにサーバの応答性能の劣化を防ぐことができるようになる。
【００６５】
また、商用電源から複数のサーバを含むシステムに供給する最大電力の閾値である全体閾値を、システムに含まれる給電装置のバッテリー容量の総和及びシステムにおいて消費される電力の予測に基づき算出するステップと、サーバテーブルに格納されている、複数のサーバの各々についての閾値を、当該閾値の総和が全体閾値に等しくなるように算出するステップとをさらに含むようにしてもよい。このように、システムの特性に応じて適切な全体閾値が設定されれば、商用電源からシステムに供給する電力を効果的に抑制することができるようになる。
【００６６】
また、上で述べた給電装置が、当該給電装置が電力を供給するサーバの消費電力が閾値を超過した場合には、当該給電装置に含まれるバッテリーから超過分の電力を放電し、当該給電装置が電力を供給するサーバの消費電力が閾値に満たない場合には、当該給電装置に含まれるバッテリーに余剰分の電力を充電するようにしてもよい。このようにバッテリーの充放電を行うことにより、商用電源から供給する電力が閾値を超過することはなく、且つ商用電源から供給する電力を有効に利用することができる。
【００６７】
なお、上記方法による処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
【００６８】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００６９】
（付記１）
処理種別の識別子を含む処理実行要求をユーザ端末から受信した場合、処理種別の識別子と当該処理種別の処理を実行することにより消費される電力である処理消費電力のデータとを対応付けて格納する処理テーブルから、受信した前記処理種別の識別子に対応する処理消費電力を特定するステップと、
前記ユーザ端末からの処理実行要求に応じて処理を実行し得る複数のサーバの各々について当該サーバが消費している電力であるサーバ消費電力のデータ及び当該サーバに商用電源から供給する最大電力の閾値を格納するサーバテーブルを用いて、特定された前記処理消費電力を前記サーバ消費電力に加えても前記閾値を超過しないという条件を満たすサーバを探索する探索ステップと、
前記探索ステップにおいて前記条件を満たすサーバが特定された場合には、当該サーバを実行サーバとして決定し、当該実行サーバに前記処理実行要求を送信する第１決定ステップと、
を含み、コンピュータにより実行される電力平準化方法。
【００７０】
（付記２）
前記サーバテーブルには、前記複数のサーバの各々について当該サーバに電力を供給する給電装置のバッテリー残量のデータがさらに格納されており、
前記探索ステップにおいて前記条件を満たすサーバが特定されなかった場合には、前記サーバテーブルを用いて、バッテリー残量が最も多いサーバを前記実行サーバとして特定し、当該実行サーバに前記処理実行要求を送信する第２決定ステップ
をさらに含む付記１記載の電力平準化方法。
【００７１】
（付記３）
前記サーバテーブルには、前記複数のサーバの各々について当該サーバの処理負荷のデータがさらに格納されており、
前記探索ステップにおいて前記条件を満たすサーバが複数特定された場合には、前記第１決定ステップにおいて、前記サーバテーブルを用いて、特定された前記サーバのうち処理負荷が最も低いサーバを前記実行サーバとして決定する
ことを特徴とする付記１記載の電力平準化方法。
【００７２】
（付記４）
前記サーバテーブルには、前記複数のサーバの各々について当該サーバの処理負荷のデータがさらに格納されており、
前記第２決定ステップが、
前記探索ステップにおいて前記条件を満たすサーバが特定されなかった場合には、前記サーバテーブルを用いて、バッテリー残量が最も多いサーバを特定するステップと、
特定された前記サーバが複数である場合には、前記サーバテーブルを用いて、特定された前記サーバのうち処理負荷が最も低いサーバを前記実行サーバとして決定するステップと、
を含む付記２記載の電力平準化方法。
【００７３】
（付記５）
前記商用電源から前記複数のサーバを含むシステムに供給する最大電力の閾値である全体閾値を、前記システムに含まれる給電装置のバッテリー容量の総和及び前記システムにおいて消費される電力の予測に基づき算出するステップと、
前記サーバテーブルに格納されている、前記複数のサーバの各々についての前記閾値を、当該閾値の総和が前記全体閾値に等しくなるように算出するステップと、
をさらに含む付記１乃至４のいずれか１つ記載の電力平準化方法。
【００７４】
（付記６）
前記給電装置は、
当該給電装置が電力を供給するサーバの消費電力が前記閾値を超過した場合には、当該給電装置に含まれるバッテリーから超過分の電力を放電し、
当該給電装置が電力を供給するサーバの消費電力が前記閾値に満たない場合には、当該給電装置に含まれるバッテリーに余剰分の電力を充電する
ことを特徴とする付記２乃至５のいずれか１つ記載の電力平準化方法。
【００７５】
（付記７）
処理種別の識別子と当該処理種別の処理を実行することにより消費される電力である処理消費電力のデータとを対応付けて格納する処理テーブルと、
ユーザ端末からの処理実行要求に応じて処理を実行し得る複数のサーバの各々について当該サーバが消費している電力であるサーバ消費電力のデータ及び当該サーバに商用電源から供給する最大電力の閾値を格納するサーバテーブルと、
処理種別の識別子を含む処理実行要求を前記ユーザ端末から受信した場合、前記処理テーブルから、受信した前記処理種別の識別子に対応する処理消費電力を特定する消費電力特定部と、
前記サーバテーブルを用いて、特定された前記処理消費電力を前記サーバ消費電力に加えても前記閾値を超過しないという条件を満たすサーバを探索するサーバ探索部と、
前記サーバ探索部により前記条件を満たすサーバが特定された場合には、当該サーバを実行サーバとして決定し、当該実行サーバに前記処理実行要求を送信する通信部と、
を有する電力平準化システム。
【００７６】
（付記８）
処理種別の識別子を含む処理実行要求をユーザ端末から受信した場合、処理種別の識別子と当該処理種別の処理を実行することにより消費される電力である処理消費電力のデータとを対応付けて格納する処理テーブルから、受信した前記処理種別の識別子に対応する処理消費電力を特定するステップと、
前記ユーザ端末からの処理実行要求に応じて処理を実行し得る複数のサーバの各々について当該サーバが消費している電力であるサーバ消費電力のデータ及び当該サーバに商用電源から供給する最大電力の閾値を格納するサーバテーブルを用いて、特定された前記処理消費電力を前記サーバ消費電力に加えても前記閾値を超過しないという条件を満たすサーバを探索する探索ステップと、
前記探索ステップにおいて前記条件を満たすサーバが特定された場合には、当該サーバを実行サーバとして決定し、当該実行サーバに前記処理実行要求を送信する第１決定ステップと、
を、コンピュータに実行させるための電力平準化プログラム。
【符号の説明】
【００７７】
１  ネットワーク    ３  ジョブ振分サーバ
５  平準化制御サーバ    ７  クライアント端末
９  商用電源    １１Ａ，１１Ｂ  ジョブ処理サーバ
１３Ａ，１３Ｂ  給電装置
３１  通信部    ３３  ジョブ振分部
５１  通信部    ５３  管理データ格納部
５５  平準化制御部    ５７  処理結果格納部
５９  ジョブ識別子格納部    ５５１  消費電力特定部
５５３  サーバ特定部    １１１  通信部
１１３  ジョブ実行部    １１５  サーバデータ格納部
１１７  消費電力監視部    １１９  処理負荷監視部
１３０１  通信部    １３０３  バッテリーデータ格納部
１３０５  データ格納部    １３０７  バッテリー残量監視部
１３０９  充放電制御部    １３１１  バッテリー
【図１】
0005601024.tif 000002
【図２】
0005601024.tif 000003
【図３】
0005601024.tif 000004
【図４】
0005601024.tif 000005
【図５】
0005601024.tif 000006
【図６】
0005601024.tif 000007
【図７】
0005601024.tif 000008
【図８】
0005601024.tif 000009
【図９】
0005601024.tif 000010
【図１０】
0005601024.tif 000011
【図１１】
0005601024.tif 000012
【図１２】
0005601024.tif 000013
【図１３】
0005601024.tif 000014
【図１４】
0005601024.tif 000015
【図１５】
0005601024.tif 000016
【図１６】
0005601024.tif 000017
【図１７】
0005601024.tif 000018
【図１８】
0005601024.tif 000019