JP4750169B2 - ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法 - Google Patents

ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法 Download PDF

Info

Publication number
JP4750169B2
JP4750169B2 JP2008265038A JP2008265038A JP4750169B2 JP 4750169 B2 JP4750169 B2 JP 4750169B2 JP 2008265038 A JP2008265038 A JP 2008265038A JP 2008265038 A JP2008265038 A JP 2008265038A JP 4750169 B2 JP4750169 B2 JP 4750169B2
Authority
JP
Japan
Prior art keywords
data
copy
storage
time
generation
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
JP2008265038A
Other languages
English (en)
Other versions
JP2009020914A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008265038A priority Critical patent/JP4750169B2/ja
Publication of JP2009020914A publication Critical patent/JP2009020914A/ja
Application granted granted Critical
Publication of JP4750169B2 publication Critical patent/JP4750169B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、ストレージのバックアップを世代毎に採取するストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法に関するものである。
通常、コンピュータシステムにおいては、障害やオペレーションミスからのデータ復旧のためにバックアップを採取している。バックアップの採取に用いられる、拡張されたコピー機能として、OPC(One Point Copy)やEC(Equivalent Copy)がある。OPCは、主に、スナップショットを作成するものであり、コピー先のストレージのデータは、指示された時点におけるコピー元のストレージのデータとなる。ECは、主に、ミラーを作成するものであり、コピー先のストレージのデータは、指示された期間においてコピー元のストレージのデータに同期する。
なお、本発明の関連ある従来技術として、ある時点のスナップショットイメージを保存するデータ保持部と、その後の更新データ、更新領域、世代を保存する別のデータ保持部とを備えたスナップショットイメージの世代管理方法がある(例えば、特許文献1参照)。
特開2005−292865号公報
バックアップデータからの復旧を考えた場合、細かな時間間隔で複数世代のバックアップを採取することが望ましい。しかしながら、従来の技術においては、複数世代のバックアップを採取する場合には、バックアップ元と同容量のボリュームを世代数分用意する必要があった。また、特許文献1のような技術では、予め現在の世代のストレージとバックアップのストレージに同時に書き込むミラーリング機能とその経路の構成を新たに用意する必要がある。また、最初のコピーから時間が経過した場合、更新データの数が増大し、リストア処理の負荷が増大する。
本発明は上述した問題点を解決するためになされたものであり、ストレージの世代毎のバックアップを低コストで採取するストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法を提供することを目的とする。
上述した課題を解決するため、本発明の一態様は、データを格納する所定のストレージの世代バックアップの作成を行うストレージ制御装置であって、指示された第1時点までの所定のストレージのデータを更新前データ用ストレージにコピーする第1コピー部と、第1時点以後の所定期間における所定のストレージの更新後データを更新後データ用ストレージにコピーする第2コピー部と、リストアの目標時刻を含むリストアの指示を受け取ると、更新前データ用ストレージのデータと目標時刻以前の更新後データ用ストレージのデータとを用いて、指定された第2時点におけるデータのリストアを行う制御部とを有する。
また、本発明の一態様は、データを格納する所定のストレージの世代バックアップの作成をコンピュータに実行させるストレージ制御プログラムであって、コンピュータを、指示された第1時点までの所定のストレージのデータを更新前データ用ストレージにコピーする第1コピー部と、第1時点以後の所定期間における所定のストレージの更新後データを更新後データ用ストレージにコピーする第2コピー部と、リストアの目標時刻を含むリストアの指示を受け取ると、更新前データ用ストレージのデータと目標時刻以前の更新後データ用ストレージのデータとを用いて、指定された第2時点におけるデータのリストアを行う制御部とを備えるストレージ制御装置として機能させる。
また、本発明の一態様は、データを格納する所定のストレージの世代バックアップの作成をコンピュータに実行させるストレージ制御方法であって、指示された第1時点までの所定のストレージのデータを更新前データ用ストレージにコピーし、第1時点以後の所定期間における所定のストレージの更新後データを更新後データ用ストレージにコピーし、リストアの目標時刻を含むリストアの指示を受け取ると、更新前データ用ストレージのデータと目標時刻以前の更新後データ用ストレージのデータとを用いて、指定された第2時点におけるデータのリストアを行うことをコンピュータに実行させる。
本発明によれば、ストレージの世代毎のバックアップを低コストで採取することができる。
以下、本発明の実施の形態について図面を参照しつつ説明する。
実施の形態1.
本実施の形態においては、OPC(第1コピー部による処理)と差分EC(第2コピー部による処理)を用いて世代バックアップ処理および世代リストア処理を行うストレージ制御装置について説明する。最初の世代のユーザディスク全てのバックアップの採取においてはOPCを用い、その後の世代のバックアップの採取においてはECにより前の世代との差分だけをコピーする差分ECを用いる。
まず、本実施の形態に係るストレージ制御装置を用いたストレージ装置の構成について説明する。
図1は、実施の形態1に係るストレージ装置の構成の一例を示すブロック図である。このストレージ装置1は、ホスト2に接続される。ストレージ装置1は、CA(Channel Adaptor)11、CM(Centralized Module)12(ストレージ制御装置)、ディスク13を備える。CM12は、CPU(Central Processing Unit)21(第1コピー部、第2コピー部、制御部)、キャッシュメモリ(Cache)22、FC(Fibre Channel)制御部(FC)23を備える。
ホスト2は、オペレータの操作を受け付けるとともに、ストレージ装置1へのアクセスを行う。CA11は、ホスト2とのインタフェースの制御を行う。FC制御部23は、ディスク13とのインタフェースの制御を行う。キャッシュメモリ22は、ユーザデータや制御データを格納する。CPU21は、キャッシュメモリ22、FC制御部23、CA11に対する資源管理やコピー制御を行う。
本実施の形態に係るディスク13は、コピー元となるユーザディスク、OPCによるユーザディスク全体のコピーのコピー先となるOPCディスク、ECによる差分コピーのコピー先となる差分ECディスクA、差分ECディスクB、差分ECディスクCで構成される。
次に、本実施の形態に係る制御データについて説明する。
キャッシュメモリ22は、制御データとして、コピーセッション管理情報、LBA(Logical Block Address)変換テーブル、世代管理テーブルを格納する。
まず、コピーセッション管理情報について説明する。図2は、実施の形態1に係るコピーセッション管理情報の構造の一例を示す表である。1回のOPCや1回の差分ECなど、コピーの処理の単位をセッションと呼び、OPCセッション、差分ECセッションAなどと呼ぶ。コピーセッション管理情報は、セッション識別子、セッション種別、セッションステイタス、コピー対象範囲(コピー元LUN(Logical Unit Number)、コピー先LUN、コピー元コピー対象開始LBA、コピー先コピー対象開始LBA、コピー対象LBA数)、未コピー領域を示すBitMapで構成される。セッション識別子は、そのセッションを示すユニークな番号である。セッション種別は、OPC、EC、差分OPC、差分ECなどの値を持つ。セッションステイタスは、セッションの状態を表し、稼働中(Active)、一時停止中(Suspend)などの値を持つ。
次に、LBA変換テーブルについて説明する。図3は、実施の形態1に係るLBA変換テーブルの構造の一例を示す表である。このLBA変換テーブルは、差分ECディスク上にてデータの格納位置を示す情報を保持する。ここでは、ユーザディスク上のLBAを示す論理LBAと差分ECディスク上に実際に格納されている物理LBAが対応付けられている。
次に、世代管理テーブルについて説明する。図4は、実施の形態1に係る世代管理テーブルの構造の一例を示す表である。この世代管理テーブルは、セッション間の世代を管理するものであり、世代番号、採取時刻(セッションが設定された時刻)、セッション識別子で構成される。セッション識別子は、最初の世代だけがOPCセッションの識別子であり、その後の世代が差分ECセッションの識別子である。
次に、本実施の形態に係る世代バックアップ処理について説明する。
世代バックアップ処理は、世代バックアップ開始処理、世代切り替え処理、世代バックアップ中WriteI/O処理、差分EC管理処理を含む。ここで、OPCセッションは、OPCセッション開始時におけるユーザディスクの全データのスナップショットをOPCディスクに作成するものである。また、差分ECセッションは、差分ECセッション開始から差分ECセッション一時停止までの間、差分ECセッション開始時からのユーザディスクの差分データのミラーを、対応する差分ECディスクに作成するものである。
まず、世代バックアップ開始処理について説明する。図5は、実施の形態1に係る世代バックアップ開始処理の動作の一例を示すフローチャートである。まず、CPU21は、ホスト2あるいはLAN経由の世代バックアップ処理の指示を受信すると(S111)、OPCセッション開始および差分ECセッションA開始の設定を行う(S112)。次に、CPU21によるOPCセッションは、ユーザディスク全体のバックアップを開始する(Initial コピー処理)(S113)。次に、CPU21による差分ECセッションAは、WriteI/Oが発行されるまで待機し(S114)、このフローは終了する。
次に、世代切り替え処理について説明する。ここでは、差分ECセッションAが稼働中で差分ECセッションBに切り替える場合について説明する。図6は、実施の形態1に係る世代切り替え処理の動作の一例を示すフローチャートである。まず、CPU21は、ホスト2あるいはLAN経由の世代切り替えの指示を受信すると(S151)、差分ECセッションA一時停止および差分ECセッションB開始の設定を行う(S152)。次に、CPU21による差分ECセッションAは、リカバリのためのリストアの指示があるまで状態を保持し(S153)、CPU21による差分ECセッションBは、WriteI/Oが発行されるまで待機し(S154)、このフローは終了する。
次に、世代バックアップ中WriteI/O処理について説明する。図7は、実施の形態1に係る世代バックアップ中WriteI/O処理の動作の一例を示すフローチャートである。まず、CPU21は、ホスト2あるいはLAN経由でユーザディスクに対するWriteI/Oの指示を受信すると(S211)、I/O範囲においてOPCディスクへのバックアップが完了しているか否かの判断を行う(S212)。完了している場合(S212,Yes)、処理S214へ移行する。一方、完了していない場合(S212,No)、CPU21は、更新前データをOPCディスクへコピーする(S213)。次に、CPU21は、WriteI/Oを実行する(S214)。次に、CPU21は、現在稼働中の差分ECセッションの確認を行い(S215)、確認された稼働中の差分ECディスクへ更新データのコピーを行い(S216)、このフローは終了する。
次に、差分EC管理処理について説明する。
差分EC管理処理は、差分ECセッションを管理する処理である。CPU21は、ユーザディスク上の位置情報(論理LBA)と差分ECディスク上に格納された物理位置情報(物理LBA)の対応関係をLBA変換テーブルとして記憶し、制御に用いる。また、差分ECセッション中、コピー元であるユーザディスクに更新が行われた場合、CPU21は、コピー先である差分ECディスクの空き領域に前詰めで更新データを格納する。
ここでは、差分ECセッション中、ホスト2からReadI/OまたはWriteI/Oが発行された場合の動作について説明する。
コピー元に対するWriteI/O発行時、CPU21は、更新データをコピー先に格納する。このとき、CPU21は、更新データをコピー先の物理ディスク上の空き領域に格納する。
また、コピー先に対するWriteI/O発行時、CPU21は、既にコピー先の物理ディスク上に該当データが存在するか否かのチェックを行う。存在する場合、CPU21は、その領域に対して更新データを反映する。一方、存在しない場合、CPU21は、コピー先の物理ディスク上の空き領域に更新データを格納する。
また、コピー先に対するReadI/O発行時でデータaを要求された場合、コピー先の世代nの物理ディスク上でデータaに対応するデータbの検索を行う。データbが存在する場合、CPU21は、物理ディスク上に存在するデータbを転送する。データbが存在しない場合、世代(n−m)(m=1,2,3…)の物理ディスク上でデータaに対応するデータの検索を行う。該当するデータbが存在した場合、CPU21は、データbを転送する。全ての世代の物理ディスクを検索しても該当するデータが存在しない場合、CPU21は、OPCディスク上のデータを転送する。
次に、上述した世代バックアップ処理の具体例について説明する。
図8は、実施の形態1に係る世代バックアップ処理の具体的な動作の一例を示す図である。まず、時刻TAにおいて、ストレージ制御装置1は、ホスト2からの世代バックアップ処理の指示を受信したとする。このとき、CPU21は、世代バックアップ開始処理を実行することにより、OPCセッションと差分ECセッションAを開始する。OPCセッションは、ユーザディスクからOPCディスクへのバックアップを開始する。差分ECセッションAは、WriteI/Oが行われない限り待機する。
次に、時刻TBにおいて、ストレージ制御装置1は、ホスト2からのWriteI/O(WT(a))を受信したとする。このとき、OPCセッションは、I/O範囲において、ユーザディスクからOPCディスクへのコピーが行われていないデータがあれば、更新前データ(WT(a)old)をOPCディスクへコピーする。差分ECセッションAは、ユーザディスクの更新データ(WT(a))を差分ECディスクAへコピーする。
次に、時刻TCにおいて、ストレージ制御装置1は、ホスト2からの世代切り替え処理の指示を受信したとする。このとき、CPU21は、差分ECセッションAを一時停止とし、同時に次の世代の差分データを記録する差分ECセッションBを開始する。以降、差分ECセッションBは、ユーザディスクの更新データを差分ECディスクBへコピーする。
次に、時刻TDにおいて、ストレージ制御装置1は、ホスト2からのWriteI/O(WT(b))を受信したとする。このとき、OPCセッションは、I/O範囲において、ユーザディスクからOPCディスクへのコピーが行われていないデータがあれば、更新前データ(WT(b)old)をOPCディスクへコピーする。差分ECセッションBは、ユーザディスクの更新データ(WT(b))を差分ECディスクBへコピーする。
次に、時刻TEにおいて、ストレージ制御装置1は、ホスト2からの世代切り替え処理の指示を受信したとする。このとき、CPU21は、差分ECセッションBを一時停止とし、同時に次の世代の差分データを記録する差分ECセッションCを開始する。以降、差分ECセッションCは、ユーザディスクの更新データを差分ECディスクCへコピーする。
次に、時刻TFにおいて、ストレージ制御装置1は、ホスト2からのWriteI/O(WT(c))を受信したとする。このとき、OPCセッションは、I/O範囲において、ユーザディスクからOPCディスクへのコピーが行われていないデータがあれば、更新前データ(WT(c)old)をOPCディスクへコピーする。差分ECセッションCは、ユーザディスクの更新データ(WT(c))を差分ECディスクCへコピーする。
以降、バックアップを採取したい時刻において、世代切り替え処理を行う。
上述した世代バックアップ処理によれば、差分ECディスクには、更新が行われたデータのみが格納され、更新量が少ない場合、ユーザディスクよりもディスク容量を小さくすることが可能である。また、OPCと差分ECを用いて実現することにより、ホスト2からのアクセスを停止することなく、世代毎のバックアップを採取することができる。
次に、実施の形態1に係る世代リストア処理について説明する。
世代リストア処理は、障害発生時などにOPCディスクと差分ECディスクに保存されたバックアップデータのうち指定した世代のバックアップデータからユーザディスクを復元する処理である。世代リストア処理は、リストア開始処理、世代リストア中I/O処理を含む。
次に、本実施の形態に係るリストア開始処理について説明する。図9は、実施の形態1に係るリストア開始処理の動作の一例を示すフローチャートである。まず、CPU21は、ホスト2あるいはLAN経由のリストア指定時刻を含む世代リストア処理の指示を受信すると(S311)、リストア指定時刻以前の差分ECディスクにまだリストアを実施していないデータが存在するか否かの判断を行う(S312)。ここで、リストア指定時刻は、リストアによりユーザディスクをいつの状態に戻すかを表す時刻である。リストアを実施していないデータが存在する場合(S312,Yes)、CPU21は、差分ECディスク上の該当データを時系列で古いものから順にOPCディスクに反映(マージ処理)し(S313)、処理S312に戻る。一方、リストアを実施していないデータが存在しない場合(S312,No)、CPU21は、OPCディスクからユーザディスクにリストアし(S314)、このフローは終了する。
次に、本実施の形態に係る世代リストア中I/O処理について説明する。図10は、実施の形態1に係る世代リストア中I/O処理の動作の一例を示すフローチャートである。まず、CPU21は、世代リストア処理中のユーザディスクに対するReadI/OまたはWriteI/Oを受信した場合(S351)、I/O範囲においてユーザディスクへのリストアが完了しているか否かの判断を行う(S352)。
完了している場合(S352,Yes)、処理S356へ移行する。一方、完了していない場合(S352,No)、CPU21は、I/O範囲においてリストア指定時刻以前の差分ECディスクにまだリストアを実施していないデータが存在するか否かの判断を行う(S353)。リストアを実施していないデータが存在する場合(S353,Yes)、CPU21は、I/O範囲においてリストア指定時刻以前の複数世代の差分ECディスクのうち時系列で最も新しいデータを検索し、そのデータをユーザディスクにリストアし(S354)、処理S356へ移行する。一方、リストアを実施していないデータが存在しない場合(S353,No)、CPU21は、OPCディスクのデータをユーザディスクにリストアし(S355)、処理S356へ移行する。次に、世代リストア処理を完了し(S356)、指示されたReadI/OまたはWriteI/Oを実行し(S357)、このフローは終了する。
次に、上述した世代リストア処理の具体例について説明する。
図11は、実施の形態1に係る世代リストア処理の具体的な動作の一例を示す図である。ここでは、9:00に世代バックアップ開始処理によりOPCセッションと差分ECセッションAが開始され、10:00に世代切り替え処理により差分ECセッションAから差分ECセッションBに切り替えられ(差分ECディスクAへのコピーが完了)、11:00に世代切り替え処理により差分ECセッションBから差分ECセッションCに切り替えられ(差分ECディスクBへのコピーが完了)、その後、リストア指定時刻を11:00としたリストア指示が行われた場合について説明する。
まず、リストア開始処理について説明する。CPU21は、OPCディスク(WT(a)old、WT(b)old、WT(c)old)と10:00に作成された差分ECディスクAから、差分ECディスクAに更新データ(WT(a))が存在するかをチェックする(S312)。存在する場合、該当するデータをOPCディスクにマージする(S313)。次に、CPU21は、11:00に作成された差分ECディスクBに更新データ(WT(b))が存在するかをチェックする(S312)。存在する場合、CPU21は、該当するデータをOPCディスクに更にマージする(S313)。次に、CPU21は、OPCディスク(WT(a)、WT(b)、WT(c)old)からユーザディスクへリストアする(S314)。
次に、世代リストア中I/O処理について説明する。まず、CPU21は、I/O該当範囲がリストア済みかチェックし(S352)、リストア済みであればそのままI/Oを実行する(S357)。リストアがまだ行われていない場合、CPU21は、リストア指定時刻11:00に対応する差分ECディスクBに更新データが存在するかをチェックする(S353)。差分ECディスクBに更新データが存在する場合、差分ECディスクB上の更新データをユーザディスクにリストアし(S354)、I/Oを実行する(S357)。差分ECディスクBに更新データが存在しない場合、チェックした差分ECディスクBの1世代前である差分ECディスクAに更新データが存在するかをチェックする(S353)。差分ECディスクAに更新データが存在する場合、差分ECディスクA上の更新データをユーザディスクにリストアし(S354)、I/Oを実行する(S357)。差分ECディスクAに更新データが存在しない場合、チェックした差分ECディスクA以前の差分ECディスクがないことを確認し、OPCディスクのデータをユーザディスクにリストアし(S355)、ユーザディスクに対してI/Oを実行する(S357)。
上述した世代リストア処理によれば、ユーザディスクがオンラインの状態で世代リストア処理を行う場合、世代リストア処理中のI/Oの発行に対して世代リストア中I/O処理を行う。この処理により、ユーザからのI/Oを停止することなく、世代リストア処理を実行することが可能になる。また、ユーザからの見かけ上は、リストア指示を発行した時点で世代リストア処理を完了したように見える。
次に、テープバックアップ処理について説明する。
テープバックアップ処理は、上述した世代バックアップ処理により得られるOPCディスクのデータ、複数の世代の差分ECディスクのデータ、LBA変換テーブルをテープにコピーするものである。このうち、差分ECディスクのデータ、LBA変換テーブルは、ホスト2から直接参照できないため、ホスト2が使用する特殊コマンドを用意する。特殊コマンドは、差分ECディスクからのデータのRead、差分ECディスクへのデータのWrite、差分ECディスクのLBA変換テーブルのRead、差分ECディスクのLBA変換テーブルのWriteである。
図12は、実施の形態1に係るテープバックアップ処理の動作の一例を示すフローチャートである。まず、CPU21は、ホスト2からの通常Readコマンドに従って、OPCディスクのデータをテープにバックアップする(S411)。次に、CPU21は、ホスト2からの特殊コマンドに従って、差分ECディスクのデータをテープにバックアップする(S412)。次に、CPU21は、ホスト2からの特殊コマンドに従って、LBA変換テーブルをテープにバックアップし(S413)、このフローは終了する。
上述したテープバックアップ処理によれば、従来、膨大な時間がかかっていたテープへの世代毎の全てのデータのバックアップと比べて、差分ECディスクのバックアップはサイズが小さくなるとともに、処理時間を短縮することができる。
実施の形態2.
本実施の形態においては、EC(第2コピー部による処理)と差分OPC(第1コピー部による処理)を用いて世代バックアップ処理および世代リストア処理を行うストレージ制御装置について説明する。つまり、世代バックアップ処理中はECによるコピーを行うとともに、世代毎のバックアップの採取においてはOPCにより前の世代との差分だけをコピーする差分OPCを用いる。
まず、本実施の形態に係るストレージ制御装置を用いたストレージ装置の構成について説明する。
本実施の形態に係るストレージ装置の構成は、実施の形態1と同様である。本実施の形態に係るディスク13は、コピー元となるユーザディスク、ECによるユーザディスク全体のコピーのコピー先となるECディスク、OPCによる差分コピーのコピー先となる差分OPCディスクA、差分OPCディスクB、差分OPCディスクCで構成される。
次に、本実施の形態に係る制御データについて説明する。
制御データは、実施の形態1と同様、コピーセッション管理情報、LBA変換テーブル、世代管理テーブルである。コピーセッション管理情報は、実施の形態1と同様である。LBA変換テーブルは、差分OPCディスク上にてデータの格納位置を示す情報を保持する。ここでは、ユーザディスク上のLBAを示す論理LBAと差分OPCディスク上に実際に格納されている物理LBAが対応付けられている。
次に、世代管理テーブルについて説明する。図13は、実施の形態2に係る世代管理テーブルの構造の一例を示す表である。この世代管理テーブルの構造は、実施の形態1と同様であるが、セッション識別子は、最初の世代だけがECセッションの識別子であり、その後の世代が差分OPCセッションの識別子である。
次に、本実施の形態に係る世代バックアップ処理について説明する。
世代バックアップ処理は、実施の形態1と同様、世代バックアップ開始処理、世代切り替え処理、世代バックアップ中WriteI/O処理、差分OPC管理処理、差分OPC削除処理を含む。ここで、ECセッションは、ECセッション中、ユーザディスクにECディスクを同期させるようにコピーするものである。また、差分OPCセッションは、差分OPCセッション開始時から差分OPCセッション停止時までのユーザディスクのデータの差分を、対応する差分OPCディスクにコピーするものである。
まず、世代バックアップ開始処理について説明する。図14は、実施の形態2に係る世代バックアップ開始処理の動作の一例を示すフローチャートである。まず、CPU21は、ホスト2あるいはLAN経由の世代バックアップ処理の指示を受信すると(S511)、ECセッション開始および差分OPCセッションA開始の設定を行う(S512)。次に、CPU21によるECセッションは、ユーザディスク全体のミラーリング処理を開始する(Initial コピー処理)(S513)。次に、CPU21による差分OPCセッションAは、WriteI/Oが発行されるまで待機し(S514)、このフローは終了する。
次に、世代切り替え処理について説明する。ここでは、差分ECセッションAが稼働中で差分ECセッションBに切り替える場合について説明する。図15は、実施の形態2に係る世代切り替え処理の動作の一例を示すフローチャートである。まず、CPU21は、ホスト2あるいはLAN経由の世代切り替えの指示を受信すると(S551)、差分OPCセッションA一時停止および差分OPCセッションB開始の設定を行う(S552)。次に、CPU21による差分OPCセッションAは、リカバリのためのリストアの指示があるまで状態を保持し(S553)、CPU21による差分OPCセッションBは、WriteI/Oが発行されるまで待機し(S554)、このフローは終了する。
次に、世代バックアップ中WriteI/O処理について説明する。図16は、実施の形態2に係る世代バックアップ中WriteI/O処理の動作の一例を示すフローチャートである。まず、CPU21は、ホスト2あるいはLAN経由でユーザディスクに対するWriteI/Oの指示を受信すると(S611)、I/O範囲において現在稼働中の差分OPCディスクへのバックアップが完了しているか否かの判断を行う(S612)。完了している場合(S612,Yes)、処理S614へ移行する。一方、完了していない場合(S612,No)、CPU21は、更新前データを稼働中の差分OPCディスクへコピーする(S613)。次に、CPU21は、WriteI/Oを実行する(S614)。次に、CPU21は、ECディスクへ更新データのコピーを行い(S616)、このフローは終了する。
次に、差分OPC管理処理について説明する。
差分OPC管理処理は、差分OPCセッションを管理する処理である。CPU21は、ユーザディスク上の位置情報(論理LBA)と差分OPCディスク上に格納された物理位置情報(物理LBA)の対応関係をLBA変換テーブルとして記憶し、制御に用いる。また、差分OPCセッション中、コピー元であるユーザディスクに更新が行われた場合、CPU21は、コピー先である差分OPCディスクの空き領域に前詰めで更新データを格納する。
ここでは、差分OPCセッション中、ホスト2からReadI/OまたはWriteI/Oが発行された場合の動作について説明する。
コピー元に対するWriteI/O発行時、CPU21は、更新前のデータをコピー先の物理ディスク上の空き領域に格納する。
また、コピー先に対するWriteI/O発行時、CPU21は、更新前のデータをコピー先の物理ディスク上の空き領域に格納する。
また、コピー先に対するReadI/O発行時でデータaを要求された場合、コピー先の世代nの物理ディスク上でデータaに対応するデータbの検索を行う。データbが存在する場合、CPU21は、物理ディスク上に存在するデータbを転送する。データbが存在しない場合、CPU21は、ユーザディスク上のデータを転送する。
次に、差分OPC管理処理について説明する。
CPU21は、不要になった世代の差分OPCディスクを削除する。また、CPU21は、ある世代の差分OPCディスクを削除した後、そのディスクを次の世代のOPCディスクとして使用することができる。従って、少ないディスク本数で世代管理を行うことができる。
次に、上述した世代バックアップ処理の具体例について説明する。
図17は、実施の形態2に係る世代バックアップ処理の具体的な動作の一例を示す図である。まず、時刻TAにおいて、ストレージ制御装置1は、ホスト2からの世代バックアップ処理の指示を受信したとする。このとき、CPU21は、世代バックアップ開始処理を実行することにより、ECセッションと差分OPCセッションAを開始する。ECセッションは、ユーザディスクからECディスクへのミラーリング(同期)を開始する。差分OPCセッションAは、WriteI/Oが行われない限り待機する。
次に、時刻TBにおいて、ストレージ制御装置1は、ホスト2からのWriteI/O(WT(a))を受信したとする。このとき、ECセッションは、ユーザディスクからECディスクへのミラーリング(WT(a))を行う。差分OPCセッションAは、I/O範囲において、ユーザディスクから差分OPCディスクAへのコピーが行われていないデータがあれば、更新前データ(WT(a)old)を差分OPCディスクAへコピーする。
次に、時刻TCにおいて、ストレージ制御装置1は、ホスト2からの世代切り替え処理の指示を受信したとする。このとき、CPU21は、差分OPCセッションAを一時停止とし、同時に次の世代の差分データを記録する差分OPCセッションBを開始する。以降、差分OPCセッションBは、ユーザディスクの更新データを差分OPCディスクBへコピーする。
次に、時刻TDにおいて、ストレージ制御装置1は、ホスト2からのWriteI/O(WT(b))を受信したとする。このとき、ECセッションは、ユーザディスクからECディスクへのミラーリング(WT(b))を行う。差分OPCセッションBは、I/O範囲において、ユーザディスクから差分OPCディスクBへのコピーが行われていないデータがあれば、更新前データ(WT(b)old)を差分OPCディスクBへコピーする。
次に、時刻TEにおいて、ストレージ制御装置1は、ホスト2からの世代切り替え処理の指示を受信したとする。このとき、CPU21は、差分OPCセッションBを一時停止とし、同時に次の世代の差分データを記録する差分OPCセッションCを開始する。以降、差分OPCセッションCは、ユーザディスクの更新データを差分OPCディスクCへコピーする。
次に、時刻TFにおいて、ストレージ制御装置1は、ホスト2からのWriteI/O(WT(c))を受信したとする。このとき、ECセッションは、ユーザディスクからECディスクへのミラーリング(WT(c))を行う。差分OPCセッションCは、I/O範囲において、ユーザディスクから差分OPCディスクCへのコピーが行われていないデータがあれば、更新前データ(WT(c)old)を差分OPCディスクCへコピーする。
以降、バックアップを採取したい時刻において、世代切り替え処理を行う。
上述した世代バックアップ処理によれば、差分OPCディスクには、更新が行われたデータのみが格納され、更新量が少ない場合、ユーザディスクよりもディスク容量を小さくすることが可能である。また、ECと差分OPCを用いて実現することにより、ホスト2からのアクセスを停止することなく、世代毎のバックアップを採取することができる。
次に、本実施の形態に係る世代リストア処理について説明する。
世代リストア処理は、障害発生時などにECディスクと差分OPCディスクに保存されたバックアップデータのうち指定した世代のバックアップデータからユーザディスクを復元する処理である。世代リストア処理は、実施の形態1と同様、リストア開始処理、世代リストア中I/O処理を含む。
次に、本実施の形態に係るリストア開始処理について説明する。図18は、実施の形態2に係るリストア開始処理の動作の一例を示すフローチャートである。まず、CPU21は、ホスト2あるいはLAN経由のリストア指定時刻を含む世代リストア処理の指示を受信すると(S711)、リストア指定時刻以前の差分OPCディスクにまだリストアを実施していないデータが存在するか否かの判断を行う(S712)。ここで、リストア指定時刻は、リストアによりユーザディスクをいつの状態に戻すかを表す時刻である。リストアを実施していないデータが存在する場合(S712,Yes)、CPU21は、差分OPCディスク上の該当データを時系列で新しいものから順にユーザディスクに反映(マージ処理)し(S713)、処理S712に戻る。一方、リストアを実施していないデータが存在しない場合(S712,No)、このフローは終了する。
次に、本実施の形態に係る世代リストア中I/O処理について説明する。図19は、実施の形態2に係る世代リストア中I/O処理の動作の一例を示すフローチャートである。まず、CPU21は、世代リストア処理中のユーザディスクに対するReadI/OまたはWriteI/Oを受信した場合(S751)、I/O範囲においてユーザディスクへのリストアが完了しているか否かの判断を行う(S752)。
完了している場合(S752,Yes)、処理S756へ移行する。一方、完了していない場合(S752,No)、CPU21は、I/O範囲においてリストア指定時刻以前の差分OPCディスクにまだリストアを実施していないデータが存在するか否かの判断を行う(S753)。リストアを実施していないデータが存在する場合(S753,Yes)、CPU21は、I/O範囲においてリストア指定時刻以前の複数世代の差分OPCディスクのうち時系列で最も古いデータを検索し、そのデータをユーザディスクにリストアし(S754)、処理S756へ移行する。一方、リストアを実施していないデータが存在しない場合(S753,No)、処理S756へ移行する。次に、世代リストア処理を完了し(S756)、指示されたReadI/OまたはWriteI/Oを実行し(S757)、このフローは終了する。
次に、上述した世代リストア処理の具体例について説明する。
図20は、実施の形態2に係る世代リストア処理の具体的な動作の一例を示す図である。ここでは、9:00に世代バックアップ開始処理によりECセッションと差分OPCセッションAが開始され、10:00に世代切り替え処理により差分OPCセッションAから差分OPCセッションBに切り替えられ(差分OPCディスクBへのコピーが開始)、11:00に世代切り替え処理により差分OPCセッションBから差分OPCセッションCに切り替えられ(差分OPCディスクCへのコピーが開始)、その後、リストア指定時刻を11:00としたリストア指示が行われた場合について説明する。
まず、リストア開始処理について説明する。CPU21は、OPCディスク(WT(a)、WT(b)、WT(c))とリストア指定時刻11:00にコピーが開始された差分OPCディスクCから、差分OPCディスクCにバックアップデータ(WT(c)old)が存在するかをチェックする(S712)。存在する場合、該当するデータをユーザディスクにマージする(S713)。次に、CPU21は、10:00にコピーが開始された差分OPCディスクBにバックアップデータ(WT(b)old)が存在するかをチェックする(S712)。存在する場合、CPU21は、該当するデータをユーザディスクに更にマージする(S713)。
次に、世代リストア中I/O処理について説明する。まず、CPU21は、I/O該当範囲がリストア済みかチェックし(S752)、リストア済みであればそのままI/Oを実行する(S757)。リストアがまだ行われていない場合、CPU21は、リストア指定時刻10:00に対応する差分OPCディスクCにバックアップデータが存在するかをチェックする(S753)。バックアップデータが存在する場合、差分OPCディスクC上のバックアップデータをユーザディスクにリストアし(S754)、I/Oを実行する(S757)。バックアップデータが存在しない場合、チェックした差分OPCディスクCの1世代前である差分OPCディスクBにバックアップデータが存在するかをチェックする(S753)。バックアップデータが存在する場合、差分OPCディスクB上のバックアップデータをユーザディスクにリストアし(S754)、I/Oを実行する(S757)。バックアップデータが存在しない場合、リストア指定時刻までのリストアが完了したことを確認し、ユーザディスクに対してI/Oを実行する(S757)。
上述した世代リストア処理によれば、ユーザディスクがオンラインの状態で世代リストア処理を行う場合、世代リストア処理中のI/Oの発行に対して世代リストア中I/O処理を行う。この処理により、ユーザからのI/Oを停止することなく、世代リストア処理を実行することが可能になる。また、ユーザからの見かけ上は、リストア指示を発行した時点で世代リストア処理を完了したように見える。
次に、テープバックアップ処理について説明する。
テープバックアップ処理は、実施の形態1と同様であるが、上述した世代バックアップ処理により得られるECディスクのデータ、複数の世代の差分OPCディスクのデータ、LBA変換テーブルをテープにコピーするものである。特殊コマンドは、差分OPCディスクからのデータのRead、差分OPCディスクへのデータのWrite、差分OPCディスクのLBA変換テーブルのRead、差分OPCディスクのLBA変換テーブルのWriteである。
図21は、実施の形態2に係るテープバックアップ処理の動作の一例を示すフローチャートである。まず、CPU21は、ホスト2からの通常Readコマンドに従って、ECディスクのデータをテープにバックアップする(S811)。次に、CPU21は、ホスト2からの特殊コマンドに従って、差分OPCディスクのデータをテープにバックアップする(S812)。次に、CPU21は、ホスト2からの特殊コマンドに従って、LBA変換テーブルをテープにバックアップし(S813)、このフローは終了する。
上述したテープバックアップ処理によれば、従来、膨大な時間がかかっていたテープへの世代毎の全てのデータのバックアップと比べて、差分OPCディスクのバックアップはサイズが小さくなるとともに、処理時間を短縮することができる。
実施の形態3.
本実施の形態においては、実施の形態1と実施の形態2の両方を用いて世代バックアップ処理および世代リストア処理を行うストレージ制御装置について説明する。
まず、本実施の形態に係るストレージ制御装置を用いたストレージ装置の構成、制御データは、実施の形態1および実施の形態2と同様である。また、本実施の形態に係るストレージ制御装置は、実施の形態1の世代バックアップ処理と実施の形態2の世代バックアップ処理を同時に行う。
次に、本実施の形態に係る世代リストア処理について説明する。
まず、CPU21は、リストア指定時刻を含む世代リストア処理の指示を受信すると、リストア指定時刻と世代バックアップ処理開始時刻の差、および現在時刻とリストア指定時刻の差を比較する。つまり、CPU21は、リストア指定時刻が世代バックアップ処理開始時刻と現在時刻のどちらに近いかを判断する。リストア指定時刻が世代バックアップ処理開始時刻に近い場合(所定の時刻より古い場合)、CPU21は、実施の形態1の世代リストア処理を行う。一方、リストア指定時刻が現在時刻に近い場合(所定の時刻より新しい場合)、CPU21は、実施の形態2の世代リストア処理を行う。
次に、本実施の形態に係る世代リストア処理の具体例について説明する。
図22は、実施の形態3に係る世代リストア処理の具体的な動作の一例を示す図である。ここでは、9:00に、実施の形態1の世代バックアップ開始処理により、OPCセッションと差分ECセッションAが開始されるとともに、実施の形態2の世代バックアップ開始処理により、ECセッションと差分OPCセッションAが開始されるとする。次に、10:00に、実施の形態1の世代切り替え処理により差分ECセッションAから差分ECセッションBに切り替えられるとともに、実施の形態2の世代切り替え処理により差分OPCセッションAから差分OPCセッションBに切り替えられるとする。次に、11:00に、実施の形態1の世代切り替え処理により差分ECセッションBから差分ECセッションCに切り替えられるとともに、実施の形態2の世代切り替え処理により差分OPCセッションBから差分OPCセッションCに切り替えられるとする。
現在時刻12:00の世代リストア処理の指示において、リストア指定時刻が10:00である場合、CPU21は、リストア指定時刻が世代バックアップ処理開始時刻の方に近いと判断し、実施の形態1の世代リストア処理を行う。現在時刻12:00の世代リストア処理の指示において、リストア指定時刻が11:00である場合、CPU21は、リストア指定時刻が現在時刻の方に近いと判断し、実施の形態2の世代リストア処理を行う。
上述した世代リストア処理によれば、2つの世代リストア処理のうち、処理の少ない方を選択することができ、世代リストア処理の時間を短縮することができる。
なお、第1コピーステップは、実施の形態におけるOPCセッションとECセッションの少なくともいずれかに対応する。また、第2コピーステップは、実施の形態における差分ECセッションと差分OPCセッションの少なくともいずれかに対応する。また、リストアステップは、実施の形態における世代リストア処理に対応する。
また、本実施の形態に係るストレージ制御装置は、ストレージ装置に容易に適用することができ、ストレージ装置の性能をより高めることができる。ここで、ストレージ装置には、例えばディスク装置、ディスクアレイ装置等が含まれ得る。
更に、ストレージ制御装置を構成するコンピュータにおいて上述した各ステップを実行させるプログラムを、ストレージ制御プログラムとして提供することができる。上述したプログラムは、コンピュータにより読取り可能な記録媒体に記憶させることによって、ストレージ制御装置を構成するコンピュータに実行させることが可能となる。ここで、上記コンピュータにより読取り可能な記録媒体としては、ROMやRAM等のコンピュータに内部実装される内部記憶装置、CD−ROMやフレキシブルディスク、DVDディスク、光磁気ディスク、ICカード等の可搬型記憶媒体や、コンピュータプログラムを保持するデータベース、或いは、他のコンピュータ並びにそのデータベースや、更に回線上の伝送媒体をも含むものである。
(付記1) 所定のストレージの世代バックアップの作成を行うストレージ制御装置であって、
指示された時点における前記所定のストレージの全データと指示された期間における前記所定のストレージの差分データとの少なくともいずれかのスナップショットを作成する第1コピー部と、
前記所定のストレージの全データと指示された期間における前記所定のストレージの差分データとの少なくともいずれかのミラーを作成する第2コピー部と、
前記第1コピー部と前記第2コピー部のいずれか一方に前記所定のストレージの全データのコピーを実行させ、他方に世代間の前記所定のストレージの差分のデータのコピーを実行させる制御部と
を備えるストレージ制御装置。
(付記2) 付記1に記載のストレージ制御装置において、
前記制御部は、最初の世代における前記所定のストレージの全データのスナップショットの作成を前記第1コピー部に実行させ、世代間における前記所定のストレージの差分データのミラーの作成を前記第2コピー部に実行させることを特徴とするストレージ制御装置。
(付記3) 付記1に記載のストレージ制御装置において、
前記制御部は、前記所定のストレージの全データのミラーの作成を前記第2コピー部に実行させ、世代間における前記所定のストレージの差分データのスナップショットの作成を前記第1コピー部に実行させることを特徴とするストレージ制御装置。
(付記4) 付記1に記載のストレージ制御装置において、
前記制御部は、最初の世代における前記所定のストレージの全データのスナップショットの作成を前記第1コピー部に実行させるとともに、前記所定のストレージの全データのミラーの作成を前記第2コピー部に実行させ、世代間における前記所定のストレージの差分データのミラーの作成を前記第2コピー部に実行させるとともに、世代間における前記所定のストレージの差分データのスナップショットの作成を前記第1コピー部に実行させることを特徴とするストレージ制御装置。
(付記5) 付記2に記載のストレージ制御装置において、
前記第1コピー部により前記全データのスナップショットが作成され、前記第2コピー部により少なくとも一つの前記差分データのミラーが作成された後、リストアの目標時刻を含むリストアの指示を受け取ると、前記制御部は、該目標時刻以前の前記差分データのミラーを古い順に前記全データのスナップショットへ反映し、該反映後の前記全データのスナップショットを前記所定のストレージへ反映することを特徴とするストレージ制御装置。
(付記6) 付記3に記載のストレージ制御装置において、
前記第2コピー部により前記全データのミラーが作成され、前記第1コピー部により少なくとも一つの前記差分データのスナップショットが作成された後、リストアの目標時刻を含むリストアの指示を受け取ると、前記制御部は、該目標時刻以降の前記差分データのスナップショットを新しい順に前記所定のストレージへ反映することを特徴とするストレージ制御装置。
(付記7) 付記4に記載のストレージ制御装置において、
前記第1コピー部により前記全データのスナップショットが作成されるとともに、前記第2コピー部により前記全データのミラーが作成され、前記第2コピー部により少なくとも一つの前記差分データのミラーが作成されるとともに、前記第1コピー部により少なくとも一つの前記差分データのスナップショットが作成された後、リストアの目標時刻を含むリストアの指示を受け取ると、前記制御部は、前記最初の世代の時刻と現在時刻のどちらが前記目標時刻に近いかの判断を行い、前記最初の世代の時刻の方が前記目標時刻に近い場合、該目標時刻以前の前記差分データのミラーを古い順に前記全データのスナップショットへ反映し、該反映後の前記全データのスナップショットを前記所定のストレージへ反映し、前記現在時刻の方が前記目標時刻に近い場合、該目標時刻以降の前記差分データのスナップショットを新しい順に前記所定のストレージへ反映することを特徴とするストレージ制御装置。
(付記8) 付記5または付記7に記載のストレージ制御装置において、
外部から前記所定のストレージに対する読み込みまたは書き込みの指示を受けた場合、前記制御部は、該読み込みまたは書き込みの対象範囲において前記目標時刻以前の前記差分データのミラーから前記所定のストレージに反映されていないデータがある場合、該ミラーの中で最も新しいデータを前記所定のストレージに反映し、前記読み込みまたは書き込みを実行することを特徴とするストレージ制御装置。
(付記9) 付記6または付記7に記載のストレージ制御装置において、
外部から前記所定のストレージに対する読み込みまたは書き込みの指示を受けた場合、前記制御部は、該読み込みまたは書き込みの対象範囲において前記目標時刻以降の前記差分データのスナップショットから前記所定のストレージに反映されていないデータがある場合、該スナップショットの中で最も古いデータを前記所定のストレージに反映し、前記読み込みまたは書き込みを実行することを特徴とするストレージ制御装置。
(付記10) 付記2、付記4、付記5、付記7、付記8のいずれかに記載のストレージ制御装置において、
外部から前記所定のストレージに対する書き込みの指示を受けた場合、前記制御部は、該書き込みの対象範囲から前記全データのスナップショットへのコピーが完了していない場合、該書き込み前のデータを前記全データのスナップショットにコピーし、前記書き込みを実行することを特徴とするストレージ制御装置。
(付記11) 付記3、付記4、付記6、付記7、付記9のいずれかに記載のストレージ制御装置において、
外部から前記所定のストレージに対する書き込みの指示を受けた場合、前記制御部は、該書き込みの対象範囲から前記差分データのスナップショットへのコピーが完了していない場合、該書き込み前のデータを前記差分データのスナップショットにコピーし、前記書き込みを実行することを特徴とするストレージ制御装置。
(付記12) 所定のストレージの世代バックアップの作成をコンピュータに実行させるストレージ制御プログラムであって、
指示された時点における前記所定のストレージの全データのスナップショットと前記所定のストレージの全データのミラーとの少なくともいずれかを作成する第1コピーステップと、
該第1コピーステップの開始以降、世代間における前記所定のストレージの差分データのスナップショットと世代間における前記所定のストレージの差分データのミラーとの少なくともいずれかを作成する第2コピーステップと
をコンピュータに実行させるストレージ制御プログラム。
(付記13) 付記12に記載のストレージ制御プログラムにおいて、
前記第1コピーステップは、最初の世代における前記所定のストレージの全データのスナップショットの作成を行い、
前記第2コピーステップは、世代間における前記所定のストレージの差分データのミラーの作成を行うことを特徴とするストレージ制御プログラム。
(付記14) 付記12に記載のストレージ制御プログラムにおいて、
前記第1コピーステップは、前記所定のストレージの全データのミラーの作成を行い、
前記第2コピーステップは、世代間における前記所定のストレージの差分データのスナップショットの作成を行うことを特徴とするストレージ制御プログラム。
(付記15) 付記12に記載のストレージ制御プログラムにおいて、
前記第1コピーステップは、最初の世代における前記所定のストレージの全データのスナップショットの作成を行うとともに、前記所定のストレージの全データのミラーの作成を行い、
前記第2コピーステップは、世代間における前記所定のストレージの差分データのミラーの作成を行うとともに、世代間における前記所定のストレージの差分データのスナップショットの作成を行うことを特徴とするストレージ制御プログラム。
(付記16) 付記2に記載のストレージ制御プログラムにおいて、
前記第1コピーステップにより前記全データのスナップショットが作成され、前記第2コピーステップにより少なくとも一つの前記差分データのミラーが作成された後、更に、リストアの目標時刻を含むリストアの指示を受け取ると、該目標時刻以前の前記差分データのミラーを古い順に前記全データのスナップショットへ反映し、該反映後の前記全データのスナップショットを前記所定のストレージへ反映するリストアステップをコンピュータに実行させることを特徴とするストレージ制御プログラム。
(付記17) 付記3に記載のストレージ制御プログラムにおいて、
前記第1コピーステップにより前記全データのミラーが作成され、前記第2コピーステップにより少なくとも一つの前記差分データのスナップショットが作成された後、更に、リストアの目標時刻を含むリストアの指示を受け取ると、該目標時刻以降の前記差分データのスナップショットを新しい順に前記所定のストレージへ反映するリストアステップをコンピュータに実行させることを特徴とするストレージ制御プログラム。
(付記18) 付記4に記載のストレージ制御プログラムにおいて、
前記第1コピーステップにより前記全データのスナップショットが作成されるとともに、前記全データのミラーが作成され、前記第2コピーステップにより少なくとも一つの前記差分データのミラーが作成されるとともに、少なくとも一つの前記差分データのスナップショットが作成された後、更に、リストアの目標時刻を含むリストアの指示を受け取ると、前記最初の世代の時刻と現在時刻のどちらが前記目標時刻に近いかの判断を行い、前記最初の世代の時刻の方が前記目標時刻に近い場合、該目標時刻以前の前記差分データのミラーを古い順に前記全データのスナップショットへ反映し、該反映後の前記全データのスナップショットを前記所定のストレージへ反映し、前記現在時刻の方が前記目標時刻に近い場合、該目標時刻以降の前記差分データのスナップショットを新しい順に前記所定のストレージへ反映するリストアステップをコンピュータに実行させることを特徴とするストレージ制御プログラム。
(付記19) 所定のストレージの世代バックアップの作成を行うストレージ制御方法であって、
指示された時点における前記所定のストレージの全データのスナップショットと前記所定のストレージの全データのミラーとの少なくともいずれかを作成する第1コピーステップと、
該第1コピーステップの開始以降、世代間における前記所定のストレージの差分データのスナップショットと世代間における前記所定のストレージの差分データのミラーとの少なくともいずれかを作成する第2コピーステップと
を実行するストレージ制御方法。
実施の形態1に係るストレージ装置の構成の一例を示すブロック図である。 実施の形態1に係るコピーセッション管理情報の構造の一例を示す表である。 実施の形態1に係るLBA変換テーブルの構造の一例を示す表である。 実施の形態1に係る世代管理テーブルの構造の一例を示す表である。 実施の形態1に係る世代バックアップ開始処理の動作の一例を示すフローチャートである。 実施の形態1に係る世代切り替え処理の動作の一例を示すフローチャートである。 実施の形態1に係る世代バックアップ中WriteI/O処理の動作の一例を示すフローチャートである。 実施の形態1に係る世代バックアップ処理の具体的な動作の一例を示す図である。 実施の形態1に係るリストア開始処理の動作の一例を示すフローチャートである。 実施の形態1に係る世代リストア中I/O処理の動作の一例を示すフローチャートである。 実施の形態1に係る世代リストア処理の具体的な動作の一例を示す図である。 実施の形態1に係るテープバックアップ処理の動作の一例を示すフローチャートである。 実施の形態2に係る世代管理テーブルの構造の一例を示す表である。 実施の形態2に係る世代バックアップ開始処理の動作の一例を示すフローチャートである。 実施の形態2に係る世代切り替え処理の動作の一例を示すフローチャートである。 実施の形態2に係る世代バックアップ中WriteI/O処理の動作の一例を示すフローチャートである。 実施の形態2に係る世代バックアップ処理の具体的な動作の一例を示す図である。 実施の形態2に係るリストア開始処理の動作の一例を示すフローチャートである。 実施の形態2に係る世代リストア中I/O処理の動作の一例を示すフローチャートである。 実施の形態2に係る世代リストア処理の具体的な動作の一例を示す図である。 実施の形態2に係るテープバックアップ処理の動作の一例を示すフローチャートである。 実施の形態3に係る世代リストア処理の具体的な動作の一例を示す図である。
符号の説明
1 ストレージ装置、2 ホスト、11 CA、12 CM、13 ディスク、21 CPU、22 キャッシュメモリ、23 FC制御部。

