JPWO2005116832A1 - 分散処理環境におけるジョブの実行を制御するためのコンピュータシステム、方法及びプログラム - Google Patents
分散処理環境におけるジョブの実行を制御するためのコンピュータシステム、方法及びプログラム Download PDFInfo
- Publication number
- JPWO2005116832A1 JPWO2005116832A1 JP2006513869A JP2006513869A JPWO2005116832A1 JP WO2005116832 A1 JPWO2005116832 A1 JP WO2005116832A1 JP 2006513869 A JP2006513869 A JP 2006513869A JP 2006513869 A JP2006513869 A JP 2006513869A JP WO2005116832 A1 JPWO2005116832 A1 JP WO2005116832A1
- Authority
- JP
- Japan
- Prior art keywords
- resource
- job
- computer system
- network
- grid
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
3種類に分けられる(集中型スキームおよび階層型スキームについては例えば非特許文献1を参照、分散型スキームについては例えば非特許文献2を参照)。
集中型スキームでは、グリッドシステム群全体を管理するセンターサーバのメタスケジューラに、全てのグリッドシステムの情報が集められ、そのメタスケジューラでスケジューリングの決定がなされる。個々のグリッドシステムであるローカルサイト(ローカルディスパッチャ)では、スケジューリングの決定はなされないが、センターサーバのメタスケジューラから投入されたジョブを実行し、ジョブの完了と資源の状態(空いたプロセッサなど)の情報をメタスケジューラに通知する。新しいグリッドシステムの追加などシステム構成を変更する場合、メタスケジューラによるスケジューリングに反映させるためにセンターサーバでの手続きが必要である。
階層型スキームでは、センターサーバと各ローカルサイトとの間で、スケジューリングのプロセスをシェアする。センターサーバのメタスケジューラからローカルサイトのスケジューラにジョブをサブミットした後は、メタスケジューラは、そのジョブに対して直接
に関与する必要はない。もし、ジョブのサブミット後に他のローカルサイトに空きができても、各ジョブの実行は、そのジョブが送られた各ローカルサイトにおいて実行される。
分散型スキームでは、全てのサイトにメタスケジューラが設けられる。ジョブは、各ローカルサイトのメタスケジューラにサブミットされて、スケジューリングされる。全てのサイトがメタスケジューラを持つので、あるジョブに関して、所定のローカルサイトで一旦スケジューリングされた後に、他のローカルサイトに空きができたならば、当該ジョブを当該他のローカルサイトで実行するようにスケジューリングし直すことができる。各ローカルサイトのメタスケジューラは同一の情報を持つ必要があり、各ローカルサイトの負荷状況等の情報を随時あるいは定期的に交換する。
しかし、上述した集中型スキームは、メタスケジューラにおいてネットワーク上の各ローカルサイトにあるコンピュータ資源の詳細な情報を管理する必要があるので、新しいグリッドシステムの追加などシステム構成を変更する場合、メタスケジューラによるスケジューリングに反映させるためにセンターサーバでの手続きが必要となる。したがって、システム構成の変更(ローカルサイトの追加、削除、ローカルサイトにおけるコンピュータ資源の変更等)に伴って、メタスケジューラにおける設定の更新を要し、センターサーバにおける運用・管理の負荷が大きくなる。したがって、システム構成の変更や規模の拡大縮小に容易に対応することができず、スケーラブルなシステムにするのは難しい。
なお、階層型スキームでは、各ローカルサイト間で情報をやりとりすることにより、他のローカルサイトに空きができた場合に、すでに別のローカルサイトにサブミットされたジョブを空いたローカルサイトに再サブミットする仕組みを導入することもできる。しかし、このような仕組みを導入すると、システムが複雑化してしまうため、開発に手間を要する。
また、各ローカルサイト間で情報をやりとりするために、ネットワーク負荷が増大してしまう。さらに、階層型スキームにおいても、集中型スキームと同様に、システム構成の変更に伴ってメタスケジューラにおける設定の更新を要するため、システム構成の変更や規模の拡大縮小に容易に対応することができず、スケーラブルなシステムにするのは難しい。
ローカルサイトの負荷状況等の情報を随時あるいは定期的に交換する必要があるため、ネットワーク負荷が増大してしまう。そして、システム構成の変更に伴って各ローカルサイトのメタスケジューラにおける設定の更新を要するため、システム構成の変更や規模の拡大縮小に容易に対応することができず、スケーラブルなシステムにするのは難しい。
さらに、階層型スキームや分散型スキームでは、メタスケジューラとローカルなスケジューラとを個別に開発しなければならず、開発コストが増大する。
また本発明は、効率よくジョブを実行するためにローカルサイト間で情報をやり取りしながら、ネットワーク負荷を軽減することを他の目的とする。
また本発明は、システムの開発コストを増大させることなく、グリッドシステム群を統合した広域分散システムを実現することをさらに他の目的とする。
ローカルリソースに対応するエージェントは、その能力および動作状況に関する情報をかかるローカルリソースから取得して管理し、他のグリッドシステム(ネットワークリソース)に対応するエージェントは、そのグリッドシステムがジョブの実行要求に対して提供可能なリソース能力の情報をかかる他のグリッドシステムにおけるグリッドサーバから取得して管理する。そして、スケジューラは、リソースエージェントに管理されている各情報に基づいて、リソース手段に対するジョブの割り当てを行う。
また本発明によれば、各グリッドシステムがネットワーク上で隣接する他のグリッドシステムの情報を持つことによって、結果的にグリッドシステム群全体の情報が各グリッドシステムに共有されることとなるので、各グリッドシステム間で頻繁に情報交換を行う必要がなく、ネットワーク負荷を軽減することができる。
さらに本発明によれば、グリッドシステム群全体を統括制御するための固有の仕組みを必要としないので、システムの開発に要する手間やコストを大幅に削減することができ、かつ様々なネットワーク構造を持ったシステムを容易に構築できるという柔軟性に富んだシステムを実現できる。
図1は、本実施形態による広域分散システムの全体構成を示す図である。
本実施形態の広域分散システムは、インターネット等の広域ネットワークに接続されたグリッドシステム群を統合して、各グリッドシステムにおけるコンピュータ資源を相互に利用可能としている。各グリッドシステムは、グリッドコンピューティング技術により、ネットワークに接続された多数の多種多様なコンピュータ資源を1つのグループとして管理し、その負荷分散およびスケジューリングを行っている分散処理システムである。
図2に示すように、本実施形態によるグリッドシステムは、ジョブの割り当て(スケジューリング)を行うグリッドサーバ(GS)100と、グリッドサーバ100による割り当てにしたがって実際にジョブを実行するローカルリソースとしてのプロセスサーバ(PS)200とを備える。また、グリッドサーバ100は、他のグリッドシステムのグリッドサーバ100とも接続されている。
また、詳しくは後述するが、上記のネットワークスキームを実現するために、本実施形態のグリッドサーバ100は、エージェントと呼ぶインタフェースモジュールを備え、このエージェントを介してプロセスサーバ200や他のグリッドシステムのグリッドサーバ100と接続する。かかる装置間接続のフレームワークを、以下、エージェントフレームワーク(Agent Framework)と称す。
図3に示すコンピュータ装置は、演算手段であるCPU(Central Processing Unit:
中央処理装置)11と、M/B(マザーボード)チップセット12およびCPUバスを介してCPU11に接続されたメインメモリ13と、同じくM/Bチップセット12およびAGP(Accelerated Graphics Port)を介してCPU11に接続されたビデオカード1
4と、PCI(Peripheral Component Interconnect)バスを介してM/Bチップセット
12に接続された磁気ディスク装置(HDD)15、ネットワークインタフェース16と、さらにこのPCIバスからブリッジ回路17およびISA(Industry Standard Architecture)バスなどの低速なバスを介してM/Bチップセット12に接続されたフレキシブルディスクドライブ18およびキーボード/マウス19とを備える。
)やSCSI(Small Computer System Interface)などのインタフェースを介してCD
−R(Compact Disc Recordable)やDVD−RAM(Digital Versatile Disc Random Access Memory)のドライブを設けても良い。
グリッドサーバ100は、自システム内のローカルリソースである各プロセスサーバ200に対するジョブの割り当て(スケジューリング)を行うスケジューラ110と、プロセスサーバ200の管理を行い、プロセスサーバ200に対するリクエストおよびレスポンスの送受信を中継するリソースエージェント120と、自システムをあたかも他のグリッドシステムのリソースであるかのように動作させるためのグリッドサーバ用リソースエージェント・インタフェース(以下「GSエージェント・インタフェース」)130とを備える。リソースエージェント120は、各プロセスサーバ200およびネットワーク上で隣接する他のグリッドシステム(ネットワークリソース)ごとに設けられている。そして、スケジューラ110は、このリソースエージェント120を介して各プロセスサーバ200および他のグリッドシステムのグリッドサーバ100にアクセスする。
リソース能力問い合わせ応答部111は、GSエージェント・インタフェース130を介して入力される外部からの問い合わせ(リソース能力取得要求)に応じて、提供可能な自システムのリソース能力を計算し返答する。提供可能なリソース能力は、後述のリソース能力取得部112により取得される情報に基づいて計算される。また、リソース能力の提供対象に応じて提供可能なリソース能力を変更することもできる。
リソース能力取得部112は、自システムが利用可能なリソース能力を各プロセスサーバ200およびネットワーク上で隣接する他のグリッドシステムに対応するリソースエージェント120に問合せ、情報を取得する(以下、これら自システムのローカルリソースとして認識されるプロセスサーバ200およびネットワークリソースとして認識される他のグリッドシステムを合わせて、リソース手段と称す)。取得される情報には、自システムにおける本来の処理能力や記憶装置の記憶容量などを静的情報と、実時間の負荷状況に基づく動的情報とが含まれる。
ジョブ受け付け部113は、外部のコンピュータシステム(例えばクライアント)やGSエージェント・インタフェース130からジョブの実行要求を受け付ける。
最適リソース選択部114は、リソース能力取得部112により取得されたリソース能力の情報に基づき、ジョブに応じてその実行に最適なリソース手段を選択し、ジョブの割り当てを行う。このジョブの割り当てにおける最適化のロジックは任意で良い。
ジョブ依頼部115は、最適リソース選択部114において選択されたリソース手段に対応するリソースエージェント120に対して、ジョブの実行を要求するリクエストを発行する。
とメインメモリ13や磁気ディスク装置15等の記憶手段とネットワークインタフェース16とで実現され、その具体的な機能として図4に示すように、リソース状況管理部121と、リソース能力管理部122と、ジョブ受け付け部123と、ジョブ依頼部124とを備える。
リソース状況管理部121は、対応するリソース手段にアクセスして、該当するプロセスサーバ200(ローカルリソース)またはグリッドシステム(ネットワークリソース)における現在の動作状況を把握する。
リソース能力管理部122は、対応するリソース手段のジョブ実行能力に関する統計情報等を管理し、スケジューラ110のリソース能力取得部112からの問い合わせに応じて、管理している情報を返す。ここで、ジョブ実行能力に関する統計情報等とは、単にCPU自身の処理能力や記憶装置の記憶容量の静的な情報だけでなく、CPUに対する負荷の時間変動や動作傾向といった動的な内容を統計的に処理して得られた情報を含む。
リソース状況管理部121およびリソース能力管理部122に管理されるこのようなリソース情報は、リソースエージェント120が対応しているリソース手段から取得し、図3のメインメモリ13や磁気ディスク装置15等の記憶手段に格納する。
ジョブ受け付け部123は、スケジューラ110のジョブ依頼部115から発行されたジョブ実行リクエストを受け付ける。
ジョブ依頼部124は、ジョブ受け付け部123により受け付けられたジョブ実行リクエストを対応するリソース手段に送信する。
上述したように、GSエージェント・インタフェース130は、グリッドシステムをネットワーク上の他のグリッドシステムに対して当該他のグリッドシステムのローカルリソースと同様に利用可能とするための機能である。このGSエージェント・インタフェース130により、グリッドサーバ100は、他のグリッドシステムのグリッドサーバ100からの要求を受け付け、自システムが利用可能なリソース手段を用いてジョブを実行した結果を返すことができる。
リソース能力情報通知部132は、受信したリソース能力取得要求に応じて、リソース能力情報取得部131において取得されたリソース情報を、リソース能力取得要求の送信元に通知する。リソース能力取得要求がネットワーク上の他のグリッドシステムにおけるグリッドサーバ100の対応するリソースエージェント120から受信された場合は、当該リソースエージェント120に通知する。リソースエージェント120では、リソース状況管理部121およびリソース能力管理部122がこの通知を受け付け、メインメモリ13や磁気ディスク装置15等の記憶装置に格納して管理する。リソース能力情報通知部132からグリッドサーバ100への通知は、定期的に行っても良いし、自システムの動作状況が変更された際に行うようにしても良い。また、グリッドサーバ100のリソースエージェント120から任意のタイミングで対応する他のグリッドシステムのグリッドサーバ100へ問い合わせても良い。
ジョブ受け付け部133は、他のグリッドシステムにおけるグリッドサーバ100のリソースエージェント120のジョブ依頼部124から送信されたジョブ実行リクエストを受け付ける。
ジョブ実行依頼部134は、ジョブ受け付け部133により受け付けられたジョブのス
ケジューリングおよび実行を、スケジューラ110に依頼する。
図5は、プロセスサーバ200の機能構成とグリッドサーバ100のリソースエージェント120との関係を示す図である。
図5に示すように、プロセスサーバ200は、図3に示したようなコンピュータ装置をグリッドシステムにおけるプロセスサーバ200として機能させるためのプロセスサーバ用リソースエージェント・インタフェース(以下「PSエージェント・インタフェース」)210を備えている。
PS状況監視部211は、自装置(プロセスサーバ200)の現在の使用状況や資源の状況を監視し、情報を収集する。
リソース能力情報通知部212は、PS状況監視部211において収集されたPSの使用状況や資源の状況に関する情報を、グリッドサーバ100のリソースエージェント120に通知する。リソースエージェント120では、リソース状況管理部121およびリソース能力管理部122がこの通知を受け付け、メインメモリ13や磁気ディスク装置15等の記憶装置に格納して管理する。リソース能力情報通知部212からグリッドサーバ100への通知は、定期的に行っても良いし、プロセスサーバ200の動作状況が変更された際に行うようにしても良い。また、グリッドサーバ100の対応するリソースエージェント120から任意のタイミングでプロセスサーバ200へ問い合わせても良い。
ジョブ受け付け部213は、グリッドサーバ100のリソースエージェント120のジョブ依頼部124から送信されたジョブ実行リクエストを受け付ける。
ジョブ実行部214は、ジョブ受け付け部213により受け付けられたジョブを、プロセスサーバ200の資源を用いて実行する。
本実施形態では、所定のクライアントから所定のグリッドシステムに対して発行されたジョブ実行リクエストに応じて、広域分散システムを構成するグリッドシステム群により負荷分散されてジョブが実行される。ここで、クライアントとは、本実施形態の広域分散システムを構成するいずれかのグリッドシステムにアクセス可能なコンピュータやPDA(Personal Digital Assistant)等の情報機器である。後述する機能を備えたプロセスサーバ200がクライアントとしてジョブ実行リクエストを発行することもできる。
図6は、本実施形態の広域分散システムにジョブ実行リクエストを発行するクライアントの機能構成とグリッドサーバ100のスケジューラ110との関係を示す図である。
図6に示すように、クライアント300は、ジョブ実行リクエストの送信先であるグリッドシステムのリソース能力を問い合わせるためのリソース能力問い合わせ部310と、ジョブ実行リクエストを発行してグリッドシステムに送信するジョブ依頼部320とを備える。なお、クライアント300は、所望のジョブに対する実行結果が得られれば良く、ジョブの実行に必要なコンピュータ資源の調達はグリッドシステムに任せて良い場合は、リソース能力問い合わせ部310は必須の構成要件ではない。これらの機能は、例えばクライアント300が図3に示したコンピュータ装置にて構成される場合、プログラム制御されたCPU11とメインメモリ13や磁気ディスク装置15等の記憶手段とで実現される。
図7を参照すると、最適リソース選択部114は、リソース能力問い合わせ応答部111およびリソース能力取得部112を介してリソースエージェント120から各リソース手段の能力や動作傾向等の統計情報等を取得し(ステップ701)、これらの情報およびジョブの種類や特性に基づいて最適なスケジューリングを行う(ステップ702)。そして、ジョブ依頼部115が、最適リソース選択部114による処理結果に基づいて、ジョブが割り当てられたリソース手段の動作状況に関わらずにジョブ実行リクエストを発行し
、そのリソース手段に対応するリソースエージェント120に送信する(ステップ703)。
スケジューラ110は、リソースエージェント120から受け取った各リソース手段によるジョブの実行結果を統合して、クライアント300に返す。
図8は、リソースエージェント120とGSエージェント・インタフェース130とスケジューラ110との関係を示す図である。
ここで、図8と図6とを比較すると、スケジューラ110にとっては、GSエージェント・インタフェース130との関係と、クライアント300のPSエージェント・インタフェース210との関係は等価である。したがって、スケジューラ110は、上述したクライアント300から直接受け取ったジョブ実行リクエストに対する動作と同様に、GSエージェント・インタフェース130を介して他のグリッドシステムのグリッドサーバ100から受け取ったジョブ実行リクエストに対してもスケジューリングを行い、自システムが利用可能なリソース手段に対してジョブの実行を依頼することができる。
一方、リソース手段が他のグリッドシステムである場合、リソース情報は、当該グリッドシステムのグリッドサーバ100におけるGSエージェント・インタフェース130の
リソース能力情報取得部131により取得され、リソース能力情報通知部132によりリソースエージェント120に送られる。ここで、リソース能力情報取得部131は、図4に示したように、スケジューラ110のリソース能力問い合わせ応答部111に問い合わせを行い、これらの情報を受け取る。したがって、リソース能力問い合わせ応答部111は、クライアント300からリソース能力の問い合わせを受ける場合と、GSエージェント・インタフェース130から問い合わせを受ける場合とがある。
したがって、GSエージェント・インタフェース130から問い合わせを受けた場合、スケジューラ110は、GSエージェント・インタフェース130に対してリソース能力取得要求を送信したグリッドサーバ100が含まれるグリッドシステムをリソース手段として利用することはできない。したがってこの場合、スケジューラ110は、リソース能力取得要求を送信したグリッドサーバ100が含まれるグリッドシステムを除いて提供可能なリソース能力を計算して、GSエージェント・インタフェース130へ返すこととなる。
上述したように本実施の形態では、個々のグリッドシステムにおいて、グリッドサーバ100とローカルリソースであるプロセスサーバ200との接続、およびグリッドサーバ100と他のグリッドシステムとの接続を、グリッドサーバ100に備えたリソースエージェント120を介して行うこととした。これにより、図9に示すようなネットワークスキームが実現され、各グリッドシステム群は、それぞれクライアント300からジョブの実行依頼を受け付けることができ、そのジョブを自システムのローカルリソースであるプロセスサーバ200によって実行し、あるいはネットワーク上で隣接する他のグリッドシステムに投入して実行させることができる。各グリッドシステムどうしは従属関係を持たず、対等な関係で並列に動作する。
図10の例では、破線で示された5つのグリッドシステム(グリッドA、B、C、D、E)からなる広域分散システムのうち、グリッドAにジョブが投入されている。このジョブは、まずグリッドAのローカルリソースであるプロセスサーバ(PS)200に分散投入される。そして、グリッドAのローカルリソースの能力ではこのジョブを処理しきれず、オーバーフローが発生する場合は、グリッドAのグリッドサーバ(GS)100において、ネットワーク上で隣接するグリッドB、Cに対応するリソースエージェント120とスケジューラ110との間で動作状況の確認等のネゴシエーションが行われ、当該ジョブがグリッドB、Cに投入される。ジョブがグリッドB、Cに投入された場合、各グリッドB、Cのローカルリソースで実行され、グリッドBでオーバーフローが生じる場合には、さらにグリッドBに隣接するグリッドD、Eにも当該ジョブが分散投入される。
態となった時点で、リソースエージェント120からグリッドB、Cへジョブの実行依頼が行われることとなる。
また、上記の説明では、自システムのローカルリソースではジョブを処理しきれずオーバーフローが生ずる場合に他のグリッドシステムにジョブを投入することとした。このように、できるだけローカルリソースで優先的にジョブを処理する方法は、ネットワークの負荷を軽減するために好ましい。しかしながら、ジョブの分散投入の方法はこれに限るものではない。自システムのローカルリソースおよび隣接する他のグリッドシステムの能力やジョブの種類、特性等に鑑み、最適な(実行効率の高い)分散となるように、任意のロジックでジョブの割り当てを行うことができる。
図11に示すように、グリッドBに投入されたジョブは、まずグリッドBのローカルリソースであるプロセスサーバ200に投入され、オーバーフローが発生する場合に、ネットワーク上で隣接するグリッドA、D、Eに分散投入される。また、グリッドAにおいてオーバーフローが生じるならば、さらにグリッドCにもジョブが分散投入される。
このように、本実施形態のネットワークスキームにより接続されたグリッドシステム群では、各グリッドシステム間に主従関係がなく、対等な関係で並列に動作するため、いずれのグリッドシステムにジョブが投入されても、ネットワーク上で隣接するグリッドシステムに連鎖的にジョブが分散投入され、グリッドシステム群にて構成される広域分散システム全体でジョブを処理することが可能となる。
図12は、図10のグリッドシステム群において所定のグリッドシステムにジョブが投入された場合のリソース能力を説明する図である。
図12において、各グリッドシステムのリソース能力は、次のように定義される。
Cx:グリッドシステムx自身の(ローカルリソースの)リソース能力
Cx for user:クライアントからのジョブの実行要求に対してグリッドシステムxが提供可能なリソース能力
Cx for y:ネットワーク上でグリッドシステムxに隣接するグリッドシステムyからの
ジョブの実行要求に対してグリッドシステムxが提供可能なリソース能力
すなわち、Cx for userおよびCx for yは次の数1式により計算される。
Ca for user=Ca+Cb for a+Cc for a
ここで、グリッドシステムb(図10のグリッドB)は、グリッドシステムaの他にグ
リッドシステムd、e(図10のグリッドD、E)とも隣接しているので、グリッドシステムaに対して提供できるリソース能力は自システムのリソース能力とグリッドシステムd、eから提供されるリソース能力とを加えたものとなる。すなわち、
Cb for a=Cb+Cd for b+Ce for b
である。一方、グリッドシステムc(図10のグリッドC)は、グリッドシステムaとのみ隣接するので、自システムのリソース能力のみを提供でき、
Cc for a=Cc
となる。
Cb for user=Cb+Ca for b+Cd for b+Ce for b
そして、グリッドシステムa、d、eからそれぞれグリッドシステムbに提供されるリソース能力は、次のようになる。
Ca for b=Ca+Cc for a
Cd for b=Cd
Ce for b=Ce
Cd for user=Cd+Cb for d
そして、グリッドシステムbからグリッドシステムdに提供されるリソース能力は次のようになる。
Cb for d=Cb+Ca for b+Ce for b
このうち、リソース能力Ca for b、Ce for bについては上述の通りである。
なお、以上の計算方法は例示に過ぎず、この方法に限らないことは言うまでもない。
ロセスサーバ200とを、グリッドサーバ100に設けられたリソースエージェント120をインタフェースモジュールとして接続すると共に、かつグリッドサーバ100とネットワーク上で隣接する他のグリッドシステムのグリッドサーバ100とを、同様のリソースエージェント120を介して接続した。このため、ネットワーク上で隣接する各グリッドシステムのグリッドサーバ100は、相互に相手のグリッドシステムを自システムのローカルリソースと同様に扱うことができ、これにより、グリッドシステム群が上述したネットワークスキームによって接続された広域分散システムを実現することが可能となる。
各グリッドサーバ100のスケジューラ110は、他のグリッドシステムと自システムのローカルリソースとを区別する必要がないため、広域分散システム用の特別の仕組みを導入する必要はない。また、広域分散システムを構成するグリッドシステム群を統括的に管理するメタスケジューラを設ける必要もない。このため、システムの開発に要する手間やコストを大幅に削減することができる。
そして、ネットワーク上で隣接するグリッドシステムを担当するリソースエージェント120の数を加減することにより、階層構造やカスケード構造など、任意のネットワーク構造を持った広域分散システムを容易に構築することができる。
例えば、1つのグリッドシステムにのみ他のグリッドシステムを担当するリソースエージェント120を多数設けることにより、この1つのグリッドシステムをセンターとして用い、他のグリッドシステム群をバックアップとして運用する、集中型スキームに似た運用形態のシステムを構築できる。
また、個々のグリッドシステムにおいて他のグリッドシステムを担当するリソースエージェント120を1つだけ設けることにより、各グリッドシステムがカスケード的に接続されたシステムを構築できる。
さらに、リソースエージェント120の設定によって、ネットワークに障害が起きた場合に使用される代替のグリッドシステムを定義しておくことも容易に可能なので、障害に対して堅牢な広域分散システムを構築することが可能である。
…磁気ディスク装置(HDD)、16…ネットワークインタフェース、100…グリッドサーバ、110…スケジューラ、111…リソース能力問い合わせ応答部、112…リソース能力取得部、113…ジョブ受け付け部、114…最適リソース選択部、115…ジョブ依頼部、120…リソースエージェント、121…リソース状況管理部、122…リソース能力管理部、123…ジョブ受け付け部、124…ジョブ依頼部、130…GSエージェント・インタフェース、131…リソース能力情報取得部、132…リソース能力情報通知部、133…ジョブ受け付け部、134…ジョブ実行依頼部、200…プロセスサーバ、210…PSエージェント・インタフェース、211…PS状況監視部、212…リソース能力情報通知部、213…ジョブ受け付け部、214…ジョブ実行部、300…クライアント、310…リソース能力問い合わせ部、320…ジョブ依頼部
Claims (14)
- 複数のコンピュータシステムをネットワークを介して接続する分散処理環境において、当該ネットワークに接続されたコンピュータシステムであって、
ジョブを実行するコンピュータ資源(ローカルリソース)と、
ジョブの割り当ておよび実行要求を行うグリッドサーバとを備え、
前記グリッドサーバが、
前記ネットワーク上で前記コンピュータシステム(自システム)に接続されている少なくとも1つの他のコンピュータシステム(ネットワークリソース)および前記ローカルリソースに関する情報(リソース情報)を管理し、これらのリソースにジョブの実行を要求するエージェントと、
第1のジョブの実行をもとめる第1の要求に応答して、前記リソース情報に基づき、前記ローカルリソースおよび前記ネットワークリソースのうち1または複数のリソースに当該第1のジョブを割り当てるスケジューラと、を具備することを特徴とする、
コンピュータシステム。 - 前記エージェントは、各々の前記ネットワークリソースおよび前記ローカルリソースごとに設けられることを特徴とする、請求項1に記載のコンピュータシステム。
- 前記エージェントによって管理される前記リソース情報は、対応する前記ローカルリソースまたは前記ネットワークリソースの処理能力に関する静的情報を含むことを特徴とする、請求項2に記載のコンピュータシステム。
- 前記エージェントによって管理される前記リソース情報は、対応する前記ローカルリソースまたは前記ネットワークリソースの実時間における負荷状況に関する動的情報を含むことを特徴とする、請求項2記載のコンピュータシステム。
- 前記グリッドサーバは、
前記ネットワーク上の他のコンピュータシステムから送信された第2のジョブの実行をもとめる第2の要求を受け付け、当該第2の要求を前記スケジューラに渡して当該第2のジョブの割り当てを依頼する第1のインタフェース手段をさらに具備することを特徴とする、請求項1に記載のコンピュータシステム。 - 前記第1のインタフェース手段は、
前記他のコンピュータシステムからの問い合わせに応じて、前記コンピュータシステム(自システム)に関する前記リソース情報を、当該他のコンピュータシステムに通知する手段をさらに有することを特徴とする、請求項5に記載のコンピュータシステム。 - 前記ローカルリソースに対応する前記エージェントは、当該ローカルリソースの処理能力および動作状況に関する情報を前記リソース情報として管理し、
前記ネットワークリソースに対応する前記エージェントは、当該ネットワークリソースが前記第1の要求に対して提供可能なリソースの処理能力に関する情報を前記リソース情報として管理し、
前記スケジューラは、前記エージェントに管理されている前記リソース情報に基づいて、前記第1のジョブの割り当てを行うことを特徴とする、
請求項2に記載のコンピュータシステム。 - 前記ローカルリソースは、
対応する前記エージェントからの問い合わせに応じて、前記リソース情報を当該エージェントに通知する第2のインタフェース手段をさらに具備することを特徴とする、請求項
2に記載のコンピュータシステム。 - それぞれがジョブを実行するローカルのコンピュータ資源(ローカルリソース)を有する複数のコンピュータシステムをネットワークを介して接続する分散処理環境において、ジョブの実行を制御するための方法であって、
前記ネットワークに接続された第1のコンピュータシステムが、自身の前記ローカルリソースからその処理能力に関する第1のリソース情報を、前記ネットワーク上で当該第1のコンピュータシステムと接続されている少なくとも1つの第2のコンピュータシステム(ネットワークリソース)からその処理能力に関する第2のリソース情報を、それぞれ取得して管理するステップと、
前記第1のコンピュータシステムが、第1のジョブの実行をもとめる第1の要求に応答して、前記第1および第2のリソース情報に基づいて、前記ローカルリソースと前記ネットワークリソースを対象として前記第1のジョブの割り当てを行うステップと、
前記第1のコンピュータシステムが、前記第1のジョブの割り当てられたリソースに対して当該第1のジョブの実行をもとめる第2の要求を発行するステップと、
を含むことを特徴とするジョブ実行制御方法。 - 前記第1のコンピュータシステムが、発行された前記第2の要求を一時的に保持し、前記第1のジョブの割り当てられた前記リソースの動作状況に応じて、当該リソースに送信するステップをさらに有することを特徴とする、請求項9記載の方法。
- 前記第2のコンピュータシステムが、前記ネットワーク上で当該第2のコンピュータシステムと接続されている少なくとも1つの第3のコンピュータシステムとの関係で、前記第1のコンピュータシステムと同等のステップを実行することを特徴とする、請求項10記載の方法。
- 前記第2のコンピュータシステムが、前記第1のコンピュータシステムからの問い合わせに応答して、前記第2のリソース情報を通知するステップを有することを特徴とする、請求項9記載の方法。
- それぞれがジョブを実行するローカルのコンピュータ資源(ローカルリソース)を有する複数のコンピュータシステムをネットワークを介して接続する分散処理環境において、前記ネットワークに接続された第1のコンピュータシステムに、
前記ネットワークに接続された第1のコンピュータシステムが、自身の前記ローカルリソースからその処理能力に関する第1のリソース情報を、前記ネットワーク上で当該第1のコンピュータシステムと接続されている少なくとも1つの第2のコンピュータシステム(ネットワークリソース)からその処理能力に関する第2のリソース情報を、それぞれ取得して管理する処理と、
前記第1のコンピュータシステムが、第1のジョブの実行をもとめる第1の要求に応答して、前記第1および第2のリソース情報に基づいて、前記ローカルリソースと前記ネットワークリソースを対象として前記第1のジョブの割り当てを行う処理と、
前記第1のコンピュータシステムが、前記第1のジョブの割り当てられたリソースに対して当該第1のジョブの実行をもとめる第2の要求を発行する処理と、
を実行させることを特徴とするプログラム。 - 前記第1のコンピュータシステムが、発行された前記第2の要求を一時的に保持し、前記第1のジョブの割り当てられた前記リソースの動作状況に応じて、当該リソースに送信する処理を前記コンピュータにさらに実行させることを特徴とする請求項13に記載のプログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004161819 | 2004-05-31 | ||
JP2004161819 | 2004-05-31 | ||
PCT/JP2005/009350 WO2005116832A1 (ja) | 2004-05-31 | 2005-05-23 | 分散処理環境におけるジョブの実行を制御するためのコンピュータシステム、方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2005116832A1 true JPWO2005116832A1 (ja) | 2008-04-03 |
Family
ID=35451046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006513869A Pending JPWO2005116832A1 (ja) | 2004-05-31 | 2005-05-23 | 分散処理環境におけるジョブの実行を制御するためのコンピュータシステム、方法及びプログラム |
Country Status (3)
Country | Link |
---|---|
JP (1) | JPWO2005116832A1 (ja) |
CN (1) | CN1954295A (ja) |
WO (1) | WO2005116832A1 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4522780B2 (ja) * | 2004-07-28 | 2010-08-11 | 株式会社トヨタIt開発センター | グリッド・コンピューティング・システム、プログラム、記録媒体およびグリッド・コンピューティング方法 |
JP4806362B2 (ja) * | 2007-02-14 | 2011-11-02 | 富士通株式会社 | 並列処理制御プログラム、並列処理制御システムおよび並列処理制御方法 |
US8442015B2 (en) * | 2007-07-20 | 2013-05-14 | Broadcom Corporation | Method and system for an atomizing function of a mobile device |
JP4821783B2 (ja) * | 2008-02-08 | 2011-11-24 | 日本電気株式会社 | グリッドコンピューティングシステム及びデータ処理方法 |
US8959525B2 (en) | 2009-10-28 | 2015-02-17 | International Business Machines Corporation | Systems and methods for affinity driven distributed scheduling of parallel computations |
JP2013239124A (ja) * | 2012-05-17 | 2013-11-28 | Nec Corp | 端末制御システム、端末管理装置、端末制御装置、端末制御方法、端末管理プログラム及び端末制御プログラム |
JP6413789B2 (ja) | 2015-01-22 | 2018-10-31 | 富士通株式会社 | ジョブ管理プログラム、ジョブ管理方法及びジョブ管理装置 |
CN106899656B (zh) * | 2017-01-03 | 2018-12-11 | 珠海格力电器股份有限公司 | 设备控制方法和装置 |
CN110032364B (zh) * | 2019-04-11 | 2023-08-15 | 上海商汤智能科技有限公司 | 数据处理方法、装置、电子设备和计算机存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2580525B2 (ja) * | 1993-11-17 | 1997-02-12 | 工業技術院長 | 並列計算機における負荷分散方法 |
JP3512080B2 (ja) * | 1995-12-27 | 2004-03-29 | ソニー株式会社 | 計算装置および方法 |
JP3745820B2 (ja) * | 1996-02-23 | 2006-02-15 | 三菱電機株式会社 | 自律協調情報処理装置並びに自律協調情報処理方法 |
JP2912225B2 (ja) * | 1996-04-18 | 1999-06-28 | 四国日本電気ソフトウェア株式会社 | 通信処理システム |
-
2005
- 2005-05-23 CN CNA2005800154954A patent/CN1954295A/zh active Pending
- 2005-05-23 WO PCT/JP2005/009350 patent/WO2005116832A1/ja active Application Filing
- 2005-05-23 JP JP2006513869A patent/JPWO2005116832A1/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2005116832A1 (ja) | 2005-12-08 |
CN1954295A (zh) | 2007-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5022030B2 (ja) | コンピュータシステム、これを構成するサーバ、そのジョブ実行制御方法及びプログラム | |
JP4954089B2 (ja) | グリッド・アクティビティのモニタリングおよび振り分けによる総合的グリッド環境管理を促進する方法、システム、およびコンピュータ・プログラム | |
US7707288B2 (en) | Automatically building a locally managed virtual node grouping to handle a grid job requiring a degree of resource parallelism within a grid environment | |
US9075659B2 (en) | Task allocation in a computer network | |
JPWO2005116832A1 (ja) | 分散処理環境におけるジョブの実行を制御するためのコンピュータシステム、方法及びプログラム | |
US7788375B2 (en) | Coordinating the monitoring, management, and prediction of unintended changes within a grid environment | |
US7774457B1 (en) | Resource evaluation for a batch job and an interactive session concurrently executed in a grid computing environment | |
US7464160B2 (en) | Provisioning grid services to maintain service level agreements | |
JP4606404B2 (ja) | 計算資源管理プログラムおよび計算資源管理装置 | |
Elmroth et al. | Grid resource brokering algorithms enabling advance reservations and resource selection based on performance predictions | |
US20080229320A1 (en) | Method, an apparatus and a system for controlling of parallel execution of services | |
US20050188087A1 (en) | Parallel processing system | |
US9424096B2 (en) | Task allocation in a computer network | |
JP2001331333A (ja) | 計算機システム及び計算機システムの制御方法 | |
JP2007041720A (ja) | ジョブステップ実行プログラムおよびジョブステップ実行方法 | |
CN111443870B (zh) | 一种数据处理的方法、设备及存储介质 | |
JP3944176B2 (ja) | 探索要求送信装置およびプログラム | |
KR20200080458A (ko) | 클라우드 멀티-클러스터 장치 | |
JP5151509B2 (ja) | 仮想マシンシステム及びそれに用いる仮想マシン分散方法 | |
JP4557949B2 (ja) | 資源ブローカリングプログラム、該プログラムを記録した記録媒体、資源ブローカリング装置、および資源ブローカリング方法 | |
JP2007102332A (ja) | 負荷分散システム及び負荷分散方法 | |
JPH10207847A (ja) | 分散システムにおける自動負荷分散方式 | |
JP2010097566A (ja) | 情報処理装置、及び情報処理システムにおけるバッチ処理の割り当て方法 | |
US12028269B2 (en) | Method for optimal resource selection based on available GPU resource analysis in large-scale container platform | |
US20230155958A1 (en) | Method for optimal resource selection based on available gpu resource analysis in large-scale container platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090331 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090629 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090706 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090730 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090915 |