階層間の効率的なデータ移行を管理する装置
【課題】低速階層及び高速階層を有するデータストレージシステムにおいて、階層間でデータを効率的に移行させる。
【解決手段】高速データストレージデバイス106のリザーブスペースを備えている。プロセッサ102は、メモリ104に記憶されたリザーブスペーステーブルを参照して、低速データストレージデバイス108に記憶されたデータへのアクセスが高頻度となることによりホットデータとなると、該データを高速データストレージデバイス106のリザーブスペースに移し、該ホットデータを高速データストレージデバイス106上に保持する。データ移行は、一方向性であることが多く、データは低速階層から高速階層へ移行し、通常動作中のオーバーヘッドを低減することができる。
【解決手段】高速データストレージデバイス106のリザーブスペースを備えている。プロセッサ102は、メモリ104に記憶されたリザーブスペーステーブルを参照して、低速データストレージデバイス108に記憶されたデータへのアクセスが高頻度となることによりホットデータとなると、該データを高速データストレージデバイス106のリザーブスペースに移し、該ホットデータを高速データストレージデバイス106上に保持する。データ移行は、一方向性であることが多く、データは低速階層から高速階層へ移行し、通常動作中のオーバーヘッドを低減することができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データストレージシステム(データ記憶システム)に関し、特に階層を有するデータストレージシステムに関する。
【背景技術】
【0002】
ブロックベースのストレージシステムでは、頻繁にアクセスされるデータ(ホットデータ)をより高速でより能力の高いドライブへ移動し、同時にアクセス頻度のより低いデータ(コールドデータ)を能力の劣る低速ストレージへ移動することにより、システム全体の性能が向上している。この解決策は、ストレージ階層化として知られ、ストレージが必要なあらゆる場合に高性能ストレージを用いるよりも費用効果が高い。通常の階層化構成は、より安価で能力の劣るドライブ(例えば、SATAドライブ)の大規模ストレージプールを「低速階層」として、そしてより高価でより性能の高いドライブ(例えば、SSD)の小規模プールを「高速階層」として使用する。階層化により、他の同等の構成よりも優れた単価あたりの性能を提供することができる。
【発明の開示】
【発明が解決しようとする課題】
【0003】
階層化の効果を発揮するには、データのアクセス頻度が時間の経過とともに変化しても、ホットデータは高速階層上に維持され、コールドデータは低速階層に維持されなければならない。階層化されたデータストレージシステムは、データ又はデータのブロックのアクセス頻度を追跡し、アクセス頻度の変化に従いデータを階層間で移動する。階層間のデータの移動はオーバーヘッドを生じ、実際に実行しているIOから帯域幅を奪ってしまう。
したがって、階層化されたデータストレージシステムの階層間で、データを効率的に移行するのに適した装置があれば有益であり、本発明は、階層化されたデータストレージシステムの階層間でデータを効率的に移行する新しい方法及び装置を提供する。
【課題を解決するための手段】
【0004】
本発明は、高速階層及び低速階層を有するデータストレージシステムを提供し、該システムにおいては、高速階層の一部がリザーブされる。以前はコールドデータであったものがホットデータになると、このデータは低速階層から高速階層上のリザーブされた部分へ転送される。テーブルは、初めは高速階層のリザーブされた部分のスペース全てを追跡する。データがホットになり高速階層のリザーブされた部分へ転送されると、テーブルが修正されて、データの低速階層上の以前の位置をリザーブされた部分へ追加し、データの高速階層上の新しい位置をリザーブされた部分から除去する。この方法によれば、データ移行は主に低速階層から高速階層へのものであり、対応する高速階層から低速階層への移行がすぐに行われることはなく、そのため移行の初期オーバーヘッドが低減される。リザーブ部分の所定の割合が低速階層へ移行されたとき、データストレージシステムは、コールドデータの高速階層から低速階層への大量移行を実行する。大量移行のタイミングは利用可能なシステム資源に依存する。
【0005】
上記の概要及び下記の詳細な説明はともに、例示及び説明にすぎず特許請求される本発明を限定するものではない。添付図面は明細書に含まれその一部を構成するものであり本発明の実施形態を示し、概要とともに本発明の原理を説明する役割を果たす。
当業者が添付図面を参照すれば、本発明の数多くの目的及び効果をよりよく理解できるであろう。
【図面の簡単な説明】
【0006】
【図1】本発明を実施するために有用な、データストレージシステムのブロック図である。
【図2】異なるデータストレージ技術を含む仮想ドライブを用いて実施された、階層化されたドライブのブロック図である。
【図3A】低速データストレージデバイス及び高速データストレージデバイスを有するデータストレージシステム内の、データブロックの初期レイアウトのテーブルを示す図である。
【図3B】高速データストレージデバイスと低速データストレージデバイスとを有するデータストレージシステム内の、データストレージデバイス上のリザーブスペースと関連付けられた論理ブロックアドレスの初期テーブルを示す図である。
【図4A】1つのデータブロックが低速データストレージデバイスから高速データストレージデバイスへ移行された後の、低速データストレージデバイスと高速データストレージデバイスとを有するデータストレージシステム内の、データブロックのテーブルを示す図である。
【図4B】1つのデータブロックが低速データストレージデバイスから高速データストレージデバイスへ移行された後の、高速データストレージデバイスと低速データストレージデバイスとを有するデータストレージシステム内の、データストレージデバイス上のリザーブスペースと関連付けられた論理ブロックアドレスのテーブルを示す図である。
【図5A】2つのデータブロックが低速データストレージデバイスから高速データストレージデバイスへ移行された後の、低速データストレージデバイスと高速データストレージデバイスとを有するデータストレージシステム内の、データブロックのテーブルを示す図である。
【図5B】2つのデータブロックが低速データストレージデバイスから高速データストレージデバイスへ移行された後の、高速データストレージデバイスと低速データストレージデバイスとを有するデータストレージシステム内の、データストレージデバイス上のリザーブスペースと関連付けられた論理ブロックアドレスのテーブルを示す図である。
【図6A】リザーブスペースを高速データストレージデバイスへ戻すコールドスワップの後の、低速データストレージデバイスと高速データストレージデバイスとを有するデータストレージシステム内の、データブロックのテーブルを示す図である。
【図6B】リザーブスペースを高速データストレージデバイスへ戻すコールドスワップの後の、高速データストレージデバイスと低速データストレージデバイスとを有するデータストレージシステム内の、データストレージデバイス上のリザーブスペースと関連付けられた論理ブロックアドレスのテーブルを示す図である。
【図7】低速データストレージデバイスと高速データストレージデバイスとを有するデータストレージシステム内でデータを移行する方法のフロー図である。
【発明を実施するための形態】
【0007】
添付図面を参照して、本発明を以下に詳細に説明する。本発明の範囲は請求項によってのみ限定されるものであり、数多くの代替、修正、及び均等物が包含される。明確にするために、実施形態に関係する技術分野で既知の技術的事項については詳細な説明はせずに、不要に記載が不明瞭にならないようにしている。
【0008】
図1は、本発明の実施例のデータストレージシステムのブロック図を示している。本発明の実施例のデータストレージシステムは、プロセッサ102と、該プロセッサに接続されたメモリ104と、1又は複数のデータストレージデバイス106、108とを備えている。本発明は、階層化されたデータストレージシステム内のデータ移行に関し、本発明の実施例のデータストレージシステムは、高速データストレージ階層106と、低速データストレージ階層108とを備えている。あるいは、図2に示すように、本発明の実施例データストレージシステムは、1又は複数の階層化された論理ドライブ202を備え、該論理ドライブ202は1又は複数の仮想ドライブ204、206、208を備えている。これら仮想ドライブ204、206、208はそれぞれ、1又は複数の物理ドライブへアクセスする論理的構成概念である。例えば、SATA仮想ドライブ204は、複数のSATAハードドライブへアクセスする論理的構成概念であり、SAS仮想ドライブ206は、複数のSASハードドライブへアクセスする論理的構成概念、そしてSSD仮想ドライブ208は、複数のソリッドステートドライブへアクセスする論理的構成概念である。図2に示すような1又は複数の階層化されたドライブ202を備えた階層化されたデータストレージシステムでは、各階層化されたドライブ202は、外部のユーザやプロセスからは、単一の統合された論理ブロックアドレス(LBA)システムをもつ単一のデータストレージデバイスとして認識される。
【0009】
階層化されたデータストレージシステムとしての効果を発揮するためには、該システムは、最もアクセス頻度の高いデータ(ホットデータ)を高速階層上に維持しなければならない。高速階層を実現するために用いられる技術は、低速階層を実現するために用いられる技術に比べると、データストレージの単価がより高くなる。このため、高速階層のストレージ総容量は比較的小さい。時間が経過すると、さまざまなデータがアクセスされるためにデータアクセスパターンが変化し、それによって以前はコールドデータだったものがホットデータになり、逆に、以前はホットデータだったものがコールドデータになることがある。したがって、以前にコールドデータだったものがホットデータになると、階層化されたデータストレージシステムは、低速階層からのデータを高速階層へ移行しなければならない。高速階層は比較的容量が小さいので、高速階層上の容量を解放するために、時間の経過につれてコールドになったデータは低速階層へ移行する必要がある。
【0010】
本発明による階層化されたストレージデバイスは、データストレージデバイス上の容量の一部を、リザーブスペースとして保有している。図3A及び3Bを参照すると、図3Aは、高速階層308と低速階層306とを有する階層化されたデータストレージデバイス内の、データの初期分布のブロック図を示している。高速階層308及び低速階層306は、データブロック314へ分割されている。データブロック314は全て等しいサイズである。各データブロック314は、階層化されたドライブ論理ブロックアドレス(TD LBA)310を割り当てられる。各データブロックは、ローカルドライブ論理ブロックアドレス(LD LBA)も割り当てられ、ローカルドライブ論理ブロックアドレス(LD LBA)は、SDVD208等の仮想ドライブ又は物理ドライブに特有のものである。リザーブスペースは、初めは高速階層内の複数の非マッピングデータブロック312を含んでいる。高速階層上のデータブロック314は、リザーブスペース312を含む非マッピングデータブロックは除いて、全てデータ記憶のために利用することができる。リザーブスペース312を含む非マッピングデータブロックは、コントローラがデータ移行のためにのみ利用することができる。リザーブスペース312は、高速階層308の総容量の数パーセントであり、例えば5%である。図3Bは、非マッピングデータブロックのリザーブスペーステーブル302を示す。非マッピングデータブロックのリザーブスペーステーブル302内の各レコード304は、データストレージデバイス内の非マッピングデータブロックの位置を特定する。図3Bのテーブル302の各レコード304は、LD LBA及び階層により各非マッピングデータブロックを特定するが、当業者であれば、他の特定機構も可能であることがわかるであろう。例えば、各非マッピングデータブロックは、TD LBAにより特定されてもよい。リザーブスペーステーブル302は、高速階層308上に維持される。
【0011】
次に、図4A及び4Bを参照する。図4Aは、高速階層308及び低速階層306を有する階層化されたデータストレージデバイス内の、データの分布のブロック図であり、1つのデータブロックが低速階層306から高速階層308へ移行された場合を示している。データストレージシステムは、時間の経過に従いデータアクセスパターンを分析し、低速階層306上の1又は複数のデータブロックが高速階層308上のデータブロックよりも頻繁にアクセスされているか、すなわちホットであるかどうかを判定する。例えば、第1の低速階層データブロック406内のデータが、ユーザ又はプロセスが頻繁にアクセスしたために時間の経過につれてホットになることがある。データストレージシステムの効率を最大化するために、第1の低速階層データブロック406に記憶されたデータは、高速階層308へ移行されなければならない。しかし、図4Aに示すように、高速階層308上のマッピングデータブロックが全て埋まっていることがある。この場合は、データストレージシステムは、第1の低速階層データブロック406から、高速階層308上の第1の非マッピング高速階層データブロック404へ、データを移行する。次に、リザーブスペーステーブル302は、第1の低速階層データブロック406から第1の非マッピング高速階層データブロック404へのデータの移行を反映させるために修正される。第1の移行レコード402は、第1の低速階層データブロック406を参照するように更新されるか、又は、第1の移行レコードがリザーブスペーステーブル302へ追加されて、第1の低速階層データブロック406を参照するようにされ、第1の非マッピング高速階層データブロック404を参照する対応するレコードが除去される。これにより、第1の低速階層データブロック406がリザーブスペースの一部になる。本発明によるデータ移行は、したがって第1のデータ移行については一方向性である。つまり、データストレージシステムは、低速階層上のデータブロックからのデータのために、高速階層上のデータブロックからデータを移行して空き領域を作るということをしない。本発明によるデータ移行は、したがって、従来の階層化されたデータストレージシステムのデータ移行と比べてオーバーヘッドが低い。
【0012】
次に、図5A及び図5Bを参照する。図5Aは、高速階層308と低速階層306とを有するデータストレージシステム内の、データの分布のブロック図であり、2つのデータブロックが低速階層306から高速階層308へ移行された場合を示している。データストレージシステムが、低速階層306上の2つのデータブロックが高速階層308上のデータブロックよりもより頻繁にアクセスされた、すなわちホットであることを判定すると、データストレージシステムは、第1の低速階層データブロック406から高速階層308上の第1の非マッピング高速階層データブロック404へデータを移行し、図4A及び図4Bに示したようにリザーブスペーステーブル302を修正する。データストレージシステムは、次に第2の低速階層データブロック506から、高速階層308上の第2の非マッピング高速階層データブロック504へデータを移行する。それからリザーブスペーステーブル302が、第2の低速階層データブロック506から第2の非マッピング高速階層データブロック504へのデータの移行を反映するように修正される。第2の移行レコード502は、第2の低速階層データブロック506を参照するように更新されるか、又は第2の移行レコードがリザーブスペーステーブル302へ追加されて、第2の低速階層データブロック506を参照するようにされ、第2の非マッピング高速階層データブロック504を参照する対応するレコードが除去される。すると、第2の低速階層データブロック506がリザーブスペースの一部になる。したがって本発明によるデータ移行は、1又は複数のデータ移行についても引き続き一方向性である。本発明によるデータ移行は、したがって、従来の階層化されたデータストレージシステムのデータ移行と比べてオーバーヘッドが低い。
【0013】
図6A及び6Bを参照する。図6Aは、高速階層308と低速階層306とを有するデータストレージシステム内のデータの分布のブロック図であり、データストレージシステムが、高速階層308上の1又は複数のデータブロックから低速階層306へのデータの大量移行を通して、リザーブスペースを高速階層308へ戻す「コールドスワップ」を行った場合を示している。本発明によるデータストレージシステムの動作中、リザーブスペースは、初めは高速階層308へ割り当てられる(図3Aのリザーブスペース312を参照)が、低速階層306上のデータがホットになり高速階層308上のリザーブスペース内の非マッピングデータブロックへ移行されるにつれ、結局は低速階層306へ移行する。
【0014】
データの低速階層306上のデータブロックからの各移行は、対応するリザーブスペースの高速階層308から低速階層306への移行を伴い、このリザーブスペースの移行は、リザーブスペースの各データブロックの位置を記録しているリザーブスペーステーブル302を介して行われる。低速階層306上のリザーブスペースのデータブロックを追跡することにより、データストレージシステムは、時間の経過とともにホットデータが高速階層308へ移行するにつれて、高速階層308上のデータブロックからコールドデータを周期的に移行するのに十分なスペースを低速階層上に保有する。
【0015】
データストレージシステムは、移行閾値を含んでもよい。移行閾値は、低速階層306から高速階層308へ転送されるリザーブスペースの量に関する制限となる。移行閾値は、例えば80パーセント(80%)等、最初のリザーブスペースの割合であるが、当業者であれば80%は例であって他の閾値を採用してもよいことが分かるであろう。移行制限に到達すると、データストレージシステムは、「コールドスワップ」を開始する。コールドスワップは、リザーブスペースを高速階層308へ戻すためのプロセスであり、これはコールドデータを、高速階層上のデータブロックから、リザーブスペーステーブル302内に特定された低速階層上のデータブロックへ移行することにより行われる。あるいは、コールドスワップは、所定の間隔で開始されるか、又はシステムの使用が閾値より下であり、コールドスワップがデータストレージシステムのエンドユーザ性能を低減しないときに開始される。
【0016】
データストレージシステムがコールドスワップを開始すべきであると判定した場合、データストレージシステムは、高速階層308上のどのデータがコールドになったかを判定する。例えば、データストレージシステムは、高速階層308上の2つのデータブロック606、608が高速階層308上の他のデータブロックよりもアクセス頻度が低く、すなわちコールドであると判定する。データストレージシステムは、データを第1の高速階層データブロック606から、リザーブスペーステーブル302内の移行レコード(図5Aの第1の移行レコード402を参照)によりリザーブスペースとして特定された第1の低速階層データブロック406へ移行する。第1の低速階層データブロック406を特定する移行レコード602は、第1の高速階層データブロック606を参照するように更新されるか、又は移行レコード602がリザーブスペーステーブル302へ追加されて、第1の高速階層データブロック606を参照するようにされ、第1の低速階層データブロック406を参照する対応するレコードが除去される。次にデータストレージシステムは、データを第2の高速階層データブロック608から、リザーブスペーステーブル302内の移行レコード(図5Aの第2の移行レコード502を参照)によりリザーブスペースとして特定された第2の低速階層データブロック506へ移行する。第2の低速階層データブロック506を特定する移行レコード604は、第2の高速階層データブロック608を参照するように更新されるか、又は移行レコード604がリザーブスペーステーブル302へ追加されて、第2の高速階層データブロック608を参照するようにされ、第2の低速階層データブロック506を参照するレコードが除去される。コールドスワップ中は、高速階層308上の複数のデータブロックからのデータが一度に低速階層306へ、リザーブスペーステーブル内に特定される低速階層306の所定の位置へ、移行される。
【0017】
図7を参照すると、本発明の実施形態のフロー図が示されている。少なくとも1つの低速階層すなわち低速データストレージデバイスと、少なくとも1つの高速階層すなわち高速データストレージデバイスとを有する、階層化されたデータストレージシステムは、利用の多い期間中にデータ移行動作のオーバーヘッドを低減することにより、データストレージシステムの利用可能性を最大化してデータ要求を処理できるようにする。データストレージシステムが、データアクセスパターンに基づいて低速データストレージシステム上のデータがホットになったと判定した場合、データストレージシステムは、データを低速データストレージデバイス上のデータブロックから高速データストレージデバイス上のリザーブスペースデータブロックへ転送する(ステップ702)。リザーブスペースデータブロックは、リザーブスペーステーブル内に特定されたデータブロックである。リザーブスペースデータブロックは、通常の使用のためにはデータストレージシステムにより割り当てされておらず、特にデータ移行動作のためにリザーブされている。データが低速データストレージデバイス上のデータブロックから高速データストレージデバイス上のデータブロックへ転送されると、データストレージシステムは、低速データストレージデバイス上の以前データが位置していたデータブロックを、リザーブスペーステーブルへ追加する(ステップ704)。すると、データが以前位置していたデータブロックはリザーブスペースの一部になり、データストレージシステムによる通常の使用ができなくなり、データ移行動作にのみ利用可能となる。次に、データストレージシステムは、データ転送先のデータブロックである高速データストレージデバイス上のデータブロックを、リザーブスペーステーブルから除去する(ステップ706)。これにより、この高速データストレージデバイス上のデータブロックは、データストレージデバイスにより通常の使用のために利用できるようになる。
【0018】
リザーブスペーステーブルが、リザーブスペースのなんらかの閾値量が低速データストレージデバイスへ転送されたことを示す場合、データストレージシステムは、コールドスワップを開始して、リザーブスペースを高速データストレージデバイスへ戻す。データストレージデバイスは、コールドデータを、高速データストレージデバイス上のデータブロックから、リザーブスペーステーブル内に特定された低速データストレージデバイス上のデータブロックへ転送する(ステップ708)。高速データストレージデバイス上のコールドデータは、高速データストレージデバイス上のユーザ又はプロセスによるアクセス頻度が最も低いデータ又はデータブロックを参照する。データが、高速データストレージデバイス上のデータブロックから低速データストレージデバイス上のデータブロックへ転送されると、データストレージシステムは、データが以前位置していた高速データストレージデバイス上のデータブロックをリザーブスペーステーブルへ追加する(ステップ710)。すると、データが以前位置していたデータブロックはリザーブスペースの一部になり、データストレージシステムによる通常の使用ができなくなり、データ移行動作にのみ利用可能となる。次に、データストレージシステムは、データ転送先のデータブロックである低速データストレージデバイス上のデータブロックを、リザーブスペーステーブルから除去する(ステップ712)。これにより、高速データストレージデバイス上のデータブロックは、データストレージデバイスにより通常の使用のために利用できるようになる。コールドスワップは、複数のリザーブスペースデータブロックを、低速データストレージシステムから高速データストレージシステムへ転送する。リザーブスペースの転送は、概して本明細書に記載したように処理され、データを高速階層から低速階層へ転送して、リザーブスペーステーブルを更新する。
【0019】
本発明及びこれに付随する数多くの効果が上述の記載により理解されるであろう。また本発明のコンポーネントの形態、構成、及び配置においてさまざまな変更が可能であり、これは本発明の範囲及び技術思想から逸脱することや本発明の重要な効果をなにも犠牲にすることなく行うことができることが明らかであろう。本明細書ですでに述べた形態は例示的な実施形態に過ぎず、以下に記載の請求項はこのような変更を包括するものとする。
【技術分野】
【0001】
本発明は、データストレージシステム(データ記憶システム)に関し、特に階層を有するデータストレージシステムに関する。
【背景技術】
【0002】
ブロックベースのストレージシステムでは、頻繁にアクセスされるデータ(ホットデータ)をより高速でより能力の高いドライブへ移動し、同時にアクセス頻度のより低いデータ(コールドデータ)を能力の劣る低速ストレージへ移動することにより、システム全体の性能が向上している。この解決策は、ストレージ階層化として知られ、ストレージが必要なあらゆる場合に高性能ストレージを用いるよりも費用効果が高い。通常の階層化構成は、より安価で能力の劣るドライブ(例えば、SATAドライブ)の大規模ストレージプールを「低速階層」として、そしてより高価でより性能の高いドライブ(例えば、SSD)の小規模プールを「高速階層」として使用する。階層化により、他の同等の構成よりも優れた単価あたりの性能を提供することができる。
【発明の開示】
【発明が解決しようとする課題】
【0003】
階層化の効果を発揮するには、データのアクセス頻度が時間の経過とともに変化しても、ホットデータは高速階層上に維持され、コールドデータは低速階層に維持されなければならない。階層化されたデータストレージシステムは、データ又はデータのブロックのアクセス頻度を追跡し、アクセス頻度の変化に従いデータを階層間で移動する。階層間のデータの移動はオーバーヘッドを生じ、実際に実行しているIOから帯域幅を奪ってしまう。
したがって、階層化されたデータストレージシステムの階層間で、データを効率的に移行するのに適した装置があれば有益であり、本発明は、階層化されたデータストレージシステムの階層間でデータを効率的に移行する新しい方法及び装置を提供する。
【課題を解決するための手段】
【0004】
本発明は、高速階層及び低速階層を有するデータストレージシステムを提供し、該システムにおいては、高速階層の一部がリザーブされる。以前はコールドデータであったものがホットデータになると、このデータは低速階層から高速階層上のリザーブされた部分へ転送される。テーブルは、初めは高速階層のリザーブされた部分のスペース全てを追跡する。データがホットになり高速階層のリザーブされた部分へ転送されると、テーブルが修正されて、データの低速階層上の以前の位置をリザーブされた部分へ追加し、データの高速階層上の新しい位置をリザーブされた部分から除去する。この方法によれば、データ移行は主に低速階層から高速階層へのものであり、対応する高速階層から低速階層への移行がすぐに行われることはなく、そのため移行の初期オーバーヘッドが低減される。リザーブ部分の所定の割合が低速階層へ移行されたとき、データストレージシステムは、コールドデータの高速階層から低速階層への大量移行を実行する。大量移行のタイミングは利用可能なシステム資源に依存する。
【0005】
上記の概要及び下記の詳細な説明はともに、例示及び説明にすぎず特許請求される本発明を限定するものではない。添付図面は明細書に含まれその一部を構成するものであり本発明の実施形態を示し、概要とともに本発明の原理を説明する役割を果たす。
当業者が添付図面を参照すれば、本発明の数多くの目的及び効果をよりよく理解できるであろう。
【図面の簡単な説明】
【0006】
【図1】本発明を実施するために有用な、データストレージシステムのブロック図である。
【図2】異なるデータストレージ技術を含む仮想ドライブを用いて実施された、階層化されたドライブのブロック図である。
【図3A】低速データストレージデバイス及び高速データストレージデバイスを有するデータストレージシステム内の、データブロックの初期レイアウトのテーブルを示す図である。
【図3B】高速データストレージデバイスと低速データストレージデバイスとを有するデータストレージシステム内の、データストレージデバイス上のリザーブスペースと関連付けられた論理ブロックアドレスの初期テーブルを示す図である。
【図4A】1つのデータブロックが低速データストレージデバイスから高速データストレージデバイスへ移行された後の、低速データストレージデバイスと高速データストレージデバイスとを有するデータストレージシステム内の、データブロックのテーブルを示す図である。
【図4B】1つのデータブロックが低速データストレージデバイスから高速データストレージデバイスへ移行された後の、高速データストレージデバイスと低速データストレージデバイスとを有するデータストレージシステム内の、データストレージデバイス上のリザーブスペースと関連付けられた論理ブロックアドレスのテーブルを示す図である。
【図5A】2つのデータブロックが低速データストレージデバイスから高速データストレージデバイスへ移行された後の、低速データストレージデバイスと高速データストレージデバイスとを有するデータストレージシステム内の、データブロックのテーブルを示す図である。
【図5B】2つのデータブロックが低速データストレージデバイスから高速データストレージデバイスへ移行された後の、高速データストレージデバイスと低速データストレージデバイスとを有するデータストレージシステム内の、データストレージデバイス上のリザーブスペースと関連付けられた論理ブロックアドレスのテーブルを示す図である。
【図6A】リザーブスペースを高速データストレージデバイスへ戻すコールドスワップの後の、低速データストレージデバイスと高速データストレージデバイスとを有するデータストレージシステム内の、データブロックのテーブルを示す図である。
【図6B】リザーブスペースを高速データストレージデバイスへ戻すコールドスワップの後の、高速データストレージデバイスと低速データストレージデバイスとを有するデータストレージシステム内の、データストレージデバイス上のリザーブスペースと関連付けられた論理ブロックアドレスのテーブルを示す図である。
【図7】低速データストレージデバイスと高速データストレージデバイスとを有するデータストレージシステム内でデータを移行する方法のフロー図である。
【発明を実施するための形態】
【0007】
添付図面を参照して、本発明を以下に詳細に説明する。本発明の範囲は請求項によってのみ限定されるものであり、数多くの代替、修正、及び均等物が包含される。明確にするために、実施形態に関係する技術分野で既知の技術的事項については詳細な説明はせずに、不要に記載が不明瞭にならないようにしている。
【0008】
図1は、本発明の実施例のデータストレージシステムのブロック図を示している。本発明の実施例のデータストレージシステムは、プロセッサ102と、該プロセッサに接続されたメモリ104と、1又は複数のデータストレージデバイス106、108とを備えている。本発明は、階層化されたデータストレージシステム内のデータ移行に関し、本発明の実施例のデータストレージシステムは、高速データストレージ階層106と、低速データストレージ階層108とを備えている。あるいは、図2に示すように、本発明の実施例データストレージシステムは、1又は複数の階層化された論理ドライブ202を備え、該論理ドライブ202は1又は複数の仮想ドライブ204、206、208を備えている。これら仮想ドライブ204、206、208はそれぞれ、1又は複数の物理ドライブへアクセスする論理的構成概念である。例えば、SATA仮想ドライブ204は、複数のSATAハードドライブへアクセスする論理的構成概念であり、SAS仮想ドライブ206は、複数のSASハードドライブへアクセスする論理的構成概念、そしてSSD仮想ドライブ208は、複数のソリッドステートドライブへアクセスする論理的構成概念である。図2に示すような1又は複数の階層化されたドライブ202を備えた階層化されたデータストレージシステムでは、各階層化されたドライブ202は、外部のユーザやプロセスからは、単一の統合された論理ブロックアドレス(LBA)システムをもつ単一のデータストレージデバイスとして認識される。
【0009】
階層化されたデータストレージシステムとしての効果を発揮するためには、該システムは、最もアクセス頻度の高いデータ(ホットデータ)を高速階層上に維持しなければならない。高速階層を実現するために用いられる技術は、低速階層を実現するために用いられる技術に比べると、データストレージの単価がより高くなる。このため、高速階層のストレージ総容量は比較的小さい。時間が経過すると、さまざまなデータがアクセスされるためにデータアクセスパターンが変化し、それによって以前はコールドデータだったものがホットデータになり、逆に、以前はホットデータだったものがコールドデータになることがある。したがって、以前にコールドデータだったものがホットデータになると、階層化されたデータストレージシステムは、低速階層からのデータを高速階層へ移行しなければならない。高速階層は比較的容量が小さいので、高速階層上の容量を解放するために、時間の経過につれてコールドになったデータは低速階層へ移行する必要がある。
【0010】
本発明による階層化されたストレージデバイスは、データストレージデバイス上の容量の一部を、リザーブスペースとして保有している。図3A及び3Bを参照すると、図3Aは、高速階層308と低速階層306とを有する階層化されたデータストレージデバイス内の、データの初期分布のブロック図を示している。高速階層308及び低速階層306は、データブロック314へ分割されている。データブロック314は全て等しいサイズである。各データブロック314は、階層化されたドライブ論理ブロックアドレス(TD LBA)310を割り当てられる。各データブロックは、ローカルドライブ論理ブロックアドレス(LD LBA)も割り当てられ、ローカルドライブ論理ブロックアドレス(LD LBA)は、SDVD208等の仮想ドライブ又は物理ドライブに特有のものである。リザーブスペースは、初めは高速階層内の複数の非マッピングデータブロック312を含んでいる。高速階層上のデータブロック314は、リザーブスペース312を含む非マッピングデータブロックは除いて、全てデータ記憶のために利用することができる。リザーブスペース312を含む非マッピングデータブロックは、コントローラがデータ移行のためにのみ利用することができる。リザーブスペース312は、高速階層308の総容量の数パーセントであり、例えば5%である。図3Bは、非マッピングデータブロックのリザーブスペーステーブル302を示す。非マッピングデータブロックのリザーブスペーステーブル302内の各レコード304は、データストレージデバイス内の非マッピングデータブロックの位置を特定する。図3Bのテーブル302の各レコード304は、LD LBA及び階層により各非マッピングデータブロックを特定するが、当業者であれば、他の特定機構も可能であることがわかるであろう。例えば、各非マッピングデータブロックは、TD LBAにより特定されてもよい。リザーブスペーステーブル302は、高速階層308上に維持される。
【0011】
次に、図4A及び4Bを参照する。図4Aは、高速階層308及び低速階層306を有する階層化されたデータストレージデバイス内の、データの分布のブロック図であり、1つのデータブロックが低速階層306から高速階層308へ移行された場合を示している。データストレージシステムは、時間の経過に従いデータアクセスパターンを分析し、低速階層306上の1又は複数のデータブロックが高速階層308上のデータブロックよりも頻繁にアクセスされているか、すなわちホットであるかどうかを判定する。例えば、第1の低速階層データブロック406内のデータが、ユーザ又はプロセスが頻繁にアクセスしたために時間の経過につれてホットになることがある。データストレージシステムの効率を最大化するために、第1の低速階層データブロック406に記憶されたデータは、高速階層308へ移行されなければならない。しかし、図4Aに示すように、高速階層308上のマッピングデータブロックが全て埋まっていることがある。この場合は、データストレージシステムは、第1の低速階層データブロック406から、高速階層308上の第1の非マッピング高速階層データブロック404へ、データを移行する。次に、リザーブスペーステーブル302は、第1の低速階層データブロック406から第1の非マッピング高速階層データブロック404へのデータの移行を反映させるために修正される。第1の移行レコード402は、第1の低速階層データブロック406を参照するように更新されるか、又は、第1の移行レコードがリザーブスペーステーブル302へ追加されて、第1の低速階層データブロック406を参照するようにされ、第1の非マッピング高速階層データブロック404を参照する対応するレコードが除去される。これにより、第1の低速階層データブロック406がリザーブスペースの一部になる。本発明によるデータ移行は、したがって第1のデータ移行については一方向性である。つまり、データストレージシステムは、低速階層上のデータブロックからのデータのために、高速階層上のデータブロックからデータを移行して空き領域を作るということをしない。本発明によるデータ移行は、したがって、従来の階層化されたデータストレージシステムのデータ移行と比べてオーバーヘッドが低い。
【0012】
次に、図5A及び図5Bを参照する。図5Aは、高速階層308と低速階層306とを有するデータストレージシステム内の、データの分布のブロック図であり、2つのデータブロックが低速階層306から高速階層308へ移行された場合を示している。データストレージシステムが、低速階層306上の2つのデータブロックが高速階層308上のデータブロックよりもより頻繁にアクセスされた、すなわちホットであることを判定すると、データストレージシステムは、第1の低速階層データブロック406から高速階層308上の第1の非マッピング高速階層データブロック404へデータを移行し、図4A及び図4Bに示したようにリザーブスペーステーブル302を修正する。データストレージシステムは、次に第2の低速階層データブロック506から、高速階層308上の第2の非マッピング高速階層データブロック504へデータを移行する。それからリザーブスペーステーブル302が、第2の低速階層データブロック506から第2の非マッピング高速階層データブロック504へのデータの移行を反映するように修正される。第2の移行レコード502は、第2の低速階層データブロック506を参照するように更新されるか、又は第2の移行レコードがリザーブスペーステーブル302へ追加されて、第2の低速階層データブロック506を参照するようにされ、第2の非マッピング高速階層データブロック504を参照する対応するレコードが除去される。すると、第2の低速階層データブロック506がリザーブスペースの一部になる。したがって本発明によるデータ移行は、1又は複数のデータ移行についても引き続き一方向性である。本発明によるデータ移行は、したがって、従来の階層化されたデータストレージシステムのデータ移行と比べてオーバーヘッドが低い。
【0013】
図6A及び6Bを参照する。図6Aは、高速階層308と低速階層306とを有するデータストレージシステム内のデータの分布のブロック図であり、データストレージシステムが、高速階層308上の1又は複数のデータブロックから低速階層306へのデータの大量移行を通して、リザーブスペースを高速階層308へ戻す「コールドスワップ」を行った場合を示している。本発明によるデータストレージシステムの動作中、リザーブスペースは、初めは高速階層308へ割り当てられる(図3Aのリザーブスペース312を参照)が、低速階層306上のデータがホットになり高速階層308上のリザーブスペース内の非マッピングデータブロックへ移行されるにつれ、結局は低速階層306へ移行する。
【0014】
データの低速階層306上のデータブロックからの各移行は、対応するリザーブスペースの高速階層308から低速階層306への移行を伴い、このリザーブスペースの移行は、リザーブスペースの各データブロックの位置を記録しているリザーブスペーステーブル302を介して行われる。低速階層306上のリザーブスペースのデータブロックを追跡することにより、データストレージシステムは、時間の経過とともにホットデータが高速階層308へ移行するにつれて、高速階層308上のデータブロックからコールドデータを周期的に移行するのに十分なスペースを低速階層上に保有する。
【0015】
データストレージシステムは、移行閾値を含んでもよい。移行閾値は、低速階層306から高速階層308へ転送されるリザーブスペースの量に関する制限となる。移行閾値は、例えば80パーセント(80%)等、最初のリザーブスペースの割合であるが、当業者であれば80%は例であって他の閾値を採用してもよいことが分かるであろう。移行制限に到達すると、データストレージシステムは、「コールドスワップ」を開始する。コールドスワップは、リザーブスペースを高速階層308へ戻すためのプロセスであり、これはコールドデータを、高速階層上のデータブロックから、リザーブスペーステーブル302内に特定された低速階層上のデータブロックへ移行することにより行われる。あるいは、コールドスワップは、所定の間隔で開始されるか、又はシステムの使用が閾値より下であり、コールドスワップがデータストレージシステムのエンドユーザ性能を低減しないときに開始される。
【0016】
データストレージシステムがコールドスワップを開始すべきであると判定した場合、データストレージシステムは、高速階層308上のどのデータがコールドになったかを判定する。例えば、データストレージシステムは、高速階層308上の2つのデータブロック606、608が高速階層308上の他のデータブロックよりもアクセス頻度が低く、すなわちコールドであると判定する。データストレージシステムは、データを第1の高速階層データブロック606から、リザーブスペーステーブル302内の移行レコード(図5Aの第1の移行レコード402を参照)によりリザーブスペースとして特定された第1の低速階層データブロック406へ移行する。第1の低速階層データブロック406を特定する移行レコード602は、第1の高速階層データブロック606を参照するように更新されるか、又は移行レコード602がリザーブスペーステーブル302へ追加されて、第1の高速階層データブロック606を参照するようにされ、第1の低速階層データブロック406を参照する対応するレコードが除去される。次にデータストレージシステムは、データを第2の高速階層データブロック608から、リザーブスペーステーブル302内の移行レコード(図5Aの第2の移行レコード502を参照)によりリザーブスペースとして特定された第2の低速階層データブロック506へ移行する。第2の低速階層データブロック506を特定する移行レコード604は、第2の高速階層データブロック608を参照するように更新されるか、又は移行レコード604がリザーブスペーステーブル302へ追加されて、第2の高速階層データブロック608を参照するようにされ、第2の低速階層データブロック506を参照するレコードが除去される。コールドスワップ中は、高速階層308上の複数のデータブロックからのデータが一度に低速階層306へ、リザーブスペーステーブル内に特定される低速階層306の所定の位置へ、移行される。
【0017】
図7を参照すると、本発明の実施形態のフロー図が示されている。少なくとも1つの低速階層すなわち低速データストレージデバイスと、少なくとも1つの高速階層すなわち高速データストレージデバイスとを有する、階層化されたデータストレージシステムは、利用の多い期間中にデータ移行動作のオーバーヘッドを低減することにより、データストレージシステムの利用可能性を最大化してデータ要求を処理できるようにする。データストレージシステムが、データアクセスパターンに基づいて低速データストレージシステム上のデータがホットになったと判定した場合、データストレージシステムは、データを低速データストレージデバイス上のデータブロックから高速データストレージデバイス上のリザーブスペースデータブロックへ転送する(ステップ702)。リザーブスペースデータブロックは、リザーブスペーステーブル内に特定されたデータブロックである。リザーブスペースデータブロックは、通常の使用のためにはデータストレージシステムにより割り当てされておらず、特にデータ移行動作のためにリザーブされている。データが低速データストレージデバイス上のデータブロックから高速データストレージデバイス上のデータブロックへ転送されると、データストレージシステムは、低速データストレージデバイス上の以前データが位置していたデータブロックを、リザーブスペーステーブルへ追加する(ステップ704)。すると、データが以前位置していたデータブロックはリザーブスペースの一部になり、データストレージシステムによる通常の使用ができなくなり、データ移行動作にのみ利用可能となる。次に、データストレージシステムは、データ転送先のデータブロックである高速データストレージデバイス上のデータブロックを、リザーブスペーステーブルから除去する(ステップ706)。これにより、この高速データストレージデバイス上のデータブロックは、データストレージデバイスにより通常の使用のために利用できるようになる。
【0018】
リザーブスペーステーブルが、リザーブスペースのなんらかの閾値量が低速データストレージデバイスへ転送されたことを示す場合、データストレージシステムは、コールドスワップを開始して、リザーブスペースを高速データストレージデバイスへ戻す。データストレージデバイスは、コールドデータを、高速データストレージデバイス上のデータブロックから、リザーブスペーステーブル内に特定された低速データストレージデバイス上のデータブロックへ転送する(ステップ708)。高速データストレージデバイス上のコールドデータは、高速データストレージデバイス上のユーザ又はプロセスによるアクセス頻度が最も低いデータ又はデータブロックを参照する。データが、高速データストレージデバイス上のデータブロックから低速データストレージデバイス上のデータブロックへ転送されると、データストレージシステムは、データが以前位置していた高速データストレージデバイス上のデータブロックをリザーブスペーステーブルへ追加する(ステップ710)。すると、データが以前位置していたデータブロックはリザーブスペースの一部になり、データストレージシステムによる通常の使用ができなくなり、データ移行動作にのみ利用可能となる。次に、データストレージシステムは、データ転送先のデータブロックである低速データストレージデバイス上のデータブロックを、リザーブスペーステーブルから除去する(ステップ712)。これにより、高速データストレージデバイス上のデータブロックは、データストレージデバイスにより通常の使用のために利用できるようになる。コールドスワップは、複数のリザーブスペースデータブロックを、低速データストレージシステムから高速データストレージシステムへ転送する。リザーブスペースの転送は、概して本明細書に記載したように処理され、データを高速階層から低速階層へ転送して、リザーブスペーステーブルを更新する。
【0019】
本発明及びこれに付随する数多くの効果が上述の記載により理解されるであろう。また本発明のコンポーネントの形態、構成、及び配置においてさまざまな変更が可能であり、これは本発明の範囲及び技術思想から逸脱することや本発明の重要な効果をなにも犠牲にすることなく行うことができることが明らかであろう。本明細書ですでに述べた形態は例示的な実施形態に過ぎず、以下に記載の請求項はこのような変更を包括するものとする。
【特許請求の範囲】
【請求項1】
データストレージ装置であって、
プロセッサと、
該プロセッサへ接続され、リザーブスペーステーブルを記憶する第1のデータストレージデバイスと、
プロセッサへ接続された第2のデータストレージデバイスと
を備え、
第1のデータストレージデバイスは、第2のデータストレージデバイスよりも高速なアクセス時間を有し、
リザーブスペーステーブルは、第1のデータストレージデバイスの個別部分(ディスクリート部分)と、第2のデータストレージデバイスの個別部分とを特定するように構成され、
プロセッサは、
データを、第2のデータストレージデバイスの個別部分から、リザーブスペーステーブル内に特定された第1のデータストレージデバイスの個別部分へ転送し、
第2のデータストレージデバイスの個別部分の位置をリザーブスペーステーブルへ追加し、
第1のデータストレージデバイスの個別部分の位置をリザーブスペーステーブルから除去し、
データを、第1のデータストレージデバイスの複数の個別部分から第2のデータストレージデバイスの複数の個別部分へ転送し、
複数の位置であって、それぞれが第1のデータストレージデバイスの複数の個別部分の1つに関連付けされた複数の位置を、リザーブスペーステーブルへ追加し、
複数の位置であって、それぞれが第2のデータストレージデバイスの複数の個別部分の1つと関連付けされた複数の位置を、リザーブスペーステーブルから除去するように構成されている
ことを特徴とするデータストレージ装置。
【請求項2】
請求項1記載のデータストレージ装置において、プロセッサはさらに、第1のデータストレージデバイス及び第2のデータストレージデバイス間で、リザーブスペーステーブル内の位置の分布をモニタするよう構成されていることを特徴とするデータストレージ装置。
【請求項3】
請求項1記載のデータストレージ装置において、第1のデータストレージデバイスは、1又は複数のソリッドステートドライブを備えることを特徴とするデータストレージ装置。
【請求項4】
請求項1記載のデータストレージ装置において、第2のデータストレージデバイスは、1又は複数のハードディスクドライブを備えることを特徴とするデータストレージ装置。
【請求項5】
請求項1記載のデータストレージ装置において、プロセッサはさらに、リザーブスペーステーブル内に特定された任意の位置へのデータアクセス動作を禁止する機能を備えていることを特徴とするデータストレージ装置。
【請求項6】
データストレージ装置であって、
プロセッサと、
プロセッサへ接続され、リザーブスペーステーブルを記憶するように構成された第1のデータストレージデバイスと、
プロセッサへ接続された第2のデータストレージデバイスと
を備え、
第1のデータストレージデバイスは、第2のデータストレージデバイスよりも高速なアクセス時間を有し、
リザーブスペーステーブルは、第1のデータストレージデバイスの個別部分と、第2のデータストレージデバイスの個別部分とを特定するように構成され、
プロセッサは、
データを、第2のデータストレージデバイスの個別部分から、リザーブスペーステーブル内に特定された第1のデータストレージデバイスの個別部分へ転送し、
第2のデータストレージデバイスの個別部分をリザーブスペーステーブルへ追加し、
第1のデータストレージデバイスの個別部分をリザーブスペーステーブルから除去する
ように構成されている
ことを特徴とするデータストレージ装置。
【請求項7】
請求項6記載のデータストレージ装置において、プロセッサはさらに、第1のデータストレージデバイス及び第2のデータストレージデバイス間で、リザーブスペーステーブル内の位置の分布をモニタするよう構成されていることを特徴とするデータストレージ装置。
【請求項8】
請求項7記載のデータストレージ装置において、プロセッサはさらに、
リザーブスペーステーブル内の位置の分布が閾値を超えたときに、データを、第1のデータストレージデバイスの複数の個別部分から第2のデータストレージデバイスの複数の個別部分へ転送し、
複数の位置であって、それぞれが第1のデータストレージデバイスの複数の個別部分の1つに関連付けされた複数の位置を、リザーブスペーステーブルへ追加し、
複数の位置であって、それぞれが第2のデータストレージデバイスの複数の個別部分の1つと関連付けされた複数の位置を、リザーブスペーステーブルから除去する
ように構成されていることを特徴とするデータストレージ装置。
【請求項9】
請求項6記載のデータストレージ装置において、プロセッサはさらに、システム使用メトリックをモニタするように構成されることを特徴とするデータストレージ装置。
【請求項10】
請求項9記載のデータストレージ装置において、プロセッサはさらに、
システム使用メトリックが閾値を下回るときに、データを、第1のデータストレージデバイスの複数の個別部分から第2のデータストレージデバイスの複数の個別部分へ転送し、
複数の位置であって、それぞれが第1のデータストレージデバイスの複数の個別部分の1つに関連付けされた複数の位置を、リザーブスペーステーブルへ追加し、
複数の位置であって、それぞれが第2のデータストレージデバイスの複数の個別部分の1つと関連付けされた複数の位置を、リザーブスペーステーブルから除去する
ように構成されていることを特徴とするデータストレージ装置。
【請求項11】
請求項8記載のデータストレージ装置において、閾値は、リザーブスペーステーブル内に特定された、第2のデータストレージデバイス上の位置を参照する全ての位置の、80パーセントであることを特徴とするデータストレージ装置。
【請求項12】
請求項6記載のデータストレージ装置において、第1のデータストレージデバイスは、1又は複数のソリッドステートドライブを備えることを特徴とするデータストレージ装置。
【請求項13】
請求項6記載のデータストレージ装置において、第2のデータストレージデバイスは、1又は複数のハードディスクドライブを備えることを特徴とするデータストレージ装置。
【請求項14】
請求項6記載のデータストレージ装置において、プロセッサはさらに、リザーブスペーステーブル内に特定された任意の位置へのデータアクセス動作を禁止するよう構成されていることを特徴とするデータストレージ装置。
【請求項15】
データストレージシステムの階層間でデータを移行する方法であって、
データを、低速データストレージデバイスの個別部分から高速データストレージデバイスの個別部分へ転送するステップと、
低速データストレージデバイスの個別部分をリザーブスペーステーブルへ追加するステップと、
高速データストレージデバイスの個別部分をリザーブスペーステーブルから除去するステップと
を含むことを特徴とする方法。
【請求項16】
請求項15記載の方法において、該方法はさらに、低速データストレージデバイス及び高速データストレージデバイス間で、リザーブスペーステーブル内の位置の分布をモニタするステップを含むことを特徴とする方法。
【請求項17】
請求項16記載の方法において、該方法はさらに、
リザーブスペーステーブル内の位置の分布が閾値を超えたときに、データを、高速データストレージデバイスの複数の個別部分から低速データストレージデバイスの複数の個別部分へ転送するステップと、
複数の位置であって、それぞれが高速データストレージデバイスの複数の個別部分の1つに関連付けされた複数の位置を、リザーブスペーステーブルへ追加するステップと、
複数の位置であって、それぞれが低速データストレージデバイスの複数の個別部分の1つと関連付けされた複数の位置を、リザーブスペーステーブルから除去するステップと
を含むことを特徴とする方法。
【請求項18】
請求項17記載の方法において、閾値は、リザーブスペーステーブル内に特定された、低速データストレージデバイス上の位置を参照する全ての位置の、80パーセントであることを特徴とする方法。
【請求項19】
請求項15記載の方法において、高速データストレージデバイスは、1又は複数のソリッドステートドライブを備えることを特徴とする方法。
【請求項20】
請求項15記載の方法において、該方法はさらに、リザーブスペーステーブル内に特定された任意の位置へのデータアクセス動作を禁止するステップを含むことを特徴とする方法。
【請求項1】
データストレージ装置であって、
プロセッサと、
該プロセッサへ接続され、リザーブスペーステーブルを記憶する第1のデータストレージデバイスと、
プロセッサへ接続された第2のデータストレージデバイスと
を備え、
第1のデータストレージデバイスは、第2のデータストレージデバイスよりも高速なアクセス時間を有し、
リザーブスペーステーブルは、第1のデータストレージデバイスの個別部分(ディスクリート部分)と、第2のデータストレージデバイスの個別部分とを特定するように構成され、
プロセッサは、
データを、第2のデータストレージデバイスの個別部分から、リザーブスペーステーブル内に特定された第1のデータストレージデバイスの個別部分へ転送し、
第2のデータストレージデバイスの個別部分の位置をリザーブスペーステーブルへ追加し、
第1のデータストレージデバイスの個別部分の位置をリザーブスペーステーブルから除去し、
データを、第1のデータストレージデバイスの複数の個別部分から第2のデータストレージデバイスの複数の個別部分へ転送し、
複数の位置であって、それぞれが第1のデータストレージデバイスの複数の個別部分の1つに関連付けされた複数の位置を、リザーブスペーステーブルへ追加し、
複数の位置であって、それぞれが第2のデータストレージデバイスの複数の個別部分の1つと関連付けされた複数の位置を、リザーブスペーステーブルから除去するように構成されている
ことを特徴とするデータストレージ装置。
【請求項2】
請求項1記載のデータストレージ装置において、プロセッサはさらに、第1のデータストレージデバイス及び第2のデータストレージデバイス間で、リザーブスペーステーブル内の位置の分布をモニタするよう構成されていることを特徴とするデータストレージ装置。
【請求項3】
請求項1記載のデータストレージ装置において、第1のデータストレージデバイスは、1又は複数のソリッドステートドライブを備えることを特徴とするデータストレージ装置。
【請求項4】
請求項1記載のデータストレージ装置において、第2のデータストレージデバイスは、1又は複数のハードディスクドライブを備えることを特徴とするデータストレージ装置。
【請求項5】
請求項1記載のデータストレージ装置において、プロセッサはさらに、リザーブスペーステーブル内に特定された任意の位置へのデータアクセス動作を禁止する機能を備えていることを特徴とするデータストレージ装置。
【請求項6】
データストレージ装置であって、
プロセッサと、
プロセッサへ接続され、リザーブスペーステーブルを記憶するように構成された第1のデータストレージデバイスと、
プロセッサへ接続された第2のデータストレージデバイスと
を備え、
第1のデータストレージデバイスは、第2のデータストレージデバイスよりも高速なアクセス時間を有し、
リザーブスペーステーブルは、第1のデータストレージデバイスの個別部分と、第2のデータストレージデバイスの個別部分とを特定するように構成され、
プロセッサは、
データを、第2のデータストレージデバイスの個別部分から、リザーブスペーステーブル内に特定された第1のデータストレージデバイスの個別部分へ転送し、
第2のデータストレージデバイスの個別部分をリザーブスペーステーブルへ追加し、
第1のデータストレージデバイスの個別部分をリザーブスペーステーブルから除去する
ように構成されている
ことを特徴とするデータストレージ装置。
【請求項7】
請求項6記載のデータストレージ装置において、プロセッサはさらに、第1のデータストレージデバイス及び第2のデータストレージデバイス間で、リザーブスペーステーブル内の位置の分布をモニタするよう構成されていることを特徴とするデータストレージ装置。
【請求項8】
請求項7記載のデータストレージ装置において、プロセッサはさらに、
リザーブスペーステーブル内の位置の分布が閾値を超えたときに、データを、第1のデータストレージデバイスの複数の個別部分から第2のデータストレージデバイスの複数の個別部分へ転送し、
複数の位置であって、それぞれが第1のデータストレージデバイスの複数の個別部分の1つに関連付けされた複数の位置を、リザーブスペーステーブルへ追加し、
複数の位置であって、それぞれが第2のデータストレージデバイスの複数の個別部分の1つと関連付けされた複数の位置を、リザーブスペーステーブルから除去する
ように構成されていることを特徴とするデータストレージ装置。
【請求項9】
請求項6記載のデータストレージ装置において、プロセッサはさらに、システム使用メトリックをモニタするように構成されることを特徴とするデータストレージ装置。
【請求項10】
請求項9記載のデータストレージ装置において、プロセッサはさらに、
システム使用メトリックが閾値を下回るときに、データを、第1のデータストレージデバイスの複数の個別部分から第2のデータストレージデバイスの複数の個別部分へ転送し、
複数の位置であって、それぞれが第1のデータストレージデバイスの複数の個別部分の1つに関連付けされた複数の位置を、リザーブスペーステーブルへ追加し、
複数の位置であって、それぞれが第2のデータストレージデバイスの複数の個別部分の1つと関連付けされた複数の位置を、リザーブスペーステーブルから除去する
ように構成されていることを特徴とするデータストレージ装置。
【請求項11】
請求項8記載のデータストレージ装置において、閾値は、リザーブスペーステーブル内に特定された、第2のデータストレージデバイス上の位置を参照する全ての位置の、80パーセントであることを特徴とするデータストレージ装置。
【請求項12】
請求項6記載のデータストレージ装置において、第1のデータストレージデバイスは、1又は複数のソリッドステートドライブを備えることを特徴とするデータストレージ装置。
【請求項13】
請求項6記載のデータストレージ装置において、第2のデータストレージデバイスは、1又は複数のハードディスクドライブを備えることを特徴とするデータストレージ装置。
【請求項14】
請求項6記載のデータストレージ装置において、プロセッサはさらに、リザーブスペーステーブル内に特定された任意の位置へのデータアクセス動作を禁止するよう構成されていることを特徴とするデータストレージ装置。
【請求項15】
データストレージシステムの階層間でデータを移行する方法であって、
データを、低速データストレージデバイスの個別部分から高速データストレージデバイスの個別部分へ転送するステップと、
低速データストレージデバイスの個別部分をリザーブスペーステーブルへ追加するステップと、
高速データストレージデバイスの個別部分をリザーブスペーステーブルから除去するステップと
を含むことを特徴とする方法。
【請求項16】
請求項15記載の方法において、該方法はさらに、低速データストレージデバイス及び高速データストレージデバイス間で、リザーブスペーステーブル内の位置の分布をモニタするステップを含むことを特徴とする方法。
【請求項17】
請求項16記載の方法において、該方法はさらに、
リザーブスペーステーブル内の位置の分布が閾値を超えたときに、データを、高速データストレージデバイスの複数の個別部分から低速データストレージデバイスの複数の個別部分へ転送するステップと、
複数の位置であって、それぞれが高速データストレージデバイスの複数の個別部分の1つに関連付けされた複数の位置を、リザーブスペーステーブルへ追加するステップと、
複数の位置であって、それぞれが低速データストレージデバイスの複数の個別部分の1つと関連付けされた複数の位置を、リザーブスペーステーブルから除去するステップと
を含むことを特徴とする方法。
【請求項18】
請求項17記載の方法において、閾値は、リザーブスペーステーブル内に特定された、低速データストレージデバイス上の位置を参照する全ての位置の、80パーセントであることを特徴とする方法。
【請求項19】
請求項15記載の方法において、高速データストレージデバイスは、1又は複数のソリッドステートドライブを備えることを特徴とする方法。
【請求項20】
請求項15記載の方法において、該方法はさらに、リザーブスペーステーブル内に特定された任意の位置へのデータアクセス動作を禁止するステップを含むことを特徴とする方法。
【図1】
【図2】
【図7】
【図3A】
【図3B】
【図4A】
【図4B】
【図5A】
【図5B】
【図6A】
【図6B】
【図2】
【図7】
【図3A】
【図3B】
【図4A】
【図4B】
【図5A】
【図5B】
【図6A】
【図6B】
【公開番号】特開2013−105489(P2013−105489A)
【公開日】平成25年5月30日(2013.5.30)
【国際特許分類】
【出願番号】特願2012−233509(P2012−233509)
【出願日】平成24年10月23日(2012.10.23)
【出願人】(591007686)エルエスアイ コーポレーション (93)
【Fターム(参考)】
【公開日】平成25年5月30日(2013.5.30)
【国際特許分類】
【出願日】平成24年10月23日(2012.10.23)
【出願人】(591007686)エルエスアイ コーポレーション (93)
【Fターム(参考)】
[ Back to top ]