(57)【特許請求の範囲】
【請求項１】
所定のアクセス速度の第１の記憶媒体と当該第１の記憶媒体よりもアクセス速度が低い第２の記憶媒体との間でデータを移動させる際のデータ単位であるページそれぞれについてアクセスの有無を検出するとともに、前記ページが所定数連続して形成されるページセットによりアクセス頻度を計測するアクセス監視手段と、
前記アクセス監視手段により計測された前記ページセットに対するアクセス頻度の計測結果に基づいて、前記ページセットの中から前記第１の記憶媒体に格納すべき頻度と特定されるアクセス頻度のページセットである対象ページセットを決定する対象ページセット決定手段と、
前記対象ページセットに含まれており、かつ、前記第２の記憶媒体に格納されており、かつ、アクセスが行われたページを、前記第１の記憶媒体に移動させるべき移動対象データとして検出する移動対象データ検出手段と、
前記移動対象データを前記第２の記憶媒体から前記第１の記憶媒体に移動させるデータ移動手段と、
前記第１の記憶媒体の格納先アドレスと、前記第２の記憶媒体の格納先アドレスと、アクセス頻度情報を前記ページセットごとに対応付けたページセット管理情報と、格納先の記憶媒体を示す格納先記憶媒体情報と、格納先アドレスと、アクセスの有無を示すアクセス有無情報を前記ページごとに対応付けたページ管理情報を保持する作業メモリを備え、
前記アクセス監視手段は、前記ページのアクセスの有無の検出結果に応じて前記アクセス有無情報を更新するともに、前記ページセットのアクセス頻度の計測結果に応じて前記アクセス頻度情報を更新し、
前記対象ページセット決定手段は、前記アクセス頻度情報に基づいて、前記対象ページセットを決定し、
前記移動対象データ検出手段は、前記格納先記憶媒体情報に基づいて前記第２の記憶媒体に格納されているページを検出し、前記アクセス有無情報に基づいて前記アクセスが行われたページを検出する、
ことを特徴とする記憶媒体制御装置。
【請求項２】
所定のアクセス速度の第１の記憶媒体と、当該第１の記憶媒体よりもアクセス速度が低い第２の記憶媒体とからなる記憶手段と、
前記第１の記憶媒体と前記第２の記憶媒体との間でデータを移動させる際のデータ単位であるページそれぞれについてアクセスの有無を検出するとともに、前記ページが所定数連続して形成されるページセットによりアクセス頻度を計測するアクセス監視手段と、
前記アクセス監視手段により計測された前記ページセットに対するアクセス頻度の計測結果に基づいて、前記ページセットの中から前記第１の記憶媒体に格納すべき頻度と特定されるアクセス頻度のページセットである対象ページセットを決定する対象ページセット決定手段と、
前記対象ページセットに含まれており、かつ、前記第２の記憶媒体に格納されており、かつ、アクセスが行われたページを、前記第１の記憶媒体に移動させるべき移動対象データとして検出する移動対象データ検出手段と、
前記移動対象データを前記第２の記憶媒体から前記第１の記憶媒体に移動させるデータ移動手段と、
前記第１の記憶媒体の格納先アドレスと、前記第２の記憶媒体の格納先アドレスと、アクセス頻度情報を前記ページセットごとに対応付けたページセット管理情報と、格納先の記憶媒体を示す格納先記憶媒体情報と、格納先アドレスと、アクセスの有無を示すアクセス有無情報を前記ページごとに対応付けたページ管理情報を保持する作業メモリを備え、
前記アクセス監視手段は、前記ページのアクセスの有無の検出結果に応じて前記アクセス有無情報を更新するともに、前記ページセットのアクセス頻度の計測結果に応じて前記アクセス頻度情報を更新し、
前記対象ページセット決定手段は、前記アクセス頻度情報に基づいて、前記対象ページセットを決定し、
前記移動対象データ検出手段は、前記格納先記憶媒体情報に基づいて前記第２の記憶媒体に格納されているページを検出し、前記アクセス有無情報に基づいて前記アクセスが行われたページを検出する、
を備えることを特徴とする記憶装置。
【請求項３】
所定のアクセス速度の第１の記憶媒体と当該第１の記憶媒体よりもアクセス速度が低い第２の記憶媒体との間でデータを移動させる際のデータ単位であるページそれぞれについてアクセスの有無を検出するとともに、前記ページが所定数連続して形成されるページセットによりアクセス頻度を計測するアクセス監視手順と、
前記アクセス監視手順により計測された前記ページセットに対するアクセス頻度の計測結果に基づいて、前記ページセットの中から前記第１の記憶媒体に格納すべき頻度と特定されるアクセス頻度のページセットである対象ページセットを決定する対象ページセット決定手順と、
前記対象ページセットに含まれており、かつ、前記第２の記憶媒体に格納されており、かつ、アクセスが行われたページを、前記第１の記憶媒体に移動させるべき移動対象データとして検出する移動対象データ検出手順と、
前記移動対象データを前記第２の記憶媒体から前記第１の記憶媒体に移動させるデータ移動手順と、を有し、
作業メモリに、前記第１の記憶媒体の格納先アドレスと、前記第２の記憶媒体の格納先アドレスと、アクセス頻度情報を前記ページセットごとに対応付けたページセット管理情報と、格納先の記憶媒体を示す格納先記憶媒体情報と、格納先アドレスと、アクセスの有無を示すアクセス有無情報を前記ページごとに対応付けたページ管理情報を保持し、
前記アクセス監視手順において、前記ページのアクセスの有無の検出結果に応じて前記アクセス有無情報を更新するともに、前記ページセットのアクセス頻度の計測結果に応じて前記アクセス頻度情報を更新し、
前記対象ページセット決定手順において、前記アクセス頻度情報に基づいて、前記対象ページセットを決定し、
前記移動対象データ検出手順において、前記格納先記憶媒体情報に基づいて前記第２の記憶媒体に格納されているページを検出し、前記アクセス有無情報に基づいて前記アクセスが行われたページを検出する、
ことを特徴とする記憶媒体制御方法。
【請求項４】
記憶媒体制御装置に、
所定のアクセス速度の第１の記憶媒体と当該第１の記憶媒体よりもアクセス速度が低い第２の記憶媒体との間でデータを移動させる際のデータ単位であるページそれぞれについてアクセスの有無を検出するとともに、前記ページが所定数連続して形成されるページセットによりアクセス頻度を計測するアクセス監視手順と、
前記アクセス監視手順により計測された前記ページセットに対するアクセス頻度の計測結果に基づいて、前記ページセットの中から前記第１の記憶媒体に格納すべき頻度と特定されるアクセス頻度のページセットである対象ページセットを決定する対象ページセット決定手順と、
前記対象ページセットに含まれており、かつ、前記第２の記憶媒体に格納されており、かつ、アクセスが行われたページを、前記第１の記憶媒体に移動させるべき移動対象データとして検出する移動対象データ検出手順と、
前記移動対象データを前記第２の記憶媒体から前記第１の記憶媒体に移動させるデータ移動手順と、
作業メモリに、前記第１の記憶媒体の格納先アドレスと、前記第２の記憶媒体の格納先アドレスと、アクセス頻度情報を前記ページセットごとに対応付けたページセット管理情報と、格納先の記憶媒体を示す格納先記憶媒体情報と、格納先アドレスと、アクセスの有無を示すアクセス有無情報を前記ページごとに対応付けたページ管理情報を保持させる手順と、
を実行させ、
前記アクセス監視手段は、前記ページのアクセスの有無の検出結果に応じて前記アクセス有無情報を更新するともに、前記ページセットのアクセス頻度の計測結果に応じて前記アクセス頻度情報を更新し、
前記対象ページセット決定手段は、前記アクセス頻度情報に基づいて、前記対象ページセットを決定し、
前記移動対象データ検出手段は、前記格納先記憶媒体情報に基づいて前記第２の記憶媒体に格納されているページを検出し、前記アクセス有無情報に基づいて前記アクセスが行われたページを検出する、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アクセス性能が異なる複数の記憶媒体を制御する記憶媒体制御装置と、この記憶媒体制御装置に上記複数の記憶媒体が備えられた記憶装置に関する。また、上記記憶媒体制御装置に対応する記憶媒体制御方法と、記憶媒体制御装置に当該記憶媒体制御方法に対応する機能を実現させるためのプログラムに関する。
【背景技術】
【０００２】
近年、情報通信技術の進化やその適用分野の拡大に伴って、情報処理システムが扱うデータ量は著しく増加してきている。このような背景に対応して、データを格納するストレージ装置に関すれば、記憶容量の増加やアクセス性能の高速化が図られている状況にある。
【０００３】
ストレージ装置の記憶容量を増加させるために、例えばストレージ装置内部でデータを格納する記憶媒体数を増加させるという手法が知られている。この手法は、記憶容量を増加させる手法として最も容易なものの１つであり多くのストレージ装置において採用されている。このようなストレージ装置では、内部の複数の記憶媒体について外部からは単一の大容量の記憶領域としてみえるように管理することが行われる。
【０００４】
また、ストレージ装置の大容量化に伴って、アクセスの即時性、つまり、アクセス性能も向上させることが要求される。このための最も容易な手法の１つとして、例えばストレージ装置が備える記憶媒体自体のアクセス性能を向上させるということが広く行われている。また、ＲＡＩＤ０やＲＡＩＤ５のように複数の記憶媒体に同時並行でアクセスするストライピングを採用することによりアクセス性能の向上を図るという手法も知られている。
【０００５】
しかし、ストレージ装置が備える記憶媒体について大容量化と高いアクセス性能を両立させることは、コストや技術的な問題から困難であることも知られている。具体的に、多くのストレージ装置が記憶媒体として備えるＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）は、記憶容量が大きい一方でアクセス性能は低い。ＨＤＤは、特に記憶領域上で非連続なデータに対するアクセス（ランダムアクセス）を継続的に行うような場合にアクセス性能が相当に低下する。
【０００６】
そこで、ＨＤＤより高いアクセス性能の記憶媒体を使用することも行われるようになっていきている。このような記憶媒体の１つとして、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）が知られている。ＳＳＤの多くはＮＡＮＤフラッシュメモリなどの半導体記憶素子を使用しており、ＨＤＤより高いアクセス性能を持つ。しかし、このＳＳＤのような記憶媒体は、一般にＨＤＤよりも記憶容量が小さく高価である。これらＨＤＤやＳＳＤに限らず、一般的に、容量が大きく安価な記憶媒体はアクセス性能が低く、アクセス性能が高い記憶媒体は容量が小さく高価であるという傾向にある。
【０００７】
上記の問題への対策として、ＨＳＭ（Ｈｉｅｒａｒｃｈｉｃａｌ  Ｓｔｏｒａｇｅ  Ｍａｎａｇｅｍｅｎｔ）と呼ばれる技術が知られている。一般的に、情報処理システムが扱うデータのうち、アクセス頻度の高いデータもしくは高いアクセス性能を求められるデータは全体の一部である。ＨＳＭは、この点に着目し、アクセス性能は高いが高価な記憶媒体と、アクセス性能が低いが安価で大容量化が容易な記憶媒体とを使用して例えば１つの記憶領域として管理しようというものである。
【０００８】
そして、ＨＳＭを適用したストレージ装置では、アクセス性能の高い小容量の記憶媒体の記憶領域にアクセス頻度の高いデータを格納し、残るデータをアクセス性能の低い記憶媒体の記憶領域に格納するようにして制御を行う。これにより、安価な記憶媒体が持つ大容量および低コストであるという利点と、高価な記憶媒体が持つ高いアクセス性能という利点の両者を最大限に発揮させることができる。
【０００９】
ＨＳＭでは、アクセス頻度の高いデータを所定のデータ単位で検出するのに基づいて、アクセス性能が高い小容量の記憶媒体に格納すべきデータを決定する。具体的に、ブロック単位によりデータのアクセスが行われるストレージ装置の場合、高速で小容量の記憶媒体と低速で大容量の記憶媒体との間のデータの移動は、一定数の連続するブロックにより形成されるページを単位として行われる。
【００１０】
特許文献１には、ＲＡＭとＲＯＭ（ＲＡＭのほうがアクセス速度が高い）を備えるシステムとして次のような構成が知られている。つまり、ページ単位でアクセス頻度を監視した情報に基づいてメモリの配置変換情報を決定する。そして、配置変換情報に基づいてメモリの使用頻度に応じたメモリの再配置と、これに対応するようにメモリマネージメントユニットのページテーブルのアドレス情報を書き換えようというものである（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００５−２１６０５３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
上記ページは、ストレージ装置が外部のホストに対してアクセス（入出力）を許可するすべての記憶領域に対して定義されるため、アクセス頻度の計測は、記憶領域におけるすべてのページについて行う必要がある。
【００１３】
また、ＨＳＭにおいては、記憶媒体ごとのアドレスと、各記憶媒体を統合した全体記憶領域に対するアドレス空間との対応関係の管理が必要である。より具体的には、例えばＨＳＭによる構成のもとで任意のページのデータにアクセスするためには、上記アドレス空間上の各ページを格納（記憶）している記憶媒体自体を示すアドレスと、記憶媒体におけるページの格納先アドレスが必要になる。
【００１４】
ストレージ装置の記憶領域におけるページ数は、外部のホストに対してストレージ装置が提供を許可する記憶容量に比例して増加する。また、１ページあたりの容量（サイズ）の増加に応じて、記憶領域におけるページ数は反比例する。
【００１５】
ストレージ装置において１ページあたりの容量の増加を抑えて小容量のページ単位によりＨＳＭを実現するためには、膨大な数のページについてのアクセス頻度の計測およびアドレス情報の管理が必要になる。つまり、ページのサイズを小さくした場合に、ページ管理に必要なアドレスやアクセス頻度情報の容量が増大してしまうという問題が生じる。
【００１６】
具体例として、１ページあたりの管理情報の容量を６４ｂｙｔｅ、ストレージの記憶領域の総容量を１００ＴＢとした場合、ページサイズが１ＧＢであれば管理情報の総容量は、
１００ＴＢ／１ＧＢ×６４ｂｙｔｅ＝６４００ＫＢ
であり、約６．４ＭＢとなる。一方、１ページのサイズが１ＭＢである場合は、管理情報の総容量は、
１００ＴＢ／１ＭＢ×６４ｂｙｔｅ＝６４００ＭＢ
となり、約６．４ＧＢにまでサイズが増加する。
【００１７】
上記のような記憶媒体の容量の増加に伴う管理情報のサイズの増加を回避するには、例えば１ページあたりのサイズを大きくして、記憶領域におけるページ数を少なくすればよい。この手法はページサイズの変更のみで実現が可能であり、複雑な制御が不要ではある。しかし、ページ数を少なくするのに応じては１ページあたりのサイズが増加するため、きめ細かなデータの制御を行えなくなるという問題を生じる。例えば、アクセス頻度の高いページにおけるすべてのブロックのアクセス頻度が高いとは限らず、実際にアクセス頻度の高いブロックはページの一部であるという場合は当然に生じ得る。このような場合であっても、記憶媒体間でのデータの移動はページ単位であるために、高頻度でアクセスされるブロックが一部のみのページ全体を高速で小容量の記憶媒体に移動させることになってしまう。つまり、高速で小容量の記憶媒体の記憶領域を有効に活用することができないという課題を抱えることになる。
【００１８】
そこで、本発明は、上述の課題を解決することのできる記憶媒体制御装置、記憶装置、記憶媒体制御方法、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明は、上述の課題を解決すべくなされたもので、所定のアクセス速度の第１の記憶媒体と当該第１の記憶媒体よりもアクセス速度が低い第２の記憶媒体との間でデータを移動させる際のデータ単位であるページそれぞれについてアクセスの有無を検出するとともに、前記ページが所定数連続して形成されるページセットによりアクセス頻度を計測するアクセス監視手段と、前記アクセス監視手段により計測された前記ページセットに対するアクセス頻度の計測結果に基づいて、前記ページセットの中から前記第１の記憶媒体に格納すべき頻度と特定されるアクセス頻度のページセットである対象ページセットを決定する対象ページセット決定手段と、前記対象ページセットに含まれており、かつ、前記第２の記憶媒体に格納されており、かつ、アクセスが行われたページを、前記第１の記憶媒体に移動させるべき移動対象データとして検出する移動対象データ検出手段と、前記移動対象データを前記第２の記憶媒体から前記第１の記憶媒体に移動させるデータ移動手段と、前記第１の記憶媒体の格納先アドレスと、前記第２の記憶媒体の格納先アドレスと、アクセス頻度情報を前記ページセットごとに対応付けたページセット管理情報と、格納先の記憶媒体を示す格納先記憶媒体情報と、格納先アドレスと、アクセスの有無を示すアクセス有無情報を前記ページごとに対応付けたページ管理情報を保持する作業メモリを備え、前記アクセス監視手段は、前記ページのアクセスの有無の検出結果に応じて前記アクセス有無情報を更新するともに、前記ページセットのアクセス頻度の計測結果に応じて前記アクセス頻度情報を更新し、前記対象ページセット決定手段は、前記アクセス頻度情報に基づいて、前記対象ページセットを決定し、前記移動対象データ検出手段は、前記格納先記憶媒体情報に基づいて前記第２の記憶媒体に格納されているページを検出し、前記アクセス有無情報に基づいて前記アクセスが行われたページを検出する、ことを特徴とする記憶媒体制御装置である。
【００２０】
また、本発明は、所定のアクセス速度の第１の記憶媒体と、当該第１の記憶媒体よりもアクセス速度が低い第２の記憶媒体とからなる記憶手段と、前記第１の記憶媒体と前記第２の記憶媒体との間でデータを移動させる際のデータ単位であるページそれぞれについてアクセスの有無を検出するとともに、前記ページが所定数連続して形成されるページセットによりアクセス頻度を計測するアクセス監視手段と、前記アクセス監視手段により計測された前記ページセットに対するアクセス頻度の計測結果に基づいて、前記ページセットの中から前記第１の記憶媒体に格納すべき頻度と特定されるアクセス頻度のページセットである対象ページセットを決定する対象ページセット決定手段と、前記対象ページセットに含まれており、かつ、前記第２の記憶媒体に格納されており、かつ、アクセスが行われたページを、前記第１の記憶媒体に移動させるべき移動対象データとして検出する移動対象データ検出手段と、前記移動対象データを前記第２の記憶媒体から前記第１の記憶媒体に移動させるデータ移動手段と、前記第１の記憶媒体の格納先アドレスと、前記第２の記憶媒体の格納先アドレスと、アクセス頻度情報を前記ページセットごとに対応付けたページセット管理情報と、格納先の記憶媒体を示す格納先記憶媒体情報と、格納先アドレスと、アクセスの有無を示すアクセス有無情報を前記ページごとに対応付けたページ管理情報を保持する作業メモリを備え、前記アクセス監視手段は、前記ページのアクセスの有無の検出結果に応じて前記アクセス有無情報を更新するともに、前記ページセットのアクセス頻度の計測結果に応じて前記アクセス頻度情報を更新し、前記対象ページセット決定手段は、前記アクセス頻度情報に基づいて、前記対象ページセットを決定し、前記移動対象データ検出手段は、前記格納先記憶媒体情報に基づいて前記第２の記憶媒体に格納されているページを検出し、前記アクセス有無情報に基づいて前記アクセスが行われたページを検出する、を備えることを特徴とする記憶装置である。
【発明の効果】
【００２１】
本発明によれば、ＨＳＭに対応して複数の記憶媒体に対する制御を行う記憶媒体制御装置として、記憶媒体間でのデータ移動単位のサイズを増加させることなく、データを管理するための管理情報の総容量の増加を有効に抑制できるという効果が得られる。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施の形態としての情報処理システムの構成例を示す図である。
【図２】本発明の実施の形態としてのストレージ１００の構成例を示す図である。
【図３】本発明の実施の形態としてのページセット管理テーブル１６１およびページ管理テーブル１６２の構造例を示す図である。
【図４】本発明の実施の形態としての整列順データ１６３の構造例を示す図である。
【図５】本発明の実施の形態としての高速記憶媒体１１１から低速記憶媒体１１２へのデータ移動を模式的に示す図である。
【図６】本発明の実施の形態としての高速記憶媒体１１１から低速記憶媒体１１２へのデータ移動のための処理タイミング例を示す図である。
【図７】本発明の実施の形態としてのストレージ１００が実行する、アクセス頻度を計測し、高速記憶媒体配置対象のページセットを選択するまでの処理手順例を示す図である。
【図８】本発明の実施の形態としてのストレージ１００が実行する、高速記憶媒体へのページ移動のための処理手順例を示す図である。
【図９】ＨＳＭに対応するストレージにおいて想定されるページ管理テーブル４００の例を、各項目のサイズとともに示す図である。
【図１０】本発明の実施の形態としてのページセット管理テーブル１６１およびページ管理テーブル１６２の例を各項目のサイズとともに示す図である。
【発明を実施するための形態】
【００２３】
＜情報処理システムの構成＞
図１は、本発明の実施の形態における情報処理システムの構成例を示している。この図に示す情報処理システムは、ストレージ１００と複数のホスト２００をネットワーク３００経由で通信可能に接続して構成される。
【００２４】
ストレージ１００は、ＨＳＭ（Ｈｉｅｒａｒｃｈｉｃａｌ  Ｓｔｏｒａｇｅ  Ｍａｎａｇｅｍｅｎｔ）に対応してアクセスが高速な記憶媒体と低速な記憶媒体とを組み合わせた記憶部を備えて構成される。
【００２５】
ホスト２００は、例えばネットワーク３００に接続された端末装置であり、ネットワーク３００経由でストレージ１００にアクセスして、ストレージ１００に記憶されているデータを取得することができる。このために、ホスト２００は、ネットワーク３００経由でストレージ１００に対してアクセス要求を送信する。このアクセス要求に応じてストレージ１００は、要求されたデータを記憶部から読み出して、要求元のホスト２００に送信する。つまり、ストレージ１００は、データ配信サーバとして機能している。
【００２６】
＜ストレージの構成＞
図２は、ストレージ１００の構成例を示している。ストレージ１００は、記憶部１１０、アクセス監視部１２０、対象ページセット決定部１３０、移動対象ページ検出部１４０、データ移動部１５０、作業メモリ１６０、通信部１７０およびアクセス制御部１８０を備える。
【００２７】
記憶部１１０は、ホスト２００からアクセスに応じて送信すべきデータを記憶する。この記憶部１１０は、ＨＳＭに対応しており、高速記憶媒体１１１と低速記憶媒体１１２を備える。高速記憶媒体１１１は、アクセス性能として、一定以上の速度によるアクセスが可能な記憶媒体である。また、低速記憶媒体１１２は、高速記憶媒体１１１よりもアクセス速度が低速な記憶媒体である。
【００２８】
高速記憶媒体１１１および低速記憶媒体１１２に採用される記憶デバイスとしては特に限定されるものではないが、一例として、高速記憶媒体１１１にはＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）を採用することが考えられる。ＳＳＤにはＮＡＮＤフラッシュメモリを使用したものが広く知られている。また、低速記憶媒体１１２には、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）を採用することが考えられる。
【００２９】
上記の例からも分かるように、一般的に、高速記憶媒体１１１は、低速記憶媒体１１２よりも容量単価が高く、したがって、高速記憶媒体１１１として実装される容量は、低速記憶媒体１１２よりも小さくなる。また、高速記憶媒体１１１と低速記憶媒体１１２の間では、アクセス頻度に基づいてデータの移動が行われるのであるが、このデータの移動はページ単位で行われる。記憶部１１０に対するデータのアクセスはブロック単位で行われるものとする。ページは、アドレスが連続する一定数のブロックの集合として形成される。
【００３０】
さらに、本実施の形態においては、高速記憶媒体１１１および低速記憶媒体１１２から成る記憶部１１０の記憶容量全体を、アドレスが連続する一定数のページの集合から成るページセットに分割し、このページセットによってもデータを管理可能とされている。
【００３１】
アクセス監視部１２０は、アクセス制御部１８０におけるアクセス要求に応答した処理状況を監視するもので、アクセス状況として、１つにはページ単位のアクセスを検出する。アクセス監視部１２０は、この検出結果に基づいて、作業メモリ１６０におけるページ管理テーブル１６２に登録されているページのアクセスフラグを更新する。アクセスフラグは、対応ページに対するアクセスの有無を示す。
【００３２】
また、アクセス監視部１２０は、アクセス状況として、アクセス頻度をページ単位ではなくページセットの単位で計測する。アクセス監視部１２０は、計測したアクセス頻度の情報を作業メモリ１６０におけるページセット管理テーブル１６１に対して書き込む。なお、ページセット管理テーブル１６１およびページ管理テーブル１６２の構造例については後述する。また、アクセス監視部１２０は、アクセスが発生するのに応じて、このアクセスされたデータに該当するページ（アクセスページ）を移動対象ページ検出部１４０に通知する。
【００３３】
対象ページセット決定部１３０は、ページセット管理テーブル１６１が格納するページセットごとのアクセス頻度を任意の時間間隔で読み出して取得する。そして、この取得したアクセス頻度に基づいて、高速記憶媒体１１１を格納先とするページを含むページセット(対象ページセット)を決定する。対象ページセット決定部１３０は、対象ページセットを決定する過程において、ページセットをアクセス頻度の高い順に整列する処理を実行する。そして、この整列結果からページセットをアクセス頻度が高い順に整列した整列順データ１６３を生成し、作業メモリ１６０に記憶させる。また、対象ページセット決定部１３０は、対象ページセットの決定結果に応じて、ページセット管理テーブル１６１の内容も更新する。なお、対象ページセット決定部１３０による格納先記憶媒体の決定手順については後述する。
【００３４】
移動対象ページ検出部１４０は、移動対象ページを検出する。移動対象ページとは、その格納先について、低速記憶媒体１１２から高速記憶媒体１１１に移動させるべきページをいう。移動対象ページ検出部１４０は、アクセス要求が行われたページとして、対象ページセットに含まれており、かつ、低速記憶媒体１１２に記憶されているという条件を満たすページを移動対象ページとして検出する。また、移動対象ページ検出部１４０は、検出した移動対象ページの移動をデータ移動部１５０に対して指示する。
【００３５】
例えばページセットの単位で高速記憶媒体１１１に移動させるというデータ移動制御とすることも可能ではある。しかし、ページセットのアクセス頻度が高いとしても、そのページセットに含まれる各ページのアクセス頻度は均一ではなく、したがって、アクセス頻度の高いページセットにおいてアクセス頻度の低いページが含まれる可能性がある。このような理由から、ページセットの単位でデータの移動を行うことは、アクセス頻度の低い相当数のページも高速記憶媒体１１１に格納してしまうことになり、小容量の高速記憶媒体１１１の利用効率を下げることにつながる。そこで、本実施の形態では、アクセス頻度の高いページセットから、さらに、アクセス頻度が高いと推定されるページを移動対象ページとして選択することとしている。
【００３６】
データ移動部１５０は、移動対象ページ検出部１４０の指示に応じて、移動対象ページを低速記憶媒体１１２から高速記憶媒体１１１に移動させるための制御を実行する。また、移動対象ページを移動させるに際して、高速記憶媒体１１１における空き容量が不足している場合には、高速記憶媒体１１１に格納されているページのうちからアクセス頻度が低いものから順に低速記憶媒体１１２に移動させるための制御も実行する。そして、このようなページの移動結果が反映されるようにページ管理テーブル１６２の内容を更新する。
【００３７】
作業メモリ１６０は、記憶部１１０に記憶されるデータを高速記憶媒体１１１と低速記憶媒体１１２の間で移動させるのに必要な管理情報を記憶する部位である。具体的に、作業メモリ１６０は、上記管理情報として、ページセット管理テーブル１６１、ページ管理テーブル１６２および整列順データ１６３を記憶する。
【００３８】
通信部１７０は、ネットワーク３００経由で通信を行うための部位である。通信部１７０によりホスト２００からのアクセスに応答することが可能となる。
【００３９】
アクセス制御部１８０は、ホスト２００がネットワーク３００を経由して行うデータアクセスに応答して、記憶部１１０に対するアクセス制御を実行する部位である。例えば、アクセス制御部１８０は、ホスト２００から送信されたアクセス要求を通信部１７０から受け取ると、要求されたデータを記憶部１１０から読み出す。そして、読み出したデータをアクセス応答として通信部１７０から要求元のホスト２００に対して送信する。アクセス監視部１２０は、例えば、アクセス制御部１８０が受け付けたアクセス要求が指定するデータを識別することにより、この識別したデータに該当するページまたはページセットを検出することができる。
【００４０】
＜管理情報の構造＞
続いて、作業メモリ１６０において記憶される管理情報の構造例について説明する。まず、図３（ａ）を参照してページセット管理テーブル１６１について説明する。この図に示すページセット管理テーブル１６１は、ページセットごとに、記憶領域アドレス、高速記憶媒体格納先アドレス、低速記憶媒体格納先アドレス、包含ページ、アクセス頻度の項目を対応付けた構造を有する。
【００４１】
記憶領域アドレスは、記憶部１１０の高速記憶媒体１１１と低速記憶媒体１１２の記憶領域を統合して成る全記憶領域における対応ページセットのアドレスを示す。高速記憶媒体格納先アドレスは、対応ページセットにおいて高速記憶媒体１１１に格納されるページのアドレスが示される。また、対応ページセットにおいて高速記憶媒体１１１に格納されるページが存在しない場合には、無効を示す特定のアドレスを指定する（図では「−−−−」と示している）。この高速記憶媒体格納先アドレスに有効値が格納されていることにより、対応ページセットにおける少なくとも１つのページが高速記憶媒体１１１に格納されていることが示される。なお、高速記憶媒体格納先アドレスに代えて、対応ページセットにおけるページが高速記憶媒体１１１に格納されているか否かを示すフラグとすることも考えられる。
【００４２】
低速記憶媒体格納先アドレスは、対応ページセットにおいて低速記憶媒体１１２に格納されるページのアドレスが示される。包含ページは、対応ページセットに含まれるすべてのページについてのページＩＤが示される。アクセス頻度は、アクセス監視部１２０により検出された対応ページセットに対するアクセス頻度の値が示される。
【００４３】
次に、図３（ｂ）を参照して、ページ管理テーブル１６２の構造例について説明する。この図に示すページ管理テーブル１６２は、ページごとに、ページＩＤ、ページセットアドレス、格納先記憶媒体、格納先アドレスおよびアクセスフラグを対応付けた構造を有する。
【００４４】
ページＩＤは、対応ページを識別するための識別子である。ページセットアドレスは、対応ページを含むページセットが格納される記憶部１１０の記憶領域におけるアドレスを示す。ページセットアドレスによっては、対応ページを含むページセットを一意に識別することができる。格納先記憶媒体は、対応ページが格納される記憶媒体が高速記憶媒体１１１と低速記憶媒体１１２のいずれであるのかを示す値を格納する。ここでは、「１」「０」の２値により高速記憶媒体１１１と低速記憶媒体１１２とを識別することとしている。
【００４５】
格納先アドレスは、対応ページが格納される高速記憶媒体１１１または低速記憶媒体１１２のアドレスを示す。アクセスフラグは、対応ページを含むページセットが対象ページセットとなった場合において対応ページに対するアクセスが行われたか否かを有無をフラグである。ここでは、「１」によりアクセスが有ったことを示し、「０」によりアクセスが無いことを示すこととしている。このアクセスフラグは、アクセス監視部１２０によるページアクセスの検出結果に応じて更新されるものとなる。
【００４６】
図４は、整列順データ１６３の構造例を示している。整列順データは、例えば１からの昇順による整列順ごとに、アクセス頻度の高い順にしたがってページセットごとのページセットアドレスを配列した構造を有する。
【００４７】
＜ページ移動制御の概要＞
図５を参照して、本実施の形態のストレージ１００において実行されるページ移動制御の概要について説明する。図５（ａ）には記憶部１１０における記憶領域全体が模式的に示されている。この図５（ａ）における記憶部１１０の記憶領域は、高速記憶媒体１１１と低速記憶媒体１１２の各記憶領域をページセットＰＳの単位で分割されている。
【００４８】
対象ページセット決定部１３０により、上記図５（ａ）におけるページセットのうちから、低速記憶媒体１１２の記憶領域における２つのページセットＰＳ１およびＰＳ２が、対象ページセットとして決定されたとする。この場合、ページセットＰＳ１およびＰＳ２は、アクセス頻度が高いページを含んでいることになる。
【００４９】
図５（ｂ）および図５（ｃ）は、それぞれ、ページセットＰＳ１およびＰＳ２をページＰＧの単位で分割して示している。そして、アクセス監視部１２０からの通知に応答して、移動対象ページ検出部１４０が移動対象ページの検出処理を行った結果、図５（ｂ）に示されるページセットＰＳ１におけるページＰＧ１１、ＰＧ１２およびＰＧ１３が移動対象ページとして検出されたものとする。また、図５（ｃ）に示されるページセットＰＳ２におけるページＰＧ２１、ＰＧ２２およびＰＧ２３が移動対象ページとして検出されたものとする。
【００５０】
データ移動部１５０は、移動対象ページとして検出されたページＰＧ１１、ＰＧ１２、ＰＧ１３、ページＰＧ２１、ＰＧ２２およびＰＧ２３を、低速記憶媒体１１２から高速記憶媒体に移動させる制御を実行する。この際、データ移動部１５０は、高速記憶媒体に空き容量があれば、その空き容量に対して移動対象ページを格納するように移動させる。空き容量が不足している場合には、高速記憶媒体１１１に格納されているページについて、アクセス頻度が低い順に低速記憶媒体１１２に移動させて空き容量を確保し、この空き容量に移動対象ページを格納するように移動させる。
【００５１】
このように、本実施の形態では、アクセス頻度について、ページ単位ではなく、ページセット単位で計測することとしている。そして、この計測結果に基づいて、高速記憶媒体１１１に格納すべきページを含むページセット（対象ページセット）を決定したうえで、実際のページに対するアクセス状況に応じて、移動対象ページを決定し、ページ単位でのデータの移動を行うこととしている。これにより、本実施の形態では、後述するように、管理情報（ページセット管理テーブル１６１およびページ管理テーブル１６２）のサイズの肥大化を抑制して効率的にデータ移動制御を行うことが可能となる。
【００５２】
図６は、本実施の形態のページ移動制御の処理タイミング例を示している。処理タイミングとしては、図示するように、一定の移動制御実行期間が連続するものとなる。例えば第ｎ移動制御実行期間が開始されるのに応じて、まず、アクセス監視部１２０によるアクセス状況の監視が開始される。そして、第ｎ移動制御実行期間の終了時点から或る一定時間前のタイミングでアクセス状況の監視が終了される。このアクセス状況監視の終了に続き、対象ページセット決定部１３０は、対象ページセットを決定するための処理を実行する。なお、対象ページセットの決定に際しては、同じ第ｎ移動制御実行期間におけるアクセス状況監視結果として得られたページセットのアクセス頻度の情報を利用する。
【００５３】
そして、この第ｎ移動制御実行期間におけるページについてのアクセス状況監視結果と、上記対象ページセットの決定結果とに基づく高速記憶媒体１１１へのページ移動制御は、次の第（ｎ＋１）移動制御実行期間において実行される。また、第（ｎ＋１）移動制御実行期間においては、次のアクセス状況監視と対象ページセット決定の各処理が実行される。このように、本実施の形態におけるページ移動制御は、現在のアクセス状況に応じて動的に実行される。
【００５４】
＜処理手順＞
図７および図８のフローチャートを参照して、ストレージ１００において実行されるページ移動制御のための処理手順例について説明する。まず、図７により、対象ページセットを決定するまでの処理手順例について説明する。この図７に示される処理は、図６との対応では、１つの移動制御実行期間におけるアクセス状況監視とこれに続く対象ページセット決定の処理に該当する。
【００５５】
対象ページセット決定部１３０は、新たな移動制御実行期間を開始させたうえで（ステップＳ１０１）、ページセット管理テーブル１６１におけるアクセス頻度の値をリセットする（ステップＳ１０２）。
【００５６】
次に、アクセス監視部１２０は、移動制御実行期間の開始とともに、一定時間にわたってデータのアクセス状況を監視する処理を実行する（ステップＳ１０３）。このアクセス状況監視処理の結果の１つとして、ページセット単位のアクセス頻度が計測される。そこで、アクセス監視部１２０は、このアクセス頻度の計測結果が反映されるように、ページセット管理テーブル１６１におけるアクセス頻度の値を更新する（ステップＳ１０４）
【００５７】
次に、対象ページセット決定部１３０は、上記ステップＳ１０４により更新されたページセット管理テーブル１６１のアクセス頻度を参照することにより、アクセス頻度が高い順にページセットを整列する処理を実行する（ステップＳ１０５）。対象ページセット決定部１３０は、このページセットを整列した結果を、整列順データ１６３として生成して作業メモリ１６０に記憶させる。
【００５８】
次に、対象ページセット決定部１３０は、対象ページセットを決定するための処理を実行する（ステップＳ１０６）。この対象ページセットを決定するための処理としては、例えば次のようになる。対象ページセット決定部１３０は、整列順データ１６３を参照することにより、アクセス頻度が高い順にしたがって、ページセットを対象ページセットとして順次決定していく、この決定処理は、例えば対象ページセットを高速記憶媒体１１１に格納していったと仮定して、これ以上のページセットを格納できるに足る残容量が無くなるまで実行される。あるいは、予め定めた所定数に応じた上位のページセットを整列順データ１６３から選択して、これを対象ページセットとして決定するという手法も考えることができる。
【００５９】
次に、対象ページセット決定部１３０は、上記ステップＳ１０６による対象ページセットの決定結果が反映されるようにページ管理テーブル１６２を更新する（ステップＳ１０７）。つまり、対象ページセット決定部１３０は、例えば、今回決定した対象ページセットを高速記憶媒体１１１に格納するとした場合のアドレスを暫定的に決定し、このアドレスの値を、ページ管理テーブル１６２において対象ページセットに対応付けられた高速記憶媒体格納先アドレスに格納する。また、対象ページセットとして決定されなかったページセットに対応する高速記憶媒体格納先アドレスには無効値を格納する。
【００６０】
次に、図８のフローチャートを参照して、対象ページセットの決定後において、移動対象ページを検出してページ移動制御を完了させるまでの処理手順例について説明する。この図に示す処理は、図６との対応では、１つの移動制御実行期間におけるページ移動制御に該当する。
【００６１】
まず、アクセス監視部１２０は、先の図７のステップＳ１０３によるアクセス状況監視の実行期間においてホスト２００からアクセス要求のあったページ（アクセスページ）を移動対象ページ検出部１４０に対して通知する（ステップＳ２０１）。
【００６２】
また、アクセス監視部１２０は、図７のステップＳ１０３によるアクセス状況監視の実行期間において検出されたページに対するアクセス結果に基づいて、ページ管理テーブル１６２におけるアクセスフラグを更新する（ステップＳ２０２）。つまり、上記アクセスページとして検出されたページに対応するアクセスフラグには、アクセスが有ったことを示す「１」を格納する。これに対して、アクセス要求の無かったページに対応するアクセスフラグには、アクセスが無かったことを示す「０」を格納する。
【００６３】
先のステップＳ２０１によるアクセスページの通知を受けた移動対象ページ検出部１４０は、移動対象ページの検出処理として、まず、通知されたアクセスページについて移動対象条件と照合する（ステップＳ２０３）。ここでの移動対象条件とは、移動対象ページに該当するためのアクセスページについての条件である。具体的には、先の図７のステップＳ１０６により決定された対象ページセットに含まれており、かつ、現時点で低速記憶媒体１１２に格納されているページであることを、その条件とする。還元すれば、移動対象ページは、対象ページセットに含まれているページのうちで、低速記憶媒体１１２に格納されており、かつ、アクセスが行われたという条件を満たすページとなる。
【００６４】
そして、上記条件を満たすページを特定するため、移動対象ページ検出部１４０は、ページセット管理テーブル１６１の包含ページと高速記憶媒体格納先アドレスを参照する。これにより、通知されたアクセスページのうちから、対象ページセットに含まれているアクセスページを特定する。このように特定されたアクセスページが移動対象ページの候補となる。
【００６５】
次に、移動対象ページ検出部１４０は、ページ管理テーブル１６２においてアクセスページのページＩＤに対応する格納先記憶媒体を参照して、上記移動対象ページの候補のなかから、上記現在低速記憶媒体１１２に格納されているアクセスページに絞り込みを行う。この絞り込みの結果残ることとなったアクセスページを移動対象ページとして検出する。
【００６６】
次に、移動対象ページ検出部１４０は、上記ステップＳ２０３による照合によって、少なくとも１つの移動対象ページが検出されたか否かについて判定する（ステップＳ２０４）。ここで、移動対象ページが検出されないと判定した場合には（ステップＳ２０４：ＮＯ）、ページの移動制御を実行することなく処理を終了する。これに対して、移動対象ページが検出されたと判定した場合（ステップＳ２０４：ＹＥＳ）、移動対象ページ検出部１４０は、データ移動部１５０に対して、高速記憶媒体１１１への移動対象ページの移動を指示する（ステップＳ２０５）。
【００６７】
この移動の指示に応じて、データ移動部１５０は、高速記憶媒体１１１の空き容量を確認し（ステップＳ２０６）、認識した空き容量に対して、すべての移動対象ページを格納可能か否かについて判定する（ステップＳ２０７）。ここで、空き容量が不足しており、すべての移動対象ページを格納できない場合（ステップＳ２０７：ＮＯ）、データ移動部１５０は、高速記憶媒体１１１に格納されている１つのページを選択して低速記憶媒体１１２移動させるための処理を実行する（ステップＳ２０８）。
【００６８】
上記ステップＳ２０８として、データ移動部１５０は、整列順データ１６３を参照してアクセス頻度が最も低いページセットを認識する。次に、ページセット管理テーブル１６１の包含ページを参照してアクセス頻度が最低のページセットに含まれるページを認識する。次に、データ移動部１５０は、ページ管理テーブル１６２の格納先記憶媒体を参照することにより、アクセス頻度が最低のページセットに含まれていると認識したページのうちから、高速記憶媒体１１１に格納されているページを１つ選択する。選択されたページは、アクセス頻度が最低のページセットに含まれるものであるため、高速記憶媒体１１１に格納されてはいるが、現在のアクセス状況と照らし合わせた場合にはアクセス頻度が低くなっていると推定できる。そこで、データ移動部１５０は、選択したページを、低速記憶媒体１１２に移動して格納させる。そして、ステップＳ２０６に戻る。これにより、高速記憶媒体１１１の空き容量が確保されるまで、上記の手順により、アクセス頻度が最低とみなされたページが、順次、低速記憶媒体１１２に移動されていく。
【００６９】
そして、移動対象ページを格納可能な高速記憶媒体１１１の空き容量が確保できたことを判定すると（ステップＳ２０７：ＹＥＳ）、データ移動部１５０は、高速記憶媒体１１１において確保された空き容量に対して移動対象ページを移動させる（ステップＳ２０９）。次に、データ移動部１５０は、上記ステップＳ２０８およびＳ２０９によるページの移動結果が反映されるように、ページセット管理テーブル１６１とページ管理テーブル１６２を更新する（ステップＳ２１０）。ページセット管理テーブル１６１においては、移動されたページを含むページセットに対応する高速記憶媒体格納先アドレスが更新される。ページ管理テーブル１６２においては、移動されたページについての格納先記憶媒体が更新される。
【００７０】
＜管理情報のサイズ＞
本実施の形態における管理情報と、通常のＨＳＭのシステムにおいて使用が想定される管理情報について比較を行う。例として、ここではページサイズを１ＭＢとし、ページセットのサイズは２５６ＭＢとする。さらに、記憶部１１０としての全体の記憶容量を１ＰＢ（＝１０４８５７６ＧＢ）とする。
【００７１】
まず、図１０は、通常のＨＳＭのシステムにおいて使用が想定される管理情報として、１つのページ管理テーブル４００を示している。通常のＨＳＭのシステムでは、ページ単位のみにより管理を行う。このために、本実施の形態のようにページセットを管理するための管理情報は用意されない。
【００７２】
この図に示すページ管理テーブル４００は、ページごとに格納先記憶媒体、格納先アドレスおよびアクセス頻度の項目が対応付けられた構造を有する。このページ管理テーブル４００における各項目は、ページのアドレス順にしたがって配列されている。
【００７３】
そのうえで、格納先記憶媒体については、高速記憶媒体１１１と低速記憶媒体１１２とに対応して２値を取り得ればよいことから１ｂｉｔとなる。また、格納先アドレスについては記憶媒体の容量に応じて４ｂｙｔｅとする。また、アクセス頻度についても４ｂｙｔｅとしている。
【００７４】
上記の場合において１つのページを管理するのに必要な情報サイズは
６５ｂｉｔ＝１ｂｉｔ＋４ｂｙｔｅ×２
となる。また、１ＰＢの記憶領域におけるページ数は、
１ＰＢ／１ＭＢ＝１０７３７４１８２４
となる。したがって、ページ管理テーブル４００のサイズは、
１０７３７４１８２４×６５ｂｉｔ＝８７２４１５２３２０ｂｙｔｅ＝８３２０ＭＢ
となる。
【００７５】
一方、図９（ａ）および図９（ｂ）は、それぞれ、本実施の形態のページセット管理テーブル１６１とページ管理テーブル１６２を示している。まず、この図に示すページセット管理テーブル１６１は、ページセットごとに対応する項目を、ページセットのアドレス順に配列した構造となっており、図３（ａ）における記憶領域アドレスと包含ページが省略されている。この場合、ページセット管理テーブル１６１における列の位置によりページセットを一意に特定できるために、記憶領域アドレスの項目は不要とすることができる。また、ページセットを形成するページ数は固定であるために、包含ページの項目も不要とすることができる。これにより、図９（ａ）のページセット管理テーブル１６１は、高速記憶媒体格納先アドレス、低速記憶媒体格納先アドレスおよびアクセス頻度の３項目のみとすることができる。
【００７６】
そのうえで、高速記憶媒体格納先アドレスと低速記憶媒体格納先アドレスについては、それぞれ３ｂｙｔｅとしている。これらの格納先アドレスは、図１０のページ管理テーブル４００の格納先アドレスの４ｂｙｔｅに対して１ｂｙｔｅ小さくなっている。これは以下のような理由による。１つのページセットは２５６ＭＢであり、１ページのサイズである１ＭＢに対して２５６倍である。したがって、記憶領域に格納されるページセットの数は、同じ記憶媒体に格納されるページに対して（１／２５６）となる。これにより、ページ単位でアドレスを管理する場合と比較して、ページセットのアドレス管理に必要な情報量も（１／２５６）でよいことになる。したがって、ページセットのアドレスが示される高速記憶媒体格納先アドレスと低速記憶媒体格納先アドレスについては、４ｂｙｔｅよりも１ｂｙｔｅ少なくすることができる。また、アクセス頻度については、図１０のページ管理テーブル４００と同様に４ｂｙｔｅとしている。つまり、１つのページセットに対応する情報量は、１０ｂｙｔｅ（＝３ｂｙｔｅ＋３ｂｙｔｅ＋４ｂｙｔｅ）である。
【００７７】
また、図９（ｂ）に示されるページ管理テーブル１６２は、１つのページに格納先記憶媒体、格納先アドレスおよびアクセスフラグの項目を対応付けた構造となっており、図３（ｂ）におけるページＩＤとページセットアドレスが省略されている。このページ管理テーブル１６２は、ページのアドレス順にしたがって上記各項目を配列している。これにより、ページを識別するためのページＩＤは不要とすることができる。また、ページのアドレス順にしたがって配列したことで、各ページが含まれるページセットも一意に特定可能になるため、ページセットアドレスも不要とすることができる。
【００７８】
そのうえで、格納先記憶媒体については１ｂｉｔとし、格納先アドレスについては１ｂｙｔｅとしている。アクセスフラグは、アクセスの有無に応じて２値を取り得ればよいので１ｂｉｔとしている。
【００７９】
格納先アドレスが１ｂｙｔｅであるのは次のような理由による。つまり、高速記憶媒体１１１と低速記憶媒体１１２のそれぞれの記憶領域においてページを格納する領域は、そのページを含むページセットを格納するアドレスに対応した所定範囲となるように制約を受ける。このため、ページのアドレスとしては、ページセット内でのページの位置のみを管理すればよいことになる。具体的に、２５６ＭＢのページセットに対して１ＭＢである１ページが格納される位置は２５６通り存在することになる。したがって、ページ管理テーブル１６２の格納先アドレスについては１ｂｙｔｅでよいことになる。これにより、ページ管理テーブル１６２において１つのページに対応する情報量は、１０ｂｉｔ（＝１ｂｙｔｅ＋１ｂｉｔ＋１ｂｉｔ）となる。
【００８０】
本実施の形態における管理情報の総サイズは、上記図９（ａ）および図９（ｂ）に示したページセット管理テーブル１６１とページ管理テーブル１６２の各サイズを合計したものとなる。記憶部１１０の記憶領域におけるページセット数は、
１ＰＢ／２５６ＭＢ＝４１９４３０４個
となる。また、ページ数は、図１０の場合と同様に１０７３７４１８２４個である。したがって、ページセット管理テーブル１６１とページ管理テーブル１６２の合計は、
１０ｂｙｔｅ×４１９４３０４＋１０ｂｉｔ×１０７３７４１８２４＝１３２０ＭＢ
となる。これに対して、図１０におけるページ管理テーブル４００の容量は８３２０ＭＢであり、本実施の形態では、管理情報の容量が大幅に削減されていることが分かる。このように、本実施の形態においては管理情報の容量の増加が抑制されるものであり、これにより効率的にデータ移動制御を行うことが可能になる。
【００８１】
なお、整列順データ１６３は、ページセットのアクセス頻度順にしたがってページセットアドレスを配列しただけの構造であるために、その容量は非常に小さく、管理情報の増加にはほとんど影響しない。具体的に、ページセットアドレスについては、高速記憶媒体格納先アドレスおよび低速記憶媒体格納先アドレスと同様に３ｂｙｔｅでよい。したがって、整列順データ１６３は、
３ｂｙｔｅ×４１９４３０４＝１２５８２９１２ｂｙｔｅ＝１２ＭＢ
となる。
【００８２】
上記実施の形態では、移動対象ページ検出部１４０は、アクセス監視部１２０からのアクセスページの通知に基づいて移動対象ページを検出することとしている。これ以外にも、例えば移動対象ページ検出部１４０が、アクセス監視部１２０により更新されたページ管理テーブル１６２のアクセスフラグを参照してアクセスページを認識して移動対象ページの検出を行うようにしてもよい。また、移動対象ページ検出部１４０は、その検出結果を示す情報を作業メモリ１６０に保持させることとする。そのうえで、データ移動部１５０は、例えば移動対象ページ検出部１４０からの移動指示に代えて、上記検出結果を示す情報を参照し、この情報が更新されたタイミングに応じて移動対象ページの移動を行うようにしてもよい。また、対象ページセット決定部１３０が、アクセス頻度の高い順によりページセットを配列する処理は、必ずしもアクセス状況監視の終了ごとに行う必要はなく、例えばアクセス頻度について更新が行われたタイミングで行うようにしてもよい。また、データ移動部１５０によるページ移動制御は、必ずしも、移動制御実行期間の開始タイミングにおいて実行する必要はなく、例えばストレージ１００の負荷が高いような状況であれば、負荷が一定以下に低下するまで待機した後に実行するようにしてもよい。
【００８３】
また、上記実施の形態においては、記憶部１１０において各１つの高速記憶媒体１１１と低速記憶媒体１１２を備えることとしているが、少なくともいずれか一方について複数を備える構成としてもよい。また、高速記憶媒体１１１と低速記憶媒体１１２を、それぞれ、異なるストレージ装置が備えるような構成とすることも考えられる。
【００８４】
また、上述のストレージ１００は内部にコンピュータシステムを有している。そして、これまでにおいて説明したストレージ１００の処理は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって実行される。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【符号の説明】
【００８５】
１１０  記憶部
１１１  高速記憶媒体
１１２  低速記憶媒体
１２０  アクセス監視部
１３０  対象ページセット決定部
１４０  移動対象ページ検出部
１５０  データ移動部
１６０  作業メモリ
１６１  ページセット管理テーブル
１６２  ページ管理テーブル
１６３  整列順データ
１７０  通信部
１８０  アクセス制御部
２００  ホスト
３００  ネットワーク
４００  ページ管理テーブル
【図１】
0005716537.tif 000002
【図２】
0005716537.tif 000003
【図３】
0005716537.tif 000004
【図４】
0005716537.tif 000005
【図５】
0005716537.tif 000006
【図６】
0005716537.tif 000007
【図７】
0005716537.tif 000008
【図８】
0005716537.tif 000009
【図９】
0005716537.tif 000010
【図１０】
0005716537.tif 000011