(57)【要約】【課題】  記憶装置（ストレージ）のアクセスの競合を低減する【解決手段】  本発明のファイル管理システムは、複数の記憶装置と、第１のファイル管理装置が作成するファイルを配置する記憶装置の順を示す第１のファイル配置順情報において、第１のファイル管理装置が最初にファイルを配置する記憶装置として複数の記憶装置における予め指定された記憶装置を設定し、設定した記憶装置を示す情報を送信する第１のファイル配置決定手段を含む第１のファイル配置決定装置と、第１のファイル配置決定装置から設定した記憶装置を示す情報を受信し、第２のファイル管理装置がファイルを配置する記憶装置の順を示す第２のファイル配置順情報において、第２のファイル管理装置が最初にファイルを配置する記憶装置として受信した記憶装置とは異なる記憶装置を設定する第２のファイル配置決定手段を含む第２のファイル配置決定装置とを含む。【選択図】  図２
2019128699.tif 000002
【特許請求の範囲】
【請求項１】
複数のホスト装置からのデータをファイルとして保存する複数の記憶装置と、
第１のファイル管理装置が作成する前記ファイルを配置する前記記憶装置の順を示す第１のファイル配置順情報において、前記第１のファイル管理装置が前記ファイルを最初に配置する前記記憶装置として複数の前記記憶装置における予め指定された前記記憶装置を設定し、設定した前記記憶装置を示す情報を送信する第１のファイル配置決定手段を含む第１のファイル配置決定装置と、
前記第１のファイル配置決定装置から設定した前記記憶装置を示す情報を受信し、第２のファイル管理装置が前記ファイルを配置する前記記憶装置の順を示す第２のファイル配置順情報において、前記第２のファイル管理装置が前記ファイルを最初に配置する前記記憶装置として受信した前記記憶装置とは異なる前記記憶装置を設定する第２のファイル配置決定手段を含む第２のファイル配置決定装置と
を含むファイル管理システム。
【請求項２】
前記第１のファイル配置決定手段が、
前記第１のファイル管理装置が次に前記ファイルを配置する前記記憶装置として、前記第１のファイル配置順情報に最初に設定した前記記憶装置とは異なる前記記憶装置を前記第１のファイル配置順情報に設定し、
前記第２のファイル配置決定手段が、
前記第２のファイル管理装置が次に前記ファイルを配置する前記記憶装置として、前記第２のファイル配置順情報の最初に設定した前記記憶装置とは異なる前記記憶装置を前記第２のファイル配置順情報に設定する
請求項１に記載のファイル管理システム。
【請求項３】
前記第１のファイル配置決定手段が、
予め設定された前記記憶装置として、他のファイル配置決定装置を経由せずにアクセスできる前記記憶装置が設定されている
請求項１又は２のいずれか１項に記載のファイル管理システム。
【請求項４】
前記記憶装置が、前記ファイルを保存するための領域として、前記記憶装置における記憶領域を分割した複数のファイルシステムを備え、
前記第１のファイル配置順情報が、前記ファイルシステムを含み、
前記第１のファイル配置決定装置が、さらに、前記第１のファイル配置順情報を基に前記記憶装置に前記ファイルを配置するジョブファイル配置手段を含み、
前記ジョブファイル配置手段が、
前記記憶装置の前記ファイルシステムにおける前記ファイルの作成の履歴を用いて、前記ファイルを配置する前記記憶装置の前記ファイルシステムを設定する
請求項１ないし３のいずれか１項に記載のファイル管理システム。
【請求項５】
複数のホスト装置からのデータをファイルとして保存する複数の記憶装置を含むファイル管理システムが、
第１のファイル管理装置が作成する前記ファイルを配置する前記記憶装置の順を示す第１のファイル配置順情報において、前記第１のファイル管理装置が前記ファイルを最初に配置する前記記憶装置として複数の前記記憶装置における予め指定された前記記憶装置を設定し、設定した前記記憶装置を示す情報を送信し、
設定した前記記憶装置を示す情報を受信し、第２のファイル管理装置が前記ファイルを配置する前記記憶装置の順を示す第２のファイル配置順情報において、前記第２のファイル管理装置が前記ファイルを最初に配置する前記記憶装置として受信した前記記憶装置とは異なる前記記憶装置を設定する
ファイル管理方法。
【請求項６】
複数のホスト装置からのデータをファイルとして保存する複数の記憶装置に接続し、
第１のファイル管理装置が作成する前記ファイルを配置する前記記憶装置の順を示す第１のファイル配置順情報において、前記第１のファイル管理装置が前記ファイルを最初に配置する前記記憶装置として複数の前記記憶装置における予め指定された前記記憶装置を設定し、設定した前記記憶装置を示す情報を送信する第１のファイル配置決定手段と、
設定した前記記憶装置を示す情報を受信し、第２のファイル管理装置が前記ファイルを配置する前記記憶装置の順を示す第２のファイル配置順情報において、前記第２のファイル管理装置が前記ファイルを最初に配置する前記記憶装置として受信した前記記憶装置とは異なる前記記憶装置を設定する第２のファイル配置決定手段と
を含むファイル配置決定装置。
【請求項７】
複数のホスト装置からのデータをファイルとして保存する複数の記憶装置に接続するファイル配置決定装置が、
第１のファイル管理装置が作成する前記ファイルを配置する前記記憶装置の順を示す第１のファイル配置順情報において、前記第１のファイル管理装置が前記ファイルを最初に配置する前記記憶装置として複数の前記記憶装置における予め指定された前記記憶装置を設定し、
設定した前記記憶装置を示す情報を送信し、
設定した前記記憶装置を示す情報を受信し、
第２のファイル管理装置が前記ファイルを配置する前記記憶装置の順を示す第２のファイル配置順情報において、前記第２のファイル管理装置が前記ファイルを最初に配置する前記記憶装置として受信した前記記憶装置とは異なる前記記憶装置を設定する
ファイル配置決定方法。
【請求項８】
複数のホスト装置からのデータをファイルとして保存する複数の記憶装置に接続するコンピュータに、
第１のファイル管理装置が作成する前記ファイルを配置する前記記憶装置の順を示す第１のファイル配置順情報において、前記第１のファイル管理装置が前記ファイルを最初に配置する前記記憶装置として複数の前記記憶装置における予め指定された前記記憶装置を設定する処理と、
設定した前記記憶装置を示す情報を送信する処理と、
設定した前記記憶装置を示す情報を受信する処理と、
第２のファイル管理装置が前記ファイルを配置する前記記憶装置の順を示す第２のファイル配置順情報において、前記第２のファイル管理装置が前記ファイルを最初に配置する前記記憶装置として受信した前記記憶装置とは異なる前記記憶装置を設定する処理と
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルの管理に関し、特に、複数の記憶装置に分散してファイルを保存するファイル管理システムなどに関する。
【背景技術】
【０００２】
ＨＰＣ（Ｈｉｇｈ  Ｐｅｒｆｏｒｍａｎｃｅ  Ｃｏｍｐｕｔｉｎｇ）分野では、大規模なシステム環境の下でのファイル共有が、一般化している。さらに、ＨＰＣ分野のシステムは、複数のファイルサーバを用いて負荷を分散した分散ファイルシステムを使用することが多い。分散ファイルシステムは、ファイルを、複数のファイルサーバに管理された複数の記憶装置（以下「ストレージ」と呼ぶ）に、分散して配置するシステムである。
【０００３】
このような分散ファイルシステムに関連する技術は、いろいろと提案されている（例えば、特許文献１ないし４を参照）。
【０００４】
特許文献１は、旧ネットワークストレージを新ネットワークストレージに組み込む方法を開示している。
【０００５】
特許文献２は、複数の管理サーバにおける冗長化されたメタ情報を更新する方法を開示している。
【０００６】
特許文献３は、複数の記憶装置に配置されたサブファイルで構成されたファイルを作成するときに、サブファイルを用いてファイルの作成の可否を判定する方法を開示している。
【０００７】
特許文献４は、クライアント装置における、効率的にアクセス対象サーバ装置を特定する方法、及び、リクエストが特定のサーバ装置に集中した際の効率的なアクセスの方法を開示している。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００４−０４６６６１号公報
【特許文献２】特開２０１１−１８０６５８号公報
【特許文献３】特開２０１６−１１８９５１号公報
【特許文献４】特開２０１７−１２３０４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
処理するデータ量の増加にともない、データのＩＯ（Ｉｎｐｕｔ  ａｎｄ  Ｏｕｔｐｕｔ）性能が、ジョブの実行時間に大きく影響するようになってきている。また、ファイルサーバに接続されるストレージの数、及び、各ストレージにおける記憶容量が増加している。そのため、ＨＰＣ分野で利用される分散ファイルシステムには、高いＩＯ性能（アクセス性能）が必要である。
【００１０】
ＩＯ性能を高めるためには、ファイルがファイルサーバに管理されるストレージに分散して配置されること、及び、ファイルへのＩＯ処理の並列度を高めることが、求められる。
【００１１】
言い換えると、ＩＯ性能を高めるためには、ＩＯ処理が、特定のファイルサーバ及びストレージに集中することなく、ファイルサーバ及びストレージ全体に、並列に分散することが重要となる。
【００１２】
ストレージにおけるＩＯ能力をより適正に発揮するために、ストレージ上のファイルを管理するファイルサーバに接続されているストレージの構成を反映したファイルの分散配置の重要性が増している（例えば、特許文献４を参照）。
【００１３】
特許文献４に記載の技術は、多数のファイルを作成する場合に、ファイルを配置するファイルサーバを、ファイル名に依存しないラウンドロビン又は一様乱数などに基づく方法で決定する。そして、特許文献４に記載の技術は、決定したファイルサーバが管理するストレージに、ファイルを保存することで、適正にファイルを分散する。
【００１４】
しかしながら、特許文献４に記載の技術は、ファイルの作成開始時におけるファイルの分散の偏りを考慮していない。言い換えると、特許文献４に記載の技術を利用したファイルシステムは、多くのファイルを作成した場合、ファイルをファイルサーバ及びストレージに適正に分散させる。しかし、特許文献４に記載の技術を利用したファイルシステムは、ファイルの作成開始時において、ファイルの分散が偏る場合がある。そのため、特許文献４に記載の技術は、ファイルの作成開始時において、ファイルへのＩＯ処理（アクセス）の競合が発生し、十分なＩＯ性能を発揮できない場合がある。つまり、特許文献４に記載の技術は、記憶装置（ストレージ）における競合を発生させるという問題点があった。
【００１５】
特許文献１ないし３は、ファイルの作成開始時に関連する技術を開示していないため、上記問題を解決できない。
【００１６】
本発明の目的は、上記問題点を解決し、記憶装置（ストレージ）のアクセスの競合を低減するファイル管理システムなどを提供することにある。
【課題を解決するための手段】
【００１７】
本発明の一形態におけるファイル管理システムは、複数のホスト装置からのデータをファイルとして保存する複数の記憶装置と、第１のファイル管理装置が作成するファイルを配置する記憶装置の順を示す第１のファイル配置順情報において、第１のファイル管理装置がファイルを最初に配置する記憶装置として複数の記憶装置における予め指定された記憶装置を設定し、設定した記憶装置を示す情報を送信する第１のファイル配置決定手段を含む第１のファイル配置決定装置と、第１のファイル配置決定装置から設定した記憶装置を示す情報を受信し、第２のファイル管理装置がファイルを配置する記憶装置の順を示す第２のファイル配置順情報において、第２のファイル管理装置がファイルを最初に配置する記憶装置として受信した記憶装置とは異なる記憶装置を設定する第２のファイル配置決定手段を含む第２のファイル配置決定装置とを含む。
【００１８】
本発明の一形態におけるファイル管理方法は、複数のホスト装置からのデータをファイルとして保存する複数の記憶装置を含むファイル管理システムが、第１のファイル管理装置が作成するファイルを配置する記憶装置の順を示す第１のファイル配置順情報において、第１のファイル管理装置がファイルを最初に配置する記憶装置として複数の記憶装置における予め指定された記憶装置を設定し、設定した記憶装置を示す情報を送信し、設定した記憶装置を示す情報を受信し、第２のファイル管理装置がファイルを配置する記憶装置の順を示す第２のファイル配置順情報において、第２のファイル管理装置がファイルを最初に配置する記憶装置として受信した記憶装置とは異なる記憶装置を設定する。
【００１９】
本発明の一形態におけるファイル配置決定装置は、複数のホスト装置からのデータをファイルとして保存する複数の記憶装置に接続し、第１のファイル管理装置が作成するファイルを配置する記憶装置の順を示す第１のファイル配置順情報において、第１のファイル管理装置がファイルを最初に配置する記憶装置として複数の記憶装置における予め指定された記憶装置を設定し、設定した記憶装置を示す情報を送信する第１のファイル配置決定手段と、設定した記憶装置を示す情報を受信し、第２のファイル管理装置がファイルを配置する記憶装置の順を示す第２のファイル配置順情報において、第２のファイル管理装置がファイルを最初に配置する記憶装置として受信した記憶装置とは異なる記憶装置を設定する第２のファイル配置決定手段とを含む。
【００２０】
本発明の一形態におけるファイル配置方法は、複数のホスト装置からのデータをファイルとして保存する複数の記憶装置に接続するファイル配置決定装置が、第１のファイル管理装置が作成するファイルを配置する記憶装置の順を示す第１のファイル配置順情報において、第１のファイル管理装置がファイルを最初に配置する記憶装置として複数の記憶装置における予め指定された記憶装置を設定し、設定した記憶装置を示す情報を送信し、設定した記憶装置を示す情報を受信し、第２のファイル管理装置がファイルを配置する記憶装置の順を示す第２のファイル配置順情報において、第２のファイル管理装置がファイルを最初に配置する記憶装置として受信した記憶装置とは異なる記憶装置を設定する。
【００２１】
本発明の一形態におけるプログラムは、複数のホスト装置からのデータをファイルとして保存する複数の記憶装置に接続するコンピュータに、第１のファイル管理装置が作成するファイルを配置する記憶装置の順を示す第１のファイル配置順情報において、第１のファイル管理装置がファイルを最初に配置する記憶装置として複数の記憶装置における予め指定された記憶装置を設定する処理と、設定した記憶装置を示す情報を送信する処理と、設定した記憶装置を示す情報を受信する処理と、第２のファイル管理装置がファイルを配置する記憶装置の順を示す第２のファイル配置順情報において、第２のファイル管理装置がファイルを最初に配置する記憶装置として受信した記憶装置とは異なる記憶装置を設定する処理とを実行させる。
【発明の効果】
【００２２】
本発明に基づけば、記憶装置（ストレージ）のアクセスの競合を低減するとの効果を奏することができる。
【図面の簡単な説明】
【００２３】
【図１】図１は、本発明における第１の実施形態に係るファイル管理システムを含む情報処理システムの構成の一例を示すブロック図である。
【図２】図２は、本発明における第１の実施形態に係るファイル管理システムの構成の一例を示すブロック図である。
【図３】図３は、第１の実施形態に係る第１のファイル配置決定部におけるファイルの配置を決定する動作の一例を示すフローチャートとである。
【図４】図４は、第１の実施形態に係る第２のファイル配置決定部におけるファイルの配置を決める動作の一例を示すフローチャートである。
【図５】図５は、第１の実施形態に係るジョブファイル配置部の動作の一例を示すフローチャートである。
【図６】図６は、第１の実施形態に係る第１の接続ストレージ情報の一例を示す図である。
【図７】図７は、第１の実施形態に係る第１のファイルシステム情報の一例を示す図である。
【図８】図８は、第１の実施形態に係る第１のファイル配置順情報の一例を示す図である。
【図９】図９は、更新後の第１のファイル配置順情報の一例を示す図である。
【図１０】図１０は、第１の実施形態に係る第２の接続ストレージ情報の一例を示す図である。
【図１１】図１１は、第１の実施形態に係る第２のファイルシステム情報の一例を示す図である。
【図１２】図１２は、第１の実施形態に係る第２のファイル配置順情報の一例を示す図である。
【図１３】図１３は、第１の実施形態に係るファイルシステムの配置の一例を示す図である。
【図１４】図１４は、第１の実施形態に係るファイル管理システムにおけるファイルの配置の一例を示す図である。
【図１５】図１５は、一般的なファイルシステムにおけるファイルの配置を示す図である。
【図１６】図１６は、第１の実施形態に係る概要のファイル管理システムの構成の一例を示すブロック図。
【図１７】図１７は、第１の実施形態に係るファイルサーバのハードウェア構成の一例を示すブロック図である。
【図１８】図１８は、第１の実施形態に係る概要における別のファイル配置決定装置の構成の一例を示すブロック図。
【発明を実施するための形態】
【００２４】
＜関連する技術＞
まず、本発明における実施形態に関連する一般的なファイルシステムを説明する。
【００２５】
図１５は、一般的なファイル管理システム９０におけるファイルの配置の一例を示す図である。
【００２６】
図１５に示されているファイル管理システム９０は、２つのストレージ９１及び９２を含む。ストレージ９１及びストレージ９２は、ファイルを保存するためのシステムとして、ファイルシステムを備えている。そして、ストレージ９１及びストレージ９２は、図示しない２つのファイルサーバ(以下、「サーバＡ」及び「サーバＢ」と呼ぶ)からアクセスに基づいて、ファイルシステムにファイルを保存する。
【００２７】
一般的なファイル管理システム９０において、ファイルサーバは、所定のストレージ（図１５の場合、ストレージ９１）から、ファイルシステムを作成する。例えば、サーバＡ及びＢは、それぞれ、まず、ストレージ９１にファイルシステム（図１５のファイルシステムＡ１、及び、ファイルシステムＢ１）を作成する。そして、ファイルサーバは、負荷分散などのため、ストレージに分散するように、ファイルシステムを作成する。例えば、サーバＡは、ストレージ９１とストレージ９２とにそれぞれ順番に、ファイルシステム（ファイルシステムＡ１ないしＡ４）を作成する。
【００２８】
さらに、一般的なファイル管理システム９０において、ファイルサーバは、作成した順に、ファイルシステムにファイルを作成する。例えば、図１５の場合、サーバＡは、ファイルシステムＡ１に、最初のファイル（ファイルＡ１）を作成する。同様に、サーバＢは、ファイルシステムＢ１に、最初のファイル（ファイルＢ１）を作成する。
【００２９】
ここで、サーバＡ及びＢが、それぞれ一つのファイルを作成した場合を想定する。この場合、２つのファイル（ファイルＡ１とファイルＢ１）は、同じストレージ（今の場合、ストレージ９１）に配置される。そのため、２つのファイル（ファイルＡ１及びファイルＢ１）へのアクセス処理（ＩＯ処理）の競合が発生する。
【００３０】
本発明における実施形態に係るファイル管理システムは、以下で説明するように、記憶装置（ストレージ）のアクセスの競合を低減する。
【００３１】
＜第１の実施形態＞
次に、図面を参照して、本発明における第１の実施形態について説明する。
【００３２】
各図面は、本発明の実施形態を説明するためのものである。ただし、本発明は、各図面の記載に限られるわけではない。また、各図面の同様の構成には、同じ番号を付し、その繰り返しの説明を、省略する場合がある。また、以下の説明に用いる図面において、本発明の説明に関係しない部分の構成については、記載を省略し、図示しない場合もある。
【００３３】
以下、図面を参照して、第１の実施形態について説明する。
【００３４】
［構成の説明］
まず、ファイル管理システム３０の説明として、ファイル管理システム３０を含む情報処理システム１０について説明する。
【００３５】
図１は、本発明における第１の実施形態に係るファイル管理システム３０を含む情報処理システム１０の構成の一例を示すブロック図である。
【００３６】
情報処理システム１０は、ファイル管理システム３０と、一つ又は複数のノード２０と、ネットワーク４０とを含む。
【００３７】
ネットワーク４０は、ノード２０とファイル管理システム３０とを接続する通信路又は通信網である。ネットワーク４０は、ノード２０とファイル管理システム３０とを接続できれば、その構成などを限定されない。例えば、ネットワーク４０は、専用線でもよく、電話回線網でもよく、インターネットでもよい。ただし、ネットワーク４０は、これらに限定されない。
【００３８】
ノード２０は、情報処理システム１０のクライアントとして動作する。そして、ノード２０は、ファイルサーバ５０に対して、ストレージ６０におけるファイル作成及びファイルへのデータの入出力などを依頼する。ノード２０は、例えば、アプリケーション・サーバ、クライアント・コンピュータ、又は、通信端末である。ただし、ノード２０は、これらに限定されない。
【００３９】
ファイル管理システム３０は、複数のファイルサーバ５０と、複数のストレージ６０とを含み、ノード２０からの依頼を基にファイルの作成などを実行する。
【００４０】
次に、図１及び２を参照して、本発明における第１の実施形態に係るファイル管理システム３０の構成について説明する。
【００４１】
図２は、本発明における第１の実施形態に係るファイル管理システム３０の構成の一例を示すブロック図である。
【００４２】
ファイル管理システム３０は、複数のファイルサーバ５０と、複数のストレージ６０とを含み、ノード２０からの依頼を基にファイルの作成などを実行する。
【００４３】
ファイル管理システム３０が含むファイルサーバ５０の数と、ストレージ６０の数とは、それぞれ、限定されない。ファイル管理システム３０は、２つを超えるファイルサーバ５０及び／又はストレージ６０を含んでもよい。さらに、ファイルサーバ５０の数は、ストレージ６０の数と同じである必要はない。ファイルサーバ５０の数は、ストレージ６０に数と異なっていてもよい。
【００４４】
ただし、以下の説明では、説明を明確にするため、ファイル管理システム３０は、２つのファイルサーバ５０（ファイルサーバ５１及び５２）と、２つのストレージ６０（ストレージ６１及び６２）とを含む。
【００４５】
さらに、ファイル管理システム３０におけるファイルサーバ５０は、以下で説明するように、２種類のファイルサーバ５０（以下、「第１のファイルサーバ」と「第２のファイルサーバ」と呼ぶ）として動作を実行する。そこで、以下の説明では、説明の便宜のため、ファイルサーバ５１は、「第１のファイルサーバ」として動作する。ファイルサーバ５２は、「第２のファイルサーバ」として動作する。ただし、ファイルサーバ５１及び５２は、動作を入れ替えてもよい。例えば、ファイルサーバ５２が「第１のファイルサーバ」として動作してもよい。
【００４６】
以下の説明において、「ファイルサーバ５０」に共通する説明では、「ファイルサーバ５０」を用いる。
【００４７】
ストレージ６０は、それぞれ、ファイルを保存する。ストレージ６０は、ファイルを保存するためのファイルシステムを備え、そのファイルシステムにファイルを保存してもよい。ファイルシステムは、ファイルを保存するための領域であり、ストレージ６０の記憶領域を分割して作成される。各ファイルシステムは、ストレージ６０において異なる物理的な位置の領域に配置される。
【００４８】
以下の説明では、一例として、ストレージ６０は、それぞれ、４つのファイルシステム６００を備える。ただし、ファイルシステム６００に数は、４つに限定されない。ストレージ６０は、４つ未満のファイルシステム６００を含んでもよく、４つを超えるファイルシステム６００を含んでもよい。以下の説明では、各ストレージ６０が備えるファイルシステム６００の数は、同じである。ただし、各ストレージ６０が備えるファイルシステム６００の数は、異なっていてもよい。
【００４９】
また、以下の説明に用いる図では、ストレージ６０は、単体の装置となっている。しかし、第１の実施形態に係るストレージ６０は、単体の装置に限定されない。例えば、ストレージ６０は、複数の記憶装置を用いてＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ（Ｉｎｄｅｐｅｎｄｅｎｔ）  Ｄｉｓｋｓ）を構成するディスクアレイでもよい。
【００５０】
また、ストレージ６１及び６２は、直接的にファイルサーバ５１及び／又は５２に接続されていてもよく、所定の装置及び／又はネットワークなどを介して間接的にファイルサーバ５１及び／又は５２に接続されていてもよい。
【００５１】
ただし、以下の説明では、説明の便宜のため、ストレージ６１は、直接的にファイルサーバ５１に接続され、所定のネットワークを介してファイルサーバ５２に接続されている。ストレージ６２は、直接的にファイルサーバ５２に接続され、所定のネットワークを介してファイルサーバ５１に接続されている。
【００５２】
ここで直接的とは、物理的に直接的な接続に限られない。「直接的」とは、他のファイルサーバ５０を経由せずにアクセス可能なことである。例えば、「ストレージ６１がファイルサーバ５１に直接的に接続されている」とは、ストレージ６１が、他のファイルサーバ５０を介さずにファイルサーバ５０に接続されていることである。ただし、この場合の接続は、ストレージ６１が、ネットワークスイッチ及び／又はファイバチャネルカードなどの所定のハードウェアを介してファイルサーバ５１に接続されている場合を含む。
【００５３】
ファイルサーバ５０が、直接的に接続されたストレージ６０を用いる場合、他のファイルサーバ５０の処理負荷及びファイルサーバ５０間のネットワークなどの影響を受けずにストレージ６０を用いることができる。そのため、ファイルサーバ５０が直接的に接続されたストレージ６０を用いる場合、ファイルサーが５０は、処理速度などを向上する効果を奏することができる。
【００５４】
以下の説明において、「ストレージ６０」に共通する説明では、「ストレージ６０」を用いる。さらに、「ファイルシステム６００」に共通する説明では、「ファイルシステム６００」を用いる。
【００５５】
なお、ストレージ６０は、ファイルシステム６００を備えず、直接的にファイルを保存してもよい。この場合、ファイル管理システム３０は、ファイルを保存する管理対象として、ファイルシステム６００ではなく、ストレージ６０を用いてもよい。
【００５６】
図面を参照して、ファイルサーバ５１及び５２の構成をさらに詳細に説明する。
【００５７】
図２に示されるように、ファイル管理システム３０は、ファイルサーバ５１と、ファイルサーバ５２と、ストレージ６１と、ストレージ６２とを含む。
【００５８】
ファイルサーバ５１は、送信受信部５１１と、ジョブファイル配置部５１２と、ファイル配置決定部５１４と、記憶部５１７と、接続部５１８とを含む。記憶部５１７は、ファイル配置順情報５１３と、ファイルシステム情報５１５と、接続ストレージ情報５１６とを保存する。
【００５９】
ファイルサーバ５２は、送信受信部５２１と、ジョブファイル配置部５２２と、ファイル配置決定部５２４と、記憶部５２７と、接続部５２８とを含む。記憶部５２７は、ファイル配置順情報５２３と、ファイルシステム情報５２５と、接続ストレージ情報５２６とを保存する。
【００６０】
なお、ファイルシステム情報５１５及び接続ストレージ情報５１６は、予め、記憶部５１７に保存されている。さらに、ファイルシステム情報５２５及び接続ストレージ情報５２６は、予め、記憶部５２７に保存されている。例えば、ファイル管理システム３０の管理者が、情報処理システム１０又はファイル管理システム３０の構築時に、これらの情報を保存する。
【００６１】
接続ストレージ情報５１６は、ファイルサーバ５１が管理する全てのストレージ６０（今の場合、ストレージ６１及びストレージ６２）を示す情報である。
【００６２】
接続ストレージ情報５２６は、ファイルサーバ５２が管理する全てのストレージ６０（今の場合、ストレージ６１及びストレージ６２）を示す情報である。
【００６３】
以下の説明では、接続ストレージ情報５１６及び５２６は、ストレージ６０を示す情報（識別子）の一例として、ファイバチャネルにおけるＷＷＮＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎｏｄｅ  Ｎａｍｅ）を用いる。ただし、これは、ストレージ６０の識別子を限定するものではない。例えば、ストレージ６０の識別子は、シリアル番号でもよい。
【００６４】
図６は、第１の実施形態に係る接続ストレージ情報５１６の一例を示す図である。図６において、「ＷＷＮＮ−６１」が、ストレージ６１の識別子である。「ＷＷＮＮ−６２」が、ストレージ６２の識別子である。
【００６５】
図１０は、第１の実施形態に係る接続ストレージ情報５２６の一例を示す図である。接続ストレージ情報５２６が保存する識別子は、接続ストレージ情報５１６が保存する識別子と同じである。
【００６６】
ファイルシステム情報５１５は、ファイルサーバ５１がファイルの配置先として使用する全てのファイルシステム６００と、ファイルシステム６００を保存するストレージ６０との対応関係の情報である。
【００６７】
ファイルシステム情報５２５は、ファイルサーバ５２がファイルの配置先として使用する全てのファイルシステム６００と、ファイルシステム６００を保存するストレージ６０との対応関係の情報である。
【００６８】
図７は、第１の実施形態に係るファイルシステム情報５１５の一例を示す図である。
【００６９】
図１１は、第１の実施形態に係るファイルシステム情報５２５の一例を示す図である。
【００７０】
図７及び図１１において、「ＤＥＶ−ｘｘｘ」の「ｘｘｘ」が、各ファイルシステム６００の識別子である。例えば、図７の１行目の「ＤＥＶ−６１１」は、ファイルシステム６１１の識別子である。つまり、図７の１行目は、「ファイルシステム６１１（ＤＥＶ−６１１）が、ストレージ６１（ＷＷＮＮ−６１）に設けられている」ことを示す。
【００７１】
図７に示されているように、ファイルサーバ５１は、４つのファイルシステム６００（ＤＥＶ−６１１から６１４）を用いる。ファイルシステム６１１及び６１３（ＤＥＶ−６１１及び６１３）は、ストレージ６１（ＷＷＮＮ−６１）に構築されている。ファイルシステム６１２及び６１４（ＤＥＶ−６１２及び６１４）は、ストレージ６２（ＷＷＮＮ−６２）に構築されている。
【００７２】
図１１に示されているように、ファイルサーバ５２は、４つのファイルシステム６００（ＤＥＶ−６２１から６２４）を用いる。ファイルシステム６２１及び６２３（ＤＥＶ−６２１及び６２３）は、ストレージ６１（ＷＷＮＮ−６１）に構築されている。ファイルシステム６２２及び６２４（ＤＥＶ−６２２及び６２４）は、ストレージ６２（ＷＷＮＮ−６２）に構築されている。
【００７３】
図１３は、第１の実施形態に係るファイルシステム６００の配置の一例を示す図である。ストレージ６１は、ファイルシステム６１１、６２１、６１３、及び６２３を含む。ストレージ６２は、ファイルシステム６１２、６２２、６１４、及び６２４を含む。
【００７４】
ファイル配置順情報５１３は、「ジョブファイル配置部５１２がファイルを作成するファイルシステム６００の順番」、「開始ストレージ」、及び、「最後にファイルを作成したファイルシステム６００」を保存する。以下、「ファイルを作成するファイルシステム６００の順番」を「ファイルシステム順」と呼ぶ。また、以下、「最後にファイルを作成したファイルシステム６００」を「最後のファイルシステム」と呼ぶ。「開始ストレージ」などについては、後ほど詳細に説明する。
【００７５】
ファイル配置順情報５２３は、ジョブファイル配置部５２２に対応した「ファイルシステム順」、「開始ストレージ」及び、「最後にファイルシステム」を保存する。
【００７６】
図８は、第１の実施形態に係るファイル配置順情報５１３の一例を示す図である。
【００７７】
図１２は、第１の実施形態に係るファイル配置順情報５２３の一例を示す図である。
【００７８】
図８及び図１２の下部の表が、「ファイルシステム順」の一例である。図８及び図１２の上部の表が、「開始ストレージ」及び「最後のファイルシステム」の一例である。
【００７９】
接続部５１８は、ファイルサーバ５１とストレージ６１との接続を仲介する。さらに、接続部５１８は、接続部５２８を介して、ファイルサーバ５２及びストレージ６２との通信を仲介する。ストレージ６１は、ファイルサーバ５１に直接的に接続されているストレージ６０である。ストレージ６２は、ファイルサーバ５１に間接的に接続されているストレージ６０である。
【００８０】
接続部５２８は、ファイルサーバ５２とストレージ６２との接続を仲介する。さらに、接続部５２８は、接続部５１８を介して、ファイルサーバ５１及びストレージ６１との通信を仲介する。ストレージ６２は、ファイルサーバ５２に直接的に接続されているストレージ６０である。ストレージ６１は、ファイルサーバ５２に間接的に接続されているストレージ６０である。
【００８１】
さらに、接続部５１８及び５２８は、ファイルサーバ５１及び５２の通信を仲介する。
【００８２】
送信受信部５１１は、ネットワーク４０を介して、ノード２０と通信する。送信受信部５１１は、ノード２０からのファイル作成の要求を受けると、ジョブファイル配置部５１２に通知する。
【００８３】
送信受信部５２１は、ネットワーク４０を介して、ノード２０と通信する。送信受信部５２１は、ノード２０からのファイル作成の要求を受けると、ジョブファイル配置部５２２に通知する。
【００８４】
ジョブファイル配置部５１２は、ファイル作成の要求を受けると、ファイル配置順情報５１３を用いてファイルを配置するファイルシステム６００を決定し、決定したファイルシステム６００にファイルを作成する。ジョブファイル配置部５１２は、ストレージ６１にファイルを作成する際には接続部５１８を、ストレージ６２にファイルを作成する際には接続部５１８及び５２８を用いる。
【００８５】
さらに、ジョブファイル配置部５１２は、ファイルを生成後、ファイル配置順情報５１３における「最後のファイルシステム」を更新する。
【００８６】
詳細には、ジョブファイル配置部５１２は、次のように動作する。
【００８７】
まず、ジョブファイル配置部５１２は、ファイル配置順情報５１３における「最後のファイルシステム」を取得する。そして、ジョブファイル配置部５１２は、「ファイルシステム順」における「最後のファイルシステム」の次のファイルシステム６００を、ファイルを作成するファイルシステム６００として選択する。そして、ジョブファイル配置部５１２は、選択したファイルシステム６００にファイルを生成する。そして、ジョブファイル配置部５１２は、選択したファイルシステム６００を「最後のファイルシステム」に設定する。つまり、ジョブファイル配置部５１２は、ファイルを作成したファイルシステム６００を用いて「最後のファイルシステム」を更新する。
【００８８】
ジョブファイル配置部５２２は、ファイル作成の要求を受けると、ファイル配置順情報５２３を用いて、ジョブファイル配置部５１２と同様に動作する。その際、ジョブファイル配置部５２２は、必要に応じて、接続部５２８及び５１８を用いる。
【００８９】
ファイル配置決定部５１４は、ファイルシステム情報５１５と接続ストレージ情報５１６とを用いて、ファイルを配置するためのファイル配置順情報５１３を作成する。より詳細には、ファイル配置決定部５１４は、次のように、ファイル配置順情報５１３を作成する。
【００９０】
ファイル配置決定部５１４は、予め設定されたストレージ６０からファイルを配置するように、ファイル配置順情報５１３を作成する。
【００９１】
以下の説明では、一例として、予め設定されたストレージ６０は、ファイルサーバ５１に直接的に接続されているストレージ６１とする。これは、直接的に接続されているストレージ６１が、一般的に処理速度が高いためです。ただし、予め設定されたストレージ６０は、これに限定されない。例えば、ファイルサーバ５１は、予め設定されたストレージ６０として、アクセス速度が最も早いストレージ６０を設定されていてもよい。
【００９２】
さらに、ファイル配置決定部５１４は、予め設定されたストレージ６０において最初に使用するファイルシステム６００を指定されていてもよい。
【００９３】
そして、ファイル配置決定部５１４は、所定の順序に沿ってストレージ６０を変更するように、ファイルシステム６００を選択して、ファイル配置順情報５１３を作成する。所定の順序として、ファイル配置決定部５１４は、同じストレージ６０に続けてファイルを配置しないようする。例えば、ファイル配置決定部５１４は、ラウンドロビンを用いて、ストレージ６０を選択する。ただし、ここでの所定の順序は、ラウンドロビンに限定されない。例えば、ファイル配置決定部５１４は、所定の数列又は疑似乱数を用いてストレージ６０を選択してもよい。ただし、以下の説明では、ファイル配置決定部５１４は、ラウンドロビンを用いて、接続ストレージ情報５１６からストレージ６０を選択する。
【００９４】
さらに、ファイル配置決定部５１４は、選択したストレージ６０において配置を決定していないファイルシステム６００がある場合、選択したストレージ６０においてそのファイルシステム６００を選択する。これは、ストレージ６０における使用領域を分散させるためである。例えば、ファイル配置決定部５１４は、ラウンドロビンなどを用いて、ストレージ６０においてファイルシステム６００を選択すればよい。
【００９５】
図８の下部の表は、このような動作を基に設定された「ファイルシステム順」である。図８の下部の表において、ストレージ６０及びファイルシステム６００の組が、重複なく設定されている。
【００９６】
そして、ファイル配置決定部５１４は、ファイル配置順情報５１３の「開始ストレージ」に、所定のストレージ６０（今の場合、ストレージ６１）を設定する。
【００９７】
さらに、ファイル配置決定部５１４は、「最後のファイルシステム」に次に使用するストレージ６０におけるファイルシステム６００の一つ前のファイルシステム６００を設定する。図８は、次に使用するファイルシステム６００が、図８の下部の表の１行目の場合の例である。ジョブファイル配置部５１２が次に１行目のファイルシステム６００（今の場合、ＤＥＶ−６１１）を使用するため、ファイル配置決定部５１４は、下部の表の１行目の前（つまり、最後の行）のファイルシステム６００（今の場合、ＤＥＶ−６１４）を設定する。
【００９８】
その後、ファイル配置決定部５１４は、「開始ストレージ」（今の場合、ストレージ６１）に関する情報を、ファイルサーバ５２のファイル配置決定部５２４に送信する。詳細には、ファイル配置決定部５１４は、接続部５１８及び５２８を介して、「開始ストレージ」に設定したストレージ６０の識別子（今の場合、ストレージ６１の識別子）をファイル配置決定部５２４に送信する。
【００９９】
ファイル配置決定部５２４は、ファイルシステム情報５１５と接続ストレージ情報５１６と、ファイルサーバ５１から受信した「開始ストレージ」に関する情報とを用いて、ファイルを配置するためのファイル配置順情報５２３を作成する。より詳細には、ファイル配置決定部５２４は、次のように、ファイル配置順情報５２３を作成する。
【０１００】
ファイル配置決定部５２４は、ファイルサーバ５１から受信したストレージ６０（受信したファイル配置順情報５１３の「開始ストレージ」）とは異なるストレージ６０からファイルを配置するように、ファイル配置順情報５２３を作成する。今の場合、ファイル配置決定部５２４は、ストレージ６１に関する情報を受信しているため、最初にファイルを配置するストレージ６０としてストレージ６２を設定する。ここで設定されたストレージ６０が、ファイル配置順情報５２３における「開始ストレージ」である。
【０１０１】
さらに、ファイル配置決定部５２４は、所定の順序に沿って、ストレージ６０を変更するようにファイル配置順情報５２３を作成する。所定の順序として、ファイル配置決定部５２４は、同じストレージ６０に続けてファイルを配置しないようする。例えば、ファイル配置決定部５２４は、ファイル配置決定部５１４と同様に、ラウンドロビンを用いて、ストレージ６０を選択する。ただし、この所定の順序は、ラウンドロビンに限定されない。例えば、順序は、所定の数列、又は、乱数でもよい。ただし、以下の説明では、ファイル配置決定部５２４は、ラウンドロビンを用いて、接続ストレージ情報５２６からストレージ６０を選択する。
【０１０２】
さらに、ファイル配置決定部５２４は、選択したストレージ６０において配置を決定していないファイルシステム６００がある場合、選択したストレージ６０においてそのファイルシステム６００を選択する。これは、ストレージ６０における使用領域を分散させるためである。例えば、ファイル配置決定部５２４は、ラウンドロビンなどを用いて、ストレージ６０においてファイルシステム６００を選択すればよい。
【０１０３】
そして、ファイル配置決定部５２４は、ファイル配置決定部５１４と同様に、ファイル配置順情報５２３の各情報を設定する。
【０１０４】
図１１の下部の表は、このような動作を基に設定されたファイルシステム６００の順番である。ストレージ６０及びファイルシステム６００の組が、重複なく設定されている。
【０１０５】
なお、ファイルサーバ５１及び５２は、情報（例えば、「開始ストレージ」）の通信に用いる構成を限定されない。例えば、ファイルサーバ５１及び５２は、ノード２０との接続用いているネットワーク４０を介して、情報を通信してもよい。あるいは、ジョブファイル配置部５１２、ファイル配置決定部５１４、ジョブファイル配置部５２２、及び、ファイル配置決定部５２４が、通信機能を含んでいてもよい。
【０１０６】
［動作の説明］
次に、図面を参照して、第１の実施形態に係るファイル管理システム３０における動作について説明する。
【０１０７】
まず、ファイル配置決定部５１４の動作を説明する。
【０１０８】
図３は、第１の実施形態に係るファイル配置決定部５１４におけるファイルの配置を決定する動作の一例を示すフローチャートである。
【０１０９】
ファイル配置決定部５１４は、接続ストレージ情報５１６と、ファイルシステム情報５１５とを取得する（ステップＳ１００）。具体的には、ファイル配置決定部５１４は、ファイルサーバ５１が接続しているストレージ６０、及び、ファイルサーバ５１が使用するファイルシステム６００の一覧を取得する。
【０１１０】
以下の説明は、ファイル配置決定部５１４が、図６に示されている接続ストレージ情報５１６と、図７に示されているファイルシステム情報５１５とを取得したとする。
【０１１１】
ファイル配置決定部５１４は、予め設定されているストレージ６０（ファイルサーバ５１の「開始ストレージ」）を「対象ストレージ」と設定する（ステップＳ１０１）。例えば、ファイル配置決定部５１４は、取得した接続ストレージ情報５１６の先頭のストレージ６０（今の場合、ストレージ６１（ＷＷＮＮ−６１））を「対象ストレージ」としてもよい。この場合の設定は、例えば、「接続ストレージ情報５１６の先頭のストレージ６０」である。あるいは、ファイル配置決定部５１４は、接続ストレージ情報５１６と関連しない設定を保持してもよい。例えば、ファイル配置決定部５１４は、最初の「対象ストレージ」として、他のファイルサーバ５０の介さずに直接的に接続しているストレージ６０を設定してもよい。
【０１１２】
以下の説明では、一例として、ファイル配置決定部５１４は、図６に示されている接続ストレージ情報５１６の先頭のストレージ６０（ストレージ６１）を「対象ストレージ」とする。
【０１１３】
次に、ファイル配置決定部５１４は、ファイルシステム情報５１５からファイルシステム６００を選択する（ステップＳ１０２）。ファイル配置決定部５１４は、予め保持する順に沿って、ファイルシステム６００を選択する。例えば、ファイル配置決定部５１４は、ファイルシステム情報５１５に含まれる先頭のファイルシステム６００を選択してもよい。あるいは、ファイル配置決定部５１４は、所定の数列又は乱数を用いてファイルシステム６００を選択してもよい。
【０１１４】
以下の説明では、一例として、ファイル配置決定部５１４は、ファイルシステム情報５１５の先頭のファイルシステム６１１を選択する。
【０１１５】
ファイル配置決定部５１４は、選択したファイルシステム６００（今の場合、ファイルシステム６１１）が「対象ストレージ」（今の場合、ストレージ６１）に設けられたファイルシステム６００か否かを確認する（ステップＳ１０３）。
【０１１６】
選択したファイルシステム６００が「対象ストレージ」のファイルシステム６００でない場合（ステップＳ１０３でＮｏ）、ファイル配置決定部５１４は、ファイルシステム６００を再選択する（ステップＳ１０６）。例えば、ファイル配置決定部５１４は、ファイルシステム情報５１５の次のファイルシステム６００を選択する。そして、ファイル配置決定部５１４は、ステップＳ１０３に戻る。ファイル配置決定部５１４は、「対象ストレージ」のファイルシステム６００を選択するまで、この動作を繰り返す。
【０１１７】
選択したファイルシステム６００が「対象ストレージ」のファイルシステム６００の場合（ステップＳ１０３でＹｅｓ）、ファイル配置決定部５１４は、ファイル配置順情報５１３を更新し、「対象ストレージ」を変更する（ステップＳ１０４）。例えば、今の場合、ファイル配置決定部５１４は、次のように動作する。
【０１１８】
まず、ファイル配置決定部５１４は、ファイル配置順情報５１３に選択したファイルシステム６１１と、ストレージ６１とを追加する。図８の１行目は、ここで追加される情報の一例である。そして、ファイル配置決定部５１４は、ラウンドロビンを用いてストレージ６０から次の「対象ストレージ」を選択する。今の場合、ファイル配置決定部５１４は、「対象ストレージ」として、ストレージ６２を設定する。
【０１１９】
次に、ファイル配置決定部５１４は、ファイルシステム情報５１５において、配置を決定していないファイルシステム６００が残っているか否か確認する（ステップＳ１０５）。
【０１２０】
ファイルシステム６００が残っている場合（ステップＳ１０５）、ファイル配置決定部５１４は、ステップＳ１０２に戻る。ファイル配置決定部５１４は、全てのファイルシステム６００を処理するまで、同様の動作を繰り返す。
【０１２１】
ファイルシステム６００が残っていない場合（ステップＳ１５０でＮｏ）、ファイル配置決定部５１４は、ファイルサーバ５１の「開始ストレージ」をファイルサーバ５２に通知する（ステップＳ１０７）。
【０１２２】
そして、ファイル配置決定部５１４は、最後のファイル配置順情報５１３に設定したファイルシステム６００を、ファイル配置順情報５１３における「最後のファイルシステム」を設定する（ステップＳ１０８）。例えば、ファイル配置決定部５１４が、図７のファイルシステム情報５１５の上のファイルシステム６００から用いる場合、ファイル配置決定部５１４は、最後に、ファイルシステム６１４を配置する。そこで、ファイル配置決定部５１４は、「最後のファイルシステム」として、ファイルシステム６１４を設定する。図８の上部の表は、この場合のファイル配置順情報５１３の一例である。
【０１２３】
さらに、ファイル配置決定部５１４は、ファイルサーバ５１の「開始ストレージ」を、ファイル配置順情報５１３に保存する。なお、ファイル配置決定部５１４は、「開始ストレージ」をステップＳ１０１又はＳ１０７において保存してもよい。
【０１２４】
また、ストレージ６０が異なる数のファイルシステム６００を含む場合、ファイル配置決定部５１４は、配置されていないファイルシステム６００を含むストレージ６０において、ストレージ６０が分散するようにファイル配置順情報５１３を作成する。残りのファイルシステム６００が一つのストレージ６０に含まれる場合、ファイル配置決定部５１４は、ファイル配置順情報５１３に、残りのファイルシステム６００を所定の順に追加する。
【０１２５】
なお、ストレージ６０がファイルシステム６００を含まない場合、ファイル配置決定部５１４は、「開始ストレージ」から所定に順にストレージ６０を配置するファイル配置順情報５１３を作成する。
【０１２６】
次に、ファイル配置決定部５２４の動作を説明する。
【０１２７】
ファイル配置決定部５２４の動作は、ファイル配置決定部５１４の動作と比較すると、最初に「対象ストレージ」を設定する動作と「開始ストレージ」を通知する動作とが異なる。その他の動作は、同じため、それらの動作の詳細な説明を省略する。
【０１２８】
図４は、第１の実施形態に係るファイル配置決定部５２４におけるファイルの配置を決定する動作の一例を示すフローチャートである。図４に示されているフローチャートは、図３に示されているフローチャートにおけるステップＳ１０１がＳ２０１となっている。さらに、図４に示されているフローチャートは、ステップＳ１０７が破線のＳ２０７となっている。図４のそれ以外の動作は、図３の動作と同じである。そのため、ステップＳ２０１及びＳ２０７について説明する。
【０１２９】
ファイル配置決定部５２４は、「対象ストレージ」として、ファイル配置決定部５１４から受信した「開始ストレージ」とは異なるストレージ６０を設定する（ステップＳ２０１）。
【０１３０】
例えば、ファイル配置決定部５２４は、図１０の接続ストレージ情報５２６と、図１１のファイルシステム情報５２５と、受信した「開始ストレージ」とを用いて、図１２に示されるファイル配置順情報５１３を生成する。
【０１３１】
ファイル管理システム３０が、２つのファイルサーバ５０を含む場合、ファイル配置決定部５２４は、ステップＳ２０７に相当する動作を実行しない。
【０１３２】
ただし、ファイル管理システム３０は、２つを超えるファイルサーバ５０を含んでもよい。
【０１３３】
例えば、ファイル管理システム３０は、３つのファイルサーバ５０（以下の説明では、「第１のファイルサーバ」「第２のファイルサーバ」及び「第３のファイルサーバ」とする）を含むとする。
【０１３４】
この場合、「第１のファイルサーバ」及び「第２のファイルサーバ」は、それぞれ異なるストレージ６０について「開始ストレージ」が設定される。
【０１３５】
そして、「第１のファイルサーバ」及び「第２のファイルサーバ」は、ファイルサーバ５１と同様に、「開始ストレージ」から使用するようにファイル配置順情報５１３を設定し、「開始ストレージ」を「第３のファイルサーバ」に通知する。「第３のファイルサーバ」は、ファイルサーバ５２と同様に、通知を受けた全ての「開始ストレージ」とは異なるストレージ６０をファイル配置順情報５２３に設定する。
【０１３６】
ただし、ファイル管理システム３０は、異なる動作を用いてもよい。
【０１３７】
例えば、「第１のファイルサーバ」に「開始ストレージ」が、設定されてもよい。この場合、「第１のファイルサーバ」は、「開始ストレージ」を「第２のファイルサーバ」及び「第３のファイルサーバ」に通知する。
【０１３８】
「第２のファイルサーバ」は、所定の選択方法を用いて、ストレージ６０の中から、通知として受け取った「開始ストレージ」とは異なるストレージ６０を選択して「第２のファイルサーバ」の「開始ストレージ」とする。
【０１３９】
そして、「第２のファイルサーバ」は、「第２のファイルサーバ」の「開始ストレージ」を「第３のファイルサーバ」に通知する。この動作は、図４におけるステップＳ２０７に対応する。このように、図４のステップＳ２０７の動作は実行される場合と実行されない場合とがあるため、図４は、ステップＳ２０７を破線で示している。
【０１４０】
「第３のファイルサーバ」は、「第１のファイルサーバ」及び「第２のファイルサーバ」から「開始ストレージ」として受け取ったストレージ６０とは異なるストレージ６０を選択する。
【０１４１】
次に、ジョブファイル配置部５１２の動作を説明する。なお、ジョブファイル配置部５２２は、ファイル配置順情報５１３に替えてファイル配置順情報５２３を用いる点以外は、ジョブファイル配置部５１２と同様に動作する。そのため、以下では、ジョブファイル配置部５１２を用いて説明し、ジョブファイル配置部５２２の詳細な説明を省略する。
【０１４２】
図５は、第１の実施形態に係るジョブファイル配置部５１２の動作の一例を示すフローチャートである。
【０１４３】
まず、ジョブファイル配置部５１２は、送信受信部５１１を介してノード２０からファイルの作成要求を受信する（ステップＳ３００）。
【０１４４】
次に、ジョブファイル配置部５１２は、ステップＳ３０１にて、最初のファイルの作成依頼であるか否かを確認する（ステップＳ３０１）。例えば、ジョブファイル配置部５１２は、ファイルの作成及び廃棄に関する情報を保持し、その情報を基に最初のファイルの作成依頼であるか否かを判断する。
【０１４５】
最初のファイルの作成依頼でない場合（ステップＳ３０１でＮｏ）、ジョブファイル配置部５１２は、「ファイルシステム順」における「最後のファイルシステム」の次のファイルシステム６００を選択する。そして、ジョブファイル配置部５１２は、ステップＳ３０４に進む。
【０１４６】
最初のファイルの作成依頼の場合（ステップＳ３０１でＹｅｓ）、ジョブファイル配置部５１２は、ファイル配置順情報５１３を基に、ファイルを配置する最初のファイルシステム６００を選択する（ステップＳ３０２）。詳細には、ジョブファイル配置部５１２は、次のように動作する。
【０１４７】
まず、ジョブファイル配置部５１２は、ファイル配置順情報５１３から「開始ストレージ」と「最後のファイルシステム」とを取得する。そして、ジョブファイル配置部５１２は、「ファイルシステム順」における「最後のファイルシステム」の次のファイルシステム６００を選択する。ジョブファイル配置部５１２は、選択したファイルシステム６００のストレージ６０が「開始ストレージ」であるか否かを確認する。「開始ストレージ」の場合、ジョブファイル配置部５１２は、ステップＳ３０４に進む。
【０１４８】
「開始ストレージ」でない場合、ジョブファイル配置部５１２は、「開始ストレージ」となるまで、「ファイルシステム順」におけるファイルシステム６００の選択を繰り返す。「ファイルシステム順」の最後まで進んだ場合、ジョブファイル配置部５１２は、「ファイルシステム順」の先頭に戻って、動作を継続する。「開始ストレージ」となった場合、ジョブファイル配置部５１２は、ステップＳ３０４に進む。
【０１４９】
上記のように、ジョブファイル配置部５１２は、「開始ストレージ」における「最後のファイルシステム」の次以降のファイルシステム６００を選択する。そのため、ジョブファイル配置部５１２は、使用を開始するファイルシステム６００を、「開始ストレージ」における「ファイルシステム順」の先頭のファイルシステム６００に固定しないで、「開始ストレージ」に含まれるファイルシステム６００に分散できる。
【０１５０】
このように、ジョブファイル配置部５１２は、ファイルシステム６００におけるファイルの履歴（今の場合、「最後のファイルシステム」）を用いて、ファイルを作成するファイルシステム６００を決定する。その結果、ジョブファイル配置部５１２は、ストレージ６０において使用する領域を分散させることができる。
【０１５１】
特定領域の使用頻度が高いと、ストレージ６０はその領域の劣化に伴い、他の領域が劣化しなくても使用できなくなる。上記の使用領域の分散は、ストレージ６０の劣化を低減させる効果を奏する。
【０１５２】
ステップＳ３０４において、ジョブファイル配置部５１２は、選択したファイルシステム６００にファイルを生成する。そして、ジョブファイル配置部５１２は、ファイル配置順情報５１３の「最後のファイルシステム」を、選択したファイルシステム６００に更新する。
【０１５３】
例えば、図８に示されているファイル配置順情報５１３を用いた場合、ジョブファイル配置部５１２は、ファイルシステム６１１（ＤＥＶ−６１１）を選択する。そして、ジョブファイル配置部５１２は、「最後のファイルシステム」をファイルシステム６１１に更新する。
【０１５４】
図９は、更新後のファイル配置順情報５１３の一例を示す図である。
【０１５５】
［効果の説明］
次に、第１の実施形態に係るファイル管理システム３０に効果を説明する。
【０１５６】
第１の実施形態に係るファイル管理システム３０は、記憶装置（ストレージ）のアクセスの競合を低減するとの効果を得ることができる。
【０１５７】
その理由は、次のとおりである。
【０１５８】
ファイル管理システム３０は、複数のストレージ６０（例えば、ストレージ６１及び６２）を含む。さらにファイル管理システム３０は、ファイルサーバ５１と、ファイルサーバ５２とを含む。複数のストレージ６０は、ノード２０からのデータをファイルとして保存する。ファイルサーバ５１は、ファイル配置決定部５１４を含む。ファイル配置決定部５１４は、ファイルサーバ５１が作成するファイルを配置するストレージ６０の順を示すファイル配置順情報５１３を作成する。さらに、ファイル配置決定部５１４は、ファイル配置順情報５１３の作成において、ファイルサーバ５１が最初にファイルを配置するストレージ６０として複数のストレージ６０における予め指定された「開始ストレージ」を設定する。そして、ファイル配置決定部５１４は、設定した「開始ストレージ」を示す情報（例えば、識別子）を送信する。ファイルサーバ５２は、ファイル配置決定部５２４を含む。ファイル配置決定部５２４は、ファイルサーバ５１から設定した「開始ストレージ」を示す情報（例えば、識別子）を受信する。そして、ファイル配置決定部５２４は、ファイルサーバ５２がファイルを配置するストレージ６０の順を示すファイル配置順情報５２３を作成する。さらに、ファイル配置決定部５２４は、ファイル配置順情報５２３の作成において、ファイルサーバ５２が最初にファイルを配置するストレージ６０として受信した「開始ストレージ」とは異なるストレージ６０を設定する。
【０１５９】
ファイル配置決定部５１４は、上記の動作を基に、ファイル配置順情報５１３（例えば、図８を参照）を作成する。ファイル配置決定部５２４は、上記動作を基に、ファイル配置順情報５２３（例えば、図１２を参照）を作成する。
【０１６０】
ジョブファイル配置部５１２は、ファイル配置順情報５１３を用いてファイルを配置するファイルシステム６００を設定する。
【０１６１】
例えば、図８のファイル配置順情報５１３を用いる値、ジョブファイル配置部５１２は、ファイルを配置するファイルシステム６００として、まず、ストレージ６１のファイルシステム６１１を選択する。ジョブファイル配置部５１２は、続いて、ストレージ６２のファイルシステム６１２、ストレージ６１のファイルシステム６１３、及びストレージ６２のファイルシステム６１４を選択する。
【０１６２】
ジョブファイル配置部５２２は、ファイル配置順情報５２３を用いてファイルを配置するファイルシステム６００を設定する。
【０１６３】
例えば、図１２のファイル配置順情報５２３を用いる値、ジョブファイル配置部５２２は、ファイルを配置するファイルシステム６００として、まず、ストレージ６２のファイルシステム６２２を選択する。ジョブファイル配置部５２２は、続いて、ストレージ６１のファイルシステム６２１、ストレージ６２のファイルシステム６２４、及びストレージ６１のファイルシステム６２３を選択する。
【０１６４】
図１４は、第１の実施形態に係るファイル管理システム３０におけるファイルの配置の一例を示す図である。図１４に示されているように、ファイルサーバ５１が最初に配置するファイル（ファイル１１）は、ストレージ６１に配置される。一方、ファイルサーバ５２が最初に配置するファイル（ファイル２１）は、ストレージ６２に配置される。このように、ファイルサーバ５１及び５２が一つのファイルを作成する場合でも、ファイル管理システム３０は、ファイルへのアクセスを分散させる（競合を発生させない）。
【０１６５】
このように、ファイルサーバ５２のファイル配置決定部５２４は、ファイルサーバ５１のファイル配置決定部５１４が最初に設定するストレージ６０（ファイルサーバ５１の「開始ストレージ」）とは異なるストレージ６０からファイルを配置する。
【０１６６】
その結果、ファイル管理システム３０は、ファイルサーバ５１及び５２が、それぞれ一つのファイルを作成する場合でも、ファイルを作成するストレージ６０を分散させ、ストレージ６０へのアクセスの競合を発生させない。
【０１６７】
［実施形態の概要］
以上の説明した第１の実施形態に係るファイル管理システム３０の概要を説明する。
【０１６８】
ファイル配置決定部５１４及び５２４は、ジョブファイル配置部５１２及び５２２と異なる装置に含まれていてもよい。例えば、ファイル配置決定部５１４を含む装置が、事前にファイル配置順情報５１３を作成し、ジョブファイル配置部５１２を含む装置に送信してもよい。この場合、ファイル配置決定部５１４を含む装置は、ファイル配置順情報５１３を作成する装置のため、「ファイル配置決定装置」の一例である。また、ジョブファイル配置部５１２を含む装置は、ファイルを作成及び配置を管理する装置のため「ファイル管理装置」の一例である。
【０１６９】
ただし、この構成は、ファイル管理システム３０の構成の一例である。例えば、ファイル管理装置は、これまでの説明のように、ファイル配置決定装置を含んでもよい。あるいは、ファイル配置決定装置が、ファイル管理装置を含んでもよい。
【０１７０】
図１６は、概要であるファイル管理システム３１の構成の一例を示すブロック図である。
【０１７１】
ファイル管理システム３１は、複数の記憶装置（記憶装置６３及び記憶装置６４）と、第１のファイル配置決定装置（ファイル配置決定装置５３）と、第２のファイル配置決定装置（ファイル配置決定装置５４）とを含む。複数の記憶装置は、図示しないホスト装置からのデータをファイルとして保存する。第１のファイル配置決定装置は、第１のファイル配置決定部（ファイル配置決定部５３４）を含む。第１のファイル配置決定部は、図示しない第１のファイル管理装置が作成するファイルを配置する記憶装置の順を示す第１のファイル配置順情報（ファイル配置順情報５１３）を作成する。さらに、第１のファイル配置決定部は、第１のファイル配置順情報の作成において、第１のファイル管理装置が最初にファイルを配置する記憶装置として複数の記憶装置における予め指定された記憶装置を設定する。そして、第１のファイル配置決定部は、設定した記憶装置を示す情報を送信する。第２のファイル配置決定装置は、第２のファイル配置決定部（ファイル配置決定部５４４）を含む。第２のファイル配置決定部は、第１のファイル配置決定装置から設定した記憶装置を示す情報を受信する。そして、第２のファイル配置決定部は、図示しない第２のファイル管理装置がファイルを配置する記憶装置の順を示す第２のファイル配置順情報を作成する。さらに、第２のファイル配置決定部は、第２のファイル配置順情報の作成において、第２のファイル管理装置が最初にファイルを配置する記憶装置として受信した記憶装置とは異なる記憶装置を設定する。
【０１７２】
ホスト装置の一例が、ノード２０である。第１のファイル管理装置の一例が、ジョブファイル配置部５１２を含むファイルサーバ５１である。第１のファイル配置決定手段の一例が、ファイル配置決定部５１４である。第２のファイル管理装置の一例が、ジョブファイル配置部５２２を含むファイルサーバ５２である。第２のファイル配置決定手段の一例が、ファイル配置決定部５２４である。この例では、ファイル管理装置は、ファイル配置決定装置を含む。
【０１７３】
このように構成されたファイル管理システム３１は、ファイル管理システム３０と同様の効果を奏する。
【０１７４】
その理由は、ファイル配置決定部５３４及び５４４が、ファイル配置決定部５１４及び５２４と同様に、ファイル配置順情報５１３及びファイル配置順情報５２３を生成するためである。
【０１７５】
ファイル管理システム３１は、本発明における実施形態の最小構成である。
【０１７６】
なお、一つのファイルサーバ５０が、ファイル配置決定部５３４とファイル配置決定部５４４とを含んでもよい。
【０１７７】
図１８は、第１の実施形態に係る概要における別のファイル配置決定装置５５の構成の一例を示すブロック図である。
【０１７８】
ファイル配置決定装置５５は、第１のファイル配置決定部（ファイル配置決定部５３４）と、第２のファイル配置決定部（ファイル配置決定部５４４）とを含み、記憶装置（記憶装置６３又は記憶装置６４）と接続されている。
【０１７９】
予め記憶装置（「開始ストレージ」）が設定されている場合、ファイル配置決定装置５５は、ファイル配置決定装置５３と同様に動作し、第１のファイル配置順情報（ファイル配置順情報５１３）を作成する。
【０１８０】
記憶装置（「開始ストレージ」）が設定されない場合又は「開始ストレージ」の通知を受けた場合、ファイル配置決定装置５５は、ファイル配置決定装置５４と同様に動作し、第２のファイル配置順情報（ファイル配置順情報５２３）を作成する。
【０１８１】
［ファイルサーバのハードウェア構成］
ファイルサーバ５１、ファイルサーバ５２、ファイル配置決定装置５３及びファイル配置決定装置５４のハードウェア構成を、ファイルサーバ５１を用いて説明する。ファイルサーバ５２、ファイル配置決定装置５３及びファイル配置決定装置５４は、以下で説明するハードウェアを用いて各構成を実現すればよい。
【０１８２】
例えば、ファイルサーバ５１の各構成部は、ハードウェア回路で構成されてもよい。
【０１８３】
あるいは、ファイルサーバ５１において、各構成部は、ネットワークを介して接続した複数の装置を用いて、構成されてもよい。
【０１８４】
あるいは、ファイルサーバ５１において、複数の構成部は、１つのハードウェアで構成されてもよい。
【０１８５】
あるいは、ファイルサーバ５１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）とを含むコンピュータ装置として実現されてもよい。さらに、ファイルサーバ５１は、上記構成に加え、入出力接続回路（ＩＯＣ：Ｉｎｐｕｔ  ａｎｄ  Ｏｕｔｐｕｔ  Ｃｉｒｃｕｉｔ）を含むコンピュータ装置として実現されてもよい。さらに、ファイルサーバ５１は、上記構成に加え、ネットワークインターフェース回路（ＮＩＣ：Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃｉｒｕｃｕｉｔ）を含むコンピュータ装置として実現されてもよい。
【０１８６】
図１７は、第１の実施形態に係るファイルサーバ５１のハードウェア構成の一例であるファイル管理装置７０の構成を示すブロック図である。
【０１８７】
ファイル管理装置７０は、ＣＰＵ７１０と、ＲＯＭ７２０と、ＲＡＭ７３０と、内部記憶装置７４０と、ＩＯＣ７５０と、ＮＩＣ７８０と、ＮＩＣ７９０とを含み、コンピュータ装置を構成している。
【０１８８】
ＣＰＵ７１０は、ＲＯＭ７２０からプログラムを読み込む。そして、ＣＰＵ７１０は、読み込んだプログラムに基づいて、ＲＡＭ７３０と、内部記憶装置７４０と、ＩＯＣ７５０と、ＮＩＣ７８０と、ＮＩＣ７９０とを制御する。そして、ＣＰＵ７１０を含むコンピュータは、これらの構成を制御し、図２に示されている、送信受信部５１１、ジョブファイル配置部５１２と、ファイル配置決定部５１４と、記憶部５１７としての各機能を実現する。
【０１８９】
ＣＰＵ７１０は、各機能を実現する際に、ＲＡＭ７３０又は内部記憶装置７４０を、プログラムの一時記憶媒体として使用してもよい。
【０１９０】
また、ＣＰＵ７１０は、コンピュータで読み取り可能にプログラムを記憶した記録媒体８００が含むプログラムを、図示しない記録媒体読み取り装置を用いて読み込んでもよい。あるいは、ＣＰＵ７１０は、ＮＩＣ７８０又はＮＩＣ７９０を介して、図示しない外部の装置からプログラムを受け取り、ＲＡＭ７３０又は内部記憶装置７４０に保存して、保存したプログラムを基に動作してもよい。
【０１９１】
ＲＯＭ７２０は、ＣＰＵ７１０が実行するプログラム及び固定的なデータを記憶する。ＲＯＭ７２０は、例えば、Ｐ−ＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ−ＲＯＭ）又はフラッシュＲＯＭである。
【０１９２】
ＲＡＭ７３０は、ＣＰＵ７１０が実行するプログラム及びデータを一時的に記憶する。ＲＡＭ７３０は、例えば、Ｄ−ＲＡＭ（Ｄｙｎａｍｉｃ−ＲＡＭ）である。
【０１９３】
内部記憶装置７４０は、ファイル管理装置７０が長期的に保存するデータ及びプログラムを記憶する。内部記憶装置７４０は、記憶部５１７として動作する。内部記憶装置７４０は、ＣＰＵ７１０の一時記憶装置として動作してもよい。内部記憶装置７４０は、例えば、ハードディスク装置、光磁気ディスク装置、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）又はディスクアレイ装置である。
【０１９４】
ここで、ＲＯＭ７２０と内部記憶装置７４０は、不揮発性（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ）の記録媒体である。一方、ＲＡＭ７３０は、揮発性（ｔｒａｎｓｉｔｏｒｙ）の記録媒体である。そして、ＣＰＵ７１０は、ＲＯＭ７２０、内部記憶装置７４０、又は、ＲＡＭ７３０に記憶されているプログラムを基に動作可能である。つまり、ＣＰＵ７１０は、不揮発性記録媒体又は揮発性記録媒体を用いて動作可能である。
【０１９５】
ＩＯＣ７５０は、ＣＰＵ７１０と、入力機器７６０及び表示機器７７０とのデータを仲介する。ＩＯＣ７５０は、例えば、ＩＯインターフェースカード又はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）カードである。さらに、ＩＯＣ７５０は、ＵＳＢのような有線に限らず、無線を用いてもよい。
【０１９６】
入力機器７６０は、ファイル管理装置７０の操作者からの入力指示を受け取る機器である。入力機器７６０は、例えば、キーボード、マウス又はタッチパネルである。
【０１９７】
表示機器７７０は、ファイル管理装置７０の操作者に情報を表示する機器である。表示機器７７０は、例えば、液晶ディスプレイである。
【０１９８】
ＮＩＣ７８０及び７９０は、ネットワークを介した図示しない外部の装置とのデータのやり取りを中継する。ＮＩＣ７８０は、ネットワーク４０を介して、ノード２０と接続する。ＮＩＣ７９０は、ストレージ６０と接続する。ＮＩＣ７８０及び７９０は、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）カード又はファイバチャネルカードである。さらに、ＮＩＣ７８０及び／又は７９０は、有線に限らず、無線を用いてもよい。
【０１９９】
このように構成されたファイル管理装置７０は、ファイルサーバ５１と同様の効果を得ることができる。
【０２００】
その理由は、ファイル管理装置７０のＣＰＵ７１０が、プログラムに基づいてファイルサーバ５１と同様の機能を実現できるためである。
【０２０１】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成及び詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用可能性】
【０２０２】
本発明は、高いＩＯ性能が求められ、多数の計算機及びサーバで構成されることが多いＨＰＣ（Ｈｉｇｈ  Ｐｅｒｆｏｒｍａｎｃｅ  Ｃｏｍｐｕｔｉｎｇ）分野のシステムに利用可能である。
【符号の説明】
【０２０３】
１０    情報処理システム
２０    ノード
３０    ファイル管理システム
３１    ファイル管理システム
４０    ネットワーク
５０    ファイルサーバ
５１    ファイルサーバ
５２    ファイルサーバ
５３    ファイル配置決定装置
５４    ファイル配置決定装置
５５    ファイル配置決定装置
６０    ストレージ
６１    ストレージ
６２    ストレージ
６３    記憶装置
６４    記憶装置
７０    ファイル管理装置
９０    ファイル管理システム
９１    ストレージ
９２    ストレージ
５１１    送信受信部
５１２    ジョブファイル配置部
５１３    ファイル配置順情報
５１４    ファイル配置決定部
５１５    ファイルシステム情報
５１６    接続ストレージ情報
５１７    記憶部
５１８    接続部
５２１    送信受信部
５２２    ジョブファイル配置部
５２３    ファイル配置順情報
５２４    ファイル配置決定部
５２５    ファイルシステム情報
５２６    接続ストレージ情報
５２７    記憶部
５２８    接続部
５３４    ファイル配置決定部
５４４    ファイル配置決定部
６００    ファイルシステム
６１１    ファイルシステム
６１２    ファイルシステム
６１３    ファイルシステム
６１４    ファイルシステム
６２１    ファイルシステム
６２２    ファイルシステム
６２３    ファイルシステム
６２４    ファイルシステム
７１０    ＣＰＵ
７２０    ＲＯＭ
７３０    ＲＡＭ
７４０    内部記憶装置
７５０    ＩＯＣ
７６０    入力機器
７７０    表示機器
７８０    ＮＩＣ
７９０    ＮＩＣ
８００    記録媒体
【図１】
2019128699.tif 000003
【図２】
2019128699.tif 000004
【図３】
2019128699.tif 000005
【図４】
2019128699.tif 000006
【図５】
2019128699.tif 000007
【図６】
2019128699.tif 000008
【図７】
2019128699.tif 000009
【図８】
2019128699.tif 000010
【図９】
2019128699.tif 000011
【図１０】
2019128699.tif 000012
【図１１】
2019128699.tif 000013
【図１２】
2019128699.tif 000014
【図１３】
2019128699.tif 000015
【図１４】
2019128699.tif 000016
【図１５】
2019128699.tif 000017
【図１６】
2019128699.tif 000018
【図１７】
2019128699.tif 000019
【図１８】
2019128699.tif 000020