(57)【特許請求の範囲】
【請求項１】
第一のストレージデバイスと、前記第一のストレージデバイスと速度の異なる第二のストレージデバイスと、固定のページサイズのページを複数有するボリュームを管理し、前記ページを前記第一又は第二のストレージデバイスに割り当てるＣＰＵとを有するストレージシステムにおいて、
１以上の前記ページに保存するファイルのサイズが、前記固定のページサイズよりも大きいか否かを判定するステップを有し、
前記判定の結果、前記ファイルのサイズが前記固定のページサイズ以下の場合、前記ファイルのアクセス特性に応じて、前記第一のストレージデバイスと、前記第二のストレージデバイスとの何れかに割り当てられたページに前記ファイルを保存するステップをさらに有し、
前記判定の結果、前記ファイルのサイズが前記固定のページサイズよりも大きい場合、第一のページ及び第二のページを有する前記ボリュームに前記ファイルを保存するステップと、前記第一のページ及び前記第二のページのアクセス特性に応じて、前記第一のページを前記第一のストレージデバイスに割り当て、前記第二のページを前記第二のストレージデバイスに割り当てるステップとをさらに有する
ことを特徴とする複数のファイルのデータ位置を管理する方法。
【請求項２】
前記ページサイズ以下の小ファイルの各ファイルに対して、前記小ファイルの前記アクセス特性に適合する対応階層に属する前記複数のページの１つのページに前記小ファイルを割り当てるステップを更に含む
ことを特徴とする請求項１による方法。
【請求項３】
前記ストレージシステムは更に、少なくとも１個の高速ボリュームと少なくとも１個の低速ボリュームを含む複数の特定速度のボリュームを有し、
前記方法は更に、
各高速ボリュームを１台以上の高速ストレージデバイスにマップするステップと、
各低速ボリュームを１台以上の低速ストレージデバイスにマップするステップと、
前記ページサイズ以下の小ファイルの各ファイルに対して、前記小ファイルの前記アクセス特性を特定速度のボリュームの対応する速度に適合させることにより前記小ファイルを前記特定速度のボリュームに割り当てるステップとを更に含む
ことを特徴とする請求項１による方法。
【請求項４】
前記複数の特定速度のボリュームは少なくとも１個の中速ボリュームを含み、
前記方法は更に、
各中速ボリュームを１台以上の中速ストレージデバイスにマップするステップを含む
ことを特徴とする請求項３による方法。
【請求項５】
前記複数のストレージデバイスは少なくとも１台の中速ストレージデバイスを含み、
異なる階層の前記ページの少なくとも１ページを前記中速ストレージデバイスにマップするステップを含む
ことを特徴とする請求項１による方法。
【請求項６】
第一のストレージデバイスと、前記第一のストレージデバイスと速度の異なる第二のストレージデバイスと、固定のページサイズのページを複数有するボリュームを管理し、前記ページを前記第一又は第二のストレージデバイスに割り当てるファイルサーバとを有するストレージシステム内の複数のファイルのデータ位置を管理するために、前記ストレージシステムに接続されたホストを含むシステムにおいて、
前記ファイルサーバは、
１以上の前記ページに保存するファイルのサイズが、前記固定のページサイズよりも大きいか否かを判定し、
前記判定の結果、前記ファイルのサイズが前記固定のページサイズよりも小さい場合、前記ファイルのアクセス特性に応じて、前記第一のストレージデバイスと、前記第二のストレージデバイスとの何れかに割り当てられたページに前記ファイルを保存し、
前記判定の結果、前記ファイルのサイズが前記固定のページサイズよりも大きい場合、第一のページ及び第二のページを有する前記ボリュームに前記ファイルを保存するとともに、前記第一のページ及び前記第二のページのアクセス特性に応じて、前記第一のページを前記第一のストレージデバイスに割り当て、前記第二のページを前記第二のストレージデバイスに割り当てる
ことを特徴とするストレージシステム。
【請求項７】
前記ファイルサーバは、
前記ページサイズ以下の小ファイルの各ファイルに対して、前記小ファイルの前記アクセス特性に適合する対応階層に属する前記複数のページの一つのページに前記小ファイルを割り当てるように構成される割当て管理モジュールを含む
ことを特徴とする請求項６によるストレージシステム。
【請求項８】
前記ストレージシステムは更に、少なくとも１個の高速ボリュームと少なくとも１個の低速ボリュームを含む複数の特定速度のボリュームを有し、
前記ファイルサーバは、
各高速ボリュームを１台以上の高速ストレージデバイスにマップし、
各低速ボリュームを１台以上の低速ストレージデバイスにマップし、
前記ページサイズ以下の小ファイルの各ファイルに対して、前記小ファイルの前記アクセス特性を特定速度のボリュームの対応する速度に適合させることにより前記小ファイルを前記特定速度のボリュームに割り当てるように構成されるファイルレベル階層型ストレージ管理モジュールを含む
ことを特徴とする請求項６によるストレージシステム。
【請求項９】
前記複数の特定速度のボリュームは少なくとも１個の中速ボリュームを含み、
前記ファイルレベル階層型ストレージ管理モジュールは、
各中速ボリュームを１台以上の中速ストレージデバイスにマップするように構成される
ことを特徴とする請求項８によるストレージシステム。
【請求項１０】
前記複数のストレージデバイスは少なくとも１台の中速ストレージデバイスを含み、
前記ファイルサーバは、
異なる階層のページの少なくとも１ページを１台の前記中速ストレージデバイスにマップする
ことを特徴とする請求項６によるストレージシステム。
【請求項１１】
第一のストレージデバイスと、前記第一のストレージデバイスと速度の異なる第二のストレージデバイスと、固定のページサイズのページを複数有するボリュームを管理し、前記ページを前記第一又は第二のストレージデバイスに割り当てるＣＰＵとを有するストレージシステム内の複数のファイルのデータ位置を管理するデータプロセッサを制御するための複数の命令であって、前記複数の命令は、
１以上の前記ページに保存するファイルのサイズが、前記固定のページサイズよりも大きいか否かを判定する命令と、
前記判定の結果、前記ファイルのサイズが前記固定のページサイズよりも小さい場合、前記ファイルのアクセス特性に応じて、前記第一のストレージデバイスと、前記第二のストレージデバイスとの何れかに割り当てられたページに前記ファイルを保存する命令と、
前記判定の結果、前記ファイルのサイズが前記固定のページサイズよりも大きい場合、第一のページ及び第二のページを有する前記ボリュームに前記ファイルを保存するとともに、前記第一のページ及び前記第二のページのアクセス特性に応じて、前記第一のページを前記第一のストレージデバイスに割り当て、前記第二のページを前記第二のストレージデバイスに割り当てる命令とを含む
ことを特徴とする前記複数の命令を保存するコンピュータ読み取り可能ストレージ媒体。
【請求項１２】
前記複数の命令は更に、
前記ページサイズ以下の小サイズの各ファイルに対して、前記データプロセッサに、前記小ファイルの前記アクセス特性に適合する対応階層に属する前記複数のページの一つのページに前記小ファイルを割り当てさせる命令を含む
ことを特徴とする請求項１１によるコンピュータ読み取り可能ストレージ媒体。
【請求項１３】
前記ストレージシステムは更に、少なくとも１個の高速ボリュームと少なくとも１個の低速ボリュームを含む複数の特定速度のボリュームを有し、
前記複数の命令は更に、
前記データプロセッサに、各高速ボリュームを１台以上の高速ストレージデバイスに対してマップさせる命令と、
前記データプロセッサに、各低速ボリュームを１台以上の低速ストレージデバイスに対してマップさせる命令と、
前記データプロセッサに、前記ページサイズ以下の小サイズの各ファイルに対して、前記小ファイルの前記アクセス特性を前記特定速度のボリュームの対応する速度に適合させることにより前記小ファイルを一つの特定速度のボリュームに割り当てさせる命令と、を含む
ことを特徴とする請求項１１によるコンピュータ読み取り可能ストレージ媒体。
【請求項１４】
前記複数のストレージデバイスは少なくとも１台の中速ストレージデバイスを含み、
前記複数の命令は更に、
異なる階層のページの少なくとも１ページを１台の前記中速ストレージデバイスにマップさせる命令を含む
ことを特徴とする請求項１１によるコンピュータ読み取り可能ストレージ媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
０００１    本発明は一般にストレージシステム内のデータ位置を管理する方法と装置に関する。より具体的には、本システムのストレージ装置は、ページプールから論理ボリュームにページを割り当てるページ割当て機能を有し、本システムのファイルサーバは、ストレージシステム内のページ割当てを管理する機能を有し、ファイル毎の階層型ストレージ管理を可能にする。
【背景技術】
【０００２】
０００２    階層ストレージは異種のストレージ媒体にデータを割り当てる機能である。この機能はストレージシステムの性能を最大にし、コストを低減するために使用される。例えば、階層ストレージ能力を有するストレージシステムは、頻繁にアクセスされるデータを高速だが高価なストレージ媒体に割り当て、滅多にアクセスされないデータを低速だが安価なストレージ媒体に割り当てる。この構成は、データ全体が高速で高価な媒体に保存される構成に比べて安価となる。
【０００３】
０００３    ストレージシステム内に階層ストレージ機能を実装するためにページマッピングテーブルが使用される。このテーブルは、固定サイズのデータ領域を意味するページとそれらの位置関係を表したものである。この方法では、ページサイズが小さい場合には、データ割当ての有効性とコスト低減が向上する。しかしながら、ページがより小さくなるとページマッピングテーブルのエントリが増大しストレージシステムのメモリがより多く必要になる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
０００４    ファイルサーバがファイルデータを保存するのにストレージシステムを使用すると仮定するならば、各ファイルサイズは異なりまた可変で、必ずしもページバウンダリで配置できるわけではない。各ページはいくつかの小ファイルを保存でき、１個の巨大ファイルは複数のページに保存される。通常、同じページに保存された各小ファイルへのアクセス頻度は異なるので、階層ストレージ機能はそのような状態に対しては充分に機能せず有効性が損なわれる。
【課題を解決するための手段】
【０００５】
０００５    本発明の典型的な実施例は、ストレージシステム内の各ストレージ媒体へのページとファイル割当てを制御する方法と装置を提供する。本発明はストレージシステム装置とファイルサーバが異種のストレージ媒体へのデータ割当てを制御するために使用される。具体的な実施例では、本発明技術はファイル毎のＨＳＭ（階層型ストレージ管理、Hierarchical Storage Management）とページベース（サブファイル）のＴＳＭ（階層ストレージ管理、Tiered Storage Management）の両者を可能にする。結果として、階層ストレージ機能の性能とコスト低減への有効性が増大する。
【０００６】
０００６    ファイルサーバとストレージ装置はページマッピングテーブルを整えるために相互に交信する。ファイルサーバはボリュームのどの領域がどのストレージ媒体に割り当てられているかを知っており、その結果ファイルサーバは小ファイルを対応する領域に割り当てる。ファイルサーバがページサイズよりも大きいファイルを保存する時には、ファイルサーバは当該ファイルをボリュームのどこかに割り当て、これらの領域がストレージ装置の制御下にあるという情報をストレージ装置に提供し、ストレージ装置は自らストレージ媒体にページを割り当てることができる。
【０００７】
０００７    本発明の一つの態様は、固定のページサイズを有し異なる階層に属する複数のページを含む混合ボリュームを有するストレージシステムにおいて、複数のファイルのデータ位置を管理する方法に向けられる。この方法は、ストレージシステム内の異なる階層のページを、少なくとも高い階層のページに対応する１台の高速ストレージデバイスと低い階層のページに対応する１台の低速ストレージデバイスを含む異なる速度のストレージデバイスに、マップするステップ、及びページサイズよりも大きい大ファイルの各ファイルに対して大ファイルに関するサブファイル階層管理を実行して、大ファイルの各部分のアクセス特性を混合ボリュームの割り当てられたページの対応階層に適合させることにより大ファイルの異なる部分のアクセス特性に従って大ファイルを異なる階層のページ間で割り当てるステップを含む。
【０００８】
０００８    いくつかの実施例では、この方法は更に、ページサイズ以下の小ファイルの各ファイルに対して、小ファイルのアクセス特性に適合する対応階層に属する複数のページの１ページに小ファイルを割り当てるステップを含む。ストレージシステムは更に、少なくとも１個の高速ボリュームと少なくとも１個の低速ボリュームを含む複数の特定速度のボリュームを有し、この方法は更に、１台以上の高速ストレージデバイスに各高速ボリュームをマップし、１台以上の低速ストレージデバイスに各低速ボリュームをマップし、更に、ページサイズ以下の小ファイルの各ファイルに対して、小ファイルのアクセス特性を特定速度のボリュームの対応する速度に適合させることにより小ファイルを特定速度のボリュームに割り当てるステップを含む。複数の特定速度のボリュームは少なくとも１個の中速ボリュームを含み、この方法は更に、各中速ボリュームを１台以上の中速ストレージデバイスにマップするステップを含む。
【０００９】
０００９    具体的な実施例では、複数のストレージデバイスは少なくとも１台の中速ストレージデバイスを含み、ストレージシステム内の異なる階層のページを異なる速度のストレージデバイスにマップするステップは、少なくとも一つのページを中速ストレージデバイスにマップするステップを含む。アクセス特性はアクセス頻度を含み、大ファイルの各部分のアクセス特性を混合ボリュームの割り当てられたページの対応階層に適合させるステップは、高アクセス頻度を対応する高速ストレージデバイスにマップされる高い階層のページに適合させ、低アクセス頻度を対応する低速ストレージデバイスにマップされる低い階層のページに適合させるステップを含む。この方法は更に、ファイルが小ファイルか大ファイルかを判定するステップを含んでもよい。
【００１０】
００１０    本発明の別な態様は、固定のページサイズを有し異なる階層に属する複数のページを含む混合ボリュームを有するストレージシステム内の複数のファイルのデータ位置を管理するために、ストレージシステムに接続されたホストを含むシステムに向けられる。ストレージシステムは、少なくとも混合ボリューム内の高い階層のページに対応する１台の高速ストレージデバイスと混合ボリューム内の低い階層のページに対応する１台の低速ストレージデバイスを含む、異なる速度の複数のストレージデバイス、異なる階層の複数のページを含む混合ボリューム、及びプロセッサとメモリを有し、異なる階層のページをストレージシステム内の異なる速度のストレージデバイスにマップするために異なる階層のページをマップするように構成され、ページサイズよりも大きい大ファイルの各ファイルに対して大ファイルに関するサブファイル階層管理を実行して、大ファイルの各部分のアクセス特性を混合ボリュームの割り当てられたページの対応階層に適合させることにより大ファイルの異なる部分のアクセス特性に従って大ファイルを異なる階層のページ間で割り当てるように構成されるファイルサーバを含む。
【００１１】
００１１    いくつかの実施例では、ファイルサーバは、ページサイズ以下の小ファイルの各ファイルに対して、小ファイルのアクセス特性に適合する対応階層に属する複数のページの１ページに小ファイルを割り当てる、ように構成される割当て管理モジュールを含む。ストレージシステムは更に、少なくとも１個の高速ボリュームと少なくとも１個の低速ボリュームを含む複数の特定速度のボリュームを有し、ファイルサーバは１台以上の高速ストレージデバイスに各高速ボリュームをマップし、１台以上の低速ストレージデバイスに各低速ボリュームをマップし、ページサイズ以下の小ファイルの各ファイルに対して、小ファイルのアクセス特性を特定速度のボリュームの対応する速度に適合させることにより小ファイルを特定速度のボリュームに割り当てる、ように構成されるファイルレベル階層型ストレージ管理モジュールを含む。複数の特定速度のボリュームは少なくとも１個の中速ボリュームを含み、ファイルレベル階層型ストレージ管理モジュールは、各中速ボリュームを１台以上の中速ストレージデバイスにマップするように構成される。ファイルサーバはファイルが小ファイルか大ファイルかを判定するように構成してもよい。
【００１２】
００１２    本発明のもう一つの態様は、固定のページサイズを有し異なる階層に属する複数のページを含む混合ボリュームを有するストレージシステム内の複数のファイルのデータ位置を管理するデータプロセッサを制御するための複数の命令を保存するコンピュータ読み取り可能ストレージ媒体に向けられる。ストレージシステムは少なくとも、混合ボリューム内の高い階層のページに対応する１台の高速ストレージデバイスと混合ボリューム内の低い階層のページに対応する１台の低速ストレージデバイスを含む異なる速度の複数のストレージデバイスを有する。複数の命令は、データプロセッサに異なる階層のページをストレージシステム内の異なる速度のストレージデバイスにマップするために異なる階層のページをマップさせる命令、及びデータプロセッサにページサイズよりも大きい大ファイルの各ファイルに対して大ファイルに関するサブファイル階層管理を実行させ、大ファイルの各部分のアクセス特性を混合ボリュームの割り当てられたページの対応階層に適合させることにより大ファイルの異なる部分のアクセス特性に従って大ファイルを異なる階層のページ間で割り当てさせる命令を含む。
【発明の効果】
【００１３】
００１３    本発明のこれら及びその他の特徴や利点は、以下の個別の実施例の詳細な説明により、この技術分野に於ける通常の知識を有する者（当業者）には明らかになるであろう。
【図面の簡単な説明】
【００１４】
【図１ａ】００１４    図１ａは本発明の第１の実施例に従って、本発明の方法と装置が適用可能な情報システムのハードウェア構成の例を示す。
【図１ｂ】図１ｂは本発明の第１の実施例に従って、本発明の方法と装置が適用可能な情報システムのハードウェア構成の例を示す。
【図１ｃ】図１ｃは本発明の第１の実施例に従って、本発明の方法と装置が適用可能な情報システムのハードウェア構成の例を示す。
【図１ｄ】００１５    図１ｄは情報システムのハードウェア構成の別の例を示す。
【図１ｅ】図１ｅは情報システムのハードウェア構成の別の例を示す。
【図１ｆ】００１６    図１ｆは情報システムのハードウェア構成のもう一つの例を示す。
【図１ｇ】図１ｇは情報システムのハードウェア構成のもう一つの例を示す。
【図２】００１７    図２（ａ）は異なったレベルのブロックサイズを示す。  ００１８    図２（ｂ）及び図２（ｃ）は「ページ」の概念を示す。
【図３】００１９    図３はページマッピングテーブルの例を示す。
【図４】００２０    図４はページマッピングテーブルが示すマッピング構造を示す。
【図５】００２１    図５はファイルシステムに対するボリュームの一部の使用例を示す。
【図６】００２２    図６は階層を意識したファイル割当てフローを表すフローダイアグラムの例を示す。
【図７】００２３    図７は階層を意識したファイル割当て結果の一つの例を示す。
【図８ａ】００２４    図８ａは本発明の第２の実施例に従って、本発明の方法と装置が適用可能な情報システムのハードウェア構成の例を示す。
【図８ｂ】図８ｂは本発明の第２の実施例に従って、本発明の方法と装置が適用可能な情報システムのハードウェア構成の例を示す。
【図８ｃ】００２５    図８ｃは情報システムのハードウェア構成の別の例を示す。
【図８ｄ】図８ｄは情報システムのハードウェア構成の別の例を示す。
【図８ｅ】００２６    図８ｆは情報システムのハードウェア構成のもう一つの例を示す。
【図８ｆ】図８ｆは情報システムのハードウェア構成のもう一つの例を示す。
【図９】００２７    図９はファイルレベルＨＳＭの例を示す。
【図１０】００２８    図１０はページベースＴＳＭを有するファイルレベルＨＳＭの例を示す。
【図１１】００２９    図１１はファイルレベルＨＳＭプログラムのプロセスを表すフローダイアグラムの例を示す。
【図１２】００３０    図１２はファイルレベルＨＳＭプログラムのプロセス結果の一つの例を示す。
【発明を実施するための形態】
【００１５】
００３１    本発明の以下の詳細な説明において、付随する図面が参照され、これら図面は開示の一部を構成し、図中では本発明が実施可能な典型的な実施例が、限定する目的ではなく説明の目的で示される。図中ではいくつかの表現を通して同じ数字は実質的に同じコンポーネントを表す。更に、詳細な説明では以下に記述され図中で示されるように種々の典型的な実施例が提供されるが、本発明はここで記述され表示された実施例に限定されるものではなく、当業者には既知であるか知るところになるであろう他の実施例に拡張可能であることは言うもでもない。明細書中の「一つの実施例」、「本実施例」、又は「これらの実施例」という言及は、その実施例に関連して記述される特定の特徴、構造、特性が本発明の少なくとも一つの実施例に含まれることを意味し、これらの語句が明細書中の種々の箇所で出現しても、必ずしもすべてが同じ実施例に言及しているわけでない。更に、以下の詳細な説明において、本発明を完全に理解できるように、数多くの具体的な詳細が用意されている。しかしながら、これら具体的な詳細は本発明を実施するのにすべてが必要なわけではないことは当業者には明白であろう。他の状況では、公知の構造、材料、回路、プロセス及びインタフェースは詳細には説明されておらず、及び／又は本発明を不必要に不明確にしない範囲でブロックダイアグラム形式で示される場合もある。
【００１６】
００３２    更に、以下の詳細な説明のいくつかの部分はコンピュータ内の動作のアルゴリズムや記号表現の形で提供される。これらのアルゴリズム的記述や記号表現はデータ処理技術分野に於ける当業者が自らの革新技術の本質を、この技術分野に於ける他の当業者に最も効果的に伝えるために使用される手段である。アルゴリズムとは望ましい最終状態又は結果に導くための一連の定義されたステップである。本発明では、実行されるステップは実際の結果を達成するために実在の量の物理操作を必要とする。通常、必ずしも必然ではないが、これらの量は、保存され、転送され、結合され、比較され、及びその他の方法で操作可能な、電気又は磁気信号あるいは命令の形態をとる。主として慣用されていると言う理由で、これらの信号をビット、値、要素、シンボル、文字、項、数、命令、などと呼ぶのが、時には便利なことが分かっている。しかしながら、これらすべて及び類似の語句は適切な物理量に関連付けられるべきものであり、これらの量に適用される単なる便宜的な呼び方に過ぎないことを心に留めておく必要がある。特に個別に断りがない限り、以下の議論で明らかなように、説明を通じて、「処理する」、「計算する」、「見積る」、「判定する」、「表示する」、などの語句を使用した議論は、コンピュータシステムのレジスタやメモリ内の物理的（電子的）な量で表わされるデータを操作し、コンピュータシステムのメモリ又はレジスタあるいは他の情報ストレージ、転送又はディスプレイデバイス内の同様に物理的な量で表される他のデータへと変換する、コンピュータシステム又は他の情報処理デバイスの動作や処理を含むことができることを理解してもらいたい。
【００１７】
００３３    本発明は更に、ここで述べた動作を実行するための装置にも関する。この装置は必要とされる目的のために専用に構築されたものであっても良いし、一つ以上のコンピュータプログラムにより選択的に起動され又は再構成された１台以上の汎用コンピュータを含んでいても良い。そのようなコンピュータプログラムは光ディスク、磁気ディスク、リード−オンリメモリ、ランダムアクセスメモリ、ソリッドステイトデバイス及びドライブ、又は任意のその他の種類の電子的な情報を保存するのに適した媒体などで、これらに限定されることなく、コンピュータ読み取り可能ストレージ媒体に保存することができる。ここで提供されるアルゴリズムや表示は本質的にいかなる特定のコンピュータや他の装置にも依存しない。種々の汎用システムがここでの教示に従うプログラムとモジュールにより使用可能であるが、あるいは望まれる方法ステップを実行するためにより専用の装置を構築するのが便利だと分かる場合もあるだろう。更に、本発明はいかなる特定のプログラミング言語も参照して記述していない。多様なプログラミング言語がここで記述された発明の教示を実装するために使用可能であることは言うまでもない。プログラミング言語の命令は一つ以上の処理デバイス、例えば中央処理装置（ＣＰＵ）、プロセッサ、又はコントローラ、によって実行可能である。
【００１８】
００３４    以下により詳細に記述する本発明の典型的な実施例は、ストレージシステムの各ストレージ媒体へのページとファイルの割当てを制御する装置、方法及びコンピュータプログラムを提供する。
【００１９】
００３５    I．第１の実施例
【００２０】
００３６    Ａ．システム構成
【００２１】
００３７    図１ａ、図１ｂ、及び図１ｃは、本発明の第１の実施例に従って本発明の方法及び装置が適用可能な情報システムのハードウェア構成の例を示す。情報システム１００は、ストレージシステム１７０、ストレージネットワーク１６２、ファイルネットワーク１５０、管理ネットワーク１５２、及び１台以上のホストコンピュータ１３０を含む。
【００２２】
００３８    ストレージシステム１７０は、少なくとも１台のストレージ装置１１０と少なくとも１台のファイルサーバ１２０を含む。ストレージ装置１１０とファイルサーバ１２０は、管理情報に対しては管理ネットワーク１５２を介し、データＩ／Ｏ（入／出力）に対してはストレージネットワーク１６２を介して交信する。ホストコンピュータ１３０は、ファイルネットワーク１５０を介してファイルサーバ１２０にＩ／Ｏ要求を発行する。
【００２３】
００３９    ストレージ装置１１０は、ＣＰＵ（Central Processing Unit）１１１、メモリ１１２、内部ストレージインタフェース１１６、少なくとも１台のストレージ媒体１１７、ストレージインタフェース１６１、及びネットワークインタフェース１５１を含む。ＣＰＵ１１１は、メモリ１１２内のプログラムが示す通りにストレージ装置１１０内のデバイスを制御する。メモリ１１２は、プログラム、テーブル、及びキャッシュを保存する。ＣＰＵ１１１は、ディスクＩ／Ｏプログラム１１３を実行してストレージインタフェース１６１を介してファイルサーバ１２０から受信するＩ／Ｏ要求を処理する。ディスクＩ／Ｏ処理時、ディスクＩ／Ｏプログラム１１３を実行するＣＰＵ１１１は、ページマッピングテーブル２００を参照することにより要求されたデータの位置を決定する。ＣＰＵ１１１は、メモリ１１２の或る領域をディスクキャッシュ１１４として使用し、ストレージ媒体１１７にアクセスするための待ち時間を隠しＩ／Ｏ要求に迅速に応答するためにディスクキャッシュ１１４に或るデータを保存する。統計情報１１６は、Ｉ／Ｏ数、ＣＰＵ負荷、などに関する情報を保存する。ページ管理プログラム１１５は、統計情報とネットワークインタフェース１５１を介してのファイルサーバ１２０からの要求を参照することによりページマッピングテーブル６００のエントリを管理する。ストレージ装置１１０は、少なくとも１台のストレージ媒体１１７を有する。ＣＰＵ１１１は、内部ストレージインタフェース１１８を経由してストレージ媒体１１７から／にデータを読み出し／書き込みすることができる。ＦＣ（Fibre Channel）、ＳＡＴＡ（Serial Attached Technology Attachment）、ＳＡＳ（Serial Attached SCSI）、ＩＤＥ（Integrated Device Electronics）、又は他のインタフェースがストレージ媒体１１７にアクセスするのに使用される。ストレージ装置は、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）、フラッシュメモリ、光ディスク、磁気テープ、などの多様な種類のストレージ媒体１１７を使用することができる。ＲＡＩＤ（Redundant Array of Independent Disk）技術によるそれらのアレイもまたストレージ媒体１１７として使用できる。更に、ストレージ装置１１０はストレージ媒体１１７として別のストレージ装置を使用することもできる。
【００２４】
００４０    ファイルサーバ１２０は、ＣＰＵ１２１、メモリ１２２、及びネットワークインタフェース１５１を含む。ＣＰＵ１２１は、メモリ１２２内のプログラムが示す通りにファイルサーバ１２０内のデバイスを制御する。メモリ１２２は、プログラム及びキャッシュを有する。ＣＰＵ１２１は、ファイルシステムプログラム１２３を参照することにより、ファイルＩ／Ｏ要求を処理し、ストレージインタフェース１６０を介して接続されたストレージ装置１１０から／にデータを読み出し／書き込みする。ＣＰＵ１２１は、ネットワークインタフェース１６１を介して外部コンピュータからファイルＩ／Ｏ要求を受信し、ネットワークファイル処理プログラム１２４を参照することによりファイルシステムプログラム１２３にＩ／Ｏ要求を転送する。ＣＰＵ１２１は、メモリ１１２のいくつかの領域をバッファキャッシュ１２５として使用する。バッファキャッシュ１２５は、ストレージ装置１１０へのＩ／Ｏを減少させファイルＩ／Ｏを加速させるためにデータを保存する。
【００２５】
００４１    ストレージインタフェース１６１を使用して、ファイルサーバ１２０及びストレージ装置１１０は、ストレージネットワーク１６２を介してデータＩ／Ｏのために交信する。ストレージインタフェース１６１及びストレージネットワーク１６２用に、ＦＣ（Fibre Channel）、ｉＳＣＳＩ（Internet Small Computer System Interface）、ＦＣｏＥ（FC over Ethernet（登録商標））、などのいくつかの共通ストレージプロトコルが存在する。ホストコンピュータ１３０は、ネットワークインタフェース１５１を使用してファイルネットワーク１５０を介してファイルサーバ１２０にファイルＩ／Ｏを発行する。ネットワーク１５０を介したファイルＩ／Ｏインタフェース用に、ＮＦＳ（Network File System）、ＣＩＦＳ（Common Internet File System）、及びＡＦＰ（Apple Filing Protocol）のいくつかの共通プロトコルが存在する。更に、各コンピュータは、種々の目的で他のコンピュータと交信することができる。ファイルサーバ１２０及びストレージ装置１１０は、ネットワークインタフェース１５１を使用して管理ネットワーク１５２を介して交信する。ファイルサーバ１２０は、ページ割当て情報を取得しストレージ装置１１０に領域情報を提供するために、このネットワーク１５２を使用する。ホストコンピュータ１３０は、ストレージシステム１７０のユーザである。ホストコンピュータ１３０は、ファイルネットワーク１５０を介してネットワークインタフェース１５１を使用してＩ／Ｏを発行する。
【００２６】
００４２    図１ｄ及び図１ｅは、情報システム１０１のハードウェア構成の別の例を示す。ストレージシステム１７１は、ファイルサーバ１８０を含む。このファイルサーバ１８０は、図１ａ乃至図１ｃのファイルサーバ１２０とストレージ装置１１０の両者の機能を有する。即ち、ファイルサーバ１８０のメモリ１８２は、ディスクＩ／Ｏプログラム１１３、ページ管理（又はマッピング）プログラム１１５、ページマッピングテーブル３００、ファイルシステムプログラム１２３、割当て管理プログラム１２６、及びネットワークファイルアクセスプログラム１２４を保存する。更に、このファイルサーバ１８０は、自らの内部ストレージインタフェース１１８を有し、内部ストレージ装置１１７にデータを保存する。
【００２７】
００４３    図１ｆ及び図１ｇは、情報システムのハードウェア構成のもう一つの例を示す。情報システム１０２は、アプリケーションサーバ１９０とストレージ装置１１０を含む。アプリケーションサーバ１９０は、そのメモリ１９０内にファイルシステムプログラム１２３及び割当て管理プログラム１２６と共にユーザアプリケーションプログラム１９３を有する。
【００２８】
００４４    第１の実施例は、図１ａ−図１ｃのストレージシステム１７０、図１ｄ及び図１ｅのストレージシステム１７１、並びに、図１ｆ及び図１ｇの情報システム１０２のすべてに適用可能である。
【００２９】
００４５    Ｂ．セクタ
【００３０】
００４６    図２（ａ）は、異なったレベルのブロックサイズを示す。「セクタ」２１０は最小サイズであり、ファイルサーバ１２０とストレージ装置１１０との間で共通のユニットである。例えば、ＳＣＳＩ（Small Computer System Interface）のセクタサイズは５１２バイトである。ファイルサーバ１２０からは、「ボリューム」２００はセクタの配列のように見える。ファイルサーバ１２０はターゲットボリューム２００、ボリューム２００の開始セクタ、及び読み出し又は書き込みするセクタ２１０の数を指定してＩ／Ｏを発行する。
【００３１】
００４７    Ｃ．ページベースの階層ストレージ
【００３２】
００４８    「階層ストレージ」は、異種のストレージ媒体にデータを割り当てる機能である。この機能はストレージシステムの性能を最大にし、コストを低減するために使用される。例えば階層ストレージが可能なストレージシステムは頻繁にアクセスされるデータは高速だが高価なストレージ媒体に割り当て、滅多にアクセスされないデータは低速だが安価なストレージ媒体に割り当てる。この構成は全データを高速、高価な媒体に保存する構成よりも安価となる。
【００３３】
００４９    ページベースの階層ストレージは階層ストレージを実現するための一つの実装である。図２（ｂ）及び図２（ｃ）は、「ページ」の概念を示す。ストレージ装置１１０に対して、ボリューム２００は「ページ」２２０の配列を有する。ページ２２０はセクタを有し各ページは同じサイズである。ページベース階層ストレージは、ページ毎にセクタを種々のストレージ媒体１１７にマップすることで階層ストレージを可能にする。ページ管理プログラム１１５及びページマッピングテーブル３００は、マッピングプロセスを実際に実行する。
【００３４】
００５０    図３は、ページマッピングテーブル３００の例を示す。ページマッピングテーブル３００は、ファイルサーバ１２０からアクセスできるボリューム間の関係を記述する。ページマッピングテーブル３００の各行３７０，３７１，３７２，３７３は、「チャンク」（連続するページの配列）の情報を示す。ボリュームＩＤ３１０はボリュームＩＤを格納する。ページオフセット３２０は、各エントリが意味するボリュームのオフセットを格納する。長さ３３０は、各エントリにおいて指定されるページの長さを示す。ディスクＩＤ３４０は、ページデータを割り当てるためにストレージ媒体１１７を指定する固有のＩＤを示す。ディスクオフセット３５０は、このページに対するストレージ媒体１１７のオフセットを示す。
【００３５】
００５１    図４は、ページマッピングテーブル３００が表示するマッピング構造を示す。「ボリューム１」３１０は、三つのチャンク３１１、３１２、３１３を有する。チャンク３１１は、「ディスク１」３３０のチャンク３３２にマップされ、チャンク３１２は、「ディスク３」３５０のチャンク３５１にマップされ、チャンク３１３は、「ディスク２」３４０のチャンク３４１にマップされている。各ボリュームの全チャンクがディスクにマップされる必要があるわけではない。例えば、チャンク３２２はどのディスクにもマップされていない。ファイルサーバ１２０がこのチャンク３２２にＩ／Ｏ要求を発行すると、ストレージ装置１１０はエラーコードを返送するか又はチャンクにディスクスペースを割り当てる。いずれの方法でもその構成によって適用可能である。更にディスクの同じチャンクに２チャンク以上のボリュームを割り当てることも許される。これらの特徴はまたシンプロビジョニングや重複排除（de-duplication）の実装を可能にする。
【００３６】
００５２    ページ管理プログラム１１５は、アクセス頻度の変化、増設のストレージ媒体１１７のインストール、あるいは何かその他の事象が起きると、ページマッピングテーブル３００を修正できる。例えば、ページ管理プログラム１１５は、統計情報１１６を参照して、頻繁にはアクセスされていないページを比較的低速（であるがより安価）なストレージ媒体１１７に移動させる。この階層ストレージでは、ページサイズが重要なパラメータである。ページサイズが小さくなると、各データは適切なストレージ媒体１１７に割り当てられ、従ってコスト低減の有効性が向上するが、ページマッピングテーブル３００のエントリ数は大きくなり、ストレージ装置はずっと多くのメモリを必要とするようになる。
【００３７】
００５３    Ｄ．階層を意識したファイル割当て
【００３８】
００５４    ファイルシステムプログラム１２３は、ストレージ装置１１０のボリュームを管理しボリュームに多数のファイルを保存する。慣用技術では、ページマッピングプロセスはストレージ装置１１０の内部で行われており、従ってファイルシステムプログラム１２３は、ページマッピングを意識していない。
【００３９】
００５５    図５は、ファイルシステムでのボリューム５００の一部の使用例を示す。ボリューム５００はページ５０１−５０８を有す。ファイルシステムプログラム１２３は、ボリューム５００に多数のファイル５１１−５１８を保存する。ここで、ファイル「ｓｆ１」５１１、「ｓｆ３」５１３及び「ｓｆ５」５１６は、頻繁にアクセスされ高性能を必要とし、ファイル「ｓｆ４」５１５と「ｓｆ６」５１８は、時々アクセスされ中速ストレージ媒体を必要とし、ファイル「ｓｆ２」５１２は、滅多にアクセスされず、これらのファイルを低速（であるが安価な）ストレージ媒体１１７上に置くことが容認できる、と仮定しよう。ページ５０１は、１個の小ファイル「ｓｆ１」５１１のみを保存し、ページ５０１は、高速ストレージ装置１１７に割り当てられなければならない。ページ５０２は、ファイル「ｓｆ２」５１２を保存する。ページ５０２のデータは、滅多にアクセスされないので、ページ５０２は、低速（であるが安価な）ストレージ媒体１１７に割り当てることができる。ファイル「ｌｆ１」５１３は、１ページよりも大きくページ５０３とページ５０４の両者に跨って存在する。この場合は、ページベースの階層管理は、ページ５０３及びページ５０４のデータが同じ特性を有するので有効に動作する。
【００４０】
００５６    しかしながら、ページベースの階層管理は或る状況では有効には動作しない。ページ５０５は二つの小ファイル「ｓｆ３」５１３と「ｓｆ４」５１４を保存し、これらのファイルは異なるアクセス頻度を有する。従って、これらのファイルのデータは異なるストレージ媒体１１７に割り当てられるべきであるが、ページベースの階層管理ではこのようなケースをうまく取り扱うことができない。ページ５０６は小ファイル「ｓｆ５」５１６と大ファイル「ｌｆ２」５１７の一部を保存する。ページ５０７はファイル５１７の残りと小ファイル「ｓｆ６」５１８を保存する。小ファイル５１６と５１８が頻繁にアクセスされるならば、これらのページ５０６と５０８は、高速ストレージ媒体１１７に割り当てられなければならない。従って、大ファイル「ｌｆ２」５１７が殆どアクセスされなくても、本ファイルは、高速ストレージ媒体１１７のボリュームを消費してしまう。
【００４１】
００５７    この状況において、本発明は、階層を意識したファイル割当てを明らかにする。ファイルサーバ１２０内の割当て管理プログラム１２６は、管理ネットワーク１５２を介してストレージ装置１１０内のページベースの階層管理を処理する。割当て管理プログラム１２６は二つのプロセスを実行する。第１に、割当て管理プログラム１２６は、ストレージ装置１１５のページ管理プログラム１１５から割当て情報を取得する。第２に、割当て管理プログラム１２６は、ページ管理プログラム１１５に対してページ割当てを指定する。
【００４２】
００５８    図６は、階層を意識したファイル割当てフロー６００を表すフローダイアグラムの例を示す。割当て管理プログラム１２６は、ファイル生成やファイル書き込みのような事象発生時、あるいは定期的、その他のタイミングでこのフロー６００を実行することができる。割当て管理プログラム１２６は、ターゲットファイルがページサイズより大きいか否かをチェックする（ステップ６１０）。ファイルがページサイズより小さい時は、割当て管理プログラム１２６は、ストレージ装置１１０のページ管理プログラム１１５からページ割当て情報を取得する（ステップ６２０）。次に割当て管理プログラム１２６は、ファイルに対して適切なページを割り当て、ページ上にファイルを移動するかファイルを生成する（ステップ６３０）。例えば割当て管理プログラム１２６は、頻繁にアクセスされるファイルを高速ストレージ媒体１１７に割り当てられたページに割り当てる。もし割当て管理プログラム１２６が適切なページ上にスペースを検出できたなら、割当て管理プログラム１２６はそのスペースを使用する。そうでない場合は、割当て管理プログラム１２６は、適切なストレージ媒体１１７にページを割り当てるようにページ管理プログラム１１５に要求する。
【００４３】
００５９    ターゲットファイルがページサイズよりも大きい場合、最初に、割当て管理プログラム１２６は、ボリュームにファイルを割り当て、移動するかまたは生成する（ステップ６４０）。もし、ファイルがページバウンダリに配列されるならば、最終ページを除くこのファイルのページはターゲットの大ファイルのみで占有され、階層管理の有効性が向上する。次いで、割当て管理プログラム１２６は、ページ管理プログラム１１５に対して要求を発行する（ステップ６５０）。もし、割当て管理プログラム１２６がページ割当てについて十分な情報を有するならば、大ファイルの各ページの割当てを指定する要求を出すことができ、あるいはページ管理プログラム１１５ページ割当を依頼する。もし割当て管理プログラム１２６がページ割当てを依頼するならば、ページ管理プログラム１１５はページ割当てを適切に処理することができる。フロー６００の後、割当て管理プログラム１２６は、適切なストレージボリューム１１７上の適切なページへの大小ファイルの双方の割当てを終了する。更に、このフロー６００は、大ファイルの各ページを異なるストレージ媒体１１７に独立して割り当てることが可能なので、大ファイルに対するサブファイル階層管理を可能にする。
【００４４】
００６０    図７は、階層を意識したファイル割当て結果の一例を示す。ページ５０１は一つのファイル「ｓｆ１」５１１しか保存しておらず、従って、割当て管理プログラム１２６は、フロー６１０によりファイル「ｓｆ３」５１４と「ｓｆ５」５１６をページ５０１のファイル７１４と７１６に移動する。というのはこれらのファイルはすべて高速ストレージ媒体１１７を必要とし、ページ５０１が実際に高速ストレージ媒体１１７に割り当てられているからである。同様にして、割当て管理プログラム１２６はファイル「ｓｆ６」５１８をページ５０５のファイル７１８に移動する。ファイル「ｓｆ３」５１４は、高速ストレージ媒体１１７を必要とするので、ページ５０５は高速ストレージ媒体１１７に割り当てられていなければならなかったが、今やファイル「ｓｆ３」７１４はページ５０１にあるので、ページ５０５を中速のストレージ媒体１１７に割り当てることができる。
【００４５】
００６１    更に、割当て管理プログラム１２６は、フロー６２０により大ファイル「ｌｆ１」５１３及び「ｌｆ２」５１７をページバウンダリに配列するためにファイル７１３と７１７に移動する。その結果、ページ５０３は、ファイル「ｌｆ１」７１３によって完全に占有され、ページ５０６，５０７はファイル「ｌｆ２」７１７によって占有される。このように、割当て管理プログラム１２６は、これらのページ５０３、５０６、５０７の割当てをページ管理プログラム１１５に依頼する。このプロセスの結果、各小ファイルは適切なストレージ媒体１１７に割り当てられ、大ファイルに対するサブファイル（「ページ毎」を意味する）階層ストレージ管理が実行され、この結果、階層ストレージ管理の有効性が向上する。
【００４６】
００６２    II．第２の実施例
【００４７】
００６３    Ａ．システム構成
【００４８】
００６４    図８ａ及び図８ｂは、本発明の第２の実施例に従って、本発明の方法及び装置が適用可能な情報システム８００のハードウェア構成の例を示す。図８ａのストレージシステム８７０は、図１ａのストレージシステム１７０とほぼ同じであるが、図８ｂのファイルサーバ８２０は、図１ｂのストレージシステム１７０のファイルサーバ１２０とは異っている。ファイルサーバ８２０は、ファイルサーバ１２０の割当て管理プログラム１２６に代って、そのメモリ８２２内にファイルレベルＨＳＭ（階層型ストレージ管理）プログラム８２６及びボリューム情報プログラム８２７を有する。
【００４９】
００６５    図８ｃ及び図８ｄは、情報システム８０１のハードウェア構成の別の例を示す。ストレージシステム８７１の図８ｄのファイルサーバ８８０もまた、図１ｅのファイルサーバ１８０の割当て管理プログラム１２６の代りにそのメモリ８８２内にファイルレベルＨＳＭプログラム８２６を有する。
【００５０】
００６６    図８ｅ及び図８ｆは、情報システム８０２のハードウェア構成のもう一つの例を示す。情報システム８０２の図８ｆのアプリケーションサーバ８９０もまた、図１ｇのアプリケーションサーバ１９０の割当て管理プログラム１２６の代りに、そのメモリ８９２内にファイルレベルＨＳＭプログラム８２６を有する。
【００５１】
００６７    第２の実施例に関する以下の説明は、図８ａ及び図８ｂの情報システム８００に基づくが、第２の実施例は他の２種の情報システム８０１，８０２に対しても適応可能である。
【００５２】
００６８    Ｂ．ファイルレベルＨＳＭ
【００５３】
００６９    ファイルレベルＨＳＭ（階層型ストレージ管理）は階層ストレージ管理を実現するための機能である。ストレージ装置によってボリュームレイヤ内で実行されるページベースの階層ストレージ管理とは反対に、ファイルレベルＨＳＭはファイルサーバによってファイルシステムレイヤ内で実行される。ファイルレベルＨＳＭを実行できるファイルサーバは異なるストレージ媒体１１７内に実際に保存されている多数のファイルの統合ファイルツリー表示を提供することができる。米国特許Ｎｏ．７，３３０，９５０はそのようなファイルレベルＨＳＭの実装方法を開示している。
【００５４】
００７０    図９は、ファイルレベルＨＳＭ９００の例を示す。本例のファイルレベルＨＳＭ９００は三個のボリューム９１１、９２１、及び９３１を含む。ファイルシステムツリー９１０は、高速ストレージ媒体９１２から構成される高速ボリューム９１１上に生成され、ファイルシステムツリー９２０は中速ストレージ媒体９２２から構成される中速ボリューム９２１上に生成され、ファイルシステムツリー９３０は、低速（であるが安価な）ストレージ媒体９３２から構成される低速ボリューム９３０上に生成される。ファイルレベルＨＳＭプログラム８２６は統合ファイルシステム９０１を表示する。この統合ファイルシステム９０１は、ファイルシステムツリー９１０、９２０、及び９３０内のすべてのファイルを含む。この状況において、ファイルがパス名やファイル名を変えずにファイルシステムツリー間で移動した場合でも、統合ファイルシステム９０１は不変である。従って、この特徴は、ファイルレベルＨＳＭプログラム８２６がファイルを適切なボリュームの適切なファイルシステムに移動できるので、ファイル毎の階層ストレージ管理を可能にする。これらのファイルシステム間のファイル移動を「移行」と呼ぶ。
【００５５】
００７１    ファイルレベルＨＳＭには長所と短所がある。ファイルレベルＨＳＭはページサイズよりも小さいファイルに対しては、移行に多くの時間がかからないのでうまく動作する。しかしながら、大ファイルはボリューム間で大量のデータをコピーしなければならず、多くの時間がかかるので移行するのが難しい。更に、たとえ大ファイル内部のアクセス頻度がセクタ間で異っていても、全データが同じボリュームに置かれることになる。
【００５６】
００７２    Ｃ．ファイルレベルＨＳＭとページベースＴＳＭの連携
【００５７】
００７３    本実施例はファイルレベルＨＳＭとページベースＴＳＭの連携方法を明らかにする。図１０において、ページベースＴＳＭを有するファイルレベルＨＳＭ１０００は連携の構成例を示す。統合ファイルシステム１００１はファイルレベルＨＳＭ９００の例のように高速ファイルシステム１０１０、中速ファイルシステム１０２０、安価なファイルシステム１０３０を統合し、同様に混合ファイルシステム１０４０を統合する。混合ファイルシステム１０４０は多様なストレージ媒体９１２、９２２、９３２を有する混合ボリューム１０４１上に構築される。ストレージ装置１１０は、ファイルサーバ８２０にページベースＴＳＭを有する混合ボリューム１０４１を供給する。
【００５８】
００７４    本構成において、ボリューム情報プログラム８２７はストレージ装置１１０内のページ管理プログラム１１５と交信し、高速、低速、混合などのボリューム速度情報を含むボリュームの特性を取得する。この情報を用いてファイルレベルＨＳＭプログラム８２６は、ファイル生成やファイル書き込みなどの契機又は、定期的にあるいはその他のタイミングで図１１に示すフロー１１００を実行する。最初に、ファイルレベルＨＳＭプログラム８２６は、ターゲットファイルがページサイズよりも大きいか否かをチェックする（ステップ１１１０）。ファイルがページサイズよりも小さい場合、ファイルレベルＨＳＭプログラム８２６は本来のファイルレベルＨＳＭプログラム８２６に従ってファイルを混合ボリューム以外の適切なボリュームに割り当てて移動する（ステップ１１２０）。例えば、ファイルレベルＨＳＭプログラム８２６は、頻繁にアクセスされるファイルを高速ボリューム９１１に割り当てる。ファイルがページファイルよりも大きい場合、ファイルレベルＨＳＭプログラム８２６は、ファイルを混合ボリューム１０４１に移動する（ステップ１１３０）。混合ボリューム１０４１がページベースＴＳＭ機能により実現されている場合、ファイルサーバ８８０による追加プロセスなしに、サブファイルＴＳＭがストレージ装置１１０によってファイルに対して自動的に適用される。
【００５９】
００７５    図１２は、ボリューム５００に適用したファイルレベルＨＳＭプログラムのプロセスフロー１１００の結果の一つの例１２００を示す。フロー１１００の後、高性能を必要とするファイル「ｓｆ１」５１１、「ｓｆ３」５１４及び「ｓｆ５」５１６は、高速ボリューム１２１０にファイル１２１１、１２１２、及び１２１３として保存される。時々アクセスされるファイル「ｓｆ４」５１５と「ｓｆ６」５１８は、中速ボリューム１２２０にファイル１２２１と１２２２として保存される。滅多にアクセスされないファイル「ｓｆ２」５１２は、低速（であるが安価な）ボリューム１２３０にファイル１２３１として保存される。大ファイル「ｌｆ１」５１３及び「ｌｆ２」５１７は、混合ボリューム１２４０にファイル１２５０と１２５１として保存される。これらの大ファイル１２５０，１２５１は、ストレージ装置１１０のページベースＴＳＭ機能によるサブファイルＴＳＭの適用済みファイルである。本発明を使用して、各小ファイルは適切なストレージ媒体１１７に保存され、サブファイルＴＳＭは大ファイルに対して適用される。
【００６０】
００７６    当然ながら、図１及び図８に示すシステム構成は本発明が実装可能な情報システムの全くの典型例であり、本発明は特定のハードウェア構成に限定されるものでない。本発明を実装するコンピュータ及びストレージシステムは前述の発明を実装するために使用されるモジュール、プログラム及びデータ構造を保存し読み出すことができる公知のＩ／Ｏデバイス（例えばＣＤとＤＶＤドライブ、フロッピー（登録商標）ディスクドライブ、ハードドライブなど）を持つこともできる。これらのモジュール、プログラム及びデータ構造はそのようなコンピュータ読み取り可能媒体上でコード化することができる。例えば、本発明のデータ構造は、本発明で使用されるプログラムを乗せた一つ以上のコンピュータ読み取り可能媒体とは独立なコンピュータ読み取り可能媒体に保存することができる。このシステムのコンポーネントはディジタルデータ通信の任意の形態又は媒体、例えば通信ネットワークにより、相互接続可能である。通信ネットワークの例には、ローカルエリアネットワーク、広域ネットワーク、例えばインターネット、無線ネットワーク、ストレージエリアネットワーク、などが含まれる。
【００６１】
００７７    本説明においては、本発明の完全な理解を可能にするために説明の目的で数多くの詳細が述べられている。しかしながら、これらの個別の詳細のすべてが本発明を実施するために必要とされるわけではないことは当業者には明白であろう。更に、本発明は通常、フローチャート、フローダイアグラム、構造ダイアグラム、又はブロックダイアグラムとして描かれるプロセスとして記述できることも言うまでもない。フローチャートは動作をシーケンシャルプロセスとして記述できるが、多くの動作は並行して又は同時に実行可能である。更に、動作の順番は入れ替えることができる場合もある。
【００６２】
００７８    この技術分野では公知のように、上述の動作はハードウェア、ソフトウェア、又はソフトウェアとハードウェアの或る組み合わせで実行できる。本発明の実施例の種々の態様は回路や論理デバイス（ハードウェア）を用いて実装可能であるが、他の態様ではマシーン読取可能媒体（ソフトウェア）上に保存され、もしプロセッサが実行すれば、プロセッサに本発明の実施例の実行方法を実現させる命令を用いて実装可能である。更に、本発明のいくつかの実施例は専らハードウェアで実現可能であるが、他の実施例では専らソフトウェアで実現可能である。更に、記述された種々の機能は単一の装置で実現可能であるが、多様な方法で多数のコンポーネントに亘って拡張することも可能である。ソフトウェアにより実現する場合は、本方法はコンピュータ読み取り可能媒体上に保存された命令に基づいて汎用コンピュータのようなプロセッサによって実行可能である。もし必要ならば、命令は圧縮及び／又は暗号化フォーマットで媒体上に保存可能である。
【００６３】
００７９    前述から、本発明はストレージシステムに於ける各ストレージ媒体へのページとファイル割当てを制御する方法、装置及びコンピュータ読み取り可能媒体上に保存されるプログラムを提供することが明らかであろう。更に、本明細書において具体的な実施例が示され説明されてきたが、同じ目的を達成することが予想できる任意の構成は、開示された具体的な実施例を代替可能であることが当業者には明らかであろう。ここでの開示は本発明の任意且つあらゆる改編や変形をもカバーするように意図されており、以下の請求項で使用される条項は、本発明を明細書に開示された個別の実施例に限定するように解釈してはならないことを理解しなければならない。むしろ、本発明の範囲は以下の請求項によって完全に決定されるべきであって、本請求項が権利を有する全範囲の等価物も含めて、確立した請求項解釈論に従って解釈されるべきである。
【図１ａ】
0005530863.tif 000002
【図１ｂ】
0005530863.tif 000003
【図１ｃ】
0005530863.tif 000004
【図１ｄ】
0005530863.tif 000005
【図１ｅ】
0005530863.tif 000006
【図１ｆ】
0005530863.tif 000007
【図１ｇ】
0005530863.tif 000008
【図２】
0005530863.tif 000009
【図３】
0005530863.tif 000010
【図４】
0005530863.tif 000011
【図５】
0005530863.tif 000012
【図６】
0005530863.tif 000013
【図７】
0005530863.tif 000014
【図８ａ】
0005530863.tif 000015
【図８ｂ】
0005530863.tif 000016
【図８ｃ】
0005530863.tif 000017
【図８ｄ】
0005530863.tif 000018
【図８ｅ】
0005530863.tif 000019
【図８ｆ】
0005530863.tif 000020
【図９】
0005530863.tif 000021
【図１０】
0005530863.tif 000022
【図１１】
0005530863.tif 000023
【図１２】
0005530863.tif 000024