JP2010097566A - 情報処理装置、及び情報処理システムにおけるバッチ処理の割り当て方法 - Google Patents

情報処理装置、及び情報処理システムにおけるバッチ処理の割り当て方法 Download PDF

Info

Publication number
JP2010097566A
JP2010097566A JP2008270131A JP2008270131A JP2010097566A JP 2010097566 A JP2010097566 A JP 2010097566A JP 2008270131 A JP2008270131 A JP 2008270131A JP 2008270131 A JP2008270131 A JP 2008270131A JP 2010097566 A JP2010097566 A JP 2010097566A
Authority
JP
Japan
Prior art keywords
batch
online
execution
processing
platform
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008270131A
Other languages
English (en)
Inventor
Mai Asai
麻衣 淺井
Keiji Fujii
啓詞 藤井
Hiroshi Hamaguchi
弘志 浜口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2008270131A priority Critical patent/JP2010097566A/ja
Publication of JP2010097566A publication Critical patent/JP2010097566A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Abstract

【課題】オンライン処理とバッチ処理が行われる場合に情報処理システムの処理性能の低下を防ぐ。
【解決手段】バッチ実行基盤301及びオンライン実行基盤303が機能する複数のAP実行サーバ114と接続するバッチスケジュール管理装置102が、待機中のバッチ実行基盤301をバッチ処理要求の割り当て先候補として特定し、これと同じAP実行サーバ114で機能するオンライン実行基盤303の負荷状況に基づき、特定した各バッチ実行基盤301の負荷レベルを決定し、決定した負荷レベルに基づき、候補のバッチ実行基盤301のうちの一つを選択してバッチ処理要求の割り当て先を決定し、決定したバッチ実行基盤301の負荷レベルに応じて同一のAP実行サーバ114で機能するオンライン実行基盤303のオンライン処理要求を調整し、決定したバッチ実行基盤301にバッチ処理要求を割り当てる。
【選択図】図2C

Description

本発明は、情報処理装置、及び情報処理システムにおけるバッチ処理の割り当て方法に関し、とくにオンライン処理とバッチ処理が行われる場合に、処理性能の低下を防ぐための技術に関する。
近年、企業のサーバ保有台数の増大に伴い、サーバの運用管理コストが増大している。この問題を解決するにあたり、サーバ仮想化技術を利用したサーバ集約が図られている。例えば特許文献1には、仮想サーバ上のアプリケーションやオペレーティングシステムで計測された負荷状況に基づき、仮想サーバへの物理リソースの配分を決定し、再構成を行うことが記載されている。また特許文献2には、現行使用率に基づいた物理リソースの動的再割り振り方法について記載されている。
特開2002−202959号公報 特開2004−252988号公報
サーバ集約等を目的として、オンライン処理とバッチ処理が同一のサーバで実行されることがある。この場合、オンライン処理とバッチ処理の間でリソースの競合が頻発するとシステム全体の処理性能が低下することがある。そしてこのような処理性能の低下は、バッチ処理の遅延やオンライン処理のレスポンス遅延等、業務に多大な影響を与えることがある。
本発明は上記課題を解決すべくなされたもので、オンライン処理とバッチ処理が行われる情報処理システムにおいて、情報処理装置、及び情報処理システムにおけるバッチ処理の割り当て方法を提供することを目的とする。
上記目的を達成するための本発明のうちの一つは、バッチ実行基盤及びオンライン実行基盤が機能する複数のサーバと通信可能に接続する情報処理装置であって、
外部装置からバッチ処理要求を受け付ける第1の処理部と、
前記バッチ実行基盤のうちから一つ以上の前記バッチ実行基盤を選択する第2の処理部と、
前記特定したバッチ実行基盤へのリソースの割り当て状況が所定の条件を満たしている場合に、
前記特定したバッチ実行基盤と同じ前記サーバで機能している前記オンライン実行基盤を特定する第3の処理部と、
前記特定したオンライン実行基盤の負荷状況に基づき、前記特定したバッチ実行基盤の負荷レベルを決定する第4の処理部と、
前記負荷レベルに基づいて、前記特定したバッチ実行基盤のうちの一つを選択する第5の処理部と、
前記選択したバッチ実行基盤のうちの一つを前記バッチ処理要求の割り当て先として決定する第6の処理部と、
前記決定した前記バッチ実行基盤の前記負荷レベルに応じて、前記決定したバッチ実行基盤と同じ前記サーバで機能している前記オンライン実行基盤のオンライン処理要求を調整する第7の処理部と、
前記外部装置から受け付けた前記バッチ処理要求を、前記決定したバッチ実行基盤に割り当てる第8の処理部と
を備えることとする。
その他、本願が開示する課題、及びその解決方法は、発明を実施するための最良の形態の欄、及び図面により明らかにされる。
本発明によれば、オンライン処理とバッチ処理が行われる場合に情報処理システムの処理性能の低下を防ぐことができる。
以下、図面を参照しつつ実施の形態について説明する。
=システム構成=
図1Aに実施形態として説明する情報処理システム1の概略的な構成を示している。同図に示すように、この情報処理システム1は、バッチ(Batch)処理要求(リクエスト)を送信するバッチクライアント101、オンライン(Online)処理要求を送信するオンラインクライアント111、バッチクライアント101から送られてくるバッチ処理要求を受け付けるバッチスケジュール管理装置102(情報処理装置)、オンラインクライアント111から送られてくるオンライン処理要求を受け付ける負荷分散装置112、バッチスケジュール管理装置102又は負荷分散装置112から送られてくる要求に応じてバッチ処理又はオンライン処理を実行するAP実行サーバ114、AP実行サーバ114が利用するデータが格納されるストレージ装置131を備えている。
同図に示すように、バッチクライアント101とバッチスケジュール管理装置102、オンラインクライアント111と負荷分散装置112、バッチスケジュール管理装置102とAP実行サーバ114、負荷分散装置112とAP実行サーバ114は、いずれも通信ネットワーク132A〜132Dを介して通信可能に接続されている。通信ネットワーク132A〜132Dは、例えばLAN(Local Area Network)、WAN(Wide Area Network)、インターネット、専用線等である。AP実行サーバ114とストレージ装置131は、FCスイッチ(FC:Fibre Channel)等を用いて構成されるSAN(Storage Area Network)、LAN、WAN、インターネット等を介して通信可能に接続されている。
バッチクライアント101、オンラインクライアント111、バッチスケジュール管理装置102、負荷分散装置112、及びAP実行サーバ114は、いずれもパーソナルコンピュータやワークステーション、メインフレーム等のコンピュータである。図1Bにこれらの装置として用いるコンピュータのハードウエアの一例を示している。同図に示すコンピュータ10は、CPU11、メモリ12(RAM(Random Access Memory)、ROM(Read Only Memory)等)、記憶装置13(ハードディスクや半導体記憶装置(SSD:Solid State Drive)等)、ユーザの操作入力を受け付ける入力装置14(キーボードやマウス等)、出力装置15(液晶モニタ、印字装置等)、他の装置との間の通信を実現する通信インタフェース16(NIC(Network Interface Card、HBA(Host Bus Adapter)等)を備えている。
図1Cにストレージ装置131のハードウエアの一例を示している。このストレージ装置131は、ディスクコントローラ21、キャッシュメモリ22、通信インタフェース23、及びディスク装置24(筐体内蔵型又は外部接続型)を備えている。
ディスクコントローラ21は、CPU及びメモリを備え、ストレージ装置131の機能を実現するための処理を実行する。キャッシュメモリ22には、例えばディスク装置24に書き込まれるデータ、ディスク装置24から読み出されたデータが格納される。ディスク装置24は、一台以上のハードディスク241(物理ディスク)を備える。ディスク装置24は、RAID(Redundant Arrays of Inexpensive (or Independent) Disks)の方式(RAID0〜RAID6)で制御される。
ストレージ装置131は、ディスク装置24の記憶領域により構成される論理的な記憶領域である論理ボリュームをAP実行サーバ114に提供する。ストレージ装置131の具体例として、外部装置と通信するためのチャネル制御部、ハードディスクドライブに対してアクセスを行うディスク制御部、チャネル制御部とディスク制御部との間のデータの受け渡し等に利用されるキャッシュメモリ、装置の各部を通信可能に接続するスイッチなどの通信機構を備えたディスクアレイ装置がある。
=機能説明=
図2AにAP実行サーバ114の機能を示している。同図に示す各機能は、AP実行サーバ114のCPU11が、メモリ12に読み出されているプログラムを実行することにより、又はAP実行サーバ114のハードウエアが備える機能により実現される。同図に示すように、AP実行サーバ114では、ハイパーバイザ(hypervisor)や仮想化プログラムなどにより実現される仮想化機構133、仮想化機構133により実現される一つ以上の仮想サーバ120、各仮想サーバ120において動作するオペレーティングシステム(OS302)、及びJava(登録商標)のJ2EE実行基盤(J2EE:Java 2 Enterprise Edition)として生成される実行基盤(バッチ実行基盤301とオンライン実行基盤303)が機能している。仮想化機構133は仮想サーバ120へのリソース(CPU11、メモリ12、論理ボリューム)の割り当てを行う。
図2Bに負荷分散装置112が備える機能を示している。負荷分散機構113は、負荷分散装置112のCPU11が、メモリ12に読み出されているプログラムを実行することにより、または負荷分散装置112のハードウエアが備える機能により実現される。同図に示すように、負荷分散装置112では、負荷分散機構113(ロードバランサ)が機能している。負荷分散機構113は、オンライン処理要求に対応する処理を、各AP実行サーバ114のオンライン実行基盤303に割り当てる。このとき、負荷分散機構113は、処理が各AP実行サーバ114の各オンライン実行基盤303に適切に分散されるようにする。
図2Cにバッチスケジュール管理装置102が備える機能、及びバッチスケジュール管理装置102で管理されるテーブルを示している。尚、同図に示す機能は、バッチスケジュール管理装置102のCPU11が、メモリ12に読み出されているプログラムを実行することにより、又はバッチスケジュール管理装置102のハードウエアが備える機能により実現される。
同図に示すように、バッチスケジュール管理装置102は、バッチリクエスト管理部107、最適配置管理部108、オンライン負荷分散管理部109、及び仮想化機構管理部110を備えている。
バッチリクエスト管理部107(第1の処理部)は、バッチ処理要求を受け付ける。バッチ処理要求は、ユーザの操作入力に応じてバッチクライアント101から送られてくる場合もあるし、バッチスケジューラ等により自動的に生成される場合もある。バッチリクエスト管理部107は、バッチ処理要求を受け付けるとそれを後述のバッチAP管理テーブル208に登録する。バッチリクエスト管理部107は、バッチ処理の実行時間が到来すると、バッチAP管理テーブル208に登録されているバッチ処理要求を(例えば予め設定された優先度順)にバッチリクエストキュー207に登録し、バッチリクエストキュー207に蓄積されている各バッチ処理要求に対応するバッチ処理の実行要求を順次最適配置スケジュール部201に送出する。
最適配置管理部108(第1の処理部〜第8の処理部、第10の処理部〜第12の処理部)は、バッチ実行基盤301へのバッチ処理の割り当てを管理する。同図に示すように、最適配置管理部108は、最適配置スケジュール部201、実行基盤決定部202、バッチ完了処理部203、及び再配置管理部204を備える。
最適配置スケジュール部201は、バッチリクエスト管理部107から送られてくるバッチ処理の実行要求を受け付けると、受け付けたバッチ処理の実行要求をAP実行サーバ114のバッチ実行基盤301に送出する(バッチ処理をバッチ実行基盤301に割り当てる)。また最適配置スケジュール部201は、受け付けたバッチ処理のバッチ実行基盤301の決定要求を実行基盤決定部202に送出する。
実行基盤決定部202(第5の処理部、第6の処理部、第11の処理部)は、最適配置スケジュール部201から送出されるバッチ実行基盤301の決定要求に応じてバッチ実行基盤301の決定を行う。
バッチ完了処理部203は、バッチ処理が完了した際、所定のオンライン実行基盤303について実施していたオンライン処理要求の調整を停止し、当該バッチ処理の実行前の状態に戻す。このとき、バッチ完了処理部203は、後述するバッチ実行基盤管理テーブル209の該当のバッチ実行基盤301の状況503に「待機中」を格納する。
再配置管理部204(第9の処理部)は、各AP実行サーバ114のバッチ実行基盤301のバッチ処理の実行状況を監視する。再配置管理部204は、締切時刻までに処理が完了しないことが予測される場合、オンライン処理要求の調整を行う。上記調整には、オンライン処理要求を制限(オンライン処理要求のキューイング数を減らす)する第1の方法と、オンライン処理要求を他のAP実行サーバ114の他のオンライン実行基盤に移動する第2の方法とがある。第1の方法、及び第2の方法の詳細については後述する。
オンライン負荷分散管理部109は、負荷分散装置112の負荷分散機構113から負荷分散状況を取得し、取得した負荷分散状況に基づきバッチ実行基盤301の負荷レベル(後述)を決定する。またオンライン負荷分散管理部109は、負荷分散機構113にオンライン処理要求の調整を依頼する。またオンライン負荷分散管理部109は、仮想化機構管理部110に対し、仮想サーバ120へのリソースの割り当て変更を要求する。同図に示すように、オンライン負荷分散管理部109は、負荷分散状況取得部205、及び負荷分散管理部206を備える。
負荷分散状況取得部205は、最適配置スケジュール部201から送られてくるバッチ実行基盤301の負荷レベルの問い合わせ要求を受け付けると、負荷分散装置112の負荷分散機構113から負荷分散状況を取得し、取得した負荷分散状況に基づきバッチ実行基盤301の負荷レベルを決定する。そして負荷分散状況取得部205は、決定した負荷レベルを最適配置スケジュール部201に返す。
負荷分散管理部206は、負荷分散装置112の負荷分散機構113にオンライン処理要求の調整要求を行い、仮想化機構管理部110に対し、仮想サーバ120へのリソースの割り当ての変更を要求する。
仮想化機構管理部110は、仮想化機構133と通信することにより仮想サーバ120へのリソースの割り当てを変更する。また仮想化機構管理部110は、後述するワークロード管理テーブル212を管理する。
図3は以下の説明で用いる情報処理システム1の構成である。同図に示すように、この情報処理システム1は、通信ネットワーク132を介して通信可能に接続される、バッチスケジュール管理装置102、負荷分散装置112、及び3台のAP実行サーバ114a,114b,114cを含んで構成されている。尚、同図ではバッチスケジュール管理装置102に接続するバッチクライアント101、及び負荷分散装置112に接続するオンラインクライアント111は省略している。
同図に示すように、AP実行サーバ114aには2つの仮想サーバ120a−1、120a−2が存在する。仮想サーバ120a−1ではバッチ実行基盤301aが機能し、仮想サーバ120a−2ではオンライン実行基盤303aが機能する。
AP実行サーバ114bには2つの仮想サーバ120b−1、120b−2が存在する。仮想サーバ120b−1ではバッチ実行基盤301bが機能し、仮想サーバ120b−2ではオンライン実行基盤303bが機能する。
AP実行サーバ114cには2つの仮想サーバ120c−1、120c−2が存在する。このうち仮想サーバ120c−1ではバッチ実行基盤301cが機能し、仮想サーバ120c−2ではオンライン実行基盤303cが機能する。
以上のように、図3の情報処理システム1における各AP実行サーバ114a〜114cの夫々には、いずれも2つの仮想サーバ120a−1,120a−2,120b−1,120b−2,120c−1,120c−2が存在しており、一方の仮想サーバ120a−1,120b−1,120c−1ではバッチ実行基盤301a,301b,301cが機能しており、他方の仮想サーバ120a−2,120b−2,120c−2ではオンライン実行基盤303a,303b,303cが機能している。
=テーブル説明=
次にバッチスケジュール管理装置102において管理されるテーブルについて詳細に説明する。
図4にバッチAP管理テーブル208の一例を示している。バッチAP管理テーブル208には、バッチスケジュール管理装置102が受け付けたバッチ処理要求に応じて実行されるバッチ処理が管理される。同図に示すように、バッチAP管理テーブル208は、ジョブ識別子401、AP名402、AP位置403、優先度404、及び締切時刻405の各項目を有する複数のレコードからなる。
ジョブ識別子401には、バッチ処理ごとに付与されるジョブの識別子が格納される。AP名402には、バッチ処理の名称(アプリケーション名)が格納される。AP位置403には、バッチアプリケーション名402に該当するアプリケーションを実現するためのプログラムが格納されている情報処理システム1内の位置を特定する情報(ネットワークアドレス、ディレクトリ名等)が格納される。優先度404には、バッチ処理(ジョブ)の実行優先度が格納される。締切時刻405には、バッチ処理の締切時刻(バッチ処理が完了していなければならない時刻)が格納される。
図5にバッチ実行基盤管理テーブル209の一例を示している。バッチ実行基盤管理テーブル209には、バッチ実行基盤301a,301b,301cに関する情報が管理される。バッチ実行基盤管理テーブル209の各レコードは、バッチ実行基盤識別子501、ジョブ識別子502、状況503、仮想サーバ識別子504、開始時刻505、締切時刻506、残り時間507、終了件数508、及び全件数509の各項目からなる。
このうちバッチ実行基盤識別子501には、バッチ実行基盤301a、301b,301cを特定する識別子が格納される。この識別子は全てのAP実行サーバ114及び仮想サーバ120において固有の値である。
ジョブ識別子502には、該当のバッチ実行基盤301で現在実行されているジョブ(各バッチ処理に対応)の識別子が格納される。
状況503には、該当のバッチ実行基盤301の現在の状況が格納される。例えばバッチ処理を実行中の場合は「実行中」が、バッチ処理が実行されておらず新たなバッチ処理の実行要求を待機している状況であれば「待機中」が格納される。
仮想サーバ識別子504には、該当のバッチ実行基盤301を実現している仮想サーバ120の識別子(仮想サーバ識別子)が格納される。
開始時刻505には、該当のバッチ実行基盤301で現在実行中のバッチ処理の開始時刻が格納される。
締切時刻506には、該当のバッチ実行基盤301で実行されているバッチ処理の締切時刻が格納される。
残り時間507には、現在時刻から締切時刻506までの残り時間が格納される。終了件数508には、現在実行中のバッチ処理を開始してから現在までの入力データの処理件数(例えばトランザクション数)が格納される。
全件数509には、現在実行中のバッチ処理が処理しなければならない入力データの全件数が格納される(全件数−終了件数=残り件数)。
図6にオンライン実行基盤管理テーブル210の一例を示している。オンライン実行基盤管理テーブル210には、各オンライン実行基盤303a,303b,303cに関する情報が管理される。同図に示すように、オンライン実行基盤管理テーブル210の各レコードは、オンライン実行基盤識別子601、状況602、及び仮想サーバ識別子603の各項目からなる。
オンライン実行基盤識別子601には、オンライン実行基盤303a,303b,303cを特定する識別子が格納される。この識別子は全てのAP実行サーバ114及び仮想サーバ120において固有の値である。
状況602には、該当のオンライン実行基盤303の現在の状況(状態)が格納される。例えばオンライン処理を実行中の場合は「実行中」が、オンライン処理が実行されていない場合は「停止中」が格納される。
仮想サーバ識別子603には、該当のオンライン実行基盤303を実現している仮想サーバ120の識別子(仮想サーバ識別子)が格納される。
図7に仮想サーバ管理テーブル211の一例を示している。仮想サーバ管理テーブル211には、各仮想サーバ120に現在割り当てられているリソースが管理される。仮想サーバ管理テーブル211の各レコードは、AP実行サーバ識別子701、仮想サーバ識別子702、割り当てリソース703、及びCPU占有状況704の各項目からなる。
AP実行サーバ識別子701には、AP実行サーバ114の識別子が格納される。
仮想サーバ識別子702には、仮想サーバ識別子が格納される。
割り当てリソース703には、該当の仮想サーバ120に現在割り当てられているリソースを示す情報が格納される。例えば割り当てリソース703には、仮想サーバ120に現在割り当てられているCPU11、仮想サーバ120に現在割り当てられているメモリ12の容量、現在割り当てられている通信インタフェース16の種類や数、仮想サーバ120に現在割り当てられている記憶装置(又は論理ボリューム)等が格納される。
尚、同図ではCPU11をグループ単位で仮想サーバ120に割り当てているが、必ずしもグループ単位で割り当てなくてもよい。以下の説明では1つ以上のCPU11を含んで構成されるグループをCPUグループと称する。ユーザやオペレータ等は、CPU11を任意にグループ分けして登録しておくことができる。
CPU占有状況704には、各仮想サーバ120のCPU11の占有状況(CPU占有状況)が格納される。CPU占有状況とは、各仮想サーバ120が自身に割り当てられているCPU11(又はCPUグループ)を「占有」しているか、或いは他の仮想サーバ120と「共有」しているかを示す情報である。CPU占有状況は、基本的にユーザやオペレータ等により設定される。ある仮想サーバ120がCPU11を「占有」している場合、他の仮想サーバ120はそのCPU11を使用することは無いが、「共有」の場合はそのCPU11を他の仮想サーバ120が同時に使用することがあり得る。尚、本実施形態では「擬似占有」という用語を使う場合があるが、「擬似占有」とは「共有」に設定されているCPU11が一時的に特定の仮想サーバ120のみによって使用されている状況をいう。「擬似占有」の状態は、例えば他の仮想サーバ120の負荷が上昇した場合に解除され、そのCPU11はこれを「擬似占有」していた仮想サーバ120と当該他の仮想サーバ120との間で共有される。尚、本実施形態では複数の仮想サーバ120によって「占有」又は「共有」されるリソースの一例としてCPU11を挙げているが、「占有」又は「共有」されるリソースは必ずしもCPU11に限定されない。
図8にワークロード管理テーブル212の一例を示している。ワークロード管理テーブル212には、各仮想サーバ120のリソースの現在の利用状況(ワークロード)が管理される。同図に示すように、ワークロード管理テーブル212の各レコードは、AP実行サーバ識別子801、仮想サーバ識別子802、CPU割当量803、物理CPU使用率804、及び実行処理待ち数805の各項目からなる。
AP実行サーバ識別子801には、AP実行サーバ114の識別子が格納される。
仮想サーバ識別子802には、仮想サーバ識別子が格納される。
CPU割当量803には、その仮想サーバ120への現在のCPU11の割当量(CPU割当量)が格納される。尚、CPU割当量は、例えば仮想サーバ120に割り当てられているCPUグループの使用可能時間として把握される。
物理CPU使用率804には、CPU11の使用率(物理CPU使用率)が格納される。物理CPU使用率とは、そのAP実行サーバ114が有する全てのCPU11の能力に対する現在の使用量である。物理CPU使用率はAP実行サーバ114の現在の負荷の指標となる。
実行処理待ち数805には、該当の仮想サーバ120の現在の処理待ち数が格納される。処理待ち数は、例えば各仮想サーバ120が仮想化機構133に発行した処理命令のうち、仮想化機構133上で処理待ち状態になっている処理命令の数(タスク数)によって把握される。
図9にオンライン負荷管理テーブル213の一例を示している。オンライン負荷管理テーブル213には、各AP実行サーバ114のオンライン実行基盤303で実行されるオンラインアプリケーションに関する情報が管理される。同図に示すように、オンライン負荷管理テーブル213の各レコードは、実行AP901、リクエスト最低保証値902、及びアクセス振分け先リスト903の各項目からなる。
実行AP901には、オンライン実行基盤303で実行されるオンラインアプリケーションの識別子(アプリケーション名)が格納される。
リクエスト最低保証値902には、該当のアプリケーションについて最低限保証しなければならないオンライン処理要求のキューイング数(リクエスト最低保証値)が格納される。リクエスト最低保証値を超えるオンライン処理要求があった場合はオンラインクライアント111にエラーが返される可能性がある。
アクセス振分け先リスト903には、そのオンラインアプリケーションを複数の仮想サーバ120に負荷分散しているときの割り当て先の仮想サーバ120の識別子(仮想サーバ識別子)が格納される。
=処理説明=
図10はバッチスケジュール管理装置102の最適配置スケジュール部201により行われる処理(以下、最適配置スケジュール処理(S1000)と称する。)を説明するフローチャートである。この処理は、例えば最適配置スケジュール部201が、バッチリクエスト管理部107等の要求元からバッチ処理の実行要求を受け付けた場合に行われる。尚、以下の説明において、符号の前に付した「S」の文字はステップを意味する。以下、同図とともに最適配置スケジュール処理(S1000)について説明する。
まずS1001において、最適配置スケジュール部201は、割り当て要求を受け付けた旨を要求元に通知する。
S1002では、最適配置スケジュール部201は、バッチ実行基盤管理テーブル209を参照し、各AP実行サーバ114のバッチ実行基盤301のうち、「待機中」のもの(状況503が「待機中」であるもの)を特定(選択)する。尚、「待機中」のバッチ実行基盤301が複数存在する場合には、最適配置スケジュール部201はそれら全てを特定する。図5のバッチ実行基盤管理テーブル209の場合には3行目のレコード(「バッチ実行基盤c」のレコード)が特定される。
S1003では、最適配置スケジュール部201は、バッチ実行基盤管理テーブル209と仮想サーバ管理テーブル211を参照し、S1002で特定したバッチ実行基盤301のCPU占有状況を取得する。具体的には、最適配置スケジュール部201は、バッチ実行基盤管理テーブル209からS1002で特定したバッチ実行基盤301が実現されている仮想サーバ120(仮想サーバ識別子)を取得する。そして取得した仮想サーバ120のCPU占有状況を仮想サーバ管理テーブル211から取得することによりバッチ実行基盤301の占有状況を調べる。例えば図5の場合は仮想サーバ識別子として3行目の「仮想サーバ5」を取得し、仮想サーバ管理テーブル211から「仮想サーバ5」のCPU占有状況を取得することにより、S1002で特定したバッチ実行基盤301の占有状況を取得する。
以上のようにしてCPU占有状況を取得した結果、S1002で特定したバッチ実行基盤301のうちCPU11を占有しているバッチ実行基盤301があれば(S1003:ある)、S1006に進む。CPU11を占有しているバッチ実行基盤301がなければ(S1003:ない)、S1004に進む。
S1004では、最適配置スケジュール部201は、オンライン実行基盤管理テーブル210を参照し、S1002で特定した待機中のバッチ実行基盤301と同一のAP実行サーバ114で動作しているオンライン実行基盤303を特定する。例えば図6のオンライン実行基盤管理テーブル210の場合、「仮想サーバ5」が存在するAP実行サーバ114(仮想サーバ管理テーブル211から取得)に存在する「仮想サーバ6」において機能している「オンライン実行基盤c」(オンライン実行基盤管理テーブル210から取得)が特定される。
S1005では、最適配置スケジュール部201は、オンライン負荷分散管理部109の負荷分散状況取得部205に、S1004で特定したオンライン実行基盤303のオンライン処理要求の負荷レベル(つまりS1002で特定したバッチ実行基盤301の負荷レベル)を問い合わせる。尚、負荷レベルの意味、及びS1005の処理の詳細については後述する。
S1006では、最適配置スケジュール部201は、実行基盤決定部202に対してバッチ実行基盤301の決定要求を送出する。尚、この決定要求に応じて実行基盤決定部202が行う処理の詳細については後述する。
S1007では、最適配置スケジュール部201は、実行基盤決定部202から、決定したバッチ実行基盤301とともにバッチ実行基盤の決定完了通知を取得する。
続くS1008において、最適配置スケジュール部201は、バッチ実行基盤管理テーブル209及び仮想サーバ管理テーブル211を参照し、S1006で決定したバッチ実行基盤301のCPU占有状況を調べる。例えば図5の例の場合、決定したバッチ実行基盤が「バッチ実行基盤c」であれば、「バッチ実行基盤c」が存在する「仮想サーバ5」のCPU占有状況を仮想サーバ管理テーブル211から取得し、その結果「共有」(占有でない)と判断される。
バッチ実行基盤301がCPU11を「占有」している場合には(S1008:占有)、S1011に進み、「占有」していない場合(「共有」の場合)には(S1008:共有)、S1009に進む。
S1009では、最適配置スケジュール部201は、負荷分散管理部206にオンライン処理要求の調整を要求する。このとき、最適配置スケジュール部201はS1005で負荷分散状況取得部205に問い合わせて取得した負荷レベルを負荷分散管理部206に渡す。
尚、このようにバッチ実行基盤301がCPU11を「占有」していない場合にオンライン処理要求の調整を要求するのは、CPU11を「占有」していない場合はできるだけオンライン処理要求を調整してバッチ処理のためのリソースが確保されるようにするためである。
S1010では、最適配置スケジュール部201は、負荷分散管理部206からオンライン処理要求の調整完了通知を取得する。
S1011では、最適配置スケジュール部201は、決定したバッチ実行基盤301に対して、バッチ処理の実行要求を出す(バッチ処理要求の割り当てを行う)。
S1012では、最適配置スケジュール部201が、バッチ実行基盤301がバッチ処理の実行要求を受け付けたことを確認し、バッチ実行基盤管理テーブル209を更新する(開始時刻505及び残り時間507に値を格納する)。
以上に説明したように、最適配置スケジュール部201は、要求元からバッチ処理要求を受け付けると、待機中のバッチ実行基盤301のCPU占有状況を調べる。そして受け付けたバッチ処理要求についてのバッチ処理をCPU11を占有していないバッチ実行基盤301にさせる場合、オンラインの負荷レベルに応じて自動的にバッチ実行基盤301のオンライン処理要求を調整する。このように、本実施形態の情報処理システム1においては、バッチ処理が締切時刻までに終了するように自動的に調整がなされる。
図11は図10のフローチャートにおけるオンライン負荷レベル確認処理(S1005)を説明するフローチャートである。以下、同図とともにオンライン負荷レベル確認処理(S1005)について詳細に説明する。
まずS1101において、負荷分散状況取得部205は、オンライン実行基盤管理テーブル210を参照し、S1004で特定されたオンライン実行基盤303(図5、図6の場合は「オンライン実行基盤c」))が存在する仮想サーバ120の仮想サーバ識別子を取得する。例えば図5、図6の場合は仮想サーバ識別子として「仮想サーバ6」を取得する。
次のS1102では、負荷分散状況取得部205は、オンライン負荷管理テーブル213のアクセス振分け先リスト903に、S1101で特定した仮想サーバ120が格納されているオンラインアプリケーションの識別子(実行AP901の内容)と、リクエスト最低保証値とを取得する(図5の場合は「仮想サーバ6」に対応する実行AP901の内容である「購買」と、リクエスト最低保証値「5」を取得)。
S1103では、負荷分散状況取得部205は、負荷分散装置112の負荷分散機構113から、当該オンラインアプリケーションの負荷分散の状況を取得する。このとき、負荷分散状況取得部205は、S1102で取得したオンラインアプリケーションの識別子、リクエスト最低保証値、及びS1101で特定した仮想サーバ識別子を負荷分散機構113に渡す。
ここでこの問い合わせに対して応答される負荷分散状況には、一方のオンライン実行基盤303に割り当てているオンライン処理要求を全て他のオンライン実行基盤303に割り当て直すことにより一方のオンライン実行基盤303の処理を停止させる(以下、説明の便宜上、「オンライン処理要求の移動」と呼ぶ場合がある。)ことができるかどうか、またそのためにオンライン処理要求の受け付けを制限する必要があるかどうかを決定するのに必要な情報が含まれる。
続くS1104において、負荷分散状況取得部205は、S1103で取得したオンラインアプリケーションの負荷分散状況に基づき、以下のようにしてバッチ実行基盤301の負荷レベルを決定する。
即ち、オンライン処理要求を制限することなくオンライン処理要求を他のオンライン実行基盤303に移動することができるオンラインアプリケーションが実行されているオンライン実行基盤303と同居する(同じAP実行サーバ114で機能する)バッチ実行基盤301の負荷レベルを「1」(第1のレベル)とする。
またオンライン処理要求を制限すれば、オンライン処理要求を他のオンライン実行基盤303に移動することができるオンラインアプリケーションが実行されているオンライン実行基盤303と同居するバッチ実行基盤301の負荷レベルを「2」(第2のレベル)とする。尚、リクエスト最低保証値までオンライン処理要求を制限しなくてもオンライン処理要求を他のオンライン実行基盤303に移動可能な場合も負荷レベルは「2」とする。
またオンライン処理要求の最低保証値以下とならない限界までオンライン処理要求を制限しても、オンライン処理要求を他のオンライン実行基盤303に移動することができないオンラインアプリケーションが実行されているオンライン実行基盤303と同居するバッチ実行基盤301の負荷レベルを「3」(第3のレベル)とする。
尚、以上の判断において、リクエスト最低保証値以下となるようなオンライン処理要求の制限は禁止される。
S1105では、負荷分散状況取得部205は、S1104で決定したオンラインの負荷レベルを呼出元に返す。
図12は図10のフローチャートにおけるバッチ実行基盤決定処理(S1006)を説明するフローチャートである。
S1201では、実行基盤決定部202が、S1003で特定したバッチ実行基盤301のうちCPU11を「占有」しているものがあるか否かを判断する。「占有」しているものがある場合には(S1201:ある)、S1206に進み、「占有」しているものがない場合には(S1201:ない)、S1202に進む。
S1202では、実行基盤決定部202は、S1003で特定したバッチ実行基盤301のうち負荷レベルが「1」のバッチ実行基盤301があるか否かを判断する。負荷レベルが「1」のバッチ実行基盤301があれば(S1202:ある)、S1206に進み、なければ(S1202:ない)、S1203に進む。
S1203では、S1003で特定したバッチ実行基盤301のうち負荷レベルが「2」のバッチ実行基盤301があるか否かを判断する。負荷レベルが「2」のバッチ実行基盤301があれば(S1203:ある)、S1206に進み、なければ(S1203:ない)、S1204に進む。
S1204では、実行基盤決定部202は、負荷レベルが「3」のバッチ実行基盤301があるか否かを判断する。負荷レベルが「3」のバッチ実行基盤301があれば(S1204:ある)、S1206に進み、なければ(S1204:ない)、S1205に進む。
尚、負荷レベルが「3」のバッチ実行基盤301がある場合とは、バッチ実行基盤301と対になるオンライン実行基盤303のオンライン処理要求を制限しても擬似占有とすることはできない(例えばリクエスト最低保証値の制限によりバッチ実行基盤301にCPU11を擬似占有させることができない場合)が、オンライン処理要求を制限することはできる場合(リクエスト最低保証値までは制限できる場合)である。また負荷レベルが「3」のバッチ実行基盤301がない場合とは、オンライン処理要求を制限することすらできない場合(例えばオンライン実行基盤303のリクエスト最低保証値以下とならないようにオンライン実行基盤303に十分にリソースを確保しておく必要がある場合)である。
S1205では、実行基盤決定部202は、ユーザやオペレータ等のバッチ処理の管理者にバッチ処理要求を締切時刻までに処理することができない旨を通知し、その後は処理が終了する。この通知は、例えばバッチクライアント101やAP実行サーバ114の出力装置15にその旨のメッセージを出力することにより行う。
このように負荷レベルが「1」〜「3」のバッチ実行基盤301が存在しない場合に管理者に通知するようにしているのは、現在のAP実行サーバ114の状況下でバッチ処理を実行しても殆どリソースを使用することができず、締切時刻までにバッチ処理が終了しない可能性が高いため、事前に管理者に知らせておく必要があるからである。このように、本実施形態の情報処理システム1によれば、バッチ処理の実行前に締切時刻までに終了するか否かが管理者に通知されるので、管理者は事前にリソースを増強する等のバッチ処理のための対策を講じることができる。
S1206では、実行基盤決定部202は、該当するバッチ実行基盤301が複数存在するか否かを判断する。複数存在する場合には(S1206:YES)、S1207に進み、該当するバッチ実行基盤301が1つしかない場合には(S1206:NO)、S1208に進む。
S1207では、実行基盤決定部202は、複数のバッチ実行基盤301の夫々が機能している仮想サーバ120の処理能力(バッチ実行基盤301の処理能力)を比較する。この比較は、例えば仮想サーバ管理テーブル211やワークロード管理テーブル212を利用して行う。例えば実行基盤決定部202は、割り当てリソース703に格納されているリソースと現在の処理負荷とを比較し、その結果リソースに余裕がある程、その仮想サーバ120の処理能力は高いと判断する。またワークロード管理テーブル212の物理CPU804に格納されている使用率が低い程、その仮想サーバ120の処理能力は低いと判断する。
S1208では、実行基盤決定部202は、バッチリクエスト管理部107から受け付けたバッチ処理要求を割り当てるバッチ実行基盤301を決定する(バッチ処理要求の割り当て先となるバッチ実行基盤301を決定する)。該当するバッチ実行基盤301が一つしかない場合、実行基盤決定部202はそのバッチ実行基盤301を割り当て先として決定するが、複数のバッチ実行基盤301が存在する場合はS1207の比較結果に基づきバッチ実行基盤を決定する。このように該当するバッチ実行基盤301が複数存在する場合には(S1206:YES)、そのうちの処理能力の高いバッチ実行基盤301が自動的に選択される。尚、この場合において、処理能力の高いバッチ実行基盤301を選択するのではなく、例えばバッチAP管理テーブル208の優先度404の内容や締切時刻405の内容に応じて相応しいものを選択するようにしてもよい。
続くS1209において、実行基盤決定部202は、バッチ実行基盤管理テーブル209の内容を更新する(決定したバッチ実行基盤301の状況503に「実行中」を格納する)。
図13は図10のフローチャートにおけるオンライン処理要求調整処理(S1009)を説明するフローチャートである。
S1301では、負荷分散管理部206が、S1006で決定したバッチ実行基盤301の負荷レベルを取得する。ここで負荷レベルが「2」又は「3」であれば(S1301:2,3)、S1302に進み、負荷レベルが「1」であれば(S1301:1)、S1305に進む。
S1302では、負荷分散管理部206は、負荷分散装置112の負荷分散機構113に対し、S1006で決定したバッチ実行基盤301と同居しているオンライン実行基盤303に対するオンライン処理要求の制限を要求する。
S1303では、負荷分散管理部206が負荷分散機構113からオンライン処理要求の制限を行った旨の完了通知を取得する。
S1304では、S1006で決定したバッチ実行基盤301の負荷レベルに応じて処理が分岐し、負荷レベルが「2」の場合は(S1304:YES)、S1305に進み、負荷レベルが「3」の場合は(S1304:NO)、S1308に進む。
S1305において、負荷分散管理部206は、負荷分散機構113に対し、S1006で決定したバッチ実行基盤301と同居するオンライン実行基盤303に割り当てているオンライン処理要求を、全て他のAP実行サーバ114で機能する他のオンライン実行基盤303に割り当てるように(移動するように)要求する。
S1306では、負荷分散管理部206は、負荷分散機構113からオンライン処理要求の移動が完了した旨の通知を取得する。
S1307では、負荷分散管理部206は、上記移動の結果を、オンライン負荷管理テーブル213のアクセス振分け先リスト903に反映する。
S1308では、負荷分散管理部206は、オンライン処理要求の移動後に各仮想サーバ120に生じる負荷を予測する。そして負荷分散管理部206は、各AP実行サーバ114に存在する各仮想サーバ120のリソース量が、上記予測した負荷に応じて適切に割り当てられるように、仮想化機構管理部110にリソースの割り当て変更要求を送出する。このように、本実施形態の情報処理システム1にあっては、オンライン処理要求の移動後の負荷を予測して適宜自動的にリソースの再割り当てがなされる。このため、情報処理システム1全体として常時適切なリソースの割り当てがなされることとなる。
S1309では、負荷分散管理部206が、仮想化機構管理部110がリソースの割り当て変更要求を受け付けた旨の通知を取得する。
尚、オンラインアプリケーションの処理への影響を考慮し、決定したバッチ実行基盤301と同居するオンライン実行基盤303のオンライン処理要求を制限しようとする際、負荷分散管理部206が、例えば優先度の低いバッチ処理はオンライン処理要求の制限やオンライン処理要求の移動を行わないようにする等、バッチアプリケーションに設定されている優先度等に基づきオンライン処理要求を制限するか否かを最終決定するようにしてもよい。またバッチアプリケーションの優先度とオンラインアプリケーションの優先度とを適宜比較し、バッチ処理の優先度がオンラインアプリケーションの優先度より低ければリクエストの制限を行わないように制御してもよい。
ところで、以上のようにして決定されたバッチ実行基盤301でバッチ処理が開始された後、再配置管理部204はバッチ処理の進捗状況をリアルタイム(又は適度なインターバル)に監視する。そして再配置管理部204は、必要な場合はオンライン処理要求の再調整を実行する。図14はこの再調整に関して行われる処理(再配置管理処理(S1400))を説明するフローチャートである。以下、同図とともに説明する。
上記監視に際し、まず再配置管理部204は、バッチ処理を実行しているバッチ実行基盤301から現在のバッチ処理の進捗状況を取得し(S1401)、バッチ実行基盤管理テーブル209に取得したバッチ進捗状況を反映する(S1402)。
S1403では、再配置管理部204が、バッチ処理の進捗状況から処理の終了予定時刻を求める。例えば再配置管理部204は、バッチ実行基盤管理テーブル209の開始時刻505から現在時刻までの経過時間と、(現在までの)終了件数508とに基づき、単位時間あたりの処理件数(以下、傾きと称する。)を求める。そして求めた傾きから、バッチ実行基盤管理テーブル209の全件数509の処理終了時刻を予測する。
S1404において、再配置管理部204は、S1403で求めた予測した処理終了時刻とバッチ実行基盤管理テーブル209の締切時刻506とを比較してバッチ処理が締切時刻までに終了するか否かを判断する。終了すると判断した場合には(S1404:YES)、(とくに調整の必要はないため)処理を終了する。処理が終了しないと判断した場合には(S1404:NO)、S1405に進む。
S1405では、再配置管理部204が、当該バッチ処理を実行しているバッチ実行基盤301がCPU11を占有しているか否かを判断する。占有している場合には(S1405:YES)、S1407に進み、占有していない場合には(S1405:NO)、S1408に進む。
S1407では、再配置管理部204が、締切時刻までに処理が終了しない可能性がある旨を管理者に通知する。即ちCPU11を占有しているにも拘わらず処理が終了しない可能性があるため、この場合はその旨を管理者に通知してリソースの増強等の必要な対策を講じるよう促す。S1407の後は処理が終了する。
S1408からS1410は、夫々、図10のS1004、S1005、及びS1009に類似する処理である。
S1408では、再配置管理部204は、当該バッチ処理を実行しているバッチ実行基盤301と同一のAP実行サーバ114に存在するオンライン実行基盤303を特定する。
S1409では、再配置管理部204は、特定したオンライン実行基盤303のオンライン負荷レベルを確認することにより、当該バッチ実行基盤301の負荷レベルを決定する。
S1410では、再配置管理部204は、負荷レベルに応じて負荷分散管理部206にリクエストの調整を要求する。
S1411では、再配置管理部204は、実行基盤決定部202から負荷分散管理部206からオンライン処理要求の調整完了通知を取得する。その後は処理が終了する。
以上のように、再配置管理部204は、S1405においてバッチ実行基盤301がCPU11を占有していないと判断した場合(S1405:NO)、負荷分散管理部206に自動的にオンライン処理要求の調整を依頼する。このため、バッチ実行基盤301のためのリソースが自動的に確保される。
ところで、以上の実施形態の説明は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明はその趣旨を逸脱することなく、変更、改良され得ると共に本発明にはその等価物が含まれることは勿論である。
情報処理システム1の概略的な構成を示す図である。 バッチスケジュール管理装置102等として用いるコンピュータのハードウエアの一例である。 ストレージ装置131のハードウエアの一例である。 AP実行サーバ114の機能を示す図である。 負荷分散装置112が備える機能を示す図である。 バッチスケジュール管理装置102が備える機能を示す図である。 情報処理システム1の構成例を示す図である。 バッチAP管理テーブル208の一例を示す図である。 バッチ実行基盤管理テーブル209の一例を示す図である。 オンライン実行基盤管理テーブル210の一例を示す図である。 仮想サーバ管理テーブル211の一例を示す図である。 ワークロード管理テーブル212の一例を示す図である。 オンライン負荷管理テーブル213の一例を示す図である。 最適配置スケジュール処理(S1000)を説明するフローチャートである。 オンライン負荷レベル確認処理(S1005)を説明するフローチャートである。 バッチ実行基盤決定処理(S1006)を説明するフローチャートである。 オンライン処理要求調整処理(S1009)を説明するフローチャートである。 再配置管理処理(S1400)を説明するフローチャートである。
符号の説明
101 バッチクライアント
102 バッチスケジュール管理装置
107 バッチリクエスト管理部
108 最適配置管理部
109 オンライン負荷分散管理部
110 仮想化機構管理部
111 オンラインクライアント
112 負荷分散装置
113 負荷分散機構
114 AP実行サーバ
201 最適配置スケジュール部
202 実行基盤決定部
203 バッチ完了処理部
204 再配置管理部
205 負荷分散状況取得部
206 負荷分散管理部
208 バッチAP管理テーブル
209 バッチ実行基盤管理テーブル
210 オンライン実行基盤管理テーブル
120 仮想サーバ
301 バッチ実行基盤
303 オンライン実行基盤

