JP2007193471A - 予約管理プログラム、予約管理装置、および予約管理方法 - Google Patents

予約管理プログラム、予約管理装置、および予約管理方法 Download PDF

Info

Publication number
JP2007193471A
JP2007193471A JP2006009496A JP2006009496A JP2007193471A JP 2007193471 A JP2007193471 A JP 2007193471A JP 2006009496 A JP2006009496 A JP 2006009496A JP 2006009496 A JP2006009496 A JP 2006009496A JP 2007193471 A JP2007193471 A JP 2007193471A
Authority
JP
Japan
Prior art keywords
reservation
period
resource
empty
resources
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.)
Granted
Application number
JP2006009496A
Other languages
English (en)
Other versions
JP4629587B2 (ja
Inventor
Hideyuki Kageyama
英幸 景山
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006009496A priority Critical patent/JP4629587B2/ja
Priority to US11/407,318 priority patent/US7752310B2/en
Publication of JP2007193471A publication Critical patent/JP2007193471A/ja
Application granted granted Critical
Publication of JP4629587B2 publication Critical patent/JP4629587B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5014Reservation

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)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】ITリソースを有効に活用することができるようにする。
【解決手段】予約要求7が入力されると、ITリソース検出手段2により、希望予約期間に予約を登録可能なITリソースが検出される。次に、空き期間計算手段3により、ITリソース検出手段2で検出された各ITリソースの予約情報に基づき、希望予約期間を包含する空き期間が計算される。さらに、最多空き期間検出手段4により、空き期間計算手段3で計算された空き期間が同一となるITリソースの数が最も多い最多空き期間が検出される。次に、ITリソース決定手段5により、最多空き期間と同じ空き期間を有するITリソースの中から、予約要求7に応じた予約登録の対象とするITリソースが決定される。そして、予約登録手段6により、予約情報リポジトリ1に対して、ITリソース決定手段5で決定されたITリソースに対する予約登録が行われる。
【選択図】図1

Description

