(57)【特許請求の範囲】
【請求項１】
計算機ノードを構成する複数のクライアントマシンを備えたファイルサーバ同士を情報伝達可能に接続すると共に、前記ファイルサーバの各々によって管理され、前記ファイルサーバの各々にベース層を提供するベース層提供用ストレージと、前記ファイルサーバの各々にキャッシュ層を提供する各ファイルサーバ毎のキャッシュ層提供用ストレージとをストレージエリアネットワークを介して前記ファイルサーバの各々に接続し、前記各クライアントマシンが要求するファイルを、そのクライアントマシンに接続したファイルサーバが、前記ベース層提供用ストレージから前記ストレージエリアネットワークを介して読み込んで前記キャッシュ層提供用ストレージに一時記憶し、前記クライアントマシンからの要求に応じた処理をキャッシュ層提供用ストレージ上のファイルに施してから、キャッシュ層提供用ストレージ上のファイルを前記ベース層提供用ストレージに書き戻すようにしたファイル共有システムにおいて、
前記ファイルサーバの各々に、
各ファイルサーバが備えるクライアントマシンからの要求によって其のファイルサーバに作用している負荷を検知して逐次更新記憶すると共に当該ファイルサーバに接続した他のファイルサーバとの情報伝達により他のファイルサーバの各々に記憶されている負荷の各々を逐次読み込んで各ファイルサーバ毎の負荷として逐次更新記憶する使用状況管理手段と、
前記使用状況管理手段に記憶されている当該ファイルサーバの負荷と各ファイルサーバ毎の負荷とを参照し、負荷の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに其れを管理するファイルサーバの負荷の昇冪の順で書き戻し優先度を設定する転送制御手段と、
前記転送制御手段によって設定された書き戻し優先度に従って、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻す書き戻し実行手段とを設けたことを特徴とするファイル共有システム。
【請求項２】
前記使用状況管理手段は、そのファイルサーバが備えるクライアントマシンからの要求によってオープンされているファイルの数を負荷を表すファイル使用数として逐次更新記憶すると共に当該ファイルサーバに接続した他のファイルサーバとの情報伝達により他のファイルサーバの各々に記憶されているファイル使用数の各々を逐次読み込んで各ファイルサーバ毎の負荷を表すファイル使用数として逐次更新記憶し、
前記転送制御手段は、前記使用状況管理手段に記憶されている当該ファイルサーバのファイル使用数と各ファイルサーバ毎のファイル使用数とを参照し、ファイル使用数の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに其れを管理するファイルサーバのファイル使用数の昇冪の順で書き戻し優先度を設定することを特徴とした請求項１記載のファイル共有システム。
【請求項３】
前記使用状況管理手段は、そのファイルサーバが備えるクライアントマシンからのファイルハンドルのオープン要求を受けて当該ファイルサーバのファイル使用数の値を１インクリメントする一方、その使用状況管理手段を有するファイルサーバが備えるクライアントマシンからのファイルハンドルのクローズ要求を受けて当該ファイルサーバのファイル使用数の値を１ディクリメントすることによって前記ファイル使用数を更新記憶する自サーバファイル使用数更新機能と、
当該ファイルサーバによって管理されているベース層提供用ストレージにオープン要求やクローズ要求の対象となるファイルハンドルが存在せず、当該ファイルサーバに接続した他のファイルサーバとの情報伝達によって他のファイルサーバにファイルハンドルやファイルのクローズを要求する必要が生じた際に、そのファイルハンドルやファイルのクローズの要求と共に当該ファイルサーバのファイル使用数の現在値を前記他のファイルサーバに転送すると共に、他のファイルサーバから該当するファイルハンドルやファイルのクローズ完了通知および其のファイルサーバのファイル使用数の現在値を受け取って、この現在値を受け取ったファイルサーバのファイル使用数の値を前記受け取った現在値に書き換えることによって各ファイルサーバ毎のファイル使用数を更新記憶する他サーバファイル使用数更新機能と、
他のファイルサーバとの情報伝達によってファイルハンドルやファイルのクローズの要求を受けた際に、該当するファイルハンドルやクローズ完了通知と共に当該ファイルサーバのファイル使用数の現在値をファイルハンドルやファイルのクローズの要求元となるファイルサーバに転送するファイル使用数転送機能とを備えたことを特徴とする請求項２記載のファイル共有システム。
【請求項４】
前記他サーバファイル使用数更新機能およびファイル使用数転送機能に代えて、
前記使用状況管理手段が、
所定周期毎に、その使用状況管理手段を有するファイルサーバと当該ファイルサーバに接続した他のファイルサーバとの間で情報伝達を行って、そのファイルサーバのファイル使用数の現在値を前記他のファイルサーバに転送すると共に前記他のファイルサーバから其のファイルサーバのファイル使用数を受け取って、前記各ファイルサーバ毎のファイル使用数を更新記憶するサーバファイル使用数転送更新機能を備えたことを特徴とする請求項３記載のファイル共有システム。
【請求項５】
前記書き戻し実行手段が、
前記転送制御手段によって設定された書き戻し優先度に従って、書き戻し優先度が上位のベース層提供用ストレージから順に、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻すように構成されていることを特徴とする請求項１，請求項２，請求項３または請求項４のうち何れか一項に記載のファイル共有システム。
【請求項６】
前記書き戻し実行手段が、
前記転送制御手段によって設定された書き戻し優先度に従って、書き戻し優先度が下位になるにつれて書き戻し開始までの待機時間が増大するようにして、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各優先度毎のベース層提供用ストレージに書き戻すように構成されていることを特徴とする請求項１，請求項２，請求項３または請求項４のうち何れか一項に記載のファイル共有システム。
【請求項７】
一定の時間間隔で前記書き戻し実行手段を作動させることを特徴とする請求項１，請求項２，請求項３，請求項４，請求項５または請求項６のうち何れか一項に記載のファイル共有システム。
【請求項８】
そのファイルサーバのキャッシュ層提供用ストレージに一時記憶されているファイルの容量の合計が予め決められた閾値に達した時点で前記書き戻し実行手段を作動させることを特徴とする請求項１，請求項２，請求項３，請求項４，請求項５または請求項６のうち何れか一項に記載のファイル共有システム。
【請求項９】
計算機ノードを構成する複数のクライアントマシンを備えたファイルサーバ同士を情報伝達可能に接続すると共に、前記ファイルサーバの各々によって管理され、前記ファイルサーバの各々にベース層を提供するベース層提供用ストレージと、前記ファイルサーバの各々にキャッシュ層を提供する各ファイルサーバ毎のキャッシュ層提供用ストレージとをストレージエリアネットワークを介して前記ファイルサーバの各々に接続し、前記各クライアントマシンが要求するファイルを、そのクライアントマシンに接続したファイルサーバが、前記ベース層提供用ストレージから前記ストレージエリアネットワークを介して読み込んで前記キャッシュ層提供用ストレージに一時記憶し、前記クライアントマシンからの要求に応じた処理をキャッシュ層提供用ストレージ上のファイルに施してから、キャッシュ層提供用ストレージ上のファイルを前記ベース層提供用ストレージに書き戻すようにしたファイル共有システムのためのファイル書き戻し制御プログラムであって、
前記ファイルサーバの各々が備えるマイクロプロセッサを、
各ファイルサーバが備えるクライアントマシンからの要求によって其のファイルサーバに作用している負荷を検知して当該ファイルサーバのメモリの記憶領域に逐次更新記憶させると共に当該ファイルサーバに接続した他のファイルサーバとの情報伝達により他のファイルサーバの各々に記憶されている負荷の各々を逐次読み込んで各ファイルサーバ毎の負荷として前記メモリの他の記憶領域に逐次更新記憶させる使用状況管理手段、
前記メモリの記憶領域に記憶されている当該ファイルサーバの負荷と前記メモリの前記他の記憶領域に記憶されている各ファイルサーバ毎の負荷とを参照し、負荷の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに其れを管理するファイルサーバの負荷の昇冪の順で書き戻し優先度を設定する転送制御手段、および、
前記転送制御手段によって設定された書き戻し優先度に従って、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻す書き戻し実行手段として機能させることを特徴とするファイル書き戻し制御プログラム。
【請求項１０】
計算機ノードを構成する複数のクライアントマシンを備えたファイルサーバ同士を情報伝達可能に接続すると共に、前記ファイルサーバの各々によって管理され、前記ファイルサーバの各々にベース層を提供するベース層提供用ストレージと、前記ファイルサーバの各々にキャッシュ層を提供する各ファイルサーバ毎のキャッシュ層提供用ストレージとをストレージエリアネットワークを介して前記ファイルサーバの各々に接続し、前記各クライアントマシンが要求するファイルを、そのクライアントマシンに接続したファイルサーバが、前記ベース層提供用ストレージから前記ストレージエリアネットワークを介して読み込んで前記キャッシュ層提供用ストレージに一時記憶し、前記クライアントマシンからの要求に応じた処理をキャッシュ層提供用ストレージ上のファイルに施してから、キャッシュ層提供用ストレージ上のファイルを前記ベース層提供用ストレージに書き戻すようにしたファイル共有システムのためのファイル書き戻し方法であって、
前記ファイルサーバの各々が、各ファイルサーバの備えるクライアントマシンからの要求によって其のファイルサーバに作用している負荷を検知して逐次更新記憶すると共に当該ファイルサーバに接続した他のファイルサーバとの情報伝達により他のファイルサーバの各々に記憶されている負荷の各々を逐次読み込んで各ファイルサーバ毎の負荷として逐次更新記憶し、
前記ファイルサーバの各々が、当該ファイルサーバの負荷と各ファイルサーバ毎の負荷とを参照し、負荷の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに其れを管理するファイルサーバの負荷の昇冪の順で書き戻し優先度を設定し、
前記ファイルサーバの各々が、そのファイルサーバによって設定された書き戻し優先度に従って、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻すようにしたことを特徴とするファイル書き戻し方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイル共有システムおよびファイル書き戻し制御プログラムとファイル書き戻し方法の改良に関する。
【背景技術】
【０００２】
ＨＰＣ（high performance computing）の用途などにおいて、並列計算機システムが使用されている。並列計算機システムでは、複数の計算ノードから共通のデータにアクセスできる共有ファイルシステムが使用される。今日、並列計算機システムが実現すべき計算性能の要求は増大し、計算ノードの数が増大している。また、計算性能と共に取り扱うデータの容量が増加し、ファイルシステムで使用するストレージ（記憶装置）の台数やローカルエリアネットワークの数も増加している。そして、必要とする容量の増加に伴い、階層型ストレージの使用が一般化している。
【０００３】
階層型ストレージでは、容量が少なく読み書きが高速なＳＳＤ（Solid State Drive）や高速回転型のハードディスクが提供する記憶域と容量が大きく読み書きが低速な大容量ハードディスクが提供する記憶域が利用される。以下、容量が少なく高速な読み書きが可能な記憶域をキャッシュ層、また、容量が大きく読み書きが低速な記憶域をベース層と呼ぶ。
【０００４】
階層型ストレージを援用した共有ファイルシステムを使用する場合、ジョブの開始前にジョブの対象となるファイルを指定しておき、ジョブの開始前に指定のファイルをベース層からキャッシュ層に読み込み、キャッシュ層に一時記憶したファイルに対してジョブが要求する処理を施した後で、ジョブの実行によって更新されたキャッシュ層のファイルをキャッシュ層からベース層に書き戻すようにする。
【０００５】
また、ＨＰＣの用途では、ファイルサーバのオーバヘッドを排して入出力の性能を向上させるため、ファイルサーバはベース層にあるファイルのメタデータのみ管理し、実際のデータの読み書きに際しては個々のベース層を管理するファイルサーバを介さずに、各々のファイルサーバからベース層を構成する個々のストレージに対して直接的な入出力を発行する手法が用いられる。ファイルサーバとベース層を構成するストレージはストレージエリアネットワークを介して接続され、ストレージエリアネットワークは、各々のファイルサーバからベース層を構成する個々のストレージへのダイレクトアクセスを許容し、また、必要とあればファイルサーバ間の情報伝達をも許容する。
【０００６】
このような手法を取るファイルシステムとして、Parallel Network File System（pNFS）やGSTORAGEFS（商標）などがある。これらのファイルシステムを使用するには、ファイルサーバが使用するストレージに計算ノードが直接的に接続可能である必要がある。
【０００７】
しかし、１台の計算ノードが取り扱えるローカルエリアネットワークの数や１台のストレージに接続可能なホストの数に限界があるため、１台の計算ノードで接続できる台数のストレージで扱えるサイズ以上のデータを取り扱うためには、計算ノードを複数のグループに分割し、各グループの計算ノードに対してファイルサーバを割り当てる。
【０００８】
このような構成の例を図８に示す。図８中のＰ１〜Ｐｉは各計算ノードを構成するクライアントマシン、Ｑ１〜ＱｊおよびＨはストレージエリアネットワーク、Ｒ１〜Ｒｊはローカルエリアネットワーク、Ｓ１〜Ｓｊはファイルサーバ、Ｔ１〜ＴｊはファイルサーバＳ１〜Ｓｊの各々にキャッシュ層を提供するＳＳＤや高速回転型のハードディスク等のストレージ（以下、キャッシュ層）、ＷはファイルサーバＳ１〜Ｓｊにベース層を提供する大容量ハードディスク等のストレージ（以下、ベース層）である。
【０００９】
各計算ノードＰ１〜Ｐｉは、それ自身がマウントしているファイルサーバが使用する同じストレージエリアネットワークに接続されたキャッシュ層に対してのみ直接の接続が可能である。例えば、計算ノードＰ１が直接的にアクセスできるのは計算ノードＰ１がマウントしているファイルサーバＳ１の使用するストレージエリアネットワークＱ１に接続されたキャッシュ層Ｔ１のみであり、計算ノードＰ１がキャッシュ層Ｔ２〜Ｔｊに直接的にアクセスすることはできない。
【００１０】
計算ノードＰ１が使用するファイルサーバＳ１は、計算ノードＰ１が読み書きの対象とするファイルを、計算ノードＰ１が其のファイルを使用する前に、ベース層Ｗからキャッシュ層Ｔ１に読み込んで一時記憶させ、計算ノードＰ１がキャッシュ層Ｔ１上のファイルを操作した後、もし、キャッシュ層Ｔ１上のファイルに変更が加えられていれば、変更が加えられたファイルをキャッシュ層Ｔ１からベース層Ｗに書き戻す。また、ベース層Ｗとキャッシュ層Ｔ１の間でのファイル移動の際には、ファイルをベース層に書き戻すだけでなく、このファイを管理するためのメタデータを更新する必要があるため、移動対象のファイルを管理するファイルサーバ、例えば、そのファイルのメタデータをファイルサーバＳ２が管理している状況下にあってはファイルサーバＳ２に対してメタデータの更新を要求する。
【００１１】
しかし、一般に、複数の計算ノードＰ１〜Ｐｉでは異なるジョブが実行されているため、ベース層Ｗへのファイルの書き戻しと、書き戻し対象を管理するファイルサーバへの計算ノードからの入出力要求が衝突することがある。例えば、前述のような状況下でファイルサーバＳ１がキャッシュ層Ｔ１上のファイルをベース層Ｗに書き戻しているとき、即ち、ファイルサーバＳ１からファイルサーバＳ２に対してメタデータの更新を依頼しているときに、計算ノードＰ３やノードＰ４からファイルサーバＳ２に入出力要求が与えられたとすると、この入出力要求とメタデータの更新処理がファイルサーバＳ２上で衝突するといった事態が発生することになる。
【００１２】
このようにして、書き戻しと計算ノードからの入出力要求が衝突すると、要求を受けたファイルサーバや要求を受けたファイルサーバの使用するベース層の負荷が上昇する。
【００１３】
そして、ファイルサーバやベース層の負荷が上昇すると、計算ノードに対する入出力が遅延するため、計算ノードの性能が低下するといった不都合を生じる。
【００１４】
コンピュータやストレージに作用する負荷の問題に関連する技術としては、特許文献１に開示されるファイル管理方法や特許文献２に開示されるネットワークストレージ仮想化方法が既に公知である。
【００１５】
しかし、特許文献１は、単に、階層管理やメタデータあるいは階層毎のアクセス頻度や階層間のデータ移動に関して開示したものに過ぎない。
【００１６】
これに対し、特許文献２では、ストレージの負荷の評価やファイルハンドルの構成およびファイルハンドルの一意性の保証について記載され、更に、ディスク使用率やネットワーク帯域使用率に基いてファイルのアクセス頻度の高いファイルすなわち過大な負荷の発生原因となるファイルを特定し、高負荷の原因となるファイルを相対的に負荷の低い状態にあるストレージに移動させることによって、ストレージ全体の負荷を平準化してコンピュータやストレージに作用する負荷を軽減する試みが開示されている。
しかし、その構成は、ファイルの読み出しやファイルの書き戻しといったファイル操作のタイミングを調整するものではなく、単に、問題となるファイルの保存場所をベース層内で調整することによって負荷の平準化を図るものに過ぎない。
また、特許文献２記載の発明は、アクセス頻度の高いファイルを其の時点で負荷の低いストレージに自由に移動させることが可能であるということを前提としたもので、ベース層とキャッシュ層の間といった用途の異なるストレージ間でのファイルの読み出しや書き戻しに関連したものではない。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】特開２００６−３０２０１２号公報（段落００１４，００１６〜００１９，００２９）
【特許文献２】特開２００４−５４７２１号公報（段落００３０，００３２，００４２〜００４４，００５２，００５４，００５６〜００５８）
【発明の概要】
【発明が解決しようとする課題】
【００１８】
本発明の目的は、ファイルサーバを経由したキャッシュ層からベース層へのファイルの書き戻しと計算ノードとなるクライアントマシンからの入出力要求が衝突しにくいファイル共有システムおよびファイル書き戻し制御プログラムとファイル書き戻し方法を提供することにある。
【課題を解決するための手段】
【００１９】
本発明のファイル共有システムは、計算機ノードを構成する複数のクライアントマシンを備えたファイルサーバ同士を情報伝達可能に接続すると共に、前記ファイルサーバの各々によって管理され、前記ファイルサーバの各々にベース層を提供するベース層提供用ストレージと、前記ファイルサーバの各々にキャッシュ層を提供する各ファイルサーバ毎のキャッシュ層提供用ストレージとをストレージエリアネットワークを介して前記ファイルサーバの各々に接続し、前記各クライアントマシンが要求するファイルを、そのクライアントマシンに接続したファイルサーバが、前記ベース層提供用ストレージから前記ストレージエリアネットワークを介して読み込んで前記キャッシュ層提供用ストレージに一時記憶し、前記クライアントマシンからの要求に応じた処理をキャッシュ層提供用ストレージ上のファイルに施してから、キャッシュ層提供用ストレージ上のファイルを前記ベース層提供用ストレージに書き戻すようにしたファイル共有システムにおいて、前記目的を達成するため、特に、
前記ファイルサーバの各々に、
各ファイルサーバが備えるクライアントマシンからの要求によって其のファイルサーバに作用している負荷を検知して逐次更新記憶すると共に当該ファイルサーバに接続した他のファイルサーバとの情報伝達により他のファイルサーバの各々に記憶されている負荷の各々を逐次読み込んで各ファイルサーバ毎の負荷として逐次更新記憶する使用状況管理手段と、
前記使用状況管理手段に記憶されている当該ファイルサーバの負荷と各ファイルサーバ毎の負荷とを参照し、負荷の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに其れを管理するファイルサーバの負荷の昇冪の順で書き戻し優先度を設定する転送制御手段と、
前記転送制御手段によって設定された書き戻し優先度に従って、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻す書き戻し実行手段とを設けたことを特徴とする構成を有する。
【００２０】
本発明のファイル書き戻し制御プログラムは、計算機ノードを構成する複数のクライアントマシンを備えたファイルサーバ同士を情報伝達可能に接続すると共に、前記ファイルサーバの各々によって管理され、前記ファイルサーバの各々にベース層を提供するベース層提供用ストレージと、前記ファイルサーバの各々にキャッシュ層を提供する各ファイルサーバ毎のキャッシュ層提供用ストレージとをストレージエリアネットワークを介して前記ファイルサーバの各々に接続し、前記各クライアントマシンが要求するファイルを、そのクライアントマシンに接続したファイルサーバが、前記ベース層提供用ストレージから前記ストレージエリアネットワークを介して読み込んで前記キャッシュ層提供用ストレージに一時記憶し、前記クライアントマシンからの要求に応じた処理をキャッシュ層提供用ストレージ上のファイルに施してから、キャッシュ層提供用ストレージ上のファイルを前記ベース層提供用ストレージに書き戻すようにしたファイル共有システムのためのファイル書き戻し制御プログラムであり、前記と同様の目的を達成するため、特に、
前記ファイルサーバの各々が備えるマイクロプロセッサを、
各ファイルサーバが備えるクライアントマシンからの要求によって其のファイルサーバに作用している負荷を検知して当該ファイルサーバのメモリの記憶領域に逐次更新記憶させると共に当該ファイルサーバに接続した他のファイルサーバとの情報伝達により他のファイルサーバの各々に記憶されている負荷の各々を逐次読み込んで各ファイルサーバ毎の負荷として前記メモリの他の記憶領域に逐次更新記憶させる使用状況管理手段、
前記メモリの記憶領域に記憶されている当該ファイルサーバの負荷と前記メモリの前記他の記憶領域に記憶されている各ファイルサーバ毎の負荷とを参照し、負荷の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに其れを管理するファイルサーバの負荷の昇冪の順で書き戻し優先度を設定する転送制御手段、および、
前記転送制御手段によって設定された書き戻し優先度に従って、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻す書き戻し実行手段として機能させることを特徴とする構成を有する。
【００２１】
本発明のファイル書き戻し方法は、計算機ノードを構成する複数のクライアントマシンを備えたファイルサーバ同士を情報伝達可能に接続すると共に、前記ファイルサーバの各々によって管理され、前記ファイルサーバの各々にベース層を提供するベース層提供用ストレージと、前記ファイルサーバの各々にキャッシュ層を提供する各ファイルサーバ毎のキャッシュ層提供用ストレージとをストレージエリアネットワークを介して前記ファイルサーバの各々に接続し、前記各クライアントマシンが要求するファイルを、そのクライアントマシンに接続したファイルサーバが、前記ベース層提供用ストレージから前記ストレージエリアネットワークを介して読み込んで前記キャッシュ層提供用ストレージに一時記憶し、前記クライアントマシンからの要求に応じた処理をキャッシュ層提供用ストレージ上のファイルに施してから、キャッシュ層提供用ストレージ上のファイルを前記ベース層提供用ストレージに書き戻すようにしたファイル共有システムのためのファイル書き戻し方法であり、前記と同様の目的を達成するため、特に、
前記ファイルサーバの各々が、当該ファイルサーバの負荷と各ファイルサーバ毎の負荷とを参照し、負荷の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに其れを管理するファイルサーバの負荷の昇冪の順で書き戻し優先度を設定し、
前記ファイルサーバの各々が、そのファイルサーバによって設定された書き戻し優先度に従って、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻すようにしたことを特徴とする構成を有する。
【発明の効果】
【００２２】
本発明のファイル共有システムおよびファイル書き戻し制御プログラムとファイル書き戻し方法は、ファイルサーバの各々が其のファイルサーバの負荷と他のファイルサーバ毎の負荷とを参照し、各ファイルサーバを使用しているクライアントマシンからの要求によって各ファイルサーバに作用している負荷の大小に応じ、各ファイルサーバが管理するベース層提供用ストレージに対し、ファイルサーバの負荷の小なるものから大なるものへと昇冪の順で書き戻し優先度を設定して、ファイルサーバの各々が、そのファイルサーバによって設定された書き戻し優先度に従って当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバが管理するベース層提供用ストレージに書き戻すようにしているので、クライアントマシンからの要求により其の時点で高い負荷が作用しているファイルサーバの管理するベース層提供用ストレージに対するファイルの書き戻し処理の優先度が自動的に低く設定される。
従って、ファイルの書き戻しが相対的に負荷の低いファイルサーバで管理されるベース層提供用ストレージから優先的に実行されることになり、ファイルの書き戻しに付随して要求されるファイル管理の処理、つまり、メタデータの更新に関わる処理が、負荷の高い状態にあるファイルサーバ上で実施される機会が減少し、結果的に、各ファイルサーバ上でクライアントマシンからの入出力要求とメタデータの更新処理とが重複発生して衝突する確率も減少するので、各ファイルサーバの負荷が軽減されると共にファイル共有システム全体のパフォーマンスも向上する。
【図面の簡単な説明】
【００２３】
【図１】本発明を適用した一実施形態のファイル共有システムの構成の概略について示したブロック図である。
【図２】同実施形態のファイル共有システムにおけるファイルサーバの構成の概略を示した機能ブロック図である。
【図３】同実施形態のファイル共有システムにおけるファイルサーバの構成の概略を示したブロック図である。
【図４】ファイルサーバが利用するテーブル手段を簡略化して示した概念図であり、図４（ａ）はファイル使用数をファイルサーバの各々に対応させて記憶するための自データ記憶テーブルと他データ記憶テーブルの論理構成を示した図、また、図４（ｂ）はファイルの書き戻しの優先順位を記憶する優先度記憶テーブルの論理構成を示した図である。
【図５】ファイルサーバがクライアントマシンからファイルハンドルのオープン要求を受けた際にファイルサーバのマイクロプロセッサが実行する処理の概略を示したフローチャートである。
【図６】クライアントマシンと其のファイルサーバおよび他のファイルサーバの間で行われる通信の一例について簡単に示したシーケンス図である。
【図７】ファイルサーバがクライアントマシンからファイルハンドルのクローズ要求を受けた際にファイルサーバのマイクロプロセッサが実行する処理の概略を示したフローチャートである。
【図８】計算ノードを複数のグループに分割して各グループの計算ノードに対してファイルサーバを割り当てたファイル共有システムの一般的な構成例について示したブロック図である。
【発明を実施するための形態】
【００２４】
次に、本発明を実施するための実施形態について図面を参照して詳細に説明する。
【００２５】
図１は本発明を並列計算機システムに適用した一実施形態のファイル共有システム１の構成の概略について示したブロック図である。
【００２６】
この実施形態のファイル共有システム１は、計算機ノードを構成するクライアントマシンＥ１１〜ＥＥｎｋと、クライアントマシンＥ１１〜ＥＥｎｋに共有ファイルシステムを提供するファイルサーバＡ１〜Ａｎと、ファイルサーバＡ１〜Ａｎの各々にベース層すなわち各種のファイルを記憶する領域を提供するベース層提供用ストレージ（記憶装置）Ｃ１〜Ｃｎと、ファイルサーバＡ１〜Ａｎの各々にキャッシュ層すなわちファイルを一時記憶するための領域を提供する各ファイルサーバＡ１〜Ａｎ毎のキャッシュ層提供用ストレージ（記憶装置）Ｂ１〜Ｂｎとを備える。
【００２７】
このうち、クライアントマシンＥ１１〜Ｅ１ｊはローカルエリアネットワークＤ１を介してファイルサーバＡ１に接続され、また、クライアントマシンＥｎ１〜ＥｎｋはローカルエリアネットワークＤｎを介してファイルサーバＡｎに接続されている。
【００２８】
また、ファイルサーバＡ１〜ＡｎはローカルエリアネットワークＦを介して相互に情報伝達可能に接続されている。
【００２９】
ファイルサーバＡ１〜Ａｎの各々にベース層を提供するベース層提供用ストレージＣ１〜Ｃｎは、夫々、ファイルサーバＡ１〜Ａｎによって個別に管理される。つまり、ｘ＝１〜ｎとして、ファイルサーバＡｘはベース層提供用ストレージＣｘに保存されたファイルのメタデータを管理する（但し、ｘは整数）。
【００３０】
ファイルサーバＡ１〜Ａｎとベース層提供用ストレージＣ１〜ＣｎはストレージエリアネットワークＧを介して接続されており、ファイルハンドルさえ明らかであれば、ファイルサーバＡ１〜Ａｎの各々は、ベース層提供用ストレージＣ１〜Ｃｎの何れからでもファイルを読み出すことができ、また、ベース層提供用ストレージＣ１〜Ｃｎの何れにでもファイルを書き戻すことができる。
【００３１】
ファイルサーバＡ１〜Ａｎの各々にキャッシュ層を提供する各ファイルサーバＡ１〜Ａｎ毎のキャッシュ層提供用ストレージＢ１〜ＢｎもストレージエリアネットワークＧを介してファイルサーバＡ１〜Ａｎに接続されるが、ファイルサーバＡ１〜Ａｎの各々がダイレクトにアクセスできるのは添え字が対応するキャッシュ層提供用ストレージＢ１〜Ｂｎのみである。つまり、ｘ＝１〜ｎとして、ファイルサーバＡｘはキャッシュ層提供用ストレージＢｘを使用することになる。
【００３２】
このファイル共有システム１は、各クライアントマシンＥ１１〜Ｅ１ｊが要求するファイルを、そのクライアントマシンに接続したファイルサーバが、何れかのベース層提供用ストレージからストレージエリアネットワークＧを介して読み込み、そのファイルサーバすなわちクライアントマシンからの要求を受けたファイルサーバに対応するキャッシュ層提供用ストレージに一時記憶し、クライアントマシンからの要求に応じた処理をキャッシュ層提供用ストレージ上のファイルに施してから、そのファイルサーバが、キャッシュ層提供用ストレージ上のファイルを、ストレージエリアネットワークＧを介して、ベース層提供用ストレージに書き戻すようにしたファイル共有システムである。
【００３３】
従って、例えば、ファイルサーバＡ１がベース層提供用ストレージＣ１を管理してベース層提供用ストレージＣ１のファイルのメタデータを記憶している状況下においてクライアントマシンＥ１１がベース層提供用ストレージＣ１にあるファイルをファイルサーバＡ１に要求した場合にあっては、ローカルエリアネットワークＤ１を介してクライアントマシンＥ１１に接続したファイルサーバＡ１が直ちに其のファイルのファイルハンドルを取得し、このファイルハンドルに基いて、ファイルサーバＡ１がストレージエリアネットワークＧを介してベース層提供用ストレージＣ１から該当ファイルを読み込んで、そのキャッシュ層提供用ストレージＢ１に当該ファイルを一時記憶し、クライアントマシンＥ１１からの要求に応じた処理をキャッシュ層提供用ストレージＢ１上のファイルに施してから、ファイルサーバＡ１が、キャッシュ層提供用ストレージＢ１上の当該ファイルをストレージエリアネットワークＧ経由でベース層提供用ストレージＣ１に書き戻すことになる。
ここでファイルサーバＡ１が直ちに該当ファイルのファイルハンドルを取得できるのは、ファイルサーバＡ１それ自体がベース層提供用ストレージＣ１にあるファイルのメタデータを管理しているからである。
この場合は、ファイルの書き戻しに際し、ファイルサーバＡ１が其れ自体の内部処理で該当ファイルのメタデータを更新することになる。
【００３４】
また、例えば、ファイルサーバＡｎがベース層提供用ストレージＣｎを管理してベース層提供用ストレージＣｎのファイルのメタデータを記憶している状況下においてクライアントマシンＥ１１がベース層提供用ストレージＣｎにあるファイルをファイルサーバＡ１に要求した場合にあっては、ローカルエリアネットワークＤ１を介してクライアントマシンＥ１１に接続したファイルサーバＡ１が直ちに其のファイルのファイルハンドルを取得することはできないので、まず、ファイルサーバＡ１がローカルエリアネットワークＦを介してファイルサーバＡｎに其のファイルのファイルハンドルを問い合わせ、ファイルサーバＡ１がファイルサーバＡｎから其のファイルのファイルハンドルを取得し、次いで、このファイルハンドルに基いて、ファイルサーバＡ１がストレージエリアネットワークＧを介してベース層提供用ストレージＣｎに直接的にアクセスし、ファイルサーバＡ１がベース層提供用ストレージＣｎから該当ファイルを読み込んで其のキャッシュ層提供用ストレージＢ１に当該ファイルを一時記憶し、クライアントマシンＥ１１からの要求に応じた処理をキャッシュ層提供用ストレージＢ１上のファイルに施してから、ファイルサーバＡ１が、キャッシュ層提供用ストレージＢ１上の当該ファイルをストレージエリアネットワークＧ経由でベース層提供用ストレージＣｎに書き戻すことになる。
ここでファイルサーバＡ１が直ちに該当ファイルのファイルハンドルを取得できないのは、ファイルサーバＡ１がベース層提供用ストレージＣｎにあるファイルのメタデータを直接的に管理していないからである。
この場合、ファイルの書き戻しに際しては、ファイルサーバＡ１が、ベース層提供用ストレージＣｎを管理するファイルサーバＡｎに対し、ローカルエリアネットワークＦを介して該当ファイルのメタデータの更新を依頼し、ファイルサーバＡｎが其の内部処理によって該当ファイルのメタデータを更新することになる。
【００３５】
キャッシュ層提供用ストレージＢ１〜Ｂｎは容量が少なく読み書きが高速なＳＳＤ（Solid State Drive）や高速回転型のハードディスク等のストレージによって構成され、また、ベース層提供用ストレージＣ１〜Ｃｎは容量が大きく比較的に読み書きが低速な大容量ハードディスク等によって構成されている。
キャッシュ層提供用ストレージＢ１〜Ｂｎは各ファイルサーバＡ１〜Ａｎ毎のキャッシュ層提供用ストレージである。既に述べたように、例えば、キャッシュ層提供用ストレージＢ１はファイルサーバＡ１に専用のキャッシュ層提供用ストレージであり、ファイルサーバＡｎ等が此れに直接的にアクセスすることはできない。
一方、ストレージエリアネットワークＧを介してファイルサーバＡ１〜Ａｎの各々に接続されたベース層提供用ストレージＣ１〜Ｃｎは、ファイルサーバＡ１〜Ａｎの何れに対してもベース層を提供することが可能であり、ファイルサーバＡ１〜Ａｎは何れもベース層提供用ストレージＣ１〜Ｃｎに対してのダイレクトアクセスが可能である。
【００３６】
図２はファイルサーバＡ１〜Ａｎを代表する１つのファイルサーバＡ１を例にとってファイルサーバＡ１〜Ａｎの構成の概略を示した機能ブロック図であり、ファイルサーバＡ１〜Ａｎの構成は何れも同等である。
なお、図２においてはローカルエリアネットワークＤ１を介してファイルサーバＡ１に接続するクライアントマシンＥ１１〜Ｅ１ｊのうち此れらを代表する１つのクライアントマシンＥ１ｉのみを記載し、ストレージエリアネットワークＧを介してファイルサーバＡ１がダイレクトにアクセス可能なベース層提供用ストレージＣ１〜Ｃｎのうち此れらを代表する１つのベース層提供用ストレージＣｍのみを記載して、ローカルエリアネットワークＤ１，ローカルエリアネットワークＦ，ストレージエリアネットワークＧに関しては記載を省略している（但し、１＜ｉ＜ｊ、１＜ｍ＜ｎ、ｍは整数）。
【００３７】
ファイルサーバＡ１は、共有サービス提供部Ｕ１と負荷管理部Ｖ１を備える。
【００３８】
このうち共有サービス提供部Ｕ１は、クライアントマシンＥ１１〜Ｅ１ｊに共有ファイルシステムを提供するためのものであり、例えば、クライアントからのリクエストを処理するためのＮＦＳデーモンやファイル共有サービスを提供するためのＣＩＦＳサーバプログラム（Common Internet File System）等が一般に知られている。
より具体的には、この実施形態における共有サービス提供部Ｕ１の主要部はファイル共有手段Ｕ１１と入出力手段Ｕ１２によって構成される。
ファイル共有手段Ｕ１１は、クライアントマシンＥ１１〜Ｅ１ｊからの依頼を受けてクライアントマシンＥ１１〜Ｅ１ｊに提供する共有ファイルシステムのプロトコルを処理し、キャッシュ層提供用ストレージＢ１やベース層提供用ストレージＣ１〜Ｃｎを対象とする入出力処理を行うように入出力手段Ｕ１２に要求し、これを受けた入出力手段Ｕ１２がファイル共有手段Ｕ１１によるプロトコル処理の結果に基づいてキャッシュ層提供用ストレージＢ１やベース層提供用ストレージＣ１〜Ｃｎに入出力要求を発行してデータの読み書きを行い、その結果をファイル共有手段Ｕ１１に返し、更に、ファイル共有手段Ｕ１１が此の結果を依頼元のクライアントマシンＥ１１〜Ｅ１ｊに転送する。
更に、入出力手段Ｕ１２は、ファイル共有手段Ｕ１１からの要求に応じ、ベース層提供用ストレージＣ１〜Ｃｎからキャッシュ層提供用ストレージＢ１にファイルを読み込んだり、キャッシュ層提供用ストレージＢ１からベース層提供用ストレージＣ１〜Ｃｎにファイルを書き戻す機能を備える。
ファイル共有手段Ｕ１１および入出力手段Ｕ１２に関連する此れらの構成と機能は既に公知である。
【００３９】
一方、負荷管理部Ｖ１は、ファイルサーバＡ１およびファイルサーバＡ１にローカルエリアネットワークＦを介して接続した他のファイルサーバＡ２〜Ａｎの負荷を把握してファイルサーバＡ１のキャッシュ層提供用ストレージＢ１とベース層提供用ストレージＣ１〜Ｃｎとの間のファイルの転送を制御するためのものである。
この実施形態の負荷管理部Ｖ１は、ファイルサーバＡ１が備えるクライアントマシンＥ１１〜Ｅ１ｊからの要求によってファイルサーバＡ１がオープンしているファイルの数をファイルサーバＡ１の負荷に相当するファイル使用数ＣＡ１として逐次更新記憶すると共に、ファイルサーバＡ１にローカルエリアネットワークＦを介して接続した他のファイルサーバＡ２〜Ａｎとの情報伝達により他のファイルサーバＡ２〜Ａｎの各々に記憶されているファイル使用数ＣＡ２〜ＣＡｎの各々を逐次読み込んでファイルサーバＡ２〜Ａｎ毎のファイル使用数ＣＡ２〜ＣＡｎをファイルサーバＡ２〜Ａｎの負荷に相当する値として逐次更新記憶する使用状況管理手段Ｖ１１を備える。また、負荷管理部Ｖ１は、使用状況管理手段Ｖ１１に記憶されているファイルサーバＡ１のファイル使用数ＣＡ１と各ファイルサーバＡ２〜Ａｎ毎のファイル使用数ＣＡ２〜ＣＡｎを参照し、ファイル使用数の大小すなわち負荷の大小に従って、各ファイルサーバＡ１〜Ａｎによって管理されているベース層提供用ストレージＣ１〜Ｃｎに其れを管理するファイルサーバＡ１〜Ａｎの負荷の小なるものから大なるものへと昇冪の順で書き戻し優先度を設定する転送制御手段Ｖ１２を備える。
これらの使用状況管理手段Ｖ１１および転送制御手段Ｖ１２は此の実施形態に固有の構成要素である。
この実施形態の使用状況管理手段Ｖ１１は、特に、クライアントマシンＥ１１〜Ｅ１ｊから共有サービス提供部Ｕ１のファイル共有手段Ｕ１１に入力される要求を監視し、クライアントマシンＥ１１〜Ｅ１ｊからファイル共有手段Ｕ１１にファイルハンドルのオープン要求が入力されたときにファイルサーバＡ１のファイル使用数ＣＡ１の値を１インクリメントする一方、クライアントマシンＥ１１〜Ｅ１ｊからファイル共有手段Ｕ１１にファイルハンドルのクローズ要求が入力されたときにファイルサーバＡ１のファイル使用数ＣＡ１の値を１ディクリメントする自サーバファイル使用数更新機能を有する。
ファイル使用数の少ないファイルサーバの負荷が小さくファイル使用数の多いファイルサーバの負荷が大きいとする理由は、ＨＰＣ（high performance computing）で使用するプログラムの典型的なデータの入出力のパターンにあっては、ファイルハンドルを開いて大きなサイズのファイルを纏めて読み込んでからファイルをクローズしたり、ファイルハンドルを開いて大きなサイズのファイルを纏めて書き出してからファイルをクローズするといった処理が行われるのが一般的であって、ファイルハンドルをオープンしている期間に入出力の負荷が大きくなるのが普通だからである。
なお、ファイルハンドルのオープン／クローズをファイル共有手段Ｕ１１から容易に検出できる共有ファイルシステムの一例としてＣＩＦＳ（Common Internet File System）等が一般に知られている。オープン／クローズといった状態を通知しない共有ファイルシステムの場合であっても、プロトコルの拡張や変更によってファイル共有手段Ｕ１１から使用状況管理手段Ｖ１１へのオープン／クローズの通知を実現するように構成することは技術的に容易である。
また、この使用状況管理手段Ｖ１１は、ファイルサーバＡ１によって管理されているベース層提供用ストレージＣ１にオープン要求やクローズの対象となるファイルが存在せず、ファイルサーバＡ１に接続した他のファイルサーバＡ２〜Ａｎとの情報伝達によって他のファイルサーバＡ２〜Ａｎの何れか、例えば、該当するファイルを管理するファイルサーバＡｙにファイルハンドルやファイルのクローズを要求する必要が生じた際に、そのファイルハンドルの要求やファイルのクローズの要求と共に当該ファイルサーバＡ１のファイル使用数の現在値ＣＡ１を他のファイルサーバＡｙに転送すると共に、他のファイルサーバＡｙから該当するファイルハンドルやファイルのクローズ完了通知および其のファイルサーバのファイル使用数の現在値ＣＡｙを受け取って、この現在値ＣＡｙを受け取ったファイルサーバＡｙのファイル使用数の値ＣＡｙを、受け取った現在値ＣＡｙで書き換えることによって、ファイルサーバＡｙのファイル使用数ＣＡｙの値を更新記憶する他サーバファイル使用数更新機能を有する（但し、１＜ｙ＜ｎ、ｙは整数））。
使用状況管理手段Ｖ１１は、更に、他のファイルサーバＡ２〜Ａｎとの情報伝達によってファイルハンドルやファイルのクローズの要求を受けた際に、該当するファイルハンドルやクローズ完了通知と共にファイルサーバＡ１のファイル使用数の現在値ＣＡ１をファイルハンドルやファイルのクローズの要求元となるファイルサーバＡ２〜Ａｎに転送するファイル使用数転送機能を有する。
【００４０】
入出力手段Ｕ１２がファイル共有手段Ｕ１１からの要求を受けてキャッシュ層提供用ストレージＢ１からベース層提供用ストレージＣ１〜Ｃｎにファイルを書き戻す機能を備えていることは既に述べた通りであり、この実施形態では、転送制御手段Ｖ１２によって設定された書き戻し優先度に従ってファイルサーバＡ１のキャッシュ層提供用ストレージＢ１上のファイルを各ファイルサーバＡ１〜Ａｎによって管理されているベース層提供用ストレージＣ１〜Ｃｎに書き戻すための書き戻し実行手段として、公知の入出力手段Ｕ１２を利用している。
【００４１】
図３はファイルサーバＡ１〜Ａｎを代表する１つのファイルサーバＡ１を例にとってファイルサーバＡ１〜Ａｎの構成の概略を示したブロック図である。
【００４２】
ファイルサーバＡ１はパーソナルコンピュータもしくはワークステーション等によって構成される通常のコンピュータであり、演算処理用のマイクロプロセッサ２と、マイクロプロセッサ２の制御プログラムを格納したＲＯＭ３と、各種のパラメータ等を記憶するための不揮発性メモリ４と、各種のデータの一時記憶等に利用されるＲＡＭ５と、内蔵型のハードディスク６、ならびに、モニタ７とキーボード８およびマウス９を接続するための入出力回路１０、そして、クライアントマシンＥ１１〜Ｅ１ｊを備えたローカルエリアネットワークＤ１に接続するためのインターフェイス１１と、ファイルサーバＡ２〜Ａｎを備えたローカルエリアネットワークＦに接続するためのインターフェイス１２と、ベース層提供用ストレージＣ１〜Ｃｎを備えたストレージエリアネットワークＧに接続するためのインターフェイス１３を備える。
【００４３】
ハードディスク６には、クライアントマシンＥ１１〜Ｅ１ｊからのリクエストを処理してファイル共有サービスを提供するためのサーバプログラムの他、ファイルサーバＡ１のマイクロプロセッサ２を使用状況管理手段Ｖ１１，使用状況管理手段Ｖ１１における自サーバファイル使用数更新機能実現手段，使用状況管理手段Ｖ１１における他サーバファイル使用数更新機能実現手段，使用状況管理手段Ｖ１１におけるファイル使用数転送機能実現手段，転送制御手段Ｖ１２，書き戻し実行手段として機能させるためのファイル書き戻し制御プログラムが格納されている。
【００４４】
また、ハードディスク６には、ファイルサーバＡ１が管理するベース層提供用ストレージＣ１に記憶されたファイルを管理するためのメタデータ等も保存されている。
【００４５】
そして、ファイルサーバＡ１のメモリの１つであるＲＡＭ５の記憶領域の一部はファイルサーバＡ１のファイル使用数の現在値ＣＡ１を記憶するための自データ記憶テーブル１４として利用され、また、ＲＡＭ５の記憶領域の他の一部は他のファイルサーバＡ２〜Ａｎの各々に記憶されているファイル使用数ＣＡ２〜ＣＡｎをファイルサーバＡ２〜Ａｎの各々に対応させて記憶するための他データ記憶テーブル１５としても利用されるようになっている。
【００４６】
図４（ａ）にデータテーブル１４，１５の論理構成を簡略化して示す。自データ記憶テーブル１４および他データ記憶テーブル１５には各ファイルサーバＡ１〜Ａｎが其の時点で把握しているファイル使用数ＣＡ１〜ＣＡｎの値が各ファイルサーバＡ１〜Ａｎの名称すなわち識別情報に一対一に対応して記憶されるようになっている。
図４（ｂ）に優先度記憶テーブル１６の論理構成の一例を示す。優先度記憶テーブル１６にはファイルサーバとベース層提供用ストレージの組に対するメタデータの書き戻しの優先順位が記憶される。
【００４７】
図５はファイルサーバＡ１がクライアントマシンＥ１１〜Ｅ１ｊからファイルハンドルのオープン要求を受けた際にマイクロプロセッサ２が実行する処理の概略を示したフローチャートである。
【００４８】
次に、図５を参照して、使用状況管理手段Ｖ１１，使用状況管理手段Ｖ１１における自サーバファイル使用数更新機能実現手段，使用状況管理手段Ｖ１１における他サーバファイル使用数更新機能実現手段，使用状況管理手段Ｖ１１におけるファイル使用数転送機能実現手段として機能するマイクロプロセッサ２の具体的な処理動作について説明する。
なお、自データ記憶テーブル１４および他データ記憶テーブル１５の内容はファイルサーバＡ１の電源投入時に初期化されているものとする。
【００４９】
まず、クライアントマシンＥ１１〜Ｅ１ｊの何れかのアプリケーションプログラムが起動し（ステップｓ１）、目的とするファイルをオープンするために必要とされるファイルハンドルの値をファイルサーバＡ１のファイル共有手段Ｕ１１に求める（ステップｓ２）。
ここでは、一例として、クライアントマシンＥ１ｉがファイルサーバＡ１にファイルハンドルの値を求めているものとする。
【００５０】
使用状況管理手段Ｖ１１における自サーバファイル使用数更新機能実現手段として機能するマイクロプロセッサ２は、ファイル共有手段Ｕ１１に対するクライアントマシンＥ１ｉからのオープン要求の入力を検知し、ファイルサーバＡ１のメモリであるＲＡＭ５の自データ記憶テーブル１４に記憶されているファイル使用数の現在値ＣＡ１の値を読み込んで１インクリメントし、この値を自データ記憶テーブル１４に再記憶させることによって、ファイル使用数の現在値ＣＡ１の値を更新記憶する（ステップｓ３）。
【００５１】
また、ファイルサーバＡ１のファイル共有手段Ｕ１１は、クライアントマシンＥ１ｉから要求されたファイルのパス名を探索し（ステップｓ４）、要求されたファイルがファイルサーバＡ１自身のローカルファイルシステム上、つまり、キャッシュ層提供用ストレージＢ１もしくはベース層提供用ストレージＣ１上に存在するか否かを判定する（ステップｓ５）。
【００５２】
ステップｓ５の判定結果が真となってファイルサーバＡ１自身のローカルファイルシステム上に目的のファイルがあることが明らかとなった場合には、ファイル共有手段Ｕ１１が、要求されたファイルのファイルハンドルをクライアントマシンＥ１ｉに直ちに送信する（ステップｓ９）。
クライアントマシンＥ１ｉがファイルハンドルを取得した後のファイル操作に関しては従来と同様であり、例えば、ファイルサーバＡ１がストレージエリアネットワークＧを介してベース層提供用ストレージＣ１から目的のファイルを読み込んで、そのキャッシュ層提供用ストレージＢ１にファイルを一時記憶し、クライアントマシンＥ１１からの要求に応じた処理をキャッシュ層提供用ストレージＢ１上のファイルに施してファイルを書き換えたり更新したりする処理が行われることになる。
【００５３】
一方、ステップｓ５の判定結果が偽となってファイルサーバＡ１自身のローカルファイルシステム上に目的のファイルがないことが明らかとなった場合には、ファイル共有手段Ｕ１１が、ファイルのパス名に応じ、ローカルエリアネットワークＦを介して他のファイルサーバＡ２〜Ａｎの何れか、例えば、該当ファイルを管理するファイルサーバＡｙにファイルハンドルを要求することになるが、この際、他サーバファイル使用数更新機能実現手段として機能するマイクロプロセッサ２がファイルサーバＡ１のファイル使用数の現在値ＣＡ１を自データ記憶テーブル１４から読み出してファイルハンドルの要求に添付することになるので、ファイルサーバＡｙには、ファイルハンドルの要求と共にファイルサーバＡ１のファイル使用数の現在値ＣＡ１が送信されることになる（ステップｓ６）。
【００５４】
そして、ファイルハンドルの要求と共にファイルサーバＡ１のファイル使用数の現在値ＣＡ１を受け取ったファイルサーバＡｙのファイル共有手段が、ファイルサーバＡ１から要求されたファイルハンドルをファイルサーバＡ１に送信することになるが、この際、ファイルサーバＡｙにおけるファイル使用数転送機能実現手段つまりファイルサーバＡｙのマイクロプロセッサが、ファイルサーバＡｙのファイル使用数の現在値ＣＡｙを、ファイルサーバＡｙのメモリであるＲＡＭに生成されている自データ記憶テーブルから読み出してファイルハンドルに添付することになるので、ファイルサーバＡ１には、要求に対応したファイルハンドルの値と共にファイルサーバＡｙのファイル使用数の現在値ＣＡｙの値が送信されることになる。
【００５５】
次いで、ファイルサーバＡ１の使用状況管理手段Ｖ１１における他サーバファイル使用数更新機能実現手段として機能するマイクロプロセッサ２が、ファイルサーバＡｙから送信されたファイルハンドルと共にファイルサーバＡｙのファイル使用数の現在値ＣＡｙを受け取り（ステップｓ７）、ファイルサーバＡ１のＲＡＭ５の他データ記憶テーブル１５におけるファイルサーバＡｙの名称に対応させて今回受信した現在値ＣＡｙを上書きすることによって、他のファイルサーバーＡ２〜Ａｎのうちの１つであるファイルサーバＡｙのファイル使用数ＣＡｙを更新して記憶する（ステップｓ８）。
【００５６】
そして、前記と同様、ファイル共有手段Ｕ１１が、ファイルサーバＡｙから送信されたファイルハンドルすなわちクライアントマシンＥ１ｉから要求されたファイルのファイルハンドルをクライアントマシンＥ１ｉに送信する（ステップｓ９）。
この際、ファイル共有手段Ｕ１１はクライアントマシンＥ１ｉに返すファイルハンドルに対して対象となるファイルの一意性を保証するための処理を施す。具体的な方法としては、ファイルハンドルにファイルサーバＡｙを特定する識別子、例えば、ファイルサーバＡｙのホスト名，ＩＰアドレス，ＭＡＣアドレス等を付す方法が知られている。無論、ファイルサーバＡｙを特定する識別子に代えて当該ファイルが格納されているベース層提供用ストレージＣｙを直に特定する識別子を使用しても構わない。
【００５７】
クライアントマシンＥ１ｉがファイルハンドルを取得した後のファイル操作に関しては前記と同様であり、例えば、ファイルサーバＡ１がストレージエリアネットワークＧを介してベース層提供用ストレージＣｙから目的のファイルを読み込んで、そのキャッシュ層提供用ストレージＢ１にファイルを一時記憶し、クライアントマシンＥ１１からの要求に応じた処理をキャッシュ層提供用ストレージＢ１上のファイルに施してファイルを書き換えたり更新したりする処理が行われることになる。
【００５８】
ここで、図６を参照してクライアントマシンＥ１ｉとファイルサーバＡ１とファイルサーバＡｙの間で行われる通信の一例について簡単に説明する。
【００５９】
図６はクライアントマシンＥ１ｉがファイルサーバＡ１に対してパス名“／export／a／b／c”のファイルをオープンする要求を出した場合にクライアントマシンＥ１ｉとファイルサーバＡ１とファイルサーバＡｙの間で行われる通信の一例として、パス名“／export／a／b／c”のファイルがファイルサーバＡ１のローカルファイルシステム上に存在せず、ベース層提供用ストレージＣｙ上に存在する場合について示したシーケンス図である。
【００６０】
まず、クライアントマシンＥ１ｉがファイルをオープンするとファイルサーバＡ１に“／export／a／b／c”のファイルハンドルのオープン要求が送信される（図６のシーケンスＴ１／図５のステップｓ１〜ステップｓ２に対応）。
【００６１】
ファイルサーバＡ１はファイルハンドルのオープン要求を受けると、ファイルサーバＡ１それ自身のファイル使用数の現在値ＣＡ１の値を１インクリメントし（図６のシーケンスＴ２／図５のステップｓ３に対応）、ファイルサーバＡｙに対して“／export／a／b／c”をオープンする要求と共にファイルサーバＡ１のファイル使用数の現在値ＣＡ１を送信する（図６のシーケンスＴ３／図５のステップｓ６に対応）。
【００６２】
次いで、ファイルサーバＡｙのファイル使用数転送機能実現手段がファイル“／export／a／b／c”のファイルハンドルＦＨとファイルサーバＡｙのファイル使用数の現在値ＣＡｙをファイルサーバＡ１に応答する（図６のシーケンスＴ４）。
【００６３】
そして、ファイルサーバＡ１が、ファイルサーバＡｙから受け取ったファイルハンドルＦＨをクライアントマシンＥ１ｉに返す（図６のシーケンスＴ５）。
【００６４】
次に、ファイルサーバＡ１がクライアントマシンＥ１１〜Ｅ１ｊからファイルハンドルのクローズ要求を受けた際にマイクロプロセッサ２が実行する処理について図７を参照して簡単に説明する。
【００６５】
まず、クライアントマシンＥ１１〜Ｅ１ｊの何れかのアプリケーションプログラムがファイルをクローズし（ステップｔ１）、ファイルサーバＡ１のファイル共有手段Ｕ１１にファイルハンドルを指定してファイルのクローズに関連する処理の実行を求める（ステップｔ２）。
【００６６】
使用状況管理手段Ｖ１１における自サーバファイル使用数更新機能実現手段として機能するマイクロプロセッサ２は、ファイル共有手段Ｕ１１に対するクライアントマシンＥ１ｉからのクローズ要求の入力を検知し、ファイルサーバＡ１のメモリであるＲＡＭ５の自データ記憶テーブル１４に記憶されているファイル使用数の現在値ＣＡ１の値を読み込んで１ディクリメントし、この値を自データ記憶テーブル１４に再記憶させることによって、ファイル使用数の現在値ＣＡ１の値を更新記憶する（ステップｔ３）。
【００６７】
また、ファイルサーバＡ１のファイル共有手段Ｕ１１は、クライアントマシンＥ１ｉから要求されたファイルのファイルハンドルを探索し（ステップｔ４）、要求されたファイルハンドルに対応するファイルがファイルサーバＡ１自身のローカルファイルシステム上に存在するか否かを判定する（ステップｔ５）。
【００６８】
ステップｔ５の判定結果が真となってファイルサーバＡ１自身のローカルファイルシステム上に目的のファイルがあることが明らかとなった場合には、ファイル共有手段Ｕ１１が、要求されたファイルのファイルハンドルを開放し、直ちにクライアントマシンＥ１ｉにクローズ処理の完了を通知する（ステップｔ９）。
クローズの対象となったファイルがベース層提供用ストレージＣ１〜Ｃｎからキャッシュ層提供用ストレージＢ１に一時記憶されたものであって、そのファイルに書き換えや更新等の処理が施されていた場合には、このファイルを読み込み元のベース層提供用ストレージＣ１〜Ｃｎに書き戻す必要があるが、この書き戻しの処理は、転送制御手段Ｖ１２から出力手段Ｕ１２への転送要求の出力を待って実行されることになる。
【００６９】
一方、ステップｔ５の判定結果が偽となってファイルサーバＡ１自身のローカルファイルシステム上に目的のファイルがないことが明らかとなった場合には、ファイル共有手段Ｕ１１が、目的のファイルを管理する他のファイルサーバ、例えば、ファイルサーバＡｙにファイルのクローズを要求することになるが、この際、他サーバファイル使用数更新機能実現手段として機能するマイクロプロセッサ２がファイルサーバＡ１のファイル使用数の現在値ＣＡ１を自データ記憶テーブル１４から読み出してクローズ要求に添付することになるので、ファイルサーバＡｙには、ファイルのクローズ要求と共にファイルサーバＡ１のファイル使用数の現在値ＣＡ１が送信されることになる（ステップｔ６）。
【００７０】
次いで、ファイルのクローズ要求と共にファイルサーバＡ１のファイル使用数の現在値ＣＡ１を受け取ったファイルサーバＡｙのファイル共有手段が、ファイルサーバＡ１から要求されたファイルのファイルハンドルを開放してクローズ処理の完了をファイルサーバＡ１に送信することになるが、この際、ファイルサーバＡｙにおけるファイル使用数転送機能実現手段つまりファイルサーバＡｙのマイクロプロセッサが、ファイルサーバＡｙのファイル使用数の現在値ＣＡｙを、ファイルサーバＡｙのメモリであるＲＡＭに生成されている自データ記憶テーブルから読み出してクローズ処理の完了通知に添付することになるので、ファイルサーバＡ１には、クローズ処理の完了通知と共にファイルサーバＡｙのファイル使用数の現在値ＣＡｙが送信されることになる。
【００７１】
そして、ファイルサーバＡ１の使用状況管理手段Ｖ１１における他サーバファイル使用数更新機能実現手段として機能するマイクロプロセッサ２が、ファイルサーバＡｙから送信されたクローズ処理の完了通知と共にファイルサーバＡｙのファイル使用数の現在値ＣＡｙを受け取り（ステップｔ７）、ファイルサーバＡ１のＲＡＭ５の他データ記憶テーブル１５におけるファイルサーバＡｙの名称に対応させて今回受信した現在値ＣＡｙを上書きすることによって、他のファイルサーバーＡ２〜Ａｎのうちの１つであるファイルサーバＡｙのファイル使用数ＣＡｙを更新して記憶する（ステップｔ８）。
【００７２】
そして、最終的に、ファイル共有手段Ｕ１１が、ファイルサーバＡｙから送信されたクローズ処理の完了通知をクライアントマシンＥ１ｉに送信する（ステップｔ９）。
前記と同様、クローズの対象となるファイルが層提供用ストレージＢ１に一時記憶されたものであって、そのファイルの書き戻しが必要な場合、その書き戻しの処理は、転送制御手段Ｖ１２から出力手段Ｕ１２への転送要求の出力を待って実行されることになる。
【００７３】
この実施形態では、図５および図７に示す通り、一例として、ファイルのオープン時およびファイルのクローズ時にファイルサーバＡ１が他のファイルサーバＡｙにファイル使用数ＣＡ１を送信して他のファイルサーバＡｙからファイル使用数ＣＡｙを取得する例について述べているが、ファイル使用数ＣＡ１，ＣＡｙの交換をファイルのオープン時のみ若しくはファイルのクローズ時のみに実行することも可能である。
更に、ファイルのオープン時やクローズ時のタイミングだけでなく、使用状況管理手段Ｖ１１がファイル使用数ＣＡ１，ＣＡｙを他のファイルサーバＡｙとの間で所定周期毎に交換する構成としてもよい。ファイル使用数ＣＡ１，ＣＡｙを所定周期毎に定期的に交換することで、ファイルサーバＡ１が管理するローカルファイルシステムにおけるファイルのオープン／クローズや他のファイルサーバＡ２〜Ａｎが管理するファイルのファイルハンドルのオープンク／ローズが不均一に起きた場合や、ファイルサーバＡ１のローカルファイルシステムへのアクセスが多い場合でも使用状況が適切に更新される。
また、クライアントマシンＥ１１〜Ｅ１ｊ上のシステムコールの延長としてファイルサーバＡ１に送信されるオープン／クローズのタイミング以外の別のリクエストのタイミングで、ファイル使用数ＣＡ１，ＣＡｙの値を交換送信してもよい。オープン／クローズ以外のタイミングでもファイル使用数ＣＡ１，ＣＡｙの値を交換することで、ファイルサーバＡ１における実際の入出力の負荷がオープンからクローズまでの間に不均一である場合でも、使用状況が反映される。
【００７４】
以上、ファイルサーバＡ１と他のファイルサーバＡ２〜Ａｎを代表する１つのファイルサーバＡｙとの関係を取り上げてファイル使用数の遣り取りを説明したが、ファイルサーバＡ１と他の全てのファイルサーバＡ２〜Ａｎとの関係、および、ファイルサーバＡｙと他のファイルサーバＡｚとの関係（但し、１＜ｙ＜ｎ、１≦ｚ≦ｎ，ｙ≠ｚ）に関してもファイル使用数の遣り取りに関わる処理は全て此れと同様である。
【００７５】
次に転送制御手段Ｖ１２および入出力手段Ｕ１２として機能するマイクロプロセッサ２の処理動作について説明する。
【００７６】
ファイルサーバＡ１における転送制御手段Ｖ１２として機能するマイクロプロセッサ２は、自データ記憶テーブル１４や他データ記憶テーブル１５の内容が更新される度にファイルサーバＡ１のファイル使用数ＣＡ１とファイルサーバＡ２〜Ａｎのファイル使用数ＣＡ２〜ＣＡｎを全て参照し、その都度、ファイル使用数に従って各ファイルサーバＡ１〜Ａｎの名称をソーティングし、ファイル使用数の小なるものから大なるもの、すなわち、クライアントマシンからの要求によって作用するファイルサーバの負荷が小なるものから大なるものへと昇冪の順でベース層提供用ストレージＣ１〜Ｃｎに書き戻し優先度を設定し、その優先順位をファイルサーバＡ１のメモリであるＲＡＭ５の優先度記憶テーブル１６に更新して記憶する。
従って、仮に、ファイルサーバＡ１〜Ａ４のファイル使用数ＣＡ１〜ＣＡ４の値が図４（ａ）に示される自データ記憶テーブル１４や他データ記憶テーブル１５に示されるようなものであったとすると、ファイル使用数４（ファイルサーバＡ４のファイル使用数）＜ファイル使用数５（ファイルサーバＡ２のファイル使用数）＜ファイル使用数８（ファイルサーバＡ３のファイル使用数）＜ファイル使用数１０（ファイルサーバＡ１のファイル使用数）の関係から、優先度記憶テーブル１６における書き戻し優先度の設定は図４（ｂ）に示されるように、書き戻し優先度が最も高いのがファイルサーバＡ４によって管理されるベース層提供用ストレージＣ４，書き戻し優先度が２番目に高いのがファイルサーバＡ２によって管理されるベース層提供用ストレージＣ２，書き戻し優先度が３番目に高いのがファイルサーバＡ３によって管理されるベース層提供用ストレージＣ３，書き戻し優先度が最も低いのがファイルサーバＡ１によって管理されるベース層提供用ストレージＣ１となる。
【００７７】
つまり、ファイル使用数で表される負荷が低いファイルサーバで管理されるベース層提供用ストレージほど書き戻し優先度が高くなり、ファイル使用数で表される負荷が高いファイルサーバで管理されるベース層提供用ストレージほど書き戻し優先度が低くなるように書き戻し優先度が設定されるということである。
【００７８】
そして、転送制御手段Ｖ１２として機能するマイクロプロセッサ２は、ファイルの内容の更新や書き換え等のためにベース層提供用ストレージＣ１〜ＣｎからファイルサーバＡ１のキャッシュ層提供用ストレージＢ１に読み込まれているファイルがあった場合には、これらのファイルをベース層提供用ストレージＣ１〜Ｃｎに書き戻す際に、此れらのファイルのメタデータを管理するファイルサーバに対応して其の時点における優先度記憶テーブル１６に設定されている優先度に従って各ベース層提供用ストレージＣ１〜Ｃｎにファイルを書き戻すように、書き戻し実行手段として機能する入出力手段Ｕ１２を制御する。
従って、例えば、ファイルサーバＡ１のキャッシュ層提供用ストレージＢ１にファイルサーバＡ１で管理されるファイル（ファイルの書き戻し先がベース層提供用ストレージＣ１となるファイル）と、ファイルサーバＡ２で管理されるファイル（ファイルの書き戻し先がベース層提供用ストレージＣ２となるファイル）と、ファイルサーバＡ３で管理されるファイル（ファイルの書き戻し先がベース層提供用ストレージＣ３となるファイル）と、ファイルサーバＡ４で管理されるファイル（ファイルの書き戻し先がベース層提供用ストレージＣ４となるファイル）が同時に存在し、優先度記憶テーブル１６における書き戻し優先度の設定が図４（ｂ）に示されるような状況下において、これらのファイルの書き戻し要求が同じ時期に発生したとすれば、書き戻しの優先順位は、高い順に、ファイルサーバＡ４で管理されるファイル，ファイルサーバＡ２で管理されるファイル，ファイルサーバＡ３で管理されるファイル，ファイルサーバＡ１で管理されるファイルとなる。
【００７９】
そして、書き戻し実行手段として機能する入出力手段Ｕ１２が転送制御手段Ｖ１２からの転送要求の出力を受けて、その時点における優先度記憶テーブル１６の内容に従った優先度でファイルサーバＡ１のキャッシュ層提供用ストレージＢ１上のファイルを、各ファイルサーバＡ１〜Ａｎによって管理されるベース層提供用ストレージＣ１〜Ｃｎの各々に書き戻す。
【００８０】
具体的な優先度の差別化としては、例えば、優先度記憶テーブル１６に設定された優先順位に従ってキャッシュ層提供用ストレージＢ１上のファイルを単純かつ連続的にベース層提供用ストレージＣ１〜Ｃｎに書き戻すといった方法がある。
この場合、例えば、キャッシュ層提供用ストレージＢ１上にファイルサーバＡ１で管理されるファイルが４個，ファイルサーバＡ２で管理されるファイルが２個，ファイルサーバＡ３で管理されるファイルが３個，ファイルサーバＡ４で管理されるファイルが１個あったとすれば、図４（ｂ）に示されるような優先度の設定の場合、転送要求の発生直後に、まず、ファイルサーバＡ４で管理されるファイルが最初にベース層提供用ストレージＣ４に書き戻され、その後直ちにファイルサーバＡ２で管理されるファイル２個がベース層提供用ストレージＣ２に書き戻され、続けてファイルサーバＡ３で管理されるファイル３個がベース層提供用ストレージＣ３に書き戻され、次いでファイルサーバＡ１で管理されるファイル４個がベース層提供用ストレージＣ１に書き戻されることになる。
【００８１】
また、書き戻し先となるベース層提供用ストレージＣ１〜Ｃｎの優先順位の設定に対応させて、書き戻し開始までの待機時間を、書き戻しの優先度が低いほど増大するように変化させることで、ファイルサーバＡ１のキャッシュ層提供用ストレージＢ１上のファイルを各優先度毎のベース層提供用ストレージＣ１〜Ｃｎに書き戻すといった方法も適用できる。
この場合、前記と同様、キャッシュ層提供用ストレージＢ１上にファイルサーバＡ４で管理されるファイルが１個，ファイルサーバＡ２で管理されるファイルが２個，ファイルサーバＡ３で管理されるファイルが３個，ファイルサーバＡ１で管理されるファイルが４個あって、図４（ｂ）に示されるような優先度の設定がなされていたとすれば、転送要求の発生直後に、まず、ファイルサーバＡ４で管理されるファイルが最初にベース層提供用ストレージＣ４に書き戻され、転送要求の発生後ΔＴ１秒経過後にファイルサーバＡ２で管理されるファイル２個がベース層提供用ストレージＣ２に連続的に書き戻され、転送要求の発生後ΔＴ２秒経過後にファイルサーバＡ３で管理されるファイル３個がベース層提供用ストレージＣ３に連続的に書き戻され、転送要求の発生後ΔＴ３秒経過後にファイルサーバＡ１で管理されるファイル４個がベース層提供用ストレージＣ１に連続的に書き戻されることになる（但し、ΔＴ１＜ΔＴ２＜ΔＴ３）。
【００８２】
但し、これらの方法は一例であり、別の方法で書き戻しの優先度の差別化を行なうことも可能である。
【００８３】
書き戻しの優先順位を付けた転送制御手段Ｖ１２から入出力手段Ｕ１２への転送要求の出力は一定の時間間隔で繰り返し実行し、その都度、書き戻し実行手段として機能する入出力手段Ｕ１２を作動させるようにする。
通常、この転送要求の出力周期は前述の待機時間の最大値ΔＴ３秒よりも長く設定するが、転送が未処理となっているファイルの書き戻しを次の転送要求の周期を利用して実行することもできるので、必ずしも転送要求の出力周期を待機時間の最大値ΔＴ３秒より長くする必要はない。
【００８４】
あるいは、一定の時間間隔で転送要求を出力する代わりに、ファイルサーバＡ１のキャッシュ層提供用ストレージＢ１からベース層提供用ストレージＣ１〜Ｃｎに書き戻すべきファイルが占有するキャッシュ層提供用ストレージＢ１の記憶容量の合計が予め設定された閾値に達したときに転送要求を出力するようにしてもよい。
【００８５】
但し、これらの方法は一例であり、別の方法で転送要求の出力タイミングを設定することも可能である。
【００８６】
そして、このようにしてファイルサーバＡ１のキャッシュ層提供用ストレージＢ１からベース層提供用ストレージＣ１〜Ｃｎへのファイルの書き戻し処理が行われると、書き戻しによるファイル内容の更新に伴って、ファイルの書き戻し先となるベース層提供用ストレージＣ１〜Ｃｎのメタデータを管理するファイルサーバＡ１〜Ａｎが、その内部処理によって各サーバのハードディスク６内のメタデータを更新する必要が生じる。
つまり、ファイルサーバＡ１のキャッシュ層提供用ストレージＢ１に一時記憶されたファイルをベース層提供用ストレージＣ１に書き戻すのであれば、ファイルサーバＡ１のマイクロプロセッサ２が其の内部処理によってファイルサーバＡ１のハードディスク６内のメタデータを更新し、また、ファイルサーバＡ１のキャッシュ層提供用ストレージＢ１に一時記憶されたファイルをベース層提供用ストレージＣ２〜Ｃｎに書き戻すのであれば、ファイルサーバＡ１のマイクロプロセッサ２がファイルの書き戻し先となるベース層提供用ストレージ、例えば、ベース層提供用ストレージＣｙを管理するファイルサーバＡｙにメタデータの更新を依頼し、ファイルサーバＡｙのマイクロプロセッサがファイルサーバＡｙのハードディスク内のメタデータを更新するということである。
【００８７】
この実施形態では、ファイルサーバＡ1がファイルサーバＡ1のファイル使用数ＣＡ1と他のファイルサーバＡ２〜Ａｎ毎のファイル使用数ＣＡ２〜ＣＡｎを全て参照し、ファイル使用数の大小すなわち各ファイルサーバＡ１〜Ａｎを使用しているクライアントマシンＥ１１〜Ｅ１ｊ，・・・，Ｅｎ１〜Ｅｎｋからの入出力要求によって各ファイルサーバＡ１〜Ａｎに作用している負荷の大小に応じ、各ファイルサーバＡ１〜Ａｎが管理するベース層提供用ストレージＣ１〜Ｃｎに対し、ファイル使用数の少ないものから多いもの、つまり、ファイルサーバの負荷の小なるものから大なるものへと昇冪の順で書き戻し優先度を設定して、ファイルサーバＡ1が、ファイルサーバＡ1によって設定した書き戻し優先度に従ってファイルサーバＡ1のキャッシュ層提供用ストレージＢ１上のファイルを各ファイルサーバＡ１〜Ａｎが管理するベース層提供用ストレージＣ１〜Ｃｎに書き戻すようにしている。従って、クライアントマシンＥ１１〜Ｅ１ｊ，・・・，Ｅｎ１〜Ｅｎｋからの入出力要求により其の時点で高い負荷が作用しているファイルサーバ、例えば、図４（ａ）および図４（ｂ）の例で言えば、最も負荷の高いファイルサーバＡ１の管理するベース層提供用ストレージＣ１に対するファイルの書き戻し処理の優先度が自動的に最低に設定され、ベース層提供用ストレージＣ１に対するファイルの書き戻し処理が順序的にも時間的にも後回しにされる。
この結果、書き戻し先となるベース層提供用ストレージがベース層提供用ストレージＣ１となるファイルの書き戻しに付随して要求されるファイル管理の処理、つまり、メタデータの更新に関わる処理が、負荷の最も高い状態にあるファイルサーバＡ１上で実施される機会が減少し、ファイルサーバＡ１上でクライアントマシンＥ１１〜Ｅ１ｊからの入出力要求とメタデータの更新処理とが重複発生して衝突する確率が減少して、計算ノードを構成するライアントマシンＥ１１〜Ｅ１ｊにおける入出力の遅延や計算ノードの性能低下といった不都合が改善されることになる。
【００８８】
そして、他のファイルサーバＡ２〜Ａｎの各々においてファイルサーバＡ１の場合と同様の処理が実行されるので、前記と同様、クライアントマシンからの入出力要求により其の時点で相対的に高い負荷が作用しているファイルサーバの管理するベース層提供用ストレージに対するファイルの書き戻し処理の優先度が相対的に低く設定されて、ファイルサーバＡ２〜Ａｎの何れにおいても、キャッシュ層提供用ストレージＢ２〜Ｂｎからのファイルの書き戻しが、負荷の低いファイルサーバで管理されるサーバベース層提供用ストレージからから優先的に実行される。
つまり、相対的に負荷の高いファイルサーバで管理されるベース層提供用ストレージに対するファイルの書き戻し処理、更には、其れに伴うメタデータの更新処理が後回しにされることにもなるので、各ファイルサーバＡ１〜Ａｎ上でクライアントマシンからの入出力要求とメタデータの更新処理とが重複発生して衝突する確率が減少し、全体として各ファイルサーバＡ１〜Ａｎの負荷が軽減されると共にベース層提供用ストレージＣ１〜Ｃｎによって構成されるファイル共有システム全体のパフォーマンスも向上することになる。
【００８９】
また、他の実施形態として、ファイルハンドルのオープン／クローズに加え、更に、クライアントマシンＥ１１〜Ｅ１ｊによるシステムコールの延長上でファイルハンドルの操作に関連して送信された要求を共有サービス提供部Ｕ１のファイル共有手段Ｕ１１が処理する際にも、負荷管理部Ｖ１の使用状況管理手段Ｖ１１が此の要求の発生を検知し、ファイルハンドルとファイルハンドルが操作された最後の時刻を使用状況管理手段Ｖ１１が逐次更新記憶するようにしてもよい。
このような構成を適用した場合は、ファイルハンドルのオープン要求で入出力操作を行なってからファイルハンドルのクローズ要求を省略し、終了時にＯＳによるクローズに任せたプログラムが動作した場合でも適切な使用状況が得られる。
【００９０】
以上に開示した実施形態の一部または全部は、以下の付記に示す記載によって適切に表現され得るが、発明を実施するための形態や発明の技術思想は、これらのものに制限されるものではない。
【００９１】
また、ファイル書き戻し制御プログラムは非一時的な記録媒体に記憶されてもよい。非一時的な記録媒体としては、例えば、ＤＶＤ，ＣＤ，フラッシュメモリ等のものを利用することができる。ファイル書き戻し制御プログラムを非一時的な記録媒体に記憶した場合、ファイル書き戻し制御プログラムは非一時的な記録媒体から各ファイルサーバＡ１〜Ａｎによって読み出され、そのマイクロプロセッサによって実行されることになる。
【００９２】
〔付記１〕
計算機ノードを構成する複数のクライアントマシンを備えたファイルサーバ同士を情報伝達可能に接続すると共に、前記ファイルサーバの各々によって管理され、前記ファイルサーバの各々にベース層を提供するベース層提供用ストレージと、前記ファイルサーバの各々にキャッシュ層を提供する各ファイルサーバ毎のキャッシュ層提供用ストレージとをストレージエリアネットワークを介して前記ファイルサーバの各々に接続し、前記各クライアントマシンが要求するファイルを、そのクライアントマシンに接続したファイルサーバが、前記ベース層提供用ストレージから前記ストレージエリアネットワークを介して読み込んで前記キャッシュ層提供用ストレージに一時記憶し、前記クライアントマシンからの要求に応じた処理をキャッシュ層提供用ストレージ上のファイルに施してから、キャッシュ層提供用ストレージ上のファイルを前記ベース層提供用ストレージに書き戻すようにしたファイル共有システムにおいて、
前記ファイルサーバの各々に、
各ファイルサーバが備えるクライアントマシンからの要求によって其のファイルサーバに作用している負荷を検知して逐次更新記憶すると共に当該ファイルサーバに接続した他のファイルサーバとの情報伝達により他のファイルサーバの各々に記憶されている負荷の各々を逐次読み込んで各ファイルサーバ毎の負荷として逐次更新記憶する使用状況管理手段と、
前記使用状況管理手段に記憶されている当該ファイルサーバの負荷と各ファイルサーバ毎の負荷とを参照し、負荷の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに其れを管理するファイルサーバの負荷の昇冪の順で書き戻し優先度を設定する転送制御手段と、
前記転送制御手段によって設定された書き戻し優先度に従って、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻す書き戻し実行手段とを設けたことを特徴とするファイル共有システム。
【００９３】
〔付記２〕
前記使用状況管理手段は、そのファイルサーバが備えるクライアントマシンからの要求によってオープンされているファイルの数を負荷を表すファイル使用数として逐次更新記憶すると共に当該ファイルサーバに接続した他のファイルサーバとの情報伝達により他のファイルサーバの各々に記憶されているファイル使用数の各々を逐次読み込んで各ファイルサーバ毎の負荷を表すファイル使用数として逐次更新記憶し、
前記転送制御手段は、前記使用状況管理手段に記憶されている当該ファイルサーバのファイル使用数と各ファイルサーバ毎のファイル使用数とを参照し、ファイル使用数の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに其れを管理するファイルサーバのファイル使用数の昇冪の順で書き戻し優先度を設定することを特徴とした付記１記載のファイル共有システム。
【００９４】
〔付記３〕
前記使用状況管理手段は、そのファイルサーバが備えるクライアントマシンからのファイルハンドルのオープン要求を受けて当該ファイルサーバのファイル使用数の値を１インクリメントする一方、その使用状況管理手段を有するファイルサーバが備えるクライアントマシンからのファイルハンドルのクローズ要求を受けて当該ファイルサーバのファイル使用数の値を１ディクリメントすることによって前記ファイル使用数を更新記憶する自サーバファイル使用数更新機能と、
当該ファイルサーバによって管理されているベース層提供用ストレージにオープン要求やクローズ要求の対象となるファイルハンドルが存在せず、当該ファイルサーバに接続した他のファイルサーバとの情報伝達によって他のファイルサーバにファイルハンドルやファイルのクローズを要求する必要が生じた際に、そのファイルハンドルやファイルのクローズの要求と共に当該ファイルサーバのファイル使用数の現在値を前記他のファイルサーバに転送すると共に、他のファイルサーバから該当するファイルハンドルやファイルのクローズ完了通知および其のファイルサーバのファイル使用数の現在値を受け取って、この現在値を受け取ったファイルサーバのファイル使用数の値を前記受け取った現在値に書き換えることによって各ファイルサーバ毎のファイル使用数を更新記憶する他サーバファイル使用数更新機能と、
他のファイルサーバとの情報伝達によってファイルハンドルやファイルのクローズの要求を受けた際に、該当するファイルハンドルやクローズ完了通知と共に当該ファイルサーバのファイル使用数の現在値をファイルハンドルやファイルのクローズの要求元となるファイルサーバに転送するファイル使用数転送機能とを備えたことを特徴とする付記２記載のファイル共有システム。
【００９５】
〔付記４〕
前記他サーバファイル使用数更新機能およびファイル使用数転送機能に代えて、
前記使用状況管理手段が、
所定周期毎に、その使用状況管理手段を有するファイルサーバと当該ファイルサーバに接続した他のファイルサーバとの間で情報伝達を行って、そのファイルサーバのファイル使用数の現在値を前記他のファイルサーバに転送すると共に前記他のファイルサーバから其のファイルサーバのファイル使用数を受け取って、前記各ファイルサーバ毎のファイル使用数を更新記憶するサーバファイル使用数転送更新機能を備えたことを特徴とする付記３記載のファイル共有システム。
【００９６】
〔付記５〕
前記書き戻し実行手段が、
前記転送制御手段によって設定された書き戻し優先度に従って、書き戻し優先度が上位のベース層提供用ストレージから順に、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻すように構成されていることを特徴とする付記１，付記２，付記３または付記４のうち何れか一項に記載のファイル共有システム。
【００９７】
〔付記６〕
前記書き戻し実行手段が、
前記転送制御手段によって設定された書き戻し優先度に従って、書き戻し優先度が下位になるにつれて書き戻し開始までの待機時間が増大するようにして、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各優先度毎のベース層提供用ストレージに書き戻すように構成されていることを特徴とする付記１，付記２，付記３または付記４のうち何れか一項に記載のファイル共有システム。
【００９８】
〔付記７〕
一定の時間間隔で前記書き戻し実行手段を作動させることを特徴とする付記１，付記２，付記３，付記４，付記５または付記６のうち何れか一項に記載のファイル共有システム。
【００９９】
〔付記８〕
そのファイルサーバのキャッシュ層提供用ストレージに一時記憶されているファイルの容量の合計が予め決められた閾値に達した時点で前記書き戻し実行手段を作動させることを特徴とする付記１，付記２，付記３，付記４，付記５または付記６のうち何れか一項に記載のファイル共有システム。
【０１００】
〔付記９〕
前記ベース層提供用ストレージが大容量ストレージ装置によって構成され、前記キャッシュ層提供用ストレージが高速ストレージ装置によって構成されている付記１，付記２，付記３，付記４，付記５，付記６，付記７または付記８のうち何れか一項に記載のファイル共有システム。
【０１０１】
〔付記１０〕
計算機ノードを構成する複数のクライアントマシンを備えたファイルサーバ同士を情報伝達可能に接続すると共に、前記ファイルサーバの各々によって管理され、前記ファイルサーバの各々にベース層を提供するベース層提供用ストレージと、前記ファイルサーバの各々にキャッシュ層を提供する各ファイルサーバ毎のキャッシュ層提供用ストレージとをストレージエリアネットワークを介して前記ファイルサーバの各々に接続し、前記各クライアントマシンが要求するファイルを、そのクライアントマシンに接続したファイルサーバが、前記ベース層提供用ストレージから前記ストレージエリアネットワークを介して読み込んで前記キャッシュ層提供用ストレージに一時記憶し、前記クライアントマシンからの要求に応じた処理をキャッシュ層提供用ストレージ上のファイルに施してから、キャッシュ層提供用ストレージ上のファイルを前記ベース層提供用ストレージに書き戻すようにしたファイル共有システムのためのファイル書き戻し制御プログラムであって、
前記ファイルサーバの各々が備えるマイクロプロセッサを、
各ファイルサーバが備えるクライアントマシンからの要求によって其のファイルサーバに作用している負荷を検知して当該ファイルサーバのメモリの記憶領域に逐次更新記憶させると共に当該ファイルサーバに接続した他のファイルサーバとの情報伝達により他のファイルサーバの各々に記憶されている負荷の各々を逐次読み込んで各ファイルサーバ毎の負荷として前記メモリの他の記憶領域に逐次更新記憶させる使用状況管理手段、
前記メモリの記憶領域に記憶されている当該ファイルサーバの負荷と前記メモリの前記他の記憶領域に記憶されている各ファイルサーバ毎の負荷とを参照し、負荷の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに其れを管理するファイルサーバの負荷の昇冪の順で書き戻し優先度を設定する転送制御手段、および、
前記転送制御手段によって設定された書き戻し優先度に従って、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻す書き戻し実行手段として機能させることを特徴とするファイル書き戻し制御プログラム。
【０１０２】
〔付記１１〕
計算機ノードを構成する複数のクライアントマシンを備えたファイルサーバ同士を情報伝達可能に接続すると共に、前記ファイルサーバの各々によって管理され、前記ファイルサーバの各々にベース層を提供するベース層提供用ストレージと、前記ファイルサーバの各々にキャッシュ層を提供する各ファイルサーバ毎のキャッシュ層提供用ストレージとをストレージエリアネットワークを介して前記ファイルサーバの各々に接続し、前記各クライアントマシンが要求するファイルを、そのクライアントマシンに接続したファイルサーバが、前記ベース層提供用ストレージから前記ストレージエリアネットワークを介して読み込んで前記キャッシュ層提供用ストレージに一時記憶し、前記クライアントマシンからの要求に応じた処理をキャッシュ層提供用ストレージ上のファイルに施してから、キャッシュ層提供用ストレージ上のファイルを前記ベース層提供用ストレージに書き戻すようにしたファイル共有システムのためのファイル書き戻し制御プログラムであって、
前記ファイルサーバの各々が備えるマイクロプロセッサを、
各ファイルサーバが備えるクライアントマシンからの要求によって其のファイルサーバがオープンしているファイルの数をファイル使用数として当該ファイルサーバのメモリの記憶領域に逐次更新記憶させると共に当該ファイルサーバに接続した他のファイルサーバとの情報伝達により他のファイルサーバの各々に記憶されているファイル使用数の各々を逐次読み込んで各ファイルサーバ毎のファイル使用数として前記メモリの他の記憶領域に逐次更新記憶させる使用状況管理手段、
前記メモリの記憶領域に記憶されている当該ファイルサーバのファイル使用数と前記メモリの前記他の記憶領域に記憶されている各ファイルサーバ毎のファイル使用数とを参照し、ファイル使用数の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに昇冪の順で書き戻し優先度を設定する転送制御手段、および、
前記転送制御手段によって設定された書き戻し優先度に従って、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻す書き戻し実行手段として機能させることを特徴とするファイル書き戻し制御プログラム。
【０１０３】
〔付記１２〕
前記使用状況管理手段として機能する前記各マイクロプロセッサの各々を、
その使用状況管理手段を有するファイルサーバが備えるクライアントマシンからのファイルハンドルのオープン要求を受けて当該ファイルサーバのファイル使用数の値を１インクリメントする一方、その使用状況管理手段を有するファイルサーバが備えるクライアントマシンからのファイルハンドルのクローズ要求を受けて当該ファイルサーバのファイル使用数の値を１ディクリメントすることによって前記ファイル使用数を前記メモリの記憶領域に更新記憶させる自サーバファイル使用数更新機能実現手段、
当該ファイルサーバによって管理されているベース層提供用ストレージにオープン要求やクローズ要求の対象となるファイルハンドルが存在せず、当該ファイルサーバに接続した他のファイルサーバとの情報伝達によって他のファイルサーバにファイルハンドルやファイルのクローズを要求する必要が生じた際に、そのファイルハンドルやファイルのクローズの要求と共に当該ファイルサーバのファイル使用数の現在値を前記他のファイルサーバに転送すると共に、他のファイルサーバから該当するファイルハンドルやファイルのクローズ完了通知および其のファイルサーバのファイル使用数の現在値を受け取って、この現在値を受け取ったファイルサーバのファイル使用数の値を前記受け取った現在値に書き換えることによって各ファイルサーバ毎のファイル使用数を前記メモリの前記他の記憶領域に更新記憶させる他サーバファイル使用数更新機能実現手段、および、
他のファイルサーバとの情報伝達によってファイルハンドルやファイルのクローズの要求を受けた際に、該当するファイルハンドルやクローズ完了通知と共に当該ファイルサーバのファイル使用数の現在値をファイルハンドルやファイルのクローズの要求元となるファイルサーバに転送するファイル使用数転送機能実現手段として機能させることを特徴とする付記１１記載のファイル書き戻し制御プログラム。
【０１０４】
〔付記１３〕
前記他サーバファイル使用数更新機能実現手段およびファイル使用数転送機能実現手段に代えて、
前記各マイクロプロセッサの各々を、
所定周期毎に、その使用状況管理手段を有するファイルサーバと当該ファイルサーバに接続した他のファイルサーバとの間で情報伝達を行って、そのファイルサーバのファイル使用数の現在値を前記他のファイルサーバに転送すると共に前記他のファイルサーバから其のファイルサーバのファイル使用数を受け取って、前記各ファイルサーバ毎のファイル使用数を前記メモリの前記他の記憶領域に更新記憶させるサーバファイル使用数転送更新機能実現手段として機能させることを特徴とする付記１２記載のファイル書き戻し制御プログラム。
【０１０５】
〔付記１４〕
前記書き戻し実行手段が、
前記転送制御手段によって設定された書き戻し優先度に従って、書き戻し優先度が上位のベース層提供用ストレージから順に、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻すように構成したことを特徴とする付記１０，付記１１，付記１２または付記１３のうち何れか一項に記載のファイル書き戻し制御プログラム。
【０１０６】
〔付記１５〕
前記書き戻し実行手段が、
前記転送制御手段によって設定された書き戻し優先度に従って、書き戻し優先度が下位になるにつれて書き戻し開始までの待機時間が増大するようにして、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各優先度毎のベース層提供用ストレージに書き戻すように構成した付記１０，付記１１，付記１２または付記１３のうち何れか一項に記載のファイル書き戻し制御プログラム。
【０１０７】
〔付記１６〕
一定の時間間隔で前記書き戻し実行手段を作動させることを特徴とする付記１０，付記１１，付記１２，付記１３，付記１４または付記１５のうち何れか一項に記載のファイル書き戻し制御プログラム。
【０１０８】
〔付記１７〕
そのファイルサーバのキャッシュ層提供用ストレージに一時記憶されているファイルの容量の合計が予め決められた閾値に達した時点で前記書き戻し実行手段を作動させることを特徴とする付記１０，付記１１，付記１２，付記１３，付記１４または付記１５のうち何れか一項に記載のファイル書き戻し制御プログラム。
【０１０９】
〔付記１８〕
計算機ノードを構成する複数のクライアントマシンを備えたファイルサーバ同士を情報伝達可能に接続すると共に、前記ファイルサーバの各々によって管理され、前記ファイルサーバの各々にベース層を提供するベース層提供用ストレージと、前記ファイルサーバの各々にキャッシュ層を提供する各ファイルサーバ毎のキャッシュ層提供用ストレージとをストレージエリアネットワークを介して前記ファイルサーバの各々に接続し、前記各クライアントマシンが要求するファイルを、そのクライアントマシンに接続したファイルサーバが、前記ベース層提供用ストレージから前記ストレージエリアネットワークを介して読み込んで前記キャッシュ層提供用ストレージに一時記憶し、前記クライアントマシンからの要求に応じた処理をキャッシュ層提供用ストレージ上のファイルに施してから、キャッシュ層提供用ストレージ上のファイルを前記ベース層提供用ストレージに書き戻すようにしたファイル共有システムのためのファイル書き戻し方法であって、
前記ファイルサーバの各々が、各ファイルサーバの備えるクライアントマシンからの要求によって其のファイルサーバに作用している負荷を検知して逐次更新記憶すると共に当該ファイルサーバに接続した他のファイルサーバとの情報伝達により他のファイルサーバの各々に記憶されている負荷の各々を逐次読み込んで各ファイルサーバ毎の負荷として逐次更新記憶し、
前記ファイルサーバの各々が、当該ファイルサーバの負荷と各ファイルサーバ毎の負荷とを参照し、負荷の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに其れを管理するファイルサーバの負荷の昇冪の順で書き戻し優先度を設定し、
前記ファイルサーバの各々が、そのファイルサーバによって設定された書き戻し優先度に従って、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻すようにしたことを特徴とするファイル書き戻し方法。
【０１１０】
〔付記１９〕
計算機ノードを構成する複数のクライアントマシンを備えたファイルサーバ同士を情報伝達可能に接続すると共に、前記ファイルサーバの各々によって管理され、前記ファイルサーバの各々にベース層を提供するベース層提供用ストレージと、前記ファイルサーバの各々にキャッシュ層を提供する各ファイルサーバ毎のキャッシュ層提供用ストレージとをストレージエリアネットワークを介して前記ファイルサーバの各々に接続し、前記各クライアントマシンが要求するファイルを、そのクライアントマシンに接続したファイルサーバが、前記ベース層提供用ストレージから前記ストレージエリアネットワークを介して読み込んで前記キャッシュ層提供用ストレージに一時記憶し、前記クライアントマシンからの要求に応じた処理をキャッシュ層提供用ストレージ上のファイルに施してから、キャッシュ層提供用ストレージ上のファイルを前記ベース層提供用ストレージに書き戻すようにしたファイル共有システムのためのファイル書き戻し方法であって、
前記ファイルサーバの各々が、各ファイルサーバの備えるクライアントマシンからの要求によって其のファイルサーバがオープンしているファイルの数をファイル使用数として逐次更新記憶すると共に当該ファイルサーバに接続した他のファイルサーバとの情報伝達により他のファイルサーバの各々に記憶されているファイル使用数の各々を逐次読み込んで各ファイルサーバ毎のファイル使用数として逐次更新記憶し、
前記ファイルサーバの各々が、当該ファイルサーバのファイル使用数と各ファイルサーバ毎のファイル使用数とを参照し、ファイル使用数の大小に従って、各ファイルサーバによって管理されているベース層提供用ストレージに昇冪の順で書き戻し優先度を設定し、
前記ファイルサーバの各々が、そのファイルサーバによって設定された書き戻し優先度に従って、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻すようにしたことを特徴とするファイル書き戻し方法。
【０１１１】
〔付記２０〕
前記ファイルサーバの各々が、そのファイルサーバが備えるクライアントマシンからのファイルハンドルのオープン要求を受けて当該ファイルサーバのファイル使用数の値を１インクリメントする一方、その使用状況管理手段を有するファイルサーバが備えるクライアントマシンからのファイルハンドルのクローズ要求を受けて当該ファイルサーバのファイル使用数の値を１ディクリメントすることによって前記ファイル使用数を更新記憶し、
また、当該ファイルサーバによって管理されているベース層提供用ストレージにオープン要求やクローズ要求の対象となるファイルハンドルが存在せず、当該ファイルサーバに接続した他のファイルサーバとの情報伝達によって他のファイルサーバにファイルハンドルやファイルのクローズを要求する必要が生じた際に、そのファイルハンドルやファイルのクローズの要求と共に当該ファイルサーバのファイル使用数の現在値を前記他のファイルサーバに転送すると共に、他のファイルサーバから該当するファイルハンドルやファイルのクローズ完了通知および其のファイルサーバのファイル使用数の現在値を受け取って、この現在値を受け取ったファイルサーバのファイル使用数の値を前記受け取った現在値に書き換えることによって各ファイルサーバ毎のファイル使用数を更新記憶し、
また、他のファイルサーバとの情報伝達によってファイルハンドルやファイルのクローズの要求を受けた際に、該当するファイルハンドルやファイルのクローズ完了通知と共に当該ファイルサーバのファイル使用数の現在値をファイルハンドルやファイルのクローズの要求元となるファイルサーバに転送することによって当該ファイルサーバのファイル使用数の現在値を他のファイルサーバに伝達することを特徴とする付記１９記載のファイル書き戻し方法。
【０１１２】
〔付記２１〕
所定周期毎に、前記ファイルサーバの各々が当該ファイルサーバに接続した他のファイルサーバとの間で情報伝達を行って、そのファイルサーバのファイル使用数の現在値を前記他のファイルサーバに転送すると共に前記他のファイルサーバから其のファイルサーバのファイル使用数を受け取って、前記各ファイルサーバ毎のファイル使用数を更新記憶することを特徴とする付記１９記載のファイル書き戻し方法。
【０１１３】
〔付記２２〕
前記ファイルサーバの各々に設定された書き戻し優先度に従って、前記ファイルサーバの各々が、書き戻し優先度が上位のベース層提供用ストレージから順に、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各ファイルサーバによって管理されているベース層提供用ストレージに書き戻すことを特徴とする付記１８，付記１９，付記２０または付記２１のうち何れか一項に記載のファイル書き戻し方法。
【０１１４】
〔付記２３〕
前記ファイルサーバの各々に設定された書き戻し優先度に従って、前記ファイルサーバの各々が、書き戻し優先度が下位になるにつれて書き戻し開始までの待機時間が増大するようにして、当該ファイルサーバのキャッシュ層提供用ストレージ上のファイルを各優先度毎のベース層提供用ストレージに書き戻すことを特徴とする付記１８，付記１９，付記２０または付記２１のうち何れか一項に記載のファイル書き戻し方法。
【産業上の利用可能性】
【０１１５】
本発明は、共有ファイルシステムにおけるファイルサーバの負荷状況の検出、および、階層化されたストレージを用いた共有ファイルシステムにおけるファイルの階層間移動の制御に利用できる。
【符号の説明】
【０１１６】
１  ファイル共有システム
２  マイクロプロセッサ（使用状況管理手段，自サーバファイル使用数更新機能実現手段，他サーバファイル使用数更新機能実現手段，転送制御手段，書き戻し実行手段）
３  ＲＯＭ
４  不揮発性メモリ
５  ＲＡＭ（メモリ）
６  ハードディスク
７  モニタ
８  キーボード
９  マウス
１０  入出力回路
１１  インターフェイス
１２  インターフェイス
１３  インターフェイス
１４  自データ記憶テーブル
１５  他データ記憶テーブル
１６  優先度記憶テーブル
Ａ１〜Ａｎ  ファイルサーバ
Ｂ１〜Ｂｎ  キャッシュ層提供用ストレージ
Ｃ１〜Ｃｎ，Ｃｍ  ベース層提供用ストレージ
Ｄ１〜Ｄｎ  ローカルエリアネットワーク
Ｅ１１〜Ｅｎｋ，Ｅ１ｉ，Ｅ１ｊ  クライアントマシン（計算ノード）
Ｆ  ローカルエリアネットワーク
Ｇ  ストレージエリアネットワーク
Ｈ  ストレージエリアネットワーク
Ｐ１〜Ｐｉ  計算ノード（クライアントマシン）
Ｑ１〜Ｑｊ  ストレージエリアネットワーク
Ｒ１〜Ｒｊ  ローカルエリアネットワーク
Ｓ１〜Ｓｊ  ファイルサーバ
Ｔ１〜Ｔｊ  ストレージ（キャッシュ層）
Ｕ１〜Ｕｎ  共有サービス提供部
Ｕ１１  ファイル共有手段
Ｕ１２  入出力手段（書き戻し実行手段）
Ｖ１〜Ｖｎ  負荷管理部
Ｖ１１  使用状況管理手段
Ｖ１２  転送制御手段
Ｗ  ストレージ（ベース層）
ＣＡ１  ファイル使用数の現在値
ＣＡ２〜ＣＡｎ  他のファイルサーバのファイル使用数の現在値
【図１】
0005821692.tif 000002
【図２】
0005821692.tif 000003
【図３】
0005821692.tif 000004
【図４】
0005821692.tif 000005
【図５】
0005821692.tif 000006
【図６】
0005821692.tif 000007
【図７】
0005821692.tif 000008
【図８】
0005821692.tif 000009