JP2003518659A - コンピュータ・ストレージ・システムを操作するための装置および方法 - Google Patents
コンピュータ・ストレージ・システムを操作するための装置および方法Info
- Publication number
- JP2003518659A JP2003518659A JP2000592751A JP2000592751A JP2003518659A JP 2003518659 A JP2003518659 A JP 2003518659A JP 2000592751 A JP2000592751 A JP 2000592751A JP 2000592751 A JP2000592751 A JP 2000592751A JP 2003518659 A JP2003518659 A JP 2003518659A
- Authority
- JP
- Japan
- Prior art keywords
- data
- physical
- storage
- backup
- logical
- 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
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/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- 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/1456—Hardware arrangements for backup
-
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
-
- 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
- G06F2003/0697—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99955—Archiving or backup
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Hardware Redundancy (AREA)
Abstract
Description
ピュータ・ストレージ・システムを操作するための装置および方法に関係する。
トレージ(記憶装置)に依存する。このストレージは、コンピュータ・コードを
格納するためと、コードによって操作されるデータを格納するための両方に使用
される。(「データ」という用語は、アプリケーション・プログラムによって操
作されるフォーマット情報、実行コード、およびデータを含むすべての情報を指
す。) ストレージ技術はいろいろな異なった方向へ発展した。従って、種々様々なス
トレージ・システムが利用可能である。したがって、コンピュータ・アプリケー
ションを作成する人が、ストレージ・システム上にデータがどう格納されるかと
いう詳細な管理に対しても責任を負うことは、実際的ではなくなった。
にオペレーティング・システム(例えば、Unix(登録商標)、Window
s(登録商標)、MS DOS、Linux、およびそれぞれの多くのバリエー
ション)上で作動する。しかしながら、また、オペレーティング・システムがさ
まざまなストレージ・システムと共に使用されてもよい。
ムあるいはアプリケーション・プログラムの変更がなされなければならないこと
は非常に非効率的だろう。その結果、データが実際にどのようにストレージ・シ
ステムに格納されているかを見るために、いろいろな抽象化されたレイヤが発展
した。
リケーション・プログラムは、データが物理的な装置上にどのように配置されて
いるかということに、ほとんど関知しなくてもよいようなやり方でデータが格納
されていると想定してもよい。例えば、アプリケーションはストレージ・システ
ムを、多くのディレクトリと、そのディレクトリ内のデータ・ファイルを含むも
のとして見なしてもよい。したがって、Unixオペレーティング・システム上
で使用されるように作成されたアプリケーションでは、そのアプリケーションは
Unixのディレクトリ構造(階層的なディレクトリとそのディレクトリ内に置
かれたファイルを含む)に従ってファイルが格納されているものと想定するだろ
う。このように想定される物理的なストレージ装置の機構は、そのデータが実際
のストレージ装置上にどのように格納されているかということに関知すべきこと
はほとんどない。アプリケーションのレベルから見たデータの論理的な見え方(
ビュー)が、データが物理的にどのように格納されているかといういかなる見え
方からも切り離されているという分離があるために、この見え方を「論理ビュー
」と呼んでもよい。ファイル、データベース、あるいはその他の論理構成といっ
たような論理的なコンポーネントを、論理レベルで「論理オブジェクト」と呼ん
でもよい。
作動する。ファイルシステム・レベルは、ファイルをディスク上に格納する方法
、そしてすべてを効率的に確実に働かせる方法に関わる。したがって、ファイル
システム・レベルは、ディレクトリ構造の格納、および物理的なストレージ・シ
ステム上でストレージを構成するデータ・ブロックにファイルを細分化する役割
を担う。例えば、Unixのほとんどの実装では、各ファイルは関連するIノー
ドを持つ。このノードは、アカウンティングと保護情報、さらにデータ・ブロッ
クへのポインタの一式を含んでもよい。
がストレージのための基本装置となった。従って、コンピュータのオペレーティ
ング・システムは、メモリがディスク・ドライブへの入力/出力(「I/O」)
に依存するだろうと想定して開発されてきた。そのために、ファイル・システム
12は、ディスクドライブ上のブロックに格納されるデータを備えた、ディスク
・ドライブ(あるいは他のストレージ装置)のような物理ストレージ装置に相当
する1つ以上の「ボリューム」を、想定してもよい。
急激に上昇した。その結果、多くの別個の物理装置がシステムに必要とされるス
トレージの総量を提供するために要求されてもよい。さらに、ストレージ・シス
テムはたびたび変更されたり再構成されたりする。
ステムを隔離するために、実際の物理ストレージの標準(ボリューム)ビューを
、物理ストレージ・システム上に弾力的にマッピングするためのあるメカニズム
がしばしば使用される。図1の論理ボリューム・マネージャ(LVM)14は、
データ・ストレージのファイル・システム・ビューをある中間層へマッピングす
ることによって、この機能の達成を支援することができる。
して、もしかすると物理ストレージ装置上への追加マッピング)が、物理ストレ
ージ・システム・レベル16でなされる。したがって、例えば、論理ボリューム
・マネージャは、物理装置上のストレージ用の固定された物理ストレージ・セグ
メント・サイズ(例えば、ブロック・サイズ)に対応するボリューム・サイズに
、データのファイルシステム・レベル・ビューをマッピングしてもよい。その後
、物理ストレージ・システム・レベルは、物理ストレージ・セグメント(例えば
、後で説明されるハイパー・ボリューム)上に論理ボリューム・マネージャ・レ
ベルのボリュームをマッピングしてもよい。
るHP−UXや、VERITASオペレーティング・システムで使用されるため
に導入された。マサチューセッツ州ホプキントンのEMC社から入手可能なスト
レージ・システムであるSymmetrix製品ラインは、物理装置上にハイパ
ー・ボリュームをマッピングする能力を持つ1つのシステムである。(統合され
たキャッシュ・ディスク・アレイを持つSymmetrix製品ラインは、Sy
mmetrixモデル55xx製品マニュアルp−n200−810−550の
1996年2月改訂版fを含むEMC社からの多数の出版物に記述されている。
) 上記の例で、実際の物理ストレージの中へアプリケーション・レベルのデータ
をマッピングする作業は、アプリケーション・レベルからファイルシステム・レ
ベルへ、ファイルシステム・レベルからLVMレベルへ、LVMレベルから物理
ストレージ・システム・レベルへ、そして物理ストレージ・システム・レベルか
ら実際の物理ストレージ装置へという4つのレベルで生じる。多かれ少なかれマ
ッピングはいくつかのレベルで実施されることになる。あるシステムでは、1レ
ベルのマッピングだけが実施され、例えばアプリケーション・レベルから直ちに
実際の物理ストレージ装置上になされる。多くのシステムでは、LVMレベルで
のマッピング段階が省略される。同様に、多くのシステムでは、物理ストレージ
・レベルでのマッピングがなされない(例えば、データはその前のレベルのフォ
ーマットに対応する実際の装置上に直接に格納され、物理ストレージ・コンポー
ネント上にそれ以上のいかなるマッピングもなされない)。
ネージャ14および物理ストレージ・システム16によって実行されてもよいマ
ッピングの例を示す。そのアプリケーションあるいはファイルシステムのストレ
ージ・システムの図は、ボリュームA20、ボリュームB21、ボリュームC2
2という3つの別個のストレージ装置として表わされる。したがって、ファイル
システム・レベル12が識別できる範囲では、システムは3つの別個のストレー
ジ装置20〜22になる。それぞれ別個のストレージ装置は「仮想ボリューム」
あるいは「仮想ディスク」と呼ばれてもよい。このことは、オペレーティング・
システムのストレージ装置構造の図が、その構造を実現する実際の物理ストレー
ジ・システムと一致していなくてもよいことを示す(以後、「仮想」と呼ぶ)。
しかしながら、アプリケーション・レベル10と異なり、ファイルシステム12
の全体像は、まるで生の物理装置あるいはボリュームに対処しているかのようで
ある。
の連続的なセグメントである「パーティション」に分割されてもよい。パーティ
ションは実際にさまざまな物理ストレージ・セグメント(例えば、ハイパー・ボ
リューム)を横断して格納されてもよいので、これらのパーティションはまさに
「仮想の」パーティションである。
。特にこの例において、3つの物理装置24〜26と3つのボリューム20〜2
2があるが、物理装置への仮想ボリュームのマッピングは1対1であるというわ
けではない。特にこの例において、20a、20b、および20cで示されるよ
うに、ボリュームA20の中のデータは実際には物理装置24〜26上に格納さ
れる。この例において、22a、22bで示されるように、ボリュームBはすべ
て物理装置24上に格納される。最後に、2la、21bで示されるように、ボ
リュームCは物理装置24および物理装置26上に格納される。
a〜22bはそれぞれ、物理装置24〜26内でストレージの隣接するセグメン
トを表わす。ストレージのこれらの隣接するセグメントは同じ大きさであっても
よいが、同じである必要はない。ストレージのセグメントは「ハイパー・ボリュ
ーム」と呼ばれてもよく、ファイルシステムによって用いられる仮想ボリューム
を構築する時のコンポーネントとして使用されることができる物理ストレージの
セグメントに対応してもよい。ハイパー・ボリュームは多くの「データ・ブロッ
ク」で構成されてもよい。データ・ブロックは物理ストレージ装置から一度に書
き込み、あるいは読み出しされるストレージの1単位(例えば、512バイトの
ブロック)である。
ハードウェア回路のようなまた別のメカニズム)23は、ホスト・コンピュータ
(示されていない)(論理ボリューム構造20〜22を想定してなされた)から
のリクエストを、データが物理装置24〜26上に実際に格納される方法に相当
するリクエストに翻訳する。実際上、アレイ管理ソフトウェア23は、物理装置
24〜26を含む一体のストレージ・システムの一部として導入されてもよいし
、ホスト・コンピュータ上に導入されてもよいし、あるいは他のある方法でなさ
れてもよい。
れることができるセグメントに、ファイルシステムの仮想ボリューム20〜22
をマッピングすることにより、論理ボリューム・マネージャ14(現在の場合)
および物理ストレージ・レベル16の両方の機能を実行する。アレイ管理ソフト
ウェア23は、さらに、ハイパー・ボリューム20A〜20C、21A〜21B
および22A〜22Bをどこに格納すべきかを決定することにより、物理ストレ
ージ・システム・レベル16の機能も実行する。
クドライブは、1枚以上の記録媒体ディスク(磁気記録媒体あるいは光記録媒体
のような)を含んでもよい。情報は、記憶させる目的のために、このストレージ
媒体から書き込まれ、そして読み出されることができる。記録媒体は、回転する
ディスクの形を一般的にしている。ディスクは一般的に、情報が記録され、そこ
から情報が読み出される多くのトラックを含む。各トラックは1つ以上の「デー
タ・ブロック」を含んでもよい。データ・ブロックは1つのまとまりとして読み
出されることができるデータの1単位である。データ・ブロックは、データのブ
ロックか、32kトラック上の8kセグメントか、あるいはまた別の構造に従っ
て、512であってもよい。これらの例では、ブロックのサイズは固定されてい
る。他のケースでは、そのブロックはCKDレコードのような可変サイズであっ
てもよい。複数のディスクを含むディスクドライブでは、各ディスクの対応する
トラックが互いに重なるように、ディスクが規格どおりに積み重ねられる。この
場合、その情報がディスクドライブ内に格納されるたった1つのトラックの明細
が、ディスク上の個々のトラックの明細だけでなく、複数のディスクのどのディ
スクに情報が格納されているかということも含む。
の「プラッタ」で構成されていてもよい)の明細、ディスク(あるいは「シリン
ダ」)内のトラックの明細、ヘッドの明細(あるいはプラッタのどれがその「デ
ィスク」からなっているか)、およびトラック内の特定のデータ・ブロックの明
細を含んでもよい。トラック内のデータ・ブロックの位置の明細は、例えばトラ
ック上に現われる3番目のデータ・ブロックである、オフセットとしてアドレス
が指定されてもよい。したがって、ddcccch:オフセットというアドレス
は、ディスクdd、シリンダcccc、ヘッドh、および明示されたオフセット
といったように、ブロックを明示してもよい。しかしながら、本発明で用いられ
る物理ストレージ装置は、何等かの他のジオメトリで作成されてもよいし、何等
かの他の方法でアドレス指定されてもよいし、異なるタイプのストレージ・メカ
ニズムでさえ構成してもよい。
ストレージ・レベル間のマッピングの一例を示す。アプリケーション・レベルの
ファイル200は可視的な情報を含む。この情報は、従来のファイルの形をして
おり、一連のビットを含む。
場合、アプリケーション・レベルのファイルは、例えばセグメント203のよう
な、個々のビットのセグメントに変換されてもよい。したがって、アプリケーシ
ョン・レベルのファイル203のセグメントは実際の物理ストレージ装置204
〜206上にマッピングされる(例えば図1を参照しながら上で記述された一般
的なマッピング構造に従って)。この例において、アプリケーション・レベルの
ファイル200中の203のビットの第1セグメントは、物理ストレージ装置2
04の一部208で、物理ストレージ装置204上にマッピングされる。図2B
で示されるように、アプリケーション・レベルのファイル200中のビットから
なる個々のセグメントは、複数の実際の物理ストレージ装置中のいかなる場所に
マッピングされてもよい。ビットからなるセグメントの細分度(例えば、セグメ
ント203)は、さまざまな異なるレベルのうちの1つに対応しているかもしれ
ない。例えば、セグメントの細分度は512バイトのデータ・ブロックでもよい
。別の実施例では、細分度が、物理ストレージ装置204〜206の1つのトラ
ックに格納されるデータ量に対応してもよい(物理ストレージ装置がディスクド
ライブである場合)。
〜27fを含む論理オブジェクト27の例を示す。論理オブジェクト自体は、い
かなるデータ構造やデータの集まりでもよい。例えば、論理オブジェクトは、デ
ータベース・テーブル、ファイルシステムのファイルの一部、あるいは完全なフ
ァイルシステムのファイル、あるいはその他の何等かの識別可能な論理オブジェ
クトであってよい。データ・ブロック27a〜27fの各々は、固定サイズのデ
ータ・ブロック、あるいはCKDレコードのような可変サイズのデータ・ブロッ
クでもよい。
この例において、ストレージ装置は多くの列を含み、その各々がディスクのトラ
ックを表わしている。
、あるいはブロック・エレメントを表わす。例えば、行28aの列28bは、論
理ブロック・エレメント27bに対応するデータ・ブロックを格納している。ト
ラック28bは、論理ブロック・エレメント27aおよび27bの内容を持つ物
理的なデータ・ブロックを格納しているだろう。図2Cから見ることができるよ
うに、論理ブロック・エレメントは物理装置上のいかなる順からでも格納される
ことができる。
である必要はない。例えば、列28bのようなトラックの各々は、異なるディス
クドライブ上に格納されてもよいし、あるいは異なるハイパー・ボリュームの一
部であってもよい。
ステムでは、各装置が、特定の物理装置上に格納されたデータのエラー検知およ
び(または)データ修正を一般的に実行する。従って、それぞれの個々の物理デ
ィスク装置は、提供すべき有効なデータをいつ持っていないかを検知し、可能な
らばエラー修正を行う。しかしながら、物理装置上に格納されたデータに対して
、エラー修正が許可される場合でさえ、装置の突発的な故障は、データの回復不
能な損失という結果に終わるだろう。
可能にするやり方でディスク上にデータを格納するさまざまな方法が発達した。
多くのそのような方法が、ミネソタのRAID諮問委員会のセントピーターによ
って出版されたディスク・アレイ技術の原典であるRAIDブック(1996年
2月の第5版)に記述されている。これらのシステムは「RAID」ストレージ
・システムを含む。RAIDはRedundant Array of Ind
ependent Disksの略語である。
この技術の下では、複数の物理装置31〜33がデータの同じコピーを含む。し
たがって、データMlは物理装置3lの一部31a、物理装置32の一部32a
、および物理装置33の一部33a上に「ミラー」(正確に模倣)されることが
できる。この場合、複写されたデータ31a、32aおよび33aを格納する、
物理的なディスクの集まった部分は、「ミラー・グループ」と呼ばれてもよい。
データM1がミラーされる場所の数は、一般的にデータの回復不可能な損失に対
して防衛したいレベルに依存して選択される。
のミラーへのいかなる更新もグループ内の他のそれぞれのミラーに更新をもたら
す。
ように見える3つの物理装置31〜33を示す。しかしながら、非常に敏感なデ
ータについては、ミラーされたデータを保持する物理装置の1つ以上が遠隔の設
備に置かれてもよい。
ある。RAIDlアーキテクチャでは、例えばストレージ・システムの性能を改
善するために、いかにデータをアクセスしたり更新すべきかを決定するために、
多くの異なるメカニズムが使用されてもよい。どんな場合も、RAID1アーキ
テクチャは、失われたデータを回復する能力を確かに持っている。残念なことに
、RAIDlアーキテクチャは、ミラー・グループに含まれる「ミラー」の数だ
け、物理ストレージ装置のコストを増加させる。
データがストレージ箇所34a〜34dに格納される。特にこの例では、物理装
置33が35a、35bにパリティ情報P1を含む。パリティ情報は、データの
対応するビットの単純な排他的論理和(XOR)によって生成される。したがっ
て、パリティ情報P1は、データD1およびデータD2の対応するビットを排他
的に論理和することにより生成されるだろう。
知られている。図3Bの中で示される例では、パリティ情報のすべてが単一の物
理装置33上に格納されている。他のケースでは、パリティ情報が物理装置を越
えて割り当てられてもよい。
従う必要はないという概念を示す。図4で、物理装置40〜42上のストレージ
・セグメントの第1グループが、ミラー・グループ44を形成している。ミラー
・グループ44では、1つの論理ボリューム(HV−A)の全内容が、異なる3
つの物理装置40〜42上にミラーされている。
も持たずに、第4物理装置43上に格納されている。 最終的に、4つの物理装置40〜43のすべての上にあるデータ・セグメント
の最後のグループ45が、パリティ余剰スキームを実行している。特にこの例に
おいて、47aと47bで示されるように、パリティ情報は、異なる2つの物理
装置42〜43上のメモリ・セグメントに格納されている。
隔の設備に置かれたデータのミラーの使用を含み、エラーからの回復を可能にす
る余剰情報を持つ。
らなるバックアップ・システムの1つを示す。図5では、コンピュータまたはク
ライアント50がストレージ・システム52を使用して、その操作を行う。クラ
イアント50は、サン・マイクロシステムズから利用可能であるSolaris
オペレーティング・システム(Unixの1つのバージョン)を実行するネット
ワーク・クライアント、HP−UXを実行するHPクライアント(Unixオペ
レーティング・システムのHewlett−Packardバージョンを実行す
るHewlett−Packardクライアント)、あるいはAIXオペレーテ
ィング・システム(UnixのIBMバージョン)やそれに関連するオペレーテ
ィング・システムを備えた他のシステムを実行するIBMクライアントといった
ような、従来のいかなるコンピューティング・システムであってもよい。ストレ
ージ・システム52は、上で記述されたSymmetrixストレージ・システ
ムを含む従来のいかなるストレージ・システムでもよい。クライアント50は、
ネットワーク56を通して、他の多くの装置と接続されてもよい。
けられる。バックアップ・ストレージ・システム54は、データをストレージに
しまい、そのストレージからデータを回復させるためのシステムと共に、バック
アップ・ストレージ装置(ディスクドライブ、テープ・ストレージ装置、あるい
は他のいかなるストレージ・メカニズムであってもよい)を含む。
してストレージ・システム52からのデータを、バックアップストレージ・シス
テム54にコピーする。この処理は図1を参照して、非常に詳しく説明されるこ
とができる。ストレージ・システム52は図1の実際の物理ストレージ装置16
に相当するだろう。クライアント50が、ネットワーク56を介してバックアッ
プ・データをバックアップ・ストレージ・システム54に書き込むには、クライ
アント50はまずバックアップ・データをファイル・データに変換する。つまり
、物理ストレージ・システム・レベル16からデータを得て、論理ボリューム・
マネージャ・レベル14、ファイルシステム・レベル12、およびアプリケーシ
ョン・レベル10を通して、データをアプリケーション・レベルのフォーマット
(例えば、ファイル)に変換する。したがって、実際のデータ・ファイルは、ネ
ットワーク56を介してバックアップ・ストレージ装置54に伝えられてもよい
。バックアップ・ストレージ装置54がデータ・ファイルを受け取ると、バック
アップ・ストレージ・システム54はアプリケーション・レベル10のデータ・
ファイルを取得することになり、それがバックアップ・ストレージ・システムに
とって適切なファイルシステム・レベル12のフォーマットに変換され、その後
、論理ボリューム・マネージャ・レベル14を通して変換され、物理ストレージ
装置16に格納される。
てもよい。すなわち、論理データがバックアップ・ストレージ装置54上にバッ
クアップされる。バックアップされるデータは、物理ストレージ・システム・レ
ベル16でストレージ・システム52上に物理的に格納される方法から独立して
、またクライアント50上のファイルシステム・レベルのメカニズムからも独立
して、またバックアップ・ストレージ装置54上にデータがどう格納されるかと
いうことからも独立して、提供される。
EDM Manual)」を含む、EMCから利用可能な多数の出版物に記述
されているように、EDM(EMCデータ・マネージャ)製品ラインは、ネット
ワーク上で論理−論理バックアップを行う能力を持つ。
めの代案となる構造を表す1つの実施例を示す。図6の実施例で、直接接続60
はストレージ・システム52とバックアップ・ストレージ・システム54との間
でなされる。この実施例でのバックアップ・ストレージ・システムは、一般的に
EMCデータ・マネージャに記述されるようなシステムでよく、その本はマサチ
ューセッツ州ホプキントンのEMC社から利用可能である1997年12月改訂
版CのP/N200−113−591のSymmetrix接続ユーザ・ガイド
(Symmetrix Connect User Guide)である。直接
接続60はSCSIケーブル、あるいは1本以上のファイバ・チャンネル・ケー
ブルのような高速データ・チャンネルでよい。このシステムでは、ユーザは、ネ
ットワーク56を通してデータをバックアップしてもよいし、直接接続60を通
して行ってもよい。
連する技術を説明しながら記述されているが、これは制限するものではない。本
発明はより広いアプリケーションを持つ。本発明のある側面は、いかなるストレ
ージ・システムに適用されてもよい。従って、本発明は添付される特許請求の範
囲によってのみ制限される。
なされようが、従来技術でのバックアップはバックアップ用の完全なファイル(
あるいはある場合には、全パーティションといったようなことすらある)をコピ
ーすることを要求する。図6のシステム上のデータをバックアップしたり復元す
る方法は、係属中で、一般に所有された米国特許出願番号09/052,579
の発明者としてJohn DeshayesおよびMadhav Mutali
kの名が付けられ1998年3月31日にファイルされた題名「コンピュータ・
ストレージ・システムにおける物理バックアップからの論理復元(Logica
l Restore From Physical Backup In A
Computer Storage System)」に記述されており、それ
は参考としてその全体がここに組み入れられる。
・システム70を示す。クライアント50はチャンネルまたはバス71を使用し
て、ストレージ装置に接続されてもよい。クライアント50との通信のためのチ
ャンネルは、スモール・コンピュータ・システム・インターフェース(SCSI
)あるいはエンタープライズ・システム・コネクション・アーキテクチャ(ES
CON)のような適切な接続であればいかなるものでもよい。図7のストレージ
・システム70の中には1つの通信チャンネル71だけが示されているが、他の
チャンネルが含まれてもよい。(本発明の方法および装置は、図6のストレージ
・システム、および図7の物理ストレージ・システム(そしてそれに関連する機
能や方法)に関して記述されているけれども、このことに制限されるものではな
い。本発明はより広いアプリケーションを持つ。本発明のある側面はいかなるス
トレージ・システムに適用されてもよい。) ストレージ・システム70内に、ホスト・アダプタ72がある。特にこの実施
例では、ホスト・アダプタ72は、仮想ディスク構造(例えば、ファイルシステ
ムや論理ボリューム・マネージャのレベルからの)に基づくホスト・コンピュー
タ(例えば、クライアント52あるいはバックアップ・ストレージ・システム5
4)からの読み出し書き込みリクエストを管理し、ストレージ・システム70の
実際の物理ストレージ装置76a〜76d上にどのようにデータを格納させるか
ということに対応する1つ以上のリクエストに翻訳する役割を担っている。した
がって、この実施例では、ホスト・アダプタ72は、図2のアレイ管理ソフトウ
ェア23の機能のうちの少なくともいくつかを実行している。ホスト・アダプタ
72は、メインプロセッサやユーザ定義ハードウェアの使用を含め、たくさんあ
る方法のうちのいずれのやり方で実装されてもよい。さらに、多数のホスト・ア
ダプタが、ストレージ・システム70に対して追加のI/Oチャンネルを持たせ
るために含まれてもよい。
他のコンポーネントと交信する。バス73はSCSI、ESCON、およびその
他のバス・プロトコルの使用を含む適切ないかなる通信エレメントでもよい。
a〜75dの使用を通して制御される。さらにディスク・アダプタ75a〜75
dは、メインプロセッサーあるいはユーザ定義ハードウェアを用いて、実装され
ることができる。図7に示された実施例では、ディスク・アダプタがそれぞれの
物理ストレージ装置に対して用意されている。もちろんディスク・アダプタには
、1つ以上のストレージ装置を取り付けることができる。さらに、ディスク・ア
ダプタには、別のディスク・アダプタの物理ストレージ装置への第2の接続が含
まれていてもよい。このことは、第2のディスク・アダプタへその機能を移すこ
とにより、1つのディスク・アダプタの故障からの復帰を可能にする。
ジ装置76a〜76dへ読み取り書き込む作業が、キャッシュ74を使用するこ
とで促進される。キャッシュ74は、ディスクドライブより大きな速度を持つラ
ンダム・アクセス・メモリでもよい。データを読み取る場合、データがキャッシ
ュに一時的に格納されているなら、読み取り要求は、キャッシュ74からデータ
をとることによって、より迅速に達成させることができる。同様に、データを書
き込む場合、書き込まれるべきデータがキャッシュに格納されることが可能であ
る。データが、キャッシュから適切な物理ストレージ装置に書き込まれている間
も、システムの他のコンポーネントは続行することができる。
用されてもよい。そのようなメカニズムの例は、1996年7月16日に発効さ
れた米国特許番号5,537,568の題名「キャッシュ・インデックスを維持
し、連続データ・アクセスを制御するキャッシュ・マネージャをダイナミックに
制御するためのシステム(System for dynamically c
ontrolling cache manager maintaining
cache index and controlling sequent
ial data access)」という米国特許の中に含まれている。同様
に、書き込みは、さまざまなメカニズムや方法のうちのどれを使用し、キャッシ
ュを通して遂行されてもよい。キャッシュから書き込むための1つのメカニズム
は、キャッシュに書き込まれるべきデータを格納し、「書き込み保留」ビットに
マークを付けておくことである。書き込み保留ビットに出くわすと、適切なデー
タがディスクに書き込まれることができる。この技術は、1994年8月23日
に発効された米国特許番号5,341、493の題名「電源故障中の書き込み保
護を備えたディスク・ストレージ・システム(Disk storage sy
stem with write preservation during
power failure)」に概ね記述されている。
理ストレージ装置76a〜76dから読み取られ書き込まれるデータを格納する
ために、領域74aを含んでもよい。キャッシュはさらに「メールボックス」領
域74bを含んでもよい。メールボックス領域74bは、ディスク・アダプタ7
5a〜75d間とホスト・アダプタ72との交信を促進するために使用されても
よい。例えば、各ディスク・アダプタが、メールボックス74b内にそれ自身の
領域を持っていてもよい。ディスク・アダプタ75a〜75dの各々は、状態お
よび他の情報を交信するために、適切なメールボックス領域74bからの情報を
供給するか読み取ることができる。
り付けられてもよい。リモート・アダプタは、遠隔のデータ設備(RDF)と交
信するために、例えばミラー余剰グループを維持管理するための別のストレージ
装置との接続のために使用されてもよい。RDFリンクの1つの方式および実装
の方法は、EMC社から利用可能である1995年6月改訂版BのP/N200
−999−554のSYMMETRIX遠隔データ設備製品マニュアル(SYM
METRIX Remote Data Facility Product
Manual)を含む、さまざまな出版物に記述されている。さらにRDF実施
例は、米国特許番号5,544,347(Yanai)に記述されており、参考
としてその全体がここに組み入れられる。しかしながら本発明が、RDFの使用
あるいはSYMMETRIXディスク・アレイを使用するシステムに制限される
のではなく、多数の他のタイプのストレージ・システムのいかなるものでも使用
されることができることが認識されるべきである。
れてもよい。サービス・プロセッサ77は、サービス・プロセッサ77を使用す
るオペレータが、ストレージ・システム70のコンポーネントのコンフィギュレ
ーションを行い、設備の診断と維持管理を行ったり開始できるように、ディスプ
レイ、キーボード、およびその他のI/O装置を含んでもよい。
この実施例に従って、そのコンピュータ・システムは、少なくとも1つのホスト
・コンピュータを持つホスト・ドメインを含む。コンピュータ・システムはさら
に、そのホスト・ドメインに連結されたストレージ・ドメインを含むが、それは
複数の第1次ストレージ装置、第2次ストレージ装置、および第1次ストレージ
・ノードと第2次ストレージ・ノードを連結するスイッチド・ネットワークから
なる。
フォームを構成する複数のホスト・コンピュータを含むコンピュータ・システム
が開示される。さらにそのコンピュータ・システムは、複数の第1次ストレージ
装置を含み、その各々がホスト・コンピュータの少なくとも1つと結び付く。シ
ステムはさらに複数の第1次ストレージ装置と連結された第2次ストレージ装置
を含み、その第2次ストレージ装置はホスト・コンピュータのそれぞれからバッ
クアップ・データを受け取るように構成される。
ジ・ノードまでデータを転送する方法が開示される。この実施例に従って、第2
次ストレージ・エレメントにデータを転送するために、第1次ストレージ・エレ
メントの1つから第2次ストレージ・エレメントへの接続が自動的に確立される
。データは、第1接続を通して、第1次ストレージ・エレメントから第2次スト
レージ・エレメントに直接転送される。
ントからデータのコピーを送る方法が開示される。この実施例に従って、データ
は、まず抽象ブロック・セットに定式化される。抽象ブロック・セットが伝達さ
れる。この実施例および他の実施例では、定式化するステップと伝達するステッ
プが、順次あるいは同時に実行されてもよい。
。この実施例に従って、論理オブジェクトは抽象ブロック・セットへ定式化され
格納される。
って、ストレージ装置は、メモリ、およびメモリから抽象ブロック・セットに伝
達するための手段を含む。
の実施例に従って、第2次ストレージ・システムは、第2次ストレージ媒体、お
よび第2次ストレージ媒体上に抽象ブロック・セットを格納するための手段を含
む。
読取り可能な媒体が開示される。この実施例に従って、その媒体は、その各々が
論理オブジェクトからのデータの一部を読取り可能な媒体上に格納している複数
のデータ・ブロックと、論理オブジェクト中のデータ・ブロックの順番を識別す
るために読取り可能な媒体上に格納されるメタデータ・セグメントとを含む。
方法が開示される。この実施例に従って、以前以来、変化したことがある論理オ
ブジェクトのデータ・ブロックが識別される。識別されたデータ・ブロックは、
差分の抽象ブロック・セットとして格納される。
って、ストレージ装置は、メモリと、以前以来、変化のあったデータ・ブロック
を識別するための手段と、差分の抽象ブロック・セットをメモリから伝達するた
めの手段を含む。
法が開示される。この実施例に従って、全体の抽象ブロック・セットが提供され
る。差分の抽象ブロック・セットがさらに提供される。全体の抽象ブロック・セ
ットと、差分の抽象ブロック・セットが、更新された抽象ブロック・セットを作
成するために結合される。
作成する方法が開示される。この実施例に従って、論理オブジェクトの第1バッ
クアップが提供される。さらに論理オブジェクトの差分のバックアップが提供さ
れるが、その差分のバックアップは第1バックアップが作成されて以来、変化の
あった複数のバックアップ・データ・ブロックを含む。そのバックアップ・デー
タ・ブロックが第1バックアップに加えられ、そして更新されたバックアップの
中のデータ・ブロックの順番を識別するメタデータが、加えられる。
例に従って、ストレージ装置は第2次ストレージ媒体、および全体の抽象ブロッ
ク・セットを作成するために第1バックアップと差分の抽象ブロック・セットを
結合するようにプログラムされたコントローラを含む。
る。この実施例に従って、コンピュータ・ストレージ装置のストレージ・セグメ
ント一式から、論理オブジェクトの少なくとも1つの物理ブロックからのデータ
を含むセグメントが識別される。識別されたストレージ・セグメントがコピーさ
れる。この実施例に従って、コピーされたストレージ・セグメントの少なくとも
1つは、複数の物理データ・ブロックを含む。したがって、ストレージ・セグメ
ントのサイズは、個々の物理データ・ブロックのサイズと必ずしも同じではない
。
法が開示される。この実施例に従って、バックアップ・セグメント一式が受け取
られるが、その各々のバックアップ・セグメントは、論理オブジェクトの少なく
とも1つの物理ブロックを含む。受け取られたストレージ・エレメントが格納さ
れるが、ストレージ・セグメントの少なくとも1つは、複数の物理データ・ブロ
ックを含む。
納するコンピュータで読取り可能な媒体が開示される。この実施例に従って、複
数のデータ・セグメントが読取り可能な媒体上に格納されるが、それぞれのデー
タ・セグメントは論理オブジェクトの少なくとも1つのデータ・ブロックを含み
、データ・セグメントの少なくとも1つは、複数の論理データ・ブロックを含む
。さらにこの実施例は、データ・セグメント中の論理オブジェクトのデータ・ブ
ロックを識別するために、読取り可能な媒体上に格納されているメタデータ・セ
グメントを含む。この実施例では、データ・セグメントは、例えば複数の固定サ
イズのブロックを含むトラックであってもよい。
れる。この実施例に従って、システムは、それぞれが少なくとも1つのデータ・
ブロックを格納する複数の物理ストレージ・セグメント(1つの実施例では、そ
れは1つのトラックである)を含むコンピュータ・ストレージ装置を含む。さら
にシステムは、ストレージ・エレメントの一式から、論理オブジェクトの少なく
とも1つの物理ブロックを含むストレージ・セグメントを識別するための手段と
、識別されたストレージ・セグメントを伝達するための手段とを含む。
をバックアップする方法が開示される。この実施例によって、論理オブジェクト
の論理データ・ブロックを含むストレージ・セグメントの一式が識別される。こ
れらのストレージ・セグメントは、論理オブジェクトに現われるストレージ・セ
グメントあるいは論理データ・ブロックの順序がバラバラのまま、バックアップ
・ストレージ装置にコピーされる。コピーをしているステップの間に、論理オブ
ジェクトの物理ブロックを含んでいるストレージ・セグメントが修正されようと
しているなら、そのストレージ・セグメントが直ちにバックアップされる。この
実施例および他の実施例で、ストレージ・セグメントはデータ・ブロックの大き
さに一致していてもよい(しかし必要はない)。
れる。この実施例に従って、システムは、複数のストレージ・セグメントを持つ
コンピュータ・ストレージ装置を含む。さらにシステムは、論理オブジェクトあ
るいは論理データ・ブロックを含むストレージ・セグメントの一式を識別する手
段と、論理データ・ブロックおよび論理オブジェクトの順序と無関係に、その識
別されたストレージ・セグメントをコピーする手段と、ストレージ・セグメント
の物理ブロックが修正されようとしている場合は、直ちにバックアップ・ストレ
ージ装置にストレージ・セグメントをコピーする手段とを含む。
ピーする方法が開示される。この実施例に従って、論理オブジェクトのコピーが
提供される。第1次ストレージ装置中のメモリの物理ブロックが、論理オブジェ
クトを格納するために割り当てられる。第1次ストレージ装置の物理ブロックへ
論理オブジェクトをコピーするためのデータ・ブロックのマップが作成される。
データ・ブロックはマップに基づいて、物理ブロックにコピーされる。
ピーする方法が開示される。この実施例に従って、論理オブジェクトの抽象ブロ
ック・セット・コピーが提供される。メモリの物理ブロックが、論理オブジェク
トを格納するために第1次ストレージ装置の中に割り当てられる。論理オブジェ
クトをコピーするためのデータ・ブロックが、第1次ストレージ装置の物理ブロ
ックにマッピングされ、そしてそのデータ・ブロックがマッピングに基づいて物
理ブロックにコピーされる。
この実施例に従って、装置は複数の物理データ・ブロックを含むメモリを含む。
さらに装置は、一式の物理データ・ブロックに向けてなされるデータ・ブロック
のマッピングに基づいて、抽象ブロック・セットのデータ・ブロックを物理デー
タ・ブロックへ格納するための手段を含む。
る。この実施例に従って、論理データ・ブロックを含むストレージ・セグメント
の一式が識別される。ストレージ・セグメントは論理データ・ブロックに一致し
ていてもよいし、あるいは異なるサイズでもよい。識別されたストレージ・セグ
メントは、論理オブジェクト中の論理データ・ブロックの順序とは無関係に、第
2次ストレージ装置にコピーされる。
る。この実施例によって、論理オブジェクトの論理データ・ブロックを含むスト
レージ・セグメントの一式が識別される。識別されたストレージ・セグメントは
、並行して第2コンピュータ・ストレージ装置にコピーされる。メタデータは、
論理オブジェクト中の識別されたストレージ・セグメントに格納されたデータの
順序を識別するために提供される。
バックアップする方法が開示される。この実施例に従って、第1と第2のバック
アップ媒体が提供される。1つの実施例では、各バックアップ媒体はデジタル・
ストレージ・テープである。論理ブロックが、並行して第1と第2のバックアッ
プ媒体に書き込まれる。
例に従って、第2次ストレージ装置は、複数のストレージ・コンポーネントと、
並行してそのストレージ・コンポーネントに抽象ブロック・セットの部分を書き
込むための手段とを含む。
。この実施例に従って、論理オブジェクトのコピーの第1と第2の部分が提供さ
れる。第1の部分に格納されたデータ・ブロック、および第2の部分に格納され
たデータ・ブロックが、並行して読み取られる。論理オブジェクトは読み取られ
たデータ・ブロックから復元される。
例に従って、第2次ストレージ装置は、複数のストレージ・コンポーネントから
並行してデータを読み取るための手段と、読み取られたデータを抽象ブロック・
セットとして別の装置に提供するための手段を含む。
用されてもよいし、一緒に適用されてもよい。本発明の1つの側面の説明は、本
発明の他の側面について制限するものではない。
ク・モデルに焦点を合わせたもの、あるいは「ネットワーク中心の」システムと
して眺められてもよい。そのようなシステムでは、データ・トランスファの焦点
となるのは、ネットワークを介しての論理データの移動である。さらに、ストレ
ージ・システム52およびバックアップ・ストレージ・システム54が、一般的
に、単一のクライアントあるいはホスト50のアーキテクチャと結び付けられる
。
ージ・ドメインの分離に焦点を合わせたものである。 図8は、ストレージ・ドメインからホスト・ドメインを分離するシステムの一
例を示す。図8では、多くのホスト・コンピュータ80が、エンタープライズ・
ホスト・ドメイン80aに含まれる。ホスト・コンピュータは、コンピュータ、
オペレーティング・システム、データ管理アプリケーションからなるいかなるタ
イプのものでもよい。例えば、1つのホスト・コンピュータ80は、HP−UX
オペレーティング・システムを実行するヒューレット・パッカード9000コン
ピュータ・システムでもよい。別のホスト・コンピュータ80はSolaris
オペレーティング・システムを実行するSunSparkステーションでもよい
。ホストと、オペレーティング・システムと、適用されるデータ管理アプリケー
ションの組み合わせは、「プラットフォーム」と呼ばれる。ホスト・コンピュー
タ80の各々は、ストレージ・ネットワーク89と接続する異なるプラットフォ
ームを構成してもよい。
ットワーク上に接続されてもよい。他のいかなる形式のネットワークが用いられ
てもよいけれども、このネットワークはスイッチング・ノード81を含んでもよ
い。
タープライズ・ストレージ89に連結されるか、第1次ストレージ・ノード82
に直接連結される。第1次ストレージ・ノードは、ホスト80によって使用され
る著しい量のデータを蓄えることができるメモリ装置である。例えば、図7に関
連して上で記述されたようなSymmetrixシステムは、第1次ストレージ
・ノードとして使用されてもよいが、これは制限するものではない。
の主ストレージ装置として使用するために、第1次ストレージ・ノード82の小
集合に連結される。例えば、ホスト・コンピュータ80aは、第1次ストレージ
・ノード82aに直接つながれている。ホスト・コンピュータ80aは、非常に
大きなデータベースへのアクセスといったような、ほとんどそのメモリ集約的な
機能に対して、第1次ストレージ・ノード82aに依存してもよい。
てもよい。図8の例では、ネットワークはリンク85およびスイッチ・ネットワ
ーク84を含む。スイッチ・ネットワーク84は、例えば、ファイバー・チャン
ネル・ネットワークでもよい。リンク85はESCONライン上のRDFリンク
でもよい。
。ネットワークは、第1次ストレージ・ノード間のデータの伝送を許してもよい
。例えばホスト80aによって操作され、第1次ストレージ・ノード82aに格
納されるデータベースは、ホスト80bによって使用されるように、第1次スト
レージ・ノード82bに伝送されてもよい。エンタープライズ・ストレージ・ネ
ットワーク(リンク85あるいはスイッチング・ネットワーク84を使用して)
を介してデータベースを伝送することによって、ホスト80a、80bおよびエ
ンタープライズ・ホスト・ドメイン・ネットワーク中の利用可能な帯域幅を保存
することができる。
ジ・ノード87を含んでもよい。第2次ストレージ・ノードは、バックアップ機
能、階層的ストレージ管理、仮想ディスク、およびその他の機能のために使用さ
れてもよい。したがって、第2次ストレージ・ノード87はテープ・ストレージ
・ユニット83につながれてもよい。第2次ストレージ・ノード87は、第1次
ストレージ・ノード82からテープ・ストレージ・ユニット83に格納されたテ
ープへ、データの高度な伝送がなされるよう調整するだろう。(他の実施例は第
2次ストレージ装置用に追加のあるいは代わりの媒体を使用するかもしれない) 図9は、本発明の1つの実施例の1つの側面によって構築されたコンピュータ
ー・ネットワークの1つの実施例を示す。この実施例では、エンタープライズ・
ホスト・ドメイン97が提供される。エンタープライズ・ホスト・ドメイン97
はさまざまなホスト・コンピュータ90a〜90eを含む。ホスト・コンピュー
タは、異なるプラットフォーム、およびメモリ中のデータにアクセスし格納する
ことに対応する、異なるメカニズムを含んでもよい。例えば、ホスト・コンピュ
ータ90aはヒューレット・パッカードHP9000コンピュータである。ホス
ト・コンピュータ90cはSolarisオペレーティング・システムを実行し
てもよいSunSparkステーションである。ホスト・コンピュータはネット
ワーク96を介して互いに交信してもよい。そのようなネットワークは、コンピ
ュータを接続するためによく知られ適用される、多くのコンピューター・ネット
ワークのうちの1つであればよい。
ジ・ノード92a〜92cに接続される。この実施例では、各々の第1次ストレ
ージ・ノード92a〜92cは、図7に関連して上で記述されたようなSymm
etrixメモリ・システムのような、反復キャッシュ・ディスク・アレイであ
るが、これは制限するものではない。したがって、例えば、ホスト・コンピュー
タ90aは、第1にストレージ・ノード92aと接続する。同様に、ホスト・コ
ンピュータ90bは、そのデータの第1資源として第1次ストレージ・ノード9
2aを使用する。
ネル9laを通して第1次ストレージ・ノード92aに接続される。しかしなが
ら、ホスト90bは、標準のSCSI接続を通して第1次ストレージ・ノード9
2aに接続される。ホスト90aと90bの各々は、同じ第1次ストレージ・ノ
ード92aにつながれる。第1次ストレージ・ノード92a〜92cにホスト・
コンピュータ90a〜90eを接続するために、他のメカニズムが使用されても
よい。例えば、どのホスト・コンピュータでも、第1次ストレージ・ノード92
a〜92cのうちのどれに対してもアクセスできるように、完全なスイッチド・
ネットワークが使用されることができるだろう。
用して、共に連結されてもよい。図9の例では、第1次ストレージ・ノード中の
ただ一つのリンクが、ESCONリモート・データ・ファシリティ(ESCON
「RDF」)リンク93gである。そのようなリンクは、データを伝送するため
、あるいはオン・ラインか周期的に更新されるミラーとしてデータのミラーを維
持管理するために使用されてもよい。そのようなリンクが、参考としてその全体
がここに組み入れられる米国特許番号5,544,347(Yanai)で記述
されるように、実装されてもよい。第1次ストレージ・ノード92a〜92cの
各々は、他のメカニズムを使用して、共に連結されてもよい。例えば、第1次ス
トレージ・ノード92a〜92cの各々を完全に接続するために、RDFリンク
が使用されることができるだろう。代案として、そのネットワークが、第1次ス
トレージ・ノード92a〜92c間のデータ操作を支援するために十分に高速で
あることが当然であると想定すると、スイッチド・ネットワークが使用されるこ
とができるだろう。
・ノード94を含む。第2次ストレージ・ノードは、バックアップ(そして他の
)機能のために使用され、例えばテープ・ライブラリ95へ情報を格納し、そし
てそこから情報を復元するために使用される。
ノード94に接続されるか、あるいは接続可能(ネットワークによって)である
。この例において、第1次ストレージ・ノード92bおよび92cは、上で記述
されるように実装されてもよいRDFリンク(それぞれ93cと93d)を各々
が使用して、第2次ストレージ・ノード94に連結される。
ージ・ノードと一緒に)スイッチド・ネットワークを通して第2次ストレージ・
ノード94に接続されるが、それはシステムの各々が第2次ストレージ・ノード
94にアクセスすることを可能にするだろう。
を使用するなら、第1次ストレージ・ノード92a〜92c、および第2次スト
レージ装置94は、物理的に遠く離れて設置されていてもよい。
用されてもよい。 コンピュータのアプリケーションの多くは、今やシステムが計算を実行する能
力よりも、メモリにより多く注目している。例えば、非常に大きなデータベース
へのアクセスが、コンピュータにとって非常に重要で価値あるアプリケーション
となった。
を持つホスト・コンピュータを相互に連結させることや、あるいは、単一のメモ
リへのネットワーク・アクセスを提供することにあった。この焦点はホスト・コ
ンピュータおよびネットワーク資源を要求する。
レージ・コンポーネントが等しく重要な地位に上げられる。そのようなモデルで
は、システムのストレージ・コンポーネントが、ホスト・ドメインからのより少
ない関与で、互いに作用し合うことができる。例えば、1つ以上の第1次ストレ
ージ・ノードを横断したミラーリングを可能にすることが望ましいかもしれない
。同様に、データ・オブジェクトが、1つの第1次ストレージ・ノードから別の
第1次ストレージ・ノードにコピーされる必要があるかもしれない。さらなるレ
ベルのバックアップが望まれるところでは、第1次ストレージ・ノードはさらに
バックアップの目的のために第2次ストレージ・ノードにデータを転送してもよ
い。同様に、第1次ストレージ・ノードは、復元するために第2次ストレージ・
ノードからデータを受け取ってもよい。ストレージ中心のモデルでは、そのよう
なシステムの中の資源集約的な機能のうちのいくつか、あるいはすべてが、ホス
ト・ドメインから取り除かれてもよい。このモデルに続くある実施例は、ホスト
・ドメイン資源を保護し、メモリの拡張性を増大させ(ホスト・ドメイン資源へ
の作用に大きな問題を与えずに、ストレージ・ドメインを増やすことによって)
、そしてホスト・ドメインにおけるホストの特定プラットフォームへの依存を減
少させることができる。
れるかを非常に基本的なレベルで示す。ステップ100で、コピーか、バックア
ップか、復元される必要のある物理エレメント(例えば、データ・ブロック)が
、識別される。ステップ102で、それらの物理的なエレメントが転送される。
テップ100で識別される。さらに、そのエレメントがコピーされようとしてい
るロケーションが、識別される。第1次ストレージ・ノード間のコピーに対して
は、これにロケーションからのコピーと、ロケーションへのコピーとを識別する
ことが含まれてもよい。バックアップについては、これにロケーションからのコ
ピーを識別することが含まれるが、テープやその他のバックアップ・ストレージ
・エレメントのどれが、バックアップ・データを受け取るかを決めることのよう
に単純なことであるだろう。
ションから、識別されたコピー先のロケーションへ、物理エレメントが転送され
る。バックアップについては、物理エレメントがテープにコピーされる。(テー
プが第2次ストレージとして言及されているが、これは制限するものではない。
他のいかなるストレージ媒体が使用されてもよい。) しかしながら、ステップ100は非常に複雑になることがある。多くの場合、
第1次ストレージ・ノードの全内容をコピーすることは望ましくない。むしろ、
第1次ストレージ・ノード中の物理エレメントの部分集合だけが、コピーされる
必要があるかもしれない。一例として、図9の第1次ストレージ・ノード92a
に格納されたデータベースをバックアップすることを考えてみる。このデータベ
ースは、第1次ストレージ装置92aに格納された総データのうちの単に小さな
部分を占めているだけかもしれず、また実際に、主としてホスト・コンピュータ
90bによってアクセス可能だが、ホスト90aが読み出すことすらできないか
もしれない極めて大きなセグメントのデータがあるかもしれない(なぜならホス
ト・コンピュータ90bが90aとは異なるプラットフォームなので)。
クアップすることが望ましいかもしれない。この場合、ステップ100は、92
aからコピーされる必要のある物理エレメントを識別するために、第1次ストレ
ージ・ノード92aの中の物理エレメント上に論理オブジェクトをマッピングす
ることを要求する。図2Cに関して上で記述されるように、これらの物理エレメ
ントは、第1次ストレージ装置内の異なるロケーションに置かれていてもよい。
物理エレメントがすべて識別された後でさえ、単に物理エレメントを転送するだ
けでは不十分である。コピーかバックアップされた論理オブジェクトが、受入れ
第1次ストレージ・ノードにつながれたホスト・コンピュータによって読み取ら
れるよう、物理エレメント間の関係が保存されている必要があるかもしれない。
物理エレメントに論理オブジェクトをマッピングし、それらの物理エレメント間
の論理関係を保存するために使用する1つのメカニズムが、以下に説明される。
これは本発明の他の側面に関して制限するものではない。
、データ転送処理(例えば、図10に示されるもの)の多くが、ストレージ・ネ
ットワーク内で、つまりホスト・ドメインからの資源を要求せずに、実行される
ことが可能であることが望ましいかもしれない。従って、ネットワーク中の第1
次ストレージ・ノードおよび第2次ストレージ・ノードはデータ転送処理の側面
を取り扱えるだけの十分な知能を持っていてもよい。例えば、第1次ストレージ
・ノードは、それらの物理エレメントが第1次ストレージ装置内の異なるロケー
ションに格納される場合でさえ、論理オブジェクト中の識別された物理エレメン
トの転送を、最低限、管理する能力があってもよい。コンピュータ・システムの
ストレージ中心のモデルでは、ストレージ・ドメイン内の第1および第2次スト
レージ・ノードの中の資源を使用して、データ転送機能のうちのいくつか(ある
いは、ある場合にはできるだけ多く)が実行されるようにすることが望ましいか
もしれない。
理するために、ストレージ管理アプリケーション(SMAPP)を含んでもよい
。図11AおよびBを参照して下に記述されるように、SMAPPは、ホスト・
コンピュータ上か、第1次ストレージ・ノード上か、別個のストレージ・コント
ローラ上か、あるいはこれらのいくつかの組み合わせの中で、ソフトウェアを用
いて実装されることができる。
コンポーネント、サーバ・コンポーネント、およびクライアント・コンポーネン
トを使用して、実装されることができる。
、およびストレージ・ドメインのコピー工程を制御する。さらに管理コンポーネ
ントは、例えばどのテープまたは複数のテープが、特定の各々の論理オブジェク
トのバックアップを含んでいるかということを含めて、ストレージ・システム内
の論理オブジェクトのコピーのロケーションを追跡する。
、オープニングとクロージング、テープの読み取りと書き込み、および他のメモ
リ媒体の行為といったようなメモリ処理のハードウェア機能を制御する。
はコピーの操作や識別を取り扱う。例えば、クライアント・コンポーネントは、
適用可能な論理オブジェクト(例えば、ファイルシステム、ファイルあるいはデ
ータベース)の識別と、どのようなオペレーティング・システム・レベル(ある
いは論理ボリューム・マネージャ・レベル)の物理エレメントが含まれているか
を判定する役割を担う。(上で記述されるように、マッピングの追加層がストレ
ージ・ドメイン内の第1次ストレージ・エレメント111で実行されてもよい。
例えば、第1次ストレージ・エレメント111が上で記述されるようなSymm
etrix製品である場合、識別された物理トラックが第1次ストレージ・エレ
メント111内に再度マッピングされてもよい。) 図11Aは、ホスト・ドメインおよびストレージ・ドメインを持つコンピュー
タ・システムの一部の一例を示す。その例では、一台のホスト110だけがホス
ト・ドメインの中に示される。さらに、3つのコンポーネントだけがストレージ
・ドメインの中に示される。これらは第1次ストレージ・エレメント111(そ
れは、例えばSymmetrixディスク・アレイでもよい)、第2次ストレー
ジ・エレメント112、およびテープ・ライブラリ・ユニット113である。上
で記述されるように、追加のストレージ・エレメントが、ネットワークによって
連結されて、含まれてもよい。単純にするために、図11Aの例は、ホスト、第
1次ストレージ・エレメント、第2次ストレージ・エレメントという3つの異な
るストレージ・レベルを持つそれぞれの中から1つだけを示す。
、主としてホスト・コンピュータ110上に常駐している。したがって、ホスト
・コンピュータは、コピー、バックアップ、復元(また他のもの)操作の管理を
可能にするアプリケーション・プログラミング・インタフェース(API)を含
むだろう。さらに、ホスト110上のストレージ管理アプリケーションl14は
、サーバ・コンポーネント115bを含む。かさねて、ホストは、サーバ操作の
管理を可能にするAPIを含むだろう。最後に、ストレージ管理アプリケーショ
ン114は、この例において、クライアント・コンポーネント115cを含む。
クライアント・コンポーネントは、論理オブジェクトを識別し操作する役割、お
よび論理オブジェクトを包含する物理エレメントを識別する(オペレーティング
・システムか論理ボリューム管理レベル・ビューから)役割を担うだろう。
ジ・エレメント112にバックアップを実行する操作が、記述されるだろう。同
様の工程が、ネットワーク中の第1次ストレージ・エレメント間でミラーリング
あるいはコピーを行う機能を設定するために適用されるだろう。
ス116aを含む。同様に、第2次ストレージ・エレメント112はSMAPP
インターフェース116bを含む。図11Aに示される実施例中の第1次ストレ
ージ・エレメント111から第2次ストレージ・エレメント112への論理オブ
ジェクトのコピーが、以下のように進行してもよい。最初に、「仮想回線」ある
いは「接続」が、第1次ストレージ・エレメント111と第2次ストレージ・エ
レメント112の間で設定される。これは、第2次ストレージ・エレメント11
2に第1次ストレージ・エレメントをつなぐネットワーク(例えば第1次ストレ
ージ・エレメント111と第2次ストレージ112間の単一のRDFリンクを含
めて)を通して確立される仮想回線でよい。ノード間の物理的な接続を確立する
ことに加えて、仮想回線は、その確立された接続を通して、一連のデータ(例え
ば、論理オブジェクトからなる)をコピーするためのセッションを識別する。
ポーネント115aは、第2次ストレージ・エレメント112との仮想回線を確
立するよう第1次ストレージ・エレメントに命じることにより、バックアップ・
セッションを開始してもよい。その後、仮想回線の実際の設立は、第2次ストレ
ージ・エレメント112のSMAPPインターフェース116bと共同して、第
1次ストレージ・エレメント111のSMAPPインターフェース116aによ
って実行されてよい。
ックアップ用の論理オブジェクトを識別する。その後、クライアント・コンポー
ネント115cは、物理エレメントのオペレーティング・システム(あるいは論
理ボリューム・マネージャ・レベル)セットにその論理オブジェクトをマッピン
グする。このマッピングは1ステップで実行されてもよい。その後、SMAPP
インターフェース116aを通して交信されるように、ホスト110のクライア
ント・コンポーネント115cは、第1次ストレージ・エレメント111にコピ
ーするためのエレメントを識別してもよい。
ユニット113の適切なテープを識別しマウントするだろう。特にこの例では、
サーバ・コンポーネント115bは、第1次ストレージ・エレメント111のS
MAPPインターフェース116aを通して、第2次ストレージ・エレメント1
12のSMAPPインターフェース116bにこれらのコマンドを渡すことで、
そのコマンドを実行し、そうしてテープをマウントする。
れ以上の制御無しで(いくつかの実施例における、工程のモニタリング、および
、例えばテープ・ドライブにおけるテープの交換といったバックアップ媒体の管
理を除いて)、進行してもよい。第1次ストレージ・エレメント111は、識別
された物理セグメントを第2次ストレージ・エレメント112にコピーしてもよ
い。
を制御するための代案となる構造を示す。この例において、ストレージ・ネット
ワーク・コントローラ118aは、ネットワーク119を通して、ホスト110
、第1次ストレージ・エレメント111、および第2次ストレージ・エレメント
112に接続される。このネットワークは、例えばTCP/IPプロトコルに従
ったものでよい。ストレージ・ネットワーク・コントローラ118aは、必要な
機能を遂行できるどのようなハードウェアでもよいし、あるいはハードウェアと
ソフトウェアの組み合わせでもよい。例えば、ストレージ・ネットワーク・コン
トローラ118aは、SMAPP機能を実行するための適切なアプリケーション
・ソフトを備えた、WindowsNTオペレーティング・システムを実行して
いるコンピュータでもよい。
ーク・コントローラ118a上に常駐している。それで、ストレージ・ネットワ
ーク・コントローラ118aのSMAPP118bは、管理コンポーネントおよ
びサーバ・コンポーネントを含む。したがって、ストレージ・ネットワーク・コ
ントローラ118aは、ハードウェアおよび媒体の管理をホスト・コンピュータ
110と無関係に、実行することができる。
17を含む。したがって、論理から物理へのマッピングが、ホスト・コンピュー
タ110によって、ホスト・ドメインの中でなお実行される。SMAPP117
のクライアント・コンポーネントは、論理オブジェクトを識別する役割と、論理
から物理へのマッピングを実行する役割を担っているので、これは実用的な配置
であると言える。論理から物理へのマッピングは、特定のホスト・プラットフォ
ームに依存し、必然的にそのホストは必要なマッピングを実行することができる
エレメントを持つ。
・ネットワーク・コントローラ118aか、あるいは1つ以上のプラットフォー
ムに対して論理から物理へのマッピングを遂行できる別個の装置内に含まれる。
これが終わると、コピーとバックアップ目的のためのデータの識別と転送が、ホ
スト・ドメインから完全に分離して実行されることができる。しかしながら、多
くのシステムでは、ホスト・コンピュータ上でのメモリ・マッピング・メカニズ
ム(クライアント・コンポーネント)を使用することがより効率的だろう。
PPソフトウェアのコンポーネントは、ストレージ・ドメインの第1次ストレー
ジ・エレメント、ホスト・ドメインの第2次ストレージ・エレメントか複数のエ
レメント、あるいはそのいくつかの組み合わせを横断して割り当てられてもよい
。
ジェクトを転送する方法の1つの実施例を示す。ステップ120で、仮想回線が
確立される。上で記述されるように、これは、そこからコピーされるエレメント
(例えば、第1次ストレージ・エレメント)と、そこへコピーされるストレージ
・エレメント(例えば、第2次ストレージ・エレメント)間の物理的な接続を確
立することに相当するだろう。さらに、このステップ120は、その接続を通し
てコピーを実行するためのセッションの確立に相当する。上で記述されるように
、仮想回線の確立と管理は、ホスト・コンピュータ、ストレージ・ネットワーク
・コントローラ、あるいは他の装置上に常駐するSMAPPコンポーネントによ
って、実行されることができる。
論理オブジェクトがマッピングされる。バックアップを実行するために、これは
、アプリケーション・レベルの識別された論理オブジェクトを、ストレージ・レ
ベルの物理エレメント一式に、マッピングすることに相当するだろう。
ーションを識別することに相当するだろう。テープが論理ビット・ファイルを含
んでいる場合、このステップは簡単である。いかなる実際のマッピングもなされ
る必要がない。下に記述される抽象ブロック・セットのような他の環境では、テ
ーブルあるいは他の構造が、物理エレメントの部分を論理オブジェクト中のそれ
らの順序にマッピングしたものを識別してもよい。論理レベルから物理レベルへ
の実際のマッピングは、バックアップの時に実行され、保存されてもよい。
ースが第1次ストレージ・エレメントからテープにバックアップされる場合、バ
ックアップが時間のある一点に対応できるように、論理オブジェクトの更新が止
められるべきである。もちろん、そのコピーがバックアップ・テープから第1次
ストレージ・エレメントになされる場合は、物理エレメントの更新を止めるのは
かなり単純である。というのは、復元中、物理エレメントが読み出されている間
は、テープは書き込まれないはずであるからである。1つの実施例では、コピー
処理中の物理エレメントの更新を止めるために、下に記述される同時コピーの方
法が使用されてもよい。
メントからテープへのバックアップについて、これは適切なテープをマウンティ
ングしたりディスマウンティングすること、さらにテープ・ライブラリやカタロ
グ情報を管理すること、さらに適切なテープのヘッダとトレーラを書き込むこと
に相当するだろう。情報が別の第1次ストレージ・エレメントにコピーされてい
る場合、これは、そこへコピー中である第1次ストレージ・エレメントの受入れ
物理エレメントの管理に相当するだろう。さらに、それによって、情報を受け取
るための適切なストレージ・ドメインを用意することが必要になるだろう。
ァイルが2つのホスト・コンピュータ間のアプリケーション・レベルに送られる
場合のように、そのコピーは論理オブジェクトに対して適切な順序で行われても
よい。バックアップのコンテクストでは、そのような1つのシステムが、米国特
許出願番号09/107,679に記述されており、その全体がここに組み入れ
られる。これに代わる実施例では、物理データ・ブロックが、論理オブジェクト
中の物理エレメントの正確な順序を識別する、適切なメタデータと一緒に、順序
に関係なくコピーされてもよい。この種のシステムの実施例は下に記述される。
レメントの更新の中止が解除され、論理オブジェクトの更新が許可される。バッ
クアップは完了し、物理エレメントは更新中止から解除されてよい。
エレメントへ渡す少なくとも2つの異なる方法がある。1つの論理オブジェクト
として順番にブロックを転送する方法(ホスト・コンピュータ間のネットワーク
を通して行われるような)と、純粋に物理的にコピーする方法(データ間の論理
的な関係を保存しなくてよい)である。これらの可能性の各々は長所と損失を持
つ。例えば、順番に論理オブジェクトの各データ・ブロックをコピーすることは
、データ・ブロックの関係を保存する。その反面、順番にブロックをコピーする
ことは、ストレージ・エレメントが連続してデータ・ブロックを取り出すか、さ
もなければ、書き込むためにコピー処理の一部として、データ・ブロックをソー
トすることになるので、遅延という結果になるかもしれない。他方、物理エレメ
ントを純粋にコピーすることは、未使用の物理エレメントがコピーされるので、
不必要に遅くなることがある。さらに、コピーされるデータ・ブロック間の論理
的な関係が失われるかもしれない。
することである。この種の構造は上で記述されるようなストレージ・ネットワー
ク・アーキテクチャにおいて有用なだけでなく、より大きな適用の可能性がある
。例えば、抽象ブロック・セット概念は、論理オブジェクトが1つのストレージ
・エレメントから別のストレージ・エレメントにコピーされる、すべてのシステ
ム中で使用されるかもしれない。さらにテープ・ドライブのような第2次ストレ
ージ装置にデータをバックアップし復元するために使用される時、抽象ブロック
・セットは特に有利に使用されることができる。
ることを可能にする。抽象ブロック・セットは、それらのエレメントの順序に関
する情報を含む。
から、論理オブジェクト130は多くのデータ・ブロック130a〜130fを
含む(図13は図解だけの目的であり、通常、論理オブジェクトは本質的にもっ
と多くのデータ・ブロックを含んでいるかもしれない)。論理オブジェクト13
0中のラベルA〜Fによって示されるように、そのデータ・ブロックは論理的な
関係あるいは順序を持つ。
リ131に格納される。各列は、1つのトラックと見なされてもよく(これは制
限されるものではないが)、各行はそのトラック内のブロックの1つの行として
見なされてもよい。図2Cおよび13の中で示されるように、論理データ・ブロ
ックは物理メモリ131の全体にわたって散在してもよい。
築されるだろう。抽象ブロック・セット132では、データ・ブロックが、論理
オブジェクトに現われるのと同じ順序で必ずしも格納されない。この例では、そ
れらはランダムか疑似ランダムの順である。(実際問題として、データ・ブロッ
クの順序は、データ・ブロックが物理ストレージ131に格納される方法を反映
するかもしれない。例えば、データ・ブロックAおよびBが1つのトラック上に
格納される場合、それらは、その同じトラックに現われる順に抽象ブロック・セ
ット132に恐らく読み取られ書き込まれるだろう。図13に示される抽象ブロ
ック・セット132は、図解のためだけのものである。) 論理データ・ブロックが抽象ブロック・セット132の中で順序通りになって
いないので、データ・ブロック132a〜132fだけを与えられた論理オブジ
ェクトを再構成することは不可能であるかもしれない。
は論理データ・ブロックが論理オブジェクト130に現われるように、論理デー
タ・ブロックの順序を再構成するためのメカニズムを提供する、すべての記録情
報である。
た論理ブロック・エレメントの順番(LBELのラベルの付いた列)を含む。し
たがって、論理ブロック・エレメント1は、物理メモリ131の中のその論理デ
ータ・ブロックのアドレス(物理エレメント・アドレス)に対応するメタデータ
を持つ。133に示されたメタデータを使用して、格納された抽象ブロック・セ
ット132の中に格納されたデータ・ブロック132a〜132fの各々は、対
応する物理アドレスを備えたラベルを含む必要があるだろう。したがって、例え
ば、論理オブジェクト130の一番目の論理データ・ブロック130aのロケー
ションを見つけるために、メタデータ133を調べれば、一番目の抽象ブロック
・セット(メタデータ133の第1列に示されるように)が物理アドレスADD
R−Aを持つことが判るだろう。その後、適切なブロックが見つかるまで、デー
タ・ブロック132a〜132fの物理アドレス(データ・ブロック132a〜
f内に現われる物理アドレス)を調べることによって、抽象ブロック・セット1
32の中にこのデータ・ブロックを見つけることができるだろう。
ーマットがある。一例として、物理アドレス以外のラベルが使用されることがあ
るだろう。別のフォーマットとして、メタデータ133は、抽象ブロック・セッ
ト132の中での論理ブロックエレメントの順番を単に記述することもできるだ
ろう。この場合、メタデータ133の第1行の第2列は、一番目の論理データ・
ブロック(Aに対応する)が抽象ブロック・セット132の中では6番目のブロ
ックとして格納されていることを指し示すことができるだろう。
第2列のエレメントの順序が、論理オブジェクト130内でのそれらのロケーシ
ョンに対応する。つまり第1論理ブロック・エレメントのためのアドレスが、テ
ーブルの第一列に現われ、第2の論理データ・ブロックのアドレスが第2列の中
に第2エントリとして現われる。
の方法を示す。メタデータのこのテーブルでは、第1列が抽象ブロック・セット
に現れるデータ・ブロックの順序に相当する(上記のように、行が現われる順番
がこの情報を意味するので不必要。第1行は抽象ブロック・セット中の第1ブロ
ックである)。第2列は、論理オブジェクト130内のデータ・ブロックの位置
を示す。したがって、メタデータ134の第1行の第1エントリは、抽象ブロッ
ク・セット132のデータ・ブロック132aに相当する。これは論理オブジェ
クト130の第2データ・ブロック130bである。従って、第2列は、このデ
ータ・ブロック132aが論理オブジェクト130の第2データ・ブロックであ
ることを示す「2」である。メタデータ134の最後の列は、物理メモリ131
中の当データ・ブロックの物理アドレスを提供する。
格納されるデータ・ブロックに付随させてデータ・ブロックの物理アドレス(あ
るいは他のタグ)を格納する必要はないだろう。
メモリ131内の物理アドレスを格納することは厳密には必要ない。しかしなが
ら、これはメタデータ134の内に含めるべき有用な情報であるだろう。多くの
場合、復元は、情報がそこからバックアップされたのと同じメモリ・ロケーショ
ンになされるだろう。この場合、その情報が利用できなかったので、物理メモリ
131内のそれらのアドレスに復元することがより容易であるだろう。そうでな
ければ、復元されるデータ・ブロックにとってどれが適切なアドレスであるかを
、再び決定するために、論理から物理へのマッピング・ステップが必要とされる
かもしれない。
個々のブロックに対してよりも、むしろ広がり(一続きのブロック)に対して追
跡されてもよい。
理オブジェクトをコピーする方法の1つの実施例を示す。ステップ140で、論
理オブジェクトが識別される。上で記述されるように、論理オブジェクトはデー
タベース、データベースのセグメント、ファイル、あるいはファイル・システム
のような任意の論理エンティティでありうる。
論理データ・ブロックが識別される。上で概ね記述されたように、このステップ
が先行してもよい。
トにマッピングされる。物理バックアップ・セグメントは、論理データ・ブロッ
クを格納する物理エレメントに相当するかもしれない。抽象ブロック・セットが
テーブル133で示された形式のメタデータを含むことである場合、マッピング
・ステップ142は、メタデータがいかなるフォーマットで格納されていても、
その情報を定式化するステップを含んでもよい。
ーションのクライアント・コンポーネントによって実行されてもよい。いくつか
のシステムで、これはホスト・コンピュータの資源を要求するかもしれない。
ポーネントの大きな関与なしで進行してもよい。 ステップ144は、物理バックアップ・セグメントのすべてがコピーされたか
どうかを判定するためのものである。もしされたならば、コピー処理は、ステッ
プ145で完了する。
意された次のバックアップ・セグメントがステップ146にコピーされる。上で
記述されるように、このコピーはステップ140で識別された論理オブジェクト
に現われる順序に従って実行される必要はない。
当バックアップ・セグメントが、抽象ブロック・セットを保持している媒体にコ
ピーされた後、メタデータは更新されてもよい。これはメタデータのこの形式に
対して(であって、図13の133に示された形式に対してではない)。当バッ
クアップ・セグメントが、抽象ブロック・セットを格納している媒体にコピーさ
れるまで、これは生じないかもしれない。なぜなら、その時まで、当物理バック
アップ・セグメントの見かけの順序が知られていないからである。
ムに抽象ブロック・セットを復元するための方法の1つの実施例を示す。 ステップ150で、抽象ブロック・セット用のメタデータが取り出される。こ
れは、図13の134で示されたメタデータのような抽象ブロック・セット用の
マップの形をしていてもよいし、あるいは図13のテーブル133のような、抽
象ブロック・セットに格納された個々のデータ・ブロックと結び付けられた一式
のラベルであってもよい。
レージ装置に、メモリが割り当てられる。論理オブジェクトを受け取るために要
求されるメモリの量およびコンフィギュレーションは、抽象ブロック・セット用
のメタデータから決定されることができる。したがって、メタデータは要求され
るストレージの特性を判定するための十分な情報を含むだろう。例えば、抽象ブ
ロック・セットが固定サイズのブロックの使用を指し示す場合、論理オブジェク
トを格納するために要求されるブロック(固定サイズ)の総数は、エントリ数、
およびメタデータのテーブル数によって決定されることができるが、あるいは場
合によれば、抽象ブロック・セット用のメタデータの一部として別個に格納され
るかもしれない。
めに、新しく割り付けられた物理メモリのために作成される。その結果は図13
の133に示されたような新しいテーブルであってもよい。
ーブルは、抽象ブロック・セットのデータ・ブロックがデータの源であることと
、物理メモリ中に割り付けられたデータ・ブロックとの関連を明示する。再マッ
ピングテーブルの例は、図16を参照して記述される。表の形式で示されるが、
データは他の形式やフォーマットで格納されることができる。
うかが判定される。すべてが復元されたならば、復元ステップ155は完了する
。
り出される。ステップ157で、論理オブジェクトを受け取るためのロケーショ
ン、および新しく割り付けられるメモリが決定される。これは、ステップ153
で作成された再マッピング・テーブルを調べることにより、なされることができ
る。さらに、ステップ156でなされたセグメントの取り出しは、特定の順であ
る必要は全くない。データ・ブロックがランダムな順序で提供される場合でさえ
、再マッピングテーブルは、すべての論理オブジェクトの復元を可能にする。
ーションに復元される。その後、データ・ブロックがすべて適切に復元されるま
で、ステップ154〜158が継続する。
抽象ブロック・セットに対して、どのように定式化されて格納されるかによって
、再マッピング・テーブルを生成する上での多くの変化が可能である。
ロック・セットに供給される。このテーブルは、図13のメタデータ133に相
当する さらに図16は、復元された論理オブジェクトの復元された論理ブロックを受
け取る、割り付けられたメモリのためのダミーのメタデータ161を示す。この
実施例では、そのフォーマットが、異なるアドレス(潜在的に完全に異なるスト
レージ・エレメント上の)が提供されること以外は、メタデータ160のフォー
マットと同じである。したがってメタデータ161の第1行について、第1論理
データ・ブロックが、ADDR−AAに明示された物理ロケーションに格納され
るべきである。
ングテーブル162ができる。再マッピングテーブル162は、抽象ブロック・
セットのデータから物理ロケーションを特定し、そしてその論理データ・ブロッ
クの行き先を特定する。
い。例えば、再マッピング・テーブル162の中でいかなる物理アドレスも明示
しないことは可能だろう。再マッピング・テーブルは、そこから復元される抽象
ブロック・セット中の連続するロケーションを、受信ストレージ・エレメント上
の物理アドレスか連続するロケーションへ、単にマッピングすることができるだ
ろう。
そこからそしてそこへ復元される物理メモリにおける範囲に対応してもよい。物理バックアップ・セグメントの細分度 図13〜16に関しての説明では、バックアップ、コピー、そして復元がデー
タ・ブロック・レベルで実行されるものとして仮定された。したがって、物理バ
ックアップ・セグメントは、データ・ブロックのサイズと大きさで一致していた
。これらは論理オブジェクトの一部であるデータ・ブロックであり、これらのデ
ータ・ブロックだけが、バックアップのためにコピーされ、そして復元された。
の細分度に一致している必要はない。例えば、1つのトラックが多くの物理デー
タ・ブロックを格納してもよい。いくつかの実例では、1つのトラック内のデー
タ・ブロックのすべてが、必ず同じ論理オブジェクトの一部だとは限らない。し
たがって、4つのデータ・ブロックを格納する1つのトラックにおいて、それら
のデータ・ブロックの2つだけが、論理オブジェクトの一部であって、他の2つ
のデータ・ブロックは使用されていないか、異なる論理オブジェクトの一部であ
るかもしれない。しかしながら、論理オブジェクト中のデータのバックアップは
、物理データ・ブロック・レベルではなく、トラック・レベルで実行されてもよ
い。その結果、論理オブジェクトの一部ではない、いくつかのデータ・ブロック
を含む抽象ブロック・セットができるだろう。
ラックのサイズと一致する。論理オブジェクトのデータを格納する、実際の物理
データ・ブロックはもっと小さく、例えば、1つのトラックの物理バックアップ
・セグメント当たり、4つのデータ・ブロックである。
(ここではトラック)の概念を示す。図17の例では、論理オブジェクト170
が、トラックを持つ物理装置上に格納されている。各トラックは3つまでのデー
タ・ブロックを保持する(この例では)。
イルとして見なされている。このファイルは、論理オブジェクト170内の垂直
のバーとして図17に示される多くの論理データ・ブロックに分割されてもよい
。
の論理データ・ブロックの各々の中に、そのデータを保持する。ファイルシステ
ム・イメージ171の中で示されるように、ファイルシステム・レベルでの論理
データ・ブロックの順序は、論理オブジェクト170内でのそれらの見かけの順
序に相当しなくてもよい。上で記述されるように、マッピング処理はファイル・
システム・イメージ171内でのロケーションを充当するために、論理データ・
ブロックをマッピングする。
a〜172bの論理ボリュームにマッピングされてもよい。 その後、論理ボリューム172a〜bは、ハイパー・ボリューム173nおよ
び173oで物理ストレージ装置上に格納される。図17に示されるように、ハ
イパー・ボリュームは物理的に隣接していなくてもよい。(もちろん、上で記述
されるように、物理ストレージ装置に論理オブジェクト170の論理データ・ブ
ロックをマッピングするための他の技術が可能であり、そしてそれは本発明の範
囲内にある。) 一番目のハイパー・ボリューム173nは、7つのトラック173a〜173
gを横断してデータを格納する。これらのトラックは、メモリの隣接するセグメ
ントであってもよいが、その必要はない。
ある物理データ・ブロックを含んでいる(1つのトラック当たりに、3つのデー
タ・ブロックだけが格納されるという仮定が与えられている)。しかしながら、
トラック173dは、論理オブジェクト170の一部である1つのデータ・ブロ
ックだけを含んでおり、トラック173dの中の他のデータ・ブロックは、未使
用であるか、異なる論理オブジェクトに属するデータを保持しているかのいずれ
かである。さらに、ハイパー・ボリューム173n内のトラックのいくつか、例
えば、トラック173a、173c、および173fは、論理オブジェクト17
0からのいかなるデータも保持していない。ハイパー・ボリュームl73oは、
同様に、論理オブジェクトからのデータを含むいくつかのトラックと、含まない
いくつかのトラックを保持している。
に選択されるなら、バックアップ処理に関わる物理セグメントは、トラック17
3b、173d、173e、173g、173i、および173kを含むだろう
。これらのトラックは、論理オブジェクトがバックアップされる場合にコピーさ
れる物理バックアップ・セグメント・セット(ここでは、一個の「トラックセッ
ト」)を構築する。図17の例では、物理バックアップ・セグメントの細分度が
トラックによるので、これはトラック・セットと呼ばれてもよい。
トは、トラック174a〜174gを含み、次いでそれは、論理オブジェクト1
70からのデータ・ブロックを含む物理トラック173a〜173mに相当する
だろう。
使用するバックアップ処理は、一般的に図14を参照して記述されたように、進
行することになる。しかしながら、ステップ142での物理バックアップ・セグ
メントの識別は、論理ブロック・エレメントの識別を含むだけでなく、例えば図
17のトラック・セット174a〜174gのような物理バックアップ・セグメ
ント・セットを決定するために、その識別された論理ブロック・エレメントと、
それらの物理データ・ブロック・ロケーションとを使用することも含む。
は、より大きな細分度のセグメント(例えば、トラック上の単なる特定の物理デ
ータ・ブロックではなく、一個のトラック全体)のコピーを伴うだろう。図14
でのように、物理バックアップ・セグメント(例えば、トラック)は、任意の順
でコピーされてもよい。
格納されてもよい。このサイン・トラックは、抽象ブロック・セット用のメタデ
ータを含む。この実施例では、抽象ブロック・セット用のメタデータの明細項目
が、抽象ブロック・セット内の特定データ・ブロックの明細や、論理オブジェク
ト170内でのそれらのロケーションを含んでもよい。
ロック・セット用のメタデータの一例を示す。この例では、各データ・ブロック
のロケーションが明示される。第1列は、例えば、1番、2番、3番、4番デー
タ・ブロックといった論理オブジェクト内のデータ・ブロックの1つの明細項目
である。
る。この例において、その物理アドレスは、物理バックアップ・セグメント内の
どこに当データ・ブロックが位置しているかの明細を含む。例えば、この情報は
物理バックアップ・セグメント内のオフセットとして含まれていてもよい。した
がってdd:cccc:h:オフセットというアドレスは、物理バックアップ・
セグメントの明細(dd:cccc:h)を含み、この例において、それはその
物理バックアップ・セグメント(トラック)内のトラックとロケーションおよび
オフセットを特定する。例えば、メタデータ180の第1行は論理オブジェクト
中の一番目の論理データ・ブロックに相当する。さらにそれは、特定された物理
バックアップ・セグメント・アドレスの一番目のデータ・ブロックとして、例え
ば、ただ0という物理バックアップ・セグメント(ここではトラック)の始めか
らのオフセットとしてたまたま現われる。メタデータ180の第2行は同じアド
レスを特定するが、1のオフセットを持つ。それは、論理オブジェクトの一番目
の論理データ・ブロックに対応するデータ・ブロックのすぐ後に続くその物理バ
ックアップ・セグメント(トラック)に現われるデータ・ブロックである。
2行)を含むトラックが、トラック内に追加の場所を持つが、そのトラックのそ
れらの追加のデータ・ブロックは論理オブジェクトの一部でないということが仮
定されてもよい。従って、トラックのその部分に対応する論理データ・ブロック
を特定する、メタデータ・テーブル180の中にはいかなるエントリもない。(
代案となる実施例では、もちろん、トラックのその部分がこの抽象ブロック・セ
ットにおいて未使用であることを示すエントリがなされることができるだろう。
) 図13を参照して上で記述されたように、メタデータを格納するための他の多
くの形式およびフォーマットが適用されてもよい。
持つ抽象ブロック・セットからの復元(あるいはコピー)は、図15を参照して
概ね上で記述されたように、進行してもよい。しかしながら、ステップ157で
、バックアップ・セグメント内の論理データ・ブロックのロケーションが、その
バックアップ・セグメントのいくらかの部分が省略されてもよいかどうかを判定
することを含めて、識別される。ステップ158で、論理オブジェクトの中で現
実に使用されるデータ・ブロックだけが復元される。
バックアップ・セグメント・サイズがデータ・ブロックと同じである場合より多
くのメモリの転送を要求することになり、いくつかの未使用のデータ・ブロック
が、コピーかバックアップ処理の一部として含まれる。
ある。例えば、コピー処理でのオーバーヘッドがより小さく押さえられるかもし
れない。それはコピーに対して、より少数のセグメントを特定するだけでよいか
らである。さらに、他の資源が保護されるかもしれない。例えば、コピーされる
べき物理バックアップ・セグメントを識別する情報の格納に、需要の高いメモリ
が使用される場合、そのようなメモリがより少ししか要求されなくて済む。コピ
ーまたはバックアップ処理の間に、論理オブジェクトの物理データ・ブロックの
更新が中止される場合、データ・ブロック・レベルではなく物理バックアップ・
セグメント・レベルで更新を中止することができ、オーバーヘッドを再度減らす
ことになる。いくつかのシステムでは、このことが、更新回避の複雑さを軽減さ
せることができる。データ・ブロック・サイズと異なる物理バックアップ細分度
を使用する本発明のいくつかの実施例は、それが実行される状況およびシステム
に依存して、これらの利点のうちのいくつかあるいはすべてが達成されるかもし
れない。これらの利点のいずれも、添付される特許請求の範囲によって定義され
る本発明の範囲を制限するものではない。同時コピーあるいはスナップショット・ファシリティ 図12を参照して上で記述されたように、本発明の1つ以上の側面を具体化す
るあるシステムが、時間の特定された一点での論理オブジェクトのコピーまたは
バックアップを可能にするだろう。これを行うために、論理オブジェクトへの更
新が、コピーかバックアップ処理の間に中止される必要がある。バックアップ処
理が完全になるまでオフ・ラインで論理オブジェクトを使用するアプリケーショ
ンを採用することを含めて、このことを実行するための多くの方法がある。本発
明のある実施例があれやこれやの技術を使用する一方で、バックアップ中にプロ
セスを継続できることは都合がよいだろう。
ックへの更新を止めている間にバックアップを実行する方法の1つの実施例を示
す。
ているシステム)が静止される。システムを静止する少なくとも2つの方法があ
る。一つの方法は、アプリケーションをオフ・ラインにし、論理オブジェクトを
オフ・ラインで更新することである。これは関連する論理オブジェクトへのそれ
以上の更新(あるいは読み取り)を阻止する。アプリケーションをオフ・ライン
にすることは、時間およびシステム有効性の損失をまねくことになるので、望ま
しいとは言えない。
ドにアプリケーションを置くことである。例えば、アプリケーションがOrac
leデータベースを使用している場合、データベースへの書き込みは、物理スト
レージ・システムに実際にデータを書き込むのではなく、やり直しログに格納さ
れることができる。アプリケーションがオン・ライン・モードに戻される時、や
り直しログに格納されている論理オブジェクトへの更新が、論理オブジェクトの
その時の最新コピーに適用されることになるだろう。
アップ・セグメントは、コピー用の印(マーク)が付けられる。これは多くの方
法で行われてもよい。例えば、システム内の可能性のある各物理バックアップ・
セグメントに、あるビットが結び付けられてもよい。対応する物理バックアップ
・セグメントがコピーされる論理オブジェクトの一部であるなら、そのビットが
「1」にセットされてもよい。もちろん、コピー中の抽象ブロック・セットの一
部である物理バックアップ・セグメントを識別する方法が、使用されてもよい。
単なる一例として、物理バックアップ・セグメントのリストが管理されてもよい
だろう。
テムの例を示す。図20の例では、物理バックアップ・セグメントのサイズは、
縦列28bのような物理メモリ28を持つ1つのトラックである。論理オブジェ
クト27が物理メモリ28を横断して格納される。一連のビット29は、物理メ
モリ28のトラックと結び付けられる。論理オブジェクトのトラック・セットの
一部であるこれらのトラック(物理バックアップ・セグメント)に対して、1が
セットされる。このようにして、ビット・セット29の2番目のビットは、トラ
ック28bが論理オブジェクト27のトラック・セットに含まれているという事
実を反映して、1にセットされている。もし物理バックアップ・セグメント細分
度が、1つのデータ・ブロックであったならば、ビットは、オバーヘッドが高く
なるが、各データ・ブロックに結び付けられたであろう。
ティブな状態に戻されてもよい。例えばこれが、アプリケーションをオフ・ライ
ン・モードからオンライン・モードへ戻すステップを引き起こしてもよい。アプ
リケーションがオンライン・バックアップ・モードに置かれたなら、やり直しロ
グの内のいかなるエレメントも、論理オブジェクトの更新に適用されてよい。
理バックアップ・セグメントに書き込もうとする試みは、瞬間的に止まるだろう
。そのセグメントは、書き込みがなされる前に、例えば下に記述される例証とな
る実施例に従って、コピーされるかバックアップされる。
セグメントに含まれる物理バックアップ・セグメント上にヒットがあるかどうか
が判定される。もしあるならば、そのセグメントは、順番を変えて、更新がなさ
れる前にコピーがなされる。セグメントがコピーされた後、そのセグメントのマ
ークが外されてよく、それ以降の更新がそのセグメントに対して許可されてよい
。その後、抽象ブロック・セットに含まれる物理バックアップ・セグメントへの
さらなる(書き込みの試み)ヒットがある場合、ステップ194での処理が継続
するだろう。
あるいはテープのような受入れ第2次ストレージ・エレメント)に対して直接な
されてもよいし、抽象ブロック・セットのターゲットとなる目標に対して後でコ
ピーを行うキャッシュに対して、コピーがなされてもよい。
ト上に未処理のヒットがすべて無くなると、ステップ196での処理が継続して
もよい。このステップで、物理バックアップ・セグメントがすべてコピーされた
かどうかが判定される。すべてコピーされたなら、抽象ブロック・セットの構成
が完了し、処理はステップ197で終了してよい。
クアップ・セグメントがステップ198でコピーされてよい。物理バックアップ
・セグメントが任意の順に含まれることを可能にする、抽象ブロック・セットが
使用される場合、次のセグメントの選択は、順序と無関係に、次に利用可能なセ
グメントがどれであるかに注目してよい。
い。従って、他の物理バックアップ・セグメントに関わるバックアップ処理が継
続中であっても、セグメントがコピーされた後は、そのセグメントに生じるいか
なる書き込みも実行されてよい。
い状況で、論理オブジェクトへの書き込みと一致しない、ある書き込みが、物理
バックアップ・セグメントに生じるかもしれない。例えば、バックアップ中であ
る論理オブジェクトの中にある1つの物理データ・ブロックと、他の論理オブジ
ェクトに属する他の3つの物理データ・ブロックとを持つ、物理バックアップ・
セグメントを考えてみる。たとえバックアップ中である論理オブジェクトが更新
されていなくても、異なる論理オブジェクトに対応する物理データ・ブロックの
うちの1つへの書き込みが、物理データ・セグメントのバックアップを誘因する
ことになるだろう。
クトの一部である物理データ・ブロックへのものであるかどうかを判定するため
に、印のある物理バックアップ・セグメントへの各書き込みを検査することであ
る。この方法が本発明のいくつかの実施例の中で使用されてもよいけれども、一
方でそれは物理バックアップ・セグメントへの書き込み時に、重いオーバーヘッ
ドというペナルティを負うことになる。
ト内の物理データ・ブロックに対して生じようが、あるいは異なる論理オブジェ
クト内の物理データ・ブロックに対して生じようが、その物理バックアップ・セ
グメントが同じように扱われる。この代案にかかるオーバーヘッドは、特に、物
理バックアップ・セグメントが任意の順で転送されることを可能にする抽象ブロ
ック・セット内に、コピーされる物理バックアップ・セグメントが格納されてい
るシステム中で、その代案が実施されるならば、大きくないかもしれない。
の部分への更新をマークし止めること、たとえば、物理バックアップ・セグメン
トのサイズとしてディスク上のトラックを使用し、さらに格納された論理オブジ
ェクトへの時期尚早の更新をマークし止めることが最も容易だろう。他の代案が
実装されてもよい。単なる一例として、ディスク・システムでは、物理バックア
ップ・セグメントとしてトラックを使用することができるだろうが、更新の予防
はデータ・ブロック・レベル(トラック・レベルではなく)でマークされ追跡さ
れるだろう。差分バックアップ 図5および図6に似たシステムは、従来通り、ユーザによって指定される論理構
成あるいはエレメント(論理オブジェクト)全体をバックアップする。例えば、
ユーザは、バックアップされるパーティションを指定してもよい。これが実行さ
れると、全パーティションがバックアップ・ストレージ・システムにコピーされ
る。同様に、ユーザはバックアップされるデータベースかファイルを指定しても
よい。この場合、全データベースかファイルがバックアップ・ストレージ・シス
テムにコピーされる。
大きなファイルが、一時点でバックアップされるかもしれない。それから、別の
バックアップが後で実行されるかもしれない。ファイルのほとんどが、その2回
のバックアップ間で変更されていなかったかもしれない。したがって、完全なフ
ァイルの新たなバックアップを生成することは、不経済であるかもしれない。
差分バックアップは、コンピュータ・システムの操作中に変更されたものに基づ
いて、論理オブジェクトの部分だけをバックアップすることである。
ックアップは、論理構成の完全なバックアップである。例えば、ファイルのレベ
ル0バックアップは、ファイル全体をバックアップすることである。(仮想)パ
ーティションのレベル0バックアップは、このパーティション全体をバックアッ
プすることである。したがって、レベル0バックアップは、それ以上の情報のな
い論理オブジェクトを復元するために使用されることができる。
変化を追跡する。例えば、図2Bを参照して、1つでも変更されていればそのデ
ータを含むセグメントが追跡されてもよい。セグメント1、3、および5が変更
されたデータを含んでいる場合、対応するビットあるいは他のレコードが、これ
らのセグメントが変わった(かつ、他のものではない)ことを指し示すようにさ
せることができるだろう。下でもっと完全に記述されるが、セグメントは、論理
レベルの情報に基づくのではなく、データがどう物理的に格納されているか(例
えば、ストレージ・ブロックによって)によって、定義されてもよいし、また抽
象ブロック・セットの物理バックアップ・セグメントの細分度、あるいは更新を
防ぐためにマークされる物理セグメントの細分度に対応してもよい(しかし必要
はない)。
ァイル全体ではなく、変更されたデータ・セグメントだけをバックアップするこ
とによって、バックアップの生成が非常に迅速に実行されるかもしれない。ただ
変更されたデータ・セグメントのレコードだけを使用して、ファイルを格納し復
元する方法の1つの実施例が下に説明される。このバックアップは「差分バック
アップ」と呼ばれてもよい、なぜなら、例えば、変更されなかったいくつかのデ
ータ・セグメントはバックアップされないといったように、論理データ・ブロッ
クのすべてより少ない部分がバックアップされるからである。
判定される。生成されるべきでないならば、システムは、ステップ472で、最
後のレベル0バックアップからの変更をトラッキングし続ける。したがってこの
実施例の中で、ステップ474で生成される差分バックアップは、最後の差分バ
ックアップからではなく、最後のレベル0バックアップから変更されたデータを
常時記録する。代案となる実施例は、最後の差分バックアップからの変更をトラ
ッキング(追跡)することである。
変更されたデータのトラッキングがリセットされる。例えば、これは、下で記述
されるように、データ・セグメントと結び付いた「変更ビット」のリセットによ
り実行されてもよい。これが実行される時、変更ビットがリセットされ(そして
レベル0バックアップが実行されている)ている間に、データが変更されないこ
とを保証するために、システムはオフ・ラインか、バックアップ・モードに置か
れてもよい。新しいレベル0バックアップが実行される時、将来の変更が、初期
のものからではなく、そのレベル0バックアップからトラッキングされるだろう
。
データ・セグメントをバックアップするステップ474の後に実行されてもよい
。この場合、それぞれの差分バックアップは、最後の差分バックアップからの変
更だけをトラッキングする。これが終わると、下で説明されるように、データを
復元するために、興味のある時に実行された単に1つの差分バックアップではな
く、多数の差分バックアップ・ファイルが検査される必要があるかもしれない。
もよい。例えば、任意の順で格納された物理バックアップ・セグメントを使用し
て、抽象ブロック・セットが、バックアップのレベルとしてのメタデータと一緒
に、作成されてもよい。
論理レベルでは、クライアント50が、変更されたデータを含んでいるセグメン
トをトラッキングしてもよい。物理レベルでは、ストレージ・システム54が、
データのどのセグメントが変更されたかをトラッキングしてもよい。いずれの場
合も、データのセグメントは、論理レベルで決定され、論理構成と結び付いたデ
ータのユニット(例えば、パーティション内のファイル)ではなく、ストレージ
・システム上に格納されるデータの物理セグメントに対応するかもしれない。
トは、512バイトのブロックであってもよい。別の実施例では、物理セグメン
トの細分度が、使用される物理ストレージ装置(特に物理ストレージ装置がディ
スクドライブである場合に)の1トラックに格納されるデータ量であってもよい
。この大きさは、適用されているオペレーティング・システムにデータを格納す
るための特定のフォーマットに依存するかもしれない。例えば、固定ブロック・
アーキテクチャ環境では、トラックは32キロバイト(64SCSIブロック)
かもしれない。count−key−data(CKD)システムを実装してい
るIBMメインフレーム上では、セグメント・サイズは1つのCKDトラックの
サイズであるかもしれない。上記のように、変更が記録される物理セグメントの
細分度は、物理バックアップ・セグメントのサイズ、あるいはコピーかバックア
ップ処理の間に更新が止められる細分度に一致してもよいが、必要ではない。し
かしながら、多くの場合、例えばシステム全体の細分度としてディスク上の1物
理トラックを使用するように、これらの機能の各々に対して同じ細分度を使用す
ることが最も効率的だろう。
れてもよい。したがって、物理セグメントが物理ストレージ装置に書き込まれる
場合は常に、セグメントが変更されたという事実が記録されることができる。こ
れは、各物理セグメントと結び付けられた単一ビットを用いて、実行されてもよ
い。システムが初期化される場合、ビットはすべて0(例えば)にセットされる
。物理セグメントが変更される(あるいは書き込まれる)場合、結び付いたビッ
トがセットされてもよい。
装置204〜206のレベルで追跡されてもよい。データがデータ・セグメント
のうちの1つで変更される場合、ビットが、そのセグメントが変更されたトラッ
クにセットされてもよい(あるいはいくつかの他のメカニズムが使用されてもよ
い)。データがアプリケーション・レベルでアプリケーション・ファイルの1番
目のセグメント内、例えば203aで変更される場合、実際の物理ストレージ装
置内の208のデータが修正されるだろう。この書き込みが実行された場合、デ
ータ・セグメント208に結び付けられたビット(あるいは他のメカニズム)が
セットされるだろう。
の一例を示す。例えば、物理ストレージ装置201aは、6つの物理セグメント
を含む。結び付けられた物理ビット・マスク412は、変更された各物理セグメ
ントに対して1つのビットをセットする。この例では、セグメント411aおよ
び411bが変更された。従って、物理ビット・マスク412の結び付けられた
ビット412aと412bが、1にセットされた。問い合わせに対して、物理ビ
ット・マスクが読み取られ、クライアント(例えば、図5に示されたシステムの
クライアント50)に出力されてもよい。
がなされようとしているかについての任意の考えを持ってもよい、しかし必要は
ない。この実施例で、物理ストレージ装置は、適用されているデータのセグメン
ト(例えば、208)が修正されていることにただ気づいていればよい。
理ビット・マスクや論理ビット・マスクといったビット・マスクを使用している
けれども、他のメカニズム(リストは単に一例である)が使用されてもよい。) 上で記述された実施例では、データ・セグメントへの変更が物理ストレージ・
レベルで追跡される(代案となる実施例では、その変更が、他のいかなるレベル
で追跡されてもよいだろう。例えば、図1を参照しながら示され説明された、ア
プリケーション・レベル、ファイルシステム・レベル、論理ボリューム、あるい
は論理ボリューム・マネージャ・レベル)。
するデータが、論理(例えば、アプリケーション・ファイル)レベルでの変更に
対応するよう変換される。その後、差分バックアップは論理レベルでデータを格
納する。
法を示す。この実施例では、ビット・マスク412、413および414が、そ
れぞれ実際のストレージ装置204〜206と結び付けられる。
る物理ビット・マスクが0から1へ変更される。従って、いかなる時でも、物理
ビット・マスクは、最後のバックアップ以来、変更されたデータのすべてを示す
。上で記述されるように、実際の物理ストレージ装置204〜206は、アプリ
ケーション・レベルでこれが論理オブジェクトにどう対応しているのか知らなく
てもよい。本当に、実際の物理ストレージ装置は、どのデータ・セグメントが互
いに結び付いているかを判断する方法を持たないかもしれない。図22に示され
るように、この実施例では、データ・セグメント411a〜411dが変更され
た。従って、ビット・マスク412、413および414中の対応するビット4
12a、412b、412c、412dが1にセットされた。(実際の物理スト
レージ装置中の他のデータ・セグメントがさらに変更されたかもしれないが、図
22では示されていない) 論理ビット・マスク410が構築されてもよく、それはアプリケーション・レ
ベル・ファイル内のどのデータ・セグメントが修正されたかを示す。したがって
、論理ビット・マスク410は、対応するデータ・セグメント411a〜411
dが変更されたことを示すエントリ410a〜410dを含んでよい。(代案と
なる実施例では、たとえセグメント・サイズが、ブロックかトラック・サイズの
ような物理ストレージ量と一致していても、セグメントの変更が論理レベルで追
跡されてよい。) 論理ビット・マスク410は、マッピング202を使用して構築されることが
できる。特に、マッピング202は、アプリケーション・レベル・オブジェクト
を実際の物理ストレージ中のデータ・ブロックのグループに変換してもよい(ア
プリケーション・レベルのファイルを物理ストレージに格納するために、まず第
1にこのことがなされる必要があるため)。したがって、マッピング202が、
アプリケーション・レベルのデータを物理ストレージ装置にマッピングするため
に、同じメカニズムを用いて実行されてもよい(例えば、図1のレベル10、1
2、14および16を通して)。そうして、実際の物理ストレージ上のこれらの
データ・セグメントと結び付けられた物理ビット・マスクが検査されてもよい。
論理ビット・マスクは、そのデータ・セグメントが変更されたことを実際の物理
ストレージ装置が単に指し示す、論理ビット・マスクの各エントリを1にセット
することにより構築されることができる。
実施例を示す。この実施例では、実際の物理ストレージ装置中の影響を受けたメ
モリが、ステップ231で、まず静止される。メモリを静止させることによって
、アプリケーション・レベルのファイル内のいかなる追加データも修正されない
ということが保証される。静止は、以前に一般的に説明したように、例えばアプ
リケーションをオフラインにし、又はアプリケーションをオンライン・バックア
ップ・モードにすることで実行される。
象であるかを決定するために、論理対物理マッピングが行われる。ステップ23
2は、以前に一般的に説明したように実行される。即ち、アプリケーション、フ
ァイル・システム及び論理ボリューム・マネージャ(実在するものと、もし有れ
ば付加的なマッピング・レベル)を用いて、アプリケーション・ファイル中の全
データ・セグメントを物理記憶上へマップする。上述のように、これはオブジェ
クトを実物理記憶までマップする。他の実施例においては、付加的なレベルのマ
ッピングが、データを記憶している実物理記憶に達する前に生ずる。例えば、上
述のSymmetrix製品では、3つのボリューム記憶装置において実施され
得る。このSymmetrix製品は、データベースをこの3つのボリューム・
セット上で変更しなければならない。一方、Symmetrix内にデータが実
際に物理的に記憶される方法は、アプリケーション又はオペレーティング・シス
テム・レベルに与えられた3つのボリューム・セットに対応しない。従って、デ
ータ・セグメント及びビット・マスクに対する付加的なレベルのマッピングが、
記憶装置内で実行される。
セグメントのサイズのような異なる粒状性のサイズに基づいている。例えば、物
理データ・ブロック・サイズが全トラックより小さいときは、変更データは物理
トラックに対応して追跡され得る。
メントが識別される。これは、物理記憶装置に関連する物理ビット・マスクを検
査することによってなされる。適切な論理オブジェクト内の物理データ・ブロッ
クを含むアプリケーション内の物理バックアップ・セグメントに対応する、物理
ビット・マスク内の変更されたデータをマークしている任意のエントリーは、変
更されたかも知れないデータに対応している。ステップ232において、図22
の論理ビット・マスク410のような論理ビット・マスクが構成される。
ップは変更されたデータを含む物理バックアップ・セグメントのみのコピーを含
む。1つの実施例では、上述の抽象ブロック・セットに関して、この抽象ブロッ
ク・セットは任意の順序で物理バックアップ・セグメントを記録していてよい。
メタ・データも記憶される。このメタ・データは、バックアップ又はコピー中の
論理オブジェクト内の差分抽象ブロック・セット内に記憶された物理データ・ブ
ロックの適正な位置を識別するために十分な情報を記録する。
、システムは実物理記憶装置上の物理データ・ブロックの更新を続けることを許
される。
アップされたデータ・セグメントに対応するビットが、ゼロにリセットされる。
これは、最後の差分バックアップに関して差分バックアップが行われる場合にの
み実行される。さもなければ、ビットは真の(又は後述のマージ)レベル・ゼロ
・バックアップの構成後にのみリセットされる。
論理オブジェクト240は、5つの物理データ・ブロックを含む。(簡単のため
に、物理バックアップ・セグメントと物理データ・ブロック・サイズは図24と
同じとする。しかしながら、上述のように、物理バックアップ・セグメント・サ
イズは、物理データ・ブロックより大きくてもよい。) 時間的に以前において、抽象ブロック・セット242が形成されている。上述
のように、抽象ブロック・セットは、論理オブジェクト240の論理データ・ブ
ロックのそれぞれを記憶しているが、順序は任意である。抽象ブロック・セット
242は、論理オブジェクト内のデータ・ブロックの位置を特定するメタ・デー
タを含み得る。
ータに追加の変更があった。この例においては、論理ビット・マスク241が、
これらの変更を反映している。特に、論理ビット・マスク241は、論理オブジ
ェクト240内の2番目と最後のデータ・ブロックが変更されたことを示してい
る。
5番目)を記憶している。上述のように、これらは任意の順序で記憶されている
。差分抽象ブロック・セットは、その差分抽象ブロック・セットに対するメタ・
データを記憶している。図24の例では、このメタ・データは、完全な抽象ブロ
ック・セット242に対するメタ・データと同じ一般的な形式である。しかしな
がら、このメタ・データは、最近のバックアップ以後どの論理ブロックが変更さ
れたか(再度、この例では2番目と5番目)を特定する拡張カラムを含む。
論理オブジェクトを復元するためには、これら2つが組合せ即ちマージされる。
実際、1つの抽象ブロック・セットと1つ以上のサブ抽象ブロック・セットが任
意の時刻にオフラインでマージされ得る。これは、サブの抽象ブロック・セット
が形成された時点の論理オブジェクトの状態を反映した、合成された完全な抽象
ブロック・セットの形成を許す。
全抽象ブロック・セット242の元のデータ・ブロック242a−bは、差分抽
象ブロック・セット243において更新されている。従って、マージされた抽象
ブロック・セット253において、これらのデータ・ブロックは更新された版で
置き換えられている。
おいては、1つ以上の差分抽象ブロック・セットがあり得る。1つ以上の差分抽
象フロック・セットは、例えば(最後の完全バックアップ以後の全変更を反映す
る差分抽象ブロック・セットが生成されるのでなく)最近の差分抽象ブロック・
セットの生成以後の変更を反映した差分抽象ブロック・セットが生成された場合
に存在し得る。もちろん、この方法は単一の差分抽象ブロック・セットと共に動
作することもできる。
れる。もちろん、この選択は、目標時間より以前に記録された論理オブジェクト
からなされる(目標時間より以後の差分抽象ブロック・セットは、復元すべきも
のより以後のデータを反映している)。ステップ261において、マージされた
抽象ブロック・セット内に無い全ての論理データ・ブロックが、マージされた抽
象ブロック・セットに追加される。
トは、差分抽象ブロック・セット243である。マージされた抽象ブロック・セ
ット内にはまだブロックが無いので、差分抽象ブロック・セット243内の2つ
のデータ・ブロックがマージされた抽象ブロック・セット253に追加される。
これは最初の2つのデータ・ブロック253a−bに対応する。
れたか決定される。まだなら、プロセスはステップ260へ続く。 図25の例に戻ると、選択される次の抽象ブロック・セットは、完全抽象ブロ
ック・セット242である。ステップ261において、マージされたLBO内に
既に有ったこれらの論理データ・ブロックが追加される。これは、242a及び
242bを除くデータ・ブロックの各々に対応する。
プ263へ続く。ステップ263において、マージされた抽象ブロック・セット
に対するメタ・データが生成される。図25及び図26の例を用いれば、メタ・
データは同じ形式であり得る。即ち論理ブロック要素の物理アドレスは変更され
ない。従って、メタ・データは同一である。メタ・データを生成する他の実施例
では、メタ・データ・テーブルが更新されその形式に対応される。
トと同様にコピー及び復元に用いられ得る。1次から2次記憶ノードへの転送、単一の2次記憶ノードの例 上述のように、図11A及び図11Bに関して、記憶システムの1側面は、デ
ータの1次記憶要素又はノードから2次記憶要素又はノードへの転送を含む。
ードへ転送するのに特に有利な機構の例を示す。図27の実施例及び構成要素の
例は、(これらの発明に限定する意図では無いが)上述の他の発明の文脈におい
ても、それらの発明と独立に実装されたシステムに対して有用であるのと同様に
有用である。
trix記憶システムであってよい。このようなシステムにおいては、ホスト・
アダプタ270aがホストとの通信用に提供されている。ディスク・アダプタが
ディスクとのインターフェースように提供され得る。リモート・アダプタ270
cが、SCSIリンク、ESCONリンク、ファイバー・チャンネル、交換ネッ
トワーク又は他の通信チャンネルのいずれかを介する、リモート装置との通信を
扱う。加えて、キャッシュ270bが送受信データのキャッシュ用に提供され得
る。
ドは複数のデータ移動要素271a、271b、271e及び271fを有する
。この実施例において、データ移動要素は、フロント・エンド及びバック・エン
ドの対に構成されている。例えば、データ・ムーバー271aは、フロント・エ
ンド・データ・ムーバーであり、主として1次記憶ノードからのデータを受け取
る責任がある。フロント・エンド・データ・ムーバー271aは、バック・エン
ド・データ・ムーバー271eと対になる。バック・エンド・データ・ムーバー
は、データを2次記憶ノードからバックアップ媒体に移動する責任がある。
ト・エンド・データ・ムーバーとバック・エンド・データ・ムーバーの対がある
。この例では271a−271eと271b−271fの2対が示されている。
る(他の実施例では他のバックアップ媒体を用い得る)。テープ・ライブラリは
、複数のテープ・ドライブ272a−dを含み、それらの各々はテープからデー
タを読み書きできる(また、例えばSCSIアダプタのような適当な通信アダプ
タを含み得る)。テープ・ライブラリ272は、テープライブラリ272gから
テープを選択しそれらのテープをドライバ272a−272dへ挿入し得るロボ
ット271fを含むこともできる。ロボット・インターフェース272cが、選
択プロセスを制御する。
ロント・エンド・データ・ムーバー(例えば271a)から受け取ったデータを
、バック・エンド・データ・ムーバー(例えば271e)によってテープに書き
込む前にバッファしたり、逆に復元中にデータを(バック・エンド・データ・ム
ーバー271eによって)内部記憶装置271cに置き(フロント・エンド・デ
ータ・ムーバー271aによって)1次記憶ノードへ送る事によってバッファす
るための、内部記憶装置271cを含み得る。
中にはデータを1次記憶ノードからテープ・ライブラリへ転送し、復元中にはそ
の逆に転送するようにデータ・ムーバーに実行させるソフトウエアが走っている
インテル・ベースのパーソナル・コンピュータでよい。
バー271aとバック・エンド・データ・ムーバー271eのように対に構成さ
れている。データ・ムーバーの各対は1つ以上の仮想回線又はストリームを定義
するために用い得る。
意のものを用いて1次記憶ノード270へ接続される。例えば、図27の例では
、2本のESCONケーブルが用いて、各フロント・エンド・データ・ムーバー
と単一の1次記憶ノード(例えばSymmetrix記憶装置)のリモート・ア
ダプタのポートが接続されている。
SCSIケーブルを用いてテープ・ライブラリ装置272に接続されている。こ
の例においては、各SCSI接続は、テープ・ライブラリ272の単一の読み書
きドライブ272a−272dに延びている。もちろんSCSI接続は、デイジ
ーチェインにでき、1つ以上のドライブを各バック・エンド・データ・ムーバー
のポートへ接続することもできる。他のリンクや交換ネットワークを含む他の接
続を用いることもできる。
ッシュ・ディスク・アレイであってよい。従って、Symmetrix製品は、
フロント・エンドからバック・エンドへのデータの移動のための内部キャッシュ
・メモリーとして含まれ得る。内部メモリー装置271cは、内部記憶装置27
1cのローカル制御用のラップトップ・パーソナル・コンピュータのようなサー
ビス・プロセッサを含む。内部記憶装置はまた、データ・ムーバー271a、2
71b、271e、271fや制御ステーション271g上で走るアプリケーシ
ョン・プログラムやオペレーティング・システムも記憶している。
ング・システムの内の任意のものが走るインテル・マシンである。制御ステーシ
ョン271gはまた、そのローカル操作用のキーボードと画面を含む。
e、271fの動作の制御を行う。制御ステーション271gは、この機能を実
行する制御ソフトウエア271bを含む。コントローラ271bは、システム構
成及びシステム動作の監視にも用いられる。制御ステーション271gは、デー
タベース271iを含む(これは、代替として内部メモリー271cに記憶され
得る)。データベース271iは、実行中の全バックアップ・ストリーム又はセ
ッションに関する情報、テープ・ライブラリ装置内のテープの内容及びバックア
ップ・プロセスとバックアップ媒体を管理するための他の制御情報を記憶する。
2c、272fを操縦し、制御するためのインターフェース271jも含む。 上述のように、1次記憶ノード270は、ホスト接続(例えば、ホスト・アダ
プタ270aに接続されたホスト・コンピュータ)と2次記憶ノードとの間のイ
ンターフェースとして用いられる。これらの実施例において、そして記憶管理ア
プリケーションが主としてホスト・コンピュータにある場合には、1次記憶ノー
ド270は、ホスト・コンピュータから2次記憶ノード271への命令の経路と
して用いられる。そのような命令は、テープのマウント及びマウント解除、テー
プ・ヘッダ及びトレーラーの読み書きを指示する命令や他の命令を含む。
その代わりに1次記憶ノード270は、形式検査のような、これらの命令に基づ
くいくらかの機能を実行することもできる。
1次記憶ノード270とテープ・ライブラリ272の間に仮想チャンネルを確立
することによって実行できる。上述のように、これは1次記憶ノード270と2
次記憶ノード271の間にネットワークを介する接続を形成することを含む。こ
れは、テープ・ドライブ272a及び適切なテープ272gとの接続の確立も含
む。
ードに対する状態遷移図の例を示す。状態280において、バックアップ・スト
リーム・セッション(又は仮想チャンネル)が記憶管理アプリケーション(例え
ばホスト・コンピュータ上の)によって要求される。仮想チャンネルの確立には
、適当なフロント・エンド及びバック・エンド・データ・ムーバー対、例えばフ
ロント・エンド・データ・ムーバー271aとバック・エンド・データ・ムーバ
ー271eの選択を含む。
ある。結果として、2次記憶ノード271はテープの仮想チャンネル開始状態2
81になる。この遷移は、当分野で知られたものと同様の技術を用いて、適当な
テープをマウントする事を含む。テープ状態281のはじめに、テープ管理プロ
セスの一部として、テープ・ヘッダ及びトレーラーが読み書きされる。
ド内の少なくとも適切なデータ・ムーバー)は、仮想チャンネル書込み状態28
2に入る。この状態において、テープへの1つ以上の抽象ブロック・セット又は
抽象ブロック・セットの部分の書込みのような、バックアップの記録部分が実行
される。
仮想チャンネル・テープ終端状態284へ入る。この状態において、適切なカタ
ログ情報が読み出され、適切なテープ・トレーラーが書き込まれる。テープの終
端(又はデータの最後)に至ると、適切な仮想チャンネルはそのテープのクロー
ズを必要とし、データ・ムーバーと2次記憶ノードを、そのチャンネルが形成さ
れた最初の状態280に戻す。
283に入り得る。テープはクローズされ(状態280へ戻り)、エラー記録が
作成され、システム・オペレータに知らされる。
更する適当な命令を発行する責任がある。記憶管理アプリケーションは、ホスト
・コンピュータ、1次記憶ノード、別のネットワーク記憶制御装置又は2次ノー
ド271に存在し得る。
図を示す。状態遷移図は、仮想チャンネルのオープン要求を受け取った状態29
1から始まる。記憶管理アプリケーションは、例えばバックアップ・チャンネル
・ストリームに対してテープ・オープンを要求することによって、テープのオー
プンを扱う。これは結果として、テープの仮想チャンネル開始状態292へ入る
。以前と同様に、これはテープ・ヘッダ及びトレーラーの読み出しと、抽象ブロ
ック・セットを用いるシステムに対して、抽象ブロック・セット・メタ・データ
の読み出しを含み得る。
1を仮想チャンネル読み出し状態293に入れることによって制御され得る。 実際のデータの読み出しは、2次記憶ノード271を仮想チャンネル読み出し
状態293に入れる、テープ読み出し命令を用いることによって制御できる。テ
ープン終わり(又はデータの終わり)又はログアウトにおいて、2次ノードは仮
想チャンネル・テープ終端状態292に戻る。テープはそこでクローズされ、2
次記憶ノード271は仮想チャンネル・オープン状態へ戻る。
ラー状態と同様にエラー状態294に入る。エラーが生ずると、テープはクロー
ズされ、エラーログが記録され、システム・オペレータに知らされる。
システムに記憶されたデータの形式化のための他の機構に対して行われるのと同
様に、記憶管理アプリケーションによって扱われる。2次記憶ノード271の制
御ステーション271gが、制御ステーション・データベース271iを用いて
、適当なテープの識別、マウント及びマウント解除を補助する。
ノード及び/又は2次記憶ノード)を非同期転送状態に置く実施例を構成する。
特に、記憶ドメインのノードは、多くの記憶管理アプリケーション・プロセス(
及びソフトウエア)がホスト・コンピュータ上で実行されていても、ホスト・コ
ンピュータやホスト・ドメイン要素のどれからの制御からも独立にデータが転送
される状態に入る。
制御及び転送の利点を許す。本発明のいくつかの実施例においては、これは特定
のホスト・プラットフォームの従属性を緩和し、ホスト資源を節約する。本発明
のこの側面のいくつかの実施例は、拡張性の増大をもたらし、ホスト構成に対す
るより少ない依存関係でメモリーの増設を許す。データ転送の1実施例 図30は、2次記憶ノード又は他の1次記憶ノードへデータを転送する機能を
有する1次記憶ノードのアーキテクチャの1実施例を示す。この実施例は(他の
ものと同様に)上記の1つ以上の発明を実現するために用いることが出来る。
般的に説明したように、リモート・アダプタ301を含む。1次記憶ノード30
0は、これも図7を参照して一般的に説明したように構成されているディスク・
アダプタ305も含む。
おり、複数のディスクの内の1つがディスク306として図30に示されている
。
出来る。これらの保護ビットは、コピーされるべきトラック即ちそれらがコピー
される前に更新されるべきでないトラックを示すために用いる事が出来る。保護
ビット307は、1実施例においては、ディスク装置306に対するシリンダー
、ヘッダに記憶できる。ディスク装置306は、図22を参照して一般的に説明
した物理ビット・マスク(図示せず)も含むことが出来る。どのトラックが保護
されているかをマークし、記録するための他の機構を用いることも出来る。
ションから、どの物理バックアップ・エレメントが(ここではトラック308a
−eのどれが)バックアップ・プロセスの部分であるかに関する命令を受け取る
。ディスク・アダプタはそこで、バックアップが起動される時に保護ビットを書
き込む。
(例えばトラック308a、308b及び308e)は、そこで1次記憶ノード
300のキャッシュ302内のサイド・ファイル303へコピーされる。こうし
て、サイド・ファイル303は他の記憶ノードへコピーするために指示されたト
ラック308a、308b及び308eを受け取る。従って、サイド・ファイル
はこれらのトラックのコピー303a−cを含む。
03にコピーされた物理バックアップ・セグメントを他のノードへ転送する要求
を入れる。こうして、要求304a−cが、サイド・ファイル303内の物理バ
ックアップ・セグメントに対応して、要求キュー304に入れられる。
コピーを受け取り記憶ノード、例えば2次記憶ノードへ転送する。 サイド・ファイル303に保持されている適切な記憶バックアップ・セグメン
トは、実行中のバックアップ・プロセスの1つ以上のコピーの部分であり得る。
例えば、1つ以上の抽象ブロック・セットが、リモート・アダプタ301に接続
された1つ以上の仮想チャンネルを介してバックアップされているプロセス内に
あり得る。この場合、抽象ブロック・セットに対する適切なメタ・データが、特
定の抽象ブロック・セット及び、コピー又はバックアップ・プロセス用の仮想チ
ャンネルの識別に用い得る。
セットに基づいて物理バックアップ・セグメントを分類する。例えば、上述のフ
ロント・エンド・データ・ムーバーは、トラックに対応しそのトラックに対する
物理アドレスを含む物理バックアップ・セグメントを受け取ることが出来る。フ
ロント・エンド・データ・ムーバーは、(バックアップ中の適切な論理オブジェ
クトに対する物理アドレスの全てを識別している)記憶管理アプリケーションに
よって定式化された抽象ブロック・セットのメタ・データを知っていても良い。
これは、フロント・エンド・データ・ムーバーが、その物理アドレスに基づいて
物理バックアップ・セグメントを分類することを許す。
きる。単なる1例として、物理バックアップ・セグメントは別々のサイド・ファ
イル内に、コピー又はバックアップ中の各抽象ブロック・セット(又は他の構造
)に対してソートされてもよい。加えて、サイド・ファイルを転送用にデータの
セグメントを蓄積するために用いる事が出来る。例えば、サイド・ファイルは、
リモート・アダプタ301を介して2次又は他の記憶ノードへ転送する前に、少
なくとも10メガビットのデータを含むように生成する事が出来る。
10において、保護ビット(図30の307)がコピー中の物理バックアップ・
セグメントに対してマークされる。上述のように、これは1つ以上の論理バック
アップ・オブジェクトに対するビットをマークする事を含む。
、例えば2次記憶ノードへ転送される。こうして、もしメタ・データが図13の
133に示された形式なら、このメタ・データはバックアップ・プロセスを特定
し進める。このメタ・データは、図13の134に示す形式に再定式化するよう
に、論理バックアップ・オブジェクトに合体するためにバックアップ中に再定式
化されても良い(されなくても良い)。いずれにしても、このメタ・データは、
コピー又はバックアップ中の論理オブジェクトに関する適切な物理セグメントを
蓄積し組織化するために、ディスク・アダプタ305、リモート・アダプタ30
1及び/又は受け取り記憶ノードによって利用される。
ァイルへ転送する。これが終了すると、物理バックアップ・セグメントの転送の
要求が、供給キュー内に記録される。上述のように、これは1次記憶ノードのデ
ィスク・アダプタによって実行される。この時点で、ディスク・アダプタ305
は、ディスク装置306の保護ビット307の適切な保護ビットをリセットして
データの更なる更新を許しても良い。
よって、2次記憶ノードに転送するように、他の記憶ノードに転送出来る。これ
は要求キュー304から転送要求を読み出すことによってなされる。
のセグメントに対する適切なエントリーが削除される。もちろんこれは、単に記
憶領域を未使用に割り当てる事で行っても良い。
ータ・フローの1例を示す。この実施例においては、データはまずフロント・エ
ンド処理装置322によって受け取られる。このフロント・エンド処理装置は図
27を参照して一般的に説明したものである。フロント・エンド処理装置322
は、受け取った物理バックアップ・セグメントを内部メモリー323にバックア
ップ中の適切な実体に関するファイルとして記憶する。例えば、もし抽象ブロッ
ク・セットLBO#1がバックアップ中なら、物理セグメントはその抽象ブロッ
ク・セットに関するファイル324に記憶される。1つ以上の抽象ブロック・セ
ットが仮想チャンネルを介して同時に転送中なら、フロント・エンド処理装置は
適切な物理データ・セグメントを適当するファイル、例えば324及び325に
ソートする。
処理装置322は、抽象ブロック・セットのセグメントがテープにコピーする準
備が出来た事をバック・エンド処理装置326に通知する。そこで、バック・エ
ンド・データ・ムーバー326は抽象ブロック・セットのその部分を内部メモリ
ー323からテープ・ライブラリ装置321へコピーする。
・アレーの場合には、物理バックアップ・セグメントは適切なファイル324、
325からバック・エンド・データ・ムーバー326によって後入れ先出し(L
IFO)順にコピーされる。これはデータが内部メモリー323内のディスクか
らでなく、内部メモリー323内のキャッシュからコピーされる機会を増やすた
めに行われる。
時にバックアップされ得る。加えて、抽象ブロック・セットのセグメントは、固
定サイズの部分として書き込まれる。例えば、もし蓄積ファイル324、325
が物理バックアップ・セグメントを限界量(例えば10メガ)まで蓄積したなら
、抽象ブロック・セットは、テープのインターリーブされたセグメントに記憶さ
れる。制御装置及び制御ステーション(271h及び271g)はこの情報のデ
ータベースを維持する事が出来る。加えて、適切な情報がテープの適切なヘッダ
とトレーラーに書き込まれ得る。
報を含むテープの1例を示す。 図33において、テープは先頭部分330と終端部分332を有する。先頭部
分330は、通常のテープ・ヘッダ330a、及び場合によって2次記憶ノード
のための特定のテープ・ヘッダ330bとを含む。テープ・ヘッダ330a、3
30bの後に、テープは、ファイル・マークで分離された、抽象ブロック・セッ
トのインターリーブされたセグメント(メタ・データを含む)338を含む。例
えば、インターリーブされたセグメントは、物理バックアップ・セグメントの一
連のコピー331bを含むレコード331を含む。セグメント・ヘッダ331a
とセグメント・トレーラー331cが、テープの他の部分から抽象ブロック・セ
ットのこの部分を識別し分離している。
ブは、これ及び他の抽象ブロック・セットに対する他の抽象ブロック・セットの
物理バックアップ・セグメント・レコードであり得る。加えて、レコード333
は、抽象ブロック・セット・メタ・データを含むように書き込まれ得る。このメ
タ・データ333aは、上述の形式の内の任意の形式でよく、他の形式でも良い
。セグメント・ヘッダ情報331a及び333aの1部として、例えば各抽象ブ
ロック・セットに一意に割り当てられた抽象ブロック・セット識別子を用いて、
適切な抽象ブロック・セットが識別できる。これは適切なテープ330、332
上のインターリーブされたレコードの識別と調整を可能にする。
様に、サーバー・テープ・トレーラー情報335も書き込まれ得る。テープの終
端には、テープ・カタログ336及びテープの終端をマークする2次記憶装置テ
ープ・トレーラー337が書き込まれ得る。
出し得る。抽象ブロック・セットは、任意の順序で書き込まれたデータ・ブロッ
クを含むので、復元プロセスは、復元中の抽象ブロック・セットの部分を、任意
の順序で効果的に取り出し、書き込む事が出来る。これは、記憶管理アプリケー
ションが、抽象ブロック・セットの部分を含む各テープを識別し、それらのテー
プを1回だけマウントする(そして適切な部分を全て読み出す)ことを許す。も
ちろん、マウントされるべき最初のテープは、復元される抽象ブロック・セット
に対するメタ・データ・レコードを含むテープであろう。このため、メタ・デー
タをそのプロセスの最初に読み出す事を簡単にするために、メタ・データを、そ
のメタ・データを保持するテープ上に書き込まれた抽象ブロック・セットの全て
のセグメントの一端に記録する事が望ましいであろう。これは、データ・ブロッ
クが取り出される順序に独立に復元プロセスを進めるための、上述の適正なマッ
ピング・テーブルを形成する事を許す。
、復元する事は任意の順序で出来る。その結果、2次記憶要素の構成部分として
テープが用いられる時、データの記憶及び取り出しの両方に対してテープを任意
の順序でマウントし、マウント解除する事が出来る。その結果、上述の実施例に
示したように、2次記憶要素の中に1つ以上のテープ・ドライブが有る場合、デ
ータ・ブロックはバックアップ中に書き込み、復元中に読みだし、複数の奴隷部
を用いて並行して用いることが出来る。
においては、メタ・データの更新(ステップ147)は、完全に先行して行われ
る。この例においては、メタ・データは1次記憶要素内で読み出されているデー
タの物理アドレスであり得る。従って、全てのメタ・データは、実際のバックア
ップ・プロセスに先だって決定できる。この場合には、ステップ144、146
及び147は、並行して実行できる。即ち、物理バックアップ・セグメントが全
て識別されメタ・データが決定された(即ちステップ142)後で、データ・ブ
ロックは全て並列に読み出され、複数のテープに並列に書き込まれる。1つの実
施例においては、最後のテープ(ランダムに選択されたであろう)は、そのテー
プの上の抽象ブロック・セットの1部であるデータ・ブロックの全ての最後にメ
タ・データを記憶できる。
50−153に於て、論理オブジェクトの復元用のマッピングが決定される。こ
の復元がテープからのものである場合、抽象ブロック・セットのメタ・データは
先行して取り出され得る。上述のように、これがなされた後、抽象ブロック・セ
ットは任意の順序で復元できる。従って、抽象ブロック・セットも、復元用の複
数のテープ・ドライブを用いて、並列に復元できる。この場合には、ステップ1
54−158は、復元中の抽象ブロック・セットのデータ・ブロックを復元する
ための複数のテープ(又は他の媒体)を用いて並列に実行できる。
転送用の並行経路のそれぞれとして確立されている。例えば、別々の仮想チャン
ネルは、各テープ・ドライブ用に確立される。他の実施例では、単一の仮想チャ
ンネルが確立されているが、その仮想チャンネルに入るチャンネル・データに複
数のテープ・ドライブを許す。これは、テープ・ドライブからデータを読み出す
速度は、2次記憶ノードから1次記憶ノードへデータを転送する能力より遅いの
で、特に効果的である。テープ・ドライブの並列読み出しを許す事は、復元の速
度をデータ転送の能力及びそのデータを受け取る1次記憶要素の能力に近づける
事を許す。
述の多くの実施例の説明をしてきたが、本願発明の多くの側面はより広い応用を
有している。単なる1例であるが、抽象ブロック・セットは、任意のデータ転送
に用い得る。他の例として、2次記憶ノードの応用は、単なるバックアップ及び
復元操作より大きなものであり得る。このような記憶ノードは、階層的な記憶管
理や仮想ディスクの操作及びその他の応用にも用いることができる。
フロッピー(登録商標)・ディスク、コンパクト・ディスク又は他の記憶装置上
のソフトウエアとして実現できる。コンピュータは、開示したプロセスのステッ
プを実行し、又は開示したブロック図と等価な構成を実現する、ワークステーシ
ョン、メインフレーム又はパーソナルコンピュータのような汎用コンピュータで
あり得る。ソフトウエアは、完全なシステム、又は現状のシステムの改良として
、システムが開示した方法を実行するように、ディスケットに含まれ得る。
これらは本願発明の範囲に含まれるものと解釈する。従って、上述の説明は単に
例示のためであって、本願発明の限定を意図するものではない。本願発明の範囲
は請求項の記載によってのみ規定されるものである。
逆のデータ変換の例を示す図。
す図。 図2Bは、論理ファイルを物理記憶システムへマッピングする例を示す図。 図2Cは、論理オブジェクトを物理記憶装置へマッピングする他の例を示す図
。
バックアップ記憶システムの実施例を示す図。
エンタープライズ記憶ドメイン又はネットワークとを有するように構成された、
コンピュータ記憶システムの例を示す図。
エンタープライズ記憶ドメインとを含む、コンピュータ・システムの他の例を示
す図。
を示す図。
憶ドメインを含む、コンピュータ・システムの構成要素のいくつかの例を示す図
。 図11Bは、本発明の実施例による、ホスト・ドメインと記憶ドメインに分割
された、コンピュータ・システムの構成要素の他の実施例を示す図。
プする方法の実施例を示す図。
マッピングし、コピー又はバックアップ用の抽象ブロック・セットを形成する例
を示す図。
復元する方法の実施例を示す図。
論理オブジェクトのメタ・データの2つの形式を再マッピング・テーブルに組み
合わせる例を示す図。
オブジェクトの記憶と、トラック・サイズに対応する物理バックアップ・セグメ
ントを用いる抽象ブロック・セットの形成の例を示す図。
メント粒状性を有する抽象ブロック・セットのメタ・データの実施例を示す図。
ら、論理オブジェクトのバックアップをする方法の実施例を示す図。
ジェクト内の情報の更新の回避を許す、物理バックアップ・セグメントのマーカ
ーを含むシステムの例を示す図。
報に変換する実施例を示す図。
プ実行の例を示す図。
全及び差分論理バックアップ・オブジェクトの形成の例を示す図。
ック・セットを単一の全抽象ブロック・セットに組み合わせる例を示す図。
ク・セットと全抽象ブロック・セットとを組み合わせる方法の実施例を示す図。
ード上のデータをバックアップするためのシステムの例を示す図。
態遷移の実施例を示す図。
の実施例を示す図。
を送るためのシステム内でのデータフローの実施例を示す図。
タフローの実施例を示す図。
の例を示す図。
Claims (25)
- 【請求項1】 ホスト・コンピュータを含むホスト・ドメインと、 前記ホスト・ドメインに接続され、複数の1次記憶装置と、2次記憶装置と、
前記複数の1次記憶ノード及び2次記憶装置に接続された交換ネットワークとを
含む記憶ドメインと、 からなるコンピュータ・システム。 - 【請求項2】 請求項1に記載のシステムにおいて、 更に、前記2次記憶装置に直接接続される付加的な1次記憶装置を含むことを
特徴とする、コンピュータ・システム。 - 【請求項3】 請求項1に記載のシステムにおいて、 前記1次記憶装置の内の少なくとも1つが、キャッシュ化ディスク・アレイで
あることを特徴とする、コンピュータ・システム。 - 【請求項4】 請求項1に記載のシステムにおいて、 前記2次記憶装置が、前記ネットワーク上のデータを並列に送受信するために
前記ネットワークに接続する複数のポートを含むことを特徴とする、コンピュー
タ・システム。 - 【請求項5】 請求項4に記載のシステムにおいて、 前記2次記憶装置が、それぞれ前記ポートに接続する複数のデータ・ムーバー
を含むことを特徴とする、コンピュータ・システム。 - 【請求項6】 請求項1に記載のシステムにおいて、 前記複数のコンピュータが、異種のものであることを特徴とする、コンピュー
タ・システム。 - 【請求項7】 請求項1に記載のシステムにおいて、 更に、前記1次記憶装置の内の1つから前記2次記憶装置へ第1の接続を介し
て直接第1の論理オブジェクトを転送する手段を含むことを特徴とする、コンピ
ュータ・システム。 - 【請求項8】 請求項7に記載のシステムにおいて、 更に、前記1次記憶装置の内の1つから前記2次記憶装置へ第2の接続を介し
て直接第2の論理オブジェクトを転送する手段を含むことを特徴とする、コンピ
ュータ・システム。 - 【請求項9】 請求項1に記載のシステムにおいて、 更に、前記1次記憶装置の内の1つに記憶されている論理オブジェクトから抽
象ブロック・セットを形成する手段を含むことを特徴とする、コンピュータ・シ
ステム。 - 【請求項10】 請求項1に記載のシステムにおいて、 前記2次記憶装置が、テープ・ライブラリ装置を含むことを特徴とする、コン
ピュータ・システム。 - 【請求項11】 異種の複数のホスト・コンピュータと、 それぞれ前記ホスト・コンピュータの内の少なくとも1つと関連する、複数の
1次記憶装置と、 前記複数の1次記憶装置に接続され、前記ホスト・コンピュータのそれぞれか
らバックアップ・データを受け取るように構成されている2次記憶装置と、 からなるコンピュータ・システム。 - 【請求項12】 請求項11に記載のシステムにおいて、 前記1次記憶装置の内の少なくとも1つが、キャッシュ化ディスク・アレイで
あることを特徴とする、コンピュータ・システム。 - 【請求項13】 請求項11に記載のシステムにおいて、 更に、前記1次記憶装置の内の1つに記憶されている論理オブジェクトから抽
象ブロック・セットを形成する手段を含むことを特徴とする、コンピュータ・シ
ステム。 - 【請求項14】 請求項11に記載のシステムにおいて、 前記2次記憶装置が、データを並列に送受信するために複数のポートを含むこ
とを特徴とする、コンピュータ・システム。 - 【請求項15】 請求項14に記載のシステムにおいて、 前記2次記憶装置が、それぞれ前記ポートに接続する複数のデータ・ムーバー
を含むことを特徴とする、コンピュータ・システム。 - 【請求項16】 請求項11に記載のシステムにおいて、 更に、前記1次記憶装置の内の1つから前記2次記憶装置へ第1の接続を介し
て直接第1の論理オブジェクトを転送する手段を含むことを特徴とする、コンピ
ュータ・システム。 - 【請求項17】 請求項16に記載のシステムにおいて、 更に、前記1次記憶装置の内の1つから前記2次記憶装置へ第2の接続を介し
て直接第2の論理オブジェクトを転送する手段を含むことを特徴とする、コンピ
ュータ・システム。 - 【請求項18】 請求項11に記載のシステムにおいて、 前記2次記憶装置が、テープ・ライブラリ装置を含むことを特徴とする、コン
ピュータ・システム。 - 【請求項19】 1次記憶要素から2次記憶要素へデータを転送する方法で
あって、 1次記憶要素の第1のものから2次記憶要素へ、第1の論理オブジェクトを2
次記憶要素へ転送するための第1の接続を自動的に確立するステップと、 前記第1の接続を介して前記1次記憶要素の第1のものから前記2次記憶要素
へ前記第1の論理オブジェクトを直接転送するステップと、 からなるデータ転送方法。 - 【請求項20】 請求項19に記載の方法において、 更に、1次記憶要素の第2のものから2次記憶要素へ、第2の論理オブジェク
トを2次記憶要素へ転送するための第2の接続を自動的に確立するステップと、 前記第2の接続を介して前記1次記憶要素の第2のものから前記2次記憶要素
へ前記第2の論理オブジェクトを直接転送するステップと、 を含むことを特徴とするデータ転送方法。 - 【請求項21】 請求項20、24、25に記載の方法において、 前記第1の論理オブジェクトを転送するステップと、前記第2の論理オブジェ
クトを転送するステップが並行して実行されることを特徴とするデータ転送方法
。 - 【請求項22】 請求項20、24、25に記載の方法において、 前記第1の論理オブジェクトと前記第2の論理オブジェクトが、異種のオペレ
ーティング・システムによって生成されることを特徴とするデータ転送方法。 - 【請求項23】 請求項19に記載の方法において、 前記自動的に確立するステップが、ネットワークを介する経路を確立するステ
ップからなることを特徴とするデータ転送方法。 - 【請求項24】 請求項19に記載の方法において、 前記2次記憶要素が、テープ・ライブラリ装置からなることを特徴とするデー
タ転送方法。 - 【請求項25】 請求項19に記載の方法において、 前記2次記憶要素が複数のデータ・ムーバーからなり、 前記自動的に確立するステップが、前記データ・ムーバーの少なくとも1つを
選択するステップからなることを特徴とするデータ転送方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/224,637 US7107395B1 (en) | 1998-12-31 | 1998-12-31 | Apparatus and methods for operating a computer storage system |
US09/224,637 | 1998-12-31 | ||
PCT/US1999/029499 WO2000041093A2 (en) | 1998-12-31 | 1999-12-13 | Apparatus and method for performing backup from primary storage devices to one secondary storage device over a network |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006241461A Division JP2007048301A (ja) | 1998-12-31 | 2006-09-06 | コンピュータ・ストレージ・システムを操作するための装置および方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003518659A true JP2003518659A (ja) | 2003-06-10 |
Family
ID=22841523
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000592751A Pending JP2003518659A (ja) | 1998-12-31 | 1999-12-13 | コンピュータ・ストレージ・システムを操作するための装置および方法 |
JP2006241461A Pending JP2007048301A (ja) | 1998-12-31 | 2006-09-06 | コンピュータ・ストレージ・システムを操作するための装置および方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006241461A Pending JP2007048301A (ja) | 1998-12-31 | 2006-09-06 | コンピュータ・ストレージ・システムを操作するための装置および方法 |
Country Status (5)
Country | Link |
---|---|
US (2) | US7107395B1 (ja) |
JP (2) | JP2003518659A (ja) |
DE (1) | DE19982999B4 (ja) |
GB (1) | GB2348994B (ja) |
WO (1) | WO2000041093A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006525599A (ja) * | 2003-04-30 | 2006-11-09 | オラクル・インターナショナル・コーポレイション | フラッシュバックデータベース |
WO2013035517A1 (ja) * | 2011-09-07 | 2013-03-14 | 株式会社 オレガ | ファイル管理システム及びファイル管理方法 |
Families Citing this family (169)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6418478B1 (en) | 1997-10-30 | 2002-07-09 | Commvault Systems, Inc. | Pipelined high speed data transfer mechanism |
US7581077B2 (en) | 1997-10-30 | 2009-08-25 | Commvault Systems, Inc. | Method and system for transferring data in a storage operation |
US6654772B1 (en) * | 1999-04-28 | 2003-11-25 | Emc Corporation | Multi-volume extent based file system |
US7035880B1 (en) | 1999-07-14 | 2006-04-25 | Commvault Systems, Inc. | Modular backup and retrieval system used in conjunction with a storage area network |
US7395282B1 (en) | 1999-07-15 | 2008-07-01 | Commvault Systems, Inc. | Hierarchical backup and retrieval system |
US7389311B1 (en) | 1999-07-15 | 2008-06-17 | Commvault Systems, Inc. | Modular backup and retrieval system |
US7734591B1 (en) * | 1999-08-16 | 2010-06-08 | Netapp, Inc. | Coherent device to device data replication |
US6751658B1 (en) * | 1999-10-18 | 2004-06-15 | Apple Computer, Inc. | Providing a reliable operating system for clients of a net-booted environment |
TW454120B (en) * | 1999-11-11 | 2001-09-11 | Miralink Corp | Flexible remote data mirroring |
US6658436B2 (en) | 2000-01-31 | 2003-12-02 | Commvault Systems, Inc. | Logical view and access to data managed by a modular data and storage management system |
US7155481B2 (en) | 2000-01-31 | 2006-12-26 | Commvault Systems, Inc. | Email attachment management in a computer system |
US7003641B2 (en) | 2000-01-31 | 2006-02-21 | Commvault Systems, Inc. | Logical view with granular access to exchange data managed by a modular data and storage management system |
GB2372849B (en) * | 2001-02-28 | 2003-05-07 | 3Com Corp | Method for determining master or slave mode in a storage server subnet |
US8346733B2 (en) | 2006-12-22 | 2013-01-01 | Commvault Systems, Inc. | Systems and methods of media management, such as management of media to and from a media storage library |
US7596586B2 (en) * | 2003-04-03 | 2009-09-29 | Commvault Systems, Inc. | System and method for extended media retention |
US7603518B2 (en) | 2005-12-19 | 2009-10-13 | Commvault Systems, Inc. | System and method for improved media identification in a storage device |
CN1421854A (zh) * | 2001-11-28 | 2003-06-04 | 劲永国际股份有限公司 | 用于硬盘及固态盘上对资料加密保护资料安全性的方法 |
US7143307B1 (en) * | 2002-03-15 | 2006-11-28 | Network Appliance, Inc. | Remote disaster recovery and data migration using virtual appliance migration |
US7165258B1 (en) | 2002-04-22 | 2007-01-16 | Cisco Technology, Inc. | SCSI-based storage area network having a SCSI router that routes traffic between SCSI and IP networks |
US6944789B2 (en) * | 2002-06-11 | 2005-09-13 | Hitachi, Ltd. | Method and apparatus for data backup and recovery |
US7103727B2 (en) | 2002-07-30 | 2006-09-05 | Hitachi, Ltd. | Storage system for multi-site remote copy |
CA2498174C (en) | 2002-09-09 | 2010-04-13 | Commvault Systems, Inc. | Dynamic storage device pooling in a computer system |
WO2004025483A1 (en) | 2002-09-16 | 2004-03-25 | Commvault Systems, Inc. | System and method for optimizing storage operations |
JP2004110367A (ja) * | 2002-09-18 | 2004-04-08 | Hitachi Ltd | 記憶装置システムの制御方法、記憶制御装置、および記憶装置システム |
US7263593B2 (en) | 2002-11-25 | 2007-08-28 | Hitachi, Ltd. | Virtualization controller and data transfer control method |
JP2004220450A (ja) * | 2003-01-16 | 2004-08-05 | Hitachi Ltd | ストレージ装置、その導入方法、及びその導入プログラム |
JP4060197B2 (ja) * | 2003-01-28 | 2008-03-12 | 株式会社リコー | 画像形成装置、制御方法及び該方法を実行するためのプログラムを格納したコンピュータ読み取り可能な記録媒体 |
US7290168B1 (en) | 2003-02-28 | 2007-10-30 | Sun Microsystems, Inc. | Systems and methods for providing a multi-path network switch system |
US7383381B1 (en) | 2003-02-28 | 2008-06-03 | Sun Microsystems, Inc. | Systems and methods for configuring a storage virtualization environment |
US8166128B1 (en) | 2003-02-28 | 2012-04-24 | Oracle America, Inc. | Systems and methods for dynamically updating a virtual volume in a storage virtualization environment |
US7236987B1 (en) | 2003-02-28 | 2007-06-26 | Sun Microsystems Inc. | Systems and methods for providing a storage virtualization environment |
US7526527B1 (en) * | 2003-03-31 | 2009-04-28 | Cisco Technology, Inc. | Storage area network interconnect server |
CA2520498C (en) | 2003-04-03 | 2012-09-25 | Commvault Systems, Inc. | System and method for dynamically performing storage operations in a computer network |
US7454569B2 (en) | 2003-06-25 | 2008-11-18 | Commvault Systems, Inc. | Hierarchical system and method for performing storage operations in a computer network |
US8095511B2 (en) * | 2003-06-30 | 2012-01-10 | Microsoft Corporation | Database data recovery system and method |
CN100568352C (zh) * | 2003-07-19 | 2009-12-09 | 汤姆森特许公司 | 用于处理数据库的方法 |
JP2005056200A (ja) * | 2003-08-05 | 2005-03-03 | Hitachi Ltd | データ管理方法、ディスク記憶装置およびディスク記憶システム |
JP4021823B2 (ja) * | 2003-09-01 | 2007-12-12 | 株式会社日立製作所 | リモートコピーシステム及びリモートコピーの方法 |
JP4386694B2 (ja) * | 2003-09-16 | 2009-12-16 | 株式会社日立製作所 | 記憶システム及び記憶制御装置 |
US7219201B2 (en) * | 2003-09-17 | 2007-05-15 | Hitachi, Ltd. | Remote storage disk control device and method for controlling the same |
JP4598387B2 (ja) * | 2003-09-17 | 2010-12-15 | 株式会社日立製作所 | 記憶システム |
JP2005108098A (ja) * | 2003-10-01 | 2005-04-21 | Hitachi Ltd | データi/o装置及びデータi/o装置の制御方法 |
JP4384470B2 (ja) | 2003-10-21 | 2009-12-16 | 株式会社日立製作所 | 記憶装置の管理方法 |
WO2005050386A2 (en) | 2003-11-13 | 2005-06-02 | Commvault Systems, Inc. | System and method for performing a snapshot and for restoring data |
WO2005050381A2 (en) | 2003-11-13 | 2005-06-02 | Commvault Systems, Inc. | Systems and methods for performing storage operations using network attached storage |
US7315923B2 (en) | 2003-11-13 | 2008-01-01 | Commvault Systems, Inc. | System and method for combining data streams in pipelined storage operations in a storage network |
JP2005157521A (ja) * | 2003-11-21 | 2005-06-16 | Hitachi Ltd | 遠隔記憶装置の状態情報監視方法および記憶サブシステム |
JP2005202893A (ja) * | 2004-01-19 | 2005-07-28 | Hitachi Ltd | 記憶デバイス制御装置、ストレージシステム、プログラムを記録した記録媒体、情報処理装置、及びストレージシステムの制御方法 |
US8818950B2 (en) * | 2004-01-22 | 2014-08-26 | Symantec Corporation | Method and apparatus for localized protected imaging of a file system |
JP2005275494A (ja) * | 2004-03-23 | 2005-10-06 | Hitachi Ltd | ストレージシステム及びストレージシステムのリモートコピー方法 |
JP4456909B2 (ja) * | 2004-03-29 | 2010-04-28 | 株式会社日立製作所 | バックアップ方法、ストレージシステム及びそのプログラム |
JP4421385B2 (ja) * | 2004-06-09 | 2010-02-24 | 株式会社日立製作所 | 計算機システム |
US7353242B2 (en) | 2004-07-09 | 2008-04-01 | Hitachi, Ltd. | File server for long term data archive |
JP4646574B2 (ja) | 2004-08-30 | 2011-03-09 | 株式会社日立製作所 | データ処理システム |
JP4377790B2 (ja) * | 2004-09-30 | 2009-12-02 | 株式会社日立製作所 | リモートコピーシステムおよびリモートコピー方法 |
US20060101439A1 (en) * | 2004-10-25 | 2006-05-11 | Microsoft Corporation | Memory management in a managed code execution environment |
JP2006127028A (ja) * | 2004-10-27 | 2006-05-18 | Hitachi Ltd | 記憶システム及び記憶制御装置 |
WO2006053084A2 (en) | 2004-11-05 | 2006-05-18 | Commvault Systems, Inc. | Method and system of pooling storage devices |
US7536291B1 (en) | 2004-11-08 | 2009-05-19 | Commvault Systems, Inc. | System and method to support simulated storage operations |
US7444360B2 (en) * | 2004-11-17 | 2008-10-28 | International Business Machines Corporation | Method, system, and program for storing and using metadata in multiple storage locations |
US7535832B2 (en) * | 2004-11-22 | 2009-05-19 | International Business Machines Corporation | Apparatus and method to set the signaling rate of a switch domain disposed within an information storage and retrieval system |
US7512135B2 (en) * | 2004-12-10 | 2009-03-31 | International Business Machines Corporation | Method for transferring data among a logical layer, physical layer, and storage device |
US7590777B2 (en) * | 2004-12-10 | 2009-09-15 | International Business Machines Corporation | Transferring data between system and storage in a shared buffer |
US8271436B2 (en) * | 2005-02-07 | 2012-09-18 | Mimosa Systems, Inc. | Retro-fitting synthetic full copies of data |
US8812433B2 (en) | 2005-02-07 | 2014-08-19 | Mimosa Systems, Inc. | Dynamic bulk-to-brick transformation of data |
US8799206B2 (en) | 2005-02-07 | 2014-08-05 | Mimosa Systems, Inc. | Dynamic bulk-to-brick transformation of data |
US8918366B2 (en) | 2005-02-07 | 2014-12-23 | Mimosa Systems, Inc. | Synthetic full copies of data and dynamic bulk-to-brick transformation |
US20060206507A1 (en) * | 2005-02-16 | 2006-09-14 | Dahbour Ziyad M | Hierarchal data management |
US7818350B2 (en) | 2005-02-28 | 2010-10-19 | Yahoo! Inc. | System and method for creating a collaborative playlist |
US20070083380A1 (en) * | 2005-10-10 | 2007-04-12 | Yahoo! Inc. | Data container and set of metadata for association with a media item and composite media items |
US7636743B2 (en) | 2005-12-19 | 2009-12-22 | Commvault Systems, Inc. | Pathname translation in a data replication system |
US7606844B2 (en) | 2005-12-19 | 2009-10-20 | Commvault Systems, Inc. | System and method for performing replication copy storage operations |
WO2007075587A2 (en) | 2005-12-19 | 2007-07-05 | Commvault Systems, Inc. | Systems and methods for performing data replication |
US7962709B2 (en) | 2005-12-19 | 2011-06-14 | Commvault Systems, Inc. | Network redirector systems and methods for performing data replication |
US7617262B2 (en) | 2005-12-19 | 2009-11-10 | Commvault Systems, Inc. | Systems and methods for monitoring application data in a data replication system |
US7651593B2 (en) | 2005-12-19 | 2010-01-26 | Commvault Systems, Inc. | Systems and methods for performing data replication |
US8655850B2 (en) | 2005-12-19 | 2014-02-18 | Commvault Systems, Inc. | Systems and methods for resynchronizing information |
JP4842720B2 (ja) * | 2006-06-29 | 2011-12-21 | 株式会社日立製作所 | ストレージシステム及びデータ複製方法 |
US8726242B2 (en) | 2006-07-27 | 2014-05-13 | Commvault Systems, Inc. | Systems and methods for continuous data replication |
US7539783B2 (en) | 2006-09-22 | 2009-05-26 | Commvault Systems, Inc. | Systems and methods of media management, such as management of media to and from a media storage library, including removable media |
US8312323B2 (en) | 2006-12-22 | 2012-11-13 | Commvault Systems, Inc. | Systems and methods for remote monitoring in a computer network and reporting a failed migration operation without accessing the data being moved |
US7831566B2 (en) | 2006-12-22 | 2010-11-09 | Commvault Systems, Inc. | Systems and methods of hierarchical storage management, such as global management of storage operations |
US8719809B2 (en) | 2006-12-22 | 2014-05-06 | Commvault Systems, Inc. | Point in time rollback and un-installation of software |
US7734954B2 (en) * | 2007-01-03 | 2010-06-08 | International Business Machines Corporation | Method, computer program product, and system for providing a multi-tiered snapshot of virtual disks |
US8290808B2 (en) | 2007-03-09 | 2012-10-16 | Commvault Systems, Inc. | System and method for automating customer-validated statement of work for a data storage environment |
JP2008276379A (ja) * | 2007-04-26 | 2008-11-13 | Hitachi Ltd | 記憶システム及びパス切替え方法 |
US8706976B2 (en) | 2007-08-30 | 2014-04-22 | Commvault Systems, Inc. | Parallel access virtual tape library and drives |
DE112007003645B4 (de) | 2007-10-25 | 2011-06-16 | Hewlett-Packard Development Co., L.P., Houston | Datenverarbeitungsvorrichtung und Verfahren zur Datenverarbeitung |
WO2009054827A1 (en) * | 2007-10-25 | 2009-04-30 | Hewlett-Packard Development Company, L.P. | Data processing apparatus and method of processing data |
US8140637B2 (en) | 2007-10-25 | 2012-03-20 | Hewlett-Packard Development Company, L.P. | Communicating chunks between devices |
US8484162B2 (en) | 2008-06-24 | 2013-07-09 | Commvault Systems, Inc. | De-duplication systems and methods for application-specific data |
US8615495B1 (en) * | 2008-08-13 | 2013-12-24 | Symantec Corporation | Techniques for providing a differential backup from a storage image |
US20100070466A1 (en) * | 2008-09-15 | 2010-03-18 | Anand Prahlad | Data transfer techniques within data storage devices, such as network attached storage performing data migration |
US8990161B1 (en) * | 2008-09-30 | 2015-03-24 | Emc Corporation | System and method for single segment backup |
US9495382B2 (en) | 2008-12-10 | 2016-11-15 | Commvault Systems, Inc. | Systems and methods for performing discrete data replication |
US8204859B2 (en) | 2008-12-10 | 2012-06-19 | Commvault Systems, Inc. | Systems and methods for managing replicated database data |
US8930306B1 (en) | 2009-07-08 | 2015-01-06 | Commvault Systems, Inc. | Synchronized data deduplication |
CN102511031B (zh) | 2009-09-24 | 2015-11-25 | 国际商业机器公司 | 使用位图的数据存储 |
US9256367B2 (en) | 2009-09-25 | 2016-02-09 | International Business Machines Corporation | Data storage and moving of relatively infrequently accessed data among storage of different types |
US8527749B2 (en) * | 2009-11-11 | 2013-09-03 | International Business Machines Corporation | User device, computer program product and computer system for system for secure network storage |
US8504517B2 (en) | 2010-03-29 | 2013-08-06 | Commvault Systems, Inc. | Systems and methods for selective data replication |
US8504515B2 (en) | 2010-03-30 | 2013-08-06 | Commvault Systems, Inc. | Stubbing systems and methods in a data replication environment |
US8725698B2 (en) | 2010-03-30 | 2014-05-13 | Commvault Systems, Inc. | Stub file prioritization in a data replication system |
US8352422B2 (en) | 2010-03-30 | 2013-01-08 | Commvault Systems, Inc. | Data restore systems and methods in a replication environment |
WO2011150391A1 (en) | 2010-05-28 | 2011-12-01 | Commvault Systems, Inc. | Systems and methods for performing data replication |
US20120054315A1 (en) * | 2010-08-31 | 2012-03-01 | Cisco Technology, Inc. | System and method for providing virtualized file system management for a memory card in a digital environment |
US9244779B2 (en) | 2010-09-30 | 2016-01-26 | Commvault Systems, Inc. | Data recovery operations, such as recovery from modified network data management protocol data |
US8577851B2 (en) | 2010-09-30 | 2013-11-05 | Commvault Systems, Inc. | Content aligned block-based deduplication |
US8578109B2 (en) | 2010-09-30 | 2013-11-05 | Commvault Systems, Inc. | Systems and methods for retaining and using data block signatures in data protection operations |
US20120150818A1 (en) | 2010-12-14 | 2012-06-14 | Commvault Systems, Inc. | Client-side repository in a networked deduplicated storage system |
US9020900B2 (en) | 2010-12-14 | 2015-04-28 | Commvault Systems, Inc. | Distributed deduplicated storage system |
US9021198B1 (en) | 2011-01-20 | 2015-04-28 | Commvault Systems, Inc. | System and method for sharing SAN storage |
US8494674B2 (en) | 2011-08-24 | 2013-07-23 | International Business Machines Corporation | Fast-access self-repairing tape library using mobile robots |
US8972678B2 (en) * | 2011-12-21 | 2015-03-03 | Emc Corporation | Efficient backup replication |
US9471578B2 (en) | 2012-03-07 | 2016-10-18 | Commvault Systems, Inc. | Data storage system utilizing proxy device for storage operations |
US9298715B2 (en) | 2012-03-07 | 2016-03-29 | Commvault Systems, Inc. | Data storage system utilizing proxy device for storage operations |
US9529871B2 (en) | 2012-03-30 | 2016-12-27 | Commvault Systems, Inc. | Information management of mobile device data |
US9342537B2 (en) | 2012-04-23 | 2016-05-17 | Commvault Systems, Inc. | Integrated snapshot interface for a data storage system |
US9251186B2 (en) | 2012-06-13 | 2016-02-02 | Commvault Systems, Inc. | Backup using a client-side signature repository in a networked storage system |
US10379988B2 (en) | 2012-12-21 | 2019-08-13 | Commvault Systems, Inc. | Systems and methods for performance monitoring |
US9069799B2 (en) | 2012-12-27 | 2015-06-30 | Commvault Systems, Inc. | Restoration of centralized data storage manager, such as data storage manager in a hierarchical data storage system |
US9336226B2 (en) | 2013-01-11 | 2016-05-10 | Commvault Systems, Inc. | Criteria-based data synchronization management |
US9886346B2 (en) | 2013-01-11 | 2018-02-06 | Commvault Systems, Inc. | Single snapshot for multiple agents |
US9665591B2 (en) | 2013-01-11 | 2017-05-30 | Commvault Systems, Inc. | High availability distributed deduplicated storage system |
US9263082B2 (en) * | 2013-01-30 | 2016-02-16 | International Business Machines Corporation | High density hybrid storage system |
US20140244801A1 (en) * | 2013-02-28 | 2014-08-28 | Apple Inc. | Network-based distribution system supporting transfer of application products |
JP6005010B2 (ja) * | 2013-08-12 | 2016-10-12 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 複数のテープメディアに1つのファイルをスパニングする方法、ストレージ・システム、およびプログラム |
US9495251B2 (en) | 2014-01-24 | 2016-11-15 | Commvault Systems, Inc. | Snapshot readiness checking and reporting |
US9639426B2 (en) | 2014-01-24 | 2017-05-02 | Commvault Systems, Inc. | Single snapshot for multiple applications |
US9753812B2 (en) | 2014-01-24 | 2017-09-05 | Commvault Systems, Inc. | Generating mapping information for single snapshot for multiple applications |
US9632874B2 (en) | 2014-01-24 | 2017-04-25 | Commvault Systems, Inc. | Database application backup in single snapshot for multiple applications |
US10380072B2 (en) | 2014-03-17 | 2019-08-13 | Commvault Systems, Inc. | Managing deletions from a deduplication database |
US11249858B2 (en) | 2014-08-06 | 2022-02-15 | Commvault Systems, Inc. | Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host |
US9852026B2 (en) | 2014-08-06 | 2017-12-26 | Commvault Systems, Inc. | Efficient application recovery in an information management system based on a pseudo-storage-device driver |
US9774672B2 (en) | 2014-09-03 | 2017-09-26 | Commvault Systems, Inc. | Consolidated processing of storage-array commands by a snapshot-control media agent |
US10042716B2 (en) | 2014-09-03 | 2018-08-07 | Commvault Systems, Inc. | Consolidated processing of storage-array commands using a forwarder media agent in conjunction with a snapshot-control media agent |
US9558078B2 (en) | 2014-10-28 | 2017-01-31 | Microsoft Technology Licensing, Llc | Point in time database restore from storage snapshots |
US9575673B2 (en) | 2014-10-29 | 2017-02-21 | Commvault Systems, Inc. | Accessing a file system using tiered deduplication |
US9448731B2 (en) | 2014-11-14 | 2016-09-20 | Commvault Systems, Inc. | Unified snapshot storage management |
US9648105B2 (en) | 2014-11-14 | 2017-05-09 | Commvault Systems, Inc. | Unified snapshot storage management, using an enhanced storage manager and enhanced media agents |
US9898213B2 (en) | 2015-01-23 | 2018-02-20 | Commvault Systems, Inc. | Scalable auxiliary copy processing using media agent resources |
US9904481B2 (en) | 2015-01-23 | 2018-02-27 | Commvault Systems, Inc. | Scalable auxiliary copy processing in a storage management system using media agent resources |
US9928144B2 (en) | 2015-03-30 | 2018-03-27 | Commvault Systems, Inc. | Storage management of data using an open-archive architecture, including streamlined access to primary data originally stored on network-attached storage and archived to secondary storage |
US10339106B2 (en) | 2015-04-09 | 2019-07-02 | Commvault Systems, Inc. | Highly reusable deduplication database after disaster recovery |
US20160350391A1 (en) | 2015-05-26 | 2016-12-01 | Commvault Systems, Inc. | Replication using deduplicated secondary copy data |
US9766825B2 (en) | 2015-07-22 | 2017-09-19 | Commvault Systems, Inc. | Browse and restore for block-level backups |
US10101913B2 (en) | 2015-09-02 | 2018-10-16 | Commvault Systems, Inc. | Migrating data to disk without interrupting running backup operations |
KR20170074264A (ko) * | 2015-12-21 | 2017-06-30 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
US10061663B2 (en) | 2015-12-30 | 2018-08-28 | Commvault Systems, Inc. | Rebuilding deduplication data in a distributed deduplication data storage system |
US10296368B2 (en) | 2016-03-09 | 2019-05-21 | Commvault Systems, Inc. | Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount) |
US10503753B2 (en) | 2016-03-10 | 2019-12-10 | Commvault Systems, Inc. | Snapshot replication operations based on incremental block change tracking |
CN107707337A (zh) * | 2016-08-09 | 2018-02-16 | 联发科技股份有限公司 | 重排方法及其装置 |
US10740193B2 (en) | 2017-02-27 | 2020-08-11 | Commvault Systems, Inc. | Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount |
US11010261B2 (en) | 2017-03-31 | 2021-05-18 | Commvault Systems, Inc. | Dynamically allocating streams during restoration of data |
US10664352B2 (en) | 2017-06-14 | 2020-05-26 | Commvault Systems, Inc. | Live browsing of backed up data residing on cloned disks |
US10742735B2 (en) | 2017-12-12 | 2020-08-11 | Commvault Systems, Inc. | Enhanced network attached storage (NAS) services interfacing to cloud storage |
US10732885B2 (en) | 2018-02-14 | 2020-08-04 | Commvault Systems, Inc. | Block-level live browsing and private writable snapshots using an ISCSI server |
US11010258B2 (en) | 2018-11-27 | 2021-05-18 | Commvault Systems, Inc. | Generating backup copies through interoperability between components of a data storage management system and appliances for data storage and deduplication |
US11698727B2 (en) | 2018-12-14 | 2023-07-11 | Commvault Systems, Inc. | Performing secondary copy operations based on deduplication performance |
US20200327017A1 (en) | 2019-04-10 | 2020-10-15 | Commvault Systems, Inc. | Restore using deduplicated secondary copy data |
US11494338B2 (en) * | 2019-04-26 | 2022-11-08 | International Business Machines Corporation | Caching files in a directory |
US11463264B2 (en) | 2019-05-08 | 2022-10-04 | Commvault Systems, Inc. | Use of data block signatures for monitoring in an information management system |
US11042318B2 (en) | 2019-07-29 | 2021-06-22 | Commvault Systems, Inc. | Block-level data replication |
US11327802B2 (en) * | 2019-07-31 | 2022-05-10 | Microsoft Technology Licensing, Llc | System and method for exporting logical object metadata |
US20210173811A1 (en) | 2019-12-04 | 2021-06-10 | Commvault Systems, Inc. | Optimizing the restoration of deduplicated data stored in multi-node replicated file systems |
US11687424B2 (en) | 2020-05-28 | 2023-06-27 | Commvault Systems, Inc. | Automated media agent state management |
US11803317B2 (en) * | 2020-12-15 | 2023-10-31 | International Business Machines Corporation | Interrupted replicated write recognition |
US11593223B1 (en) | 2021-09-02 | 2023-02-28 | Commvault Systems, Inc. | Using resource pool administrative entities in a data storage management system to provide shared infrastructure to tenants |
US11809285B2 (en) | 2022-02-09 | 2023-11-07 | Commvault Systems, Inc. | Protecting a management database of a data storage management system to meet a recovery point objective (RPO) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05241933A (ja) * | 1992-02-28 | 1993-09-21 | Mitsubishi Electric Corp | 分散データ管理システムのファイル保全方式 |
JPH0683682A (ja) * | 1990-06-29 | 1994-03-25 | Digital Equip Corp <Dec> | アンドゥーログ使用の最大利用のための方法及び装置 |
Family Cites Families (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5283875A (en) * | 1990-04-13 | 1994-02-01 | Digital Equipment Corporation | Method and apparatus for optimizing prefetch caching by reverse ordering of logical blocks |
US5544347A (en) * | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
US5542909A (en) * | 1992-06-12 | 1996-08-06 | Camp; Gregory T. | Water jet appliance |
US5555371A (en) | 1992-12-17 | 1996-09-10 | International Business Machines Corporation | Data backup copying with delayed directory updating and reduced numbers of DASD accesses at a back up site using a log structured array data storage |
ATE153149T1 (de) * | 1993-01-21 | 1997-05-15 | Apple Computer | Vorrichtung und verfahren zur datensicherung von speichereinheiten in einem rechnernetzwerk |
CA2166420C (en) | 1993-07-01 | 2006-03-28 | James R. Woodhill | System and method for distributed storage management on networked computer systems |
US5535381A (en) * | 1993-07-22 | 1996-07-09 | Data General Corporation | Apparatus and method for copying and restoring disk files |
US6154850A (en) * | 1993-11-01 | 2000-11-28 | Beaufort River, Inc. | Data storage system and method |
JPH07191899A (ja) * | 1993-12-27 | 1995-07-28 | Hitachi Ltd | ファイル転送方法、データアクセス方法およびデータ書き込み方法 |
US5873103A (en) | 1994-02-25 | 1999-02-16 | Kodak Limited | Data storage management for network interconnected processors using transferrable placeholders |
US5673381A (en) * | 1994-05-27 | 1997-09-30 | Cheyenne Software International Sales Corp. | System and parallel streaming and data stripping to back-up a network |
US5493649A (en) | 1994-06-21 | 1996-02-20 | Microsoft Corporation | Detecting corruption in a computer program at execution time using a checksum |
US5799147A (en) | 1994-10-19 | 1998-08-25 | Shannon; John P. | Computer recovery backup method |
US5574906A (en) | 1994-10-24 | 1996-11-12 | International Business Machines Corporation | System and method for reducing storage requirement in backup subsystems utilizing segmented compression and differencing |
JP3371044B2 (ja) * | 1994-12-28 | 2003-01-27 | 株式会社日立製作所 | ディスクアレイのための領域割り当て方法およびディスクアレイアクセス方法 |
US5799304A (en) | 1995-01-03 | 1998-08-25 | Intel Corporation | Information evaluation |
US5680580A (en) * | 1995-02-28 | 1997-10-21 | International Business Machines Corporation | Remote copy system for setting request interconnect bit in each adapter within storage controller and initiating request connect frame in response to the setting bit |
US5765200A (en) * | 1995-06-07 | 1998-06-09 | International Business Machines Corporation | Logical positioning within a storage device by a storage controller |
US5953351A (en) | 1995-09-15 | 1999-09-14 | International Business Machines Corporation | Method and apparatus for indicating uncorrectable data errors |
JP3856855B2 (ja) | 1995-10-06 | 2006-12-13 | 三菱電機株式会社 | 差分バックアップ方式 |
US5778395A (en) | 1995-10-23 | 1998-07-07 | Stac, Inc. | System for backing up files from disk volumes on multiple nodes of a computer network |
US5790775A (en) | 1995-10-23 | 1998-08-04 | Digital Equipment Corporation | Host transparent storage controller failover/failback of SCSI targets and associated units |
WO1997021173A2 (en) | 1995-12-01 | 1997-06-12 | Philips Electronics N.V. | Method and system for reading data for a number of users |
US5848241A (en) * | 1996-01-11 | 1998-12-08 | Openframe Corporation Ltd. | Resource sharing facility functions as a controller for secondary storage device and is accessible to all computers via inter system links |
US5852715A (en) * | 1996-03-19 | 1998-12-22 | Emc Corporation | System for currently updating database by one host and reading the database by different host for the purpose of implementing decision support functions |
US5819310A (en) | 1996-05-24 | 1998-10-06 | Emc Corporation | Method and apparatus for reading data from mirrored logical volumes on physical disk drives |
US5864837A (en) | 1996-06-12 | 1999-01-26 | Unisys Corporation | Methods and apparatus for efficient caching in a distributed environment |
US5835954A (en) | 1996-09-12 | 1998-11-10 | International Business Machines Corporation | Target DASD controlled data migration move |
US5926649A (en) | 1996-10-23 | 1999-07-20 | Industrial Technology Research Institute | Media server for storage and retrieval of voluminous multimedia data |
TW360843B (en) | 1996-12-02 | 1999-06-11 | Ibm | Shared loop audio/video server system |
JP3563907B2 (ja) * | 1997-01-30 | 2004-09-08 | 富士通株式会社 | 並列計算機 |
US5925119A (en) * | 1997-03-28 | 1999-07-20 | Quantum Corporation | Computer architecture for automated storage library |
US6073209A (en) * | 1997-03-31 | 2000-06-06 | Ark Research Corporation | Data storage controller providing multiple hosts with access to multiple storage subsystems |
US6000020A (en) * | 1997-04-01 | 1999-12-07 | Gadzoox Networks, Inc. | Hierarchical storage management from a mirrored file system on a storage network segmented by a bridge |
US5950230A (en) | 1997-05-28 | 1999-09-07 | International Business Machines Corporation | RAID array configuration synchronization at power on |
US6061822A (en) * | 1997-06-23 | 2000-05-09 | Micron Electronics, Inc. | System and method for providing a fast and efficient comparison of cyclic redundancy check (CRC/checks sum) values of two mirrored disks |
GB9721637D0 (en) | 1997-10-14 | 1997-12-10 | Int Computers Ltd | Remote backup system |
US6349356B2 (en) * | 1997-12-10 | 2002-02-19 | International Business Machines Corporation | Host-available device block map for optimized file retrieval from serpentine tape drives |
US6065062A (en) * | 1997-12-10 | 2000-05-16 | Cisco Systems, Inc. | Backup peer pool for a routed computer network |
US6085266A (en) * | 1997-12-12 | 2000-07-04 | Unisys Corporation | System for unwrapping a single file from a compact disk for utilization by various computer platforms |
US6052341A (en) * | 1997-12-16 | 2000-04-18 | International Business Machines Corporation | Device element allocation manager and method for a multi-library system for multiple host connections |
US6023710A (en) | 1997-12-23 | 2000-02-08 | Microsoft Corporation | System and method for long-term administration of archival storage |
US6047294A (en) | 1998-03-31 | 2000-04-04 | Emc Corp | Logical restore from a physical backup in a computer storage system |
US6157991A (en) | 1998-04-01 | 2000-12-05 | Emc Corporation | Method and apparatus for asynchronously updating a mirror of a source device |
US6189079B1 (en) * | 1998-05-22 | 2001-02-13 | International Business Machines Corporation | Data copy between peer-to-peer controllers |
US6282602B1 (en) * | 1998-06-30 | 2001-08-28 | Emc Corporation | Method and apparatus for manipulating logical objects in a data storage system |
US6141773A (en) | 1998-06-30 | 2000-10-31 | Emc Corporation | Method and apparatus for undoing changes to computer memory |
US6393540B1 (en) * | 1998-06-30 | 2002-05-21 | Emc Corporation | Moving a logical object from a set of source locations to a set of destination locations using a single command |
US6329985B1 (en) * | 1998-06-30 | 2001-12-11 | Emc Corporation | Method and apparatus for graphically displaying mapping of a logical object |
US6269431B1 (en) | 1998-08-13 | 2001-07-31 | Emc Corporation | Virtual storage and block level direct access of secondary storage for recovery of backup data |
US6385626B1 (en) * | 1998-11-19 | 2002-05-07 | Emc Corporation | Method and apparatus for identifying changes to a logical object based on changes to the logical object at physical level |
US6564219B1 (en) * | 1998-11-19 | 2003-05-13 | Emc Corporation | Method and apparatus for obtaining an identifier for a logical unit of data in a database |
TW522399B (en) * | 1999-12-08 | 2003-03-01 | Hitachi Ltd | Semiconductor device |
-
1998
- 1998-12-31 US US09/224,637 patent/US7107395B1/en not_active Expired - Lifetime
-
1999
- 1999-12-13 GB GB0019609A patent/GB2348994B/en not_active Expired - Fee Related
- 1999-12-13 DE DE19982999T patent/DE19982999B4/de not_active Expired - Fee Related
- 1999-12-13 WO PCT/US1999/029499 patent/WO2000041093A2/en active Application Filing
- 1999-12-13 JP JP2000592751A patent/JP2003518659A/ja active Pending
-
2003
- 2003-06-30 US US10/610,011 patent/US20040098547A1/en not_active Abandoned
-
2006
- 2006-09-06 JP JP2006241461A patent/JP2007048301A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0683682A (ja) * | 1990-06-29 | 1994-03-25 | Digital Equip Corp <Dec> | アンドゥーログ使用の最大利用のための方法及び装置 |
JPH05241933A (ja) * | 1992-02-28 | 1993-09-21 | Mitsubishi Electric Corp | 分散データ管理システムのファイル保全方式 |
Non-Patent Citations (4)
Title |
---|
COMPUTOPIA, vol. 第33巻,第387号, CSND199900377008, 1 December 1998 (1998-12-01), pages 62 - 64, ISSN: 0000733356 * |
日経コンピュータ, vol. 第442号, CSND199800321005, 27 April 1998 (1998-04-27), pages 122 - 125, ISSN: 0000733357 * |
津村 英樹: "ユーザー・ネットワークをシェイプアップするファイバーチャネル", コンピュータ&ネットワークLAN 第16巻 第1号, vol. 第16巻 第1号, CSND199700788012, 1 January 1998 (1998-01-01), JP, pages 89 - 92, ISSN: 0000733355 * |
野沢 哲生: "ファイバ・チャネル:サーバー入出力で本領発揮、高速ネットワークの選択肢にも", 日経コミュニケーション 第279号, vol. 第279号, CSND199801850008, 5 October 1998 (1998-10-05), JP, pages 106 - 113, ISSN: 0000733354 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006525599A (ja) * | 2003-04-30 | 2006-11-09 | オラクル・インターナショナル・コーポレイション | フラッシュバックデータベース |
WO2013035517A1 (ja) * | 2011-09-07 | 2013-03-14 | 株式会社 オレガ | ファイル管理システム及びファイル管理方法 |
JP5315460B1 (ja) * | 2011-09-07 | 2013-10-16 | 株式会社オレガ | ファイル管理システム及びファイル管理方法 |
US9323624B2 (en) | 2011-09-07 | 2016-04-26 | Orega Inc. | File management system and file management method |
Also Published As
Publication number | Publication date |
---|---|
GB2348994A (en) | 2000-10-18 |
JP2007048301A (ja) | 2007-02-22 |
DE19982999B4 (de) | 2008-11-06 |
US20040098547A1 (en) | 2004-05-20 |
GB2348994B (en) | 2004-02-04 |
US7107395B1 (en) | 2006-09-12 |
WO2000041093A3 (en) | 2002-09-19 |
GB0019609D0 (en) | 2000-09-27 |
WO2000041093A9 (en) | 2001-09-07 |
WO2000041093A2 (en) | 2000-07-13 |
DE19982999T1 (de) | 2001-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7107395B1 (en) | Apparatus and methods for operating a computer storage system | |
US6920537B2 (en) | Apparatus and methods for copying, backing up and restoring logical objects in a computer storage system by transferring blocks out of order or in parallel | |
US6385706B1 (en) | Apparatus and methods for copying a logical object to a primary storage device using a map of storage locations | |
US6487561B1 (en) | Apparatus and methods for copying, backing up, and restoring data using a backup segment size larger than the storage block size | |
US6397308B1 (en) | Apparatus and method for differential backup and restoration of data in a computer storage system | |
US7689799B2 (en) | Method and apparatus for identifying logical volumes in multiple element computer storage domains | |
US7428604B2 (en) | Method and apparatus for moving logical entities among storage elements in a computer storage system | |
US7716261B2 (en) | Method and apparatus for verifying storage access requests in a computer storage system with multiple storage elements | |
US7899933B1 (en) | Use of global logical volume identifiers to access logical volumes stored among a plurality of storage elements in a computer storage system | |
US6708265B1 (en) | Method and apparatus for moving accesses to logical entities from one storage element to another storage element in a computer storage system | |
US6938180B1 (en) | Logical restores of physically backed up data | |
US7596713B2 (en) | Fast backup storage and fast recovery of data (FBSRD) | |
US7849361B2 (en) | Methods and apparatus for multiple point in time data access | |
US8364914B2 (en) | Systems and methods for performing storage operations in a computer network | |
US7743031B1 (en) | Time and space efficient technique for creating virtual volume copies | |
US7100089B1 (en) | Determining differences between snapshots | |
US6912548B1 (en) | Logical volume identifier database for logical volumes in a computer storage system | |
US6934725B1 (en) | Management of file extent mapping to hasten mirror breaking in file level mirrored backups | |
US6269381B1 (en) | Method and apparatus for backing up data before updating the data and for restoring from the backups | |
US20050108486A1 (en) | Emulated storage system supporting instant volume restore | |
US20130238872A1 (en) | Snapshot storage and management system with indexing and user interface | |
US20020059505A1 (en) | Method and apparatus for differential backup in a computer storage system | |
US6760828B1 (en) | Method and apparatus for using logical volume identifiers for tracking or identifying logical volume stored in the storage system | |
JP2005505045A (ja) | クイックリカバリボリュームを作成及び管理する方法及び装置 | |
US20030065780A1 (en) | Data storage system having data restore by swapping logical units |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040820 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20041119 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20041129 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050805 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20051104 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20051111 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060509 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20060801 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060808 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20060808 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060906 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20061004 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20061117 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081022 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081027 |