(57)【要約】ボリュームへデータ・ブロックを書き込んだり、ボリュームからデータ・ブロックを読み取ったりするファイル・システム又はデータベース管理システムのような記憶装置アプリケーションを実行するサーバと一緒に使用するためのデータ・バックアップ・システム。データ・バックアップ・システムは、記憶装置アプリケーションが動作中に、データ・ブロックにアクセスするために、記憶装置アプリケーションと競合しない、能動ボリュームからブロックをコピーするためのセルフアーカイビング・ログ構造ボリュームを含む。セルフアーカイビング・ログ構造ボリュームは、各書込イベントの結果を一次記憶装置の新しい位置に記録し、ボリュームの状態の変化が時間的順序に配列されたログを形成する。セルフアーカイビング・ログ構造ボリュームは、セルフアーカイビング・ログ構造ボリュームのブロックが、記憶装置アプリケーションに関して一致している状態にある時点（同期イベント）をログ内に記録するために動作することができる。データ・バックアップ・システムは、セルフアーカイビング・ログ構造ボリュームのアーカイブしたデータ・ブロック及び同期イベントを記憶するために、セルフアーカイビング・ログ構造ボリュームと一緒に動作することができる補助記憶装置をさらに含む。セルフアーカイビング・ログ構造ボリュームは、そのログの非能動セグメントを補助記憶装置に移動させるために動作することができる。セルフアーカイビング・ログ構造ボリュームは、さらに、一定の数のログ・セグメントから確実にボリュームを再構成することができるように動作することができる。
2004514963.tif 000002
【特許請求の範囲】
【請求項１】
セルフアーカイビング・ログ構造ボリュームへデータ・ブロックを書き込み、セルフアーカイビング・ログ構造ボリュームからデータ・ブロックを読み取る記憶装置アプリケーションを実行するサーバと一緒に使用するためのデータ・バックアップ・システムであって、
前記記憶装置アプリケーションの実行中に、一次記憶装置から補助記憶装置にブロックをコピーするためのセルフアーカイビング・ログ構造ボリュームと、
前記セルフアーカイビング・ログ構造ボリュームのブロックが、前記記憶装置アプリケーションに関して一致した状態になった場合に、前記セルフアーカイビング・ログ構造ボリュームにそれを表示するエージェントと、
前記セルフアーカイビング・ログ構造ボリュームのログしたブロック及び同期イベントを記憶するために、前記セルフアーカイビング・ログ構造ボリュームと一緒に動作することができる一次記憶装置とバックアップ記憶装置と、
を備えるデータ・バックアップ・システム。
【請求項２】
前記セルフアーカイビング・ログ構造ボリュームが、複数のログ・セグメント及び１つの索引を有するログを含み、前記ログ・セグメントが、現在のログ・セグメントと能動ボリュームのブロックを記憶するための能動ログ・セグメントを含み、前記索引が、前記ログ・セグメント内の各ブロックの現在位置を示す、請求項１に記載のデータ・バックアップ・システム。
【請求項３】
前記セルフアーカイビング・ログ構造ボリュームが、前記書き込んだブロックを前記ログの末尾にコピーし、次に、前記索引を、前記ログ内のそのブロックの現在位置により更新することにより、前記記憶装置アプリケーションからのブロック書込要求を満足させる、請求項２に記載のデータ・バックアップ・システム。
【請求項４】
前記セルフアーカイビング・ログ構造ボリュームが、前記索引内で前記要求されたブロックを発見し、次に、前記要求されたブロックを前記ログからコピーすることによりブロック読取要求を満足させる、請求項２に記載のデータ・バックアップ・システム。
【請求項５】
前記セルフアーカイビング・ログ構造ボリュームが、同期イベントを記述する日付、時刻及び他の情報を含むログに特定のブロックを書き込むことにより同期イベントを記録する、請求項２に記載のデータ・バックアップ・システム。
【請求項６】
前記セルフアーカイビング・ログ構造ボリュームが、前記ログの現在のセグメントにブロックを書き込み、次に、前記現在のセグメントが満杯になった場合に、前記現在のセグメントを能動セグメントに変換する、請求項２に記載のデータ・バックアップ・システム。
【請求項７】
前記ログ構造ボリュームの前記能動セグメントが、時間的順序に配列されている、請求項６に記載のデータ・バックアップ・システム。
【請求項８】
前記ログの前記セグメントが同じ大きさである、請求項２に記載のデータ・バックアップ・システム。
【請求項９】
前記ログが、複数の非能動セグメント及び複数のリサイクル・セグメントをさらに含む、請求項２に記載のデータ・バックアップ・システム。
【請求項１０】
前記セルフアーカイビング・ログ構造ボリュームが、前記ログ内を逆方向に走査し、各ブロックの索引エントリを前記ログの最新の位置に更新することにより、任意の同期点からボリューム索引を作成するために動作することができる、請求項２に記載のデータ・バックアップ・システム。
【請求項１１】
前記ログの前記現在のセグメント及び前記能動セグメントが、すべての書込要求ブロックを満足させる、固定長の動作中の一組のセグメントを形成する、請求項１０に記載のデータ・バックアップ・システム。
【請求項１２】
走査の最大の長さが、前記動作中の一組のセグメントの長さに１つの追加セグメントの長さを加えたものである、請求項１１に記載のデータ・バックアップ・システム。
【請求項１３】
最も古い能動セグメントが、前記動作中の一組のセグメントが満杯になった場合に、非能動セグメントとして指定される、請求項１２に記載のデータ・バックアップ・システム。
【請求項１４】
前記非能動セグメントが、前記セルフアーカイビング・ログ構造ボリュームにより圧縮され、前記補助記憶装置にアーカイブされる、請求項１３に記載のデータ・バックアップ・システム。
【請求項１５】
前記一次記憶装置上の非能動セグメントの内容が、圧縮され、前記補助記憶装置にアーカイブされた後で捨てられ、次に、前記非能動セグメントがリサイクル・セグメントになる、請求項１４に記載のデータ・バックアップ・システム。
【請求項１６】
各セグメントの大きさ及びセグメントの数がポリシーにより決まる、請求項２に記載のデータ・バックアップ・システム。
【請求項１７】
前記セルフアーカイビング・ログ構造ボリュームが、前記ログの非能動セグメントを前記補助記憶装置に移動するために動作することができる、請求項２に記載のデータ・バックアップ・システム。
【請求項１８】
前記セルフアーカイビング・ログ構造ボリュームが、一定の数のログ・セグメントから確実に再構成することができるように動作することができる、請求項１７に記載のデータ・バックアップ・システム。
【請求項１９】
固定長の一連の番号の付いているブロックと、前記ボリュームへの書込イベント及び同期イベントのログ・エントリを記録するためのログを有するセルフアーカイビング・ログ構造ボリュームによりデータをバックアップするための方法であって、前記ログが、同期イベント・エントリ、能動ログ・エントリ、及び非能動ログ・エントリを含み、前記方法が、
各書込イベント・エントリが、書き込み中のブロックの数及び転送中のブロックの内容を含んでいる場合に、前記ボリュームの前記一連のブロックにデータをコピーすることにより書込イベントを実行するステップと、
各同期イベント・エントリが前記同期イベントの時刻を含んでいる場合に、前記ボリュームの前記ブロックが一致した状態にあることが分かった時点を記録するために同期イベントを実行するステップと、
書込イベントに対するログ・エントリが、同じブロック番号のための後の書込イベントにより重ね書きされるまで能動ログ・エントリであり、次に、前記能動ログ・エントリが非能動ログ・エントリになる場合で、能動セグメントが、非能動エントリと同期エントリだけからなり、前記能動セグメントが、アーカイブするために選択することができる非能動セグメントとなる場合に、書込イベント用のログ・エントリを実行するステップと、
非能動セグメントを補助記憶装置にアーカイブするステップと、
前記現在のログ・セグメント及び前記能動ログ・セグメントが、前記ボリュームのための有限再構成長さを指定する場合に、前記アーカイブした非能動セグメントを、エントリを含んでいないで、前記新しい現在のセグメントとなるために選択することができるリサイクル・セグメントに変換するステップと、
それぞれが、ボリューム・ブロック番号及び対応するログ・エントリに関連する索引エントリを前記ログの索引内に記録するステップと、
前記ボリュームの１つのブロックに対する１つのエントリを前記現在のログ・セグメントに追加し、前記ブロック番号に対する前記索引エントリを、前記新しいログ・エントリのログ位置により更新することにより書込イベントを満足させるステップと、
を含むデータバックアップ方法。
【請求項２０】
前記ボリュームのスナップショットを実行するステップをさらに含み、前記ボリュームのスナップショットが、前記ログ内の選択した点のところの前記ボリュームの状態の記録であり、前記索引を、前記ログエントリから前記索引へのブロック／ログの位置関係で満たし、前記選択した点から、丁度良いタイミングで逆方向に走査し、前記ログ内で前に起こるブロックに対する任意の二重のエントリを無視することにより生成され、前記選択した点が同期エントリである場合、前記スナップショットが前記ボリュームを制御する記憶装置アプリケーションの点で一致する、請求項１９に記載のデータバックアップ方法。
【請求項２１】
前記選択した点からの前記再構成長さを超えた場合に、前記走査を終了するステップをさらに含む、請求項２０に記載のデータバックアップ方法。
【請求項２２】
時刻ＴＥのスナップショットに、スタート時間と終了時間の間に発生する前記すべてのログ・エントリを追加することにより、スタート時間（ＴＢ）から終了時間（ＴＥ）までの間隔（ＴＮ）に対する一連のスナップショットを実行するステップをさらに含む、請求項２１に記載のデータバックアップ方法。
【請求項２３】
スタート時間から中間時間までの時間の間に、前記ログを順方向に走査し、丁度良いタイミングで順方向に移動するために、重ね書きされた任意の索引エントリを置換することにより、前記索引を再構成するステップをさらに含む、請求項２２に記載のデータバックアップ方法。
【請求項２４】
丁度良いタイミングで逆方向に移動するために、中間時間からスタート時間に前記ログを逆方向に走査するステップをさらに含む、請求項２２に記載のデータバックアップ方法。
【請求項２５】
前記ログ編成により、記憶装置アプリケーションと前記アーカイブ・プロセス間の同じブロックに対する競合の可能性がなくなったために、前記ボリュームを所有する前記記憶装置アプリケーションの知識がなくても、非能動ログ・エントリが補助記憶装置にアーカイブされる、請求項１９に記載のデータバックアップ方法。
【発明の詳細な説明】
【０００１】
［技術分野］
本発明は、概して、データをバックアップするための方法及びシステムに関し、特に、セルフアーカイビング・ログ構造ボリュームによりデータをバックアップするための自己保護型記憶方法及びシステムに関する。
【０００２】
［背景技術］
従来のデータ・バックアップは、高価であり、時間が掛かり、危険が多かった。ユーザは、企業バックアップ・システムをインストールし、構成し、維持し、操作するのに長い時間と費用を掛ける。このような努力にもかかわらず、多くのユーザは、依然として、貴重なデータを喪失している。何故なら、必要なファイル・バージョン又はデータベース処理は、バックアップされてこなかったし、妥当な時間内に回復することができないからである。
【０００３】
バックアップしたデータが喪失する原因は、帯域幅が制限されていることと、管理エラーである。従来のバックアップ・システムは、ネットワーク、及びユーザがネットワーク上で行う他の操作のために必要な計算のための帯域幅を入手するために競合していた。バックアップ・システムが行うファイル・アクティビティ、及びネットワーク・トラヒックのために、ネットワークの速度は非常に遅くなる。２４時間休みなくネットワークを操作しなければならないので、バックアップに使用することができる時間はさらに短くなる。アドミニストレータは、ファイルを喪失するリスクとデータ・センター応答時間との間で絶えず折り合いをつけなければならない。バックアップ・システムのベンダは、利用できる帯域幅から大部分の作業を締め出すための構成オプションを開発することにより、この難問に対処してきた。これらのオプションは、帯域幅の制限問題をある程度は解決するが、管理エラーにより、ファイルが全然バックアップされないリスクも増大する。
【０００４】
現在の分散型ネットワーク内に位置するコンピュータ、オペレーティング・システム、ソフトウェア・パッケージ、ファイル・システム、及び機密保護領域が種々様々であるために、管理エラーのリスクはますます増大している。従来のバックアップ・システムは、元のファイル・システムのネットワーク・プロトコル及び機密保護ポリシーに従って対処しなければならないクライアントの構成要素を含んでいる。また、それぞれに対して、異なるソフトウェアをインストールし、構成しなければならない。高性能システムは、ホストのハードウェアに適応しなければならないので、管理コスト及び構成ミスが増えることになる。とりわけ、バックアップのスケジュールは、サービスが必要な時に使用することができないネットワーク上で作成しなければならない。これらの各問題により、ファイルがバックアップされないという事態が頻繁に起こったり、ファイルが全然バックアップされないという事態が起こったりするリスクが増加する。
【０００５】
従来のバックアップ方法及びシステムのもう１つの問題は、これらのバックアップ方法及びシステムは、データを周期的にしかバックアップしないという問題である。それ故、データの有意なイベントとは異なり、一定の間隔でバックアップが行われ、遥かに重要なデータは、バックアップ期間中に全然コピーされない。バックアップの間に喪失したデータの復活のコストは高い。
【０００６】
それ故、管理コストを大幅に削減し、必要なファイルのバージョンを使用できる可能性を大幅に向上するデータのバックアップ方法及びシステムの開発が待望されている。
【０００７】
［発明の概要］
それ故、本発明の１つの目的は、セルフアーカイビング・ログ構造ボリュームを使用するデータをバックアップするための自己保護記憶方法及びシステムを提供することである。
【０００８】
本発明のもう１つの目的は、記憶装置アプリケーションにより制御されているデータのあるボリュームに対するすべての変更をバックアップ記憶装置に転送するために動作することができるセルフアーカイビング・ログ構造ボリュームを提供することである。
【０００９】
本発明を説明するための用語について以下に説明する。ブロックという用語は、固定長のデジタル記憶装置を指す。ボリュームという用語は、最大固定長の一連の番号の付いているブロックを指す。ブロック番号という用語は、一連のブロック内の特定のブロックを指す。最低でも、ボリュームは、読取イベント及び書込イベントを行うことができなければならない。
【００１０】
読取イベントは、そのイベントのオリジネータが示す一連のブロックから、オリジネータにより制御されている記憶装置にデータをコピーする。書込イベントは、データを、そのオリジネータから、オリジネータが示す一連のブロックにコピーする。
【００１１】
記憶装置アプリケーションは、ボリューム上で情報を編成し、ボリュームのブロック間に一定の関係を維持する。記憶装置アプリケーション又は記憶装置アプリケーションと協力するエージェントは、ボリュームのブロックが一致した場合に、同期イベント（ｓｙｎｃｈ）をボリュームに送る。
【００１２】
ログは、ボリュームへのすべての書込イベント及び同期イベントに対するエントリの時間的順序である。各書込イベント・エントリは、書き込み中のブロックの番号、及び転送中のブロックの内容を含む。各同期イベント・エントリは、イベントの時間を含む。書込イベントに対するログ・エントリは、同じブロック番号の後の書込イベント・エントリにより書き換えられるまで能動状態にある。その後で、書き換えられたエントリは、非能動状態になる。
【００１３】
ログ構造ボリュームは、通常のボリュームと同じサービスを行う。ログ構造ボリュームは、ログと、各ボリューム・ブロック番号を対応する能動ログ・エントリに関連付ける索引からなる。ログ構造ボリュームは、そのブロックに対するエントリをログの末尾に追加し、そのブロック番号に対する索引エントリを新しい能動エントリのログ位置で更新することにより、書込要求を満足させる。ログ構造ボリュームは、索引内の要求されたブロックに対する能動エントリの位置を発見し、能動エントリからオリジネータにデータをコピーすることにより、特定のブロックに対する読取要求を満足させる。本発明によれば、セルフアーカイビング・ログ構造ボリュームは、その索引から参照されたすべてのブロックが、そのログの有限長さ内に位置していることを保証するログ構造ボリュームである。
【００１４】
一次記憶装置は、ＲＡＭ又は磁気ディスクのようなランダム・アクセス・デジタル媒体である。この記憶装置には、ログ及び索引が記憶され、ボリュームは、記憶装置アプリケーションがスタートした読取イベント及び書込イベントを満足させる。
【００１５】
補助記憶装置は、磁気テープ、磁気ディスク、光学テープ又は光ディスクのようなアーカイバル・デジタル媒体である。セグメントは、一次記憶装置から補助記憶装置に１つの単位として転送することができるログの連続している部分である。
【００１６】
ボリュームのスナップショットは、ログの選択した位置のところのボリュームの状態の記録である。ログ構造ボリュームのスナップショットは、ログ・エントリから索引へのブロック／ログ位置関係を空の索引に記入し、選択した位置から時間的に逆に走査し、ログ内で前に発生したブロックに対する任意の複写エントリを無視することにより、ログから再構成される。選択した位置が同期エントリである場合には、スナップショットは、そのボリュームを制御している記憶装置アプリケーションに対して一致した状態になる。走査は、索引がボリュームのすべてのブロックに対するエントリを含んでいる場合、又はスキャナが、最初に来たログの始めに到着した場合に終了する。
【００１７】
上記及び他の目的を実行する際に、本発明は、セルフアーカイビング・ログ構造ボリュームを供給する。セルフアーカイビング・ログ構造ボリュームは、その索引から参照されたすべてのブロックが、そのログの有限長さ（再構成長さ）内に位置していることを保証し、ログの非能動セグメントを補助記憶装置へ／から移動するログ構造ボリュームである。ログの他に、再構成長さを超えて能動ログ・エントリを押すと、この能動エントリの内容をログの冒頭の部分にコピーし、その新しい位置を反映するために索引を更新することにより、保証が行われる。コピーされたログ・エントリは、現在非能動状態にあり、再構成長さを超えて押すことができ、以下に説明するように、補助記憶装置に移動することができる。セルフアーカイビング・ログ構造ボリュームに割り当てられた一次記憶装置の容量は、再構成長さの小さな倍数に制限することができる。非能動セグメントを補助記憶装置にコピーした後で、そのセグメントに割り当てられた一次記憶装置は、新しい現在のセグメントとして、ログの始めに追加するために使用できるようになる。
【００１８】
セルフアーカイビング・ログ構造ボリュームは、ログの非能動セグメントを補助記憶装置に移動する。補助記憶装置に移動する際に、このボリュームは、セグメント内のコピーしたブロックの初期のバージョンを無視することにより、ログを小さくすることができる。これにより、アーカイブした部分の時間的粒度が小さくなるが、同期イベント境界上でセグメントがアーカイブされる限りは、その一貫性は影響を受けない。同期イベントはログ内に捕捉されるので、セルフアーカイビング・ログ構造ボリュームは、そのボリュームを所有する記憶装置アプリケーションの知識がなくても、セグメントを移動することができ、依然として記憶装置アプリケーションのインテグリティを維持する。
【００１９】
再構成長さの保証及びその保証を行う手段により、セルフアーカイビング・ログ構造ボリューム内のログ・エントリのストリームは、ボリュームの状態の一連のスナップショットを形成する。セルフアーカイビング・ログ構造ボリュームのスナップショットは、ログ内の選択した位置から再構成長さを超えた場合に、走査が終了するという点を除けば、通常のログ構造ボリュームに対するのと同じ方法で再構成される。スナップショットは、任意のログ・エントリからスタートすることができる。一致しているスナップショットは、同期エントリと一緒にスタートしなければならない。
【００２０】
セルフアーカイビング・ログ構造ボリュームの一連のスナップショットは、時間ＴＥのスナップショットに、ＴＥとＴＢの間に発生するすべてのログ・エントリを追加することにより、スタート時間（ＴＢ）から終了時間（ＴＥ）までの１つの間隔（ＴＮ）に対して構成される。ＴＢから中間の時点（ＴＩ）へ丁度良いタイミングで前進するために、ＴＢからＴＩへ丁度良いタイミングでログを順方向に走査し、重ね書きした任意の索引エントリを置換することにより、索引が再構成される。ＴＩからＴＢへ丁度良いタイミングで逆方向に移動するために、ログがＴＩからＴＢへ逆方向に走査され、前に書き込まれたブロックに対する任意の索引エントリを置換する。
【００２１】
回復ボリュームは、スナップショット又は一連のスナップショットがコピーされている、セルフアーカイビング・ログ構造ボリュームと類似の方法で構成されたログと索引とからなる一次記憶装置のあるエリアである。記憶装置アプリケーションは、回復ボリュームを、アーカイバル・コピーである元のボリュームから区別することはできない。
【００２２】
さらに、上記及び他の目的を達成する際に、本発明は、ボリュームへデータ・ブロックを書き込んだり、ボリュームからデータ・ブロックを読み取ったりする記憶装置アプリケーションを実行しているサーバと一緒に使用するためのデータ・バックアップ・システムを供給する。データ・バックアップ・システムは、セルフアーカイビング・ログ構造ボリューム、一次記憶装置、補助記憶装置、ログ（一次記憶装置、補助記憶装置又はこれら両方の記憶装置）から一次記憶装置へスナップショット又は一連のスナップショットをコピーすることにより、回復ボリュームを生成するための方法、及び記憶装置アプリケーションが知っている回復ボリュームの概観を順方向及び逆方向に移動するために、丁度良いタイミングで、一連のスナップショットを含む回復ボリュームの索引を操作するための方法を含む。
【００２３】
要するに、セルフアーカイビング・ログ構造ボリュームは、ログの非能動セグメントを補助記憶装置に移動するために動作することができる。セルフアーカイビング・ログ構造ボリュームは、一定の数のログ・セグメントから確実にボリュームを再構成することができる。アーカイビング・プロセスは、非同期的に行われ、データ記憶としてのセルフアーカイビング・ログ構造ボリュームにより、任意の記憶装置アプリケーションの通常の動作と同時に行われる。
【００２４】
本発明は、多くの利点を持つ。データが書き込まれ、データ対象物のすべてのバージョンが回復可能になると、データは直ちに保護される。さらに、データ保護は、オペレータの行動により左右されず、またデータの回復は、迅速に、容易に行うことができ、その信頼性は高い。また、データ保護のための動作は、時間及びリソースの点で、アプリケーションと競合しない。
【００２５】
本発明の上記及び他の目的、機能及び利点は、添付の図面を参照しながら、本発明を実施するための最良の形態についての以下の詳細な説明を読めば、容易に理解することができるだろう。
【００２６】
［発明を実施するための最良の形態］
図１について説明すると、この図は、本発明の自己保護データ・バックアップ・システム１０のブロック図である。自己保護データ・バックアップ・システム１０は、サーバ１２、記憶装置アプリケーション１４、セルフアーカイビング・ログ構造ボリューム１６、一次記憶装置１８、及び補助記憶装置２０を含む。動作中、サーバ１２は、セルフアーカイビング・ログ構造ボリューム１６へ／からデータ・ブロックを書き込み、読み取る記憶装置アプリケーション１４を実行する。セルフアーカイビング・ログ構造ボリューム１６は、記憶装置アプリケーション１４が動作している間に、一次記憶装置上のデータ・ブロックにアクセスする記憶装置アプリケーションと競合しないで、一次記憶装置１８上のそのログから補助記憶装置２０へデータ・ブロックをコピーするために動作することができる。
【００２７】
従来のバックアップ・システムの問題を解決するために、セルフアーカイビング・ログ構造ボリューム１６は、書き込まれた各ブロックを捕捉し、記憶装置アプリケーション１４の動作により発生した同期イベントを捕捉し、書き込み及び同期を最初一次記憶装置１８に連続的にログし、その後で、補助記憶装置２０にログする。ログを編成するための方法により、高速データ移動装置を使用することができる場合には、アーカイブ動作及び回復動作の両方のために、上記高速データ移動装置を使用することができる。自己保護データ・バックアップ・システム１０により、ユーザは、使い慣れているデスクトップ・ツールにより、任意の時点で回復したボリュームの状態をチェックし、通常のサーバの動作に影響を与えないで、オフラインでファイル・システムを索引し、アーカイブし、書き込んだファイルの各バージョンを回復し、時間の経過とともに変化する回復したボリュームの状態をチェックし、また丁度良いタイミングでウイルス及び他の故障をその最初の発生の時点にまで追跡することができる。自己保護データ・バックアップ・システム１０は、書き込まれたファイルの各バージョンをセーブし、多くのバックアップ管理動作を除去して、エラーが発生する可能性を低減することにより管理を簡単にし、データ機密保護を改善し、関連テープ・ライブラリの管理を簡単にし、ネットワーク帯域幅又は能動データへのアクセスの点で、記憶装置アプリケーションと競合しない。
【００２８】
セルフアーカイビング・ログ構造ボリューム１６は、セグメントに分割されたログ内のすべてのブロック・レベルの記憶装置アプリケーション１４の動作を捕捉するために動作することができる。セルフアーカイビング・ログ構造ボリューム１６は、記憶装置アプリケーション１４のアクティビティの多くの一致する「ムービー・フレーム」を供給するために、ログ内の同期イベントを記録する。同期捕捉により、セルフアーカイビング・ログ構造ボリューム１６のデータ保護機構動作は、サーバ１２の動作から分離する。セルフアーカイビング・ログ構造ボリューム１６は、ボリューム１６内のログの非能動セグメントを一次記憶装置１８及び補助記憶装置２０へ／から移動するために、また一定の数のログ・セグメントから確実にボリュームを再構成するために動作設定マネージャを使用する。セルフアーカイビング・ログ構造ボリューム１６は、ログの一部を記憶装置アプリケーション１４に提示し、索引を操作することにより、アーカイバルの時点で上記提示部分を逆方向及び順方向に移動するために、回復ボリューム・インタフェースを使用する。
【００２９】
引き続き図１を参照しながら図２について説明すると、この図は、本発明のセルフアーカイビング・ログ構造ボリューム１６のブロック図である。セルフアーカイビング・ログ構造ボリューム１６は、複数のログ・セグメント２４を持つログ２２を含む。ログ・セグメント２４は、現在のログ・セグメント２６、能動ログ・セグメント２８、非能動ログ・セグメント３０、及びリサイクル・ログ・セグメント３２を含む。ログ２２は、また、ログ内の各ブロックの現在位置を示す索引３４も含む。記憶装置アプリケーション１４、セルフアーカイビング・ログ構造ボリューム１６は、ブロック読取要求及びブロック書込要求に応え、同期イベントを認識する通常のボリューム３６のように動作する。
【００３０】
通常、セルフアーカイビング・ログ構造ボリューム１６は、各書込処理の記録、及び各同期イベントの記録を有する。それ故、ボリュームは、任意の時点で再構成することができる。例えば、所与の同期点からボリュームを再構成するために、データ・バックアップ・システム１０は、所与の同期点までログ２２内を探索し、次に、データ・ブロックの索引を再構成するために、ログ内を逆方向に追跡する。
【００３１】
動作中、セルフアーカイビング・ログ構造ボリューム１６は、そのブロックをログ２２の末尾にコピーし、ログ内のそのブロックの現在位置で索引３４を更新することにより、書込ブロック要求を満足させる。セルフアーカイビング・ログ構造ボリューム１６は、索引３４内で必要なブロックを発見し、それをログ２２からコピーすることにより、読取ブロック要求を満足させる。セルフアーカイビング・ログ構造ボリューム１６は、ログ２２に特定のブロックを書き込み、ログを同期イベントを記述する日付、時刻、及び他の情報で更新することにより、同期イベントを記録する。
【００３２】
ログ２２は、時間的な順序で並んでいる同じ大きさのセグメント２４に分割され、ＲＡＭ、ディスク、テープ、又は一次記憶装置の定義に適合する任意のデジタル媒体上に維持される。ブロックは、何時でも、現在のセグメント２６に書き込まれる。現在のセグメント２６が満杯の場合には、そのセグメントは能動セグメント２８になり、新しい現在のセグメント２６が、リサイクル・セグメント３２のリサイクル・プールから引き出される。能動セグメント２８と現在のセグメント２６の組は、索引３４から参照されるすべてのブロックを含む。現在のセグメント２６及び能動セグメント２８は、すべての書込要求を満足させる動作中の一組のセグメントとなる。動作中の一組のセグメントは一定の大きさを持つ。この一定の大きさは、再構成長さを決定する。
【００３３】
ボリューム索引は、ログ２２内を逆方向に走査し、ログ内の最新の位置への各ブロックに対する索引エントリを更新することにより、任意の同期点から再構成することができる。走査の最大の長さは、動作中の一組のセグメントの長さに、追加の１つのセグメントの長さを加えた長さである。逆方向への走査は、すべてのボリューム・ブロックに遭遇した場合には、早期にストップすることができる。有効なボリュームは、実際に書き込まれたブロックだけを説明することができるものでなければならない。それ故、索引３４は満杯でない場合もある。動作中の一組のセグメントが満杯になると、最も古い能動セグメント２８は、非能動セグメント３０となる。非能動ブロックは、オフラインで読み取ることができるが、動作中の一組のセグメントの一部ではない。次に、非能動セグメント３０は、圧縮され、アーカイブ装置３４によりアーカイブされる。圧縮され、アーカイブされた後で、非能動セグメント３０は、リサイクル・セグメント３２になる。
【００３４】
セグメント・マネージャは、ログ・セグメント間の状態の変化、そのアーカイブ動作及び補助記憶装置２０へのその移動を処理する。各セグメントの大きさ、各タイプのセグメントの数、及び所与のタイプのセグメントが記憶されている媒体がポリシーにより決定される。応答時間を強調するポリシーは、仮想ボリューム・サイズを犠牲にして、ＲＡＭ及びディスク内に多くのセグメントを記憶する。もう一方の極端な場合には、ボリューム・サイズを強調するポリシーは、ディスク上に現在のセグメント２６と索引３４だけを記憶し、テープから動作中の一組のセグメントを検索することにより、読取要求を満足させる。
【００３５】
引き続き図２を参照しながら図３について説明するが、ここでは、セルフアーカイビング・ログ構造ボリューム１６が使用するジャーナリング・アルゴリズム４０について説明する。第１の動作は、ボリュームをスタートさせるための同期イベント４２の記録を含む。同期イベント４２は、最初のスタート時間４４のところ、すなわち、時間「０１／０１／２０００：００５５」で実行される。最初のスタート時間４４のところでは、ブロック２、４及び３の内容は、それぞれＣ、Ｂ及びＡである。次に、ブロック２、４及び３は、それぞれＡ、Ｂ及びＣにより満たされ、ブロック１は次の時間４６のところで静的内容で満たされる。次に、ブロック３は「１」により置換される。その後の時間４８のところでの第２の動作は、ブロック４及び２の「２」及び「３」によるそれぞれの置換を含む。セグメント２は、現在のセグメントになる。何故なら、現在、セグメント１が満杯だからである。セグメント０は、アーカイブ状態に設定され、上記索引により依然として参照されているセグメント０内の任意のブロックは、セグメント２に移動する。この時点で、ブロック１はセグメント２に移動する。これにより、再構成長さの仮定が保存され、セグメント０をアーカイブすることができる。次に、同期イベントが、時間「０１／１０／２０００：０１００」で記録される。以降の動作は、＠、＃及び＄によるブロック２、４及び３の置換を含む。
【００３６】
引き続き図２を参照しながら図４について説明するが、ここでは、セルフアーカイビング・ログ構造ボリューム１６が使用する同期イベント記録アルゴリズム６０について説明する。ある時点においてボリュームの同期イベントを生成するために、セルフアーカイビング・ログ構造ボリューム１６と、記憶装置アプリケーション１４の両方と通信することができるデータ・バックアップ・システム１０のエージェントは、ａ）記憶装置アプリケーションが、そのボリュームを一致した状態にしたことを検出、又はｂ）記憶装置アプリケーションに、そのボリュームを一致した状態にするようにコマンドを発行し、その後で、そのコマンドの終了を検出しなければならない。次に、エージェントは、仮想ボリューム・マネージャ、セルフアーカイビング・ログ構造ボリューム１６の１つの構成要素に通知する。その時点で、仮想ボリューム・マネージャは、ログ２２内に、同期が行われた時間を示す特定の同期ブロックを入れる。同期イベントがログされた後で、通常のディスク動作を再開することができる。
【００３７】
データを回復するために、データ・バックアップ・システム１０は、回復ボリューム９２（図１に示す）を使用できるようにし、仮想ボリューム・マネージャに、必要な時点で、回復ボリュームにボリュームの状態をマッピングするように要求しなければならない。仮想ボリューム・マネージャは、同期点を、必要された時間にできるだけ近く位置させ、回復ボリューム９２上で以降の読取要求に処理する索引を生成するために、再構成長さを求めて、ログ２２を逆方向に走査しなければならない。回復ボリューム９２は、通常のボリューム上のデータにアクセスするために使用する任意の同じ手段により記憶装置アプリケーション１４で読み取られる。
【００３８】
引き続き図２を参照しながら図５について説明するが、この図は、補助記憶装置２０上のデータの編成を示す。能動ヘッダは、補助記憶装置２０上の最も早い時点を示す。補助記憶装置２０は、セグメントのブロックが後に続く、アーカイブした各セグメントの索引を含む。この図の場合には、アーカイブした各セグメント内のすべてのブロックがコピーされる。
【００３９】
引き続き図２を参照しながら図６について説明すると、ここでは、セルフアーカイビング・ログ構造ボリューム１６が使用する圧縮アーカイブ・アルゴリズム８０について説明する。「０１／０１／２０００：０１１１」から「０１／０１／２０００：０１００」に圧縮したアーカイブを作成するために、空の索引が最初に作成される。次に、同じブロックに対する二重のエントリを捨てながら、ある同期点から前の同期点に、アーカイブ中のセグメント内を逆方向に走査することにより索引が作成される。索引及び捨てられていないブロックは、増分アーカイブ・ヘッダと一緒にテープ８２（記憶装置）に書き込まれる。
【００４０】
引き続き図２を参照しながら図７について説明すると、ここでは、セルフアーカイビング・ログ構造ボリューム１６が使用するスライディング回復アルゴリズム９０について説明する。記憶装置アプリケーション１４が丁度良いタイミングで戻ることができるように、データ・バックアップ・システム１０は、一次記憶装置１８上の回復ボリューム９２を指定する。ある時点又はある時間的間隔を表すログ２２の一部が、回復ボリューム９２のために回復される。その同期点が、ログの回復点の最初の部分から少なくとも１つの再構成長さだけ離れている限りは、回復ボリューム９２は、回復したログ内の任意の同期点に基づいて、索引を生成することができる。ログ２２の回復した部分は、１つの再構成長さを超えることができる。ユーザと通信しているエージェント、記憶装置アプリケーション１４、及び回復ボリューム９２により、ユーザは、索引をある同期から他の同期に移動させ、記憶装置アプリケーション１４に提示された時点を迅速に変更することができる。
【００４１】
図７に示すように、時間のスライド９５は、索引の状態による記憶装置アプリケーション１４から見たデータ対象物の異なる様子を示す。異なる索引９７は、チェックする時点により提示される。一連のスナップショット９９は、各時点に対する索引９７に対応する。
【００４２】
引き続き図１及び図２を参照しながら図８について説明すると、この図は、自己保護データ・バックアップ・システム１０の詳細なブロック図である。サーバ１２は、同期エージェント１０２及び回復エージェント１０４を含み、ファイル・システム１０６上で動作する。複数のドライバ１０８が、セルフアーカイビング・ログ構造ボリューム１６と記憶エリア・ネットワーク１１０の間に置かれている。
【００４３】
引き続き図１及び図２を参照しながら図９について説明すると、この図は、記憶エリア・ネットワークを含む多重サーバ・システム環境内の自己保護データ・バックアップ・システム１０のブロック図である。複数のサーバ１１２、１１４及び１１６は、データ・バックアップ・システム１０と一緒に動作することができる。各サーバ１１２、１１４及び１１６は、同期エージェント１０２を含む。サーバ１１４は、データベース・エージェント１１８を含む。このことは、各ボリュームを所有する記憶装置アプリケーションにより、異なるタイプの同期エージェントが必要になることを意味する。仮想装置１２０は、サーバのためのクライアントの仮想ボリューム１４を含む。自己保護記憶装置１２２は、固有のデータ保護機構１２４、仮想ディスク機械１２６、及びデータ移動装置１２８を含む。データ固有保護機械１２４は、仮想ディスク機械１２６が使用するログを管理し、アーカイブするための動作アルゴリズム管理を含む。仮想ディスク機械１２６は、一次記憶装置１８の論理部分を使用するセルフアーカイビング・ログ構造ボリューム１６を含む。データ移動装置１２８は、データ固有保護機械１２４の制御の下で行われた動作に従って、アーカイブしたデータを一次記憶装置１８から補助記憶装置２０に移動する。
【００４４】
動作中、仮想装置１２０内に含まれているクライアントの仮想ボリューム１４上のサーバ１１２、１１４及び１１６のところで始まるデータの変化は、自己保護記憶装置１２２により捕捉される。自己保護記憶装置１２２は、連続しているサーバのないデータ保護に対する変化を捕捉する。上記変化は、自己保護記憶装置機構１２２により一次記憶装置１８にジャーナルされ、次に、補助記憶装置２０に移動する。
【００４５】
本発明は、上記の目的、目標及び利点を完全に達成するセルフアーカイビング・ログ構造ボリュームを使用するデータをバックアップするための自己保護記憶方法及びシステムを提供することは明らかである。特定の実施形態を参照しながら本発明を説明してきたが、上記説明を読めば、当業者であれば、種々の代案、修正及び変更を思い付くことは明らかである。それ故、すべての上記代案、修正及び変更は、本発明の精神及び添付の特許請求の範囲内に含まれる。
【図面の簡単な説明】
【図１】本発明の自己保護データ・バックアップ・システムのブロック図である。
【図２】本発明のセルフアーカイビング・ログ構造ボリュームのブロック図である。
【図３】セルフアーカイビング・ログ構造ボリュームが使用するジャーナリング・アルゴリズムである。
【図４】セルフアーカイビング・ログ構造ボリュームが使用する同期イベント・ロギング・アルゴリズムである。
【図５】セルフアーカイビング・ログ構造ボリュームが使用する全アーカイブ・アルゴリズムである。
【図６】セルフアーカイビング・ログ構造ボリュームが使用する増分アーカイブ・アルゴリズムである。
【図７】一連のスナップショットと一緒に、回復ボリューム内で使用するスライディング回復アルゴリズムである。
【図８】図１の自己保護データ・バックアップ・システムのブロック図である。
【図９】記憶エリア・ネットワークを含む多重サーバ・システム環境内の、図１の自己保護データ・バックアップ・システムのブロック図である。
【図１】
2004514963.tif 000003
【図２】
2004514963.tif 000004
【図３】
2004514963.tif 000005
【図４】
2004514963.tif 000006
【図５】
2004514963.tif 000007
【図６】
2004514963.tif 000008
【図７】
2004514963.tif 000009
【図８】
2004514963.tif 000010
【図９】
2004514963.tif 000011
【国際公開パンフレット】
2004514963.tif 000012
2004514963.tif 000013
2004514963.tif 000014
2004514963.tif 000015
2004514963.tif 000016
2004514963.tif 000017
2004514963.tif 000018
2004514963.tif 000019
2004514963.tif 000020
2004514963.tif 000021
2004514963.tif 000022
2004514963.tif 000023
2004514963.tif 000024
2004514963.tif 000025
2004514963.tif 000026
2004514963.tif 000027
2004514963.tif 000028
2004514963.tif 000029
2004514963.tif 000030
2004514963.tif 000031
2004514963.tif 000032
2004514963.tif 000033
2004514963.tif 000034
2004514963.tif 000035
2004514963.tif 000036
2004514963.tif 000037
2004514963.tif 000038
2004514963.tif 000039
2004514963.tif 000040
2004514963.tif 000041
【国際公開パンフレット（コレクトバージョン）】
2004514963.tif 000042
2004514963.tif 000043
【国際調査報告】
2004514963.tif 000044
2004514963.tif 000045
2004514963.tif 000046
2004514963.tif 000047