JP2013509646A - メタデータ仮想ハードドライブおよび差分仮想ハードドライブを使用するバックアップ - Google Patents

メタデータ仮想ハードドライブおよび差分仮想ハードドライブを使用するバックアップ Download PDF

Info

Publication number
JP2013509646A
JP2013509646A JP2012536847A JP2012536847A JP2013509646A JP 2013509646 A JP2013509646 A JP 2013509646A JP 2012536847 A JP2012536847 A JP 2012536847A JP 2012536847 A JP2012536847 A JP 2012536847A JP 2013509646 A JP2013509646 A JP 2013509646A
Authority
JP
Japan
Prior art keywords
vhd
file
backup
computer system
metadata
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
JP2012536847A
Other languages
English (en)
Other versions
JP5646639B2 (ja
JP2013509646A5 (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 JP2013509646A publication Critical patent/JP2013509646A/ja
Publication of JP2013509646A5 publication Critical patent/JP2013509646A5/ja
Application granted granted Critical
Publication of JP5646639B2 publication Critical patent/JP5646639B2/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
    • 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/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Retry When Errors Occur (AREA)

Abstract

メタデータ仮想ハードドライブ(VHD)および差分VHDを使用するバックアップのための方法およびシステムを開示する。特定のシステムが、ファイルを記憶するメモリ装置と、ファイルに対する変更を検出するべく構成されるバックアップエージェントと、を含む。システムには、検出された変更をVHDフォーマット形式の変更に翻訳するべく構成される翻訳モジュールと、VHDフォーマット形式の変更をメモリ装置に記憶されるメタデータVHDに書き込むべく構成されるVHDモジュールとが含まれる。VHDモジュールはまた、メタデータVHDに基づき差分VHDを生成するべく構成される。システムにおけるネットワークインターフェースは、メタデータVHDと差分VHDとをリモート記憶装置に送信するべく構成される。

Description

本発明は、メタデータ仮想ハードドライブおよび差分仮想ハードドライブを使用するバックアップに関する。
ビジネスがますますコンピュータ指向になるのにつれて、不測のデータ損失に対する保護の重要性が増大している。多くの企業レベルのデータのバックアップシステムは、何らかの形式のオンサイトのデータ記憶装置を備える。例えば、企業は、バックアップデータのホスティング専用のデータ記憶装置(例えば、専用のバックアップ記憶サーバ)にバックアップデータを定期的に記憶させることができる。ユーザレベルでは、ユーザワークステーションのハードディスクをパーティションする(例えば、半分に分割する)ことができ、プライマリパーティションに記憶されるデータをセカンダリパーティションに定期的にコピーすることができる。プライマリパーティションが復元されると、セカンダリパーティションからのデータはプライマリパーティションにコピーすることができる。そのようなバックアップシステムは、企業におけるデータ記憶のコストを増大させることになり(例えば、バックアップディスクまたは他のデータ記憶装置を購入し保持するため)、また、企業におけるデータ記憶装置の利用を減少させることなる(例えば、データ記憶装置容量のある部分がバックアップ専用にされるため、「使用中の」データを記憶するために利用できるデータ記憶容量が減少してしまう)。
メタデータ仮想ハードドライブ(VHD)と差分VHDとを使用するバックアップのシステムおよび方法を開示する。コンピュータシステムにおけるデータボリュームのためのバックアップVHDと、バックアップVHDに対応するメタデータVHDとが初期バックアップ動作中に作成される。バックアップVHDはリモートストレージロケーション(例えば、オンラインクラウドストレージロケーション)に送信され、一方、メタデータVHDは、大きさをバックアップVHDよりもかなり小さくすることができ、コンピュータシステムにおいて保持される。データボリュームのファイルに対して変更が行われると、変更を示す差分VHDが作成され、メタデータVHDが更新されて変更が反映される。差分VHDはまた、バックアップVHDよりかなり小さくすることができる。何故なら、差分VHDが前回のバックアップ動作以降に変更されたファイルの部分を含むだけだからである。後続のバックアップ動作中、データボリュームは、新しいバックアップVHDを作成することなくバックアップされる。その代わり、更新後のメタデータVHDのコピーと差分VHDとをリモートストレージロケーションに送信することができる。
メタデータVHDおよび差分VHDを使用することにより、バックアップVHDをコンピュータシステムに記憶させることを必要とせずに、コンピュータシステムのデータボリュームをバックアップすることができる。さらに、バックアップVHD全体を他のコンピュータシステムにダウンロードすることなく、メタデータVHDおよび差分VHDを使用して特定のファイルを他のコンピュータシステムに復元することができる。従って、メタデータVHDおよび差分VHDの使用により、シングルインスタンスのマシンに依存しないバックアップを可能にすることができる。例えば、複数のコンピュータシステムは、リモートに記憶される単一のバックアップVHDからファイルをリカバリすることができる。
この要約は、以下の「発明を実施するための形態」でさらに述べる概念を選択して簡略化した形式で紹介するために提供するものである。この要約は、請求の主題の重要な特徴または主要な特徴を特定することを意図しておらず、請求の主題の範囲を制限するものとして使用されることも意図していない。
メタデータVHDおよび差分VHDを使用するバックアップのシステムの特定の実施形態を例示するブロック図である。 メタデータVHDおよび差分VHDを使用するバックアップのシステムの別の特定の実施形態を例示するブロック図である。 図1または図2のメタデータVHDの特定の実施形態を例示する図である。 前方差分VHDを後方差分VHDに変換する方法の特定の実施形態を例示する図である。 メタデータVHDおよび差分VHDを使用するバックアップの方法の特定の実施形態を例示するフロー図である。 メタデータVHDおよび差分VHDを使用するバックアップの方法の別の特定の実施形態を例示するフロー図である。 差分VHDを使用するバックアップをサポートする方法の特定の実施形態を例示するフロー図である。 前方差分VHDを後方差分VHDに変換するステップを含む、差分VHDを使用するバックアップをサポートする方法の別の特定の実施形態を例示するフロー図である。 図1から8に例示されるような、コンピュータに実装される方法、コンピュータプログラム製品、およびシステム構成要素の実施形態を支援するべく動作可能なコンピュータ装置を含むコンピュータ環境のブロック図である。
特定の実施形態において、コンピュータシステムでの初期バックアップ動作中に、コンピュータシステムの記憶装置にてデータボリュームのバックアップVHDを作成するステップ、バックアップVHDに対応するメタデータVHDを作成するステップ、および、バックアップVHDをリモートストレージロケーションに送信するステップ、を含む方法が開示される。この方法はまた、初期バックアップ動作完了後の、データボリュームのファイルに対する変更を検出するステップを含む。方法は、ファイルに対する変更を示す差分VHDを、メタデータVHDに基づき作成するステップをさらに含む。方法は、メタデータVHDを更新してファイルに対する変更を反映するステップを含む。方法は、コンピュータシステムにおける後続のバックアップ動作中に、更新後のメタデータVHDのコピーと差分VHDとをリモートストレージロケーションに送信するステップを、さらに含む。
別の特定の実施形態において、コンピュータシステムが開示される。コンピュータシステムは、ファイルシステムに従って記憶されたファイルと、ファイルに対する変更を検出するべく構成されるバックアップエージェントと、を含むメモリ装置を含む。コンピュータシステムはまた、検出された変更をVHDフォーマット形式の変更に翻訳するべく構成される翻訳モジュールを含む。コンピュータシステムは、VHDフォーマット形式の変更をメモリ装置に記憶されるメタデータVHDに書き込むべく、かつ、メタデータVHDに基づき差分VHDを生成するべく構成されるVHDモジュールをさらに含む。コンピュータシステムは、メタデータVHDと差分VHDとをリモート記憶装置に送信するべく構成されるネットワークインターフェースを含む。
別の特定の実施形態において、命令を含むコンピュータ可読媒体が開示され、この命令がコンピュータにより実行されると、コンピュータに第1のポイントインタイム(PIT)にてバックアップVHDを受信させ、第2のPITにて第1の前方差分VHDを受信させる。第2のPITは、第1のPITの後に続き、第1の前方差分VHDは、第1のPIT以降のバックアップVHDに対する変更を示す。コンピュータ可読媒体はまた、命令を含み、この命令がコンピュータにより実行されると、コンピュータに、リモートクライアントが特定のファイルを第1のPITに戻すよう要求していることを示す指標の受け取りに応じて、バックアップVHDからリモートのクライアントに特定のファイルを送信させる。コンピュータ可読媒体はさらに命令を含み、この命令がコンピュータにより実行されると、コンピュータに、リモートクライアントが特定のファイルを第2のPITに戻すよう要求していることを示す指標の受け取りに応じて、第1の前方差分VHDから特定のファイルの変更部分を、また、バックアップVHDから特定のファイルの非変更部分を、リモートクライアントに対して送信させる。
なお、本明細書では仮想ハードドライブ(VHD)形式に関してメタデータハードドライブおよび差分ハードドライブを使用するバックアップについて記載されるが、記載されるバックアップの方法論は、ファイルまたはブロックシステムを定義することが可能な任意の形式で使用することができる。さらに、バックアップの方法論がウィンドウズ(登録商標)に基づくファイルシステム(例えば、NTファイルシステム(NTFS)およびファイルアロケーションテーブル(FAT))を使用して例示されるが、バックアップの方法論は、ユーザ定義のファイルシステム(UDFS)を含む任意のファイルシステムで使用することができる。
図1は、メタデータ仮想ハードドライブ(VHD)および差分VHDを使用するバックアップのシステム100の特定の実施形態を例示するブロック図である。システム100には、ネットワーク130を介してリモートストレージロケーション150に通信可能に連結されるコンピュータシステム110が含まれる。一般に、システム100を使用して、リモートストレージロケーション150に、コンピュータシステム110のデータボリュームをバックアップすることができる。例えば、リモートストレージロケーション150は、オンラインクラウドストレージロケーションまたはネットワークシェア(例えば、別のコンピュータに置かれ、ローカルエリアネットワーク(LAN)を介してアクセス可能、ワイドエリアネットワーク(WAN)を介してアクセス可能、またはその任意の組み合わせが可能であるもの)とすることができる。
コンピュータシステム110にはメモリ112が含まれる。例えば、メモリ112は、コンピュータシステム110におけるRAM(RANDOM ACCESS MEMORY)またはROM(READ ONLY MEMORY)とすることができる。特定の実施形態において、メモリ112は、コンピュータシステム110における、ハードディスクまたは着脱可能記憶装置などのデータ記憶装置である。メモリ112には、コンピュータシステム110により1つまたは複数のファイル116を記憶させることができる。メモリ112には、本明細書において記載されるように生成かつ更新されるメタデータVHD114を記憶させることもできる。
コンピュータシステム110には、バックアップエージェント118、翻訳モジュール120、およびVHDモジュール122が含まれる。バックアップエージェント118は、メモリ112に記憶されるファイル116に対する変更を検出することができる。例えば、バックアップエージェント118は、ユーザがコンピュータシステム110にてファイル116の1つを修正したことを検出することができる。
翻訳モジュール120は、バックアップエージェント118により検出されるファイル116に対する変更を、VHDフォーマット形式の変更に変換することができる。例えば、ファイル116がNTファイルシステム(NTFS)に従ってメモリ112に記憶される場合、翻訳モジュール120は、バックアップエージェント118により検出される変更を、ファイル116に関連するNTFSディレクトリ構造情報およびNTFSファイルエクステント情報に基づき、VHDフォーマット形式の変更に変換することができる。なお、本明細書において開示される特徴は、例示の目的のみのためにNTFSの文脈で説明される。本明細書に記載されるようなメタデータVHDおよび差分VHDを使用するバックアップを、他のファイルシステムと共に使用することができる。
VHDモジュール122は、翻訳モジュール120により作成されたVHDフォーマット形式の変更をメモリ112のメタデータVHD114に書き込むことができるため、メタデータVHD114は、バックアップエージェント118により検出されたファイル116に対する変更を反映する。メタデータVHD114の大きさは、ファイル116よりもかなり小さくすることができるが、何故なら、メタデータVHD114には、ファイル116に関連するメタデータは含まれるが、ファイル116の内容が含まれないからである。例えば、メタデータVHD114には、NTFSエクステント情報、NTFSリパースポイント、およびディレクトリ構造情報を含むことができる。特定の実施形態において、ファイル116の内容を記憶する代わりに、メタデータVHD114は、リモートストレージロケーション150にてバックアップVHD140内に記憶される対応するファイル116のコピーに対するファイルポインタを含む。VHDモジュール122は、バックアップ動作中に、メタデータVHD114に基づき差分VHD(例えば、差分VHD144)を生成することもできる。特定の実施形態において、特定のバックアップ動作中に生成される差分VHDは、前回のバックアップ動作以降のファイル116に対する変更を示す前方差分VHDである。特定の実施形態において、差分VHDには、前回のバックアップ動作以降のファイル116の変更部分が含まれるが、前回のバックアップ動作以降のファイル116の非変更部分は含まれない。VHDモジュール122は、リモートストレージロケーション150のバックアップVHD140にアクセスせずに差分VHDを生成することができる。
コンピュータシステム110にはまた、ネットワークインターフェース124が含まれる。ネットワークインターフェース124は、ネットワーク130を介してリモートストレージロケーション150にデータを送信することができる。例えば、ネットワークインターフェース124は、イーサネットインターフェースまたはIEEE802.11無線ネットワークインターフェースなどの有線または無線のネットワークインターフェースとすることができ、また、ネットワーク130は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、またはインターネットとすることができる。コンピュータシステム110における初期バックアップ動作中、ネットワークインターフェースは、バックアップVHD140をリモートストレージロケーション150に送信することができる。特定の実施形態において、バックアップVHD140には全てのファイル116のコピーが含まれる。バックアップVHD140は、リモートストレージロケーション150に記憶させることができる。後続のバックアップ動作中、ネットワークインターフェース124は、メタデータVHD114のコピー142と差分VHD144とをリモートストレージロケーション150に送信することができ、メタデータVHD114および差分VHD144は両方ともバックアップVHD140よりもかなり大きさが小さい。特定の実施形態において、リモートストレージロケーション150は、メタデータVHD114のコピー142と差分VHD144とを記憶するオンラインクラウドストレージロケーションである。
動作中、システム100を使用して、コンピュータシステム110からリモートストレージロケーション150にデータを効率的にバックアップすることができる。例えば、初期バックアップ動作中、VHDモジュール122はバックアップVHD140を生成することができ、ネットワークインターフェース124はネットワーク130を介してリモートストレージロケーション150にバックアップVHD140を送信することができる。特定の実施形態において、コンピュータシステム110がアイドル状態または使用されていない時に、バックアップVHD140が自動的に生成されリモートストレージロケーション150に送信される。メタデータVHD114はまた、初期バックアップ動作中に生成されても良い。
コンピュータシステム110におけるバックアップエージェント118は、コンピュータシステム110のファイル116に対する変更を検出かつ追跡することができる。例えば、バックアップエージェント118は、コンピュータシステム110における最新の成功裏に完了したバックアップ動作以降の、ファイル116に対する変更のログを保持することができる。翻訳モジュール120は、バックアップエージェント118により検出されたファイル116に対する変更をVHDフォーマットに翻訳することができる。後続のバックアップ動作(例えば、自動的にスケージュリングされたバックアップ動作、またはユーザ起動のバックアップ動作)中、ファイル116に対する変更を示す差分VHD144を作成することができ、また、メタデータVHD114を更新してファイル116に対する変更を反映させることができる。差分VHD144とメタデータVHD114のコピー142とを、リモートストレージロケーション150に送信することができる。
第2の後続のバックアップ動作中、更新済みのメタデータVHD114に基づき第2の差分VHDを作成することができ、更新済みのメタデータVHD144を再更新することができ、2回の更新済みメタデータVHD114のコピーと第2の差分VHDと(図1には図示せず)をリモートストレージロケーション150に送信することができる。
図1のシステム100が、バックアップデータをリモートストレージロケーション150に送信し、それにより、メモリ112における利用可能な記憶空間を増大させることにより、コンピュータシステム110の性能を向上させることができることが理解されるであろう。また、図1のシステム100が、初期バックアップ動作中に、より大きなバックアップVHDをリモートストレージロケーション150に送信することにより、かつ、後続のバックアップ動作中に、より小さなメタデータVHDおよび差分VHDをリモートストレージロケーション150に送信することにより、性能を向上させることができることが理解されるであろう。さらに、バックアップVHD140、メタデータVHD114のコピー142、および差分VHD144を使用して、コンピュータシステム110においてファイル116を復元することができることが理解されるであろう。例えば、コンピュータシステム110は、リモートストレージロケーション150のバックアップVHD140から特定のファイルをダウンロードすることにより、ファイル116の特定のファイルを初期バックアップ動作に対応するポイントインタイム(PIT)に復元することができる。特定のファイルを、第1の後続のバックアップ動作(例えば、「変更後」状態の特定のファイル)に対応するPITに復元するには、コンピュータシステム110に、特定のファイルの非変更部分をバックアップVHD140からダウンロードし、かつ、特定のファイルの変更部分を差分VHD144からダウンロードすれば良い。特定のファイルを、第2のバックアップ動作(例えば、「2回の変更後」状態の特定のファイル)に対応するPITに復元するには、特定のファイルの非変更部分をバックアップVHDからダウンロードし、かつ、特定のファイルの変更部分を差分VHD144および第2の差分VHDからダウンロードすれば良い。
なお、図1に例示される特定の実施形態では、コンピュータシステム110からリモートストレージロケーション150へのデータのバックアップが示されるが、リモートストレージロケーション150から別のリモートストレージロケーションへのデータのバックアップを同様に実行することができる。従って、図1に例示されるバックアップの方法論が、複数のリモートストレージロケーション(例えば、オンラインクラウドの記憶場所)を使用するデータ複製とデータ冗長性のシナリオを可能にすることができることは理解されるであろう。例えば、データ冗長性の第1の層は、企業におけるコンピュータシステムについて、企業に設置されるネットワークシェア(例えば、サーバ)にコンピュータシステムからデータをバックアップすることにより達成される。データ冗長性の第2の層は、ネットワークシェアから、オンラインクラウドの記憶場所にデータ(例えば、企業の全てのそのようなコンピュータシステムからのバックアップデータ)をバックアップすることにより達成される。
図2は、メタデータVHDおよび差分VHDを使用するバックアップのシステム200の別の特定の実施形態を例示するブロック図である。システム200には、ネットワーク230を介してオンラインクラウドストレージロケーション250に通信可能に連結される、第1のコンピュータシステム210および第2のコンピュータシステム270が含まれる。例示の実施形態において、第1のコンピュータシステム210は図1のコンピュータシステム110であり、オンラインクラウドストレージロケーション250は図1のリモートストレージロケーション150であり、ネットワーク230は図1のネットワーク130である。
第1のコンピュータシステム210には、NTファイルシステム(NTFS)に従ってファイル216を記憶するメモリ212が含まれる。なお、本明細書において開示される特徴は、例示の目的のみのためにNTFSの文脈で説明される。本明細書に記載されるようなメタデータVHDおよび差分VHDを使用するバックアップは、他のファイルシステムと共に使用することができる。メモリ212にはまた、図1のメタデータVHD114を参照して本明細書に記載されるような、バックアップ動作中に生成かつ更新されるメタデータVHD214を含むことができる。第1のコンピュータシステム210は、図1のバックアップVHD140、メタデータVHD114のコピー142、および前方差分VHD144を参照して本明細書に記載されるような、バックアップVHD240、メタデータVHD214のコピー242、および前方差分VHD244を、オンラインクラウドストレージロケーション250に送信することができる。
第2のコンピュータシステム270にはメモリ272が含まれる。例えば、メモリ272は、NTFSファイルシステム、またはFAT16、FAT32、もしくは拡張FAT(exFAT)などのファイルアロケーションテーブル(FAT)ファイルシステムに従って、ファイルを記憶することができる。図2のシステム200を使用して、図1のコンピュータシステム110について本明細書において記載されるように、第1のコンピュータシステム210にファイルを復元することができる。また、図2のシステム200を使用して、第2のコンピュータシステム270にファイルを復元することもできる。
第1のコンピュータシステム210における初期バックアップ動作中、バックアップVHD240をオンラインクラウドストレージロケーション250に送信することができる。コンピュータシステム210における後続のバックアップ動作中、メタデータVHD214のコピー242と前方差分VHD244とをオンラインクラウドストレージロケーション250に送信することができる。ファイル240、242および244を使用して、コンピュータシステム210以外のコンピュータシステムにファイル216を復元することができる。例えば、第2のコンピュータシステム270は、復元ファイル276(例えば、ファイル216のコピー)を生成することができる。第1のコンピュータシステム210における初期バックアップ動作に対応するポイントインタイム(PIT)にファイル216を復元するために、第2のコンピュータシステム270は、オンラインクラウドストレージロケーション250のバックアップVHD240からファイル216をダウンロードし、復元ファイル276として記憶することができる。第1のコンピュータシステム210における後続のバックアップ動作に対応するPITにファイル216を復元するために、第2のコンピュータシステム270は、バックアップVHD240からファイル216の非変更部分264をダウンロードすることができ、また、オンラインクラウドストレージロケーション250の前方差分VHD244の内の1つまたは複数からファイル216の変更部分262をダウンロードすることができる。次に、第2のコンピュータシステム270は、変更部分262と非変更部分264を組み合わせることにより復元ファイル276を生成することができる。第2のコンピュータシステム270は、復元ファイル276に関連するPITに対応するオンラインクラウドストレージロケーション250からメタデータVHD214のコピーをダウンロードすることもできるため、第1のコンピュータシステム210について本明細書において記載されるように、復元ファイル276に対する将来の変更をオンラインクラウドストレージロケーション250にバックアップすることができる。特定の実施形態において、ダウンロードされたメタデータVHD214のコピーを第2のコンピュータシステム270において使用して、バックアップVHD250に記憶される特定のファイルの閲覧、検索および高粒度なリカバリの起動を行うことができる。特定の実施形態において、そのような閲覧、検索およびリカバリは、第2のコンピュータシステム270においてアプリケーション(例えば、オペレーティングシステムユーティリティ)を介して実行される。
図2のシステム200では、複数のコンピュータシステム(例えば、コンピュータシステム210および270)にわたるバックアップデータ(例えば、ファイル240、242および244)の共有を可能にすることができることが理解されるであろう。従って、図2のシステム200では、複数のコンピュータシステムにおける効率的なバックアップおよび復元の動作を可能にすることができることが理解されるであろう。
図3は、メタデータVHD300の特定の実施形態を例示する図である。例示の実施形態において、メタデータVHD300は、図1のメタデータVHD114または図2のメタデータVHD214の代表例である。なお、本明細書において開示される特徴は、例示の目的のみのためにNTFSの文脈で説明される。本明細書に記載されるようなメタデータVHDおよび差分VHDを使用するバックアップは、他のファイルシステムと共に使用することができる。
特定の実施形態において、メタデータVHD300は、NTFSエクステントに基づくバックアップスキームにおいて使用される。そのような実施形態において、メタデータVHD300にはNTFSエクステント情報310を含むことができる。バックアップ動作中、変更データは、NTFSエクステント情報内に記憶されるデータ実行ポインタに従ってリモートストレージロケーションに書き込むことができる。コンピュータシステムにおける復元動作中、メタデータVHD300を、コンピュータシステムにダウンロードし、復元対象の個々のファイルの閲覧および選択を可能にすることができ、また、NTFSエクステント情報内に記憶されるデータ実行ポインタをトラバースすることにより復元用に選択されたファイルをリモートストレージロケーションからダウンロードすることができる。
別の特定の実施形態において、メタデータVHD300はメタデータ細断に基づくバックアップスキームと共に使用される。そのような実施形態において、メタデータVHD300は、ディレクトリ構造情報330およびファイルポインタ340を含むことができる。バックアップ動作中、ディレクトリ構造情報330を更新してメタデータVHD300に関連するデータボリュームにおけるデータ変更を反映することができ、また、変更後のデータは、ファイルポインタ340に従ってリモートストレージロケーションに記憶することができる。復元動作中、ファイルポインタ340をトラバースすることにより、復元用に選択されたファイルをフェッチすることができる。
別の特定の実施形態において、メタデータVHD300はNTFSリパースポイントに基づくバックアップスキームにおいて使用される。そのような実施形態において、メタデータVHD300は、NTFSリパースポイント320およびディレクトリ構造情報330を含むことができる。バックアップ動作中、ディレクトリ構造情報330を更新してメタデータVHD300に関連するデータボリュームにおけるデータ変更を反映することができる。メタデータVHD300に記憶されるファイル名は、リモートストレージロケーションにおいて記憶されるファイルのコピーの一方に対するNTFSリパースポイント320(例えば、シンボリックリンク)とすることができる。復元動作中、NTFSリパースポイント320を解決することにより、復元用に選択されたファイルをダウンロードすることができる。
使用される特定のバックアップスキーム(例えば、NTFSエクステント、メタデータ細断、またはNTFSリパースポイント)にかかわらず、メタデータVHD300により、コンピュータシステムにおいてデータ無しのまたはデータの少ないローカルデータバックアップを可能にすることができることは理解されるであろう。その代わりに、リモートストレージロケーションにファイルデータを記憶することができる。また、メタデータVHD300により個々のファイルの選択的な閲覧およびリカバリを可能にすることができることも理解されるであろう。
図4は、前方差分VHDを後方差分VHDに変換する方法400の特定の実施形態を例示する図である。図1の差分VHD144および図2の前方差分VHD244について本明細書において記載したように、差分VHDを使用すると、コンピュータシステムにおいてファイルの変更部分を含むが非変更部分を含まないことにより、コンピュータシステムにおけるバックアップ動作の性能を向上させることができる。しかし、前方差分VHDの数が増えると(例えば、連続したバックアップ動作により)、ファイルを「現在の」状態に復元するために要する時間が増えることになる。例えば、バックアップVHDの作成後に4回の連続するバックアップ動作が起こる場合、頻繁に更新されるファイルの復元には、4回の連続するバックアップ動作中に生成される4つの前方差分VHDのそれぞれからのファイルの変更部分のダウンロードが含まれる場合がある。複数の前方差分VHDからの情報に基づく更新後のファイルの再構築は、復元動作またはバックアップ動作の全体の性能を低下させてしまう恐れがある。従って、特定の実施形態において、図4に例示するように、前方差分VHD(例えば、リモートストレージロケーションに記憶される)を、後方差分VHDに変換して復元動作中に参照される差分VHDの数を減らすことにより性能を向上させることができる。
前方差分VHDの後方差分VHDへの変換を例示するために、月に1回リモートストレージロケーションに対してバックップを行うコンピュータシステムを考える。1月の初期バックアップ中(すなわち、1月PIT)、自己完結型バックアップVHD402が生成され、リモートストレージロケーションに送信される。1月の自己完結型バックアップVHD402が「自己完結型」と呼ばれるのは、ファイルを他のVHD(例えば、差分VHD)を参照せずに1月PITに戻すことができるからである。2月の第1の後続バックアップ動作中、前方差分VHD404が生成されてリモートストレージロケーションに転送され、リモートストレージロケーションにおいて、前方差分VHD404は、1月PITと2月PITとの間に行われたファイル変更を示す。同様に、3月の第2の後続バックアップ動作中、前方差分VHD406が生成されてリモートストレージロケーションに転送され、リモートストレージロケーションにおいて、前方差分VHD406は、2月PITと3月PITとの間に行われたファイル変更を示す。
1月PITに特定のファイルを復元するために、コンピュータシステムは自己完結型バックアップVHD402から特定のファイルをダウンロードすることができる。2月PITに特定のファイルを復元するために、コンピュータシステムは、自己完結型バックアップVHD402から特定のファイルの非変更部分を、および、前方差分VHD404から特定のファイルの変更部分をダウンロードすることができる。3月PITに特定のファイルを復元するために、コンピュータシステムは、自己完結型バックアップVHD402から特定のファイルの非変更部分を、および、前方差分VHD404および406の両方から特定のファイルの変更部分をダウンロードすることができる。
バックアップおよび復元のパターンを観察すると、復元動作の内大きな割合を、最終PITへのファイルの復元が占めていると判定できる。例えば、図4に例示される実施形態において、復元動作の内3月PITへのファイルの復元が大きな割合を占めるものとできる。それぞれのそのような復元動作が、複数の前方差分VHD(例えば、前方差分VHD404および406)からデータをダウンロードすることを伴い得ることを分かるであろう。そのような通常発生する復元動作の性能を向上させるために、前方差分VHD404および406を後方差分VHDに変換することができる。
例えば、1月PITに対応する自己完結型バックアップVHD402を、2月PITに対応する前方差分VHD404に基づき更新することができる。その結果得られる自己完結型バックアップVHD414により、他のVHDを参照せずにファイルを2月PITに復元させることができる。更新動作中、1月PITに対応する後方差分VHD412も作成される。後方差分VHD412は、更新動作中に行われた変更をどのように「アンドゥ」するのかについて効率的に記述することができるため、自己完結型バックアップVHD414からファイルの変更部分を、および、後方差分VHD412からファイルの非変更部分をダウンロードすることにより、1月PITにファイルを復元させることができる。3月PITに対応する前方差分VHD416は、変更されない(例えば、前方差分VHD406と同じ)ものとすることができる。
そして更新動作が繰り返され、3月PITに対応する自己完結型バックアップVHD426と、2月PITに対応する後方差分VHD424とが生成される。1月PITに対応する後方差分VHD422は、無変更のまま(例えば、後方差分VHD412と同じ)とすることができる。従って、3月PITについての通常発生する復元動作は、もはや複数の差分VHD(例えば、1月および2月それぞれの前方差分VHD)を参照しなくても良い。
図4に例示するような前方差分VHDの後方差分VHDへの変換では、通常発生する復元動作中に参照される差分VHDの数を減らすことにより、バックアップおよび復元の動作の性能を向上させることができることが理解されるであろう。例えば、1つまたは複数の差分VHD(例えば、リカバリ用に最近は使用されていない古い差分VHD)は、例示するように自己完結型バックアップVHDに統合することができ、また、そのような差分VHDを削除することができる。従って、図4の方法400を使用して、図1のシステム100または図2のシステム200におけるバックアップおよび復元の性能を向上させることができることが理解されるであろう。加えて、前方差分VHDの後方差分VHDへの変換は、他のコンピュータシステム(例えば、図1のコンピュータシステム110)での計算リソースを使用することなく、リモートストレージロケーション(例えば、図1のリモートストレージロケーション150)で行うことができる。
図5は、メタデータVHDおよび差分VHDを使用するバックアップの方法500の特定の実施形態を例示するフロー図である。例示の実施形態において、方法500は、図1のシステム100または図2のシステム200により実行することができる。
方法500は、502にて、コンピュータシステムにおいて初期バックアップ動作を実行するステップを含む。例えば、図1では、コンピュータシステム110において初期バックアップ動作を実行することができる。
初期バックアップ動作中、方法500は、504にて、コンピュータシステムの記憶装置においてデータボリュームのバックアップVHDを作成するステップを含む。例えば、図1では、バックアップVHD140を作成することができ、バックアップVHDは、ファイル116を含むメモリ112におけるデータボリュームに関連付けられる。方法500はまた、506にて、初期バックアップ動作中、バックアップVHDに対応するメタデータVHDを作成するステップを含む。例えば、図1では、メタデータVHD114を作成することができる。方法500はさらに、508にて、初期バックアップ動作中、リモートストレージロケーションにバックアップVHDを送信するステップを含む。例えば、図1では、リモートストレージロケーション150にバックアップVHD140を送信することができる。
方法500は、510にて、初期バックアップ動作の完了後、データボリュームのファイルへの変更を検出するステップを含む。例えば、図1では、バックアップエージェント118は、ファイル116の特定のファイルへの変更を検出することができる。
方法500はまた、512にて、メタデータVHDに基づき差分VHDを作成するステップも含み、差分VHDがファイルに対する変更を示す。例えば、図1では、VHDモジュール122が差分VHD144を作成することができ、差分VHD114はファイル116の特定のファイルに対する変更を示す。
方法500はさらに、514にて、メタデータVHDを更新してファイルに対する変更を反映するステップを含む。例えば、図1では、メタデータVHD114を更新することができる。方法500は、516にて、コンピュータシステムにおける後続のバックアップ動作中、リモートストレージロケーションに更新後のメタデータVHDのコピーと差分VHDとを送信するステップを含む。例えば、図1では、メタデータVHD114のコピー142と差分VHD144とを、リモートストレージロケーション150に送信することができる。
図5の方法500では、コンピュータシステムにおいてデータ無しのまたはデータの少ないローカルデータバックアップを可能にすることができることは理解されるであろう。また、図5の方法500では、リモートストレージロケーションにバックアップデータを送信することにより、コンピュータシステムにおける利用可能な記憶空間を増大させることができることも理解されるであろう。
図6は、メタデータVHDおよび差分VHDを使用するバックアップの方法600の別の特定の実施形態を例示するフロー図である。例示の実施形態において、方法600は、図1のシステム100または図2のシステム200により実行することができる。
方法600は、602にて、コンピュータシステムにおいて初期バックアップ動作を実行するステップを含む。例えば、図1では、初期バックアップ動作をコンピュータシステム110において実行することができる。
初期バックアップ動作中、方法600は、604にて、コンピュータシステムの記憶装置においてデータボリュームのシングルインスタンスストレージ(SIS)バックアップVHDを作成するステップを含む。例えば、図1では、バックアップVHD140を作成することができ、バックアップVHD140は、ファイル116を含むメモリ112におけるデータボリュームに関連付けられる。方法600はまた、606にて、初期バックアップ動作中、バックアップVHDに対応するメタデータVHDを作成するステップを含む。例えば、図1では、メタデータVHD114を作成することができる。方法600はさらに、608にて、初期バックアップ動作中、リモートストレージロケーションにバックアップVHDを送信するステップを含む。例えば、図1では、リモートストレージロケーション150にバックアップVHD140を送信することができる。
方法600は、610にて、初期バックアップ動作の完了後、データボリュームのファイルへの変更を検出するステップを含む。例えば、図1では、バックアップエージェント118は、ファイル116の特定のファイルへの変更を検出することができる。
方法600はまた、612にて、ファイルに対する変更を示す差分VHDを作成するステップを含む。例えば、図1では、VHDモジュール122は、差分VHD144を作成することができ、差分VHD114は、ファイル116の特定のファイルに対する変更を示す。
方法600はさらに、614にて、メタデータVHDを更新してファイルに対する変更を反映させるステップを含む。例えば、図1では、メタデータVHD114を更新することができる。方法600は、616にて、コンピュータシステムにおける後続のバックアップ動作中、リモートストレージロケーションに更新後のメタデータVHDのコピーと差分VHDとを送信するステップを含む。例えば、図1では、メタデータVHD114のコピー142と差分VHD144とを、リモートストレージロケーション150に送信することができる。
バックアップデータがリモートストレージロケーションに送信されると、バックアップデータはファイルを復元するために使用される。例えば、コンピュータシステムのユーザは、コンピュータシステムにて復元動作を起動することができる。方法600はまた、618にて、コンピュータシステムにおいて変更後のファイルを復元するステップを含む。コンピュータシステムにおいて変更後のファイルを復元するステップには、620にて、リモートストレージロケーションの差分VHDから変更後のファイルの1つまたは複数の変更部分をダウンロードするステップが含まれる。例えば、図1では、ファイル116の特定のファイルの1つまたは複数の変更部分を、リモートストレージロケーション150の差分VHD144からダウンロードすることができる。特定の実施形態において、ファイル116の特定のファイルの変更部分は、図2の変更部分262について本明細書において記載されるように、ダウンロードされる。
コンピュータシステムにおいて変更後ファイルを復元するステップにはまた、622にて、リモートストレージロケーションのバックアップVHDからファイルの1つまたは複数の非変更部分をダウンロードするステップが含まれる。例えば、図1では、ファイル116の1つまたは複数の非変更部分を、リモートストレージロケーション150のバックアップVHD140からダウンロードすることができる。特定の実施形態において、ファイル116の非変更部分は、図2の非変更部分264について本明細書において記載されるようにダウンロードされる。
コンピュータシステムにおいて変更後ファイルを復元するステップにはさらに、624にて、1つまたは複数の変更部分と1つまたは複数の非変更部分とに基づき、コンピュータシステムにおいて変更後のファイルを生成するステップが含まれる。例えば、図1では、ファイル116を、1つまたは複数の変更部分と1つまたは複数の非変更部分とに基づき復元することができる。例えば、1つまたは複数の変更部分と1つまたは複数の非変更部分とを、コンピュータシステムにおいて組み合わせて復元ファイルを形成することができる。
図7は、差分VHDを使用するバックアップをサポートする方法700の特定の実施形態を例示するフロー図である。例示の実施形態において、方法700は、図1のリモートストレージロケーション150または図2のオンラインクラウドストレージロケーション250において実行することができる。
方法700は、702にて、第1のPITでバックアップVHDを受信するステップを含む。例えば、図2を参照すると、バックアップVHD240を、オンラインクラウドストレージロケーション250において受信することができる。
方法700はまた、704にて、第1のPITに続く第2のPITで前方差分VHDを受信するステップを含み、前方差分VHDは第1のPIT以降のバックアップVHDに対する変更を示す。例えば、図2を参照すると、前方差分VHD244の内の1つを、オンラインクラウドストレージロケーション250においてバックアップVHD240の受信の後に続き、受信することができる。
方法700はさらに、リモートクライアントにおいて復元動作をサポートするステップを含む。706にて、リモートクライアントが第1のPITに特定のファイルを戻すよう要求していることを示す指標が受け取られる場合に、方法700は、708にて、バックアップVHDからリモートクライアントに特定のファイルを送信するステップを含む。例えば、図2を参照すると、オンラインクラウドストレージロケーション250は、第2のコンピュータシステム270が第1のPITに特定のファイルを戻すよう要求していることを示す指標を受け取るのに応じて、第2のコンピュータシステム270に特定のファイルを送信することができる。
710にて、リモートクライアントが第2のPITに特定のファイルを戻すよう要求していることを示す指標が受け取られる場合、方法700は、712にて、リモートクライアントに、前方差分VHDから特定のファイルの変更部分を送信するステップ、および、バックアップVHDから特定のファイルの非変更部分を送信するステップを含む。例えば、図2を参照すると、オンラインクラウドストレージロケーション250は第2のコンピュータシステム270に変更部分262および非変更部分264を送信することができる。
図4について上述したように、前方差分VHDの後方差分VHDへの変換により、バックアップおよび復元の動作の性能を向上させることができる。図8は、差分VHDを使用してバックアップをサポートする方法800の別の特定の実施形態を例示するフロー図であり、前方差分VHDを後方差分VHDに変換するステップを含む。例示の実施形態において、方法800は、図1のリモートストレージロケーション150または図2のオンラインクラウドストレージロケーション250において実行することができる。
方法800は、802にて、第1のPITでバックアップVHDを受信するステップを含む。例えば、図2を参照すると、バックアップVHD240を、オンラインクラウドストレージロケーション250で受信することができる。
方法800はまた、804にて、第1のPITに続く第2のPITで前方差分VHDを受信するステップを含み、前方差分VHDは、第1のPIT以降のバックアップVHDに対する変更を示す。例えば、図2を参照すると、前方差分VHD244の内の1つを、オンラインクラウドストレージロケーション250においてバックアップVHD240の受信の後に続き、受信することができる。
方法800はさらに、806にて、前方差分VHDに基づきバックアップVHDを更新するステップと、前方差分VHDを後方差分VHDに変換するステップを含む。例えば、図2を参照すると、バックアップVHD240を、前方差分VHD244の内の1つに基づき更新することができ、また、前方差分VHDを後方差分VHDに変換することができる。特定の実施形態において、更新および変換の動作は、図4のVHD402から426について本明細書において記載されるように実行される。
方法800は、リモートクライアントにおける復元動作をサポートするステップを含む。808にて、リモートクライアントが第1のPITに特定のファイルを戻すよう要求していることを示す指標が受け取られる場合、方法800は、810にて、リモートクライアントに、後方差分VHDから特定のファイルの非変更部分を、および、更新後のバックアップVHDから特定のファイルの変更部分を送信するステップを含む。例えば、図2を参照すると、オンラインクラウドストレージロケーション250は、第2のコンピュータシステム270に変更部分262および非変更部分264を送信することができる。
812にて、リモートクライアントが第2のPITに特定のファイルを戻すよう要求していることを示す指標が受け取られる場合、方法800は、814にて、リモートクライアントに更新後のバックアップVHDから特定のファイルを送信するステップを含む。例えば、図2を参照すると、オンラインクラウドストレージロケーション250は、第2のコンピュータシステム270が第2のPITに特定のファイルを戻すよう要求していることと示す指標を受け取るのに応じて、第2のコンピュータシステム270に特定のファイルを送信することができる。
図9は、本開示に従うコンピュータに実装される方法、コンピュータプログラム製品、およびシステム構成要素の実施形態を支援するべく動作可能なコンピュータ装置910を含む、コンピュータ環境900のブロック図を示す。例示の実施形態において、コンピュータ装置910には、図1のネットワークインターフェース124、図1のメモリ112、図1のエージェント/モジュール118、120、122、図1のリモートストレージロケーション、図2のメモリ212、272、または、図2のオンラインクラウドストレージロケーション、を含むことができる。図1のネットワークインターフェース124、図1のメモリ112、図1のエージェント/モジュール118、120、122、図1のリモートストレージロケーション150、図2のメモリ212、272、または図2のオンラインクラウドストレージロケーション250のそれぞれは、コンピュータ装置910もしくはその一部を含むことができ、またはコンピュータ装置910もしくはその一部を使用して実装されて良い。
コンピュータ装置910には、少なくとも1つのプロセッサ920と、システムメモリ930とが含まれる。コンピュータ装置の構成およびタイプに応じて、システムメモリ930は、揮発性(例えば、ランダムアクセスメモリすなわち「RAM」)、不揮発性(例えば、リードオンリメモリすなわち「ROM」、フラッシュメモリ、および、記憶されるデータを電源供給されない時でも保持する類似のメモリ装置)、またはこの2つの何らかの組み合わせ、とすることができる。システムメモリ930は典型的には、オペレーティングシステム932、1つまたは複数のアプリケーションプラットフォーム、1つまたは複数のアプリケーション(例えば、バックアップエージェント934、翻訳モジュール936、およびVHDモジュール938)を含み、また、1つまたは複数のアプリケーションに関連するプログラムデータを含むことができる。例示の実施形態において、バックアップエージェント934は図1のバックアップエージェント118であり、翻訳モジュール936は図1の翻訳モジュール120であり、VHDモジュール938は図1のVHDモジュール122である。
コンピュータ装置910はまた、追加の特徴または機能性を持つことができる。例えば、コンピュータ装置910には、着脱可能および/または着脱不可能な追加のデータ記憶装置、例えば、磁気ディスク、光ディスク、および、標準サイズまたは小型のフラッシュメモリカード、を含むこともできる。そのような追加の記憶装置が、着脱可能記憶装置940および着脱不可能記憶装置950により図9に例示される。例示の実施形態において、そのような追加の記憶装置には、図1のメモリ112、図2のメモリ212、または図2のメモリ272が含まれる。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラム要素、または他のデータ等の情報を記憶するための任意の方法または技術により実装される、揮発性および/または不揮発性の記憶装置および着脱可能および/または着脱不可能の媒体を含むことができる。システムメモリ930、着脱可能記憶装置940、および着脱不可能記憶装置950は、全てコンピュータ記憶媒体の例である。コンピュータ記憶媒体には、制限ではなく例として、RAM、ROM、EEPROM(electrically erasable programmable read−only memory)、フラッシュメモリもしくは他のメモリ技術、CD(compact disk)、DVD(digital versatile disk)もしくは他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または情報を記憶するために使用可能かつコンピュータ装置910によりアクセス可能な任意の他の媒体、が含まれる。任意のそのようなコンピュータ記憶媒体は、コンピュータ装置910の一部とすることができる。コンピュータ装置910はまた、キーボード、マウス、ペン、音声入力装置、タッチ入力装置などの入力装置960を含むことができる。ディスプレイ、スピーカ、プリンタなどの出力装置970も含まれて良い。
コンピュータ装置910はまた、有線または無線のネットワークを介してコンピュータ装置910を他のコンピュータ装置990と通信させる1つまたは複数の通信接続980を含む。例示の実施形態において、通信接続980には図1のネットワークインターフェース120が含まれる。1つまたは複数の通信接続980はまた、コンピュータ装置910をリモートストレージロケーション992と通信させることができる。例示の実施形態において、リモートストレージロケーション992は、図1のリモートストレージロケーション150または図2のオンラインクラウドストレージロケーション250である。
図9に例示される構成要素もしくは装置、または上記の段落において記載したものの全てが、本明細書に置いて記載される実施形態を支援するために必ずしも必要であるわけではないことは理解されるであろう。例えば、入力装置960および出力装置970は選択的なものとして良い。
本明細書に記載される実施形態の例示においては、種々の実施形態の構造の一般的な理解を提供することが意図される。例示においては、本明細書に記載される構造または方法を利用する装置およびシステムの全ての要素および特徴を完全に記述することは意図されていない。本開示を精査することにより、当業者には多くの他の実施形態が明らかになるであろう。本開示から他の実施形態を利用すること、および派生させることができ、本開示の範囲から逸脱することなく、構造的および論理的な代替および変更を行うことができる。従って、本開示はおよび図面は、制限するものでなく例示としてみなされるべきものである。
当業者はさらに、本明細書に開示される実施形態と関連して記載される種々の例示の論理ブロック、構成、モジュール、および、プロセスまたは命令のステップを、電子機器、コンピュータソフトウェア、またはその両者の組み合わせとして実装することができることを理解するであろう。種々の例示の構成要素、ブロック、構成、モジュール、またはステップは、概してその機能性の観点から記載された。そのような機能性がハードウェアまたはソフトウェアとして実装されるかどうかは、全体のシステムに課される特定の用途および設計上の制約に依存する。当業者は、それぞれの特定の用途に合わせて様々な様式で記載される機能性を実装することができるが、そのような実装の決定は、本開示の範囲からの逸脱を引き起こすものとして解釈されるべきではない。
本明細書に開示される実施形態に関連して記載される方法のステップは、ハードウェア、プロセッサにより実行されるソフトウェアモジュール、またはその2つの組み合わせにおいて直接具現化されて良い。ソフトウェアモジュールは、コンピュータ可読媒体、例えば、RAM(RANDOM ACCESS MEMORY)、フラッシュメモリ、ROM(READ ONLY MEMORY)、レジスタ、ハードディスク、着脱可能ディスク、CD−ROM、または、従来技術において既知の任意の他の形式の記憶媒体、に常駐させることができる。例示の記憶媒体をプロセッサと連結させて、プロセッサが記憶媒体に情報を読み書きすることを可能にできる。あるいは、記憶媒体をプロセッサと統合させても良く、または、プロセッサと記憶媒体をコンピュータ装置またはコンピュータシステム内に離散構成要素として常駐させても良い。
本明細書において、特定の実施形態が例示され記載されたが、同一または同様の目的を達成するために設計される任意の後続の配備を、示される特定の実施形態と置き換えることができることは理解されるべきである。本開示では、種々の実施形態の任意および全ての後続の適合または変形を包含することが意図される。
本開示の要約は、本開示を使用して請求項の範囲または意味が解釈または制限されることはないことの理解のために提供される。加えて、前述の発明を実施するための形態において、本開示を合理化する目的で、種々の特徴をグループ化すること、または、単一の実施形態内で記載することができる。本開示は、請求される実施形態が各請求項において明示的に列挙される特徴よりも多くの特徴を必要とするという意図を反映するものとして解釈されない。むしろ、以下の請求項により反映されるように、発明の主題は、開示される実施形態のいずれかの全ての特徴よりも少ない特徴を対象とすることができる。
実施形態の上述の記載は、当業者が実施形態を行いまたは使用することを可能にするために提供される。これらの実施形態に対する種々の変形は、当業者には容易に明らかであり、また、本明細書において定義される一般的な原理は、本開示の範囲から逸脱することなく他の実施形態に適用することができる。従って、本開示は、本明細書に示される実施形態に限定されることは意図されず、以下の請求項により定義される原理および新規な特徴と一致する可能性のある最も広い範囲が与えられることが意図される。

Claims (15)

  1. コンピュータシステムにおける初期バックアップ動作中に、
    前記コンピュータシステムの記憶装置においてデータボリュームのバックアップ仮想ハードドライブ(VHD)を作成するステップと、
    前記バックアップVHDに対応するメタデータVHDを作成するステップと、
    リモートストレージロケーションに前記バックアップVHDを送信するステップと
    初期バックアップ動作の完了後に、前記データボリュームのファイルに対する変更を検出するステップと、
    前記メタデータVHDに基づき差分VHDを作成するステップであって、前記差分VHDは前記ファイルに対する変更を示す、ステップと、
    前記メタデータVHDを更新して前記ファイルに対する変更を反映するステップと、
    前記コンピュータシステムにおける後続のバックアップ動作中に、前記リモートストレージロケーションに、更新後の前記メタデータVHDのコピーと前記差分VHDとを送信するステップと
    を含むことを特徴とする方法。
  2. 前記メタデータVHDを使用して、前記バックアップVHDに記憶されるファイルを閲覧すること、前記バックアップVHDに記憶されるファイルを検索すること、またはその任意の組み合わせが可能であり、前記リモートストレージロケーションの前記バックアップVHDにアクセスせずに前記差分VHDが作成されることを特徴とする請求項1に記載の方法。
  3. 前記更新後のメタデータVHDのコピーと前記差分VHDとを前記リモートストレージロケーションに記憶するステップをさらに含むことを特徴とする請求項1に記載の方法。
  4. 前記リモートストレージロケーションの前記差分VHDから第2のコンピュータシステムにファイルの1つまたは複数の変更部分をダウンロードするステップと、
    前記リモートストレージロケーションの前記バックアップVHDから前記第2のコンピュータシステムにファイルの1つまたは複数の非変更部分をダウンロードするステップと、
    前記1つまたは複数の変更部分および前記1つまたは複数の非変更部分に基づき前記第2のコンピュータシステムにおいて変更後のファイルを生成するステップと
    により、
    前記第2のコンピュータシステムにおいて前記変更後のファイルを復元するステップをさらに含むことを特徴とする請求項3に記載の方法。
  5. 前記リモートストレージロケーションの前記差分VHDから前記コンピュータシステムに、前記ファイルの1つまたは複数の変更部分をダウンロードするステップと、
    前記リモートストレージロケーションの前記バックアップVHDから前記コンピュータシステムに、前記ファイルの1つまたは複数の非変更部分をダウンロードするステップと、
    前記1つまたは複数の変更部分および前記1つまたは複数の非変更部分に基づき、前記第2のコンピュータシステムにおいて変更後のファイルを生成するステップと
    により、
    前記コンピュータシステムにおいて前記変更後のファイルを復元するステップをさらに含むことを特徴とする請求項3に記載の方法。
  6. 前記ファイルに対する第2の変更を検出するステップであって、前記第2の変更は第1の変更後に検出されるステップと、
    前記更新後のメタデータVHDに基づき第2の差分VHDを作成するステップであって、前記第2の差分VHDは前記ファイルに対する前記第2の変更を示すステップと、
    前記更新後のメタデータVHDを更新して前記第2の変更を反映するステップと、
    前記リモートストレージロケーションに、2回の更新後の前記メタデータVHDのコピーと、前記第2の差分VHDとを送信するステップと
    をさらに含むことを特徴とする請求項3に記載の方法。
  7. リモートストレージロケーションにおける、前記差分VHDから前記ファイルの1つまたは複数の第1の変更部分を、前記第2の差分VHDから前記ファイルの1つまたは複数の第2の変更部分を、前記コンピュータシステムにダウンロードするステップと、
    前記リモートストレージロケーションの前記バックアップVHDから前記コンピュータシステムに前記ファイルの1つまたは複数の非変更部分をダウンロードするステップと、
    前記1つまたは複数の第1の変更部分と、前記1つまたは複数の第2の変更部分と、前記1つまたは複数の非変更部分と、に基づき、前記第2のコンピュータシステムにおいて2回の変更後ファイルを生成するステップと
    により、
    前記コンピュータシステムにて前記2回の変更後のファイルを復元するステップをさらに含むことを特徴とする請求項6に記載の方法。
  8. 前記差分VHDと前記第2の差分VHDが前方差分VHDであり、前記前方差分VHDを後方差分VHDに変換するステップをさらに含むことを特徴とする請求項6に記載の方法。
  9. 前記バックアップVHDがシングルインスタンスストレージ(SIS)VHDであることを特徴とする請求項1に記載の方法。
  10. 前記リモートストレージロケーションがオンラインクラウドストレージロケーションであることを特徴とする請求項1に記載の方法。
  11. 前記メタデータVHDが前記データボリュームのファイルのためのNTファイルシステム(NTFS)エクステント情報、少なくとも1つのNTFSリパースポイント、またはその任意の組み合わせ、を含むことを特徴とする請求項1に記載の方法。
  12. 前記メタデータVHDがデータボリュームに対応するディレクトリ構造と、前記ファイルのファイルポインタとを含み、前記ファイルポインタが前記バックアップVHDにおける前記ファイルのコピーを指し示すことを特徴とする請求項1に記載の方法。
  13. 前記コンピュータシステムが、前記リモートストレージロケーションとは異なる第2のリモートストレージロケーションに設置されることを特徴とする請求項1に記載の方法。
  14. ファイルシステムに従って記憶されるファイルを含むメモリ装置と、
    ファイルに対する変更を検出するべく構成されるバックアップエージェントと、
    前記検出された変更を仮想ハードドライブ(VHD)フォーマット形式の変更に翻訳するべく構成される翻訳モジュールと、
    前記VHDフォーマット形式の変更を前記メモリ装置に記憶されるメタデータVHDに書き込むべく、かつ、前記メタデータVHDに基づき差分VHDを生成するべく構成されるVHDモジュールと、
    前記メタデータVHDと差分VHDとをリモート記憶装置に送信するべく構成されるネットワークインターフェースと
    を備えることを特徴とするコンピュータシステム。
  15. 前記ファイルシステムは、NTファイルシステム(NTFS)またはファイルアロケーションテーブル(FAT)ファイルシステムであることを特徴とする請求項14に記載のコンピュータシステム。
JP2012536847A 2009-10-30 2010-10-12 メタデータ仮想ハードドライブおよび差分仮想ハードドライブを使用するバックアップ Active JP5646639B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/609,244 US8856080B2 (en) 2009-10-30 2009-10-30 Backup using metadata virtual hard drive and differential virtual hard drive
US12/609,244 2009-10-30
PCT/US2010/052325 WO2011053450A2 (en) 2009-10-30 2010-10-12 Backup using metadata virtual hard drive and differential virtual hard drive

Publications (3)

Publication Number Publication Date
JP2013509646A true JP2013509646A (ja) 2013-03-14
JP2013509646A5 JP2013509646A5 (ja) 2013-11-14
JP5646639B2 JP5646639B2 (ja) 2014-12-24

Family

ID=43922948

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012536847A Active JP5646639B2 (ja) 2009-10-30 2010-10-12 メタデータ仮想ハードドライブおよび差分仮想ハードドライブを使用するバックアップ

Country Status (6)

Country Link
US (1) US8856080B2 (ja)
EP (1) EP2494456B1 (ja)
JP (1) JP5646639B2 (ja)
CN (1) CN102597983B (ja)
HK (1) HK1172423A1 (ja)
WO (1) WO2011053450A2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013543179A (ja) * 2010-10-11 2013-11-28 マイクロソフト コーポレーション アイテム単位でのリカバリー
KR101593163B1 (ko) 2014-05-12 2016-02-15 한국전자통신연구원 실 환경 악성코드 분석 장치 및 방법
US11366593B2 (en) 2016-11-16 2022-06-21 International Business Machines Corporation Point-in-time backups via a storage controller to an object storage cloud

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9501365B2 (en) * 2009-12-28 2016-11-22 Netapp, Inc. Cloud-based disaster recovery of backup data and metadata
US8244685B2 (en) * 2010-02-24 2012-08-14 Autonomy, Inc. Data restoration utilizing forward and backward deltas
US9116905B1 (en) 2010-06-30 2015-08-25 Emc Corporation System and method for cataloging data
US8595749B1 (en) * 2010-06-30 2013-11-26 Emc Corporation System and method for cataloging data
US8924360B1 (en) 2010-09-30 2014-12-30 Axcient, Inc. Systems and methods for restoring a file
US10284437B2 (en) 2010-09-30 2019-05-07 Efolder, Inc. Cloud-based virtual machines and offices
US9705730B1 (en) 2013-05-07 2017-07-11 Axcient, Inc. Cloud storage using Merkle trees
US8589350B1 (en) 2012-04-02 2013-11-19 Axcient, Inc. Systems, methods, and media for synthesizing views of file system backups
US8954544B2 (en) 2010-09-30 2015-02-10 Axcient, Inc. Cloud-based virtual machines and offices
US9235474B1 (en) * 2011-02-17 2016-01-12 Axcient, Inc. Systems and methods for maintaining a virtual failover volume of a target computing system
US8868859B2 (en) 2011-06-03 2014-10-21 Apple Inc. Methods and apparatus for multi-source restore
US8819471B2 (en) 2011-06-03 2014-08-26 Apple Inc. Methods and apparatus for power state based backup
US9411687B2 (en) 2011-06-03 2016-08-09 Apple Inc. Methods and apparatus for interface in multi-phase restore
US9465696B2 (en) 2011-06-03 2016-10-11 Apple Inc. Methods and apparatus for multi-phase multi-source backup
US8868882B2 (en) 2011-06-08 2014-10-21 Microsoft Corporation Storage architecture for backup application
US9063822B2 (en) 2011-09-02 2015-06-23 Microsoft Technology Licensing, Llc Efficient application-aware disaster recovery
US20130066838A1 (en) * 2011-09-12 2013-03-14 Microsoft Corporation Efficient data recovery
GB2499415B (en) * 2012-02-15 2014-09-24 Tivarri Ltd A method of backing-up, and making available by alternative means, electronic data and software initially stored on a client server
US20130219069A1 (en) * 2012-02-22 2013-08-22 Computer Associates Think, Inc. System and method for managing virtual hard disks in cloud environments
JP2013178665A (ja) * 2012-02-28 2013-09-09 Keepdata Ltd バックアップシステム
US9785647B1 (en) 2012-10-02 2017-10-10 Axcient, Inc. File system virtualization
US9852140B1 (en) 2012-11-07 2017-12-26 Axcient, Inc. Efficient file replication
US9282166B2 (en) 2012-11-29 2016-03-08 International Business Machines Corporation Management infrastructure analysis for cloud migration
US9092837B2 (en) 2012-11-29 2015-07-28 International Business Machines Corporation Use of snapshots to reduce risk in migration to a standard virtualized environment
US9292330B2 (en) * 2012-11-29 2016-03-22 International Business Machines Corporation Replacing virtual machine disks
US9742873B2 (en) 2012-11-29 2017-08-22 International Business Machines Corporation Adjustment to managed-infrastructure-as-a-service cloud standard
US9692632B2 (en) 2012-11-29 2017-06-27 International Business Machines Corporation Migration to managed clouds
US9542423B2 (en) 2012-12-31 2017-01-10 Apple Inc. Backup user interface
US9292153B1 (en) 2013-03-07 2016-03-22 Axcient, Inc. Systems and methods for providing efficient and focused visualization of data
US9397907B1 (en) 2013-03-07 2016-07-19 Axcient, Inc. Protection status determinations for computing devices
US9633027B1 (en) * 2013-03-14 2017-04-25 EMC IP Holding Company LLC High speed backup
CN104199894A (zh) * 2014-08-25 2014-12-10 百度在线网络技术(北京)有限公司 一种文件扫描方法及装置
US9703644B1 (en) * 2014-12-09 2017-07-11 EMC IP Holding Company LLC Methods for generating a synthetic backup and for consolidating a chain of backups independent of endianness
US10802928B2 (en) 2015-09-10 2020-10-13 International Business Machines Corporation Backup and restoration of file system
CN106610875A (zh) * 2015-10-23 2017-05-03 先智云端数据股份有限公司 混合备份还原管理系统及其备份方法、还原方法
US10365974B2 (en) 2016-09-16 2019-07-30 Hewlett Packard Enterprise Development Lp Acquisition of object names for portion index objects
US11182256B2 (en) 2017-10-20 2021-11-23 Hewlett Packard Enterprise Development Lp Backup item metadata including range information
US11126451B2 (en) 2017-10-24 2021-09-21 Hewlett Packard Enterprise Development Lp Converting virtual volumes in place
CN108196896B (zh) * 2018-01-09 2021-07-06 新华三云计算技术有限公司 操作系统切换方法及装置
US11221796B2 (en) * 2018-05-01 2022-01-11 Microsoft Technology Licensing, Llc Redirection of I/O requests from local to remote storage locations to improve network performance and data redundancy
US11681589B2 (en) 2021-03-30 2023-06-20 Acronis International Gmbh System and method for distributed-agent backup of virtual machines
US12066898B2 (en) 2021-03-30 2024-08-20 Acronis International Gmbh System and method for distributed-agent restoration of virtual machines

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001312421A (ja) * 2000-04-28 2001-11-09 Toshiba Corp バックアップ方法および記録媒体
US20060206547A1 (en) * 2005-02-08 2006-09-14 Raghavendra Kulkarni Storing and retrieving computer data files using an encrypted network drive file system
JP2008250667A (ja) * 2007-03-30 2008-10-16 Hitachi Ltd 記憶システムおよび記憶制御方法
JP2009238036A (ja) * 2008-03-27 2009-10-15 Nec Corp データバックアップ装置、データバックアップ方法およびプログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3169511B2 (ja) * 1994-03-10 2001-05-28 三菱電機株式会社 メモリ装置及びメモリ管理方法
US6880053B2 (en) * 2002-12-19 2005-04-12 Veritas Operating Corporation Instant refresh of a data volume copy
US7383405B2 (en) 2004-06-30 2008-06-03 Microsoft Corporation Systems and methods for voluntary migration of a virtual machine between hosts with common storage connectivity
US7979404B2 (en) * 2004-09-17 2011-07-12 Quest Software, Inc. Extracting data changes and storing data history to allow for instantaneous access to and reconstruction of any point-in-time data
TW200625066A (en) 2005-01-14 2006-07-16 Farstone Tech Inc Backup/recovery system and method thereof
US8370819B2 (en) 2005-03-25 2013-02-05 Microsoft Corporation Mechanism to store information describing a virtual machine in a virtual disk image
US20070185936A1 (en) * 2006-02-07 2007-08-09 Derk David G Managing deletions in backup sets
US8321377B2 (en) 2006-04-17 2012-11-27 Microsoft Corporation Creating host-level application-consistent backups of virtual machines
US7653794B2 (en) * 2006-05-08 2010-01-26 Microsoft Corporation Converting physical machines to virtual machines
US7613750B2 (en) 2006-05-29 2009-11-03 Microsoft Corporation Creating frequent application-consistent backups efficiently
US8069341B2 (en) 2007-06-29 2011-11-29 Microsoft Corporation Unified provisioning of physical and virtual images
US8032689B2 (en) 2007-12-18 2011-10-04 Hitachi Global Storage Technologies Netherlands, B.V. Techniques for data storage device virtualization
US20090164529A1 (en) * 2007-12-21 2009-06-25 Mccain Greg Efficient Backup of a File System Volume to an Online Server
US7792934B2 (en) * 2008-01-02 2010-09-07 Citrix Systems International Gmbh Loading of server-stored user profile data
US20100332549A1 (en) * 2009-06-26 2010-12-30 Microsoft Corporation Recipes for rebuilding files

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001312421A (ja) * 2000-04-28 2001-11-09 Toshiba Corp バックアップ方法および記録媒体
US20060206547A1 (en) * 2005-02-08 2006-09-14 Raghavendra Kulkarni Storing and retrieving computer data files using an encrypted network drive file system
JP2008250667A (ja) * 2007-03-30 2008-10-16 Hitachi Ltd 記憶システムおよび記憶制御方法
JP2009238036A (ja) * 2008-03-27 2009-10-15 Nec Corp データバックアップ装置、データバックアップ方法およびプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013543179A (ja) * 2010-10-11 2013-11-28 マイクロソフト コーポレーション アイテム単位でのリカバリー
KR101593163B1 (ko) 2014-05-12 2016-02-15 한국전자통신연구원 실 환경 악성코드 분석 장치 및 방법
US11366593B2 (en) 2016-11-16 2022-06-21 International Business Machines Corporation Point-in-time backups via a storage controller to an object storage cloud

Also Published As

Publication number Publication date
HK1172423A1 (zh) 2013-04-19
CN102597983B (zh) 2015-11-25
EP2494456A4 (en) 2016-01-13
CN102597983A (zh) 2012-07-18
US8856080B2 (en) 2014-10-07
WO2011053450A2 (en) 2011-05-05
JP5646639B2 (ja) 2014-12-24
WO2011053450A3 (en) 2011-07-21
EP2494456B1 (en) 2016-09-14
EP2494456A2 (en) 2012-09-05
US20110106768A1 (en) 2011-05-05

Similar Documents

Publication Publication Date Title
JP5646639B2 (ja) メタデータ仮想ハードドライブおよび差分仮想ハードドライブを使用するバックアップ
JP6184957B2 (ja) 効率的なアプリケーション対応の障害復旧
US9703640B2 (en) Method and system of performing incremental SQL server database backups
US9348827B1 (en) File-based snapshots for block-based backups
CN105718548B (zh) 基于去重复存储系统中用于可扩展引用管理的系统和方法
US11093387B1 (en) Garbage collection based on transmission object models
US9996421B2 (en) Data storage method, data storage apparatus, and storage device
CN106407040A (zh) 一种远程数据复制方法及系统
CN106021016A (zh) 在快照之间的虚拟时间点访问
JP2013509646A5 (ja)
JP2014526748A (ja) 効率的なデータ回復
US10628298B1 (en) Resumable garbage collection
JP2008257725A (ja) バックアップ・データの一番上への実装用読込み/書込み、マルチ・バージョン管理ファイル・システム
US10409691B1 (en) Linking backup files based on data partitions
CN106528338A (zh) 一种远程数据复制方法、存储设备及存储系统
CN109739691A (zh) 数据库备份和恢复方法、装置、终端设备及存储介质
CN102799503A (zh) 一种应用于大量小文件的恢复方法
JP6070146B2 (ja) 情報処理装置及びバックアップ方法
US10387262B1 (en) Federated restore of single instance databases and availability group database replicas
CN114026545A (zh) 用于任意时间点复制的快照
CN112231288A (zh) 日志存储方法和装置、介质
CN105760456A (zh) 一种保持数据一致性的方法和装置
CN105993002A (zh) 就地的盘去格式化
US11645333B1 (en) Garbage collection integrated with physical file verification
JP2009163334A (ja) 情報処理装置、プログラム及びバックアップ方法

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130701

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130717

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130918

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130919

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140701

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141105

R150 Certificate of patent or registration of utility model

Ref document number: 5646639

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250