Claims (17)

  1. バッチ実行基盤及びオンライン実行基盤が機能する複数のサーバと通信可能に接続する情報処理装置であって、
    外部装置からバッチ処理要求を受け付ける第1の処理部と、
    前記バッチ実行基盤のうちから一つ以上の前記バッチ実行基盤を選択する第2の処理部と、
    前記特定したバッチ実行基盤へのリソースの割り当て状況が所定の条件を満たしている場合に、
    前記特定したバッチ実行基盤と同じ前記サーバで機能している前記オンライン実行基盤を特定する第3の処理部と、
    前記特定したオンライン実行基盤の負荷状況に基づき、前記特定したバッチ実行基盤の負荷レベルを決定する第4の処理部と、
    前記負荷レベルに基づいて、前記特定したバッチ実行基盤のうちの一つを選択する第5の処理部と、
    前記選択したバッチ実行基盤のうちの一つを前記バッチ処理要求の割り当て先として決定する第6の処理部と、
    前記決定した前記バッチ実行基盤の前記負荷レベルに応じて、前記決定したバッチ実行基盤と同じ前記サーバで機能している前記オンライン実行基盤のオンライン処理要求を調整する第7の処理部と、
    前記外部装置から受け付けた前記バッチ処理要求を、前記決定したバッチ実行基盤に割り当てる第8の処理部と
    を備えることを特徴とする情報処理装置。
  2. 請求項1に記載の情報処理装置であって、
    前記所定の条件は、前記特定したバッチ実行基盤がリソースを共有している状況にあるという条件であること
    を特徴とする情報処理装置。
  3. 請求項1に記載の情報処理装置であって、
    前記第5の処理部が複数の前記バッチ実行基盤を選択した場合に、
    前記第6の処理部が各前記選択したバッチ実行基盤のうち処理能力が最も高いものを前記バッチ処理要求の割り当て先として決定すること
    を特徴とする情報処理装置。
  4. 請求項1に記載の情報処理装置であって、
    前記第7の処理部における前記オンライン処理要求の調整は、
    前記第6の処理部で決定した前記バッチ実行基盤と同一の前記サーバで機能する前記オンライン実行基盤の前記オンライン処理要求の受け付けを制限する第1の方法、もしくは、
    前記第6の処理部で決定した前記バッチ実行基盤と同一の前記サーバで機能する前記オンライン実行基盤の前記オンライン処理要求を、他の前記サーバで機能する前記オンライン実行基盤に移動させる第2の方法
    のうちの少なくともいずれかにより行うこと
    を特徴とする情報処理装置。
  5. 請求項4に記載の情報処理装置であって、
    前記第1の方法における前記制限は、当該制限によって前記オンライン実行基盤がキューイング可能な前記オンライン処理要求の数が、前記オンライン実行基盤が保証すべき値として記憶しているリクエスト最低保証値以下にならないように行われること
    を特徴とする情報処理装置。
  6. 請求項4に記載の情報処理装置であって、
    前記負荷レベルは、
    前記特定したオンライン実行基盤のオンライン処理要求を制限することなく、オンライン処理要求を前記他のサーバの前記他のオンライン実行基盤に移動することができる第1のレベル、
    前記特定したオンライン実行基盤のオンライン処理要求を制限すれば、当該オンライン処理要求を前記他のオンライン実行基盤に移動することができる第2のレベル、又は、
    前記特定したオンライン実行基盤のオンライン処理要求を制限しても、当該オンライン処理要求を前記他のオンライン実行基盤に移動することができない第3のレベル
    のうちの少なくともいずれかであること
    を特徴とする情報処理装置。
  7. 請求項4に記載の情報処理装置であって、
    第4の処理部は、前記特定したバッチ実行基盤のいずれもがリソースを占有している状況になく、かつ、前記バッチ実行基盤の前記負荷レベルが前記第1のレベル、前記第2のレベル、及び前記第3のレベルのいずれでもない場合に、前記情報処理装置が所定のメッセージを出力すること
    を特徴とする情報処理装置。
  8. 請求項1に記載の情報処理装置であって、
    前記第2の処理部は、前記選択において、バッチ処理の受け付け待機中の状況にある前記バッチ実行基盤を選択すること
    を特徴とする情報処理装置。
  9. 請求項1に記載の情報処理装置であって、
    前記サーバは仮想化機構を有し、
    前記バッチ実行基盤と前記オンライン実行基盤とは、当該サーバに存在する異なる仮想サーバ上で機能していること
    を特徴とする情報処理装置。
  10. 請求項1に記載の情報処理装置であって、
    前記リソースは、CPU、メモリ、通信インタフェースの種類もしくは数、及び論理ボリューム、のうちの少なくともいずれかであること
    を特徴とする情報処理装置。
  11. 請求項1に記載の情報処理装置であって、
    前記決定したバッチ実行基盤による前記バッチ処理の実行に際し当該バッチ実行基盤による当該バッチ処理の進捗状況を監視する第9の処理部、
    前記進捗状況に基づき予め記憶している当該バッチ処理の締切時刻までに当該バッチ処理が終了していないと判断し、かつ、当該バッチ実行基盤がリソースを占有している状況にない場合に、
    当該バッチ実行基盤と同じ前記サーバで機能する前記オンライン実行基盤を特定する第10の処理部、
    前記特定したオンライン実行基盤の負荷状況に基づき、当該バッチ実行基盤の負荷レベルを決定する第11の処理部、
    決定した当該バッチ実行基盤の負荷レベルに応じて、前記オンライン実行基盤のオンライン処理要求を調整する第12の処理部
    をさらに備えること
    を特徴とする情報処理装置。
  12. バッチ実行基盤及びオンライン実行基盤が機能する複数のサーバを備えて構成される情報処理システムにおいて、前記バッチ実行基盤にバッチ処理要求を割り当てる方法であって、
    前記サーバと通信可能に接続する情報処理装置が、
    外部装置からバッチ処理要求を受け付ける第1のステップ、
    前記バッチ実行基盤のうちから一つ以上の前記バッチ実行基盤を選択する第2のステップ、
    前記特定したバッチ実行基盤へのリソースの割り当て状況が所定の条件を満たしている場合に、
    前記特定したバッチ実行基盤と同じ前記サーバで機能している前記オンライン実行基盤を特定する第3のステップ、
    前記特定したオンライン実行基盤の負荷状況に基づき、前記特定したバッチ実行基盤の負荷レベルを決定する第4のステップ、
    前記負荷レベルに基づいて、前記特定したバッチ実行基盤のうちの一つを選択する第5のステップ、
    前記選択したバッチ実行基盤のうちの一つを前記バッチ処理要求の割り当て先として決定する第6のステップ、
    前記決定した前記バッチ実行基盤の前記負荷レベルに応じて、前記決定したバッチ実行基盤と同じ前記サーバで機能している前記オンライン実行基盤のオンライン処理要求を調整する第7のステップ、及び
    前記外部装置から受け付けた前記バッチ処理要求を、前記決定したバッチ実行基盤に割り当てる第8のステップ
    を実行すること
    を特徴とするバッチ処理の割り当て方法。
  13. 請求項12に記載のバッチ処理の割り当て方法であって、
    前記所定の条件は、前記特定したバッチ実行基盤がリソースを共有している状況にあるという条件であること
    を特徴とするバッチ処理の割り当て方法。
  14. 請求項12に記載のバッチ処理の割り当て方法であって、
    前記第7のステップにおける前記オンライン処理要求の調整は、
    前記第6のステップで決定した前記バッチ実行基盤と同一の前記サーバで機能する前記オンライン実行基盤の前記オンライン処理要求の受け付けを制限する第1の方法、もしくは、
    前記第6のステップで決定した前記バッチ実行基盤と同一の前記サーバで機能する前記オンライン実行基盤の前記オンライン処理要求を、他の前記サーバで機能する前記オンライン実行基盤に移動させる第2の方法
    のうちの少なくともいずれかにより行うこと
    を特徴とするバッチ処理の割り当て方法。
  15. 請求項14に記載のバッチ処理の割り当て方法であって、
    前記第1の方法における前記制限は、当該制限によって前記オンライン実行基盤がキューイング可能な前記オンライン処理要求の数が、前記オンライン実行基盤が保証すべき値として記憶しているリクエスト最低保証値以下にならないように行われること
    を特徴とするバッチ処理の割り当て方法。
  16. 請求項14に記載のバッチ処理の割り当て方法であって、
    前記負荷レベルは、
    前記特定したオンライン実行基盤のオンライン処理要求を制限することなく、オンライン処理要求を前記他のサーバの前記他のオンライン実行基盤に移動することができる第1のレベル、
    前記特定したオンライン実行基盤のオンライン処理要求を制限すれば、当該オンライン処理要求を前記他のオンライン実行基盤に移動することができる第2のレベル、又は、
    前記特定したオンライン実行基盤のオンライン処理要求を制限しても、当該オンライン処理要求を前記他のオンライン実行基盤に移動することができない第3のレベル
    のうちの少なくともいずれかであること
    を特徴とするバッチ処理の割り当て方法。
  17. 請求項12に記載のバッチ処理の割り当て方法であって、
    前記情報処理装置が、
    前記決定したバッチ実行基盤による前記バッチ処理の実行に際し当該バッチ実行基盤による当該バッチ処理の進捗状況を監視する第9のステップ、
    前記進捗状況に基づき予め記憶している当該バッチ処理の締切時刻までに当該バッチ処理が終了していないと判断し、かつ、当該バッチ実行基盤がリソースを占有している状況にない場合に、
    当該バッチ実行基盤と同じ前記サーバで機能する前記オンライン実行基盤を特定する第10のステップ、
    前記特定したオンライン実行基盤の負荷状況に基づき、当該バッチ実行基盤の負荷レベルを決定する第11のステップ、
    決定した当該バッチ実行基盤の負荷レベルに応じて、前記オンライン実行基盤のオンライン処理要求を調整する第12のステップ
    を実行すること
    を特徴とするバッチ処理の割り当て方法。
