JP5315348B2 - シン・プロビジョニングの移行および取り消しのための方法および装置 - Google Patents

シン・プロビジョニングの移行および取り消しのための方法および装置 Download PDF

Info

Publication number
JP5315348B2
JP5315348B2 JP2010526425A JP2010526425A JP5315348B2 JP 5315348 B2 JP5315348 B2 JP 5315348B2 JP 2010526425 A JP2010526425 A JP 2010526425A JP 2010526425 A JP2010526425 A JP 2010526425A JP 5315348 B2 JP5315348 B2 JP 5315348B2
Authority
JP
Japan
Prior art keywords
data
partition
data partition
storage
zero
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.)
Active
Application number
JP2010526425A
Other languages
English (en)
Other versions
JP2010541060A (ja
Inventor
ゾーハル、オフィル
シュワルツ、シェメル
ヘイマン、ハイム
グルミツァ、エフード
パルモン、オムリ
ゼイドナー、エフリ
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2010541060A publication Critical patent/JP2010541060A/ja
Application granted granted Critical
Publication of JP5315348B2 publication Critical patent/JP5315348B2/ja
Active 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • G06F11/106Correcting systematically all correctable errors, i.e. scrubbing
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • 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)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

関連出願の相互参照
本明細書は、2007年10月1日出願の、米国仮出願第60/976572号の特典を請求するものである。
本発明は、一般に、データ・ストレージのための方法および装置に関し、具体的に言えば、データ・ストレージ・システム内で複数の論理ボリュームを管理するための方法および装置に関する。
ユーザに多数のアプリケーションを提供する組織では、しばしば大規模コンピュータ・ディスク・ストレージ・システムが使用される。物理ストレージから論理ストレージを抽出するために、ストレージの仮想化も利用される。仮想化システムは、論理ストレージ位置と実際の物理ストレージ位置との間で何らかの形のマッピングを管理しながら、データ・ストレージに論理スペースを提供する。シン・プロビジョニング・システム(thin provisioning system)は、必要に応じてアプリケーション・サーバにストレージ・スペースを提供する。シン・プロビジョニングは、ストレージ・システムを共有するすべてのサーバのニーズを単一の成長速度に自動的に集約するため、容量プランニングも簡略化する。
米国特許出願第2006/0253681号 米国特許出願第2005/0015566号 米国特許出願第2005/0015567号
本発明は、シン・プロビジョニングにより、データ・ストレージ・システム内でデータ(複数の論理ボリューム)を管理するための方法および装置に関する。
本発明の実施形態では、大容量ストレージ・システムにデータを移行するための方法が提供される。この方法は、大容量ストレージ・システムにおいてストレージのための着信データ区画を受信することを含む。大容量ストレージ・システムにおいて、着信データ区画のために論理ストレージが割り振られる。データ区画のコンテンツがチェックされ、着信データ区画がゼロ・データのみを含む場合、着信データ区画のために割り振られた論理ストレージは維持される一方で、大容量ストレージ・システムにおける着信データ区画の物理ストレージは禁止される。物理ストレージの禁止および論理ストレージの維持によって、ストレージ・スペースが大幅に節約され、格納される情報レベルは低下しない。
いくつかの実施形態では、論理ストレージの割り振りには、着信データ区画に関する論理アドレスを有する区画データ記録を作成すること、および、区画データ記録を永続メディア内に格納することが含まれる。非ゼロ・データを含めるための着信データ区画が決定された場合、着信データ区画は永続メディアに格納され、通常、区画データ記録は着信データ区画の物理アドレスを含む。
典型的には、大容量ストレージ・システムはシン・プロビジョニング・ストレージ・システムである。
開示された諸実施形態では、ゼロ・データのみを含むデータ区画を提供するためのストレージ・システムへの要求には、ゼロ・ビットを含むデータ区画によって応答される。
本発明の代替実施形態では、大容量ストレージ・システムにおいてデータを監視するための方法が提供される。この方法は、物理ストレージからデータ区画を読み取ること、および、データ区画がゼロ・データのみを含むかどうかを判別することを含む。区画がゼロ・データのみを含む旨の決定に応答して、データ区画のための論理ストレージが維持される一方で、大容量ストレージ・システムにおけるデータ区画の物理ストレージは割り振り解除される。
いくつかの開示された実施形態では、データ区画の読み取りは、整合性および正当性のうちの少なくとも1つについてデータ区画をチェックすること、ならびに、チェックに応答してデータ区画を訂正することを含む。
いくつかの実施形態では、物理ストレージの割り振り解除は、データ区画に関連付けられた区画記述子記録から物理アドレスを除去することを含む。
したがって、本発明の実施形態により、
大容量ストレージ・システムにおいて、ストレージのための着信データ区画を受信すること、
大容量ストレージ・システムにおいて、着信データ区画のために論理ストレージを割り振ること、
着信データ区画がゼロ・データのみを含む旨を決定すること、および
この決定に応答して、着信データ区画のために割り振られた論理ストレージを維持しながら、大容量ストレージ・システムにおける着信データ区画の物理ストレージを禁止すること、
を含む、大容量ストレージ・システムにデータを移行するための方法が提供される。
典型的には、論理ストレージの割り振りは、少なくとも着信データ区画に関する論理アドレスを含む区画データ記録を作成することを含む。区画データ記録の作成は、区画データ記録を永続メディア内に格納することを含むことができる。
一実施形態では、この方法は、着信データ区画が非ゼロ・データを含むことをさらに決定することを含み、さらなる決定に応答して、着信データ区画を永続メディアに格納することを含む。永続メディアへの着信データ区画の格納は、着信データ区画に関する物理アドレスを含めるために区画データ記録を更新することを含むことができる。
開示された実施形態では、大容量ストレージ・システムはシン・プロビジョニング・ストレージ・システムを含む。
代替実施形態では、方法は、ゼロ・データのみを有するデータ区画にゼロ・ビットのデータ区画を提供するために、大容量ストレージ・システムへの要求に応答することを含む。
さらに、本発明の実施形態により、
物理ストレージからデータ区画を読み取ること、
データ区画がゼロ・データのみを含む旨を決定すること、および、
この決定に応答して、データ区画のための論理ストレージの割り振りを維持する一方で、大容量ストレージ・システムにおけるデータ区画の物理ストレージを割り振り解除すること、
を含む、大容量ストレージ・システム内のデータを監視するための方法が提供される。
典型的には、データ区画の読み取りは、整合性および正当性のうちの少なくとも1つについてデータ区画をチェックすることを含む。この方法は、チェックに応答してデータ区画を訂正することも含むことができる。
一実施形態では、データ区画の読み取りは、データ区画が誤って非ゼロ・データを含む旨を決定することを含む。
代替実施形態では、論理ストレージの割り振りの維持は、少なくともデータ区画に関する論理アドレスを有する区画データ記録を作成することを含む。この方法は、通常、区画を永続メディア内に格納することを含み、永続メディア内への区画の格納は、着信データ区画に関する物理アドレスを含めるために区画データ記録を更新することを含むことが可能であり、物理ストレージの割り振り解除は、区画記述子記録から物理アドレスを除去することを含むことができる。
他の代替実施形態では、方法は、データ区画にゼロ・ビットの発信データ区画を提供するために、大容量ストレージ・システムへの要求に応答することを含む。
さらに、本発明の実施形態により、
大容量ストレージ・システムにおいて、ストレージのための着信データ区画を受信すること、および
大容量ストレージ・システムにおいて、着信データ区画のために論理ストレージを割り振ること、
を実行するように構成された、制御ユニットと、
着信データ区画がゼロ・データのみを含む旨を決定するため、および
この決定に応答して、着信データ区画のために割り振られた論理ストレージを維持しながら、大容量ストレージ・システムにおける着信データ区画の物理ストレージを禁止するために、
制御ユニットに結合されたプロセッサと、
を含む、大容量ストレージ・システムにデータを移行するための装置が提供される。
さらに、本発明の実施形態により、
物理ストレージからデータ区画を読み取るように構成された制御ユニットと、
データ区画がゼロ・データのみを含む旨の決定を実行するため、および、
この決定に応答して、大容量ストレージ・システムにおけるデータ区画の物理ストレージを割り振り解除し、データ区画のための論理ストレージの割り振りを維持するために、
制御ユニットに結合されたプロセッサと、
を含む、大容量ストレージ・システム内のデータを監視するための装置が提供される。
本発明は、図面と共に記載されたその諸実施形態の以下の詳細な説明からより完全に理解されよう。
本発明の実施形態に従ったデータ・ストレージ・システムを示す概略図である。 本発明の実施形態に従った、他のストレージ・システムに接続された図1のデータ・ストレージ・システムを示す概略図である。 本発明の実施形態に従った、移行された区画を図1のデータ・ストレージ・システム内に格納するための方法を概略的に示す流れ図である。 本発明の実施形態に従った、図1のデータ・ストレージ・システム内のキャッシュを示す概略図である。 本発明の実施形態に従った、図1のデータ・ストレージ・システム内でデータ区画を取り消す(scrubbing)ための方法を概略的に示す流れ図である。
概要
シン・プロビジョニングは、割り振られたが未使用のストレージまたは取り残された(stranded)ストレージを消去する、「ジャスト・イン・タイム容量」である。ストレージ・システム内でシン・プロビジョニングのメカニズムを実装するための1つの方法は、「Dynamic allocation of storage for hierarchical copies」という名称の米国特許出願第2006/0253681号に記載されている。
本発明の諸実施形態は、シン・プロビジョニング・ストレージ・システムの性能を強化するための方法を提供する。物理データ区画のコンテンツが値ゼロを有する場合、それによってすべてのデータ・ビットが「オフ」となり、区画は論理的に定義される必要があるが、物理ストレージ・スペースは不要である。この状況は、たとえば、アプリケーションが区画内に含まれるデータ上で動作する場合、およびゼロに等しい結果が生じる場合など、様々な方法で生じる可能性がある。
以下に説明される本発明の一実施形態は、データがソース・ストレージ・システムから宛先シン・プロビジョニング・ストレージ・システムへと移行される場合に、使用することができる。移行される各データ区画は、物理ストレージが割り振られる前に分析される。区画のコンテンツが値ゼロを有する場合、論理ストレージが割り振られ、物理ストレージは使用されない。アプリケーションがこの区画のすべてまたは一部を読み取るように要求した場合、ゼロのみからなる区画を戻すことにより、この要求に対して十分に応答される。移行された「ゼロ」区画の物理ストレージを禁止することにより、アプリケーション・データのための使用可能ストレージ・スペースを増加させながら、ストレージの効率性を向上させる。
本発明の他の実施形態は、「取り消し」手順の動作中に、ゼロ値のコンテンツを備える区画の物理ストレージを消去する。典型的には、ストレージ・システムは、データの整合性および正当性に関してディスク上に格納された各区画を定期的にチェックするための、通常のシステム・アクティビティの背景で動作する、取り消し手順を含む。取り消し手順は、通常、データを完全に取り消すことによって、正しいデータを復元するために、欠陥であることが見つかった区画に適用される。取り消し手順は、整合性および正当性のチェックを実行することに加えて、区画内に格納されたデータがゼロのみである可能性をチェックするために実装可能である。区画がゼロのみを含む場合、区画はシステム内で論理的に定義されたままであるが、ディスク上の物理ストレージ・スペースは割り振り解除され、区画のコンテンツ(ゼロのみ)はディスクに書き出されない。アプリケーションがこの区画のすべてまたは一部を読み取るように要求した場合、ゼロのみからなる区画を戻すことによって、この要求に対して十分に応答される。取り消し中に「ゼロ」区画が発見された場合、それらのための物理ストレージを消去することにより、データの移行に関して前述された利点と同様の利点が提供される。
システムの説明
図1は、本発明の実施形態に従った、大容量データ・ストレージ・システム10の概略ブロック図を示す。システム10は、たとえば、インターネットなどのネットワーク50を介して、またはバスによって、当分野で知られた任意の手段によって1つまたは複数のホスト52に接続される。データは、システム10内で、論理アドレス(LA)に関連付けられた論理ブロックのシーケンスを備える、論理ユニット(LUN)に格納される。これらのブロックのコンテンツは、通常、本明細書ではたとえばディスクであると想定された、低速アクセス時間あるいは高速アクセス時間またはその両方の、不揮発性大容量ストレージ・デバイスのグループ12全体にわたり、分散して格納される。ホスト52は、I/O読み取り要求およびI/O書き込み要求を含む入力/出力(I/O)要求を介して、ディスク12に格納されたデータにアクセスする。I/O読み取り要求では、要求されたデータは、データが格納されたディスク12のうちの1つから読み取られる。I/O書き込み要求では、データは1つまたは複数のディスク12に書き込まれる。
システム10は、通常、ディスク12を組み込むことが可能な1つまたは複数の処理ユニット、あるいはシステム10の他の要素、またはその両方として、当業者が精通することになる方法によって実装される、管理ノード25を備えることができる。システム10は、ディスク12へのアクセスを必要とする、I/O読み取りおよび書き込み要求を受信する1つまたは複数のほぼ同様のインターフェース26も備えることができる。各インターフェース26は、ハードウェアあるいはソフトウェアまたはその両方で実装可能であり、ストレージ・システム10内に、あるいは、別の方法として、ネットワーク50の要素またはホスト52のうちの1つなどの任意の他の好適な位置に、配置可能である。ディスク12とインターフェースとの間には多くの一時キャッシュ20があり、それぞれのキャッシュはそれぞれのディスク・サブグループ12に結合されている。キャッシュ20は、バスまたはスイッチなどの当分野で知られた任意の好適な高速結合システムによって、インターフェース26に結合されるため、結果として各インターフェースは、各キャッシュと通信することおよび各キャッシュとの間でデータを転送することが可能となり、次に各キャッシュは、そのディスク・サブグループ12との間で必要に応じてデータを転送することが可能となる。例を挙げると、本明細書では、キャッシュ20とインターフェース26との間の結合は、第1のクロスポイント・スイッチ14によるものと想定される。インターフェース26は、実質上、互いに独立に動作する。キャッシュ20およびインターフェース26は、ホスト52とディスク12との間でデータを転送する、データ転送システムとして動作する。
通常、ストレージ・システム10内に分散された、1つまたは複数の処理ユニットを備えることが可能なプロセッサ30が、システムを動作させる。通常、プロセッサは、ノード25およびキャッシュ20を管理するための命令を送信する。
システム10内の各論理ユニット(LUN)の連続ブロックは、通常、システム全体を通じて長さが同一の区画にグループ化される。したがってLUNは、論理ブロックの連続列を備える、論理区画の連続列を備える。本明細書で説明された本発明の諸実施形態では、区画は、取り消しプロセスを含む、本明細書で説明されたほとんどのデータ・トランザクションを管理するために使用される、基本データ部分であるものと想定される。しかしながら、データ・トランザクションにおいてデータを分配する(apportion)ための任意の他の便利なシステムを使用することが可能である。
管理ノードは、各キャッシュ20に論理ユニット区画を割り当てるため、結果として各キャッシュは、その割り当てられた区画のLA領域からデータを取り出すこと、あるいはその領域にデータを格納すること、またはその両方が可能となる。この領域は、通常、ディスク12の完全なメモリ・アドレス・スペースが利用されるように選択される。システム10では、データは冗長的に格納可能であり、その場合、各区画は少なくとも2つのキャッシュ、および、それぞれそれらに関連付けられたディスク12にマッピングされる。論理アドレス領域をキャッシュに冗長的に格納するための方法は、本発明の譲受人に譲渡された、「Data Allocation in a Distributed Storage System」という名称の、米国特許出願第2005/0015566号に記載されている。こうした方法は、本発明の諸実施形態で使用可能である。
各キャッシュ20に対して割り当てられた区画は、通常、各インターフェース26内に格納された分散テーブル19に記録される。各分散テーブルは、そのインターフェースによって、ホスト52からのI/O要求をキャッシュにルーティングするために使用される。別の方法として、または加えて、各キャッシュ20に対して割り当てられた区画は、区画とキャッシュとの間の対応関係を生成するための当分野で知られた任意の他の好適な方法によって、各インターフェース26に格納される。分散テーブル19は、各インターフェース26に、システム10の完全なキャッシュ・アドレス・スペースの概要を与えることを理解されよう。本発明の譲受人に譲渡された、「Distributed Independent Cache Memory」という名称の、米国特許出願第2005/0015567号は、分散テーブル19などのテーブルを生成するために適用可能な方法を記載している。
データにアクセスするためのI/O要求は特定のキャッシュに搬送され、キャッシュ自体によって、またはキャッシュに接続されたディスク12によって、サービスを提供することができる。したがって、各キャッシュは、他のキャッシュとは実質上独立に、搬送されたI/O要求上で動作し、同様に各キャッシュは、他のキャッシュとそれらのそれぞれのサブグループとの間の通信とは実質上独立に、そのそれぞれのディスク・サブグループと通信する。各キャッシュ20は、キャッシュに特有のそれぞれの区画テーブル17のセットを備え、区画テーブルの機能について、以下でより詳細に説明する。
管理ノード25は、一部は区画テーブル17に含まれ、一部は分散テーブル19に含まれる情報を備えた、主構成テーブル18も維持することができる。本発明の諸実施形態では、プロセッサ30は、主構成テーブルを修正すること、ならびに、関連する修正済み情報をキャッシュ20およびインターフェース26にブロードキャストすることによって、システム内の構成変更を生成することが可能であり、その結果、それぞれ区画テーブル17および分散テーブル19を修正することになる。
図2は、本発明の実施形態に従った、ソース・ストレージ・システム11に接続されたストレージ・システム10の概略図を示す。システム10では、各キャッシュ20は、以下ですべてがより詳細に説明される、制御ユニット64、データ・スペース66、および区画記述子記録70を備えることができる。図が見やすいように、図2では、1つのインターフェース26、1つのキャッシュ20、およびその結合されたディスク12のみが示されている。キャッシュは、図1よりも詳細に示されている。ストレージ・システム間の接続の目的は、ソース・ストレージ・システムから、本明細書では宛先ストレージ・システムとも呼ばれるストレージ・システム10へと、データを移行することである。ソース・システム11は、実質上、当分野で知られた任意の種類のストレージ・システムを備える。インターフェース26は、ソース・システム11に関してフォーマット化されたデータを読み取るように構成され、必要であれば、移行されたデータをシステム10が格納可能な種類のデータ区画に再配置するように構成されるため、結果として移行プロセスが実行可能である。
2つのシステム間の接続は、システム11内のいくつかの通信ポートから、たとえばシステム10内の1つまたは複数のインターフェース26へと、データを転送する、リンク84を介して実装可能である。ここからデータは、ホスト52から着信する任意の種類のI/O書き込み要求の場合のように、対応するキャッシュ20に向けて送られることになる。
システム11から着信するデータ区画は、システム10内の適切なキャッシュ20に到達した場合、さらにディスク12に書き込むことができる。キャッシュは、キャッシュの機能を管理するための制御ユニット64を含むことが可能であり、このユニットは、通常、プロセッサ30からの命令の下で動作する。別の方法として、キャッシュの挙動は、専用ハードウェア論理によって、またはハードウェア要素およびソフトウェア要素の組み合わせによって、プロセッサ30の全体的な制御の下で実装可能である。以下では、キャッシュ20が制御ユニット64を備えること、ならびに、制御ユニット64およびプロセッサ30によって実行される機能は交換可能であることが想定される。
ディスク12上でデータを格納するために十分なデータ・ブロックが使用可能である場合、制御ユニット64は、データをディスク上の物理アドレスに格納し、物理ストレージ・アドレスと、LUNの1つまたは複数のそれぞれの論理区画との間に、リンクを生成する。制御ユニットによって生成されたリンクは、本明細書では区画記述子記録(PDR)70と呼ばれ、PDRはキャッシュの区画テーブル17に格納される。ストレージ・システムが、LUNの論理区画でデータにアクセスするためのI/Oコマンドを受信した場合、制御ユニットはPDRを使用して必要な物理位置を識別する。
データを格納するための十分なデータ・ブロックが存在しない場合、ストレージ・システム10はエラー・メッセージを戻す。
本発明の実施形態によれば、移行区画は、初期にデータ・スペース66内に一時的に格納される。その後、制御ユニットは、区画がゼロ以外のデータを含むかどうかを判別するために区画をチェックする。これは通常、標準のケースである。しかしながら、区画がゼロのみからなるケース、または言い換えれば、そのすべてのビットがオフとなるケースも有り得る。
制御ユニット64は、データ・スペース66内の着信区画がゼロのみからなる旨を決定した場合、区画をシステム10内で定義されるものとみなすが、ディスク上にそのための物理ストレージ・スペースは割り振らず、この区画のコンテンツ(ゼロのみ)はディスクに書き込まない。後に、ホスト52が、移行された区画のすべてまたは一部を読み取るための要求をストレージ・システム10に送信した場合、ゼロのみからなる区画をホストに戻すことによって、この要求に対して十分に応答されることになる。
図3は、本発明の実施形態に従った、ストレージ・システム11からストレージ・システム10へ移行される区画を格納するための方法を概略的に示す流れ図である。この方法は、データの移行を制御するためのコマンドに応答して、制御ユニット64によって使用可能である。加えて、または別の方法として、この方法は、ソース・ストレージ・システムからストレージ・システム10への区画の移行を必要とする場合、プロセッサによって動作される管理ノード25によって呼び出すことができる。
受信ステップ90では、キャッシュ20がストレージ・システム11から移行されている区画を受信し、制御ユニット64がこの区画を分析のためにデータ・スペース66内に一時的に格納することができる。
PDR書き込みステップ92では、制御ユニットが特定のPDR70(図2)を作成し、受信された区画の論理アドレス(LA)をPDRに書き込む。PDRは、移行された区画の受信を記録するために、区画テーブル17に格納される。
その後、区画分析ステップ94では、制御ユニット64が、すべてのビットが値ゼロを有するかどうかを判別するために、データ・スペース66内の移行された区画を分析する。制御ユニットは、区画がゼロのみからなるものと決定した場合、確認ステップ102で、区画移行が完了した旨を管理ノード25またはプロセッサ30に通知することができる。加えて、制御ユニットは、物理スペースが割り振られていないことを示すために、PDR70を更新することができる。
しかしながら、制御ユニット64は、移行された区画が非ゼロ・データを含むものと決定した場合、十分なスペース判別ステップ96で、区画に使用可能な十分な物理ストレージがディスク12上に存在するかどうかをチェックする。使用可能な十分なスペースがディスク上に存在しない場合、エラー応答ステップ98で、エラー状態が発生する。移行された区画を格納するために使用可能な十分なスペースがディスク上に存在する場合、物理ストレージ・ステップ100で、制御ユニットは区画データをディスクに書き込み、区画の物理アドレスを記録することによって、移行された区画PDRを更新する。その後、制御ユニットは、確認ステップ102で、区画移行を完了した旨を管理ノード25またはプロセッサ30に通知する。流れ図91の実装は、移行された「ゼロ」の物理ストレージを禁止し、ストレージの効率を向上させ、アプリケーション・データに使用可能なストレージ・スペースを増加させる。
図4は、本発明の実施形態に従った、ストレージ・システム10内の1つのキャッシュ20およびそのディスク・サブグループ12の概略図を示す。図4では、図2を参照しながら上記で説明したキャッシュ20の要素と同じ参照番号で示されたキャッシュ20の諸要素は、一般に、構造および動作において同様である。以下の説明では、ディスク12は、物理データ区画110を備えるものと想定される。ストレージ・システム10は、前述の拡張シン・プロビジョニング・システムを組み込むことによって、そのディスク上で拡張取り消し手順を実装するように構成することが可能である。本発明の一実施形態では、キャッシュは、(概要で前述した)整合性および正当性のチェックの実行に加えて、区画内に格納されたデータがゼロのみである可能性もチェックする。
取り消しでは、制御ユニット64は、ディスク12に格納された所与の物理データ区画110をデータ・スペース66にコピーする。物理区画は整合性および正当性がチェックされ、エラーが見つかれば制御ユニットが訂正する。その後、制御ユニットは、データ・スペースに格納されたデータがゼロのみを含む可能性をチェックする。ゼロのみの場合、制御ユニットは区画テーブル17内のPDR70を更新するため、結果として物理アドレスは割り振り解除される一方で、区画は論理アドレスを保持する。区画が非ゼロ・データを含む場合、制御ユニットはデータ・スペース66内で取り消された区画を、ディスク上の物理データ区画に書き戻す。
整合性および正当性チェックで見つかる可能性のあるエラー・タイプの1つは、物理データ区画が誤って非ゼロ・データを含むが、実際には非ゼロ・データのみを含む場合である。これに当てはまる場合、前述のように、制御ユニットは区画テーブル17内のPDR70を更新し、結果として、物理アドレスは割り振り解除される一方で、区画は論理アドレスを保持する。
図5は、本発明の実施形態に従った、図4のキャッシュによってデータ区画を取り消すための方法を概略的に示す流れ図121である。
区画受信ステップ120では、制御ユニット64は、取り消しのためにディスク12から区画を受信し、これをデータ・スペース66に一時的に格納することができる。整合性チェック・ステップ122では、制御ユニットが区画データの整合性および正当性をチェックする。整合性チェックは、通常、区画データが関連データに従うかどうかのチェックを含み、正当性チェックは、通常、区画データの値が有効であるかどうかのチェックを含む。欠陥データ判別ステップ124では、制御ユニットが、区画データがエラーを含むかどうかを判別する。データ訂正ステップ126では、欠陥データが見つかれば制御ユニットが訂正する。適用される訂正には、図4を参照しながら上記で説明した訂正が含まれる。
その後、区画分析ステップ128では、制御ユニット64が、すべてのビットが値ゼロを有するかどうかを判別するために、データ・スペース66内の区画を分析する。ストレージ割り振り解除ステップ132では、制御ユニットは、区画がゼロのみからなるものと決定した場合、物理区画を割り振り解除する。これにより、ストレージに使用されるために区画によって以前に占有された、ディスク12上の物理ディスク・スペースが解放される。
ステップ132に続き、PDR更新ステップ134では、物理アドレスを除去するために、区画に関する区画データ記録が更新され、論理アドレス(LA)を保持する。制御ユニットは、対応する物理アドレスのない論理アドレスを含む任意のPDR70は、区画がゼロのみからなることを示すものと理解する。これにより、後にホスト52が、区画のすべてまたは一部を読み取るための要求をストレージ・システム10に送信した場合、ストレージ・システムがゼロのみからなる発信区画をホストに戻すことによって、この要求に対して十分に応答されることが保証される。
区画分析ステップ128に戻り、非ゼロの区画データが見つかった場合、制御ユニットは、区画書き込みステップ130で、データ・スペース66からディスクへ区画データを書き込む。PDR修正ステップ134では、データ訂正が区画サイズを変更した場合、制御ユニット64は、PDR70に関する物理アドレスを更新することができる。
ステップ130または134に続き、制御ユニット64は、確認ステップ136で、区画の取り消しを完了した旨を管理ノード25またはプロセッサ30に通知する。流れ図121の実装により、取り消しプロセス中に見つかった「ゼロ」区画の物理ストレージが消去され、これによってストレージの効率が向上し、アプリケーション・データに使用可能なストレージ・スペースが増加する。
前述の諸実施形態は単なる例として挙げられたものであり、本発明は、上記で具体的に図示および説明された内容に限定されるものでないことを理解されよう。むしろ、本発明の範囲は、上記で説明された様々な特徴の組み合わせおよび副組み合わせの両方、ならびに、当業者が前述の説明を読めば理解されるであろう、また従来技術では開示されていない、その変更および修正を含む。

