(57)【要約】【課題】ファイルの一貫性を確保しつつ、高速なジョブネットの実行を実現する計算機及び方法を提供する。【解決手段】複数のジョブから構成されるジョブネットを管理するジョブ管理サーバと、ファイルを管理するファイルサーバと、複数の計算機とを備える計算機システムであって、ファイルサーバは、ファイルを格納するストレージを提供し、計算機は、ジョブの実行処理を管理するジョブ実行管理部と、ストレージにアクセスするためのアクセス管理部と、を有し、アクセス管理部は、ファイルにアクセスするためＩ／Ｏを監視し、他の計算機に割り当てられたジョブの実行時における所定の対象Ｉ／Ｏをジョブの実行契機として検出するアクセス監視部と、対象Ｉ／Ｏが検出された場合に、ジョブ実行管理部にジョブを開始するためのイベントを通知するイベント通知部と、を有する。【選択図】図１
2014063336.tif 000002
【特許請求の範囲】
【請求項１】
複数のジョブから構成されるジョブネットを管理するジョブ管理サーバと、前記複数のジョブの各々の実行時に用いられるファイルを管理するファイルサーバと、複数の計算機とを備える計算機システムであって、
前記ジョブ管理サーバは、第１のプロセッサ、前記第１のプロセッサに接続される第１のメモリ、及び前記第１のプロセッサに接続される第１のＩ／Ｏインタフェースを有し、
前記ファイルサーバは、第２のプロセッサ、前記第２のプロセッサに接続される第２のメモリ、前記第２のプロセッサに接続される第２のＩ／Ｏインタフェース、及び一つ以上の記憶装置を有し、
前記計算機は、第３のプロセッサ、前記第３のプロセッサに接続される第３のメモリ、及び前記第３のプロセッサに接続される第３のＩ／Ｏインタフェースを有し、
前記ジョブ管理サーバは、前記複数の計算機の各々に割り当てるジョブを決定するジョブスケジューラを有し、
前記ファイルサーバは、前記一つ以上の記憶装置の記憶領域を用いて、前記ファイルを格納するストレージを提供し、
前記計算機は、
前記ジョブの実行処理を管理するジョブ実行管理部と、
前記ストレージにアクセスするためのアクセス管理部と、
を有し、
前記アクセス管理部は、
前記ファイルサーバと前記計算機との間で送受信され、前記ファイルにアクセスするためのＩ／Ｏを監視し、他の前記計算機に割り当てられた前記ジョブの実行時における所定の対象Ｉ／Ｏを前記ジョブの実行契機として検出するアクセス監視部と、
前記対象Ｉ／Ｏが検出された場合に、前記ジョブ実行管理部に前記ジョブを開始するためのイベントを通知するイベント通知部と、
を有することを特徴とする計算機システム。
【請求項２】
請求項１に記載の計算機システムであって、
前記対象Ｉ／Ｏは、前記ファイルに対する操作権限であるトークンの付与要求又は返却要求の少なくともいずれか一方であることを特徴とする計算機システム。
【請求項３】
請求項１又は請求項２に記載の計算機システムであって、
前記複数の計算機は、第１の計算機、及び第２の計算機を含み、
前記ジョブネットは、第１のジョブ、及び前記第１のジョブの実行後に実行される第２のジョブを含み、
前記ジョブスケジューラは、
前記第１の計算機に前記第１のジョブを割り当て、前記第２の計算機に前記第２のジョブを割り当て、
前記ジョブネットを解析することによって、前記第１のジョブの実行時に用いられる前記ファイルである対象ファイルを特定し、
前記特定された対象ファイルに関連するＩ／Ｏを前記対象Ｉ／Ｏとして監視するための監視対象定義情報を生成し、
前記生成された監視対象定義情報を前記第２の計算機に送信し、
前記第２の計算機のアクセス監視部は、
前記ファイルサーバとの間で送受信される前記Ｉ／Ｏを検出した場合、前記監視対象定義情報を参照して、前記検出されたＩ／Ｏが前記対象Ｉ／Ｏであるか否かを判定し、
前記対象Ｉ／Ｏであると判定された場合、前記イベントの発生であると判定し、
前記第２の計算機のイベント通知部は、前記イベントを前記第２の計算機のジョブ実行管理部に通知し、
前記第２の計算機のジョブ実行管理部は、前記第２のジョブの実行を開始することを特徴とする計算機システム。
【請求項４】
請求項３に記載の計算機システムであって、
前記ジョブスケジューラは、
前記ジョブネットの解析の結果に基づいて、前記ファイルサーバに、前記特定された対象ファイルに対応するフラグファイルの生成指示を送信し、
前記フラグファイルに対する読出処理を実行するためのリードトークンの返却要求を前記対象Ｉ／Ｏとして監視するための監視対象定義情報を生成し、
前記ファイルサーバは、
前記フラグファイルを生成し、
前記第１の計算機及び前記第２の計算機に、前記リードトークンを付与することを特徴とする計算機システム。
【請求項５】
請求項４に記載の計算機システムであって、
前記ファイルサーバは、前記フラグファイルに対する書込処理を実行するためのライトトークンを付与するか否かを判定するための付与定義情報を保持し、
前記第１の計算機のジョブ実行管理部は、前記第１のジョブの完了を検出した場合に、前記ライトトークンの付与要求を前記ファイルサーバに送信し、
前記ファイルサーバは、前記付与定義情報に基づいて、前記ライトトークンの付与を許可するか否かを判定することを特徴とする計算機システム。
【請求項６】
請求項５に記載の計算機システムであって、
前記ジョブ管理サーバは、
前記ジョブネットの解析の結果に基づいて、前記第１の計算機及び前記第２の計算機から前記リードトークンが返却された場合に前記ライトトークンの付与を許可するための付与定義情報を生成し、
前記ファイルサーバに、前記生成された付与定義情報を送信し、
前記ファイルサーバは、
前記第１の計算機及び前記第２の計算機から前記リードトークンが返却されたか否かを判定し、
前記第１の計算機及び前記第２の計算機から前記リードトークンが返却されたと判定された場合、前記第１の計算機に前記ライトトークンを付与することを特徴とする計算機システム。
【請求項７】
複数のジョブから構成されるジョブネットを管理するジョブ管理サーバと、前記複数のジョブの各々の実行時に用いられるファイルを管理するファイルサーバと、複数の計算機とを備える計算機システムにおけるジョブネット実行方法であって、
前記ジョブ管理サーバは、第１のプロセッサ、前記第１のプロセッサに接続される第１のメモリ、及び前記第１のプロセッサに接続される第１のＩ／Ｏインタフェースを有し、
前記ファイルサーバは、第２のプロセッサ、前記第２のプロセッサに接続される第２のメモリ、前記第２のプロセッサに接続される第２のＩ／Ｏインタフェース、及び一つ以上の記憶装置を有し、
前記計算機は、第３のプロセッサ、前記第３のプロセッサに接続される第３のメモリ、及び前記第３のプロセッサに接続される第３のＩ／Ｏインタフェースを有し、
前記ファイルサーバは、前記一つ以上の記憶装置の記憶領域を用いて、前記ファイルを格納するストレージを提供し、
前記方法は、
前記ジョブ管理サーバが、前記ジョブネットを構成する前記複数のジョブの各々を前記複数の計算機の各々に割り当てる第１のステップと、
前記計算機が、前記ジョブ管理サーバによって前記ジョブが割り当てられた後、前記ファイルサーバと前記計算機との間で送受信され、前記ファイルにアクセスするためのＩ／Ｏを監視する第２のステップと、
前記計算機が、他の前記計算機に割り当てられた前記ジョブの実行時における所定の対象Ｉ／Ｏを前記ジョブの実行契機として検出する第３のステップと、
前記計算機が、前記対象Ｉ／Ｏを検出された場合に、前記ジョブの開始する第４のステップと、を含むことを特徴とするジョブネット実行方法。
【請求項８】
請求項７に記載のジョブネット実行方法であって、
前記対象Ｉ／Ｏは、前記ファイルに対する操作権限であるトークンの付与要求又は返却要求の少なくともいずれか一方であることを特徴とするジョブネット実行方法。
【請求項９】
請求項７又は請求項８に記載のジョブネット実行方法であって、
前記複数の計算機は、第１の計算機、及び第２の計算機を含み、
前記ジョブネットは、第１のジョブ、及び前記第１のジョブの実行後に実行される第２のジョブを含み、
前記第１のステップは、
前記第１の計算機に前記第１のジョブを割り当て、前記第２の計算機に前記第２のジョブを割り当てるステップと、
前記ジョブネットを解析することによって、前記第１のジョブの実行時に用いられる前記ファイルである対象ファイルを特定するステップと、
前記特定された対象ファイルに関連するＩ／Ｏを前記対象Ｉ／Ｏとして監視するための監視対象定義情報を生成するステップと、
前記生成された監視対象定義情報を前記第２の計算機に送信するステップと、を含み、
前記第２のステップでは、前記ファイルサーバとの間で送受信される前記Ｉ／Ｏを検出した場合、前記監視対象定義情報を参照して、前記検出されたＩ／Ｏが前記対象Ｉ／Ｏであるか否かを判定することを特徴とするジョブネット実行方法。
【請求項１０】
請求項９に記載のジョブネット実行方法であって、
前記第１のステップは、
前記ジョブネットの解析の結果に基づいて、前記ファイルサーバに、前記特定された対象ファイルに対応するフラグファイルの生成指示を送信するステップと、
前記フラグファイルに対する読出処理を実行するためのリードトークンの返却要求を前記対象Ｉ／Ｏとして監視するための監視対象定義情報を生成するステップと、を含み、
前記方法は、
前記ファイルサーバが、前記フラグファイルを生成するステップと、
前記ファイルサーバが、前記第１の計算機及び前記第２の計算機に、前記リードトークンを付与するステップと、を含むことを特徴とするジョブネット実行方法。
【請求項１１】
請求項１０に記載のジョブネット実行方法であって、
前記ファイルサーバは、前記フラグファイルに対する書込処理を実行するためのライトトークンを付与するか否かを判定するための付与定義情報を保持し、
前記方法は、
前記第１の計算機が、前記第１のジョブの完了を検出した場合に、前記ライトトークンの付与要求を前記ファイルサーバに送信する第５のステップと、
前記ファイルサーバが、前記付与定義情報に基づいて、前記ライトトークンの付与を許可するか否かを判定する第６のステップと、を含むことを特徴とするジョブネット実行方法。
【請求項１２】
請求項１１に記載のジョブネット実行方法であって、
前記方法は、
前記ジョブ管理サーバが、前記ジョブネットの解析の結果に基づいて、前記第１の計算機及び前記第２の計算機から前記リードトークンが返却された場合に前記ライトトークンの付与を許可するための付与定義情報を生成するステップと、
前記ジョブ管理サーバが、前記ファイルサーバに、前記生成された付与定義情報を送信するステップと、
を含み、
前記第６のステップは、
前記第１の計算機及び前記第２の計算機から前記リードトークンが返却されたか否かを判定するステップと、
前記第１の計算機及び前記第２の計算機から前記リードトークンが返却されたと判定された場合、前記第１の計算機に前記ライトトークンを付与するステップと、を含むことを特徴とするジョブネット実行方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジョブネットを実行する計算機システム及びジョブネットの実行方法に関する。
【背景技術】
【０００２】
近年、計算システムにおいてアプリケーションが処理するデータ量が爆発的に増大している。計算機システムが扱うデータ量の増大に伴う処理時間の増加によって、バッチジョブなどの所定の業務が、所定の時間内に完了できないという問題が生じている。
【０００３】
したがって、複数の計算機にジョブを実行させることによって、業務処理の高速化を実現する方法が多数知られている（例えば、特許文献１参照）。また、業務処理に用いるデータへのアクセスを高速化するために複数の計算機のうちジョブがどこで実行されてもよいように共有ファイルシステムが採用されることが多い。この共有ファイルシステムは、データをそれぞれ記憶装置が接続された計算機の記憶装置に分散して格納する分散ファイルシステムでもよい。
【０００４】
業務処理は、実行順序が指定された、複数のジョブから構成されるジョブネットとして管理される。ジョブスケジューラを有する管理計算機が、ジョブネットを構成するジョブを割り当てる計算機を決定し、ジョブの実行を制御する。
【０００５】
分散ファイルシステムを用いた業務処理では、データの一貫性を保つために、トークン方式等が採用される（例えば、特許文献２）。トークン方式では、トークンを保持する計算機のみが、ファイルのデータにアクセスすることができる。トークンには、ファイルからのデータの読出権限であるＲｅａｄトークン、及びファイルへのデータの書込権限であるＷｒｉｔｅトークン等がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−２３１５０２号公報
【特許文献２】特開２００４−２７２６６８号公報
【非特許文献】
【０００７】
【非特許文献１】Mike Burrows、"The Chubby lock service for loosely-coupled distributed systems"、OSDI'06 Seventh Symposium on Operating System Design and Implementation, Seattle, WA、November, 2006
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来のジョブネットの実行処理では、先行ジョブを実行する計算機がジョブの完了を管理計算機に通知し、管理計算機が後続ジョブの実行をサーバに指示する。
【０００９】
例えば、同一のファイルを用いた処理を実行するジョブ１及びジョブ２ジョブネットを例に説明する。なお、以下の説明では、ジョブ１、ジョブ２の順にジョブが実行されるものとする。また、ジョブ１が第１の計算機に割り当てられ、ジョブ２が第２の計算機に割り当てられているものとする。
【００１０】
管理計算機は、第１の計算機にジョブ１の実行を指示する。第１の計算機は、当該指示に基づいて、ジョブ１の実行に必要なファイルに対するトークンを取得して、ジョブを実行する。第１の計算機は、ジョブ１が完了後、管理計算機に取得したトークンを返却する。
【００１１】
管理計算機は、当該通知を受信した後、第２の計算機にジョブ２の実行を指示する。第２の計算機は、当該指示に基づいて、ジョブ２の実行に必要なファイルに対するトークンを取得して、ジョブを実行する。第２の計算機は、ジョブ２の完了後、管理計算機に取得したトークンを返却する。
【００１２】
前述したように、ジョブネットの実行時には、管理計算機と計算機との間で複数回通信が行われるため、先行ジョブ（ジョブ１）が完了してから後続ジョブ（ジョブ２）が実行されるまでに遅延が発生し、ジョブネット全体において当該遅延が影響するため処理の高速化が困難である。
【００１３】
前述した課題を解決するために、計算機が、ジョブを開始するためのイベントの検出を契機に、ジョブを実行する方法が考えられる。イベントの検出方法としては、例えば、ファイルの生成又は削除をイベントとして検出する方法が考えられる（例えば、非特許文献１参照）。
【００１４】
しかし、非特許文献１に記載の方法では、ジョブネットの実行時に用いるイベントについては詳細な記載はない。また、管理計算機は、ファイルの一貫性を確保するために、先行ジョブが割り当てられた計算機からファイルに対するトークンが返却されるまで、後続ジョブが割り当てられた計算機に後続ジョブの実行を指示できない。したがって、非特許文献１に記載した方法では、ファイルの一貫性を確保することができず、課題を解決することができない。
【００１５】
本発明は、ファイルの一貫性を確保しつつ、ジョブネットの実行を高速化することである。
【課題を解決するための手段】
【００１６】
本発明の代表的な一例を示せば以下の通りである。すなわち、複数のジョブから構成されるジョブネットを管理するジョブ管理サーバと、前記複数のジョブの各々の実行時に用いられるファイルを管理するファイルサーバと、複数の計算機とを備える計算機システムであって、前記ジョブ管理サーバは、第１のプロセッサ、前記第１のプロセッサに接続される第１のメモリ、及び前記第１のプロセッサに接続される第１のＩ／Ｏインタフェースを有し、前記ファイルサーバは、第２のプロセッサ、前記第２のプロセッサに接続される第２のメモリ、前記第２のプロセッサに接続される第２のＩ／Ｏインタフェース、及び一つ以上の記憶装置を有し、前記計算機は、第３のプロセッサ、前記第３のプロセッサに接続される第３のメモリ、及び前記第３のプロセッサに接続される第３のＩ／Ｏインタフェースを有し、前記ジョブ管理サーバは、前記複数の計算機の各々に割り当てるジョブを決定するジョブスケジューラを有し、前記ファイルサーバは、前記一つ以上の記憶装置の記憶領域を用いて、前記ファイルを格納するストレージを提供し、前記計算機は、前記ジョブの実行処理を管理するジョブ実行管理部と、前記ストレージにアクセスするためのアクセス管理部と、を有し、前記アクセス管理部は、前記ファイルサーバと前記計算機との間で送受信され、前記ファイルにアクセスするためのＩ／Ｏを監視し、他の前記計算機に割り当てられた前記ジョブの実行時における所定の対象Ｉ／Ｏを前記ジョブの実行契機として検出するアクセス監視部と、前記対象Ｉ／Ｏが検出された場合に、前記ジョブ実行管理部に前記ジョブを開始するためのイベントを通知するイベント通知部と、を有することを特徴とする。
【発明の効果】
【００１７】
本発明によれば、計算機は、他の計算機に割り当てられたジョブの実行時に送受信されるＩ／Ｏに基づいて、ジョブを開始することができる。これによって、ジョブ管理サーバと計算機との間の通信、及び計算期間の通信を行うことなくジョブを開始できる。したがって、ジョブネットの実行に伴う計算機システム内の通信量が低減し、ジョブネットの実行処理を高速化することができる。
【００１８】
前述した以外の課題、構成及び効果は、以下の実施形態の説明によって明らかにされる。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施例１における計算機システムの構成例を示す説明図である。
【図２】本発明の実施例１におけるファイル管理情報の一例を示す説明図である。
【図３】本発明の実施例１におけるトークン管理情報の一例を示す説明図である。
【図４】本発明の実施例１における付与定義情報の一例を示す説明図である。
【図５】本発明の実施例１における取得トークン情報の一例を示す説明図である。
【図６】本発明の実施例１における監視対象定義情報の一例を示す説明図である。
【図７】本発明の実施例１におけるイベント通知準備部が実行する初期処理を説明するフローチャートである。
【図８】本発明の実施例１におけるイベント通知準備部が実行するジョブ割当処理を説明するフローチャートである。
【図９】本発明の実施例１におけるイベント通知準備部が実行するフラグファイルの配布先決定処理を説明するフローチャートである。
【図１０】本発明の実施例１におけるジョブスケジューラが実行する処理を説明するフローチャートである。
【図１１】本発明の実施例１におけるジョブ実行制御部が実行する処理を説明するフローチャートである。
【図１２】本発明の実施例１におけるクライアント側トークン管理部が実行する処理を説明するフローチャートである。
【図１３】本発明の実施例１におけるトークン監視部が実行する処理を説明するフローチャートである。
【図１４】本発明の実施例１におけるイベント通知部が実行する処理を説明する処理である。
【図１５】本発明の実施例１におけるサーバ側トークン管理部が実行する処理を説明するフローチャートである。
【図１６】本発明の実施例１におけるトークン付与判定部が実行する処理を説明するフローチャートである。
【図１７】本発明の変形例１における付与定義情報の一例を示す説明図である。
【発明を実施するための形態】
【００２０】
以下に図面を参照しながら本発明の実施例を説明する。
【実施例１】
【００２１】
図１は、本発明の実施例１における計算機システムの構成例を示す説明図である。
【００２２】
本実施例の計算機システムは、ジョブ管理サーバ１０１、複数のサーバ１０２、及びファイルサーバ１０３から構成される。
【００２３】
ジョブ管理サーバ１０１、サーバ１０２、及びファイルサーバ１０３は、互いに、ネットワーク１０４を介して接続される。ネットワーク１０４は、ＷＡＮ、ＬＡＮ、及びＩＰネットワークなどが考えられる。なお、ジョブ管理サーバ１０１、サーバ１０２、及びファイルサーバ１０３は直接接続されてもよい。
【００２４】
ファイルサーバ１０３は、プロセッサ１２５、メモリ１２６、及びインタフェース１８２−３、１８３を有する。プロセッサ１２５、メモリ１２６、及びインタフェース１８２−３、１８３は、内部バス等を介して互いに接続される。なお、ファイルサーバ１０３は、キーボード、マウス、及びディスプレイ等の入出力装置を備えていてもよい。
【００２５】
プロセッサ１２５は、メモリ１２６に格納されるプログラムを実行する。プロセッサ１２５が、メモリ１２６に格納されるプログラムを実行することによってファイルサーバ１０３が備える機能を実現する。
【００２６】
メモリ１２６は、プロセッサ１２５によって実行されるプログラム及び当該プログラムの実行に必要な情報を格納する。メモリ１２６に格納されるプログラムについては後述する。
【００２７】
インタフェース１８２−３、１８３は、外部装置又はネットワーク１０４と接続する。実施例１では、インタフェース１８３を介して記憶装置１１３と接続され、インタフェース１８２−３を介してネットワーク１０４と接続される。
【００２８】
記憶装置１１３には、複数のファイル１１７のデータが格納される。
【００２９】
なお、記憶装置１１３は、ファイル１１７を永続的に保持できるものであればどのようなものでもよい。例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）及びＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶媒体を複数備えるストレージシステム、フラッシュメモリを記憶媒体として用いた半導体ディスク装置、光ディスク装置等が考えられる。
【００３０】
なお、メモリ１２６に格納されるプログラムは、記憶装置１１３に格納されてもよい。この場合、プロセッサ１２５が、記憶装置１１３からメモリ１２６上にプログラムを読み出し、読み出されたプログラムを実行する。
【００３１】
記憶装置１１３がストレージシステムである場合、当該ストレージシステムは、複数の記憶媒体を用いてＲＡＩＤを構成してもよい。
【００３２】
メモリ１２６は、ファイルシステム管理部１３５を実現するプログラムを格納する。
【００３３】
ファイルシステム管理部１３５は、ファイルシステムを管理する。また、ファイルシステム管理部１３５は、ファイル名等のファイル１１７の識別情報に基づいて、ファイルシステム上に格納されるファイル１１７に対するファイルＩ／Ｏの処理を実行する。
【００３４】
実施例１では、ファイルシステム管理部１３５は、共有ファイルシステムを管理する。この共有ファイルシステムは、複数のファイルサーバにそれぞれ接続された記憶装置にファイルを分散して格納する分散ファイルシステムでもよい。分散ファイルシステムは、複数の記憶媒体の記憶領域が統合された記憶領域上に構築されるファイルシステムである。
【００３５】
分散ファイルシステムには、ファイル１１７のデータが、分散ファイルシステムを構成する複数の記憶媒体に分散して配置される。例えば、分散ファイルシステムには、ファイル１１７のデータがシステムによって決められる方法で分割して格納される。
【００３６】
以下では、分散共有ストレージを用いた場合を例に説明する。なお、本発明は、ファイル１１７の格納方法及び管理方法に限定されない。
【００３７】
なお、共有ファイルシステムでは、複数のサーバ１０２が同一のファイル１１７にアクセス可能であるため、データの一貫性を確保するためトークンが用いられる。本実施例では、ファイル１１７毎に、トークンの対象となるデータ、属性、サイズ、及び名前等の種類が複数存在する。また、トークンは、Ｒｅａｄ、Ｗｒｉｔｅ等の状態を保持する。
【００３８】
例えば、サーバ１０２がファイルＡのデータを読み出す場合、ファイルＡのデータＲｅａｄトークンを保持する必要がある。
【００３９】
ファイルシステム管理部１３５は、サーバ側トークン管理部１７１、トークン付与判定部１７２、トークン管理情報１７３、付与定義情報１７４、及びファイル管理情報１７５を有する。
【００４０】
サーバ側トークン管理部１７１は、各サーバ１０２が保持するトークンを管理し、また、各サーバ１０２へのトークンの付与を制御する。サーバ側トークン管理部１７１が実行する処理の詳細は、図１５を用いて後述する。
【００４１】
トークン付与判定部１７２は、サーバ１０２から要求されたトークンを付与するか否かを判定する。トークン付与判定部１７２が実行する処理の詳細は、図１６を用いて後述する。
【００４２】
トークン管理情報１７３は、各サーバ１０２が保持するトークンに関する情報を格納する。トークン管理情報１７３の詳細については、図３を用いて後述する。
【００４３】
付与定義情報１７４は、サーバ１０２から要求されたトークンを付与するか否かを判定するための条件を格納する。付与定義情報１７４の詳細については、図４を用いて後述する。
【００４４】
ファイル管理情報１７５は、ファイル１１７を管理するための情報を格納する。本実施例では、一つのファイル１１７に対して一つのファイル管理情報１７５が存在する。ファイル管理情報１７５の詳細については、図２を用いて後述する。
【００４５】
ジョブ管理サーバ１０１は、プロセッサ１２１、メモリ１２２及びインタフェース１８１−１、１８２−１を有する。プロセッサ１２１、メモリ１２２及びインタフェース１８１−１、１８２−１は、内部バス等を介して互いに接続される。なお、ジョブ管理サーバ１０１は、キーボード、マウス、及びディスプレイ等の入出力装置を備えていてもよい。
【００４６】
プロセッサ１２１は、メモリ１２２に格納されるプログラムを実行する。プロセッサ１２１が、メモリ１２２に格納されるプログラムを実行することによってジョブ管理サーバ１０１が備える機能を実現する。
【００４７】
メモリ１２２は、プロセッサ１２１によって実行されるプログラム及び当該プログラムの実行に必要な情報を格納する。メモリ１２２に格納されるプログラムについては後述する。
【００４８】
インタフェース１８１−１、１８２−１は、外部装置又はネットワーク１０４と接続する。本実施例では、インタフェース１８１−１を介して記憶装置１１１と接続され、インタフェース１８２−１を介してネットワーク１０４と接続される。
【００４９】
記憶装置１１１は、データを永続的に保持できるものであればどのようなものでもよい。例えば、ＨＤＤ等の記憶媒体を複数備えるストレージシステム、フラッシュメモリを記憶媒体として用いた半導体ディスク装置、光ディスク装置等が考えられる。
【００５０】
なお、メモリ１２２に格納されるプログラムは、記憶装置１１１に格納されてもよい。この場合、プロセッサ１２１が、記憶装置１１１からメモリ１２２上にプログラムを読み出し、読み出されたプログラムを実行する。
【００５１】
メモリ１２２は、ジョブスケジューラ１３１を実現するプログラムを格納する。
【００５２】
ジョブスケジューラ１３１は、ジョブネットを構成するジョブの実行スケジュールを管理する。
【００５３】
ジョブネットは、実行順序を含む、一つ以上のジョブから構成される。本実施例では、同一のファイルを用いるジョブが少なくとも二つ以上存在するジョブネットを想定する。
【００５４】
ジョブスケジューラ１３１は、イベント通知準備部１４１を有し、また、ジョブネット管理情報（図示省略）を保持する。
【００５５】
イベント通知準備部１４１は、ジョブの実行契機となるイベントを検出するための各種情報を設定する。本実施例では、所定のファイルＩ／Ｏがイベントとして検出される。イベント通知準備部１４１が実行する処理の詳細は、図７、図８及び図９を用いて後述する。
【００５６】
ジョブネット管理情報（図示省略）は、ジョブネットを管理するための情報である。ジョブネット管理情報は、公知のものであるため詳細な説明は省略するが、少なくとも、ジョブの識別子及びジョブの実行順序が対応づけられた情報が含まれる。本実施例では、ジョブの実行順を表す番号をジョブの識別子として用いる。
【００５７】
なお、本発明はジョブネット管理情報のデータ形式に限定されず、ジョブネットの構成を管理できる情報であればどのような情報であってもよい。
【００５８】
サーバ１０２は、プロセッサ１２３、メモリ１２４及びインタフェース１８１−２、１８２−２を有する。プロセッサ１２３、メモリ１２４及びインタフェース１８１−２、１８２−２は、内部バス等を介して互いに接続される。なお、サーバ１０２は、キーボード、マウス、及びディスプレイ等の入出力装置を備えていてもよい。
【００５９】
プロセッサ１２３は、メモリ１２４に格納されるプログラムを実行する。プロセッサ１２３が、メモリ１２４に格納されるプログラムを実行することによってサーバ１０２が備える機能を実現する。
【００６０】
メモリ１２４は、プロセッサ１２３によって実行されるプログラム及び当該プログラムの実行に必要な情報を格納する。メモリ１２４に格納されるプログラムについては後述する。
【００６１】
インタフェース１８１−２、１８２−２は、外部装置又はネットワーク１０４と接続する。本実施例では、インタフェース１８１−２を介して記憶装置１１２と接続され、インタフェース１８２−２を介してネットワーク１０４と接続される。
【００６２】
記憶装置１１１は、データを永続的に保持できるものであればどのようなものでもよい。例えば、ＨＤＤ等の記憶媒体を複数備えるストレージシステム、フラッシュメモリを記憶媒体として用いた半導体ディスク装置、光ディスク装置等が考えられる。
【００６３】
なお、メモリ１２４に格納されるプログラムは、記憶装置１１２に格納されてもよい。この場合、プロセッサ１２３が、記憶装置１１２からメモリ１２４上にプログラムを読み出し、読み出されたプログラムを実行する。
【００６４】
メモリ１２４は、ジョブ実行管理部１３２及びファイルシステムクライアント１３３を実現するプログラム、並びに、ジョブを実行するＵＡＰ（アプリケーションプログラム）１３４を格納する。また、メモリ１２４は、ジョブを実行するワークエリアを含む。
【００６５】
ＵＡＰ１３４は、ジョブを実行する。ＵＡＰ１３４は、ジョブの実行時に、ファイル１１７に対するオペレーションを行うために、ファイルシステムクライアント１３３に対して、オペレーション要求を出力する。
【００６６】
なお、オペレーション要求には、処理対象、及び、オペレーション種別等のオペレーションの処理内容を示す情報が含まれる。処理対対象は、ファイル１１７の識別子、ファイル１１７のデータ範囲等のオペレーションの処理対象を示す情報である。オペレーション種別は、Ｏｐｅｎ、Ｒｅａｄ、Ｗｒｉｔｅ、及びＣｌｏｓｅ等の処理の種別を示す情報である。
【００６７】
ジョブ実行管理部１３２は、ジョブ管理サーバ１０１によって割り当てられたジョブを管理する。ジョブ実行管理部１３２は、ジョブ実行制御部１５１を有する。ジョブ実行制御部１５１は、ジョブの実行タイミングを制御する。ジョブ実行制御部１５１が実行する処理の詳細は、図１１を用いて後述する。
【００６８】
ファイルシステムクライアント１３３は、一般的なファイルＩ／Ｆを用いて、ファイルシステムに格納されるファイル１１７に対するオペレーションを行う。具体的には、ＵＡＰ１３４から出力されるオペレーション要求に基づいて、所定のファイルＩ／Ｏを出力することによってファイル１１７に対するオペレーションを行う。
【００６９】
ファイルシステムクライアント１３３は、クライアント側トークン管理部１６１、トークン監視部１６２、イベント通知部１６３、取得トークン情報１６４、及び監視対象定義情報１６５を有する。
【００７０】
クライアント側トークン管理部１６１は、ファイルシステム管理部１３５に、オペレーションの実行に必要なトークンの付与を要求し、また、付与されたトークンを返却する。クライアント側トークン管理部１６１が実行する処理の詳細は、図１２を用いて後述する。
【００７１】
トークン監視部１６２は、サーバ１０２が保持するトークンの状態を監視する。トークン監視部１６２が実行する処理の詳細は、図１３を用いて後述する。
【００７２】
イベント通知部１６３は、ジョブ実行制御部１５１に、ジョブ実行開始の契機となるイベントの発生を通知する。イベント通知部１６３が実行する処理の詳細は、図１４を用いて後述する。
【００７３】
取得トークン情報１６４は、サーバ１０２が保持するトークンに関する情報を格納する。取得トークン情報１６４の詳細は、図５を用いて後述する。
【００７４】
監視対象定義情報１６５は、監視対象となるオペレーション要求、すなわち、ファイルＩ／Ｏに関する情報を格納する。監視対象定義情報１６５の詳細は、図６を用いて後述する。
【００７５】
図２は、本発明の実施例１におけるファイル管理情報１７５の一例を示す説明図である。
【００７６】
ファイル管理情報１７５は、ファイルＩＤ２１１、パーミション２１２、オーナー２１３、サイズ２１４、タイムスタンプ２１５、及びトークン管理情報ポインタ２１６を含む。なお、ファイル管理情報１７５は、ｉノード等のその他の情報を含んでいてもよい。
【００７７】
ファイルＩＤ２１１は、ファイル１１７を一意に識別するための識別子を格納する。パーミション２１２は、ファイル１１７へのアクセス権を有するクライアント（サーバ１０２又はユーザ等）の情報を格納する。なお、アクセス権が設定されていないクライアントには、トークンは付与されない。
【００７８】
オーナー２１３は、ファイル１１７の所有者の情報を格納する。サイズ２１４は、ファイル１１７の大きさを表す情報を格納する。タイムスタンプ２１５は、ファイル１１７がアクセスされた時間を格納する。
【００７９】
トークン管理情報ポインタ２１６は、トークン管理情報１７３へのポインタを格納する。
【００８０】
なお、サーバ１０２は、読出処理又は書込処理等を実行する場合、ファイル管理情報１７５とともにファイル１１７を取得する。この場合、ファイル管理情報１７５のトークン管理情報ポインタ２１６には、サーバ１０２によって、取得トークン情報１６４へのポインタが格納される。
【００８１】
図３は、本発明の実施例１におけるトークン管理情報１７３の一例を示す説明図である。
【００８２】
トークン管理情報１７３は、ファイルＩＤ３０１、トークン種別３０２、トークン状態３０３、及び付与状態３０４を含む。
【００８３】
ファイルＩＤ３０１は、ファイルＩ／Ｏ（トークンの付与要求）の対象となるファイル１１７の識別子を格納する。ファイルＩＤ３０１は、ファイルＩＤ２０１と同一のものである。
【００８４】
トークン種別３０２は、データ、属性、サイズ、及び名前等のトークンの種類を示す情報を格納する。
【００８５】
図３には一例として、オープン３１１、メタデータ３１２、及びデータ３１３の三つのトークンの種類を示している。
【００８６】
オープン３１１は、排他的にファイルをオープンするために必要なトークンに関するエントリである。メタデータ３１２は、ファイル１１７のメタデータ、すなわち、ファイル管理情報１７５を操作するために必要なトークンに関するエントリである。データ３１３は、ファイル１１７のデータ本体を操作するために必要なトークンに関するエントリである。なお、本発明は前述したトークンの種類に限定されない。
【００８７】
トークン状態３０３は、Ｒｅａｄ、Ｗｒｉｔｅ等のトークンの状態を格納する。例えば、メタデータ３１２のエントリのトークン状態３０３が「Ｒｅａｄ」のエントリは、メタデータ３１２を読み出すために必要なＲｅａｄトークンであることを示す。
【００８８】
付与状態３０４は、各サーバ１０２に付与されているトークンを特定するための情報を格納する。本実施例では、エントリに対応するトークンが付与されているサーバ１０２の欄には「１」が格納され、エントリに対応するトークンが付与されていないサーバ１０２の欄には「０」が格納される。
【００８９】
図４は、本発明の実施例１における付与定義情報１７４の一例を示す説明図である。
【００９０】
付与定義情報１７４は、監視対象４１０及び条件４２０を含む。
【００９１】
監視対象４１０は、監視対象を識別するための情報を格納する。具体的には、トークンの付与対象であるファイル１１７の識別子を格納するファイルＩＤ４１１を含む。
【００９２】
条件４２０は、トークンを付与するための条件を格納する。具体的には、条件４２０は、条件式４３０及び一つ以上の要素４４０、４５０を含む。
【００９３】
条件式４３０は、トークン付与の判定処理の実行時に用いられる条件式を格納する。例えば、ＡＮＤ条件などが考えられる。
【００９４】
要素４４０、４５０は、条件式４３０に代入する情報を格納する。要素４４０、４５０には、サーバＩＤ４４１、４５１及びトークン条件４４２、４５２が格納される。
【００９５】
サーバＩＤ４４１、４５１は、対象となるサーバ１０２の識別子を格納する。
【００９６】
トークン条件４４２、４５２は、サーバ１０２におけるトークンの条件を格納する。トークン条件４４２、４５２には、トークンの種類、トークンの状態及び処理状態を示す情報が格納される。処理状態は、サーバ１０２が保持するトークンの保持状態を表し、トークンが付与済み、トークンが回収済み等を示す情報が対応する。
【００９７】
例えば、第１のサーバ及びジョブ２を実行する第２のサーバから、ファイルＡのデータＲｅａｄトークンの回収を条件として設定する場合、以下のような付与定義情報１７４となる。
【００９８】
ファイルＩＤ４１１には、ファイルＡが格納される。条件式４３０には、「要素１（４４０）、ＡＮＤ、要素２（４５０）」等の条件式が格納される。また、サーバＩＤ４４１には「第１のサーバ」が格納され、トークン条件４４２には「データＲｅａｄトークンの回収完了」が格納される。同様に、サーバＩＤ４５１には「第２のサーバ」が格納され、トークン条件４５２には「データＲｅａｄトークンの回収完了」が格納される。
【００９９】
なお、条件４２０に格納される情報は一例であって、前述した条件式に限定されない。
【０１００】
図５は、本発明の実施例１における取得トークン情報１６４の一例を示す説明図である。
【０１０１】
取得トークン情報１６４は、ファイルＩＤ５０１、トークン種別５０２、及びトークン状態５０３を含む。
【０１０２】
ファイルＩＤ５０１、トークン種別５０２、及びトークン状態５０３は、それぞれ、ファイルＩＤ３０１、トークン種別３０２、及びトークン状態３０３と同一のものであるため説明を省略する。
【０１０３】
取得トークン情報１６４は、サーバ１０２自身の情報のみが格納される点がトークン管理情報１７３と異なる。
【０１０４】
図６は、本発明の実施例１における監視対象定義情報１６５の一例を示す説明図である。
【０１０５】
監視対象定義情報１６５は、イベント通知先６１０、監視対象６２０及び監視動作６３０を含む。
【０１０６】
イベント通知先６１０は、イベントの発生を通知するプロセスの情報としてプロセスＩＤ６１１を格納する。なお、イベントの発生を通知するプロセスは、ジョブを実行するためのプロセスである。これによって、イベントの通知を受けたプロセスがジョブを開始することができる。
【０１０７】
監視対象６２０は、イベントとして検出されるファイルＩ／Ｏの対象を識別するための情報を格納する。具体的には、ファイル１１７の識別子を格納するファイルＩＤ６２１を含む。
【０１０８】
監視動作６３０は、オペレーションの処理内容、すなわち、監視対象のファイルＩ／Ｏに関する情報を格納する。本実施例では、トークン付与要求のためのファイルＩ／Ｏがイベントとして検出されるため、監視動作６３０には、トークンの種類及びトークンの状態が格納される。
【０１０９】
図６に示す例では、ファイルＩＤ６２１に対応するファイル１１７のデータＲｅａｄトークン又はデータＷｒｉｔｅトークンが監視動作６３０として設定される。なお、本発明は、前述したファイルＩ／Ｏに限定されない。
【０１１０】
次に、実施例１の具体的な処理について説明する。
【０１１１】
図７は、本発明の実施例１におけるイベント通知準備部１４１が実行する初期処理を説明するフローチャートである。
【０１１２】
イベント通知準備部１４１は、ジョブネット管理情報を参照して、ジョブスケジューラ１３１にジョブネットを登録する（ステップＳ７０１）。なお、ジョブネット管理情報は、ジョブ管理サーバ１０１が有する入出力装置から入力されてもよいし、記憶装置１１１に格納されてもよい。
【０１１３】
次に、イベント通知準備部１４１は、ファイルサーバ１０３に対して、フラグファイルの生成指示を送信する（ステップＳ７０２）。具体的には、以下のような処理が実行される。
【０１１４】
イベント通知準備部１４１は、ジョブネット管理情報を解析して、ジョブネットを構成する各ジョブの実行時に必要なファイルを特定する。
【０１１５】
さらに、イベント通知準備部１４１は、特定されたファイルを用いるジョブの総数を算出する。
【０１１６】
イベント通知準備部１４１は、ファイルサーバ１０３に、特定されたファイルに対するフラグファイルの生成指示を送信する。
【０１１７】
具体的には、一つの特定されたファイルに対して、当該ファイルを用いるジョブの総数から１を減算した数だけフラグファイルを生成するように指示される。
【０１１８】
なお、当該生成指示には、生成するフラグファイルの識別情報が含まれる。実施例１では、フラグファイルの識別情報として識別番号を用いるものとする。
【０１１９】
ファイルサーバ１０３は、受信した生成指示に基づいて、フラグファイルを生成する。フラグファイルは、イベント検出のために用いられるファイルである。フラグファイルは、少なくとも、メタデータ等のファイルの識別情報を保持すればよく、実体的なデータは必要ない。
【０１２０】
なお、ファイルサーバ１０３がフラグファイルの識別情報を決定してもよい。この場合、生成指示にはフラグファイルの識別情報は含まれない。
【０１２１】
イベント通知準備部１４１は、メモリ１２２に、ジョブとフラグファイルとの対応関係を示す情報を一時的に保持する。
【０１２２】
以上がステップＳ７０２の処理である。
【０１２３】
次に、イベント通知準備部１４１は、ジョブスケジューラ１３１に付与定義情報１７４を登録する（ステップＳ７０３）。具体的には、以下のような処理が実行される。
【０１２４】
イベント通知準備部１４１は、付与定義情報１７４を登録するためのテンプレートを取得する。ここで、付与定義情報１７４を登録するためのテンプレートは、ファイルＩＤ４１１及びサーバＩＤ４４１が空欄であり、条件式４３０及びトークン条件４４２、４５２には予め所定の情報が設定されている。以下では、当該テンプレートを付与定義用テンプレートと記載する。
【０１２５】
実施例１では、付与定義用テンプレートは、記憶装置１１１に格納されているものとする。なお、付与定義用テンプレートは外部から入力されてもよい。
【０１２６】
イベント通知準備部１４１は、付与定義用テンプレートのファイルＩＤ４１１にフラグファイルの識別子を設定する。これによって、フラグファイルの数だけ付与定義情報１７４が生成される。ただし、この時点では、ジョブの割り当て前であるためサーバＩＤ４４１、４５１は空欄のままである。
【０１２７】
イベント通知準備部１４１は、ジョブスケジューラ１３１に、フラグファイルの数だけ付与定義情報１７４を登録する。
【０１２８】
以上がステップＳ７０３の処理である。
【０１２９】
次に、イベント通知準備部１４１は、ジョブスケジューラ１３１に監視対象定義情報１６５を登録する（ステップＳ７０４）。具体的には、以下のような処理が実行される。
【０１３０】
イベント通知準備部１４１は、監視対象定義情報１６５を登録するためのテンプレートを取得する。ここで、監視対象定義情報１６５を登録するためのテンプレートは、プロセスＩＤ６１１及びファイルＩＤ６２１が空欄であり、監視動作６３０には予め所定の情報が設定されている。以下では、当該テンプレートを監視対象定義用テンプレートと記載する。
【０１３１】
実施例１では、監視対象定義用テンプレートは、記憶装置１１１に格納されているものとする。なお、監視対象定義用テンプレートは、外部から入力されてもよい。
【０１３２】
イベント通知準備部１４１は、監視対象定義用テンプレートのファイルＩＤ６２１にフラグファイルの識別子を設定する。これによって、フラグファイルの数だけ監視対象定義情報１６５が生成される。ただし、この時点では、ジョブの割り当て前であるためプロセスＩＤ６１１は空欄のままである。
【０１３３】
イベント通知準備部１４１は、ジョブスケジューラ１３１に、フラグファイルの数だけ監視対象定義情報１６５を登録する。
【０１３４】
なお、付与定義用テンプレート及び監視対象定義用テンプレートは、複数の種類が存在してもよい。この場合、ジョブ管理サーバ１０１は、ユーザインタフェースを介して、管理者に使用可能なテンプレートを表示し、管理者が各フラグファイルに適用するテンプレートを選択する方法が考えられる。
【０１３５】
なお、前述したテンプレートを用いずに、外部から付与定義情報１７４及び監視対象定義情報１６５を入力してもよい。例えば、管理者がジョブ管理サーバ１０１のユーザインタフェースを用いて入力する方法が考えられる。
【０１３６】
図８は、本発明の実施例１におけるイベント通知準備部１４１が実行するジョブ割当処理を説明するフローチャートである。
【０１３７】
イベント通知準備部１４１は、管理者からジョブの割当指示を受け付けた場合、ジョブの実行指示を受け付けた場合、又は、タイマを経過した場合等にジョブ割当処理を開始する。
【０１３８】
イベント通知準備部１４１は、登録されたジョブネットを構成するジョブを割り当てるサーバ１０２を決定する（ステップＳ８０１）。
【０１３９】
ジョブを割り当てるサーバ１０２の決定方法は、公知の技術を用いればよいため説明を省略するが、例えば、サーバ１０２の負荷又は性能等に基づいて決定する方法が考えられる。
【０１４０】
イベント通知準備部１４１は、メモリ１２２に、ジョブの割当結果を一時的に格納する。
【０１４１】
イベント通知準備部１４１は、フラグファイルの配布先決定処理を実行する（ステップＳ８０２）。フラグファイルの配布とは、例えば、サーバ１０２におけるフラグファイルの読み出しによる特定のトークンを取得することを示す。ここで、図９を用いてフラグファイルの配布先決定処理について説明する。
【０１４２】
図９は、本発明の実施例１におけるイベント通知準備部１４１が実行するフラグファイルの配布先決定処理を説明するフローチャートである。
【０１４３】
イベント通知準備部１４１は、変数ｋを１に初期化する（ステップＳ９０１）。ここで、変数ｋは１から（ｎ−１）までの整数であり、ジョブネットを構成するジョブの識別子を表す。実施例１では、ジョブの識別子は、ジョブの実行順を表す番号に一致する。
【０１４４】
イベント通知準備部１４１は、ジョブネット管理情報を参照して、ジョブｋの実行時に用いられるファイル１１７を特定する（ステップＳ９０２）。例えば、ファイルＡ及びファイルＢを用いた処理を実行するジョブ１の場合、ファイルＡ及びファイルＢが特定される。
【０１４５】
イベント通知準備部１４１は、特定されたファイル１１７の中から、処理対象のファイル１１７を選択する（ステップＳ９０３）。以下、処理対象のファイル１１７を対象ファイル１１７とも記載する。
【０１４６】
なお、ステップＳ９０２において特定されたファイル１１７が一つである場合、当該処理を省略できる。
【０１４７】
イベント通知準備部１４１は、対象ファイル１１７に対応するフラグファイルの中から、配布用フラグファイルを選択する（ステップＳ９０４）。
【０１４８】
実施例１では、イベント通知準備部１４１は、対象ファイル１１７に対応するフラグファイルのうち、識別番号が小さいフラグファイルを配布用フラグファイルとして選択する。例えば、ファイルＡのフラグファイルとしてフラグファイルＡ１及びフラグファイルＡ２が存在する場合、フラグファイルＡ１、フラグファイルＡ２の順に選択される。
【０１４９】
なお、配布用フラグファイルとして選択されたフラグファイルは、次に選択されるフラグファイルから除かれる。これは、同一のフラグファイルが重複して配布用フラグファイルとして選択されないようにするためである。
【０１５０】
イベント通知準備部１４１は、配布用フラグファイルの配布先を決定する（ステップＳ９０５）。
【０１５１】
具体的には、イベント通知準備部１４１は、ジョブの割当結果を参照して、ジョブｋが割り当てられる予定のサーバ１０２、及び、ジョブｋ＋１が割り当てられる予定のサーバ１０２を配布用フラグ用ファイルの配布先に決定する。すなわち、二つのサーバ１０２に同一のフラグファイルが配布されることとなる。
【０１５２】
イベント通知準備部１４１は、ステップＳ９０２において特定された全てのファイル１１７について処理が終了したか否かを判定する（ステップＳ９０６）。
【０１５３】
特定された全てのファイル１１７について処理が終了していないと判定された場合、イベント通知準備部１４１は、ステップＳ９０３に戻り同様の処理を実行する。
【０１５４】
特定された全てのファイル１１７について処理が終了したと判定された場合、イベント通知準備部１４１は、全てのジョブについて処理が終了したか否かを判定する（ステップＳ９０７）。
【０１５５】
全てのジョブについて処理が終了していないと判定された場合、イベント通知準備部１４１は、変数ｋの値を１加算して（ステップＳ９０８）、ステップＳ９０２に戻る。
【０１５６】
全てのジョブについて処理が終了していると判定された場合、イベント通知準備部１４１は、処理を終了する。
【０１５７】
イベント通知準備部１４１は、メモリ１２２に、フラグファイルの配布先決定処理の結果を一時的に保持する。
【０１５８】
図８の説明に戻る。
【０１５９】
イベント通知準備部１４１は、フラグファイルの配布先決定処理の結果に基づいて、登録された付与定義情報１７４を更新する（ステップＳ８０３）。
【０１６０】
具体的には、同一のフラグファイルが配布される予定の二つのサーバ１０２のうち、先に実行されるジョブ（ジョブｋ）が割り当てられる予定のサーバ１０２の識別子がサーバＩＤ４４１に格納され、後に実行されるジョブ（ジョブｋ＋１）が割り当てられる予定のサーバ１０２の識別子がサーバＩＤ４５１に格納される。
【０１６１】
ステップＳ８０３の処理が終了すると、付与定義情報１７４には必要な情報が全て設定される。
【０１６２】
次に、イベント通知準備部１４１は、ファイルサーバ１０３に、付与定義情報１７４を送信し（ステップＳ８０４）、処理を終了する。なお、受信した付与定義情報１７４は、ファイルシステム管理部１３５によって保持される。
【０１６３】
図１０は、本発明の実施例１におけるジョブスケジューラ１３１が実行する処理を説明するフローチャートである。
【０１６４】
ジョブスケジューラ１３１は、ジョブネットの実行指示を受け付けると、以下で説明する処理を開始する。なお、ジョブスケジューラ１３１は、ジョブネットに予め設定された実行時間に基づいて処理を開始してもよい。
【０１６５】
ジョブスケジューラ１３１は、ジョブネット管理情報及びジョブの割当結果に基づいて、サーバ１０２にジョブを割り当てる（ステップＳ１００１）。
【０１６６】
なお、サーバ１０２にジョブを割り当てる方法は公知の技術であるため説明を省略する。
【０１６７】
ジョブスケジューラ１３１は、ジョブが割り当てられたサーバに、監視対象定義情報１６５を送信する（ステップＳ１００２）。具体的には、以下のような処理が実行される。
【０１６８】
ジョブスケジューラ１３１は、まず、対象ジョブを選択する。なお、ジョブスケジューラ１３１はジョブの実行順に対象ジョブを選択するものとする。
【０１６９】
ジョブスケジューラ１３１は、ジョブの割当結果及びフラグファイルの配布先決定処理の結果に基づいて、対象ジョブが割り当てられたサーバ１０２及び対象ジョブの次に実行されるジョブが割り当てられたサーバ１０２の両方に配布される予定のフラグファイルを特定する。
【０１７０】
ジョブスケジューラ１３１は、特定されたフラグファイルに対応する監視対象定義情報１６５を検索する。すなわち、ファイルＩＤ６２１が特定されたフラグファイルの識別子と一致する監視対象定義情報１６５が検索される。
【０１７１】
ジョブスケジューラ１３１は、ジョブの割当結果に基づいて、対象ジョブの次に実行されるジョブが割り当てられたサーバ１０２を特定する。
【０１７２】
ジョブスケジューラ１３１は、特定されたサーバ１０２に、特定された監視対象定義情報１６５を送信する。すなわち、対象ジョブの次に実行されるジョブが割り当てられたサーバ１０２に、対象ジョブに関する監視対象定義情報１６５が送信される。
【０１７３】
前述した処理がジョブネットを構成する全てのジョブに対して実行される。
【０１７４】
以上がステップＳ１００２に処理である。
【０１７５】
次に、ジョブスケジューラ１３１は、ファイルサーバ１０３に、フラグファイルの配布指示を送信する（ステップＳ１００３）。当該配布指示には、ジョブの割当結果及びフラグファイルの配布先決定処理の結果が含まれる。
【０１７６】
ジョブスケジューラ１３１は、ジョブが割り当てられたサーバ１０２に、当該ジョブの実行指示を送信する（ステップＳ１００４）。実施例１では、ジョブスケジューラ１３１は、ジョブネットを構成するジョブのうち、最初に実行されるジョブが割り当てられたサーバ１０２に、ジョブの実行指示を送信する。
【０１７７】
ジョブスケジューラ１３１は、ジョブを割り当てた全てのサーバ１０２からジョブ完了の通知の受信を待ち、全てのサーバ１０２からジョブ完了の通知を受信すると処理を終了する（ステップＳ１００５）。
【０１７８】
なお、ジョブスケジューラ１３１は、サーバ１０２へのジョブの割り当て時に、ファイルサーバ１０３にフラグファイルの配布指示を送信しているが、本発明はこれに限定されない。例えば、イベント通知準備部１４１が、フラグファイルの配布先決定処理の実行後、ファイルサーバ１０３にフラグファイルの配布指示を送信してもよい。
【０１７９】
なお、ファイルサーバ１０３は、配布指示を受信した場合、以下のような処理が実行される。
【０１８０】
ファイルサーバ１０３は、受信した配布指示に基づいて、所定のサーバ１０２に所定のフラグファイルを配布する。このとき、ファイルサーバ１０３は、サーバ１０２に、配布されたフラグファイルのメタデータＲｅａｄトークンを付与する。
【０１８１】
また、ファイルサーバ１０３は、トークン管理情報１７３に、フラグファイルのエントリを生成する。ファイルサーバ１０３は、フラグファイルのトークン種別３０２がメタデータ、及び、トークン状態３０３がＲｅａｄであるエントリの所定のサーバの欄に「１」を格納する。
【０１８２】
一方、サーバ１０２は、フラグファイルとメタデータＲｅａｄトークンを取得すると、取得トークン情報１６４に、フラグファイルのエントリを生成し、トークン種別５０２がメタデータ、かつ、トークン状態５０３がＲｅａｄの欄に「１」を格納する。
【０１８３】
図１１は、本発明の実施例１におけるジョブ実行制御部１５１が実行する処理を説明するフローチャートである。
【０１８４】
ジョブ実行制御部１５１は、ジョブスケジューラ１３１からジョブが割り当てられ、監視対象定義情報１６５及びフラグファイルを受信すると処理を開始する。
【０１８５】
ジョブ実行制御部１５１は、割り当てられたジョブを実行するためのプロセスを生成し、また、受信した監視対象定義情報１６５を更新する（ステップＳ１１０１）。
【０１８６】
具体的には、ジョブ実行制御部１５１は、受信した監視対象定義情報１６５のプロセスＩＤ６１１に生成されたプロセスの識別子を格納する。なお、監視対象定義情報１６５が複数存在する場合、各監視対象定義情報１６５のプロセスＩＤ６１１には、同一のプロセスの識別子が格納される。
【０１８７】
ジョブ実行制御部１５１は、ジョブの実行指示を受信したか否かを判定する（ステップＳ１１０２）。実施例１では、ジョブネットを構成するジョブのうち、最初に実行されるジョブが割り当てられたサーバ１０２に対してジョブの実行指示が送信される。
【０１８８】
ジョブの実行指示を受信したと判定された場合、ジョブ実行制御部１５１は、ＵＡＰ１３４に、割り当てられたジョブの実行を指示する（ステップＳ１１０４）。
【０１８９】
ジョブの実行指示を受信していないと判定された場合、ジョブ実行制御部１５１は、イベント通知部１６３からイベントの通知を受信したか否かを判定する（ステップＳ１１０３）。
【０１９０】
イベント通知部１６３からイベントの通知を受信していないと判定された場合、ジョブ実行制御部１５１は、ステップＳ１１０３に戻る。すなわち、ジョブ実行制御部１５１は、イベント通知部１６３からイベントの通知を受信するまでジョブの実行を待ち続ける。
【０１９１】
イベント通知部１６３からイベントの通知を受信したと判定された場合、ジョブ実行制御部１５１は、ＵＡＰ１３４に、割り当てられたジョブの実行を指示する（ステップＳ１１０４）。
【０１９２】
ＵＡＰ１３４は、ジョブの実行が指示されると、ファイル１１７を用いて割り当てられたジョブを実行する。このとき、ＵＡＰ１３４は、ファイル１１７に対するオペレーション要求をファイルシステムクライアント１３３に送信する。
【０１９３】
なお、オペレーション要求にはファイル１１７の識別子、及び、オペレーションの種別等が含まれる。
【０１９４】
ジョブ実行制御部１５１は、ジョブが完了したか否かを判定する（ステップＳ１１０５）。
【０１９５】
例えば、ＵＡＰ１３４がジョブ実行制御部１５１にジョブの完了を通知する方法、ジョブ実行制御部１５１がＵＡＰ１３４におけるジョブの実行状況を監視する方法等が考えられる。
【０１９６】
ジョブが完了していないと判定された場合、ジョブ実行制御部１５１は、ジョブが完了するまで待ち続ける。
【０１９７】
ジョブが完了したと判定された場合、ジョブ実行制御部１５１は、ファイルシステムクライアント１３３に、フラグファイルのメタデータに対するＷｒｉｔｅ要求を送信する（ステップＳ１１０６）。
【０１９８】
具体的には、ジョブ実行制御部１５１は、監視対象定義情報１６５を参照して、監視対象定義情報１６５のファイルＩＤ５３１に対応するフラグファイルのメタデータに対するＷｒｉｔｅ要求を送信する。なお、複数の監視対象定義情報１６５が存在する場合、全てのフラグファイルのメタデータに対してＷｒｉｔｅ要求が送信される。
【０１９９】
図１２は、本発明の実施例１におけるクライアント側トークン管理部１６１が実行する処理を説明するフローチャートである。
【０２００】
クライアント側トークン管理部１６１は、ＵＡＰ１３４又はジョブ実行制御部１５１からファイル１１７に対するオペレーション要求を受け付けると処理を開始する。
【０２０１】
なお、実施例１では、ファイルサーバ１０３によって、フラグファイルが予め配布される。したがって、ジョブの開始時点において、取得トークン情報１６４には、フラグファイルに対応するエントリが生成され、当該エントリのトークン状態５０３のＲｅａｄに対応する欄には「１」が格納される。
【０２０２】
クライアント側トークン管理部１６１は、オペレーション要求を受け付ける（ステップＳ１２０１）。
【０２０３】
クライアント側トークン管理部１６１は、ファイルサーバ１０３に、オペレーション要求に対応するオペレーションを実行するために必要なトークン付与要求を送信する（ステップＳ１２０２）。
【０２０４】
例えば、オペレーション要求が、ファイルＡのデータに対するＲｅａｄ要求の場合、クライアント側トークン管理部１６１は、ファイルサーバ１０３に、ファイルＡのデータＲｅａｄトークンの付与要求を送信する。また、オペレーション要求がファイルＡのメタデータに対するＷｒｉｔｅ要求の場合、クライアント側トークン管理部１６１は、ファイルサーバ１０３に、ファイルＡのメタデータＷｒｉｔｅトークンの付与要求を送信する。
【０２０５】
クライアント側トークン管理部１６１は、ファイルサーバ１０３から、所定のトークンを取得した後、取得トークン情報１６４を更新する（ステップＳ１２０３）。具体的には、以下のような処理が実行される。
【０２０６】
クライアント側トークン管理部１６１は、取得トークン情報１６４のファイルＩＤ５０１を参照し、オペレーション要求に対応するエントリが存在するか否かを判定する。
【０２０７】
オペレーション要求に対応するエントリが存在しないと判定された場合、クライアント側トークン管理部１６１は、取得トークン情報１６４に新たにエントリを生成する。なお、クライアント側トークン管理部１６１は、トークン種別５０２及びトークン状態５０３には全ての種類のカラムを生成するものとする。また、トークン状態５０３の全ての欄には「０」が設定される。
【０２０８】
さらに、クライアント側トークン管理部１６１は、オペレーション要求を解析して、新たに生成されたエントリの、トークン種別５０２及びトークン状態５０３に一致する欄を「１」に更新する。
【０２０９】
オペレーション要求に対応するエントリが存在すると判定された場合、クライアント側トークン管理部１６１は、オペレーション要求を解析して、対応するエントリの、トークン種別５０２及びトークン状態５０３に一致する欄を「１」に更新する。
【０２１０】
なお、クライアント側トークン管理部１６１は、メモリ１２４のワークエリアに、更新前の取得トークン情報１６４を一時的に保持する。なお、クライアント側トークン管理部１６１は、メモリ１２４のワークエリアに、更新前の取得トークン情報１６４が存在する場合、当該ワークエリアに、今回の取得トークン情報１６４を上書きする。
【０２１１】
以上がステップＳ１２０３の処理である。
【０２１２】
次に、クライアント側トークン管理部１６１は、オペレーション要求に対応するオペレーションを実行する（ステップＳ１２０４）。オペレーションの実行処理は公知の技術を用いればよいため説明を省略する。
【０２１３】
図１３は、本発明の実施例１におけるトークン監視部１６２が実行する処理を説明するフローチャートである。
【０２１４】
トークン監視部１６２は、ステップＳ１１０１において監視対象定義情報１６５が更新された後、処理を開始する。トークン監視部１６２は、ファイルＩ／Ｏとしてオペレーション要求を監視し、オペレーション要求を検出した場合に以下で説明する処理を開始する。
【０２１５】
トークン監視部１６２は、監視対象定義情報１６５を参照して、オペレーション要求の処理対象が監視対象４１０に一致するか否かを判定する（ステップＳ１３０１）。具体的には、以下のような処理が実行される。
【０２１６】
トークン監視部１６２は、オペレーション要求を解析し、オペレーションの処理対象のファイル１１７の識別子を特定する。トークン監視部１６２は、監視対象定義情報１６５のファイルＩＤ６２１を参照して、特定されたファイルの識別子と一致する監視対象定義情報１６５を検索する。
【０２１７】
特定されたファイルの識別子と一致する監視対象定義情報１６５が存在する場合、トークン監視部１６２は、オペレーション要求の処理対象が監視対象４１０に一致すると判定する。
【０２１８】
実施例１では、フラグファイルのメタデータに対する書込処理又は読出処理等を受け付けた場合に、上記処理によって、監視対象定義情報１６５が検索される。
【０２１９】
以上がステップＳ１３０１の処理である。
【０２２０】
オペレーション要求の処理対象が監視対象４１０に一致しないと判定された場合、トークン監視部１６２は、オペレーション要求の監視を継続する。
【０２２１】
オペレーション要求の処理対象が監視対象４１０に一致すると判定された場合、トークン監視部１６２は、監視対象定義情報１６５を参照して、オペレーション（ファイルＩ／Ｏ）の処理内容が監視動作６３０と一致するか否かを判定する（ステップＳ１３０２）。すなわち、イベントとして検出すべきファイルＩ／Ｏであるか否かが判定される。
【０２２２】
オペレーションの処理内容が、監視動作６３０と一致しないと判定された場合、トークン監視部１６２は、オペレーション要求の監視を継続する。
【０２２３】
オペレーションの処理内容が、監視動作６３０と一致する判定された場合、トークン監視部１６２は、取得トークン情報１６４を参照して、オペレーションの実行に必要なトークンの状態が変化したか否かを判定する（ステップＳ１３０３）。
【０２２４】
具体的には、トークン監視部１６２は、取得トークン情報１６４と、ワークエリアに保持される更新前の取得トークン情報１６４とを比較して、ファイルＩＤ６２１に対応するファイル１１７のエントリの、所定のトークン種別５０２及び所定のトークン状態５０３の欄の値が変化したか否かを判定する。
【０２２５】
なお、オペレーション要求が出力されてから、トークンの状態が変化するまでには時間を要するため、一定期間経過後にステップＳ１３０３の判定処理を実行するようにしてもよい。
【０２２６】
オペレーションの実行に必要なトークンの状態が変化していないと判定された場合、トークン監視部１６２は、オペレーション要求の監視を継続する。
【０２２７】
オペレーションの実行に必要なトークンの状態が変化したと判定された場合、トークン監視部１６２は、対応する監視対象定義情報１６５に、処理済みであることを示すフラグを付与する（ステップＳ１３０４）。
【０２２８】
トークン監視部１６２は、全ての監視対象定義情報１６５について処理が完了したか否かを判定する（ステップＳ１３０５）。
【０２２９】
具体的には、トークン監視部１６２は、保持する全ての監視対象定義情報１６５に、処理済みであることを示すフラグが付与されているか否かを判定する。全ての監視対象定義情報１６５に、処理済みであることを示すフラグが付与されている場合、全ての監視対象定義情報１６５について処理が完了したと判定される。
【０２３０】
全ての監視対象定義情報１６５について処理が完了していないと判定された場合、トークン監視部１６２は、オペレーション要求の監視を継続する。
【０２３１】
全ての監視対象定義情報１６５について処理が完了したと判定された場合、トークン監視部１６２は、イベント通知部１６３にイベントの発生を通知する（ステップＳ１３０６）。その後、トークン監視部１６２は、オペレーション要求の監視を継続する。
【０２３２】
実施例１では、トークン監視部１６２は、サーバ１０２に配布された全てのフラグファイルに付与されたメタデータＲｅａｄトークンが回収されたことを検出すると、その旨をイベント通知部１６３に通知する。
【０２３３】
なお、イベント通知部１６３への通知には、フラグファイルの識別子が含まれる。
【０２３４】
図１４は、本発明の実施例１におけるイベント通知部１６３が実行する処理を説明する処理である。
【０２３５】
イベント通知部１６３は、トークン監視部１６２から所定のイベントが発生した旨を受信すると処理を開始する。
【０２３６】
イベント通知部１６３は、トークン監視部１６２からの通知に基づいて、プロセスを特定する（ステップＳ１４０１）。
【０２３７】
具体的には、イベント通知部１６３は、監視対象定義情報１６５のプロセスＩＤ５２１を参照して、プロセスを特定する。なお、監視対象定義情報１６５が複数ある場合、全ての監視対象定義情報１６５には、同一のプロセスＩＤ５２１が設定されているため、イベント通知部１６３は、一つの監視対象定義情報１６５を参照すればよい。
【０２３８】
イベント通知部１６３は、ジョブ実行制御部１５１に、特定されたプロセスの識別情報を含めてイベントを通知する（ステップＳ１４０２）。
【０２３９】
これによって、ジョブ実行制御部１５１は、プロセスＩＤ５２１に対応するジョブの実行指示が開始される（ステップＳ１１０４）。
【０２４０】
図１５は、本発明の実施例１におけるサーバ側トークン管理部１７１が実行する処理を説明するフローチャートである。
【０２４１】
サーバ側トークン管理部１７１は、クライアント側トークン管理部１６１からトークン付与要求を受信すると処理を開始する。
【０２４２】
サーバ側トークン管理部１７１は、トークン付与要求を受信すると（ステップＳ１５０１）、トークン管理情報１７３を参照して、オペレーションの処理対象に関連するトークンの回収が必要か否かを判定する（ステップＳ１５０２）。ここで、トークン付与要求がファイルＡのデータＷｒｉｔｅトークンの付与要求である場合を例にステップＳ１５０２の処理を説明する。
【０２４３】
サーバ側トークン管理部１７１は、ファイルＩＤ３０１がファイルＡのデータ３１３のエントリを参照して、データＷｒｉｔｅトークンが付与されているサーバ１０２が存在するか否かを判定する。
【０２４４】
データＷｒｉｔｅトークンが付与されているサーバ１０２が存在しないと判定された場合、サーバ側トークン管理部１７１は、ファイルＡのデータに関連するトークンの回収が必要ないと判定する。
【０２４５】
一方、データＷｒｉｔｅトークンが付与されているサーバ１０２が存在すると判定された場合、サーバ側トークン管理部１７１は、ファイルＡのデータに関連するトークンの回収が必要であると判定する。具体的には、他のサーバ１０２に付与されたデータＷｒｉｔｅトークンの回収が必要であると判定する。
【０２４６】
以上が、ステップＳ１５０２の処理の一例である。なお、オペレーションの処理内容によって、トークンの回収の判定基準が異なるが、公知の技術であるため詳細な説明を省略する。
【０２４７】
オペレーションの処理対象に関連するトークンの回収が必要でないと判定された場合、サーバ側トークン管理部１７１は、ステップＳ１５０４に進む。
【０２４８】
オペレーションの処理対象に関連するトークンの回収が必要であると判定された場合、サーバ側トークン管理部１７１は、所定のサーバ１０２にトークンの返却要求を送信する（ステップＳ１５０３）。
【０２４９】
サーバ側トークン管理部１７１は、トークン付与要求によって要求されたトークンを付与するために、トークン付与判定部１７２を呼び出す（ステップＳ１５０４）。
【０２５０】
サーバ側トークン管理部１７１は、トークン付与判定部１７２の処理結果に基づいて、トークン付与要求によって要求されたトークンをサーバ１０２に付与し、トークン管理情報１７３を更新する（ステップＳ１５０５）。
【０２５１】
具体的には、サーバ側トークン管理部１７１は、トークン付与要求を解析して、トークン管理情報１７３の対応する付与状態３０４の欄を「１」に更新する。また、サーバ側トークン管理部１７１は、トークンが回収された場合には、回収されたトークンに対応する付与状態３０４の欄を「０」に更新する。
【０２５２】
図１６は、本発明の実施例１におけるトークン付与判定部１７２が実行する処理を説明するフローチャートである。
【０２５３】
トークン付与判定部１７２は、トークン付与要求の解析結果に基づいて付与定義情報１７４を参照し、当該トークン付与要求が処理対象であるか否かを判定する（ステップＳ１６０１）。
【０２５４】
具体的には、トークン付与判定部１７２は、トークン付与要求の解析結果からファイルの識別子を取得する。トークン付与判定部１７２は、ファイルＩＤ４１１が、取得されたファイルの識別子と一致する付与定義情報１７４が存在するか否かを判定する。
【０２５５】
ファイルＩＤ４１１が、取得されたファイルの識別子と一致する付与定義情報１７４が存在する場合、トークン付与判定部１７２は、受信したトークン付与要求が処理対象であると判定する。
【０２５６】
受信したトークン付与要求が処理対象でないと判定された場合、トークン付与判定部１７２は、サーバ側トークン管理部１７１に、トークンの付与を許可する旨を通知する（ステップＳ１６０４）。
【０２５７】
受信したトークン付与要求が処理対象であると判定された場合、トークン付与判定部１７２は、対応する付与定義情報１７４の条件４２０に示された条件を満たすか否かを判定する（ステップＳ１６０２）。
【０２５８】
対応する付与定義情報１７４の条件４２０に示された条件を満たさないと判定された場合、トークン付与判定部１７２は、ステップＳ１６０２に戻り、当該条件が満たされるまで待ち続ける。
【０２５９】
対応する付与定義情報１７４の条件４２０に示された条件を満たすと判定された場合、トークン付与判定部１７２は、サーバ側トークン管理部１７１に、トークンの付与を許可する旨を通知する（ステップＳ１６０４）。
【０２６０】
なお、判定処理用のタイマを設定しておき、当該タイマが経過後も条件が満たされていない場合、トークン付与判定部１７２は、サーバ側トークン管理部１７１にエラーを通知してもよい。
【０２６１】
トークン付与判定部１７２が実行する処理によって、現在実行中のジョブの次に実行されるジョブの開始時に、現在実行中のジョブの処理結果が反映されないなどの不具合を解消することができる。すなわち、ファイルの一貫性を確保することができる。
【０２６２】
ここで、ジョブネットの具体例を用いて処理の流れについて説明する。
【０２６３】
以下では、ジョブ１、ジョブ２、及びジョブ３の順に実行されるジョブネットを例に説明する。なお、ジョブ１はファイルＡを用いた処理を実行するジョブ、ジョブ２はファイルＡ及びファイルＢを用いた処理を実行するジョブ、ジョブ３はファイルＢを用いた処理を実行するジョブであると仮定する。
【０２６４】
（イベント通知準備部１４１）
ステップＳ７０２では、イベント通知準備部１４１は、以下のような処理を実行する。イベント通知準備部１４１は、ファイルＡはジョブ１及びジョブ２に用いられるため、フラグファイルＡ１の生成指示を送信する。また、イベント通知準備部１４１は、ファイルＢはジョブ２及びジョブ３に用いられるため、フラグファイルＢ１の生成指示を送信する。
【０２６５】
ステップＳ７０３では、イベント通知準備部１４１は、二つの付与定義情報１７４を登録する。
【０２６６】
具体的には、ファイルＩＤ４１１にフラグファイルＡ１の識別子が格納された第１の付与定義情報と、ファイルＩＤ４１１にフラグファイルＢ１の識別子が格納された第２の付与定義情報とが登録される。
【０２６７】
なお、具体例では、全ての付与定義情報１７４の条件式４３０には、同一の条件式が設定される。具体的には、「要素１（４４０）、ＡＮＤ、要素２（４５０）」という条件式が格納される。また、トークン条件４４２及びトークン条件４５２には「メタデータＲｅａｄトークンの回収完了」が格納される。
【０２６８】
すなわち、具体例では、フラグファイルのメタデータＲｅａｄトークンの回収完了を契機にジョブが実行される。
【０２６９】
ステップＳ７０４では、イベント通知準備部１４１は、二つの監視対象定義情報１６５を登録する。
【０２７０】
具体的には、ファイルＩＤ６２１にフラグファイルＡ１の識別子が格納された第１の監視対象定義情報と、ファイルＩＤ６２１にフラグファイルＢ１の識別子が格納された第２の監視対象定義情報とが登録される。
【０２７１】
なお、具体例では、全ての監視対象定義情報１６５の監視動作６３０には、同一の情報が設定される。具体的には、「メタデータＲｅａｄ」が格納される。
【０２７２】
ステップＳ８０１では、イベント通知準備部１４１は、ジョブ１を第１のサーバに、ジョブ２を第２のサーバに、ジョブ３を第３のサーバに割り当てるように決定する。
【０２７３】
ステップＳ８０２では、イベント通知準備部１４１は、フラグファイルの配布先決定処理を実行して、フラグファイルの配布先を決定する。
【０２７４】
具体的には、フラグファイルＡ１の配布先は、第１のサーバ及び第２のサーバに決定される。フラグファイルＢ１の配布先は、第２のサーバ及び第３のサーバに決定される。
【０２７５】
ステップＳ８０３では、イベント通知準備部１４１は、二つの付与定義情報１７４を更新する。
【０２７６】
具体的には、イベント通知準備部１４１は、第１の付与定義情報のサーバＩＤ４４１に第１のサーバの識別子を格納し、サーバＩＤ４５１に第２のサーバの識別子を格納する。また、イベント通知準備部１４１は、第２の付与定義情報のサーバＩＤ４４１に第２のサーバの識別子を格納し、サーバＩＤ４５１に第３のサーバの識別子を格納する。
【０２７７】
（ジョブスケジューラ１３１）
ステップＳ１００１では、ジョブスケジューラ１３１は、ジョブ１を第１のサーバに、ジョブ２を第２のサーバに、ジョブ３を第３のサーバに割り当てる。
【０２７８】
ステップＳ１００２では、ジョブスケジューラ１３１は、所定のサーバ１０２に、二つの監視対象定義情報１６５を送信する。具体的には、以下のように監視対象定義情報１６５が送信される。
【０２７９】
第１のサーバ及び第２のサーバにはフラグファイルＡ１が配布予定であるため、第１の監視対象定義情報が第２のサーバに送信される。同様に、第２のサーバ及び第３のサーバにはフラグファイルＢ１が配布予定であるため、第２の監視対象定義情報が第３のサーバに送信される。
【０２８０】
ステップＳ１００３では、ジョブスケジューラ１３１は、ファイルサーバ１０３にフラグファイルの配布を指示する。
【０２８１】
具体的には、ジョブスケジューラ１３１は、第１のサーバにフラグファイルＡ１を配布し、第２のサーバにフラグファイルＡ１及びフラグファイルＢ１を配布し、また、第３のサーバにフラグファイルＢ１を配布するように指示する。
【０２８２】
ファイルサーバ１０３は、配布指示に基づいて、第１のサーバにフラグファイルＡ１を配布し、第２のサーバにフラグファイルＡ１及びフラグファイルＢ１を配布し、また、第３のサーバにフラグファイルＢ１を配布する。また、ファイルサーバ１０３は、各サーバに、配布されたフラグファイルのメタデータＲｅａｄトークンを付与する。
【０２８３】
ステップＳ１００４では、ジョブスケジューラ１３１は、第１のサーバにジョブ１の実行を指示する。
【０２８４】
次に、サーバ１０２及びファイルサーバ１０３が実行する処理を説明する。なお、通常のファイル１１７のオペレーションに関する処理は公知技術と同一であるため、フラグファイルのオペレーションに関する処理を中心に説明する。
【０２８５】
（第１のサーバのジョブ実行制御部１５１）
ステップＳ１１０１では、ジョブ実行制御部１５１は、ジョブ１を実行するためのプロセスを生成する。なお、第１のサーバには監視対象定義情報１６５が送信されていないため、監視対象定義情報１６５の更新処理は省略される。
【０２８６】
ステップＳ１１０２では、ジョブ実行制御部１５１は、ジョブスケジューラ１３１からジョブ１の実行指示を受信しているため、ステップＳ１１０４に進み、ＵＡＰ１３４にジョブ１の実行を指示する。
【０２８７】
ステップＳ１１０６では、ジョブ実行制御部１５１は、フラグファイルＡ１のメタデータに対するＷｒｉｔｅ要求を送信する。
【０２８８】
（第１のサーバのクライアント側トークン管理部１６１）
ステップＳ１２０１では、クライアント側トークン管理部１６１は、フラグファイルＡ１のメタデータに対するＷｒｉｔｅ要求を受け付ける。
【０２８９】
ステップＳ１２０２では、クライアント側トークン管理部１６１は、フラグファイルＡ１のメタデータＷｒｉｔｅトークンの付与要求を送信する。
【０２９０】
ステップＳ１２０３では、クライアント側トークン管理部１６１は、フラグファイルＡ１のメタデータＷｒｉｔｅトークンを取得した後、取得トークン情報１６４を更新する。
【０２９１】
ステップＳ１２０４では、クライアント側トークン管理部１６１は、フラグファイルＡ１のメタデータに対する書込処理を実行する。
【０２９２】
本発明では、フラグファイルＡ１のメタデータに対する書込処理に限定されない。例えば、クライアント側トークン管理部１６１は、フラグファイルＡ１のメタデータに対して０バイトデータの書込処理を実行するようにしてもよい。その後、クライアント側トークン管理部１６１は、フラグファイルＡ１を破棄し、また、取得トークン情報１６４からフラグファイルＡ１のエントリを削除する。
【０２９３】
（サーバ側トークン管理部１７１及びトークン付与判定部１７２）
ステップＳ１５０１及びステップＳ１５０２では、サーバ側トークン管理部１７１は、フラグファイルＡ１のメタデータＷｒｉｔｅトークンの付与要求を受信すると、フラグファイルＡ１のメタデータＲｅａｄトークンの回収が必要であると判定する。
【０２９４】
通常、ファイルのデータＷｒｉｔｅトークンの付与要求を受信した場合、ファイルの一貫性を確保するために、サーバ１０２に付与されたファイルのデータＲｅａｄトークンを回収する必要があるためである。
【０２９５】
ステップＳ１５０３では、サーバ側トークン管理部１７１は、トークン管理情報１７３を参照して、フラグファイルＡ１のメタデータＲｅａｄトークンが付与された第１のサーバ及び第２のサーバを特定する。さらに、サーバ側トークン管理部１７１は、第１のサーバ及び第２のサーバに、フラグファイルＡ１のメタデータＲｅａｄトークンの返還要求を送信する。
【０２９６】
ステップＳ１６０２では、トークン付与判定部１７２は、第１の付与定義情報を参照し、第１のサーバ及び第２のサーバから、フラグファイルＡ１のメタデータＲｅａｄトークンが回収されたか否かを判定する。
【０２９７】
ステップＳ１６０４では、トークン付与判定部１７２は、前述した条件が満たされると、フラグファイルＡ１のメタデータＷｒｉｔｅトークンの付与を許可する。
【０２９８】
ステップＳ１５０５では、サーバ側トークン管理部１７１は、第１のサーバにフラグファイルＡ１のメタデータＷｒｉｔｅトークンを付与する。
【０２９９】
（第２のサーバのトークン監視部１６２）
ステップＳ１３０１では、トークン監視部１６２は、フラグファイルＡ１のメタデータＲｅａｄトークンの返却要求を検出した場合、処理対象が監視対象４１０に一致すると判定する。
【０３００】
ステップＳ１３０２では、トークン監視部１６２は、オペレーション（ファイルＩ／Ｏ）の処理内容が監視動作６３０と一致すると判定する。
【０３０１】
ステップＳ１３０３では、トークン監視部１６２は、フラグファイルＡ１のメタデータＲｅａｄトークンを返却すると、トークンの状態が変化したと判定する。
【０３０２】
ステップＳ１３０４では、トークン監視部１６２は、第１の監視対象定義情報に処理済みであることを示すフラグを付与する。
【０３０３】
ステップＳ１３０５では、トークン監視部１６２は、第１の監視定義情報に処理済みであることを示すフラグが付与されているため、全ての監視対象定義情報１６５について処理が完了したと判定する。
【０３０４】
ステップＳ１３０６では、トークン監視部１６２は、イベント通知部１６３にイベントの発生を通知する。
【０３０５】
（第２のサーバのイベント通知部１６３）
ステップＳ１４０１では、イベント通知部１６３は、監視対象定義情報１６５のプロセスＩＤ６１１を参照して、ジョブ２を実行するためのプロセスを特定する。
【０３０６】
ステップＳ１４０２では、イベント通知部１６３は、ジョブ実行制御部１５１にジョブ２を開始するためのイベントを通知する。
【０３０７】
（第２のサーバのジョブ実行制御部１５１）
ステップＳ１１０１では、第１のサーバのジョブ実行制御部１５１が実行した処理と同一の処理が実行される。
【０３０８】
ステップＳ１１０２では、ジョブ実行制御部１５１は、ジョブの実行指示は送信されないためステップＳ１１０３に進む。
【０３０９】
ステップＳ１１０３では、ジョブ実行制御部１５１は、イベントが通知されるまで、ジョブ２の実行を待ち合わせている。ジョブ実行制御部１５１は、イベント通知部１６３からイベントが通知されると、ＵＡＰ１３４にジョブ２の実行を指示する。
【０３１０】
ステップＳ１１０６では、ジョブ実行制御部１５１は、フラグファイルＢ１のメタデータに対するＷｒｉｔｅ要求を送信する。
【０３１１】
以下、前述した処理と同様の処理が実行される。簡単に説明すると、以下のような処理が実行される。
【０３１２】
まず、ファイルサーバ１０３によって、フラグファイルＢ１のメタデータＲｅａｄトークンが回収される。
【０３１３】
第３のサーバのトークン監視部１６２は、フラグファイルＢ１のメタデータＲｅａｄトークンが回収を検出すると、第２の監視対象定義情報に基づいてイベントの発生であると判定し、イベント通知部１６３にその旨を通知する。第３のサーバのイベント通知部１６３は、第３のサーバのジョブ実行制御部１５１にイベントを通知する。第３のサーバのジョブ実行制御部１５１は、イベントの通知を受け付けると、ＵＡＰ１３４にジョブ３の実行を指示する。
【０３１４】
（変形例１）
実施例１では、フラグファイルに対するファイルＩ／Ｏを用いてイベントを検出していたが、本発明はこれに限定されない。サーバ１０２が、自身に割り当てられたジョブの前に実行されるジョブ（先行ジョブ）の実行時に入出力されるファイルＩ／Ｏに基づいてイベントを検出する方法も可能である。以下の説明では、先行ジョブの後に実行されるジョブを後続ジョブと記載する。
【０３１５】
ここで、実施例１とは異なるイベントの検出方式について説明する。
【０３１６】
変形例１では、フラグファイルを用いずに、先行ジョブの実行時に用いられるファイルのデータＷｒｉｔｅトークンの返却を契機に後続ジョブを開始する。
【０３１７】
以下、適用例を用いて、実施例１との差異を中心に説明する。
【０３１８】
変形例１では、計算機システムのハードウェア構成、ファイル管理情報１７５、トークン管理情報１７３、取得トークン情報１６４は、実施例１と同一であるため説明を省略する。
【０３１９】
変形例１では、監視対象定義情報１６５に設定される内容が異なる。
【０３２０】
監視対象定義情報１６５のファイルＩＤ６２１には、先行ジョブが用いるファイルの識別子が格納される。また、監視動作６３０には、「データＲｅａｄ」が格納される。
【０３２１】
また、変形例１では、付与定義情報１７４が異なる。
【０３２２】
図１７は、本発明の変形例１における付与定義情報１７４の一例を示す説明図である。
【０３２３】
変形例１の付与定義情報１７４は、ファイルＩ／Ｏ１７００を新たに含む。ファイルＩ／Ｏ１７００は、条件４２０に設定された条件が満たされた場合に、後続ジョブが割り当てられたサーバ１０２に出力するファイルＩ／Ｏの情報を格納する。具体的には、ファイルＩ／Ｏ１７００は、サーバＩＤ１７０１及び付与トークン１７０２を含む。
【０３２４】
サーバＩＤ１７０１は、後続ジョブが割り当てられたサーバ１０２の識別子を格納する。
【０３２５】
付与トークン１７０２は、後続ジョブが割り当てられたサーバ１０２に付与するトークンに関する情報を格納する。具体的には、「（ファイルＩＤ４１１）のデータＲｅａｄトークンの付与」が格納される。
【０３２６】
なお、変形例１では、ファイルＩＤ４１１には、先行ジョブが用いるファイルの識別子が格納される。条件４３０については後述する。
【０３２７】
その他の情報は実施例１と同一であるため説明を省略する。
【０３２８】
以下では、ジョブ１、ジョブ２、及びジョブ３の順に実行されるジョブネットを例に説明する。なお、ジョブ１はファイルＡを用いた処理を実行するジョブ、ジョブ２はファイルＡ及びファイルＢを用いた処理を実行するジョブ、ジョブ３はファイルＢを用いた処理を実行するジョブであると仮定する。
【０３２９】
（イベント通知準備部１４１）
変形例１では、フラグファイルを用いないためステップＳ７０２の処理は省略される。
【０３３０】
ステップＳ７０３では、イベント通知準備部１４１は、第１の付与定義情報、第２の付与定義情報、及び第３の付与定義情報の三つの付与定義情報１７４を登録する。
【０３３１】
第１の付与定義情報では、ファイルＩＤ４１１にファイルＡの識別子が格納され、サーバＩＤ１７０１に第２のサーバの識別子が格納される。第２の付与定義情報では、ファイルＩＤ４１１にファイルＡの識別子が格納され、サーバＩＤ１７０１に第３のサーバの識別子が格納される。第３の付与定義情報では、ファイルＩＤ４１１にファイルＢの識別子が格納され、サーバＩＤ１７０１に第３のサーバの識別子が格納される。
【０３３２】
また、付与定義情報１７４の条件４２０には、条件式４３０と要素１（４４０）が含まれる。条件式４３０には、「（サーバＩＤ４４１）が（ファイルＩＤ４１１）のデータの（トークン条件４４２）の検出」が格納される。また、トークン条件４４２には、「データＷｒｉｔｅトークンの返却」が格納される。
【０３３３】
すなわち、変形例１では、先行ジョブの実行時に用いられるファイルのデータＷｒｉｔｅトークンが返却を契機に後続ジョブが実行される。
【０３３４】
ステップＳ７０４では、イベント通知準備部１４１は、第１の監視対象定義情報、第２の監視対象定義情報、及び第３の監視対象定義情報の三つの監視対象定義情報１６５を登録する。
【０３３５】
第１の監視対象定義情報のファイルＩＤ６２１にファイルＡの識別子が格納される。第２の監視対象定義情報のファイルＩＤ６２１にファイルＡの識別子が格納される。第３の監視対象定義情報のファイルＩＤ６２１にファイルＢの識別子が格納される。
【０３３６】
ステップＳ８０１では、イベント通知準備部１４１は、ジョブ１を第１のサーバに、ジョブ２を第２のサーバに、ジョブ３を第３のサーバに割り当てるように決定する。
【０３３７】
変形例１では、フラグファイルを用いないためフラグファイルの配布先決定処理は省略される。
【０３３８】
ステップＳ８０３では、イベント通知準備部１４１は、三つの付与定義情報１７４を更新する。
【０３３９】
具体的には、イベント通知準備部１４１は、第１の付与定義情報のサーバＩＤ４４１に第１のサーバの識別子を格納する。イベント通知準備部１４１は、第２の付与定義情報のサーバＩＤ４４１に第２のサーバの識別子を格納する。イベント通知準備部１４１は、第３の付与定義情報のサーバＩＤ４４１に第２のサーバの識別子を格納する。
【０３４０】
（ジョブスケジューラ１３１）
ステップＳ１００１では、ジョブスケジューラ１３１は、ジョブ１を第１のサーバに、ジョブ２を第２のサーバに、ジョブ３を第３のサーバに割り当てる。
【０３４１】
ステップＳ１００２において、ジョブスケジューラ１３１は、所定のサーバ１０２に、三つの監視対象定義情報１６５を送信する。具体的には、以下のように監視対象定義情報１６５が送信される。
【０３４２】
変形例１では、後続ジョブが割り当てられたサーバ１０２が、先行ジョブの実行時に用いられたファイルのデータＲｅａｄトークンの付与を検出するように監視対象定義情報１６５が送信される。
【０３４３】
そのため、第２のサーバには、ジョブ１の実行時に用いられるファイルＡのデータＲｅａｄトークンの付与を検出するために、第１の監視対象定義情報が送信される。また、第３のサーバには、ジョブ２の実行時に用いられるファイルＡ及びファイルＢのデータＲｅａｄトークンの付与を検出するために、第２の監視対象定義情報及ぶ第３の監視対象定義情報が送信される。
【０３４４】
変形例１では、フラグファイルを用いないためステップＳ１００３の処理は省略される。
【０３４５】
次に、サーバ１０２及びファイルサーバ１０３が実行する処理を説明する。
【０３４６】
（第１のサーバのジョブ実行制御部１５１）
ステップＳ１１０１では、ジョブ実行制御部１５１は、ジョブ１を実行するためのプロセスを生成する。なお、第１のサーバには監視対象定義情報１６５が送信されていないため、監視対象定義情報１６５の更新処理は省略される。
【０３４７】
ステップＳ１１０２では、ジョブ実行制御部１５１は、ジョブスケジューラ１３１からジョブ１の実行指示を受信しているため、ステップＳ１１０４に進み、ＵＡＰ１３４にジョブ１の実行を指示する。
【０３４８】
ステップＳ１１０６では、ジョブ実行制御部１５１は、ファイルＡ１のデータに対するＷｒｉｔｅ要求を送信する。これによって、ジョブ１の処理結果がファイルＡに反映され、その後、ファイルＡのデータＷｒｉｔｅトークンが返却される。
【０３４９】
（第１のサーバのクライアント側トークン管理部１６１）
ステップＳ１２０１では、クライアント側トークン管理部１６１は、ファイルＡへの書込処理の終了通知を受け付ける。
【０３５０】
ステップＳ１２０２では、クライアント側トークン管理部１６１は、付与要求の代わりに、ファイルＡのデータＷｒｉｔｅトークンの返却通知を送信する。
【０３５１】
ステップＳ１２０３では、クライアント側トークン管理部１６１は、ファイルＡのデータＷｒｉｔｅトークンを返却した後、取得トークン情報１６４を更新する。この場合、ステップＳ１２０４の処理は省略される。
【０３５２】
（サーバ側トークン管理部１７１及びトークン付与判定部１７２）
ステップＳ１５０１では、サーバ側トークン管理部１７１は、第１のサーバからファイルＡのデータＷｒｉｔｅトークンの返却通知を受信する。この場合、トークンの回収は必要ないためステップＳ１５０２及びステップＳ１５０３の処理は省略される。
【０３５３】
ステップＳ１６０２では、トークン付与判定部１７２は、第１の付与定義情報を参照し、第１のサーバから、ファイルＡのデータＷｒｉｔｅトークンを回収したか否かを判定する。例えば、トークン管理情報１７３を参照することによって判定することができる。
【０３５４】
ステップＳ１６０４では、トークン付与判定部１７２は、前述した条件が満たされると、ファイルＡのＲｅａｄトークンの付与を許可する。
【０３５５】
ステップＳ１５０５では、サーバ側トークン管理部１７１は、第１の付与定義情報を参照して、第２のサーバにファイルＡのデータＲｅａｄトークンを付与するための付与通知を送信する。
【０３５６】
（第２のサーバのトークン監視部１６２）
ステップＳ１３０１では、トークン監視部１６２は、ファイルＡのデータＲｅａｄトークンの付与通知を検出した場合、処理対象が監視対象４１０と一致すると判定する。
【０３５７】
ステップＳ１３０２では、トークン監視部１６２は、ファイルＩ／Ｏの処理内容が監視動作６３０に一致すると判定する。
【０３５８】
ステップＳ１３０４では、トークン監視部１６２は、第１の監視対象定義情報に処理済みであることを示すフラグを付与する。
【０３５９】
ステップＳ１３０５では、トークン監視部１６２は、第１の監視対象定義情報に処理済みであることを示すフラグが付与されているため、全ての監視対象定義情報１６５について処理が完了したと判定する。
【０３６０】
ステップＳ１３０６では、トークン監視部１６２は、イベント通知部１６３にイベントの発生を通知する。
【０３６１】
（第２のサーバのイベント通知部１６３）
ステップＳ１４０１では、イベント通知部１６３は、監視対象定義情報１６５のプロセスＩＤ６１１を参照して、ジョブ２を実行するためのプロセスを特定する。
【０３６２】
ステップＳ１４０２では、イベント通知部１６３は、ジョブ実行制御部１５１にジョブ２を開始するためのイベントを通知する。
【０３６３】
（第２のサーバのジョブ実行制御部１５１）
ステップＳ１１０１では、第１のサーバのジョブ実行制御部１５１が実行した処理と同一の処理が実行される。
【０３６４】
ステップＳ１１０２では、ジョブ実行制御部１５１は、ジョブの実行指示は送信されないためステップＳ１１０３に進む。
【０３６５】
ステップＳ１１０３では、ジョブ実行制御部１５１は、イベントが通知されるまで、ジョブ２の実行を待ち合わせている。ジョブ実行制御部１５１は、イベント通知部１６３からイベントが通知されると、ＵＡＰ１３４にジョブ２の実行を指示する。
【０３６６】
ステップＳ１１０６では、ジョブ実行制御部１５１は、ファイルＡ及びファイルＢのデータＷｒｉｔｅトークンの返却通知を送信する。
【０３６７】
以下、前述した処理と同様の処理が実行される。簡単に説明すると、以下のような処理が実行される。
【０３６８】
まず、ファイルサーバ１０３が、第３のサーバに、ファイルＡ及びファイルＢのデータＲｅａｄトークンの付与通知を送信する。
【０３６９】
第３のサーバのトークン監視部１６２は、ファイルＡ及びファイルＢのデータＲｅａｄトークンが付与されたことを検出すると、イベントの発生をイベント通知部１６３に通知する。なお、いずれか一方のファイル１１７のデータＲｅａｄトークンのみが付与されている場合、他のファイル１１７のデータＲｅａｄトークンが付与されるまで待ち続ける。
【０３７０】
第３のサーバのイベント通知部１６３は、第３のサーバのジョブ実行制御部１５１にイベントを通知する。第３のサーバのジョブ実行制御部１５１は、イベントの通知を受け付けると、ＵＡＰ１３４にジョブ３の実行を指示する。
【０３７１】
以上で説明したように、付与定義情報１７４及び監視対象定義情報１６５を適宜変更することによって、サーバ１０２は、所定のファイルＩ／Ｏの検出を契機にジョブを開始することができる。
【０３７２】
（変形例２）
変形例２では、先行ジョブの実行時に用いられるファイルのデータ書込処理に対応するＩ／Ｏの検出を契機に後続ジョブを開始する。
【０３７３】
以下、適用例を用いて、実施例１との差異を中心に説明する。
【０３７４】
変形例では、計算機システムの構成、ファイル管理情報１７５、トークン管理情報１７３、取得トークン情報１６４は、実施例１と同一であるため説明を省略する。
【０３７５】
変形例では、監視対象定義情報１６５に設定される内容が異なる。
【０３７６】
監視対象定義情報１６５のファイルＩＤ６２１には、先行ジョブが用いるファイルの識別子が格納される。また、監視動作６３０には、「ファイルへのデータ書込処理」が格納される。
【０３７７】
変形例２の付与定義情報１７４は、変形例１と同一のものであるため説明を省略する。
【０３７８】
変形例２では、ファイルサーバ１０３がファイルＡへのデータ書込処理に対応するＩ／Ｏを検出した場合に、付与定義情報１７４に基づいて、ファイルＡのＲｅａｄトークンを付与する点が異なる。
【０３７９】
その他の処理は、変形例２と同一であるため説明を省略する。
【０３８０】
本発明によれば、ジョブが割り当てられたサーバ１０２は、ファイルサーバ１０３に対する所定のファイルＩ／Ｏを検出することによってジョブを開始することができる。
【０３８１】
したがって、ジョブ管理サーバ１０１とサーバ１０２との間、サーバ１０２間において通信することなくジョブを自動的に実行することができる。これによって、ジョブネット実行時における計算機システム内の通信量の削減、及びジョブ実行開始までの遅延時間の削減が可能となる。また、ファイルＩ／Ｏは一般的なものであり、特殊なファイルＩ／Ｏを用いることなく本発明を実現することができる。
【０３８２】
なお、本実施例で例示した種々のソフトウェアは、電磁的、電子的及び光学式等の種々の記録媒体（例えば、非一時的な記憶媒体）に格納可能であり、インターネット等の通信網を通じて、コンピュータにダウンロード可能である。
【０３８３】
さらに、本実施例では、ソフトウェアによる制御を用いた例について説明したが、その一部をハードウェアによって実現することも可能である。
【０３８４】
以上、本発明を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。
【符号の説明】
【０３８５】
１０１  ジョブ管理サーバ
１０２  サーバ
１０３  ファイルサーバ
１０４  ネットワーク
１３１  ジョブスケジューラ
１３２  ジョブ実行管理部
１３３  ファイルシステムクライアント
１３４  ＵＡＰ
１３５  ファイルシステム管理部
１４１  イベント通知準備部
１５１  ジョブ実行制御部
１６１  クライアント側トークン管理部
１６２  トークン監視部
１６３  イベント通知部
１６４  取得トークン情報
１６５  監視対象定義情報
１７１  サーバ側トークン管理部
１７２  トークン付与判定部
１７３  トークン管理情報
１７４  付与定義情報
１７５  ファイル管理情報
【図１】
2014063336.tif 000003
【図２】
2014063336.tif 000004
【図３】
2014063336.tif 000005
【図４】
2014063336.tif 000006
【図５】
2014063336.tif 000007
【図６】
2014063336.tif 000008
【図７】
2014063336.tif 000009
【図８】
2014063336.tif 000010
【図９】
2014063336.tif 000011
【図１０】
2014063336.tif 000012
【図１１】
2014063336.tif 000013
【図１２】
2014063336.tif 000014
【図１３】
2014063336.tif 000015
【図１４】
2014063336.tif 000016
【図１５】
2014063336.tif 000017
【図１６】
2014063336.tif 000018
【図１７】
2014063336.tif 000019