JP2016513845A - スナップショットからのアプリケーションの回復 - Google Patents

スナップショットからのアプリケーションの回復 Download PDF

Info

Publication number
JP2016513845A
JP2016513845A JP2016501144A JP2016501144A JP2016513845A JP 2016513845 A JP2016513845 A JP 2016513845A JP 2016501144 A JP2016501144 A JP 2016501144A JP 2016501144 A JP2016501144 A JP 2016501144A JP 2016513845 A JP2016513845 A JP 2016513845A
Authority
JP
Japan
Prior art keywords
application
act
recovery
specific data
data container
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.)
Granted
Application number
JP2016501144A
Other languages
English (en)
Other versions
JP6431521B2 (ja
JP2016513845A5 (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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2016513845A publication Critical patent/JP2016513845A/ja
Publication of JP2016513845A5 publication Critical patent/JP2016513845A5/ja
Application granted granted Critical
Publication of JP6431521B2 publication Critical patent/JP6431521B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/1469Backup restoration 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/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • 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/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/825Indexing scheme relating to error detection, to error correction, and to monitoring the problem or solution involving locking
    • 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

Abstract

全ボリュームの回復を実施することなしに、アプリケーションに対応するアプリケーション特有データの対象とする回復が実施される。回復は、前のスナップショットからアプリケーション特有データコンテナーのコンテンツの前の状態をアプリケーションによってアクセス可能な運用ボリューム中のアプリケーション特有データコンテナーにコピーすることを始めることによって、開始される。しかし、アプリケーション特有データコンテナーのコンテンツが、依然としてスナップショットからアプリケーション特有データコンテナーにコピーされている間、アプリケーションは、アプリケーション特有データコンテナーに対して読み出しおよび書き込み動作を実施することを依然として許可されている。したがって、アプリケーション特有データコンテナーは、アプリケーション特有データコンテナーのコンテンツの回復が、バックグラウンドで依然として続いているにもかかわらず、アプリケーションにとって十分アクセス可能に見える。

Description

[0001]コンピューターおよびコンピューティングシステムは、現代生活のほぼあらゆる状況に影響を及ぼしている。コンピューターは、仕事、娯楽、健康管理、交通、エンターテインメント、家庭管理などに全体的に関与している。コンピューターの機能性は、通常、ソフトウェアコードを実行するコンピューティングシステムの成果である。コンピューターは、ボリュームを使用して、ソフトウェアコードを記憶し、またデータを記憶する。
[0002]ときどき、ボリュームは、壊れることがある、またはボリューム自体が損傷を被る恐れがある。いずれの場合も、ボリュームは、使用に適さなくなる。そのような故障事象に備えるために、コンピューティングシステムに、ボリュームのスナップショットを定期的に撮らせることができる。故障事象が生じた場合、ボリュームは、損傷を受けた場合、交換することができ、回復モジュールが、最新の有効なスナップショットをボリューム中にコピーバックすることによって、スナップショット用ボリュームの回復を容易にすることができる。そのようにして、ボリュームの故障にもかかわらず、ボリュームは、前の状態に戻されて、コンピューター機能性を戻すことが可能になる。
[0003]本明細書に述べる少なくとも一実施形態によれば、アプリケーションに対応するアプリケーション特有データの対象とする回復が述べられている。実施例として、アプリケーションは、バーチャルマシンとすることができるはずであり、一方アプリケーション特有データは、バーチャルマシンに対応するバーチャルハードドライブとすることができるはずである。アプリケーション特有データの回復は、全ボリュームの回復を実施せずに行われる。
[0004]回復は、前のスナップショットからアプリケーション特有データコンテナーのコンテンツの前の状態を、アプリケーションによってアクセス可能な運用ボリューム中のアプリケーション特有データコンテナーにコピーすることを始めることによって開始される。しかし、アプリケーション特有データコンテナーのコンテンツがスナップショットからアプリケーション特有データコンテナーに依然としてコピーされている間、アプリケーションは、アプリケーション特有データコンテナーに対して読み出しおよび書き込み動作を実施することを依然として許可されている。それ故、アプリケーション特有データコンテナーのコンテンツの回復が、バックグラウンドで依然として続いているにもかかわらず、アプリケーション特有データコンテナーは、アプリケーションにとって十分アクセス可能に見える。
[0005]この発明の概要は、特許請求する主題の重要な特徴または必須の特徴を識別するように意図されず、また、特許請求する主題の範囲を決定する上での助けとして使用するようにも意図されていない。
[0006]様々な実施形態のより具体的な記述は、上記に述べた、および他の利点および特徴を得ることができるような方法で述べるために、添付図面を参照して提供するものである。これらの図面は、サンプルの実施形態だけを描き、したがって本発明の範囲を限定するものと見なすべきでないことを理解され、実施形態は、追加の具体性および細部を用いて添付図面の使用を通じて述べ説明することにする。
[0007]本明細書に述べるいくつかの実施形態を用いることができるコンピューティングシステムを抽象的に例示する図である。 [0008]本明細書に述べる原理によって、全システムを回復することなく、アプリケーションの対象とする回復を行うことができる実施例のシステムを概略的に例示する図である。 [0009]アプリケーションに対応するアプリケーション特有データを回復するための方法のフローチャートを例示する図である。 [0010]回復動作が依然として進行している間、読み出し動作を実施するための方法のフローチャートを例示する図である。 [0011]回復動作が依然として進行している間、書き込み動作を実施するための方法のフローチャートを例示する図である。
[0012]本明細書に述べる実施形態によれば、全ボリュームの回復を実施することなく、アプリケーションに対応するアプリケーション特有データの対象とする回復について述べられる。回復は、前のスナップショットからアプリケーション特有データコンテナーのコンテンツの前の状態を、アプリケーションによってアクセス可能な運用ボリューム中のアプリケーション特有データコンテナーにコピーすることを始めることによって開始される。しかし、アプリケーション特有データコンテナーのコンテンツが、スナップショットからアプリケーション特有データコンテナーに依然としてコピーされている間、アプリケーションは、以下にさらに述べる原理を使用して、アプリケーション特有データコンテナーに対して読み出しおよび書き込み動作を実施することを依然として許可されている。そのようにして、アプリケーション特有データコンテナーのコンテンツの回復が、バックグラウンドで依然として続いているにもかかわらず、アプリケーション特有データコンテナーは、アプリケーションにとって十分アクセス可能に見える。
[0013]コンピューティングシステムのいくつかの前置きの議論を図1に関して述べることにする。次いで、図2〜図5に関して上記に提示した順序で、対象とする回復を述べる。
[0014]現在、コンピューティングシステムは、ますます多岐にわたる形態を取りつつある。コンピューティングシステムは、たとえば、携帯型デバイス、電化製品、ラップトップコンピューター、デスクトップコンピューター、メインフレーム、分散型コンピューティングシステムとすることができる、または従来コンピューティングシステムと見なされていなかったデバイスとさえすることができる。この記述および特許請求の範囲では、用語「コンピューティングシステム」は、いずれかのデバイスまたはシステム(またはその組合せ)を含むものとして広く定義され、それは、少なくとも1つの物理的および有形のプロセッサー、およびプロセッサーによって実行することができるコンピューター実行可能な命令をそこに有することが可能な物理的および有形のメモリーを含む。メモリーは、いずれかの形態を取ることができ、コンピューティングシステムの性質および形態によって決めることができる。コンピューティングシステムは、ネットワーク環境の至る所に分散させることができ、多様な構成要素のコンピューティングシステムを含むことができる。
[0015]図1に例示するように、コンピューティングシステム100は、そのもっとも基本的な構成で、少なくとも1つの処理ユニット102およびコンピューター可読媒体104を含む。コンピューター可読媒体104は、物理的なシステムメモリーを含むものとして概念的に考えることができ、システムメモリーは、揮発性、不揮発性またはその2つのある組合せとすることができる。また、コンピューター可読媒体104は、不揮発性の大容量記憶装置を概念的に含む。コンピューティングシステムが分散化される場合、処理、メモリーおよび/または記憶能力は、同様に分散化させることができる。
[0016]用語「実行可能なモジュール」または「実行可能な構成要素」は、本明細書で使用するとき、コンピューティングシステムにおいて実行することができるソフトウェアオブジェクト、ルーティングまたは方法を指すことができる。本明細書に述べる様々な構成要素、モジュール、エンジンおよびサービスは、コンピューティングシステムで実行されるオブジェクトまたはプロセスとして実装することができる(たとえば、別々のスレッドとして)。そのような実行可能なモジュールは、型安全性が強化され、プロセスがそれら自体の他と全く別個のメモリーオブジェクトを割り当てられる管理された環境下で実行されている場合、マネージコードとすることができる。また、そのような実行可能なモジュールは、実行可能なモジュールがCまたはC++など、ネイティブコードで書かれている場合、アンマネージコードとすることができる。
[0017]次に続く記述では、実施形態は、1つまたは複数のコンピューティングシステムによって実施されるアクト(acts;行為)を参照して述べる。そのようなアクトがソフトウェアで実装される場合、アクトを実施する、関連するコンピューティングシステムの1つまたは複数のプロセッサーは、実行されているコンピューター実行可能な命令に応答して、コンピューティングシステムの動作を指示する。たとえば、そのようなコンピューター実行可能な命令は、コンピュータープログラム製品を形成する1つまたは複数のコンピューター可読媒体において具体化することができる。そのような動作の実施例は、データの操作を伴う。コンピューター実行可能な命令(および操作されたデータ)は、コンピューティングシステム100のメモリー104中に格納することができる。また、コンピューティングシステム100は、コンピューティングシステム100が他のプロセッサーとそれを通じて通信することを可能にする、たとえばネットワーク110など、通信チャネル108を含むことができる。
[0018]本明細書に述べる実施形態は、以下でより詳細に述べるように、たとえば1つまたは複数のプロセッサーおよびシステムメモリーなど、コンピューターハードウェアを含む特殊目的または汎用のコンピューターを含む、または利用することができる。また、本明細書に述べる実施形態は、コンピューター実行可能な命令および/またはデータ構造を伝える、または格納するための物理的および他のコンピューター可読媒体を含む。そのようなコンピューター可読媒体は、汎用または特殊目的のコンピューターシステムによってアクセスすることができる、任意の利用できる媒体とすることができる。コンピューター実行可能な命令を格納するコンピューター可読媒体は、物理的な記憶媒体である。コンピューター実行可能な命令を伝えるコンピューター可読媒体は、伝送媒体である。それ故、例としてだけで限定せず、本発明の実施形態は、少なくとも2つのはっきりと異なる種類のコンピューター可読媒体、すなわちコンピューター記憶媒体および伝送媒体を含むことができる。
[0019]コンピューター記憶媒体は、RAM、ROM、EEPROM、CD−ROMまたは他の光ディスク記憶装置、磁気ディスク記憶装置、または他の磁気記憶装置、あるいはコンピューター実行可能な命令またはデータ構造の形態で所望のプログラムコード手段を格納するために使用することができ、汎用または特殊目的のコンピューターによってアクセスすることができる、いずれかの他の有形の記憶媒体を含む。
[0020]「ネットワーク」は、コンピューターシステムおよび/またはモジュールおよび/または他の電子デバイスの間で電子データの搬送をできるようにする1つまたは複数のデータリンクとして定義される。ネットワークまたは別の通信接続(ハードワイヤード、ワイヤレス、またはハードワイヤードとワイヤレスの組合せのいずれか)を通じて情報がコンピューターに移される、または提供されるとき、コンピューターは、伝送媒体としてその接続を適切に見る。伝送媒体は、コンピューター実行可能な命令またはデータ構造の形態で所望のプログラムコード手段を伝えるために使用することができ、汎用または特殊目的のコンピューターによってアクセスすることができる、ネットワークおよび/またはデータリンクを含むことができる。また、上記の組合せは、コンピューター可読媒体の範囲内に含めるべきである。
[0021]さらに、コンピューター実行可能な命令またはデータ構造の形態のプログラムコード手段は、それが様々なコンピューターシステム構成要素に到達したとき、伝送媒体からコンピューター記憶媒体に自動的に移すことができる(またはその逆も同様に)。たとえば、ネットワークまたはデータリンクを通じて受け取られたコンピューター実行可能な命令またはデータ構造は、ネットワークインターフェースコントローラ(たとえば、「NIC」)内のRAM中にバッファし、次いで最終的には、コンピューターシステムのRAMに、および/またはコンピューターシステムにおけるそれほど揮発性でないコンピューター記憶媒体に移すことができる。それ故、コンピューター記憶媒体は、また(または主としてさえ)伝送媒体を利用するコンピューターシステム構成要素中に含めることができることを理解すべきである。
[0022]コンピューター実行可能な命令は、たとえば、命令およびデータを含み、命令は、プロセッサーで実施されたとき、汎用コンピューター、特殊目的のコンピューターまたは特殊目的の処理デバイスに、ある機能または機能のグループを実施させる。コンピューター実行可能な命令は、たとえば、バイナリ、アセンブリ言語などの中間形式の命令(intermediate format instruction)とする、またはソースコードとさえすることができる。主題が構造上の特徴および/または方法論的なアクトに特有の言語で述べられているが、添付の特許請求の範囲で定義される主題が、述べる特徴または上記に述べたアクトに必ずしも限定されないことを理解すべきである。むしろ、述べる特徴およびアクトは、請求項を実装する実施例の形態として開示される。
[0023]当業者は、パーソナルコンピューター、デスクトップコンピューター、ラップトップコンピューター、メッセージプロセッサー、携帯型デバイス、マルチプロセッサーシステム、マイクロプロセッサーベースまたはプログラマブルな消費家電製品、ネットワークPC、ミニコンピューター、メインフレームコンピューター、携帯電話、PDA、ポケットベル、ルーター、スイッチなど、多くのタイプのコンピューターシステム構成を備えるネットワークコンピューティング環境下で、本発明を実践することができることを認識するであろう。また、本発明は、ネットワークを通じてリンクされる(ハードワイヤードデータリンク、ワイヤレスデータリンクによって、またはハードワイヤードおよびワイヤレスのデータリンクの組合せによって、いずれかで)ローカルおよびリモートのコンピューターシステムが両方ともタスクを実施する分散型システム環境下で実践することができる。分散型システム環境下では、プログラムモジュールは、ローカルおよびリモートのメモリー記憶デバイスの両方中に配置することができる。
[0024]図2は、本明細書に述べる原理によって、全システムを回復することなく、アプリケーションの対象とする回復を行うことができる実施例のシステム200を概略的に例示する。システム200は、多様なアプリケーション201Aにとってアクセス可能な運用上のボリューム210を含み、したがってアプリケーション201Aは、運用上のボリューム210から読み出し、そこに書き込むことができる。たとえば、アプリケーション201は、省略記号201Eによって本明細書に述べる原理が特定の数のアプリケーションを動作させるシステムに全く限定されないことが表されているとはいえ、4つのアプリケーション201A、201B、201Cおよび201Dを含むものとして例示されている。システム200は、単一のアプリケーション201Aまたはすべてが運用上のボリューム210を共有する恐らく何千ものアプリケーションを動作させることができる。「ボリューム」は、連続する論理的または物理的なアドレスを含むようなファイルシステムによって認識される単一のネームスペースである。
[0025]運用上のボリューム210が、省略記号211Bによって表されたようなアプリケーション特有データコンテナー以外に大量のデータを格納することができるが、運用上のボリューム210は、アプリケーション特有データコンテナー211Aを格納する。アプリケーション特有データコンテナー211Aは、ライン212によって表されたようにアプリケーション201Aと関連付けられる。アプリケーション特有データコンテナー211Aは、たとえば、アプリケーション特有ファイルとすることができる。
[0026]一実施例では、アプリケーション201は、それぞれ、バーチャルマシンとすることができる。その場合、アプリケーション201Aは、バーチャルマシンとすることができ、アプリケーション特有データコンテナー211Aは、アプリケーション201Aと関連するバーチャルハードドライブとすることができるはずである。その場合、システム200は、多様なバーチャルマシンをホストするホストコンピューティングシステムの一部分とすることができる。ホストコンピューティングシステムは、ボリューム210が1つだけ図2に例示されているが、多数のボリュームを備えることができる。
[0027]本明細書に述べる原理は、アプリケーション特有データコンテナーがそこに格納されるボリュームの全体を回復することなく、アプリケーション特有データコンテナーの都合のよい回復を可能にする。たとえば、図2では、アプリケーション特有データコンテナー211Aは、全ボリューム210を回復することなく回復することができる。これは、ときどきアプリケーション特有データコンテナー211Aが壊れた、または信頼できなくなる恐れがあり、一方ボリューム210自体が全体としては壊れていないままである際、有用である。さらにまた、全ボリュームの回復は、ボリュームの一部分だけの回復よりもっとより長い時間がかかる可能性がある。
[0028]重要なことは、システム200は、アプリケーション特有データコンテナー211Aの回復がバックグラウンドで行われていながら、アプリケーション201Aが継続してアプリケーション特有データコンテナー211A上で動作するようにさらに動作する。それ故、アプリケーション201Aの観点から、回復が、迅速に、恐らくわずかな時間で起こるとはいえ、実際、回復は、バックグラウンドでずっとより長い期間行われる。
[0029]この対象とする迅速な回復を容易にするために、システム200は、管理モジュール221、スナップショットモジュール222および回復モジュール223を含む、いくつかの実行可能なモジュールを含む。これらのモジュールのそれぞれは、以下でさらに述べる。
[0030]モジュール221〜223は、それぞれ、コンピュータープログラム製品を含むコンピューティング可読記憶媒体に格納された1つまたは複数のコンピューター実行可能な命令を実行するコンピューティングシステムのプロセッサー(たとえば、プロセッサー(複数可)102)に応答するコンピューティングシステム(コンピューティングシステム100など)によって、実例を示す、および/または動作させることができる。具体的なアクトは、モジュール221および223と関連するものとして述べるが、そのようなアクトは、述べる具体的なモジュールによって実施する必要がない。
[0031]回復のために可能な必要事項を準備するために、スナップショットモジュール222は、少なくともアプリケーション特有データコンテナー211Aの、しかし、恐らくボリューム210のより大きいセグメントの、または恐らく全体として全ボリューム210さえのスナップショットを撮る。これらのスナップショットは、定期的に、および/または特定の事象に応答して取ることができる。いずれにしても、図2は、スナップショットモジュールが、アプリケーション特有データコンテナー211Aの3つのスナップショット231A、231Bおよび231Cを撮り、そしてマルチヘッドの矢印241で表すように、スナップショット231A、231Bおよび231Cをスナップショット用ボリューム230中に提供する実施例を例示する。この実施例では、スナップショット231Aは、アプリケーション特有データコンテナー211Aのもっとも古い、スナップショットであり、スナップショット231Bは、その次に撮られスナップショットであり、スナップショット231Cは最新のスナップショットである。
[0032]管理モジュール221は、アプリケーション特有データコンテナーが、スナップショット用ボリューム230内のスナップショットからの回復を受けるべきであるのかどうか、およびいつ実施するのかを決定する。それに応じて、回復モジュール223は、矢印242によって表すように、スナップショット用ボリューム230中のスナップショット231Cからアプリケーション特有データコンテナー221Aの回復を実施して、アプリケーション特有データコンテナー221Aのコンテンツが再配置される。回復が開始されている間、アプリケーション特有データコンテナー211Aは、アプリケーション201Aにとって一時的に利用できない恐れがあるはずだが、回復が特有のされた直後、管理モジュール221は、アプリケーション201Aがアプリケーション特有データコンテナー211Aに対して読み出しおよび書き込み動作を実施することを許可することができる。
[0033]図3は、アプリケーションに対応するアプリケーション特有データを回復するための方法300のフローチャートを例示する。方法300が、図2のシステム200内で実施することができるので、ここで図2に関して方法300を述べる。
[0034]方法300は、アプリケーションの特定のアプリケーション特有データコンテナーが、スナップショットからの回復を受けるべきであると判定されたとき、特有のされる(アクト301)。たとえば、図2を参照すると、管理モジュール221は、アプリケーション201Aのアプリケーション特有コンテナー211Aが、スナップショット231Cからの回復を受けるべきであると判定する。
[0035]それに応答して、方法は、たとえばアプリケーション特有データコンテナーを閉じることによって、アプリケーション特有データコンテナーをアプリケーションにとって一時的に利用できないようにする(アクト302)。たとえば、図2では、管理構成要素221が、アプリケーション特有データコンテナー211Aを閉じることができる。アプリケーション特有データコンテナー211Aは、回復動作の全期間と比較して、ほんの短時間閉じられたままになる。さらにまた、アプリケーション特有データコンテナー211Aは、運用上のボリューム210を閉じることなしに、閉じられ、それ故、アプリケーション特有データコンテナー211Aが閉じられた間、運用上のボリューム210が、少なくとも1つの他のアプリケーション(たとえば、アプリケーション201B)にとって利用できる状態に保たれる。
[0036]次いで、回復動作が特有のされる(アクト303)。たとえば、図2の場合、回復モジュール223が、矢印242によって表すように、前のスナップショット231Cからアプリケーション特有データコンテナー201Aのコンテンツの前の状態のコピーを始めることによって、回復を開始する。回復モジュール223は、前のスナップショット231Cからアプリケーション特有データコンテナー201Aの一領域に一度にコピーすることを進めることになる。回復モジュール223は、領域を回復するのに先立ち、その領域に対して範囲ロックを掛けることになる。
[0037]一度回復動作が開始されると、アプリケーション特有データコンテナーは、開かれ(アクト305)、それによって、そこから読み出され、そこに書き込まれる記憶場所を含む領域に対する範囲ロックが回復モジュールによって保持されていない限り、アプリケーションは、アプリケーション特有データコンテナーに対して読み出しおよび書き込み動作を実施することが許可される。アプリケーション特有データコンテナーは、たとえ回復動作が継続されて(アクト304)、そして実際、ただわずか前に始まった可能性があるにもかかわらず、開かれる。それ故、図2を参照すると、回復モジュール223は、バックグラウンドで回復を継続し(矢印242によって表すように)、一方管理モジュール221は、継続して、アプリケーション201Aがアプリケーション特有データコンテナー211Aに対して読み出しおよび書き込み動作を実施することを可能にする。
[0038]回復が依然として処理中である間(アクト304)、管理モジュール221は、読み出しおよび書き込み要求に対して、本明細書に述べるような回復との一貫性を与えるような方法で、アプリケーション201Aからの読み出しおよび書き込み要求に応答するように動作する。
[0039]たとえば、アプリケーション201Aがアプリケーション特有データコンテナーから読み出す要求をコンテンツのアドレス領域に対して発行したことが検出されたとき(決定ブロック311で「イエス」)、管理モジュール221は、回復がそのアドレス領域に接近した場合、またはそのアドレス領域に達した場合でさえ、回復が中断されるように、そのアドレス領域のための回復を一時的に中断させる(アクト312)。読み出し動作が実施され(アクト313)、その後、回復が領域に接近することになる、または達したとしても、回復が中断されないようにして、そのアドレス領域のための回復が再び始められる(アクト314)。実施例として、読み出し動作は、図4に関して例示し述べる方法で実施することができる。アクト312〜314は、アプリケーション201Aがアプリケーション特有データコンテナー211Aに対して読み出し要求を発行するたびに、実施することができる可能性がある。
[0040]アプリケーション201Aがアプリケーション特有データコンテナーのアドレス領域に対して書き込み要求を発行したことが検出されたとき(決定ブロック321で「イエス」)、管理モジュール221は、回復がそのアドレス領域に接近した場合、またはそのアドレス領域に達した場合でさえ、回復が中断されるように、やはりそのアドレス領域のための回復を一時的に中断させる(アクト322)。書き込み動作が実施され(アクト323)、その後、回復が領域に接近することになる、または達したとしても、回復が中断されないようにして、回復が再び始められる(アクト324)。実施例として、書き込み動作は、図5に関して例示し述べる方法で実施することができる。アクト312〜314は、アプリケーション201Aがアプリケーション特有データコンテナー211Aに対して読み出し要求を発行するたびに、実施することができる可能性がある。
[0041]図4は、回復動作が依然として処理中である間、読み出し要求に応答するための方法400を例示する。方法400は、図3のアクト313の読み出し動作を実施するために、実施することができる。それ故、方法400は、図3のアクト312の後開始することができる。
[0042]方法400は、読み出し要求に対応するアドレス領域が、運用上のボリューム中のアプリケーション特有データコンテナーに既に復元されたかどうかを判定する(決定ブロック401)。これは、回復進行状況251を調べ、回復モジュール223によって達成することができる。たとえば、回復モジュール223がスナップショット231Cからコンテンツを連続的にコピーした場合、回復進行状況251は、アプリケーション特有データコンテナー中で回復された最高位アドレスを表す高基準値を示す可能性がある。加えて、これは、アプリケーション特有データコンテナーのアドレス領域が、回復の始まりから、書き込まれたことを示す書き込み済表示252を調べ、回復モジュール223によって達成することができる。たとえば、たとえアドレス領域が、アクト304によって実施される通常の回復を通じてもそれでも、まだ到達されていないとしても、アドレス領域は、以下でさらに述べる方法500の実施に応答して、または図4のアクト406に応答して、書き込まれている可能性がある。
[0043]読み出し要求に対するアドレス領域がアプリケーション特有データコンテナーに既に復元された場合(決定ブロック401で「イエス」)、アドレス領域のコンテンツは、運用上のボリューム中のアプリケーション特有データコンテナーから読み出され(アクト402)、それ故、読み出し要求に応答して、アプリケーション201Aにとって利用できるようになる(アクト403)。読み出し要求に対するアドレス領域が、アプリケーション特有データコンテナーにまだ復元されていない場合(決定ブロック401で「ノー」)、コンテンツは、その代りに、スナップショットの対応する部分から読み出され(アクト404)、そしてコンテンツは、アプリケーションに提供され(アクト403)、さらに読み出されたコンテンツは、また、アプリケーション特有データコンテナーに任意選択で提供される(アクト405)。さらにまた、書き込み済表示は、任意選択で、回復が始まってから、書き込みがアプリケーション特有データコンテナーのアドレス領域に対して行われたことを反映するために、アップデートされる(アクト406)。一度読み出し動作が完了すると、方法400は、図3のアクト314に戻り、回復動作が再開される。方法400は、回復プロセスの間受け取られた読み出し要求毎に、何度も繰り返すことができる。一度回復プロセスが完了すると(アクト306)、読み出し動作は、管理モジュール221からの介入なしに通常通りに継続することができる。
[0044]図5は、回復動作が依然として処理中である間、書き込み要求に応答するための方法500を例示する。方法500は、図3のアクト323の書き込み動作を実施するために、実施することができる。それ故、方法500は、図3のアクト322の後、開始することができる。
[0045]方法500は、運用ボリューム中のアプリケーション特有データコンテナーのアドレス領域に、書き込み要求と関連するコンテンツを書き込むことによって、書き込み動作を実施する(アクト501)。また、方法500は、書き込み要求に対応するアドレス領域が、運用上のボリューム中のアプリケーション特有データコンテナーに既に復元されたかどうかを判定する(決定ブロック502)。これは、やはり、回復進行状況251を調べ、回復モジュール223によって達成することができる。加えて、これは、回復始まりから、アプリケーション特有データコンテナーのアドレス領域に書き込まれたことを示す書き込み済表示252を調べ、回復モジュール223によって達成することができる。たとえば、たとえアドレス領域が、アクト304によって実施される通常の回復を通じてもそれでも、まだ到達されていないとしても、アドレス領域は、方法500の前の実施に応答して、または図4のアクト406に応答して、書き込まれている可能性がある。
[0046]書き込み要求に対するアドレス領域がアプリケーション特有データコンテナーに既に復元された場合(決定ブロック502で「イエス」)、これは書き込み動作を完了させ、それによって図3のアクト324に戻り、復元動作が再開される。書き込み要求に対するアドレス領域がアプリケーション特有データコンテナーにまだ復元されていない場合(決定ブロック502で「ノー」)、書き込み済インジケーター252は、回復動作が始まってから、アドレス領域に書き込まれたことを反映するためにアップデートされる(アクト503)。その後、再びそれによって図3のアクト324に戻り、復元動作が再開される。方法500は、回復プロセスの間に受け取られた書き込み要求毎に、何度も繰り返すことができる。一度回復プロセスが完了すると(アクト306)、書き込み動作は、通常通り管理モジュール221からの介入がなく、継続させることができる。
[0047]回復モジュールの観点から、回復モジュール223は、アプリケーションの特定のアプリケーション特有データコンテナーが、スナップショットからの回復を受けるべきと判定する。たとえば、回復モジュール223は、管理モジュール221が図3のアクト301を実施するのに応答して、管理モジュール221から回復命令を受け取ってしまうことができる。それに応答して、回復モジュールは、回復を開始する。
[0048]回復モジュールは、スナップショットからコンテンツをアプリケーション特有データコンテナーに一度に一部分コピーすることによって、回復を継続し、それは図3のアクト304に類似している。回復モジュールは、中断命令にまさに応答して、アクト312、314、322および324に応えて回復を再開するが、しかしそうでなければ、単に回復を進める。そのような一時的な中断にもかかわらず、回復動作は、依然として、アクト304中に示したように継続されると言えることになる。
[0049]また、回復モジュールは、回復対象を除く運用上のボリューム中のアプリケーション特有コンテナーに対してなされる書き込み要求に対応する、少なくとも1つのアドレス領域を追跡する。たとえば、これは、図2の書き込み済インジケーター252を使用して達成することができる。回復モジュールは、スナップショットから一度に一部分をコピーするとき、インジケーター252内で表示されているように既に書き込まれたいずれものアドレスに対してコピーを飛ばして進む。これは、アプリケーション201Aが回復の間処理を継続することを可能にすることによって生成されたより新しいデータを、回復によって上書きされないように防止する。
[0050]ここで、衝突防止をどのようにして容易にすることができるのかの実施例の実装形態を、まず、読み出し/書き込み動作の観点から、次いで回復の観点から述べることにする。
[0051]アプリケーションが読み出しまたは書き込み要求を発行したとき、システムは、読み出しまたは書き込み要求によってアドレス指定された領域に対する範囲ロックを掛ける。回復が同じ範囲に対して働いている場合、この読み出し/書き込み動作は、未決にされて後で再開されることになる。次に、回復の高基準値(回復進行状況251の実施例)が評価され、ダーティーマップ(書き込み済インジケーター252の実施例)と一緒に評価されて、上記に述べたような適切な処置が決定される。たとえば、読み出し動作の場合、データコンテナーから読み出すのかどうか(アクト402)、またはスナップショットから読み出すのかどうか(アクト403)が判定される。書き込み動作の場合、書き込みを反映するために、ダーティーマップをアップデートする必要があるのかどうか(アクト503)が判定される。次いで、適切なI/O動作が実施され、次いで領域に対する範囲ロックが解除される。回復がこの領域に対して未決であった場合、回復がその領域について再開される。
[0052]回復の観点からの衝突防止は、一度にアドレスの1つの範囲で行われる。回復される領域毎に、回復プロセスは、回復される領域に対して範囲ロックを掛ける。読み出し/書き込み動作がその領域に対して既に範囲ロックが掛けられている場合、その領域に対する回復は、未決にされて、読み出し/書き込みの完了時に後で再開される。一度回復がその領域に対する範囲ロックを得ることができると、回復は、ダーティーマップに基づき実施される。たとえば、回復は、ダーティーマップ中に既に書き込まれたとしてマークが付けられたそれらのアドレスのすべてについて、スナップショットからのコピーを飛ばして進むことになる。一度領域が回復されると、回復プロセスは、範囲ロックを解除する。これによって、いずれもの未決の読み出し/書き込み要求を、その範囲に対して完了することが可能になる。
[0053]それ故、本明細書に述べる原理は、全ボリュームの回復を必要とすることなしに、またアプリケーションが、回復される処理中のアプリケーション特有データコンテナーに対して継続して動作することを可能としながら、アプリケーション特有データコンテナーの対象とする回復のための有効で効率のよいメカニズムを提供する。
[0054]本発明は、その趣旨または必須の特性から逸脱せずに、他の具現化することができる。述べた実施形態は、すべての点で例示的で限定するものでないと単に見なすべきである。したがって、本発明の範囲は、前の記述によってよりもむしろ添付の特許請求の範囲によって示される。特許請求の範囲と同等の意味および範囲内に収まるすべての変更は、請求項の範囲内に包含すべきである。

Claims (10)

  1. アプリケーションに対応するアプリケーション特有データを回復するための方法であって、
    アプリケーションの特定のアプリケーション特有データコンテナーが、スナップショットからの回復を受けるべきであると判定するアクトと、
    判定する前記アクトに応答して、前のスナップショットからの前記アプリケーション特有データコンテナーのコンテンツの前の状態の回復を、スナップショットから前記コンテンツの前のバージョンを前記アプリケーションによってアクセス可能な運用ボリューム中の前記アプリケーション特有データコンテナーにコピーすることを始めることによって、開始するアクトと、
    前記アプリケーション特有データコンテナーの前記コンテンツが、前記スナップショットから前記アプリケーション特有データコンテナーに依然としてコピーされている間、前記アプリケーション特有データコンテナーに対して読み出しおよび書き込み動作を前記アプリケーションが実施することを許可するアクトと
    を含む方法。
  2. 請求項1に記載の方法であって、
    前記アプリケーション特有コンテナーに対して読み出しおよび書き込み動作を前記アプリケーションが実施することを許可する前記アクトの後であるが前記回復が完了する前に、前記アプリケーション特有データコンテナーからのコンテンツのアドレス領域に対する読み出しの要求を前記アプリケーションが発行したことを検出するアクト
    をさらに含む方法。
  3. 請求項2に記載の方法であって、
    前記アプリケーション特有データコンテナーからのコンテンツのアドレス領域に対する読み出しの要求を前記アプリケーションが発行したことを検出する前記アクトの後に、前記回復を中断するアクトと、
    前記読み出し動作を実施するアクトと、
    前記読み出し動作を実施する前記アクトの後に、前記回復を再開するアクトと
    をさらに含む、方法。
  4. 請求項2に記載の方法であって、前記読み出し要求に応答して、
    前記読み出し要求に対応する前記アドレス領域が前記運用上のボリューム中の前記アプリケーション特有データコンテナーに既に復元されたと判定するアクトと、
    前記読み出し要求に対応する前記アドレス領域が既に復元されたと判定する前記アクトに応答して、前記運用ボリューム中の前記アプリケーション特有データコンテナーから前記アドレス領域の前記コンテンツを読み出すアクトと
    をさらに含む方法。
  5. 請求項2に記載の方法であって、前記読み出し要求に応答して、
    前記読み出し要求に対応する前記アドレス領域が前記運用上のボリューム中の前記アプリケーション特有データコンテナーにまだ復元されていないと判定するアクトと、
    前記読み出し要求に対応する前記アドレス領域がまだ復元されていないと判定する前記アクトに応答して、前記スナップショットから前記コンテンツを読み出すアクトと、
    読み出された前記コンテンツを前記アプリケーションに提供するアクトと
    をさらに含む方法。
  6. 請求項1に記載の方法であって、
    前記アプリケーション特有コンテナーに対して読み出しおよび書き込み動作を前記アプリケーションが実施することを許可する前記アクトの後であるが前記回復が完了する前に、前記アプリケーション特有データコンテナーのアドレス領域に対して書き込み要求を前記アプリケーションが発行したことを検出するアクト
    をさらに含む方法。
  7. 請求項6に記載の方法であって、
    前記アプリケーション特有データコンテナーのアドレス領域に対して書き込み要求を前記アプリケーションが発行したことを検出する前記アクトの後に、前記回復を中断するアクトと、
    前記書き込み動作を実施するアクトと、
    前記書き込み動作を実施する前記アクトの後に、前記回復を再開するアクトと
    をさらに含む方法。
  8. 請求項1に記載の方法であって、アプリケーションの前記アプリケーション特有データコンテナーがスナップショットからの回復を受けるべきであると判定する前記アクトの後且つ回復を開始する前記アクトの前に、
    前記アプリケーションにとってアクセス可能でないように、前記アプリケーション特有データコンテナーを閉じるアクト
    をさらに含む、方法。
  9. 請求項1に記載の方法であって、前記アプリケーションは、バーチャルマシンを含む、方法。
  10. アプリケーションの対象とする回復を、システム全体を回復することなく行うことができるシステムであって、
    複数のアプリケーションにとってアクセス可能な運用上のボリュームであって、前記複数のアプリケーションの特定のアプリケーションに対応するアプリケーション特有データコンテナーを含む前記運用上のボリュームと、
    少なくとも前記アプリケーション特有コンテナーのスナップショットをとるように構成されるスナップショットモジュールと、
    アプリケーション特有データコンテナーが前記スナップショットモジュールによってとられたスナップショットからの回復を受けるべきであると判定するように構成される管理モジュールと、
    前記管理モジュールによって判定されたとき、前記アプリケーション特有データコンテナーの回復を実施するように構成される回復モジュールと
    を含み、前記管理モジュールは、前記回復モジュールが回復を実施している間、前記アプリケーション特有データコンテナーに対して読み出しおよび書き込み動作を前記アプリケーションが実施することを許可する、システム。
JP2016501144A 2013-03-14 2014-03-11 スナップショットからのアプリケーションの回復 Active JP6431521B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/829,204 US9430333B2 (en) 2013-03-14 2013-03-14 Recovery of application from snapshot
US13/829,204 2013-03-14
PCT/US2014/023072 WO2014159334A1 (en) 2013-03-14 2014-03-11 Recovery of application from snapshot

Publications (3)

Publication Number Publication Date
JP2016513845A true JP2016513845A (ja) 2016-05-16
JP2016513845A5 JP2016513845A5 (ja) 2017-04-06
JP6431521B2 JP6431521B2 (ja) 2018-11-28

Family

ID=50513440

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016501144A Active JP6431521B2 (ja) 2013-03-14 2014-03-11 スナップショットからのアプリケーションの回復

Country Status (7)

Country Link
US (1) US9430333B2 (ja)
EP (1) EP2972874B1 (ja)
JP (1) JP6431521B2 (ja)
CN (1) CN105144113B (ja)
BR (1) BR112015019280B1 (ja)
RU (1) RU2665307C2 (ja)
WO (1) WO2014159334A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8601473B1 (en) 2011-08-10 2013-12-03 Nutanix, Inc. Architecture for managing I/O and storage for a virtualization environment
US11243707B2 (en) 2014-03-12 2022-02-08 Nutanix, Inc. Method and system for implementing virtual machine images
US9424140B1 (en) * 2014-08-20 2016-08-23 Amazon Technologies, Inc. Providing data volume recovery access in a distributed data store to multiple recovery agents
EP3251006A4 (en) * 2015-01-30 2018-08-29 Hewlett-Packard Development Company, L.P. Backup image restore
US10613947B2 (en) * 2016-06-09 2020-04-07 Nutanix, Inc. Saving and restoring storage devices using application-consistent snapshots
CN110704249A (zh) * 2016-12-30 2020-01-17 成都华为技术有限公司 一种保证应用一致性的方法、装置及系统
US10409988B2 (en) 2017-01-20 2019-09-10 Hewlett Packard Enterprise Development Lp Escalated remediation
US10331528B2 (en) 2017-03-02 2019-06-25 Hewlett Packard Enterprise Development Lp Recovery services for computing systems
US10824522B2 (en) 2017-11-27 2020-11-03 Nutanix, Inc. Method, apparatus, and computer program product for generating consistent snapshots without quiescing applications
US10929249B2 (en) 2018-06-29 2021-02-23 International Business Machines Corporation Optimized data corruption source and timeline analysis
US10929248B2 (en) 2018-06-29 2021-02-23 International Business Machines Corporation Data corruption source and timeline analysis
US11182363B2 (en) 2018-06-29 2021-11-23 International Business Machines Corporation Data validation in copy repositories
US10795780B2 (en) 2018-06-29 2020-10-06 International Business Machines Corporation Data breach source and timeline analysis
CN109298973A (zh) * 2018-09-28 2019-02-01 联想(北京)有限公司 一种信息恢复方法和电子设备
US11016854B2 (en) 2018-11-28 2021-05-25 International Business Machines Corporation Efficient container based application recovery
US20220188194A1 (en) * 2020-12-10 2022-06-16 Coupang Corp. Cloud-based database backup and recovery

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004272854A (ja) * 2003-03-12 2004-09-30 Hitachi Ltd 記憶システム及び同システムにおけるスナップショット管理方法
US20100070726A1 (en) * 2004-11-15 2010-03-18 David Ngo Using a snapshot as a data source
US7702868B1 (en) * 2005-07-13 2010-04-20 Symantec Corporation Restoring data with reduced suspension-of-access periods
US7822758B1 (en) * 2005-04-22 2010-10-26 Network Appliance, Inc. Method and apparatus for restoring a data set
US20120017114A1 (en) * 2010-07-19 2012-01-19 Veeam Software International Ltd. Systems, Methods, and Computer Program Products for Instant Recovery of Image Level Backups
JP2012504286A (ja) * 2008-09-30 2012-02-16 シマンテック コーポレーション 一括データベースバックから選択されたバージョン化されたオブジェクトのバックアップおよび復元の実行

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544347A (en) 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5313626A (en) * 1991-12-17 1994-05-17 Jones Craig S Disk drive array with efficient background rebuilding
US5822584A (en) * 1995-10-13 1998-10-13 Compaq Computer Corporation User selectable priority for disk array background operations
US6185699B1 (en) * 1998-01-05 2001-02-06 International Business Machines Corporation Method and apparatus providing system availability during DBMS restart recovery
US6397351B1 (en) * 1998-09-28 2002-05-28 International Business Machines Corporation Method and apparatus for rapid data restoration including on-demand output of sorted logged changes
US6834386B1 (en) * 1999-07-16 2004-12-21 Microsoft Corporation Method and system for regulating background tasks using performance measurements
WO2001025920A1 (en) * 1999-10-05 2001-04-12 Ejasent, Inc. Virtual resource id mapping
US6434681B1 (en) 1999-12-02 2002-08-13 Emc Corporation Snapshot copy facility for a data storage system permitting continued host read/write access
US6647514B1 (en) * 2000-03-23 2003-11-11 Hewlett-Packard Development Company, L.P. Host I/O performance and availability of a storage array during rebuild by prioritizing I/O request
US6957362B2 (en) 2002-08-06 2005-10-18 Emc Corporation Instantaneous restoration of a production copy from a snapshot copy in a data storage system
US7139931B2 (en) * 2002-08-19 2006-11-21 Aristos Logic Corporation Method of controlling the system performance and reliability impact of hard disk drive rebuild
US7234077B2 (en) * 2003-06-24 2007-06-19 International Business Machines Corporation Rapid restoration of file system usage in very large file systems
US7529782B2 (en) * 2003-11-13 2009-05-05 Commvault Systems, Inc. System and method for performing a snapshot and for restoring data
US7461100B2 (en) 2004-05-27 2008-12-02 International Business Machines Corporation Method for fast reverse restore
US7409510B2 (en) 2004-05-27 2008-08-05 International Business Machines Corporation Instant virtual copy to a primary mirroring portion of data
RU2406118C2 (ru) * 2004-09-22 2010-12-10 Майкрософт Корпорейшн Способ и система для синтетического резервного копирования и восстановления данных
US7475282B2 (en) * 2004-12-28 2009-01-06 Acronis Inc. System and method for rapid restoration of server from back up
US20060161808A1 (en) 2005-01-18 2006-07-20 Burkey Todd R Method, apparatus and program storage device for providing intelligent copying for faster virtual disk mirroring
EP1907935B1 (en) * 2005-06-24 2011-01-26 Syncsort Incorporated System and method for virtualizing backup images
US7788521B1 (en) * 2005-07-20 2010-08-31 Bakbone Software, Inc. Method and system for virtual on-demand recovery for real-time, continuous data protection
US7426618B2 (en) * 2005-09-06 2008-09-16 Dot Hill Systems Corp. Snapshot restore method and apparatus
JP4809040B2 (ja) * 2005-11-08 2011-11-02 株式会社日立製作所 ストレージ装置及びスナップショットのリストア方法
US7774565B2 (en) * 2005-12-21 2010-08-10 Emc Israel Development Center, Ltd. Methods and apparatus for point in time data access and recovery
US7467268B2 (en) * 2006-04-14 2008-12-16 Hewlett-Packard Development Company, L.P. Concurrent data restore and background copy operations in storage networks
US7650533B1 (en) * 2006-04-20 2010-01-19 Netapp, Inc. Method and system for performing a restoration in a continuous data protection system
US8607009B2 (en) * 2006-07-13 2013-12-10 Microsoft Corporation Concurrent virtual machine snapshots and restore
US9043391B2 (en) * 2007-02-15 2015-05-26 Citrix Systems, Inc. Capturing and restoring session state of a machine without using memory images
US8341459B2 (en) * 2007-08-01 2012-12-25 Brocade Communications Systems, Inc. Data migration without interrupting host access and with data lock for write access requests such that held write access requests do not expire
JP5409159B2 (ja) * 2009-07-23 2014-02-05 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びプログラム
US9015129B2 (en) * 2010-02-09 2015-04-21 Veeam Software Ag Cross-platform object level restoration from image level backups
US9971656B2 (en) 2010-12-13 2018-05-15 International Business Machines Corporation Instant data restoration
US8819328B2 (en) * 2010-12-30 2014-08-26 Sandisk Technologies Inc. Controller and method for performing background operations
US8909602B2 (en) * 2011-02-03 2014-12-09 Vmware, Inc. Programmatic snapshot and revert of virtualized data center inventory
US9411687B2 (en) * 2011-06-03 2016-08-09 Apple Inc. Methods and apparatus for interface in multi-phase restore
US8726083B1 (en) * 2011-07-29 2014-05-13 Emc Corporation Synchronized taking of snapshot memory images of virtual machines and storage snapshots
US8898385B2 (en) * 2011-09-09 2014-11-25 Lsi Corporation Methods and structure for load balancing of background tasks between storage controllers in a clustered storage environment
CN102331949B (zh) * 2011-10-12 2014-11-05 华为技术有限公司 一种虚拟机内存快照生成和恢复方法、装置及系统
US20150212894A1 (en) * 2014-01-24 2015-07-30 Commvault Systems, Inc. Restoring application data from a single snapshot for multiple applications

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004272854A (ja) * 2003-03-12 2004-09-30 Hitachi Ltd 記憶システム及び同システムにおけるスナップショット管理方法
US20100070726A1 (en) * 2004-11-15 2010-03-18 David Ngo Using a snapshot as a data source
US7822758B1 (en) * 2005-04-22 2010-10-26 Network Appliance, Inc. Method and apparatus for restoring a data set
US7702868B1 (en) * 2005-07-13 2010-04-20 Symantec Corporation Restoring data with reduced suspension-of-access periods
JP2012504286A (ja) * 2008-09-30 2012-02-16 シマンテック コーポレーション 一括データベースバックから選択されたバージョン化されたオブジェクトのバックアップおよび復元の実行
US20120017114A1 (en) * 2010-07-19 2012-01-19 Veeam Software International Ltd. Systems, Methods, and Computer Program Products for Instant Recovery of Image Level Backups

Also Published As

Publication number Publication date
JP6431521B2 (ja) 2018-11-28
EP2972874B1 (en) 2018-01-03
US20140281709A1 (en) 2014-09-18
CN105144113A (zh) 2015-12-09
CN105144113B (zh) 2018-02-16
WO2014159334A1 (en) 2014-10-02
EP2972874A1 (en) 2016-01-20
RU2665307C2 (ru) 2018-08-28
RU2015138967A (ru) 2017-03-16
BR112015019280B1 (pt) 2022-05-10
BR112015019280A2 (pt) 2017-07-18
US9430333B2 (en) 2016-08-30

Similar Documents

Publication Publication Date Title
JP6431521B2 (ja) スナップショットからのアプリケーションの回復
US9003149B2 (en) Transparent file system migration to a new physical location
EP3502877B1 (en) Data loading method and apparatus for virtual machines
CN103164342B (zh) 数据可用性的挂载时协调
EP3063631B1 (en) Crash recovery using non-volatile memory
CN102299904B (zh) 一种实现业务数据备份的系统及方法
US7702662B2 (en) Method and system for handling reallocated blocks in a file system
JP2006268139A (ja) データ複製装置、方法及びプログラム並びに記憶システム
US10915403B2 (en) Versioned records management using restart era
US9619336B2 (en) Managing production data
US10095616B2 (en) Garbage collection for virtual environments
CN111158858A (zh) 一种虚拟机的克隆方法和装置,及计算机可读存储介质
JP2007079969A (ja) デバッグシステム及び方法
KR20080066381A (ko) 소프트웨어의 업그레이드 방법
JP5561303B2 (ja) データ複製システム、データ複製方法、及びそのプログラム
US20110131181A1 (en) Information processing device and computer readable storage medium storing program
US10809939B2 (en) Disk synchronization
JP5012599B2 (ja) メモリ内容復元装置、メモリ内容復元方法及びメモリ内容復元プログラム
US9727426B2 (en) Using an overinclusive write record to track and write changes to a storage system
US20230143903A1 (en) Method and system for idempotent synthetic full backups in storage devices
TWI588655B (zh) 儲存系統
EP3853735A1 (en) Persistent storage segment cache for recovery
JP2008065589A (ja) 計算機システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170306

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180515

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181102

R150 Certificate of patent or registration of utility model

Ref document number: 6431521

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250