(57)【要約】【課題】　ディスクアレイ等の複合媒体における、改良されたタイムスタンプ管理システムを提供する。【解決手段】　一定間隔で、タイムスタンプ管理システムが、タイムスタンプデータ構造のランダム部分集合を評価する。そのデータ構造では、ディスクアレイまたは他の記憶装置中のデータブロックに各タイムスタンプ要素が関連付けられている。タイムスタンプデータ構造内の各タイムスタンプ要素は、限られた数の離散的なタイムスタンプ値のうちの１つを含む。アルゴリズムを使用して、タイムスタンプ値を変更すべきかどうかを判定する。各タイムスタンプ要素が維持される場合、可能な各タイムスタンプ値に関連付けられるポインタアレイを有するポインタ行列が維持される。【選択図】図１
2004062907.tif 000002
【特許請求の範囲】
【請求項１】
　プロセッサ実行可能命令を有するプロセッサ読取可能媒体であって、
　該プロセッサ実行可能命令は、
　タイムスタンプデータ構造内の１つのタイムスタンプ要素を選択し、
　前記タイムスタンプ要素内に含まれ、データブロックに関連付けられた値を更新すべきかどうかを判定し、
　各タイムスタンプ値毎に、その値を含み、データブロックが関連付けられる前記タイムスタンプ要素を指すポインタアレイを構築する、
プロセッサ読取可能媒体。
【請求項２】
　前記タイムスタンプデータ構造内の１つのタイムスタンプ要素を選択する命令は、
　まず、現在位置ポインタを、前記タイムスタンプデータ構造内の１つのタイムスタンプ要素にランダムに向ける命令と、
　次に、前記現在位置ポインタを前記タイムスタンプ要素に対して順次増分する命令と、
を含む請求項１記載のプロセッサ読取可能媒体。
【請求項３】
　前記タイムスタンプデータ構造内の１つのタイムスタンプ要素を選択する命令は、
　前記タイムスタンプ構造内の第１のタイムスタンプ要素に現在位置ポインタを向ける命令と、
　前記現在位置ポインタを別のタイムスタンプ要素を指すように増分する命令と、
を含む請求項１記載のプロセッサ読取可能媒体。
【請求項４】
　ディスクアレイであって、
　タイムスタンプ要素を有するタイムスタンプデータ構造と、
　複数のタイムスタンプ要素内に収容される値を、該複数のタイムスタンプ要素のそれぞれを前記タイムスタンプデータ構造内で見つけることができるオフセット値に、関連付けるポインタ行列を含むデータ移行モジュールと、
　データブロックを有するディスク配列であって、各データブロックは、前記タイムスタンプデータ構造内の１つのタイムスタンプ要素に関連付けられる、ディスク配列と、
を有するディスクアレイ。
【請求項５】
　前記ディスク配列内のフリーディスクスペースと、
　前記フリーディスクスペースをタイムスタンプ値に関連づけ、前記ポインタ行列を参照することによって移行すべきデータブロックを捜し出し、前記データブロックを前記フリーディスクスペースに移行させる移行プロシージャと、
をさらに有する請求項４記載のディスクアレイ。
【請求項６】
　まず、現在位置ポインタを前記タイムスタンプデータ構造内のタイムスタンプ要素にランダムに向けることによって前記タイムスタンプデータ構造内の複数のタイムスタンプ要素を更新し、更新プロシージャ完了時に、前記現在位置ポインタを順次増分させるタイムスタンプモジュールをさらに有する請求項４記載のディスクアレイ。
【請求項７】
　まず、現在位置ポインタを前記タイムスタンプデータ構造内の第１のタイムスタンプ要素に向けることによって前記タイムスタンプデータ構造内のタイムスタンプ要素を更新し、更新プロシージャ完了時に、前記現在位置ポインタを順次増分させるタイムスタンプモジュールをさらに有する請求項４記載のディスクアレイ。
【請求項８】
　前記ポインタ行列は、各タイムスタンプ値毎に、そのタイムスタンプ値を含むタイムスタンプ要素に対するポインタアレイをさらに有する請求項４記載のディスクアレイ。
【請求項９】
　ディスクアレイ内のデータを移行させる方法であって、
　タイムスタンプデータ構造内の１つのタイムスタンプ要素を選択するステップと、
　前記タイムスタンプ要素内に含まれ、データブロックに関連付けられたある値を更新すべきかどうかを判定するステップと、
　各タイムスタンプ値毎に、その値を含み、それぞれには１つのデータブロックが関連付けられるタイムスタンプ要素を指すポインタアレイを構築するステップと、
を含む方法。
【請求項１０】
　前記タイムスタンプデータ構造内の１つのタイムスタンプ要素を選択するステップは、
　まず、現在位置ポインタを、前記タイムスタンプデータ構造内の１つのタイムスタンプ要素にランダムに向けるステップと、
　次に、前記現在位置ポインタを前記タイムスタンプ要素を指すように順次増分するステップと、
を含む請求項９記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明は、所望の値のタイムスタンプのロケーションを示すポインタ行列の使用による、ディスクアレイ等の複合媒体内のタイムスタンプの管理に関する。
【背景技術】
【０００２】
　ＲＡＩＤ（安価なディスク冗長アレイ）ディスクアレイは、大規模記憶容量の高まる需要に対応して開発された記憶技術の型の一例である。ＲＡＩＤディスクアレイは、大容量異種データへのアクセスを提供するように設計される。このようなディスクアレイは通常、異なるパフォーマンス性能を有する異なるタイプのディスクを含む。たとえば、ディスクによってはより高速なパフォーマンスを提供するものもあれば、より安価なストレージを提供するものもある。そのため、最近頻繁にアクセスされているデータをより高速実行ディスクに維持しながら、最近あまりアクセスされていないデータをより安価なディスクに移行することにより、システム全体のパフォーマンスを向上させることができる。
【０００３】
　データブロックに時間または使用期間（age）を関連付けるために、タイムスタンプシステムを使用することができる。各データブロックには、データが最初に書き込まれるまたは変更されるときにタイムスタンプが関連付けられる。この関連づけは、データブロックの管理に役立つ。データを管理するために、コンピュータシステムは特定のデータブロックのタイムスタンプを読み出して、そのデータブロックの使用期間を決定する。データの使用期間がわかると、コンピュータシステムは、データを保持するか、消去するか、別のフォーマット（圧縮等）で格納するか、それとも別のロケーションに格納するかを決定することができる。
【０００４】
　従来のタイムスタンプシステムは、正確なデータおよび時間を記録するという点に関して絶対的なものである。各データブロックが書き込まれるとき、タイムスタンプがデータブロックに関連付けられ、データが書き込まれたまたは更新された時間がスタンプされる。データブロックの使用期間を決定するために、コンピュータシステムは、ブロックに関連するタイムスタンプを読み出し、タイムスタンプの値をタイムクロックの現在値から差し引かなければならない。
【０００５】
　さらに、従来のタイムスタンプシステムは線形である。線形タイムスタンプシステムは、各更新サイクルにそれぞれのタイムスタンプを調べることによってデータブロックの使用期間を増分する。タイムスタンプシステムに十分に広い範囲のタイムスタンプを提供するためには、比較的大きなメモリブロックが各タイムスタンプ毎に必要になる。メモリの通常の割り当ては、各タイムスタンプ毎に２０ビットである。大容量メモリシステムに存在するデータブロックの数により、タイムスタンプに捧げられるメモリ量は相当なものであり得る。
【０００６】
　メンテナンスプロシージャ中、使用期間の大きなデータブロックをより高速実行ディスクからより経済的なディスクに移行させることができる。しかし、多数のデータブロックがすべて異なるタイムスタンプを有し、種々の応答時間とコスト比を有する多数のディスクが利用可能な場合がある。したがって、大量のデータを処理して、どのデータブロックをどこに移行させるべきかを決定しなければならない。
【０００７】
　なお、タイムスタンプ更新の手法に関しては、先行技術文献に説明がある（特許文献１参照）。
【特許文献１】米国特許第５，９７８，９２８号
【発明の開示】
【発明が解決しようとする課題】
【０００８】
　本発明の目的は、ディスクアレイにおける、改良されたタイムスタンプ管理システムを提供することである。
【課題を解決するための手段】
【０００９】
　一定間隔で、タイムスタンプ管理システムが、タイムスタンプデータ構造のランダム部分集合を評価する。そのデータ構造では、ディスクアレイまたは他の記憶装置中のデータブロックに各タイムスタンプ要素が関連付けられている。タイムスタンプデータ構造内の各タイムスタンプ要素は、限られた数の離散的なタイムスタンプ値のうちの１つを含む。アルゴリズムを使用して、タイムスタンプ値を変更すべきかどうかを判定する。各タイムスタンプ要素が維持される場合、可能な各タイムスタンプ値に関連付けられるポインタアレイを有するポインタ行列が維持される。
【００１０】
　図面を通して、同じ符号を使用して同様の特徴およびコンポーネントを指す。
【発明を実施するための最良の形態】
【００１１】
　一定間隔で、タイムスタンプ管理システムが、タイムスタンプデータ構造のランダム部分集合を評価する。そのデータ構造では、ディスクアレイまたは他の記憶装置中のデータブロックに各タイムスタンプ要素が関連付けられている。タイムスタンプデータ構造内の各タイムスタンプ要素は、限られた数の離散したタイムスタンプ値のうちの１つを含む。アルゴリズムを使用して、タイムスタンプ値を変更すべきかどうかを判定する。各タイムスタンプ要素が維持される場合、可能な各タイムスタンプ値に関連付けられるポインタアレイを有するポインタ行列が維持される。データ移行中、所望のタイムスタンプ値を有するデータブロックは、ポインタ行列内の適切なポインタアレイへを参照することにより容易に見つけられる。
【００１２】
　図１は、ディスクアレイのタイムスタンプ管理システムの実施態様に適したシステム環境１００を示す。システム環境は、ネットワーク接続１０６によってディスクアレイ１０４に動作可能に接続されたホスト１０２またはワークステーションを備える。ネットワーク接続１０６は、パラレル双方向ユニバーサルシリアルバス（ＵＳＢ）、光ファイバケーブルリンクもしくは「ファイバチャネル」、シリアルインタフェースバス、または当技術分野において既知の他の別の適したインタフェース等の直接接続であることができる。ネットワーク接続１０６は、ＬＡＮ（ローカルエリアネットワーク）、ＷＡＮ（広域ネットワーク）、イントラネット、インターネット、または他の適した通信リンク等のネットワーク技術によって行うこともできる。
【００１３】
　ディスクアレイ１０４内では、プロセッサ１０８が、ＲＡＭ、ＲＯＭ、ディスク、または他の記憶媒体を含むことができるメモリ要素１１０内に収容されるコマンドを実行する。ディスク配列１１２は、ディスクコントローラ１１４によって制御される。多くの用途では、ディスクアレイが、多数の大量のファイル、特定にグラフィックメディアおよびマルチメディアコンテンツを含むファイルを処理する必要がある非常に大きな容量を提供する。用途によっては、ディスク配列は、コンテンツ所有者を損失に伴うリスクの一部から保護する冗長情報を含む。
【００１４】
　ディスクコントローラ１１４は、タイムスタンプモジュール１１６およびデータ移行モジュール１１８を含む。タイムスタンプモジュールは、タイムスタンプデータ構造１２０を含み、タイムスタンプデータ構造１２０は、ディスクアレイ内の各データブロックに関連付けられたタイムスタンプ要素を含む。一定間隔で、現在位置ポインタ１２２がタイムスタンプデータ構造内のスタンプ要素を指すことができ、更新プロシージャ１２４を参考にしてタイムスタンプ要素内に収容される値を増分すべきかどうかを判定する。
【００１５】
　データ移行モジュール１１８はポインタ行列１２６を含み、ポインタ行列１２６はオフセットに関連付けられた値を含み、オフセットにより、任意所与のタイムスタンプ値が関連付けられたタイムスタンプ要素をタイムスタンプ行列内で見つけることができる。たとえば、タイムスタンプ値５を有するタイムスタンプ要素が望まれる場合、ポインタ行列を使用して、タイムスタンプ値５を有するいくつかのタイムスタンプ要素のタイムスタンプデータ構造内のオフセットを見つけることができる。オフセットを使用することは、タイムスタンプデータ構造内のロケーションを記録するより効率的な方法であるが、絶対的なロケーションも記録することができる。現在サイズ変数１２８が各タイムスタンプ値に関連付けられ、任意所与のタイムスタンプ値に利用可能なポインタ数（すなわち、オフセット）を明らかにする。たとえば、６個のオフセットがタイムスタンプ値３に関連付けられることがわかっている（すなわち、タイムスタンプ値３を有する６個のタイムスタンプ要素がわかっている）場合、タイムスタンプ値３に関連付けられる現在サイズ変数は値６を有する。
【００１６】
　データ移行モジュールは、同じタイムスタンプ値が関連付けられたデータブロックを第１のロケーションから第２のロケーションに移行させるように構成される移行プロシージャ１３０も含む。
【００１７】
　図２は、ディスクアレイ１０４の構造をさらに詳細に示す。タイムスタンプモジュール１１６は、タイムスタンプデータ構造１２０、現在位置ポインタ１２２、および更新プロシージャ１２４を含む。タイムスタンプデータ構造は、例示的なタイムスタンプ要素２０２〜２１２を含む複数のタイムスタンプ要素を含む。図２の実施形態では、ディスクアレイ内のデータのロケーションと、タイムスタンプ構造内のスタンプの位置との間に関係（またはマッピング）が存在する。たとえば、タイムスタンプデータ構造中の第１のタイムスタンプは、ディスク上の第１のデータセグメント（たとえば、２５６ＫＢ）の使用期間を表す。第２のスタンプは第２のセグメントの使用期間を表し、以下同様である。各タイムスタンプ要素は、ディスク１１２のアレイ内のデータブロックを指し、１つのタイムスタンプ値を含む。各タイムスタンプ要素が４ビットを含む一実施態様では、タイムスタンプ値は０から１５までの整数を含む範囲を有する。
【００１８】
　現在位置ポインタ１２２は、所望の順序でタイムスタンプデータ構造内の各タイムスタンプ要素を指すように構成される。更新プロシージャ１２４は、ポインタ１２２が向けられているタイムスタンプ要素内に収容される値を増分すべきかどうかを判定するように構成される。タイムスタンプ要素は、特許文献１に開示されるものなど、任意所望の戦略に従って変更することができる。
【００１９】
　ポインタ行列１２６は、任意所望のタイムスタンプ値のタイムスタンプ要素を早く見つけられるようにする。これは、所望のタイムスタンプ値を有するいくつかのデータブロックを、フリーディスクスペースに移行するために早く見つけることができるという点においてデータブロックの移行に役立つ。たとえば、より低速かつより安価なディスクスペースが、不要なファイルの除去により空いた場合、特定の使用期間、または特定の使用期間範囲のデータブロックを、最近空いたディスクスペースに移動させることによって、より望ましいディスクスペースを空けることができる。
【００２０】
　図２の実施態様では、ポインタ行列１２６の各列は、所与のタイムスタンプ値に関連付けられたポインタアレイ２１４、２１６、２１８を含む。すなわち、各ポインタアレイは、特定の値を有するタイムスタンプ要素を指す複数のオフセット値を含む。ポインタ行列内の各ポインタアレイ内の各オフセット値は、所与のタイムスタンプ要素に関連付けられたタイムスタンプデータ構造の始めからの距離を収容する。用途によっては、各ポインタアレイは、代替として、オフセットではなくタイムスタンプ値に関連付けられたタイムスタンプデータ構造内の実際のアドレスを格納する場合もある。さらに別の代替では、各ポインタアレイは、ポインタアレイに関連づけられたタイムスタンプ値を有するディスクアレイ内の実際のデータブロックのアドレスまたはオフセットを格納することができる。
【００２１】
　各タイムスタンプ値にはポインタアレイが関連付けられるため、所与のタイムスタンプ値を有するいくつかのタイムスタンプ要素を、アレイ参照によって素早く見つけることができる。タイムスタンプデータ構造１２０内のタイムスタンプ要素が４ビット値であるポインタアレイの一実施態様では、１６個のタイムスタンプ値が可能である。したがって、ポインタ行列内の一つの軸に沿って１６列が存在する。各列は、複数のタイムスタンプポインタを含むポインタアレイ２１４、２１６、２１８によって形成される。
【００２２】
　タイムスタンプポインタは、特定のタイムスタンプ値のタイムスタンプ構造へのオフセットに関連付けられる値であるオフセット値２２０Ａ、・・・、２２２Ａによって最もコンパクトに表される。たとえば、ポインタアレイ２１４中のオフセット値には、タイムスタンプ値０が関連付けられる。したがって、最初と最後のオフセット値２２０Ａおよび２２２Ａによって表される列中の要素がそれぞれ値を含む。これら値はそれぞれオフセット、すなわち、タイムスタンプ要素を指す最初の要素からのタイムスタンプデータ構造への距離である。したがって、各オフセット値２２０Ａ〜２２２Ａは、値０を有するタイムスタンプ値を指す。
【００２３】
　同様に、ポインタ２１６および２１８のアレイはそれぞれ、タイムスタンプ値１およびＮをそれぞれ有するタイムスタンプデータ構造内のタイムスタンプ要素をそれぞれ指す最初と最後の値２２０Ｂ、２２２Ｂと、２２０Ｎ、２２２Ｎとによって示されるオフセット値を有する。
【００２４】
　現在サイズ変数１２８Ａ〜１２８Ｎは、各ポインタアレイ２１４、２１６、２１８内に収容される有効ポインタ数を含む。さらに、現在サイズ変数が最大値未満である場合には、現在サイズ変数は次に取得されるオフセット値がポインタアレイ２１４、２１６、２１８内の配置されるべきロケーションを示す。
【００２５】
　移行プロシージャ１３０は、同じタイムスタンプ値が関連付けられたデータブロックを第１のロケーションから第２のロケーションに移行させるように構成される。移行プロシージャは、所望のタイムスタンプ値に関連付けられた、ポインタアレイ２１４、２１６、または２１８内のオフセット値にアクセスする。これらオフセット値は、タイムスタンプデータ構造１２０内のタイムスタンプ要素を指し、タイムスタンプ要素は、所望のタイムスタンプ値に関連付けられた使用期間を有するディスク配列１１２内に移行すべきデータブロックを指す。
【００２６】
　図３のフローチャートは、タイムスタンプデータ構造および関連するポインタ行列のメンテナンスを含む、タイムスタンプを管理する方法３００を示す。方法の要素は、ディスク、ＲＯＭ、または他の記憶装置等のプロセッサ読取可能媒体に定義されるプロセッサ読取可能命令の実行等、任意所望の手段によって行うことができる。
【００２７】
　ブロック３０２において、待機期間の終了または他の事象により、タイムスタンプデータ構造およびポインタ行列の更新が開始される。タイムスタンプデータ構造の更新には、ディスクアレイに通常配置されるデータブロックにそれぞれ関連付けられた、タイムスタンプのいくつかまたはすべてを評価することが含まれる。ポインタ行列の更新には、関連するタイムスタンプ値を有するタイムスタンプのロケーションを含むように各タイムスタンプ値に関連づけられたポインタアレイを変更することが含まれる。
【００２８】
　ブロック３０４において、各タイムスタンプ値に関連付けられたポインタアレイを含むポインタ行列が初期化される。初期化プロセスは、行列全体のリセットを含むことができる。あるいは、各ポインタアレイ内のオフセット値をチェックして、正しい値を有するタイムスタンプをなお指しているかどうかを調べることができる。
【００２９】
　ブロック３０６において、タイムスタンプデータ構造の検査がランダムなロケーションから開始される。ある期間またはサイクル中のタイムスタンプデータ構造の部分集合のみが検査される場合、ランダムなロケーションから開始することは、ある期間の間はタイムスタンプデータ構造内の任意所与のタイムスタンプ要素を検査することに等しい。タイムスタンプデータ構造全体を評価する場合、検査はデータ構造の始めから開始することができる。
【００３０】
　ブロック３０８において、タイムスタンプデータ構造内のタイムスタンプ値を変更すべきかどうかを判定する。この判定は、特許文献１で提示されるアルゴリズム等を使用することによって行うことができる。
【００３１】
　ブロック３１０において、タイムスタンプロケーションをポインタ行列内のポインタアレイの１つに追加することによって、ポインタアレイを構築する。たとえば、ポインタアレイがまだ、タイムスタンプロケーションのタイムスタンプ値を有するタイムスタンプロケーションへのオフセットで満杯になっていない場合、タイムスタンプロケーションをポインタアレイに追加することができる。タイムスタンプロケーションの格納に必要なスペースを節約するために、ポイントアレイ内の要素を、タイムスタンプデータ構造の始め（または他のロケーション）からのオフセット値として格納することができる。
【００３２】
　ブロック３１２において、タイムスタンプ構造内の所望の数の要素が評価されるまで、評価すべきタイムスタンプデータ構造内のロケーションを増分する。ブロック３０８、３１０、および３１２を所望に応じて繰り返すことができる。
【００３３】
　図４のフローチャートは、特定のタイムスタンプ値に関連付けられたデータ、または所与の範囲のタイムスタンプ値内にデータの探索を含むように、タイムスタンプ管理の機能性を拡張する方法４００を示す。このようにして見つけられたデータは、別の記憶領域への再配置、圧縮、またはディスクアレイからの除去等、任意所望の様式で処理することができる。方法の要素は、ディスク、ＲＯＭ、または他の記憶装置等、プロセッサ読取可能媒体上で定義されるプロセッサ読取可能命令の実行等、任意の所望の手段で行うことができる。
【００３４】
　ブロック４０２において、特定のタイムスタンプ値を有するデータ、またはある範囲のタイムスタンプ値を有するデータの探索が開始される。選択されたタイムスタンプ値、または選択されたある範囲のタイムスタンプ値により、アクセスするポインタ行列内のポインタアレイが決まる。
【００３５】
　ブロック４０４において、タイムスタンプ値または当該値に関連するポインタ行列内のポインタアレイ（１つまたは複数）を検査して、所望の使用期間のデータブロックを指す所望値のタイムスタンプを見つける。ポインタアレイ内の各値は、タイムスタンプデータ構造へのオフセットである。タイムスタンプデータ構造内の各要素の位置には、ディスクアレイ内のデータブロックへのオフセットが関連付けられる。さらに、各タイムスタンプ要素は、データブロックの使用期間に関連付けられた値を含む。
【００３６】
　ブロック４０６において、選択されたポインタアレイ内のオフセット値を検査して、タイムスタンプデータ構造内のタイムスタンプ要素が、期待値に等しいか否かを判定する。値が変更され、この変更が、オフセット値の起点であった、ポインタ行列内のポインタアレイに反映されない場合がある。タイムスタンプ値が変更された場合には、ブロック４０４が繰り返される。タイムスタンプ値が変更されていない場合、所望の使用期間のタイムスタンプを有するデータブロックが見つけられる。次いで、そのブロックにアクセスすることができる。
【００３７】
　ブロック４０８において、所望のタイムスタンプ値を有するデータブロックは、移行、圧縮、または破棄等、任意の所望の様式で使用される。例示的な使用では、移行プロシージャがフリーディスクスペースを見つけ、タイムスタンプ要素内に収容される値をフリーディスクスペースに関連づけ、タイムスタンプ要素内に収容される値に関連付けられたデータブロックをフリーディスクスペースに移行させる。
【００３８】
　ブロック４１０において、追加のデータブロックが必要であるか否かを判定する。必要な場合、ブロック４０４を繰り返す。
【００３９】
　結論として、一定間隔で、タイムスタンプ管理システムが、タイムスタンプデータ構造のランダム部分集合を評価する。そのデータ構造では、ディスクアレイまたは他の記憶装置中のデータブロックに各タイムスタンプ要素が関連付けられている。タイムスタンプデータ構造内の各タイムスタンプ要素は、限られた数の離散的なタイムスタンプ値のうちの１つを含む。アルゴリズムを使用して、タイムスタンプ値を変更すべきかどうかを判定する。各タイムスタンプ要素が維持される場合、可能な各タイムスタンプ値に関連付けられるポインタアレイを有するポインタ行列が維持される。データ移行中、所望のタイムスタンプ値を有するデータブロックは、ポインタ行列内の適切なポインタアレイへの参照により容易に見つけられる。
【００４０】
　本発明について構造的特徴および／または方法論的ステップに固有の言葉で説明したが、併記特許請求項は説明された特定の特徴またはステップに制限されないことを理解されたい。むしろ、特定の特徴およびステップは、本開示を実施する例示的な形態である。たとえば、ポインタ行列について、個々のタイムスタンプ値をポインタ行列内の各ポインタアレイに関連付けて示したが、代替的形態も可能である。たとえば、多数のタイムスタンプ値が存在する場合、各ポインタアレイが、ある範囲内の値を有するタイムスタンプ要素を指すポインタを含み得る。
【００４１】
　さらに、１つまたは複数の方法について、フローチャートおよびブロックに関連付けたテキストを用いて開示したが、ブロックを必ずしも提示した順序で行う必要はなく、順序を変更しても同様の利点が得られることを理解されたい。
【図面の簡単な説明】
【００４２】
【図１】ホストコンピュータにネットワーク化されたディスクアレイを示すブロック図であり、ディスクアレイのコントローラ部分は、タイムスタンプおよびデータ移行モジュールを備える。
【図２】タイムスタンプモジュールとデータ移行モジュールとの間の関係を示すブロック図である。
【図３】タイムスタンプデータ構造およびポインタ行列を維持する方法を記述する流れ図である。
【図４】ポインタ行列を使用してディスクアレイ内でデータを移行させる方法を記述する流れ図である。
【符号の説明】
【００４３】
１２０　タイムスタンプデータ構造
１２２　現在位置ポインタ
１２６　ポインタ行列
２０２〜２１２　タイムスタンプ要素
２１４〜２１８　タイムスタンプへのポインタアレイ
【図１】
2004062907.tif 000003
【図２】
2004062907.tif 000004
【図３】
2004062907.tif 000005
【図４】
2004062907.tif 000006