(57)【要約】【課題】不稼働・余剰なリソースの発生を防止すること。【解決手段】所有リソースＤＢ１０８のステータスを参照して利用可能なグリッドＩＤ及びステータスを利用可能リソースＤＢ１１１に格納し、この格納した予約済みリソース数とタスクＤＢ１０９に格納した自己タスク処理に必要なリソース数とを比較して予約済みリソース数が大きいと判定したとき、利用可能リソースＤＢ１１１の利用可能なリソースが自己サーバに設定されているか否かを判定し、設定されていないと判定したとき、他サーバの所有リソースＤＢ１２０のグリッドマシンのステータスを参照して空きリソースの有無を判定し、他サーバに空きリソースが有ると判定したとき、他サーバの所有リソースＤＢ１２０の空きグリッドマシンのステータスに予約を設定するように動作するリソース管理システム。【選択図】図１
2014063449.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続されるグリッドマシンのリソースに実行処理の単位であるタスク処理を分配することにより分散処理を実行する複数サーバに設けられたリソース管理システムであって、
前記リソース管理システムが、自己のサーバが所有するグリッドマシンのグリッドＩＤ及びグリッドマシンの利用状態を表すステータスを格納する所有リソースデータベースと、自己のサーバが所有するグリッドマシンで処理すべきタスク処理に必要なリソース数を格納するタスクデータベースと、リソース管理システム同士のリソース貸借に際して相互に貸借可能なグリッドＩＤを格納するグリッド情報データベースと、利用可能な自グリッド及び貸与された他グリッドのグリッドＩＤとタスクＩＤとリソースＩＤとステータスとを格納する利用可能リソースデータベースと、前記タスク処理に対するリソースの割当を行う主処理部と、他サーバが所有する外部グリッドマシンのリソース状況を参照する外部リソース参照処理部と、他サーバが所有する外部グリッドマシン上のリソースの貸し出し予約を行う外部リソース予約処理部と、外部グリッドマシンから借り出したリソースを含めてタスク処理に対するリソースの割当を行うリソース割り当て処理部とを備え、
前記主処理部が、前記所有リソースデータベースのステータスを参照して利用可能なグリッドＩＤ及びステータスを利用可能リソースデータベースに格納し、該格納した予約済みリソース数と前記タスクデータベースに格納した自己タスク処理に必要なリソース数とを比較し、該予約済みリソース数が前記自己タスク処理に必要なリソース数に比べて大きいか等しいか否かを判定する第１工程を実行し、
前記外部リソース参照処理部が、前記予約済みリソース数が前記自己タスク処理に必要なリソース数に比べて大きいか等しいと判定したとき、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されているか否かを判定し、自己サーバが設定されていないと判定したとき、他サーバの所有リソースデータベースのグリッドマシンのステータスを参照して空きリソースの有無を判定し、空きリソースが有ると判定したとき、他サーバの所有リソースデータベースの空きグリッドマシンのステータスに予約を設定する第２工程を実行することを特徴とするリソース管理システム。
【請求項２】
前記外部リソース参照処理部が、前記第２工程において、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されていると判定したとき、自己サーバの所有リソースデータベースのステータスに予約を設定する第３工程を実行することを特徴とする請求項１記載のリソース管理システム。
【請求項３】
前記外部リソース参照処理部が、前記第３工程において、自己又は他サーバが所有するグリッドのステータスが割り当てか否かを判定し、ステータスが割り当てでないと判定したとき、該割り当てでないリソースを未使用に変更してリソースを開放することを特徴とする請求項１又は２記載のリソース管理システム。
【請求項４】
自己のサーバが所有するグリッドマシンのグリッドＩＤ及びグリッドマシンの利用状態を表すステータスを格納する所有リソースデータベースと、自己のサーバが所有するグリッドマシンで処理すべきタスク処理に必要なリソース数を格納するタスクデータベースと、リソース管理システム同士のリソース貸借に際して相互に貸借可能なグリッドＩＤを格納するグリッド情報データベースと、利用可能な自グリッド及び貸与された他グリッドのグリッドＩＤとタスクＩＤとリソースＩＤとステータスとを格納する利用可能リソースデータベースと、タスク処理に対するリソースの割当を行う主処理部と、他サーバが所有する外部グリッドマシンのリソース状況を参照する外部リソース参照処理部と、他サーバが所有する外部グリッドマシン上のリソースの貸し出し予約を行う外部リソース予約処理部と、外部グリッドマシンから借り出したリソースを含めてタスク処理に対するリソースの割当を行うリソース割り当て処理部とを備え、ネットワークを介して接続されるグリッドマシンのリソースに実行処理の単位であるタスク処理を分配することにより分散処理を実行する複数サーバに設けられたコンピュータシステムのリソース管理方法であって、
前記主処理部に、前記所有リソースデータベースのステータスを参照して利用可能なグリッドＩＤ及びステータスを利用可能リソースデータベースに格納し、該格納した予約済みリソース数と前記タスクデータベースに格納した自己タスク処理に必要なリソース数とを比較し、該予約済みリソース数が前記自己タスク処理に必要なリソース数に比べて大きいか等しいか否かを判定する第１工程を実行させ、
前記外部リソース参照処理部に、前記予約済みリソース数が前記自己タスク処理に必要なリソース数に比べて大きいか等しいと判定したとき、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されているか否かを判定し、自己サーバが設定されていないと判定したとき、他サーバの所有リソースデータベースのグリッドマシンのステータスを参照して空きリソースの有無を判定し、空きリソースが有ると判定したとき、他サーバの所有リソースデータベースの空きグリッドマシンのステータスに予約を設定する第２工程を実行させることを特徴とするリソース管理方法。
【請求項５】
前記外部リソース参照処理部に、前記第２工程において、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されていると判定したとき、自己サーバの所有リソースデータベースのステータスに予約を設定する第３工程を実行させることを特徴とする請求項４記載のリソース管理方法。
【請求項６】
前記外部リソース参照処理部に、前記第３工程において、自己又は他サーバが所有するグリッドのステータスが割り当てか否かを判定し、ステータスが割り当てでないと判定したとき、該割り当てでないリソースを未使用に変更してリソースを開放させることを特徴とする請求項４又は５記載のリソース管理方法。
【請求項７】
自己のサーバが所有するグリッドマシンのグリッドＩＤ及びグリッドマシンの利用状態を表すステータスを格納する所有リソースデータベースと、自己のサーバが所有するグリッドマシンで処理すべきタスク処理に必要なリソース数を格納するタスクデータベースと、リソース管理システム同士のリソース貸借に際して相互に貸借可能なグリッドＩＤを格納するグリッド情報データベースと、利用可能な自グリッド及び貸与された他グリッドのグリッドＩＤとタスクＩＤとリソースＩＤとステータスとを格納する利用可能リソースデータベースと、タスク処理に対するリソースの割当を行う主処理部と、他サーバが所有する外部グリッドマシンのリソース状況を参照する外部リソース参照処理部と、他サーバが所有する外部グリッドマシン上のリソースの貸し出し予約を行う外部リソース予約処理部と、外部グリッドマシンから借り出したリソースを含めてタスク処理に対するリソースの割当を行うリソース割り当て処理部とを備え、ネットワークを介して接続されるグリッドマシンのリソースに実行処理の単位であるタスク処理を分配することにより分散処理を実行する複数サーバに設けられたコンピュータシステムのリソース管理プログラムであって、
前記主処理部に、前記所有リソースデータベースのステータスを参照して利用可能なグリッドＩＤ及びステータスを利用可能リソースデータベースに格納し、該格納した予約済みリソース数と前記タスクデータベースに格納した自己タスク処理に必要なリソース数とを比較し、該予約済みリソース数が前記自己タスク処理に必要なリソース数に比べて大きいか等しいか否かを判定する第１機能を実行させ、
前記外部リソース参照処理部に、前記予約済みリソース数が前記自己タスク処理に必要なリソース数に比べて大きいか等しいと判定したとき、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されているか否かを判定し、自己サーバが設定されていないと判定したとき、他サーバの所有リソースデータベースのグリッドマシンのステータスを参照して空きリソースの有無を判定し、空きリソースが有ると判定したとき、他サーバの所有リソースデータベースの空きグリッドマシンのステータスに予約を設定する第２機能を実行させること特徴とするリソース管理プログラム。
【請求項８】
前記外部リソース参照処理部に、前記第２工程において、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されていると判定したとき、自己サーバの所有リソースデータベースのステータスに予約を設定する第３工程を実行させることを特徴とする請求項７記載のリソース管理プログラム。
【請求項９】
前記外部リソース参照処理部に、前記第３工程において、自己又は他サーバが所有するグリッドのステータスが割り当てか否かを判定し、ステータスが割り当てでないと判定したとき、該割り当てでないリソースを未使用に変更してリソースを開放させることを特徴とする請求項７又は８記載のリソース管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタコンピュータが複数のグリッドマシンにコンピュータ処理の実行単位であるタスク処理の分配を行い、１つの計算を分散して行うグリッドコンピューティングに技術において、ネットワーク上の複数グリッドマシン間のリソース貸借制御を行うことができるリソース管理システム、リソース管理方法及びリソース管理プログラムに関する。
【背景技術】
【０００２】
近年、マスタコンピュータがグリッドマシン（リソースとも呼ぶ）にタスク処理の分配を行うことにより１つの計算を分散して行うグリッドコンピューティングが採用されており、このグリッドコンピューティング等の分散処理においては、計算機資源のグリッドマシンに対してジョブ（タスク処理）を割り当てることは、ジョブのパフォーマンス（終了時刻等）やリソース環境の稼働率を左右する決定要素となることが知られている。
【０００３】
このグリッドコンピューティング技術が記載された文献としては、下記の特許文献１が挙げられ、この特許文献１には、マスタコンピュータ及びスレーブコンピュータ（グリッドマシン）にそれぞれ接続されたエッジルータが、マスタコンピュータ及びスレーブコンピュータ相互間に設定されたリンクの帯域情報を収集し、この収集した帯域情報を含む情報をマスタコンピュータに通知し、タスク処理を割当てるときには使用率および帯域情報の双方をパラメータとしてスレーブコンピュータに対するタスク割当てを計算することによって、ネットワークのリソース情報を加味した制御を行ない、分散コンピューティングを最適化する技術が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−７８２８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
前述の特許文献１に記載の技術は、グリッドマシンの所有する処理性能は所有するリソースマシンの数・性能によって固定且つ有限であり、所有リソースに対してタスクが要求するリソース量が不一致になることによって、処理能力の不足や処理能力の余剰により不稼働なリソースが発生するという課題があった。
【０００６】
本発明の目的は、前述の従来技術による課題を解決しようとするものであり、処理能力不足や処理能力余剰による不稼働なリソースの発生を防止してリソースを効率的に配分することができるリソース管理システム、リソース管理方法及びリソース管理プログラムを提供することである。
【課題を解決するための手段】
【０００７】
前記目的を達成するため本発明は、ネットワークを介して接続されるグリッドマシンのリソースに実行処理の単位であるタスク処理を分配することにより分散処理を実行する複数サーバに設けられたリソース管理システムであって、
前記リソース管理システムが、自己のサーバが所有するグリッドマシンのグリッドＩＤ及びグリッドマシンの利用状態を表すステータスを格納する所有リソースデータベースと、自己のサーバが所有するグリッドマシンで処理すべきタスク処理に必要なリソース数を格納するタスクデータベースと、リソース管理システム同士のリソース貸借に際して相互に貸借可能なグリッドＩＤを格納するグリッド情報データベースと、利用可能な自グリッド及び貸与された他グリッドのグリッドＩＤとタスクＩＤとリソースＩＤとステータスとを格納する利用可能リソースデータベースと、前記タスク処理に対するリソースの割当を行う主処理部と、他サーバが所有する外部グリッドマシンのリソース状況を参照する外部リソース参照処理部と、他サーバが所有する外部グリッドマシン上のリソースの貸し出し予約を行う外部リソース予約処理部と、外部グリッドマシンから借り出したリソースを含めてタスク処理に対するリソースの割当を行うリソース割り当て処理部とを備え、
前記主処理部が、前記所有リソースデータベースのステータスを参照して利用可能なグリッドＩＤ及びステータスを利用可能リソースデータベースに格納し、該格納した予約済みリソース数と前記タスクデータベースに格納した自己タスク処理に必要なリソース数とを比較し、該予約済みリソース数が前記自己タスク処理に必要なリソース数に比べて大きいか等しいか否かを判定する第１工程を実行し、
前記外部リソース参照処理部が、前記予約済みリソース数が前記自己タスク処理に必要なリソース数に比べて大きいか等しいと判定したとき、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されているか否かを判定し、自己サーバが設定されていないと判定したとき、他サーバの所有リソースデータベースのグリッドマシンのステータスを参照して空きリソースの有無を判定し、空きリソースが有ると判定したとき、他サーバの所有リソースデータベースの空きグリッドマシンのステータスに予約を設定する第２工程を実行することを第１の特徴とする。
【０００８】
また、本発明は、前記第１の特徴のリソース管理システムにおいて、前記外部リソース参照処理部が、前記第２工程において、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されていると判定したとき、自己サーバの所有リソースデータベースのステータスに予約を設定する第３工程を実行することを第２の特徴とし、前記何れかの特徴のリソース管理システムにおいて、前記外部リソース参照処理部が、前記第３工程において、自己又は他サーバが所有するグリッドのステータスが割り当てか否かを判定し、ステータスが割り当てでないと判定したとき、該割り当てでないリソースを未使用に変更してリソースを開放することを第３の特徴とする。
【０００９】
更に、本発明は、自己のサーバが所有するグリッドマシンのグリッドＩＤ及びグリッドマシンの利用状態を表すステータスを格納する所有リソースデータベースと、自己のサーバが所有するグリッドマシンで処理すべきタスク処理に必要なリソース数を格納するタスクデータベースと、リソース管理システム同士のリソース貸借に際して相互に貸借可能なグリッドＩＤを格納するグリッド情報データベースと、利用可能な自グリッド及び貸与された他グリッドのグリッドＩＤとタスクＩＤとリソースＩＤとステータスとを格納する利用可能リソースデータベースと、タスク処理に対するリソースの割当を行う主処理部と、他サーバが所有する外部グリッドマシンのリソース状況を参照する外部リソース参照処理部と、他サーバが所有する外部グリッドマシン上のリソースの貸し出し予約を行う外部リソース予約処理部と、外部グリッドマシンから借り出したリソースを含めてタスク処理に対するリソースの割当を行うリソース割り当て処理部とを備え、ネットワークを介して接続されるグリッドマシンのリソースに実行処理の単位であるタスク処理を分配することにより分散処理を実行する複数サーバに設けられたコンピュータシステムのリソース管理方法であって、
前記主処理部に、前記所有リソースデータベースのステータスを参照して利用可能なグリッドＩＤ及びステータスを利用可能リソースデータベースに格納し、該格納した予約済みリソース数と前記タスクデータベースに格納した自己タスク処理に必要なリソース数とを比較し、該予約済みリソース数が前記自己タスク処理に必要なリソース数に比べて大きいか等しいか否かを判定する第１工程を実行させ、
前記外部リソース参照処理部に、前記予約済みリソース数が前記自己タスク処理に必要なリソース数に比べて大きいか等しいと判定したとき、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されているか否かを判定し、自己サーバが設定されていないと判定したとき、他サーバの所有リソースデータベースのグリッドマシンのステータスを参照して空きリソースの有無を判定し、空きリソースが有ると判定したとき、他サーバの所有リソースデータベースの空きグリッドマシンのステータスに予約を設定する第２工程を実行させることを第４の特徴とする。
【００１０】
また、本発明は、前記第４の特徴のリソース管理方法において、前記外部リソース参照処理部に、前記第２工程において、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されていると判定したとき、自己サーバの所有リソースデータベースのステータスに予約を設定する第３工程を実行させることを第５の特徴し、前記何れかの特徴のリソース管理方法において、前記外部リソース参照処理部に、前記第３工程において、自己又は他サーバが所有するグリッドのステータスが割り当てか否かを判定し、ステータスが割り当てでないと判定したとき、該割り当てでないリソースを未使用に変更してリソースを開放させることを第６の特徴とする。
【００１１】
更に、本発明は、自己のサーバが所有するグリッドマシンのグリッドＩＤ及びグリッドマシンの利用状態を表すステータスを格納する所有リソースデータベースと、自己のサーバが所有するグリッドマシンで処理すべきタスク処理に必要なリソース数を格納するタスクデータベースと、リソース管理システム同士のリソース貸借に際して相互に貸借可能なグリッドＩＤを格納するグリッド情報データベースと、利用可能な自グリッド及び貸与された他グリッドのグリッドＩＤとタスクＩＤとリソースＩＤとステータスとを格納する利用可能リソースデータベースと、タスク処理に対するリソースの割当を行う主処理部と、他サーバが所有する外部グリッドマシンのリソース状況を参照する外部リソース参照処理部と、他サーバが所有する外部グリッドマシン上のリソースの貸し出し予約を行う外部リソース予約処理部と、外部グリッドマシンから借り出したリソースを含めてタスク処理に対するリソースの割当を行うリソース割り当て処理部とを備え、ネットワークを介して接続されるグリッドマシンのリソースに実行処理の単位であるタスク処理を分配することにより分散処理を実行する複数サーバに設けられたコンピュータシステムのリソース管理プログラムであって、
前記主処理部に、前記所有リソースデータベースのステータスを参照して利用可能なグリッドＩＤ及びステータスを利用可能リソースデータベースに格納し、該格納した予約済みリソース数と前記タスクデータベースに格納した自己タスク処理に必要なリソース数とを比較し、該予約済みリソース数が前記自己タスク処理に必要なリソース数に比べて大きいか等しいか否かを判定する第１機能を実行させ、
前記外部リソース参照処理部に、前記予約済みリソース数が前記自己タスク処理に必要なリソース数に比べて大きいか等しいと判定したとき、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されているか否かを判定し、自己サーバが設定されていないと判定したとき、他サーバの所有リソースデータベースのグリッドマシンのステータスを参照して空きリソースの有無を判定し、空きリソースが有ると判定したとき、他サーバの所有リソースデータベースの空きグリッドマシンのステータスに予約を設定する第２機能を実行させること第７の特徴とする。
【００１２】
また、本発明は、前記第７の特徴のリソース管理プログラムにおいて、前記外部リソース参照処理部に、前記第２工程において、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されていると判定したとき、自己サーバの所有リソースデータベースのステータスに予約を設定する第３工程を実行させることを第８の特徴とし、前記何れかの特徴のリソース管理プログラムにおいて、前記外部リソース参照処理部に、前記第３工程において、自己又は他サーバが所有するグリッドのステータスが割り当てか否かを判定し、ステータスが割り当てでないと判定したとき、該割り当てでないリソースを未使用に変更してリソースを開放させることを第９の特徴とする。
【発明の効果】
【００１３】
本発明によるリソース管理システム、リソース管理方法及びリソース管理プログラムは、所有リソースデータベースのステータスを参照して利用可能なグリッドＩＤ及びステータスを利用可能リソースデータベースに格納し、該格納した予約済みリソース数とタスクデータベースに格納した自己タスク処理に必要なリソース数とを比較し、該予約済みリソース数が自己タスク処理に必要なリソース数に比べて大きいか等しいか否かを判定させ、予約済みリソース数が自己タスク処理に必要なリソース数に比べて大きいか等しいと判定したとき、自己サーバの利用可能リソースデータベースの利用可能なリソースが自己サーバに設定されているか否かを判定し、自己サーバが設定されていないと判定したとき、他サーバの所有リソースデータベースのグリッドマシンのステータスを参照して空きリソースの有無を判定し、空きリソースが有ると判定したとき、他サーバの所有リソースデータベースの空きグリッドマシンのステータスに予約を設定することによって、他サーバのリソースに対して自己サーバのタスク処理を割り当て、処理能力不足や処理能力余剰による不稼働なリソースの発生を防止することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態によるリソース管理システムを含むグリッドコンピュータシステムの構成を示す図。
【図２】本実施形態による主要処理部の処理フローを示す図。
【図３】本実施形態による外部リソース参照処理部の処理フローを示す図。
【図４】本実施形態による外部リソース予約処理部の処理フローを示す図。
【図５】本実施形態によるリソース割り当て処理部の処理フローを示す図。
【図６】本実施形態による所有リソースデータベースを説明するための図。
【図７】本実施形態によるグリッド情報データベースを説明するための図。
【図８】本実施形態によるタスクデータベースを説明するための図。
【図９】本実施形態による利用可能リソースデータベースを説明するための図。
【発明を実施するための形態】
【００１５】
以下、本発明によるリソース管理方法及びリソース管理プログラムを実現するリソース管理システムを含むグリッドコンピューティングシステムの一実施形態を図面を参照して詳細に説明する。
【００１６】
［構成］
本実施形態によるリソース管理システムを含むグリッドコンピューティングシステムは、図１に示す如く、本実施形態によるリソースにタスク分配を行うことにより１つの計算を分散して行うグリッドコンピューティングを行うリソース管理システム１０２を含むサーバ１０１と、同様にグリッドコンピューティングを行うリソース管理システム１１４を含むサーバ１１３と、該サーバ１０１及び１１３とネットワーク１１２を介して接続されるリソースである複数のグリッドマシン（ＰＣ）１２５・１２６・１２８・１２９とを備え、前記リソース管理システム１０２がグリッドマシン１２５及び１２６を所有（管轄）してリソースタスク分配を行うグリッドコンピューティングを制御し、前記リソース管理システム１１４がグリッドマシン１２８及び１２９を所有（管轄）してリソースタスク分配を行うグリッドコンピューティングを制御するように構成されている。なお、前記リソース管理システム１０２及び１１４は、サーバ１０１及び１１３上で稼動するグリッドマシンのリソース管理用ソフトウェアである。
【００１７】
前記リソース管理システム１０２は、ネットワーク上にある他のグリッドマシンのリソース管理システム（本例ではサーバ１１３上のリソース管理システム１１４）との間で相互にリソースの貸借を実施する主処理部１０３と、ネットワーク上にある他のグリッドマシンのリソース管理システム（本例ではサーバ１１３上のリソース管理システム１１４）のリソースを参照するための外部リソース参照処理部１０４と、ネットワーク上にある他のグリッドマシンのリソース管理システム（本例ではサーバ１１３上のリソース管理システム１１４）のリソースを予約するための外部リソース予約処理部１０６と、自己が管理するリソースの割り当てを制御するリソース割り当て処理部１０７と、自己のリソース管理システム１０２が所有するグリッドマシン１２５及び１２６の情報（ネットワークアドレスなど）・現在のステータスを格納するデータベースである所有リソースデータベース（ＤＢ）１０８と、自己のリソース管理システム１０２を含むグリッドマシンで処理すべきタスク処理に必要なリソース数を格納するタスクデータベース（ＤＢ）１０９と、リソース管理システム同士のリソース貸借に際して相互に貸借可能なシステムの情報（ネットワークアドレスなど）を格納するグリッド情報データベース（ＤＢ）１１０と、利用可能な自グリッド・貸与された他グリッドのリソース情報を一時的に格納する利用可能リソースデータベース（ＤＢ）１１１とを備える。
【００１８】
前記リソース管理システム１１２は、前述した前記リソース管理システム１０２と同様に、ネットワーク上にある他のグリッドマシンのリソース管理システム（本例ではサーバ１０１上のリソース管理システム１０２）との間で相互にリソースの貸借を実施する主処理部１１５と、ネットワーク上にある他のグリッドマシンのリソース管理システム（本例ではリソース管理システム１０２）のリソースを参照するための外部リソース参照処理部１１６と、ネットワーク上にある他のグリッドマシンのリソース管理システム（本例ではリソース管理システム１０２）のリソースを予約するための外部リソース予約処理部１１８と、自己が管理するリソースの割り当てを制御するリソース割り当て処理部１１９と、自己のリソース管理システム１１４が管轄所有するグリッドマシン１２８及び１２９の情報（ネットワークアドレスなど）・現在のステータスを格納するデータベースである所有リソースＤＢ１２０と、自己のリソース管理システム１１４を含むグリッドマシンで処理すべきタスク処理に必要なリソース数を格納するタスクＤＢ１２１と、リソース管理システム同士のリソース貸借に際して相互に貸借可能なシステムの情報（ネットワークアドレスなど）を格納するグリッド情報ＤＢ１２２と、利用可能な自グリッド・貸与された他グリッドのリソース情報を一時的に格納する利用可能リソースＤＢ１２３とを備える。
【００１９】
前記所有リソースＤＢ１０８は、リソース管理システム１０２が所有するリソースＰＣ１２５及び１２６の情報（ネットワークアドレスなど）・現在のステータスを登録するデータベースであって、図６（ａ）に示す如く、グリッドコンピュータのＩＤを表すグリッドＩＤと、リソースのＩＤを表すノードＩＤと、ネットワーク上のアドレスを表すＩＰアドレスと、対象リソースの未使用（予約もなく使用していないリソース）・内部予約（自己システムで使用予定のリソース）・外部予約（他システムで使用予定のリソース）・割当（実行中のリソース）別の状態を表すステータスの各項目情報とから成り、具体的には、図６（ｂ）に示しように、グリッドＩＤ「ＡＡＡ」且つノードＩＤ「１」のＩＰアドレスが「１９２．１６８．１０１．１０１」でありステータスが「未使用」、グリッドＩＤ「ＡＡＡ」且つノードＩＤ「２」のＩＰアドレスが「１９２．１６８．１０１．１０２」でありステータスが「外部予約」、グリッドＩＤ「ＡＡＡ」且つノードＩＤ「４」のＩＰアドレスが「１９２．１６８．１０１．１０４」でありステータスが「割当」、グリッドＩＤ「ＡＡＡ」且つノードＩＤ「６」のＩＰアドレスが「１９２．１６８．１０１．１０６」でありステータスが「内部予約」の如く、各リソースＩＤ毎にステータスを格納するように構成されている。
【００２０】
前記グリッド情報ＤＢ１１０は、リソース管理システム同士のリソース貸借に関して、相互に貸借可能なシステムの情報を登録するものであって、図７（ａ）に示す如く、グリッドマシンを識別するためのグリッドＩＤと、グリッドマシンの名称であるグリッド名称と、実行サーバのノード名である実行サーバ名と、該実行サーバのＩＰアドレスを表すＩＰアドレスと、グリッドマシンが所有（管理）するリソース料理表す所有リソース数と、貸し出し実施形態済みの重み付け（貸し出しの優先度）を表す優先度の各項目情報とから成り、具体的には、図７（ｂ）に示す如く、グリッドＩＤ「ＡＡＡ」のグリッド名が「グリッド１」・実行サーバ名が「サーバ１」・ＩＰアドレスが「１３１．８８．１８１．１０１」・所有リソース数が「２５６」・優先度が「１」であり、グリッドＩＤ「ＢＢＢ」のグリッド名が「グリッド２」・実行サーバ名が「サーバ２」・ＩＰアドレスが「１３１．８８．１８２．１０１」・所有リソース数が「２５６」・優先度が「２」であり、グリッドＩＤ「ＣＣＣ」のグリッド名が「グリッド３」・実行サーバ名が「サーバ３」・ＩＰアドレスが「１３１．８８．１８３．１０１」・所有リソース数が「２５６」、優先度が「３」の如く格納されている。
【００２１】
前記タスクＤＢ１０９は、リソース管理システムを含むグリッドマシンで処理すべきタスク情報であるタスクの処理に必要なリソース数を格納するものであって、図８（ａ）に示す如く、タスクのＩＤを表すタスクＩＤと、当該タスクの名称を表すタスク名と、当該タスクの実行に必要とするリソース量を表す必要リソース量と、タスクを実行する際の最大の多重度を表す実行多重度と、タスクの状態を表すタスクステータスの各項目情報とから成り、具体的には、図８（ｂ）に示す如く、タスクＩＤ「０００００１」且つタスク名「シミュレーション１」のタスクの必要リソース量が「６」・実行多重度が「６」・タスクステータスが「外部予約中」であり、タスクＩＤ「０００００２」且つタスク名「シミュレーション２」のタスクの必要リソース量が「２」・実行多重度が「１」・タスクステータスが「実行中」の如く格納されている。
【００２２】
前記利用可能リソースＤＢ１１１は、利用可能な自グリッド・貸与された他グリッドのリソース情報を一時的に書き込むためのものであって、図９（ａ）に示す如く、リソースを使用するグリッドマシンを識別するためのグリッドＩＤと、タスクのＩＤを表すタスクＩＤと、サービスを提供するリソースコンピュータ（ＰＣ）のＩＤを表すリソースＩＤと、サーバのステータスを表すステータス（ｓｔａｕｓ）との各項目情報とから成り、具体的には、図９（ｂ）のように、グリッドＩＤ「ＡＡＡ」のタスクＩＤ「０００００１」のタスクのリソースＩＤが「Ａ００００１」且つステータス（ｓｔａｕｓ）が「実行中」であり、グリッドＩＤ「ＡＡＡ」のタスクＩＤ「０００００２」のタスクのリソースＩＤが「Ａ００００２」且つステータス（ｓｔａｕｓ）が「外部予約中」であり、グリッドＩＤ「ＢＢＢ」のタスクＩＤ「０００００２」のタスクのリソースＩＤが「Ｂ００００１」且つステータス（ｓｔａｕｓ）が「外部実行中」の如く格納されている。
【００２３】
なお、前記リソース管理システム１１４における主処理部１１５・外部リソース参照処理部１１６・外部リソース予約処理部１１８・リソース割り当て処理部１１９・所有リソースＤＢ１２０・タスクＤＢ１２１・グリッド情報ＤＢ１２２・利用可能リソースＤＢ１２３も、前記リソース管理システム１０２の各部位と同じ構成及び機能を有するが、同様なためここでは説明を省略する。
【００２４】
［動作］
さて、前述のように構成されたリソース管理方法及びリソース管理プログラムを実現するリソース管理システムを含むグリッドコンピューティングシステムは、前記リソース管理システム１０２及び前記リソース管理システム１１４が相互にリソースの貸借を実施するものであるが、ここではリソース管理システム１０２がリソース管理システム１１４を賃借を行う場合を例にとって説明する。
【００２５】
まず、本実施形態によるリソース管理システム１０２の主処理部１０３は、図２に示す如く、自己の所有リソースＤＢ１０８を参照して、ステータスカラムがリソース管理システム１１４に貸すことができる未使用の空きリソース予約用に検索を行うステップＳ２０１と、該ステップＳ２０１において利用可能な空きリソースを利用可能リソースＤＢ１１１のステータスカラムに「外部予約」として書き込むステップＳ２０２と、利用可能リソースＤＢ１１１を参照して、予約済みリソースの数をカウントして変数＄２０３に格納するステップＳ２０３と、タスクＤＢ１０９を参照してタスクの必要リソース数を変数＄２０４に格納するステップＳ２０４と、前記変数＄２０３が変数＄２０４に比べて大きいか等しいか否か（＄２０３≧＄２０４？）を判定するステップＳ２０５と、該ステップＳ２０５において変数＄２０３が変数＄２０４に比べて大きいか等しい（ｔｒｕｅ）と判定したとき、後述する外部ルーチンを呼び出してリソース割り当て処理を実行するステップＳ２０８と、処理を終了するステップＳ２０９と、前記ステップＳ２０５において変数＄２０３が変数＄２０４に比べて大きいか等しくない（ｆａｌｓｅ）と判定したとき、外部グリッド情報を参照してレコード数が１より大きいか等しいか否かをグリッド情報ＤＢ１１０の登録行数を計数して判定し、大きいか等しくない（ｆａｌｓｅ）と判定したときに前記ステップＳ２０８に移行するステップＳ２０６と、該ステップＳ２０６において外部グリッド情報のレコード数が１より大きいか等しい（ｔｒｕｅ）と判定したとき、後述する外部ルーチン呼び出してリソース割り当て処理を実行して前記ステップＳ２０８に移行するステップＳ２０７とを実行するように動作する。
【００２６】
次に、本実施形態によるグリッドコンピューティングシステムは、前記ステップＳ２０７によって実行するリソース割り当て処理において、図３に示す如く、グリッド情報ＤＢ１１０を参照して格納されているグリッド情報（グリッドＩＤ・グリッド名称・実行サーバ名・ＩＰアドレス・所有リソース数・優先度から成る複数レコード）を参照するステップＳ３０１と、前記格納されたグリッド数だけ以降の繰り返し処理を開始するステップＳ３０２と、後述する外部ルーチンである外部リソース予約処理部による外部リソース予約処理を実行するステップＳ３０３と、前記参照したグリッドのレコードが終了コードか否か（「ＲＣ＝０？」）を判定し、最終コード（レコード）でないと（ＦＬＡＳＥ）と判定したときに前記ステップＳ３０２により開始した処理の繰り返しを終了するステップＳ３０６と、前記ステップＳ３０４によって最終コード（レコード）であると判定した（ＴＲＵＥ）とき、外部リソース管理システム１１４の所有リソースＤＢ１２０のステータスカラムが「未使用」の行（レコード）を取り出し、自己の利用可能リソースＤＢ１１１に書き込んで前記ステップＳ３０６に移行するステップＳ３０５とを実行することによって、他のリソース管理システム１１４の空きリソース状況を参照して自己の利用可能リソースＤＢ１１１に格納することができる。
【００２７】
次に、本システムは、前記ステップＳ３０３による外部リソース予約処理において、図４に示す如く、外部リソース予約処理部１０６が、他システムの所有リソースＤＢ１２０を参照してステータスカラムが「未使用」の行（レコード）を検索して行数を変数＄４０１に代入するステップＳ４０１と、変数＄４０１の値が値「１」以上か否かを判定（＄４０１≧１？）するステップＳ４０２と、該ステップＳ４０２において変数＄４０１の値が値「１」未満（ＦＡＬＳＥ）と判定したとき、終了コードを値「１」に設定（ＲＣ＝１）するステップＳ４０５と、前記ステップＳ４０５において変数＄４０１の値が値「１」以上と判定（ＴＵＲＥ）したとき、他システムの所有リソースＤＢ１２０のステータス「未使用」の行（レコード）に対してステータスを「外部予約」に変更するステップＳ４０３と、終了コードを値「０」に設定（ＲＣ＝０）するステップＳ４０４と、前記ステップＳ４０５又はステップＳ４０４に続いて処理を終了（変数ＲＣで処理をｅｘｉｔ）するステップＳ４０６とを実行することによって、他システムに自己のグリッドを予約することができる。
【００２８】
更に、本実施形態によるグリッドコンピューティングシステムは、図５に示す如く、リソース割り当て処理部１０７が、図５に示す如く、自己システムの利用可能リソースＤＢ１１１を参照してステータス「未使用」の行を取り出してソート（所有グリッド登録順、優先度順）するステップＳ５０１と、該ステップＳ５０１によるソート結果から必要タスク数（変数＄２０４）分の自己システムの利用可能リソースＤＢ１１１のリソースを取り出して確保し、このステータスを「割当」に変更するステップＳ５０２と、該ステップＳ５０２によってステータスを変更した利用可能リソースＤＢ１１１のリソースを読み込むステップＳ５０３と、前記ステップＳ５０３により読み込んだリソースのレコード数だけ以降の繰り返し処理を開始するステップＳ５０４と、前記読み込んだレコードのサーバＩＤカラムが「自サーバ」か否かを判定するステップＳ５０５と、該ステップＳ５０５において、サーバＩＤカラムが「自サーバ」であると判定（ＴＵＲＥ）したとき、ステータスが「割当」か否かを判定するステップＳ５０６と、該ステップＳ５０６においてステータスが「割当」と判定したとき、前記取り出し行と一致する所有リソースＤＢ１０８のステータスを「割当」に変更するステップＳ５０７と、前記ステップＳ５０６においてステータスが「割当」でないと判定（ＦＡＬＳＥ）したとき、前記取り出し行と一致する所有リソースＤＢ１０８のステータスを「未使用」に変更してリソースを開放するステップＳ５０８とを実行することによって、自己サーバのステータスが「割当」に設定されたグリッドを自己の所有リソースＤＢ１０８に設定すると共に自己サーバのステータスが「割当」でないときには所有リソースＤＢ１０８の該当グリッドのステータスを「未使用」に変更してリソース開放処理を行うように動作する。
【００２９】
また、本リソース割り当て処理部１０７は、前記ステップＳ５０５においてサーバＩＤカラムが「自サーバ」でないと判定（ＦＡＬＳＥ）したとき、ステータスが「割当」か否かを判定するステップＳ５０９と、該ステップＳ５０９においてステータスが「割当」と判定したとき、前記取り出し行と一致する他システムの所有リソースＤＢ１２０のステータスを「割当」に変更するステップＳ５１０と、前記ステップＳ５０９においてステータスが「割当」でないと判定（ＦＡＬＳＥ）したとき、前記取り出し行と一致する所有リソースＤＢ１２０のステータスを「未使用」に変更してリソースを開放するステップＳ５１１とを実行することによって、他サーバのステータスが「割当」に設定されたグリッドを他の所有リソースＤＢ１２０に設定すると共に他サーバのステータスが「割当」でないときには所有リソースＤＢ１２０の該当グリッドのステータスを「未使用」に変更してリソース開放処理を行うように動作する。
【００３０】
更に、本システムは、前記ステップＳ５０４により開始したステップＳ５０３により読み込んだリソースのレコード数分の処理終了をステップＳ５１２によって判定したとき、自己の利用可能リソースＤＢ１１１のステータス「割当」以外のレコードを削除するステップＳ５１３とを実行することによって、予約破棄分のステータスクリア処理を行うように動作する。
【００３１】
以上述べた如く、本実施形態によるリソース管理方法及びリソース管理プログラムを実現するリソース管理システムを含むグリッドコンピューティングシステムは、ネットワークを介して接続される各リソース管理システム１０２（１１４）が、自グリッドマシンのリソースを管理する所有リソースＤＢ１０８（１２０）と、実行タスク情報を格納するタスクＤＢ１０９（１２１）と、リソース貸借を実施するグリッドマシン情報を管理するグリッド情報ＤＢ１１０（１２２）と、実行タスクで利用可能なリソース（自グリッド所有、他グリッド所有のリソース）を一括管理する利用可能リソースＤＢ１１１（１２３）と、タスクに対するリソースの割当を実施する主処理部１０３（１１５）と、外部グリッドマシンのリソース状況を確認する外部リソース参照処理部１０４（１１６）と、外部グリッドマシン上のリソースの貸し出し予約を実施する外部リソース予約処理部１０６（１１８）と、外部グリッドマシンから借り出したリソースを含めてタスクにリソースを割当実施するリソース割り当て処理部１０７（１１９）とを備えたことによって、不稼働なリソースの発生を防止してリソースを効率的に配分することができる。
【符号の説明】
【００３２】
１０１  サーバ、１０２  リソース管理システム、１０３  主処理部、
１０４  外部リソース参照処理部、１０６  外部リソース予約処理部、
１０７  リソース割り当て処理部、１１２  リソース管理システム、
１１３  サーバ、１１４  リソース管理システム、１１５  主処理部、
１１６  外部リソース参照処理部、１１８  外部リソース予約処理部、
１１９  リソース割り当て処理部、１２５  グリッドマシン、
１２８  グリッドマシン、１０８  所有リソースＤＢ（データベース）、
１０９  タスクＤＢ（データベース）、
１１０  グリッド情報ＤＢ（データベース）、
１１１  利用可能リソースＤＢ（データベース）、
１２０  所有リソースＤＢ（データベース）、
１２１  タスクＤＢ（データベース）、
１２２  グリッド情報ＤＢ（データベース）、
１２３  利用可能リソースＤＢ（データベース）
【図１】
2014063449.tif 000003
【図２】
2014063449.tif 000004
【図３】
2014063449.tif 000005
【図４】
2014063449.tif 000006
【図５】
2014063449.tif 000007
【図６】
2014063449.tif 000008
【図７】
2014063449.tif 000009
【図８】
2014063449.tif 000010
【図９】
2014063449.tif 000011