(57)【要約】【課題】複数の管理対象サーバで共有される共有ディスクにおいて、ファイル管理に必要な容量を低減することを目的とする。【解決手段】管理サーバ１０１は、情報を処理する処理部と、情報を記憶する記憶部とを備え、処理部は、端末１０６からファイルシステムを集約する旨の要求を受け付けると、要求によって指定されたファイルシステムを識別する情報を記憶部に格納し、記憶部に格納されたファイルシステムを識別する情報で指定されるファイルシステムを集約の基準として、集約の基準となるファイルシステムと他のファイルシステムとにおいて、ファイルの構成が同じになるように、他のファイルシステムにおけるファイルの構成を更新する。【選択図】図１
2008210325.tif 000002
【特許請求の範囲】
【請求項１】
端末との通信が可能であり、複数の管理対象サーバのそれぞれに割り当てられるファイル群であるファイルシステムを、前記複数の管理対象サーバで共有される共有ディスクにて管理する管理サーバであって、
情報を処理する処理部と、情報を記憶する記憶部とを備え、
前記処理部は、
前記端末からファイルシステムを集約する旨の要求を受け付けると、当該要求によって指定されたファイルシステムを識別する情報を前記記憶部に格納し、
前記記憶部に格納されたファイルシステムを識別する情報で指定されるファイルシステムを集約の基準として、当該集約の基準となるファイルシステムと他のファイルシステムとにおいて、ファイルの構成が同じになるように、前記他のファイルシステムにおけるファイルの構成を更新する
ことを特徴とする管理サーバ。
【請求項２】
端末との通信が可能であり、複数の管理対象サーバのそれぞれに割り当てられるファイル群であるファイルシステムを、前記複数の管理対象サーバで共有される共有ディスクにて管理し、かつ、情報を処理する処理部と、情報を記憶する記憶部とを備えた管理サーバによるファイル管理方法であって、
前記処理部は、
前記端末からファイルシステムを集約する旨の要求を受け付けると、当該要求によって指定されたファイルシステムを識別する情報を前記記憶部に格納し、
前記記憶部に格納されたファイルシステムを識別する情報で指定されるファイルシステムを集約の基準として、当該集約の基準となるファイルシステムと他のファイルシステムとにおいて、ファイルの構成が同じになるように、前記他のファイルシステムにおけるファイルの構成を更新する
ことを特徴とするファイル管理方法。
【請求項３】
前記処理部は、
ファイルの名称およびファイルの格納位置の組み合わせを識別するファイル識別子と、ファイルシステムを識別する情報とを対応させて前記記憶部に格納し、
前記集約の基準となるファイルシステムを識別する情報と対応されたファイル識別子の組み合わせと同じになるように、前記他のファイルシステムを識別する情報と対応されたファイル識別子の組み合わせを更新することによって、前記他のファイルシステムにおけるファイルの構成を更新する
ことを特徴とする請求項２に記載のファイル管理方法。
【請求項４】
前記管理サーバは、
前記複数の管理対象サーバとネットワークを介して通信を行う通信部をさらに備え、
前記処理部は、
前記管理対象サーバを識別するサーバ識別子と、ファイルシステムを識別する情報とを対応させて格納するとともに、ファイルの名称と、ファイルの格納位置とを対応させて前記記憶部に格納し、
前記管理対象サーバから前記通信部を介して、ファイル名称およびサーバ識別子を含んだファイル格納先確認要求を受け付けると、前記サーバ識別子に対応するファイルシステムを識別する情報を前記記憶部から取得し、取得したファイルシステムを識別する情報に対応するファイル識別子を前記記憶部から取得し、取得したファイル識別子に対応するファイルの格納位置を、前記通信部を介して、前記管理対象サーバに通知する
ことを特徴とする請求項３に記載のファイル管理方法。
【請求項５】
前記処理部は、
前記共有ディスクの使用量および空き容量を監視し、当該監視の結果、前記共有ディスクの空き容量の不足を検出した場合、前記管理対象サーバに割り当てたファイルシステムを構成するファイルを集約することで空き容量の確保を試み、
ファイルの集約においても空き容量の確保が困難である場合は、前記端末を介してオペレータにアラートを出す
ことを特徴とする請求項２ないし請求項４のいずれか１項に記載のファイル管理方法。
【請求項６】
請求項２ないし請求項５のいずれか１項に記載のファイル管理方法を計算機に実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ間で共有されたファイルシステムに係り、特に、ファイルシステムへの更新差分ファイルをサーバ個別に保存し、これを再びサーバ間で共有させるファイルシステムに関する。
【背景技術】
【０００２】
従来、サーバの動作に必要なデータ（例えば、オペレーティングシステムやアプリケーションソフトウェアなどのプログラム）を、サーバ外部に設置した共有ディスクに保存することで、データの集中管理を実現する。しかし、サーバから共有ディスクへの書き込み要求があった場合に、共有ディスクに対して直接データの書き込みを行うと、例えば、書き込みの段階で他のサーバから共有ディスクに対する読み取りを行う際に、サーバが異常動作する場合がある。
【０００３】
このようなサーバの異常動作を防止するために、サーバから共有ディスクへの書き込み要求があった場合に、管理サーバが、共有ディスクのデータを別の共有ディスクに複写し、複写先共有ディスクを対象に書き込みを行う技術がある（例えば、特許文献１参照）。このような技術によれば、前記したようなサーバの異常動作を防止することができる。書き込み操作が実行されると、書き込み要求を行ったサーバは、複製先共有ディスク内のデータを参照することとなる。
【特許文献１】特開２００５−３２６９１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、前記した特許文献１に開示されている技術では、書き込み要求に応じて、共有ディスクに保存したデータを複製するため、各サーバからの書き込み要求に耐えうるだけの十分な容量を持った共有ディスクを、あらかじめ用意しておく必要がある。もし、十分な容量を持った共有ディスクが確保できない場合、サーバから許容以上の書き込み要求が発生すると、共有ディスクの空き容量を圧迫し、オペレーティングシステムやアプリケーションプログラムの動作に影響を与えるなど、サーバに重大な問題が生じることがある。
【０００５】
そこで、本発明は、複数の管理対象サーバで共有される共有ディスクにおいて、ファイル管理に必要な容量を低減することを目的とする。
【課題を解決するための手段】
【０００６】
前記した課題を解決するために、本発明の管理サーバは、端末との通信が可能であり、複数の管理対象サーバのそれぞれに割り当てられるファイル群であるファイルシステムを、複数の管理対象サーバで共有される共有ディスクにて管理する。また、管理サーバは、情報を処理する処理部と、情報を記憶する記憶部とを備え、処理部は、端末からファイルシステムを集約する旨の要求を受け付けると、要求によって指定されたファイルシステムを識別する情報を記憶部に格納し、記憶部に格納されたファイルシステムを識別する情報で指定されるファイルシステムを集約の基準として、集約の基準となるファイルシステムと他のファイルシステムとにおいて、ファイルの構成が同じになるように、他のファイルシステムにおけるファイルの構成を更新する。
【発明の効果】
【０００７】
本発明によれば、複数の管理対象サーバで共有される共有ディスクにおいて、ファイル管理に必要な容量を低減することが可能である。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の一実施形態を図面により詳細に説明する。なお、本実施形態によって本発明が限定されるものではない。
【０００９】
図１は、本発明の一実施形態によるファイル管理システムの構成を示すブロック図である。まず、図１を参照して、ファイル管理システムの構成について説明する。
【００１０】
図１に示すように、ファイル管理システム１は、ネットワークスイッチ１０４に、管理サーバ１０１および複数のサーバ１０２が接続され、ファイバチャネルスイッチ１０５に、管理サーバ１０１、複数のサーバ（管理対象サーバ）１０２および１つまたは複数の共有ディスク１０３が接続されている。管理サーバ１０１には、オペレータが操作する端末１０６が接続されている。
【００１１】
ネットワークスイッチ１０４は、インターネットプロトコルなどによる通信ネットワーク（例えば、ＬＡＮ（Local Area Network））の一構成要素である。この通信ネットワークを介して、管理サーバ１０１および各サーバ１０２は、相互に通信可能にされている。
【００１２】
ファイバチャネルスイッチ１０５は、例えば、ＳＡＮ（Storage Area Network））などによる通信ネットワークの一構成要素である。この通信ネットワークを介して、管理サーバ１０１および各サーバ１０２は、共有ディスク１０３と通信可能にされている。
【００１３】
なお、ネットワークスイッチ１０４およびファイバチャネルスイッチ１０５としては、同種のスイッチをそれぞれに設置することとしてもよい。
【００１４】
端末１０６は、オペレータからの情報の入力を受け付ける入力部（マウスなど）およびオペレータに情報を出力する出力部（ディスプレイ）を備える。端末１０６は、オペレータから入力された情報に基づいて、管理サーバ１０１に、ファイルシステムをサーバ１０２に新規に割り当てる要求である割り当て要求を出す機能を有する。ファイルシステムとは、サーバ１０２ごとに割り当てられるファイル群であり、ファイル群を構成するファイルの数は特に限定されるものではない。また、端末１０６は、オペレータから入力された情報に基づいて、管理サーバ１０１に、共有ディスク１０３に格納されているファイルを集約する要求である集約要求を出す機能を有する。
【００１５】
サーバ１０２は、共有ディスク１０３に格納されているファイルに対する入力処理または出力処理であるファイルＩ／Ｏ処理を行う際に、管理サーバ１０１に対してファイルＩ／Ｏ処理要求を出す機能を有する。サーバ１０２の構成に関する詳細な説明は、図３を参照して後記する。
【００１６】
管理サーバ１０１は、サーバ１０２からファイルＩ／Ｏ処理要求を受け付けると、サーバ１０２にファイルの格納先を通知する機能を有する。また、端末１０６から、割り当て要求を受け付けると、ファイルシステムを新規に割り当てる機能を有する。さらに、端末１０６から、集約要求を受け付けると、共有ディスク１０３に格納されているファイルを集約する機能を有する。管理サーバ１０１の構成に関する詳細な説明は、図２を参照して後記する。また、所定の時間ごとに共有ディスク１０３の容量を監視し、容量の不足を検出した場合には、共有ディスク１０３に格納されている重複ファイルを集約する機能を有する。
【００１７】
図２は、図１に示した管理サーバ１０１の構成例を示す。図２を参照して（適宜図１参照）、管理サーバ１０１の構成例について説明する。
【００１８】
管理サーバ１０１は、メモリ２０１と、プロセッサ２０２と、ＨＢＡ（Host Bus Adapter）２０３と、ＮＩＣ（Network Interface Card）２０４とを備える計算機である。
【００１９】
ＨＢＡ２０３は、管理サーバ１０１がＳＡＮに接続するために用いられるアダプタである。管理サーバ１０１は、ＨＢＡ２０３を介して、共有ディスク１０３へのデータの書き込みや、共有ディスク１０３からのデータの読み出しを行う。共有ディスク１０３との通信に利用されるネットワークの種類に応じて、ＨＢＡ２０３に代えて、他の通信インタフェース装置（例えば、ＮＩＣ、シリアルアダプタ、ＵＳＢ（Universal Serial Bus）、赤外線など）を用いることとしてもよい。
【００２０】
ＮＩＣ２０４は、管理サーバ１０１をＬＡＮに接続するために用いられるカードであり、通信部としての機能を有する。管理サーバ１０１は、ＮＩＣ２０４を介して、サーバ１０２との通信を行う。サーバ１０２との通信に利用されるネットワーク種類に応じて、ＮＩＣ２０４に代えて、他の通信インタフェース装置を用いることとしてもよい。
【００２１】
プロセッサ２０２は、情報を処理する処理部としての機能を有し、例えば、ＣＰＵ（Central Processing Unit）により構成される。
【００２２】
メモリ２０１は、情報を記憶する記憶部としての機能を有し、例えば、ＲＡＭ（Random Access Memory）により構成される。メモリ２０１には、プロセッサ２０２に実行されるプログラムや、そのプログラムの実行の際に参照される情報が格納される。
【００２３】
メモリ２０１には、履歴割当プログラム２０５と、ファイル格納先通知プログラム２１２と、ディスク容量通知プログラム２１１と、ファイル格納先更新プログラム２１３と、履歴集約プログラム２０６と、容量監視プログラム２０９と、履歴設定変更プログラム２１８と、オペレーティングシステム２１４と、履歴割当管理テーブル２１５と、履歴ファイル管理テーブル２１６と、ファイル属性管理テーブル２１７とが格納されている。
【００２４】
履歴割当プログラム２０５は、サーバ１０２がファイルＩ／Ｏ処理を実施するファイルの格納先の一覧を、サーバ１０２のファイルシステムとして割り当てるプログラムである。履歴割当プログラム２０５の処理の詳細については、図５を参照して後記する。
【００２５】
履歴集約プログラム２０６は、サーバ１０２に割り当てたファイルシステムを構成するファイルの格納先を共通化することにより、複数のファイルシステムの内容を集約するプログラムである。履歴集約プログラム２０６は、集約処理を実行する条件（集約条件）に応じて、複製元への履歴集約プログラム２０７や、複製先への履歴集約プログラム２０８を呼び出す。履歴集約プログラム２０６の処理の詳細については、図６を参照して後記する。複製元への履歴集約プログラム２０７の処理の詳細については、図７を参照して後記する。複製先への履歴集約プログラム２０８の処理の詳細については、図８を参照して後記する。
【００２６】
容量監視プログラム２０９は、共有ディスク１０３の容量を監視し、容量の枯渇の兆候を検知した場合に、重複ファイル集約プログラム２１０を呼び出すことによって、サーバ１０２に割り当てたファイルシステムを構成するファイルの内容を比較し、同一内容の場合にファイルを共通化することにより複数のファイルを集約する処理を実行させるプログラムである。また、容量監視プログラム２０９は、重複ファイル集約プログラム２１０の処理の後、どのサーバ１０２からも参照されないファイルを削除し、共有ディスク１０３の空き容量を確保する。容量監視プログラム２０９の処理の詳細については、図９を参照して後記する。重複ファイル集約プログラム２１０の処理の詳細については、図１０を参照して後記する。
【００２７】
ディスク容量通知プログラム２１１は、容量監視プログラム２０９が確認したサーバ１０２に割り当てたファイルシステムの使用量および空き容量を、サーバ１０２に通知するプログラムである。ディスク容量通知プログラム２１１の処理の詳細については、図１９を参照して後記する。
【００２８】
ファイル格納先通知プログラム２１２は、サーバ１０２に割り当てたファイルシステムを構成するファイルの格納先を、サーバ１０２に通知するプログラムである。ファイル格納先通知プログラム２１２の処理の詳細については、図１１を参照して後記する。
【００２９】
ファイル格納先更新プログラム２１３は、サーバ１０２に割り当てたファイルシステムを構成するファイルの格納先を更新するプログラムである。ファイル格納先更新プログラム２１３の処理の詳細については、図１２を参照して後記する。
【００３０】
履歴設定変更プログラム２１８は、サーバ１０２へ割り当てたファイルシステムの集約条件を変更するためのプログラムである。履歴設定変更プログラム２１８の処理の詳細については、図１８を参照して後記する。
【００３１】
オペレーティングシステム２１４は、管理サーバ１０１上でアプリケーション（メモリ２０１に格納されている各種プログラム）を動作させるための基本的なプログラムである。
【００３２】
履歴割当管理テーブル２１５は、サーバ１０２に割り当てたファイルシステムと、ファイルシステムの集約条件とを管理するためのテーブルである。履歴割当管理テーブル２１５の構成の詳細については、図１３を参照して後記する。
【００３３】
履歴ファイル管理テーブル２１６は、サーバ１０２に割り当てたファイルシステムを構成するファイルを管理するためのテーブルである。履歴ファイル管理テーブル２１６の構成の詳細については、図１４を参照して後記する。
【００３４】
ファイル属性管理テーブル２１７は、サーバ１０２に割り当てたファイルシステムを構成するファイル固有の性質を管理するためのテーブルである。履歴ファイル管理テーブル２１６の構成の詳細については、図１５を参照して後記する。
【００３５】
また、以下の説明において、プログラムが処理の主体となる記述がなされる場合には、実際には管理サーバ１０１に搭載されたプロセッサ２０２が、メモリ２０１上で各種コンピュータプログラムを実行し、処理部としてプロセッサ２０２が処理するものとする。ここで、各種プログラムがプロセッサ２０２によって実行されることによって実現する機能は、半導体などのハードウェアにて構成された処理部が担うこととしてもよい。また、以下において、履歴割当処理部、ディスク容量通知処理部、ファイル格納先通知処理部、ファイル格納先更新処理部、履歴集約処理部、複製元への履歴集約処理部、複製先への履歴集約処理部、容量監視処理部、重複ファイル集約処理部および履歴設定変更処理部は、それぞれ、メモリ２０１上で、プロセッサ２０２によって、履歴割当プログラム２０５、ディスク容量通知プログラム２１１、ファイル格納先通知プログラム２１２、ファイル格納先更新プログラム２１３、履歴集約プログラム２０６、複製元への履歴集約プログラム２０７、複製先への履歴集約プログラム２０８、容量監視プログラム２０９、重複ファイル集約プログラム２１０および履歴設定変更プログラム２１８が実行されることで実現される。
【００３６】
図３は、図１に示したサーバ１０２の構成例を示す。図３を参照して（適宜図１および図２参照）、サーバ１０２の構成例について説明する。
【００３７】
サーバ１０２は、メモリ３０１と、プロセッサ３０２と、ＨＢＡ３０３と、ＮＩＣ３０４とを備える計算機である。サーバ１０２は、管理サーバ１０１が割り当てたファイルシステムを使用する。
【００３８】
ＨＢＡ３０３は、サーバ１０２がＳＡＮに接続するために用いられるアダプタである。サーバ１０２は、ＨＢＡ３０３を介して、共有ディスク１０３へのデータの書き込みや、共有ディスク１０３からのデータの読み出しを行う。共有ディスク１０３との通信に利用されるネットワークの種類に応じて、ＨＢＡ３０３に代えて、他の通信インタフェース装置（例えば、ＮＩＣ、シリアルアダプタ、ＵＳＢ、赤外線など）を用いることとしてもよい。
【００３９】
ＮＩＣ３０４は、サーバ１０２がＬＡＮに接続するために用いられるカードであり、通信部としての機能を有する。サーバ１０２は、ＮＩＣ３０４を介して、管理サーバ１０１との通信を行う。管理サーバ１０１との通信に利用されるネットワーク種類に応じて、ＮＩＣ３０４に代えて、他の通信インタフェース装置を用いることとしてもよい。
【００４０】
プロセッサ３０２は、情報を処理する処理部としての機能を有し、例えば、ＣＰＵ（Central Processing Unit）により構成される。
【００４１】
メモリ３０１は、情報を記憶する記憶部としての機能を有し、例えば、ＲＡＭ（Random Access Memory）により構成される。メモリ３０１には、プロセッサ３０２に実行されるプログラムや、そのプログラムの実行の際に参照される情報が格納される。
【００４２】
メモリ３０１には、アプリケーションプログラム３０５と、オペレーティングシステム３０６と、履歴ファイルキャッシュ管理テーブル３１０とが格納されている。
【００４３】
アプリケーションプログラム３０５は、共有ディスク１０３に対するファイルＩ／Ｏ処理要求を、ファイルＩ／Ｏ処理プログラム３０７に出すプログラムである。
【００４４】
オペレーティングシステム３０６は、サーバ１０２上でアプリケーション（メモリ３０１に格納されているアプリケーションプログラム３０５）を動作させるための基本的なプログラムである。オペレーティングシステム３０６は、ファイルＩ／Ｏ処理プログラム３０７と、ディスク容量確認プログラム３１１と、キャッシュ更新プログラム３１２とを備える。
【００４５】
ファイルＩ／Ｏ処理プログラム３０７は、アプリケーションプログラム３０５からのファイルＩ／Ｏ処理要求により、共有ディスク１０３へのファイルＩ／Ｏ処理を実行するプログラムである。ファイルＩ／Ｏ処理プログラム３０７は、ファイルＩ／Ｏ振分プログラム３０８と、ファイルＩ／Ｏ基本処理プログラム３０９とを備えている。
【００４６】
ファイルＩ／Ｏ振分プログラム３０８は、管理サーバ１０１のファイル格納先通知プログラム２１２との通信により、ファイルＩ／Ｏ処理を実行するファイルの格納先を取得する処理や、管理サーバ１０１のファイル格納先更新プログラム２１３に対してファイルの更新を通知することで、ファイルの格納先ディスクを切り替える処理を実行するプログラムである。ファイルＩ／Ｏ振分プログラム３０８の処理の詳細については、図１６を参照して後記する。
【００４７】
ファイルＩ／Ｏ基本処理プログラム３０９は、共有ディスク１０３にあるファイルに対して、ファイルＩ／Ｏ処理を実行するプログラムである。
【００４８】
ディスク容量確認プログラム３１１は、サーバ１０２に割り当てられたファイルシステムの使用量および空き容量を管理サーバ１０１に問い合わせるプログラムである。ディスク容量確認プログラム３１１の処理の詳細については、図２０を参照して後記する。
【００４９】
キャッシュ更新プログラム３１２は、履歴ファイルキャッシュ管理テーブル３１０に登録されたデータを更新するプログラムである。キャッシュ更新プログラム３１２の処理の詳細については、図２１を参照して後記する。
【００５０】
履歴ファイルキャッシュ管理テーブル３１０は、ファイルＩ／Ｏ処理を実行するファイルの格納先一覧をキャッシュ情報として備えるテーブルである。履歴ファイルキャッシュ管理テーブル３１０の構成の詳細については、図１７を参照して後記する。
【００５１】
また、以下の説明において、プログラムが処理の主体となる記述がなされる場合には、実際にはサーバ１０２に搭載されたプロセッサ３０２が、メモリ３０１上で各種コンピュータプログラムを実行し、処理部としてプロセッサ３０２が処理するものとする。ここで、各種プログラムがプロセッサ３０２によって実行されることによって実現する機能は、半導体などのハードウェアにて構成された処理部が担うこととしてもよい。また、以下において、ファイルＩ／Ｏ処理部、ファイルＩ／Ｏ振分処理部、ファイルＩ／Ｏ基本処理部、ディスク容量確認処理部およびキャッシュ更新処理部は、それぞれ、メモリ３０１上で、プロセッサ３０２によって、ファイルＩ／Ｏ処理プログラム３０７、ファイルＩ／Ｏ振分プログラム３０８、ファイルＩ／Ｏ基本処理プログラム３０９、ディスク容量確認プログラム３１１およびキャッシュ更新プログラム３１２が実行されることで実現される。
【００５２】
図４（ａ）は、サーバ１０２のアプリケーションプログラム３０５からオペレーティングシステム２１４に出されるシステムコール（管理サーバ１０１が備える機能の呼び出し）のうち、ファイルＩ／Ｏ処理要求にかかわるシステムコールの構成を示す図である。
【００５３】
各システムコールは、システムコール名４０１および引数４０２を含んで構成されており、ファイルＩ／Ｏ処理要求にかかわるシステムコールの場合、引数４０２には、ファイルＩ／Ｏ処理の対象ファイルのファイル名が含まれる。サーバ１０２が、システムコールの引数４０２に含まれるファイル名を管理サーバ１０１に通知することによって、管理サーバ１０１は、操作対象となるファイルを特定することが可能である。
【００５４】
図４（ｂ）は、履歴の複製関係を示す図である。履歴とは、サーバ１０２に割り当てられたファイルシステムに関する情報をその都度残したものである。また、ファイルシステムは、他のファイルシステムを複製して生成することができるため、履歴に関しても、他の履歴から複製して生成することが可能である。例えば、図４（ｂ）に示した例では、履歴Ｒ１を複製して履歴Ｒ２および履歴Ｒ３を生成し、履歴Ｒ３を複製して履歴Ｒ４，Ｒ５，Ｒ６およびＲ７を生成したことを示している。複製元の履歴と複製先の履歴との関係は、１対Ｎ（Ｎは自然数）となっている。
【００５５】
また、各履歴には、集約条件を指定することができる。例えば、履歴Ｒ３の集約条件として、複製元の履歴Ｒ１からの集約を許可するか否か、複製元の履歴Ｒ１への集約を許可するか否か、複製先の履歴Ｒ４，Ｒ５，Ｒ６およびＲ７からの集約を許可するか否か、複製先の履歴Ｒ４，Ｒ５，Ｒ６およびＲ７への集約を許可するか否かを指定することができる。例えば、履歴Ｒ１の集約条件として、複製先の履歴への集約「可」、履歴Ｒ３の集約条件として、複製元の履歴からの集約「可」が指定されている場合には、履歴Ｒ３から履歴Ｒ１へのファイルシステムの集約が行われることを意味する。履歴Ｒ１の集約条件としての複製先の履歴への集約と、履歴Ｒ３の集約条件としての複製元の履歴からの集約とのうち、少なくともいずれか一方に「否」が指定されている場合には、履歴Ｒ３から履歴Ｒ１へのファイルシステムの集約が行われないことを意味する。
【００５６】
履歴Ｒ３から履歴Ｒ１への集約が行われない指定がなされるとともに、履歴Ｒ１から履歴Ｒ３への集約も行われない指定がなされている場合には、履歴Ｒ１と履歴Ｒ３とは、集約処理が影響しない関係にあることを意味する。また、履歴Ｒ３から履歴Ｒ１への集約および履歴Ｒ１から履歴Ｒ３への集約のうち、いずれか一方でも行われる指定がなされている場合には、履歴Ｒ１と履歴Ｒ３とは、集約処理が影響する関係にあることを意味する。
【００５７】
図５は、履歴割当プログラム２０５の処理（履歴割当処理部による処理）の流れを示すフローチャートである。以下、図５を参照して（適宜他の図参照）、サーバ１０２にファイルシステムを割り当てる処理について説明する。なお、この処理は、履歴割当プログラム２０５を実行するコマンドがオペレータから端末１０６に入力されると、端末１０６から履歴割当プログラム２０５にそのコマンドが通知されることによって開始される。
【００５８】
端末１０６は、ファイルシステムの割り当てを行う対象となるサーバ１０２に固有の識別情報であるサーバ識別子（例えば、ホスト名やＩＰ（Internet Protocol）アドレス）、ファイルシステムの管理に使用する目的、集約条件（複製元からファイル集約を行うか否かに関する情報、複製元にファイル集約を行うか否かに関する情報、複製先からファイル集約を行うか否かに関する情報、複製先にファイル集約を行うか否かに関する情報）および複製元の履歴識別子の入力を受け付ける。端末１０６は、履歴割当プログラム２０５を呼び出すとともに、入力を受け付けたサーバ識別子、目的、集約条件および複製元の履歴識別子を履歴割当プログラム２０５に通知する。
【００５９】
履歴間に集約処理が影響しない関係が成立する場合には、複製先のファイルシステムを割り当てる際に、少なくとも複製元のファイルシステムと同容量の空き容量を共有ディスク１０３に確保する必要がある。そこで、履歴割当プログラム２０５は（履歴割当処理部は）、履歴割当管理テーブル２１５を参照し、集約処理の影響しない関係を抽出することで、各ファイルシステムを集約のグループごとに分類し、集約のグループごとの割当容量を加算することでファイルシステムの割当容量を確認する（ステップＳ５０１）。
【００６０】
具体的には、まず、履歴割当管理テーブル２１５（図１３参照）のデータを順次に抽出し、抽出したデータの複製元からの履歴集約１３０５および複製元への履歴集約１３０６がともに「否」であるか否かを判定する。ともに「否」であれば、そのデータの複製元履歴識別子１３０４と一致する履歴識別子１３０１を有するデータの複製先からの履歴集約１３０７および複製先への履歴集約１３０８がともに「否」であるか否かを判定する。ともに「否」であれば、そのデータの履歴識別子１３０１で指定される履歴と、そのデータの複製元履歴識別子１３０４で指定される履歴との間に集約処理の影響しない関係が成立することになる。
【００６１】
例えば、図１３に示す履歴割当管理テーブル２１５のデータ例の場合、集約処理の影響しない関係として、履歴Ｒ１と履歴Ｒ２との間、履歴Ｒ１と履歴Ｒ３との間、履歴Ｒ３と履歴Ｒ６との間、履歴Ｒ３と履歴Ｒ７との間が抽出される。したがって、履歴Ｒ１で構成されるグループと、履歴Ｒ２で構成されるグループと、履歴Ｒ３，Ｒ４，Ｒ５で構成されるグループと、履歴Ｒ６で構成されるグループと、履歴Ｒ７で構成されるグループとに分類され、割当容量の合計は、履歴Ｒ１、履歴Ｒ２、履歴Ｒ３、履歴Ｒ６および履歴Ｒ７のそれぞれの割当容量１３０９（３２ＧＢ）を合計して１６０ＧＢとなる。
【００６２】
履歴割当プログラム２０５は（履歴割当処理部は）、得られた割当容量の合計と共有ディスク１０３の容量から、共有ディスク１０３の空き容量を求め、新規に割り当てるファイルシステムの領域を確保するために、共有ディスク１０３に空き容量があるか否かを確認する（ステップＳ５０２）。
【００６３】
共有ディスク１０３に空き容量がない場合には（ステップＳ５０２で「Ｎｏ」）、履歴割当プログラム２０５は（履歴割当処理部は）、端末１０６を介してオペレータへアラートを出すことによって空き容量がない旨を報告し、空き容量の確保を要求する（ステップＳ５０５）。
【００６４】
共有ディスク１０３に空き容量がある場合には（ステップＳ５０２で「Ｙｅｓ」）、履歴割当プログラム２０５は（履歴割当処理部は）、履歴割当管理テーブル２１５にデータを新規に登録することによって、サーバ１０２に履歴を割り当てる（ステップＳ５０３）。新規に登録するデータのサーバ識別子１３０２、目的１３０３、複製元からの履歴集約１３０５、複製元への履歴集約１３０６、複製先からの履歴集約１３０７、複製先への履歴集約１３０８および複製元履歴識別子１３０４には、それぞれ端末１０６から通知された各値を設定する。新規に登録するデータの割当容量１３０９には、端末１０６から通知された複製元の履歴識別子と一致する履歴識別子１３０１を有する履歴割当管理テーブル２１５上のデータの割当容量１３０９を設定する。新規に登録するデータの履歴識別子１３０１には、履歴割当管理テーブル２１５に既に登録されている履歴識別子と重複しない識別子を割り当て、設定する。
【００６５】
なお、データを登録する際に、登録しようとするデータのサーバ識別子と同じ識別子がサーバ識別子１３０２に存在する場合には、既に登録されているデータのサーバ識別子１３０２を無効化する。例えば、既に登録されているデータのサーバ識別子１３０２に“−”を設定する。
【００６６】
次に、履歴割当プログラム２０５は（履歴割当処理部は）、履歴ファイル管理テーブル２１６（図１４参照）にデータを登録することによって、履歴ファイルへの参照を複製して（ステップＳ５０４）、履歴割当プログラム２０５の処理を終了する。履歴ファイル管理テーブル２１６に登録するデータの履歴識別子１３０１には、ステップＳ５０３で履歴割当管理テーブル２１５に登録したデータの履歴識別子１３０１を設定する。履歴ファイル管理テーブル２１６に登録するデータのファイル識別子１４０１には、履歴ファイル管理テーブル２１６を参照し、ステップＳ５０３で履歴割当管理テーブル２１５に登録したデータの複製元履歴識別子１３０４と一致する履歴識別子１３０１を有するデータを検索し、検索によって得られたデータのファイル識別子１４０１を設定する。履歴ファイル管理テーブル２１６に登録するデータの読取実績１４０２には、「無」を設定する。履歴ファイル管理テーブル２１６に登録するデータの書込実績１４０３には、「無」を設定する。
【００６７】
以上に示した履歴割当プログラム２０５の処理によって、サーバ１０２は、割り当てられたファイルを利用できるようになる。次に、サーバ１０２へ割り当てられたファイルシステムを集約する処理について説明する。
【００６８】
図６は、履歴集約プログラム２０６の処理（履歴集約処理部による処理）の流れを示すフローチャートである。以下、図６を参照して（適宜他の図参照）、サーバ１０２へ割り当てられたファイルシステムを集約する処理について説明する。なお、この処理は、履歴集約プログラム２０６を実行するコマンドがオペレータから端末１０６に入力されると、端末１０６から履歴集約プログラム２０６にそのコマンドが通知されることによって開始される。
【００６９】
端末１０６は、集約の基準となるファイルシステムに対応する履歴識別子の入力を受け付ける。端末１０６は、履歴集約プログラム２０６を呼び出すとともに、入力を受け付けた集約の基準となるファイルシステムに対応する履歴識別子を履歴割当プログラム２０５に通知する。
【００７０】
履歴集約プログラム２０６は（履歴集約処理部は）、履歴割当管理テーブル２１５を参照し、端末１０６から通知された履歴識別子が履歴識別子１３０１として登録されたエントリを選択し、選択したエントリの複製先への履歴集約１３０８の値が「可」であるか否かを確認することにより、複製先への履歴集約処理の許可があるか否かを判断する（ステップＳ６０１）。
【００７１】
複製先への履歴集約処理の許可がない場合には（ステップＳ６０１で「Ｎｏ」）、ステップＳ６０２の繰り返し処理をスキップする。複製先への履歴集約処理の許可がある場合には（ステップＳ６０１で「Ｙｅｓ」）、履歴割当管理テーブル２１５を参照し、端末１０６から通知された履歴識別子が複製元履歴識別子１３０４として登録されたエントリを選択し、選択したエントリの履歴識別子１３０１の一覧について、順に集約処理の対象に指定し、すべての複製先（集約処理の対象）について繰り返し処理を行う（ステップＳ６０２）。繰り返し処理の中では、複製先への履歴集約プログラム２０８を呼び出す（ステップＳ６０３）。
【００７２】
履歴集約プログラム２０６は（履歴集約処理部は）、履歴割当管理テーブル２１５を参照し、端末１０６から通知された履歴識別子が履歴識別子１３０１として登録されたエントリを選択し、対応する複製元への履歴集約１３０６の値が「可」であるか否かを確認することにより、複製元への履歴集約処理の許可があるか否かを判断する（ステップＳ６０４）。
【００７３】
複製先への履歴集約処理の許可がない場合には（ステップＳ６０４で「Ｎｏ」）、ステップＳ６０５の処理をスキップして、履歴集約プログラム２０６の処理を終了する。複製元への履歴集約処理の許可がある場合には（ステップＳ６０４で「Ｙｅｓ」）、履歴割当管理テーブル２１５を参照し、端末１０６から通知された履歴識別子が履歴識別子１３０１として登録されたエントリを選択し、選択したエントリの複製元履歴識別子１３０４を集約処理の対象に指定するとともに、端末１０６から通知された履歴識別子を集約の基準に指定し、複製元への履歴集約プログラム２０７を呼び出し（ステップＳ６０５）、履歴集約プログラム２０６の処理を終了する。
【００７４】
図７は、複製元への履歴集約プログラム２０７の処理（複製元への履歴集約処理部による処理）の流れを示すフローチャートである。以下、図７を参照して（適宜他の図参照）、複製元にファイルシステムを集約する処理について説明する。複製元への履歴集約プログラム２０７は、呼び出し元から、集約の基準となる履歴識別子と、集約処理の対象となる履歴識別子とを通知される。
【００７５】
複製元への履歴集約プログラム２０７は（複製元への履歴集約処理部は）、履歴割当管理テーブル２１５を参照し、集約処理の対象に指定された履歴識別子が履歴識別子１３０１として登録されたエントリを選択し、選択したエントリの複製先からの履歴集約１３０６の値が「可」であるか否かを確認することにより、複製先からの履歴集約処理の許可があるか否かを判定する（ステップＳ７０１）。
【００７６】
複製先からの履歴集約処理の許可がない場合には（ステップＳ７０１で「Ｎｏ」）、複製元への履歴集約プログラム２０７の処理を終了する。複製先への履歴集約処理の許可がある場合には（ステップＳ７０１で「Ｙｅｓ」）、複製元への履歴集約プログラム２０７は（複製元への履歴集約処理部は）、履歴割当管理テーブル２１５を参照し、集約処理の対象に指定された履歴識別子が履歴識別子１３０１として登録されたエントリを選択し、選択したエントリの複製先への履歴集約１３０８の値が「可」であるか否かを確認することにより、複製先への履歴集約処理の許可があるか否かを判断する（ステップＳ７０２）。
【００７７】
複製先への履歴集約処理の許可がない場合には（ステップＳ７０２で「Ｎｏ」）、ステップＳ７０３の繰り返し処理をスキップする。複製先への履歴集約処理の許可がある場合には（ステップＳ７０２で「Ｙｅｓ」）、履歴割当管理テーブル２１５を参照し、集約処理の対象に指定された履歴識別子が複製元履歴識別子１３０４として登録されたエントリを選択し、選択したエントリの履歴識別子１３０１の一覧について、順に集約処理の対象に指定し、すべての複製先（集約処理の対象）について繰り返し処理を行う（ステップＳ７０３）。繰り返し処理の中では、複製先への履歴集約プログラム２０８を呼び出す（ステップＳ６０３）。
【００７８】
複製元への履歴集約プログラム２０７は（複製元への履歴集約処理部は）、呼び出し元によって集約処理の対象に指定された履歴識別子と、集約の基準となる履歴識別子とが、履歴ファイル管理テーブル２１６の履歴識別子１３０１として登録されたエントリをそれぞれ選択し、選択したエントリのファイル識別子１４０１の一覧を抽出する。
【００７９】
次に、複製元への履歴集約プログラム２０７は（複製元への履歴集約処理部は）、ファイル属性管理テーブル２１７（図１５参照）を参照し、集約処理の対象に指定された履歴識別子と、集約の基準となる履歴識別子とに対応するファイル識別子１４０１のうち、ファイル名称１５０１が同一となるファイルの組み合わせについてはチェックサム１５０２を比較することで差が生じているファイルを抽出し、ファイル名称１５０１がいずれかにしか存在しないファイルについては無条件に抽出し、これらの抽出したファイルを、集約の基準となる履歴からの差分ファイルであるとして、ファイル差分を確認する（ステップＳ７０５）。
【００８０】
複製元への履歴集約プログラム２０７は（複製元への履歴集約処理部は）、ステップＳ７０５で抽出した集約の基準となる履歴からの差分ファイルについて、集約処理の対象となる履歴のファイル構成を、集約の基準となる履歴と同じファイル構成となるよう更新することによって、集約の基準履歴からの集約処理を行う（ステップＳ７０６）。つまり、複製元への履歴集約プログラム２０７は（複製元への履歴集約処理部は）、以下の（１）〜（３）の処理を行う。
【００８１】
（１）集約の基準となる履歴と同一ファイル名のファイルが存在する場合には、履歴ファイル管理テーブル２１６を参照し、集約の基準となる履歴識別子として登録されたエントリのファイル識別子１４０１と同じ値を、集約処理の対象となる履歴識別子として登録されたエントリのファイル識別子１４０１へ上書きする。
【００８２】
（２）集約の基準となる履歴のファイルしか存在しない場合には、履歴ファイル管理テーブル２１６へ集約処理の対象となる履歴識別子として新規にエントリを追加し、集約の基準となる履歴識別子として登録されたファイル識別子１４０１と同一の値を登録する。
【００８３】
（３）集約処理の対象となる履歴のファイルしか存在しない場合には、履歴ファイル管理テーブル２１６を参照し、集約処理の対象となる履歴識別子として登録されたファイル識別子１４０１で示すエントリを削除する。
【００８４】
次に、履歴ファイル管理テーブル２１６を参照し、集約処理の対象となる履歴識別子として登録されたエントリのうち、基準となる履歴からの差分ファイルについて、書込実績１４０３を「無」に設定し、この一連の集約処理により変更となったファイルをサーバ１０２のキャッシュ更新プログラム３１２へ通知することで、サーバ１０２内にキャッシュされた履歴ファイルキャッシュ管理テーブル３１０の更新を依頼する。
【００８５】
複製元への履歴集約プログラム２０７は（複製元への履歴集約処理部は）、履歴割当管理テーブル２１５を参照し、集約処理の対象となる履歴識別子が履歴識別子１３０１として登録されたエントリを選択し、選択したエントリの複製元履歴識別子１３０４があり、かつ複製元への履歴集約１３０６が「可」であるか否かを確認することにより、複製元履歴があり、かつ複製元への履歴集約処理の許可があるか否かを判断する（ステップＳ７０７）。
【００８６】
複製元履歴がない、または複製元への履歴集約処理の許可がない場合には（ステップＳ７０７で「Ｎｏ」）、ステップＳ６０４の処理をスキップして、複製元への履歴集約プログラム２０７の処理を終了する。複製元履歴があり、かつ複製元への履歴集約処理の許可がある場合には（ステップＳ７０７で「Ｙｅｓ」）、呼び出し元によって集約の基準となる履歴識別子に指定された履歴識別子を集約の基準となる履歴識別子として指定するとともに、ステップＳ７０７で選択したエントリの複製元履歴識別子１３０４を集約処理の対象となる履歴識別子として指定し、複製元への履歴集約プログラム２０７を呼び出し（ステップＳ６０４）、複製元への履歴集約プログラム２０７の処理を終了する。
【００８７】
図８は、複製先への履歴集約プログラム２０８の処理（複製先への履歴集約処理部による処理）の流れを示すフローチャートである。以下、図８を参照して（適宜他の図参照）、複製先にファイルシステムを集約する処理について説明する。複製先への履歴集約プログラム２０８は、呼び出し元から、集約の基準となる履歴識別子と、集約処理の対象となる履歴識別子とを通知される。
【００８８】
複製先への履歴集約プログラム２０８は（複製先への履歴集約処理部は）、履歴割当管理テーブル２１５（図１３参照）を参照し、集約処理の対象に指定された履歴識別子が履歴識別子１３０１として登録されたエントリを選択し、選択したエントリの複製元履歴識別子１３０４を確認する。複製先への履歴集約プログラム２０８は（複製先への履歴集約処理部は）、履歴割当管理テーブル２１５を参照し、呼び出し元が指定した集約処理の対象となる履歴識別子が履歴識別子１３０１として登録されたエントリを選択し、選択したエントリの複製元からの履歴集約１３０５の値が「可」であるか否かを確認することにより、複製元からの履歴集約処理の許可があるか否かを判断する（ステップＳ８０１）。
【００８９】
複製元からの履歴集約処理の許可がない場合には（ステップＳ８０１で「Ｎｏ」）、複製先への履歴集約プログラム２０８の処理を終了する。複製先からの履歴集約処理の許可がある場合には（ステップＳ８０１で「Ｙｅｓ」）、複製先への履歴集約プログラム２０８は（複製先への履歴集約処理部は）、呼び出し元によって集約処理の対象に指定された履歴識別子と、集約の基準となる履歴識別子とが、履歴ファイル管理テーブル２１６の履歴識別子１３０１として登録されたエントリをそれぞれ選択し、選択したエントリのファイル識別子１４０１の一覧を抽出する。
【００９０】
次に、複製先への履歴集約プログラム２０８は（複製先への履歴集約処理部は）、ファイル属性管理テーブル２１７（図１５参照）を参照し、集約処理の対象となる履歴識別子と、集約の基準となる履歴識別子と、複製元履歴識別子とに対応するファイル識別子１４０１のうち、ファイル名称１５０１が同一となるファイルの組み合わせについてはチェックサム１５０２を比較することで差が生じているファイルを抽出し、ファイル名称１５０１がいずれかにしか存在しないファイルについては無条件に抽出し、これらの抽出したファイルを、集約の基準となる履歴からの差分ファイルであるとして、ファイル差分を確認する（ステップＳ８０２）。
【００９１】
複製先への履歴集約プログラム２０８は（複製先への履歴集約処理部は）、ファイル属性管理テーブル２１７を参照し、集約処理の対象となる履歴識別子と、複製元履歴識別子とに対応するファイル識別子１４０１のうち、ステップＳ８０２で確認した集約の基準となる履歴からの差分ファイルについて、集約処理の対象となる履歴の、複製元履歴からの複製後におけるファイル更新があるか否かを確認する（ステップＳ８０３）。
【００９２】
複製後の更新があった場合には（ステップＳ８０３で「Ｙｅｓ」）、複製先への履歴集約プログラム２０８の処理を終了する。複製後の更新がなかった場合には（ステップＳ８０３で「Ｎｏ」）、複製先への履歴集約プログラム２０８は（複製先への履歴集約処理部は）、履歴割当管理テーブル２１５を参照し、集約処理の対象に指定された履歴識別子が履歴識別子１３０１として登録されたエントリを選択し、選択したエントリの複製先への履歴集約１３０８の値が「可」であるか否かを確認することにより、複製先への履歴集約処理の許可があるか否かを判断する（ステップＳ８０４）。
【００９３】
複製先への履歴集約処理の許可がない場合には（ステップＳ８０４で「Ｎｏ」）、ステップＳ８０５の繰り返し処理をスキップする。複製先への履歴集約処理の許可がある場合には（ステップＳ８０４で「Ｙｅｓ」）、履歴割当管理テーブル２１５を参照し、集約処理の対象に指定された履歴識別子が複製元履歴識別子１３０４として登録されたエントリを選択し、選択したエントリの履歴識別子１３０１の一覧について、順に集約処理の対象に指定し、すべての複製先（集約処理の対象）について繰り返し処理を行う（ステップＳ８０５）。繰り返し処理の中では、複製先への履歴集約プログラム２０８を呼び出す（ステップＳ６０３）。
【００９４】
複製先への履歴集約プログラム２０８は（複製先への履歴集約処理部は）、ステップＳ８０２で抽出した集約の基準となる履歴からの差分ファイルについて、集約処理の対象となる履歴のファイル構成を、集約の基準となる履歴と同じファイル構成となるよう更新することによって、集約の基準履歴からの集約処理を行う（ステップＳ８０６）。つまり、つまり、複製先への履歴集約プログラム２０８は（複製先への履歴集約処理部は）、以下の（１）〜（３）の処理を行う。
【００９５】
（１）集約の基準となる履歴と同一ファイル名のファイルが存在する場合には、履歴ファイル管理テーブル２１６を参照し、集約の基準となる履歴識別子として登録されたエントリのファイル識別子１４０１と同じ値を、集約処理の対象となる履歴識別子として登録されたエントリのファイル識別子１４０１へ上書きする。
【００９６】
（２）集約の基準となる履歴のファイルしか存在しない場合には、履歴ファイル管理テーブル２１６へ集約処理の対象となる履歴識別子として新規にエントリを追加し、集約の基準となる履歴識別子として登録されたファイル識別子１４０１と同一の値を登録する。
【００９７】
（３）集約処理の対象となる履歴のファイルしか存在しない場合には、履歴ファイル管理テーブル２１６を参照し、集約処理の対象となる履歴識別子として登録されたファイル識別子１４０１で示すエントリを削除する。
【００９８】
次に、履歴ファイル管理テーブル２１６を参照し、集約処理の対象となる履歴識別子として登録されたエントリのうち、基準となる履歴からの差分ファイルについて、書込実績１４０３を「無」に設定し、この一連の集約処理により変更となったファイルをサーバ１０２のキャッシュ更新プログラム３１２へ通知することで、サーバ１０２内にキャッシュされた履歴ファイルキャッシュ管理テーブル３１０の更新を依頼する。
【００９９】
以上、図６ないし図８を用いて説明した処理によって、履歴割当管理テーブル２１５に登録されたサーバ１０２のためのファイルシステムを構成するファイルを集約できる。
【０１００】
図９は、容量監視プログラム２０９の処理（容量監視処理部による処理）の流れを示すフローチャートである。以下、図９を参照して（適宜他の図参照）、共有ディスク１０３の容量を監視して空き容量を確保する処理について説明する。容量監視プログラム２０９は、例えば、所定の時間ごとに実行されることとすればよいが、実行されるタイミングは特に制限されるものではない。
【０１０１】
容量監視プログラム２０９は（容量監視処理部は）、例えば、所定の時間ごとにサーバ１０２の使用するファイルシステム使用量の監視を行い、履歴割当管理テーブル２１５の使用量１３１０を更新する。また、サーバ１０２が使用するディスク容量が不足であることを検出するか否かを確認する（ステップＳ９０１）。例えば、サーバ１０２が接続する共有ディスク１０３の容量を監視し、共有ディスク１０３の空き容量が減少し、ある回数の監視を行った結果、空き容量がある閾値以下となっている場合や、空き容量が減少する前に、減少の特徴を表す指標がある閾値以下となっている場合に、サーバ１０２が使用するディスク容量が不足である（あるいは、ディスク容量不足に至る危険状態である）と検出することとする。また、例えば、ある監視回数の間、同一サーバから管理サーバ１０１へのファイル格納先更新プログラム２１３の呼び出しが継続したとき、履歴割当プログラム２０５の実行回数が閾値に達したとき、所定の期間、履歴集約プログラム２０６の呼び出しがなかったときなどをディスク容量の不足状態を検出したとしてもよい。
【０１０２】
ディスク容量が不足であることを検出しなかった場合には（ステップＳ９０１で「Ｎｏ」）、容量監視プログラム２０９の処理を終了し、所定の時間後に再度、容量監視プログラム２０９の処理が実行される。ディスク容量が不足であることを検出した場合には（ステップＳ９０１で「Ｙｅｓ」）、重複ファイル集約プログラム２１０を呼び出す（ステップＳ９０２）。なお、ディスク容量不足を判断するための閾値は、業務内容やシステムの稼動状況に応じ、サーバ１０２ごとにパラメタやコマンドなどで与えるものとし、ユーザによる稼動中の設定変更を可能としてもよい。
【０１０３】
ファイル格納先更新プログラム２１３により、サーバ１０２が参照するファイルの格納先を更新したとき、重複ファイル集約プログラム２１０により、サーバ１０２が参照するファイルの格納先を更新したときなどに、どのサーバからも参照されないファイルが発生する。容量監視プログラム２０９は（容量監視処理部は）、履歴参照のない（どのサーバからも参照されない）ファイルを破棄し、共有ディスク１０３の空き容量を確保する（ステップＳ９０３）。
【０１０４】
容量監視プログラム２０９は（容量監視処理部は）、重複ファイルの集約と、参照のないファイルの破棄によって、まだサーバ１０２が使用するディスク容量が不足であるか否かを確認する（ステップＳ９０４）。ディスク容量が不足であることを検出しなかった場合には（ステップＳ９０４で「Ｎｏ」）、容量監視プログラム２０９の処理を終了し、所定の時間後に再度、容量監視プログラム２０９の処理が実行される。ディスク容量が不足であることを検出した場合には（ステップＳ９０４で「Ｙｅｓ」）、端末１０６を介してオペレータへアラートを出すことによって容量が不足している旨を報告するとともに、各サーバ１０２にアラートを出すことによって容量が不足している旨を報告し、空き容量の確保を要求する（ステップＳ９０５）。
【０１０５】
図１０は、重複ファイル集約プログラム２１０（重複ファイル集約処理部による処理）の処理の流れを示すフローチャートである。以下、図１０を参照して（適宜他の図参照）、重複ファイルを集約する処理について説明する。
【０１０６】
重複ファイル集約プログラム２１０は（重複ファイル集約処理部は）、容量監視プログラム２１０からの指示を受けると、ファイル属性管理テーブル２１７（図１５参照）を参照し、ファイル名称１５０１およびチェックサム１５０２が重複するファイルのエントリを抽出する（ステップＳ１００１）。重複ファイル集約プログラム２１０は（重複ファイル集約処理部は）、すべての重複ファイルについて、順に繰り返し処理を行う（ステップＳ１００２）。
【０１０７】
重複ファイル集約プログラム２１０は（重複ファイル集約処理部は）、重複ファイルのエントリについて、この各々の重複ファイルを使用するサーバの参照先をいずれかのファイルに集約するための判断をするために、現在のディスク使用実績を確認する（ステップＳ１００３）。このディスク使用実績の確認は、履歴ファイル管理テーブル２１６を参照し、ファイルＩ／Ｏ処理要求のうち、読取実績１４０２と書込実績１４０３に記載された読み取りおよび書き込みについての使用実績の値を確認し、例えば、ディスクごとの使用実績の合計からディスクごとのＩ／Ｏ実績を求めるか、あるいは、ファイル属性管理テーブル２１７を参照し、ファイル名称１５０１を確認することで重複ファイルと同じディレクトリに属するファイル一覧を抽出し、履歴ファイル管理テーブル２１６を参照し、同一ディレクトリに限ったディスクごとの使用実績の合計からＩ／Ｏ実績を求めることにより、確認する。なお、Ｉ／Ｏ実績を判断するための計算式については、業務内容やシステムの稼動状況に応じ、サーバ１０２ごとのパラメタやコマンドなどで与えるものとし、ユーザによる稼動中の設定変更を可能としてもよい。
【０１０８】
重複ファイル集約プログラム２１０は（重複ファイル集約処理部は）、重複ファイルを参照するサーバについて、順に繰り返し処理を行う（ステップＳ１００４）。重複ファイル集約プログラム２１０は（重複ファイル集約処理部は）、ステップＳ１００３で求めたディスクの使用実績に基づき、ディスクのＩ／Ｏ実績が均一となるよう、サーバ１０２の参照先ファイルを更新し（ステップＳ１００５）、次に、履歴ファイル管理テーブル２１６を参照し、集約処理を行ったファイルについて、書込実績１４０３を「無」に設定し、更に参照先を更新したファイルをサーバ１０２のキャッシュ更新プログラム３１２へ通知することでサーバ１０２内の履歴ファイルキャッシュ管理テーブル３１０の更新を依頼する。
【０１０９】
ここで、サーバの参照先の更新処理を即座に実行したが、例えばファイルへの書き込み要求を頻繁に実施する用途のアプリケーションプログラムがあった場合は、ファイルの更新に伴い、重複ファイル集約プログラム２１０でも頻繁にサーバの参照先を更新することになるが、ファイルごとに閾値を設け、書き込み要求を実施せず重複ファイル集約プログラム２１０の確認回数が閾値を越えた時にサーバ１０２の参照先の更新処理を実行するようにしてもよい。
【０１１０】
以上の処理で、重複ファイルを参照するサーバの参照先を集約し、どのサーバからも参照されないファイルについて、サーバを介することなく管理サーバ１０１が削除することによって、ディスクの空き容量を確保できる。
【０１１１】
図１１は、ファイル格納先通知プログラム２１２の処理（ファイル格納先通知処理部による処理）を説明するフローチャートである。以下、図１１を参照して（適宜他の図参照）、サーバ１０２に割り当てたファイルシステム情報からサーバ１０２がファイルＩ／Ｏ処理を行うファイルの格納先を確認する処理について説明する。
【０１１２】
サーバ１０２のファイルＩ／Ｏ振分プログラム３０８は（ファイルＩ／Ｏ振分処理部は）、アプリケーションプログラム３０５からのファイルＩ／Ｏ処理要求に伴い、ファイルＩ／Ｏ処理要求に含まれているファイル名から、実際にＩ／Ｏ要求を出すためのファイル格納先を確認するために、サーバ１０２に割り当てたサーバ識別子１３０２とファイル名称１５０１との情報を元に、ファイル格納先通知プログラム２１２へファイル格納先確認要求を出す。ファイル格納先通知プログラム２１２は（ファイル格納先通知処理部は）、このサーバ１０２からのファイル格納先確認要求を受けると、要求に含まれているサーバ識別子とファイル名称とを受け取ることによって、確認対象ファイルの情報を受け取る（ステップＳ１１０１）。
【０１１３】
ファイル格納先通知プログラム２１２は（ファイル格納先通知処理部は）、履歴割当管理テーブル２１５を参照し、要求に含まれているサーバ識別子がサーバ識別子１３０２に登録されているエントリから履歴識別子１３０１を抽出し、履歴ファイル管理テーブル２１６を参照し、抽出した履歴識別子が履歴識別子１３０１に登録されているエントリからファイル識別子１４０１を抽出し、ファイル属性管理テーブル２１７を参照し、抽出したファイル識別子が、ファイル識別子１４０１として登録されているエントリを抽出することによって、サーバ１０２のためのファイル格納先を確認する（ステップＳ１１０２）。
【０１１４】
ステップＳ１１０２にて抽出したエントリのうち、要求に含まれているファイル名称を有するエントリが存在するか否かを判定することで、サーバ１０２にファイルが存在するか否かを判定する（ステップＳ１１０３）。要求で与えられたファイル名称で示すファイルがサーバ１０２に存在した場合には（ステップＳ１１０３で「Ｎｏ」）、呼び出し元にファイルが存在しないことをエラーとして通知して（ステップＳ１１０５）、ファイル格納先通知プログラム２１２の処理を終了する。要求で与えられたファイル名称で示すファイルがサーバ１０２に存在した場合には（ステップＳ１１０３で「Ｙｅｓ」）、このファイルの格納先（格納先ディレクトリ１５０３）を呼び出し元に通知して（ステップＳ１１０４）、ファイル格納先通知プログラム２１２の処理を終了する。
【０１１５】
以上の処理で、サーバ１０２に割り当てたファイルシステムからサーバ１０２がファイルＩ／Ｏ処理を行うファイルの格納先を確認できる。
【０１１６】
図１２は、ファイル格納先更新プログラム２１３の処理（ファイル格納先更新処理部による処理）の流れを示すフローチャートである。以下、図１２を参照して（適宜他の図参照）、サーバ１０２に割り当てたファイルシステムを構成するファイルへのファイルＩ／Ｏ処理のうち、更新処理に伴うファイル格納先の更新手順を説明する。
【０１１７】
サーバ１０２のファイルＩ／Ｏ振分プログラム３０８は（ファイルＩ／Ｏ振分処理部は）、アプリケーションプログラム３０５からのファイルＩ／Ｏ処理要求のうち、更新処理に伴い、ファイルＩ／Ｏ処理要求に含まれているファイル名から実際にＩ／Ｏ要求を出すためのファイル格納先を更新するために、サーバ１０２に割り当てたサーバ識別子１３０２とファイル名称１５０１との情報を元に、ファイル格納先更新プログラム２１３へファイル格納先更新要求を出す。
【０１１８】
ファイル格納先更新プログラム２１３は（ファイル格納先更新処理部は）、このサーバ１０２からのファイル格納先更新要求を受けると、要求に含まれているサーバ識別子とファイル名称とを受け取ることによって、更新対象ファイルの情報を受け取る（ステップＳ１２０１）。
【０１１９】
ファイル格納先更新プログラム２１３は（ファイル格納先更新処理部は）、要求元が指定したサーバ識別子とファイル名称とから実際にＩ／Ｏ要求を出すためのファイル格納先を確認するために、ファイル格納先通知プログラム２１２を呼び出す（ステップＳ１２０２）。ファイル格納先更新プログラム２１３は（ファイル格納先更新処理部は）、ファイル格納先通知プログラム２１２への確認の結果、ファイルが既に存在するか否かを判定する（ステップＳ１２０３）。
【０１２０】
要求で与えられたファイル名称で示すファイルがサーバ１０２に存在しなかった場合には（ステップＳ１２０３で「Ｎｏ」）、要求で与えられたサーバ識別子とファイル名称とから、履歴ファイル管理テーブル２１６に新規にエントリを追加し、ファイル識別子に既に登録されている他のファイル識別子と重複しない識別子を生成して割り当て、ファイル属性管理テーブル２１７に新規にエントリを追加し、ファイル識別子には先ほど生成した値を割り当て、現在のディスク使用実績に基づいてディスクのＩ／Ｏ実績が均一となるようファイルの格納先（格納先ディレクトリ１５０３）を割り当て（ステップＳ１２０５）、新規に割り当てた格納先ディレクトリを呼び出し元に連絡して、ファイル格納先更新プログラム２１３の処理を終了する。
【０１２１】
要求で与えられたファイル名称で示すファイルがサーバ１０２に存在した場合には（ステップＳ１２０３で「Ｙｅｓ」）、履歴割当管理テーブル２１５と履歴ファイル管理テーブル２１６とファイル属性管理テーブル２１７とを参照し、要求で与えられたサーバ識別子とファイル名称とから該当するエントリのファイル識別子を抽出し、履歴ファイル管理テーブル２１６のファイル識別子に、既に登録されている他のファイル識別子と重複しない識別子を生成して上書きし、ファイル属性管理テーブル２１７の該当するエントリを複製し（ステップＳ１２０４）、ファイル識別子には先ほど生成した値を割り当て、現在のディスク使用実績に基づいてディスクのＩ／Ｏ実績が均一となるようファイルの格納先ディレクトリ１５０３を割り当てることによってファイルの格納先を更新し（ステップＳ１２０４）、更新した格納先ディレクトリを呼び出し元に連絡して、ファイル格納先更新プログラム２１３の処理を終了する。ディスク使用実績の確認については、重複ファイル集約プログラム２１０の処理の場合と同様である。
【０１２２】
以上の処理で、サーバ１０２に割り当てたファイルシステムに含まれるファイルへのファイルＩ／Ｏ処理のうち、書き込み処理に伴うファイル格納先を更新できる。
【０１２３】
図１３は、履歴割当管理テーブル２１５のデータ構成例を示す図である。図１３に示すように、履歴割当管理テーブル２１５は、履歴を識別する情報である履歴識別子１３０１と、サーバ１０２を識別する情報であるサーバ識別子１３０２と、ディスクの使用目的である目的１３０３と、複製元の履歴を識別する情報である複製元履歴識別子１３０４と、複製元からの履歴集約１３０５と、複製元への履歴集約１３０６と、複製先からの履歴集約１３０７と、複製先への履歴集約１３０８と、割当容量１３０９と、使用量１３１０とを項目として備える。複製元からの履歴集約１３０５、複製元への履歴集約１３０６、複製先からの履歴集約１３０７および複製先への履歴集約１３０８には、履歴の集約を許可することを示す「可」や、許可しないことを示す「否」が設定される。
【０１２４】
図１４は、履歴ファイル管理テーブル２１６のデータ構成例を示す図である。図１４に示すように、履歴ファイル管理テーブル２１６は、履歴識別子１３０１と、ファイルを識別する情報であるファイル識別子１４０１と、読取実績１４０２と、書込実績１４０３とを項目として備える。読取実績１４０２および書込実績１４０３には、実績があることを示す「有」や、実績がないことを示す「無」が設定される。
【０１２５】
図１５は、ファイル属性管理テーブル２１７のデータ構成例を示す図である。図１５に示すように、ファイル属性管理テーブル２１７は、ファイル識別子１４０１と、ファイル名称１５０１と、チェックサム１５０２と、格納先ディレクトリ１５０３とを項目として備える。チェックサム１５０２は、格納先ディレクトリ１５０３にて得られるファイルのデータから検算用として他のファイルと重複しないよう計算された文字列である。格納先ディレクトリ１５０３は、ファイルの格納位置の一例を示すものである。
【０１２６】
図１６は、ファイルＩ／Ｏ振分プログラム３０８の処理（ファイルＩ／Ｏ振分処理部による処理）を説明するフローチャートである。以下、図１６を参照して（適宜他の図参照）、サーバ１０２がサーバに割り当てられたファイルへのファイルＩ／Ｏ処理を実施するために、ファイル格納先を割り出す手順を説明する。アプリケーションプログラム３０５にてファイルＩ／Ｏ処理を行う必要があると判断されると、アプリケーションプログラム３０５からオペレーティングシステム３０６が呼び出され、ファイルＩ／Ｏ処理プログラム３０７からファイルＩ／Ｏ振分プログラム３０８が呼び出される。
【０１２７】
ファイルＩ／Ｏ振分プログラム３０８は（ファイルＩ／Ｏ振分処理部は）、履歴ファイルキャッシュ管理テーブル３１０（図１７参照）を参照し、ファイルＩ／Ｏ処理要求に含まれるファイル名がファイル名称１７０１に登録されているエントリがあるか確認することによって、キャッシュ履歴にファイル登録があるか否かを判定する（ステップＳ１６０１）。
【０１２８】
ファイルＩ／Ｏ振分プログラム３０８は（ファイルＩ／Ｏ振分処理部は）、履歴ファイルキャッシュ管理テーブル３１０の確認の結果、キャッシュ履歴にファイル登録がない場合には（ステップＳ１６０１で「Ｎｏ」）、ステップＳ１６０２をスキップする。キャッシュ履歴にファイル登録がある場合には（ステップＳ１６０１で「Ｙｅｓ」）、ファイルＩ／Ｏ振分プログラム３０８は（ファイルＩ／Ｏ振分処理部は）、このエントリについてファイルＩ／Ｏ処理要求ごとに、ファイルへの書込み要求であれば書込実績１７０４を、ファイルからの読み取り要求であれば読取実績１７０３を参照し、実績の有無を確認する（ステップＳ１６０２）。
【０１２９】
ファイルＩ／Ｏ振分プログラム３０８は（ファイルＩ／Ｏ振分処理部は）、ファイルＩ／Ｏ処理要求ごとの実績確認の結果、ファイル処理要求の実績があるとき（ステップＳ１６０２で「有」）、ステップＳ１６０８に進む。ファイルＩ／Ｏ振分プログラム３０８は（ファイルＩ／Ｏ振分処理部は）、ファイルＩ／Ｏ処理要求ごとの実績確認の結果、ファイル処理要求の実績がないとき（ステップＳ１６０２で「無」）、ファイル処理要求ごとに処理を分岐し（ステップＳ１６０３）、ファイルＩ／Ｏ処理要求が書き込み要求の場合には（ステップＳ１６０３で「書込」）、ファイル格納先更新プログラム２１３の呼び出し（ステップＳ１６０４）、この結果から履歴ファイルキャッシュ管理テーブル３１０へ格納先ディレクトリ１７０２と書込実績１７０４とを更新する（ステップＳ１６０５）。
【０１３０】
ファイルＩ／Ｏ処理要求が読み取り要求の場合には（ステップＳ１６０３で「読取」）、ファイル格納先通知プログラム２１２の呼び出し（ステップＳ１６０６）、この結果から履歴ファイルキャッシュ管理テーブル３１０へ格納先ディレクトリ１７０２と読取実績１７０３とを更新する（ステップＳ１６０７）。ファイルＩ／Ｏ振分プログラム３０８は（ファイルＩ／Ｏ振分処理部は）、ファイルＩ／Ｏ処理要求するファイルを、履歴ファイルキャッシュ管理テーブル３１０の格納先ディレクトリ１７０２にて確認する（ステップＳ１６０６）。
【０１３１】
以上の処理で、サーバ１０２がサーバに割り当てたファイルへのファイルＩ／Ｏを実施するために、ファイル格納先を割り出すことができる。
【０１３２】
図１７は、履歴ファイルキャッシュ管理テーブル３１０のデータ構成例を示す図である。図１７に示すように、履歴ファイルキャッシュ管理テーブル３１０は、ファイル名称１７０１と、格納先ディレクトリ１７０２と、読取実績１７０３と、書込実績１７０４とを項目として備える。
【０１３３】
図１８は、履歴設定変更プログラム２１８の処理（履歴設定変更処理部による処理）の流れを示すフローチャートである。以下、図１８を参照して（適宜他の図参照）、サーバ１０２に割り当てたファイルシステムへの集約処理時の集約条件を変更する処理について説明する。なお、この処理は、履歴設定変更プログラム２１８を実行するコマンドがオペレータから端末１０６に入力されると、端末１０６から履歴設定変更プログラム２１８にそのコマンドが通知されることによって開始される。
【０１３４】
履歴設定変更プログラム２１８は（履歴設定変更処理部は）、呼び出し元から履歴識別子１３０１、集約条件（複製元からの履歴集約１３０５、複製元への履歴集約１３０６、複製先からの履歴集約１３０７、複製先への履歴集約１３０８）を指定されて呼び出される。呼び出し元が指定した集約条件が「否」である場合には、履歴集約プログラム２０６によるファイルシステムの集約処理においても複製元または複製先との間での集約が行われない。したがって、このような集約条件を与えてファイルシステムの設定変更をする場合は、共有ディスク１０３に少なくとも複製元ファイルシステムまたは複製先ファイルシステムと同容量の空き容量を確保する必要がある。そこで、履歴設定変更プログラム２１８は（履歴設定変更処理部は）、履歴割当管理テーブル２１５を参照し、呼び出し元が指定した集約条件が履歴割当管理テーブル２１５の集約条件（複製元からの履歴集約１３０５、複製元への履歴集約１３０６、複製先からの履歴集約１３０７、複製先への履歴集約１３０８）を「否」へと変更するものか否かを確認することによって、集約グループの分割があるか否かを判定する（ステップＳ１８０１）。
【０１３５】
集約グループの分割がないと判定された場合には（ステップＳ１８０１で「Ｎｏ」）、履歴設定変更プログラム２１８は（履歴設定変更処理部は）、呼び出し元から指定された集約条件を、履歴割当管理テーブル２１５の複製元からの履歴集約１３０５、複製元への履歴集約１３０６、複製先からの履歴集約１３０７、複製先への履歴集約１３０８に登録して（ステップＳ１８０４）、履歴設定変更プログラム２１８の処理を終了する。
【０１３６】
集約グループの分割があると判定された場合には（ステップＳ１８０１で「Ｙｅｓ」）、履歴設定変更プログラム２１８は（履歴設定変更処理部は）、集約処理の影響しない境界を抽出することで、各ファイルシステムを集約のグループごとに分類し、集約のグループごとの割当容量１３０９を加算することで、履歴の割当容量を確認する（ステップＳ１８０２）。例えば、図１３に示すテーブルの構成例の場合、履歴識別子Ｒ１のグループと、履歴識別子Ｒ２のグループと、履歴識別子Ｒ３，Ｒ４，Ｒ５のグループと、Ｒ６のグループと、Ｒ７のグループに分類され、割当容量の合計は、１６０ＧＢとなる。
【０１３７】
履歴設定変更プログラム２１８は（履歴設定変更処理部は）、得られた割当容量の合計と共有ディスク１０３の容量から共有ディスク１０３の空き容量を求め、ファイルシステムの設定変更が可能な共有ディスク１０３の空き容量があるか否かを判定する（ステップＳ１８０３）。空き容量があると判定された場合には（ステップＳ１８０３で「Ｙｅｓ」）、呼び出し元から指定された集約条件を、履歴割当管理テーブル２１５の複製元からの履歴集約１３０５、複製元への履歴集約１３０６、複製先からの履歴集約１３０７、複製先への履歴集約１３０８に登録して（ステップＳ１８０４）、履歴設定変更プログラム２１８の処理を終了する。空き容量がないと判定された場合には（ステップＳ１８０３で「Ｎｏ」）、履歴設定変更プログラム２１８は（履歴設定変更処理部は）、端末１０６を介してオペレータへアラートを出すことによって空き容量がない旨を報告し、空き容量の確保を要求する（ステップＳ１８０５）。
【０１３８】
以上の処理で、サーバ１０２に割り当てたファイルシステムへの集約処理時の集約条件の変更ができる。
【０１３９】
図１９は、ディスク容量通知プログラム２１１の処理（ディスク容量通知処理部による処理）の流れを示すフローチャートである。以下、図１９を参照して（適宜他の図参照）、サーバ１０２に割り当てたファイルシステムの容量を通知する処理について説明する。
【０１４０】
ディスク容量通知プログラム２１１（ディスク容量通知処理部）は、サーバ１０２からの依頼に従い、履歴割当管理テーブル２１５を参照し、サーバ識別子１３０２が、呼び出し元のサーバ１０２の識別情報であるエントリを選択し、選択したエントリの割当容量１３０９と使用量１３１０とを抽出して確認する（ステップＳ１９０１）。ディスク容量通知プログラム２１１（ディスク容量通知処理部）は、抽出した割当容量１３０９と使用量１３１０との値を、呼び出し元のディスク容量確認プログラム３１１へ通知する（ステップＳ１９０２）。
【０１４１】
図２０は、ディスク容量確認プログラム３１１の処理（ディスク容量確認処理部による処理）の流れを示すフローチャートである。以下、図２０を参照して（適宜他の図参照）、サーバ１０２に割り当てたファイルシステムの容量を確認する処理について説明する。なお、この処理は、オペレーティングシステム３０６がディスク容量確認プログラム３１１を呼び出すことによって開始される。
【０１４２】
ディスク容量確認プログラム３１１は（ディスク容量確認処理部は）、管理サーバ１０１のディスク容量通知プログラム２１１を呼び出すことによって、サーバ１０２に割り当てられたファイルシステムの割当容量と使用量との通知を依頼する（ステップＳ２００１）。ディスク容量確認プログラム３１１は（ディスク容量確認処理部は）、ステップＳ２００１で得られたディスク容量の情報を呼び出し元に通知する（ステップＳ２００２）。
【０１４３】
以上の処理で、サーバ１０２へ割り当てたファイルシステムの容量を確認することができる。
【０１４４】
図２１は、キャッシュ更新プログラム３１２の処理（キャッシュ更新処理部による処理）の流れを示すフローチャートである。以下、図２１を参照して（適宜他の図参照）、サーバ１０２内にキャッシュされた履歴ファイルキャッシュ管理テーブル３１０を更新する処理について説明する。
【０１４５】
キャッシュ更新プログラム３１２は（キャッシュ更新処理部は）、呼び出し元から、ファイル名称と、サーバ１０２にファイル名称として割り当てられているファイルの格納先ディレクトリとを指定される。キャッシュ更新プログラム３１２は（キャッシュ更新処理部は）、管理サーバ１０１からの依頼を受けると、履歴ファイルキャッシュ管理テーブル３１０を参照し、ファイル名称１７０１に呼び出し元が指定したファイル名称が指定されているエントリを選択し、選択したエントリの格納先ディレクトリ１７０２へ呼び出し元が指定した格納先ディレクトリを上書きし、さらに書込実績１７０４を「無」に設定する。
【０１４６】
以上の処理で、サーバ１０２内にキャッシュされた履歴ファイルキャッシュ管理テーブル３１０を更新できる。
【０１４７】
図２２は、ファイルシステム集約処理における機能呼び出しの流れを示す図である。ここで、図２２には示されていないが、複製元への履歴集約プログラム２０７および複製先への履歴集約プログラム２０８は、再帰的に呼び出される場合もある。
【０１４８】
図２３は、ファイルＩ／Ｏ処理要求における機能呼び出しの流れを示す図である。
【０１４９】
図２４は、容量監視処理における機能呼び出しの流れを示す図である。
【０１５０】
図２５は、ディスク容量確認処理における機能呼び出しの流れを示す図である。
【０１５１】
本実施形態によれば、各サーバが参照するファイルの内容が同一になるような場合に、共有ディスク内のファイルをサーバ同士で共有することができる。これによって、例えば、オペレーティングシステムやアプリケーションプログラムなどのプログラムへの修正パッチの適用といった定期保守作業などを行う場合に必要となる作業工数を低減することができる。
【図面の簡単な説明】
【０１５２】
【図１】本発明の一実施形態によるファイル管理システムの構成を示すブロック図である。
【図２】管理サーバの構成を示すブロック図である。
【図３】サーバの構成を示すブロック図である。
【図４】（ａ）は、システムコールの構成を表す図であり、（ｂ）は、履歴の複製関係を示す図である。
【図５】履歴割当プログラムの処理の流れを示すフローチャートである。
【図６】履歴集約プログラムの処理の流れを示すフローチャートである。
【図７】複製元への履歴集約プログラムの処理の流れを示すフローチャートである。
【図８】複製先への履歴集約プログラムの処理の流れを示すフローチャートである。
【図９】容量監視プログラムの処理の流れを示すフローチャートである。
【図１０】重複ファイル集約プログラムの処理の流れを示すフローチャートである。
【図１１】ファイル格納先通知プログラムの処理の流れを示すフローチャートである。
【図１２】ファイル格納先通知プログラムの処理の流れを示すフローチャートである。
【図１３】履歴割当管理テーブルのデータ構成例を示した図である。
【図１４】履歴ファイル管理テーブルのデータ構成例を示した図である。
【図１５】ファイル属性管理テーブルのデータ構成例を示した図である。
【図１６】ファイルＩ／Ｏ振分プログラムの処理の流れを示すフローチャートである。
【図１７】履歴ファイルキャッシュ管理テーブルのデータ構成例を示した図である。
【図１８】履歴設定変更プログラムの処理の流れを示すフローチャートである。
【図１９】ディスク容量通知プログラムの処理の流れを示すフローチャートである。
【図２０】ディスク容量確認プログラムの処理の流れを示すフローチャートである。
【図２１】キャッシュ更新プログラムの処理の流れを示すフローチャートである。
【図２２】ファイルシステム集約処理における機能呼び出しの流れを示す図である。
【図２３】ファイルＩ／Ｏ処理要求における機能呼び出しの流れを示す図である。
【図２４】容量監視処理における機能呼び出しの流れを示す図である。
【図２５】ディスク容量確認処理における機能呼び出しの流れを示す図である。
【符号の説明】
【０１５３】
１      ファイル管理システム
１０１  管理サーバ
１０２  サーバ
１０３  共有ディスク
１０４  ネットワークスイッチ
１０５  ファイバチャネルスイッチ
１０６  端末
２０１  メモリ（記憶部）
２０２  プロセッサ（処理部）
２０３  ＨＢＡ
２０４  ＮＩＣ（通信部）
２０５  履歴割当プログラム
２０６  履歴集約プログラム
２０７  複製元への履歴集約プログラム
２０８  複製先への履歴集約プログラム
２０９  容量監視プログラム
２１０  容量監視プログラム
２１０  重複ファイル集約プログラム
２１１  ディスク容量通知プログラム
２１２  ファイル格納先通知プログラム
２１３  ファイル格納先更新プログラム
２１４  オペレーティングシステム
２１５  履歴割当管理テーブル
２１６  履歴ファイル管理テーブル
２１７  ファイル属性管理テーブル
２１８  履歴設定変更プログラム
３０１  メモリ（記憶部）
３０２  プロセッサ（処理部）
３０３  ＨＢＡ
３０４  ＮＩＣ（通信部）
３０５  アプリケーションプログラム
３０６  オペレーティングシステム
３０７  ファイルＩ／Ｏ処理プログラム
３０８  ファイルＩ／Ｏ振分プログラム
３０９  ファイルＩ／Ｏ基本処理プログラム
３１０  履歴ファイルキャッシュ管理テーブル
３１１  ディスク容量確認プログラム
３１２  キャッシュ更新プログラム
４０１  システムコール名
４０２  引数
１３０１  履歴識別子
１３０２  サーバ識別子
１３０３  目的
１３０４  複製元履歴識別子
１４０１  ファイル識別子
１４０２  読取実績
１４０３  書込実績
１５０１  ファイル名称
１５０２  チェックサム
１５０３  格納先ディレクトリ
１７０１  ファイル名称
１７０２  格納先ディレクトリ
１７０３  読取実績
１７０４  書込実績
【図１】
2008210325.tif 000003
【図２】
2008210325.tif 000004
【図３】
2008210325.tif 000005
【図４】
2008210325.tif 000006
【図５】
2008210325.tif 000007
【図６】
2008210325.tif 000008
【図７】
2008210325.tif 000009
【図８】
2008210325.tif 000010
【図９】
2008210325.tif 000011
【図１０】
2008210325.tif 000012
【図１１】
2008210325.tif 000013
【図１２】
2008210325.tif 000014
【図１３】
2008210325.tif 000015
【図１４】
2008210325.tif 000016
【図１５】
2008210325.tif 000017
【図１６】
2008210325.tif 000018
【図１７】
2008210325.tif 000019
【図１８】
2008210325.tif 000020
【図１９】
2008210325.tif 000021
【図２０】
2008210325.tif 000022
【図２１】
2008210325.tif 000023
【図２２】
2008210325.tif 000024
【図２３】
2008210325.tif 000025
【図２４】
2008210325.tif 000026
【図２５】
2008210325.tif 000027