(57)【特許請求の範囲】
【請求項１】
仮想コンピュータを動作させることが可能な物理的なコンピュータ装置である物理マシンおよび前記仮想コンピュータからアクセス可能な記憶装置である共通ストレージと、前記物理マシン上の前記仮想コンピュータの動作を管理する管理サーバを備え、
前記管理サーバが、
前記物理マシン上で動作する複数台の前記仮想コンピュータの設定および変更を指令する仮想マシン制御手段と、
前記仮想マシン制御手段から前記仮想コンピュータの設定および変更の指令を受けたことに対応して前記仮想コンピュータで実行可能な複数個のジョブによって予め構成されたジョブフローで各ジョブを実行する前記仮想コンピュータを変更するジョブフロー生成手段と、
各々の前記ジョブで作成もしくは参照されるデータファイルとしてあらかじめ定義されたデータラベル名に対応する前記データファイルを前記共通ストレージ上に割り当てるデータ管理手段と、
前記データファイルの格納場所情報を前記データラベル名に対応させて格納するデータ格納場所データベースを記憶する記憶手段と、
前記データラベル名に対応する前記格納場所情報を前記データ管理手段に照会すると共にこれを前記ジョブを実行する前記仮想コンピュータに伝達するジョブフロー実行手段とを有すると共に、
前記記憶手段が、前記仮想コンピュータの用途について記憶するサーバ用途情報テーブルと、前記仮想コンピュータの前記用途に対応する実行ジョブおよび該実行ジョブで作成もしくは参照されるデータファイルの前記データラベル名について記憶する用途別実行ジョブ情報テーブルとを含むジョブ情報データベースを記憶し、
前記ジョブフロー生成手段が、前記サーバ用途情報テーブルを参照して前記仮想マシン制御手段が構成変更した前記仮想コンピュータの用途を確認するサーバ用途確認部と、前記用途別実行ジョブ情報テーブルを参照して前記構成変更された前記仮想コンピュータの前記用途に対応する前記データラベル名を抽出する実行ジョブ抽出部と、前記構成変更された仮想コンピュータの用途に対応するよう前記ジョブフローで各ジョブを実行する前記仮想コンピュータを変更するジョブ依存関係確認部とを有する
ことを特徴とする仮想コンピュータシステム。
【請求項２】
前記ジョブ情報データベースが、前記ジョブフローを構成する各ジョブが並列実行可能か否かを示す並列実行可否について記憶するジョブ並列度情報テーブルを含み、
前記ジョブフロー生成手段が、前記ジョブ並列度情報テーブルを参照して並列実行可能であるジョブについて並列実行するように前記ジョブフロー情報を変更するジョブ依存関係確認部を有することを特徴とする、請求項１に記載の仮想コンピュータシステム。
【請求項３】
前記データ格納場所データベースが、前記ジョブの名称、前記仮想コンピュータの名称および前記データラベル名に対応した子番号を共に記憶し、
前記ジョブフロー生成手段が、異なる前記ジョブおよび前記仮想コンピュータが同一の前記データラベル名を使用する場合に、互いに異なる前記子番号を採番して前記データ格納場所データベースに記憶させるデータラベルカウント部を有することを特徴とする、請求項１に記載の仮想コンピュータシステム。
【請求項４】
仮想コンピュータを動作させることが可能な物理的なコンピュータ装置である物理マシンと、前記仮想コンピュータからアクセス可能な記憶装置である共通ストレージと、前記物理マシン上の前記仮想コンピュータの動作を管理する管理サーバとが相互に接続された仮想コンピュータシステムにあって、
前記管理サーバの備える記憶手段が、前記仮想コンピュータの用途について記憶するサーバ用途情報テーブルと、前記仮想コンピュータの前記用途に対応する実行ジョブおよび該実行ジョブで作成もしくは参照されるデータファイルのデータラベル名について記憶する用途別実行ジョブ情報テーブルとを含むジョブ情報データベースを記憶しているものであると共に、
前記物理マシン上で動作する複数台の前記仮想コンピュータで実行可能な複数個のジョブによって予め構成されたジョブフローで各ジョブを実行する前記仮想コンピュータの設定および変更を仮想マシン制御手段が指令し、
前記サーバ用途情報テーブルを参照して前記仮想マシン制御手段が構成変更した前記仮想コンピュータの用途をジョブフロー生成手段が確認し、
前記用途別実行ジョブ情報テーブルを参照して前記構成変更された前記仮想コンピュータの前記用途に対応した前記データラベル名を前記ジョブフロー生成手段が抽出し、
前記構成変更された仮想コンピュータの前記用途に対応するよう前記ジョブフローで各ジョブを実行する前記仮想コンピュータを前記ジョブフロー生成手段が変更し、
前記データラベル名に対応する前記データファイルをデータ管理手段が前記共通ストレージ上に割り当てると共に前記データファイルの格納場所情報を前記データラベル名に対応させて記憶し、
前記データラベル名に対応する前記格納場所情報をジョブフロー実行手段が前記ジョブを実行する前記仮想コンピュータに伝達することを特徴とする仮想コンピュータ管理方法。
【請求項５】
仮想コンピュータを動作させることが可能な物理的なコンピュータ装置である物理マシンと、前記仮想コンピュータからアクセス可能な記憶装置である共通ストレージと、前記物理マシン上の前記仮想コンピュータの動作を管理する管理サーバとが相互に接続された仮想コンピュータシステムにあって、
前記管理サーバの備える記憶手段が、前記仮想コンピュータの用途について記憶するサーバ用途情報テーブルと、前記仮想コンピュータの前記用途に対応する実行ジョブおよび該実行ジョブで作成もしくは参照されるデータファイルのデータラベル名について記憶する用途別実行ジョブ情報テーブルとを含むジョブ情報データベースを記憶しているものであると共に、
前記管理サーバが備えるコンピュータに、
前記物理マシン上で動作する複数台の前記仮想コンピュータで実行可能な複数個のジョブによって予め構成されたジョブフローで各ジョブを実行する前記仮想コンピュータの設定および変更を指令する手順、
前記サーバ用途情報テーブルを参照して前記仮想マシン制御手段が構成変更した前記仮想コンピュータの用途を確認する手順、
前記用途別実行ジョブ情報テーブルを参照して前記構成変更された前記仮想コンピュータの前記用途に対応した前記データラベル名を抽出する手順、
前記構成変更された仮想コンピュータの前記用途に対応するよう前記ジョブフローで各ジョブを実行する前記仮想コンピュータを変更する手順、
前記データラベル名に対応する前記データファイルを前記共通ストレージ上に割り当てる手順、
前記データファイルの格納場所情報を前記データラベル名に対応させて記憶する手順、
および前記データラベル名に対応する前記格納場所情報を前記ジョブを実行する前記仮想コンピュータに伝達する手順
を実行させることを特徴とする仮想コンピュータ管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータでのジョブフローの実行に関し、特に仮想化環境にあるコンピュータでのジョブフローの実行に関する。
【背景技術】
【０００２】
ジョブフローとは、コンピュータで実行される複数のジョブを相互に実行順序および関連を付け、その流れを示すものである。１つのジョブフローの中に、複数のジョブを同時に実行する並列実行や、特定のジョブの実行結果に基づいて以後の実行内容が変化する条件分岐などが含まれる場合もある。たとえば、コンピュータの利用者の少ない夜間や休日に、定型化されたバッチ処理を該コンピュータで一括して実行するなどのような用途に、このジョブフローによる処理が利用される。
【０００３】
また、企業においてはコンピュータの仮想化環境が多く利用されるようになっている。データセンタで仮想コンピュータを動作させて、ジョブフローによる処理を行うことができれば、その企業のあちこちの部署におけるバッチ処理を一カ所のデータセンタに集約して効率的に実行することができるので、その実行にかかる時間やコスト、消費電力などを削減できると考えられている。また、データのバックアップ処理も一括して行うことができるので、障害などの発生時にも容易に対応できると考えられている。
【０００４】
たとえば、バッチ処理にかかる負荷が少ない場合には、複数台の仮想コンピュータを少ない台数の物理コンピュータにまとめて、実際に通電されて稼働する物理コンピュータの台数を少なく抑える。逆に特定の仮想コンピュータに多くの負荷がかかる場合には、稼働する物理コンピュータの台数を増やして、より多くの仮想コンピュータを動作させて、その処理にかけることのできるコンピュータ資源を増加させる。コンピュータの仮想化環境では、それらのような仮想コンピュータの構成の動的変更が容易にできるので、実行にかかる効率を向上することができると考えられている。
【０００５】
これに関連すると思われる技術として、次のものがある。特許文献１には、ジョブを実行できる機器がネットワーク上にない場合に、代替可能な装置を検索して、必要な場合に指示書を変更して実行できるという連携指示情報生成システムが記載されている。特許文献２には、ＧＵＩ（Graphic User Interface）によってジョブフローを作成して実行できる作成装置が記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−０７８５６３号公報
【特許文献２】特開平０９−０４４３４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、バッチ処理にかかるジョブフローは各々の業務における処理に特化されて作られていて、その処理で利用されるデータについても各々の業務における処理に特化された構成を持つ。従って、このバッチ処理を実行する仮想コンピュータの構成を動的に変更した場合には、それに合わせてジョブフローやデータ構成を変更する必要が出てくる。この構成変更を自動化することは困難である。
【０００８】
特に定型化されたバッチ処理は、前述のようにコンピュータの利用者の少ない夜間や休日にまとめて実行できることが求められるので、人手をかけずに実行できるものである必要がある。従って、そのような仮想コンピュータの構成の変更に伴う自動化困難なジョブフローやデータ構成の変更があると、その処理はバッチ処理で行うこと自体が困難となる。この変更が容易にできないと、仮想化環境でこのジョブフローを効率的に実行することは困難である。
【０００９】
特許文献１〜２に記載された発明は、いずれも仮想コンピュータの構成変更に伴うジョブフローやデータの構成変更に関するものではないので、この問題を解決するものではない。
【００１０】
本発明の目的は、コンピュータの仮想化環境で仮想コンピュータの構成を動的に変更しても、それに伴うジョブフローやデータの構成を容易に変更して、バッチ処理を容易に実行することを可能とする仮想コンピュータシステム、仮想コンピュータ管理方法および管理プログラムを提供することにある。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、本発明に係る仮想コンピュータ管理システムは、仮想コンピュータを動作させることが可能な物理的なコンピュータ装置である物理マシンおよび仮想コンピュータからアクセス可能な記憶装置である共通ストレージと、物理マシン上の仮想コンピュータの動作を管理する管理サーバを備え、管理サーバが、物理マシン上で動作する複数台の仮想コンピュータの設定および変更を指令する仮想マシン制御手段と、仮想マシン制御手段から仮想コンピュータの設定および変更の指令を受けたことに対応して仮想コンピュータで実行可能な複数個のジョブによって予め構成されたジョブフローで各ジョブを実行する仮想コンピュータを変更するジョブフロー生成手段と、各々のジョブで作成もしくは参照されるデータファイルとしてあらかじめ定義されたデータラベル名に対応するデータファイルを共通ストレージ上に割り当てるデータ管理手段と、データファイルの格納場所情報をデータラベル名に対応させて格納するデータ格納場所データベースを記憶する記憶手段と、データラベル名に対応する格納場所情報をデータ管理手段に照会すると共にこれをジョブを実行する仮想コンピュータに伝達するジョブフロー実行手段とを有すると共に、記憶手段が、仮想コンピュータの用途について記憶するサーバ用途情報テーブルと、仮想コンピュータの用途に対応する実行ジョブおよび該実行ジョブで作成もしくは参照されるデータファイルのデータラベル名について記憶する用途別実行ジョブ情報テーブルとを含むジョブ情報データベースを記憶し、ジョブフロー生成手段が、サーバ用途情報テーブルを参照して仮想マシン制御手段が構成変更した仮想コンピュータの用途を確認するサーバ用途確認部と、用途別実行ジョブ情報テーブルを参照して構成変更された仮想コンピュータの用途に対応するデータラベル名を抽出する実行ジョブ抽出部と、構成変更された仮想コンピュータの用途に対応するようジョブフローで各ジョブを実行する仮想コンピュータを変更するジョブ依存関係確認部とを有することを特徴とする。
【００１２】
上記目的を達成するため、本発明に係る仮想コンピュータ管理方法は、仮想コンピュータを動作させることが可能な物理的なコンピュータ装置である物理マシンと、仮想コンピュータからアクセス可能な記憶装置である共通ストレージと、物理マシン上の仮想コンピュータの動作を管理する管理サーバとが相互に接続された仮想コンピュータシステムにあって、管理サーバの備える記憶手段が、仮想コンピュータの用途について記憶するサーバ用途情報テーブルと、仮想コンピュータの用途に対応する実行ジョブおよび該実行ジョブで作成もしくは参照されるデータファイルのデータラベル名について記憶する用途別実行ジョブ情報テーブルとを含むジョブ情報データベースを記憶しているものであると共に、物理マシン上で動作する複数台の仮想コンピュータで実行可能な複数個のジョブによって予め構成されたジョブフローで各ジョブを実行する仮想コンピュータの設定および変更を仮想マシン制御手段が指令し、サーバ用途情報テーブルを参照して仮想マシン制御手段が構成変更した仮想コンピュータの用途をジョブフロー生成手段が確認し、用途別実行ジョブ情報テーブルを参照して構成変更された仮想コンピュータの用途に対応したデータラベル名をジョブフロー生成手段が抽出し、構成変更された仮想コンピュータの用途に対応するようジョブフローで各ジョブを実行する仮想コンピュータをジョブフロー生成手段が変更し、データラベル名に対応するデータファイルをデータ管理手段が共通ストレージ上に割り当てると共にデータファイルの格納場所情報をデータラベル名に対応させて記憶し、データラベル名に対応する格納場所情報をジョブフロー実行手段がジョブを実行する仮想コンピュータに伝達することを特徴とする。
【００１３】
上記目的を達成するため、本発明に係る仮想コンピュータ管理プログラムは、仮想コンピュータを動作させることが可能な物理的なコンピュータ装置である物理マシンと、仮想コンピュータからアクセス可能な記憶装置である共通ストレージと、物理マシン上の仮想コンピュータの動作を管理する管理サーバとが相互に接続された仮想コンピュータシステムにあって、管理サーバの備える記憶手段が、仮想コンピュータの用途について記憶するサーバ用途情報テーブルと、仮想コンピュータの用途に対応する実行ジョブおよび該実行ジョブで作成もしくは参照されるデータファイルのデータラベル名について記憶する用途別実行ジョブ情報テーブルとを含むジョブ情報データベースを記憶しているものであると共に、管理サーバが備えるコンピュータに、物理マシン上で動作する複数台の仮想コンピュータで実行可能な複数個のジョブによって予め構成されたジョブフローで各ジョブを実行する仮想コンピュータの設定および変更を指令する手順、サーバ用途情報テーブルを参照して仮想マシン制御手段が構成変更した仮想コンピュータの用途を確認する手順、用途別実行ジョブ情報テーブルを参照して構成変更された仮想コンピュータの用途に対応したデータラベル名を抽出する手順、構成変更された仮想コンピュータの用途に対応するようジョブフローで各ジョブを実行する仮想コンピュータを変更する手順、データラベル名に対応するデータファイルを共通ストレージ上に割り当てる手順、データファイルの格納場所情報をデータラベル名に対応させて記憶する手順、およびデータラベル名に対応する格納場所情報をジョブを実行する仮想コンピュータに伝達する手順を実行させることを特徴とする。
【発明の効果】
【００１４】
上述したように本発明は、ジョブフローを構成する各ジョブで作成されるデータファイルにデータラベル名を付与して、これによって仮想コンピュータがそのデータファイルにアクセスするように構成したので、各ジョブを実行する仮想コンピュータの構成が変更されても、それに伴うジョブフローやデータの構成変更を容易に行うことができ、しかもこの構成変更は自動化可能である。これによって、バッチ処理を容易に実行することを可能であるという、優れた特徴を持つ仮想コンピュータシステム、仮想コンピュータ管理方法および管理プログラムを提供することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施形態に係るデータセンタの構成を示す説明図である。
【図２】図１に示したジョブフロー生成手段、ジョブフロー実行手段、データ管理手段、ジョブ情報データベースおよびデータ格納場所データベースのより詳細な構成を示す説明図である。
【図３】図２に示したサーバ用途情報テーブルのデータ構成およびその具体例を示す説明図である。
【図４】図２に示したサーバ用途確認部の詳細な動作を示すフローチャートである。
【図５】図２に示した用途別実行ジョブ情報テーブルのデータ構成およびその具体例を示す説明図である。
【図６】図２に示した実行ジョブ抽出部の詳細な動作を示すフローチャートである。
【図７】図２に示したジョブ並列度情報テーブルのデータ構成およびその具体例を示す説明図である。
【図８】図２に示したジョブ並列度確認部の詳細な動作を示すフローチャートである。
【図９】図２に示したジョブ依存関係情報テーブルおよびジョブ実行情報テーブルのデータ構成およびその具体例を示す説明図である。
【図１０】図２に示したジョブ依存関係確認部の詳細な動作を示すフローチャートである。
【図１１】図２に示したジョブフロー情報の具体例を示す説明図である。図１１（ａ）は、図４、６、８、１０に示した一連の処理を行う前のジョブフロー情報を示し、図１１（ｂ）は、その処理を行った後のジョブフロー情報を示す。
【図１２】図２に示したジョブフロー制御部の詳細な動作を示すフローチャートである。
【図１３】図２に示したジョブ投入部の詳細な動作を示すフローチャートである。
【図１４】図１〜２に示したデータ格納場所データベースのより詳細な構成を示す説明図である。
【図１５】図２に示したデータ格納場所割り当て部の詳細な動作を示すフローチャートである。
【図１６】図２に示したデータ格納場所問い合わせ部の詳細な動作を示すフローチャートである。
【図１７】本発明の第２の実施形態に係るデータセンタの構成を示す説明図である。
【図１８】図１７に示したジョブフロー生成手段、ジョブフロー実行手段、データ管理手段、ジョブ情報データベースおよびデータ格納場所データベースのより詳細な構成を示す説明図である。
【図１９】図１８に示したデータ格納場所テーブルおよびラベル参照情報テーブルのデータ構成およびその具体例を示す説明図である。
【図２０】図１８に示したデータラベルカウント部の詳細な動作を示すフローチャートである。
【図２１】図１８に示したデータ格納場所割り当て部の詳細な動作を示すフローチャートである。
【図２２】図１８に示したデータ格納場所問い合わせ部の詳細な動作を示すフローチャートである。
【発明を実施するための形態】
【００１６】
（第１の実施形態）
以下、本発明の第１の実施形態の構成について添付図１〜２に基づいて説明する。
最初に、本実施形態の基本的な内容について説明し、その後でより具体的な内容について説明する。
本実施形態に係る仮想コンピュータシステム（データセンタ１０）は、仮想コンピュータを動作させることが可能な物理的なコンピュータ装置である物理マシン１１１〜１１ｍおよび仮想コンピュータからアクセス可能な記憶装置である共通ストレージ１３１と、物理マシン上の仮想コンピュータの動作を管理する管理サーバ１００を備える。この管理サーバ１００は、物理マシン上で動作する複数台の仮想コンピュータの設定および変更を指令する仮想マシン制御手段１５１と、仮想マシン制御手段から仮想コンピュータの設定および変更の指令を受けたことに対応して仮想コンピュータで実行可能な複数個のジョブによって予め構成されたジョブフローで各ジョブを実行する仮想コンピュータを変更するジョブフロー生成手段１５２と、各々のジョブで作成もしくは参照されるデータファイルとしてあらかじめ定義されたデータラベル名に対応するデータファイルを共有ストレージ上に割り当てるデータ管理手段１５４と、データファイルの格納場所情報をデータラベル名に対応させて格納するデータ格納場所データベース１７０を記憶する記憶手段１０２と、データラベル名に対応する格納場所情報をデータ管理手段に照会すると共にこれをジョブを実行する仮想コンピュータに伝達するジョブフロー実行手段１５３とを有する。
【００１７】
また記憶手段１０２は、仮想コンピュータの用途について記憶するサーバ用途情報テーブル１６１と、仮想コンピュータの用途に対応する実行ジョブおよび該実行ジョブで作成もしくは参照されるデータファイルのデータラベル名について記憶する用途別実行ジョブ情報テーブル１６２とを含むジョブ情報データベース１６０を記憶し、ジョブフロー生成手段１５２が、サーバ用途情報テーブルを参照して仮想マシン制御手段が構成変更した仮想コンピュータの用途を確認するサーバ用途確認部１５２ａと、用途別実行ジョブ情報テーブルを参照して構成変更された仮想コンピュータの用途に対応するデータラベル名を抽出する実行ジョブ抽出部１５２ｂと、構成変更された仮想コンピュータに対応するようジョブフロー情報を変更するジョブ依存関係確認部１５２ｄとを有する。
【００１８】
ジョブ情報データベース１６０はさらに、ジョブフローを構成する各ジョブが並列実行可能か否かを示す並列実行可否について記憶するジョブ並列度情報テーブル１６３を含み、
ジョブフロー生成手段１５２は、ジョブ並列度情報テーブル１６３を参照して並列実行可能であるジョブについて並列実行するようにジョブフロー情報を変更するジョブ依存関係確認部１５２ｃを有する。
【００１９】
以上の構成を備えることにより、仮想コンピュータ管理装置１００は、仮想コンピュータの構成が変更されても、それに伴うジョブフローやデータの構成変更を容易に行うことが可能となる。
以下、これをより詳細に説明する。
【００２０】
図１は、本発明の第１の実施形態に係るデータセンタ１０の構成を示す説明図である。データセンタ１０は、データセンタ１０全体を管理する管理サーバ１００と、管理サーバ１００の管理によって後述の仮想マシンが構築される物理的なコンピュータ装置であるm台の物理マシン１１１〜１１ｍと、管理サーバ１００および物理マシン１１１〜１１ｍからアクセス可能なファイルサーバ１３０とが、内部ネットワーク１４０によって相互に接続されて構成されている。
【００２１】
物理マシン１１１〜１１ｍ上に、ｎ台の仮想マシン１２１〜１２ｎが管理サーバ１００の管理によって構築される。仮想マシン１２１〜１２ｎのいずれからも、ファイルサーバ１３０にアクセス可能である。ここでｍおよびｎはいずれも整数であり、ｍ＝ｎであってもｍ≠ｎであってもよい。また、物理マシンごとに構築される仮想マシンの台数が異なっていてもよい。
【００２２】
管理サーバ１００は、コンピュータプログラムを実行する演算装置であるプロセッサ１０１と、プログラムやデータを記憶する記憶装置１０２とで構成されるコンピュータ装置である。プロセッサ１０１では、後述する仮想マシン制御手段１５１、ジョブフロー生成手段１５２、ジョブフロー実行手段１５３、データ管理手段１５４といった各手段が、各々コンピュータプログラムとして動作する。
【００２３】
また、記憶装置１０２には、ジョブフロー生成手段１５２およびジョブフロー実行手段１５３で利用されるジョブ情報データベース１６０と、データ管理手段１５４で利用されるデータ格納場所データベース１７０が記憶されている。これら各データベースの詳細な内容についても後述する。
【００２４】
仮想マシン制御手段１５１は、物理マシン１１１〜１１ｍ上に仮想マシン１２１〜１２ｎを追加および削除する動作を行う。これは仮想マシン１２１〜１２ｎの負荷などによって動的に行うことができる。場合によっては物理マシン１１１〜１１ｍの起動および停止を伴ってもよい。仮想マシン１２１〜１２ｎを追加もしくは削除した場合、仮想マシン制御手段１５１はその旨をジョブフロー生成手段１５２に通知する。
【００２５】
ジョブフロー生成手段１５２は、仮想マシン制御手段１５１からの仮想マシン１２１〜１２ｎの追加通知または削除通知に反応してジョブフローを生成および変更して、そのジョブフローをジョブフロー実行手段１５３に渡して実行させる。そして、そのジョブフローを実行する際に、ジョブフロー実行手段１５３は参照もしくは作成するデータファイルの所在をデータ管理手段１５４に問い合わせ、その問い合わせに対して返答された位置にデータファイルの参照もしくは作成を行う。
【００２６】
ファイルサーバ１３０は、管理サーバ１００、物理マシン１１１〜１１ｍ、仮想マシン１２１〜１２ｎの全てからアクセス可能な記憶装置である共通ストレージ１３１を内蔵している。本実施形態では、実際のデータファイルは共通ストレージ１３１に記憶されているという例を示しているが、データファイルの所在は管理サーバ１００および仮想マシン１２１〜１２ｎがアクセス可能な記憶装置上であればどこでもよい。
【００２７】
図２は、図１に示したジョブフロー生成手段１５２、ジョブフロー実行手段１５３、データ管理手段１５４、ジョブ情報データベース１６０およびデータ格納場所データベース１７０のより詳細な構成を示す説明図である。ジョブフロー生成手段１５２には、サーバ用途確認部１５２ａ、実行ジョブ抽出部１５２ｂ、ジョブ並列度確認部１５２ｃ、ジョブ依存関係確認部１５２ｄといった各機能部が存在する。
【００２８】
ジョブフロー実行手段１５３には、ジョブフロー制御部１５３ａ、ジョブ投入部１５３ｂといった各機能部が存在する。データ管理手段１５４には、データ格納場所割り当て部１５４ａ、データ格納場所問い合わせ部１５４ｂといった各機能部が存在する。これら各機能部の動作については後述する。
【００２９】
ジョブ情報データベース１６０は、サーバ用途情報テーブル１６１、用途別実行ジョブ情報テーブル１６２、ジョブ並列度情報テーブル１６３、ジョブ依存関係情報テーブル１６４、ジョブ実行情報テーブル１６５、ジョブフロー情報１６６といった各テーブルおよび情報を含む。データ格納場所データベース１７０は、データ格納場所テーブル１７１を含む。これら各々に記憶されるデータおよびその具体例についても後述する。
【００３０】
（ジョブフロー生成手段）
図３は、図２に示したサーバ用途情報テーブル１６１のデータ構成およびその具体例を示す説明図である。サーバ用途情報テーブル１６１は、各仮想マシン１２１〜１２ｎに割り振られているサーバ名１６１ａと、その各々が担当する用途１６１ｂとが記憶されている。仮想マシン制御手段１５１は、仮想マシン１２１〜１２ｎの追加通知または削除通知に伴って、追加通知の場合は追加されたサーバについてサーバ名１６１ａとその用途１６１ｂをサーバ用途情報テーブル１６１に追加する。削除通知の場合は、削除されたサーバについてサーバ名１６１ａとその用途１６１ｂを削除する。
【００３１】
図４は、図２に示したサーバ用途確認部１５２ａの詳細な動作を示すフローチャートである。サーバ用途確認部１５２ａは、サーバ用途情報テーブル１６１を読み込んで（ステップＳ２０１）、各仮想マシン１２１〜１２ｎに対応する用途１６１ｂを決定して（ステップＳ２０２）実行ジョブ抽出部１５２ｂに処理を渡す。
【００３２】
図５は、図２に示した用途別実行ジョブ情報テーブル１６２のデータ構成およびその具体例を示す説明図である。用途別実行ジョブ情報テーブル１６２は、サーバ用途情報テーブル１６１に記録された各サーバの用途１６１ｂと、これに対応する実行バッチジョブ１６２ａと、その実行バッチジョブ１６２ａを実行する際に作成すべきデータファイルのデータラベル名について示す作成データ情報１６２ｂと、同じく参照すべきデータファイルのデータラベル名について示す参照データ情報１６２ｃとが記憶されている。
【００３３】
ここでいう「データラベル名」とは、そのデータファイルについて一意に示すことのできる任意の名称であり、実際のデータファイルのファイル名やディレクトリ名などと一致している必要はない。
【００３４】
図６は、図２に示した実行ジョブ抽出部１５２ｂの詳細な動作を示すフローチャートである。実行ジョブ抽出部１５２ｂは、用途別実行ジョブ情報テーブル１６２を読み込んで（ステップＳ２１１）、各サーバに実行させる実行バッチジョブ１６２ａとその際に作成および参照されるデータラベル名である作成データ情報１６２ｂ、参照データ情報１６２ｃを抽出して（ステップＳ２１２）ジョブ並列度確認部１５２ｃに処理を渡す。
【００３５】
図７は、図２に示したジョブ並列度情報テーブル１６３のデータ構成およびその具体例を示す説明図である。ジョブ並列度情報テーブル１６３は、用途別実行ジョブ情報テーブル１６２に記録された実行バッチジョブ１６２ａと、そのジョブが並列実行可能か否かを示す並列実行可否１６３ａとが記憶されている。
【００３６】
図８は、図２に示したジョブ並列度確認部１５２ｃの詳細な動作を示すフローチャートである。ジョブ並列度確認部１５２ｃは、まずジョブ並列度情報テーブル１６３を読み込んで（ステップＳ２２１）、サーバごとに同一サーバで実行すべきジョブが複数存在するか否かを判断し（ステップＳ２２２）、複数存在しなければそのまま処理を終了する。複数存在する場合には、並列実行可否１６３ａが並列実行「可能」を示しているか否かを判断する（ステップＳ２２３）。
【００３７】
ステップＳ２２３で、並列実行「可能」であれば、並列実行するようにジョブフロー情報１６６を変更して（ステップＳ２２４）処理を終了する。並列実行「可能」でなければ、ジョブフロー情報１６６の変更を行わずに処理を終了する。以上の処理が終了した後、ジョブ依存関係確認部１５２ｄに処理を渡す。
【００３８】
図９は、図２に示したジョブ依存関係情報テーブル１６４およびジョブ実行情報テーブル１６５のデータ構成およびその具体例を示す説明図である。ジョブ依存関係情報テーブル１６４は、用途別実行ジョブ情報テーブル１６２に記録された実行バッチジョブ１６２ａと、そのジョブに先行して行わなければならない先行バッチジョブ１６４ａとが記憶されている。ジョブ実行情報テーブル１６５は、用途別実行ジョブ情報テーブル１６２に記録された実行バッチジョブ１６２ａ、即ちジョブフローを構成する各々のジョブが、実行済であるか否かを示す実行済情報１６５ａが記録されている。
【００３９】
図１０は、図２に示したジョブ依存関係確認部１５２ｄの詳細な動作を示すフローチャートである。ジョブ依存関係確認部１５２ｄは、まずジョブ依存関係情報テーブル１６４とジョブ実行情報テーブル１６５とを読み込んで（ステップＳ２３１）、仮想マシン制御手段１５１から受けた通知が仮想マシン１２１〜１２ｎの追加通知であるか削除通知であるかを判断する（ステップＳ２３２）。削除通知であれば削除された仮想マシンの用途１６１ｂに対応する実行バッチジョブ１６２ａを削除したジョブフロー情報１６６を作成して（ステップＳ２３３）処理を終了する。
【００４０】
追加通知であれば、ジョブ依存関係確認部１５２ｄは、追加された仮想マシンの用途１６１ｂに対応する実行バッチジョブ１６２ａに対応する先行バッチジョブ１６４ａが「−（無し）」、またはこの先行バッチジョブ１６４に対応する実行済情報１６５ａが「実行済」、のいずれかに該当するか否かを判断する（ステップＳ２３４）。
【００４１】
先行バッチジョブ１６４ａが「−（無し）」、またはこれに対応する実行済情報１６５ａが「実行済」であれば、その実行バッチジョブ１６２ａを追加したジョブフロー情報１６６を作成して（ステップＳ２３５）処理を終了する。先行バッチジョブ１６４ａが存在し、かつこれに対応する実行済情報１６５ａが「未実行」であるなら、ジョブフロー情報１６６の作成および変更は行わずに処理を終了する。
【００４２】
図１１は、図２に示したジョブフロー情報１６６の具体例を示す説明図である。図１１（ａ）は、図４、６、８、１０に示した一連の処理を行う前のジョブフロー情報１６６を示す。ここでのジョブフロー情報１６６は、用途１６１ｂが「ＡＰ（アプリケーション）サーバ」、実行バッチジョブ１６２ａが「帳票データ作成」であるサーバ名１６１ａ「サーバＡ」から、用途１６１ｂが「仕分けサーバ」、実行バッチジョブ１６２ａが「データ仕分け」であるサーバ名１６１ａ「サーバＣ」に処理が渡り、その後で用途１６１ｂが「帳票サーバ」、実行バッチジョブ１６２ａが「帳票作成」であるサーバ名１６１ａ「サーバＤ」に処理を渡して実行を終了するという一連の動作を示している。
【００４３】
図３、図５、図７、図９に示した各テーブルには、この例に対応したデータが記憶されている。この状態で、ジョブフロー生成手段１５２が仮想マシン制御手段１５１から「仮想マシン追加通知」を受けた。より具体的には、用途が「ＡＰサーバ」である「サーバＢ」という仮想マシンを追加したという通知である。仮想マシン制御手段１５１は、この通知と共に、サーバ用途情報テーブル１６１の用途１６１ｂは「ＡＰサーバ」に対応するサーバ名１６１ａに「サーバＢ」を追加している。
【００４４】
サーバ用途確認部１５２ａは、図４に示したように、サーバ用途情報テーブル１６１を読み込むと（ステップＳ２０１）、新しく追加されたサーバ名１６１ａ「サーバＢ」の用途１６１ｂは「ＡＰサーバ」である（ステップＳ２０２）。この情報を受けた実行ジョブ抽出部１５２ｂは、図６に示したように、用途別実行ジョブ情報テーブル１６２を読み込んで（ステップＳ２１１）、用途１６１ｂ「ＡＰサーバ」に対応する実行バッチジョブ１６２ａ「帳票データ作成」、作成データ情報１６２ｂ「データファイルＡ」、参照データ情報１６２ｃ「−（無し）」を抽出する（ステップＳ２１２）。
【００４５】
この情報を受けたジョブ並列度確認部１５２ｃは、図８に示したように、ジョブ並列度情報テーブル１６３を読み込んで（ステップＳ２２１）、各サーバで実行すべきジョブが複数存在するか否かを判断する（ステップＳ２２２）。この例では「ＡＰサーバ」である「サーバＡ」「サーバＢ」で実行すべきジョブは「帳票データ作成」以外にないので、そのまま処理を終了してジョブ依存関係確認部１５２ｄに処理を渡す。
【００４６】
処理を渡されたジョブ依存関係確認部１５２ｄは、図１０に示したように、ジョブ依存関係情報テーブル１６４とジョブ実行情報テーブル１６５とを読み込む（ステップＳ２３１）、仮想マシン制御手段１５１から受けた通知は仮想マシン「サーバＢ」の追加通知であり（ステップＳ２３２）、かつ「サーバＢ」の用途１６１ｂ「ＡＰサーバ」に対応する実行バッチジョブ１６２ａ「帳票データ作成」に対応する先行バッチジョブ１６４が「−（無し）」であるので（ステップＳ２３４）、この「サーバＢ」を追加したジョブフロー情報１６６を作成して（ステップＳ２３５）処理を終了する。
【００４７】
図１１（ｂ）は、図４、６、８、１０に示した処理を行った後のジョブフロー情報１６６を示す。これは、図１１（ａ）で示したジョブフロー情報１６６に対して、図１０までに示した処理を行って、「帳票データ作成」を行う「ＡＰサーバ」である「サーバＢ」が追加された後の状態のジョブフロー情報１６６である。
【００４８】
（ジョブフロー実行手段）
図１２は、図２に示したジョブフロー制御部１５３ａの詳細な動作を示すフローチャートである。ジョブフロー制御部１５３ａは、まずジョブフロー情報１６６を読み込み、またジョブ実行情報テーブル１６５の実行済情報１６５ａを読み込んで（ステップＳ２５１）、実行済情報１６５ａが「未済」であるものの中でこのジョブフローに記載された順序が最も早いものを実行ジョブとして決定する（ステップＳ２５２）。
【００４９】
ジョブフロー制御部１５３ａは、この実行ジョブをジョブ投入部１５３ｂに渡して対応するサーバ名１６１ａのサーバに実行させ（ステップＳ２５３）、その実行ジョブの実行完了を待ち合わせる（ステップＳ２５４）。そして、そのジョブがジョブフロー情報１６６に記載された順序で最終のジョブであるか否かを判断し（ステップＳ２５５）、最終のジョブであれば該ジョブフローの実行を終了する。最終のジョブでなければ、ステップＳ２５２に戻って後続のジョブを実行する。
【００５０】
図１３は、図２に示したジョブ投入部１５３ｂの詳細な動作を示すフローチャートである。ジョブ投入部１５３ｂは、ジョブフロー制御部１５３ａから渡された実行ジョブ（実行バッチジョブ１６２ａ）について、データの作成を伴うジョブであるか否か、即ち用途別実行ジョブ情報テーブル１６２で作成データ情報１６２ｂが登録されているジョブであるか否かを判断する（ステップＳ２６１）。作成データ情報１６２ｂが登録されていれば、そのデータの格納場所を割り当てるよう、データ格納場所割り当て部１５４ａに依頼する（ステップＳ２６２）。
【００５１】
ジョブ投入部１５３ｂはこれと同様に、この実行ジョブがデータの参照を伴うジョブであるか否か、即ち用途別実行ジョブ情報テーブル１６２で参照データ情報１６２ｃが登録されているジョブであるか否かを判断する（ステップＳ２６３）。参照データ情報１６２ｃが登録されていれば、その参照データの登録された場所がどこであるかを、データ格納場所問い合わせ部１５４ｂに問い合わせる（ステップＳ２６４）。
【００５２】
データ格納場所割り当て部１５４ａおよびデータ格納場所問い合わせ部１５４ｂからは、データの格納場所についての情報が返されるので、ジョブ投入部１５３ｂはこの情報に基づいてこの実行ジョブを対応するサーバ名１６１ａのサーバに実行させる（ステップＳ２６５）。
【００５３】
（データ管理手段）
図１４は、図１〜２に示したデータ格納場所データベース１７０のより詳細な構成を示す説明図である。データ格納場所データベース１７０は、データ格納場所テーブル１７１を含む。データ格納場所テーブル１７１は、作成データ情報１６２ｂまたは参照データ情報１６２ｃに対応するデータラベル名１７１ａと、実際にそのデータが格納されている場所（コンピュータ名、ディレクトリ名、ファイル名など）を示す格納場所情報１７１ｂとを含む。
【００５４】
図１５は、図２に示したデータ格納場所割り当て部１５４ａの詳細な動作を示すフローチャートである。データ格納場所割り当て部１５４ａは、ステップＳ２６２でジョブ投入部１５３ｂからデータ格納場所の割り当て依頼を受けた場合に（ステップＳ２７１）、そこで受け取った作成データ情報１６２ｂをデータラベル名１７１ａとしてデータ格納場所の割り当てを行って、そのデータをデータ格納場所テーブル１７１に保存し（ステップＳ２７２）、格納場所情報１７１ｂをジョブ投入部１５３ｂに返す（ステップＳ２７３）。
【００５５】
図１６は、図２に示したデータ格納場所問い合わせ部１５４ｂの詳細な動作を示すフローチャートである。データ格納場所問い合わせ部１５４ｂは、ステップＳ２６４でジョブ投入部１５３ｂからデータ格納場所の問い合わせを受けた場合に（ステップＳ２８１）、そこで受け取った参照データ情報１６２ｃをデータラベル名１７１ａの中から検索して、その検索でヒットしたデータラベル名１７１ａに対応する格納場所情報１７１ｂをジョブ投入部１５３ｂに返す（ステップＳ２８２）。
【００５６】
前述の例で、「帳票データ作成」を担当する「ＡＰサーバ」である「サーバＢ」という仮想マシンが追加された場合も、この「帳票データ作成」という実行バッチジョブ１６２ａは作成データ情報１６２ｂが「データＡ」を作成するとあるので、このジョブフローを実行するジョブフロー制御部１５３ａはこのジョブフローのジョブフロー情報１６６を読み込み（ステップＳ２５１）、該ジョブフローの最初に記載された「帳票データ作成」のジョブを実行することを決定して（ステップＳ２５２）、この実行ジョブをジョブ投入部１５３ｂに渡す（ステップＳ２５３）。
【００５７】
「帳票データ作成」のジョブを受け取ったジョブ投入部１５３ｂは、このジョブは作成データ情報１６２ｂに「データＡ」が登録されているジョブであるので（ステップＳ２６１）、データ格納場所割り当て部１５４ａにこの「データＡ」の格納場所を割り当てるよう依頼する（ステップＳ２６２）。この依頼を受けたデータ格納場所割り当て部１５４ａは、データラベル１７１ａを「データＡ」として、これに対応するデータ格納場所の割り当てを行い、実際に割り当てられた格納場所情報１７１ｂをジョブ投入部１５３ｂに返す（ステップＳ２７２）。
【００５８】
ジョブ投入部１５３ｂはこれを受けて、この格納場所情報１７１ｂを対応するサーバ名１６１ａ「サーバＡ」および「サーバＢ」のサーバに渡して、実行バッチジョブ１６２ａ「帳票データ作成」のジョブを実行させる（ステップＳ２６５）。これが実行できたら、ジョブフロー制御部１５３ａおよびジョブ投入部１５３ｂは、それに続く「データ仕分け」および「帳票作成」のジョブを順番に実行させる。
【００５９】
以上の例で述べたように、「サーバＢ」なる仮想マシンが追加された場合も、その追加の前後でジョブの依存関係には変化はなく、またデータの参照関係にも変化はない。ただ、サーバ用途情報テーブル１６１の、新たに担当させたい用途１６１ｂ「ＡＰサーバ」に対応するサーバ名１６１ａに「サーバＢ」を追加するだけで、その他の各テーブルのデータには変更される点は無い。
【００６０】
即ち、この１点の変更のみで、ジョブフロー情報１６６で定義された「ＡＰサーバ」が担当する「帳票データ作成」のジョブを、図１１（ａ）に示すような「サーバＡ」のみでの実行から、図１１（ｂ）に示すように「サーバＡ」および「サーバＢ」の２台で並行して実行するように問題なく変更することができるのである。逆に図１１（ｂ）に示したジョブフロー情報１６６の状態から「サーバＢ」を削除して、図１１（ａ）に示すように「帳票データ作成」のジョブを「サーバＡ」のみで実行させるようにする場合についても同様の動作で可能である。
【００６１】
（第１の実施形態の全体的な動作）
次に、上記の実施形態の全体的な動作について説明する。本実施形態に係る仮想コンピュータ管理方法は、仮想コンピュータを動作させることが可能な物理的なコンピュータ装置である物理マシン１１１〜１１ｍと、仮想コンピュータからアクセス可能な記憶装置である共有ストレージ１３１と、物理マシン上の仮想コンピュータの動作を管理する管理サーバ１００とが相互に接続された仮想コンピュータシステムにあって、物理マシン上で動作する複数台の仮想コンピュータの設定および変更を仮想マシン制御手段１５１が指令し、仮想コンピュータの構成変更に反応して仮想コンピュータで実行可能な複数個のジョブによって予め構成されたジョブフローで各ジョブを実行する仮想コンピュータをジョブフロー生成手段１５２が変更し、各々のジョブで作成もしくは参照されるデータファイルとしてあらかじめ定義されたデータラベル名に対応するデータファイルをデータ管理手段１５４が共有ストレージ上に割り当てると共にデータファイルの格納場所情報をデータラベル名に対応させて記憶し、データラベル名に対応する格納場所情報をジョブフロー実行手段１５３がジョブを実行する仮想コンピュータに伝達する。
【００６２】
ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行するコンピュータである管理サーバ１００に実行させるようにしてもよい。
この構成および動作により、本実施形態は以下のような効果を奏する。
【００６３】
従来技術では、仮想マシンの追加や削除に伴って、ジョブの依存関係やデータの参照関係などについて複雑に変化させる必要があった。本実施形態では、そのような複雑な変更処理を必要とはしない。従って、夜間や休日などに人手をかけずに一括して実行することが求められるバッチ処理に適した環境を、本実施形態では提供することができる。仮想マシンの追加や削除も、各物理マシンにかかる処理負荷や消費電力などに基づいて自動的に行うことができるので、前述したような仮想化による効率化が容易に実現可能である。
【００６４】
（第２の実施形態）
本発明の第２の実施形態に係る仮想コンピュータシステム（データセンタ３１０）は、前述した第１の実施形態の構成に加えて、データ格納場所データベース４７０が、ジョブの名称、仮想コンピュータの名称およびデータラベル名に対応した子番号を共に記憶し、ジョブフロー生成手段４５２が、異なるジョブおよび仮想コンピュータが同一のデータラベル名を使用する場合に、互いに異なる子番号を採番してデータ格納場所データベースに記憶させるデータラベルカウント部４５２ｄを有する構成とした。
【００６５】
これによって、別々のジョブが同一のデータラベル名でデータファイルを使用する場合にも、そのデータラベル名が重複することに伴う不都合を防止することができる。以下、これをより詳しく説明する。
【００６６】
図１７は、本発明の第２の実施形態に係るデータセンタ３１０の構成を示す説明図である。データセンタ３１０は、前述した第１の実施形態に係るデータセンタ１０と概ね同一の構成を有するが、このデータセンタを管理する管理サーバの動作が異なるので、これを管理サーバ４００という。物理マシン１１１〜１１ｍ、ｎ台の仮想マシン１２１〜１２ｎ、ファイルサーバ１３０、内部ネットワーク１４０は第１の実施形態と同一である。
【００６７】
管理サーバ４００の構成は、前述した第１の実施形態に係る管理サーバ１００とハードウェア的には全く同一であり、ソフトウェア的にも概ね同一であるが、プロセッサ１０１で動作するジョブフロー生成手段、データ管理手段、および記憶装置１０２に記憶されるデータ格納場所データベースの内容が異なる。これらを各々ジョブフロー生成手段４５２、データ管理手段４５４、データ格納場所データベース４７０という。これら以外の仮想マシン制御手段１５１、ジョブフロー実行手段１５３、ジョブ情報データベース１６０は第１の実施形態と同一である。
【００６８】
図１８は、図１７に示したジョブフロー生成手段４５２、ジョブフロー実行手段１５３、データ管理手段４５４、ジョブ情報データベース１６０およびデータ格納場所データベース４７０のより詳細な構成を示す説明図である。ジョブフロー生成手段４５２は、第１の実施形態で説明したサーバ用途確認部１５２ａ、実行ジョブ抽出部１５２ｂ、ジョブ並列度確認部１５２ｃ、ジョブ依存関係確認部１５２ｄに加えて（これらは第１の実施形態で説明したものと同一の動作をするので、参照番号も全く同一とする）、さらにデータラベルカウント部４５２ｅという機能部が存在する。
【００６９】
データ管理手段４５４は、データ格納場所割り当て部４５４ａ、データ格納場所問い合わせ部４５４ｂを備える。データ格納場所データベース４７０は、データ格納場所テーブル４７１と、ラベル参照情報テーブル４７２とを備える。
【００７０】
図１９は、図１８に示したデータ格納場所テーブル４７１およびラベル参照情報テーブル４７２のデータ構成およびその具体例を示す説明図である。データ格納場所テーブル４７１は、第１の実施形態で説明したデータラベル名１７１ａと格納場所情報１７１ｂに加えて、後述の子番号４７１ａが記録される。
【００７１】
ラベル参照情報テーブル４７２は、用途別実行ジョブ情報テーブル１６２に記録された実行バッチジョブ１６２ａと、そのバッチジョブを実行するサーバ名１６１ａ、およびそれらに対応する前述のデータラベル名１７１ａと子番号４７１ａとが記録される。
【００７２】
図２０は、図１８に示したデータラベルカウント部４５２ｅの詳細な動作を示すフローチャートである。データラベルカウント部４５２ｅは、ジョブ依存関係確認部１５２ｄが図１０のステップＳ２３５の動作でジョブフロー情報１６６を作成したことに反応して、追加された実行バッチジョブ１６２ａとサーバ名１６１ａに対応するデータラベル名１７１ａを、ラベル参照情報テーブル４７２に記憶する。
【００７３】
その際、まず同一のデータラベル名１７１ａのデータが既にラベル参照情報テーブル４７２に存在するか否かを判断し（ステップＳ５０１）、存在しなければそのまま実行バッチジョブ１６２ａ、サーバ名１６１ａ、データラベル名１７１ａをラベル参照情報テーブル４７２に記憶する（ステップＳ５０２）。その際、子番号４７１ａはたとえば「０１」などのような初期値にする。
【００７４】
同一のデータラベル名１７１ａのデータが既に存在していれば、その既存のデータと実行バッチジョブ１６２ａとサーバ名１６１ａが異なるか否かを判断する（ステップＳ５０３）。異なっていれば、子番号４７１ａをその既存データと被らないように付けて（たとえば既存データの子番号４７１ａに＋１するなど）（ステップＳ５０４）、ステップＳ５０２に進んでデータを記憶する。同一のデータラベル名１７１ａで実行バッチジョブ１６２ａとサーバ名１６１ａが異ならないなら、そのまま処理を終了する。
【００７５】
図２１は、図１８に示したデータ格納場所割り当て部４５４ａの詳細な動作を示すフローチャートである。データ格納場所割り当て部４５４ａは、ステップＳ２６２でジョブ投入部１５３ｂからデータ格納場所の割り当て依頼を受けた場合に（ステップＳ２７１）、そこで受け取った作成データ情報１６２ｂをデータラベル名１７１ａとして、これと同時に通知される実行バッチジョブ１６２ａとサーバ名１６１ａとから、ラベル参照情報テーブル４７２を参照してこれに対応する子番号４７１ａを検索する（ステップＳ５１１）。
【００７６】
このデータラベル名１７１ａと子番号４７１ａに対応してデータ格納場所の割り当てを行って、そのデータをデータ格納場所テーブル１７１に保存し（ステップＳ５１２）、格納場所情報１７１ｂをジョブ投入部１５３ｂに返す（ステップＳ２７３）。
【００７７】
図２２は、図１８に示したデータ格納場所問い合わせ部４５４ｂの詳細な動作を示すフローチャートである。データ格納場所問い合わせ部１５４ｂは、ステップＳ２６４でジョブ投入部１５３ｂからデータ格納場所の問い合わせを受けた場合に（ステップＳ２８１）、そこで受け取った参照データ情報１６２ｃをデータラベル名１７１ａとして、これと同時に通知される実行バッチジョブ１６２ａとサーバ名１６１ａとから、ラベル参照情報テーブル４７２を参照してこれに対応する子番号４７１ａを検索する（ステップＳ５２１）。
【００７８】
このデータラベル名１７１ａと子番号４７１ａに対応する格納場所情報１７１ｂをジョブ投入部１５３ｂに返す（ステップＳ５２２）。なお、図２１〜２２については、図１５〜１６に示した処理と同一の処理については、同一の参照番号で示している。
【００７９】
本実施形態では、別々のジョブが同一のデータラベル名１７１ａで定義されるデータファイルを作成もしくは参照するように指定していたとしても、実行バッチジョブ１６２ａとサーバ名１６１ａが異なれば別々の子番号４７１ａが付与されて別々のデータとして扱われる。
【００８０】
図１９に示したデータ例では、サーバ名１６１ａ「サーバＡ」で実行される実行バッチジョブ１６２ａ「帳票データ作成」と、サーバ名１６１ａ「サーバＸ」で実行される実行バッチジョブ１６２ａ「その他」の両方に、データラベル名１７１ａ「データＡ」が割り当てられていた。この場合も、前者には子番号４７１ａ＝「０１」、後者には子番号４７１ａ＝「０２」として、別々のデータファイルを作成して作業するようになるので、データラベル名１７１ａが被ることに起因する間違いは生じない。
【００８１】
これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。
【産業上の利用可能性】
【００８２】
本発明は、コンピュータの仮想化環境でジョブフローを実行する場合に適用することができる。
【符号の説明】
【００８３】
１０、３１０  データセンタ
１００、４００  管理サーバ
１０１  プロセッサ
１０２  記憶装置
１１１、１１ｍ  物理マシン
１２１、１１ｎ  仮想マシン
１３０  ファイルサーバ
１３１  共通ストレージ
１４０  内部ネットワーク
１５１  仮想マシン制御手段
１５２、４５２  ジョブフロー生成手段
１５２ａ  サーバ用途確認部
１５２ｂ  実行ジョブ抽出部
１５２ｃ  ジョブ並列度確認部
１５２ｄ  ジョブ依存関係確認部
１５３  ジョブフロー実行手段
１５３ａ  ジョブフロー制御部
１５３ｂ  ジョブ投入部
１５４、４５４  データ管理手段
１５４ａ、４５４ａ  データ格納場所割り当て部
１５４ｂ、４５４ｂ  データ格納場所問い合わせ部
１６０  ジョブ情報データベース
１６１  サーバ用途情報テーブル
１６１ａ  サーバ名
１６１ｂ  用途
１６２  用途別実行ジョブ情報テーブル
１６２ａ  実行バッチジョブ
１６２ｂ  作成データ情報
１６２ｃ  参照データ情報
１６３  ジョブ並列度情報テーブル
１６３ａ  並列実行可否
１６４  ジョブ依存関係情報テーブル
１６４ａ  先行バッチジョブ
１６５  ジョブ実行情報テーブル
１６５ａ  実行済情報
１６６  ジョブフロー情報
１７０、４７０  データ格納場所データベース
１７１、４７１  データ格納場所テーブル
１７１ａ  データラベル名
１７１ｂ  格納場所情報
４５２ｅ  データラベルカウント部
４７１ａ  子番号
４７２  ラベル参照情報テーブル
【図１】
0005446746.tif 000002
【図２】
0005446746.tif 000003
【図３】
0005446746.tif 000004
【図４】
0005446746.tif 000005
【図５】
0005446746.tif 000006
【図６】
0005446746.tif 000007
【図７】
0005446746.tif 000008
【図８】
0005446746.tif 000009
【図９】
0005446746.tif 000010
【図１０】
0005446746.tif 000011
【図１１】
0005446746.tif 000012
【図１２】
0005446746.tif 000013
【図１３】
0005446746.tif 000014
【図１４】
0005446746.tif 000015
【図１５】
0005446746.tif 000016
【図１６】
0005446746.tif 000017
【図１７】
0005446746.tif 000018
【図１８】
0005446746.tif 000019
【図１９】
0005446746.tif 000020
【図２０】
0005446746.tif 000021
【図２１】
0005446746.tif 000022
【図２２】
0005446746.tif 000023