本発明はITリソースのユーザへの割り当てを行う予約管理プログラム、予約管理装置、および予約管理方法に関し、特にグリッドコンピューティングのリソースを割り当てるための予約管理プログラム、予約管理装置、および予約管理方法に関する。
コンピュータによる情報処理を高速に行うための技術として、グリッドコンピューティングと呼ばれる技術がある。グリッドコンピューティングでは、ネットワークを介して複数のコンピュータを接続し、利用者が各コンピュータから必要な処理能力(ITリソース)を使用して、高速な情報処理を実行させるものである。
このようなグリッドコンピューティングの技術では、ユーザに対して、ITリソースを効率的に割り当てる必要がある。そこで、ジョブスケジューラがジョブのスケジューリングに先立って資源を仮予約することで、資源の予約状況を正確に把握し、最適な資源の組み合わせを選ぶようなシステムがある(例えば、特許文献1参照)。
特開2004−302748号公報
ところで、ビジネスグリッドコンピューティングを実現するソフトウェアは、業務管理者による業務の予約要求時に、業務が必要とするITリソースの条件(スペックや予約期間)に従い、最適なITリソースの割り当てを行う(ブローカリング)。このときブローカリング機能では、業務管理者の要件を満たした上で、「ITリソースの遊休期間を減らし、できるだけ多くの予約受付を可能にする」といったリソース有効活用の要件を満たしたITリソース割り当てを行うことが望まれている。
しかし、グリッドコンピューティングのITリソース予約における有効活用に関するアルゴリズムについては、現状では確立されていない。特許文献1の技術は、予約の失敗が連続して発生することを避けることが目的となっており、リソースの有効活用のためには不十分である。
本発明はこのような点に鑑みてなされたものであり、ITリソースを有効に活用することができる予約管理プログラム、予約管理装置、および予約管理方法を提供することを目的とする。
本発明では上記課題を解決するために、図1に示すような予約管理プログラムが提供される。本発明に係る予約管理プログラムは、ITリソースの利用予約を管理するために、図1に示す機能をコンピュータに実行させることができる。
予約情報リポジトリ1は、ITリソース毎の予約情報を格納する。ITリソース検出手段2は、希望予約期間を示す予約要求7が入力されると、予約情報リポジトリ1を参照し、希望予約期間に予約を登録可能なITリソースを検出する。空き期間計算手段3は、ITリソース検出手段2で検出された各ITリソースの予約情報に基づき、希望予約期間を包含する空き期間を計算する。最多空き期間検出手段4は、空き期間計算手段3で計算された空き期間が同一となるITリソースの数が最も多い最多空き期間を検出する。ITリソース決定手段5は、最多空き期間と同じ空き期間を有するITリソースの中から、予約要求7に応じた予約登録の対象とするITリソースを決定する。予約登録手段6は、予約情報リポジトリ1に対して、ITリソース決定手段5で決定されたITリソースに対する予約登録を行う。
このような予約管理プログラムを実行するコンピュータによれば、予約要求7が入力されると、ITリソース検出手段2により、希望予約期間に予約を登録可能なITリソースが検出される。次に、空き期間計算手段3により、ITリソース検出手段2で検出された各ITリソースの予約情報に基づき、希望予約期間を包含する空き期間が計算される。さらに、最多空き期間検出手段4により、空き期間計算手段3で計算された空き期間が同一となるITリソースの数が最も多い最多空き期間が検出される。次に、ITリソース決定手段5により、最多空き期間と同じ空き期間を有するITリソースの中から、予約要求7に応じた予約登録の対象とするITリソースが決定される。そして、予約登録手段6により、予約情報リポジトリ1に対して、ITリソース決定手段5で決定されたITリソースに対する予約登録が行われる。
本発明では、最多空き期間と同じ空き期間を有するITリソースの中から予約対象を決定するようにしたため、次に入る予約が成立しやすくなる。その結果、予約要求に応じたITリソースを確保できる可能性が高くなり、ITリソースの利用効率が高くなる。
以下、本発明の実施の形態を図面を参照して説明する。
図1は、本実施の形態の概略を示す図である。本実施の形態に係る予約管理装置は、ITリソース(サーバなどのハードウェアリソースや、サーバに実装されているソフトウェアリソースなど)の予約管理を行うため、予約情報リポジトリ1、ITリソース検出手段2、空き期間計算手段3、最多空き期間検出手段4、ITリソース決定手段5、および予約登録手段6を有している。
予約情報リポジトリ1は、ITリソース毎の予約情報を格納する。例えば、予約情報リポジトリ1には、予約された業務の開始日と終了日とが設定される。
ITリソース検出手段2は、希望予約期間を示す予約要求7が入力されると、予約情報リポジトリ1を参照し、希望予約期間に予約を登録可能なITリソースを検出する。換言すると、ITリソース検出手段2は、予約希望期間で示される期間に予約が登録されていないITリソースを検出する。
空き期間計算手段3は、ITリソース検出手段2で検出された各ITリソースの予約情報に基づき、希望予約期間を包含する空き期間を計算する。これにより、各ITリソースの予約状況に関して、希望予約期間の前後にどれほどの空き期間が存在するのかが算出される。
最多空き期間検出手段4は、空き期間計算手段3で計算された空き期間が同一となるITリソースの数が最も多い最多空き期間を検出する。このとき、最多空き期間検出手段4は、例えば、比較単位となる単位期間を、時間単位、日単位、週単位など、任意に設定することができる。どの程度の単位期間とするのかは、ITリソースで提供されるサービスの内容に応じて、業務管理者が設定する。例えば、日単位で空き期間の同一性を判定する場合、ITリソースの予約登録が時分の単位で開始時刻と終了時刻とが設定されていても、空き期間の同一性の比較において時分の単位は無視される。
ITリソース決定手段5は、最多空き期間と同じ空き期間を有するITリソースの中から、予約要求7に応じた予約登録の対象とするITリソースを決定する。すなわち、空き期間が同一となるITリソースが多数あれば、そのうちの1つに予約登録を行っても、その後の同様の希望予約期間を指定した予約登録が可能となる。すなわち、以降の予約登録が成立する可能性を低下させずにすむ。
予約登録手段6は、予約情報リポジトリ1に対して、ITリソース決定手段5で決定されたITリソースに対する予約登録を行う。
このような予約管理プログラムを実行するコンピュータによれば、予約要求7が入力されると、ITリソース検出手段2により、希望予約期間に予約を登録可能なITリソースが検出される。次に、空き期間計算手段3により、ITリソース検出手段2で検出された各ITリソースの予約情報に基づき、希望予約期間を包含する空き期間が計算される。さらに、最多空き期間検出手段4により、空き期間計算手段3で計算された空き期間が同一となるITリソースの数が最も多い最多空き期間が検出される。次に、ITリソース決定手段5により、最多空き期間と同じ空き期間を有するITリソースの中から、予約要求7に応じた予約登録の対象とするITリソースが決定される。そして、予約登録手段6により、予約情報リポジトリ1に対して、ITリソース決定手段5で決定されたITリソースに対する予約登録が行われる。
このように、最多空き期間と同じ空き期間を有するITリソースの中から予約対象を決定するようにすることで、次に入る予約が成立しやすくなる。その結果、予約要求に応じたITリソースを確保できる可能性が高くなり、ITリソースの利用効率が高くなる。
このような予約管理装置は、グリッドコンピューティングにおける各コンピュータで提供される機能への業務の振り分け処理に利用できる。グリッドコンピューティングにおける業務の振り分け機能は、ブローカリングと呼ばれる。以下、グリッドコンピューティングのブローカリングに、図1に示す機能を適用した場合の例を採り、具体的な実施の形態を説明する。
次に、本実施の形態の詳細を説明する。
図2は、本実施の形態のシステム構成例を示す図である。本実施の形態では、サーバ21,22,・・・などのITリソース群20に対して、ネットワーク10を介して複数のクライアント31,32,・・・と管理サーバ100とが接続されている。管理サーバ100は、ITリソース群20で提供されるITリソースの利用スケジュールを管理する。具体的には、管理サーバ100は、クライアント31,32,・・・からの要求に応じて、クライアントに対して割り当てるITリソースを決定する。
図3は、本実施の形態に用いる管理サーバのハードウェア構成例を示す図である。管理サーバ100は、CPU(Central Processing Unit)101によって装置全体が制御されている。CPU101には、バス107を介してRAM(Random Access Memory)102、ハードディスクドライブ(HDD:Hard Disk Drive)103、グラフィック処理装置104、入力インタフェース105、および通信インタフェース106が接続されている。
RAM102には、CPU101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に必要な各種データが格納される。HDD103には、OSやアプリケーションプログラムが格納される。
グラフィック処理装置104には、モニタ11が接続されている。グラフィック処理装置104は、CPU101からの命令に従って、画像をモニタ11の画面に表示させる。
入力インタフェース105には、キーボード12とマウス13とが接続されている。入力インタフェース105は、キーボード12やマウス13から送られてくる信号を、バス107を介してCPU101に送信する。
通信インタフェース106は、ネットワーク10に接続されている。通信インタフェース106は、ネットワーク10を介して、他のコンピュータとの間でデータの送受信を行う。
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
図4は、管理サーバの機能を示すブロック図である。管理サーバ100は、構成情報取得部110、構成情報管理リポジトリ120、予約情報管理リポジトリ130、およびブローカリング部140を有している。
構成情報取得部110は、ITリソース群20を構成するサーバ21,22,・・・から、提供しているITリソースの情報を収集し、構成情報管理リポジトリ120に格納する。
構成情報管理リポジトリ120は、ITリソースの構成情報を管理するデータベースである。
予約情報管理リポジトリ130は、ITリソースの利用予約状況を管理するデータベースである。
ブローカリング部140は、クライアント31を介したITリソースの予約要求に応じて、そのクライアント31に対するITリソースの割り当てを行う。その際、ブローカリング部140は、構成情報リポジトリと予約情報リポジトリを参照して業務管理者の要求する条件にマッチしたITリソースの決定を行い、その結果を予約情報管理リポジトリ130に格納する。このITリソースの決定は、リソース有効活用の観点から行われる。
リソース有効活用のため、ブローカリング部140は、ある予約のブローカリングにおいてその次に入る予約をより成立させやすくするよう、空き期間の断片化をできるだけ抑止するITリソースに予約登録を行う。空き期間の断片化を抑止するため、ブローカリング部140は、条件に合致したITリソースの空き期間の時系列に着目し、空き期間の同一性などを比較して、予約登録対象とするITリソースを決定する。
図5は、構成情報管理リポジトリのデータ構造例を示す図である。構成情報管理リポジトリ120では、ITリソースと構成情報との欄が設けられている。
ITリソースの欄には、ITリソースを提供するサーバの識別情報が設定される。構成情報の欄には、対応するサーバで提供されるITリソースの構成情報が設定される。
ITリソースの構成情報には、サーバのハードウェア構成とソフトウェア構成とが含まれる。ハードウェア構成は、例えば、CPUの処理能力、メモリ容量、ディスク容量などである。ソフトウェア構成は、OSの種別と版数、ミドルウェアの種別と版数などである。
図6は、予約情報管理リポジトリのデータ構造例を示す図である。予約情報管理リポジトリ130には、予約期間、ITリソース、ITリソース利用業務の欄が設けられている。
予約期間の欄には、予約されている期間が設定されている。予約期間の欄は、開始日と終了日との欄に分かれている。開始日の欄には、予約の開始日が設定される。終了日の欄には、予約の終了日が設定される。
ITリソースの欄には、予約されたITリソースに対応するサーバの識別情報(サーバ#1、サーバ#2、サーバ#3、サーバ#4、サーバ#5、サーバ#6)が設定される。
ITリソース利用業務の欄には、ITリソースを利用する業務の名称(業務a、業務b、業務c、業務d、業務e、業務f、業務g、業務h、業務i、業務j、業務k、業務l、業務m、業務n)が設定される。
このような予約情報管理リポジトリ130によって、各ITリソースの予約状況がブローカリング部140で管理される。
このような構成の管理サーバ100によって、クライアント31からの要求に応じてITリソースの割り当てが行われる。業務管理者は、クライアント31に表示されたITリソース予約画面から所定事項を入力することで、ITリソースの予約要求をクライアント31から管理サーバ100に対して予約要求を送信することができる。
図7は、ITリソース予約画面の例を示す図である。ITリソース予約画面40には、業務名表示部41、希望期間入力部42、および予約ボタン43が設けられている。
業務名表示部41には、予約対象の業務の名称が表示される。例えば、業務管理者は、業務を指定し、その業務に対するITリソース予約画面40の表示要求をクライアント31に入力する。すると、クライアント31は、表示要求で指定された業務の業務名が業務名表示部41に表示されたITリソース予約画面40を、モニタの画面に表示する。
希望期間入力部42は、業務の予約を希望する期間を入力するためのテキストボックスである。希望期間入力部42には、予約を希望する期間の開始日と終了日とを入力することができる。
予約ボタン43は、予約要求を管理サーバ100に送信するためのボタンである。予約ボタン43が押下されると、業務名表示部41に表示されている業務に対する希望期間入力部42に入力された期間の予約要求が、クライアント31から管理サーバ100に送信される。
クライアント31から管理サーバ100に対して予約要求が送信されると、管理サーバ100のブローカリング部140において、ITリソース予約処理が行われる。
図8は、ITリソース予約処理の手順を示すフローチャートである。以下、図8に示す処理をステップ番号に沿って説明する。
[ステップS11]ブローカリング部140は、クライアント31からの予約要求を受け付ける。
[ステップS12]ブローカリング部140は、構成情報管理リポジトリ120と予約情報管理リポジトリ130とを参照する。
[ステップS13]ブローカリング部140は、ITリソースの空き期間の断片化をできるだけ抑止するように、予約要求で指定された業務で利用するITリソースを決定する。この処理の詳細は後述する。
[ステップS14]ブローカリング部140は、決定したITリソースの予約情報を、予約情報管理リポジトリ130に格納する。
[ステップS15]ブローカリング部140は、業務管理者が利用するクライアント31に対して、決定したITリソースの内容を応答する。
以上のような手順で、ITリソースの予約処理が進行する。以下、ステップS13に示したITリソース決定処理の内容を詳細に説明する。
図9は、ITリソース決定処理の手順を示すフローチャートである。以下、図9に示す処理をステップ番号に沿って説明する。
[ステップS21]ブローカリング部140は、予約可能なITリソース候補を、構成情報管理リポジトリ120と予約情報管理リポジトリ130とから検索し、該当するITリソース候補を取得する。具体的には、ブローカリング部140は、まず構成情報管理リポジトリ120を参照し、予約要求で示される業務を実行するために必要な要素を備えたITリソース(サーバ)を特定する。そして、ブローカリング部140は、特定したITリソースに関する予約状況を予約情報管理リポジトリ130で確認し、指定された業務を実行可能なITリソースのうち、予約の希望期間が空いているITリソースを取得し、予約管理テーブルを生成する。
図10は、予約管理テーブルのデータ構造例を示す図である。予約管理テーブル50には、ITリソース、空き期間、直前予約キャンセル後空き期間長、直後予約キャンセル後空き期間長、選択候補フラグ、および決定フラグの欄が設けられている。
ITリソースの欄には、予約可能なサーバの識別情報が設定される。空き期間の欄には、対応するサーバのITリソースの空き期間(予約要求で指定された希望期間を包含する期間)が設定される。
直前予約キャンセル後空き期間長の欄には、直前の予約がキャンセルされた場合の空き期間長が設定される。直後予約キャンセル後空き期間長の欄には、直後の予約がキャンセルされた場合の空き期間長が設定される。
選択候補フラグの欄には、対応するITリソースが選択候補と判定されたか否かを示すフラグ(選択候補フラグ)が設定される。選択候補と判定された場合、選択候補フラグがONとなる。それ以外の場合、選択候補フラグはOFFである。選択候補フラグの初期値はOFFである。
決定フラグの欄には、対応するITリソースが、予約対象に決定されたか否かを示すフラグ(決定フラグ)が設定される。決定フラグは、予約対象に決定された場合はONに設定され、それ以外の場合はOFFである。決定フラグの初期値はOFFである。
以下、図9に戻り、ステップS22以降の処理を説明する。
[ステップS22]ブローカリング部140は、ステップS21で取得されたITリソースの空き期間を比較し、空き期間の長さが全て同じか否かを判定する。空き期間の長さが同じであれば処理がステップS24に進められる。空き期間の長さが同じでなければ、処理がステップS23に進められる。
[ステップS23]ブローカリング部140は、取り出されたITリソースの空き期間の長さに応じて、適当なITリソースを予約対象に決定する。例えば、ブローカリング部140は、空き期間の長さが最も短いITリソースを、予約対象のITリソースに決定する。その後、ITリソース決定処理が終了する。
[ステップS24]ブローカリング部140は、空き期間が同一のITリソースを1つのエントリに統合し、空き期間の情報が登録された空き期間テーブルを生成する。そして、ブローカリング部140は、同じ空き期間を持つITリソース数をカウントし、空き期間テーブルに登録する。
図11は、空き期間テーブルのデータ構造例を示す図である。空き期間テーブル51には、空き期間、期間カウンタ、選択候補期間フラグ、および決定期間フラグの欄が設けられている。
空き期間の欄には、ITリソースの空き期間が設定される。期間カウンタの欄には、対応する空き期間を有するITリソースの数が設定される。
選択候補期間フラグの欄には、空き期間が選択候補と判定されたか否かを示すフラグ(選択候補期間フラグ)が設定される。選択候補フラグは、選択候補と判定された空き期間に対してONが設定される。それ以外の空き期間に対しては、OFFが設定される。
決定期間フラグの欄には、予約対象として決定した期間か否かを示すフラグ(決定期間フラグ)が設定される。何れかの空き期間が予約対象として決定した場合、その空き期間の決定フラグがONに設定され、それ以外の空き期間がOFFに設定される。
以下、図9に戻り、ステップS25以降の処理を説明する。
[ステップS25]ブローカリング部140は、空き期間テーブルのエントリ数が複数あるか(空き期間のバリエーションが2種類以上あるか)否かを判定する。エントリ数が複数ある場合、処理がステップS27に進められる。エントリ数が1つの場合、処理がステップS26に進められる。
[ステップS26]ブローカリング部140は、空き期間のバリエーションが1種類しか無い場合、予約管理テーブル50に設定されている全てのITリソースを選択候補とする。すなわち、ブローカリング部140は、予約管理テーブル50内の全てのエントリの選択候補フラグをONにする。その後、処理がステップS30に進められる。
[ステップS27]ブローカリング部140は、選択候補期間の決定処理を行う。具体的には、ブローカリング部140は、空き期間のバリエーションが複数ある場合、ITリソース数が最も多い空き期間を全て選択候補期間とする。すなわち、ブローカリング部140は、空き期間テーブル51の中から、ITリソース数が最も多い空き期間を選択し、対応する選択候補期間フラグをONに設定する。このとき、空き期間が同一となるITリソース数が全ての空き期間で同じであれば、全ての空き期間が選択される。
このように、ITリソース数が多い空き期間を優先するのは、次の予約の間口を狭めないためである。すなわち、同じ空き期間を有するITリソースが多数あれば、そのITリソースに予約を確定した後、同様の期間を希望する予約要求が発行された場合にも、その予約要求に応じたITリソースの予約が可能となる。
[ステップS28]ブローカリング部140は、空き期間決定処理を行う。具体的には、ブローカリング部140は、より近い未来の空き期間を、予約対象の空き期間として決定する。より近い未来の空き期間を優先することで、以後の予約要求に応じたITリソースの予約可能な空き期間を多く確保することができる。
[ステップS29]ブローカリング部140は、決定した空き期間を持つITリソースを選択候補として決定する。具体的には、ブローカリング部140は、決定した空き期間に対応するITリソースを予約管理テーブル50から選択し、そのITリソースの選択候補フラグをONに設定する。
[ステップS30]ブローカリング部140は、ITリソース決定処理を行う。具体的には、ブローカリング部140は、選択候補のITリソースに対し、前後予約を検索する。そして、ブローカリング部140は、前後の予約キャンセル後の空き期間長が最小となるITリソースを、予約対象に決定する。すなわち、ブローカリング部140は、前後の予約がキャンセルされても空き期間の断片化の影響の少ないITリソースを、予約対象とする。
次に、図9のステップS24に示す空き期間テーブル生成処理を詳細に説明する。
図12は、空き期間テーブル生成処理の手順を示すフローチャートである。以下、図12に示す処理をステップ番号に沿って説明する。
[ステップS41]ブローカリング部140は、予約管理テーブル50から未参照の1エントリを参照し、空き期間情報を取得する。
[ステップS42]ブローカリング部140は、空き期間テーブル51に、ステップS41で取得した空き期間情報と同じ空き期間情報が既に登録されているか否かを判定する。同じ空き期間情報が登録されていれば、処理がステップS44に進められ、登録されていなければ、処理がステップS43に進められる。
[ステップS43]ブローカリング部140は、空き期間テーブル51に対して、ステップS41で取得した空き期間を有するエントリを追加し、期間カウンタに1を設定する。その後、処理がステップS45に進められる。
[ステップS44]ブローカリング部140は、空き期間テーブル51内のステップS41で取得した空き期間情報と同じ空き期間情報が登録されているエントリの期間カウンタに、1を加える。
[ステップS45]ブローカリング部140は、予約管理テーブル50に、未参照のエントリがあるか否かを判定する。未参照のエントリがある場合処理がステップS41に進められる。未参照のエントリがない場合、空き期間テーブル51の生成処理が終了する。
次に、図9のステップS27に示す選択候補期間決定処理を詳細に説明する。
図13は、選択候補期間決定処理の手順を示すフローチャートである。以下、図13に示す処理をステップ番号に沿って説明する。
[ステップS51]ブローカリング部140は、最大期間カウンタを生成し、その最大期間カウンタに0を格納する。
[ステップS52]ブローカリング部140は、空き期間テーブル51のエントリの中から未参照の1エントリを参照し、期間カウンタの値を取得する。
[ステップS53]ブローカリング部140は、ステップS52で取得した期間カウンタの値が、最大期間カウンタの値より大きいか否かを判定する。取得した期間カウンタの値の方が大きければ、処理がステップS54に進められる。取得した期間カウンタが最大期間カウンタ未満であれば、処理がステップS55に進められる。
[ステップS54]ブローカリング部140は、取得した期間カウンタの値を、最大期間カウンタに格納する。
[ステップS55]ブローカリング部140は、空き期間テーブル51に未参照のエントリがあるか否かを判定する。未参照のエントリがある場合、処理がステップS52に進められる。未参照のエントリが無い場合、空き期間テーブル51のエントリに対する参照状態を未参照に戻し、処理がステップS56に進められる。
[ステップS56]ブローカリング部140は、空き期間テーブル51の未参照のエントリのうち1エントリを参照し、期間カウンタを取得する。
[ステップS57]ブローカリング部140は、ステップS56で取得した期間カウンタの値が最大期間カウンタと同値か否かを判断する。同値であれば、処理がステップS58に進められる。同値でなければ、処理がステップS59に進められる。
[ステップS58]ブローカリング部140は、空き期間テーブル51のステップS56で選択した参照したエントリの選択候補期間フラグをONに設定する。
[ステップS59]ブローカリング部140は、空き期間テーブル51に未参照のエントリがあるか否かを判定する。未参照のエントリがある場合、処理がステップS56に進められる。未参照のエントリが無い場合、選択候補期間決定処理が終了する。
次に、空き期間決定処理の詳細を説明する。
図14は、空き期間決定処理の手順を示すフローチャートである。以下、図14に示す処理をステップ番号に沿って説明する。
[ステップS61]ブローカリング部140は、決定期間情報をクリアする。
[ステップS62]ブローカリング部140は、空き期間テーブル51のエントリの中から、未参照の1エントリを参照する。
[ステップS63]ブローカリング部140は、参照したエントリの選択候補期間フラグがONか否かを判定する。選択候補期間フラグがONであれば、処理がステップS64に進められる。選択候補期間フラグがOFFであれば、処理がステップS67に進められる。
[ステップS64]ブローカリング部140は、ステップS62で選択されたエントリの空き期間の開始日の値を取得する。
[ステップS65]ブローカリング部140は、取得した開始日が、決定期間情報より過去の日か否かを判定する。決定期間情報より過去の日であれば、処理がステップS66に進められる。決定期間情報と同じか、それ以後の日であれば、処理がステップS67に進められる。
[ステップS66]ブローカリング部140は、ステップS64で取得した開始日を決定期間情報に格納する。
[ステップS67]ブローカリング部140は、空き期間テーブル51に未参照のエントリがあるか否かを判定する。未参照のエントリがあれば、処理がステップS62に進められる。未参照のエントリがなければ、空き期間テーブル51のエントリに対する参照状態を未参照に戻し、処理がステップS68に進められる。
[ステップS68]ブローカリング部140は、空き期間テーブル51のエントリの中から、未参照の1エントリを参照する。
[ステップS69]ブローカリング部140は、ステップS68で参照したエントリの選択候補期間フラグがONであり、かつ、空き期間の開始日と決定期間情報が同値であるという条件を満たすか否かを判定する。この条件が満たされる場合、処理がステップS70に進められる。条件が満たされない場合、処理がステップS71に進められる。
[ステップS70]ブローカリング部140は、空き期間テーブル51のステップS68で選択したエントリの決定期間フラグをONに設定する。
[ステップS71]ブローカリング部140は、空き期間テーブル51に未参照のエントリがあるか否かを判定する。未参照のエントリがあれば、処理がステップS68に進められる。未参照のエントリがなければ、空き期間決定処理が終了する。
次に、図9のステップS29に示すITリソース選択候補決定処理の詳細について説明する。
図15は、ITリソース選択候補決定処理の手順を示すフローチャートである。以下、図15に示す処理をステップ番号に沿って説明する。
[ステップS81]ブローカリング部140は、空き期間テーブル51のエントリの中から、未参照のエントリを参照し、空き期間の情報を取得する。
[ステップS82]ブローカリング部140は、ステップS81で参照したエントリの決定期間フラグがONか否かを判定する。決定期間フラグがONであれば、処理がステップS83に進められる。決定期間フラグがONでなければ、処理がステップS87に進められる。
[ステップS83]ブローカリング部140は、予約管理テーブル50のエントリを参照し、空き期間の情報を取得する。
[ステップS84]ブローカリング部140は、ステップS81で空き期間テーブル51から取得した空き期間と、ステップS83で予約管理テーブル50から取得した空き期間とを比較し、それぞれの期間が同じか否かを判定する。空き期間が同じであれば、処理がステップS85に進められる。空き期間が同じでなければ、処理がステップS86に進められる。
[ステップS85]ブローカリング部140は、予約管理テーブル50のステップS83で参照したエントリの選択候補フラグをONに設定する。
[ステップS86]ブローカリング部140は、予約管理テーブル50に未参照のエントリがあるか否かを判定する。未参照のエントリがあれば、処理がステップS83に進められる。未参照のエントリがなければ、処理がステップS87に進められる。
[ステップS87]ブローカリング部140は、空き期間テーブル51に未参照のエントリがあるか否かを判定する。未参照のエントリがあれば、処理がステップS81に進められる。未参照のエントリがなければ、ITリソース選択候補決定処理が終了する。
次に、図9のステップS30に示すITリソース決定処理を詳細に説明する。
図16は、ITリソース決定処理のフローチャートを示す第1の図である。以下、図16に示す処理をステップ番号に沿って説明する。
[ステップS101]ブローカリング部140は、予約管理テーブル50のエントリから未参照のエントリの1つを参照する。
[ステップS102]ブローカリング部140は、ステップS101で参照したエントリの選択候補フラグがONか否かを判定する。選択候補フラグがONであれば、処理がステップS104に進められる。選択候補フラグがOFFであれば、処理がステップS103に進められる。
[ステップS103]ブローカリング部140は、予約管理テーブル50内のエントリに未参照のエントリがあるか否かを判定する。未参照のエントリがあれば、処理がステップS101に進められる。未参照のエントリがなければ、処理がステップS121(図18に示す)に進められる。
[ステップS104]ブローカリング部140は、予約情報管理リポジトリ130から、ステップS101で参照したエントリの直前の予約期間情報を取得する。具体的には、ブローカリング部140は、ステップS101で参照したエントリと同一のITリソースの予約期間情報のうち、参照したエントリの空き期間の直前のものを取得する。
[ステップS105]ブローカリング部140は、予約情報管理リポジトリ130から、ステップS101で参照したエントリの2つ前の予約期間情報を取得する。
[ステップS106]ブローカリング部140は、ステップS101で参照したエントリに対応するITリソースに予約を入れたと仮定し、その後、直前の予約がキャンセルされた場合に生じる空き期間長を算出する。具体的には、ブローカリング部140は、2つ前の予約期間の終了日から、予約要求で示されている希望予約期間の開始日までの期間を計算する。その期間が、直前の予約がキャンセルされた場合に生じる空き期間長となる。ブローカリング部140は、算出した直前予約キャンセル後空き期間長を、予約管理テーブル50におけるステップS101で参照したエントリに格納する。
なお、2つ前の予約が存在しない場合、ブローカリング部140は、現在の日付から、予約要求で示されている希望予約期間の開始日までの期間長を、直前予約キャンセル後空き期間長とする。
[ステップS107]ブローカリング部140は、ステップS101で参照したエントリが最初の選択候補か否かを判定する。最初の選択候補の場合、処理がステップS108に進められる。最初の選択候補ではない場合、処理がステップS109に進められる。
[ステップS108]ブローカリング部140は、キャンセル後最小空き期間情報に、ステップS106で算出した直前予約キャンセル後空き期間長を格納する。
[ステップS109]ブローカリング部140は、直前予約キャンセル後空き期間長がキャンセル後最小空き期間情報より短いか否かを判定する。直前予約キャンセル後空き期間長がキャンセル後最小空き期間情報より短い場合、処理がステップS110に進められる。直前予約キャンセル後空き期間長がキャンセル後最小空き期間情報以上の場合、処理がステップS111(図17に示す)に進められる。
[ステップS110]ブローカリング部140は、キャンセル後最小空き期間情報に、ステップS106で算出した直前予約キャンセル後空き期間長を格納する。その後、処理がステップS111(図17に示す)に進められる。
図17は、ITリソース決定処理のフローチャートを示す第2の図である。以下、図17に示す処理をステップ番号に沿って説明する。
[ステップS111]ブローカリング部140は、予約情報管理リポジトリ130から、ステップS101で参照したエントリの直後の予約期間情報を取得する。具体的には、ブローカリング部140は、ステップS101で参照したエントリと同一のITリソースの予約期間情報のうち、参照したエントリの空き期間の直後のものを取得する。
[ステップS112]ブローカリング部140は、予約情報管理リポジトリ130から、ステップS101で参照したエントリの2つ後の予約期間情報を取得する。
[ステップS113]ブローカリング部140は、ステップS101で参照したエントリに対応するITリソースに予約を入れたと仮定し、その後、直後の予約がキャンセルされた場合に生じる空き期間長を算出する。具体的には、ブローカリング部140は、予約要求で示されている希望予約期間の終了日から、2つ後の予約期間の開始日までの期間を計算する。その期間が、直後の予約がキャンセルされた場合に生じる空き期間長となる。ブローカリング部140は、算出した直後予約キャンセル後空き期間長を、予約管理テーブル50におけるステップS101で参照したエントリに格納する。
[ステップS114]ブローカリング部140は、直後予約キャンセル後空き期間長がキャンセル後最小空き期間情報より短いか否かを判定する。直後予約キャンセル後空き期間長がキャンセル後最小空き期間情報より短い場合、処理がステップS115に進められる。直後予約キャンセル後空き期間長がキャンセル後最小空き期間情報以上の場合、処理がステップS116に進められる。
[ステップS115]ブローカリング部140は、キャンセル後最小空き期間情報に、ステップS113で算出した直後予約キャンセル後空き期間長を格納する。
[ステップS116]ブローカリング部140は、予約管理テーブル50内のエントリに未参照のエントリがあるか否かを判定する。未参照のエントリがあれば、処理がステップS101(図16に示す)に進められる。未参照のエントリがなければ、処理がステップS121(図18に示す)に進められる。
図18は、ITリソース決定処理のフローチャートを示す第3の図である。以下、図18に示す処理をステップ番号に沿って説明する。
[ステップS121]ブローカリング部140は、予約管理テーブル50の各エントリを未参照の状態に戻すと共に、ブローカリング部140内に直前予約決定フラグを生成し、その値をOFFに設定する。
[ステップS122]ブローカリング部140は、予約管理テーブル50の未参照のエントリのうち1つのエントリを参照する。
[ステップS123]ブローカリング部140は、ステップS122で参照したエントリの選択候補フラグがONか否かを判断する。選択候補フラグがONであれば、処理がステップS124に進められる。選択候補フラグがOFFであれば、処理がステップS126に進められる。
[ステップS124]ブローカリング部140は、直前予約キャンセル後空き期間長が、キャンセル後最小空き期間情報と同値か否かを判定する。同値であれば、処理がステップS125に進められる。同値でなければ、処理がステップS126に進められる。
[ステップS125]ブローカリング部140は、ステップS122で参照したエントリの決定フラグをONに設定すると共に、直前予約決定フラグをONに設定する。
[ステップS126]ブローカリング部140は、予約管理テーブル50内に未参照のエントリがあるか否かを判断する。未参照のエントリがあれば、処理がステップS122に進められる。未参照のエントリがなければ、処理がステップS127に進められる。
[ステップS127]ブローカリング部140は、直前予約決定フラグがONか否かを判断する。直前予約決定フラグがONであれば、予約管理テーブル50の各エントリを未参照の状態に戻し、処理がステップS131(図19に示す)に進められる。直前予約決定フラグがOFFであれば、処理がステップS136(図19に示す)に進められる。
図19は、ITリソース決定処理のフローチャートを示す第4の図である。以下、図19に示す処理をステップ番号に沿って説明する。
[ステップS131]ブローカリング部140は、予約管理テーブル50の未参照のエントリの1つを参照する。
[ステップS132]ブローカリング部140は、ステップS131で参照したエントリの選択候補フラグがONか否かを判断する。選択候補フラグがONであれば、処理がステップS133に進められる。選択候補フラグがOFFであれば、処理がステップS135に進められる。
[ステップS133]ブローカリング部140は、直後予約キャンセル後空き期間長が、キャンセル後最小空き期間情報と同値か否かを判定する。同値であれば、処理がステップS134に進められる。同値でなければ、処理がステップS135に進められる。
[ステップS134]ブローカリング部140は、ステップS122で参照したエントリの決定フラグをONに設定する。
[ステップS135]ブローカリング部140は、予約管理テーブル50内に未参照のエントリがあるか否かを判断する。未参照のエントリがあれば、処理がステップS131に進められる。未参照のエントリがなければ、処理がステップS136に進められる。
[ステップS136]ブローカリング部140は、予約管理テーブル50の決定フラグがONになっているエントリに対応するITリソースを、予約対象として決定する。
以上のような処理によって、予約要求に応じたITリソースの予約が行われる。
例えば、図7に示すような予約要求が入力された場合について説明する。この場合、ブローカリング部140は、予約情報管理リポジトリ130から「2005年6月1日〜2005年6月30日」の期間の予約が空いているITリソースを検索する。ここで、予約対象とするITリソースの決定処理を分かりやすくするため、図7に示されている予約情報管理リポジトリ130の内容を示すタイムテーブルを参照して説明する。
図20は、予約状況のタイムテーブルを示す図である。これは、予約情報管理リポジトリ130で登録されている予約情報を、横軸に日付を取ったタイムテーブル131で表したものである。
タイムテーブル131では、各ITリソースの予約された期間帯が、網掛けで示されている。また、予約された期間帯には、その期間帯に実行される業務の識別情報が示されている。なお、図20の例では、説明を分かりやすくするために、各業務の予約期間を一箇月単位にしている。
ここで、図7に示された予約要求が入力された場合、6月の全期間131aが空き期間となっているITリソースが検索される。すると、サーバ#1〜サーバ#5が検出される。
ブローカリング部140は、検出されたITリソースの、希望予約期間を含む空き期間の長さ計算する。すると、各サーバとも空き期間の長さが3箇月である。そのため、空き期間の長さに応じた優劣はつけられない。
そこで、ブローカリング部140は、空き期間が同一となるITリソースの数を、空き期間の種類毎にカウントする。図20の例では、空き期間が「2005年6月1日〜2005年8月31日」のITリソースとして、サーバ#1とサーバ#2の2つがある。また、空き期間が「2005年4月1日〜2005年6月30日」のITリソースとして、サーバ#3とサーバ#4の2つがある。空き期間が「2005年5月1日〜2005年7月31日」のITリソースは、サーバ#5の1だけである。
ブローカリング部140は、空き期間が同じITリソースの数が多い期間を、優先的に選択候補期間とする。すると、「2005年6月1日〜2005年8月31日」の期間と、「2005年4月1日〜2005年6月30日」の期間とが選択候補期間となる。
ブローカリング部140は、対応するITリソース数が同じ場合、より近い未来の期間が空き期間となっている選択候補期間を優先的に、予約対象の空き期間として選択する。図20の例では、「2005年4月1日〜2005年6月30日」の期間の方が近い未来であるため、この空き期間が予約対象となる。
この予約対象の空き期間を有するITリソースは、サーバ#3とサーバ#4である。そこで、ブローカリング部140は、予約要求に応じた予約を設定したものと仮定し、直前または直後の予約がキャンセルされた場合に生じる空き期間を計算する。
サーバ#3は、直前の業務cの予約がキャンセルされると「2005年2月1日〜2005年5月31日」が空き期間となる。一方サーバ#4は、直前の業務bの予約がキャンセルされると「2005年1月1日〜2005年5月31日」が空き期間となる。また、サーバ#3は、直後の業務hの予約がキャンセルされると「2005年7月1日〜2005年9月30日」が空き期間となる。一方、サーバ#4は、直後の業務iの予約がキャンセルされると「2005年7月1日〜2005年8月31日」が空き期間となる。すると、サーバ#4の方が直後予約キャンセル後の空き期間が短くなる。そこで、ブローカリング部140は、予約対象のITリソースをサーバ#4に決定する。
予約の結果は、管理サーバ100からクライアント31に送られる。すると、クライアント31において予約結果画面が表示される。
図21は、予約結果画面の例を示す図である。予約結果画面60には、予約された期間帯に実行される業務の名称、予約期間、および予約されたITリソースの名称が表示される。
以上説明したように、本実施の形態では、空き期間が同一となるITリソースの数が多い空き期間を選択候補期間とし、その選択候補期間と同じ空き期間を有するITリソースに予約登録を行うようにした。これにより、次に入る予約が、より成立させやすくなる。
また、選択候補期間と同じ空き期間を有するITリソースの間では、より近い未来の空き期間を有するITリソースを優先的に、予約登録の対象として決定するようにした。換言すると、空き期間が遠い未来のITリソースを、できるだけ空き期間のまま残すようにした。これにより、以降の予約要求に応じた予約が成立しやすくなる。
さらに、前後の予約がキャンセルされた場合を想定し、前後の予約がキャンセルされた場合に空き期間が最小となるITリソースを、優先的に予約登録の対象として決定するようにした。これにより、空き期間の断片化の抑止が行われる。
このように、次に入る予約をより成立させやすくすることで、業務の予約要求によりITリソースを確保できる可能性が高まる。その結果、より多くの業務の予約登録が可能となり、ITリソースを有効に活用することができる。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、管理サーバが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
なお、本発明は、上述の実施の形態にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変更を加えることができる。
以上説明した実施の形態の主な技術的特徴は、以下の付記の通りである。
(付記1) ITリソースの利用予約を管理する予約管理プログラムにおいて、
コンピュータを、
ITリソース毎の予約情報を格納する予約情報リポジトリ、
希望予約期間を示す予約要求が入力されると、前記予約情報リポジトリを参照し、希望予約期間に予約を登録可能なITリソースを検出するITリソース検出手段、
前記ITリソース検出手段で検出された各ITリソースの予約情報に基づき、前記希望予約期間を包含する空き期間を計算する空き期間計算手段、
前記空き期間計算手段で計算された空き期間が同一となるITリソースの数が最も多い最多空き期間を検出する最多空き期間検出手段、
前記最多空き期間と同じ空き期間を有するITリソースの中から、前記予約要求に応じた予約登録の対象とするITリソースを決定するITリソース決定手段、
前記予約情報リポジトリに対して、前記ITリソース決定手段で決定されたITリソースに対する予約登録を行う予約登録手段、
として機能させることを特徴とする予約管理プログラム。
(付記2) 前記ITリソース決定手段は、前記最多空き期間と同じ空き期間を有するITリソースが複数ある場合、空き期間が最も近い未来であるITリソースを予約登録の対象とすることを特徴とする付記1記載の予約管理プログラム。
(付記3) 前記ITリソース決定手段は、前記最多空き期間と同じ空き期間を有するITリソースが複数ある場合、各ITリソースに予約要求に応じた予約登録を行ったものと仮定し、前後の予約がキャンセルされた場合に空き期間が最小となるITリソースを、予約登録の対象とすることを特徴とする付記1記載の予約管理プログラム。
(付記4) ITリソースの機能が登録された構成情報管理リポジトリをさらに有し、
前記ITリソース検出手段は、前記予約要求で業務の種別が指定されている場合、前記業務の種別に応じた処理を実行可能なITリソースを前記構成情報管理リポジトリから検索し、前記業務を実行可能なITリソースの中から、希望予約期間に予約を登録可能なITリソースを検出することを特徴とする付記1記載の予約管理プログラム。
(付記5) ITリソースの利用予約を管理する予約管理装置において、
ITリソース毎の予約情報を格納する予約情報リポジトリと、
希望予約期間を示す予約要求が入力されると、前記予約情報リポジトリを参照し、希望予約期間に予約を登録可能なITリソースを検出するITリソース検出手段と、
前記ITリソース検出手段で検出された各ITリソースの予約情報に基づき、前記希望予約期間を包含する空き期間を計算する空き期間計算手段と、
前記空き期間計算手段で計算された空き期間が同一となるITリソースの数が最も多い最多空き期間を検出する最多空き期間検出手段と、
前記最多空き期間と同じ空き期間を有するITリソースの中から、前記予約要求に応じた予約登録の対象とするITリソースを決定するITリソース決定手段、
前記予約情報リポジトリに対して、前記ITリソース決定手段で決定されたITリソースに対する予約登録を行う予約登録手段と、
を有することを特徴とする予約管理装置。
(付記6) ITリソースの利用予約を管理する予約管理方法において、
ITリソース検出手段が、希望予約期間を示す予約要求が入力されると、ITリソース毎の予約情報を格納する予約情報リポジトリを参照し、希望予約期間に予約を登録可能なITリソースを検出し、
空き期間計算手段が、前記ITリソース検出手段で検出された各ITリソースの予約情報に基づき、前記希望予約期間を包含する空き期間を計算し、
最多空き期間検出手段が、前記空き期間計算手段で計算された空き期間が同一となるITリソースの数が最も多い最多空き期間を検出し、
ITリソース決定手段が、前記最多空き期間と同じ空き期間を有するITリソースの中から、前記予約要求に応じた予約登録の対象とするITリソースを決定し、
予約登録手段が、前記予約情報リポジトリに対して、前記ITリソース決定手段で決定されたITリソースに対する予約登録を行う、
ことを特徴とする予約管理方法。
本実施の形態の概略を示す図である。 本実施の形態のシステム構成例を示す図である。 本実施の形態に用いる管理サーバのハードウェア構成例を示す図である。 管理サーバの機能を示すブロック図である。 構成情報管理リポジトリのデータ構造例を示す図である。 予約情報管理リポジトリのデータ構造例を示す図である。 ITリソース予約画面の例を示す図である。 ITリソース予約処理の手順を示すフローチャートである。 ITリソース決定処理の手順を示すフローチャートである。 予約管理テーブルのデータ構造例を示す図である。 空き期間テーブルのデータ構造例を示す図である。 空き期間テーブル生成処理の手順を示すフローチャートである。 選択候補期間決定処理の手順を示すフローチャートである。 空き期間決定処理の手順を示すフローチャートである。 ITリソース選択候補決定処理の手順を示すフローチャートである。 ITリソース決定処理のフローチャートを示す第1の図である。 ITリソース決定処理のフローチャートを示す第2の図である。 ITリソース決定処理のフローチャートを示す第3の図である。 ITリソース決定処理のフローチャートを示す第4の図である。 予約状況のタイムテーブルを示す図である。 予約結果画面の例を示す図である。
符号の説明
1 予約情報リポジトリ
2 ITリソース検出手段
3 空き期間計算手段
4 最多空き期間検出手段
5 ITリソース決定手段
6 予約登録手段
7 予約要求

Claims (5)

  1. IT(Information Technology)リソースの利用予約を管理する予約管理プログラムにおいて、
    コンピュータを、
    ITリソース毎の予約情報を格納する予約情報リポジトリ、
    希望予約期間を示す予約要求が入力されると、前記予約情報リポジトリを参照し、希望予約期間に予約を登録可能なITリソースを検出するITリソース検出手段、
    前記ITリソース検出手段で検出された各ITリソースの予約情報に基づき、前記希望予約期間を包含する空き期間を計算する空き期間計算手段、
    前記空き期間計算手段で計算された空き期間が同一となるITリソースの数が最も多い最多空き期間を検出する最多空き期間検出手段、
    前記最多空き期間と同じ空き期間を有するITリソースの中から、前記予約要求に応じた予約登録の対象とするITリソースを決定するITリソース決定手段、
    前記予約情報リポジトリに対して、前記ITリソース決定手段で決定されたITリソースに対する予約登録を行う予約登録手段、
    として機能させることを特徴とする予約管理プログラム。
  2. 前記ITリソース決定手段は、前記最多空き期間と同じ空き期間を有するITリソースが複数ある場合、空き期間が最も近い未来であるITリソースを予約登録の対象とすることを特徴とする請求項1記載の予約管理プログラム。
  3. 前記ITリソース決定手段は、前記最多空き期間と同じ空き期間を有するITリソースが複数ある場合、各ITリソースに予約要求に応じた予約登録を行ったものと仮定し、前後の予約がキャンセルされた場合に空き期間が最小となるITリソースを、予約登録の対象とすることを特徴とする請求項1記載の予約管理プログラム。
  4. ITリソースの利用予約を管理する予約管理装置において、
    ITリソース毎の予約情報を格納する予約情報リポジトリと、
    希望予約期間を示す予約要求が入力されると、前記予約情報リポジトリを参照し、希望予約期間に予約を登録可能なITリソースを検出するITリソース検出手段と、
    前記ITリソース検出手段で検出された各ITリソースの予約情報に基づき、前記希望予約期間を包含する空き期間を計算する空き期間計算手段と、
    前記空き期間計算手段で計算された空き期間が同一となるITリソースの数が最も多い最多空き期間を検出する最多空き期間検出手段と、
    前記最多空き期間と同じ空き期間を有するITリソースの中から、前記予約要求に応じた予約登録の対象とするITリソースを決定するITリソース決定手段、
    前記予約情報リポジトリに対して、前記ITリソース決定手段で決定されたITリソースに対する予約登録を行う予約登録手段と、
    を有することを特徴とする予約管理装置。
  5. ITリソースの利用予約を管理する予約管理方法において、
    ITリソース検出手段が、希望予約期間を示す予約要求が入力されると、ITリソース毎の予約情報を格納する予約情報リポジトリを参照し、希望予約期間に予約を登録可能なITリソースを検出し、
    空き期間計算手段が、前記ITリソース検出手段で検出された各ITリソースの予約情報に基づき、前記希望予約期間を包含する空き期間を計算し、
    最多空き期間検出手段が、前記空き期間計算手段で計算された空き期間が同一となるITリソースの数が最も多い最多空き期間を検出し、
    ITリソース決定手段が、前記最多空き期間と同じ空き期間を有するITリソースの中から、前記予約要求に応じた予約登録の対象とするITリソースを決定し、
    予約登録手段が、前記予約情報リポジトリに対して、前記ITリソース決定手段で決定されたITリソースに対する予約登録を行う、
    ことを特徴とする予約管理方法。
JP2006009496A 2006-01-18 2006-01-18 予約管理プログラム Expired - Fee Related JP4629587B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006009496A JP4629587B2 (ja) 2006-01-18 2006-01-18 予約管理プログラム
US11/407,318 US7752310B2 (en) 2006-01-18 2006-04-19 Computer program, method, and apparatus for managing reservation of it resources

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006009496A JP4629587B2 (ja) 2006-01-18 2006-01-18 予約管理プログラム

Publications (2)

Publication Number Publication Date
JP2007193471A true JP2007193471A (ja) 2007-08-02
JP4629587B2 JP4629587B2 (ja) 2011-02-09

Family

ID=38263036

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006009496A Expired - Fee Related JP4629587B2 (ja) 2006-01-18 2006-01-18 予約管理プログラム

Country Status (2)

Country Link
US (1) US7752310B2 (ja)
JP (1) JP4629587B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012056596A1 (ja) * 2010-10-28 2012-05-03 株式会社日立製作所 計算機システム及び処理制御方法
JP5334226B2 (ja) * 2010-08-23 2013-11-06 株式会社日立製作所 スケジュール管理方法及びスケジュール管理サーバ
JP2016212609A (ja) * 2015-05-08 2016-12-15 株式会社日立製作所 仮想マシン運用支援システムおよび仮想マシン運用支援方法

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4629587B2 (ja) * 2006-01-18 2011-02-09 富士通株式会社 予約管理プログラム
US20080052397A1 (en) 2006-08-24 2008-02-28 Ramanathan Venkataraman Future locking of resources
US20080184248A1 (en) * 2007-01-29 2008-07-31 Yahoo! Inc. Optimization of job scheduling for resource clusters with access control and usage reporting
US20090171730A1 (en) * 2007-12-28 2009-07-02 International Business Machines Corporation Non-disruptively changing scope of computer business applications based on detected changes in topology
US8826077B2 (en) * 2007-12-28 2014-09-02 International Business Machines Corporation Defining a computer recovery process that matches the scope of outage including determining a root cause and performing escalated recovery operations
US8682705B2 (en) 2007-12-28 2014-03-25 International Business Machines Corporation Information technology management based on computer dynamically adjusted discrete phases of event correlation
US20090172149A1 (en) 2007-12-28 2009-07-02 International Business Machines Corporation Real-time information technology environments
US8763006B2 (en) 2007-12-28 2014-06-24 International Business Machines Corporation Dynamic generation of processes in computing environments
US20090172674A1 (en) * 2007-12-28 2009-07-02 International Business Machines Corporation Managing the computer collection of information in an information technology environment
US8326910B2 (en) * 2007-12-28 2012-12-04 International Business Machines Corporation Programmatic validation in an information technology environment
US8428983B2 (en) * 2007-12-28 2013-04-23 International Business Machines Corporation Facilitating availability of information technology resources based on pattern system environments
US8447859B2 (en) * 2007-12-28 2013-05-21 International Business Machines Corporation Adaptive business resiliency computer system for information technology environments
US9558459B2 (en) 2007-12-28 2017-01-31 International Business Machines Corporation Dynamic selection of actions in an information technology environment
US8346931B2 (en) 2007-12-28 2013-01-01 International Business Machines Corporation Conditional computer runtime control of an information technology environment based on pairing constructs
US8751283B2 (en) 2007-12-28 2014-06-10 International Business Machines Corporation Defining and using templates in configuring information technology environments
US8677174B2 (en) 2007-12-28 2014-03-18 International Business Machines Corporation Management of runtime events in a computer environment using a containment region
US8990810B2 (en) * 2007-12-28 2015-03-24 International Business Machines Corporation Projecting an effect, using a pairing construct, of execution of a proposed action on a computing environment
US8375244B2 (en) * 2007-12-28 2013-02-12 International Business Machines Corporation Managing processing of a computing environment during failures of the environment
US8868441B2 (en) 2007-12-28 2014-10-21 International Business Machines Corporation Non-disruptively changing a computing environment
US8782662B2 (en) 2007-12-28 2014-07-15 International Business Machines Corporation Adaptive computer sequencing of actions
US8365185B2 (en) * 2007-12-28 2013-01-29 International Business Machines Corporation Preventing execution of processes responsive to changes in the environment
JP5737298B2 (ja) * 2011-01-21 2015-06-17 富士通株式会社 スケジューリング方法およびスケジューリングシステム
US11989779B2 (en) 2012-10-04 2024-05-21 Trading Technologies International, Inc. Configurable order entry, matching, coordination, and market data intervals
US10210079B2 (en) 2015-04-09 2019-02-19 Sungard Availability Services, Lp Touch free disaster recovery
US9836365B2 (en) 2015-04-09 2017-12-05 Sungard Availability Services, Lp Recovery execution system using programmatic generation of actionable workflows
CA3000952A1 (en) * 2015-10-14 2017-04-20 Sungard Availability Services, Lp Automatic system disaster recovery
US20170288967A1 (en) * 2016-03-31 2017-10-05 Ca, Inc. Environment manager for continuous deployment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1063883A (ja) * 1996-08-27 1998-03-06 Toshiba Corp 指定席券の自動券売システム及び方法
JP2005293048A (ja) * 2004-03-31 2005-10-20 Fujitsu Ltd 資源計画作成プログラム
JP2005346433A (ja) * 2004-06-03 2005-12-15 Hitachi Ltd プログラム実行予約方法及び装置並びにその処理プログラム、及びプログラム実行システム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2143495A1 (en) * 1994-03-21 1995-09-22 Rasoul M. Oskouy Method and apparatus for reordering incoming interleaved asynchronous transfer mode cells
US6571215B1 (en) * 1997-01-21 2003-05-27 Microsoft Corporation System and method for generating a schedule based on resource assignments
US7751370B2 (en) * 2001-07-13 2010-07-06 Qualcomm Incorporated Method and apparatus for forward link rate scheduling
US6335922B1 (en) * 1997-02-11 2002-01-01 Qualcomm Incorporated Method and apparatus for forward link rate scheduling
CA2245367A1 (en) * 1998-08-19 2000-02-19 Newbridge Networks Corporation Two-component bandwidth scheduler having application in multi-class digital communication systems
US6959327B1 (en) * 2000-08-29 2005-10-25 International Business Machines Corporation System and method for dispatching and scheduling network transmissions with feedback
US7403994B1 (en) * 2000-08-29 2008-07-22 International Business Machines Corporation Method of doing business over a network by transmission and retransmission of digital information on a network during time slots
US20020160812A1 (en) * 2001-04-26 2002-10-31 Ramin Moshiri-Tafreshi Channel supervision in a radio network
JP3951949B2 (ja) 2003-03-31 2007-08-01 日本電気株式会社 分散型資源管理システムおよび分散型資源管理方法並びにプログラム
WO2005103897A1 (en) * 2004-04-23 2005-11-03 Matsushita Electric Industrial Co., Ltd. Network resource management device
JP4629587B2 (ja) * 2006-01-18 2011-02-09 富士通株式会社 予約管理プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1063883A (ja) * 1996-08-27 1998-03-06 Toshiba Corp 指定席券の自動券売システム及び方法
JP2005293048A (ja) * 2004-03-31 2005-10-20 Fujitsu Ltd 資源計画作成プログラム
JP2005346433A (ja) * 2004-06-03 2005-12-15 Hitachi Ltd プログラム実行予約方法及び装置並びにその処理プログラム、及びプログラム実行システム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5334226B2 (ja) * 2010-08-23 2013-11-06 株式会社日立製作所 スケジュール管理方法及びスケジュール管理サーバ
WO2012056596A1 (ja) * 2010-10-28 2012-05-03 株式会社日立製作所 計算機システム及び処理制御方法
US9396026B2 (en) 2010-10-28 2016-07-19 Hitachi, Ltd. Allocating a task to a computer based on determined resources
JP2016212609A (ja) * 2015-05-08 2016-12-15 株式会社日立製作所 仮想マシン運用支援システムおよび仮想マシン運用支援方法

Also Published As

Publication number Publication date
US20070165525A1 (en) 2007-07-19
JP4629587B2 (ja) 2011-02-09
US7752310B2 (en) 2010-07-06

Similar Documents

Publication Publication Date Title
JP4629587B2 (ja) 予約管理プログラム
US11425194B1 (en) Dynamically modifying a cluster of computing nodes used for distributed execution of a program
US9280390B2 (en) Dynamic scaling of a cluster of computing nodes
US10003500B2 (en) Systems and methods for resource sharing between two resource allocation systems
US8321558B1 (en) Dynamically monitoring and modifying distributed execution of programs
US9276987B1 (en) Identifying nodes already storing indicated input data to perform distributed execution of an indicated program in a node cluster
JP6254949B2 (ja) 仮想マシンプールにおけるリソースの価格設定
JP4597488B2 (ja) プログラム配置方法及びその実施システム並びにその処理プログラム
US8260840B1 (en) Dynamic scaling of a cluster of computing nodes used for distributed execution of a program
JP4532423B2 (ja) サーバシステム
WO2012066640A1 (ja) 計算機システム、マイグレーション方法及び管理サーバ
JP6191301B2 (ja) 情報処理装置、ジョブスケジューリング方法およびジョブスケジューリングプログラム
JP6447217B2 (ja) 実行情報通知プログラム、情報処理装置および情報処理システム
JP2008140120A (ja) 計算資源管理プログラム、計算資源管理装置および分散処理システム
US10310900B2 (en) Operating programs on a computer cluster
JP4748950B2 (ja) 記憶領域管理方法及びシステム
US9665512B2 (en) Memory management in presence of asymmetrical memory transfer cost
JP2017016541A (ja) 情報処理装置、並列計算機システム、ジョブスケジュール設定プログラムおよびジョブスケジュール設定方法
US20150301867A1 (en) Deterministic real time business application processing in a service-oriented architecture
CN101908004A (zh) 促进请求执行的装置和方法
US20230155958A1 (en) Method for optimal resource selection based on available gpu resource analysis in large-scale container platform
JP2008059599A (ja) 仮想化されたリソースの割当て方法及びその実施システム
JP2007206913A (ja) データベースアクセスシステム、アプリケーションサーバノード、データベースアクセス方法及びプログラム
JP2005352689A (ja) 対話型サービス配置方法、対話型サービス配置プログラムおよびその記録媒体、ならびに、サービスブローカ装置
WO2013031999A1 (ja) 抽出装置、システム、プログラム、及び、方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100406

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100607

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101018

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101109

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131119

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4629587

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees