[go: up one dir, main page]

JP2010282608A - 動的チャンク割り当て機能を有するデータストレージシステムに於けるデータボリューム生成を制御するための方法及び装置 - Google Patents

動的チャンク割り当て機能を有するデータストレージシステムに於けるデータボリューム生成を制御するための方法及び装置 Download PDF

Info

Publication number
JP2010282608A
JP2010282608A JP2010045863A JP2010045863A JP2010282608A JP 2010282608 A JP2010282608 A JP 2010282608A JP 2010045863 A JP2010045863 A JP 2010045863A JP 2010045863 A JP2010045863 A JP 2010045863A JP 2010282608 A JP2010282608 A JP 2010282608A
Authority
JP
Japan
Prior art keywords
chunks
data volume
total number
storage system
new data
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.)
Pending
Application number
JP2010045863A
Other languages
English (en)
Inventor
Taisuke Kaneda
泰典 兼田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of JP2010282608A publication Critical patent/JP2010282608A/ja
Pending legal-status Critical Current

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/0653Monitoring storage devices or systems
    • 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • 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/0608Saving storage space on storage systems
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • 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/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】動的チャンク割当機能を持つシステムにおいて、データボリューム生成を制御するための方法と装置を提供する。
【解決手段】複数のチャンクは一つ以上のデータボリュームに割り当てられているゼロ個以上の使用済みチャンクとゼロ個以上の使用済みチャンクではない残存チャンクを含む。新データボリュームを生成する為の新データボリューム生成動作は、ストレージシステム内の残存チャンクの総数に従って、新データボリュームが生成される前に禁止されるか又は警告される。残存チャンクは更に、一つ以上のデータボリューム内で使用するために予約されているが未だ割り当てられていない予約済みチャンクを含むことができる。
【選択図】図6

Description

0001 本発明は一般的にはストレージシステムに関連し、より具体的には動的チャンク割り当て機能を有するデータストレージシステムに於けるデータボリューム生成を制御するための方法及び装置に関連する。
0002 データボリューム中で消費される物理ブロックを少なくするために、ストレージシステムでは動的チャンク割り当て機能が採用される。この種のストレージシステムは、データボリュームが当初は物理ブロックを持たないという意味で特有のデータボリュームを持つ。ストレージシステムは、データボリュームが書き込みコマンドを受信し、書き込みコマンドで指定される適切なセグメントに未だチャンクが割り当てられていない時に、チャンクプールからチャンクを割り当てる。ここで「動的チャンク割り当てボリューム(DCAV)」と呼ばれるこの特有のデータボリュームがチャンクを消費することなく生成される。従って一度に膨大な数のDCAVを生成することがあり得る。例えば、膨大な数の仮想サーバが配備される場合には、膨大な数のDCAVが生成され、連携される。しかしながら、(例えば、ホストコンピュータからOSやアプリケーションソフトウェアをインストールするために)その後膨大な数のDCAVが一斉に使用され、チャンクが急速に消費される。チャンクの急速な消費の結果、ストレージシステムは短時間のうちに停止せざるを得ない。
0003 ストレージシステムに於ける動的チャンク割り当て機能の方法は、例えばUS2007/0234109号及び米国特許6,836,819号に開示されている。更に具体的には、これらの文献は使用済みチャンク数が予め決められた閾値を越えた時点で警告を発する方法を開示している。しかしながら、それらは使用済み/未使用チャンク数及び/又は容量増大情報に従ってデータボリューム生成を制御するためのいかなる方法も装置も開示していない。
0004 本発明の典型的な実施例は、データストレージシステムに於けるデータボリューム生成を制御するための方法と装置を提供する。データストレージシステムは、データボリュームが書き込みコマンドを受信し、適切なセグメントに未だチャンクが割り当てられていない時に、チャンクプールからデータボリュームにチャンクが割り当てられる、動的チャンク割り当て機能を有する。データボリューム生成が制御される。
0005 動的チャンク割り当てを備えるデータストレージシステムは警告機能を有する。使用済みチャンク数が予め決められた閾値を越えた時点で警告が発せられる。しかしながら、多数のデータボリュームが生成され、書き込み動作が一斉に実行されて、チャンク不足によりストレージシステムを停止させる必要が起こるであろう。例えば、複数のOSとアプリケーションソフトウェアのインストールはインストール開始後多数のチャンクを消費する。この停止を避けるために、ストレージシステム内の使用済み/未使用チャンク数及び/又は容量増大情報に従って、データボリュームの生成が禁止されるか又は警告される。従来技術ではデータボリューム生成を禁止していない。チャンク不足とストレージシステム停止はシステムが動的チャンク割り当てボリュームを使用開始後に起きる可能性がある。本発明は事前の見積りに従ってデータボリューム生成を禁止する。
0006 ストレージシステムに於ける動的チャンク割り当てプログラムは、チャンクをチャンクプールからデータボリュームに割り当てる。この動的チャンク割り当てプログラムはチャンクプール管理テーブルとチャンクテーブルを使用する。ストレージシステムはデータボリュームを生成できるか禁止すべきかを決定するデータボリューム禁止プログラムを有する。データボリューム禁止プログラムは禁止を決定するために使用済み/未使用チャンク数及び/又は容量増大情報を参照する。
0007 ストレージ装置は更に一つのデータボリュームに対して複数世代のスナップショットを取得するためのスナップショットプログラムを有する。スナップショットの各世代も又チャンクを消費する。その場合、データボリューム禁止プログラムは禁止を決定するために使用済み/未使用チャンク数、容量増大情報、及び/又はスナップショット世代に使用されるチャンク数を参照する。
0008 本発明の一つの態様によれば、ストレージシステムはプロセッサ、メモリ、及びデータボリュームに割り当てられ、それぞれが一つ以上のデータブロックを持つ複数のチャンクから成る。複数のチャンクは一つ以上のデータボリュームに割り当てられているゼロ個以上の使用済みチャンクと、ゼロ個以上の使用済みチャンクでない残存チャンクを含む。新データボリュームを生成する為の新データボリューム生成動作は、ストレージシステム内の残存チャンクの総数に従って、新データボリュームが生成される前に禁止されるか又は警告される。
0009 或る実施例では、残存チャンクは、一つ以上のデータボリュームに割り当てられていない未使用チャンクと、一つ以上のデータボリューム内で使用するために予約されているが一つ以上のボリュームに未だ割り当てられていない予約済みチャンクを含む。新データボリューム生成動作は、使用済みチャンクの総数と予約済みチャンクの総数の合計がストレージシステム内のチャンクの総数よりも大であれば禁止される。新データボリューム生成動作は、使用済みチャンクの総数と予約済みチャンクの総数の合計が、ストレージシステム内のチャンクの総数の100パーセントより小さい或るパーセンテージに等しい閾値よりも大であれば警告が発せられる。複数のチャンクは一つ以上のデータボリュームのスナップショット世代を表わす、或る時点に於ける一つ以上のデータボリュームのデータボリュームイメージに対して割り当てられている、一つ以上のスナップショットチャンクを含む。複数のチャンクは使用済みチャンクでもスナップショットチャンクでもないゼロ個以上の残存チャンクを含む。
0010 特定の実施例では、新データボリューム生成動作は、使用済みチャンクの総数、スナップショットチャンクの総数、及び予約済みチャンクの総数の合計がストレージシステム内のチャンクの総数よりも大であれば禁止される。新データボリューム生成動作は、使用済みチャンクの総数、スナップショットチャンクの総数、及び予約済みチャンクの総数の合計がストレージシステム内のチャンクの総数の、100パーセントより小さい或るパーセンテージに等しい閾値よりも大であれば警告が発せられる。メモリは、スナップショット削除要求を受信すると、一つ以上のスナップショットチャンクを未使用チャンクに変換するように構成されたスナップショットモジュールを有する。メモリは、チャンク数、使用済みチャンク数、未使用チャンク数、予約済みチャンク数、及びスナップショットチャンク数を監視し、チャンクの将来消費量を見積るように構成されたチャンク状態監視モジュールを有する。新データボリューム生成動作は、見積ったチャンクの将来の消費量に従って、新データボリュームが生成される前に禁止されるか又は警告される。
0011 本発明の別な態様によれば、ストレージシステムはプロセッサ、メモリ、及び少なくとも一つのプライマリボリュームと、該少なくとも一つのプライマリボリューム内に保存されるデータに基づくデータを保存するために使用される少なくとも一つのセカンダリボリュームと、を有するデータボリュームに割り当てられ、それぞれが一つ以上のデータブロックを持つ、複数のチャンクから成る。複数のチャンクは一つ以上のデータボリュームに割り当てられているゼロ個以上の使用済みチャンクと、一つ以上のデータボリュームに割り当てられていないゼロ個以上の未使用チャンクを含む。新データボリュームを生成する為の新データボリューム生成動作は、少なくとも一つのプライマリボリューム内の使用済みチャンクの総数に従って、新データボリュームが生成される前に禁止されるか又は警告される。
0012 或る実施例では、新データボリューム生成動作は、少なくとも一つのプライマリボリュームと少なくとも一つのセカンダリボリューム内の使用済みチャンクの総数に従って、新データボリュームが生成される前に禁止されるか又は警告される。新データボリューム生成動作は、少なくとも一つのプライマリボリュームと少なくとも一つのセカンダリボリューム内の使用済みチャンクの総数と予約済みチャンクの総数に従って、新データボリュームが生成される前に禁止されるか又は警告される。この予約済みチャンクは少なくとも一つのプライマリボリュームと少なくとも一つのセカンダリボリュームに未だ割り当てられていないがここで使用するために予約されている。複数のチャンクは少なくとも一つのプライマリボリュームのスナップショット世代を表わす、或る時点に於ける少なくとも一つのプライマリボリュームのデータボリュームイメージに対して少なくとも一つのセカンダリボリュームに割り当てられている、一つ以上のスナップショットチャンクを含む。新データボリューム生成動作は、ストレージシステムが受信する書き込みコマンドに応答して新データボリュームを生成する為に実行される。書き込みコマンドに応答した新データボリューム生成動作は、新データボリュームに指定された指定の日時の期限が満了するまで禁止される。
0013 本発明の別な態様によれば、ストレージシステムはプロセッサ、メモリ、データボリュームに割り当てられ、それぞれが一つ以上のデータブロックを持つ複数のチャンクから成る。複数のチャンクは一つ以上のデータボリュームに割り当てられているゼロ個以上の使用済みチャンクと、使用済みチャンクでないゼロ個以上の残存チャンクを含む。まだデータボリューム書き込み動作を受信していないデータボリュームの一つに対する最初の書き込み動作は、ストレージシステム内の残存チャンクの総数に従って禁止されるか又は警告される。
0014 或る実施例では、新データボリュームを生成する為に実行される新データボリューム生成動作は、ストレージシステム内の残存チャンクの総数に従って、新データボリュームが生成される前に禁止されるか又は警告される。この残存チャンクは、一つ以上のデータボリュームに割り当てられていない未使用のチャンクと、一つ以上のデータボリューム内での使用のために予約されているが一つ以上のボリュームに未だ割り当てられていない予約済みチャンクを含む。
0015 本発明のこれら及びその他の特徴や利点は以下の具体的な実施例の詳細な説明によってこの技術分野に於ける通常の知識を有する者(当業者)には明らかになるであろう。
0016 図1(a)は本発明の方法と装置が適用可能な情報システムのハードウェア構成の例を示す。 0017 図1(b)は図1(a)の情報システム内のストレージ装置のハードウェア構成と論理構造の例を示す。 0018 図2は書き込みコマンド、動的チャンク割り当てボリューム、チャンクプール、チャンク、及びHDDの関係を示す。 0019 図3(a)は図1(b)のストレージ装置のメモリ内のチャンクプール管理テーブルの例を示す。 0019 図3(b)は図1(b)のストレージ装置のメモリ内のチャンクプール管理テーブルの例を示す。 0020 図4は動的チャンク割り当てボリュームに対する図1(b)のストレージ装置のメモリ内のチャンクテーブル169の例を示す。 0021 図5(a)は図1(b)のストレージ装置のメモリ内のチャンクプール状態テーブルの例を示す。 0021 図5(b)は図1(b)のストレージ装置のメモリ内のチャンクプール状態テーブルの例を示す。 0021 図5(c)は図1(b)のストレージ装置のメモリ内のチャンクプール状態テーブルの例を示す。 0022 図6はDCAVプロビジョニングプロセスのプロセスフローダイアグラムの例を示す。 0023 図7(a)はDCAVを生成するための図1(a)の管理コンピュータ上の管理画面の例を示す。 0023 図7(b)はDCAVを生成するための図1(a)の管理コンピュータ上の管理画面の例を示す。 0023 図7(c)はDCAVを生成するための図1(a)の管理コンピュータ上の管理画面の例を示す。 0023 図7(d)はDCAVを生成するための図1(a)の管理コンピュータ上の管理画面の例を示す。 0024 図8(a)は図1(a)の管理コンピュータ内の予約済みチャンクのデフォルトテーブルの例を示す。 0024 図8(b)は図1(a)の管理コンピュータ内の予約済みチャンクのデフォルトテーブルの例を示す。 0025 図9は第一の実施例による図1(b)のストレージ装置のメモリ内の応答プログラム、動的チャンク割り当てプログラム、及びデータボリューム生成禁止プログラムを含む、書き込み動作のプロセスフローダイアグラムの例を示す。 0026 図10は図1(b)のストレージ装置のメモリ内の応答プログラムを含む読み出し動作のプロセスフローダイアグラムの例を示す。 0027 図11はRAIDグループ内にチャンクを持つRAID構成の例を示す。 0028 図12は第二の実施例による図1(b)のストレージ装置のメモリ内のチャンクテーブルの例を示す。 0029 図13は第二の実施例による図1(b)のストレージ装置のメモリ内のスナップショットカタログテーブルの例を示す。 0030 図14は第二の実施例による図1(b)のストレージ装置のメモリ内の応答プログラム、動的チャンク割り当てプログラム、及びデータボリューム生成禁止プログラムを含むスナップショット付き書き込み動作のプロセスフローダイアグラムの例を示す。 0031 図15はスナップショット選択動作に対する管理コンピュータの画面表示の例を示す。 0032 図16はスナップショット世代数が減少時のデータボリュームの使用済み及び未使用チャンクを示す。 0033 図17は第二の実施例による図1(b)のストレージ装置のメモリ内の分類テーブルの例を示す。 0034 図18は管理コンピュータでのスナップショット世代を含む選択のための画面表示の例を示す。 0035 図19は管理コンピュータでの削除対象世代の選択動作画面の画面表示例を示す。 0036 図20は図1(b)のストレージ装置のメモリ内のチャンク消費量追跡テーブル166の例を示す。 0037 図21はチャンク消費量追跡テーブルを可視化したグラフを示す。
0038 本発明の以下の詳細な説明に於いて、付随する図面が参照され、これら図面は発明の開示の一部を構成し、図中では本発明が実施可能な典型的な実施例が、限定する目的ではなく説明の目的で示される。図中では複数の図間で同じ数字は実質的に同じコンポーネントを表わす。更に、詳細な説明では以下に記述され図中で示されるように種々の典型的な実施例が提供されるが、本発明はここで記述され示された実施例に限定されるものでなく、当業者には既知であるか知るところになるであろう他の実施例に拡張可能であることに注意願いたい。明細書中の「一つの実施例」、「本実施例」、又は「これらの実施例」という言及は、その実施例に関連して記述された特定の特徴、構造、特性が本発明の少なくとも一つの実施例に含まれることを意味し、これらの語句が明細書中の種々の箇所で出現しても、必ずしもすべてが同じ実施例に言及しているわけでない。更に、以下の詳細な説明に於いて、本発明について完全に理解できるように、数多くの具体的な詳細が説明される。しかしながら、これらの具体的な詳細は、本発明を実施するのにすべてが必要なわけでないことは当業者には明白であろう。他の状況として、公知の構造、材料、回路、プロセス及びインタフェースは詳細には説明されておらず、及び/又は本発明を必ずしも不明確にしない範囲でブロックダイアグラム形式で示される場合もある。
0039 更に、以下の詳細な説明の或る部分はコンピュータ内の動作のアルゴリズムや記号表現の観点から提供される。これらのアルゴリズムの記述や記号表現は、データ処理技術分野に於ける当業者が自らの革新的なアイデアの本質を、この技術分野に於ける他の当業者に最も効果的に伝えるために使用される手段である。アルゴリズムとは望ましい最終状態又は結果に導くための一連の定義されたステップである。本発明では、実行されるステップは実際の結果を達成するために実際の物理操作を必要とする。通常、必ずしも必然ではないが、これらの量は電気又は磁気信号、又は保存され、転送され、結合され、比較され、及びその他の方法で操作できる命令の形態をとる。時には、主として慣用されていると言う理由でこれらの信号を、ビット、値、要素、シンボル、文字、用語、数、命令等と呼ぶ、のが便利なことが分かっている。しかしながら、これらすべて及び同様な語句は相当する物理量に関連付けられるべきものであり、これらの量に適用される単なる便宜的な呼び方に過ぎないことを心に留めておく必要がある。特に個別に断らない限り、以下の議論で明らかなように、説明を通じて、「処理する」、「計算する」、「見積る」、「決定する」、「表示する」等の語句を使用した議論は、コンピュータシステムのレジスタやメモリ内の物理的(電子的)な量で表わされるデータを操作し、コンピュータシステムのメモリ又はレジスタ又は他の情報ストレージ、転送又は表示デバイス内の同様に物理的な量で表わされる他のデータへと変換する、コンピュータシステム又は他の情報処理装置の動作や処理を含むことができることは言うまでもない。
0040 本発明は更に、ここで述べた動作を実行するための装置にも関連する。この装置は必要とされる目的のために特別に構築されたものであっても良いし、一つ以上のコンピュータプログラムにより選択的に起動され又は再構成される一つ以上の汎用コンピュータを含んでいても良い。そのようなコンピュータプログラムは光ディスク、磁気ディスク、リードオンリメモリ、ランダムアクセスメモリ、半導体デバイス及びドライブ、又は任意のその他の種類の電子的な情報を保存するのに適した媒体等、ただしこれらに限定されることなく、コンピュータ読み取り可能ストレージ媒体に保存することができる。ここで提供されるアルゴリズムやディスプレイは本質的にいかなる特定のコンピュータやそれ以外の装置にも関連しない。種々の汎用システムがここでの教示に従うプログラムとモジュールにより使用可能であるが、或いは望まれる方法ステップを実行するためにより専用の装置を構築するのが便利だと分かる可能性もある。更に、本発明はいかなる特定のプログラミング言語をも参照して記述してはいない。多様なプログラミング言語がここで記述された発明の教示を実行するために使用可能であることは言うまでもない。プログラミング言語の命令は一つ以上の処理装置、例えば中央処理装置(CPU)、プロセッサ、又はコントローラ、によって実行可能である。
0041 以下に、より詳細に記述する本発明の典型的な実施例は、動的チャンク割り当て機能を有するデータストレージシステムに於いて、データボリューム生成を制御するための装置、方法及びコンピュータプログラムを提供する。
0042 第一の実施例
0043 A.システム構成と論理構造
0044 図1は本発明の方法と装置が適用可能な情報システムのハードウェア構成の例を示す。本情報システムはホストコンピュータ10、ストレージ装置100、管理コンピュータ500、データネットワーク50、及び管理ネットワーク90を有する。
0045 少なくとも一つのホストコンピュータ10はデータネットワーク50を経由してストレージ装置100に接続される。本実施例では、少なくとも一つのOS(オペレーティングシステム)13がホストコンピュータ10上で実行される。アプリケーションプログラム14はOS13上で実行することができる。OS13とアプリケーションプログラム14用のファイルとデータは、ストレージ装置100によって提供されるデータボリューム内に保存される。OS13とアプリケーションプログラム14はストレージ装置100に対して書き込み及び/又は読み出しコマンドを発行する。OS13とアプリケーションプログラム14は最初にインストールされる。インストール開始後には大量のデータがデータボリュームに書き込まれる。
0046 本情報システムは少なくとも一つのストレージ装置100を有し、それぞれにはストレージコントローラ150と一つ以上のHDD(ハードディスクドライブ)101が含まれる。ストレージ装置100は一つ以上のHDD101から成る一つ以上のチャンクプール110を持つ。ストレージ装置100はホストコンピュータ10に一つ以上のデータボリュームを提供する。本実施例ではストレージ装置100は動的チャンク割り当てプログラム160を有する(図1(b)を参照)。データボリュームは動的チャンク割り当てボリューム(DCAV)として生成される。少なくとも一つの管理コンピュータ500が管理ネットワーク90を経由してストレージ装置に接続される。
0047 ホストコンピュータ10とストレージ装置100はデータネットワーク50を経由して接続される。本実施例ではデータネットワーク50はファイバチャネルである。しかしながら、イーサネット(登録商標)やインフィニバンドのような他のネットワークも使用可能である。相互接続をするためにネットワークスイッチやハブが使用可能である。図1(a)に於いては、ホストコンピュータ10とストレージ装置100を接続するためにファイバチャネルスイッチ(FCSW)55が使用される。ホストコンピュータ10とストレージ装置100はファイバチャネルデータネットワーク50に接続するために一つ以上のファイバチャネルインタフェースボード(FCIF)15、155を持つ。
0048 ストレージ装置100は管理ネットワーク90を経由して管理コンピュータ500に接続される。本実施例では管理ネットワーク90はイーサネット(登録商標)である。しかしながら、他のネットワークや接続も使用可能である。相互接続するためにネットワークスイッチやハブが使用できる。ストレージ装置100と管理コンピュータ500はイーサネット(登録商標)管理ネットワーク90に接続するために、一つ以上のイーサネット(登録商標)インタフェースボード(イーサIF)159、590を持つ。
0049 図1(a)で分かるように、ホストコンピュータ10は、プログラムとデータを保存するメモリ12内に保存されるプログラムを実行するためのCPU11とデータネットワーク50に接続するためのFCIF15を有する。少なくとも二つのプログラムがCPU11によって実行される。本実施例では、メモリ12はオペレーティングシステムプログラム13(OS13)とアプリケーションプログラム14を保存する。
0050 管理コンピュータ500はプログラムとデータを保存するメモリ520内に保存されるプログラムを実行するためのCPU510と、管理ネットワーク90に接続するためのイーサIF590を有する。少なくとも二つのプログラムがCPU510によって実行される。本実施例では、メモリ520はストレージ装置100にデータボリューム生成要求を発行するためのデータボリュームプロビジョニング要求プログラム521と、(第二の実施例で)スナップショット世代を管理するためのスナップショット管理プログラム522を保存する。
0051 図1(b)は図1(a)の情報システム内のストレージ装置100のハードウェア構成と論理構造の例を示す。ストレージ装置100は、データを保存するための一つ以上のHDD101と、ホストコンピュータ10にデータボリュームを提供するための一つ以上のストレージコントローラ150を有する。ストレージコントローラ150はプログラムとデータを保存するメモリ152内に保存されるプログラムを実行するためのCPU151、データネットワーク50に接続するためのFCIF155、HDD101に接続するためのSATA IF156(もしHDD101がFC、SCSI SAS等、別のインタフェースを持つのであれば、適切なインタフェースが実装されなければならない)、ホストコンピュータ10から受信したデータやHDD101から読み出されたデータを保存するためのキャッシュ153、及び管理ネットワーク90に接続するためのイーサIF159を有する。少なくとも六つのプログラムがCPU151により実行される。
0052 本実施例では、メモリ152は、書き込み要求が受信されチャンクが存在しない場合にデータボリュームにチャンクを割り当てるための動的チャンク割り当てプログラム160、ホストコンピュータ10からの少なくともREAD CAPACITY/READ/WRITEコマンドに応答するための応答プログラム161、動的チャンク割り当てボリュームを生成しそれをホストコンピュータ10に割り当てるためのデータボリューム割り当てプログラム162、チャンクプール状態テーブルを監視し、管理コンピュータ500に警告を発するためのチャンクプール状態テーブル監視プログラム163、スナップショット番号を指定しスナップショット削除要求に従ってスナップショットチャンクを未使用チャンクに変換するためのスナップショットプログラム164、及び使用済みチャンク数及び/又は予約済みチャンク数に従ってデータボリュームが生成可能であるか又は禁止されるべきかを決定するためのデータボリューム生成禁止プログラム165を保存する。メモリ152は更にチャンク消費量追跡テーブル166、チャンクプール状態テーブル167、チャンクプール管理テーブル168、チャンクテーブル169、スナップショットカタログテーブル170、及び分類テーブル171を保存する。
0053 動的チャンク割り当てボリューム(DCAV)は当初はデータブロックは割り当てられていない。図2は書き込みコマンド、動的チャンク割り当てボリューム111、チャンクプール110、チャンク、及びHDDの関係を示す。DCAV111は例えば本実施例では100GBであるが、DCAV111の生成時点ではデータブロックは割り当てられていない。データボリュームのサイズのみが指定される。DCAV111がホストコンピュータ10からデータを伴う書き込みコマンドを受信すると、DCAV111にデータブロックが割り当てられる。チャンクはHDD101内のデータブロックの集合である。動的チャンク割り当てボリュームは図2に示すように複数のセグメントに分割される。チャンクのサイズとセグメントのサイズは本実施例では同じである。
0054 図2によりチャンクについても説明する。チャンクはHDD101内の一つ以上のデータブロックから成る。本実施例では、チャンクは一つのHDD101内のブロックから作られる。各チャンクはチャンクを識別するための固有のIDを持つ。チャンクはチャンクプールに集められる。チャンクプールはチャンクプール管理テーブル168によって管理される。本実施例では、ストレージ装置100は一つのチャンクプール110を有する。従って、ストレージ装置100は一つのチャンクプール管理テーブルを有する。しかしながら任意のチャンクプール数が使用可能である。
0055 図3(a)−(b)はチャンクプール管理テーブル168の例を示す。チャンクプール管理テーブル168はRAIDグループ番号(RAID構成の場合、図11を参照)を格納するための「RAIDグループ番号」列16801、HDD番号を格納するための「HDD番号」列16802、チャンクに対応するLBA範囲を格納するための「LBA範囲」列16803、チャンクを識別するチャンク番号を格納するための「チャンク番号」列16804、チャンクがデータボリュームに割り当てられているか(使用済みか)否か(未使用か)の状態を格納するための「割り当て済みか」列16805、及びチャンクがセグメントに割り当てられているボリューム番号を格納するための「ボリューム番号」列16806を有する。当初はDCAV111にチャンクは割り当てられておらず、「割り当て済みか」列16805と「ボリューム番号」列16806内のすべての欄はヌルでなければならない。「RAIDグループ番号」は図3(b)に示すようにRAID構成の場合のみに使用される。図3(a)は「RAIDグループ番号」列16801がない例を示す。
0056 図4は動的チャンク割り当てボリュームに対する図1(b)のストレージ装置100のメモリ152内のチャンクテーブル169の例を示す。各DCAV111はDCAV111が生成されると、自身のチャンクテーブル169を持つ。チャンクテーブル169はセグメントを識別するセグメント番号を格納するための「セグメント番号」列16901、チャンクが割り当て済みか否かの状態を格納するための「割り当て済みか」列16902、及びチャンクに割り当てられているチャンク番号を格納するための「チャンク番号」列16903を有する。当初はDCAV111にチャンクは割り当てられておらず、「割り当て済みか」列16902と「チャンク番号」列16903内のすべての欄はヌルでなければならない。
0057 図5(a)−(c)は図1(b)のストレージ装置100のメモリ152内のチャンクプール状態テーブル167の例を示す。チャンクプール状態テーブル167は、ストレージ装置100内のチャンクの総数を格納するための「チャンク総数」列16701、ストレージ装置100内の使用済みチャンクの総数を格納するための「使用済みチャンク総数」列16702、チャンク状態テーブル監視プログラム163によって計算される閾値(本実施例ではチャンクの総数の90%)を格納するための「閾値」列16703、データボリューム番号を格納するための「ボリューム番号」列16704、各DCAVに於ける予約済みチャンクの総数を格納するための「予約済みチャンク」列16705、各DCAVに於ける使用済みチャンクの総数を格納するための「使用済みチャンク」列16706、及びストレージ装置100内の予約済みチャンクの総数を格納するための「予約済みチャンク総数」列16707を有する。本実施例では、予約済みチャンク数は各DCAV毎に保存されるので、その結果データボリューム生成禁止プログラム165はそのDCAVが生成可能であるか禁止されるべきか決定することができる。
0058 チャンクプール状態テーブル監視プログラム163はチャンクプール状態テーブル167を定期的に監視し、閾値を計算する。閾値はチャンクの総数の90%として計算され、チャンクプール状態テーブル167内に格納される。HDDが増設されると、プログラムはチャンクの総数を更新し、閾値を再計算する。チャンクプール状態テーブル監視プログラム163は使用済みチャンク数が閾値よりも大であるかを判定する。もし大であれば、管理コンピュータ500及び/又はホストコンピュータ10に警告が発行される。警告はHDDを早期に増設すべきことを示す。チャンクプール状態テーブル監視プログラム163は更に、使用済みチャンクの総数と予約済みチャンクの総数の合計が閾値よりも大であるか判定する。もし大であれば、管理コンピュータ500及び/又はホストコンピュータ10に警告が発行される。警告はHDDを早期に増設すべきことを示す。
0059 B.プロセスフロー
0060 図6はDCAVプロビジョニングプロセス600のプロセスフローダイアグラムの例を示す。このプロセスは管理コンピュータ500上で管理者がデータボリュームプロビジョニング要求プログラム521を動作させて該データボリュームプロビジョニング要求プログラム521にデータボリューム生成を要求する時に起動される。ステップ610で、データボリュームプロビジョニング要求プログラム521はストレージコントローラ150上のデータボリューム割り当てプログラム162に予約済みチャンク数付きでデータボリュームプロビジョニング要求を発行する。ステップ620で、データボリューム割り当てプログラム162はチャンクプール状態テーブル167を一時的に更新する。ステップ622で、データボリューム生成禁止プログラム165は、閾値と、使用済みチャンクの総数と予約済みチャンクの総数の合計とを比較することで、要求されたデータボリュームの生成は可能であるか禁止すべきかをチェックする。使用済みチャンクの総数と予約済みチャンクの総数の合計が閾値よりも大である場合には、データボリューム生成は禁止され、チャンクプール状態テーブル167は元通りにされる(ステップ630)。次いで、ステップ632で、データボリューム生成禁止プログラム165は管理コンピュータ500にエラーを発行する。使用済みチャンクの総数と予約済みチャンクの総数の合計が閾値以下の場合は、データボリュームが生成されチャンクテーブル169が生成される(ステップ640)。次いで、データボリューム割り当てプログラム162はチャンクプール状態テーブル167を確定し(ステップ642)、データボリューム割り当てプログラム162は管理コンピュータ500にデータボリューム生成成功状態を発行する(ステップ644)。
0061 チャンクプール状態テーブル167の例は図5(a)−(c)に示される。本実施例では、一つのチャンクは2MB(4096ブロック、512バイト/ブロック)である。図5(a)では、ストレージ装置100にはデータボリュームは存在しない。チャンクの総数は1,000,000である。使用済みチャンクの総数は0である。閾値は900,000である。図5(b)で、管理コンピュータ500は10,000の予約済みチャンク付きでデータボリューム生成を要求する。このデータボリュームはストレージシステム100内の最初のデータボリュームとなる。この場合データボリューム生成は成功となる。図5(c)で、管理コンピュータ500は10,000の予約済みチャンク付きでデータボリューム生成を要求する。予約済みチャンクの総数はこの時点でのデータボリューム生成により100,000に達する。使用済みチャンク数は今や801,000である。DCAV111−99の生成は、使用済みチャンクの総数と予約済みチャンクの総数の合計が閾値を越える(100,000+801,000=901,000>900,000)ので、データボリューム生成禁止プログラム165によって禁止される。管理コンピュータ500にエラーが発行される。
0062 図7(a)−(d)は図1(a)の管理コンピュータ500上のDCAVを生成するための管理画面の例を示す。図8(a)−(b)は図1(a)の管理コンピュータ500内の予約済みチャンクデフォルトテーブル529の例を示す。図7(a)で、管理者はDCAV生成時にDCAVのサイズのみを指定して「OK」ボタンを押す。予約済みチャンクの予め決められた数(例えば10,000)が適用される。予約済みチャンクの予め決められた数は図8(a)に示すように予約済みチャンクデフォルトテーブル529に格納される。図7(b)の画面では、管理者は全DCAVのサイズとDCAVの初期サイズを指定する。DCAVの初期サイズは、例えば、OSとアプリケーションプログラムのインストール時のデータボリュームの初期サイズである。管理者はDCAVを生成するためにこの二種のサイズを指定し、「OK」ボタンを押す。図7(c)の画面では、管理者はDCAVの全体サイズとDCAVの用途を指定する。各用途に対する予約済みチャンク数は図8(b)に示すように予め決められて予約済みチャンクデフォルトテーブル529に格納される。選択された用途は予約済みチャンク数に変換され、次いでデータボリューム割り当てプログラム162に提供される。図7(d)の画面では、管理者はDCAVの全体サイズ、DCAVの用途、及びDCAVの開始日時を指定する。いかなる書き込みコマンドも開始日時までは拒絶される。
0063 生成された新データボリュームは、データボリュームが動的チャンク割り当てボリュームDCAV111であるために当初は何もチャンクを持たない。ホストコンピュータ10はストレージ装置100から容量情報を取得することができる。応答プログラム161はたとえDCAV111が何もチャンクを持たなくてもREAD CAPACITYコマンドの結果としてホストコンピュータ10に容量情報付きで応答する。こうして、ホストコンピュータ10はストレージ装置100内に或るサイズを持つデータボリュームが存在することを認識する。
0064 図9は第一の実施例による図1(b)のストレージ装置100のメモリ152内の応答プログラム161、動的チャンク割り当てプログラム160、及びデータボリューム生成禁止プログラム165を含むストレージ装置プログラムによる書き込み動作のプロセスフローダイアグラムの例を示す。
0065 ステップ910で、ストレージ装置プログラムは、このDCAV111が何もチャンクを持っていないかをチェックする。もし持っていなければ、プログラムはステップ912に進む。ステップ912で、プログラムは使用済みチャンクの総数と予約済みチャンクの総数の合計がチャンクの総数よりも大であるかをチェックする。もし大であれば、プログラムはステップ919に進む。(ステップ912は予め決められたモードに従いスキップ可能なことに注意願いたい。)大でない場合は、プログラムはステップ914に続き、使用済みチャンクの総数と予約済みチャンクの総数の合計が閾値よりも大であるかをチェックする。もし大であれば、プログラムはステップ919に進む。(ステップ914は予め決められたモードに従いスキップ可能であることに注意願いたい。)大でない場合は、プログラムはステップ916に続き、データボリュームに指定された日時が期限満了したかをチェックする。(このステップはデータボリュームにデータ及び時間が指定されていないならスキップされる。)もし満了していないならば、プログラムはステップ919に進み、ホストコンピュータ10にカットオーバエラーを送信する。もし満了しているならば、プログラムはステップ920に進む。
0066 ステップ920で、プログラムは書き込みコマンドに対応するデータボリューム内のセグメント番号を計算する。次いで、ステップ922で、プログラムはそのセグメントがチャンクを持っているか否かをチェックする。もしセグメントが既にチャンクを持っていれば、プログラムはステップ980に進む。そうでない場合は、プログラムはステップ930に続き、チャンクプールからチャンクの取得を試みる。ステップ932で、プログラムはチャンク割り当てが成功したかをチェックする。もし成功でなければ、プログラムはステップ939に進み、ホストコンピュータ10に書き込みエラーを送信する。もし成功であれば、プログラムはステップ950に続き、チャンクプール管理テーブル168を更新する。ステップ952で、プログラムはチャンクテーブル169を更新する。ステップ954で、プログラムはチャンクプール状態テーブル167を更新する。これに伴い、予約済みチャンク数は現在値がゼロでないならば減少し、使用済みチャンク数は増加し、使用済みチャンクの総数を更新し、予約済みチャンクの総数を更新することになる。次いで、ステップ960で、プログラムは使用済みチャンクの総数と予約済みチャンクの総数の合計がチャンクの総数よりも大であるかチェックする。もし大であれば、プログラムはステップ969に進み、管理コンピュータ500に警告を発する。大でない場合は、プログラムはステップ970に進み、使用済みチャンクの総数と予約済みチャンクの総数の合計が閾値よりも大であるかチェックする。もし大であれば、プログラムはステップ979に進み、管理コンピュータ500に警告を発する。大でない場合は、プログラムはステップ980に進み、セグメントに割り当てられたチャンクにデータを書き込む。ステップ999で、プログラムはコマンド完了応答を発行する。
0067 ステップ910、912、914と919に従い、書き込みコマンドは、最初の書き込み動作がDCAVに実行される時点では、予約済みチャンクの総数によって拒絶される。このシーケンスはDCAVが予め、恐らくずっと以前であって、使用済みチャンクの総数と予約済みチャンクの総数の合計が閾値と同等以下であった或る時点で生成されていて、その後他のDCAVがチャンクを消費し続けている場合には重要となる。現時点では、使用済みチャンクの総数と予約済みチャンクの総数の合計はチャンクの総数よりも大となっている(ステップ912)か、又は使用済みチャンクの総数と予約済みチャンクの総数の合計は閾値よりも大になっている(ステップ914)。
0068 図10は図1(b)のストレージ装置100のメモリ152内の応答プログラム161を含む読み出し動作のプロセスフローダイアグラムの例を示す。ステップ1010で、プログラムは読み出しコマンドに対応するデータボリューム内のセグメント番号を計算する。ステップ1012で、プログラムはセグメントがチャンクを持っているか否かをチェックする。もし既にセグメントがチャンクを持っていれば、プログラムはステップ1070に進む。もしセグメントがチャンクを持っていなければ、プログラムはステップ1080に進む。ステップ1070で、プログラムはセグメントに割り当てられたチャンクのデータを転送する。ステップ1080で、プログラムはデフォルトデータパターン(例えば全てゼロのパターン)を転送する。最後に、ステップ1099で、プログラムはコマンド完了応答を発行する。
0069 一つの変形例によれば、HDD101をRAIDグループに置き換えることができる。図11はRAIDグループ内にチャンク(10000、10001、10002)を持つRAID構成の例を示す。RAID(独立したディスクの冗長アレイ)グループは、RAIDアルゴリズムにより複数のHDD(101−01、101−02、101−03、101−04、101−05)から構成される。RAIDアルゴリズムはストレージコントローラ150内で実装される。図3(b)に示すチャンクプール管理テーブル168がRAID構成に使われる。
0070 第二の実施例
0071 第二の実施例では、スナップショット機能を伴ったDCAVが提供される。スナップショットは指定されたタイミングに於けるデータボリュームイメージの一つである。管理コンピュータ500又はホストコンピュータ10はスナップショット要求をDCAV111に発行することができる。或いは、ストレージ装置100自体が定期的にスナップショットを取得してもよい(そのサイクルは予め決めることができる)。図12は第二の実施例による図1(b)のストレージ装置100のメモリ152内のチャンクテーブル169の例を示す。図13はメモリ152内のスナップショットカタログテーブル170の例を示す。スナップショットプログラム164は新たなスナップショット番号を指定し、図13のスナップショットカタログテーブル170内に日時を記録する。図12のチャンクテーブル169は各スナップショット番号に対応したチャンク番号を格納することができる。
0072 図13のスナップショットカタログテーブル170は、ストレージ装置100内のデータボリューム番号を格納するための「ボリューム番号」列17001、指定されたスナップショット番号を格納するための「スナップショット番号」列17002、及びスナップショットが取得される時点のタイムスタンプを格納するための「タイムスタンプ」列17003を有する。
0073 第二の実施例のスナップショット動作では、各DCAV111に於いて1時間間隔でスナップショットが取得される。スナップショットプログラム164は新たなスナップショット番号を指定し、スナップショットカタログテーブル170にスナップショット番号とタイムスタンプを格納する。図13は、DCAV111−00が2009/4/29午後1時から午後10時までに取得されたスナップショット番号111−00−00から111−00−09の10個のスナップショットイメージを持つことを示す。
0074 図14は第二の実施例による図1(b)のストレージ装置100のメモリ152内の応答プログラム161、動的チャンク割り当てプログラム160、及びデータボリューム生成禁止プログラム165を含むストレージ装置プログラムによるスナップショット付き書き込み動作1400のプロセスフローダイアグラムの例を示す。図9(第一の実施例の書き込み動作)のフローダイアグラムと異なっている特徴部分をアンダーラインで示す。
0075 ステップ1410で、ストレージ装置プログラムは、このDCAVはチャンクを持っていないかチェックする。もし持っていなければ、プログラムはステップ1412に進む。ステップ1412で、プログラムは使用済みチャンクの総数と予約済みチャンクの総数の合計がチャンクの総数よりも大であるかチェックする。もし大であれば、プログラムはステップ1419に進む。(ステップ1412は予め決められたモードに従いスキップ可能なことに注意願いたい。)大でない場合は、プログラムはステップ1414に続き、使用済みチャンクの総数と予約済みチャンクの総数の合計が閾値よりも大であるかチェックする。もし大であれば、プログラムはステップ1419に進む。(ステップ1414は予め決められたモードに従いスキップ可能なことに注意願いたい。)大でない場合は、プログラムはステップ1416に続き、データボリュームに指定された日時が期限満了したかをチェックする。(このステップはデータボリュームにデータ及び時間が指定されていないならスキップされる。)もし満了していないならば、プログラムはステップ1419に進み、ホストコンピュータ10にカットオーバエラーを送信する。もし満了していれば、プログラムはステップ1420に進む。
0076 ステップ1420で、プログラムは書き込みコマンドに対応するデータボリューム内のセグメント番号を計算する。次いで、ステップ1422で、プログラムはセグメントが現在のスナップショット番号のチャンクを持っているかをチェックする。もしセグメントが既にチャンクを持っていれば、プログラムはステップ1480に進む。そうでない場合は、プログラムはステップ1430に続き、チャンクプールからチャンクの取得を試みる。ステップ1432で、プログラムはチャンク割り当てが成功したかをチェックする。もし成功でなければ、プログラムはステップ1439に進み、ホストコンピュータ10に書き込みエラーを送信する。もし成功であれば、プログラムはステップ1450に続き、チャンクプール管理テーブル168を更新する。ステップ1452で、プログラムはチャンクテーブル169を更新する。ステップ1454で、プログラムはチャンクプール状態テーブル167を更新する。これに伴い、予約済みチャンク数は現在値がゼロでないならば減少し、使用済みチャンク数は増加し、使用済みチャンクの総数を更新し、予約済みチャンクの総数を更新することになる。次いで、ステップ1456で、プログラムは指定されたチャンクに対し、一つ前のスナップショット番号でのチャンクのデータをコピーする。(このステップは書き込みコマンドがチャンク内の全データをオーバライトするか又は一つ前のチャンクが存在しない場合はスキップすることができる。)ステップ1460で、プログラムは使用済みチャンクの総数と予約済みチャンクの総数の合計がチャンクの総数よりも大であるかチェックする。もし大であれば、プログラムはステップ1469に進み、管理コンピュータ500に警告を発する。大でない場合は、プログラムはステップ1470に進み、使用済みチャンクの総数と予約済みチャンクの総数の合計が閾値よりも大であるかチェックする。もし大であれば、プログラムはステップ1479に進み、管理コンピュータ500に警告を発する。大でない場合は、プログラムはステップ1480に続き、セグメントに割り当てられたチャンクにデータを書き込む。ステップ1499で、プログラムはコマンド完了応答を発行する。これらの取得されたスナップショットは古いデータボリュームイメージを参照するために使用される。例えば、古いデータボリュームイメージからの古いファイルの復元は典型的な利用ケースである。
0077 一つの例では、書き込みデータはストレージ装置100の一つ以上のプライマリボリュームに保存され、一つ以上のプライマリボリュームのスナップショットは一つ以上のセカンダリボリュームに保存される。ストレージ装置プログラムは、一つのケースでは一つ以上のプライマリボリューム内のチャンク数に基づき、別のケースでは一つ以上のプライマリボリュームと一つ以上のセカンダリボリューム内のチャンク数に基づいて、新たなボリュームにチャンクを割り当てることに対して禁止又は警告を発することができる。このチャンク数は使用済みチャンク数であっても良いし、又は使用済みチャンク数と予約済みチャンク数の合計であっても良い。チャンクは使用済みチャンクを含んでいても良いし、又は使用済みチャンクと予約済みチャンクの両者を含んでいても良い。
0078 図15はスナップショット選択動作に対する管理コンピュータ500の画面表示の例を示す。管理コンピュータ500はこの画面上にスナップショットカタログを表示する。スナップショット管理プログラム522はストレージ装置100に(スナップショットカタログテーブル170に格納された)スナップショットカタログ情報を要求し、それを表示する。図15に示す画面上で、管理者は復元したいファイルのイメージを選択する。図15ではデータボリューム111−00が選択される。2009/4/29 6:00pmのスナップショットイメージが選択される。画面上で「OK」ボタンが押されると、スナップショット管理プログラム522はデータボリュームにスナップショット番号を発行する。データボリュームの読み出し動作が指定されたスナップショットイメージに対して実行される。
0079 指定されたスナップショット番号の読み出し動作を、図10(第一の実施例の読み出し動作)を参照して説明する。第二の実施例と第一の実施例間の唯一の相違はステップ1070で発生する。ステップ1070で、プログラムはセグメントに割り当てられたチャンクのデータを転送する。第二の実施例では、指定されたスナップショット番号に最も近いチャンクが選択される。もしセグメントが111−00−002(3:00pm)と111−00−004(5:00pm)の二つのチャンクを持っており、スナップショット番号111−00−05(6:00pm)が指定されたら、111−00−004(5:00pm)のチャンクが選択される。もしセグメントが111−00−002(3:00pm)と111−00−006(7:00pm)の二つのチャンクを持っており、スナップショット番号11−00−05(6:00pm)が指定されたら、11−00−002(3:00pm)のチャンクが選択される。
0080 第二の実施例では、チャンクは三つのカテゴリに分類される。未使用カテゴリでは、チャンクは何もデータを持たない。使用済みカテゴリでは、チャンクはデータを持ち、そのデータは現在のボリュームとしてホストコンピュータに応答するために必要となる。スナップショットカテゴリでは、チャンクはデータを持ち、そのデータは指定されたスナップショットイメージとして応答するために必要となる。
0081 図16はスナップショット世代数が減少した時のデータボリュームの使用済み及び未使用チャンクを示す。定期的にスナップショットを取得し、データボリュームにデータを書き込み続けると、いつかは、未使用チャンクは使い尽くされることになる。各チャンクは二つのカテゴリ即ち使用済みとスナップショットのみに分類されることになる。スナップショットカテゴリのチャンクは未使用チャンクに変換可能である。しかしながら、この場合スナップショット世代数は、図16に示すように減少することになる。
0082 図17は第二の実施例による図1(b)のストレージ装置100のメモリ152内の分類テーブル171の例を示す。各チャンクは分類されて分類テーブル171に登録される。スナップショットカテゴリのチャンクはスナップショット番号とタイムスタンプを付けて登録される。分類テーブル171はチャンクを管理するために使用され、特に指定されたスナップショット世代を削除するために使用される。
0083 使用済みチャンク数とスナップショットチャンク数の合計が閾値に達した時は、二つの選択肢が考えられる。一つは更にHDDを増設することである。もう一つはスナップショット世代数を減少させることである。スナップショット世代数を維持するためには一つ以上のHDDを増設しなければならない。スナップショットプログラム164は管理コンピュータ500に警告を発生する。管理コンピュータ500は選択を行うために図18に示す画面を表示する。管理者が「世代数減少」を押すと、スナップショットプログラム164から取得された分類テーブル171に基づいて図19に示す次の管理画面が表示される。図19は管理コンピュータでの削除世代選択動作の画面ディスプレイの例を示す。図19の管理画面では、管理者はチェックボックスをチェックすることで世代を選択することができる。解放チャンク数の見積値がリアルタイムで領域18001に表示される。削除ボタン18002が押されると、管理コンピュータ500はスナップショットプログラム164にスナップショット削除要求を発行する。スナップショットプログラム164は指定されたスナップショット番号に従ってスナップショットチャンクを未使用チャンクに変換する。
0084 本発明のもう一つの実施例が第一と第二の実施例の特徴を組み合わせることで可能になる。データボリューム割り当てプログラム162は、使用済みチャンクの総数、スナップショットチャンク数、及び予約済みチャンク数の合計が閾値よりも大である場合には新ボリューム生成を禁止してもよい。或いは、チャンクプール状態テーブル監視プログラム163が警告を発生してもよい。チャンクプール状態テーブル監視プログラム163は、この警告の為にチャンクプール状態テーブル167及び分類テーブル171を参照する。管理コンピュータ500がこの警告を受信すると、管理コンピュータ500は前述の図18と図19に示す画面を表示することができる。いくつかのスナップショット世代を削除した後には、管理者は新データボリュームの生成を試みることができる。
0085 図20は図1(b)のストレージ装置100のメモリ152内のチャンク消費量追跡テーブル166の例を示す。チャンク状態テーブル監視プログラム163はチャンク消費量追跡テーブル166内にチャンクの総数、使用済みチャンクの総数、未使用チャンクの総数、スナップショットチャンクの総数を定期的に(例えば60秒間隔で)記録することができる。更にチャンク状態テーブル監視プログラム163は、例えば平均増大率に基づいて、将来の消費量を見積ることができる。新データボリュームを生成するためのチャンクの割り当ては、見積られた将来のチャンク消費量に従って、新データボリュームを生成する前に禁止又は警告してもよい。
0086 図21はチャンク消費量追跡テーブル166を可視化したグラフを示す。時刻t0で、ストレージ装置はN個の未使用チャンクを持ち、使用済みチャンクとスナップショットチャンクは存在しない。いくつかのデータボリューム生成が実行される。チャンクが予約される。t1にて、OS13とアプリケーションプログラム14のインストールが開始される。チャンクは急速に消費される。t2にて、インストールは完了する。t3にて、ストレージ装置100はスナップショット取得を開始する。スナップショットチャンクが増大する。t4にて、使用済みチャンクの総数とスナップショットチャンクの総数の合計が閾値に達する。いくつかのスナップショット世代が解放される。t5にて、使用済みチャンクの総数とスナップショットチャンクの総数の合計が再び閾値に達する。追加のHDDが増設され未使用のチャンクが追加される。ストレージ装置100内のチャンクの総数はMに達する。閾値が再計算される。現時点t6にて、いくつかのデータボリューム生成が実行される。いくつかのデータボリュームの生成が今すぐに行われる。いくつかのデータボリューム生成がt7に予約される。t6に於けるデータボリューム生成は未使用チャンクが十分あるので禁止されない。現在よりも先の時点であるt7に於けるデータボリューム生成は、平均増大率とその時点での予約済みチャンクの総数に基づくと未使用チャンクが十分には存在しないと見積られるため、禁止される。当然のことながら、管理者は禁止を避けるためにいくつかのスナップショット世代の解放を試みることも可能である。
0087 当然ながら、図1(a)に示すシステム構成は本発明が実行可能な全く典型的な情報システムであり、本発明は特定のハードウェア構成に限定されない。本発明を実装するコンピュータとストレージシステムは前述の発明を実装するために使用されるモジュール、プログラム及びデータ構造を保存し読み出すことができる既知のI/O装置(例えばCDとDVDドライブ、フロッピー(登録商標)ディスクドライブ、ハードディスクドライブ等)を有することもできる。これらのモジュール、プログラム及びデータ構造はそのようなコンピュータ読み取り可能媒体上でコード化することができる。例えば、本発明のデータ構造は、本発明で使用されるプログラムが載る一つ以上のコンピュータ読み取り可能媒体とは独立なコンピュータ読み取り可能媒体に保存することができる。このシステムのコンポーネントはディジタルデータ通信の任意の形態又は媒体、例えば通信ネットワークにより、相互接続可能である。通信ネットワークの例には、ローカルエリアネットワーク、広域ネットワーク、例えばインターネット、無線ネットワーク、ストレージエリアネットワーク等が含まれる。
0088 本明細書に於いては、本発明の完全な理解を可能にするために説明の目的で数多くの詳細が述べられている。しかしながら、これらの特定の詳細のすべてが本発明を実施するために必要とされるわけではないことは当業者には明白であろう。本発明は通常フローチャート、フローダイアグラム、構造ダイアグラム、又はブロックダイアグラムとして描かれるプロセスとして記述できることにも注意が必要である。フローチャートは動作をシーケンシャルプロセスとして記述するかも知れないが、多くの動作は並行して又は同時に遂行可能である。更に、動作の順番は入れ替えることも可能である。
0089 この技術分野で公知のように、上述の動作はハードウェア、ソフトウェア、又はソフトウェアとハードウェアの何らかの組み合わせで実行可能である。本発明の実施例の種々の態様は回路や論理デバイス(ハードウェア)を用いて実行可能であるが、他の態様ではマシーン読取可能媒体(ソフトウェア)上に保存され、もしプロセッサが実行すれば、プロセッサに本発明の実施例の実行方法を遂行させる命令を用いて実行可能である。更に、本発明のいくつかの実施例は専らハードウェアで実行可能であるが、他の実施例では専らソフトウェアで実行可能である。更に、記述された種々の機能は単一の装置で実行可能であるが、多数の方法で多数のコンポーネントに亘って分散させることも可能である。ソフトウェアにより実行される場合、本方法はコンピュータ読み取り可能媒体上に保存された命令に基づいて汎用コンピュータのようなプロセッサによって実行可能である。もし必要ならば、命令は圧縮及び/又は暗号化フォーマットで媒体上に保存可能である。
0090 前述から、本発明は動的チャンク割り当て機能を有するデータストレージシステムに於けるデータボリューム生成を制御するための方法、装置及びコンピュータ読み取り可能媒体上に保存されたプログラムを提供することが明らかであろう。更に、本明細書に於いては具体的な実施例が示され説明されてきたが、同じ目的を達成することが予想できる如何なる構成も、開示された具体的な実施例に対して置換可能であることが当業者には明らかである。ここでの開示は本発明のあらゆる如何なる改編や変形をもカバーするように意図されており、当然のことながら以下の請求項で使用される語句は本発明を明細書に開示された具体的な実施例に限定するように解釈されるべきでない。むしろ、本発明の範囲は偏に以下の請求項によって決定されるべきであって、本請求項が権利を有する全ての範囲の等価物も含めて、確立した請求項解釈理論に従って解釈されるべきである。

Claims (20)

  1. プロセッサと、
    メモリ、及び
    データボリュームに割り当てられ、それぞれが一つ以上のデータブロックを持つ複数のチャンクと、
    から成り、
    前記複数のチャンクは一つ以上のデータボリュームに割り当てられているゼロ個以上の使用済みチャンクと、使用済みチャンクではないゼロ個以上の残存チャンクを含み、
    新データボリュームを生成する為の新データボリューム生成動作は、ストレージシステム内の前記残存チャンクの総数に従って、該新データボリュームが生成される前に禁止されるか又は警告される
    ことを特徴とするストレージシステム。
  2. 前記残存チャンクは、前記一つ以上のデータボリュームに割り当てられていない未使用チャンクと、一つ以上のデータボリューム内で使用するために予約されているが前記一つ以上のボリュームに未だ割り当てられていない予約済みチャンクを含む
    ことを特徴とする請求項1によるストレージシステム。
  3. 前記新データボリューム生成動作は、前記使用済みチャンクの総数と前記予約済みチャンクの総数の合計が、前記ストレージシステム内の前記チャンクの総数よりも大であれば禁止され、
    前記新データボリューム生成動作は、前記使用済みチャンクの総数と前記予約済みチャンクの総数の合計が、前記ストレージシステム内の前記チャンクの総数の100パーセントより小さいパーセンテージに等しい閾値よりも大であれば警告が発せられる、
    ことを特徴とする請求項2によるストレージシステム。
  4. 前記複数のチャンクは、前記一つ以上のデータボリュームのスナップショット世代を表わす或る時点に於ける一つ以上のデータボリュームのデータボリュームイメージに対して割り当てられている、一つ以上のスナップショットチャンクを含み、
    前記複数のチャンクは、使用済みチャンクでなくスナップショットチャンクでもないゼロ個以上の残存チャンクを含む
    ことを特徴とする請求項2によるストレージシステム。
  5. 前記新データボリューム生成動作は、前記使用済みチャンクの総数、前記スナップショットチャンクの総数、及び前記予約済みチャンクの総数の合計が前記ストレージシステム内の前記チャンクの総数よりも大であれば禁止され、
    前記新データボリューム生成動作は、前記使用済みチャンクの総数、前記スナップショットチャンクの総数、及び前記予約済みチャンクの総数の合計が、前記ストレージシステム内の前記チャンクの総数の100パーセントより小さいパーセンテージに等しい閾値よりも大であれば警告が発せられる、
    ことを特徴とする請求項4によるストレージシステム。
  6. 前記メモリは、スナップショット削除要求を受信すると、一つ以上のスナップショットチャンクを未使用チャンクに変換するように構成されたスナップショットモジュールを有する
    ことを特徴とする請求項4によるストレージシステム。
  7. 前記メモリは、前記チャンク数、前記使用済みチャンク数、前記未使用チャンク数、前記予約済みチャンク数、及び前記スナップショットチャンク数を監視し、前記チャンクの将来の消費量を見積るように構成されたチャンク状態監視モジュールを有し、
    前記新データボリューム生成動作は、前記チャンクの前記見積られた将来の消費量に従って、前記新データボリュームが生成される前に禁止されるか又は警告される
    ことを特徴とする請求項4によるストレージシステム。
  8. プロセッサと、
    メモリ、及び
    少なくとも一つのプライマリボリュームと、該少なくとも一つのプライマリボリューム内に保存されたデータに基づくデータを保存するために使用される少なくとも一つのセカンダリボリュームと、を有するデータボリュームに割り当てられ、それぞれが一つ以上のデータブロックを持つ複数のチャンクと、
    から成り、
    前記複数のチャンクは一つ以上のデータボリュームに割り当てられているゼロ個以上の使用済みチャンクと、一つ以上のデータボリュームに割り当てられていないゼロ個以上の未使用チャンクを含み、
    新データボリュームを生成する為の新データボリューム生成動作は、前記少なくとも一つのプライマリボリューム内の前記使用済みチャンクの総数に従って、該新データボリュームが生成される前に禁止されるか又は警告される
    ことを特徴とするストレージシステム。
  9. 前記新データボリューム生成動作は、前記少なくとも一つのプライマリボリュームと前記少なくとも一つのセカンダリボリューム内の前記使用済みチャンクの総数に従って、前記新データボリュームが生成される前に禁止されるか又は警告される
    ことを特徴とする請求項8によるストレージシステム。
  10. 前記新データボリューム生成動作は、前記少なくとも一つのプライマリボリュームと前記少なくとも一つのセカンダリボリューム内の前記使用済みチャンクの総数と予約済みチャンクの総数に従って、前記新データボリュームが生成される前に禁止されるか又は警告され、
    前記予約済みチャンクは前記少なくとも一つのプライマリボリュームと前記少なくとも一つのセカンダリボリューム内で使用するために予約されているがそれらのボリュームに未だ割り当てられていない
    ことを特徴とする請求項9によるストレージシステム。
  11. 前記新データボリューム生成動作は、前記使用済みチャンクの総数と前記予約済みチャンクの総数の合計が前記ストレージシステム内の前記チャンクの総数よりも大であれば禁止され、
    前記新データボリューム生成動作は、前記使用済みチャンクの総数と前記予約済みチャンクの総数の合計が、前記ストレージシステム内の前記チャンクの総数の100パーセントより小さいパーセンテージに等しい閾値よりも大であれば警告が発せられる、
    ことを特徴とする請求項10によるストレージシステム。
  12. 前記メモリは、前記チャンク数、前記使用済みチャンク数、前記未使用チャンク数、及び前記予約済みチャンク数を監視し、前記チャンクの将来の消費量を見積るように構成されたチャンク状態監視モジュールを有し、
    前記新データボリューム生成動作は、前記チャンクの前記見積られた将来の消費量に従って、前記新データボリュームが生成される前に禁止されるか又は警告される
    ことを特徴とする請求項10によるストレージシステム。
  13. 前記複数のチャンクは、前記少なくとも一つのプライマリボリュームのスナップショット世代を表わす或る時点に於ける前記少なくとも一つのプライマリボリュームのデータボリュームイメージに対して前記少なくとも一つのセカンダリボリュームに割り当てられた一つ以上のスナップショットチャンクを含む
    ことを特徴とする請求項8によるストレージシステム。
  14. 前記メモリは、スナップショット削除要求を受信すると、前記セカンダリボリューム内の一つ以上のスナップショットチャンクを未使用チャンクに変換するように構成されたスナップショットモジュールを有する
    ことを特徴とする請求項13によるストレージシステム。
  15. 新データボリューム生成動作は、ストレージシステムが受信する書き込みコマンドに応答して新データボリュームを生成する為に実行され、
    前記書き込みコマンドに応答した前記新データボリューム生成動作は、前記新データボリュームに指定された日時が期限満了するまで禁止される
    ことを特徴とする請求項8によるストレージシステム。
  16. プロセッサと、
    メモリ、及び
    データボリュームに割り当てられ、それぞれが一つ以上のデータブロックを持つ複数のチャンクと、
    から成り、
    前記複数のチャンクは一つ以上のデータボリュームに割り当てられているゼロ個以上の使用済みチャンクと、使用済みチャンクではないゼロ個以上の残存チャンクを含み、
    データボリューム書き込み動作を受信していない前記データボリュームの一つに対する最初の書き込み動作は、前記ストレージシステム内の前記残存チャンクの総数に従って禁止されるか又は警告される
    ことを特徴とするストレージシステム。
  17. 新データボリュームを生成する為に実行される新データボリューム生成動作は、前記ストレージシステム内の前記残存チャンクの総数に従って、該新データボリュームが生成される前に禁止されるか又は警告され、
    前記残存チャンクは、前記一つ以上のデータボリュームに割り当てられていない未使用チャンクと、一つ以上のデータボリューム内で使用するために予約されているが前記一つ以上のボリュームに未だ割り当てられていない予約済みチャンクを含む
    ことを特徴とする請求項16によるストレージシステム。
  18. 前記新データボリューム生成動作は、前記使用済みチャンクの総数と前記予約済みチャンクの総数の合計が、前記ストレージシステム内の前記チャンクの総数よりも大であれば禁止され、
    前記新データボリューム生成動作は、前記使用済みチャンクの総数と前記予約済みチャンクの総数の合計が、前記ストレージシステム内の前記チャンクの総数の100パーセントより小さいパーセンテージに等しい閾値よりも大であれば警告が発せられる、
    ことを特徴とする請求項17によるストレージシステム。
  19. 前記複数のチャンクは、前記一つ以上のデータボリュームのスナップショット世代を表わす或る時点に於ける前記一つ以上のデータボリュームのデータボリュームイメージに対して割り当てられた一つ以上のスナップショットチャンクを含み、
    前記複数のチャンクは前記使用済みチャンクでなく前記スナップショットチャンクでもないゼロ個以上の残存チャンクを含む
    ことを特徴とする請求項17によるストレージシステム。
  20. 前記メモリは、前記チャンク数、前記使用済みチャンク数、前記未使用チャンク数、前記予約済みチャンク数、及び前記スナップショットチャンク数を監視し、前記チャンクの将来の消費量を見積るように構成されたチャンク状態監視モジュールを有し、
    前記新データボリューム生成動作は、前記チャンクの前記見積られた将来の消費量に従って、前記新データボリュームが生成される前に禁止されるか又は警告される
    ことを特徴とする請求項19によるストレージシステム。
JP2010045863A 2009-06-03 2010-03-02 動的チャンク割り当て機能を有するデータストレージシステムに於けるデータボリューム生成を制御するための方法及び装置 Pending JP2010282608A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/477,268 US8533417B2 (en) 2009-06-03 2009-06-03 Method and apparatus for controlling data volume creation in data storage system with dynamic chunk allocation capability

Publications (1)

Publication Number Publication Date
JP2010282608A true JP2010282608A (ja) 2010-12-16

Family

ID=42671676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010045863A Pending JP2010282608A (ja) 2009-06-03 2010-03-02 動的チャンク割り当て機能を有するデータストレージシステムに於けるデータボリューム生成を制御するための方法及び装置

Country Status (4)

Country Link
US (1) US8533417B2 (ja)
EP (1) EP2261790A3 (ja)
JP (1) JP2010282608A (ja)
CN (1) CN101907976B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015501960A (ja) * 2012-03-13 2015-01-19 株式会社日立製作所 不揮発半導体メモリを含んだ不揮発半導体記憶デバイスを有するストレージシステム
WO2015063859A1 (ja) * 2013-10-29 2015-05-07 株式会社日立製作所 計算機システム及び制御方法
US9164885B2 (en) 2012-03-16 2015-10-20 Fujitsu Limited Storage control device, storage control method, and recording medium
JP2016511879A (ja) * 2013-02-01 2016-04-21 ヒタチ データ システムズ エンジニアリング ユーケー リミテッドHitachi Data Systems Engineering Uk Limited データ記憶システムにおけるストレージをよりきめ細かく、拡張可能に割り当てること可能とする方法及び装置

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609220A (zh) * 2012-01-19 2012-07-25 北京天地云箱科技有限公司 逻辑卷的创建方法及装置
US9104590B2 (en) * 2012-07-20 2015-08-11 Hitachi, Ltd. Storage system including multiple storage apparatuses and pool virtualization method
US9361213B2 (en) * 2013-01-23 2016-06-07 Hitachi, Ltd. Method and apparatus for efficient remote copy
US10445229B1 (en) 2013-01-28 2019-10-15 Radian Memory Systems, Inc. Memory controller with at least one address segment defined for which data is striped across flash memory dies, with a common address offset being used to obtain physical addresses for the data in each of the dies
US9542118B1 (en) 2014-09-09 2017-01-10 Radian Memory Systems, Inc. Expositive flash memory control
CN109542672B (zh) * 2015-09-25 2023-05-05 伊姆西Ip控股有限责任公司 用于回收快照存储空间中的存储块的方法和装置
US10146450B1 (en) * 2015-12-28 2018-12-04 EMC IP Holding Company LLC Managing a pool of storage slices via consumption estimation based on historical data
US9977599B2 (en) * 2016-01-12 2018-05-22 Vmware, Inc. Data deduplication with support for both thick and thin provisioning of storage objects
US9992264B2 (en) * 2016-02-02 2018-06-05 Salesforce.Com, Inc. High-speed trace functionality in an on-demand services environment
US10409493B1 (en) * 2017-04-28 2019-09-10 EMC IP Holding Company LLC Online system checkpoint alert and handling
CN110278100B (zh) * 2018-03-14 2022-04-15 中国移动通信集团广东有限公司 预警处理的方法、装置、电子设备和存储介质
US12001355B1 (en) 2019-05-24 2024-06-04 Pure Storage, Inc. Chunked memory efficient storage data transfers

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007241593A (ja) * 2006-03-08 2007-09-20 Hitachi Ltd 記憶領域の割当ての最適化方法及びそれを実現するための管理計算機
JP2007304794A (ja) * 2006-05-10 2007-11-22 Hitachi Ltd ストレージシステム及びストレージシステムにおける記憶制御方法
JP2009116436A (ja) * 2007-11-02 2009-05-28 Hitachi Ltd 記憶領域の構成最適化方法、計算機システム及び管理計算機

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4175788B2 (ja) * 2001-07-05 2008-11-05 株式会社日立製作所 ボリューム制御装置
US7613945B2 (en) * 2003-08-14 2009-11-03 Compellent Technologies Virtual disk drive system and method
JP4646526B2 (ja) * 2004-02-18 2011-03-09 株式会社日立製作所 記憶制御システム及び同システムの制御方法
JP4819369B2 (ja) * 2005-02-15 2011-11-24 株式会社日立製作所 ストレージシステム
US7159072B2 (en) * 2005-03-24 2007-01-02 Hitachi, Ltd. Method and apparatus for monitoring the quantity of differential data in a storage system
US20060230246A1 (en) * 2005-04-08 2006-10-12 Mather Clifford J Memory allocation technique using memory resource groups
US7971025B2 (en) * 2007-03-14 2011-06-28 Hitachi, Ltd. Method and apparatus for chunk allocation in a thin provisioning storage system
US7941598B2 (en) 2007-08-08 2011-05-10 Hitachi, Ltd. Method and apparatus for capacity on demand dynamic chunk allocation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007241593A (ja) * 2006-03-08 2007-09-20 Hitachi Ltd 記憶領域の割当ての最適化方法及びそれを実現するための管理計算機
JP2007304794A (ja) * 2006-05-10 2007-11-22 Hitachi Ltd ストレージシステム及びストレージシステムにおける記憶制御方法
JP2009116436A (ja) * 2007-11-02 2009-05-28 Hitachi Ltd 記憶領域の構成最適化方法、計算機システム及び管理計算機

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015501960A (ja) * 2012-03-13 2015-01-19 株式会社日立製作所 不揮発半導体メモリを含んだ不揮発半導体記憶デバイスを有するストレージシステム
US9164885B2 (en) 2012-03-16 2015-10-20 Fujitsu Limited Storage control device, storage control method, and recording medium
JP2016511879A (ja) * 2013-02-01 2016-04-21 ヒタチ データ システムズ エンジニアリング ユーケー リミテッドHitachi Data Systems Engineering Uk Limited データ記憶システムにおけるストレージをよりきめ細かく、拡張可能に割り当てること可能とする方法及び装置
WO2015063859A1 (ja) * 2013-10-29 2015-05-07 株式会社日立製作所 計算機システム及び制御方法

Also Published As

Publication number Publication date
US20100312976A1 (en) 2010-12-09
US8533417B2 (en) 2013-09-10
EP2261790A2 (en) 2010-12-15
CN101907976A (zh) 2010-12-08
EP2261790A3 (en) 2012-02-22
CN101907976B (zh) 2013-08-07

Similar Documents

Publication Publication Date Title
JP2010282608A (ja) 動的チャンク割り当て機能を有するデータストレージシステムに於けるデータボリューム生成を制御するための方法及び装置
US8046537B2 (en) Virtualization engine and method, system, and computer program product for managing the storage of data
US8250335B2 (en) Method, system and computer program product for managing the storage of data
JP5158074B2 (ja) ストレージ管理プログラム、ストレージ管理方法、ストレージ管理装置およびストレージシステム
US9733862B1 (en) Systems and methods for reverse point-in-time copy management in a storage system
JP5451875B2 (ja) 計算機システム及びその記憶制御方法
JP5314772B2 (ja) 性能の異なる実領域群で構成されたプールを有するストレージシステムの管理システム及び方法
CN102221981B (zh) 管理层信息的方法和装置
US20120023287A1 (en) Storage apparatus and control method thereof
US20090100223A1 (en) Storage control apparatus, data archive method for storage control apparatus, and storage system
US8495294B2 (en) Management computer for managing storage system capacity and storage system capacity management method
US10572175B2 (en) Method and apparatus of shared storage between multiple cloud environments
JP2010086424A (ja) ストレージ装置の管理装置
JP2008015769A (ja) ストレージシステム及び書き込み分散方法
CN102982182B (zh) 一种数据存储规划方法及装置
JP5853734B2 (ja) 仮想ストレージ装置,制御装置及び制御プログラム
JP2008276596A (ja) 記憶装置を決定する方法及び計算機
US8447947B2 (en) Method and interface for allocating storage capacities to plural pools
CN103150123B (zh) 存储系统
US20130080725A1 (en) Control apparatus, control method, and storage apparatus
CN106933496B (zh) 管理raid的方法及装置
CN103677661A (zh) 信息处理设备和复制控制方法
US9032150B2 (en) Storage apparatus and control method of storage apparatus
CN112558874B (zh) 数据销毁方法及装置
JP2015501959A (ja) ストレージシステムおよび記憶制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120724

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130312

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130604

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130802

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130827