JP2008270131A 2008-10-20 2008-10-20 情報処理装置、及び情報処理システムにおけるバッチ処理の割り当て方法 Pending JP2010097566A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008270131A JP2010097566A (ja) 2008-10-20 2008-10-20 情報処理装置、及び情報処理システムにおけるバッチ処理の割り当て方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008270131A JP2010097566A (ja) 2008-10-20 2008-10-20 情報処理装置、及び情報処理システムにおけるバッチ処理の割り当て方法

Publications (1)

Publication Number Publication Date
JP2010097566A true JP2010097566A (ja) 2010-04-30

Family

ID=42259172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008270131A Pending JP2010097566A (ja) 2008-10-20 2008-10-20 情報処理装置、及び情報処理システムにおけるバッチ処理の割り当て方法

Country Status (1)

Country Link
JP (1) JP2010097566A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013196062A (ja) * 2012-03-15 2013-09-30 Fujitsu Ltd 情報処理装置
JP2016189101A (ja) * 2015-03-30 2016-11-04 鉄道情報システム株式会社 バッチ処理システム、バッチ処理方法、バッチ処理プログラムおよびバッチ処理プログラムが記憶されたコンピュータで読み取り可能な記憶媒体
JP2017142716A (ja) * 2016-02-12 2017-08-17 富士通株式会社 処理制御プログラム、処理制御装置及び処理制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013196062A (ja) * 2012-03-15 2013-09-30 Fujitsu Ltd 情報処理装置
JP2016189101A (ja) * 2015-03-30 2016-11-04 鉄道情報システム株式会社 バッチ処理システム、バッチ処理方法、バッチ処理プログラムおよびバッチ処理プログラムが記憶されたコンピュータで読み取り可能な記憶媒体
JP2017142716A (ja) * 2016-02-12 2017-08-17 富士通株式会社 処理制御プログラム、処理制御装置及び処理制御方法

Similar Documents

Publication Publication Date Title
US10387202B2 (en) Quality of service implementation in a networked storage system with hierarchical schedulers
US9952786B1 (en) I/O scheduling and load balancing across the multiple nodes of a clustered environment
JP4921054B2 (ja) 負荷分散制御システム及び負荷分散制御方法
US8751657B2 (en) Multi-client storage system and storage system management method
JP5680619B2 (ja) 優先度ベースのシステム負荷レベルを管理するためのシステムおよび方法
US9665154B2 (en) Subsystem-level power management in a multi-node virtual machine environment
US20120272241A1 (en) Computer system and virtual machine control method
JP2005216151A (ja) 資源運用管理システム及び資源運用管理方法
CN104937584A (zh) 基于共享资源的质量向经优先级排序的虚拟机和应用程序提供优化的服务质量
US11068315B2 (en) Hypervisor attached volume group load balancing
US20120204188A1 (en) Processor thread load balancing manager
US10908940B1 (en) Dynamically managed virtual server system
US11307802B2 (en) NVMe queue management multi-tier storage systems
US11556391B2 (en) CPU utilization for service level I/O scheduling
US9514072B1 (en) Management of allocation for alias devices
KR20200080458A (ko) 클라우드 멀티-클러스터 장치
JP2014063536A (ja) コンピュータ・ベース・システムにおける資源割当て方法
JP5151509B2 (ja) 仮想マシンシステム及びそれに用いる仮想マシン分散方法
US10776173B1 (en) Local placement of resource instances in a distributed system
JP2010097566A (ja) 情報処理装置、及び情報処理システムにおけるバッチ処理の割り当て方法
Wu et al. iShare: Balancing I/O performance isolation and disk I/O efficiency in virtualized environments
US8245229B2 (en) Temporal batching of I/O jobs
US8555014B1 (en) Automatic access management of clients to a storage system
US20240160487A1 (en) Flexible gpu resource scheduling method in large-scale container operation environment
JP4997063B2 (ja) 計算機の起動方法及び計算機システム