JP2013543198A - データ管理仮想化のためのシステムおよび方法 - Google Patents
データ管理仮想化のためのシステムおよび方法 Download PDFInfo
- Publication number
- JP2013543198A JP2013543198A JP2013539918A JP2013539918A JP2013543198A JP 2013543198 A JP2013543198 A JP 2013543198A JP 2013539918 A JP2013539918 A JP 2013539918A JP 2013539918 A JP2013539918 A JP 2013539918A JP 2013543198 A JP2013543198 A JP 2013543198A
- Authority
- JP
- Japan
- Prior art keywords
- data
- content
- state
- hash
- storage
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1453—Management of the data involved in backup or backup restore using de-duplication of the data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1456—Hardware arrangements for backup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
- G06F3/0641—De-duplication techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
Abstract
【選択図】図4
Description
この出願は、2010年11月16日に出願され、System and Method for Performing Backup or Restore Operations Utilizing Difference Information and Timeline State Informationと題された米国特許出願第12/947,393号と、2010年11月16日に出願され、System and Method for Managing Data with Service Level Agreements That May Specify Non‐Uniform Copying of Dataと題された米国特許出願第12/947,385号と、2010年11月16日に出願され、System and Method for Performing a Plurality of Prescribed Data Management Functions in a Manner That Reduces Redundant Access Operations to Primary Storageと題された米国特許出願第12/947,436号と、2010年11月16日に出願され、System and Method for Creating Deduplicated Copies of Data by Tracking Temporal Relationships Among Copies and by Ingesting Difference Dataと題された米国特許出願第12/947,418号と、2010年11月16日に出願され、System and Method for Managing Deduplicated Copies of Data Using Temporal Relationships Among Copiesと題された米国特許出願第12/947,375号と、2010年11月16日に出願され、System and Method for Improved Garbage Collection Operations in a Deduplicated Store by Tracking Temporal Relationships Among Copiesと題された米国特許出願第12/947,383号と、2010年11月16日に出願され、System and Method for Creating Deduplicated Copies of Data by Sending Difference Data Between Two Near‐Neighbor Temporal Statesと題された米国特許出願第12/947,947,513号と、2010年11月16日に出願され、System and Method for Creating Deduplicated Copies of Data Storing Non−Lossy Encodings of Data Directly in a Content Addressable Storeと題された米国特許出願第12/947,438号とに優先権を主張する。
この発明は、データ管理、データ保護、災害復旧および事業継続に一般に関するものである。より詳細には、この発明は、差分情報および時系列状態情報を利用して、バックアップまたは復元動作を実行するためのシステムおよび方法に関するものである。
図3は、上記原理を実施するデータ管理仮想化システムの高レベル構成要素を例示する。好適には、システムは、以下に更に記載されるこれらの基本機能構成要素を備える。
図4は、本発明のある実施形態に係るデータ管理仮想化機関306の構築的な概要図を例示する。機関306は、以下のモジュールを含む。
図5は、オブジェクトマネージャおよびデータ移動機関410を例示する。オブジェクトマネージャおよびデータ移動機関は、プールマネージャ504によってそのオブジェクトマネージャに示された仮想ストレージリソース510を発見して使用する。そのオブジェクトマネージャは、サービスレベルポリシー機関406からの要求を受け入れ、仮想ストレージプール内のリソースからのデータストレージオブジェクトインスタンスを生成して保持し、そのオブジェクトマネージャは、サービスレベルポリシー機関からの命令に従って、仮想ストレージプールからのストレージオブジェクトのインスタンスの中からアプリケーションデータをコピーする。コピー用に選択されたターゲットプールは、選択されている事業動作、例えばバックアップ、レプリケーションまたは復元を暗黙のうちに指定する。サービスレベルポリシー機関は、(同一システム上の)オブジェクトマネージャの近くにまたは遠隔にあり、標準ネットワーク通信上でプロトコルを用いて通信する。TCP/IPは、好適な実施形態において使用されてもよいし、よく理解されるように、広く利用可能であってもよいし、サービスレベルポリシー機関が、オブジェクトマネージャの近くにまたはわずかな修正で遠隔に位置することを可能にする。
オブジェクトマネージャ501は、データストレージオブジェクトを保持するためのソフトウェア構成要素であり、そのソフトウェア構成要素を制御するためにプロトコル動作の組を提供する。その動作は、オブジェクトの間でのデータの生成、破壊、複製、およびコピーを含み、オブジェクトへのアクセスを保持し、特に、コピーを生成するために使用されるストレージプールの特定を可能にする。全てのプールによってサポートされる機能の共通の下位の組はない。しかしながら、好適な実施形態では、1次プールは、性能を最適化されてもよく、すなわち待ち時間が少なく、その一方で、バックアップまたはレプリケーションプールは、容量を最適化されてもよく、大量のデータおよび内容参照可能をサポートする。プールは、遠隔またはローカルであってもよい。ストレージプールは、様々な基準に従って分類され、ユーザが、例えばストレージのギガバイト毎の費用などの事業決断を下し得る手段を含む。
図5は、いくつかの代表的なストレージプールの種類を例示する。1つの1次ストレージプールおよび2つの2次ストレージプールが図中に描かれるが、より数多くのプールが、いくつかの実施形態において配置されてもよい。
オブジェクトマネージャ501は、サービスレベルポリシー機関406によってそのオブジェクトマネージャに送信された命令に従って仮想ストレージプール418からのデータストレージオブジェクト503のインスタンスを生成し保持する。オブジェクトマネージャは、5つの主な領域にデータオブジェクト動作、すなわち、一時点における複製またはコピー(「スナップショット」として一般に呼ばれる)、標準コピー、オブジェクト保守、マッピングおよびアクセス保守、ならびに収集をもたらす。
スナップショット動作は、規定の時点における最初のオブジェクトインスタンスを表わすデータオブジェクトインスタンスを生成する。より詳細には、スナップショット動作は、規定の仮想ストレージプールのリソースを用いて収集の要素の完全な仮想コピーを生成する。これは、データストレージオブジェクトと呼ばれる。データストレージオブジェクトの複数状態は、そのデータストレージオブジェクトがある一時点で存在していた際のデータストレージオブジェクトの状態が利用可能であるように、時間の経過に伴って保持される。上記したように、仮想コピーは、基礎をなすストレージ仮想化APIを用いて実施されるコピーであり、その仮想化APIは、複製データの全ビットをディスクにコピーし格納する代わりにコピーオンライトまたは他の帯域内技術を用いて、コピーが軽量の形で生成されることを可能にする。このことは、いくつかの実施形態ではEMC、vmwareまたはIBMによって提供されるような既製の、基礎をなすストレージ仮想化システムの機能にアクセスするために書き込まれたソフトウェアモジュールを用いて実施されてもよい。そのような基礎をなす仮想化が利用可能ではない場合、記載されたシステムは、愚鈍なハードウェアとインターフェースをとるためにそのシステム自体の仮想化層を提供してもよい。
コピー動作がスナップショットではない場合、そのコピー動作は標準コピー動作と考えられ得る。標準コピー動作は、1つのストレージプールにおけるソースデータオブジェクトの全てまたは下位の組を別のストレージプールにおけるデータオブジェクトにコピーする。その結果は、2つの別個のオブジェクトになる。使用され得る標準コピー動作の1つの種類は、最初の「ベースライン」コピーである。これは、典型的には、データが、1つの仮想ストレージプールから別の仮想ストレージプールに、例えば性能を最適化されたプールから容量を最適化されたストレージプールに、最初にコピーされる際に行われる。標準コピー動作の別の種類が使用されてもよく、その別の種類では、変化したデータまたは差分だけが、ターゲットオブジェクトを更新するためにターゲットストレージプールにコピーされる。これは、最初のベースラインコピーが前もって実行された後に行われることになる。
オブジェクト保守動作は、データオブジェクトを保持するための一連の動作であり、生成、破壊、および複製を含む。オブジェクトマネージャおよびデータムーバーは、プール要求仲介役(より多くは以下に)によって提供された機能を使用して、これらの動作を実施する。データオブジェクトは、広域レベルに、各ストレージプールに、または好適にはその両方に保持されてもよい。
収集動作は補助機能である。収集は、抽象的なソフトウェア概念であり、オブジェクトマネージャによりメモリに保持されたリストである。その収集は、ポリシー機関206が、収集における要素の全てにわたる一連の動作を要求することを可能にし、全ての要素への要求の一致したアプリケーションを可能にする。収集を使用することは、一時点スナップショットの同時起動を可能にさせ、それによって、複数データストレージオブジェクトが正確に同じ時点で全て取り込まれ、これは、典型的には、論理的に正確な復元のためのアプリケーションによって必要とされるからである。収集を使用することは、収集の全ての要素にわたってコピー動作を便利に要求することを可能にし、この場合には、アプリケーションが、論理的に全体として複数ストレージオブジェクトを使用することになる。
オブジェクトマネージャは、オブジェクト管理動作505をプールマネージャ504に発行することによって仮想ストレージプールを発見し、所与の要求のために必要とされた基準にかなう1つを選択するためにプールのそれぞれについて取得された情報を使用するか、あるいは、不一致の場合には、デフォルトのプールが選択され、次いで、オブジェクトマネージャは、選択された仮想ストレージプールからリソースを用いてデータストレージオブジェクトを生成することができる。
オブジェクトマネージャはまた、オブジェクト管理動作の組を提供し、外部アプリケーションに対してこれらのオブジェクトの利用可能性を与えて保持する。第1の組は、ユーザのアプリケーションがあるコンピュータを登録するためおよび登録解除するための動作である。コンピュータは、使用中、ストレージネットワークに典型的な識別情報(例えば、ファイバチャネルWWPN、iSCSI識別情報、など)によって登録される。第2の組は、「マッピング」動作であり、オブジェクトがストレージプールから生成される当該ストレージプールによって許可されると、データストレージオブジェクトは、「マップされる」ことができ、つまり、ユーザアプリケーションがコンピュータ上にある当該コンピュータを使用するために利用可能になり得る。
データムーバー502は、オブジェクトマネージャ内のソフトウェア構成要素であり、スナップショット(一時点)コピー要求および標準コピー要求のためにオブジェクトマネージャから受信された命令に従って、様々なデータストレージオブジェクト503の間でデータを読み書きするデータムーバーである。データムーバーは、システムの全体にわたってデータオブジェクトのインスタンスの間でデータを読み書きするための動作を提供する。データムーバーはまた、オブジェクトマネージャがそのデータムーバーに実行するよう要求している長期間続く動作の状態を問い合わせて保持することを可能にする動作も提供する。
オブジェクトマネージャ501は、仮想ストレージプール418におけるデータオブジェクトの間でデータをコピーするように一連の動作を通してデータムーバー502に指示する。その手順は、以下のステップを含み、命令の受信で始まる。
データストレージオブジェクトは、コンピュータデータ処理装置およびソフトウェアによく知られた表現形式(idiom)および方法を使用してアプリケーションデータのストレージおよび回復を許可するソフトウェア構成体である。実際には、これらは、現在、例えばSCSI LUNなどのストレージネットワークまたは内容参照可能コンテナ上のSCSIブロックデバイスの形態を取り、この場合、内容のための指示子は、その中のデータから構築され、その中のデータを一意的に識別する。データストレージオブジェクトは、命令をプールマネージャに発行することによって生成され保持される。アプリケーションデータを持続するための実際のストレージは、仮想ストレージプールから取り出され、データストレージオブジェクトは、その仮想ストレージプールから生成される。
プールマネージャ504は、以下に記載されるような仮想ストレージリソースならびに関連付けられた機能および特徴を管理するためのソフトウェア構成要素である。オブジェクトマネージャ501およびデータ移動機関502は、データストレージオブジェクト503を保持するために1つ以上のプールマネージャ504と通信する。
仮想ストレージリソース510は、以下に記載されるように、ストレージプール機能を実施するためにプールマネージャに利用可能となった様々な種類のストレージである。この実施形態では、ストレージバーチュアライザが、様々な外部ファイバチャネルまたはiSCSIストレージLUNを仮想化されたストレージとしてプールマネージャ504に表示するために使用される。
図6は、ストレージプールマネージャ504を更に例示する。ストレージプールマネージャの目的は、基礎をなす仮想ストレージリソースをオブジェクトマネージャ/データムーバーにストレージリソースプールとして表示することであり、そのストレージリソースプールは、システムの他の構成要素により利用される共通インターフェースを伴うストレージおよびデータ管理機能の抽象物である。これらの共通インターフェースは、典型的には、規定の時間的状態と関連付けられたデータオブジェクトを識別して参照するための機構と、ビットマップまたはエクステントの形態にあるデータオブジェクト間の差分を生成するための機構とを含む。この実施形態では、プールマネージャは、1次ストレージプール、性能を最適化されたプール、および容量を最適化されたプールを示す。共通インターフェースは、オブジェクトマネージャが、他のデータストレージオブジェクトのコピーとしてまたは新しいオブジェクトとして、これらのプールにおいてデータストレージオブジェクトを生成したり削除したりすることを可能にし、データムーバーは、データストレージオブジェクト間でデータを移動することができるし、データオブジェクト差分動作の結果を使用することができる。
動作中、プール要求仲介役502は、例えばプールもしくはオブジェクトについてのコピー、スナップショット、または削除などのデータ操作動作についての要求を受け付ける。要求仲介役は、プールもしくはオブジェクトに対して名前または参照を調べることによって実行するためにプール504からプロバイダコードを判断する。次いで、仲介役は、入ってくるサービス要求を特定のプール機能プロバイダによって処理され得る形態に変換し、適切なシーケンスのプロバイダ動作を呼び出す。
データバックアップのための最適な手法は、時間の経過に伴ってアプリケーションデータオブジェクトの連続的なバージョンを作る一方で、オブジェクトムーバーに格納されたビットマップ、エクステントおよび他の時間的差分情報を用いることによりコピーされるべきであるデータの量を最小限にする一連の動作である。そのオブジェクトムーバーは、時間の経過に伴う変化が容易に識別され得るように、データストレージオブジェクトにアプリケーションデータを格納するし、時間の経過に伴うアプリケーションデータの様々な変化に関連するメタデータをそのアプリケーションデータと関連付ける。
直観的に、データ復元のための最適な手法の動作は、データバックアップのための最適な手法の逆である。所与の時点における宛先仮想ストレージプール内のデータオブジェクトの所望の状態を再生成するための手順は、以下のステップを含む。
図7は、サービスレベルアグリーメントを例示する。サービスレベルアグリーメントは、アプリケーションデータの2次コピーに関する詳細な事業要求を記録する。最も簡単な記述では、事業要求は、いつおよびどのくらいの頻度でコピーが生成されるか、どのくらいの期間それらのコピーが保持されるか、ならびに、どのような種類のストレージプールにこれらのコピーが存在するかを定義する。この単純化された記述は、事業要求のいくつかの態様を記録しない。所与の種類のプールについてのコピー生成の頻度は、1日の全ての時間にわたってまたは1週間の全ての日にわたって均一でなくてもよい。1日のうちのある一定の時間、または1週間もしくは1カ月のうちのある一定の日は、アプリケーションデータにおけるより多くの(または少ない)臨界期間を表わしてもよく、したがって、より多くの(または少ない)頻度のコピーを要請してもよい。同様に、特定プール内のアプリケーションデータの全コピーは、同じ長さの時間に保持される必要はなくてもよい。例えば、毎月の処理の最後に生成されるアプリケーションデータのコピーは、月の半ばに生成される同じストレージプール内のコピーよりも長い期間にわたって保持される必要があってもよい。
図9は、サービスポリシー機関406を例示する。サービスポリシー機関は、サービスポリシースケジューラ902を含み、そのサービスポリシースケジューラは、ユーザによって設定されたサービスレベルアグリーメントの全てを検査し、サービスレベルアグリーメントを満たすスケジューリング決定を作成する。そのサービスポリシー機関は、情報を記録し、その情報を時間の経過に伴って持続するいくつかのデータストアに依存する。そのデータストアは、いくつかの実施形態では、設定されたサービスレベルアグリーメントが持続され更新されるところであるSLAストア904と、論理的ストレージプール名と実際のストレージプールとの間のマッピングを提供するリソースプロファイルを格納しているリソースプロファイルストア906と、情報が、まだ期限切れしていない、様々なプール内において生成された前の成功したコピーについて、カタログに載せられるところである保護カタログストア908と、集中型履歴ストア910とを含む。
図10は、ポリシースケジュール機関のフローチャートを例示する。ポリシースケジュール機関は、定義されたSLAの全てをくまなく連続的に繰り返す。そのポリシースケジュール機関がSLAの全ての最後に達すると、そのポリシースケジュール機関は、ほんの少しの間、例えば10秒、スリープし、再びSLAを通して調べることを再開する。各SLAは、1つのアプリケーションのための完全なデータ保護事業要求を包含する。したがって、SLAの全てはアプリケーションの全てを表わす。
図11は、内容参照可能プロバイダ510のために内容参照可能ストアを実装するモジュールのブロック図である。
図12は、内容参照されたオブジェクトのためのハンドルがどのように生成されるかを示す。データオブジェクトマネージャは、内容参照可能ハンドルを用いて内容参照可能オブジェクトの全てを参照する。このハンドルは、3つの部分から構成される。第1の部分1201は、ハンドルが直ぐに示す基礎をなすデータオブジェクトのサイズである。第2の部分1202は、そのハンドルが示すオブジェクトの深さである。第3の部分1203は、そのハンドルが示すオブジェクトのハッシュである。フィールド1203は、ハッシュが基礎をなすデータの無損失符号化であることを示すタグを任意選択的に含む。タグは、データチャンクが十分短いランレングス符号化(RLE)として完全に表わされ得る場合、アルゴリズム符号化として使用されるデータのRLEの形態などの、使用される符号化スキームを示す。基礎をなすデータオブジェクトが無損失符号化として表わされるには長すぎる場合、ハッシュから、ポインタまたはデータへの参照までのマッピングは、持続的ハンドル管理インデックス1104に別個に格納される。
図13は、内容参照可能ストア内に格納されたデータオブジェクトのために生成された時間的ツリー関係を例示する。この特定データ構造は、内容参照可能ストア内だけで利用される。時間的ツリー管理モジュールは、内容参照されたデータオブジェクトのそれぞれを(一連の改訂における最初を示すためのヌル(null)であり得る)親に関連付ける持続的ストア内においてデータ構造1302を保持する。ツリーの個々のノードは、単一のハッシュ値を含有する。このハッシュ値は、ハッシュが深さ0ハッシュである場合にはデータのチャンクを参照し、あるいは、ハッシュが深さ1もしくはより高いハッシュである場合には他のハッシュのリストを参照する。ハッシュ値にマッピングされた参照は、持続的ハンドル管理インデックス1104に含有される。いくつかの実施形態では、ツリーの端部は、近隣を見つけるためにアルゴリズムに使用され得る重さまたは長さを有してもよい。
− 異なるCASプールに対するレプリケーションは、他のCASプールに既に転送されていることを知られてもいる時間的ツリーにおいて最も近い近隣の組を見つけ、これにより、少ない組の差分だけが追加的に転送される必要がある。
− データ復元のための最適な手法は、復元動作のための基準として使用され得る先行点を見つけるために時間的ツリーを使用する。CAS時間的ツリーデータ構造では、子は、例えばアーカイブポリシーによって規定されるような後続のバージョンである。複数の子は同じ親ノード上に支持される。この場合は、親ノードが、変更され、次いで、復元のための基準として使用され、引き続いて再度変更されるときに、起こり得る。
CAS差分機関1106は、図11および図12にあるようなハッシュ値またはハンドルによって識別された2つのオブジェクトを比較し、オブジェクトデータが相違すると知られているオブジェクト内にオフセットおよびエクステントのシーケンスを作り出す。このシーケンスは、図12のハッシュデータ構造において並列に2つのオブジェクトツリーを横断することによって実現される。ツリートラバーサルは、標準の深さ優先または幅優先トラバーサルである。トラバーサルの間、現在の深さにあるハッシュは比較される。ノードのハッシュが両側間で同一である場合、ツリーを更に下降する必要なはいので、トラバーサルは省略されてもよい。ノードのハッシュが同一ではない場合、トラバーサルは、ツリーの次に低いレベルに下降し続ける。トラバーサルが、深さ0のハッシュの片方と同一ではない深さ0のハッシュに達する場合には、非同一データが生じる場合に比較されるデータオブジェクトへの絶対オフセットは、データ長と共に、出力シーケンスに出される。1つのオブジェクトが別のオブジェクトよりもサイズか小さい場合には、その1つのオブジェクトのトラバーサルはより早くに完了することになり、他のオブジェクトのトラバーサルに直面された後続のオフセットの全ては、差分として出される。
図11の下で記載されたように、ガーベジコレクタは、CASストア時間的データ構造においていずれのオブジェクトハンドルによっても参照されていない保存されたデータを見つけるために、および、このデータに当てられたストレージ空間を再要求するために、特定CASストアを解析するサービスである。ガーベジコレクションは標準「マークアンドスイープ」アプローチを使用する。「マーク」段階はかなり高価であり得るので、マーク段階のために使用されるアルゴリズムは、それが何度も参照され得るにもかかわらず、同じデータを複数回マーキングすることを最小限にすることを試みる。しかしながら、マーク段階は、参照されるデータがマークされずに残らないことを確実にして完了しなければならない。このことはストアからのデータ損失をもたらすことになるが、スイープ段階後、マークされなかったデータは後で新しいデータによって上書きされることになる。
別のプールからCASにオブジェクトをコピーすることは、図11に図示されたソフトウェアモジュールを使用して、図12にあるようなオブジェクトハンドルによって参照されるデータ構造を生む。そのプロセスへの入力は、(a)深さ0ハンドルを作るために適切なサイズの、特定されたオフセットでのデータの一連のチャンクと、任意選択的に(b)同じオブジェクトの前のバージョンとである。暗示的に、新しいオブジェクトは、入力データが提供される場合とその新しいオブジェクト自体が前のバージョンと異なる場合とを除いて、前のバージョンと同一になる。コピーイン動作のためのアルゴリズムは、図15におけるフローチャートに例示される。
図11の下で記載されたように、レプリケータ1110は、2つの異なる内容参照可能ストア間でデータオブジェクトを複製するサービスである。レプリケーションのプロセスは、1つのストアの中から読み取ることと別のストアに書き戻すことによって達成され得るが、このアーキテクチャは、ローカルエリアネットワークまたはワイドエリアネットワークなどの限定された帯域幅接続上でより効率的なレプリケーションを可能にする。
図16は、データ管理仮想化(DMV)システムの一実施形態を備えるソフトウェア構成要素およびハードウェア構成要素を示す。システムを備えるソフトウェアは、3つの分配された構成要素として実行する。
Claims (49)
- 1次ストレージに対する余剰なアクセス動作を削減する形で、複数の所定のデータ管理機能を実行するためのシステムであって、
1次ストレージデータの一時点画像を2次ストレージに生成するように作動可能な少なくともスナップショット機能と、データの少なくとも1つのバックアップコピーを生成するように作動可能な少なくとも1つのバックアップ機能とを含む、データ管理機能を実行するためのデータ管理機関であって、データ管理機能を実行するためのスケジュールを規定する電子的サービスレベルアグリーメント(SLA)に応答するデータ管理機関を備え、
データの一時点画像は、規定の時点におけるデータの完全なベースライン画像への参照と、より後の規定の時点における前記データの変化を示す差分データとを含み、
同時に実行される少なくともいくつかのデータ管理機能を必要とする前記スケジュールに応答して、前記2次ストレージへの更新の全ての対応する組のために前記1次ストレージが一度だけアクセスされるように、前記データ管理機関は、前記1次ストレージデータの一時点画像を生成し、前記一時点画像の前記差分情報を前記2次ストレージに通信し、前記1次データのバックアップコピーの前記少なくとも1つを更新する、システム。 - 2次ストレージにある1次ストレージデータの前記一時点画像は、性能を最適化された2次ストレージ上に格納される、請求項1に記載のシステム。
- 1次ストレージデータの前記一時点画像の前記バックアップコピーは、遠隔ストレージ上に格納される、請求項1に記載のシステム。
- 1次ストレージデータの前記一時点画像の前記バックアップコピーは、容量を最適化されたストレージに格納される、請求項1に記載のシステム。
- 1次ストレージデータの前記一時点画像の前記バックアップコピーは、容量を最適化されたストレージ上に重複排除された画像として格納される、請求項4に記載のシステム。
- 差分データは、ビットマップの各ビットが1次ストレージデータの一部に対応するビットマップ情報を含み、データが変化したことを示すように設定される前記ビットマップのそれらの部分のための新たなデータを含む、請求項1に記載のシステム。
- 差分データはエクステント情報を含む、請求項1に記載のシステム。
- 前記データ管理機関は、データの一時点画像を提供するために前記1次ストレージを呼び出す論理部を含み、前記一時点画像を前記1次ストレージから検索する論理部を含む、請求項1に記載のシステム。
- 所定のデータ管理機能を実行するためにおよび機能中の余剰を削減するためにカレンダーに基づいてスケジュールを規定するサービスレベルアグリーメント(SLA)に従って、データを管理するためのシステムであって、
少なくともスナップショット機能と少なくとも1つのバックアップ機能とを含むデータ管理機能を実行するためのデータ管理機関を備え、前記データ管理機関は、電子的形式のSLAを受信するサービスレベルポリシー機関を含み、前記データ管理機関は、前記SLAに従って前記データ管理機能の前記スケジューリングを制御し、
電子的SLAのそれぞれは、データを使用する対応するアプリケーションと関連付けられ、各SLAは少なくとも1つのサービスレベルポリシーを規定し、SLA内のポリシーの収集が、所与の機能がいつ実行されるべきかについての非均一スケジュールを表現することができるように、ならびに、データの所与のソース上で実行されるべき複数データ管理機能を表現することができるように、各ポリシーは、データのためのソースプールと、コピーが前記ソースプールデータから作られるべきところである宛先プールと、当該ポリシーについての動作の前記頻度を示すコピー頻度と、期限が切れることが許可される前に所与のコピーがどのくらいの間保持されるべきであるかを示す保持期間と、前記ポリシーが実施される動作の時間および日を示すスケジュール情報とを規定し、
前記データ管理機関は、前記データの前記ソースプールがコピーされるデータの明瞭な画像を有するように、前記アプリケーションを用いておよび前記ソースプールを用いて準備動作を実行するように動作可能であり、前記SLAが、現在の時間に前記ソースプール上で実行される複数データ管理機能を規定する場合でも、前記準備動作は一度実行される、システム。 - 2つ以上のコピー動作が、同じソースプールと宛先プールとの間で同じ瞬間に行われるようにスケジュールされる場合、前記2つ以上のコピー動作のうちの1つだけが、前記データ管理機関によって実行され、当該コピーは、前記2つ以上のスケジュールされたコピー動作に対応する最も長い前記保持期間と関連付けられる、請求項9に記載のシステム。
- 準備動作は、アプリケーションデータと関連して格納するために前記アプリケーションについてのメタデータを収集する前記データ管理機関を含む、請求項9に記載のシステム。
- 準備動作は、アプリケーション静止動作を含む、請求項9に記載のシステム。
- 前記アプリケーション静止動作は、アプリケーションデータを更に更新することから前記アプリケーションをフリーズすることを含む、請求項12に記載のシステム。
- 前記アプリケーション静止動作は、アプリケーションデータの前記アプリケーションサーバの前記入出力キャッシュをフラッシュすることを含む、請求項12に記載のシステム。
- 時間状態間の差分情報を用いて第1のストレージプールから第2のストレージプールにデータをバックアップするためのシステムであって、
データのバックアップコピーを生成するためのバックアップ機能を少なくとも含む、データ管理機能を実行するためのデータ管理機関を備え、
前記データ管理機関は、第1のストレージプール上のアプリケーションデータの一時点画像を生成するために一連のスナップショット動作を実行するように動作可能であり、連続的な一時点画像のそれぞれは、前記アプリケーションデータの規定の、連続的な時間状態に対応し、各スナップショット動作は、どのアプリケーションデータが変化したかと、前記対応する時間状態について変化した前記アプリケーションデータの前記内容とを示す差分情報を生成し、
前記データ管理機関は、前記アプリケーションデータのために少なくとも1つのバックアップ機能を実行するように動作可能であり、前記バックアップ動作は、非連続的な時間状態における実行のためにスケジュールされ、
前記データ管理機関は、データの対応するバックアップコピーのために前記アプリケーションデータ上で実行される最後のバックアップ機能の前記時間状態を示す時間状態情報を有する履歴情報を保持するように動作可能であり、
前記データ管理機関は、前記アプリケーションデータ上で実行される前記最後のバックアップ機能の前記時間状態と、前記アプリケーションデータ上で実行される現在スケジュールされた前記バックアップ機能の前記時間状態との間の各時間状態についての前記差分情報から複合差分情報を生成するように動作可能であり、前記データ管理機関は、前記現在の時間状態についてのデータのバックアップコピーを生成するために、前記最後の時間状態における前記データの前記バックアップコピーでコンパイルされる第2のストレージプールに前記複合差分情報を送信するように動作可能である、システム。 - 差分情報は、ビットマップの各ビットが1次ストレージデータの一部に対応しているビットマップ情報を含み、前記データが変化したことを示すように設定された前記ビットマップのそれらの部分のための新しいデータを含む、請求項15に記載のシステム。
- 差分情報はエクステント情報を含む、請求項15に記載のシステム。
- 複数のバックアップ機能は、非連続的な時間状態の異なる隔たりをそれぞれ用いて、および、前記異なる隔たりに対応して生成された異なる複合差分情報をそれぞれ用いて、同時に行われるようにスケジュールされる、請求項15に記載のシステム。
- 時間状態間の差分情報を用いてデータのバックアップコピーからストレージプールに前記データを復元するためのシステムであって、
前記時間状態を示す履歴情報を保持するように動作可能であるデータ管理機関であって、ストレージプールが、前記時間状態についてのアプリケーションデータの一時点画像を有する、データ管理機関を備え、
前記データ管理機関は、ストレージプール内のアプリケーションデータを規定の時間状態についての前記データの一時点画像に復元するための論理部を含み、
前記データ管理機関は、前記規定の時間状態の前の時間状態について前記ストレージプールにおける前記データの一時点画像の存在を識別するように動作可能であり、前記データの前記バックアップコピーから前記ストレージプールに差分情報を送信し、前記差分情報は、どのアプリケーションデータが変化したかと、前記規定の時間状態と前記規定の時間状態の前の前記時間状態との間の前記時間の間に前記変化したアプリケーションデータの前記内容とを示す、システム。 - 差分情報は、ビットマップの各ビットが1次ストレージデータの一部に対応するビットマップ情報を含み、前記データが変化したことを示すように設定された前記ビットマップのそれらの部分のためのバックアップデータを含む、請求項19に記載のシステム。
- 差分情報はエクステント情報を含む、請求項19に記載のシステム。
- 前記前の時間状態および前記規定の時間状態は、非連続的な時間状態である、請求項19に記載のシステム。
- データオブジェクトの時間的状態間の差分情報を用いて、時間の経過に伴って変化する前記データオブジェクトの重複排除された画像を形成する方法であって、
第1の時間的状態について前記データオブジェクトの前記内容を複数の内容区分として編成することと、前記内容区分をデータストアに格納することと、
前記データオブジェクトの第1の時間的状態にある前記データオブジェクトを表わすようにハッシュ構造の編成された配列を生成することであって、前記ハッシュ構造の下位の組について、各構造が、対応する内容区分のためのハッシュ署名を含み、前記対応する内容区分への参照と関連付けられ、前記配列の前記論理的編成は、前記内容区分が前記データオブジェクト内に表わされる際に前記内容区分の前記編成を表わす、当該ハッシュ構造の編成された配列を生成することと、
前記第1の時間的状態に関連する第2の時間的状態について前記データオブジェクトについての前記変化した内容を示し、および、前記データオブジェクト内の前記変化した内容の前記位置を示す、前記データオブジェクトのための差分情報を受信することと、
前記変化した内容のための少なくとも1つのハッシュ署名を形成することと、
固有である前記変化した内容を内容区分として前記データストアに格納することと、
前記変化した内容のための前記少なくとも1つのハッシュ署名用の新しい構造を組み込むために前記ハッシュ構造の前記編成された配列を修正することと、前記差分情報内に示されるような前記データオブジェクト内の前記変化した内容の前記位置に対応する位置における前記構造の前記編成された配列に前記新しい構造を組み込むことと、前記変化した内容について前記対応する内容区分に関して前記新しい構造のための前記ハッシュ署名を関連付けることと、
前記新しい構造を前記第2の時間的状態と関連付けることによって、第2の時間的状態についての前記データオブジェクトの重複排除された画像が、前記第2の時間的状態についての前記データオブジェクトの完全な画像の受信を要求すること無く、格納されることとを含む、方法。 - 前記変化した内容のための前記少なくとも1つのハッシュ署名を形成した後に、前記形成された署名は、前記形成された構造が前記編成された配列に既に存在するかどうかを判断するために、前記ハッシュ構造の前記編成された配列における少なくとも1つのハッシュ署名と比較される、請求項23に記載の方法。
- 前記比較は、前記差分情報に示されるような前記変化した内容の前記位置に対応する位置にある前記編成された配列におけるハッシュ構造を用いて、まず行われる、請求項23に記載の方法。
- 前記ハッシュ構造の前記編成された配列は、編成されたツリー構造である、請求項23に記載の方法。
- 時間的構造の編成された配列は保持され、各時間的構造は、時間状態と関連付けられ、および、前記関連付けられた時間状態に対応する前記ハッシュ構造を示す情報をそれぞれ含む、請求項23に記載の方法。
- 時間の経過に伴って変化するデータオブジェクトの重複排除された画像を管理する方法であって、
各データオブジェクトの固有の内容を複数の内容区分として編成することと、前記内容区分をデータストアに格納することと、
各データオブジェクトについて、ハッシュ構造の編成された配列を生成することであって、各構造が、前記ハッシュ構造の下位の組について、対応する内容区分のためのハッシュ署名を含み、前記対応する内容区分への参照と関連付けられ、前記配列の前記論理的編成は、前記内容区分が前記データオブジェクト内に表わされる際に前記内容区分の前記論理的編成を表わし、前記ハッシュ構造の別の下位の組は、内容が前記ハッシュ構造の前記編成された配列によって表わされるかどうかを判断するために、前記編成された配列が横断され得るように、対応する内容区分について前記ハッシュ署名のハッシュ署名階層を含む、当該ハッシュ構造の編成された配列を生成することと、
各データオブジェクトについて、時間の経過に伴って対応するデータオブジェクトを表わすために、時間的構造の編成された配列を保持することであって、各構造が、前記データオブジェクトの時間的状態と関連付けられ、前記構造の前記論理的配列が、前記データオブジェクトの変化している前記時間的状態を示し、各時間的状態が、前記時間的状態の間に前記データオブジェクトの前記内容を表わす前記ハッシュ構造と関連付けられる、当該時間的構造の編成された配列を保持することとを含む、方法。 - 所与の時間的状態におけるデータオブジェクトについての前記時間的構造は、前記データオブジェクトの前の時間的状態に対して変化したデータオブジェクト内容のためのハッシュ構造と関連付けられる、請求項28に記載の方法。
- 前記変化したデータ内容のための前記ハッシュ構造は、前の時間的状態についての前記ハッシュ構造の前記編成された配列から切り離されたグラフとして編成される、請求項28に記載の方法。
- 1つの時間的状態から別の時間的状態までのデータオブジェクトの内容の差分は、当該差分が複数の時間的状態を通して判断され得るように、他の時間的状態についておよび前記他の時間的状態と前記1つの時間的状態との間にある全ての他の時間的状態について、前記時間的構造の前記編成された配列を参照することによって判断される、請求項28に記載の方法。
- 画像の一部が符号化された形態でハッシュ表に直接的に格納される、重複排除された当該画像を格納する方法であって、
各データオブジェクトの固有の内容を複数の内容区分として編成することと、前記内容区分をデータストアに格納することと、
各データオブジェクトについて、ハッシュ構造の編成された配列を生成することであって、各構造が、前記ハッシュ構造の下位の組について、対応する内容区分のためのハッシュ署名を含有するフィールドを含み、前記対応する内容区分への参照と関連付けられ、前記配列の前記論理的編成が、前記内容区分が前記データオブジェクト内に表わされる際に前記内容区分の前記論理的編成を表わす、当該ハッシュ構造の編成された配列を生成することと、
前記データオブジェクトの前記重複排除された画像に含まれる内容を受信することと、
符号化された値がハッシュ署名を含有するための前記フィールド内に収まることになる、既定の無損失符号化技術を用いて、前記受信された内容が符号化され得るかどうかを判断することと、
そうである場合、前記符号化を前記フィールドに配置することと、前記フィールドが前記重複排除された画像のために符号化された内容を含むことを示すために前記ハッシュ構造をマーキングすることと、
そうではない場合、前記受信された内容のためのハッシュ署名を生成することと、前記ハッシュ署名を前記フィールドに配置することと、前記ハッシュ署名が固有である場合には前記受信された内容を前記データストア内の対応する内容区分に配置することとを含む、方法。 - 前記無損失符号化はランレングス符号化である、請求項32に記載の方法。
- 各データオブジェクトのためのハッシュ署名は、SHA‐1暗号ハッシュ機能を用いて生成される、請求項32に記載の方法。
- 前記符号化された内容から前記内容を後に再構成することを更に含む、請求項32に記載の方法。
- データオブジェクトがどのように時間の経過に伴って変化するかを表わす情報で第2の重複排除ストアを更新するために、第1の重複排除ストアを用いる方法であって、
第1の重複排除ストアで、各データオブジェクトの固有の内容を複数の内容区分として編成することと、前記内容区分をデータストアに格納することと、
第1の重複排除ストアで、各データオブジェクトについて、ハッシュ構造の編成された配列を生成することであって、各構造が、前記ハッシュ構造の下位の組について、対応する内容区分のためのハッシュ署名を含み、前記対応する内容区分への参照と関連付けられ、前記配列の前記論理的編成は、前記内容区分が前記データオブジェクト内に表わされる際に前記内容区分の前記論理的編成を表わす、当該ハッシュ構造の編成された配列を生成することと、
第1の重複排除ストアで、各データオブジェクトについて、時間の経過に伴って対応するデータオブジェクトを表わすために時間的構造の編成された配列を保持することであって、各構造が、前記データオブジェクトの時間的状態と関連付けられ、前記構造の前記論理的配列は、前記データオブジェクトの変化する前記時間的状態を示し、各時間的状態は、前の時間的状態に対して変化した前記データオブジェクトの前記内容を表わす前記ハッシュ構造と関連付けられる、当該時間的構造の編成された配列を保持することと、
第2の重複排除ストアで、各データオブジェクトの固有の内容を複数の内容区分として編成することと、前記内容区分をデータストアに格納することと、
第2の重複排除ストアで、各データオブジェクトについて、前記第1の重複排除ストアにおける前記ハッシュ構造の少なくとも下位の組である、ハッシュ構造の編成された配列を保持することと、
第2の重複排除ストアで、各データオブジェクトについて、時間の経過に伴って対応するデータオブジェクトを表わすために、時間的構造の編成された配列を保持することであって、時間的構造の前記編成された配列は、前記時間的状態の下位の組を表わす、前記第1の重複排除ストアにおける前記時間的構造の少なくとも下位の組である、当該時間的構造の編成された配列を保持することと、
前記第1の重複排除ストアからの情報で前記第2の重複排除ストアを更新する要求に応答して、前記第1および第2の重複排除ストアに共通である時間的状態であって、前記第2の重複排除ストアの現在の状態に時間的に近い時間的状態を見つけることと、
前記共通状態から前記第1の重複排除ストアの前記現在の時間的状態に変化した前記内容のためのハッシュ署名の組をコンパイルすることと、前記第2の重複排除ストアが、前記第1の重複排除ストアの前記現在の時間的状態まで前記データオブジェクトの前記内容を表わすために、前記第2の重複排除ストアのハッシュ構造の編成された配列を更新し得るように、前記ハッシュ署名の前記組を前記第2の重複排除ストアに送信することとを含む、方法。 - 各重複排除ストアが含有する前記ハッシュ署名の履歴を保持することと、前記第2の重複排除ストアに対して新しい前記ハッシュ署名の前記組におけるハッシュ署名について、前記第2の重複排除ストアが、前記新しい内容で前記第2の重複排除ストアのデータストアを更新し得るように、前記第1の重複排除ストアから前記対応する内容区分を送信することとを更に含む、請求項36に記載の方法。
- 前記第2の重複排除ストアの前記現在の状態に近い前記時間的状態は、前記現在の状態の最も近い近隣状態である、請求項36に記載の方法。
- 前記第2の重複排除ストアの前記現在の状態に近い前記時間的状態は、前記現在の状態の先祖状態である、請求項36に記載の方法。
- 前記第2の重複排除ストアの前記現在の状態に近い前記時間的状態は、前記現在の状態の子状態である、請求項36に記載の方法。
- 前記最も近い近隣状態は、端部の組の合計が端部の任意の他の組の合計よりも小さい当該端部の組によって接続された状態である、請求項38に記載の方法。
- 前記構造の前記論理的配列は分岐を含有する、請求項36に記載の方法。
- 前記現在の状態で、前記現在の時間的状態に対応する前記内容区分がどの状態に送信されているかを記録することを更に含む、請求項37に記載の方法。
- マークアンドスイープ手法における余剰なマーク動作が回避される重複排除ストレージシステムにおいて、もはや参照されない内容区分を識別するためにガーベジコレクションを実行する方法であって、
前記重複排除ストレージシステムにおいて各データオブジェクトの固有の内容を複数の内容区分として編成することと、
各データオブジェクトについて、ハッシュ構造の編成された配列を生成することであって、各構造が、前記ハッシュ構造の下位の組について、対応する内容区分のためのハッシュ署名を含み、前記対応する内容区分への参照と関連付けられ、前記配列の前記論理的編成が、前記内容区分が前記データオブジェクト内に表わされる際に前記内容区分の前記論理的編成を表わし、前記ハッシュ構造の別の下位の組は、前記編成された配列が、内容が前記ハッシュ構造の前記編成された配列によって表わされるかどうかを判断するために横断され得るように、対応する内容区分のための前記ハッシュ署名のハッシュ署名階層を含む、当該ハッシュ構造の編成された配列を生成することと、
各データオブジェクトについて、時間の経過に伴って対応するデータオブジェクトを表わすために時間的構造の編成された配列を保持することであって、各構造が、前記データオブジェクトの時間的状態と関連付けられ、前記構造の前記論理的配列が、前記データオブジェクトの変化する前記時間的状態を示しており、各時間的状態が、前記データオブジェクトの直前の時間的状態に対して変化した前記データオブジェクトの前記内容を表わす前記ハッシュ構造と関連付けられる、当該時間的構造の編成された配列を保持することと、
前記重複排除ストレージシステムにおける各内容区分について、前記各内容区分の対応するガーベジコレクション状態をクリアにすることと、
前記時間的構造にわたって反復することと、各時間的構造について、前記データオブジェクトの直前の時間的状態に対して変化した前記内容区分だけについて前記関連付けられた内容区分のために前記ガーベジコレクション状態をマーキングすることと、
前記反復するステップの後に、クリアにされたガーベジコレクション状態を有するストレージの空いたプールに任意の内容区分を戻すこととを含む、方法。 - 深さ優先探索を用いて前記時間的構造にわたって反復することを更に含む、請求項44に記載の方法。
- 周期的な間隔で前記方法を繰り返すことを更に含む、請求項44に記載の方法。
- データオブジェクトの新しい時間的状態の前記追加に後続する前記方法を実行することを更に含む、請求項44に記載の方法。
- データオブジェクトの時間的状態の前記除去に後続する前記方法を実行することを更に含む、請求項44に記載の方法。
- 前記重複排除されたストレージシステムに割り当てられた内容区分の全ての広域参照リストを保持することを更に含む、請求項44に記載の方法。
Applications Claiming Priority (17)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/947,438 | 2010-11-16 | ||
US12/947,375 | 2010-11-16 | ||
US12/947,375 US8843489B2 (en) | 2010-11-16 | 2010-11-16 | System and method for managing deduplicated copies of data using temporal relationships among copies |
US12/947,418 | 2010-11-16 | ||
US12/947,513 | 2010-11-16 | ||
US12/947,385 | 2010-11-16 | ||
US12/947,393 | 2010-11-16 | ||
US12/947,385 US9858155B2 (en) | 2010-11-16 | 2010-11-16 | System and method for managing data with service level agreements that may specify non-uniform copying of data |
US12/947,393 US8788769B2 (en) | 2010-11-16 | 2010-11-16 | System and method for performing backup or restore operations utilizing difference information and timeline state information |
US12/947,418 US8402004B2 (en) | 2010-11-16 | 2010-11-16 | System and method for creating deduplicated copies of data by tracking temporal relationships among copies and by ingesting difference data |
US12/947,438 US8299944B2 (en) | 2010-11-16 | 2010-11-16 | System and method for creating deduplicated copies of data storing non-lossy encodings of data directly in a content addressable store |
US12/947,436 US8904126B2 (en) | 2010-11-16 | 2010-11-16 | System and method for performing a plurality of prescribed data management functions in a manner that reduces redundant access operations to primary storage |
US12/947,513 US8417674B2 (en) | 2010-11-16 | 2010-11-16 | System and method for creating deduplicated copies of data by sending difference data between near-neighbor temporal states |
US12/947,383 US8396905B2 (en) | 2010-11-16 | 2010-11-16 | System and method for improved garbage collection operations in a deduplicated store by tracking temporal relationships among copies |
US12/947,383 | 2010-11-16 | ||
US12/947,436 | 2010-11-16 | ||
PCT/US2011/060417 WO2012067964A1 (en) | 2010-11-16 | 2011-11-11 | Systems and methods for data management virtualization |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013543198A true JP2013543198A (ja) | 2013-11-28 |
Family
ID=46084354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013539918A Pending JP2013543198A (ja) | 2010-11-16 | 2011-11-11 | データ管理仮想化のためのシステムおよび方法 |
Country Status (8)
Country | Link |
---|---|
EP (1) | EP2643760A4 (ja) |
JP (1) | JP2013543198A (ja) |
KR (1) | KR20140051107A (ja) |
CN (1) | CN103415842B (ja) |
AU (1) | AU2011329232A1 (ja) |
BR (1) | BR112013012134A2 (ja) |
CA (1) | CA2817592A1 (ja) |
WO (1) | WO2012067964A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015225510A (ja) * | 2014-05-28 | 2015-12-14 | 日本電気株式会社 | バックアップシステムおよびバックアップ方法 |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8983961B2 (en) | 2012-11-29 | 2015-03-17 | International Business Machines Corporation | High availability for cloud servers |
KR101451807B1 (ko) | 2012-12-24 | 2014-10-22 | 주식회사 케이티 | NoSQL 메타 데이터의 백업 및 복원장치 및 방법 |
CN104679665A (zh) * | 2013-12-02 | 2015-06-03 | 中兴通讯股份有限公司 | 一种实现分布式文件系统块存储的方法及系统 |
CN104750538B (zh) * | 2013-12-27 | 2020-03-03 | 伊姆西Ip控股有限责任公司 | 用于为目标应用提供虚拟存储池的方法和系统 |
CN104133852B (zh) * | 2014-07-04 | 2018-03-16 | 小米科技有限责任公司 | 网页访问方法、装置、服务器及终端 |
WO2016043757A1 (en) * | 2014-09-18 | 2016-03-24 | Hewlett Packard Enterprise Development Lp | Data to be backed up in a backup system |
WO2016048263A1 (en) | 2014-09-22 | 2016-03-31 | Hewlett Packard Enterprise Development Lp | Identification of content-defined chunk boundaries |
CN104361069A (zh) * | 2014-11-07 | 2015-02-18 | 广东电子工业研究院有限公司 | 一种集成本地文件系统的云存储服务方法 |
BR112016028144A2 (pt) * | 2015-01-13 | 2017-08-22 | Simplivity Corp | Sistemas e métodos para comparações de assinatura otimizadas e replicação de dados |
CN105068767A (zh) * | 2015-08-19 | 2015-11-18 | 山东超越数控电子有限公司 | 一种基于一致性hash算法的全虚拟化存储方法 |
CN105938457B (zh) * | 2016-03-31 | 2018-10-02 | 华为技术有限公司 | 数据的过滤方法、装置及数据读取系统 |
US10785302B2 (en) * | 2016-10-31 | 2020-09-22 | Huawei Technologies Co., Ltd. | Systems and methods for unified data management in a communication network |
US10346062B2 (en) * | 2016-11-16 | 2019-07-09 | International Business Machines Corporation | Point-in-time backups via a storage controller to an object storage cloud |
US10642879B2 (en) | 2017-01-06 | 2020-05-05 | Oracle International Corporation | Guaranteed file system hierarchy data integrity in cloud object stores |
US10846339B2 (en) * | 2017-06-20 | 2020-11-24 | Cisco Technology, Inc. | Structured schema for temporal graph storage and retrieval |
US10572168B2 (en) * | 2017-11-16 | 2020-02-25 | International Business Machines Corporation | DRAM bank activation management |
CN110019097B (zh) * | 2017-12-29 | 2021-09-28 | 中国移动通信集团四川有限公司 | 虚拟逻辑副本管理方法、装置、设备及介质 |
US11151161B2 (en) * | 2018-07-06 | 2021-10-19 | Snowflake Inc. | Data replication and data failover in database systems |
US10705927B2 (en) * | 2018-07-19 | 2020-07-07 | Hewlett Packard Enterprise Development Lp | Freeze a volume of a replication set and unfreeze the volume based on at least one of a snapshot permit message, a snapshot abort message, and expiration of a timeout |
US11573892B2 (en) * | 2019-04-26 | 2023-02-07 | EMC IP Holding Company LLC | Garbage collection for a deduplicated cloud tier using microservices |
CN112699097B (zh) * | 2020-12-31 | 2024-03-08 | 北京浩瀚深度信息技术股份有限公司 | 一种多元策略镜像实现方法、装置及存储介质 |
US11922047B2 (en) * | 2021-09-16 | 2024-03-05 | EMC IP Holding Company LLC | Using RPO as an optimization target for DataDomain garbage collection |
CN114218014B (zh) * | 2021-12-21 | 2022-07-19 | 中科豪联(杭州)技术有限公司 | 基于存储卷级的虚拟服务器备份及还原方法 |
CN116088770B (zh) * | 2023-03-20 | 2023-07-14 | 苏州浪潮智能科技有限公司 | 数据管理方法及装置、系统、电子设备、存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007089502A1 (en) * | 2006-01-26 | 2007-08-09 | Network Appliance, Inc. | Content addressable storage array element |
JP2009146381A (ja) * | 2007-10-24 | 2009-07-02 | Hitachi Ltd | ストレージシステム群 |
JP2010072746A (ja) * | 2008-09-16 | 2010-04-02 | Hitachi Ltd | ストレージシステム、及びストレージシステムの運用方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020049778A1 (en) * | 2000-03-31 | 2002-04-25 | Bell Peter W. | System and method of information outsourcing |
JP2003202964A (ja) * | 2002-01-09 | 2003-07-18 | Hitachi Ltd | 計算機システムの制御方法、計算機システム、記憶装置の制御方法及び記憶装置 |
US8311988B2 (en) * | 2006-08-04 | 2012-11-13 | Apple Inc. | Consistent back up of electronic information |
US7797279B1 (en) * | 2007-12-31 | 2010-09-14 | Emc Corporation | Merging of incremental data streams with prior backed-up data |
US10642794B2 (en) * | 2008-09-11 | 2020-05-05 | Vmware, Inc. | Computer storage deduplication |
US8701106B2 (en) * | 2008-11-30 | 2014-04-15 | Red Hat Israel, Ltd. | Hashing storage images of a virtual machine |
-
2011
- 2011-11-11 WO PCT/US2011/060417 patent/WO2012067964A1/en active Application Filing
- 2011-11-11 AU AU2011329232A patent/AU2011329232A1/en not_active Abandoned
- 2011-11-11 JP JP2013539918A patent/JP2013543198A/ja active Pending
- 2011-11-11 CA CA2817592A patent/CA2817592A1/en not_active Abandoned
- 2011-11-11 KR KR1020137015597A patent/KR20140051107A/ko not_active Application Discontinuation
- 2011-11-11 BR BR112013012134A patent/BR112013012134A2/pt not_active IP Right Cessation
- 2011-11-11 CN CN201180061716.7A patent/CN103415842B/zh active Active
- 2011-11-11 EP EP11841345.9A patent/EP2643760A4/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007089502A1 (en) * | 2006-01-26 | 2007-08-09 | Network Appliance, Inc. | Content addressable storage array element |
JP2009146381A (ja) * | 2007-10-24 | 2009-07-02 | Hitachi Ltd | ストレージシステム群 |
JP2010072746A (ja) * | 2008-09-16 | 2010-04-02 | Hitachi Ltd | ストレージシステム、及びストレージシステムの運用方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015225510A (ja) * | 2014-05-28 | 2015-12-14 | 日本電気株式会社 | バックアップシステムおよびバックアップ方法 |
Also Published As
Publication number | Publication date |
---|---|
CA2817592A1 (en) | 2012-05-24 |
KR20140051107A (ko) | 2014-04-30 |
AU2011329232A1 (en) | 2013-06-06 |
EP2643760A1 (en) | 2013-10-02 |
EP2643760A4 (en) | 2015-09-30 |
BR112013012134A2 (pt) | 2016-09-27 |
CN103415842A (zh) | 2013-11-27 |
WO2012067964A1 (en) | 2012-05-24 |
CN103415842B (zh) | 2016-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9384207B2 (en) | System and method for creating deduplicated copies of data by tracking temporal relationships among copies using higher-level hash structures | |
US9372758B2 (en) | System and method for performing a plurality of prescribed data management functions in a manner that reduces redundant access operations to primary storage | |
US10275474B2 (en) | System and method for managing deduplicated copies of data using temporal relationships among copies | |
US8396905B2 (en) | System and method for improved garbage collection operations in a deduplicated store by tracking temporal relationships among copies | |
US9372866B2 (en) | System and method for creating deduplicated copies of data by sending difference data between near-neighbor temporal states | |
US8299944B2 (en) | System and method for creating deduplicated copies of data storing non-lossy encodings of data directly in a content addressable store | |
US8788769B2 (en) | System and method for performing backup or restore operations utilizing difference information and timeline state information | |
JP2013543198A (ja) | データ管理仮想化のためのシステムおよび方法 | |
US9858155B2 (en) | System and method for managing data with service level agreements that may specify non-uniform copying of data | |
US9563683B2 (en) | Efficient data replication | |
US8983915B2 (en) | Successive data fingerprinting for copy accuracy assurance | |
US20150227602A1 (en) | Virtual data backup | |
KR20150021117A (ko) | 강화형 데이터 관리 가상화 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141110 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150930 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151105 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20160204 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20160822 |