(57)【要約】【課題】バックアップボリュームに記憶されたデータに基づき、特定された時点での一次データボリュームの画像を生成して一次データボリュームのデータを復元する。【解決手段】バックアップボリュームに記憶されたデータは、一次データボリュームに書込まれたデータと、このデータがいつ一次データボリュームに書込まれたかを示すためのスタンプとを含む。一次データボリュームは、一次データボリュームについて生成された画像に基づいて復元される。さらに一次データボリュームの復元中、一次データボリュームへの読出／書込要求は、一次データボリュームについて生成された画像を用いることにより満たされる。【選択図】　　　　図１
2004038938.tif 000002
【特許請求の範囲】
【請求項１】
一次データボリューム上のデータを復元する方法であって、前記方法は、
バックアップデータボリュームに記憶されたデータに基づいて、特定された時点での一次データボリュームの画像を生成するステップを含み、
バックアップデータボリュームに記憶されたデータは、一次データボリュームに書込まれたデータと、データが一次データボリュームにいつ書込まれたかを示すためのスタンプとを含み、前記方法はさらに、
一次データボリュームについて生成された画像に基づき一次データボリュームを復元するステップと、
一次データボリュームが復元される間、一次データボリュームについて生成された画像を用いて一次データボリュームへの読出／書込要求を満たすステップとを含む、方法。
【請求項２】
スタンプはタイムスタンプを含む、請求項１に記載の方法。
【請求項３】
バックアップデータボリュームに記憶されたデータは、一次データボリュームの画像ではない、請求項１に記載の方法。
【請求項４】
バックアップデータボリュームはデータ構造を有し、前記データ構造は
データ記憶要素を含み、データ記憶要素は
データブロックを含み、データブロック内には一次データボリュームに書込まれたデータが記憶され、前記データ記憶要素はさらに、
データブロックと、データブロックに記憶されたデータがいつ一次データボリュームに書込まれたかを示すために用いられるスタンプとの関連付けが入っているマップを含む、請求項１に記載の方法。
【請求項５】
前記マップには、データブロックと、データブロックに記憶されたデータが書込まれた一次ドライブ内の場所との関連付けが入っている、請求項４に記載の方法。
【請求項６】
一次データボリュームの画像を生成する前記ステップは、
データ記憶要素内のマップにアクセスして、特定された時点に対して適当なデータを有する１つ以上のデータブロックを識別するステップを含む、請求項４に記載の方法。
【請求項７】
前記データ構造はさらに
データ記憶要素の組を含み、データ記憶要素の組は、
複数のデータ記憶要素と、
データ記憶要素の組内にあるデータ記憶要素のマップからなるマップとを含む、請求項４に記載の方法。
【請求項８】
一次データボリュームの画像を生成する前記ステップは、
データ記憶要素の組内のマップにアクセスして、特定された時点に対して適当なデータを有する１つ以上のデータブロックを識別するステップを含む、請求項７に記載の方法。
【請求項９】
前記復元するステップは、
バックアップデータボリュームからのデータを一次データボリュームに送るステップを含む、請求項１に記載の方法。
【請求項１０】
読出／書込要求を満たすステップは、
一次データボリュームを有するデータ記憶装置が作動中かどうかを判断するステップと、
データ記憶装置が作動中でなければ、一次データボリュームについて生成された画像を用いて読出／書込要求を満たすステップとを含む、請求項１に記載の方法。
【請求項１１】
データ記憶装置が作動中であると判断され、かつ読出／書込要求が書込要求であれば、一次データボリュームを用いて書込要求を満たすステップをさらに含む、請求項１０に記載の方法。
【請求項１２】
データ記憶装置が作動中であると判断され、かつ読出／書込要求が読出要求であれば、要求されているデータが一次データボリュームにすでに復元されているかどうかを判断するステップと、
データが一次データボリュームに復元されていれば、一次データボリュームを用いて読出要求を満たすステップと、
データが一次データボリュームに復元されていなければ、一次データボリュームについて生成された画像を用いて読出要求を満たすステップとをさらに含む、請求項１０に記載の方法。
【請求項１３】
一次データボリューム上のデータを復元するシステムであって、前記システムは、
バックアップデータボリュームと、
バックアップデータボリュームおよび一次データボリュームに接続されたホストシステムとを含み、
バックアップデータボリュームは、ホストシステムにより一次データボリュームに書込まれたデータを記憶し、
一次データボリュームを復元するためには、
バックアップデータボリュームに記憶されたデータに基づいて、特定された時点での一次データボリュームの画像が生成され、
一次データボリュームについて生成された画像に基づいて、バックアップデータボリュームに記憶されたデータが一次データボリュームに送られ、
一次データボリュームが復元されている間、一次データボリュームへの読出／書込要求は一次データボリュームについて生成された画像を用いて満たされる、システム。
【請求項１４】
バックアップボリュームに記憶されたデータは、データがいつ一次データボリュームに書込まれたかを示すためのスタンプを含む、請求項１３に記載のシステム。
【請求項１５】
バックアップデータボリュームはデータ構造を有し、前記データ構造は
データ記憶要素を含み、データ記憶要素は
データブロックを含み、データブロック内には一次データボリュームに書込まれたデータが記憶され、前記データ記憶要素はさらに、
データブロックと、データブロックに記憶されたデータがいつ一次データボリュームに書込まれたかを示すために用いられるスタンプとの関連付けが入っているマップを含む、請求項１４に記載のシステム。
【請求項１６】
マップには、データブロックと、データブロックに記憶されたデータが書込まれた一次ドライブ内の場所との関連付けが入っている、請求項１５に記載のシステム。
【請求項１７】
一次データボリュームの画像は、データ記憶要素内のマップにアクセスして、特定された時点に対して適当なデータを有する１つ以上のデータブロックを識別することによって生成される、請求項１５に記載のシステム。
【請求項１８】
前記データ構造はさらに、
データ記憶要素の組を含み、データ記憶要素の組は、
複数のデータ記憶要素と、
データ記憶要素の組内にあるデータ記憶要素のマップからなるマップとを含む、請求項１５に記載のシステム。
【請求項１９】
一次データボリュームの画像は、データ記憶要素の組内にあるマップにアクセスして、特定された時点に対して適当なデータを有する１つ以上のデータブロックを識別することによって生成される、請求項１８に記載のシステム。
【請求項２０】
一次データボリュームへの読出／書込要求は以下のステップにより満たされ、前記ステップは、
一次データボリュームを有するデータ記憶装置が作動中かどうかを判断するステップと、
データ記憶装置が作動中でなければ、一次データボリュームについて生成された画像を用いて読出／書込要求を満たすステップと、
データ記憶装置が作動中であると判断され、かつ読出／書込要求が書込要求であれば、一次データボリュームを用いて書込要求を満たすステップと、
データ記憶装置が作動中であると判断され、かつ読出／書込要求が読出要求であれば、要求されているデータが一次データボリュームにすでに復元されているかどうかを判断するステップと、
データが一次データボリュームに復元されていれば、一次データボリュームを用いて読出要求を満たすステップと、
データが一次データボリュームに復元されていなければ、一次データボリュームについて生成された画像を用いて読出要求を満たすステップとを含む、請求項１３に記載のシステム。
【請求項２１】
コンピュータに対して以下のステップを実行するように命令することにより、一次データボリューム上のデータを復元するためのコンピュータ実行可能コードが含まれているコンピュータ可読記憶媒体であって、前記ステップは、
バックアップデータボリュームに記憶されたデータに基づいて、特定された時点での一次データボリュームの画像を生成するステップと、
一次データボリュームについて生成された画像に基づいて一次データボリュームを復元するステップと、
一次データボリュームが復元されている間、一次データボリュームについて生成された画像を用いて一次データボリュームへの読出／書込要求を満たすステップとを含む、コンピュータ可読記憶媒体。
【請求項２２】
バックアップボリュームに記憶されたデータは、データがいつ一次データボリュームに書込まれたかを示すためのスタンプを含む、請求項２１に記載のコンピュータ可読記憶媒体。
【請求項２３】
バックアップデータボリュームはデータ構造を有し、前記データ構造は
データ記憶要素を含み、データ記憶要素は
データブロックを含み、データブロック内には一次データボリュームに書込まれたデータが記憶され、前記データ記憶要素はさらに、
データブロックと、データブロックに記憶されたデータがいつ一次データボリュームに書込まれたかを示すために用いられるスタンプとの関連付けが入っているマップを含む、請求項２２に記載のコンピュータ可読記憶媒体。
【請求項２４】
マップには、データブロックと、データブロックに記憶されたデータが書込まれた一次ドライブ内の場所との関連付けが入っている、請求項２３に記載のコンピュータ可読記憶媒体。
【請求項２５】
一次データボリュームの画像を生成する前記ステップは、
データ記憶要素内のマップにアクセスして、特定された時点に対して適当なデータを有する１つ以上のデータブロックを識別するステップを含む、請求項２３に記載のコンピュータ可読記憶媒体。
【請求項２６】
前記データ構造はさらに
データ記憶要素の組を含み、データ記憶要素の組は、
複数のデータ記憶要素と、
データ記憶要素の組内にあるデータ記憶要素のマップからなるマップとを含む、請求項２３に記載のコンピュータ可読記憶媒体。
【請求項２７】
一次データボリュームの画像を生成するステップは、
データ記憶要素の組内のマップにアクセスして、特定された時点に対して適当なデータを有する１つ以上のデータブロックを識別するステップを含む、請求項２３に記載のコンピュータ可読記憶媒体。
【請求項２８】
一次データボリュームへの読出／書込要求を満たす前記ステップは、
一次データボリュームを有するデータ記憶装置が作動中かどうかを判断するステップと、
データ記憶装置が作動中でなければ、一次データボリュームについて生成された画像を用いて読出／書込要求を満たすステップと、
データ記憶装置が作動中であると判断され、かつ読出／書込要求が書込要求であれば、一次データボリュームを用いて書込要求を満たすステップと、
データ記憶装置が作動中であると判断され、かつ読出／書込要求が読出要求であれば、要求されているデータが一次データボリュームにすでに復元されているかどうかを判断するステップと、
データが一次データボリュームに復元されていれば、一次データボリュームを用いて読出要求を満たすステップと、
データが一次データボリュームに復元されていなければ、一次データボリュームについて生成された画像を用いて読出要求を満たすステップとを含む、請求項２１に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【０００１】
【関連出願の説明】
本願は先に提出された仮特許出願、すなわち２００２年４月１１日出願の「故障した一次記憶装置のインスタントリカバリのための方法（Ｍｅｔｈｏｄ　ｆｏｒ　ＩｎｓｔａｎｔＲｅｃｏｖｅｒｙ　ｏｆ　ａ　Ｆａｉｌｅｄ　Ｐｒｉｍａｒｙ　Ｓｔｏｒａｇｅ　Ｄｅｖｉｃｅ）」と題された米国仮特許出願連続番号第６０／３７２，０５０号の優先権を主張し、該仮出願はここでその全体において引用により援用される。
【０００２】
【背景】
１．発明の分野
本願は一般的にバックアップシステムに関し、より特定的には、一次データボリューム上のデータを回復することに関する。
【０００３】
２．関連技術
従来のバックアップシステムでは、一次データボリューム上に記憶されたデータは、一次データボリュームの画像であって、特定の一時点（すなわち画像が作成されたとき）における画像としてバックアップボリュームへコピーされ、この画像は一般に「スナップショット」と呼ばれている。一次データボリュームが故障すると、バックアップデータボリュームに記憶された一次データボリュームの画像を用いて一次データボリュームを復元する。しかし、バックアップデータボリュームは特定の時点（すなわち画像が作成されたとき）での一次データボリュームの画像であるため、一次データボリュームは、一次データボリュームの画像が作成された時点へ復元され得るのみである。
【０００４】
【概要】
例示的な一実施例で、一次データボリュームにあるデータは、バックアップデータボリュームに記憶されたデータに基づき特定の時点での一次データボリュームの画像を生成することによって復元され、ここでバックアップデータボリュームに記憶されたデータは、一次データボリュームに書込まれたデータと、データがいつ一次データボリュームに書込まれたかを示すためのスタンプとを含む。一次データボリュームは、一次データボリュームについて生成された画像に基づき復元される。加えて、一次データボリュームが復元されている間、一次データボリュームへの読出／書込要求は一次データボリュームについて生成された画像を用いて満たされる。
【０００５】
【発明の実施の形態】
以下の説明では、多くの特定の構成やパラメータなどを記載する。しかしこのような説明は、この発明の範囲に対する限定として意図されたものではなく、例示的な実施例をよりよく説明するために記載されていると認識されたい。
【０００６】
図１は、データ記憶装置１１０および１２０に接続されたホストシステム１０２の例示的な実施例を示す。ホストシステム１０２は、パーソナルコンピュータ、ワークステーション、サーバなど、どのような種類のコンピュータであってもよい。データ記憶装置１１０および１２０は、ハードドライブ、テープドライブ、種々の可換型媒体、書込可能ＣＤ−ＲＯＭ、追記型記憶（ＷＯＲＭ）フラッシュメモリ、電気的消去可能読取専用メモリ（ＥＥＰＲＯＭ）など、データを記憶できるさまざまな種類の装置であり得る。データ記憶装置１１０および１２０は、２つ以上の種類の装置をどのように組合せたものであってもよい。加えて、データ記憶装置１１０および１２０は単一の装置であっても、または多数の装置であってもよい。たとえばデータ記憶装置１１０は２個以上のハードドライブを含み得る。同様にデータ記憶装置１２０はＲＡＩＤ（ｒｅｄｕｎｄａｎｔ　ａｒｒａｙ　ｏｆ　ｉｎｅｘｐｅｎｓｉｖｅ／ｉｎｄｅｐｅｎｄｅｎｔ　ｄｉｓｋ）システム、たとえばＲＡＩＤアレイレベル０、１および／または５であってもよい。
【０００７】
図１に示すように、データ記憶装置１１０は一次データボリューム１１２を含み、データ記憶装置１２０はバックアップデータボリューム１２２を含む。この例示的な実施例では、ホストシステム１０２はデータを一次データボリューム１１２に書込／記憶し、一次データボリューム１１２から読出／検索する。後に記載のように、一次データボリューム１１２に記憶されたデータは、一次データボリューム１１２に書込まれたデータをバックアップデータボリューム１２２に記憶させることによって、データ記憶装置１２０にバックアップされる。
【０００８】
従来のミラー化バックアップ機構では、データ記憶装置１１０にある一次データボリューム１１２は、一次データボリューム１１２の画像、すなわち「スナップショット」と一般に呼ばれるものを、バックアップデータボリューム１２２としてデータ記憶装置１２０に記憶させることによって、データ記憶装置１２０にバックアップされる。したがって、一次データボリューム１１２を復元する必要がある場合、バックアップデータボリューム１２２としてデータ記憶装置１２０に記憶された一次データボリューム１１２の画像は、データ記憶装置１２０からデータ記憶装置１１０へコピーして戻され得る。たとえばデータ記憶装置１１０が故障するとデータ記憶装置１１０は交換され得るが、バックアップデータボリューム１２２としてデータ記憶装置１２０に記憶された一次データボリューム１１２の画像をコピーすることによって、一次データボリューム１１２を復元することができる。
【０００９】
この例示的な実施例では、一次データボリューム１１２の画像を記憶する代わりに連続的なバックアップ機構を用いて、データ記憶装置１２０に一次データボリューム１１２をバックアップする。具体的には、データが一次データボリューム１１２に書込まれると、このデータはバックアップデータボリューム１２２にも書込まれる。バックアップデータボリューム１２２にデータを書込むのに先立ち、データがいつ書込まれたかを示すためのスタンプがデータに与えられる。たとえばタイムスタンプを用いて、バックアップデータボリューム１２２に書込まれているデータにスタンプが与えられ得る。連続的なバックアップ機構の例のより詳細な説明については、「データ記憶システムおよびプロセス（Ｄａｔａ　ＳｔｏｒａｇｅＳｙｓｔｅｍ　ａｎｄ　Ｐｒｏｃｅｓｓ）」と題された米国特許出願連続番号第０９／５８８，２４２号を参照されたい。該特許出願はここでその全体において引用により援用される。
【００１０】
この例示的な実施例では、一次データボリューム１１２の画像がバックアップデータボリューム１２２に記憶されないため、一次データボリューム１１２を復元する必要があるときには、復元すべき一次データボリューム１１２の画像はバックアップデータボリューム１２２に記憶されたデータに基づいて作成される。さらに上述のように、バックアップデータボリューム１２２に記憶されたデータには、データがいつ書込まれたかを示すためのスタンプが与えられる。こうしてこの例示的な実施例では、いつデータが書込まれたかを示すのに用いられるスタンプの使用によって、バックアップデータボリューム１２２に記憶されたデータに基づき、一次データボリューム１１２の画像を作成することによって、一次データボリューム１１２を特定された時点での状態へ復元することができる。
【００１１】
たとえば、図２はバックアップデータボリューム１２２（図１）についての例示的なデータ構造を示す。具体的には、この例示的なデータ構造はデータ記憶要素２０２を含み、これはデータマップ２０４および１つ以上のデータブロック２０６を含む。データ記憶要素２０２は、任意の数のデータブロック２０６を含み得ると認識されたい。
【００１２】
この例示的なデータ構造では、バックアップデータボリューム１２２（図１）にバックアップされている、一次データボリューム１１２（図１）に書込まれたデータまたはデータの部分が、データブロック２０６を用いて記憶される。上述のように、データをバックアップデータボリューム１２２（図１）に書込むのに先立ち、データにはこのデータがいつ書込まれたかを示すためのスタンプが与えられる。こうしてこの例示的なデータ構造では、特定のデータブロック２０６と、特定のデータブロック２０６に対応するデータがいつ書込まれたかを示すのに用いられるスタンプとの関連付けが、マップ２０４を用いて記憶される。さらにマップ２０４は、特定のデータブロック２０６と、特定のデータブロック２０６に関連したデータが書込まれた一次データボリューム１１２（図１）内の場所との関連付けを記憶するためにも用いられる。
【００１３】
たとえば、データがいつ書込まれたかを示すためのスタンプとしてタイムスタンプが用いられ、かつデータ記憶装置１１０（図１）がハードドライブであれば、マップ２０４は、データ記憶装置１１０（図１）内のセクタの場所とタイムスタンプとに対する特定のデータブロック２０６の関連付けを記憶する。具体的には、図３を参照して、時間（Ｔ−１）でデータ（１）が一次データボリューム１１２（図１）のセクタ（Ｎ−１）、（Ｎ）および（Ｎ＋１）に書込まれると想定する。この場合、図４を参照して、データ（１）はさらにバックアップデータボリューム１２２（図１）にも書込まれる。上述のように、データ（１）がバックアップデータボリューム１２２（図１）に書込まれると、スタンプを用いて、データ（１）がいつ書込まれたか（この例では時間（Ｔ−１））を示す。やはり上述のように、データ（１）はバックアップデータボリューム１２２（図１）内で、データ記憶要素２０２にある１つ以上のデータブロック２０６に記憶される。なおデータ（１）は、バックアップデータボリューム１２２（図１）内で必ずしも一次データボリューム１１２（図１）と同じセクタに書込まれなくてもよい。データ（１）がいつ書込まれたか（この例では時間（Ｔ−１））を示すために用いられるスタンプと、データ（１）が記憶されるデータブロック２０６と、一次データボリューム１１２（図１）内でデータ（１）が書込まれた場所（この例ではセクタ（Ｎ−１）、（Ｎ）および（Ｎ＋１））との関連付けが、マップ２０４に記憶される。図４に示すデータ（１）はすべて単一のデータブロック２０６内に記憶されているが、データ（１）を２つ以上のデータブロック２０６に記憶してもよいことを認識されたい。
【００１４】
図３を参照して、時間（Ｔ）でデータ（２）が一次データボリューム１１２（図１）のセクタ（Ｎ）および（Ｎ＋１）に書込まれると想定する。これにより一次データボリューム１１２（図１）内では、セクタ（Ｎ）および（Ｎ＋１）にあるデータ（１）の部分に上書きされる。しかし図４を参照すると、バックアップデータボリューム１２２（図１）内では、データ（１）に必ずしも上書きすることなく、データ（２）はデータ記憶要素２０２内の１つ以上のデータブロック２０６に記憶される。データ（２）がいつ書込まれたか（この例では時間（Ｔ））を示すのに用いられるスタンプと、データ（２）が記憶されるデータブロック２０６と、一次データボリューム１１２（図１）内でデータ（２）が書込まれた場所（この例ではセクタ（Ｎ）および（Ｎ＋１））との関連付けがマップ２０４に記憶される。
【００１５】
次に図３を再び参照して、時間（Ｔ＋１）でデータ（３）が一次データボリューム１１２（図１）のセクタ（Ｎ−１）および（Ｎ）に書込まれると想定する。これにより一次データボリューム１１２（図１）内では、セクタ（Ｎ−１）にあるデータ（１）の部分と、セクタ（Ｎ）にあるデータ（２）の部分とに上書きされる。しかし図４を参照すると、バックアップデータボリューム１２２（図１）では、データ（１）および／またはデータ（２）に必ずしも上書きすることなく、データ（３）はデータ記憶要素２０２にある１つ以上のデータブロック２０６に記憶される。データ（３）がいつ書込まれたか（この例では時間（Ｔ＋１））を示すのに用いられるスタンプと、データ（３）が記憶されるデータブロック２０６と、一次データボリューム１１２（図１）内でデータ（３）が書込まれた場所（この例ではセクタ（Ｎ−１）および（Ｎ））との関連付けがマップ２０４に記憶される。
【００１６】
図４に示すようにデータは、先に書込まれたデータに上書きすることなくバックアップデータボリューム１２２（図１）に記憶される（たとえばデータ（２）はデータ（１）に上書きすることなく書込まれる）ため、一次データボリューム１１２（図１）を単に最近の状態へ復元する代わりに、データがいつ書込まれたかを示すのに用いられるスタンプの使用により、バックアップデータボリューム１２２（図１）に記憶されたデータに基づいて、一次データボリューム１１２（図１）は特定された時点での状態へ復元され得る。
【００１７】
たとえば、時間（Ｔ）が特定されれば、バックアップデータボリューム１２２（図１）に記憶されたデータに基づいて、時間（Ｔ）での一次データボリューム１１２（図１）の画像が作成される。具体的には、データ記憶要素２０２のマップ２０４を用いて、データ記憶要素２０２内から、特定された時点（すなわち時間（Ｔ））に対して適当な、関連付けられたスタンプを有するデータブロック２０６を判定できる。この例では、時間（Ｔ−１）および時間（Ｔ）に関連付けられた始めの２つのデータブロック２０６が適当であり、一方時間（Ｔ＋１）に関連付けられたデータ記憶要素２０２内の３番目のデータブロック２０６は適当でない。さらに、マップ２０４に基づいて、データ（１）が時間（Ｔ−１）でセクタ（Ｎ−１）、（Ｎ）および（Ｎ＋１）に書込まれ、かつデータ（２）がセクタ（Ｎ）および（Ｎ＋１）に書込まれたと判断できる。したがって、時間（Ｔ）における一次データボリューム１１２（図１）の画像を作成する際、セクタ（Ｎ−１）にあるデータ（１）の部分を含めても、または省略してもよい。
【００１８】
図２を参照して、バックアップデータボリューム１２２（図１）のこの例示的なデータ構造は、階層構造を含むこともあり得る。たとえば例示的なデータ構造は、データ記憶要素の組２０８となるようにグループ化された複数のデータ記憶要素２０２を含み得る。図２に示すように、データ記憶要素の組２０８はマップ２１０を含み、このマップ２１０は、データ記憶要素の組２０８内にあるデータ記憶要素２０２のマップ２０４のマージである。したがって、特定された時間について一次データボリューム１１２（図１）の画像が作成されると、データ記憶要素の組２０８内にあるどのデータ記憶要素２０２が、特定された時点に対して適当なデータを含んでいるのかについて、マップ２１０を用いて判定することができる。この態様で、マップの階層（たとえばデータ記憶要素２０２のマップ２０４およびデータ記憶要素の組２０８のマップ２１０）を用い、個々のデータ記憶要素２０２のマップ２０４を直接調べるよりも短い期間で一次データボリューム１１２（図１）の画像を作成することができる。バックアップデータボリューム１２２（図１）は、マップの階層で追加のレベルを含み得ると認識されたい。
【００１９】
これに代えて、一次データボリューム１１２（図１）の画像はマップ２０４を用いずに作成され得る。たとえば、一次データボリューム１１２（図１）に書込まれたデータと、データがいつ書込まれたかを示すのに用いるスタンプと、一次データボリューム１１２（図１）内でデータが書込まれた場所とは、一緒にデータブロックとしてバックアップデータボリューム１２２（図１）に記憶され得る。一次データボリューム１１２（図１）の画像を作成する際、バックアップデータボリューム１２２（図１）にあるデータブロックが調べられ、具体的にはこのデータブロックについてのデータがいつ書込まれたかを示すのに用いるスタンプが調べられ得る。
【００２０】
図５を参照して、一次データボリューム１１２（図１）を復元するための例示的なプロセス５００が示される。例示的なプロセス５００に従うと、一次データボリューム１１２（図１）は、ホストシステム１０２（図１）からの読出要求および書込要求を満たし続けながら復元される。
【００２１】
プロセス５００は、一次データボリューム１１２（図１）またはデータ記憶装置１１０（図１）に関する障害の検出時に開始され得る。たとえばユーザ／管理者が一次データボリューム１１２（図１）上のデータへのアクセスにおいて障害を検出すると、ユーザ／管理者は手動でプロセス５００を開始できる。これに代えてアプリケーションが自動的にプロセス５００を開始することもできる。これに加えてユーザ／管理者またはアプリケーションは、時点であって、そこへ一次データボリューム１１２（図１）が復元されるべき時点を特定し得る。
【００２２】
ステップ５０２において、特定された時点での一次データボリューム１１２（図１）の仮想的な表現（すなわち画像）が生成される。上述のように、図１を参照して、この例示的な実施例で一次データボリューム１１２の画像は、バックアップデータボリューム１２２に記憶されたデータに基づいて生成され得る。具体的には、バックアップデータボリューム１２２に記憶されたデータには、上述のようにデータがいつ書込まれたかを示すスタンプが与えられる。こうして、スタンプを用いてバックアップデータボリューム１２２の適当なデータを判定することにより、特定された時点での一次データボリューム１１２の画像が生成され得る。これに加え、バックアップデータボリューム１２２のデータをデータ要素のデータブロックで記憶することができ、ここでデータ要素内のデータブロックと、データブロック内のデータがいつ書込まれたかを示すスタンプとの関連付けを、データ要素内のマップが記憶する。こうしてデータ要素内のマップを用いて、特定された時点での一次データボリューム１２２の画像を生成することができる。
【００２３】
ステップ５０４（図５）で、一次データボリューム１１２について生成された画像を用いて、データ記憶装置１１０上の一次データボリューム１１２を復元する。具体的には、一次データボリューム１１２を一次データボリューム１１２について生成された画像と比較することにより、一次データボリューム１１２内でデータが失われたか、または破壊されたかを判断できる。一次データボリューム１１２内で紛失または破壊されたデータは、バックアップデータボリューム１２２から一次データボリューム１１２へ復元され得る。データ記憶装置１１０が故障した場合など、一次データボリューム１１２全体を復元する必要があれば、一次データボリューム１１２について生成された画像に関連したデータは、データ記憶装置１２０から復元され得る。なお、データ記憶装置１１０が故障して一次データボリューム１１２全体を復元する必要がある場合、一次データボリューム１１２を一次データボリューム１１２について生成された画像と比較する必要はない。
【００２４】
ステップ５０６（図５）で、一次データボリューム１１２の復元中、まだ復元されていない一次データボリューム１１２内のデータに対する読出要求および書込要求は、一次データボリューム１１２について生成された画像を用いて満たされる。たとえば、まだ一次データボリューム１１２に復元されていないデータに対する読出要求をホストシステム１０２が発行すると、この読出要求は、一次データボリューム１１２について生成された画像を用いて満たされる。データが復元されていれば、読出要求は一次データボリューム１１２によって満たされる。どのデータが復元されたかを判定するために、一次データボリューム１１２に復元する必要があるデータについてのログを維持することがあり得る。ホストシステム１０２が書込要求を一次データボリューム１１２に発行し、かつデータ記憶装置１１０が故障しているなどでデータ記憶装置１１０が非作動であれば、データ記憶装置１２０により、一次データボリューム１１２について生成された画像を用いて書込要求を満たす。データ記憶装置１１０が作動中であれば、書込要求はデータ記憶装置１１０により満たされる。
【００２５】
ステップ５０８（図５）で、一次データボリューム１１２が復元されると、読出要求および書込要求は一次データボリューム１１２により満たされる。たとえば上述のように、一次データボリューム１１２に復元する必要があるデータのログを維持することがあり、ログが完了すると、一次データボリューム１１２の復元もまた完了している。
【００２６】
例示的なプロセス５００は、図５には示さない任意の数の追加のステップを含み得ると認識されたい。プロセス５００はまた、コンピュータプログラムであって、ホストシステム１０２（図１）および／またはデータ記憶装置１１０（図１）および／またはデータ記憶装置１２０（図１）の動作を指示するためのコンピュータ実行可能命令を含む、コンピュータプログラムとして実現され得る。たとえば図１を参照して、プロセス５００（図５）は、プロセッサ１０６の動作を指示するためのバックアップソフトウェア１０４内のルーチンであり得る。例示的なプロセス５００（図５）はまた、特定用途向け集積回路（ＡＳＩＣ）などのハードウェア、またはソフトウェアとハードウェアとの組合せによって実現されることもある。
【００２７】
図６は、一次データボリューム１１２の復元中に一次データボリューム１１２への読出要求および書込要求を満たす例示的なプロセス６００をより詳細に示す。ステップ６０２で、一次データボリュームを有するデータ記憶ドライブが作動中かどうかについての判断が行なわれる。データ記憶装置が作動中でなければ、ステップ６０４で、一次データボリュームへの読出／書込要求は一次データボリュームについて生成された画像を用いて満たされる。データ記憶装置が作動中であれば、ステップ６０６で、要求が書込要求であるかどうかについての判断が行なわれる。要求が書込要求であれば、ステップ６０８で、一次データボリュームにより書込要求が満たされる。要求が書込要求でなければ、要求は読出要求であり、ステップ６１０で、要求されているデータがすでに一次データボリュームに復元されているかどうかについての判断が行なわれる。データが復元されていれば、ステップ６１２で、読出要求は一次データボリュームにより満たされる。データが復元されていなければ、ステップ６１４で、読出要求は一次データボリュームの画像により満たされる。
【００２８】
例示的なプロセス６００は、図６には示さない任意の数の追加のステップを含み得ると認識されたい。プロセス６００はまた、コンピュータプログラムであって、ホストシステム１０２（図１）および／またはデータ記憶装置１１０（図１）および／またはデータ記憶装置１２０（図１）の動作を指示するためのコンピュータ実行可能命令を含む、コンピュータプログラムとして実現され得ると認識されたい。たとえば図１を参照して、プロセス６００（図６）は、プロセッサ１０６の動作を指示するためのバックアップソフトウェア１０４内のルーチンであり得る。例示的なプロセス６００（図６）はまた、特定用途向け集積回路（ＡＳＩＣ）などのハードウェア、またはソフトウェアとハードウェアとの組合せによって実現されることもある。
【００２９】
図１を参照して、一次データボリューム１１２は単一のデータ記憶装置１１０の一部であっても、または多数のデータ記憶装置１１０に亘ってまたがってもよいことを認識されたい。同様にバックアップデータボリューム１２２は、単一のデータ記憶装置１２０の一部であっても、多数のデータ記憶装置１２０に亘ってまたがってもよい。さらに、一次データボリューム１１２とバックアップデータボリューム１２２との構成が同一である必要はない。たとえば一次データボリューム１１２は、大容量ハードディスクのパーティションなど単一のデータ記憶装置１１０の一部であり、一方でバックアップデータボリューム１２２はＲＡＩＤシステムなど多数のデータ記憶装置１２０に亘ってまたがることがあり得る。
【００３０】
図１に示すように、ホストシステム１０２はバックアップソフトウェア１０４およびプロセッサ１０６を含み得る。この例示的な実施例では、バックアップソフトウェア１０４およびプロセッサ１０６は、ホストシステム１０２のバックアップ動作を制御するように構成される。しかしホストシステム１０２は、図１には示さないハードウェアとソフトウェアとのさまざまな構成要素を含み得ると認識されたい。
【００３１】
さらに、バックアップデータボリューム１２２に記憶されたデータは、この後データ記憶装置１３０内の保管用データボリューム１３２に転送され得る。図１に示すデータ記憶装置１３０はデータ記憶装置１２０に接続されているが、データ記憶装置１３０をホストシステム１２０に接続してもよいことを認識されたい。
【００３２】
さらに図１に示すように、ホストシステム１０２はネットワークインターフェイスカード（ＮＩＣ）１０８を含む。これによって、ホストシステム１０２ならびにデータ記憶装置１１０、１２０および／または１３０は、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、ストレージエリアネットワーク（ＳＡＮ）、インターネットなどを経由して遠隔接続され得る。しかし、ホストシステム１０２ならびにデータ記憶装置１１０、１２０および／または１３０は、物理的ケーブルなどによって直接に接続してもよいことを認識されたい。
【００３３】
さらに、ホストシステム１０２ならびにデータ記憶装置１１０、１２０および／または１３０は、単一のハウジング内に収められ得ると認識されたい。たとえばホストシステム１０２ならびにデータ記憶装置１１０、１２０および／または１３０は、単一のコンピュータシステムの構成要素であり得る。
【００３４】
例示的な実施例の説明を行なってきたが、この発明の精神および／または範囲から逸脱せずにさまざまな変形が可能である。したがってこの発明は、図面に示し上記した特定の形態に限定されると解釈すべきではない。
【図面の簡単な説明】
【図１】例示的なホストシステムおよびデータ記憶装置を示す図である。
【図２】例示的なバックアップデータボリュームの例示的なデータ構造を示す図である。
【図３】例示的なバックアップデータボリュームに記憶されたデータについての例示的なマップを示す図である。
【図４】例示的なバックアップデータボリュームにある例示的なデータ記憶要素を示す図である。
【図５】一次データボリュームへの読出／書込要求を満たしながら、バックアップデータボリュームを用いて一次データボリュームを復元する、例示的なプロセスを示す図である。
【図６】図５に示す例示的なプロセスの一局面をより詳細に示す図である。
【符号の説明】
１１２　一次データボリューム、１２２　バックアップデータボリューム、２０２　データ記憶要素、２０４　データ記憶要素のマップ、２０６　データブロック、２０８　データ記憶要素の組、２１０　データ記憶要素の組のマップ。
【図１】
2004038938.tif 000003
【図２】
2004038938.tif 000004
【図３】
2004038938.tif 000005
【図４】
2004038938.tif 000006
【図５】
2004038938.tif 000007
【図６】
2004038938.tif 000008
【外国語明細書】
2004038938.tif 000009
2004038938.tif 000010
2004038938.tif 000011
2004038938.tif 000012
2004038938.tif 000013
2004038938.tif 000014
2004038938.tif 000015
2004038938.tif 000016
2004038938.tif 000017
2004038938.tif 000018
2004038938.tif 000019
2004038938.tif 000020
2004038938.tif 000021
2004038938.tif 000022
2004038938.tif 000023
2004038938.tif 000024
2004038938.tif 000025
2004038938.tif 000026
2004038938.tif 000027
2004038938.tif 000028
2004038938.tif 000029
2004038938.tif 000030
2004038938.tif 000031
2004038938.tif 000032
2004038938.tif 000033
2004038938.tif 000034