Claims (3)

  1. データを格納する所定のストレージの世代バックアップの作成を行うストレージ制御装置であって、
    指示された第1時点までの前記所定のストレージのデータを更新前データ用ストレージにコピーする第1コピー部と、
    前記第1時点以後の所定期間における前記所定のストレージの更新後データを更新後データ用ストレージにコピーする第2コピー部と、
    リストアの目標時刻を含むリストアの指示を受け取ると、前記更新前データ用ストレージのデータと前記目標時刻以前の前記更新後データ用ストレージのデータとを用いて、指定された第2時点におけるデータのリストアを行う制御部と
    を備え
    前記制御部は、前記第1コピー部に前記世代バックアップの開始の時点である前記第1時点における前記所定のストレージの全体を第1データとして前記更新前データ用ストレージである第1ストレージへコピーさせて第1コピーデータを作成させ、前記第2コピー部に前記世代バックアップの世代を指示された時点から次の世代を指示される時点までに前記所定のストレージで更新されたデータを第2データとし、該第2データを前記更新後データ用ストレージである第2ストレージへコピーさせて第2コピーデータを作成させ、前記第2コピー部に前記第1時点以後の前記所定のストレージの全体を第3データとし、該第3データの更新後データを前記更新後データ用ストレージである第3ストレージへコピーさせて第3コピーデータを作成させ、前記世代バックアップの世代を指示された時点から次の世代を指示される時点までの前記所定のストレージの更新前データを第4データとし、該第4データを前記更新前データ用ストレージである第4ストレージへコピーさせて第4コピーデータを作成させ、前記第1コピー部により前記第1コピーデータが作成された後且つ前記第2コピー部により少なくとも一つの前記第2コピーデータが作成された後且つ前記第2コピー部により前記第3コピーデータが作成された後且つ前記第1コピー部により少なくとも一つの前記第4コピーデータが作成された後に前記リストアの指示を受け取った場合、前記第1時点の時刻及び現在時刻のどちらが前記目標時刻に近いかの判断を行い、前記第1時点の時刻の方が前記目標時刻に近い場合、前記目標時刻以前の前記第2コピーデータを古い順に前記第1コピーデータへ反映し、該反映後の前記第1コピーデータを前記所定のストレージへ反映して前記リストアを行い、前記現在時刻の方が前記目標時刻に近い場合、該目標時刻以降の前記第4コピーデータを新しい順に前記所定のストレージへ反映する
    ことを特徴とするストレージ制御装置。
  2. データを格納する所定のストレージの世代バックアップの作成をコンピュータに実行させるストレージ制御プログラムであって、
    前記コンピュータを、
    指示された第1時点までの前記所定のストレージのデータを更新前データ用ストレージにコピーする第1コピー部と、
    前記第1時点以後の所定期間における前記所定のストレージの更新後データを更新後データ用ストレージにコピーする第2コピー部と、
    リストアの目標時刻を含むリストアの指示を受け取ると、前記更新前データ用ストレージのデータと前記目標時刻以前の前記更新後データ用ストレージのデータとを用いて、指定された第2時点におけるデータのリストアを行う制御部と
    を備え
    前記制御部は、前記第1コピー部に前記世代バックアップの開始の時点である前記第1時点における前記所定のストレージの全体を第1データとして前記更新前データ用ストレージである第1ストレージへコピーさせて第1コピーデータを作成させ、前記第2コピー部に前記世代バックアップの世代を指示された時点から次の世代を指示される時点までに前記所定のストレージで更新されたデータを第2データとし、該第2データを前記更新後データ用ストレージである第2ストレージへコピーさせて第2コピーデータを作成させ、前記第2コピー部に前記第1時点以後の前記所定のストレージの全体を第3データとし、該第3データの更新後データを前記更新後データ用ストレージである第3ストレージへコピーさせて第3コピーデータを作成させ、前記第1コピー部に前記世代バックアップの世代を指示された時点から次の世代を指示される時点までの前記所定のストレージの更新前データを第4データとし、該第4データを前記更新前データ用ストレージである第4ストレージへコピーさせて第4コピーデータを作成させ、前記第1コピー部により前記第1コピーデータが作成された後且つ前記第2コピー部により少なくとも一つの前記第2コピーデータが作成された後且つ前記第2コピー部により前記第3コピーデータが作成された後且つ前記第1コピー部により少なくとも一つの前記第4コピーデータが作成された後に前記リストアの指示を受け取った場合、前記第1時点の時刻及び現在時刻のどちらが前記目標時刻に近いかの判断を行い、前記第1時点の時刻の方が前記目標時刻に近い場合、前記目標時刻以前の前記第2コピーデータを古い順に前記第1コピーデータへ反映し、該反映後の前記第1コピーデータを前記所定のストレージへ反映して前記リストアを行い、前記現在時刻の方が前記目標時刻に近い場合、該目標時刻以降の前記第4コピーデータを新しい順に前記所定のストレージへ反映す
    ストレージ制御装置として機能させるストレージ制御プログラム。
  3. データを格納する所定のストレージの世代バックアップの作成をコンピュータに実行させるストレージ制御方法であって、
    指示された第1時点までの前記所定のストレージのデータを更新前データ用ストレージにコピーし、
    前記第1時点以後の所定期間における前記所定のストレージの更新後データを更新後データ用ストレージにコピーし、
    リストアの目標時刻を含むリストアの指示を受け取ると、前記更新前データ用ストレージのデータと前記目標時刻以前の前記更新後データ用ストレージのデータとを用いて、指定された第2時点におけるデータのリストアを行い、
    前記世代バックアップの開始の時点である前記第1時点における前記所定のストレージの全体を第1データとして前記更新前データ用ストレージである第1ストレージへコピーさせて第1コピーデータを作成させ、前記世代バックアップの世代を指示された時点から次の世代を指示される時点までに前記所定のストレージで更新されたデータを第2データとし、該第2データを前記更新後データ用ストレージである第2ストレージへコピーさせて第2コピーデータを作成させ、前記第1時点以後の前記所定のストレージの全体を第3データとし、該第3データの更新後データを前記更新後データ用ストレージである第3ストレージへコピーさせて第3コピーデータを作成させ、前記世代バックアップの世代を指示された時点から次の世代を指示される時点までの前記所定のストレージの更新前データを第4データとし、該第4データを前記更新前データ用ストレージである第4ストレージへコピーさせて第4コピーデータを作成させ、前記第1コピーデータが作成された後且つ少なくとも一つの前記第2コピーデータが作成された後且つ前記第3コピーデータが作成された後且つ前記第1コピー部により少なくとも一つの前記第4コピーデータが作成された後に前記リストアの指示を受け取った場合、前記第1時点の時刻及び現在時刻のどちらが前記目標時刻に近いかの判断を行い、前記第1時点の時刻の方が前記目標時刻に近い場合、前記目標時刻以前の前記第2コピーデータを古い順に前記第1コピーデータへ反映し、該反映後の前記第1コピーデータを前記所定のストレージへ反映して前記リストアを行い、前記現在時刻の方が前記目標時刻に近い場合、該目標時刻以降の前記第4コピーデータを新しい順に前記所定のストレージへ反映する
    ことをコンピュータに実行させるストレージ制御方法。
JP2008265038A 2008-10-14 2008-10-14 ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法 Expired - Fee Related JP4750169B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008265038A JP4750169B2 (ja) 2008-10-14 2008-10-14 ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008265038A JP4750169B2 (ja) 2008-10-14 2008-10-14 ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2006166859A Division JP2007334709A (ja) 2006-06-16 2006-06-16 ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法

Publications (2)

Publication Number Publication Date
JP2009020914A JP2009020914A (ja) 2009-01-29
JP4750169B2 true JP4750169B2 (ja) 2011-08-17

Family

ID=40360445

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008265038A Expired - Fee Related JP4750169B2 (ja) 2008-10-14 2008-10-14 ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法

Country Status (1)

Country Link
JP (1) JP4750169B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013011919A (ja) 2009-09-17 2013-01-17 Hitachi Ltd ストレージ装置及びそのスナップショット制御方法
JP6064608B2 (ja) * 2013-01-17 2017-01-25 富士通株式会社 ストレージ装置、バックアッププログラム、およびバックアップ方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3856855B2 (ja) * 1995-10-06 2006-12-13 三菱電機株式会社 差分バックアップ方式
JP2002318717A (ja) * 2001-04-19 2002-10-31 Ricoh Co Ltd データベースシステム
JP3974538B2 (ja) * 2003-02-20 2007-09-12 株式会社日立製作所 情報処理システム
JP4267420B2 (ja) * 2003-10-20 2009-05-27 株式会社日立製作所 ストレージ装置及びバックアップ取得方法
JP2005332067A (ja) * 2004-05-18 2005-12-02 Hitachi Ltd バックアップ取得方法及びディスクアレイ装置
JP4477950B2 (ja) * 2004-07-07 2010-06-09 株式会社日立製作所 リモートコピーシステム及び記憶装置システム
JP4550541B2 (ja) * 2004-10-06 2010-09-22 株式会社日立製作所 ストレージシステム

