JP5561303B2 - データ複製システム、データ複製方法、及びそのプログラム - Google Patents

データ複製システム、データ複製方法、及びそのプログラム Download PDF

Info

Publication number
JP5561303B2
JP5561303B2 JP2012078758A JP2012078758A JP5561303B2 JP 5561303 B2 JP5561303 B2 JP 5561303B2 JP 2012078758 A JP2012078758 A JP 2012078758A JP 2012078758 A JP2012078758 A JP 2012078758A JP 5561303 B2 JP5561303 B2 JP 5561303B2
Authority
JP
Japan
Prior art keywords
volume
data
replication
update
management table
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012078758A
Other languages
English (en)
Other versions
JP2013210704A (ja
Inventor
和幸 南雲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2012078758A priority Critical patent/JP5561303B2/ja
Priority to US13/845,271 priority patent/US9235349B2/en
Publication of JP2013210704A publication Critical patent/JP2013210704A/ja
Application granted granted Critical
Publication of JP5561303B2 publication Critical patent/JP5561303B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • G06F3/0641De-duplication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1466Management of the backup or restore process to make the backup process non-disruptive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems

Description

本発明は、磁気ディスクアレイ・サブシステム等に好適なデータ複製システムに係り、特にスナップショット技術を使用してデータ複製を行なうデータ複製装置、データ複製方法、及びそのプログラムに関する。
近年、社会基盤がIT化されるにつれ、企業、或いは個人が保有するデータ量は急激に増加している。また、電子商取引の普及や査証用データ保管の法制化等により、データ自体の質や価値が高まってきている。このような中で、データ損失という事態が及ぼす影響に関して、広く一般に認識されるようになるとともに、データ損失を未然に防ぐ手段として、バックアップ技術に大きな関心が寄せられてきている。
ここで、データ複製システムとしてのディスクアレイ・サブシステムにて従来から採用されているミラーリング方式のバックアップ手順について説明する。
まず最初に、バックアップの対象となるボリューム(マスタ・ボリューム)の静止点を確保するため、マスタ・ボリュームに対してアクセスしているデータベースなどのアプリケーションを停止する。次に、マスタ・ボリュームと同一容量のバックアップ・ボリュームを設定し、マスタ・ボリュームの全データをバックアップ・ボリュームへ複写する。
複写が完了すると、停止していたデータベースなどのアプリケーションを再開する一方、バックアップ・ボリュームからデータを読み出し、テープなどのバックアップ用装置にデータを保存する。
上述した手順では、アプリケーションを停止してから、バックアップ・ボリュームの作成と、マスタ・ボリュームからバックアップ・ボリュームへのデータの複写とを実行したが、アプリケーションが動作している最中にバックアップ・ボリュームを作成し、マスタ・ボリュームからバックアップ・ボリュームへのデータ・コピーを起動しておくことにより、静止点を確保してから、マスタ・ボリュームとバックアップ・ボリュームとの同期を取るまでの時間を短縮する方式も実現されている。
しかし、何れの方式においても、静止点を確保してからマスタ・ボリュームのデータをバックアップ・ボリュームへ完全に複写し終えるまでに、コピー量に応じた所定の時間を必要とする。又、バックアップ用途以外の、例えばデータ・マイニングなどのために、同一マスタ・ボリュームに対して複数のバックアップ・ボリュームを作成することがよく行われているが、かかる場合、通常は、バックアップ・ボリュームとしてはマスタ・ボリュームの数倍のデータ容量が必要とされている。
このようなミラーリング方式の問題を回避するために、最近は、スナップショット方式を採用したバックアップが頻繁に使われるようになってきている(例えば特許文献1)。 ここで、この特許文献1に記載されている、共有プールを使用するスナップショット方式を採用した従来のデータ複製システムであるディスクアレイ・サブシステム100の一例を、図9,図10,図11を参照して説明する。
スナップショット方式を採用した従来のデータ複製システムとしてのディスクアレイ・サブシステム100は、マスタ・ボリューム101と、マスタ・ボリュームと同一容量で、実際には物理的な容量を持たない仮想的なボリューム(以下、単に「スナップショット・ボリューム」と称する)102と、このスナップショット・ボリューム102のデータを格納するボリューム(以下、単に「共有プールボリューム」と称する)103、と、スナップショット・ボリューム102へのデータ・アクセスを管理するデータ複製制御手段104と、複製データの実際の格納先を管理するアドレス変換手段105と、前記データ複製制御手段104及びアドレス変換手段105にそれぞれ併設された複製制御用メモリ200及びアドレス変換用メモリ300とを備えている。
この内、データ複製制御手段104に併設された複製制御用メモリ200は、マスタやスナップショット等のボリュームの属性を管理する属性管理テーブル201と、ボリューム間のスナップショット関係を保持するボリューム対応管理テーブル202と、マスタ・ボリューム101とスナップショット・ボリューム102との差分を管理する差分管理テーブル203とを有する。
この内、複製制御用メモリ200の差分管理テーブル203では、スナップショット・ボリューム102がデータを保持していない場合には値「0」をとり、データを保持している場合には値「1」をとる。
又、アドレス変換用メモリ300は、スナップショット・ボリューム102の実際の格納アドレスを保持するディレクトリ301と、共有プールボリュームの使用状況を管理する割当管理テーブル302とを備えている。
次に、図12,図13,図14を参照して、上記した従来のディスクアレイ・サブシステム(データ複製システム)100の動作について説明する。
ここでは、LV(ロジカル・ボリューム)0をマスタ・ボリューム101とし、LV1をスナップショット・ボリューム102とし、LV2を共有プールボリューム(以下、「共有ボリューム」と称する)103として使用する。又、スナップショット・コマンド受信前においては、マスタ・ボリューム101には、(AA、BB、CC、DD、……、NN)というデータが格納されているものとする。
上記各ボリューム101又は102を複製する手順として、先ず、図12のフローチャートに示されるように、最初のステップS701で、ディスクアレイ・サブシステム100内に、共有ボリューム103が設定され、属性管理テーブル201と割当管理テーブル302とが初期化される。
即ち、属性管理テーブル201においてLV2に共有属性を設定し、割当管理テーブル302において共有プールボリュームが未使用状態であることを示す値「0」を設定する。次に、ステップS702で、マスタ・ボリューム101と、このマスタ・ボリューム101と同じ記憶容量のスナップショット・ボリューム102とを設定される。
そして、次のステップS703で、スナップショット・コマンドをディスクアレイ・サブシステム100が受信すると、ステップ403で属性管理テーブル201と、ボリューム対応管理テーブル202と、差分管理テーブル203とが初期化される。
即ち、属性管理テーブル201において、マスタ・ボリューム(LV0)101にマスタ属性を、スナップショット・ボリューム(LV1)102にスナップショット属性を設定し、ボリューム対応管理テーブル202においてマスタ・ボリューム(LV0)101とスナップショット・ボリューム(LV1)102とがスナップショット関係にあることを示すように、スナップショットのLV0にLV1を又スナップショットのLV1にLV0をそれぞれ設定し、差分管理テーブル203のスナップショット・ボリューム、つまり、この場合はLV1に当該スナップショット・ボリュームがデータを保持していないことを示す値「0」を設定し、ディレクトリ301にてスナップショット・ボリュームに共有ボリュームの記憶空間が割り当てられていないことを示すヌル値(null値)を設定する。
次に、前述のボリューム複製手順で説明したディスクアレイ・サブシステム(データ複製システム)100が、ライト・コマンドとリード・コマンドを受信したときの処理手順について説明する。
先ず、ライト・コマンドを受信したときの処理手順について説明する。ディスクアレイ・サブシステム100のマイクロプロセッサ(以下、単にCPUと称する)は、図13に示されるステップS801で図10の属性管理テーブル201を参照し、続いて、受信したコマンドがマスタ・ボリュームへのコマンドか又はスナップショット・ボリュームへのコマンドかを判定する(図13:ステップS802)。
ここで、上記CPUは前述したデータ複製制御手段104とアドレス変換手段105を含む演算処理手段として機能する構成となっている。
次に、上記SステップS802でスナップショット・ボリュームへのライト・コマンドと判定した場合にはデータを書き込まずに処理を終了しているが、これはスナップショット・ボリュームがスナップショット・コマンドを受信した時点でのマスタ・ボリュームの複製を維持するという運用に従った場合の処理、例えば、バックアップ等の場合の処理であり、その他の運用形態においては、ライト・コマンドの要求通りにスナップショット・ボリュームへデータを書き込んでも良い。
一方、ステップS802でマスタ・ボリューム101へのライト・コマンドと判定した場合は、CPUは、次に、ボリューム対応管理テーブル202を参照し、このマスタ・ボリュームと対になるスナップショット・ボリューム102を特定する(図13:ステップS803)。
そして、特定したスナップショット・ボリューム102の書き込み要求アドレスにデータがあるかどうかを、差分管理テーブル203を参照して判定し(図13:ステップS804,S805)、スナップショット・ボリューム102にデータがあると判定された場合(図13:ステップS805/イエス)には、ステップ509でマスタ・ボリュームへデータを書き込み、処理を終了する(図13:ステップS810)。
スナップショット・ボリューム102にデータが無いと判断されたときは(図13:ステップS805/ノー)には、次に、割当管理テーブル302を探索し(図13:ステップS806)、共有プールボリューム103の未使用領域の中から今回使用する領域を決定する。
そして、マスタ・ボリューム101の書き込み要求アドレスにある既存データを、前記共有プールボリュームの未使用領域にコピーしてから(図13:ステップS807)、割当管理テーブル302の当該箇所が使用済みであることを示す値「1」を設定し、ディレクトリ301の当該箇所に前記未使用領域のアドレスを設定する(図13:ステップS808)。
続いて、差分管理テーブル203の当該箇所にデータがあることを示す値「1」を設定し(図13:ステップS809)、ステップ509でマスタ・ボリュームへデータを書き込み、処理を終了する(図13:ステップS810)。
ここで、スナップショット・コマンド受信後に、マスタ・ボリューム(LV0)のpage2に対して(ZC)のライト・コマンドが発行された後の各テーブルの状態を、図9、図10、図11示す。
次にリード・コマンドを受信したときの処理手順について説明する。
CPUは、まず、制御用メモリ200の属性管理テーブル201を参照し(図14:ステップS901)、受信したコマンドがマスタ・ボリューム101へのコマンドであるのか、それともスナップショット・ボリューム102へのコマンドであるのかを判断する(図14:ステップS902)。
そして、ステップS902でマスタ・ボリューム101へのコマンドと判断した場合は、マスタ・ボリューム101からデータを読み出して処理を終了する(図14:ステップS907,ステップS908)。
一方、上記ステップS902でスナップショット・ボリューム102へのコマンドと判定された場合、次に、差分管理テーブル203を参照し(図14:ステップS903)、スナップショット・ボリューム102の読み出し要求アドレスにデータがあるかどうかをステップ603で判断する(図14:ステップS904)。
このスナップショット・ボリューム102にデータがあると判断されたときは、アドレス変換用メモリ300のディレクトリ301を参照し(図14:ステップS906)、データが格納されている共有ボリューム103上のアドレスを取得する。
続いて、共有ボリューム103からデータを読み出してホストへ転送し、処理を終了する(図14:ステップS907,S908)。
又、上記ステップS902でスナップショット・ボリューム102にデータが無いと判断されたときは、ステップS907で制御用メモリ200のボリューム対応管理テーブル202を参照し、スナップショット・ボリューム102と対となるマスタ・ボリューム101からデータを読み出し、ステップS908で読み出したデータをホストに転送して処理を終了する。
ここでは、共有プール103を使用したスナップショット方式を例に挙げて説明を行った。このほかに、共有プール103を使用せず、スナップショット・ボリューム102を仮想ボリュームでなく通常のボリュームで作成し、データの退避をスナップショット・ボリュームに行う方式もある。
この場合、こちらの方式では仮想スナップショット・ボリュームから共有ボリュームへのアドレス変換が不要になるので、処理が簡易化されるものの、複数のスナップショットを作成しようとすると、ミラーリングの時と同様に、マスタ・ボリュームの複数倍のディスク容量を使用することになる。スナップショット方式でバックアップを行う際には、これらのメリット・デメリットを考慮した上で方式を決定する必要がある。
又、上記した特許文献1とは別に、下記特許文献2,3が、従来より関連技術として知られている。
この内、特許文献2(特開2002−373093)のものは、スナップショット差分管理に関するものとして知られており、特許文献3(特開2002−373093)のものは、仮想マシンについてのイメージファイルを対象とした版管理システムであって、版間相互間の差異を参照可能としたシステムとして知られている。
特開2005−208950 特開2002−373093 WO2009−154272
前述した特許文献1の開示された方式により採取したスナップショット・ボリューム102は、様々な目的で利用される。例えば、バックアップ目的の使用方法としては、随時更新されるマスタ・ボリュームの複製を定期的に採取し、必要に応じてある時点でのマスタボリューム101のイメージをスナップショット・ボリューム102からリストアを行う使用方法や、スナップショット・ボリューム102を通して、ある時点でのマスタ・ボリューム101のイメージを磁気テープに代表される二次バックアップ装置にバックアップを行う使用方法がある。
また、データの二次利用目的として、採取したスナップショット・ボリューム102を利用して、実際の業務データを元に新たな開発業務を行うような利用方法がある。この二次利用を行う場合は、スナップショット・ボリュームに対して更新が発生することもある。
一方、複数のスナップショット・ボリューム102を世代管理しながらスナップショット・ボリューム102に更新が発生した場合、世代間のスナップショット・ボリューム102の保持を行うため、その更新処理には時間がかかるという不都合がある。
ここで、図15の状態において、スナップショット・ボリュームLV12のpage2に対してデータ更新が発生した場合を考える。
このスナップショット・ボリュームLV12のpage2にデータ“HH”の更新が発生した場合、LV11のボリュームイメージを保持するために、LV12のpage2の“CC”というデータを、LV11のpage2に退避する処理が必要になる。このため、スナップショット・ボリュームへのデータ更新処理は、マスタ・ボリュームへの更新処理に比べて性能が悪くなるという不都合がある。
更に、上述した特許文献1に記載のものにあっては、仮想スナップショット・ボリュームから共有ボリュームへのアドレス変換が不要になり処理が簡易化されるものの、複数のスナップショットを作成しようとすると、ミラーリングの時と同様に、マスタ・ボリュームの複数倍のディスク容量を必要とするという不都合が生じている。
又、上述した各特許文献1乃至3には、特にホストからのスナップショット・ボリューム(複製ボリューム)へのライトコンマンド処理に際しては、常にマスターボリュームに負担がかかるという不都合が生じていた。
〔発明の目的〕
本発明は、上記関連技術の有する不都合が改善し、特に、外部から入力されるライトコンマンド処理に際しては、マスターボリュームに負担をかけることなく複製ボリュームであるスナップショット・ボリュームのデータ更新処理を円滑に成し得ると共に、これによって複製ボリュームの利用性向上を図ったデータ複製システム、データ複製方法、及びそのプログラムを提供することを、その目的とする。
上記目的を達成するため、本発明にかかるデータ複製システムは、マスタ−ボリュ−ム用の同一容量の複製ボリュ−ムと、この複製ボリュ−ムの複製データを格納する共有プールボリュ−ムと、前記複製ボリュ−ムに対する外部(ホストコンピュータ)からの前記複製データのデータアクセスを管理すると共に前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、前記主制御部を、前記複製ボリュ−ムに対する外部からのデータアクセスを管理するデータ複製制御手段と、前記複製データの格納先を管理するアドレス変換手段とを備えた構成とする。
更に、前記データ複製制御手段が、前記マスターボリュームの更新時には当該マスターボリュームのデータを前記複製ボリュームに複製すると共に、前記複製ボリュームのデータ更新時には当該複製ボリュームに対してデータ更新を直接行うデータ複製更新処理機能を備え、
前記データ複製制御手段には、前記マスターボリュームから複製ボリュームにデータ複製を行ったことを管理するための差分管理テーブルと前記複製ボリュームに対してデータ複製の更新を直接実行したことを管理するための更新管理テーブルとを備えたデータ複製制御用メモリが併設され
前記データ複製制御手段が、前記データ複製制御用メモリに格納された情報に基づいて前記データ複製更新処理機能を実行する構成とし
前記アドレス変換手段に
前記共有プールボリュームの使用状況を管理するための割当管理テーブルを備えたアドレス変換制御用メモリを併設したことを特徴とする。
上記目的を達成するため、本発明にかかるデータ複製方法は、マスターボリューム用の複製ボリュームと、この複製ボリュームの複製データを格納する共有プールボリュームとを備えると共に、前記複製ボリュームに対する外部(ホストコンピュータ)からの前記複製データのデータアクセスを管理すると共に前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
複製ボリュームへのライトコマンドが入力された場合、予め設定された更新管理デーブルを参照して当該複製ボリュームに対する直接の更新処理が既に実施されているか否かを判定し、
この更新処理の判定工程で前記複製ボリュームに差分有り(更新が発生している)と判定された場合に当該複製ボリュームに予め割り当てられている共有ボリュームのアドレスを前記ライトコマンドの対象としてそこに前記ライトコマンドにかかるデータを書き込む一方
前記更新処理の判定工程で前記複製ボリュームに差分無し(更新が発生していない)と判定された場合には、予め設定された割当管理テーブルを参照して前記共有ボリュームの空き領域を検索し
この空き領域の検索工程で共有プールボリュームの空き領域が見つかった場合に当該空き領域に前記ライトコマンドにかかるデータを書き込むようにし
前記共有プールボリュームへの書込みを行った共有プールボリューム上の空き領域のアドレスを当該複製ボリュームの更新データの参照先として所定のメモリに記憶させると共に前記複製ボリュームに更新データがあることを示すデータを更新管理テーブルの該当箇所に登録録する構成とし
これらの各工程における判定,書き込み,登録の各処理内容を前記主制御部が順次実行するようにしたことを特徴とする。
上記目的を達成するため、本発明にかかるデータ複製プログラムは、マスターボリューム用の複製ボリュームと、この複製ボリュームの複製データを格納する共有プールボリュームとを備えると共に、前記複製ボリュームに対する外部(ホストコンピュータ)からの前記複製データのデータアクセスを管理すると共に前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
複製ボリュームへのライトコマンドが入力された場合、予め設定された更新管理デーブルを参照して当該複製ボリュームに対する直接の更新処理が実施されているか否かを判定する更新処理判定機能、
前記更新処理判定機能で前記複製ボリュームに差分無し(更新が発生していない)と判定された場合に、予め設定された割当管理テーブルを参照して前記共有プールボリュームの空き領域を検索する空き領域検索処理機能
前記更新処理判定機能で前記複製ボリュームに差分有り(更新が発生している)と判定された場合に当該複製ボリュームに予め割り当てられている共有ボリュームのアドレスを前記ライトコマンドの対象としてそこに前記ライトコマンドにかかるデータを書き込む一方、前記更新処理判定機能で前記複製ボリュームに差分無し(更新が発生していない)と判定された場合に前記空き領域検索処理機能が見つけた空き領域に前記ライトコマンドにかかるデータを書き込む共有ボリューム書込み処理機能、
および前記共有ボリューム書込み処理機能で当該複製ボリュームの更新データの参照先である共有ボリューム上に割り当てたアドレスを、所定のメモリに記憶させると共に前記複製ボリュームに更新データがあることを示すデータを更新管理テーブルの該当箇所に登録する更新データ参照先登録処理機能を設け、
これらの各処理機能における判定,書き込み,登録の各処理内容を前記主制御部が備えているコンピュータに実現させるようにしたことを特徴とする。
本発明は、上述したように構成したので、これによると、外部から入力されるライトコンマンド処理に際しては、前述したように主制御部とこれに併設された制御用メモリとが有効に機能して、マスターボリュームに負担をかけることなく複製ボリュームであるスナップショット・ボリュームのデータ更新処理を円滑に成し得ると共に、これによって複製ボリュームの利用性向上を図り得るという前述した関連技術にない優れたデータ複製システム、データ複製方法、及びそのプログラムを提供することができる。
本発明にかかるデータ複製システムの一実施形態を示す機能ブロック図である。 図1に開示した複数の磁気ディスク装置に基づいてマスターボリュームを特定した後にこれに対応する複製ボリューム(スナップショット・ボリューム)と共有プールボリュームとによって仮想的に組み換えた状態とその制御系とを示す機能ブロック図である。 図1に開示したデータ複製用制御メモリの具体例を示す説明図である。 図1に開示したアドレス変換用制御メモリの具体例を示す説明図である。 図1に開示した実施形態における複製に際しての準備動作を示すフローチャートである。 図1に開示した実施形態におけるスナップショット開始コマンド受信処理を示すフローチャートである。 図1に開示した実施形態における外部からのライト・コマンドに対する動作手順を示すフローチャートである。 図1に開示した実施形態における外部からのリード・コマンドに対する動作手順を示すフローチャートである。 関連技術におけるデータ複製システムのスナップショット動作の一例を示す機能ブロック図である。 図9に開示した関連技術におけるシステムに装備されたデータ複製用制御メモリの具体例を示す説明図である。 図9に開示した関連技術におけるシステムに装備されたアドレス変換用制御メモリの具体例を示す説明図である。 図9に開示した関連技術におけるシステムの複製準備動作を示すフローチャートである。 図9に開示した関連技術におけるシステムのライト・コマンドに対する動作を示すフローチャートである。 図9に開示した関連技術におけるシステムのリード・コマンドに対する動作を示すフローチャートである。 関連技術におけるシステムのマスタ・ボリュームと複数のスナップショット・ボリュームとのが接続管理されている状態の例を示す説明図である。
以下、本発明にかかるデータ複製システムをディスクアレイ・サブシステムに適用した場合の一実施形態を、図1乃至図8に基づいて説明する。
最初に、本実施形態における基本的な構成内容を説明し、その後に具体的名内容を詳述する。
(基本的な構成)
図1に、データ複製システム(ディスクアレイ・サブシステム)のハードウェア構成の概略を示す機能ブロック図を示す。
この図1において、データ複製システム10は、上位装置としての管理端末20やホストコンピュータ(以下、単に「ホスト」という)30に対して、複数の磁気ディスク装置17A,17B,17C,……,17Fを割り当ててデータのバックアップ等を始めとする処理を行うためのもので、上位装置20,30との間の接続に用いられるインタフェース制御部14と複数の各磁気ディスク装置17A〜17Fとを接続するためのRAID制御部(ボリューム制御部)16を備えている。
この内、インタフェース制御部14とRAID制御部16は、制御用メモリ15(15A,15B)に格納された制御プログラムに基づいて作動するマイクロプロセッサ(主制御部)11によってデータの入出力が制御されるようになっている。
又、制御用メモリ15に格納される制御用プログラムを書き換えることで、主制御部11を様々な機能実現手段として利用することが可能であり、ここでは、この主制御部11は、データの複製や複製したデータへのアクセスを制御するデータ複製手段12とアドレス変換手段13とを備えて構成されている。
更に、本実施形態の特徴となる属性管理テーブル21、ボリューム対応管理テーブル22、世代管理テーブル23、差分管理テーブル24、および更新管理テーブル15は、後述するように制御用メモリ15に格納され保持されている。
図1では6台の磁気ディスク装置17A〜17Fが接続されている例について示しているが、実際には其の各々が論理的に独立したボリューム、例えば、マスタ・ボリュームやスナップショット・ボリューム、或いは共有プールボリューム等といったものを構成するとは限らず、RAID制御部16の制御のもとに、複数の磁気ディスク装置に跨って見かけ上単一のボリュームを設けることも、また、1つの磁気ディスク装置にパーティションを設定して、見かけ上複数のボリュームを1つの磁気ディスク装置内に設けることもできる。
ここで、本実施形態にあっては、図1に示すように、その目的達成のため、主制御部11およびRAID制御部16の制御のもとに、図2に示すマスタ・ボリューム10Aやスナップショット・ボリューム(以下「複製ボリューム」という)10B(10C)、或いは共有プールボリューム(以下「共有ボリューム」という)10Dが設定されている。
即ち、図1乃至図2に示すように、本実施形態において、データ複製システム10は、マスタ−ボリュ−ム10Aと、当該マスタ−ボリュ−ム用の同一容量の複製ボリュ−ム10B(10C)と、この複製ボリュ−ム10B(10C)の複製データを格納する共有ボリュ−ム10Dと、前記複製ボリュ−ム10B(10C)に対する外部の(ホストコンピュータ(以下、単に「ホスト」という)からの前記複製データのデータアクセスを管理すると共に前記複製データの格納先を管理する主制御部11を備えたスナップショット方式によるデータ複製システムである。
ここで、主制御部11は、前述したように、複製ボリュ−ム10B(10C)に対する外部ホストからのデータアクセスを管理するデータ複製制御手段12と、前記複製データの格納先を管理するアドレス変換手段13とを備えた構成されている。
この内、データ複製制御手段12は、マスタ−ボリュ−ム10Aの更新時には当該マスタ−ボリュ−ム10Aのデータを前記複製ボリュ−ム10B(10C)に複製すると共に、複製ボリュ−ム10B(10C)のデータ更新時には当該複製ボリュ−ム10B(10C)に対してデータ更新を直接行うデータ複製更新処理機能を備えている。
又、データ複製制御手段12には、本実施形態では前記マスターボリューム10Aから複製ボリューム10B(10C)にデータ複製を行ったことを管理するための差分管理テーブル24と、前記複製ボリューム10B(10C)に対してデータ複製の更新を直接実行したこと管理するための更新管理テーブル25とを備えた、データ複製制御用メモリ15Aが併設されている(図3参照)。
更に、前記データ複製制御手段12は、前記データ複製制御用メモリ15Aに格納された情報に基づいて前記データ複製更新処理機能を実行するように構成されている。また、前記アドレス変換手段13には、前記共有ボリュ−ム10Dの使用状況を管理するための割当管理テーブルを備えたアドレス変換制御用メモリ15Bが併設されている。
そして、このアドレス変換制御用メモリ15Bと前述したデータ複製制御用メモリ15Aとにより、前述した制御用メモリ15が構成されている(図2参照)。
又、上記データ複製用制御メモリ15Aが、前述したマスタ−ボリュ−ム10Aと複製ボリュ−ム10B(10C)とのペア関係を管理するためのボリューム対応管理テーブル22と、前記複製ボリュ−ム10B(10C)の経時的な世代管理を行うための世代管理テーブル23とを備えている(図3参照)。
このため、本実施形態では、外部から入力されるライトコンマンド処理に際しては、前述したように主制御部11とこれに併設された制御用メモリ15とが有効に機能して、マスターボリューム10Aに負担をかけることなく複製ボリューム(スナップショット・ボリューム)10B(10C)のデータ更新処理を円滑に成し得ると共に、これによって複製ボリューム10B(10C)の利用性向上を図ることが可能となっている。
ここで、本実施形態では、前記データ複製更新機能の実行に際しては、前記複数の複製ボリュ−ム10B(10C)の内の一の複製ボリュ−ム10Bへのデータ更新時には他の複製ボリュ−ム10Cに対するデータ複製は実行されないように構成されている。
又、前記複製ボリュ−ム10B(10C)に対する外部(ホストコンピュータ)からの読み出し要求の実行に際しては、前記データ複製制御手段12は、複数の複製ボリューム10B(10C)の内の一の複製ボリューム10Bから読み出す第1のデータに対して、当該一の複製ボリュームを介して他の複製ボリューム10Cから読み出す第2のデータは前記第1のデータとは異なった内容のデータとするリードデータ読出規制機能を備えている。
これによって、システム全体の円滑な動作が確保され、重複動作による無駄なデータ複製が回避されている。
更に、本実施形態では、前述したアドレス変換制御用メモリ15Bに、前記各複製ボリューム10B(10C)の実データの格納アドレスを保持する差分管理ディレクトリ31と、前記各複製ボリューム10B(10C)への直接更新が発生した時の実データアドレスを保持する更新管理ディレクトリ33とを格納すると共に、前述したアドレス変換手段13が、前記アドレス変換制御用メモリ15Bに格納された情報に基づいて前記複製データの格納先を管理する複製データ格納先管理機能を備えている(図4参照)。
これによって、格納されたデータの存在を明確に外部表示し得ようになっている。
(具体的内容)
以下、これを更に詳述する。
本実施形態にあって、データ複製システム10は、図2に示すように、複製元データを記憶したマスターボリューム10Aと、マスターボリューム10A用の複製ボリューム10B(10C)と、この複製ボリューム10B(10C)のデータ格納先となる共有ボリューム10Cと、複製ボリューム10B(10C)へのデータ・アクセスを管理する前述したデータ複製制御手段12と、複製データの実際の格納先を管理する前述したアドレス変換手段13とを有する。マスターボリューム10A及び複製ボリューム10B(10C)の個数に関して特に制限は無い。
図2の状態は、マスターボリューム(LV0)10AのデータがPage0から順に(A0,B0,C0,D0,……,N0)というデータを保持している時にデータ複製手段12により複製ボリューム(LV1)10Bを作成する。そして、その後にマスターボリューム(LV0)10AのPage0のデータをA1に更新してから、再度、データ複製手段12により複製ボリューム(LV3)10Cを作成した後に、マスターボリューム(LV0)10AのPage1のデータをB1、Page2のデータをB2にそれぞれ更新し、複製ボリューム(LV3)10CのPage3に、D2を直接更新した時の状態を示している。
データ複製制御手段12には、マスタ属性やスナップショット属性等のボリュームの属性を管理する属性管理テーブル21と、マスターボリューム10Aと複製ボリューム10B(10C)のペアの関係を管理するボリューム対応管理テーブル22と、複製ボリューム10B(10C)の世代管理を行う世代管理テーブル23と、マスターボリューム10Aの更新の際に複製ボリューム10B(10C)へのデータ複製が行われた事を管理する差分管理テーブル24と、複製ボリューム10B(10C)に直接データ更新が発生した事を管理する更新管理テーブル25とを備えたデータ複製制御用メモリ15Aが併設されている。
又、アドレス変換手段13には、複製ボリューム10B(10C)の実データの格納アドレスを保持する差分管理ディレクトリ31と、複製ボリューム10B(10C)へ直接更新が発生した時の実データ格納アドレスを保持する更新管理ディレクトリ33と、共有ボリューム10Dの使用状況を管理する割当管理テーブル32とを備えたアドレス変換制御用メモリ15Bが併設されている。
〔実施形態の動作〕
次に、本実施形態におけるデータ複製システム10の動作を、図5のフローチャートに基づいて説明する。
(共有ボリュームの作成)
先ず、スナップショット動作の事前準備として、共有ボリューム10Dを作成する必要がある。この場合、最初に、上位装置(管理端末20)からの指令に基づいて主制御部11が作動し、予め設定されたプログラムに従って共有ボリューム10Dを作成する(図5:ステップS101)。
続いて、主制御部11は、データ複製制御用メモリ15A内の属性管理テーブル21の設定とアドレス管理制御用メモリ15B内の割当管理テーブル32の初期化を行う(図5:ステップS102)。次に、共有ボリューム10Dとして作成したボリュームに対して、属性管理テーブル21に共有の属性をセットし、続いて割当管理テーブル32を作成して未使用である事を示す「0」で初期化を行う(図5:ステップS103)。
ステップS101で共有ボリュームを作成した後は、図6に示すように、スナップショット開始コマンドを受信することで、スナップショットを開始することができる。
ここでは、LV0をマスタ・ボリューム、LV1を複製ボリューム10B(10C)として指定した例で説明する。
(スナップショット開始コマンド)
スナップショット開始コマンドを受信すると(図6:ステップS201)、次にマスターボリューム10Aと複製ボリューム10B(10C)として使用するロジカル・ボリュームを作成し、各種テーブルを設定する(図6:ステップS202,S203)。
具体的には、作成するロジカル・ボリュームの属性管理テーブル21にマスタ属性、スナップショット属性をセットし、ボリューム対応管理テーブル22においてペアとなるマスターボリューム10Aおよび複製ボリューム10B(10C)のロジカル・ボリューム番号を登録し(図6:ステップS204)、世代管理テーブル23において作成した複製ボリューム10B(10C)が最新の世代であることを示す世代番号1を設定する(図6:ステップS205)。
続いて、差分更新管理テーブル24及び更新管理テーブル25において複製ボリューム10B(10C)として作成したLV1の管理情報を複製ボリューム10Bへの割当がないことを示す0ゼロで初期化し(図6:ステップS206)、差分管理ディレクトリ31および更新管理ディレクトリ32において複製ボリューム10Bとして作成したLV1の管理情報をヌル(null)で初期化する(図6:ステップS207)。
ここで、ボリューム対応管理テーブル22では、マスターボリューム10Aに指定されたロジカル・ボリュームの項目にはペアとなる複製ボリューム10Bのロジカル・ボリュームを登録し、複製ボリューム10Bに指定されたロジカル・ボリュームの項目にはマスターボリューム10Aのロジカル・ボリュームを登録する。
そして、ここでは、マスターボリュームLV0の項に複製ボリューム10Bのロジカル・ボリュームLV1が格納され、複製ボリューム10BのLV1の項にマスターボリューム10Aのロジカル・ボリュームであるLV0が格納される。
これ以降、複製ボリューム10BのLV1は、スナップショット・コマンドを受信した時点におけるマスターボリュームLV0のボリューム・イメージを保持する。
ここでは、マスターボリュームLV0が複製ボリュームLV1と初めてスナップショットペアの設定を行う例で説明した。既に設定済みのマスターボリューム10Aに対して複製ボリュームが作成される場合、例えばLV0とLV1がスナップショットの設定を行われた後に、新たにLV3を追加する場合は、ボリューム対応管理テーブル22のLV0の項に新たに追加された複製ボリュームLV3が追加さる。
また、世代管理テーブル23においては、新たに作成された複製ボリュームLV3の世代番号に対して最新の世代であることを示す世代番号1が設定され、既に作成されているLV1に関しては世代番号が1から2に更新され、1世代古い複製ボリュームとして扱われる。
(ライト・コマンド処理)
次に、スナップショット・コマンドを受信した後に発生したライト・コマンド処理について、図7に示すフローチャートを参照しながら説明する。
まず最初に、主制御部11は属性管理テーブル21を参照し(図7:ステップS301)、ライト・コマンドの対象ボリュームがマスタ属性を持っているか否かを判定する(図7:ステップS302)。ここで、マスターボリューム10Aに対するライト・コマンド処理だと判定された場合は(図7:ステップS302/イエス)、ボリューム対応管理テーブル22と世代管理テーブル23を参照し、ライト・コマンド対象のロジカル・ボリュームをマスターボリューム10Aに持ち、且つ世代番号1を持つ複製ボリューム10Bを特定する(図7:ステップS303)。
次に、ステップ1303において差分管理テーブル24を参照し、ライト対象の範囲において、複製ボリューム10Bに既に差分があるかを判定する(図7:ステップS304,S305/更新処理判定工程)。ここで、既に差分があると判断した場合(図7:ステップS305/イエス)は、マスターボリュームのデータを複製ボリューム10Bに退避する必要は無いので、ライト・コマンドの対象のマスタ・ボリュームにライトデータを書き込んでデータを更新し(図7:ステップS310)、ライト・コマンドを終了する。
一方、図7のステップS305で、世代番号1の複製ボリューム10Bに差分がないと判定された場合(図7:ステップS305/ノー)は、スナップショットコマンドを受信した瞬間のマスターボリューム10Aのボリュームイメージを、複製ボリューム10Bに保持する必要がある。このため、割当管理テーブル32を参照して共有ボリュームの空き領域を検索し(図7:ステップS306/空き領域検索工程)、マスターボリューム10Aの当該箇所のデータを共有ボリューム10Dの空き領域にコピーを行う(図7:ステップS307/共有ボリューム書込み工程)。
続いて、割当管理テーブル32の今回のコピーによりデータを割り当てた箇所を割当ありを意味する「1」に更新すると共に、複製ボリューム10Bのデータ参照先として、今回共有ボリューム10D上に割り当てた領域を指し示すように、複製ボリューム10Bの差分管理ディレクトリ31の該当箇所更新する(図7:ステップS308/データ参照先登録工程)。
次に、複製ボリュームに差分があることを示すために、差分管理テーブル24の該当箇所に、「1」をセットする(図7:ステップS309)。その後、マスターボリューム10Aから複製ボリューム10Bへのデータの退避が完了した後に、ライト・コマンドの対象のマスターボリューム10Aにライトデータを書き込み(図7:ステップS310)、ライト・コマンドを終了する。
又、前述した図7のステップS302で、マスターボリューム10Aへのライト・コマンドではないと判定された場合には、今回のライト・コマンドの対象ボリュームがスナップショット属性を持つかを判定される(図7:ステップS311)。
ここで、スナップショット属性を持たないと判定された場合(図7:ステップS311/ノー)は、ライト・コマンドの対象ボリュームはスナップショット処理とは関係のないボリュームになるので、ライト・コマンドの対象ボリュームにライトデータを書き込んで更新し(図7:ステップS310)、ライト・コマンドを終了する。
一方、図7のステップS311で、スナップショット属性を持っていると判断した場合(図7:ステップS311/イエス)は、ステップ1311において更新管理テーブル25を参照し(図7:ステップS312)、既に複製ボリューム10Bへの更新処理が実施されているか判定される(図7:ステップS313/更新処理判定工程)。
このステップS313において、更新管理テーブル25の該当箇所が「1」になっており、複製ボリューム10Bに差分があると判定された場合(図7:ステップS313/イエス)は、更新管理ディレクトリ33を参照し、既に複製ボリューム10Bに割り当て済みの共有ボリューム10Dのアドレスを参照し、その共有ボリューム10Dのアドレスを、今回のライト・コマンドの対象とする(図7:ステップS314)。
その後、ライトデータを共有ボリュームに書き込んで更新し(図7:ステップS310/共有ボリューム書込み工程)、更新データ参照先の更新登録を確認した後、ライト・コマンドを終了する。
又、前述した図7のステップS313において、スナップショット・ボリュームに更新が発生していないと判断された場合(図7:ステップS313/ノー)は、割当管理テーブル32を参照して共有ボリュームの空き領域の検索を行い(図7:ステップS315/空き領域検索工程)、見つかった空き領域に対してライトデータの書き込みを実施する(図7:ステップS316/共有ボリューム書込み工程)。
その後、割当管理テーブル32の今回のコピーによりデータを割り当てた箇所を「1」に更新すると共に、スナップショット・ボリュームの更新データの参照先として今回共有プール上に割り当てた領域を指し示すように、スナップショット・ボリュームの更新管理ディレクトリ33の該当箇所を更新する(図7:ステップS317)。同時に、複製ボリューム10Bに更新データがあることを示すために、更新管理テーブル25の該当箇所に「1」をセットして更新し(図7:ステップS318/更新データ参照先登録工程)、ライト・コマンド処理を終える。
このように、ライト・コマンド処理を上記のように行うことによって、マスターボリューム10Aへの負荷がかからない状態での複製ボリューム10Bへのライト・コマンド処理が可能になる。
(リード・コマンド処理)
次に、スナップショット・コマンドを受信した後に発生したリード・コマンド処理について、図8に示すフローチャートに基づいて説明する。
リード・コマンドを受信した場合は、まず、主制御部11は、属性管理テーブル21を参照し(図8:ステップS401)、リード・コマンドの対象ボリュームがスナップショット属性を持っているかを判定する(図8:ステップS402)。
この図8のステップS402で、スナップショット属性を持っていないと判断された場合(図8:ステップS402/ノー)、リード・コマンドの対象ボリュームはスナップショット処理とは関係のないボリュームになるので、リード・コマンドの対象ボリュームからデータを読み出すと共に(図8:ステップS403)、この読み出したデータをホストへ転送して(図8:ステップS404)、リード・コマンドを終了する。
一方、図8のステップS402でスナップショット属性を持っていると判定された場合(図8:ステップS402/イエス)、次に、リード・コマンドの対象ボリュームが既にデータを保持しているかを確認するために、更新管理テーブル25を参照する(図8:ステップS405)。
次に、更新管理テーブル25の判定を行い(図8:ステップS406)、その結果ステップリード対象のボリュームの該当箇所にデータがある(保持している)と判定した場合(図8:ステップS406/イエス)は、更新管理ディレクトリ33を参照して、読み出し対象を複製ボリューム10Bから更新管理ディレクトリ33に格納されてる共有ボリューム10Dに切り替えを行う(図8:ステップS407)。
そして、この共有ボリューム10Dからデータを読み出すと共に(図8:ステップS408)、この読み出したデータをホストへ転送し(図8:ステップS404)、リード・コマンドを終了する。
更に、図8のステップS406において、複製ボリューム10Bに直接更新されたデータが無いと判断した場合は、次に、ステップS409で差分管理テーブル24を参照し(図8:ステップS409)、ステップS410で差分管理テーブル24に差分データがあるかを判定する(図8:ステップS410)。
この図8のステップS410で複製ボリューム10Bに差分があると判断した場合(図8:ステップS410/イエス)は、差分管理ディレクトリ31を参照して、読み出し対象を複製ボリュームから差分管理ディレクトリ31に格納されている共有ボリューム10Dに読み出し先の切り替えを行う(図8:ステップS411)。
そして、共有ボリュームからデータを読み出し(図8:ステップS412)、読み出したデータをホストへ転送し(図8:ステップS404)、リード・コマンドを終了する。
前記図8のステップS410で複製ボリューム10Bに直接更新されたデータが無いと判断した場合、リード・コマンドが発行された複製ボリューム10Bはデータを保持していないことになる。この場合、リード・コマンド対象の複製ボリューム10Bが参照しているデータの実データの在処を、上位世代の複製ボリューム10B或いはマスターボリューム10Aから検索する必要がある。
そこで、この場合は、ボリューム対応管理テーブル22と世代管理テーブルS23を参照し(図8:ステップS413)、リード・コマンドの対象となっている複製ボリューム10Bの世代番号、及び同一マスターボリューム10Aのペアである他の複製ボリューム10Cを検索する。
次に、図8のステップS414において、現在検索している複製ボリュームの世代番号が「1」と判断した場合は、複製ボリューム10Bが参照している実データはマスターボリューム10Aに存在することになるので、リード・コマンドの読み出し先をマスターボリューム10Aに設定し(図8:ステップS416)、マスタ・ボリュームからデータを読み出し(図8:ステップS417)、この読み出したデータをホストへ転送し((図8:ステップS404)、リード・コマンドを終了する。
又、前述した図8のステップS414の工程で世代番号が「1」でない、つまり世代番号が「2」以上であると判断した場合は、ステップS415において、同一のマスターボリューム10Aを持つ複製ボリューム10Bの中から1つ上の世代の複製ボリューム10Bを次の検索対象のスナップショットとして選択する。
例えば、現在マスターボリュームがLV0で、現在検索対象の複製ボリュームがLV1で、LV1の世代番号が2の場合は、同じLV0をマスターボリューム10Aとする複製ボリューム10Bをボリューム対応テーブル22から検索し、さらに世代管理テーブル23から世代番号が一つ小さい、世代番号「1」の複製ボリュームLV3を特定する、という処理を行い、上位世代の複製ボリューム(スナップショット・ボリューム)10Bを決定する。
新規に検索する複製ボリューム10Bが決定された後は、再度、ステップS409〜S415を繰り返し、読み出し先ボリュームが決定されるまでボリュームの検索処理を続ける。
そして、読み出し先ボリュームが決定した後は、該当するマスターボリューム10A或いは共有ボリューム10Dからデータを読み出し、読み出したデータをホストへ転送してリード・コマンドを終了する。
このように、リード・コマンド処理を上記のように行う事で、適切なデータを読み出すことが出来る。例えば、図8において、複製ボリュームLV1のpage1に対してリード・コマンドを発行した場合は、上位世代の複製ボリュームLV3よりB0のデータを読み出してホストにデータを返却する。
また、複製ボリュームLV1のpage3に対してリード・コマンドを発行した場合は、上位世代の複製ボリュームLV3ではなく、マスタ・ボリュームLV0よりD0のデータを読み出すことができる。
更に、複製ボリュームLV3のpage3に対するリード・コマンドは、直接データ更新を行ったデータD2を読み出す事ができる。
これまでに述べた方法にて複製ボリューム10B(10C)を管理することで、複製ボリューム10B(10C)の世代管理を行い、これらをバックアップ目的として保持しながら、そのなかのある特定のボリュームを、開発業務などの二次利用使用することが出来る。また、二次利用を行っている時に複製ボリューム10B(10C)にデータ更新が発生した場合でも、マスターボリューム10Aへのアクセスが発生しないため、マスターボリューム10Aを使用する業務に対して与える影響を無くすことが出来るという利点がある。
ここで、上述した各構成の動作部分における動作内容については、これをコンピュータで実行可能にプログラム化し、前述した各工程を実行する主制御部11が備えているコンピュータに実行させるようにしてもよい。
この場合、プログラム化した各プログラムについては、非一時的な記録媒体、例えば、DVDやCD、フラッシュメモリなどに記録させてもよい。その場合、本プログラムは、記録媒体からコンピュータによって読み出され、実行される。
ここで、上述した図1乃至図8に開示した実施形態では、スナップショットのデータイメージの保持を複製ボリューム10Bで行っている例で説明したが、データイメージの保持の方法は背景技術に記載しているような、共有プールボリュームを使用した形態でもよい。
又、各種管理テーブル情報は制御用メモリ15上にある前提で説明しているが、これらの管理情報は、マスターボリューム10Aや複製ボリューム10B(10C)、或いは共有プールボリューム10Dを使用している場合は、共有プールボリューム10D上の空き領域など、磁気ディスク装置に格納されていてもよい。
更に、ディスク装置は、磁気ディスク装置に限定しない。例えば、磁気ディスク装置の変わりにフラッシュメモリを使用したストレージ装置や、メモリ上に作成した仮想ディスク装置を使用してもよい。
このように構成され機能する上記実施形態については、その内容をまとめると、以下の付記のようになる。尚、これについては、本発明をこれに限定するものではない。
〔付記1〕
マスタ−ボリュ−ム10Aと同一容量の複製ボリュ−ム10B(10C)と、この複製ボリュ−ム10B(10C)の複製データを格納する共有プールボリュ−ム10Dと、前記複製ボリュ−ム10B(10C)に対する外部(ホストコンピュータ)からの前記複製データのデータアクセスを管理すると共に前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
前記主制御部を、前記複製ボリュ−ム10B(10C)に対する外部からのデータアクセスを管理するデータ複製制御手段12と、前記複製データの格納先を管理するアドレス変換手段13とを備えた構成とし、
前記データ複製制御手段12が、前記マスタ−ボリュ−ム10Aの更新時には当該マスタ−ボリュ−ム10Aのデータを前記複製ボリュ−ム10B(10C)に複製すると共に、前記複製ボリュ−ム10B(10C)のデータ更新時には当該複製ボリュ−ム10B(10C)に対してデータ更新を直接行うデータ複製更新処理機能を備えていることを特徴としたデータ複製システム。
〔付記2〕
付記1に記載のデータ複製システムにおいて、
前記データ複製制御手段12に、
前記マスターボリューム10Aから複製ボリューム10B(10C)にデータ複製を行ったことを管理するための差分管理テーブル25と、前記複製ボリューム10B(10C)に対してデータ複製の更新を直接実行したこと管理するための更新管理テーブル25とを備えた、データ複製制御用メモリ15Aを併設すると共に、
前記データ複製制御手段12が、前記データ複製制御用メモリ15Aに格納された情報に基づいて前記データ複製更新処理機能を実行する構成とし、
前記アドレス変換手段13に、
前記共有プールボリューム10Dの使用状況を管理するための割当管理テーブルを備えたアドレス変換制御用メモリ15Bを併設したことを特徴とするデータ複製システム。
〔付記3〕
付記2に記載のデータ複製システムにおいて、
前記データ複製用制御メモリ15Aが、前記マスタ−ボリュ−ム10Aと複製ボリュ−ム10B(10C)とのペア関係を管理するためのボリューム対応管理テーブルと、前記複製ボリュ−ム10B(10C)の経時的な世代管理を行うための世代管理テーブル23とを備えた構成としたことを特徴とするデータ複製システム。
〔付記4〕
付記1,2又は3に記載のデータ複製システムにおいて、
前記データ複製更新機能の実行に際しては、前記複数の複製ボリュ−ム10B(10C)の内の一の複製ボリュ−ム10Bへのデータ更新時には他の複製ボリュ−ム10Cに対するデータ複製は実行されないことを特徴とするデータ複製システム。
〔付記5〕
付記1,2又は3に記載のデータ複製システムにおいて、
前記複製ボリュ−ム10B(10C)に対する外部(ホストコンピュータ)からの前記複製ボリュームに対する読み出し要求に実行に際し、前記データ複製制御手段12は、前記複数の複製ボリューム10B(10C)の内の一の複製ボリューム10Bから読み出す第1のデータに対して、当該一の複製ボリュームを介して他の複製ボリューム10Cから読み出す第2のデータは前記第1のデータとは異なった内容のデータとするリードデータ読出規制機能を備えていることを特徴としたデータ複製システム。
〔付記6〕
付記2又は3に記載のデータ複製システムにおいて、
前記アドレス変換制御用メモリ15Bに、前記各複製ボリューム10B(10C)の実データの格納アドレスを保持する差分管理ディレクトリ31と、前記各複製ボリューム10B(10C)への直接更新が発生した時の実データアドレスを保持する更新管理ディレクトリ33とを格納すると共に、
前記アドレス変換手段13が、前記アドレス変換制御用メモリ15Bに格納された情報に基づいて前記複製データの格納先を管理する複製データ格納先管理機能を備えていることを特徴としたデータ複製システム。
〔付記7〕(方法の発明/ライトコマンド処理:更新関係)
マスタ−ボリュ−ム用の複製ボリュ−ム10B(10C)と、この複製ボリュ−ム10B(10C)の複製データを格納する共有プールボリュ−ム10Dとを備えると共に、前記複製ボリュ−ム10B(10C)に対する外部(ホストコンピュータ)からの前記複製データのデータアクセスを管理すると共に前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
複製ボリュ−ム10Bへのライトコマンドが入力された場合、予め設定された更新管理デーブルを参照して当該複製ボリュ−ム10Bが既に更新処理が実施されているか否かを判定する更新処理判定工程と、
この更新処理判定工程で前記複製ボリュ−ム10Bに差分有りと判定された場合に当該複製ボリュ−ム10Bに予め割り当てられている共有ボリュームのアドレスを前記ライトコマンドの対象としてそこに前記ライトコマンドにかかるデータを書き込む共有ボリューム書込み工程(第1の工程)と、
前記共有ボリューム書込み工程(第1の工程)で当該複製ボリュ−ム10Bの更新データの参照先である共有ボリューム上に割り当てたアドレスを所定のメモリに記憶させ且つ前記複製ボリュ−ム10Bに更新データがあることを示すデータを更新管理テーブルの該当箇所に登録する更新データ参照先登録工程とを設け、
これらの各工程における判定,書き込み,登録の各処理内容を前記主制御部が実行するように構成したことを特徴とするデータ複製方法。
〔付記8〕(方法の発明/ライトコマンド処理:更新関係)
マスタ−ボリュ−ム用の複製ボリュ−ム10B(10C)と、この複製ボリュ−ム10B(10C)の複製データを格納する共有プールボリュ−ム10Dとを備えると共に、前記複製ボリュ−ム10B(10C)に対する外部(ホストコンピュータ)からの前記複製データのデータアクセスを管理すると共に前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
複製ボリュ−ム10Bへのライトコマンドが入力された場合、予め設定された更新管理デーブルを参照して当該複製ボリュ−ム10Bが既に更新処理が実施されているか否かを判定する更新処理判定工程と、
前記更新処理判定工程で前記複製ボリュ−ム10Bに差分無し(更新が発生していない)と判定された場合、予め設定された割当管理テーブルを参照して前記共有ボリュームの空き領域を検索する空き領域検索工程と、
この空き領域検索工程で共有プールボリュームの空き領域が見つかった場合に当該空き領域に前記ライトコマンドにかかるデータを書き込む共有ボリューム書込み工程(第2工程)と、
前記共有ボリューム書込み工程(第2の工程)で当該複製ボリュ−ム10Bの更新データの参照先である共有ボリューム上に割り当てたアドレスを所定のメモリに記憶させ且つ前記複製ボリュ−ム10Bに更新データがあることを示すデータを更新管理テーブルの該当箇所に登録する更新データ参照先登録工程とを設け、
これらの各工程における判定,検索,書き込み,登録の各処理内容を前記主制御部が実行するように構成したことを特徴とするデータ複製方法。
〔付記9〕(プログラム発明/ライトコマンド対応:更新関係)
マスタ−ボリュ−ム用の複製ボリュ−ム10B(10C)と、この複製ボリュ−ム10B(10C)の複製データを格納する共有プールボリュ−ム10Dとを備えると共に、前記複製ボリュ−ム10B(10C)に対する外部(ホストコンピュータ)からの前記複製データのデータアクセスを管理すると共に前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
複製ボリュ−ム10Bへのライトコマンドが入力された場合、予め設定された更新管理デーブルを参照して当該複製ボリュ−ム10Bが既に更新処理が実施されているか否かを判定する更新処理判定機能、
この更新処理判定機能で前記複製ボリュ−ム10Bに差分有りと判定された場合に当該複製ボリュ−ム10Bに予め割り当てられている共有ボリュームのアドレスを前記ライトコマンドの対象としてそこに前記ライトコマンドにかかるデータを書き込む共有ボリューム書込み処理機能(第1処理機能)、
および前記共有ボリューム書込み処理機能(第1処理機能)で当該複製ボリュ−ム10Bの更新データの参照先である共有ボリューム上に割り当てたアドレスを、所定のメモリに記憶させると共に前記複製ボリュ−ム10Bに更新データがあることを示すデータを更新管理テーブルの該当箇所に登録する更新データ参照先登録処理機能を設け、
これらの各処理機能における判定,書き込み,登録の各処理内容を前記主制御部が備えているコンピュータに実現させるようにしたことを特徴とするデータ複製処理プログラム。
〔付記10〕(プログラム発明/ライトコマンド対応:更新関係)
マスタ−ボリュ−ム用の複製ボリュ−ム10B(10C)と、この複製ボリュ−ム10B(10C)の複製データを格納する共有プールボリュ−ム10Dとを備えると共に、前記複製ボリュ−ム10B(10C)に対する外部(ホストコンピュータ)からの前記複製データのデータアクセスを管理すると共に前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
複製ボリュ−ム10Bへのライトコマンドが入力された場合、予め設定された更新管理デーブルを参照して当該複製ボリュ−ム10Bが既に更新処理が実施されているか否かを判定する更新処理判定機能、
前記更新処理判定機能で前記複製ボリュ−ム10Bに差分無し(更新が発生していない)と判定された場合、予め設定された割当管理テーブルを参照して前記共有ボリュームの空き領域を検索する空き領域検索処理機能、
この空き領域検索処理機能で共有ボリュームの空き領域が見つかった場合に該空き領域に前記ライトコマンドにかかるデータを書き込む共有ボリューム書込み処理機能(第2処理機能)、
および前記共有ボリューム書込み処理機能(第2の処理機能)で当該複製ボリュ−ム10Bの更新データの参照先である共有ボリューム上に割り当てたアドレスを、所定のメモリに記憶させると共に前記複製ボリュ−ム10Bに更新データがあることを示すデータを更新管理テーブルの該当箇所に登録する更新データ参照先登録工程を設け、
これらの各処理機能における判定,検索,書き込み,登録の各処理内容を前記主制御部が備えているコンピュータに実現させるようにしたことを特徴とするデータ複製処理プログラム。
〔付記11〕(方法の発明/リードコマンド対応:非更新)
マスタ−ボリュ−ム用の複製ボリュ−ム10B(10C)と、この複製ボリュ−ム10B(10C)の複製データを格納する共有プールボリュ−ム10Dとを備えると共に、前記複製ボリュ−ム10B(10C)に対するホスト(ホストコンピュータ)からの前記複製データのデータアクセスを管理し且つ前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
複製ボリュ−ム10Bへのリードコマンドが前記ホストから入力された場合、予め設定された更新管理デーブルを参照してリードコマンドの対象となっている一の複製ボリュ−ム10Bがリードコマンドの対象データを保持しているか否かを判定するデータ保持判定工程と、
このデータ保持判定工程でリードコマンドの対象となるデータが有ると判定された場合に当該複製ボリュ−ム10Bに予め割り当てられている共有ボリュームのアドレスを前記リードコマンドの対象とすると共にそこから前記リードコマンドにかかるデータを読み出す共有ボリューム読出し工程と、
この読み出したデータを前記ホストへ転送処理するリードデータ転送工程とを設け、
これらの各工程における判定,読み出し,転送の各処理内容を前記主制御部が実行するように構成したことを特徴とするデータ複製方法。
〔付記12〕(方法の発明/リードコマンド対応:非更新)
マスタ−ボリュ−ム用の複製ボリュ−ム10B(10C)と、この複製ボリュ−ム10B(10C)の複製データを格納する共有プールボリュ−ム10Dとを備えると共に、前記複製ボリュ−ム10B(10C)に対するホスト(ホストコンピュータ)からの前記複製データのデータアクセスを管理し且つ前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
複製ボリュ−ム10Bへのリードコマンドが前記ホストから入力された場合、予め設定された更新管理デーブルを参照してリードコマンドの対象となっている一の複製ボリュ−ム10Bがリードコマンドの対象データを保持しているか否かを判定するデータ保持判定工程と、
前記データ保持判定工程で前記複製ボリュ−ム10Bに直接更新されたデータが無いと判定された場合、予め設定された差分管理テーブルを参照して当該複製ボリュ−ム10Bにかかる差分データが有るか否かを判定する差分データ有無判定工程と、
この差分データ有無判定工程で差分データ有りと判定された場合には、読出し対象ボリュームを当該複製ボリュ−ム10Bに予め関連づけられている共有ボリュームに切り換えると共に当該共有ボリュームから前記リードコマンドにかかるデータを読み出すと共に当該読み出したデータを前記ホストへ転送処理するリードデータ読出転送工程とを設け、
これらの各工程における判定,判定,読出転送の各実行内容を前記主制御部が実行するように構成したことを特徴とするデータ複製方法。
〔付記13〕(プログラム発明/リードコマンド対応:非更新)
マスタ−ボリュ−ム用の複製ボリュ−ム10B(10C)と、この複製ボリュ−ム10B(10C)の複製データを格納する共有プールボリュ−ム10Dとを備えると共に、前記複製ボリュ−ム10B(10C)に対するホスト(ホストコンピュータ)からの前記複製データのデータアクセスを管理し且つ前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
複製ボリュ−ム10Bへのリードコマンドが前記ホストから入力された場合、予め設定された更新管理デーブルを参照してリードコマンドの対象となっている一の複製ボリュ−ム10Bがリードコマンドの対象データを保持しているか否かを判定するデータ保持判定処理機能、
このデータ保持判定処理機能でリードコマンドの対象となるデータが有ると判定された場合に当該複製ボリュ−ム10Bに予め割り当てられている共有ボリュームのアドレスを前記リードコマンドの対象とするリード対象特定処理機能、
およびこの特定された共有ボリュームから前記リードコマンドにかかるデータを読み出すと共に当該読み出したデータを前記ホストへ転送処理するリードデータ読出転送処理機能を設け、
これらの各処理機能における判定,特定,読出し転送の各処理内容を前記主制御部が備えているコンピュータに実現させるようにしたことを特徴とするデータ複製処理プログラム。
〔付記14〕(プログラム発明/リードコマンド対応:非更新)
マスタ−ボリュ−ム用の複製ボリュ−ム10B(10C)と、この複製ボリュ−ム10B(10C)の複製データを格納する共有プールボリュ−ム10Dとを備えると共に、前記複製ボリュ−ム10B(10C)に対するホスト(ホストコンピュータ)からの前記複製データのデータアクセスを管理し且つ前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
複製ボリュ−ム10Bへのリードコマンドが前記ホストから入力された場合、予め設定された更新管理デーブルを参照してリードコマンドの対象となっている一の複製ボリュ−ム10Bがリードコマンドの対象データを保持しているか否かを判定するデータ保持判定処理機能、
前記データ保持判定処理機能で前記複製ボリュ−ム10Bに直接更新されたデータが無いと判定された場合、予め設定された差分管理テーブルを参照して当該複製ボリュ−ム10Bにかかる差分データが有るか否かを判定する差分データ有無判定処理機能、
および前記差分データ有無判定処理機能で差分データ有りと判定された場合には、読出し対象ボリュームを当該複製ボリュ−ム10Bに予め関連づけられている共有ボリュームに切り換えると共に当該共有ボリュームから前記リードコマンドにかかるデータを読み出すと共に当該読み出したデータを前記ホストへ転送処理するリードデータ読出転送処理機能を設け、
これらの各処理機能における判定,判定,読出転送の各処理を前記主制御部が備えているコンピュータに実現させるようにしたことを特徴とするデータ複製処理プログラム。
本発明は、磁気ディスクアレイ・サブシステムにおけるボリューム・レベルのバックアップ等の用途に利用できる。
10 データ複製システム(ディスクアレイ・サブシステム)
10A マスターボリューム
10B,10C 複製ボリューム(スナップショット・ボリューム)
10D 共有プールボリューム(共有ボリューム)
12 データ複製制御手段
12a データ複製更新機能
12b リードデータ読出規制機能
13 アドレス変換手段
13a 複製データ格納先管理機能
15 制御用メモリ
15A データ複製制御用メモリ
15B アドレス変換制御用メモリ
22 ボリューム対応管理テーブル
23 世代管理テーブル
24 差分管理テーブル
25 更新管理テーブル
31 差分管理ディレクトリ
32 割当管理テーブル
33 更新管理ディレクトリ

Claims (7)

  1. マスターボリューム用の複製ボリュームと、この複製ボリュームの複製データを格納する共有プールボリュームと、前記複製ボリュームに対する外部からの前記複製データのデータアクセスを管理すると共に前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
    前記主制御部を、前記複製ボリュームに対する外部からのデータアクセスを管理するデータ複製制御手段と、前記複製データの格納先を管理するアドレス変換手段とを備えた構成とし、
    前記データ複製制御手段が、前記マスターボリュームの更新時には当該マスターボリュームのデータを前記複製ボリュームに複製すると共に、前記複製ボリュームのデータ更新時には当該複製ボリュームに対してデータ更新を直接行うデータ複製更新処理機能を備え、
    前記データ複製制御手段には、前記マスターボリュームから複製ボリュームにデータ複製を行ったことを管理するための差分管理テーブルと前記複製ボリュームに対してデータ複製の更新を直接実行したことを管理するための更新管理テーブルとを備えたデータ複製制御用メモリが併設され
    前記データ複製制御手段が、前記データ複製制御用メモリに格納された情報に基づいて前記データ複製更新処理機能を実行する構成とし
    前記アドレス変換手段に
    前記共有プールボリュームの使用状況を管理するための割当管理テーブルを備えたアドレス変換制御用メモリを併設したことを特徴とするデータ複製システム。
  2. 請求項に記載のデータ複製システムにおいて、
    前記データ複製用制御メモリが、前記マスターボリュームと複製ボリュームとのペア関係を管理するためのボリューム対応管理テーブルと、前記複製ボリュームの経時的な世代管理を行うための世代管理テーブルとを備えた構成としたことを特徴とするデータ複製システム。
  3. 請求項1又はに記載のデータ複製システムにおいて、
    前記データ複製更新処理機能の実行に際しては、前記複数の複製ボリュームの内の一の複製ボリュームへのデータ更新時には他の複製ボリュームに対するデータ複製は実行されないことを特徴とするデータ複製システム。
  4. 請求項1又はに記載のデータ複製システムにおいて、
    前記複製ボリュームに対する外部からの前記複製ボリュームに対する読み出し要求実行に際し、前記データ複製制御手段は、前記複数の複製ボリュームの内の一の複製ボリュームから読み出す第1のデータに対して、当該一の複製ボリュームを介して他の複製ボリュームから読み出す第2のデータは前記第1のデータとは異なった内容のデータとするリードデータ読出規制機能を備えていることを特徴としたデータ複製システム。
  5. 請求項又はに記載のデータ複製システムにおいて、
    前記アドレス変換制御用メモリに、前記各複製ボリュームの実データの格納アドレスを保持する差分管理ディレクトリと、前記各複製ボリュームへの直接更新が発生した時の実データアドレスを保持する更新管理ディレクトリとを格納すると共に、
    前記アドレス変換手段が、前記アドレス変換制御用メモリに格納された情報に基づいて前記複製データの格納先を管理する複製データ格納先管理機能を備えていることを特徴としたデータ複製システム。
  6. マスターボリューム用の複製ボリュームと、この複製ボリュームの複製データを格納する共有プールボリュームとを備えると共に、前記複製ボリュームに対する外部からの前記複製データのデータアクセスを管理すると共に前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
    複製ボリュームへのライトコマンドが入力された場合、予め設定された更新管理デーブルを参照して当該複製ボリュームに対する直接の更新処理が既に実施されているか否かを判定し、
    この更新処理の判定工程で前記複製ボリュームに差分有り(更新が発生している)と判定された場合に当該複製ボリュームに予め割り当てられている共有プールボリュームのアドレスを前記ライトコマンドの対象としてそこに前記ライトコマンドにかかるデータを書き込む一方
    前記更新処理の判定工程で前記複製ボリュームに差分無し(更新が発生していない)と判定された場合には、予め設定された割当管理テーブルを参照して前記共有ボリュームの空き領域を検索し
    この空き領域の検索工程で共有プールボリュームの空き領域が見つかった場合に当該空き領域に前記ライトコマンドにかかるデータを書き込むようにし
    前記共有プールボリュームへの書込みを行った共有プールボリューム上の空き領域のアドレスを当該複製ボリュームの更新データの参照先として所定のメモリに記憶させると共に前記複製ボリュームに更新データがあることを示すデータを更新管理テーブルの該当箇所に登録する構成とし、
    これらの各工程における判定,書き込み,登録の各処理内容を前記主制御部が実行するように構成したことを特徴とするデータ複製方法。
  7. マスターボリューム用の複製ボリュームと、この複製ボリュームの複製データを格納する共有プールボリュームとを備えると共に、前記複製ボリュームに対する外部からの前記複製データのデータアクセスを管理すると共に前記複製データの格納先を管理する主制御部を備えたスナップショット方式によるデータ複製システムにあって、
    複製ボリュームへのライトコマンドが入力された場合、予め設定された更新管理デーブルを参照して当該複製ボリュームに対する直接の更新処理が実施されているか否かを判定する更新処理判定機能、
    前記更新処理判定機能で前記複製ボリュームに差分無し(更新が発生していない)と判定された場合に、予め設定された割当管理テーブルを参照して前記共有プールボリュームの空き領域を検索する空き領域検索処理機能
    前記更新処理判定機能で前記複製ボリュームに差分有り(更新が発生している)と判定された場合に当該複製ボリュームに予め割り当てられている共有プールボリュームのアドレスを前記ライトコマンドの対象としてそこに前記ライトコマンドにかかるデータを書き込む一方、前記更新処理判定機能で前記複製ボリュームに差分無し(更新が発生していない)と判定された場合に前記空き領域検索処理機能が見つけた空き領域に前記ライトコマンドにかかるデータを書き込む共有プールボリューム書込み処理機能、
    および前記共有プールボリューム書込み処理機能で当該複製ボリュームの更新データの参照先である共有プールボリューム上に割り当てたアドレスを、所定のメモリに記憶させると共に前記複製ボリュームに更新データがあることを示すデータを更新管理テーブルの該当箇所に登録する更新データ参照先登録処理機能を設け、
    これらの各処理機能における上記判定,検索,書き込み,登録の各処理内容を前記主制御部が備えているコンピュータに実現させるようにしたことを特徴とするデータ複製処理プログラム。
JP2012078758A 2012-03-30 2012-03-30 データ複製システム、データ複製方法、及びそのプログラム Expired - Fee Related JP5561303B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012078758A JP5561303B2 (ja) 2012-03-30 2012-03-30 データ複製システム、データ複製方法、及びそのプログラム
US13/845,271 US9235349B2 (en) 2012-03-30 2013-03-18 Data duplication system, data duplication method, and program thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012078758A JP5561303B2 (ja) 2012-03-30 2012-03-30 データ複製システム、データ複製方法、及びそのプログラム

Publications (2)

Publication Number Publication Date
JP2013210704A JP2013210704A (ja) 2013-10-10
JP5561303B2 true JP5561303B2 (ja) 2014-07-30

Family

ID=49236664

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012078758A Expired - Fee Related JP5561303B2 (ja) 2012-03-30 2012-03-30 データ複製システム、データ複製方法、及びそのプログラム

Country Status (2)

Country Link
US (1) US9235349B2 (ja)
JP (1) JP5561303B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104866078B (zh) * 2014-02-24 2020-03-24 联想(北京)有限公司 电子设备的控制方法、控制装置及电子设备
JP6202026B2 (ja) * 2015-03-19 2017-09-27 日本電気株式会社 データ管理装置、データ管理方法およびデータ管理プログラム
JP6281511B2 (ja) * 2015-03-24 2018-02-21 日本電気株式会社 バックアップ制御装置、バックアップ制御方法、及び、プログラム

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6553387B1 (en) * 1999-11-29 2003-04-22 Microsoft Corporation Logical volume configuration data management determines whether to expose the logical volume on-line, off-line request based on comparison of volume epoch numbers on each extents of the volume identifiers
JP4108944B2 (ja) 2001-06-14 2008-06-25 株式会社東芝 スナップショット機能を有するディスク記憶装置、スナップショット差分情報管理方法及びスナップショット管理プログラム
JP4225206B2 (ja) * 2004-01-23 2009-02-18 日本電気株式会社 記憶装置の複製データ格納システムと複製データ格納プログラム
JP4419884B2 (ja) * 2005-03-22 2010-02-24 日本電気株式会社 データ複製装置、方法及びプログラム並びに記憶システム
US8849767B1 (en) * 2005-04-13 2014-09-30 Netapp, Inc. Method and apparatus for identifying and eliminating duplicate data blocks and sharing data blocks in a storage system
US7516286B1 (en) * 2005-08-31 2009-04-07 Symantec Operating Corporation Conversion between full-data and space-saving snapshots
US20080140963A1 (en) * 2006-12-11 2008-06-12 Thomason Ronald G Methods and systems for storage system generation and use of differential block lists using copy-on-write snapshots
US8799595B1 (en) * 2007-08-30 2014-08-05 American Megatrends, Inc. Eliminating duplicate data in storage systems with boot consolidation
US7908436B1 (en) * 2008-04-25 2011-03-15 Netapp, Inc. Deduplication of data on disk devices using low-latency random read memory
US8190836B1 (en) * 2008-04-30 2012-05-29 Network Appliance, Inc. Saving multiple snapshots without duplicating common blocks to protect the entire contents of a volume
JPWO2009154272A1 (ja) 2008-06-20 2011-12-01 日本電気株式会社 版管理システム、方法、及び、プログラム
US8832034B1 (en) * 2008-07-03 2014-09-09 Riverbed Technology, Inc. Space-efficient, revision-tolerant data de-duplication
US8099571B1 (en) * 2008-08-06 2012-01-17 Netapp, Inc. Logical block replication with deduplication
JP2010102479A (ja) * 2008-10-23 2010-05-06 Hitachi Ltd 計算機システム、ストレージ装置及びデータ更新方法
WO2010095275A1 (en) * 2009-02-23 2010-08-26 Hitachi, Ltd. Storage system and method using snapshots involving little metadata
US8612702B1 (en) * 2009-03-31 2013-12-17 Symantec Corporation Systems and methods for performing optimized backups of multiple volumes
US8356017B2 (en) * 2009-08-11 2013-01-15 International Business Machines Corporation Replication of deduplicated data
WO2011037624A1 (en) * 2009-09-22 2011-03-31 Emc Corporation Snapshotting a performance storage system in a system for performance improvement of a capacity optimized storage system
US8156306B1 (en) * 2009-12-18 2012-04-10 Emc Corporation Systems and methods for using thin provisioning to reclaim space identified by data reduction processes
US8452932B2 (en) * 2010-01-06 2013-05-28 Storsimple, Inc. System and method for efficiently creating off-site data volume back-ups
US8402237B2 (en) * 2010-01-08 2013-03-19 Netapp, Inc. Presentation of a read-only clone LUN to a host device as a snapshot of a parent LUN
US8627000B2 (en) * 2010-02-08 2014-01-07 Microsoft Corporation Virtual disk manipulation operations
US8370593B2 (en) * 2010-04-14 2013-02-05 Hitachi, Ltd. Method and apparatus to manage groups for deduplication
WO2011132227A1 (en) * 2010-04-22 2011-10-27 Hitachi, Ltd. System and method of controlling migration of data based on deduplication efficiency
US8381217B1 (en) * 2010-04-30 2013-02-19 Netapp, Inc. System and method for preventing resource over-commitment due to remote management in a clustered network storage system
US8423735B2 (en) * 2010-05-21 2013-04-16 International Business Machines Corporation Space reservation in a deduplication system
GB2470497B (en) * 2010-07-19 2011-06-15 Quantum Corp Collaborative, distributed, data de-duplication
JP5382227B2 (ja) * 2010-08-31 2014-01-08 日本電気株式会社 ストレージシステム
JP2012058863A (ja) * 2010-09-07 2012-03-22 Nec Corp ディスク装置、および、ディスク装置へのデータ複製方法、プログラム
US8566541B2 (en) * 2010-09-14 2013-10-22 Hitachi, Ltd. Storage system storing electronic modules applied to electronic objects common to several computers, and storage control method for the same
US8458418B1 (en) * 2010-12-31 2013-06-04 Emc Corporation Replication of deduplicated data between multi-controller systems
US20120233416A1 (en) * 2011-03-08 2012-09-13 International Business Machines Corporation Multi-target, point-in-time-copy architecture with data deduplication
US8849768B1 (en) * 2011-03-08 2014-09-30 Symantec Corporation Systems and methods for classifying files as candidates for deduplication
US8812450B1 (en) * 2011-04-29 2014-08-19 Netapp, Inc. Systems and methods for instantaneous cloning
US8745003B1 (en) * 2011-05-13 2014-06-03 Emc Corporation Synchronization of storage using comparisons of fingerprints of blocks
US9009437B1 (en) * 2011-06-20 2015-04-14 Emc Corporation Techniques for shared data storage provisioning with thin devices
US8589640B2 (en) * 2011-10-14 2013-11-19 Pure Storage, Inc. Method for maintaining multiple fingerprint tables in a deduplicating storage system
US8527544B1 (en) * 2011-08-11 2013-09-03 Pure Storage Inc. Garbage collection in a storage system
US8965856B2 (en) * 2011-08-29 2015-02-24 Hitachi, Ltd. Increase in deduplication efficiency for hierarchical storage system
US8832035B2 (en) * 2011-08-30 2014-09-09 Netapp, Inc. System and method for retaining deduplication in a storage object after a clone split operation
US20130054906A1 (en) * 2011-08-30 2013-02-28 International Business Machines Corporation Managing dereferenced chunks in a deduplication system
US8914595B1 (en) * 2011-09-29 2014-12-16 Emc Corporation Snapshots in deduplication
US8543609B1 (en) * 2011-09-29 2013-09-24 Emc Corporation Snapshots in deduplication
US8825605B2 (en) * 2011-10-11 2014-09-02 Netapp, Inc. Deduplication aware scheduling of requests to access data blocks
US8856549B2 (en) * 2011-11-28 2014-10-07 Cleversafe, Inc. Deleting encoded data slices in a dispersed storage network
US8712962B1 (en) * 2011-12-01 2014-04-29 Emc Corporation Snapshots in de-duplication
US8639669B1 (en) * 2011-12-22 2014-01-28 Emc Corporation Method and apparatus for determining optimal chunk sizes of a deduplicated storage system
US8732403B1 (en) * 2012-03-14 2014-05-20 Netapp, Inc. Deduplication of data blocks on storage devices

Also Published As

Publication number Publication date
JP2013210704A (ja) 2013-10-10
US20130262804A1 (en) 2013-10-03
US9235349B2 (en) 2016-01-12

Similar Documents

Publication Publication Date Title
JP4419884B2 (ja) データ複製装置、方法及びプログラム並びに記憶システム
US7054960B1 (en) System and method for identifying block-level write operations to be transferred to a secondary site during replication
US9003149B2 (en) Transparent file system migration to a new physical location
JP4170056B2 (ja) 複製ボリューム間でのバックアップ・リストア管理方法およびこの方法に用いる記憶制御装置
US20060047926A1 (en) Managing multiple snapshot copies of data
RU2665307C2 (ru) Восстановление приложения из моментального снимка
US7698319B2 (en) Database system management method, database system, database device, and backup program
CN109902034B (zh) 快照创建方法、装置、电子设备及机器可读存储介质
WO2017132872A1 (zh) 虚拟机备份方法、备份装置及宿主机
CN105988895B (zh) 快照处理方法及装置
CN105760218A (zh) 一种虚拟机在线迁移方法及装置
JP2016504700A (ja) ストレージシステムにおけるオブジェクトベースのトランザクションのための方法およびシステム
CN112000426B (zh) 一种数据处理方法及装置
JP4908481B2 (ja) データ記憶装置及び筐体内レプリケーション方法
JP5561303B2 (ja) データ複製システム、データ複製方法、及びそのプログラム
CN111158858A (zh) 一种虚拟机的克隆方法和装置,及计算机可读存储介质
JP4915365B2 (ja) データ格納方法及びその装置、複製データ格納方法及びその装置並びにそれらの制御プログラム
JP6197488B2 (ja) ボリューム管理装置、ボリューム管理方法及びボリューム管理プログラム
US7636823B1 (en) Switching roles between a production storage device and a snapshot device
US20120324186A1 (en) Method, apparatus and computer for data operation
JP2007172365A (ja) データ複製システム、複製データ処理プログラムおよび複製データ処理方法
US20060143423A1 (en) Storage device, data processing method thereof, data processing program thereof, and data processing system
CN107608623B (zh) 一种异步远程复制的方法、装置和系统
JP5459589B2 (ja) データ複製システム及びデータ処理方法
US11748259B2 (en) System and method to conserve device lifetime for snapshot generation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130711

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140304

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140424

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140513

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140526

R150 Certificate of patent or registration of utility model

Ref document number: 5561303

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees