(57)【特許請求の範囲】
【請求項１】
少なくとも１つの第１種のストレージ媒体と少なくとも１つの第２種のストレージ媒体とを備える記憶装置に接続されたファイルサーバであって、
クライアントコンピュータと通信するためのネットワークインターフェースと、
前記記憶装置に格納されたファイルを管理するためのファイル管理部と、
を備え、
前記ファイルサーバは、前記少なくとも１つの第１種のストレージ媒体と前記少なくとも１つの第２種のストレージ媒体とによって構成された論理装置内にファイルシステムを構成し、
前記ネットワークインターフェースは、前記ファイルシステムのファイルの書き込み要求を前記クライアントコンピュータから受信し、前記ファイルは、データとメタデータとを含み、
前記記憶装置は、ストレージ媒体の種類に応じて前記論理装置内のアドレスレンジを管理するテーブルを備え、
前記ファイル管理部は、ファイルの書き込み要求を前記クライアントコンピュータから受信した時に、前記テーブルによって管理されている前記アドレスレンジを考慮して、データ格納のためにストレージ媒体の種類を選択し、前記ファイルの前記メタデータおよび前記データを前記少なくとも１つの第１種のストレージ媒体または前記少なくとも１つの第２種のストレージ媒体の内の１つに書き込むことで、前記メタデータおよびデータが、前記少なくとも１つの第１種のストレージ媒体と前記少なくとも１つの第２種のストレージ媒体とに跨って格納されないように、前記論理装置に前記メタデータおよびデータを格納する、ファイルサーバ。
【請求項２】
請求項１に記載のファイルサーバであって、前記ファイルサーバが、ファイルの書き込み要求を前記クライアントコンピュータから受信した時に、前記ファイル管理部は、データ格納のためにストレージ媒体の種類を選択し、第１種が選択された場合、前記メタデータおよび前記データの両方が、前記少なくとも１つの第１種のストレージ媒体に格納される、ファイルサーバ。
【請求項３】
請求項１に記載のファイルサーバであって、データ格納のために前記少なくとも１つの第２種のストレージ媒体を選択した場合、前記メタデータおよび前記データは、それぞれ、前記少なくとも１つの第１種のストレージ媒体および前記少なくとも１つの第２種のストレージ媒体に格納される、ファイルサーバ。
【請求項４】
請求項３に記載のファイルサーバであって、前記ファイル管理部は、前記少なくとも１つの第１種のストレージ媒体から前記少なくとも１つの第２種のストレージ媒体に前記データを移動し、前記少なくも１つの第１種のストレージ媒体にすでに格納されているメタデータを、前記少なくとも１つの第２種のストレージ媒体の実データの位置を示すように変更する、ファイルサーバ。
【請求項５】
少なくとも１つの第１種のストレージ媒体によって構成された第１の記憶領域と、少なくとも１つの第２種のストレージ媒体によって構成された第２の記憶領域とを備える記憶装置に接続されたファイルサーバであって、
クライアントコンピュータと通信するためのネットワークインターフェースと、
前記記憶装置に格納されたファイルを管理するためのファイル管理部と、
を備え、
前記ファイルサーバは、前記第１の記憶領域と前記第２の記憶領域とによって構成された論理装置内にファイルシステムを構成し、
前記ネットワークインターフェースは、前記ファイルシステムのファイルの書き込み要求を前記クライアントコンピュータから受信し、前記ファイルは、データとメタデータとを含み、
前記記憶装置は、ストレージ媒体の種類に応じて、前記論理装置内で、前記第１の記憶領域によって占められた第１のアドレスレンジと、前記第２の記憶領域によって占められた第２のアドレスレンジとを管理するテーブルを備え、
前記ファイル管理部は、前記ファイルサーバが、ファイルの書き込み要求を前記クライアントコンピュータから受信した時に、前記テーブルによって管理されている前記アドレスレンジを考慮して、データ格納のためにストレージ媒体の種類を選択し、前記ファイルの前記データを格納するために、前記少なくとも１つの第１の記憶領域または前記第２の記憶領域の内の１つにおける格納位置を選択し、前記選択された格納位置に前記ファイルの前記データおよび前記メタデータを格納することで、前記メタデータおよび前記データが、前記少なくとも１つの第１種のストレージ媒体と前記少なくとも１つの第２種のストレージ媒体とに跨らないように、前記論理装置に前記メタデータおよび前記データを格納する、ファイルサーバ。
【請求項６】
請求項５に記載のファイルサーバであって、前記ファイルサーバが、ファイルの前記書き込み要求を前記クライアントコンピュータから受信した時に、前記ファイル管理部は、データ格納のためにストレージ媒体の種類を選択し、第１種が選択された場合、メタデータおよびデータの両方が、前記少なくとも１つの第１種のストレージ媒体に格納される、ファイルサーバ。
【請求項７】
請求項５に記載のファイルサーバであって、前記ファイル管理部は、前記少なくとも１つの第１種のストレージ媒体から前記少なくとも１つの第２種のストレージ媒体に前記データを移動する時に、前記少なくとも１つの第２種の記憶領域にメタデータを作成する、ファイルサーバ。
【請求項８】
少なくとも１つの第１種のストレージ媒体と少なくとも１つの第２種のストレージ媒体とを備える記憶装置に接続されたファイルサーバにおける方法であって、
ネットワークインターフェースを介してクライアントコンピュータと通信する工程と、
前記記憶装置に格納されたファイルをファイル管理部によって管理する工程と、
前記少なくとも１つの第１種のストレージ媒体と前記少なくとも１つの第２種のストレージ媒体とによって構成された論理装置内にファイルシステムを構成する工程と、
前記ファイルシステムのファイルの書き込み要求を前記クライアントコンピュータから受信する工程であって、前記ファイルは、データとメタデータとを含む、工程と、
ストレージ媒体の種類に応じて前記論理装置内のアドレスレンジを管理するテーブルを保持する工程と、
ファイルの書き込み要求を前記クライアントコンピュータから受信した時に、前記テーブルによって管理されている前記アドレスレンジを考慮してデータ格納のためにストレージ媒体の種類を選択し、前記ファイルの前記メタデータおよび前記データを前記ファイルの前記データを前記少なくとも１つの第１種のストレージ媒体または前記少なくとも１つの第２種のストレージ媒体の内の１つに書き込むことで、前記メタデータおよびデータが、前記少なくとも１つの第１種のストレージ媒体と前記少なくとも１つの第２種のストレージ媒体とに跨って格納されないように、前記論理装置に前記メタデータおよびデータを格納する工程と、
を備える、方法。
【請求項９】
請求項８に記載の方法であって、前記ファイルサーバが、ファイルの書き込み要求を前記クライアントコンピュータから受信した時に、前記ファイル管理部は、データ格納のためにストレージ媒体の種類を選択し、第１種が選択された場合、前記メタデータおよび前記データの両方が、前記少なくとも１つの第１種のストレージ媒体に格納される、方法。
【請求項１０】
請求項８に記載の方法であって、データ格納のために前記少なくとも１つの第２種のストレージ媒体を選択した場合、前記メタデータおよび前記データは、それぞれ、前記少なくとも１つの第１種のストレージ媒体および前記少なくとも１つの第２種のストレージ媒体に格納される、方法。
【請求項１１】
請求項８に記載の方法であって、前記少なくとも１つの第１種のストレージ媒体から前記少なくとも１つの第２種のストレージ媒体に前記データを移動する時に、前記少なくも１つの第１種のストレージ媒体にすでに格納されているメタデータを、前記少なくとも１つの第２種のストレージ媒体の実データの位置を示すように変更する工程を備える、方法。
【請求項１２】
少なくとも１つの第１種のストレージ媒体によって構成された第１の記憶領域と、少なくとも１つの第２種のストレージ媒体によって構成された第２の記憶領域とを備える記憶装置に接続されたファイルサーバにおける方法であって、
ネットワークインターフェースを介してクライアントコンピュータと通信する工程と、
前記記憶装置に格納されたファイルをファイル管理部によって管理する工程と、
前記第１の記憶領域と前記第２の記憶領域とによって構成された論理装置内にファイルシステムを構成する工程と、
前記ファイルシステムのファイルの書き込み要求を前記クライアントコンピュータから受信する工程であって、前記ファイルは、データとメタデータとを含む、工程と、
ストレージ媒体の種類に応じて、前記論理装置内で、前記第１の記憶領域によって占められた第１のアドレスレンジと、前記第２の記憶領域によって占められた第２のアドレスレンジとを管理するテーブルを保持する工程と、
ファイルの書き込み要求を前記クライアントコンピュータから受信した時に、前記テーブルによって管理されている前記アドレスレンジを考慮してデータ格納のためにストレージ媒体の種類を選択し、前記ファイルの前記データを格納するために、前記少なくとも１つの第１の記憶領域または前記第２の記憶領域の内の１つにおける格納位置を選択し、前記選択された格納位置に前記ファイルの前記データおよび前記メタデータを格納することで、前記メタデータおよびデータが、前記少なくとも１つの第１種のストレージ媒体と前記少なくとも１つの第２種のストレージ媒体とに跨って格納されないように、前記論理装置に前記メタデータおよびデータを格納する工程と、
を備える、方法。
【請求項１３】
請求項１２に記載の方法であって、ファイルの前記書き込み要求を前記クライアントコンピュータから受信した時に、データ格納のためにストレージ媒体の種類を選択する工程を備え、第１種が選択された場合、メタデータおよびデータの両方が、前記少なくとも１つの第１種のストレージ媒体に格納される、方法。
【請求項１４】
請求項１２に記載の方法であって、前記少なくとも１つの第１種のストレージ媒体から前記少なくとも１つの第２種のストレージ媒体に前記データを移動する時に、前記少なくとも１つの第２種の記憶領域にメタデータを作成する工程を備える、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステムの技術に関する。
【背景技術】
【０００２】
ＮＡＳ（Network Attached Storage）と呼ばれるネットワークに直接接続する形式のストレージシステムが多く利用されている。このストレージシステムを利用すれば、ネットワークを介して、複数のクライアント間でファイルシステムを共有可能であり、複数のクライアントは同じファイルにアクセス可能である。
【０００３】
近年、データを、重要度などに基づくデータの価値に応じて、最適なコストのストレージ媒体に格納することによって、効果的なデータの活用と、効率的なストレージの投資と、の実現を図ることが試みられている。このような考え方は、情報ライフサイクル管理（ＩＬＭ（information lifecycle management））と呼ばれている。例えば、価値の比較的高いデータは、高価なＦＣ（Fibre Channel）対応のハードディスクに格納され、価値の比較的低いデータは、安価なＡＴＡ対応のハードディスクに格納される。なお、ＦＣ対応のハードディスクは、ＡＴＡ対応のハードディスクよりも、信頼性が高いと共に、アクセスが速いという特徴を有している。
【０００４】
ＦＣ対応のハードディスクやＡＴＡ対応のハードディスクなどの複数種のストレージ媒体を用いてＩＬＭを実現する場合には、通常、ストレージ媒体の種類毎に論理ユニットが設定され、論理ユニット毎にファイルシステムが構築される。すなわち、従来では、ＩＬＭを実現する場合には、ストレージ媒体の種類毎に複数のファイルシステムが構築されていた。
【０００５】
【特許文献１】米国特許出願公開第２００４／０１３３５４０号公報
【特許文献２】特表２００５−５１２１７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
既存の技術を適用すれば、複数種のストレージ媒体に１つの論理ユニットを設定し、該論理ユニット上に１つのファイルシステムを構築することも可能である。しかしながら、この場合には、ＩＬＭの適切な運用を図ること、すなわち、複数種のストレージ媒体を効率よく利用することが困難となってしまう。
【０００７】
この発明は、従来技術における上述の課題を解決するためになされたものであり、複数種のストレージ媒体上に１つのファイルシステムを構築する場合にも、複数種のストレージ媒体を効率よく利用することのできる技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述の課題の少なくとも一部を解決するため、本発明の第１の装置は、第１種のストレージ媒体と第２種のストレージ媒体とを管理するための管理装置であって、
前記第１種のストレージ媒体の少なくとも一部で構成された第１の記憶領域と、前記第２種のストレージ媒体の少なくとも一部で構成された第２の記憶領域と、を含む統合記憶領域内のファイルを管理するためのファイル管理部を備え、
前記ファイル管理部は、
前記第１の記憶領域の範囲と前記第２の記憶領域の範囲とを考慮して、前記統合記憶領域上に１つのファイルシステムを構築することを特徴とする。
【０００９】
第１の記憶領域の範囲と第２の記憶領域の範囲とを考慮せずに、統合記憶領域上にファイルシステムが構築される場合には、ファイルが第１の記憶領域と第２の記憶領域とに跨って格納されてしまう恐れがある。しかしながら、この装置では、第１の記憶領域の範囲と第２の記憶領域の範囲とを考慮して、統合記憶領域上にファイルシステムが構築される。このため、ファイルが第１の記憶領域と第２の記憶領域とに跨って格納されずに済むと共に、１つのファイルシステム内で第１の記憶領域と第２の記憶領域とにファイル単位でファイルが格納されるため、第１種のストレージ媒体と第２種のストレージ媒体とを効率よく利用することが可能となる。
【００１０】
上記の装置において、
前記ファイル管理部は、
前記統合記憶領域内に、前記第１の記憶領域と前記第２の記憶領域とに跨らない複数のグループ領域を設定することが好ましい。
【００１１】
このように、第１の記憶領域と前記第２の記憶領域とに跨らないグループ領域を予め設定しておけば、ファイルが第１の記憶領域と第２の記憶領域とに跨って格納されずに済む。
【００１２】
上記の装置において、
前記ファイル管理部は、
前記統合記憶領域内の前記第１の記憶領域に、メタデータが格納される第１種のグループ領域を設定し、
前記統合記憶領域内の前記第２の記憶領域に、メタデータが格納されない第２種のグループ領域を設定するようにしてもよい。
【００１３】
ファイルにアクセスする際には、メタデータが検索される。上記のようにすれば、メタデータを検索する際に、第１の記憶領域のみを検索すれば済み、この結果、目的のファイルに迅速にアクセスすることが可能となる。
【００１４】
なお、この効果は、第１種のストレージ媒体が第２種のストレージ媒体よりも高速にアクセス可能な場合に顕著となる。
【００１５】
上記の装置において、
前記ファイル管理部は、
第１のファイルを前記統合記憶領域内の前記第１の記憶領域に格納する場合には、前記第１のファイルの実データを前記第１の記憶領域に書き込むと共に、前記第１のファイルに関するメタデータを前記第１の記憶領域に作成し、
第２のファイルを前記統合記憶領域内の前記第２の記憶領域に格納する場合には、前記第２のファイルの実データを前記第２の記憶領域に書き込むと共に、前記第２のファイルに関するメタデータを前記第１の記憶領域に作成するようにしてもよい。
【００１６】
上記の装置において、
前記ファイル管理部は、
第１のファイルを前記統合記憶領域内の前記第１の記憶領域から前記第２の記憶領域に移動させる場合には、前記第１のファイルの実データを前記第２の記憶領域に書き込むと共に、前記第１の記憶領域に既に格納されている前記第１のファイルに関するメタデータを、前記第２の記憶領域に書き込まれた前記第１のファイルの実データの位置を示すように、変更し、
第２のファイルを前記統合記憶領域内の前記第２の記憶領域から前記第１の記憶領域に移動させる場合には、前記第２のファイルの実データを前記第１の記憶領域に書き込むと共に、前記第１の記憶領域に既に格納されている前記第２のファイルに関するメタデータを、前記第１の記憶領域に書き込まれた前記第２のファイルの実データの位置を示すように、変更するようにしてもよい。
【００１７】
このように、第１の記憶領域のみにメタデータが格納される場合には、ファイルを移動させる際に、該ファイルに関するメタデータを新たに作成せずに変更するだけで済む。
【００１８】
上記の装置において、
前記ファイル管理部は、
前記統合記憶領域内の前記第１の記憶領域と前記第２の記憶領域とのそれぞれに、メタデータが格納されるグループ領域を設定するようにしてもよい。
【００１９】
こうすれば、第１種のストレージ媒体が第２種のストレージ媒体よりも高価であり、かつ、第１の記憶領域のみにメタデータが格納される場合と比較して、メタデータの格納に要するビット当たりのコストを低減させることができる。
【００２０】
上記の装置において、
前記ファイル管理部は、
第１のファイルを前記統合記憶領域内の前記第１の記憶領域に格納する場合には、前記第１のファイルの実データを前記第１の記憶領域に書き込むと共に、前記第１のファイルに関するメタデータを前記第１の記憶領域に作成し、
第２のファイルを前記統合記憶領域内の前記第２の記憶領域に格納する場合には、前記第２のファイルの実データを前記第２の記憶領域に書き込むと共に、前記第２のファイルに関するメタデータを前記第２の記憶領域に作成することが好ましい。
【００２１】
上記の装置において、
前記ファイル管理部は、
第１のファイルを前記統合記憶領域内の前記第１の記憶領域から前記第２の記憶領域に移動させる場合には、前記第１のファイルの実データを前記第２の記憶領域に書き込むと共に、前記第１のファイルに関するメタデータを前記第２の記憶領域に作成し、
第２のファイルを前記統合記憶領域内の前記第２の記憶領域から前記第１の記憶領域に移動させる場合には、前記第２のファイルの実データを前記第１の記憶領域に書き込むと共に、前記第２のファイルに関するメタデータを前記第１の記憶領域に作成するようにしてもよい。
【００２２】
上記の装置において、
前記ファイル管理部は、
前記統合記憶領域内に、前記第１の記憶領域と前記第２の記憶領域とに跨るグループ領域を設定し、
前記ファイル管理部は、
前記第１の記憶領域の範囲と前記第２の記憶領域の範囲とを示す領域情報に基づいて、前記第１の記憶領域または前記第２の記憶領域にファイルの実データが格納されるように、前記ファイルシステムを構築することが好ましい。
【００２３】
こうすれば、第１の記憶領域と前記第２の記憶領域とに跨るグループ領域が設定される場合にも、ファイルが第１の記憶領域と第２の記憶領域とに跨って格納されずに済む。
【００２４】
上記の装置において、
前記ファイル管理部は、さらに、
前記領域情報に基づいて、前記第１の記憶領域にメタデータが格納され、前記第２の記憶領域にメタデータが格納されないように、前記ファイルシステムを構築することが好ましい。
【００２５】
こうすれば、メタデータを検索する際に、第１の記憶領域のみを検索すれば済み、この結果、目的のファイルに迅速にアクセスすることが可能となる。
【００２６】
上記の装置において、
前記ファイル管理部は、
第１のファイルを前記統合記憶領域内の前記第１の記憶領域に格納する場合には、前記領域情報に基づいて、前記第１のファイルの実データを前記第１の記憶領域に書き込むと共に、前記第１のファイルに関するメタデータを前記第１の記憶領域に作成し、
第２のファイルを前記統合記憶領域内の前記第２の記憶領域に格納する場合には、前記領域情報に基づいて、前記第２のファイルの実データを前記第２の記憶領域に書き込むと共に、前記第２のファイルに関するメタデータを前記第１の記憶領域に作成することが好ましい。
【００２７】
上記の装置において、
前記ファイル管理部は、
第１のファイルを前記統合記憶領域内の前記第１の記憶領域から前記第２の記憶領域に移動させる場合には、前記領域情報に基づいて、前記第１のファイルの実データを前記第２の記憶領域に書き込むと共に、前記第１の記憶領域に既に格納されている前記第１のファイルに関するメタデータを、前記第２の記憶領域に書き込まれた前記第１のファイルの実データの位置を示すように、変更し、
第２のファイルを前記統合記憶領域内の前記第２の記憶領域から前記第１の記憶領域に移動させる場合には、前記領域情報に基づいて、前記第２のファイルの実データを前記第１の記憶領域に書き込むと共に、前記第１の記憶領域に既に格納されている前記第２のファイルに関するメタデータを、前記第１の記憶領域に書き込まれた前記第２のファイルの実データの位置を示すように、変更することが好ましい。
【００２８】
このように、第１の記憶領域のみにメタデータが格納される場合には、ファイルを移動させる際に、該ファイルに関するメタデータを新たに作成せずに変更するだけで済む。
【００２９】
本発明の第２の装置は、ストレージシステムであって、
前記第１種のストレージ媒体と、
前記第２種のストレージ媒体と、
上記のいずれかに記載の前記管理装置と、
を備えることを特徴とする。
【００３０】
この発明は、種々の形態で実現することが可能であり、例えば、異種ストレージ媒体を管理するための管理装置、該管理装置を備えるストレージシステム、該ストレージシステムを備えるネットワークシステム、これらの装置における異種ストレージ媒体の管理方法、これらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
【発明を実施するための最良の形態】
【００３１】
次に、本発明の実施の形態を実施例に基づき以下の順序で説明する。
Ａ．第１実施例：
Ａ−１．ネットワークシステムの構成：
Ａ−１−１．ストレージシステムの内部構成：
Ａ−１−２．管理サーバの内部構成：
Ａ−２．ファイルシステムの作成：
Ａ−３．統合記憶領域上のファイルシステムの構造：
Ａ−４．ファイルの新規作成：
Ａ−５．ファイルの移動：
Ｂ．第２実施例：
Ｃ．第３実施例：
【００３２】
Ａ．第１実施例：
Ａ−１．ネットワークシステムの構成：
図１は、ネットワークシステムの概略構成を示す説明図である。ネットワークシステムは、ストレージシステム（ＮＡＳ）１００と、管理サーバ２００と、管理端末３００と、複数のクライアント４００と、を備えている。各デバイスは、ＩＰベースのネットワークＮＷに接続されており、各デバイス間の通信は、ＴＣＰ／ＩＰに従って実行される。
【００３３】
ストレージシステム１００は、ファイルサーバ（ＮＡＳヘッドとも呼ばれる）１１０と、ストレージ装置１３０と、を備えている。本実施例では、ファイルサーバ１１０とストレージ装置１３０とは、異なる筐体に収納されているが、共通の筐体に収納されていてもよい。
【００３４】
Ａ−１−１．ストレージシステムの内部構成：
図２は、ストレージシステム１００の内部構成を示す説明図である。上記のように、ストレージシステム１００は、ファイルサーバ１１０とストレージ装置１３０とを備えている。そして、ストレージ装置１３０は、ディスクアレイコントローラ１４０と、ディスクアレイ装置１６０と、を備えている。なお、ファイルサーバ１１０とディスクアレイコントローラ１４０とが同一の装置（例えば同一のプロセッサ）でも良い。
【００３５】
ファイルサーバ１１０は、ＣＰＵ１１２と、ＲＯＭやＲＡＭなどのメモリ１１４と、ネットワークインタフェース（ＩＦ）部１１６と、ストレージインタフェース（ＩＦ）部１１８と、を備えている。なお、ネットワークＩＦ部１１６は、ネットワークＮＷを介して、外部のデバイスと通信を行うためのインタフェースであり、ストレージＩＦ部１１８は、ストレージ装置１３０と通信を行うためのインタフェースである。
【００３６】
メモリ１１４には、プロトコル制御部１２２として機能するコンピュータプログラムと、第１構成管理部１２４として機能するコンピュータプログラムと、ファイルシステム制御部１２６として機能するコンピュータプログラムと、が格納されている。また、メモリ１１４には、伝送されるデータを一時的に格納するためのキャッシュ領域１２８が設けられている。
【００３７】
プロトコル制御部１２２は、ネットワークＮＷを介して、外部のデバイスとの通信を実現するために、プロトコルに従った種々の処理を実行する際にＣＰＵ１１２で実行されるプログラムである。
【００３８】
第１構成管理部１２４は、ディスクアレイ装置１６０に設定された１以上の論理ユニット上にファイルシステムを作成し、論理ユニットとファイルシステムとの対応関係を管理する際にＣＰＵ１１２で実行されるプログラムである。
【００３９】
ファイルシステム制御部１２６は、ファイルの新規作成や移動などの種々の処理を制御する際にＣＰＵ１１２で実行されるプログラムである。例えば、ファイルシステム制御部１２６は、ファイルの新規作成や移動などに伴って、ファイルシステムの内容を変更する。
【００４０】
ディスクアレイコントローラ１４０は、ＣＰＵ１４２と、ＲＯＭやＲＡＭなどのメモリ１４４と、ホストインタフェース（ＩＦ）部１４６と、ドライブインタフェース（ＩＦ）部１４８と、を備えている。なお、ホストＩＦ部１４６は、ストレージ装置１３０のホストとして機能するファイルサーバ１１０と通信を行うためのインタフェースであり、ドライブＩＦ部１４８は、ディスクアレイ装置１６０を駆動してデータを入出力するためのインタフェースである。
【００４１】
メモリ１４４には、入出力処理部１５２として機能するコンピュータプログラムと、第２構成管理部１５４として機能するコンピュータプログラムと、が格納されている。また、メモリ１４４には、伝送されるデータを一時的に格納するためのキャッシュ領域１５６が設けられている。
【００４２】
入出力処理部１５２は、ホストＩＦ部１４６を介してファイルサーバ１１０から与えられるＩ／Ｏコマンドを処理する。例えば、入出力処理部１５２は、読み出しコマンドや書き込みコマンドなどに従って、ディスクアレイ装置１６０に対するデータの読み出しや書き込み処理を実行する。
【００４３】
第２構成管理部１５４は、ディスクアレイ装置１６０に対して論理ユニットを設定し、論理ユニットと実際のディスク（ストレージ媒体）との対応関係を管理する際にＣＰＵ１４２で実行されるプログラムである。なお、第２構成管理部１５４は、ディスクアレイ装置１６０内に上記の対応関係を示すボリューム管理テーブルＴＢ（後述する）を作成する。
【００４４】
ディスクアレイ装置１６０は、複数のストレージ媒体（例えば複数のハードディスクドライブ）で構成されたディスクアレイを備えている。なお、ディスクアレイは、ＲＡＩＤ構成であっても良い。本実施例では、高価なＦＣ対応のハードディスクと、廉価なＡＴＡ対応のハードティスクと、の２種類のハードディスクが利用されている。なお、以下では、ＦＣ対応のハードディスクを「第１種の媒体」とも呼び、ＡＴＡ対応のハードディスクを「第２種の媒体」とも呼ぶ。
【００４５】
ディスクアレイ装置１６０は、通常、論理ユニット（ＬＵ）に区分されて利用される。図２では、システム用のＬＵと、３つのデータ用のＬＵと、が準備されている。データ用の第１ＬＵは、第１種の媒体（ＦＣ）の一部で構成された記憶領域と、第２種の媒体（ＡＴＡ）の一部で構成された記憶領域と、を含む統合記憶領域（統合ＬＵ）であり、論理ユニット番号（ＬＵＮ）「０」が割り当てられている。第２ＬＵは、第１種の媒体（ＦＣ）の一部で構成された記憶領域（ＬＵ）であり、ＬＵＮ「１」が割り当てられている。第３ＬＵは、第２種の媒体（ＡＴＡ）の一部で構成された記憶領域（ＬＵ）であり、ＬＵＮ「２」が割り当てられている。システム用ＬＵは、本実施例では、第１種の媒体（ＦＣ）の一部で構成された記憶領域（ＬＵ）である。図示するように、システム用ＬＵには、ボリューム管理テーブルＴＢが格納される。なお、各記憶領域は、それぞれ、対応する種類の１つのディスクの一部または全部で構成されていてもよいし、対応する種類の複数のディスクで構成されていてもよい。
【００４６】
ボリューム管理テーブルＴＢは、ネットワークシステムの管理者が管理端末３００を操作することによって予め作成される。具体的には、管理者からの指示に従って、ストレージ装置１３０内の第２構成管理部１５４がボリューム管理テーブルＴＢを作成する。
【００４７】
図３は、予め準備されたボリューム管理テーブルＴＢの内容を示す説明図である。なお、このボリューム管理テーブルＴＢは、データ用の各ＬＵ上にファイルシステムが作成される前に、作成される。図示するように、ボリューム管理テーブルＴＢには、データ用の各ＬＵの情報が含まれている。具体的には、ボリューム管理テーブルＴＢには、記憶領域を構成する媒体の種類毎に、該記憶領域を構成する媒体の種類と、該記憶領域の開示番地および終了番地と、が設定されている。
【００４８】
例えば、第１ＬＵ（ＬＵＮ＝０）は、図２で説明したように、第１種の媒体（ＦＣ）で構成された記憶領域と、第２種の媒体（ＡＴＡ）で構成された記憶領域と、を含んでいる。このため、ボリューム管理テーブルＴＢでは、第１ＬＵに関して、第１の記憶領域の媒体の種類として「ＦＣ」が登録されていると共に、第１の記憶領域の開始番地「０」および終了番地「９９９」が登録されている。また、第２の記憶領域の媒体の種類として「ＡＴＡ」が登録されていると共に、第２の記憶領域の開始番地「１０００」および終了番地「１９９９」が登録されている。
【００４９】
同様に、第２ＬＵ（ＬＵＮ＝１）は、第１種の媒体（ＦＣ）で構成された記憶領域のみを含んでいる。このため、ボリューム管理テーブルＴＢでは、第２ＬＵに関して、第１の記憶領域の媒体の種類として「ＦＣ」が登録されていると共に、第１の記憶領域の開始番地「０」および終了番地「３０００」が登録されている。また、第３ＬＵ（ＬＵＮ＝２）は、第２種の媒体（ＡＴＡ）で構成された記憶領域のみを含んでいる。このため、ボリューム管理テーブルＴＢでは、第３ＬＵに関して、第１の記憶領域の媒体の種類として「ＡＴＡ」が登録されていると共に、第１の記憶領域の開始番地「０」および終了番地「５０００」が登録されている。
【００５０】
なお、本実施例におけるファイルサーバ１１０が本発明における管理装置に相当し、第１構成管理部１２４とファイルシステム制御部１２６とが本発明におけるファイル管理部に相当する。
【００５１】
Ａ−１−２．管理サーバの内部構成：
図４は、管理サーバ２００の内部構成を示す説明図である。管理サーバ２００は、ＣＰＵ２０２と、ＲＯＭやＲＡＭなどのメモリ２０４と、ネットワークインタフェース（ＩＦ）部２０６と、を備えている。なお、ネットワークＩＦ部２０６は、ネットワークＮＷを介して、外部のデバイスと通信を行うためのインタフェースである。
【００５２】
メモリ２０４には、プロトコル制御部２１２として機能するコンピュータプログラムと、ファイル分配制御部２１４として機能するコンピュータプログラムと、が格納されている。
【００５３】
プロトコル制御部２１２は、図２のプロトコル制御部１２２と同様に、ネットワークＮＷを介して、外部のデバイスとの通信を実現するために、プロトコルに従った種々の処理を実行する際にＣＰＵ２０２で実行されるプログラムである。
【００５４】
ファイル分配制御部２１４は、ストレージシステム１００内の統合記憶領域（統合ＬＵ）に格納されるファイルが、いずれの種類の媒体に格納されるべきかを決定する際にＣＰＵ２０２で実行されるプログラムである。具体的には、ファイル分配制御部２１４は、ファイルサーバ１１０から問い合わせがあった場合に、予め管理者によって設定された分配ルールに従って、統合ＬＵ内におけるファイルの格納先の媒体を決定する。分配ルールは、例えば、ファイル名や、ファイルの最終更新日時、ファイルのサイズ、ファイルの作成者名などのファイルに付属する種々の情報（属性）を利用して、設定される。分配ルールに従えば、ファイルの価値に応じて格納先の媒体の種類を決定することができる。なお、分配ルールの情報は、管理サーバ２００のメモリに格納される。
【００５５】
例えば、ファイル分配制御部２１４は、ファイル名に所定の文字列が含まれる場合や、ファイルの最終更新日時が所定の日時以降である場合、ファイルのサイズが所定のサイズ以上である場合、ファイルの作成者名がリストに登録された名前と一致する場合などに、ファイルの価値が高いとみなし、ファイルの格納先を第１種の媒体（ＦＣ）と決定する。
【００５６】
なお、分配ルールとしては、ファイルに付属する種々の情報（属性）だけでなく、ファイルに付属しない他の情報を利用することも可能である。例えば、ファイルがストレージシステム１００に格納される時間帯が利用されてもよい。この場合には、例えば、多数のファイルが格納される時間帯（平日の就業時間）には、ファイルの格納先は、書き込みに要する時間が比較的短い第１種の媒体（ＦＣ）と決定され、少数のファイルが格納される時間帯（平日の就業時間以外）には、ファイルの格納先は、書き込みに要する時間が比較的長い第２種の媒体（ＡＴＡ）と決定されればよい。
【００５７】
Ａ−２．ファイルシステムの作成：
図５は、ファイルシステムの作成手順を示すフローチャートである。ステップＳ１０２では、管理者は、管理端末３００を操作して、ファイルサーバ１１０に、対象ＬＵ上へのファイルシステムの作成を指示する。なお、この際、管理者は、管理端末３００を介して、ファイルサーバ１１０に、記憶領域へのメタデータの格納の可否を指定する情報を送信する。ここで、メタデータの格納の可否については、管理者は、例えば、高速・高コストなＦＣと低速・低コストなＡＴＡとを統合する場合、「高いコストを払っても、メタデータはＦＣだけに格納して高速にアクセスしたい」ときは、ＦＣのみにメタデータを格納し、「メタデータをＦＣとＡＴＡとの両方に格納し、性能は優れていなくても低コストにしたい」ときは、ＦＣとＡＴＡとにメタデータを格納するといった情報に基づいて、判断する。そして、管理者は、この判断に基づいて、上述のメタデータの格納の可否を指定する情報を作成する。
【００５８】
ステップＳ１０４では、指示を受けたファイルサーバ１１０内の第１構成管理部１２４は、ストレージ装置１３０内の第２構成管理部１５４に、対象ＬＵを構成する媒体の種類を問い合わせる。このとき、第２構成管理部１５４は、ボリューム管理テーブルＴＢを参照して、対象ＬＵを構成する媒体の種類を、第１構成管理部１２４に通知する。
【００５９】
ステップＳ１０６では、第１構成管理部１２４は、第２構成管理部１５４からの通知に基づいて、対象ＬＵが複数種の媒体で構成されるか否かを判断する。対象ＬＵが複数種の媒体で構成される場合（例えば対象ＬＵが第１ＬＵ（ＬＵＮ＝０）である場合）には、ステップＳ１０８に進む。一方、対象ＬＵが複数種の媒体で構成されず１種類の媒体で構成される場合（例えば対象ＬＵが第２ＬＵ（ＬＵＮ＝１）または第３ＬＵ（ＬＵＮ＝２）である場合）には、ステップＳ１１２に進む。
【００６０】
ステップＳ１０８では、第１構成管理部１２４は、管理端末３００から、媒体の種類毎の用法（設定）の指定が有るか否かを判断する。本実施例では、第１種の媒体にはメタデータを格納し、第２種の媒体にはメタデータを格納しない、という用法が指定されている。なお、メタデータは、ディレクトリ情報と、ファイルの実データの格納位置を示すデータポインタを含むｉｎｏｄｅと、を含んでいる。メタデータについては、さらに、後述する。
【００６１】
用法の指定が有る場合には、ステップＳ１１０に進む。一方、用法の指定が無い場合には、ステップＳ１１２に進む。
【００６２】
ステップＳ１１０では、第１構成管理部１２４は、対象ＬＵ（統合ＬＵ）内に、指定された用法に基づいて、ブロックグループを作成する。この際、第１構成管理部１２４は、ボリューム管理テーブルＴＢ（図３）を参照し、各記憶領域のアドレス範囲を考慮して、ブロックグループを作成する。これにより、対象ＬＵ内にファイルシステムが作成される。なお、ブロックグループが、本発明におけるグループ領域に相当する。
【００６３】
図６は、ステップＳ１１０（図５）で第１ＬＵ（ＬＵＮ＝０）上に作成されるファイルシステムの構造を示す説明図である。
【００６４】
ＬＵ上にファイルシステムが作成される場合には、通常、ＬＵが複数種の媒体で構成されているか否かに拘わらず、ＬＵに対して１以上のブロックグループが作成される。このため、ＬＵが複数種の媒体で構成されている場合には、ブロックグループが２種類以上の媒体に跨って作成される恐れがある。
【００６５】
しかしながら、本実施例では、各ブロックグループは、各記憶領域のアドレス範囲を考慮して、記憶領域毎に、換言すれば媒体の種類毎に、作成される。このため、各ブロックグループは、２種類以上の媒体を跨ることなく、１つの媒体内に作成される。
【００６６】
具体的には、本実施例では、図６に示すように、第１種の媒体（ＦＣ）で構成された第１の記憶領域には、３つのブロックグループが作成され、第２種の媒体（ＡＴＡ）で構成された第２の記憶領域にも、３つのブロックグループが作成される。そして、各ブロックグループは、第１種の媒体と第２種の媒体とを跨ることなく、換言すれば、第１の記憶領域と第２の記憶領域とを跨ることなく、作成される。なお、ブロックグループは、例えば、所定のサイズ（容量）毎に作成されてもよいし、所定の個数だけ作成されてもよい。
【００６７】
ところで、図６に示すように、第１の記憶領域に作成される各ブロックグループ（以下「第１種のブロックグループ」とも呼ぶ）の構成と、第２の記憶領域に作成される各ブロックグループ（以下「第２種のブロックグループ」とも呼ぶ）の構成とは、異なっている。
【００６８】
具体的には、第１種のブロックグループは、通常の構成を有しており、ブロックグループ配置情報と、ｉｎｏｄｅ（ｉノード）カウンタと、ｉｎｏｄｅリストと、フリーデータブロックカウンタと、フリーデータブロックリストと、データブロックと、を含んでいる。第２種のブロックグループは、第１種のブロックグループとほぼ同様の構成を有しているが、ｉｎｏｄｅカウンタと、ｉｎｏｄｅリストと、を含んでいない。また、第１種のブロックグループ内のデータブロックには、メタデータが格納されるが、第２種のブロックグループ内のデータブロックには、メタデータは格納されない。なお、ブロックグループに含まれる上記の各要素については、後述する。
【００６９】
このように、第１の記憶領域に作成されるブロックグループの構成と、第２の記憶領域に作成されるブロックグループの構成と、が異なるのは、用法の相違に起因している。すなわち、本実施例では、ステップＳ１０８において、第１種の媒体にはメタデータを格納し、第２種の媒体にはメタデータを格納しない、という用法が指定されている。このため、本実施例では、第１種の媒体で構成される第１の記憶領域には、ｉｎｏｄｅカウンタとｉｎｏｄｅリストとを含み、メタデータを格納可能な第１種のブロックグループが作成される。また、第２種の媒体で構成される第２の記憶領域には、ｉｎｏｄｅカウンタとｉｎｏｄｅリストとを含まず、メタデータの格納が考慮されない第２種のブロックグループが作成される。
【００７０】
図５の説明に戻る。ステップＳ１１２（図５）では、第１構成管理部１２４は、対象ＬＵ内に、通常の方法で、換言すれば、媒体の種類を意識せずに、ブロックグループを作成する。本実施例では、第２ＬＵ（ＬＵＮ＝１）と第３ＬＵ（ＬＵＮ＝２）とのそれぞれに、１以上のブロックグループが作成される。なお、各ブロックグループは、ｉｎｏｄｅカウンタとｉｎｏｄｅリストとを含み、メタデータを格納可能な第１種のブロックグループである。
【００７１】
ステップＳ１１４では、第１構成管理部１２４は、第２構成管理部１５４にボリューム管理テーブルＴＢを更新させる。
【００７２】
図７は、図５の処理が完了したときに得られるボリューム管理テーブルＴＢの内容を示す説明図である。図７は、図３とほぼ同じであるが、記憶領域を構成する媒体の種類毎に、メタデータの格納の可否が追加されている。
【００７３】
図７では、メタデータを格納可に設定された記憶領域には「○」印が付与されており、メタデータを格納不可に設定された記憶領域には「×」印が付与されている。
【００７４】
例えば、第１ＬＵ（ＬＵＮ＝０）は、第１種の媒体（ＦＣ）と第２種の媒体（ＡＴＡ）とで構成されている。このため、ステップＳ１０８の用法の指定に基づいて、第１ＬＵ内の第１種の媒体（ＦＣ）で構成された第１の記憶領域は、メタデータを格納可に設定されており、第２種の媒体（ＡＴＡ）で構成された第２の記憶領域は、メタデータを格納不可に設定されている。また、第２ＬＵ（ＬＵＮ＝１）と第３ＬＵ（ＬＵＮ＝２）とは、１種類の媒体で構成されている。このため、第２ＬＵ内の記憶領域と第３ＬＵ内の記憶領域とは、それぞれメタデータを格納可に設定されている。
【００７５】
Ａ−３．統合記憶領域上のファイルシステムの構造：
図８は、第１ＬＵ（ＬＵＮ＝０）上のファイルシステムの構造を示す説明図である。図８は、図６とほぼ同じであるが、図８では、データブロック内部のデータの図示が追加されている。なお、図８では、既にファイルが格納されている。
【００７６】
前述したように、第１種および第２種のブロックグループは、ブロックグループ配置情報と、フリーデータブロックカウンタと、フリーデータブロックリストと、データブロックと、を含んでいる。そして、第１種のブロックグループは、さらに、ｉｎｏｄｅカウンタと、ｉｎｏｄｅリストと、を含んでいる。
【００７７】
また、第１種および第２種のブロックグループは、共に、データブロックを含んでいるが、第１種のブロックグループ内のデータブロックと第２種のブロックグループ内のデータブロックとは、異なる情報を含んでいる。具体的には、第１種のブロックグループ内のデータブロックには、ディレクトリ情報およびｉｎｏｄｅで構成されるメタデータと、ファイルの実データが格納されるデータ領域と、が含まれているが、第２種のブロックグループ内のデータブロックには、データ領域のみが含まれている。
【００７８】
ディレクトリ情報は、ファイル名とｉｎｏｄｅ番号との対応関係が登録された情報である。なお、図８では、１つのディレクトリが作成されているが、複数のディレクトリが作成され得る。
【００７９】
各ｉｎｏｄｅは、ファイルのサイズや、最終更新日時、データポインタなどの種々の情報を含んでいる。データポインタは、ファイルの実データが格納されるデータ領域の位置（アドレス）を示す。
【００８０】
例えば、図８では、第１の記憶領域内の「ブロックグループ１」において、「ファイルＡ」には「ｉｎｏｄｅ１」が対応付けられており、「ｉｎｏｄｅ１」のデータポインタは、「ファイルＡ」を構成するデータブロック（以下、「実データ」と称する）が格納されたデータ領域の位置を特定する。同様に、「ブロックグループ１」において、「ファイルＢ」には「ｉｎｏｄｅ２」が対応付けられており、「ｉｎｏｄｅ２」のデータポインタは、「ファイルＢ」の実データが格納されたデータ領域の位置を示す。ただし、図８では、「ファイルＡ」の実データは、第１の記憶領域内の「ブロックグループ１」内に格納されており、「ファイルＢ」の実データは、第２の記憶領域内の「ブロックグループ４」内に格納されている。
【００８１】
このように、本実施例では、ディレクトリ情報とｉｎｏｄｅとで構成されるメタデータは、第１の記憶領域のみに格納され、ファイルの実データは、データの価値に応じて、２つの記憶領域のうちのいずれか一方に格納される。
【００８２】
ブロックグループ配置情報は、自己のブロックグループの範囲（アドレス）を示す情報である。
【００８３】
フリーデータブロックカウンタは、ｉｎｏｄｅやファイルの実データをデータブロック内の空き領域に格納する際に、各領域に番号を順次割り当てるためのカウンタである。フリーデータブロックリストは、データブロック内の空き領域の範囲（アドレス）を示す情報を含んでいる。
【００８４】
ｉｎｏｄｅカウンタは、各ｉｎｏｄｅに番号を順次割り当てるためのカウンタである。ｉｎｏｄｅリストは、データブロック内の各ｉｎｏｄｅの位置（アドレス）を示す情報を含んでいる。
【００８５】
なお、図８では、既にファイルが格納されているため、第１種のブロックグループ内のデータブロックには、メタデータが格納されているが、図５の処理の完了直後には、メタデータは格納されていない。図５の処理では、第１種のブロックグループ内のデータブロックには、ルートディレクトリのみが作成される。
【００８６】
また、図５でブロックグループが作成される際には、各ブロックグループの初期設定も同時に行われる。例えば、ブロックグループ配置情報に自己のブロックグループのアドレス範囲が登録され、ｉｎｏｄｅカウンタおよびフリーデータブロックカウンタの値が初期値に設定される。
【００８７】
Ａ−４．ファイルの新規作成：
図９は、ＬＵ内にファイルを新規に作成する際の手順を示すフローチャートである。
【００８８】
ステップＳ２０２では、ファイルサーバ１１０は、クライアント４００から格納対象ファイルを受信する。具体的には、クライアント４００のユーザは、コンピュータ（クライアント４００）の表示画面を確認しつつ、ネットワークに接続された対象ディスクへの対象ファイルの格納を指示する。このとき、クライアント４００は、該対象ディスクを示すディスク情報と、対象ファイルと、をファイルサーバ１１０に送信する。そして、ファイルサーバ１１０内のファイルシステム制御部１２６は、受信したディスク情報に基づいて、受信した対象ファイルを格納すべきＬＵ（格納先ＬＵ）を特定する。
【００８９】
ステップＳ２０３では、ファイルシステム制御部１２６は、ボリューム管理テーブルＴＢを参照して、格納先ＬＵが複数種の媒体で構成されているか否かを判断する。格納先ＬＵが複数種の媒体で構成されている場合（例えば格納先ＬＵが第１ＬＵ（ＬＵＮ＝０）である場合）には、ステップＳ２０４に進み、格納先ＬＵが複数種の媒体で構成されていない場合（例えば格納先ＬＵが第２ＬＵ（ＬＵＮ＝１）または第２ＬＵ（ＬＵＮ＝２）である場合）には、ステップＳ２０８に進む。
【００９０】
ステップＳ２０４では、ファイルシステム制御部１２６は、管理サーバ２００に対象ファイルを格納すべき媒体（格納先媒体）の種類を問い合わせる。この際、ファイルシステム制御部１２６は、対象ファイルについての情報も併せて管理サーバ２００に送信する。このとき、管理サーバ２００内のファイル分配制御部２１０は、受信した対象ファイルのファイル名や最終更新日時などの情報に基づいて、分配ルールに従って格納先媒体の種類を決定し、ファイルシステム制御部１２６に通知する。
【００９１】
ステップＳ２０６では、ファイルシステム制御部１２６は、ステップＳ２０４で指定された格納先媒体の種類に対応する格納先記憶領域にメタデータを格納可能か否かを判断する。この判断は、ボリューム管理テーブルＴＢ（図７）を参照することによって行われる。格納先記憶領域にメタデータを格納可である場合（例えば格納先記憶領域が第１種の媒体（ＦＣ）で構成された第１の記憶領域である場合）には、ステップＳ２０８に進む。一方、格納先記憶領域にメタデータを格納不可である場合（例えば格納先記憶領域が第２種の媒体（ＡＴＡ）で構成された第２の記憶領域である場合）には、ステップＳ２１０に進む。
【００９２】
ステップＳ２０８では、ファイルシステム制御部１２６は、格納先記憶領域（例えば図８の第１の記憶領域）に、ｉｎｏｄｅを作成すると共にファイルの実データを書き込む。なお、格納先記憶領域のアドレス範囲は、ボリューム管理テーブルＴＢを参照することによって特定される。
【００９３】
具体的には、まず、格納先記憶領域に作成された１以上のブロックグループのうちの１つのブロックグループ（例えば図８の「ブロックグループ１」）が対象ブロックグループとして選択される。なお、ブロックグループが２以上存在する場合には、対象ブロックグループは、例えば、ファイルシステム制御部１２６によって２以上のブロックグループの中から循環的に順次選択される。
【００９４】
そして、格納先記憶領域の対象ブロックグループにおいて、フリーデータブロックリストから新規ｉｎｏｄｅ領域が取得され、ｉｎｏｄｅリストに該新規ｉｎｏｄｅ領域のアドレスが登録される。なお、新規ｉｎｏｄｅ領域の取得の際には、ｉｎｏｄｅカウンタによって新規ｉｎｏｄｅ番号が決定され、ｉｎｏｄｅカウンタの値が１だけインクリメントされる。また、新規ｉｎｏｄｅ領域の取得の際には、フリーデータブロックカウンタの値が１だけインクリメントされる。
【００９５】
次に、格納先記憶領域の対象ブロックグループにおいて、フリーデータブロックリストから新規データ領域が取得され、ｉｎｏｄｅのデータポインタに該新規データ領域のアドレスが登録される。なお、新規データ領域の取得の際には、フリーデータブロックカウンタの値が１だけインクリメントされる。そして、新規データ領域にファイルの実データが書き込まれる。
【００９６】
例えば、ステップＳ２０８において、「ファイルＡ」が第１ＬＵ（ＬＵＮ＝０）の第１種の媒体（ＦＣ）で構成された第１の記憶領域に格納される場合には、図８に示すように、第１の記憶領域に「ｉｎｏｄｅ１」が作成されると共に「ファイルＡ」の実データが格納される。なお、図８では、「ファイルＡ」が格納される際に、「ブロックグループ１」が対象ブロックグループとして選択されている。
【００９７】
一方、ステップＳ２１０では、ファイルシステム制御部１２６は、格納先記憶領域（例えば図８の第２の記憶領域）と異なるメタデータを格納可能な他の記憶領域（例えば図８の第１の記憶領域）にｉｎｏｄｅを作成すると共に、格納先記憶領域にファイルの実データを書き込む。なお、格納先記憶領域のアドレス範囲と他の記憶領域のアドレス範囲は、ボリューム管理テーブルＴＢを参照することによって特定される。
【００９８】
具体的には、まず、他の記憶領域（例えば図８の第１の記憶領域）に作成された１以上のブロックグループのうちの１つのブロックグループ（例えば「ブロックグループ１」）が第１対象ブロックグループとして選択される。また、格納先記憶領域（例えば図８の第２の記憶領域）に作成された１つのブロックグループ（例えば「ブロックグループ４」）が第２対象ブロックグループとして選択される。
【００９９】
そして、他の記憶領域の第１対象ブロックグループにおいて、フリーデータブロックリストから新規ｉｎｏｄｅ領域が取得され、ｉｎｏｄｅリストに該新規ｉｎｏｄｅ領域のアドレスが登録される。
【０１００】
次に、格納先記憶領域の第２対象ブロックグループにおいて、フリーデータブロックリストから新規データ領域が取得され、ｉｎｏｄｅのデータポインタに該新規データ領域のアドレスが登録される。そして、新規データ領域にファイルの実データが書き込まれる。
【０１０１】
例えば、ステップＳ２１０において、「ファイルＢ」が第１ＬＵ（ＬＵＮ＝０）の第２種の媒体（ＡＴＡ）で構成された第２の記憶領域に格納される場合には、図８に示すように、第１の記憶領域に「ｉｎｏｄｅ２」が作成され、第２の記憶領域に「ファイルＢ」の実データが格納される。なお、図８では、「ファイルＢ」が格納される際に、「ブロックグループ１」が第１対象ブロックグループとして選択されており、「ブロックグループ４」が第２対象ブロックグループとして選択されている。
【０１０２】
ステップＳ２１２では、ファイルシステム制御部１２６は、対象ファイルが作成されたディレクトリのディレクトリ情報に、ファイル名とｉｎｏｄｅ番号との対応関係を登録する。
【０１０３】
例えば、ステップＳ２０８で「ファイルＡ」が第１ＬＵ（ＬＵＮ＝０）の第１種の媒体（ＦＣ）で構成された第１の記憶領域に格納される場合には、図８に示すように、第１の記憶領域内のディレクトリ情報に「ファイルＡ」と「ｉｎｏｄｅ１」との対応関係が登録される。また、ステップＳ２１０で「ファイルＢ」が第１ＬＵ（ＬＵＮ＝０）の第２種の媒体（ＡＴＡ）で構成された第２の記憶領域に格納される場合には、第１の記憶領域内のディレクトリ情報に「ファイルＢ」と「ｉｎｏｄｅ２」との対応関係が登録される。
【０１０４】
ステップＳ２１４では、ファイルシステム制御部１２６は、クライアント４００に対して、ファイルの新規作成が正常に終了したことを通知する。これにより、ファイルの新規作成処理が完了する。
【０１０５】
なお、格納先ＬＵが１種類の媒体で構成される場合（例えば格納先ＬＵが第２ＬＵ（ＬＵＮ＝１）または第３ＬＵ（ＬＵＮ＝２）である場合）には、ステップＳ２０８の処理が実行され、格納先記憶領域にｉｎｏｄｅが作成されると共にファイルの実データが書き込まれる。
【０１０６】
Ａ−５．ファイルの移動：
図１０は、統合ＬＵ内でファイルを移動させる際の手順を示すフローチャートである。統合ＬＵ内でファイルを移動させるのは、ファイルの価値は変化するためである。例えば、ファイルが格納された時にはファイルの価値が高くても、現在ではファイルの価値が低くなっている可能性がある。逆に、ファイルが格納された時にはファイルの価値が低くても、現在ではファイルの価値が高くなっている可能性がある。また、管理サーバ２００内のファイル分配制御部２１４が有する分配ルールが、ファイルが格納された時と現在とで、異なる場合もある。
【０１０７】
ステップＳ３０２では、ファイルサーバ１１０は、管理サーバ２００から、移動対象ファイルと、移動元媒体の種類と、移動先媒体の種類と、を受信する。なお、移動元媒体の種類は、移動対象ファイルが格納されていた媒体の種類であり、移動先媒体の種類は、移動対象ファイルが格納されるべき媒体の種類である。なお、管理サーバ２００が移動対象ファイル等の情報を送信する契機（管理サーバ２００がファイルシステムを調べる契機）は、例えば、負荷の低い夜間や休日等といった契機が考えられる。
【０１０８】
具体的には、管理サーバ２００内のファイル分配制御部２１０は、ボリューム管理テーブルＴＢを参照しつつ、ストレージシステム１００内のファイルシステムを調べ、複数種の媒体で構成される統合ＬＵ内の各ファイルが分配ルールに従って格納されているか否かを調査する。そして、ファイル分配制御部２１０は、分配ルールと整合しないファイルを移動対象ファイルとして決定すると共に、該ファイルの移動元媒体の種類を特定する。また、ファイル分配制御部２１０は、分配ルールに従って、移動先媒体の種類を決定する。
【０１０９】
例えば、図８の第１ＬＵ（ＬＵＮ＝０）内の第１種の媒体（ＦＣ）で構成される第１の記憶領域に格納されている価値の低くなったファイルは、分配ルールと整合せず、移動対象ファイルとして決定され、第１種の媒体（ＦＣ）が移動元媒体であると特定される。そして、分配ルールに従って、第２種の媒体（ＡＴＡ）が移動先媒体に決定される。
【０１１０】
ステップＳ３０４では、ファイルシステム制御部１２６は、移動先記憶領域に移動対象ファイルの実データを書き込むと共に、移動対象ファイルに対応するｉｎｏｄｅの内容を変更する。なお、移動先記憶領域のアドレス範囲は、ボリューム管理テーブルＴＢを参照することによって特定される。
【０１１１】
具体的には、まず、移動先記憶領域に作成された１以上のブロックグループのうちの１つのブロックグループが対象ブロックグループとして選択される。
【０１１２】
次に、移動先記憶領域の対象ブロックグループにおいて、フリーデータブロックリストから新規データ領域が取得される。また、対象ファイルに対応するｉｎｏｄｅのデータポインタが示すアドレスが、旧データ領域のアドレスから該新規データ領域のアドレスに変更される。なお、対象ファイルに対応するｉｎｏｄｅは、移動先記憶領域が図８の第１の記憶領域である場合には移動先記憶領域に含まれているが、移動先記憶領域が図８の第２の記憶領域である場合には移動元記憶領域（すなわち図８の第１の記憶領域）に含まれている。
【０１１３】
そして、移動対象ファイルの実データが移動元記憶領域内の旧データ領域から読み出され、移動先記憶領域の新規データ領域に書き込まれる。なお、移動対象ファイルの実データが格納された旧データ領域のアドレスは、移動処理前のファイル名に対応するｉｎｏｄｅのデータポインタを参照することによって特定される。
【０１１４】
ステップＳ３１０では、ファイルシステム制御部１２６は、移動元記憶領域内の移動対象ファイルの実データが依然として格納されている旧データ領域を開放する。具体的には、旧データ領域が含まれるブロックグループにおいて、フリーデータブロックリストに旧データ領域を空き領域として追加する。これにより、旧データ領域に他のデータを書き込むことが可能となる。
【０１１５】
ステップＳ３１２では、ファイルシステム制御部１２６は、ファイルの移動が正常に終了したことを管理サーバ２００内のファイル分配制御部２１０に通知する。これにより、ファイルの移動処理が完了する。
【０１１６】
なお、ステップＳ３０２における移動元媒体の種類の受信は、省略可能である。また、統合ＬＵ内が２種類の媒体で構成される場合には、さらに移動先媒体の種類の受信も、省略可能である。この場合には、ファイルシステム制御部１２６は、管理サーバ２００内のファイル分配制御部２１０から移動対象ファイルの情報のみを受け取って、移動対象ファイルを異なる種類の媒体に移動させればよい。
【０１１７】
図１１は、ファイルの移動処理の前後のファイルシステムの構造を示す説明図である。図１１は、図８とほぼ同じであるが、移動処理後のデータブロック内部の図示が追加されている。
【０１１８】
図１１では、「ファイルＡ」が第１種の媒体（ＦＣ）で構成された第１の記憶領域から第２種の媒体（ＡＴＡ）で構成された第２の記憶領域に移動している。移動処理後には、第２の記憶領域内に「ファイルＡ」の実データを格納する新規データ領域が設けられていると共に、第１の記憶領域から「ファイルＡ」の実データが格納されていた旧データ領域が開放されている。また、「ｉｎｏｄｅ１」のデータポインタが示すアドレスが、旧データ領域のアドレスから新規データ領域のアドレスに変更されている。なお、ディレクトリ情報は、変更されていない。
【０１１９】
同様に、「ファイルＢ」を第２種の媒体（ＡＴＡ）で構成された第２の記憶領域から第１種の媒体（ＦＣ）で構成された第１の記憶領域に移動させる場合には、移動処理後には、第１の記憶領域内に「ファイルＢ」の実データを格納する新規データ領域が設けられると共に、第２の記憶領域から「ファイルＢ」の実データが格納されていた旧データ領域が開放される。また、「ｉｎｏｄｅ２」のデータポインタが示すアドレスが、旧データ領域のアドレスから新規データ領域のアドレスに変更される。なお、ディレクトリ情報は、変更されない。
【０１２０】
「ファイルＢ」の実データを格納する新規データ領域は、「ｉｎｏｄｅ２」が格納された「ブロックグループ１」に設けられることが好ましい。こうすれば、「ファイルＢ」に対応する「ｉｎｏｄｅ２」と「ファイルＢ」の実データを格納する新規データ領域とが、物理的に比較的近い位置に配置される可能性が高いため、「ファイルＢ」を比較的迅速に読み出すことができる。ただし、「ファイルＢ」の実データを格納する新規データ領域は、「ｉｎｏｄｅ２」が格納されていない他のブロックグループ（例えば「ブロックグループ２」または「ブロックグループ３」）に設けられていてもよい。この場合には、「ｉｎｏｄｅ２」のデータポインタが示すアドレスが、他のブロックグループ内に設けられた新規データ領域のアドレスに変更されればよい。
【０１２１】
上記のように、本実施例では、第１種の媒体（ＦＣ）で構成された第１の記憶領域のみにメタデータが格納されるため、ファイルを移動させる際に、該ファイルに関するメタデータを新たに作成せずに変更するだけで済む。
【０１２２】
以上説明したように、本実施例では、第１種の媒体（ＦＣ）の一部で構成された第１の記憶領域と、第２種の媒体（ＦＣ）の一部で構成された第２の記憶領域と、を含む統合ＬＵ上に、１つのファイルシステムが構築される。具体的には、統合ＬＵ内には、複数のブロックグループが設定されるが、各ブロックグループは、第１の記憶領域と第２の記憶領域とに跨らないように設定される。すなわち、本実施例では、第１の記憶領域の範囲と第２の記憶領域の範囲とを考慮して、ブロックグループが設定される。このため、ファイルの新規作成や移動（マイグレーション）の際に、ファイルの実データが、第１の記憶領域と第２の記憶領域とに跨って（換言すれば第１種の媒体と第２種の媒体とに跨って）格納されずに済むと共に、１つのファイルシステム内で第１の記憶領域と第２の記憶領域とにファイル単位でファイルが分配される。したがって、ファイルを価値に応じた適切な種類の媒体に確実に格納することができ、この結果、複数種の媒体を効率よく利用することが可能となる。
【０１２３】
また、本実施例では、２つの記憶領域に統合ＬＵが設定されて該統合ＬＵ上に１つのファイルシステムが構築されるため、２つの記憶領域に２つのＬＵが設定されて該２つのＬＵ上に２つのファイルシステムが構築される場合と比較して、容量管理を容易に行うことができる。これは、１つのファイルシステムが構築される場合には、該１つのファイルシステムのみを対象として容量を調べれば済むが、２つのファイルシステムが構築される場合には、該２つのファイルシステムの双方を対象として容量を調べる必要があるためである。
【０１２４】
任意のファイルにアクセスする際には、メタデータが検索される。本実施例では、メタデータは、第１の記憶領域のみに格納されている。このため、本実施例では、メタデータを検索する際に、第１の記憶領域のみを検索すれば済み、この結果、目的のファイルに迅速にアクセスすることが可能となる。
【０１２５】
特に、本実施例では、メタデータは、第２種の媒体（ＡＴＡ）よりも高速にアクセスが可能な第１種の媒体（ＦＣ）で構成される第１の記憶領域のみに格納されている。このため、本実施例では、メタデータが第１種の媒体で構成される第１の記憶領域と第２種の媒体で構成される第２の記憶領域との双方に格納される場合と比較して、ファイルの実データの位置を迅速に特定することができるという利点がある。
【０１２６】
ところで、一方の記憶領域のみにメタデータが格納され、かつ、双方の記憶領域に個別にファイルシステムが構築される場合には、ファイルシステム単位でデータを他のＬＵへ複製（リモートコピー）することが困難となる。しかしながら、本実施例では、統合ＬＵ上に１つのファイルシステムが構築されるため、以下に説明するように、ファイルシステム単位のデータの複製を容易に行うことができる。
【０１２７】
図１２は、第１実施例におけるファイルシステムと比較例におけるファイルシステムとを模式的に示す説明図である。
【０１２８】
本実施例では、図１２（Ａ）に示すように、第１種の媒体（ＦＣ）で構成された第１の記憶領域と第２種の媒体（ＡＴＡ）で構成された第２の記憶領域とに統合ＬＵが設定されており、該統合ＬＵ上に１つのファイルシステムが構築されている。そして、メタデータは、第１の記憶領域のみに格納されている。
【０１２９】
一方、比較例では、図１２（Ｂ）に示すように、第１種の媒体（ＦＣ）で構成された第１の記憶領域に第１ＬＵが設定されており、第２種の媒体（ＡＴＡ）で構成された第２の記憶領域に第２ＬＵが設定されている。また、２つのＬＵ上に２つのファイルシステムが構築されている。そして、メタデータは、第１の記憶領域（第１ＬＵ）のみに格納されている。したがって、比較例では、ファイルの実データが第２の記憶領域（第２ＬＵ）内に格納される場合には、メタデータ内のｉｎｏｄｅのデータポインタは、第２ＬＵのＬＵＮを含む必要がある。
【０１３０】
このため、仮に、ファイルシステム単位でデータの複製を行う場合には、例えば第２ＬＵ内のデータのみを他のＬＵにコピーする場合には、ｉｎｏｄｅのデータポインタに含まれるＬＵＮを変更する必要がある。このため、データの複製が困難となる。この問題は、第１ＬＵ内のデータのみを他のＬＵに複製する場合、第１および第２ＬＵ内のデータを他の２つのＬＵに複製する場合にも同様に生じる。
【０１３１】
一方、本実施例では、２つの記憶領域に統合ＬＵが設定されているため、ファイルの実データが第２の記憶領域内に格納される場合にも、メタデータ内のｉｎｏｄｅのデータポインタにはＬＵＮが含まれていない。このため、本実施例では、統合ＬＵ内のデータを他のＬＵに容易に複製することができる。すなわち、本実施例では、比較例と比べ、ファイルシステム単位のデータの複製を容易に行うことができる。
【０１３２】
また、本実施例では、２つの記憶領域に統合ＬＵが設定されて該統合ＬＵ上に１つのファイルシステムが構築されるため、２つの記憶領域に２つのＬＵが設定されて該２つのＬＵ上に２つのファイルシステムが構築される場合と比較して、ファイルシステムのイメージを作成するスナップショット機能を容易に適用することができる。
【０１３３】
Ｂ．第２実施例：
図１３は、第２実施例における第１ＬＵ（ＬＵＮ＝０）上のファイルシステムの構造を示す説明図であり、図８に対応する。図１３では、図８と比較して、第２の記憶領域に作成されるブロックグループが変更されている。具体的には、第２の記憶領域には、第１の記憶領域に設定されるブロックグループと同様に、ｉｎｏｄｅカウンタとｉｎｏｄｅリストとを含み、メタデータを格納可能な第１種のブロックグループが作成されている。
【０１３４】
本実施例では、ファイルシステムの作成は、第１実施例と同様に、図５に示す手順に従って実行可能である。ただし、本実施例では、第１種の媒体（ＦＣ）および第２種の媒体（ＡＴＡ）の双方にメタデータを格納する、という用法が指定されている。この結果、本実施例では、第１ＬＵ（ＬＵＮ＝０）内に図１３に示すファイルシステムが作成される。また、本実施例では、ステップＳ１１４で得られるボリューム管理テーブルの内容が、第１実施例（図７）と異なっている。具体的には、第１ＬＵ（ＬＵＮ＝０）に関し、第１種の媒体（ＦＣ）で構成される第１の記憶領域と第２種の媒体（ＡＴＡ）で構成される第２の記憶領域との双方が、メタデータを格納可に設定される。
【０１３５】
また、本実施例では、ファイルの新規作成は、第１実施例と同様に、図９に示す手順に従って実行可能である。ただし、本実施例では、統合ＬＵ内に作成されるブロックグループは、すべてメタデータを格納可能な第１種のブロックグループであるため、ステップＳ２０３，Ｓ２０４，Ｓ２０６，Ｓ２１０の処理は省略可能である。
【０１３６】
図１３では、「ファイルＡ」は、図８と同様に格納されている。一方、「ファイルＢ」の実データは、図８と同様に、第２の記憶領域内の「ブロックグループ４」内に格納されているが、「ファイルＢ」に関するメタデータ（ディレクトリ情報とｉｎｏｄｅ）は、図８と異なり、第２の記憶領域内の「ブロックグループ４」内に格納されている。
【０１３７】
図１４は、第２実施例における統合ＬＵ内でファイルを移動させる際の手順を示すフローチャートであり、図１０に対応する。なお、図１４のステップＳ３０２，Ｓ３１０，Ｓ３１２は、図１０と同じである。
【０１３８】
ステップＳ３０６では、ファイルシステム制御部１２６は、移動先記憶領域に、ｉｎｏｄｅを作成すると共に移動対象ファイルの実データを書き込む。なお、ステップＳ３０６の処理は、図９のステップＳ２０８の処理とほぼ同様である。
【０１３９】
具体的には、まず、移動先記憶領域に作成された１以上のブロックグループのうちの１つのブロックグループが対象ブロックグループとして選択される。
【０１４０】
そして、移動先記憶領域の対象ブロックグループにおいて、フリーデータブロックリストから新規ｉｎｏｄｅ領域が取得され、ｉｎｏｄｅリストに該新規ｉｎｏｄｅ領域のアドレスが登録される。
【０１４１】
次に、移動先記憶領域の対象ブロックグループにおいて、フリーデータブロックリストから新規データ領域が取得され、ｉｎｏｄｅのデータポインタに該新規データ領域のアドレスが登録される。そして、移動対象ファイルの実データが移動元記憶領域内の旧データ領域から読み出され、移動先記憶領域の新規データ領域に書き込まれる。
【０１４２】
ステップＳ３０８では、ファイルシステム制御部１２６は、移動元記憶領域内のディレクトリ情報からファイル名と旧ｉｎｏｄｅとの対応関係を削除する。具体的には、移動元記憶領域内の移動対象ファイルが依然として格納されているブロックグループにおいて、ディレクトリ情報から上記の対応関係を削除する。
【０１４３】
また、ステップＳ３０８では、ファイルシステム制御部１２６は、移動元記憶領域内の移動対象ファイルのｉｎｏｄｅが依然として格納されている旧ｉｎｏｄｅ領域を開放する。具体的には、旧ｉｎｏｄｅ領域が含まれるブロックグループにおいて、フリーデータブロックリストに旧ｉｎｏｄｅ領域を空き領域として追加する。これにより、旧ｉｎｏｄｅ領域に他のデータを書き込むことが可能となる。
【０１４４】
なお、ステップＳ３１０では、図１０で説明したように、移動元記憶領域内の移動対象ファイルの実データが依然として格納されている旧データ領域が開放される。
【０１４５】
図１５は、第２実施例におけるファイルの移動処理の前後のファイルシステムの構造を示す説明図である。図１５は、図１３とほぼ同じであるが、移動処理後のデータブロック内部の図示が追加されている。
【０１４６】
図１５では、「ファイルＡ」が第１種の媒体（ＦＣ）で構成された第１の記憶領域から第２種の媒体（ＡＴＡ）で構成された第２の記憶領域に移動している。移動処理後には、第２の記憶領域内のディレクトリ情報に「ファイルＡ」と「ｉｎｏｄｅ２」との対応関係が追加されていると共に、第１の記憶領域内のディレクトリ情報から「ファイルＡ」と「ｉｎｏｄｅ１」との対応関係が削除されている。また、第２の記憶領域内に「ファイルＡ」の新規ｉｎｏｄｅ領域が設けられていると共に、第１の記憶領域から「ファイルＡ」の旧ｉｎｏｄｅ領域が開放されている。さらに、第２の記憶領域内に「ファイルＡ」の新規データ領域が設けられていると共に、第１の記憶領域から「ファイルＡ」の旧データ領域が開放されている。
【０１４７】
同様に、「ファイルＢ」を第２種の媒体（ＡＴＡ）で構成された第２の記憶領域から第１種の媒体（ＦＣ）で構成された第１の記憶領域に移動させる場合には、移動処理後には、第１の記憶領域内のディレクトリ情報に「ファイルＢ」と新規ｉｎｏｄｅとの対応関係が追加されると共に、第２の記憶領域内のディレクトリ情報から「ファイルＢ」と旧ｉｎｏｄｅとの対応関係が削除される。また、第１の記憶領域内に「ファイルＢ」の新規ｉｎｏｄｅ領域が設けられると共に、第２の記憶領域から「ファイルＢ」の旧ｉｎｏｄｅ領域が開放される。さらに、第１の記憶領域内に「ファイルＢ」の新規データ領域が設けられると共に、第２の記憶領域から「ファイルＢ」の旧データ領域が開放される。
【０１４８】
以上説明したように、本実施例でも、第１実施例と同様に、統合ＬＵ上に１つのファイルシステムが構築される。そして、統合ＬＵ内には、複数のブロックグループが設定されるが、各ブロックグループは、第１の記憶領域と第２の記憶領域とに跨らないように設定される。このため、ファイルの新規作成や移動の際に、ファイルの実データが、第１の記憶領域と第２の記憶領域とに跨って（換言すれば第１種の媒体と第２種の媒体とに跨って）格納されずに済むと共に、１つのファイルシステム内で第１の記憶領域と第２の記憶領域とにファイル単位でファイルが分配される。したがって、ファイルを価値に応じた適切な種類の媒体に確実に格納することができ、この結果、複数種の媒体を効率よく利用することが可能となる。
【０１４９】
また、本実施例では、第１実施例と同様に、容量管理や、ファイルシステム単位でのデータの複製、スナップショット機能の適用を容易に行うことができる。
【０１５０】
特に、本実施例では、比較的高価な第１の媒体（ＦＣ）で構成された第１の記憶領域と比較的安価な第２種の媒体（ＡＴＡ）で構成された第２の記憶領域との双方に、メタデータを格納可能な第１種のブロックグループが設定される。一方、第１実施例では、比較的高価な第１種の媒体（ＦＣ）で構成された第１の記憶領域のみにメタデータを格納可能な第１種のブロックグループが設定される。このため、本実施例では、第１実施例と比較して、メタデータの格納に要するビット当たりのコストを低減させることができる。
【０１５１】
Ｃ．第３実施例：
図１６は、第３実施例における第１ＬＵ（ＬＵＮ＝０）上のファイルシステムの構造を示す説明図であり、図８に対応する。図１６は、図８と比較して、第１ＬＵ内に作成されるブロックグループが変更されている。具体的には、第１ＬＵには、１つのブロックグループ（第１種のブロックグループ）のみが作成される。すなわち、本実施例では、ブロックグループは、２つの記憶領域に跨って設定されている。
【０１５２】
ただし、本実施例では、後述するように、ブロックグループ配置情報等のデータブロック以外の情報（以下「非データブロック情報」）は、第１の記憶領域のみに格納される。また、データブロックは、２つの記憶領域に跨っているが、メタデータは、第１の記憶領域のみに格納される。
【０１５３】
本実施例では、ファイルシステムの作成は、第１実施例と同様に、図５に示す手順に従って実行可能である。本実施例では、第１実施例と同様に、第１種の媒体（ＦＣ）にはメタデータを格納し、第２種の媒体（ＡＴＡ）にはメタデータを格納しない、という用法が指定されている。さらに、本実施例では、１つのブロックグループのみが作成され、第１種の媒体（ＦＣ）には非データブロック情報を格納し、第２の媒体（ＡＴＡ）には非データブロック情報を格納しない、という用法が指定されている。この結果、本実施例では、第１ＬＵ（ＬＵＮ＝０）内に図１６に示すファイルシステムが作成される。なお、本実施例では、ステップＳ１１４で得られるボリューム管理テーブルの内容は、第１実施例（図７）と同じである。
【０１５４】
ところで、第１および第２実施例では、各ブロックグループは、２種類の媒体に跨らないように設けられている。そして、各ブロックグループのフリーデータブロックリストは、自己のブロックグループのアドレス範囲内の空き領域のみをｉｎｏｄｅ領域やデータ領域として割り当て可能である。すなわち、第１および第２実施例では、格納すべき媒体の種類に応じてブロックグループが選択され、対応するフリーデータブロックリストからｉｎｏｄｅ領域やデータ領域が取得されれば、該領域は、目的の種類の媒体で構成される領域である。しかしながら、本実施例では、唯一のブロックグループは、２種類の媒体に跨るように設けられている。このため、本実施例では、唯一のブロックグループのフリーデータブロックリストからｉｎｏｄｅ領域やデータ領域が取得されても、該領域は、いずれの種類の媒体で構成される領域であるか不明である。そこで、本実施例では、以下に説明するように、ファイルの新規作成処理やファイルの移動処理が変更されている。具体的には、本実施例では、ボリューム管理テーブルの「第１の記憶領域の媒体の種類」（メタデータ格納可能な記憶領域）の開始番地と終了番地と、「第２の記憶領域の媒体の種類」（メタデータが格納されない記憶領域）の開始番地と終了番地をファイルサーバが意識して見分ける。これにより、２種類の媒体に跨ってブロックグループが設定されても、ファイルサーバはファイルを特定の領域に格納することができる。
【０１５５】
図１７は、第３実施例におけるＬＵ内にファイルを新規に作成する際の手順を示すフローチャートである。図１７は、図９とほぼ同じであるが、ステップＳ２０８Ｃ，Ｓ２１０Ｃが変更されている。また、ステップＳ２０３で否定判断がなされた場合には、図９と同じステップＳ２０８に進む。
【０１５６】
ステップＳ２０８Ｃは、格納先ＬＵが複数種の媒体で構成された統合ＬＵであり、かつ、格納先記憶領域がメタデータを格納可である場合（例えば格納先ＬＵが図１６の第１ＬＵ（ＬＵＮ＝０）であり、格納先記憶領域が第１種の媒体（ＦＣ）で構成された第１の記憶領域である場合）に実行される。
【０１５７】
ステップＳ２０８Ｃでは、ファイルシステム制御部１２６は、格納先記憶領域（例えば図１６の第１の記憶領域）に、ｉｎｏｄｅを作成すると共にファイルの実データを書き込む。
【０１５８】
具体的には、まず、統合ＬＵの唯一のブロックグループにおいて、フリーデータブロックリストから新規ｉｎｏｄｅ領域が取得され、ｉｎｏｄｅリストに該新規ｉｎｏｄｅ領域のアドレスが登録される。ただし、新規ｉｎｏｄｅ領域は、メタデータを格納可能な記憶領域内に確保される必要がある。このため、ファイルシステム制御部１２６は、ボリューム管理テーブルＴＢを参照し、メタデータを格納可能な格納先記憶領域のアドレス範囲内に含まれる領域を新規ｉｎｏｄｅ領域として取得する。
【０１５９】
次に、統合ＬＵ内の唯一のブロックグループにおいて、フリーデータブロックリストから新規データ領域が取得され、ｉｎｏｄｅのデータポインタに該新規データ領域のアドレスが登録される。この際、ファイルシステム制御部１２６は、ボリューム管理テーブルＴＢを参照し、格納先記憶領域のアドレス範囲内に含まれる領域を新規データ領域として取得する。そして、該新規データ領域にファイルの実データが書き込まれる。
【０１６０】
一方、ステップＳ２１０Ｃは、格納先ＬＵが複数種の媒体で構成された統合ＬＵであり、かつ、格納先記憶領域がメタデータを格納不可である場合（例えば格納先ＬＵが図１６の第１ＬＵ（ＬＵＮ＝０）であり、格納先記憶領域が第２種の媒体（ＡＴＡ）で構成された第１の記憶領域である場合）に実行される。
【０１６１】
ステップＳ２１０Ｃでは、ファイルシステム制御部１２６は、格納先記憶領域（例えば図１６の第２の記憶領域）と異なるメタデータを格納可能な他の記憶領域（例えば図１６の第１の記憶領域）にｉｎｏｄｅを作成すると共に、格納先記憶領域にファイルの実データを書き込む。
【０１６２】
具体的には、まず、統合ＬＵ内の唯一のブロックグループにおいて、フリーデータブロックリストから新規ｉｎｏｄｅ領域が取得され、ｉｎｏｄｅリストに該新規ｉｎｏｄｅ領域のアドレスが登録される。この際、ファイルシステム制御部１２６は、ボリューム管理テーブルＴＢを参照し、メタデータを格納可能な他の記憶領域のアドレス範囲内に含まれる領域を新規ｉｎｏｄｅ領域として取得する。
【０１６３】
次に、統合ＬＵ内の唯一のブロックグループにおいて、フリーデータブロックリストから新規データ領域が取得され、ｉｎｏｄｅのデータポインタに該新規データ領域のアドレスが登録される。この際、ファイルシステム制御部１２６は、ボリューム管理テーブルＴＢを参照し、格納先記憶領域のアドレス範囲内に含まれる領域を新規データ領域として取得する。そして、該新規データ領域にファイルの実データが書き込まれる。
【０１６４】
図１６では、「ファイルＡ」の実データとメタデータとは、図８と同様に、第１の記憶領域に格納されている。また、「ファイルＢ」の実データとメタデータとは、図８と同様に、第２の記憶領域に格納されている。しかしながら、「ファイルＢ」の実データとメタデータとは、図８では異なるブロックグループ内に格納されているが、図１６では唯一のブロックグループ内に格納されている。
【０１６５】
図１８は、第３実施例における統合ＬＵ内でファイルを移動させる際の手順を示すフローチャートであり、図１０に対応する。図１８は、図１０とほぼ同じであるが、ステップＳ３０４Ｃが変更されている。
【０１６６】
ステップＳ３０４Ｃでは、ファイルシステム制御部１２６は、移動先記憶領域に移動対象ファイルの実データを書き込むと共に、移動対象ファイルに対応するｉｎｏｄｅの内容を変更する。
【０１６７】
具体的には、統合ＬＵ内の唯一のブロックグループにおいて、フリーデータブロックリストから新規データ領域が取得される。この際、ファイルシステム制御部１２６は、ボリューム管理テーブルＴＢを参照し、移動先記憶領域のアドレス範囲内に含まれる領域を新規データ領域として取得する。また、対象ファイルに対応するｉｎｏｄｅのデータポインタが示すアドレスが、旧データ領域のアドレスから新規データ領域のアドレスに変更される。
【０１６８】
そして、移動対象ファイルの実データが移動元記憶領域内の旧データ領域から読み出され、移動先記憶領域の新規データ領域に書き込まれる。
【０１６９】
なお、ステップＳ３１０では、図１０で説明したように、移動元記憶領域内の移動対象ファイルの実データが依然として格納されている旧データ領域が開放される。
【０１７０】
図１９は、第３実施例におけるファイルの移動処理の前後のファイルシステムの構造を示す説明図である。図１９は、図１６とほぼ同じであるが、移動処理後のデータブロック内部の図示が追加されている。
【０１７１】
図１９では、「ファイルＡ」が第１種の媒体（ＦＣ）で構成された第１の記憶領域から第２種の媒体（ＡＴＡ）で構成された第２の記憶領域に移動している。移動処理後には、第２の記憶領域内に「ファイルＡ」の実データを格納する新規データ領域が設けられていると共に、第１の記憶領域から「ファイルＡ」の実データが格納されていた旧データ領域が開放されている。また、「ｉｎｏｄｅ１」のデータポインタが示すアドレスが、旧データ領域のアドレスから新規データ領域のアドレスに変更されている。なお、ディレクトリ情報は、変更されていない。
【０１７２】
同様に、「ファイルＢ」を第２種の媒体（ＡＴＡ）で構成された第２の記憶領域から第１種の媒体（ＦＣ）で構成された第１の記憶領域に移動させる場合には、移動処理後には、第１の記憶領域内に「ファイルＢ」の実データを格納する新規データ領域が設けられると共に、第２の記憶領域から「ファイルＢ」の実データが格納されていた旧データ領域が開放される。また、「ｉｎｏｄｅ２」のデータポインタが示すアドレスが、旧データ領域のアドレスから新規データ領域のアドレスに変更される。なお、ディレクトリ情報は、変更されない。
【０１７３】
上記のように、本実施例では、第１実施例と同様に、第１種の媒体（ＦＣ）で構成された第１の記憶領域のみにメタデータが格納されるため、ファイルを移動させる際に、該ファイルに関するメタデータを新たに作成せずに変更するだけで済む。
【０１７４】
以上説明したように、本実施例でも、第１実施例と同様に、統合ＬＵ上に１つのファイルシステムが構築される。ただし、本実施例では、統合ＬＵ内には、１つのブロックグループのみが設定され、該ブロックグループは、第１の記憶領域と第２の記憶領域とに跨るように設定される。そこで、本実施例では、ボリューム管理テーブルＴＢを参照することによって、ファイルに関するメタデータが第１の記憶領域のみに格納され、ファイルの実データが適切な一方の記憶領域のみに格納される。このため、本実施例でも、ファイルの新規作成や移動の際に、ファイルの実データが、第１の記憶領域と第２の記憶領域とに跨って（換言すれば第１種の媒体と第２種の媒体とに跨って）格納されずに済むと共に、１つのファイルシステム内で第１の記憶領域と第２の記憶領域とにファイル単位でファイルが分配される。したがって、ファイルを価値に応じた適切な種類の媒体に確実に格納することができ、この結果、複数種の媒体を効率よく利用することが可能となる。
【０１７５】
また、本実施例では、第１実施例と同様に、容量管理や、メタデータの迅速な検索、ファイルシステム単位でのデータの複製、スナップショット機能の適用を容易に行うことができる。
【０１７６】
特に、本実施例では、汎用のファイルシステムと同様の構造を有するファイルシステムが統合ＬＵ上に構築されるため、クライアント４００は、ファイルサーバ１１０を介さずに直接的にストレージ装置１３０内の構築されたファイルシステムを参照することができるという利点もある。
【０１７７】
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様で実施することが可能であり、例えば次のような変形も可能である。
【０１７８】
（１）上記実施例では、複数種の媒体で構成される複数の記憶領域をストレージ装置１３０（より具体的には第２構成管理部１５４）の機能を利用して統合し、得られた統合記憶領域（統合ＬＵ）上にファイルシステムを構築している。しかしながら、これに代えて、他の手法を採用してもよい。例えば、ファイルサーバ１１０に論理ボリュームマネージャ（コンピュータプログラム）が備えられている場合には、複数種の媒体で構成される複数の記憶領域を論理ボリュームマネージャの機能を利用して統合し、得られた統合記憶領域上にファイルシステムを構築するようにしてもよい。また、バーチャリゼーションスイッチが利用される場合には、複数台の記憶装置内の複数種の媒体で構成される複数の記憶領域をバーチャリゼーションスイッチの機能を利用して統合し、得られた統合記憶領域上にファイルシステムを構築するようにしてもよい。
【０１７９】
また、上記実施例では、媒体としてＦＣ対応のハードディスクとＡＴＡ対応のハードディスクが利用されているが、他の媒体が利用されてもよい。例えば、光ディスクや、光磁気ディスク、磁気テープなどが利用されてもよい。
【０１８０】
一般には、第１種のストレージ媒体の少なくとも一部で構成された第１の記憶領域と、第２種のストレージ媒体の少なくとも一部で構成された第２の記憶領域と、を少なくとも含む統合記憶領域上に１つのファイルシステムが構築されればよい。
【０１８１】
（２）上記実施例では、ファイル分配制御部２１４は、管理サーバ２００に設けられているが、これに代えて、ファイルサーバ１１０に設けられていてもよい。こうすれば、ファイルサーバ１１０が、ファイルの新規作成処理（またはファイルの移動処理）の際に、ファイルの格納先媒体の種類（または移動対象ファイルおよび移動先媒体の種類）を決定することができる。
【０１８２】
また、上記実施例では、管理サーバ２００がファイル分配制御部２１４を備えており、ファイルサーバ１１０は、ファイルの新規作成処理またはファイルの移動処理の際（より具体的にはステップＳ２０４，Ｓ３０２）に、管理サーバ２００からファイルの格納先媒体の種類または移動対象ファイル等を受け取っているが、これに代えて、管理サーバから分配ルールを受け取るようにしてもよい。
【０１８３】
さらに、上記実施例では、ファイルの新規作成処理の際には、ファイル分配制御部２１４によってファイルの格納先媒体の種類が決定されているが、これに代えて、クライアント４００からファイルが送信される際に、クライアント４００から格納先媒体の種類が指示されるようにしてもよい。
【０１８４】
また、上記実施例では、ファイルの移動処理の際には、ファイル分配制御部２１４によって移動対象ファイル等が決定されているが、これに代えて、クライアント４００によって移動対象ファイル等が指示されるようにしてもよい。
【０１８５】
なお、上記実施例では、管理サーバ２００と管理端末３００とは異なる装置であるが、これに代えて、管理サーバと管理端末とは同一の装置であっても良い。
【図面の簡単な説明】
【０１８６】
【図１】ネットワークシステムの概略構成を示す説明図である。
【図２】ストレージシステム１００の内部構成を示す説明図である。
【図３】予め準備されたボリューム管理テーブルＴＢの内容を示す説明図である。
【図４】管理サーバ２００の内部構成を示す説明図である。
【図５】ファイルシステムの作成手順を示すフローチャートである。
【図６】ステップＳ１１０（図５）で第１ＬＵ（ＬＵＮ＝０）上に作成されるファイルシステムの構造を示す説明図である。
【図７】図５の処理が完了したときに得られるボリューム管理テーブルＴＢの内容を示す説明図である。
【図８】第１ＬＵ（ＬＵＮ＝０）上のファイルシステムの構造を示す説明図である。
【図９】ＬＵ内にファイルを新規に作成する際の手順を示すフローチャートである。
【図１０】統合ＬＵ内でファイルを移動させる際の手順を示すフローチャートである。
【図１１】ファイルの移動処理の前後のファイルシステムの構造を示す説明図である。
【図１２】第１実施例におけるファイルシステムと比較例におけるファイルシステムとを模式的に示す説明図である。
【図１３】第２実施例における第１ＬＵ（ＬＵＮ＝０）上のファイルシステムの構造を示す説明図である。
【図１４】第２実施例における統合ＬＵ内でファイルを移動させる際の手順を示すフローチャートである。
【図１５】第２実施例におけるファイルの移動処理の前後のファイルシステムの構造を示す説明図である。
【図１６】第３実施例における第１ＬＵ（ＬＵＮ＝０）上のファイルシステムの構造を示す説明図である。
【図１７】第３実施例におけるＬＵ内にファイルを新規に作成する際の手順を示すフローチャートである。
【図１８】第３実施例における統合ＬＵ内でファイルを移動させる際の手順を示すフローチャートである。
【図１９】第３実施例におけるファイルの移動処理の前後のファイルシステムの構造を示す説明図である。
【符号の説明】
【０１８７】
１００…ストレージシステム
１１０…ファイルサーバ
１１２…ＣＰＵ
１１４…メモリ
１１６…ネットワークＩＦ部
１１８…ストレージＩＦ部
１２２…プロトコル制御部
１２４…第１構成管理部
１２６…ファイルシステム制御部
１２８…キャッシュ領域
１３０…ストレージ装置
１４０…ディスクアレイコントローラ
１４２…ＣＰＵ
１４４…メモリ
１４６…ホストＩＦ部
１４８…ドライブＩＦ部
１５２…入出力処理部
１５４…第２構成管理部
１５６…キャッシュ領域
１６０…ディスクアレイ装置
２００…管理サーバ
２０２…ＣＰＵ
２０４…メモリ
２０６…ネットワークＩＦ部
２１２…プロトコル制御部
２１４…ファイル分配制御部
３００…管理端末
４００…クライアント
ＴＢ…ボリューム管理テーブル
【図１】
0004704161.tif 000002
【図２】
0004704161.tif 000003
【図３】
0004704161.tif 000004
【図４】
0004704161.tif 000005
【図５】
0004704161.tif 000006
【図６】
0004704161.tif 000007
【図７】
0004704161.tif 000008
【図８】
0004704161.tif 000009
【図９】
0004704161.tif 000010
【図１０】
0004704161.tif 000011
【図１１】
0004704161.tif 000012
【図１２】
0004704161.tif 000013
【図１３】
0004704161.tif 000014
【図１４】
0004704161.tif 000015
【図１５】
0004704161.tif 000016
【図１６】
0004704161.tif 000017
【図１７】
0004704161.tif 000018
【図１８】
0004704161.tif 000019
【図１９】
0004704161.tif 000020