Also Published As

Publication number Publication date
JP2009020914A (ja) 2009-01-29

Similar Documents

Publication Publication Date Title
JP2007334709A (ja) ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法
US7694092B2 (en) Storage subsystem and back-up/recovery method
JP4267420B2 (ja) ストレージ装置及びバックアップ取得方法
JP4800056B2 (ja) ストレージシステム及びその制御方法
US7716183B2 (en) Snapshot preserved data cloning
US9053075B2 (en) Storage control device and method for controlling storages
EP1922624B1 (en) Snapshot restore method and apparatus
EP2953026B1 (en) Target-driven independent data integrity and redundancy recovery in a shared-nothing distributed storage system
US8255371B2 (en) Methods and apparatuses for data protection
JP4477950B2 (ja) リモートコピーシステム及び記憶装置システム
US7783850B2 (en) Method and apparatus for master volume access during volume copy
US7831565B2 (en) Deletion of rollback snapshot partition
US20050081006A1 (en) Self-configuration of source-to-target mapping
JP2003223287A (ja) 記憶装置、この記憶装置のバックアップ方法及びプログラム
JP2007200114A (ja) データベース回復方法及び計算機システム
JP2006338461A (ja) 電子的なファイルの記憶を制御するシステム及び方法
JPH05210555A (ja) ゼロ時間データ・バックアップ・コピーの方法及び装置
JP2006164162A (ja) コピー制御装置および方法
EP1536338B1 (en) Computer system and method for failure recovery using remote copy
JP6281511B2 (ja) バックアップ制御装置、バックアップ制御方法、及び、プログラム
JP4750169B2 (ja) ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法
JP4915365B2 (ja) データ格納方法及びその装置、複製データ格納方法及びその装置並びにそれらの制御プログラム
WO2013168276A1 (ja) ストレージシステム及びストレージシステム制御方法
JP4741976B2 (ja) ディスクアレイ装置およびデータ管理方法
JP4704463B2 (ja) ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110214

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: 20110517

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110518

R150 Certificate of patent or registration of utility model

Ref document number: 4750169

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140527

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees