JP5629919B2 - 継続中の負荷の測定及びランク付けを用いてストレージプールに仮想ボリュームのホットスポットを配置する方法 - Google Patents

継続中の負荷の測定及びランク付けを用いてストレージプールに仮想ボリュームのホットスポットを配置する方法 Download PDF

Info

Publication number
JP5629919B2
JP5629919B2 JP2010108122A JP2010108122A JP5629919B2 JP 5629919 B2 JP5629919 B2 JP 5629919B2 JP 2010108122 A JP2010108122 A JP 2010108122A JP 2010108122 A JP2010108122 A JP 2010108122A JP 5629919 B2 JP5629919 B2 JP 5629919B2
Authority
JP
Japan
Prior art keywords
data element
storage pool
load
storage
pool
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010108122A
Other languages
English (en)
Other versions
JP2011154669A (ja
Inventor
マルティン・イェス
Original Assignee
ネットアップ,インコーポレーテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ネットアップ,インコーポレーテッド filed Critical ネットアップ,インコーポレーテッド
Publication of JP2011154669A publication Critical patent/JP2011154669A/ja
Application granted granted Critical
Publication of JP5629919B2 publication Critical patent/JP5629919B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3485Performance evaluation by tracing or monitoring for I/O devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、データストレージ(記憶)システムによるデータ管理の分野に関するものであり、より詳細には、継続中の負荷の測定及びランク付けを用いて、仮想ボリュームのホットスポットをストレージプールに配置するための方法に関する。
データストレージシステムにおけるデータ管理を提供するための現在利用可能な方法は、所望のレベルの性能を提供していない。
従って、現在利用可能な方法の上述の短所に対処できるような、データシステムにおけるデータ管理を提供するため方法を提供する。
本発明は、ダイナミックストレージティアリング(DST)メカニズムを介して、ストレージシステムにデータエレメントの配置を提供するための方法を提供する。該方法は、ストレージシステムの複数のストレージプールを、ストレージプールの相対的な性能レベルに基づいて階層に組織化するステップと、複数のデータエレメントを、データエレメントの相対的なアクティビティレベルに基づいて複数のストレージプールに配置するステップと、ストレージシステムの複数のデータエレメント及び複数のストレージプールをモニタするステップと、複数のデータエレメントに含まれる第1のデータエレメントの負荷を決定するステップと、複数のストレージプールに含まれる第1のストレージプールに関する負荷レンジを決定するステップであって、第1のデータエレメントは第1のストレージプールに位置し、第1のストレージプールは第1の性能レベルを有する、ステップと、第1のデータエレメントの負荷と第1のストレージプールの負荷レンジを比較するステップと、第1のデータエレメントの負荷と第1のストレージプールの負荷レンジとの比較が、第1のデータエレメントの負荷の方が第1のストレージプールの負荷レンジの上限閾値よりも大きいことを示す場合に、複数のストレージプールに含まれる第2のストレージプールに関する負荷レンジを決定するステップであって、第2のストレージプールは第2の性能レベルを有する、ステップと、第1のデータエレメントの負荷と第2のストレージプールの負荷レンジを比較するステップと、第1のデータエレメントの負荷と第2のストレージプールの負荷レンジとの比較の結果、第1のデータエレメントの負荷が第2のストレージプールの負荷レンジの範囲内である場合に、第1のデータエレメントを移動してもよいかどうかを決定するためのデータエレメントの移動クライテリアを評価するステップであって、評価されるデータエレメントの移動クライテリアは、第2のストレージプールの空き容量、事前に決定された不適合性クライテリアのレベルに対する第1のデータエレメント及び第1のストレージプール間の不適合性のレベル、ストレージシステム上の全負荷、ストレージシステムに関するアクティブDSTの移動動作の数、第1のデータエレメントのサイズ、及びストレージシステムのポリシー制限の少なくとも1つを含むステップと、データエレメントの移動クライテリアの評価が、第1のデータエレメントを移動してよいことを示す場合に、第1のデータエレメントを第2のストレージプールに移動するステップとを備える。
本発明はさらに、信号記憶媒体を含んだコンピュータプログラム製品を提供し、信号記憶媒体は、ストレージシステムの複数のストレージプールを、ストレージプールの相対的な性能レベルに基づいて階層に組織化するためのコンピュータ使用可能コードと、複数のデータエレメントを、データエレメントの相対的アクティビティレベルに基づいて、複数のストレージプールに配置するためのコンピュータ使用可能コードと、ストレージシステムの複数のデータエレメント及び複数のストレージプールをモニタするためのコンピュータ使用可能コードと、複数のデータエレメントに含まれる第1のデータエレメントの負荷を決定するためのコンピュータ使用可能コードと、複数のストレージプールに含まれる第1のストレージプールに関する負荷レンジを決定するためのコンピュータ使用可能コードであって、第1のデータエレメントは第1のストレージプールに位置し、第1のストレージプールは第1の性能レベルを有する、コンピュータ使用可能コードと、第1のデータエレメントの負荷と第1のストレージプールの負荷レンジを比較するためのコンピュータ使用可能コードと、第1のデータエレメントの負荷と第1のストレージプールの負荷レンジとの比較が、第1のデータエレメントの負荷の方が第1のストレージプールの負荷レンジの上限閾値よりも大きいことを示す場合に、複数のストレージプールに含まれる第2のストレージプールに関する負荷レンジを決定するためのコンピュータ使用可能コードであって、第2のストレージプールが第2の性能レベルを有し、第2の性能レベルが第1の性能レベルよりも高い、コンピュータ使用可能コードと、第1のデータエレメントの負荷と第2のストレージプールの負荷レンジを比較するためのコンピュータ使用可能コードと、第1のデータエレメントの負荷と第2のストレージプールの負荷レンジとの比較が、第1のデータエレメントの負荷が第2のストレージプールの負荷レンジの範囲内であることを示す場合に、第1のデータエレメントを移動してよいかどうかを決定するためにデータエレメントの移動クライテリアを評価するためのコンピュータ使用可能コードであって、評価されるデータエレメントの移動クライテリアは、第2のストレージプールの空き容量、事前に決定された不適合性クライテリアのレベルに対する第1のデータエレメント及び第1のストレージプール間の不適合性レベル、ストレージシステム上の全負荷、ストレージシステムに対するアクティブDSTの移動動作の数、第1のデータエレメントのサイズ、及びストレージシステムのポリシー制限のうち、少なくとも1つを含むコンピュータ使用可能コードと、データエレメントの移動クライテリアの評価が、第1のデータエレメントを移動してよいことを示す場合に、第1のデータエレメントを第2のストレージプールに移動するためのコンピュータ使用可能コードと、を保持する。
前述の一般的な説明及び後述の詳細な説明は両方とも、単なる例示であって、特許請求された発明を必ずしも限定するものではない。本明細書に援用され且つその一部を構成する添付図面は、本発明の実施形態を図示し、本発明の概要とともに、本発明の原理を説明するものである。
本発明の実施形態による、ダイナミックストレージ階層化(DST:Dynamic Storage Tiering)メカニズムを介して(例:アルゴリズムを介して)ストレージシステムにデータエレメントの配置を提供するための方法を説明するフロー図を示す。 本発明の実施形態による、ダイナミックストレージ階層化メカニズムを介して(例:アルゴリズムを介して)ストレージシステムにデータエレメントの配置を提供するための方法を説明するフロー図であり、図1Aに続くフロー図である。 本発明の実施形態例による、データエレメントの配置を提供するための方法(例:図1A及び図1Bで示される方法等)が実現されるシステム(例:ストレージシステム)のブロック図である。
本発明の現在好適である実施形態を、添付した図面を参照して詳細に説明する。
ダイナミックストレージ階層化(DST)は、ストレージシステムのストレージ装置をそれぞれの特性に応じて階層的にグループ化し、且つストレージ装置の特定の機能にレバレッジをかけるためにダイナミックにデータを再配置するという概念である。このような再配置には、DTSメカニズムがデータの特定エレメントを最適な階層に配置できるような方法で、データが分類される必要がある。DTSは、ストレージ階層のいくつかの異なるクオリティオブサービス(QoS)属性に適用される。本発明は、DSTベースのストレージシステムの性能管理に関するものである。
性能管理に関して、本発明のDSTメカニズムの目的は、高アクティビティレベルを有するデータを特定し、高性能のストレージ階層(例:高性能ストレージプール)に配置することである。同じく重要なことは、低アクティビティレベルのデータ(例:高アクティビティレベルのデータよりも低いアクティビティレベルを有するデータ)を特定し、低性能のストレージ階層(例:低性能ストレージプール)に配置し、低性能のストレージ階層が高性能のストレージ階層よりも低い性能レベルを有する状態であることである。低アクティビティレベルのデータを低性能のストレージ階層に配置することで、低アクティビティレベルのデータが高性能のストレージ階層でストレージ容量を占めることを避けることができる。DSTメカニズムは、任意のホストデータをオフラインにすることなく、このようなデータ特定及び配置を実行することができる。
さらに、本発明のDSTメカニズムは、高性能のストレージ階層において、より高価なストレージ装置(例:高性能ストレージ装置)の利用を最大化するために、高性能のストレージ階層の最大限の使用を促進するものである。しかしながら、DSTメカニズムは高性能の階層に負荷をかけ過ぎることにより、その実効性能が低性能の階層を下回ることないよう構成する必要がある。過負荷は、高性能の階層におけるストレージ装置が飽和状態である(例:高性能の階層におけるストレージ装置のストレージ容量が飽和状態である)場合に生じる。
本発明のDSTメカニズムは、ストレージシステムの最適化のために、データエレメントの適切なストレージ階層への配置及び保持を連続的に実行できる。従来のソリューションは、本発明のDSTメカニズムの上述の機能を提供することができない。従来のソリューションの多くは、I/Oの振る舞いが高精度で予測できるという理論仮定に基づいている。しかし、I/Oの振る舞いを高精度に予測する方が、実際にははるかに困難であることが実証されている。従来の他のソリューションは、高度先進の統計的計算能力が必要である。DSTの難しい面は、場合によっては、データエレメントを第1のストレージ階層(例:高性能のストレージ階層)に移動することにより、そのストレージ階層の性能レベルが、第2のストレージ階層(例:低性能/より性能の低いストレージ階層)の実効性能を下回るようなレベルに変わる可能性があることである。継続的にストレージ階層の性能を測定することにより、データを第1のストレージ階層へ移動した後に、この観点/問題を検出することができるが、移動前には容易に予測できない。
外部ストレージアレイ(例:ストレージシステム)では、ストレージ仮想化マネージャ(SVM)がストレージアレイに配置される場合、各小型計算機システムインターフェース(SCSI)論理ユニット(LU)が仮想ボリュームにマッピングされる。仮想ボリュームは、ストレージアレイの1又は複数のストレージ階層(例:ストレージプール)における容量により提供される。例えば、各ストレージプールは、基本的には、ストレージ階層に対応している。ストレージプールは1又は複数の仮想ドライブ(例えば、RAIDボリューム:Redundant Array of Inexpensive Disks Volume)を備えている。仮想ボリュームが1又は複数のストレージプールから提供されると、仮想ボリューム論理ブロックアドレス(LBA)レンジの仮想ドライブLBAレンジへの各マッピングに対して、仮想ボリュームのセグメントが作成される。このように、仮想ボリュームからなる一組の仮想ボリュームセグメントが、仮想ボリューム構成を形成する。
SCSI LUに関して、高アクティビティレベルを有すると測定されたデータは、LU内のLBAレンジとして特定される。例えば、特定されたLBAレンジと関連付けられた高アクティビティレベルのデータは、残りのLUと比べてかなり高いアクティビティを有しており、ホットスポットと称される。LUは2以上のホットスポットを有している。この測定されたデータのアクティビティレベルはLBAレンジの負荷とも称される。
ホットスポットは、1つの仮想ボリュームセグメントに完全に含まれるか、又は2以上の仮想ボリュームセグメントにわたっている。このように、DSTの目的を満たすための1つの方法は、ホットスポットを含む仮想ボリュームセグメントをより性能の高いストレージプール(高性能ストレージ階層)に移動することである。しかし、仮想ボリュームセグメントは仮想ボリュームよりは小さいが、それでも非常に大きいものであり、且つホットスポットは、移動する仮想ボリュームセグメントのわずかな割合しか占めていない。本発明のDSTメカニズムはさらに、仮想ボリュームの構成(例:仮想ボリュームセグメント)をダイナミックに変更できるので、結果としてホットスポットは、ホットスポットより大き過ぎることのない1又は複数のより小さい仮想ボリュームセグメントに含まれることになる。本発明のDSTメカニズムは実質的に、ホットスポットを備えるこれらのより小さい仮想ボリュームセグメントを、本発明のDSTメカニズム内に又はメカニズムによって実現されるアルゴリズムに基づいて、適切なストレージプールに移動する。
ホットスポット検出メカニズムは、仮想ボリュームのLBAレンジを同サイズのクラスタに組織化し、そのクラスタに対してストレージシステムが継続的に負荷/アクティビティを測定する。例えば、性能統計(例:負荷測定値)が個々のクラスタに関して収集される。クラスタは、仮想ボリュームの総容量のパーセンテージ、及び固定サイズ(例:メガバイト(MBs)の所定数)のいずれかとして定義される。ストレージシステムは、トラッキングする必要のあるメタデータ/統計の量を制限するために、最小のクラスタサイズを有している。しかし、クラスタサイズは仮想ボリュームセグメントよりもかなり小さいことが通常である。ホットスポットは、残りの仮想ボリュームと比較して(かつ、DST管理下の別の仮想ボリュームと比較されて)高レベルのアクティビティを有する単一クラスタ又は隣接クラスタを介して特定される。それから仮想ボリュームの構成は、ホットスポットに対応するクラスタが1又は複数の仮想ボリュームセグメントに存在するように変更され、それによって、DSTメカニズムははるかに小さいクラスタを移動することができる。
ストレージシステムのSVMは、仮想ボリュームに関して1又は複数のポイントインタイム(PiT:Point-in-Time)コピーを作成するスナップショットメカニズムをサポートしている。PiTコピー(第1のPiT)が仮想ボリューム上で作成される場合、仮想ボリュームは凍結し、かつPiTの作成後に仮想ボリュームに加えられた変更の全てを保持するPiTテンポラリ仮想ボリューム(PTVV)が作成される。その結果、仮想ボリュームの元のコンテンツはPiTが作成された時点で保護される。この種のスナップショットメカニズムは、アロケートオンライト(allocate-on-write)又は、リダイレクトオンライト(re-direct-on-write)と称されるものであって、より一般的なコピーオンライトスナップショットメカニズムではない。別のPiT(第2のPiT)が第1のPiTの作成後に作成される場合は、第1のPiTのPTVV(例:現在のPTVV)が凍結され、新たなPTVV(例:第2のPiTのPTVV)が作成される。そして、最後に作成されたPiT(第2のPiT)は、作成されるとアクティブPiTになる。該システムは、全ての書き込みがアクティブPiTのPTVVに向けられるよう構成される。
仮想ボリュームのLBAレンジは、同じサイズのチャンクに概念的に分割される。チャンクのサイズはPiTの粒度であり、これは仮想ボリュームの属性である。仮想ボリュームの各チャンクのためのエントリを備えるリアロケーションテーブル(RT)が各PiTに関して作成され、PTVVの先頭に記憶される。Pitの作成後にホストによってチャンクが書き込まれると、アクティブPiTに関するRTの対応するエントリが割り当て済みとして区別され、該チャンクはPTVVの次に利用可能なLBAに配置される。PiTが削除される際には、削除されるPiTに対応するPTVVにあるチャンクは、以前のPiTに再統合されるか又は他にPiTがない場合は仮想ボリューム自身に再統合される。読み出しI/O動作が仮想ボリューム上で受け取られると、アクティブPiTに関するRTは常にそのチャンク(有効チャンク)の最新バージョンをポインティングする。有効チャンクは、アクティブPiT自身に関するPTVVに位置するか、古いPiTに関するPTVVに位置する、又はオリジナルボリュームに位置する。
読み出しホットスポットは、そこでのI/O動作の大部分が読み込み動作であるようなホットスポットと定義される。書き込みホットスポットは、そこでのI/O動作の大部分が書き込み動作であるようなホットスポットと定義される。ホットスポットが書き込みホットスポットである場合、I/Oアクティビティがアクティブ(最新の作成の)PiTに関するPTVVに集中している状態である。ホットスポットは、移動先ストレージプールに仮想ボリュームに対する新しいPiTを単に作成することで、移動先ストレージプールへ移動される。書き込みI/OアクティビティはアクティブPiTに引き続き集中するが、この時点でこのPiTは移動先ストレージプールに存在している。ホットスポットが落ち着く(アクティビティレベルが下がる)と、DSTは該PiTを単純に削除し、削除されたPiTのコンテンツを直前に作成の旧PiT/PTVVと再統合し、これによって、直前に作成の旧PiT/PTVVを再度アクティブにする。
ホットスポットが読み出しホットスポットである場合、問題となるLBAレンジが仮想ボリュームと関連付けられた多数のPiTにわたって分配されているため、少々複雑である。すなわち、移動先ストレージプールに新たなPiTを作成するだけでは不十分である。読み出しホットスポットが単一PiT内に含まれていても、チャンクのLBAレンジはPTVVにおいて連続しているとは期待できない(例えば、読み出しホットスポットを構成するチャンクはPTVV全体に広がっている)。PTVV自身は非常に大きい場合もあるので、PTVV全体を移動先ストレージプールに移動することは実現不可能である。読み出しホットスポットに関しては、DST(DSTメカニズム)は上述のように移動先ストレージプールにやはり新たなPiTを作成するが、それに加えて、読み出しホットスポットを含むLBAレンジを移動先ストレージプールの新たなPTVVへコピーするステップを実行する。この結果として、読み出しホットスポットに対応するチャンクの全てが、移動先ストレージプールのPTVVに配置される。したがって、仮想ボリューム内のホットスポットで読み出しが受け取られると、読み出しは、移動先ストレージプール(速い方のストレージプール)のPTVVにあるチャンクに向かうことになる。
上述のコピー処理の間に、新たなPTVV(移動先PTVV)でホストが書き込んだ任意のチャンクに対する上書きを回避することが重要である。DSTがホットスポットのLBAレンジにある全てのチャンクを移動先PTVVに単純に書き込みできないのは、コピー処理が行われていた間に同じLBAレンジにホストが書き込みしたデータがあれば、それが上書きされてしまうからである。したがって、読み出しホットスポットは、PiT追加コピー(Pit additive copy)と称されるプロセスを用いて、移動先ストレージプールに移動され、そのプロセスは、移動先PTVVにチャンクがまだ一つもない場合に、読み出しホットスポットのLBAレンジ内のチャンクのみがソースから移動先PTVVにコピーされるものである。このように、仮想ボリュームにおけるPiTの有無、及びホットスポットが読み出しホットスポットか書き込みホットスポットかを問わず、DSTはホットスポットを検出し、かつ別のストレージプールへ移動をするためのメカニズムを有する。
本発明の実施形態例では、DSTメカニズムは、DST配置アルゴリズムを実装し、ヒューリスティック(heuristic:発見的方法)を用いて、どのストレージシステムのストレージプールに各ホットスポットを配置すべきかを決定する。これらのヒューリスティックに含まれる第1のヒューリスティックは、ストレージシステムの高性能ストレージプール(より高性能なストレージプール)の利用を最大化するものである。第1のヒューリスティックは、より高性能なストレージプールがシステムの最も高価/より高価なストレージ装置を含むのだから、システムのユーザはこれらの高性能なストレージプールを最大限に利用することを望むはずである、という仮定に基づいている。さらに、これらの高性能な(より速い)ストレージプールの利用を増大すれば、ストレージシステム全体としての見かけ上の性能が大いに向上する。例えば、上述の第1のヒューリスティックを実現する/に従うことにより、ストレージシステムのストレージ装置の全てが、事実に反してあたかもより高価なタイプ(より高性能な/最も高性能なストレージプールに含まれるタイプの装置)であるようになる。
本発明のさらなる実施形態では、この第1のヒューリスティックに基づいて、DSTメカニズム(DST配置アルゴリズム)は、ホットスポットをストレージプールの性能ランクの高い順に(下降型で/最高性能から最低性能へ)ストレージプールに配置する。例えば、最もランクの高いストレージプール(最高性能のストレージプール)が最初に埋まり、2番目にランクの高いストレージプールが2番目に埋まり、3番目にランクの高いストレージプールが3番目に埋まる、等である。さらに、DST(DST配置アルゴリズム)は、次の条件を維持しようとする。
条件1:
任意のホットスポットi及びホットスポットjに関して、ランク(ストレージプール(ホットスポットi))<ランク(ストレージプール(ホットスポットj))であるならば、負荷(ホットスポットi)<負荷(ホットスポットj)である。
上記によると、条件1が維持されていれば、第1のホットスポット(ホットスポットi)を含むストレージプールの性能ランク/レベルが第2のホットスポット(ホットスポットj)を含むストレージプールの性能ランクよりも低い場合は、第1のホットスポット(ホットスポットi)の負荷は第2のホットスポット(ホットスポットj)の負荷よりも少ない。したがって、条件1が維持されている場合は、高いアクティビティレベル/負荷を有するホットスポットは、低いアクティビティレベル/負荷を有するホットスポットよりも高性能なストレージプールに配置されることになる。
本発明の実施形態例では、各ストレージプールは負荷の上限閾値及び負荷の下限閾値と関連付けされている。ストレージプールの負荷上限閾値は、ストレージプールにおいて最も高い負荷を有するホットスポットの負荷と定義される。ストレージプールの負荷下限閾値は、ストレージプールにおいて最低負荷を有するホットスポットの負荷と定義される。
定義1
ストレージプール(ホットスポットi)=ストレージプール(ホットスポットj)=SPであり、かつ、i!=jであるSPにおける任意のホットスポットjに関して、負荷(ホットスポットI)<負荷(ホットスポットj)を満足するiが存在するならば、下限閾値(SP)=ホットスポットIの負荷である。
定義2
ストレージプール(ホットスポットi)=ストレージプール(ホットスポットj)=SPであり、かつ、k!=jであるSPにおける任意のホットスポットjに関して、負荷(ホットスポットk)>負荷(ホットスポットj)を満足するiが存在するならば、上限閾値(SP)=負荷(ホットスポットk)である。
本発明のさらなる実施形態では、DSTはストレージプールの閾値が重なるのを回避しようとする。例えば、DSTは以下に記す条件を維持するような方法で、ホットスポットをストレージプールに配置する。
条件2
ランク(SPn)>ランク(SPm)であれば、下限閾値SPn>上限閾値(SPm)である。
上記によれば、システムが第1のストレージプール(SPn)及び第2のストレージプール(SPm)を有し、第1のストレージプールの性能ランクが第2のストレージプールの性能ランクよりも高い場合、第1のストレージプールの下限閾値が第2のストレージプールの上限閾値よりも大きければ、条件2が維持されることになる。
本発明の実施形態例では、DSTはレンジから最も外れているホットスポットを求めて、そのホットスポットの現在のストレージプールに関して継続的に検索をする。ホットスポットの現在のストレージプールで、常にレンジ外にあるホットスポットが特定されると、そのホットスポットをそれに見合うストレージプールに移動できるかどうかを、DSTは評価する。本発明のこの実施形態では、上述の評価を行う際に多数のファクタが考慮される。まず、DSTは評価対象のホットスポットのために移動先プール候補を特定する。例えば、移動先プール候補は、評価対象のホットスポットの負荷の値が移動先プール候補の閾値の上限及び下限の範囲内にあたる(又は閾値の上限値又は下限値と一致する)ようなストレージプールである。さらに、DSTは評価対象ホットスポットのサイズを移動先プール候補のストレージ容量と比較して、評価対象のホットスポットを受け入れるのに充分な容量を、移動先プール候補が有しているかを決定する。
さらなる実施形態では、DSTはホットスポット及びその現在のストレージプールとの不適合性を評価する。例えば、DSTはホットスポット上の負荷を特定し、その負荷をホットスポットの現在のストレージプールの上限閾値及び下限閾値と比較する。この比較は、ホットスポット及び現在のストレージプール間に、どのくらい「ひどい」不一致が現在あるかを決定する。この不一致は最小限の差異よりも大きいものでないと、DSTはホットスポットの移動を検討しない。上述の最小限の差異は、評価対象のホットスポットを移動するか否かを決定するために、システムによって事前に決定された又は構成された最小限の差異である。ホットスポットを別のストレージプールに移動することができるか(望ましいか)否かを評価する際に、本発明のDSTメカニズムによって考慮されるべき別のファクタ又はクライテリアは、ストレージシステム(ストレージシステム全体)上の現在の負荷についての決定、ストレージシステムに関する中央処理装置の利用についての決定、ストレージシステムに関する実行中のバックグランド動作の数についての決定、すでに実行中/アクティブ状態のDSTによるホットスポット移動動作がいくつあるかについての決定、移動すべきホットスポットのサイズについての決定(大きいホットスポットほど移動時間もかかるため、移動の可能性ありと評価された同程度の負荷を有するホットスポットが2つある場合、DSTは候補である2つのホットスポットのうちで小さい方を先に移動するよう選択する)、移動を禁止するポリシー制限があるかについての決定(ストレージプールにわたるデータエレメントの指定構造の準備段階(pre-staging)、を含む。DSTが上記のクライテリアに対する評価に基づいて、移動候補として分析されているホットスポットがクライテリアを満たしていないためそのホットスポットをその時点では移動すべきではないと決定する場合、DSTは上記のクライテリアで、次のエレメント(例:次のホットスポット)を、DSTが構成した現在のストレージプールに適合しないホットスポットの候補リストから選択し、かつ次のホットスポットを上記のクライテリアで評価する、等である。DSTは、現在のストレージプールに適合しないホットスポット候補のリストを継続的に更新し、上述のクライテリアでホットスポットを評価/再評価して、それらを他のストレージプールに移動できるか及び/又は移動すべきかを決定するために、定期的に常にリストを確認する。
本発明の実施形態例では、DSTメカニズムは、ホットスポットがDSTによって以前に移動された場合、ホットスポットの負荷が大きく変化しないかぎりは再度移動しないよう構成される。スラッシングを回避するために、移動されたばかりのホットスポットには猶予期間(grace time period)が課される。例えば、猶予期間内にホットスポットの負荷が大きく変化しなければ、再び移動の対象とならない。さらに、猶予期間の終了後も、以前の移動からホットスポットの負荷に大きな変化がなければ、元々のストレージプールに戻されることもできない。
本発明のさらなる実施形態では、ホットスポットが落ち着くと(ホットスポットの負荷がそのストレージプールの下限閾値を下回ると)、ホットスポットは、よりランクの低いストレージプールに移動されるか又は残りの仮想ボリュームを含むストレージプールに戻される場合もある(ホットスポットが自身の仮想ボリュームに再統合されて戻る)。このように落ち着いたホットスポットがランクの高いストレージプールから移動することにより、ランクの高いストレージプールはより高い負荷を有する新たなホットスポットのために容量を解放することができる。
本発明の実施形態では、DSTは、第1のストレージプール(SPn)へ配置するのにふさわしい新たなホットスポットを検出する。しかしながら、第1のストレージプールは、新たなホットスポットを保持できるほどの空き容量が残っていない場合もある。その場合にDSTは、別のホットスポットを第1のストレージプール(SPn)から、よりランクの低いストレージプールへ移動して、新たなホットスポットのために容量を解放する。これは、DSTが第1のストレージプール(SPn)に、新たなホットスポットよりも低い負荷を有する1又は複数のホットスポットであって、合わせた容量が新たなホットスポットに必要な容量と同じ又はより高いホットスポットを発見できる場合に、有効である。
上述のように、DSTは継続的にストレージプールの性能をモニタし、そして高いランクのストレージプールの平均応答時間性能が、一つ下のランクのストレージプールと同程度まで低減(一つ下のランクのストレージプールの事前に構成された所定の割合以内)すると、高いランクのプールは、そこから別のホットスポットが移動していかなければ、さらなるホットスポットを受け入れることができなくなる。本発明のこの実施形態では、ランクの高いストレージプールは受け入れができない状態であるが、ランクの高いストレージプールに第1のホットスポット(ホットスポットj)が存在し、それよりも高い負荷を有する第2のホットスポット(ホットスポットj)がDSTによって移動されようとしている。したがって、第2のホットスポットを低性能のストレージプールに移動することは、上述の条件1に反する。この場合、以下の条件が真ならば、ホットスポットiが先に一つ下の性能のストレージプールに移動される。a)第1のホットスポット(ホットスポットi)の移動で第2のホットスポット(ホットスポットj)のためにより高性能なストレージプールに十分な容量が解放される、及びb)第2のホットスポットのための十分な空き容量が一つ下の性能のストレージプールにある。両方の条件(条件a及びb)が満たされるならば、第1のホットスポットが一つ下の性能のストレージプールに移動され、次に第2のホットスポットは性能が高い方のストレージプールに移動される。条件の両方(条件a及びb)が性能の高い方のストレージプールにおいて任意のホットスポットに関して満たされていない場合は、第2のホットスポットは一つ下の性能のストレージプールに移動され、且つDSTは上記の条件(条件a及びb)に対して違反があったという表示/通知を記録及び/又は提供する。このような違反は、ストレージシステムの構成が変わるにつれて、後に解消される。
本発明のさらなる実施形態では、DSTが移動の必要がある多数のホットスポットを検出した場合、最も高い絶対負荷を有するホットスポットを選択して、まずはそれを移動する。それから、選択されたホットスポット(最も高い絶対負荷を有するホットスポット)のための容量を解放するために、他のホットスポットをよりランクの低いストレージプールに移動する必要があると決定すると、このような他の移動動作も、選択されたホットスポット(より高い/最も高い負荷のホットスポット)を配置するための動作全体の一部とみなされる。
実施形態では、DSTは、よりランクの高いストレージプールにホットスポットのための容量を生成/解放するために、仮想ボリューム全体をよりランクの低いプールへ移動する。この状況は、他に待機中又は実行中のホットスポット移動動作がない場合、よりランクの低いストレージプールに充分な空き容量がある場合、及び仮想ボリューム上の平均負荷−(マイナス)任意のホットスポットの負荷が、より低いランクのプール内に適合する(任意の隣接するストレージプールの閾値とオーバーラップしない状態でよりランクの低いプールの上限閾値及び下限閾値以内に当たる)場合である。
このように、本発明のDTSメカニズムは、ストレージシステムのために以下の機能を実行する。すなわち、LBAレンジ上の負荷を測定することによるホットスポットの検出、ホットスポットの相対負荷に基づくホットスポットのランク付け、測定された性能に基づくストレージプールのランク付け、ホットスポットのストレージプールへの降順による配置(より高性能なストレージプールへ最初に配置)、及びホットスポットが落ち着いた場合にランクの低いストレージプールへのホットスポットの移動、を実行する。
さらに、本発明のDSTメカニズムは、次のような利点を提供する。すなわち、DST/DSTメカニズムを提供する際に実現されるアルゴリズムが簡単に実現でき、かつプロトタイプである、DSTメカニズムがシステム上でCPUサイクルを過剰に消費しない、より高性能なストレージプールの利用を最大化する、システム上で変化する負荷条件に自動的に対応する、という利点である。
図1A及び図1Bの方法100により、本発明の実施形態例による、ダイナミックストレージ階層化(DST)メカニズムを用いて(アルゴリズムを用いて)ストレージシステム(図2に示されるシステム200)にデータエレメントの配置を提供する。方法100は、ストレージシステムの複数のストレージプールを、ストレージプールの相対的な性能レベル(標準応答時間性能)に基づいて階層に組織化するステップ102を含む。方法100はさらに、複数のデータエレメントを、データエレメントの相対的なアクティビティレベルに基づいて、複数のストレージプールに配置するステップ104を含む。方法100はさらにまた、ストレージシステムの複数のデータエレメント及び複数のストレージプールをモニタするステップ106を含む。方法100はまた、複数のデータエレメントに含まれる第1のデータエレメントの負荷を決定するステップ108を含む。
本発明のさらなる実施形態では、方法100はさらに、複数のストレージプールに含まれる第1のストレージプールに関する負荷レンジを決定するステップ110を含み、第1のデータエレメントは第1のストレージプールに位置し、第1のストレージプールは第1の性能レベルを有する。該方法はさらに、第1のデータエレメントの負荷を第1のストレージプールの負荷レンジと比較するステップ112を含む。方法100はさらにまた、上記の第1のデータエレメントの負荷と第1のストレージプールの負荷レンジとの比較で、第1のデータエレメントの負荷が第1のストレージプールの負荷レンジの上限閾値(負荷上限閾値)よりも大きいことが示される場合に、複数のストレージプールに含まれる第2のストレージプールに関する負荷レンジを決定するステップを含む。第2のストレージプールは第2の性能レベルを有し、第2の性能レベルは第1の性能レベルより高いものである。方法100はさらにまた、第1のデータエレメントの負荷を第2のストレージプールの負荷レンジと比較するステップ116を含む。
本発明の実施形態では、方法100はさらに、第1のデータエレメントの負荷と第2のストレージプールの負荷レンジとの比較で、第1のデータエレメントの負荷が第2のストレージプールの負荷レンジの範囲内であることが示された場合に、第1のデータエレメントを移動してよいかを決定するために、データエレメントの移動クライテリアを評価するステップ118を含む。評価されるデータエレメントの移動クライテリアは、少なくとも第2のストレージプールの空き容量、事前に決定された不適合性基準のレベルに対する(移動対象とされるためにデータエレメントに要求される事前に設定/構成された最小限の差異に対する)第1のデータエレメント及び第1のストレージプール間の不適合性レベル、ストレージシステム上の全負荷、ストレージシステムに関するアクティブDSTの移動動作の数、第1のデータエレメントのサイズ、及びストレージシステムのポリシー制限のうち、少なくとも1つを含む。方法100はさらに、データエレメントの移動クライテリアの評価が、第1のデータエレメントを移動してよいことを示す場合に、第1のデータエレメントを第2のストレージプールに移動させるステップ120を含む。方法100はさらに、第1のデータエレメントが第2のストレージプールに移動され、且つ、第1のデータエレメントの負荷が第2のストレージプールの負荷レンジの下限閾値を下回り、且つ第1のストレージプールの負荷レンジの範囲内にある場合に、第1のデータエレメントを第1のストレージプールに移動させるステップ122を含む。
本発明のさらなる実施形態では、方法100はさらに、上述のデータエレメントの移動クライテリアの評価で、第2のストレージプールの空き容量は第1のデータエレメントを第2のストレージプールに移動するには不十分であると示された場合に、第2のデータエレメントの負荷を第1のデータエレメントの負荷と比較するステップ124を含む。第2のデータエレメントは第2のストレージプールに位置している。方法100はさらに、第2のデータエレメントの負荷が第1のデータエレメントの負荷よりも低く、且つ第2のデータエレメントを排除することで、第2のストレージプールに第1のデータエレメントを受け取るのに充分な空き容量を提供できる場合に、第2のデータエレメントを第2のストレージプールから取り除き、且つ第1のデータエレメントを第2のストレージプールに移動するステップ126を含む。
本発明による前述された実施形態は、本明細書の教示に従ってプログラムされた従来の汎用デジタルコンピュータを用いて、簡便に実現できることは、コンピュータ技術の当業者には明らかであろう。適切なソフトウェアコーディングが、本開示の教示に基づいて熟練のプログラマによって容易に準備されることも、ソフトウェア技術の当業者には明らかであろう。
本発明は、ソフトウェアパッケージの形態で、簡便に実現できる。ソフトウェアパッケージは、開示された本発明の機能及びプロセスをコンピュータが実行するようプログラムするために用いられる、記憶されたコンピュータコードを備えたコンピュータ可読記憶媒体を採用している、コンピュータプログラム製品である。コンピュータ可読記憶媒体は、任意のタイプの従来型フロッピディスク、光ディスク、CD-ROM、磁気ディスク、ハードディスクドライブ、光磁気ディスク、ROM、RAM、EPROM、EEPROM、磁気又は光カード、あるいは電子指示を記憶するための任意の適宜の媒体であるが、それに限定するものではない。
前述で開示された方法におけるステップの、具体的な順序又は階層は、アプローチ例の例示である。設計の好みによって、該方法におけるステップの具体的な順序又は階層は、本発明の範囲内において再変更が可能である。添付の方法クレームは、見本的な順序でさまざまなステップの要素を提示したものであり、提示された具体的な順序又は階層に限定するものではない。
本発明及びそれに付随する多数の利点は、前述の記載によって理解されるであろう。また、本発明の精神および範囲を逸脱しない限りは、又はマテリアルアドバンテージの全てを犠牲にすることなしに、これに関する部品の形態、構造、及び配置において、多くの変更が可能である。前述された形式は、本発明の実施形態例にすぎないので、このような変更に関しては、以下に記載の特許請求の範囲に包含されるものとする。

Claims (15)

  1. ダイナミックストレージ階層化(DST)メカニズムを介してストレージシステムにデータエレメントの配置を提供するための方法であって、
    ストレージシステムの複数のストレージプールを、該ストレージプールの相対的な性能レベルに基づいて、階層に組織化するステップと、
    複数のデータエレメントを、該データエレメントの相対的なアクティビティレベルに基づいて、複数のストレージプールに配置するステップと、
    ストレージシステムの複数のデータエレメント及び複数のストレージプールをモニタするステップと、
    複数のデータエレメントに含まれる第1のデータエレメントの負荷を決定するステップと
    第1のデータエレメントと第1のストレージプール間の不適合性のレベルを求めるために第1のデータエレメントの負荷を用いるステップと、
    不適合性のレベルを不適合性基準と比較するステップと、
    を含んでいることを特徴とする方法。
  2. 請求項1記載の方法において、該方法はさらに、複数のストレージプールに含まれる第1のストレージプールに関する負荷レンジを決定するステップを含み、第1のデータエレメントは第1のストレージプールに位置し、第1のストレージプールは第1の性能レベルを有していることを特徴とする方法。
  3. 請求項2記載の方法において、該方法はさらに、第1のデータエレメントの負荷と第1のストレージプールの負荷レンジを比較するステップを含んでいることを特徴とする方法。
  4. 請求項3記載の方法において、該方法はさらに、第1のデータエレメントの負荷と第1のストレージプールの負荷レンジとの比較の結果、第1のデータエレメントの負荷が第1のストレージプールの負荷レンジの上限閾値よりも大きい場合に、複数のストレージプールに含まれる第2のストレージプールに関する負荷レンジを決定するステップを含み、第2のストレージプールは第2の性能レベルを有し、第2の性能レベルは第1の性能レベルよりも高いことを特徴とする方法。
  5. 請求項記載の方法において、該方法はさらに、第1のデータエレメントの負荷と第2のストレージプールの負荷レンジを比較するステップを含んでいることを特徴とする方法。
  6. 請求項5記載の方法において、該方法はさらに、第1のデータエレメントの負荷と第2のストレージプールの負荷レンジとの比較の結果、第1のデータエレメントの負荷が第2のストレージプールの負荷レンジの範囲内である場合に、第1のデータエレメントを移動してよいかどうかを決定するための、データエレメントの移動クライテリアを評価するステップを含み、評価されるデータエレメントの移動クライテリアは、第2のストレージプールの空き容量、不適合性基準に対する第1のデータエレメント及び第1のストレージプール間の不適合性のレベル、ストレージシステム上の全負荷、ストレージシステムに関するアクティブDSTの移動動作の数、第1のデータエレメントのサイズ、及びストレージシステムのポリシー制限のうち、少なくとも1つを含むことを特徴とする方法。
  7. 請求項6記載の方法において、該方法はさらに、データエレメントの移動クライテリアの評価が、第1のデータエレメントを移動してよいことを示す場合に、第1のデータエレメントを第2のストレージプールに移動するステップを含んでいることを特徴とする方法。
  8. 請求項7記載の方法において、該方法はさらに、第1のデータエレメントが第2のストレージプールに移動され、且つ、第1のデータエレメントの負荷が第2のストレージプールの負荷レンジの下限閾値を下回り、且つ第1のストレージプールの負荷レンジの範囲内にある場合に、第1のデータエレメントを第1のストレージプールに移動するステップを含んでいることを特徴とする方法。
  9. 請求項6記載の方法において、該方法はさらに、データエレメントの移動クライテリアの評価が、第2のストレージプールの空き容量は第1のデータエレメントを第2のストレージプールに移動するには不十分であることを示す場合に、第2のストレージプールに存在する第2のデータエレメントの負荷を第1のデータエレメントの負荷と比較するステップを含んでいることを特徴とする方法。
  10. 請求項9記載の方法において、該方法はさらに、第2のデータエレメントの負荷が第1のデータエレメントの負荷よりも小さく、第2のデータエレメントを排除することにより第2のストレージプールに第1のデータエレメントを受け取るのに充分な空き容量を提供できる場合に、第2のデータエレメントを第2のストレージプールから排除し、かつ第1のデータエレメントを第2のストレージプールに移動するステップを含んでいることを特徴とする方法。
  11. 非一時的コンピュータ可読記憶媒体を備えるコンピュータプログラムであって、憶媒体が、
    ストレージシステムの複数のストレージプールを、該ストレージプールの相対的な性能レベルに基づいて、階層に組織化するよう構成されるコンピュータ使用可能コードと、
    複数のデータエレメントを、データエレメントの相対的アクティビティレベルに基づいて、複数のストレージプールに配置するよう構成されるコンピュータ使用可能コードと、
    ストレージシステムの複数のデータエレメント及び複数のストレージプールをモニタするよう構成されるコンピュータ使用可能コードと、
    複数のデータエレメントに含まれる第1のデータエレメントの負荷を決定するよう構成されるコンピュータ使用可能コードと
    第1のデータエレメントの負荷を用いて第1のデータエレメントと第1のストレージプール間の不適合性のレベルを求めるように構成されたコンピュータ使用可能コードと、
    不適合性のレベルを不適合性基準と比較するよう構成されたコンピュータ使用可能コードと、を記憶していることを特徴とする、コンピュータプログラ
  12. 請求項11記載のコンピュータプログラムにおいて、憶媒体はさらに、
    複数のストレージプールに含まれる第1のストレージプールに関する負荷レンジを決定するよう構成されるコンピュータ使用可能コードであって、第1のデータエレメントは第1のストレージプールに位置し、第1のストレージプールは第1の性能レベルを有する、
    コンピュータ使用可能コードと、
    第1のデータエレメントの負荷と第1のストレージプールの負荷レンジを比較するよう構成されるコンピュータ使用可能コードと
    を記憶していることを特徴とする、コンピュータプログラ
  13. 請求項12記載のコンピュータプログラにおいて、記憶媒体はさらに、
    第1のデータエレメントの負荷と第1のストレージプールの負荷レンジとの比較の結果、第1のデータエレメントの負荷が第1のストレージプールの負荷レンジの上限閾値よりも大きい場合に、複数のストレージプールに含まれる第2のストレージプールに関する負荷レンジを決定するよう構成されるコンピュータ使用可能コードであって、第2のストレージプールは第2の性能レベルを有し、第2の性能レベルは第1の性能レベルよりも高い、コンピュータ使用可能コードと、
    第1のデータエレメントの負荷と第2のストレージプールの負荷レンジを、比較するよう構成されるコンピュータ使用可能コードと、
    第1のデータエレメントの負荷と第2のストレージプールの負荷レンジとの比較の結果、第1のデータエレメントの負荷は第2のストレージプールの負荷レンジの範囲内にある場合に、第1のデータエレメントを移動してよいかどうかを決定するためのデータエレメントの移動クライテリアを評価するよう構成されるコンピュータ使用可能コードであって、評価されるデータエレメントの移動クライテリアは、第2のストレージプールの空き容量、不適合性基準のレベルに対する第1のデータエレメント及び第1のストレージプール間の不適合性レベル、ストレージシステム上の全負荷、ストレージシステムに対するアクティブDSTの移動動作の数、第1のデータエレメントのサイズ、及びストレージシステムのポリシー制限のうち、少なくとも1つを含むコンピュータ使用可能コードと
    を記憶していることを特徴とする、コンピュータプログラ
  14. 請求項13記載のコンピュータプログラにおいて、憶媒体はさらに、
    データエレメントの移動クライテリアの評価が、第1のデータエレメントを移動してよいことを示す場合に、第1のデータエレメントを第2のストレージプールに移動するよう構成されるコンピュータ使用可能コードと、
    第1のデータエレメントが第2のストレージプールに移動され、かつ、第1のデータエレメントの負荷が第2のストレージプールの負荷レンジの下限閾値を下回り、第1のストレージプールの負荷レンジの範囲内にある場合に、第1のデータエレメントを第1のストレージプールに移動するよう構成されるコンピュータ使用可能コードと
    を記憶していることを特徴とする、コンピュータプログラ
  15. 請求項13記載のコンピュータプログラにおいて、信号記憶媒体はさらに、
    データエレメントの移動クライテリアの評価が、第2のストレージプールの空き容量は第1のデータエレメントを第2のストレージプールに移動するには不十分であることを示す場合に、第2のデータエレメントの負荷を第1のデータエレメントの負荷と比較するよう構成されるコンピュータ使用可能コードであって、第2のデータエレメントは第2のストレージプールに存在する、コンピュータ使用可能コードと、
    第2のデータエレメントの負荷が第1のデータエレメントの負荷よりも低く、第2のデータエレメントを排除することにより第2のストレージプールに第1のデータエレメントを受け取るのに充分な空き容量を提供できる場合に、第2のデータエレメントを第2のストレージプールから取り除き、第1のデータエレメントを第2のストレージプールに移動するよう構成されるコンピュータ使用可能コードと
    を記憶していることを特徴とする、コンピュータプログラ
JP2010108122A 2010-01-25 2010-05-10 継続中の負荷の測定及びランク付けを用いてストレージプールに仮想ボリュームのホットスポットを配置する方法 Expired - Fee Related JP5629919B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/692,838 US8285959B2 (en) 2010-01-25 2010-01-25 Method for placement of virtual volume hot-spots in storage pools using ongoing load measurements and ranking
US12/692,838 2010-01-25

Publications (2)

Publication Number Publication Date
JP2011154669A JP2011154669A (ja) 2011-08-11
JP5629919B2 true JP5629919B2 (ja) 2014-11-26

Family

ID=43927642

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010108122A Expired - Fee Related JP5629919B2 (ja) 2010-01-25 2010-05-10 継続中の負荷の測定及びランク付けを用いてストレージプールに仮想ボリュームのホットスポットを配置する方法

Country Status (6)

Country Link
US (1) US8285959B2 (ja)
EP (1) EP2348395A3 (ja)
JP (1) JP5629919B2 (ja)
KR (1) KR20110087192A (ja)
CN (1) CN102135861B (ja)
TW (1) TW201126330A (ja)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010138628A1 (en) * 2009-05-28 2010-12-02 Marvell World Trade Ltd. Metadata management for virtual volumes
US8793290B1 (en) * 2010-02-24 2014-07-29 Toshiba Corporation Metadata management for pools of storage disks
US8321646B2 (en) * 2010-04-13 2012-11-27 Dot Hill Systems Corporation Method and apparatus for rebalancing storage components within a storage tier
US9626127B2 (en) * 2010-07-21 2017-04-18 Nxp Usa, Inc. Integrated circuit device, data storage array system and method therefor
US8554917B2 (en) * 2010-08-20 2013-10-08 International Business Machines Corporation Performance isolation for storage clouds
WO2012131753A1 (en) * 2011-03-25 2012-10-04 Hitachi, Ltd. Storage system and performance management method of storage system
US8694727B2 (en) 2011-08-01 2014-04-08 Hitachi, Ltd. First storage control apparatus and storage system management method
US9058120B2 (en) * 2011-11-09 2015-06-16 International Business Machines Corporation Setting optimal space allocation policy for creating dependent snapshots to enhance application write performance and reduce resource usage
CN103186350B (zh) * 2011-12-31 2016-03-30 北京快网科技有限公司 混合存储系统及热点数据块的迁移方法
US9335948B1 (en) * 2012-03-27 2016-05-10 Emc Corporation Method and apparatus for enabling access to tiered shared storage using dynamic tier partitioning
US9195409B2 (en) * 2012-05-01 2015-11-24 Enmotus, Inc. Storage system with load balancing mechanism and method of operation thereof
US9460018B2 (en) * 2012-05-09 2016-10-04 Qualcomm Incorporated Method and apparatus for tracking extra data permissions in an instruction cache
US9665630B1 (en) * 2012-06-18 2017-05-30 EMC IP Holding Company LLC Techniques for providing storage hints for use in connection with data movement optimizations
US9690703B1 (en) * 2012-06-27 2017-06-27 Netapp, Inc. Systems and methods providing storage system write elasticity buffers
US9697111B2 (en) * 2012-08-02 2017-07-04 Samsung Electronics Co., Ltd. Method of managing dynamic memory reallocation and device performing the method
CN103678139B (zh) 2012-08-31 2017-09-29 国际商业机器公司 进行瘦供给的方法和装置
US9128745B2 (en) 2012-12-27 2015-09-08 International Business Machines Corporation Automatically managing the storage of a virtual machine
JP6065642B2 (ja) 2013-02-25 2017-01-25 富士通株式会社 ストレージ制御プログラム、ストレージ制御装置、ストレージシステム、及びストレージ制御方法
US9298372B2 (en) 2013-03-06 2016-03-29 Dell Products, L.P. System and method for managing storage system snapshots
CN103312776A (zh) * 2013-05-08 2013-09-18 青岛海信传媒网络技术有限公司 边缘节点服务器缓存视频的内容的方法和装置
JP6190898B2 (ja) 2013-10-28 2017-08-30 株式会社日立製作所 サーバに接続されるシステム及び仮想マシンが動作しているサーバに接続されたシステムによる方法
CN103577337B (zh) * 2013-11-05 2017-02-22 华为技术有限公司 存储系统的空间分配方法和设备
JP6299169B2 (ja) 2013-11-14 2018-03-28 富士通株式会社 ストレージ装置、ストレージ装置の制御方法、及びストレージ装置の制御プログラム
JP2015158711A (ja) 2014-02-21 2015-09-03 富士通株式会社 ストレージ制御装置、仮想ストレージ装置、ストレージ制御方法、及びストレージ制御プログラム
WO2016045096A1 (zh) 2014-09-26 2016-03-31 华为技术有限公司 一种文件迁移方法、装置和存储设备
JP2016126619A (ja) * 2015-01-06 2016-07-11 富士通株式会社 データ配置装置、データ配置プログラム及びデータ配置方法
CN104834478B (zh) * 2015-03-25 2018-05-22 中国科学院计算技术研究所 一种基于异构混合存储设备的数据写入及读取方法
US9983802B2 (en) 2015-04-29 2018-05-29 International Business Machines Corporation Allocating storage extents in a storage system
US9678681B2 (en) * 2015-06-17 2017-06-13 International Business Machines Corporation Secured multi-tenancy data in cloud-based storage environments
US10579540B2 (en) * 2016-01-29 2020-03-03 Netapp, Inc. Raid data migration through stripe swapping
CN107918613B (zh) * 2016-10-08 2022-01-21 上海宝存信息科技有限公司 因应服务质量的固态硬盘访问方法以及使用该方法的装置
US10552059B2 (en) 2017-01-27 2020-02-04 International Business Machines Corporation Data migration with placement based on access patterns
CN107704213B (zh) * 2017-11-02 2021-08-31 郑州云海信息技术有限公司 一种存储阵列的自动化服务质量管理方法及装置
CN110858124B (zh) 2018-08-24 2021-06-01 华为技术有限公司 数据迁移方法及装置
CN110764953A (zh) * 2019-09-30 2020-02-07 浪潮电子信息产业股份有限公司 一种数据恢复方法、装置、设备及可读存储介质
CN111311450B (zh) * 2020-02-28 2024-03-29 重庆百事得大牛机器人有限公司 用于法律咨询服务的大数据管理平台及方法
CN112181009B (zh) * 2020-09-14 2022-07-05 科华恒盛股份有限公司 热点追踪控制方法、装置及终端设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6032224A (en) * 1996-12-03 2000-02-29 Emc Corporation Hierarchical performance system for managing a plurality of storage units with different access speeds
JP2003216460A (ja) * 2002-01-21 2003-07-31 Hitachi Ltd 階層ストレージ装置及びその制御装置
JP2004021370A (ja) * 2002-06-13 2004-01-22 Hitachi Ltd ディスクアレイ制御装置
US6948032B2 (en) 2003-01-29 2005-09-20 Sun Microsystems, Inc. Method and apparatus for reducing the effects of hot spots in cache memories
JP4322031B2 (ja) * 2003-03-27 2009-08-26 株式会社日立製作所 記憶装置
US7747836B2 (en) 2005-03-08 2010-06-29 Netapp, Inc. Integrated storage virtualization and switch system
US7711916B2 (en) * 2005-05-11 2010-05-04 Oracle International Corporation Storing information on storage devices having different performance capabilities with a storage system
GB0514529D0 (en) * 2005-07-15 2005-08-24 Ibm Virtualisation engine and method, system, and computer program product for managing the storage of data

Also Published As

Publication number Publication date
US20110185120A1 (en) 2011-07-28
US8285959B2 (en) 2012-10-09
EP2348395A3 (en) 2012-05-02
TW201126330A (en) 2011-08-01
EP2348395A2 (en) 2011-07-27
CN102135861A (zh) 2011-07-27
JP2011154669A (ja) 2011-08-11
CN102135861B (zh) 2016-01-20
KR20110087192A (ko) 2011-08-02

Similar Documents

Publication Publication Date Title
JP5629919B2 (ja) 継続中の負荷の測定及びランク付けを用いてストレージプールに仮想ボリュームのホットスポットを配置する方法
US8447946B2 (en) Storage apparatus and hierarchical data management method for storage apparatus
US8984221B2 (en) Method for assigning storage area and computer system using the same
US8832371B2 (en) Storage system with multiple flash memory packages and data control method therefor
JP4749255B2 (ja) 複数種類の記憶デバイスを備えたストレージシステムの制御装置
US9311013B2 (en) Storage system and storage area allocation method having an automatic tier location function
US9026760B1 (en) Techniques for enforcing capacity restrictions of an allocation policy
US8429346B1 (en) Automated data relocation among storage tiers based on storage load
US9274941B1 (en) Facilitating data migration between tiers
US9323459B1 (en) Techniques for dynamic data storage configuration in accordance with an allocation policy
US9244618B1 (en) Techniques for storing data on disk drives partitioned into two regions
US10338825B2 (en) Managing SSD wear rate in hybrid storage arrays
US8762995B2 (en) Computing system, method of controlling the same, and system management unit which plan a data migration according to a computation job execution schedule
US8560801B1 (en) Tiering aware data defragmentation
US9823875B2 (en) Transparent hybrid data storage
WO2011141968A1 (en) Storage apparatus and data retaining method for storage apparatus
US10168945B2 (en) Storage apparatus and storage system
JP2014516442A (ja) 計算機システム及びデータ管理方法
US11461287B2 (en) Managing a file system within multiple LUNS while different LUN level policies are applied to the LUNS
JP2020046929A (ja) 情報処理装置及び情報処理プログラム
JP7234704B2 (ja) 情報処理装置及び情報処理プログラム
JP6572756B2 (ja) 情報処理装置、ストレージ制御プログラム、及びストレージ制御方法
JP6497233B2 (ja) ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法
JP2011242862A (ja) ストレージサブシステム及びその制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130430

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140203

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140422

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140425

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140724

TRDD Decision of grant or rejection written
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20140815

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140818

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20140827

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140815

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20140916

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140828

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140916

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20140916

R150 Certificate of patent or registration of utility model

Ref document number: 5629919

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D03

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees