(57)【要約】【課題】複数の計算ホストを備えた計算機システムで、動的に共有ファイルシステムを構成し、ジョブの実行効率を向上させる。【解決手段】複数の計算ホストを含み、要求されたジョブを実行する計算機システムで、複数の計算ホストによってジョブが実行される場合には、ジョブを実行する各計算ホストが、ジョブの実行に必要なファイルを共有し、共有されたファイルにアクセスして、要求されたジョブを実行し、要求されたジョブの実行が完了した後、ファイルの共有を解除する。【選択図】図１
2010152846.tif 000002
【特許請求の範囲】
【請求項１】
複数の計算機を含み、要求されたジョブを実行する計算機システムにおけるファイル共有方法であって、
前記複数の計算機には、前記ジョブを実行する複数の計算ホストが含まれ、
前記各計算ホストは、他の前記計算ホストに接続される第１のインタフェースと、前記第１のインタフェースに接続される第１のプロセッサと、前記第１のプロセッサに接続される第１のメモリと、を備え、
前記方法は、
前記ジョブが複数の計算ホストによって実行される場合には、前記ジョブを実行する各計算ホストの第１のプロセッサが、前記ジョブの実行に必要なファイルを共有し、
前記ジョブを実行する各計算ホストの第１のプロセッサが、前記ファイルにアクセスすることによって、前記要求されたジョブを実行し、
前記要求されたジョブの実行が完了した後、前記要求されたジョブを実行する各計算ホストの第１のプロセッサが、前記ファイルの共有を解除することを特徴とするファイル共有方法。
【請求項２】
前記複数の計算機には、前記ジョブの実行要求を受け付けるジョブスケジューラがさらに含まれ、
前記ジョブスケジューラは、前記計算ホストに接続される第２のインタフェースと、前記第２のインタフェースに接続される第２のプロセッサと、前記第２のプロセッサに接続される第２のメモリと、を備え、
前記方法は、
前記第２のプロセッサが、前記ジョブの実行要求を受け付け、
前記第２のプロセッサが、前記受け付けられたジョブの実行要求に基づいて、前記ジョブを実行する前記計算ホストを選択し、
前記第２のプロセッサが、前記ジョブの実行に必要なファイルの複製を生成し、
前記ジョブを実行する各計算ホストの第１のプロセッサが、前記生成されたファイルの複製を共有することを特徴とする請求項１に記載のファイル共有方法。
【請求項３】
前記各計算ホストは、前記ファイルを格納する記憶装置をさらに備え、
前記方法は、
前記第２のプロセッサが、前記ジョブを実行する計算ホストのうちの一つの計算ホストに前記ファイルの複製を転送し、
前記ファイルの複製が転送された計算ホストの第１のプロセッサが、前記記憶装置に前記ファイルの複製を格納することを特徴とする請求項２に記載のファイル共有方法。
【請求項４】
前記方法は、
前記第２のプロセッサが、前記ファイルを格納する計算ホストを特定するための情報を保持するマスタサーバを、前記計算ホストから選択し、
前記ジョブを実行する各計算ホストの第１のプロセッサが、前記ジョブの実行に必要なファイルにアクセスする場合には、前記マスタサーバに問い合わせることによって、前記ファイルが格納された計算ホストを特定し、
前記ジョブを実行する各計算ホストの第１のプロセッサが、前記特定された計算ホストから前記ジョブの実行に必要なファイルを取得することを特徴とする請求項３に記載のファイル共有方法。
【請求項５】
前記方法は、
前記第２のプロセッサが、前記ファイルの複製を転送する前に、前記ジョブを実行する計算ホストの一覧を含むファイル共有システム構成情報を前記マスタサーバに送信し、
前記マスタサーバの第１のプロセッサが、前記ファイル共有システム構成情報に基づいて、前記ジョブの実行に必要なファイルが格納された計算ホストを特定することを特徴とする請求項４に記載のファイル共有方法。
【請求項６】
前記複数の計算機には、ファイルにアクセスする性能が前記計算ホストより高い複数のＩ／Ｏホストがさらに含まれ、
前記各Ｉ／Ｏホストは、前記ジョブスケジューラ及び前記計算ホストと通信可能な第３のインタフェースと、前記第３のインタフェースに接続される第３のプロセッサと、前記第３のプロセッサに接続される第３のメモリと、前記ファイルを格納する記憶装置と、を備え、
前記方法は、
前記第２のプロセッサが、前記受け付けられたジョブの実行要求に基づいて、前記ファイルを格納する少なくとも一つ以上の前記Ｉ／Ｏホストを選択し、
前記第２のプロセッサが、前記選択されたＩ／Ｏホストに前記生成されたファイルの複製を転送し、
前記選択されたＩ／Ｏホストの第３のプロセッサが、前記複製されたファイルを前記記憶装置に格納し、
前記ジョブを実行する各計算ホストの第１のプロセッサが、前記選択されたＩ／Ｏホストから前記ジョブの実行に必要なファイルを取得することを特徴とする請求項２に記載のファイル共有方法。
【請求項７】
前記方法は、
前記第２のプロセッサが、前記ファイルを格納するＩ／Ｏホストを特定するための情報を保持するマスタサーバを、前記選択されたＩ／Ｏホストから選択し、
前記ジョブを実行する各計算ホストの第１のプロセッサが、前記ジョブの実行に必要なファイルにアクセスする場合には、前記マスタサーバに問い合わせることによって、前記ファイルが格納されたＩ／Ｏホストを特定し、
前記ジョブを実行する各計算ホストの第１のプロセッサが、前記特定されたＩ／Ｏホストから前記ジョブの実行に必要なファイルを取得することを特徴とする請求項６に記載のファイル共有方法。
【請求項８】
前記方法は、
前記第２のプロセッサが、前記ファイルの複製を転送する前に、前記ファイルを格納するＩ／Ｏホストの一覧を含むファイル共有システム構成情報を前記マスタサーバに送信し、
前記マスタサーバの第３のプロセッサが、前記ファイル共有システム構成情報に基づいて、前記ジョブの実行に必要なファイルが格納されたＩ／Ｏホストを特定することを特徴とする請求項７に記載のファイル共有方法。
【請求項９】
前記方法は、前記第２のプロセッサが、前記複数の計算機に含まれる前記計算ホストの数と前記Ｉ／Ｏホストの数との比率に基づいて、前記選択されるＩ／Ｏホストの数を決定することを特徴とする請求項６に記載のファイル共有方法。
【請求項１０】
複数の計算機を含み、要求されたジョブを実行する計算機システムであって、
前記複数の計算機には、前記ジョブを実行する複数の計算ホストが含まれ、
前記各計算ホストは、他の前記計算ホストに接続される第１のインタフェースと、前記第１のインタフェースに接続される第１のプロセッサと、前記第１のプロセッサに接続される第１のメモリと、を備え、
前記ジョブを実行する各計算ホストは、
前記ジョブが複数の計算ホストによって実行される場合には、前記ジョブの実行に必要なファイルを共有し、
前記ファイルにアクセスすることによって、前記要求されたジョブを実行し、
前記要求されたジョブの実行が完了した後、前記ファイルの共有を解除することを特徴とする計算機システム。
【請求項１１】
前記複数の計算機には、前記ジョブの実行要求を受け付けるジョブスケジューラがさらに含まれ、
前記ジョブスケジューラは、前記計算ホストに接続される第２のインタフェースと、前記第２のインタフェースに接続される第２のプロセッサと、前記第２のプロセッサに接続される第２のメモリと、を備え、
前記ジョブスケジューラは、
前記ジョブの実行要求を受け付け、
前記受け付けられたジョブの実行要求に基づいて、前記ジョブを実行する前記計算ホストを選択し、
前記ジョブの実行に必要なファイルの複製を生成し、
前記ジョブを実行する各計算ホストは、前記生成されたファイルの複製を共有することを特徴とする請求項１０に記載の計算機システム。
【請求項１２】
前記各計算ホストは、前記ファイルを格納する記憶装置をさらに備え、
前記ジョブスケジューラは、
前記ジョブを実行する計算ホストのうちの一つの計算ホストに前記ファイルの複製を転送し、
前記ファイルの複製が転送された計算ホストは、前記記憶装置に前記ファイルの複製を格納することを特徴とする請求項１１に記載の計算機システム。
【請求項１３】
前記ジョブスケジューラは、
前記ファイルを格納する計算ホストを特定するための情報を保持するマスタサーバを、前記計算ホストから選択し、
前記ジョブを実行する各計算ホストは、
前記ジョブの実行に必要なファイルにアクセスする場合には、前記マスタサーバに問い合わせることによって、前記ファイルが格納された計算ホストを特定し、
前記特定された計算ホストから前記ジョブの実行に必要なファイルを取得することを特徴とする請求項１２に記載の計算機システム。
【請求項１４】
前記複数の計算機には、ファイルにアクセスする性能が前記計算ホストより高い複数のＩ／Ｏホストがさらに含まれ、
前記各Ｉ／Ｏホストは、前記ジョブスケジューラ及び前記計算ホストと通信可能な第３のインタフェースと、前記第３のインタフェースに接続される第３のプロセッサと、前記第３のプロセッサに接続される第３のメモリと、前記ファイルを格納する記憶装置と、を備え、
前記ジョブスケジューラは、
前記第２のプロセッサが、前記受け付けられたジョブの実行要求に基づいて、前記ファイルを格納する少なくとも一つ以上の前記Ｉ／Ｏホストを選択し、
前記第２のプロセッサが、前記選択されたＩ／Ｏホストに前記生成されたファイルの複製を転送し、
前記選択されたＩ／Ｏホストは、前記複製されたファイルを前記記憶装置に格納し、
前記ジョブを実行する各計算ホストは、前記選択されたＩ／Ｏホストから前記ジョブの実行に必要なファイルを取得することを特徴とする請求項１１に記載の計算機システム。
【請求項１５】
前記ジョブスケジューラは、
前記ファイルを格納するＩ／Ｏホストを特定するための情報を保持するマスタサーバを、前記選択されたＩ／Ｏホストから選択し、
前記ジョブを実行する各計算ホストは、
前記ジョブの実行に必要なファイルにアクセスする場合には、前記マスタサーバに問い合わせることによって、前記ファイルが格納されたＩ／Ｏホストを特定し、
前記特定されたＩ／Ｏホストから前記ジョブの実行に必要なファイルを取得することを特徴とする請求項１４に記載の計算機システム。
【請求項１６】
複数の計算機を含み、要求されたジョブを実行する計算機システムにおいて、前記ジョブの実行を受け付けるジョブスケジューラであって、
前記複数の計算機には、前記ジョブを実行する計算ホストが含まれ、
前記計算ホストに接続されるインタフェースと、前記インタフェースに接続されるプロセッサと、前記プロセッサに接続されるメモリと、を備え、
前記プロセッサは、
前記ジョブの実行要求を受け付け、
前記受け付けられたジョブの実行要求に基づいて、前記ジョブを実行する少なくとも１つの前記計算ホストを選択し、
前記ジョブの実行に必要なファイルを複製し、
複数の前記計算ホストが選択された場合には、前記選択された各計算ホストに、前記複製されたファイルを共有するファイル共有システムの構築を指示し、
前記選択された各計算ホストに、前記受け付けられたジョブの実行を指示し、
前記ジョブの実行が完了した後、前記選択された各計算ホストに、前記構築されたファイル共有システムの解除を指示することを特徴とするジョブスケジューラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の計算ホストを含む計算機システムにおいて、ファイルにアクセスしながらジョブを実行する技術に関する。
【背景技術】
【０００２】
高速なネットワークに接続された数百台から数千台の計算ホストを含む計算機システムを構築する技術が知られている。各計算ホストにはプロセッサが備えられ、一又は複数の計算ホストによって各種処理が実行される。このような計算機システムは、クラスタ計算機システム、超並列計算機システム、又はスーパーコンピュータとして実現されている。このとき、大規模な計算機システムで処理されるデータ量は膨大であるため、高速なファイルアクセスが必要となる。
【０００３】
大規模な計算機システムにおける高速なファイルアクセスを実現するために、非特許文献１には、ファイルステージングと呼ばれる技術が開示されている。ファイルステージングは、ジョブの実行前後にジョブにアクセスされるファイルを計算ホストとログインホストの間で転送する技術である。ファイルステージングによって、各計算ホストで実行されているジョブは、当該計算ホストに備えられるローカルの記憶デバイス上のファイルにアクセスすればよいため、高速なファイルアクセスを実現できる。
【０００４】
また、大規模な計算機システムにおいて、複数の計算ホストで同じファイルを共有する技術として、非特許文献２には、共有ファイルシステムと呼ばれる技術が開示されている。共有ファイルシステムは、ジョブにアクセスされるファイルを計算ホストとログインホストの間で共有する技術である。共有ファイルシステムでは、ジョブにアクセスされるファイルを計算ホストとログインホストの間で転送する必要がない。
【非特許文献１】Ａ．Ｕｎｏ、“Ｓｏｆｔｗａｒｅ  ｏｆ  ｔｈｅ  Ｅａｒｔｈ  Ｓｉｍｕｌａｔｏｒ”、Ｊｏｕｒｎａｌ  ｏｆ  ｔｈｅ  Ｅａｒｔｈ  Ｓｉｍｕｌａｔｏｒ、Ｖｏｌｕｍｅ  ３、Ｓｅｐｔｅｍｂｅｒ  ２００５、５２−５９
【非特許文献２】Ｒ．Ｓａｎｄｂｅｒｇ、“Ｔｈｅ  Ｓｕｎ  Ｎｅｔｗｏｒｋ  Ｆｉｌｅｓｙｓｔｅｍ：  Ｄｅｓｉｇｎ，  Ｉｍｐｌｅｍｅｎｔａｔｉｏｎ  ａｎｄ  Ｅｘｐｅｒｉｅｎ”、ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  Ｓｕｍｍｅｒ  １９８６  ＵＳＥＮＩＸ  Ｔｅｃｈｎｉｃａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ａｎｄ  Ｅｘｈｉｂｉｔｉｏｎ
【発明の開示】
【発明が解決しようとする課題】
【０００５】
非特許文献１に開示されたファイルステージングが適用された計算機システムでは、各計算ホストにローカルなファイルシステムが備えられている。したがって、ジョブにアクセスされるファイルを計算ホストごとに転送する必要がある。
【０００６】
また、大規模な計算機システムでは、計算ホストの実行効率を向上させるため、ジョブの実行中に別のジョブが割り当てられた場合には、ジョブを実行していない他の計算ホストにジョブが割り当てられる。このとき、非特許文献２に開示された共有ファイルシステムが構築されている計算機システムでは、各計算ホストで実行中のジョブによるファイルアクセスがファイル共有を実現するサーバとなるホストに集中してしまう。このため、あるジョブによるファイルアクセスが別のジョブの実行の妨げとなる可能性が生じる。
【０００７】
本発明は、上記の問題点に鑑みてなされたものであり、複数の計算ホストを備えた計算機システムにおいて、ジョブを処理するために割り当てられた計算ホスト間で必要なファイルを、ジョブの実行時に共有することによって、高速なファイル共有を実現することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の代表的な一形態によれば、複数の計算機を含み、要求されたジョブを実行する計算機システムにおけるファイル共有方法であって、前記複数の計算機には、前記ジョブを実行する複数の計算ホストが含まれ、前記各計算ホストは、他の前記計算ホストに接続される第１のインタフェースと、前記第１のインタフェースに接続される第１のプロセッサと、前記第１のプロセッサに接続される第１のメモリと、を備え、前記方法は、前記ジョブが複数の計算ホストによって実行される場合には、前記ジョブを実行する各計算ホストの第１のプロセッサが、前記ジョブの実行に必要なファイルを共有し、前記ジョブを実行する各計算ホストの第１のプロセッサが、前記ファイルにアクセスすることによって、前記要求されたジョブを実行し、前記要求されたジョブの実行が完了した後、前記要求されたジョブを実行する各計算ホストの第１のプロセッサが、前記ファイルの共有を解除する。
【発明の効果】
【０００９】
本発明の一形態によれば、ジョブの実行前に必要なファイルを複製し、ファイルを計算ホストが共有することによって、他のジョブの影響を受けることなくジョブの実行に必要なファイルにアクセスすることができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態を添付図面に基づいて説明する。なお、本発明の実施の形態を説明するためのすべての図面において、同一の構成には原則として同一の符号を付し、共通する説明については省略する。
【００１１】
（第１の実施の形態）
図１は、本発明の第１の実施の形態の計算機システムの構成の一例を示す図である。
【００１２】
本発明の第１の実施の形態の計算機システムは、ログインホスト１１０及び複数の計算ホスト１２０を含む。ログインホスト１１０及び計算ホスト１２０は、ネットワーク１００を介して互いに接続される。また、各計算ホスト１２０間についても、ネットワーク１００を介して互いに接続される。
【００１３】
ログインホスト１１０は、利用者によるジョブの実行を受け付ける。また、要求されたジョブを実行する計算ホスト１２０を選択し、選択された計算ホスト１２０に当該ジョブを実行させるなどの処理（ジョブスケジューリング）を行う。
【００１４】
ログインホスト１１０は、ＣＰＵ１１１、メモリ１１２、記憶デバイス１１３及びネットワークインタフェースカード（ＮＩＣ）１１４を含む。
【００１５】
ＣＰＵ１１１は、メモリ１１２に記憶されたプログラムを実行することによって、ジョブのスケジューリングなどの処理を実行する。
【００１６】
メモリ１１２は、ＣＰＵ１１１によって実行されるプログラム及び当該プログラムの実行に必要なデータを記憶する。例えば、ジョブのスケジューリングを行うためのプログラムを記憶したり、計算ホスト１２０の管理情報を記憶したりする。なお、メモリ１１２に記憶されたプログラム及びデータについては後述する。
【００１７】
記憶デバイス１１３は、プログラム及びファイルを格納する。例えば、記憶デバイス１１３に格納されたプログラムがメモリ１１２にロードされ、ＣＰＵ１１１によって実行される。ＮＩＣ１１４は、ネットワーク１００を介して計算ホスト１２０に接続するためのインタフェースである。
【００１８】
計算ホスト１２０は、ログインホスト１１０によって割り当てられたジョブを実行する。また、単独の計算ホスト１２０でジョブが処理される場合もあるし、複数の計算ホスト１２０でジョブが処理される場合もある。また、計算機システムに含まれる計算ホスト１２０の処理性能は、原則的に同じである。処理性能が相違すると、複数の計算ホスト１２０でジョブを実行する場合に、処理性能が劣る計算ホスト１２０がボトルネックとなるおそれがある。
【００１９】
計算ホスト１２０は、ＣＰＵ１２１、メモリ１２２、記憶デバイス１２３及びＮＩＣ１２４を含む。
【００２０】
ＣＰＵ１２１は、メモリ１２２に記憶されたプログラムを実行することによって、割り当てられたジョブを処理する。
【００２１】
メモリ１２２は、ＣＰＵ１２１によって実行されるプログラム及び当該プログラムの実行に必要なデータを記憶する。例えば、ジョブを実行するためのプログラムを記憶する。なお、メモリ１２２に記憶されたプログラム及びデータについては後述する。
【００２２】
記憶デバイス１２３は、プログラム及びファイルを格納する。例えば、ジョブが割り当てられた際に転送されたプログラムが格納される。格納されたプログラムはメモリ１２２にロードされ、ＣＰＵ１２１に実行されることによって、割り当てられたジョブを処理する。また、ジョブの実行に必要なファイルを格納し、共有ファイルシステムを構成する。
【００２３】
ＮＩＣ１２４は、ネットワーク１００を介して、ログインホスト１１０及び他の計算ホスト１２０に接続するためのインタフェースである。
【００２４】
以上が本発明の第１の実施の形態の計算機システムのハードウェア構成である。続いて、ソフトウェア構成について説明する。
【００２５】
本発明の第１の実施の形態のログインホスト１１０は、ジョブ２００及びジョブスケジューラ２１０をメモリ１１２に記憶する。
【００２６】
ジョブ２００は、利用者によって要求された計算処理を実行するために必要な情報を含む。ジョブ２００には、例えば、データ及び当該データを処理するためのプログラムが含まれる。ジョブ２００は、単数又は複数の計算ホスト１２０によって実行される。
【００２７】
ジョブスケジューラ２１０は、ＣＰＵ１１１によって処理されるプログラムである。ジョブスケジューラ２１０は、ジョブ２００を管理し、例えば、ジョブ２００を計算ホスト１２０に割り当てたり、ジョブ２００の割当を解除したりする。
【００２８】
ジョブスケジューラ２１０は、ジョブ受付部２１１、ジョブスケジュール部２１２、ファイルシステム構成要求部２１３、及びファイルシステム解除要求部２１４を含む。
【００２９】
ジョブ受付部２１１は、利用者から要求されたジョブの実行を受け付ける。ジョブ受付部２１１による処理の詳細については、図５にて後述する。
【００３０】
ジョブスケジュール部２１２は、ジョブキュー２１５に格納されたジョブを取得し、当該ジョブを実行する計算ホスト１２０を割り当てる。さらに、ジョブの実行が終了すると、計算ホスト１２０に対するジョブの割り当てを解除する。ジョブスケジュール部２１２による処理の詳細については、図６及び図７にて後述する。
【００３１】
ファイルシステム構成要求部２１３は、ファイルを共有する計算ホスト１２０を特定し、共有ファイルシステムを構成するように要求する。ファイルシステム構成要求部２１３による処理の詳細については、図８にて後述する。
【００３２】
ファイルシステム解除要求部２１４は、構成された共有ファイルシステムを解除するように要求する。ファイルシステム解除要求部２１４による処理の詳細については、図９にて後述する。
【００３３】
さらに、ジョブスケジューラ２１０は、ジョブキュー２１５及び計算ホスト管理テーブル２１６を含む。ジョブキュー２１５は、利用者に処理を要求されたジョブ２００を、処理が開始されるまで一時的に格納する。
【００３４】
計算ホスト管理テーブル２１６は、計算ホスト１２０の識別情報及び計算ホスト１２０に対するジョブ２００の割り当て状態を保持する。計算ホスト管理テーブル２１６の構成の詳細については、図３にて後述する。
【００３５】
また、本発明の第１の実施の形態の計算ホスト１２０は、プログラム２２０及びファイルシステムプログラム２３０をメモリ１２２に記憶する。
【００３６】
プログラム２２０は、ログインホスト１１０のジョブスケジューラ２１０によって割り当てられたジョブ２００に含まれているプログラムである。ＣＰＵ１２１によってプログラム２２０が実行されることによって、利用者に要求されたジョブが実行される。
【００３７】
ファイルシステムプログラム２３０は、ＣＰＵ１２１に実行されることによって、共有ファイルシステムの構成及び解除、さらに、ファイルアクセスに必要な処理を行う。
【００３８】
ファイルシステムプログラム２３０は、ファイルシステム構成部２３１、ファイルシステム解除部２３２、マスタサーバ部２３３、サブサーバ部２３４、及びクライアント部２３５を含む。
【００３９】
ファイルシステムプログラム２３０は、さらに、ファイルシステム構成ファイル２３６を含む。ファイルシステム構成ファイル２３６には、共有ファイルシステムを構成する計算ホスト１２０の情報などが保持される。
【００４０】
ファイルシステム構成部２３１は、ログインホスト１１０から受信したファイルシステム構成ファイル２３６に基づいて、ファイルシステムを構成する。ファイルシステム構成部２３１による処理の詳細については、図１０にて後述する。
【００４１】
ファイルシステム解除部２３２は、ログインホスト１１０からジョブの完了を通知された場合に、構成されているファイルシステムを解除する。ファイルシステム解除部２３２による処理の詳細については、図１１にて後述する。
【００４２】
本発明の第１の実施の形態の共有ファイルシステムは、マスタサーバ、サブサーバ及びクライアントによって構成される。計算ホスト１２０は、ログインホスト１１０によってジョブ２００が割り当てられると、マスタサーバ、サブサーバ及びクライアントの少なくとも一つ以上の機能を実行する。
【００４３】
クライアントは、ジョブ２００によるファイルのアクセス要求を受け付ける。サブサーバは、共有されるファイルを記憶デバイス１２３に格納する。マスタサーバは、ファイルの格納場所を管理し、クライアントからファイルの格納場所を問い合わせられた場合に、当該ファイルを格納するサブサーバを通知する。
【００４４】
本発明の第１の実施の形態では、複数の計算ホスト１２０でジョブが処理される場合に、各計算ホスト１２０でジョブ２００に含まれるプログラム２２０が実行されるため、各計算ホスト１２０でクライアントの機能が実行される。
【００４５】
マスタサーバ部２３３は、構成された共有ファイルシステム内で、計算ホスト１２０がマスタサーバとして振る舞うための処理を実行する。マスタサーバ部２３３による処理の詳細については、図１２にて後述する。
【００４６】
サブサーバ部２３４は、構成された共有ファイルシステム内で、計算ホスト１２０がサブサーバとして振る舞うための処理を実行する。サブサーバ部２３４による処理の詳細については、図１３にて後述する。
【００４７】
クライアント部２３５は、構成された共有ファイルシステム内で、計算ホスト１２０がクライアントとして振る舞うための処理を実行する。クライアント部２３５による処理の詳細については、図１５にて後述する。
【００４８】
図２は、本発明の第１の実施の形態のジョブ２００の一例を示す図である。
【００４９】
本発明の第１の実施の形態のジョブ２００は、前述のように、要求された計算処理を実行するために必要な情報を含む。図２には、ジョブ２００の実行要求の一形態であるスクリプトファイルが示されている。
【００５０】
さらに具体的に説明すると、ジョブ２００には、実行推定時間３００、使用計算ホスト数３１０、共有ディレクトリ名３２０、ステージインファイルリスト３３０、ステージアウトファイルリスト３４０が定義されている。
【００５１】
実行推定時間３００は、ジョブ２００の処理に必要な時間の推定値である。使用計算ホスト数３１０は、ジョブ２００を処理する計算ホスト１２０の数である。共有ディレクトリ名３２０は、ジョブを処理する計算ホスト間で共有されるファイルを格納する共有ディレクトリの名前である。
【００５２】
ステージインファイルリスト３３０は、共有ディレクトリに格納されるファイルの複製元のファイルのリストである。共有ファイルシステムが構成されると、共有ディレクトリ名３２０によって識別されるディレクトリがマウントされ、ステージインファイルリスト３３０に指定されたファイルが複製される。
【００５３】
ステージアウトファイルリスト３４０は、ジョブ２００の処理結果が出力されるファイルのリストである。ジョブの実行が完了すると、ステージアウトファイルリスト３４０に指定されたファイルがログインホスト１１０に転送される。
【００５４】
図３は、本発明の第１の実施の形態の計算ホスト管理テーブル２１６の一例を示す図である。
【００５５】
計算ホスト管理テーブル２１６には、計算ホスト識別子４００、計算ホスト名４１０、ＩＰアドレス４２０及び実行ジョブ識別子４３０が含まれる。
【００５６】
計算ホスト識別子４００は、計算機システムに含まれる計算ホスト１２０を識別する識別子である。計算ホスト名４１０は、計算ホスト１２０の名前である。ＩＰアドレス４２０は、計算ホスト１２０のＩＰアドレスである。
【００５７】
実行ジョブ識別子４３０は、計算ホスト１２０で実行されているジョブ２００の識別子である。図３を参照すると、実行ジョブ識別子４３０が「１０」のジョブ２００が、計算ホスト「ｃｏｍｐ０」及び「ｃｏｍｐ１」で実行されている。
【００５８】
図４は、本発明の第１の実施の形態のファイルシステム構成ファイル２３６の一例を示す図である。
【００５９】
ログインホスト１１０は、受け付けられたジョブ２００の実行要求に基づいて、共有ファイルシステムの定義情報を含むファイルシステム構成ファイル２３６を作成する。ログインホスト１１０は、作成されたファイルシステム構成ファイル２３６を計算ホスト１２０に送信し、共有ファイルシステムの構築を指示する。
【００６０】
さらに具体的に説明すると、ファイルシステム構成ファイル２３６には、マスタサーバ計算ホスト名５００、サブサーバ計算ホスト名リスト５１０、クライアント計算ホスト名リスト５２０及び共有ディレクトリ名５３０が含まれる。
【００６１】
マスタサーバ計算ホスト名５００は、共有ファイルシステムでマスタサーバとなる計算ホスト１２０の名前である。
【００６２】
サブサーバ計算ホスト名リスト５１０は、サブサーバとなる計算ホスト１２０のリストである。サブサーバ計算ホスト名リスト５１０には、少なくとも一つの計算ホスト１２０の名前が記述される。
【００６３】
クライアント計算ホスト名リスト５２０は、クライアントとなる計算ホスト１２０のリストである。クライアント計算ホスト名リスト５２０には、少なくとも一つの計算ホスト１２０の名前が記述される。
【００６４】
共有ディレクトリ名５３０には、共有ファイルを格納するディレクトリの名前が記述されている。例えば、図２に示したジョブ２００の実行要求に含まれる共有ディレクトリ名３２０が設定される。
【００６５】
図５は、本発明の第１の実施の形態のジョブ受付部２１１によって利用者からジョブ２００の実行要求を受け付ける手順を示すフローチャートである。
【００６６】
ログインホスト１１０のＣＰＵ１１１は、ジョブ受付部２１１を実行することによって、利用者からのジョブ２００の実行要求を受け付ける（ステップ６００）。
【００６７】
ログインホスト１１０のＣＰＵ１１１は、ステップ６００の処理で受け付けられたジョブ２００をジョブキュー２１５に一時的に格納する（ステップ６０１）。
【００６８】
図６は、本発明の第１の実施の形態のジョブスケジュール部２１２によって実行待ちのジョブ２００を計算ホスト１２０に割り当てる手順を示すフローチャートである。
【００６９】
ログインホスト１１０のＣＰＵ１１１は、まず、ジョブキュー２１５に実行待ちのジョブ２００が格納されているか否かを判定する（ステップ７００）。ジョブキュー２１５に実行待ちのジョブ２００が格納されていない場合には（ステップ７００の結果が「Ｎｏ」）、処理対象のジョブ２００が存在しないため、ジョブキュー２１５に実行待ちのジョブ２００が格納されるまで待機する。
【００７０】
ログインホスト１１０のＣＰＵ１１１は、ジョブキュー２１５に実行待ちのジョブ２００が格納されている場合には（ステップ７００の結果が「Ｙｅｓ」）、ジョブ２００を実行するために必要な数の計算ホスト１２０を確保可能か否かを判定する（ステップ７１０）。
【００７１】
具体的には、ステップ７１０の処理は、ジョブが実行されていない計算ホスト１２０の数が、ジョブ２００の実行要求で指定された計算ホスト１２０の数以上であるか否かを判定する処理である。ジョブが実行されていない計算ホスト１２０の数は、計算ホスト管理テーブル２１６を参照し、実行ジョブ識別子４３０に値が登録されていない計算ホスト１２０をカウントすることによって取得することができる。ジョブ２００の実行要求で指定された計算ホスト１２０の数は、図２の使用計算ホスト数３１０で設定された値が対応する。
【００７２】
ログインホスト１１０のＣＰＵ１１１は、ジョブ２００を実行するために必要な数の計算ホスト１２０を確保可能な場合には（ステップ７１０の結果が「Ｙｅｓ」）、ジョブ２００を割り当てる計算ホスト１２０の情報を計算ホスト管理テーブル２１６から取得し、更新する（ステップ７２０）。具体的には、ジョブ２００を割り当てる計算ホスト１２０に対応するレコードを取得し、当該レコードの実行ジョブ識別子４３０に実行対象のジョブ２００の識別子を登録する。
【００７３】
ログインホスト１１０のＣＰＵ１１１は、ジョブ２００を割り当てる計算ホスト１２０の情報に基づいて、ファイルシステム構成要求部２１３を実行することによって、共有ファイルシステムを構築する（ステップ７２１）。
【００７４】
ログインホスト１１０のＣＰＵ１１１は、共有ファイルシステムが構築されると、ジョブキュー２１５から実行待ちのジョブ２００を取得し、取得されたジョブ２００の実行を計算ホスト１２０に要求する（ステップ７２２）。
【００７５】
図７は、本発明の第１の実施の形態のジョブスケジュール部２１２によって計算ホスト１２０に対するジョブ２００の割り当てを解除する手順を示すフローチャートである。
【００７６】
ログインホスト１１０のＣＰＵ１１１は、実行が完了したジョブ２００が存在するか否かを判定する（ステップ８００）。ジョブ２００の完了は、例えば、計算ホスト１２０からジョブ２００の実行完了通知を受信するようにしてもよいし、周期的に計算ホスト１２０に問い合わせるようにしてもよい。
【００７７】
ログインホスト１１０のＣＰＵ１１１は、実行が完了したジョブ２００が存在しない場合には（ステップ８００の結果が「Ｎｏ」）、ジョブ２００の実行が完了するまで待機する。
【００７８】
一方、ログインホスト１１０のＣＰＵ１１１は、実行が完了したジョブ２００が存在する場合には（ステップ８００の結果が「Ｙｅｓ」）、実行が完了したジョブ２００に割り当てられていた計算ホスト１２０の情報を計算ホスト管理テーブル２１６から取得する（ステップ８１０）。
【００７９】
さらに、ログインホスト１１０のＣＰＵ１１１は、ステップ８１０の処理で取得された計算ホスト１２０の情報に基づいてファイルシステム解除要求部２１４を実行し、共有ファイルシステムを解除する（ステップ８１１）。
【００８０】
最後に、ログインホスト１１０のＣＰＵ１１１は、計算ホスト管理テーブル２１６を更新する（ステップ８１２）。具体的には、実行が完了したジョブ２００に割り当てられていた計算ホスト１２０に対応する計算ホスト管理テーブル２１６のレコードの実行ジョブ識別子４３０をクリアする。
【００８１】
図８は、本発明の第１の実施の形態のファイルシステム構成要求部２１３によって共有ファイルシステムの構築を要求する手順を示すフローチャートである。
【００８２】
ログインホスト１１０のＣＰＵ１１１は、まず、ジョブスケジュール部２１２からジョブ２００が割り当てられる計算ホスト１２０の情報を受信する（ステップ９００）。
【００８３】
ログインホスト１１０のＣＰＵ１１１は、受信した計算ホスト１２０の情報に基づいて、ファイルシステム構成ファイル２３６を作成する（ステップ９０１）。ファイルシステム構成ファイル２３６の内容は、一例として図４にて説明したとおりである。以下、図４に示したファイルシステム構成ファイル２３６を参照しながら本処理の詳細を説明する。
【００８４】
ログインホスト１１０のＣＰＵ１１１は、ファイルシステム構成ファイル２３６を作成すると、まず、マスタサーバとなる計算ホスト１２０を登録する（ステップ９０１）。具体的には、ジョブ２００が割り当てられた計算ホスト１２０から一つの計算ホスト１２０を選択し、選択された計算ホスト１２０の名前をファイルシステム構成ファイル２３６のマスタサーバ計算ホスト名５００に登録する。マスタサーバとなる計算ホスト１２０の選択には、例えば、割り当てられた計算ホスト１２０のうちで識別子が最も小さいものを選択すればよい。
【００８５】
ログインホスト１１０のＣＰＵ１１１は、次に、サブサーバとなる計算ホスト１２０を登録する（ステップ９０２）。本発明の第１の実施の形態では、ジョブ２００が割り当てられたすべての計算ホスト１２０がサブサーバとして機能するように、ファイルシステム構成ファイル２３６のサブサーバ計算ホスト名リスト５１０にジョブ２００が割り当てられたすべての計算ホスト１２０を登録する。
【００８６】
さらに、ログインホスト１１０のＣＰＵ１１１は、クライアントとなる計算ホスト１２０を登録する（ステップ９０３）。具体的には、ファイルシステム構成ファイル２３６のクライアント計算ホスト名リスト５２０にジョブ２００が割り当てられたすべての計算ホスト１２０を登録する。本発明の第１の実施の形態では、ジョブ２００が割り当てられたすべての計算ホスト１２０でジョブが実行されるため、ファイルアクセスをともなう処理を実行する際にオーバヘッドを最小限にするため、すべての計算ホスト１２０でクライアント機能を実行させる。
【００８７】
ログインホスト１１０のＣＰＵ１１１は、共有されるファイルが格納されるディレクトリを登録する（ステップ９０４）。具体的には、ジョブ２００で定義された共有ファイルのディレクトリ（図２の共有ディレクトリ名３２０）を共有ディレクトリ名５３０に登録する。
【００８８】
ログインホスト１１０のＣＰＵ１１１は、ステップ９０１の処理で登録された共有ファイルシステムのマスタサーバとなる計算ホスト１２０に、作成したファイルシステム構成ファイル２３６を転送する（ステップ９０５）。このとき、ファイルシステム構成ファイル２３６の転送先の計算ホスト１２０にファイルシステム構成部２３１の実行を指示してもよい。ステップ９０５の処理が終了すると、ジョブ２００を処理する計算ホスト１２０における共有ファイルシステムの構築が完了している。
【００８９】
ログインホスト１１０のＣＰＵ１１１は、ステップ９０３の処理で登録された共有ファイルシステムのクライアントとなる計算ホスト１２０のうちの一つにジョブ２００で利用するファイルを転送する（ステップ９０６）。具体的には、図２のステージインファイルリスト３３０で指定されたファイルである。ファイルを転送する計算ホスト１２０には、例えば、クライアントとなる計算ホスト１２０のうちで識別子が最も小さいものを選択すればよい。
【００９０】
図９は、本発明の第１の実施の形態のファイルシステム解除要求部２１４によって共有ファイルシステムの解除を要求する手順を示すフローチャートである。
【００９１】
ログインホスト１１０のＣＰＵ１１１は、まず、ジョブスケジュール部２１２からジョブ２００が割り当てられた計算ホスト１２０の情報を受信する（ステップ１０００）。
【００９２】
ログインホスト１１０のＣＰＵ１１１は、受信した計算ホスト１２０の情報に基づいて、共有ファイルシステムのクライアントである計算ホスト１２０からジョブ２００によって使用されたファイルを取得する（ステップ１００１）。ジョブ２００によって使用されたファイルは、図２のステージアウトファイルリスト３４０で指定されたファイルに対応する。ファイルを取得するためのクライアントである計算ホスト１２０は、例えば、識別子が最も小さいものを選択すればよい。
【００９３】
最後に、ログインホスト１１０のＣＰＵ１１１は、共有ファイルシステムのマスタサーバとして登録されていた計算ホスト１２０にジョブ２００の実行終了を通知する（ステップ１００２）。
【００９４】
図１０は、本発明の第１の実施の形態のファイルシステム構成部２３１によって共有ファイルシステムを構築する手順を示すフローチャートである。
【００９５】
計算ホスト１２０のＣＰＵ１２１は、ログインホスト１１０のジョブスケジューラ２１０によって送信されたファイルシステム構成ファイル２３６を受信する（ステップ１１００）。
【００９６】
計算ホスト１２０のＣＰＵ１２１は、共有ファイルシステムのマスタサーバとして稼働するために、マスタサーバ部２３３を起動する（ステップ１１０１）。なお、マスタサーバ部２３３による処理の詳細については、図１２にて後述する。
【００９７】
続いて、計算ホスト１２０のＣＰＵ１２１は、ステップ１１００の処理で受信したファイルシステム構成ファイル２３６のサブサーバ計算ホスト名リスト５１０に登録されている計算ホスト１２０にサブサーバ部２３４の起動を指示する（ステップ１１０２）。なお、サブサーバ部２３４による処理の詳細については、図１３にて後述する。
【００９８】
最後に、計算ホスト１２０のＣＰＵ１２１は、ステップ１１００の処理で受信したファイルシステム構成ファイル２３６のクライアント計算ホスト名リスト５２０に登録されている計算ホスト１２０にクライアント部２３５の起動を指示する（ステップ１１０３）。なお、クライアント部２３５による処理の詳細については、図１４にて後述する。
【００９９】
図１０に示す処理によって、共有ファイルシステムの構築が完了すると、ジョブ２００が割り当てられた各計算ホスト１２０でジョブ２００が実行される（図６のステップ７２２）。
【０１００】
図１１は、本発明の第１の実施の形態のファイルシステム解除部２３２によって共有ファイルシステムを解除する手順を示すフローチャートである。
【０１０１】
計算ホスト１２０のＣＰＵ１２１は、ログインホスト１１０のジョブスケジューラ２１０からジョブの終了通知を受信する（ステップ１２００）。
【０１０２】
計算ホスト１２０のＣＰＵ１２１は、ファイルシステム構成ファイル２３６を参照し、サブサーバとして登録されたすべての計算ホスト１２０に、ジョブ２００の実行時に複製されたファイル及びジョブ２００の実行中に生成されたファイルの削除を指示する（ステップ１２０１）。
【０１０３】
計算ホスト１２０のＣＰＵ１２１は、ファイルシステム構成ファイル２３６を参照し、共有ファイルシステムのクライアントとして登録されていたすべての計算ホスト１２０にクライアント部２３５の停止を指示する（ステップ１２０２）。
【０１０４】
計算ホスト１２０のＣＰＵ１２１は、ファイルシステム構成ファイル２３６を参照し、共有ファイルシステムのサブサーバとして登録されていたすべての計算ホスト１２０にサブサーバ部２３４の停止を指示する（ステップ１２０３）。
【０１０５】
最後に、計算ホスト１２０のＣＰＵ１２１は、マスタサーバ部２３３を停止させる（ステップ１２０４）。
【０１０６】
図１２は、本発明の第１の実施の形態の共有ファイルシステムのマスタサーバにおける処理の手順を示すフローチャートである。
【０１０７】
本処理は、マスタサーバ部２３３によって、共有ファイルシステムが解除されるまで継続して実行される。また、マスタサーバとしての機能は、記憶デバイス１２３に格納されたファイルに直接アクセスする処理を含まないため、ジョブの実行又はファイルアクセス処理よりも負荷が小さくなる。そこで、第１の実施の形態では、図４のファイルシステム構成ファイル２３６に示すように、マスタサーバがサブサーバのいずれかと重複して割り当てられている。
【０１０８】
計算ホスト１２０のＣＰＵ１２１は、共有ファイルシステムのクライアントである計算ホスト１２０によって送信されたファイルのアクセス要求を受信する（ステップ１３００）。
【０１０９】
計算ホスト１２０のＣＰＵ１２１は、要求されたファイルを格納しているサブサーバである計算ホスト１２０の情報を、ステップ１３００の処理でアクセス要求を送信した計算ホスト１２０に通知する（ステップ１３０１）。ファイルの格納先であるサブサーバを特定するためには、例えば、共有ディレクトリに格納されたファイルと実際にファイルが格納されている計算ホスト１２０との対応を保持するようにしてもよい。また、その他の一般的なファイル管理方法でサブサーバである計算ホスト１２０を特定してもよい。
【０１１０】
図１３は、本発明の第１の実施の形態の共有ファイルシステムのサブサーバにおける処理の手順を示すフローチャートである。
【０１１１】
本処理は、サブサーバ部２３４によって、共有ファイルシステムが解除されるまで継続して実行される。
【０１１２】
計算ホスト１２０のＣＰＵ１２１は、共有ファイルシステムのクライアントである計算ホスト１２０のクライアント部２３５によって送信されたファイルに対するアクセス要求を受信する（ステップ１４００）。
【０１１３】
計算ホスト１２０のＣＰＵ１２１は、ステップ１４００の処理で受信したアクセス要求に基づいて、記憶デバイス１２３に格納されたファイルにアクセスする（ステップ１４０１）。さらに、要求元のクライアントである計算ホスト１２０に、ファイルに対するアクセス結果を転送する（ステップ１４０２）。
【０１１４】
図１４は、本発明の第１の実施の形態の共有ファイルシステムのクライアントにおける処理の手順を示すフローチャートである。
【０１１５】
本処理は、クライアント部２３５によって、共有ファイルシステムが解除されるまで継続して実行される。
【０１１６】
計算ホスト１２０のＣＰＵ１２１は、ジョブ２００に含まれるプログラム２２０の実行によって要求されたファイルアクセスを受け付ける（ステップ１５００）。
【０１１７】
まず、計算ホスト１２０のＣＰＵ１２１は、共有ファイルシステムのマスタサーバである計算ホスト１２０にファイルに対するアクセス要求を発行する（ステップ１５０１）。
【０１１８】
計算ホスト１２０のＣＰＵ１２１は、マスタサーバである計算ホスト１２０からファイルを実際に格納している記憶デバイス１２３を備えるサブサーバである計算ホスト１２０の情報を受信する（ステップ１５０２）。
【０１１９】
さらに、計算ホスト１２０のＣＰＵ１２１は、ステップ１５０２の処理で受信したサブサーバである計算ホスト１２０の情報に基づいて、ファイルに対するアクセス要求を発行する（ステップ１５０３）。
【０１２０】
計算ホスト１２０のＣＰＵ１２１は、ステップ１５０３の処理で送信したファイルアクセス要求のアクセス結果をサブサーバである計算ホスト１２０から受信する（ステップ１５０４）。
【０１２１】
最後に、計算ホスト１２０のＣＰＵ１２１は、ステップ１５０４の処理で受信したファイルに対するアクセス結果をプログラム２２０へ返す（ステップ１５０５）。
【０１２２】
以上のように、本発明の第１の実施の形態では、ジョブ２００を実行する際に動的に共有ファイルシステムを構築することができる。具体的には、ジョブ２００が受け付けられると（図５）、当該ジョブ２００を処理する計算ホスト１２０が割り当てられる（図６）。そして、ジョブ２００を処理する計算ホスト１２０によって構成される共有ファイルシステムが構築される（図８及び図１０）。そして、構築された共有ファイルシステムにアクセスしながら要求されたジョブ２００が処理される（図１２〜図１４）。そして、ジョブが終了すると、構築されたファイル共有システムが解除される（図９及び図１１）。
【０１２３】
本発明の第１の実施の形態によれば、ジョブ２００が割り当てられた計算ホスト１２０によって構成される共有ファイルシステムを動的に構築することができる。したがって、他のジョブによるファイルアクセスなどを原因とする処理の遅延を防止することができる。また、ジョブ２００の実行に必要なファイルのみを複製して共有ファイルシステムを構築するため、共有ファイルシステムを迅速に構築することができる。
【０１２４】
（第２の実施の形態）
本発明の第１の実施の形態の計算機システムでは、ログインホスト１１０及び計算ホスト１２０によって構成されていたが、第２の実施の形態の計算機システムでは、ファイルアクセスの性能が計算ホスト１２０よりも高い計算機であるＩ／Ｏホストをさらに含む。第２の実施の形態では、Ｉ／Ｏホストがファイルにアクセスすることによって、ジョブの処理に必要な時間を短縮させる。
【０１２５】
以下、図面を参照しながら第２の実施の形態について説明する。なお、第１の実施の形態の共通する内容については適宜省略し、第１の実施の形態との差分を中心に説明する。
【０１２６】
図１５は、本発明の第２の実施の形態の計算機システムの構成の一例を示す図である。
【０１２７】
本発明の第２の実施の形態の計算機システムは、前述したように、ログインホスト１１０及び複数の計算ホスト１２０に加え、複数のＩ／Ｏホスト１６００をさらに含む。ログインホスト１１０、計算ホスト１２０及びＩ／Ｏホスト１６００は、ネットワーク１００を介して接続される。また、複数のＩ／Ｏホスト１６００についても、ネットワーク１００を介して互いに接続される。
【０１２８】
ログインホスト１１０及び計算ホスト１２０のハードウェア構成は、第１の実施の形態と同様である。
【０１２９】
Ｉ／Ｏホスト１６００は、計算ホスト１２０と同様に、ジョブの実行時に動的にジョブに割り当てられる。また、ジョブに割り当てられるＩ／Ｏホスト１６００の数は、計算ホスト１２０の数と同じである必要はない。
【０１３０】
Ｉ／Ｏホスト１６００は、ＣＰＵ１６０１、メモリ１６０２、記憶デバイス１６０３及びＮＩＣ１６０４を含む。ＣＰＵ１６０１は、メモリ１６０２に記憶されたプログラムを実行することによって、ファイルシステムプログラムを実行する。
【０１３１】
メモリ１６０２は、ＣＰＵ１６０１によって実行されるプログラム及び当該プログラムを実行するために必要なデータを記憶する。例えば、ファイルアクセスに必要な制御プログラムを記憶する。
【０１３２】
記憶デバイス１６０３は、プログラム及びファイルを格納する。例えば、共有ファイルシステムが構築された場合に、ジョブ２００によってアクセスされるファイルが格納される。
【０１３３】
ＮＩＣ１６０４は、ネットワーク１００を介して、ログインホスト１１０及び計算ホスト１２０に接続するためのインタフェースである。
【０１３４】
続いて、本発明の第２の実施の形態のソフトウェア構成について説明する。本発明の第２の実施の形態のログインホスト１１０は、第１の実施の形態と同様に、ジョブ２００及びジョブスケジューラ２１０をメモリ１１２に記憶する。
【０１３５】
ジョブ２００は、第１の実施の形態と同様である。一方、ジョブスケジューラ２１０は、第１の実施の形態のジョブスケジューラ２１０の構成に加え、Ｉ／Ｏホスト管理テーブル１７００を有している。
【０１３６】
Ｉ／Ｏホスト管理テーブル１７００は、Ｉ／Ｏホスト１６００の識別情報及びＩ／Ｏホスト１６００に対するジョブ２００の割り当て状態を保持する。なお、Ｉ／Ｏホスト管理テーブル１７００の詳細については、図１６にて後述する。
【０１３７】
また、計算ホスト１２０は、第１の実施の形態と同様に、ファイルシステムプログラム２３０及びプログラム２２０をメモリ１２２に記憶する。ファイルシステムプログラム２３０及びプログラム２２０は、第１の実施の形態と同じでよい。
【０１３８】
なお、ファイルシステムプログラム２３０の構成については、すべてのファイルアクセスをＩ／Ｏホスト１６００を経由して行う場合には、マスタサーバ部２３３及びサブサーバ部２３４を除いた構成としてもよい。
【０１３９】
Ｉ／Ｏホスト１６００は、ファイルシステムプログラム２３０をメモリ１６０２に記憶する。ファイルシステムプログラム２３０の構成は、第１の実施の形態の計算ホスト１２０に備えられたファイルシステムプログラム２３０と同じである。なお、Ｉ／Ｏホスト１６００では、クライアント部２３５を含まない構成としてもよい。
【０１４０】
図１６は、本発明の第２の実施の形態のＩ／Ｏホスト管理テーブル１７００の一例を示す図である。
【０１４１】
Ｉ／Ｏホスト管理テーブル１７００には、Ｉ／Ｏホスト識別子１８００、Ｉ／Ｏホスト名１８１０、ＩＰアドレス１８２０及び割り当てジョブ識別子１８３０が含まれる。
【０１４２】
Ｉ／Ｏホスト識別子１８００は、計算機システムに含まれるＩ／Ｏホスト１６００の識別子である。Ｉ／Ｏホスト名１８１０は、Ｉ／Ｏホスト１６００の名前である。ＩＰアドレス１８２０は、Ｉ／Ｏホスト１６００のＩＰアドレスである。割り当てジョブ識別子１８３０は、Ｉ／Ｏホスト１６００に割り当てられているジョブ２００の識別子である。
【０１４３】
図１７は、本発明の第２の実施の形態のファイルシステム構成ファイル２３６の一例を示す図である。
【０１４４】
ログインホスト１１０は、第１の実施の形態と同様に、受け付けられたジョブ２００の実行要求に基づいて、共有ファイルシステムの定義情報を含むファイルシステム構成ファイル２３６を作成する。ログインホスト１１０は、作成されたファイルシステム構成ファイル２３６をＩ／Ｏホスト１６００に送信し、共有ファイルシステムの構築を指示する。
【０１４５】
ファイルシステム構成ファイル２３６の構成は、形式的には第１の実施の形態と同じである。第２の実施の形態では、マスタサーバ及びサブサーバの機能がＩ／Ｏホスト１６００によって提供されるため、マスタサーバ計算ホスト名５００及びサブサーバ計算ホスト名リスト５１０の代わりにマスタサーバＩ／Ｏホスト名１９００及びサブサーバＩ／Ｏホスト名リスト１９１０を含む。
【０１４６】
図１７に示すファイルシステム構成ファイル２３６によって共有ファイルシステムを構築すると、Ｉ／Ｏホスト識別子が“ｉｏ０”のＩ／Ｏホスト１６００がマスタサーバ、Ｉ／Ｏホスト識別子が“ｉｏ０”及び“ｉｏ１”のＩ／Ｏホスト１６００がサブサーバとして機能する。また、計算ホスト識別子が“ｃｏｍｐ０”及び“ｃｏｍｐ１”の計算ホスト１２０でクライアントとして機能し、要求されたジョブが処理される。
【０１４７】
図１８は、本発明の第２の実施の形態のジョブスケジュール部２１２によって実行待ちのジョブ２００を計算ホスト１２０及びＩ／Ｏホスト１６００に割り当てる手順を示すフローチャートである。
【０１４８】
本発明の第２の実施の形態におけるジョブスケジュール部２１２による処理は、図６に示した第１の実施の形態の手順に加えて、Ｉ／Ｏホスト１６００に関する手順が追加されている。
【０１４９】
まず、ログインホスト１１０のＣＰＵ１１１は、第１の実施の形態と同様に、ジョブキュー２１５に実行待ちのジョブが格納されているか否かを判定し（ステップ７００）、さらに、ジョブ２００を実行するために必要な数の計算ホスト１２０を確保可能か否かを判定する（ステップ７１０）。
【０１５０】
ログインホスト１１０のＣＰＵ１１１は、ジョブ２００を実行するために必要な数の計算ホスト１２０を確保可能である場合には（ステップ７１０の結果が「Ｙｅｓ」）、さらに、ジョブ２００を実行するために必要な数のＩ／Ｏホスト１６００を確保可能か否かを判定する（ステップ２０００）。
【０１５１】
具体的には、Ｉ／Ｏホスト管理テーブル１７００を参照し、割り当てジョブ識別子１８３０に値が登録されていないＩ／Ｏホスト１６００の数を取得し、ジョブ２００を実行するために必要なＩ／Ｏホスト１６００の数以上であるか否かを判定する。Ｉ／Ｏホスト１６００は、ファイルアクセス性能の高い計算機であるため、ジョブの実行に必要な計算ホスト１２０の数よりも少なくてもよい。例えば、ジョブの実行に必要な計算ホスト１２０の数との間で所定の比率を満たせばよい。このとき、所定の比率とは、計算機システムを構成するすべてのＩ／Ｏホスト１６００とすべての計算ホスト１２０との比率としてもよい。また、Ｉ／Ｏホスト１６００の性能などに基づいて設定してもよい。
【０１５２】
ログインホスト１１０のＣＰＵ１１１は、ジョブ２００を実行するために必要な数のＩ／Ｏホスト１６００を確保できない場合には（ステップ２０００の結果が「Ｎｏ」）、実行中のジョブが完了するまで待機する。
【０１５３】
一方、ログインホスト１１０のＣＰＵ１１１は、ジョブ２００を実行するために必要な数のＩ／Ｏホスト１６００を確保可能な場合には（ステップ２０００の結果が「Ｙｅｓ」）、第１の実施の形態と同様に、計算ホスト管理テーブル２１６を更新し（ステップ７２０）、ファイルシステム構成要求部２１３を実行する（ステップ７２１）。
【０１５４】
さらに、ログインホスト１１０のＣＰＵ１１１は、Ｉ／Ｏホスト管理テーブル１７００からジョブ２００の実行に必要な数のＩ／Ｏホスト１６００の情報を取得し、各Ｉ／Ｏホスト１６００の割り当てジョブ識別子１８３０にジョブ２００の識別子を登録する（ステップ２０１０）。
【０１５５】
ログインホスト１１０のＣＰＵ１１１は、共有ファイルシステムを構築するために、ステップ２０１０の処理で取得されたＩ／Ｏホスト１６００の情報をファイルシステム構成要求部２１３に送信する（ステップ２０１１）。
【０１５６】
最後に、ログインホスト１１０のＣＰＵ１１１は、共有ファイルシステムが構築されると、ジョブキュー２１５から実行待ちのジョブ２００を取得し、取得されたジョブ２００の実行を計算ホスト１２０に要求する（ステップ７２２）。
【０１５７】
図１９は、本発明の第２の実施の形態のジョブスケジュール部２１２によって計算ホスト１２０及びＩ／Ｏホスト１６００に対するジョブ２００の割り当てを解除する手順を示すフローチャートである。
【０１５８】
ログインホスト１１０のＣＰＵ１１１は、実行中のジョブが完了すると（ステップ８００の結果が「Ｙｅｓ」）、第１の実施の形態と同様に、実行が完了したジョブの計算ホスト１２０に対する割り当てを解除する（ステップ８１０〜８１２）。
【０１５９】
ログインホスト１１０のＣＰＵ１１１は、さらに、Ｉ／Ｏホスト管理テーブル１７００を参照し、割り当てジョブ識別子１８３０に実行が終了したジョブ２００の識別子が登録されているＩ／Ｏホスト１６００の情報を取得する（ステップ２１００）。
【０１６０】
ログインホスト１１０のＣＰＵ１１１は、ステップ２１００の処理で取得されたＩ／Ｏホスト１６００の情報をファイルシステム解除要求部２１４に送信する（ステップ２１０１）。最後に、取得された各Ｉ／Ｏホスト１６００の割り当てジョブ識別子１８３０をクリアする（ステップ２１０２）。
【０１６１】
図２０は、本発明の第２の実施の形態のファイルシステム構成要求部２１３によって共有ファイルシステムの構築を要求する手順を示すフローチャートである。
【０１６２】
本発明の第２の実施の形態におけるファイルシステム構成要求部２１３による処理は、図８に示した第１の実施の形態の手順に加えて、Ｉ／Ｏホスト１６００に関する手順を有している。
【０１６３】
ログインホスト１１０のＣＰＵ１１１は、ジョブスケジュール部２１２から計算ホスト１２０の情報を受信した後（ステップ９００）、ジョブ２００に割り当てられたＩ／Ｏホスト１６００の情報を受信する（ステップ２２００）。
【０１６４】
ログインホスト１１０のＣＰＵ１１１は、受信したＩ／Ｏホスト１６００の情報に基づいて、ファイルシステム構成ファイル２３６を作成し、マスタサーバとなるＩ／Ｏホスト１６００を登録する（ステップ２２０１）。例えば、割り当てられたＩ／Ｏホスト１６００のうちで識別子が最も小さいものを選択して登録すればよい。
【０１６５】
ログインホスト１１０のＣＰＵ１１１は、次に、サブサーバとなるＩ／Ｏホスト１６００を登録する（ステップ２２０２）。具体的には、図１７に示したファイルシステム構成ファイル２３６のサブサーバＩ／Ｏホスト名リスト１９１０にジョブ２００に割り当てられたすべてのＩ／Ｏホスト１６００を登録する。
【０１６６】
ログインホスト１１０のＣＰＵ１１１は、第１の実施の形態と同様に、クライアントとなる計算ホスト１２０を登録する（ステップ９０３）。さらに、共有されるファイルが格納されるディレクトリを登録する（ステップ９０４）。
【０１６７】
ログインホスト１１０のＣＰＵ１１１は、ステップ２２０１の処理で登録された共有ファイルシステムのマスタサーバとなるＩ／Ｏホスト１６００に、作成したファイルシステム構成ファイル２３６を転送する（ステップ２２１０）。
【０１６８】
最後に、ログインホスト１１０のＣＰＵ１１１は、ステップ９０３の処理で登録された共有ファイルシステムのクライアントとなる計算ホスト１２０のうちの一つにジョブ２００で利用するファイルを転送する（ステップ９０６）。
【０１６９】
図２１は、本発明の第２の実施の形態のファイルシステム解除要求部２１４によって共有ファイルシステムの解除を要求する手順を示すフローチャートである。
【０１７０】
本発明の第２の実施の形態におけるファイルシステム解除要求部２１４による処理は、図９に示した第１の実施の形態の手順に加えて、Ｉ／Ｏホスト１６００に関する手順を有している。
【０１７１】
ログインホスト１１０のＣＰＵ１１１は、第１の実施の形態と同様に、ジョブスケジュール部２１２からジョブ２００が割り当てられた計算ホスト１２０の情報を受信し（ステップ１０００）、クライアントの計算ホスト１２０からジョブ２００で使用されたファイルを取得する（ステップ１００１）。
【０１７２】
さらに、ログインホスト１１０のＣＰＵ１１１は、ジョブスケジュール部２１２からジョブ２００が割り当てられたＩ／Ｏホスト１６００の情報を受信し（ステップ２３００）、共有ファイルシステムのマスタサーバとして登録されていたＩ／Ｏホスト１６００にジョブ２００の実行終了を通知する（ステップ２３０１）。
【０１７３】
図２２は、本発明の第２の実施の形態のファイルシステム構成部２３１によって共有ファイルシステムを構築する手順を示すフローチャートである。
【０１７４】
本発明の第２の実施の形態におけるファイルシステム構成部２３１による処理は、図１０に示した第１の実施の形態の手順が一部変更され、Ｉ／Ｏホスト１６００に関する手順を含んでいる。また、第１の実施の形態では、本処理は計算ホスト１２０によって実行されていたが、第２の実施の形態では、Ｉ／Ｏホスト１６００によって実行される。
【０１７５】
Ｉ／Ｏホスト１６００のＣＰＵ１６０１は、ログインホスト１１０のジョブスケジューラ２１０によって送信されたファイルシステム構成ファイル２３６を受信し（ステップ１１００）、マスタサーバ部２３３を起動する（ステップ１１０１）。なお、マスタサーバ部２３３の詳細については、図２４にて後述する。
【０１７６】
Ｉ／Ｏホスト１６００のＣＰＵ１６０１は、ステップ１１００の処理で受信したファイルシステム構成ファイル２３６のサブサーバＩ／Ｏホスト名リスト１９１０に登録されているすべてのＩ／Ｏホスト１６００にサブサーバ部２３４の起動を指示する（ステップ２４００）。なお、サブサーバ部２３４による処理は、動作主体が計算ホスト１２０からＩ／Ｏホスト１６００に変更されたこと以外は、図１３に示した第１の実施の形態における処理と同じである。
【０１７７】
最後に、Ｉ／Ｏホスト１６００のＣＰＵ１６０１は、ステップ１１００の処理で受信したファイルシステム構成ファイル２３６のクライアント計算ホスト名リスト５２０に登録されている計算ホスト１２０にクライアント部２３５の起動を指示する（ステップ１１０３）。なお、クライアント部２３５による処理の詳細については、図２５にて後述する。
【０１７８】
図２３は、本発明の第２の実施の形態のファイルシステム解除部２３２によって共有ファイルシステムを解除する手順を示すフローチャートである。
【０１７９】
本発明の第２の実施の形態におけるファイルシステム解除部２３２による処理は、図１１に示した第１の実施の形態の手順が一部変更され、Ｉ／Ｏホスト１６００に関する手順を含んでいる。
【０１８０】
Ｉ／Ｏホスト１６００のＣＰＵ１６０１は、ログインホスト１１０のジョブスケジューラ２１０からジョブの終了通知を受信する（ステップ１２００）。
【０１８１】
Ｉ／Ｏホスト１６００のＣＰＵ１６０１は、ファイルシステム構成ファイル２３６を参照し、サブサーバとして登録されたすべてのＩ／Ｏホスト１６００に、ジョブ２００の実行時に複製されたファイル及びジョブ２００の実行中に生成されたファイルの削除を指示する（ステップ２５００）。
【０１８２】
Ｉ／Ｏホスト１６００のＣＰＵ１６０１は、第１の実施の形態と同様に、ファイルシステム構成ファイル２３６を参照し、クライアントとして登録されていたすべての計算ホスト１２０にクライアント部２３５の停止を指示する（ステップ１２０２）。
【０１８３】
Ｉ／Ｏホスト１６００のＣＰＵ１６０１は、ファイルシステム構成ファイル２３６を参照し、サブサーバとして登録されていたすべてのＩ／Ｏホスト１６００にサブサーバ部２３４の停止を指示する（ステップ２５１０）。
【０１８４】
最後に、Ｉ／Ｏホスト１６００のＣＰＵ１６０１は、マスタサーバ部２３３を停止させる（ステップ１２０４）。
【０１８５】
図２４は、本発明の第２の実施の形態の共有ファイルシステムのマスタサーバにおける処理の手順を示すフローチャートである。
【０１８６】
本発明の第２の実施の形態におけるマスタサーバ部２３３による処理は、図１２に示した第１の実施の形態の手順が一部変更され、Ｉ／Ｏホスト１６００に関する手順を含んでいる。
【０１８７】
Ｉ／Ｏホスト１６００のＣＰＵ１６０１は、共有ファイルシステムのクライアントである計算ホスト１２０から送信されたファイルのアクセス要求を受信する（ステップ１３００）。
【０１８８】
Ｉ／Ｏホスト１６００のＣＰＵ１６０１は、要求されたファイルを格納しているサブサーバであるＩ／Ｏホスト１６００の情報を、ステップ１３００の処理でアクセス要求を送信した計算ホスト１２０に通知する（ステップ２６００）。
【０１８９】
図２５は、本発明の第２の実施の形態の共有ファイルシステムのクライアントにおける処理の手順を示すフローチャートである。
【０１９０】
本発明の第２の実施の形態におけるクライアント部２３５による処理は、図１４に示した第１の実施の形態の手順が一部変更され、Ｉ／Ｏホスト１６００に関する手順を含んでいる。
【０１９１】
計算ホスト１２０のＣＰＵ１２１は、第１の実施の形態と同様に、ジョブ２００に含まれるプログラム２２０の実行によって要求されたファイルアクセスを受け付ける（ステップ１５００）。
【０１９２】
計算ホスト１２０のＣＰＵ１２１は、共有ファイルシステムのマスタサーバであるＩ／Ｏホスト１６００にファイルに対するアクセス要求を発行する（ステップ２７００）。
【０１９３】
計算ホスト１２０のＣＰＵ１２１は、マスタサーバである計算ホスト１２０からアクセスするファイルを格納しているサブサーバであるＩ／Ｏホスト１６００の情報を受信する（ステップ２７０１）。
【０１９４】
さらに、計算ホスト１２０のＣＰＵ１２１は、ステップ２７０１の処理で受信したサブサーバであるＩ／Ｏホスト１６００の情報に基づいて、ファイルに対するアクセス要求を発行する（ステップ２７０２）。
【０１９５】
最後に、計算ホスト１２０のＣＰＵ１２１は、ステップ２７０２の処理で送信したファイルアクセス要求のアクセス結果をサブサーバであるＩ／Ｏホスト１６００から受信する（ステップ２７０３）。
【０１９６】
最後に、計算ホスト１２０のＣＰＵ１２１は、ステップ２７０３の処理で受信したファイルに対するアクセス結果をプログラム２２０へ返す（ステップ１５０５）。
【０１９７】
本発明の第２の実施の形態によれば、第１の実施の形態と同様に、ジョブ２００が割り当てられた計算ホスト１２０によって構成される共有ファイルシステムを動的に構築することができる。したがって、他のジョブによるファイルアクセスなどを原因とする処理の遅延を防止することができる。また、ジョブ２００の実行に必要なファイルのみを複製して共有ファイルシステムを構築するため、共有ファイルシステムを迅速に構築することができる。
【０１９８】
さらに、本発明の第２の実施の形態によれば、計算ホスト１２０よりもファイルアクセスの性能が高いＩ／Ｏホスト１６００によって実行されるため、ジョブの実行時にボトルネックとなりやすいファイルアクセスを高速に処理することができる。特に、ファイルアクセスの頻度が高い場合又はサイズの大きいファイルにアクセスする場合など、ファイルアクセスの負荷が高いジョブの実行時に性能を向上させることが可能となる。
【０１９９】
以上、実施の形態に基づいて本発明を具体的に説明したが、本発明は上記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【産業上の利用可能性】
【０２００】
本発明は、計算機システムにおけるファイルへのアクセスの管理に適用することが可能であり、特に、大規模な計算機システムにおけるファイルへの共有アクセスの管理に適用することが可能である。
【図面の簡単な説明】
【０２０１】
【図１】本発明の第１の実施の形態の計算機システムの構成の一例を示す図である。
【図２】本発明の第１の実施の形態のジョブの一例を示す図である。
【図３】本発明の第１の実施の形態の計算ホスト管理テーブルの一例を示す図である。
【図４】本発明の第１の実施の形態のファイルシステム構成ファイルの一例を示す図である。
【図５】本発明の第１の実施の形態のジョブ受付部によって利用者からジョブの実行要求を受け付ける手順を示すフローチャートである。
【図６】本発明の第１の実施の形態のジョブスケジュール部によって実行待ちのジョブを計算ホストに割り当てる手順を示すフローチャートである。
【図７】本発明の第１の実施の形態のジョブスケジュール部によって計算ホストに対するジョブの割り当てを解除する手順を示すフローチャートである。
【図８】本発明の第１の実施の形態のファイルシステム構成要求部によって共有ファイルシステムの構築を要求する手順を示すフローチャートである。
【図９】本発明の第１の実施の形態のファイルシステム解除要求部によって共有ファイルシステムの解除を要求する手順を示すフローチャートである。
【図１０】本発明の第１の実施の形態のファイルシステム構成部によって共有ファイルシステムを構築する手順を示すフローチャートである。
【図１１】本発明の第１の実施の形態のファイルシステム解除部によって共有ファイルシステムを解除する手順を示すフローチャートである。
【図１２】本発明の第１の実施の形態の共有ファイルシステムのマスタサーバにおける処理の手順を示すフローチャートである。
【図１３】本発明の第１の実施の形態の共有ファイルシステムのサブサーバにおける処理の手順を示すフローチャートである。
【図１４】本発明の第１の実施の形態の共有ファイルシステムのクライアントにおける処理の手順を示すフローチャートである。
【図１５】本発明の第２の実施の形態の計算機システムの構成の一例を示す図である。
【図１６】本発明の第２の実施の形態のＩ／Ｏホスト管理テーブルの一例を示す図である。
【図１７】本発明の第２の実施の形態のファイルシステム構成ファイルの一例を示す図である。
【図１８】本発明の第２の実施の形態のジョブスケジュール部によって実行待ちのジョブを計算ホスト及びＩ／Ｏホストに割り当てる手順を示すフローチャートである。
【図１９】本発明の第２の実施の形態のジョブスケジュール部によって計算ホスト及びＩ／Ｏホストに対するジョブの割り当てを解除する手順を示すフローチャートである。
【図２０】本発明の第２の実施の形態のファイルシステム構成要求部によって共有ファイルシステムの構築を要求する手順を示すフローチャートである。
【図２１】本発明の第２の実施の形態のファイルシステム解除要求部によって共有ファイルシステムの解除を要求する手順を示すフローチャートである。
【図２２】本発明の第２の実施の形態のファイルシステム構成部によって共有ファイルシステムを構築する手順を示すフローチャートである。
【図２３】本発明の第２の実施の形態のファイルシステム解除部によって共有ファイルシステムを解除する手順を示すフローチャートである。
【図２４】本発明の第２の実施の形態の共有ファイルシステムのマスタサーバにおける処理の手順を示すフローチャートである。
【図２５】本発明の第２の実施の形態の共有ファイルシステムのクライアントにおける処理の手順を示すフローチャートである。
【符号の説明】
【０２０２】
１００  ネットワーク
１１０  ログインホスト
１１１  ＣＰＵ
１１２  メモリ
１１３  記憶デバイス
１１４  ＮＩＣ
１２０  計算ホスト
１２１  ＣＰＵ
１２２  メモリ
１２３  記憶デバイス
１２４  ＮＩＣ
２００  ジョブ
２１０  ジョブスケジューラ
２１１  ジョブ受付部
２１２  ジョブスケジュール部
２１３  ファイルシステム構成要求部
２１４  ファイルシステム解除要求部
２１５  ジョブキュー
２１６  計算ホスト管理テーブル
２２０  プログラム
２３０  ファイルシステムプログラム
２３１  ファイルシステム構成部
２３２  ファイルシステム解除部
２３３  マスタサーバ部
２３４  サブサーバ部
２３５  クライアント部
２３６  ファイルシステム構成ファイル
３００  実行推定時間
３１０  使用計算ホスト数
３２０  共有ディレクトリ名
３３０  ステージインファイルリスト
３４０  ステージアウトファイルリスト
４００  計算ホスト識別子
４１０  計算ホスト名
４２０  ＩＰアドレス
４３０  実行ジョブ識別子
５００  マスタサーバ計算ホスト名
５１０  サブサーバ計算ホスト名リスト
５２０  クライアント計算ホスト名リスト
５３０  共有ディレクトリ名
１６００  Ｉ／Ｏホスト
１６０１  ＣＰＵ
１６０２  メモリ
１６０３  記憶デバイス
１６０４  ＮＩＣ
１７００  Ｉ／Ｏホスト管理テーブル
１８００  Ｉ／Ｏホスト識別子
１８１０  Ｉ／Ｏホスト名
１８２０  ＩＰアドレス
１８３０  割り当てジョブ識別子
１９００  マスタサーバＩ／Ｏホスト名
１９１０  サブサーバＩ／Ｏホスト名リスト
【図１】
2010152846.tif 000003
【図２】
2010152846.tif 000004
【図３】
2010152846.tif 000005
【図４】
2010152846.tif 000006
【図５】
2010152846.tif 000007
【図６】
2010152846.tif 000008
【図７】
2010152846.tif 000009
【図８】
2010152846.tif 000010
【図９】
2010152846.tif 000011
【図１０】
2010152846.tif 000012
【図１１】
2010152846.tif 000013
【図１２】
2010152846.tif 000014
【図１３】
2010152846.tif 000015
【図１４】
2010152846.tif 000016
【図１５】
2010152846.tif 000017
【図１６】
2010152846.tif 000018
【図１７】
2010152846.tif 000019
【図１８】
2010152846.tif 000020
【図１９】
2010152846.tif 000021
【図２０】
2010152846.tif 000022
【図２１】
2010152846.tif 000023
【図２２】
2010152846.tif 000024
【図２３】
2010152846.tif 000025
【図２４】
2010152846.tif 000026
【図２５】
2010152846.tif 000027