Claims (12)

  1. キャッシュメモリと物理ストレージとを含む大容量ストレージ・システム内のデータを監視するための方法であって、
    前記物理ストレージからデータ区画を読み取るステップと、
    前記データ区画を前記キャッシュメモリに一時的に格納するステップと、
    前記キャッシュメモリに格納された前記データ区画を分析し、前記データ区画がゼロ・データのみからなる場合に、前記データ区画のための論理ストレージの割り振りを維持する一方で前記データ区画のための前記物理ストレージ割り振り解除し、前記キャッシュメモリに格納された区画データ記録に前記データ区画に関する論理アドレスを保持させると共に前記データ区画に関する物理アドレスを除去するために前記区画データ記録を更新することにより、前記データ区画がゼロ・データのみからなることを示し、前記データ区画を読み取るための要求に応答して、前記区画データ記録を参照することにより、ゼロ・データのみからなる区画を戻すステップと、
    を含む、大容量ストレージ・システム内のデータを監視するための方法。
  2. 前記データ区画を読み取るステップが、整合性および正当性のうちの少なくとも1つについて前記データ区画をチェックするステップを含む、請求項1に記載の方法。
  3. 前記チェックするステップに応答して、前記データ区画を訂正するステップを含む、請求項2に記載の方法。
  4. 前記データ区画が非ゼロ・データを含む場合に、前記データ区画を前記物理ストレージに書き込むステップを含む、請求項1に記載の方法。
  5. 前記データ区画前記物理ストレージ内に格納するステップを含む、請求項1に記載の方法。
  6. 前記データ区画前記物理ストレージ内に格納するステップが、着信した前記データ区画に関する物理アドレスを含めるために前記区画データ記録を更新するステップを含む、請求項5に記載の方法。
  7. キャッシュメモリと物理ストレージとを含む大容量ストレージ・システム内のデータを監視するための装置であって、
    前記物理ストレージからデータ区画を読み取り、前記データ区画を前記キャッシュメモリに一時的に格納するように構成された制御ユニットと、
    前記キャッシュメモリに格納された前記データ区画を分析し、前記データ区画がゼロ・データのみからなる場合に、前記データ区画のための論理ストレージの割り振りを維持する一方で、前記データ区画のための前記物理ストレージ割り振り解除し、前記キャッシュメモリに格納された区画データ記録に前記データ区画に関する論理アドレスを保持させると共に前記データ区画に関する物理アドレスを除去するために前記区画データ記録を更新することにより、前記データ区画がゼロ・データのみからなることを示し、前記データ区画を読み取るための要求に応答して、前記区画データ記録を参照することにより、ゼロ・データのみからなる区画を戻すために、前記制御ユニットに結合されたプロセッサと、
    を備える、大容量ストレージ・システム内のデータを監視するための装置。
  8. 前記データ区画を読み取ることが、整合性および正当性のうちの少なくとも1つについて前記データ区画をチェックすることを含む、請求項7に記載の装置。
  9. 前記プロセッサが、前記チェックすることに応答して、前記データ区画を訂正するように構成された、請求項8に記載の装置。
  10. 前記データ区画が非ゼロ・データを含む場合に、前記データ区画を前記物理ストレージに書き込むことを含む、請求項7に記載の装置。
  11. 前記データ区画前記物理ストレージ内に格納することを含む、請求項7に記載の装置。
  12. 前記データ区画前記物理ストレージ内に格納することが、着信した前記データ区画に関する物理アドレスを含めるために前記区画データ記録を更新することを含む、請求項11に記載の装置。
JP2010526425A 2007-10-01 2008-09-28 シン・プロビジョニングの移行および取り消しのための方法および装置 Active JP5315348B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US97657207P 2007-10-01 2007-10-01
US60/976,572 2007-10-01
US12/019,650 US8386744B2 (en) 2007-10-01 2008-01-25 Thin provisioning migration and scrubbing
US12/019,650 2008-01-25
PCT/IL2008/001305 WO2009044397A2 (en) 2007-10-01 2008-09-28 Thin provisioning migration and scrubbing

Publications (2)

Publication Number Publication Date
JP2010541060A JP2010541060A (ja) 2010-12-24
JP5315348B2 true JP5315348B2 (ja) 2013-10-16

Family

ID=40509709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010526425A Active JP5315348B2 (ja) 2007-10-01 2008-09-28 シン・プロビジョニングの移行および取り消しのための方法および装置

Country Status (6)

Country Link
US (1) US8386744B2 (ja)
EP (1) EP2206045A4 (ja)
JP (1) JP5315348B2 (ja)
KR (1) KR20100077156A (ja)
CN (1) CN101809551B (ja)
WO (1) WO2009044397A2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8140752B2 (en) * 2007-09-20 2012-03-20 Xyratex Technology Limited Method of executing a background task and an array controller
US8108634B1 (en) * 2008-06-27 2012-01-31 Emc B.V., S.A.R.L. Replicating a thin logical unit
US8176284B2 (en) 2009-08-11 2012-05-08 Texas Memory Systems, Inc. FLASH-based memory system with variable length page stripes including data protection information
US8230131B2 (en) * 2009-09-14 2012-07-24 International Business Machines Corporation Data migration to high speed storage in accordance with I/O activity over time
US8578087B2 (en) * 2010-02-02 2013-11-05 International Business Machines Corporation On demand conversion of standard logical volumes to thin-provisioned logical volumes
US8429391B2 (en) 2010-04-16 2013-04-23 Micron Technology, Inc. Boot partitions in memory devices and systems
US9195412B2 (en) * 2010-10-07 2015-11-24 International Business Machines Corporation System and method for transforming an in-use raid array including migrating data using reserved extents
CN102446072B (zh) 2010-10-07 2014-11-19 国际商业机器公司 用于池式存储中的raid 阵列变换的系统和方法
US8510527B1 (en) * 2010-10-08 2013-08-13 Qlogic, Corporation System and methods for migrating information from source storage to destination storage
CN101976223B (zh) * 2010-10-09 2012-12-12 成都市华为赛门铁克科技有限公司 自动精简配置方法和装置
US8688908B1 (en) 2010-10-11 2014-04-01 Infinidat Ltd Managing utilization of physical storage that stores data portions with mixed zero and non-zero data
CN102651009B (zh) 2011-02-28 2014-09-24 国际商业机器公司 一种存储系统中检索数据的方法和设备
US8577836B2 (en) 2011-03-07 2013-11-05 Infinidat Ltd. Method of migrating stored data and system thereof
JP6234919B2 (ja) * 2011-04-25 2017-11-22 イカノス・コミュニケーションズ・インコーポレイテッドIkanos Communications,Inc. ネットワーク化環境においてキャッシュするための方法および装置
US9465737B1 (en) * 2012-07-02 2016-10-11 Toshiba Corporation Memory systems including a duplicate removing filter module that is separate from a cache module
CN102915275A (zh) * 2012-09-13 2013-02-06 曙光信息产业(北京)有限公司 一种自动精简配置系统
CN104035887B (zh) * 2014-05-22 2017-10-31 中国科学院计算技术研究所 一种基于精简配置系统的块设备缓存装置及其方法
US10908832B2 (en) * 2017-10-31 2021-02-02 Micron Technology, Inc. Common pool management
CN111273870B (zh) * 2020-01-20 2023-06-06 深圳奥思数据科技有限公司 云存储系统间海量数据迭代迁移方法、设备及存储介质

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3236152B2 (ja) 1992-10-22 2001-12-10 日本電気株式会社 ファイル圧縮処理装置
JP3133525B2 (ja) 1992-11-27 2001-02-13 三洋電機株式会社 データバックアップシステム
JP3554045B2 (ja) 1994-10-28 2004-08-11 富士通株式会社 補助記憶装置の記録内容復元装置および記録復元装置
US5649158A (en) * 1995-02-23 1997-07-15 International Business Machines Corporation Method for incrementally archiving primary storage to archive storage by utilizing both a partition archive status array and a partition map
US7162600B2 (en) 2005-03-29 2007-01-09 Hitachi, Ltd. Data copying method and apparatus in a thin provisioned system
US7546482B2 (en) * 2002-10-28 2009-06-09 Emc Corporation Method and apparatus for monitoring the storage of data in a computer system
US7024526B2 (en) * 2002-10-31 2006-04-04 Hitachi, Ltd. Apparatus and method of null data skip remote copy
US7293156B2 (en) 2003-07-15 2007-11-06 Xiv Ltd. Distributed independent cache memory
US7908413B2 (en) 2003-07-15 2011-03-15 International Business Machines Corporation Data allocation in a distributed storage system
US7225314B1 (en) * 2004-05-26 2007-05-29 Sun Microsystems, Inc. Automatic conversion of all-zero data storage blocks into file holes
US20060200481A1 (en) * 2005-03-04 2006-09-07 Khalid Goyan Method and system for data optimization and protection in DSP firmware
US7130960B1 (en) 2005-04-21 2006-10-31 Hitachi, Ltd. System and method for managing disk space in a thin-provisioned storage subsystem
US7490213B2 (en) 2005-05-06 2009-02-10 Xiv Ltd. Dynamic allocation of storage for hierarchical copies
US20070150690A1 (en) * 2005-12-23 2007-06-28 International Business Machines Corporation Method and apparatus for increasing virtual storage capacity in on-demand storage systems
US20070174549A1 (en) 2006-01-24 2007-07-26 Yevgen Gyl Method for utilizing a memory interface to control partitioning of a memory module
JP4927408B2 (ja) * 2006-01-25 2012-05-09 株式会社日立製作所 記憶システム及びそのデータ復元方法
JP2008146574A (ja) 2006-12-13 2008-06-26 Hitachi Ltd 記憶制御装置及び記憶制御方法
JP2008171311A (ja) 2007-01-15 2008-07-24 Matsushita Electric Ind Co Ltd データ保存装置
US20080288436A1 (en) * 2007-05-15 2008-11-20 Harsha Priya N V Data pattern matching to reduce number of write operations to improve flash life

Also Published As

Publication number Publication date
US20090089534A1 (en) 2009-04-02
US8386744B2 (en) 2013-02-26
WO2009044397A3 (en) 2010-03-04
WO2009044397A2 (en) 2009-04-09
JP2010541060A (ja) 2010-12-24
EP2206045A4 (en) 2012-08-01
CN101809551B (zh) 2013-06-05
EP2206045A2 (en) 2010-07-14
CN101809551A (zh) 2010-08-18
KR20100077156A (ko) 2010-07-07

Similar Documents

Publication Publication Date Title
JP5315348B2 (ja) シン・プロビジョニングの移行および取り消しのための方法および装置
US9361034B2 (en) Transferring storage resources between snapshot storage pools and volume storage pools in a distributed network
US8762768B2 (en) Storage system for restoring data stored in failed storage device
US8131969B2 (en) Updating system configuration information
US7831764B2 (en) Storage system having plural flash memory drives and method for controlling data storage
US7873600B2 (en) Storage control device to backup data stored in virtual volume
JP6114397B2 (ja) 複合型ストレージシステム及び記憶制御方法
US8639898B2 (en) Storage apparatus and data copy method
WO2012049711A1 (en) Data migration system and data migration method
EP0727745A1 (en) Memory control apparatus and its control method
JP2009043030A (ja) ストレージシステム
JP2010020431A (ja) 上位装置から指定されるデバイスに関する記憶容量を変更するストレージシステム及び方法
JP2000010738A (ja) ディスクアレイシステム、同システムに適用される記憶容量拡張方法および記録媒体
US8078798B2 (en) Managing first level storage in a multi-host environment
US7676644B2 (en) Data processing system, storage apparatus and management console
JP2022016753A (ja) ストレージシステム、制御方法及びプログラム
US6732194B1 (en) Method and apparatus for multi-sequential data operations
JPH0863394A (ja) 記憶装置システムおよび記憶装置の制御方法
US11216195B1 (en) Sharing blocks of non-volatile data storage to support cache flushes in a multi-node data storage system
US20050223180A1 (en) Accelerating the execution of I/O operations in a storage system
JP5768118B2 (ja) 複数のフラッシュパッケージを有するストレージシステム
JP3236166B2 (ja) キャッシュ制御方法および情報処理装置
US7945534B1 (en) Continuous data backup
JP3202550B2 (ja) ディスクアレイサブシステム
JPH08147111A (ja) ディスクアレイ装置の拡張構成方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121017

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121023

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20121203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20121205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130122

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130618

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20130618

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130708

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5315348

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250