JP5207260B2 - バックアップ操作において重複排除を行うためのソース分類 - Google Patents

バックアップ操作において重複排除を行うためのソース分類 Download PDF

Info

Publication number
JP5207260B2
JP5207260B2 JP2012513987A JP2012513987A JP5207260B2 JP 5207260 B2 JP5207260 B2 JP 5207260B2 JP 2012513987 A JP2012513987 A JP 2012513987A JP 2012513987 A JP2012513987 A JP 2012513987A JP 5207260 B2 JP5207260 B2 JP 5207260B2
Authority
JP
Japan
Prior art keywords
fingerprint
backup
central repository
source data
data segment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012513987A
Other languages
English (en)
Other versions
JP2012529684A (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.)
NortonLifeLock Inc
Original Assignee
Symantec 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 Symantec Corp filed Critical Symantec Corp
Publication of JP2012529684A publication Critical patent/JP2012529684A/ja
Application granted granted Critical
Publication of JP5207260B2 publication Critical patent/JP5207260B2/ja
Expired - Fee Related 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/1448Management of the data involved in backup or backup restore
    • G06F11/1453Management of the data involved in backup or backup restore using de-duplication of the data
    • 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/1464Management of the backup or restore process for networked environments

Description

本発明は、一般にデジタルデータをバックアップすることに関する。
企業ローカルエリアネットワーク(LAN)など、数台のクライアントコンピュータを含む環境では、集中型バックアップシステムがしばしば用いられる。集中型バックアップシステムは、クライアントコンピュータの記憶装置上のデータを自動的にバックアップするようにシステム管理者によって構成される。集中型バックアップシステムは、データセグメント(例えばファイルやファイルの一部)をクライアントコンピュータの記憶装置から中央リポジトリにコピーすることにより、クライアントコンピュータそれぞれのバックアップを定期的に行うバックアップサーバを含むことができる。この中央リポジトリは、十分に大きい記憶容量を有し、多くの場合バックアップサーバ(およびクライアントコンピュータ)から離れて位置する。その結果、バックアップしようとするデータセグメントを、ことによると帯域幅が限られたリンクを介し、かなりの距離にわたって伝送しなければならないことが多々ある。
中央リポジトリに伝送し、その中央リポジトリの中に記憶するデータの量を減らす1つの技法は「重複排除」と呼ばれる。重複排除を利用するバックアップシステムは、バックアップ中にクライアントコンピュータ上で見つけられるデータセグメントが、中央リポジトリの中に既に記憶されている可能性があるという事実をうまく利用する。そのデータセグメントは中央リポジトリの中に既にある場合があり、その理由は、そのデータセグメントを以前のバックアップ中にクライアントコンピュータからバックアップしており、そのクライアントコンピュータ上のデータセグメントがそれ以来変更されていないからである。さらに、そのデータセグメントは中央リポジトリの中に既にある場合があり、その理由は、同じデータセグメントを有する別のクライアントコンピュータからそのデータセグメントを以前バックアップしたからである。
重複排除を使用してクライアントコンピュータからデータセグメントをバックアップするとき、そのデータセグメントを識別する情報をバックアップサーバが生成する。バックアップサーバは、この識別情報を中央リポジトリに伝送し、中央リポジトリは、識別されたデータセグメントを自らが既に含んでいるかどうかを知らせる応答を送る。次いで、そのデータセグメントがリポジトリの中にまだ含まれていないことをその応答が示した場合にのみ、バックアップサーバが、実際のデータセグメントを中央リポジトリに伝送する。その結果、中央リポジトリに伝送されるデータセグメントの数が減る。
しかし、それぞれのデータセグメントごとにバックアップサーバが識別情報を中央リポジトリに伝送するので、バックアップに関与するコンピューティングリソースおよびネットワークリソースは依然としてかなり使用される。さらに、それぞれのデータセグメントごとに、中央リポジトリは応答を生成するためにコンピューティングリソースを使用し、中央リポジトリはその応答をバックアップサーバに伝送する。したがって、重複排除を使用してバックアップを行うために必要な、コンピューティングリソースおよびネットワークリソースを減らすための方法が当技術分野で求められている。
上記の要求は、重複排除を使用して、ソースデータセグメントを含むデータをバックアップソースから中央リポジトリにバックアップするためのシステム、方法、およびコンピュータプログラム製品によって満たされる。一実施形態では、中央リポジトリの中に記憶されたデータセグメントのフィンガープリントを含むフィンガープリントキャッシュを受け取り、そのデータセグメントはバックアップソースから以前バックアップしたものである。ソースデータセグメントのフィンガープリント(例えばハッシュ値)を含む、ソースデータフィンガープリントを生成する。そのソースデータフィンガープリントを、フィンガープリントキャッシュの中のフィンガープリントと比較する。フィンガープリントキャッシュの中にないフィンガープリントに対応するソースデータセグメントは、中央リポジトリの中に現在記憶されていない可能性がある。中央リポジトリをさらにクエリした後、比較することに応答して、ソースデータセグメントのうちの1つまたは複数を、記憶させるために中央リポジトリに送る。
諸図面は、説明のみの目的で一実施形態を示す。本明細書に記載の原理から逸脱することなく、本明細書に示す構造および方法の代替的実施形態を利用できることを、当業者なら以下の説明から容易に理解するであろう。
一実施形態における、重複排除を使用して効率的にクライアントをバックアップするためのバックアップサーバおよび中央リポジトリを含む、ネットワーク化された環境を示す高レベル図である。 一実施形態における、クライアント、バックアップサーバ、または中央リポジトリの一実施形態としての機能を果たすことができる、コンピュータを示すブロック図である。 一実施形態における、クライアント記憶装置をバックアップするためのバックアップサーバの論理ビューを示す図である。 一実施形態における、クライアント記憶装置からバックアップしたデータセグメントを記憶するための、中央リポジトリの論理ビューを示す図である。 一実施形態における、重複排除を使用してクライアント記憶装置から中央リポジトリにデータをバックアップするための方法を示す流れ図である。 一実施形態における、重複排除を使用して中央リポジトリにおいてデータをバックアップするための方法を示す流れ図である。
図1は、一実施形態における、重複排除を使用して効率的にクライアント102をバックアップするためのバックアップサーバ108および中央リポジトリ114を含む、ネットワーク化された環境を示す高レベル図である。バックアップサーバ108とクライアント102とが、ローカルエリアネットワーク106によって接続される。クライアント102は2台しか図示していないが、ネットワーク106上には3台以上あってもよい。バックアップサーバ108は、インターネットなどの広域ネットワーク110を介して中央リポジトリ114にも接続される。ローカルエリアネットワーク106は、広域ネットワーク110よりも、高帯域幅かつ費用のかからない通信を可能にする。一実施形態では、バックアップサーバ108とクライアント102とが物理的にごく近接して位置する一方で、中央リポジトリ114はほかの場所に位置する。一実施形態では、複数のバックアップサーバ108が中央リポジトリ114と通信する。
クライアント102は、ローカルエリアネットワーク106上のユーザワークステーション、サーバ(例えばウェブサーバやアプリケーションサーバ)、ルータなどの、様々なコンピューティングデバイスである。これらのクライアント102は、ハードドライブなどのクライアント記憶装置104を有する。一実施形態(図示せず)では、一部のクライアント記憶装置104がネットワーク106に直接接続される。クライアント記憶装置104は、ファイルシステム内のファイルとして記憶することができるデータを含む。データ損失を防ぐために、クライアント記憶装置104から定期的にデータをバックアップすることが望ましい。オペレーティングシステムのファイルなど、特定の種類のファイルは時が経ってもまれにしか変わらず、環境内の複数のクライアント記憶装置104上に同一のコピーとして存在する。クライアント102またはクライアント記憶装置104は、バックアップソースとも呼ぶ。
バックアップサーバ108は、クライアント記憶装置104上のデータの様々な種類のバックアップを定期的に(例えば毎日)行う。特定のクライアント記憶装置104からバックアップしようとするデータは、ローカルエリアネットワーク106を介し、バックアップサーバ108により、バックアップストリームとも呼ばれるストリームとしてアクセスされ得る。このバックアップストリームは、バックアップサーバ108により複数のデータセグメントへと分割されてもよく、データセグメントは、例えばファイル、ファイルの一部、またはディスクセクタに対応する。バックアップサーバ108は、あるデータセグメントが中央リポジトリの中にまだ記憶されていない場合に、そのセグメントを記憶させるために中央リポジトリ114に送ることにより重複排除技法を利用する。バックアップサーバ108は、現在のバックアップストリームの中で遭遇する可能性がある中央リポジトリの中に現在記憶されているデータセグメントを識別する、フィンガープリントキャッシュを中央リポジトリ114から取得することによってこれを行う。バックアップサーバ108は、各データセグメントに関して中央リポジトリをクエリする必要なしに、このフィンガープリントキャッシュを使用して、現在のバックアップストリームの中のどのデータセグメントを中央リポジトリ114に送るべきか判断する。
中央リポジトリ114は、バックアップ操作中にバックアップサーバ108から受け取ったデータセグメントのコピーを記憶する。中央リポジトリ114は、もともとは何千ものクライアント記憶装置104から提供される何百万のデータセグメントを記憶することができる。中央リポジトリ114の中に記憶されるデータセグメントは、バックアップデータをクライアント記憶装置104に復元する必要がある場合にアクセスされる。バックアップ操作は重複排除を利用するので、中央リポジトリ114の中の単一のデータセグメントが、複数のクライアント記憶装置104上に同時に存在し得る。重複排除を使用するバックアップ操作を支援するために、中央リポジトリ114は、リポジトリの中にどのデータセグメントが現在記憶されているのかについての情報をバックアップサーバ108に提供する。
図2は、一実施形態による、クライアント102、バックアップサーバ108、および/または中央リポジトリ114として機能するためのコンピュータ200の高レベルブロック図である。図示するのは、チップセット204に結合される少なくとも1個のプロセッサ202である。チップセット204には、メモリ206、記憶装置208、キーボード210、グラフィックスアダプタ212、ポインティングデバイス214、およびネットワークアダプタ216も結合される。グラフィックスアダプタ212には、ディスプレイ218が結合される。一実施形態では、チップセット204の機能が、メモリコントローラハブ220および入出力コントローラハブ222によって与えられる。別の実施形態では、メモリ206が、チップセット204の代わりにプロセッサ202に直接結合される。
記憶装置208は、ハードドライブ、コンパクトディスク読出し専用メモリ(CD−ROM)、DVD、固体メモリデバイスなど、任意のコンピュータ可読記憶媒体である。一実施形態では、クライアント102の記憶装置208は、クライアント記憶装置104である。メモリ206は、プロセッサ202が使用する命令およびデータを保持する。ポインティングデバイス214は、マウス、トラックボール、または他の種類のポインティングデバイスとすることができ、コンピュータシステム200にデータを入力するためにキーボード210と一緒に使用する。グラフィックスアダプタ212は、ディスプレイ218上に画像および他の情報を表示させる。ネットワークアダプタ216は、コンピュータシステム200を、ローカルエリアネットワークまたは広域ネットワークに結合する。
当技術分野で知られているように、コンピュータ200は、図2に示すコンポーネントとは異なるコンポーネントおよび/または他のコンポーネントを有することができる。さらに、コンピュータ200は、図示の特定のコンポーネントを欠いてもよい。一実施形態では、バックアップサーバ108として機能するコンピュータ200が、キーボード210、ポインティングデバイス214、グラフィックスアダプタ212、および/またはディスプレイ218を欠く。さらに、記憶装置208は、コンピュータ200の近くにあることができ、かつ/または(ストレージエリアネットワーク(SAN)の中に組み入れられるなど)コンピュータ200から離れていることができる。
当技術分野で知られているように、コンピュータ200は、本明細書に記載の機能を提供するために、コンピュータプログラムモジュールを実行するように適合させられる。本明細書で使用するとき、用語「モジュール」は、指定の機能を提供するために利用されるコンピュータプログラムロジックを指す。したがって、モジュールは、ハードウェア、ファームウェア、および/またはソフトウェアによって実装することができる。一実施形態では、プログラムモジュールを記憶装置208上に記憶し、メモリ206にロードし、プロセッサ202によって実行する。
本明細書に記載するエンティティの諸実施形態は、本明細書に記載するモジュール以外のモジュールおよび/または本明細書に記載するモジュールとは異なるモジュールを含むことができる。さらに、他の実施形態では、これらのモジュールによる機能を他のモジュールまたは異なるモジュールによって実行することができる。さらに本明細書では、明瞭にするためにおよび便宜上、用語「モジュール」を時として省略する。
図3は、一実施形態における、クライアント記憶装置104をバックアップするためのバックアップサーバ108の論理ビューを示す。バックアップサーバ108は、バックアップ仕様310に基づいてバックアップを行う。バックアップ仕様310は、クライアント102のインターネットプロトコル(IP)アドレスやホスト名など、バックアップソースの識別情報(identification)を含む。バックアップ仕様310は、バックアップが完全バックアップか増分バックアップかを示す、バックアップタイプも含むことができる。バックアップ仕様310は、バックアップに関するさらなる詳細を指定するバックアップポリシも含むことができる。バックアップポリシは、バックアップしようとするファイルの種類(例えばテキストファイルや実行不能ファイル)を示すことができる。バックアップポリシは、ファイルシステム内の特定の位置(例えば特定のディレクトリ内)にあるファイルをバックアップすべきであることを示すことができる。バックアップポリシは、バックアップが、(例えばデータセグメントがファイルではなく、ディスクセクタに対応する)未処理形式バックアップ(raw format backup)であるべきことを指定することができる。
バックアップ仕様310は、システム管理者によってバックアップサーバ108に入力することができ、そのバックアップサーバ上に記憶することができる。バックアップサーバ108は、複数のクライアント102をバックアップし、かつ/または特定のクライアントに対して様々な種類のバックアップを行うために、複数のバックアップ仕様310に従って複数のバックアップを行うように構成することができる。バックアップサーバ108は、頻度(例えば毎日)が指定された各バックアップ仕様310に従ってバックアップを行うように構成することもできる。バックアップ仕様310は、バックアップされるデータのソースを分類するので、ソース分類とも呼ばれる。
一実施形態では、バックアップモジュール304は、バックアップ仕様310に基づき、重複排除を使用してバックアップを行うように構成される。バックアップモジュール304は、クライアント記憶装置104からのバックアップストリームを作り出し、そのクライアント記憶装置(または関連するクライアント102)は、バックアップ仕様310の中で識別されるバックアップソースである。バックアップモジュール304は、そのバックアップストリームを複数のデータセグメントへと区分化する。バックアップストリームのコンテンツおよびバックアップストリームの区分化は、バックアップ仕様310の中のバックアップタイプおよびバックアップポリシに基づく。バックアップストリームは制約されず、任意の量のデータを含み、任意の数のセグメントを有することができる。
フィンガープリントモジュール302は、バックアップストリームのデータセグメントのフィンガープリントを含む、現在のフィンガープリントセット312を作成する。データセグメントのフィンガープリントは、そのデータセグメントを一意に識別するが、そのデータセグメント自体よりも著しく小さいデータ片である。一実施形態では、データセグメントのフィンガープリントは、そのデータセグメントのコンテンツのハッシュに基づく値である。フィンガープリントは、メッセージダイジェストアルゴリズム5(MD5)などのハッシュ関数をデータセグメントに適用することにより、データセグメントから生成することができる。
リポジトリ通信モジュール308は、中央リポジトリ114にフィンガープリントキャッシュを要求する。その要求は、バックアップソース、バックアップタイプ、およびバックアップポリシを含むことができる、現在のバックアップ仕様310を含む。中央リポジトリ114は、リポジトリ通信モジュール308によって受け取られるフィンガープリントキャッシュ306を提供することにより応答することができる。フィンガープリントキャッシュ306の中のフィンガープリントはすべて、中央リポジトリ114の中に現在記憶されているデータセグメントに対応する。
フィンガープリントキャッシュ306は、中央リポジトリ114上に記憶される(ことによると何百万の)フィンガープリントのサブセットである。中央リポジトリについての説明の中で以下にさらに論じるように、フィンガープリントキャッシュ306は、現在のバックアップ仕様310に基づいて中央リポジトリ114によって選択される。手短に言えば、フィンガープリントキャッシュ306は、現在のバックアップにおいて見られるのと同じまたは同様のバックアップ仕様310を使用した以前のバックアップにおいて遭遇したデータセグメントに対応するフィンガープリントを含むように選択される。その結果、受け取られるフィンガープリントキャッシュ306は、現在のバックアップにおけるデータセグメントに対応する可能性が高い。バックアップ仕様310が中央リポジトリ114に知られていない場合、中央リポジトリ114は空のフィンガープリントキャッシュ306で応答することができる。
セグメント処理モジュール314は、現在のフィンガープリントセット312の中のフィンガープリントと、フィンガープリントキャッシュ306との比較を行う。現在のフィンガープリントセット312のフィンガープリントが、フィンガープリントキャッシュ306の中にも登場する場合、そのフィンガープリントに対応するデータセグメントは中央リポジトリ114の中に既に記憶されており、中央リポジトリ114に送る必要がない。そのデータセグメントは、同じバックアップ仕様を使用した以前のバックアップから変更されていない可能性がある(例えば、クライアント記憶装置を最後にバックアップしてから変更されていない、クライアント記憶装置104上のファイル)。
現在のフィンガープリントセット312からのフィンガープリントが、フィンガープリントキャッシュ306の中に登場しない場合でも、そのフィンガープリントに対応するデータセグメントが中央リポジトリ114上に既に記憶されていることが依然として起こり得る。そのデータセグメントは、現在のバックアップ仕様310を使用して以前バックアップされなかったが、別のバックアップ仕様を使用して以前バックアップされている(例えば別のクライアント記憶装置からバックアップされている)可能性がある。
セグメント処理モジュール314は、フィンガープリントキャッシュ306の中に登場しない、現在のフィンガープリントセット312からのフィンガープリントを含む要求を、リポジトリ通信モジュール308に、中央リポジトリ114宛てに送信させる。一実施形態では、これらのフィンガープリントのすべてを含む単一の要求を中央リポジトリ114に送ってネットワーク帯域幅を減らす。中央リポジトリ114は、関連するバックアップ仕様に関係なく、これらのフィンガープリントに対応するデータセグメントを自らが含むかどうかを判定するために検索を行う。
中央リポジトリ114は、どのフィンガープリントがその中央リポジトリの中に現在記憶されているデータセグメントに対応するのかを示す、1つまたは複数の応答を送る。フィンガープリントが中央リポジトリの中に記憶されていることをその応答が示す場合、バックアップサーバ108はそのフィンガープリントをさらに処理する必要はない。しかし、フィンガープリントが中央リポジトリ114の中に記憶されていないことをその応答が示す場合、リポジトリ通信モジュール308が、そのフィンガープリントに対応するデータセグメントを、記憶させるために中央リポジトリに送る。
重複排除のためにフィンガープリントキャッシュ306を使用する結果として、通常、バックアップサーバ108から中央リポジトリ114に、個々のフィンガープリントに関する比較的少数の要求しか送られない。多くの場合、フィンガープリントキャッシュ306は、現在のフィンガープリントセット312の中のフィンガープリントの大部分を含む。それは、所与のバックアップ仕様310(例えば所与のクライアントおよびバックアップタイプ)について、特にバックアップを頻繁に行う場合、バックアップを構成するデータセグメントがバックアップごとに概してほとんど変わらないからである。上記に記載したバックアップサーバ108は、このバックアップ履歴をうまく利用してフィンガープリント要求の数を減らす。広域ネットワーク110の全域にわたるネットワーク帯域幅も減らすことができる。フィンガープリントキャッシュ306を使用することにより、個々のフィンガープリントに関する要求を中央リポジトリ114に送ること、およびその中央リポジトリから応答を受け取ることを減らすことができる。さらに、要求を生成し、要求に応答し、応答を処理するために使用される、バックアップサーバ108および中央リポジトリ114上の処理リソースを減らすことができる。
中央リポジトリ114から受け取るフィンガープリントキャッシュ306の中のフィンガープリントが、現在のフィンガープリントセット312の中にない場合、そのフィンガープリントは、現在のバックアップ仕様310にもはや関連しないデータセグメントに対応し得る。例えば、クライアント記憶装置104を最後にバックアップしてから、そのクライアント記憶装置からファイルが削除されている可能性がある。一実施形態では、セグメント処理モジュール314が、現在のフィンガープリントセット312の中にない、フィンガープリントキャッシュ306の中のフィンガープリントを識別する通知メッセージを、リポジトリ通信モジュール308に、中央リポジトリ114宛てに送信させる。このメッセージは、中央リポジトリ114が、自らのデータベースを更新し、もはや必要のない記憶済みデータセグメントを削除するために使用することができる。
フィンガープリントモジュール302は、フィンガープリントがフィンガープリントキャッシュ306の中のフィンガープリントと比較される前に、必ずしもバックアップストリーム内のすべてのデータセグメントのフィンガープリントを含む現在のフィンガープリントセット312を作成するわけではない。上述したように、バックアップストリームは制約されず、多くのデータセグメントを有することができる。クライアント102からデータセグメントを受け取るときに、フィンガープリントモジュール302がデータセグメントのフィンガープリントを作成する、ストリームベース処理手法を使用することができる。これらのフィンガープリントは、フィンガープリントキャッシュ306と突き合わせて比較するために、作成されるに従ってセグメント処理モジュール314に渡すことができる。必要に応じて、特定のフィンガープリントに関する要求を中央リポジトリ114に送ることができる。一実施形態では、データセグメントのストリームベース処理を開始する前に、中央リポジトリ114からフィンガープリントキャッシュ306を受け取る。
一実施形態では、バックアップ仕様310に対応する一連のフィンガープリントキャッシュ306が、リポジトリ通信モジュール308による、フィンガープリントキャッシュを求める要求に応答して中央リポジトリ114から送られる。これは、メモリリソースおよび処理リソースが限られていることがあるバックアップサーバ108に送られる、各フィンガープリントキャッシュ306のサイズを制限するために行うことができる。この実施形態では、第1のフィンガープリントキャッシュ306が、バックアップストリームの最初の部分(例えば最初の10,000個のデータセグメント)を対象として含むことができる。いったんセグメント処理モジュール314がバックアップストリームの最初の部分を処理すると、その一連の中の次のフィンガープリントキャッシュを求める要求を中央リポジトリ114に送ることができ、バックアップストリームの次の部分を処理することができ、その後も同様である。
一実施形態では、図3に示す特定のモジュールを、バックアップサーバ108の代わりにクライアント102上に配置することができる。例えば、フィンガープリントモジュール302を、各クライアント102上に配置することができる。この場合、フィンガープリントセット312はクライアント102上で作成され、さらに処理するためにバックアップサーバ108に送られる。この実施形態では、実際のデータセグメントではなくフィンガープリントを伝送するので、ローカルエリアネットワーク106上でより少ないデータを伝送することができる。しかし、ローカルエリアネットワーク106は典型的には、通信に費用がかからず、そのためネットワーク上でデータセグメントを伝送することが許容される高帯域幅ネットワークである。一実施形態では、バックアップサーバ108のコンポーネントのすべてがクライアント102上にある。この実施形態では、クライアント102が中央リポジトリ114と直接通信し、バックアップ操作のために別個のバックアップサーバ108は使用しない。
図4は、一実施形態における、クライアント記憶装置104からバックアップしたデータセグメントを記憶するための、中央リポジトリ114の論理ビューを示す。セグメント記憶域402は、バックアップしたデータセグメントを含み、何百万のデータセグメントを含むことができる。フィンガープリント記憶域410は、セグメント記憶域402内のセグメントのそれぞれに対応するフィンガープリントを含む。
一実施形態では、データベース404が、セグメント記憶域402の中のデータセグメントのインデックス、およびフィンガープリント記憶域410の中の対応するフィンガープリントのインデックスを含み、そのインデックスは、バックアップ仕様のパラメータに基づくクエリを可能にする。例えばクエリは、特定のバックアップタイプ(例えば完全)およびバックアップポリシ(例えば実行不能ファイル)とともに、特定のバックアップソース(例えばクライアントのホスト名)を含むことができる。データベース404は、バックアップ仕様310に関連するフィンガープリントおよび/またはデータセグメントを返す。データベース404は、フィンガープリント記憶域410の中に、クエリされた特定のフィンガープリントが含まれているかどうかを効率的に判定することもできる。データベース404は、各データセグメントを現在有しているクライアント記憶装置104の数を示す、各データセグメントおよび対応するフィンガープリントについての参照カウントを保持することもできる。参照カウントがゼロに達すると、データセグメントおよびフィンガープリントを、セグメント記憶域402およびフィンガープリント記憶域410からそれぞれ除去することができる。
バックアップサーバ通信モジュール408は、バックアップサーバ108との通信を処理する。通信の一種は、バックアップ仕様310に基づいてフィンガープリントキャッシュを求める、バックアップサーバ108から受け取る要求である。バックアップサーバ通信モジュール408は、この要求をフィンガープリントキャッシュ生成器406に渡す。
フィンガープリントキャッシュ生成器406は、バックアップ仕様310のパラメータを使ってデータベース404をクエリして、1組のフィンガープリントを生成する。フィンガープリントキャッシュ生成器406は、その1組のフィンガープリントをフィンガープリントキャッシュ306としてバックアップサーバ通信モジュール408に送り、バックアップサーバ通信モジュール408は、そのフィンガープリントキャッシュ306をバックアップサーバ108に送る。一実施形態では、フィンガープリントキャッシュ生成器406が、上記に説明したようにバックアップサーバに送られる、一連のサイズが制限されたフィンガープリントキャッシュ306を作成する。
新たなバックアップ仕様を使ったバックアップが行われている場合、バックアップ仕様310のパラメータを使ってデータベース404をクエリすることは、不一致をもたらす結果となり得る。この場合、フィンガープリントキャッシュ生成器406は、空のフィンガープリントキャッシュ306を生成することができる。一実施形態では、フィンガープリントキャッシュ生成器406は、空のフィンガープリントキャッシュ306を返す代わりに、バックアップに含まれる可能性があるフィンガープリントを含む、新たなフィンガープリントキャッシュを初期設定する。データベース404のクエリは、バックアップ仕様310のパラメータのすべてよりも少ないパラメータを使用して行うことができ、または異なるが同様のパラメータを使用して行うことができる。
バックアップサーバ通信モジュール408は、中央リポジトリ114の中に特定のフィンガープリントがあるかどうかを判定するための、バックアップサーバ108からの要求も処理する。バックアップサーバ通信モジュール408は、特定のフィンガープリントを使ってデータベース404をクエリし、その結果をバックアップサーバ108に送ることができる。また、バックアップサーバ通信モジュール408は、データベース404を更新するために、フィンガープリントを更新モジュール412に渡すことができる。中央リポジトリ114にデータセグメントを追加する必要があるとバックアップサーバ108が判定する場合、バックアップサーバ通信モジュール408は、バックアップサーバ108から実際のデータセグメントを受け取ることもできる。バックアップサーバ通信モジュール408は、これらのデータセグメントを更新モジュール412に渡す。また、バックアップサーバ通信モジュール408は、フィンガープリントキャッシュ306の中にはあったが、現在のフィンガープリントセット312の中にはなかったフィンガープリントのリストをバックアップサーバ108から受け取ることができる。バックアップサーバ通信モジュール408は、これらのフィンガープリントを更新モジュール412に渡す。
更新モジュール412は、バックアップサーバ108から受け取る通信に基づき、データベース404、セグメント記憶域402、およびフィンガープリント記憶域410を更新する。上述したように、これらの通信はバックアップサーバ通信モジュール408から更新モジュール412に渡される。特定のフィンガープリントの有無に関するバックアップサーバ108からの要求は、その特定のフィンガープリントが、提供されたフィンガープリントキャッシュ306の中になかったので、現在のバックアップ仕様310に今のところ関連していないことを意味する。特定のフィンガープリントの一部は、(対応するデータセグメントがセグメント記憶域402の中にある状態で)フィンガープリント記憶域410の中に既にある場合がある。これらのフィンガープリントについて、既に関連付けられているバックアップ仕様のパラメータとの関連を保持しながら、これらのフィンガープリントが現在のバックアップ仕様310のパラメータに関連するように、更新モジュール412がデータベース404を更新する。
バックアップサーバ108がデータセグメントを、記憶させるために中央リポジトリ114に送ると、更新モジュール412はそのセグメントをセグメント記憶域402に追加し、対応するフィンガープリントをフィンガープリント記憶域410に追加する。このフィンガープリントは、データセグメントと一緒に送られていてもよく、または中央リポジトリ114の中のフィンガープリントモジュール302(図示せず)によって生成されてもよい。更新モジュール412は、現在のバックアップ仕様のパラメータが、新たに追加したデータセグメントおよびフィンガープリントを参照するようにデータベース404も更新する。
フィンガープリントキャッシュ306の中に含まれていたが、バックアップストリームのデータセグメントの中では見つからなかったフィンガープリントのリストを含む、バックアップサーバ108からのメッセージは、これらのフィンガープリントが現在のバックアップ仕様310にもはや関連しないことを意味する。更新モジュール412は、現在のバックアップ仕様のパラメータと、データベース404内の指示されたフィンガープリントとの間の関連付けを除去することができる。更新モジュールが行うこの保守操作は、古いフィンガープリントがフィンガープリントキャッシュの中に含まれるのを有益に防ぐことができる。
バックアップサーバ108および中央リポジトリ114は、クライアント102に対してバックアップ復元操作を行うためのモジュールも含むことができる。これらのモジュールは本明細書には記載されないが、当技術分野で知られている技法を使用して実装することができる。
図5は、一実施形態における、重複排除を使用してクライアント記憶装置104から中央リポジトリ114にデータをバックアップするための方法を示す流れ図である。バックアップサーバ108が、バックアップ仕様310を受け取る(502)。このバックアップ仕様310は、システム管理者によって作成されていてもよく、バックアップソース、バックアップタイプ、およびバックアップポリシを識別することができる。バックアップ仕様310に基づき、リポジトリ通信モジュール308が中央リポジトリ114にフィンガープリントキャッシュを要求する。中央リポジトリ114が応答し、フィンガープリントキャッシュ306が受け取られる(504)。バックアップ仕様310に基づき、バックアップモジュール304がクライアント記憶装置104からのバックアップストリームを引き起こし、フィンガープリントモジュール302が、そのバックアップストリームの中のデータセグメントのフィンガープリントを生成する(506)。
そのデータセグメントのフィンガープリントを、フィンガープリントキャッシュ306の中のフィンガープリントと比較し、キャッシュ内で見つからないデータセグメントフィンガープリントを決定する(508)。リポジトリ通信モジュール308が、中央リポジトリに要求を送ることにより、これらのデータセグメントフィンガープリントに関して中央リポジトリ114をクエリする(510)。中央リポジトリ114はその要求に応答し、それらのデータセグメントフィンガープリントのうちのどれが、中央リポジトリの中に既に記憶されているデータセグメントに対応するのかを知らせる。バックアップサーバは、別のデータセグメント(すなわち中央リポジトリの中にまだ記憶されていないデータセグメント)を、記憶させるために中央リポジトリ114に送る(12)。
図6は、一実施形態における、重複排除を使用して中央リポジトリ114においてデータをバックアップするための方法を示す流れ図である。中央リポジトリ114が、バックアップサーバ108からバックアップ仕様を受け取る(602)。フィンガープリントキャッシュ生成器406が、バックアップ仕様310のパラメータを使ってデータベース404をクエリすることにより、フィンガープリントキャッシュ306を生成する(604)。バックアップサーバ通信モジュール408が、そのフィンガープリントキャッシュをバックアップサーバ108に送る(606)。バックアップサーバ108は、そのフィンガープリントキャッシュ306を処理し、個々のフィンガープリントに関するクエリを送り、そのクエリは中央リポジトリ114によって受け取られる(608)。バックアップサーバ通信モジュール408が、個々のフィンガープリントについてデータベース404内の探索を行い(610)、バックアップサーバ108に応答を送る。バックアップサーバ108はその応答を処理し、受け取られて(612)記憶されるデータセグメントを中央リポジトリ114に送る。個々のフィンガープリントに関するクエリおよび受け取ったデータセグメントに基づき、更新モジュール412がデータベース404を更新する(614)
上記の説明は、好ましい実施形態の操作を例示するために含めたものであり、本発明の範囲を限定することを意図するものではない。本発明の範囲は特許請求の範囲によってのみ限定される。上記の解説から、本発明の趣旨および範囲に依然として包含される多くの改変形態が当業者に明らかになるであろう。

Claims (11)

  1. 重複排除を使用してバックアップソースから中央リポジトリにデータをバックアップするための、コンピュータによって実施される方法であって、前記データはソースデータセグメントを含む、方法であり、
    前記バックアップソース、バックアップタイプ、およびバックアップポリシを識別するパラメータを有するバックアップ仕様を受け取るステップと、
    前記バックアップ仕様の前記パラメータに応答して、前記中央リポジトリにフィンガープリントキャッシュを要求するステップであって、前記中央リポジトリは、前記バックアップ仕様の前記パラメータに応答してデータベースをクエリして、前記バックアップ仕様に関連しかつ前記フィンガープリントキャッシュを形成する、1組のフィンガープリントを生成することにより、前記フィンガープリントキャッシュを生成するように構成される、要求するステップと、
    前記要求するステップに応答して、前記中央リポジトリの中に記憶されたデータセグメントのフィンガープリントを含む前記フィンガープリントキャッシュを受け取るステップと、
    前記ソースデータセグメントのフィンガープリントを含む、ソースデータフィンガープリントを生成するステップと、
    前記ソースデータセグメントのフィンガープリントを含む、前記生成したソースデータフィンガープリントを記憶するステップと、
    前記ソースデータフィンガープリントを、前記フィンガープリントキャッシュの中の前記フィンガープリントと比較するステップと、
    前記フィンガープリントキャッシュの中のどのフィンガープリントとも一致しない前記比較したソースデータフィンガープリントからソースデータフィンガープリントを識別するステップと、
    前記識別したソースデータフィンガープリントを使って前記中央リポジトリをクエリするステップであって、前記識別したソースデータフィンガープリントに対応するデータセグメントが前記中央リポジトリの中に記憶されているかどうかを判定する、クエリするステップと、
    前記識別したソースデータフィンガープリントに対応する前記データセグメントが前記中央リポジトリの中に記憶されていないことに応答して、前記対応するソースデータセグメントを、記憶させるために前記中央リポジトリに送るステップと
    を含む、コンピュータによって実施される方法。
  2. データセグメントのフィンガープリントが、前記データセグメントのハッシュ値を含む、請求項1に記載のコンピュータによって実施される方法。
  3. 一連のフィンガープリントキャッシュが受け取られ、前記一連のフィンガープリントキャッシュのそれぞれが、前記バックアップ仕様に関連するデータセグメントの前記フィンガープリントの一部を含み、前記ソースデータフィンガープリントの異なる部分が、前記一連のフィンガープリントキャッシュのそれぞれと比較される、請求項1に記載のコンピュータによって実施される方法。
  4. 前記中央リポジトリの前記データベースを更新するために、前記ソースデータフィンガープリントの中では見つからない、前記フィンガープリントキャッシュの中のフィンガープリントを前記中央リポジトリに送るステップ
    をさらに含む、請求項1に記載のコンピュータによって実施される方法。
  5. 重複排除を使用してバックアップソースから中央リポジトリにデータをバックアップするためのコンピュータシステムであって、前記データはソースデータセグメントを含む、コンピュータシステムであり、
    前記バックアップソース、バックアップタイプ、およびバックアップポリシを識別するパラメータを有するバックアップ仕様を受け取るステップ、
    前記バックアップ仕様の前記パラメータに応答して、前記中央リポジトリにフィンガープリントキャッシュを要求するステップであって、前記中央リポジトリは、前記バックアップ仕様の前記パラメータに応答してデータベースをクエリして、前記バックアップ仕様に関連しかつ前記フィンガープリントキャッシュを形成する、1組のフィンガープリントを生成することにより、前記フィンガープリントキャッシュを生成するように構成される、要求するステップ、
    前記要求するステップに応答して、前記中央リポジトリの中に記憶されたデータセグメントのフィンガープリントを含む前記フィンガープリントキャッシュを受け取るステップ、
    前記ソースデータセグメントのフィンガープリントを含む、ソースデータフィンガープリントを生成するステップ、
    前記ソースデータセグメントのフィンガープリントを含む、前記生成したソースデータフィンガープリントを記憶するステップ、
    前記ソースデータフィンガープリントを、前記フィンガープリントキャッシュの中の前記フィンガープリントと比較するステップ、
    前記フィンガープリントキャッシュの中のどのフィンガープリントとも一致しない前記比較したソースデータフィンガープリントからソースデータフィンガープリントを識別するステップ、
    前記識別したソースデータフィンガープリントを使って前記中央リポジトリをクエリするステップであって、前記識別したソースデータフィンガープリントに対応するデータセグメントが前記中央リポジトリの中に記憶されているかどうかを判定する、クエリするステップ、
    前記識別したソースデータフィンガープリントに対応する前記データセグメントが前記中央リポジトリの中に記憶されていないことに応答して、前記対応するソースデータセグメントを、記憶させるために前記中央リポジトリに送るステップ
    を実施するための実行可能コンピュータプログラムモジュールを記憶するコンピュータ可読記憶媒体と、
    前記コンピュータプログラムモジュールを実行するためのプロセッサと
    を備える、コンピュータシステム。
  6. データセグメントのフィンガープリントが、前記データセグメントのハッシュ値を含む、請求項5に記載のコンピュータシステム。
  7. 一連のフィンガープリントキャッシュが受け取られ、前記一連のフィンガープリントキャッシュのそれぞれが、前記バックアップ仕様に関連するデータセグメントの前記フィンガープリントの一部を含み、前記ソースデータフィンガープリントの異なる部分が、前記一連のフィンガープリントキャッシュのそれぞれと比較される、請求項5に記載のコンピュータシステム。
  8. 前記コンピュータプログラムモジュールが、
    前記中央リポジトリのデータベースを更新するために、前記ソースデータフィンガープリントの中では見つからない、前記フィンガープリントキャッシュの中のフィンガープリントを前記中央リポジトリに送るステップ
    をさらに実施するために構成されている、請求項5に記載のコンピュータシステム。
  9. 重複排除を使用してバックアップソースから中央リポジトリにデータをバックアップするための実行可能コンピュータプログラム命令を有するコンピュータプログラムであって、前記データはソースデータセグメントを含む、コンピュータプログラムであり、前記コンピュータプログラム命令が、
    前記バックアップソース、バックアップタイプ、およびバックアップポリシを識別するパラメータを有するバックアップ仕様を受け取るステップと、
    前記バックアップ仕様の前記パラメータに応答して、前記中央リポジトリにフィンガープリントキャッシュを要求するステップであって、前記中央リポジトリは、前記バックアップ仕様の前記パラメータに応答してデータベースをクエリして、前記バックアップ仕様に関連しかつ前記フィンガープリントキャッシュを形成する、1組のフィンガープリントを生成することにより、前記フィンガープリントキャッシュを生成するように構成される、要求するステップと、
    前記要求するステップに応答して、前記中央リポジトリの中に記憶されたデータセグメントのフィンガープリントを含む前記フィンガープリントキャッシュを受け取るステップと、
    前記ソースデータセグメントのフィンガープリントを含む、ソースデータフィンガープリントを生成するステップと、
    前記ソースデータセグメントのフィンガープリントを含む、前記生成したソースデータフィンガープリントを記憶するステップと、
    前記ソースデータフィンガープリントを、前記フィンガープリントキャッシュの中の前記フィンガープリントと比較するステップと、
    前記フィンガープリントキャッシュの中のどのフィンガープリントとも一致しない前記比較したソースデータフィンガープリントからソースデータフィンガープリントを識別するステップと、
    前記識別したソースデータフィンガープリントを使って前記中央リポジトリをクエリするステップであって、前記識別したソースデータフィンガープリントに対応するデータセグメントが前記中央リポジトリの中に記憶されているかどうかを判定する、クエリするステップと、
    前記識別したソースデータフィンガープリントに対応する前記データセグメントが前記中央リポジトリの中に記憶されていないことに応答して、前記対応するソースデータセグメントを、記憶させるために前記中央リポジトリに送るステップと
    コンピュータに実施させるために構成されている、コンピュータプログラム。
  10. 一連のフィンガープリントキャッシュが受け取られ、前記一連のフィンガープリントキャッシュのそれぞれが、前記バックアップ仕様に関連するデータセグメントの前記フィンガープリントの一部を含み、前記ソースデータフィンガープリントの異なる部分が、前記一連のフィンガープリントキャッシュのそれぞれと比較される、請求項9に記載のコンピュータプログラム。
  11. 前記コンピュータプログラム命令が、
    前記中央リポジトリのデータベースを更新するために、前記ソースデータフィンガープリントの中では見つからない、前記フィンガープリントキャッシュの中のフィンガープリントを前記中央リポジトリに送るステップ
    コンピュータにさらに実施させるために構成されている、請求項9に記載のコンピュータプログラム。
JP2012513987A 2009-06-08 2010-05-26 バックアップ操作において重複排除を行うためのソース分類 Expired - Fee Related JP5207260B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/480,587 2009-06-08
US12/480,587 US8255365B2 (en) 2009-06-08 2009-06-08 Source classification for performing deduplication in a backup operation
PCT/US2010/036260 WO2010144260A1 (en) 2009-06-08 2010-05-26 Source classification for performing deduplication in a backup operation

Publications (2)

Publication Number Publication Date
JP2012529684A JP2012529684A (ja) 2012-11-22
JP5207260B2 true JP5207260B2 (ja) 2013-06-12

Family

ID=42543153

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012513987A Expired - Fee Related JP5207260B2 (ja) 2009-06-08 2010-05-26 バックアップ操作において重複排除を行うためのソース分類

Country Status (5)

Country Link
US (1) US8255365B2 (ja)
EP (1) EP2441002B1 (ja)
JP (1) JP5207260B2 (ja)
CN (1) CN102460398B (ja)
WO (1) WO2010144260A1 (ja)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8484162B2 (en) 2008-06-24 2013-07-09 Commvault Systems, Inc. De-duplication systems and methods for application-specific data
US8930306B1 (en) 2009-07-08 2015-01-06 Commvault Systems, Inc. Synchronized data deduplication
US8572163B1 (en) * 2009-08-31 2013-10-29 Symantec Corporation Systems and methods for deduplicating data based on performance of a deduplication system
US8458131B2 (en) * 2010-02-26 2013-06-04 Microsoft Corporation Opportunistic asynchronous de-duplication in block level backups
US8935487B2 (en) * 2010-05-05 2015-01-13 Microsoft Corporation Fast and low-RAM-footprint indexing for data deduplication
US9053032B2 (en) 2010-05-05 2015-06-09 Microsoft Technology Licensing, Llc Fast and low-RAM-footprint indexing for data deduplication
US20110276744A1 (en) 2010-05-05 2011-11-10 Microsoft Corporation Flash memory cache including for use with persistent key-value store
US8214428B1 (en) * 2010-05-18 2012-07-03 Symantec Corporation Optimized prepopulation of a client side cache in a deduplication environment
US8577851B2 (en) 2010-09-30 2013-11-05 Commvault Systems, Inc. Content aligned block-based deduplication
US8578109B2 (en) 2010-09-30 2013-11-05 Commvault Systems, Inc. Systems and methods for retaining and using data block signatures in data protection operations
US8280860B2 (en) * 2010-11-15 2012-10-02 Quantum Corporation Method for increasing deduplication speed on data streams fragmented by shuffling
US8577850B1 (en) * 2010-11-15 2013-11-05 Symantec Corporation Techniques for global data deduplication
US8682873B2 (en) 2010-12-01 2014-03-25 International Business Machines Corporation Efficient construction of synthetic backups within deduplication storage system
US8954446B2 (en) 2010-12-14 2015-02-10 Comm Vault Systems, Inc. Client-side repository in a networked deduplicated storage system
US9020900B2 (en) 2010-12-14 2015-04-28 Commvault Systems, Inc. Distributed deduplicated storage system
TWI420306B (zh) * 2010-12-22 2013-12-21 Inventec Corp 支援重複數據刪除程序的數據區塊查詢方法
US9110936B2 (en) 2010-12-28 2015-08-18 Microsoft Technology Licensing, Llc Using index partitioning and reconciliation for data deduplication
US8874520B2 (en) 2011-02-11 2014-10-28 Symantec Corporation Processes and methods for client-side fingerprint caching to improve deduplication system backup performance
FR2972546B1 (fr) * 2011-03-07 2013-03-08 Bull Sas Procedes, dispositifs et programmes d'ordinateur pour optimiser la replication de donnees dans des systemes informatiques
CN102810075B (zh) * 2011-06-01 2014-11-19 英业达股份有限公司 事务型系统处理方法
US8515922B2 (en) 2011-06-17 2013-08-20 International Business Machines Corporation Deduplicated caching of queries for green IT management
US8725970B2 (en) * 2011-08-23 2014-05-13 Ca, Inc. System and method for backing up data
CN102523112B (zh) * 2011-12-14 2015-09-09 华为技术有限公司 信息处理方法及设备
US8631052B1 (en) 2011-12-22 2014-01-14 Emc Corporation Efficient content meta-data collection and trace generation from deduplicated storage
US8914338B1 (en) * 2011-12-22 2014-12-16 Emc Corporation Out-of-core similarity matching
US8667032B1 (en) 2011-12-22 2014-03-04 Emc Corporation Efficient content meta-data collection and trace generation from deduplicated storage
US9256609B2 (en) * 2012-03-08 2016-02-09 Dell Products L.P. Fixed size extents for variable size deduplication segments
US9021203B2 (en) 2012-05-07 2015-04-28 International Business Machines Corporation Enhancing tiering storage performance
US9645944B2 (en) 2012-05-07 2017-05-09 International Business Machines Corporation Enhancing data caching performance
US9110815B2 (en) * 2012-05-07 2015-08-18 International Business Machines Corporation Enhancing data processing performance by cache management of fingerprint index
US9218375B2 (en) * 2012-06-13 2015-12-22 Commvault Systems, Inc. Dedicated client-side signature generator in a networked storage system
JP2014048750A (ja) * 2012-08-29 2014-03-17 Fujitsu Ltd 情報資源管理プログラム、方法、及び装置
US9298723B1 (en) * 2012-09-19 2016-03-29 Amazon Technologies, Inc. Deduplication architecture
CN107426183B (zh) * 2012-09-24 2021-02-09 华为技术有限公司 一种媒体文件消重的方法、服务器及系统
US9495379B2 (en) * 2012-10-08 2016-11-15 Veritas Technologies Llc Locality aware, two-level fingerprint caching
JP5774794B2 (ja) * 2012-12-05 2015-09-09 株式会社日立製作所 ストレージシステム及びストレージシステムの制御方法
CN103873507A (zh) * 2012-12-12 2014-06-18 鸿富锦精密工业(深圳)有限公司 数据分块上传与存储系统及方法
US9633033B2 (en) 2013-01-11 2017-04-25 Commvault Systems, Inc. High availability distributed deduplicated storage system
US20140214768A1 (en) * 2013-01-31 2014-07-31 Hewlett-Packard Development Company, L.P. Reducing backup bandwidth by remembering downloads
US9594643B2 (en) * 2013-03-06 2017-03-14 Quest Software Inc. Handling restores in an incremental backup storage system
WO2015100639A1 (zh) * 2013-12-31 2015-07-09 华为技术有限公司 一种去重方法装置与系统
US9633056B2 (en) 2014-03-17 2017-04-25 Commvault Systems, Inc. Maintaining a deduplication database
US10380072B2 (en) 2014-03-17 2019-08-13 Commvault Systems, Inc. Managing deletions from a deduplication database
WO2015183269A1 (en) * 2014-05-29 2015-12-03 Hewlett-Packard Development Company, L.P. Backup storage
US9852026B2 (en) 2014-08-06 2017-12-26 Commvault Systems, Inc. Efficient application recovery in an information management system based on a pseudo-storage-device driver
US11249858B2 (en) 2014-08-06 2022-02-15 Commvault Systems, Inc. Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host
CN107077456B (zh) * 2014-09-25 2020-06-26 慧与发展有限责任合伙企业 用于存储数据的装置、方法和存储介质
US9575673B2 (en) 2014-10-29 2017-02-21 Commvault Systems, Inc. Accessing a file system using tiered deduplication
US10339106B2 (en) 2015-04-09 2019-07-02 Commvault Systems, Inc. Highly reusable deduplication database after disaster recovery
US20160350391A1 (en) 2015-05-26 2016-12-01 Commvault Systems, Inc. Replication using deduplicated secondary copy data
US9766825B2 (en) 2015-07-22 2017-09-19 Commvault Systems, Inc. Browse and restore for block-level backups
US10592357B2 (en) 2015-12-30 2020-03-17 Commvault Systems, Inc. Distributed file system in a distributed deduplication data storage system
CN107133552B (zh) * 2016-02-29 2021-11-16 宇龙计算机通信科技(深圳)有限公司 一种指纹信息备份方法及装置
US10296368B2 (en) 2016-03-09 2019-05-21 Commvault Systems, Inc. Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount)
US10846024B2 (en) 2016-05-16 2020-11-24 Commvault Systems, Inc. Global de-duplication of virtual disks in a storage platform
US10795577B2 (en) 2016-05-16 2020-10-06 Commvault Systems, Inc. De-duplication of client-side data cache for virtual disks
WO2017211651A1 (en) * 2016-06-08 2017-12-14 Thomson Licensing Devices and methods for core dump deduplication
CN106407933A (zh) * 2016-09-21 2017-02-15 国网四川省电力公司电力科学研究院 一种电力系统标准化数据整合系统
US10740193B2 (en) 2017-02-27 2020-08-11 Commvault Systems, Inc. Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount
EP3635529B1 (en) * 2017-06-08 2024-02-14 Hitachi Vantara LLC Deduplicating distributed erasure coded objects
US10664352B2 (en) 2017-06-14 2020-05-26 Commvault Systems, Inc. Live browsing of backed up data residing on cloned disks
US20190034306A1 (en) * 2017-07-31 2019-01-31 Intel Corporation Computer System, Computer System Host, First Storage Device, Second Storage Device, Controllers, Methods, Apparatuses and Computer Programs
US20200034244A1 (en) * 2018-07-26 2020-01-30 EMC IP Holding Company LLC Detecting server pages within backups
CN109101365A (zh) * 2018-08-01 2018-12-28 南京壹进制信息技术股份有限公司 一种基于源端数据重删的数据备份和恢复方法
US11010258B2 (en) 2018-11-27 2021-05-18 Commvault Systems, Inc. Generating backup copies through interoperability between components of a data storage management system and appliances for data storage and deduplication
US11698727B2 (en) 2018-12-14 2023-07-11 Commvault Systems, Inc. Performing secondary copy operations based on deduplication performance
US11940956B2 (en) 2019-04-02 2024-03-26 Hewlett Packard Enterprise Development Lp Container index persistent item tags
US20200327017A1 (en) 2019-04-10 2020-10-15 Commvault Systems, Inc. Restore using deduplicated secondary copy data
US11463264B2 (en) 2019-05-08 2022-10-04 Commvault Systems, Inc. Use of data block signatures for monitoring in an information management system
US11520744B1 (en) * 2019-08-21 2022-12-06 EMC IP Holding Company LLC Utilizing data source identifiers to obtain deduplication efficiency within a clustered storage environment
US11442896B2 (en) 2019-12-04 2022-09-13 Commvault Systems, Inc. Systems and methods for optimizing restoration of deduplicated data stored in cloud-based storage resources
US11687424B2 (en) 2020-05-28 2023-06-27 Commvault Systems, Inc. Automated media agent state management

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453325B1 (en) * 1995-05-24 2002-09-17 International Business Machines Corporation Method and means for backup and restoration of a database system linked to a system for filing data
US5873101A (en) * 1997-02-10 1999-02-16 Oracle Corporation Database backup/restore and bulk data transfer
JP4176181B2 (ja) * 1998-03-13 2008-11-05 富士通株式会社 電子財布管理システム、端末装置及び電子財布管理プログラムを記録したコンピュータ読み取り可能な記録媒体
CN1294514C (zh) * 2001-08-20 2007-01-10 信息中心科技有限公司 高效的计算机文件备份系统和方法
US8205009B2 (en) * 2002-04-25 2012-06-19 Emc Israel Development Center, Ltd. Apparatus for continuous compression of large volumes of data
US7065619B1 (en) * 2002-12-20 2006-06-20 Data Domain, Inc. Efficient data storage system
US6928526B1 (en) * 2002-12-20 2005-08-09 Datadomain, Inc. Efficient data storage system
US7318076B2 (en) * 2003-01-22 2008-01-08 Intelitrac, Inc. Memory-resident database management system and implementation thereof
ATE457493T1 (de) * 2004-01-09 2010-02-15 T W Storage Inc Verfahren und vorrichtung zum durchsuchen von backup-daten auf der basis von inhalt und attributen
US20050223277A1 (en) * 2004-03-23 2005-10-06 Eacceleration Corporation Online storage system
US7277905B2 (en) * 2004-03-31 2007-10-02 Microsoft Corporation System and method for a consistency check of a database backup
US7814056B2 (en) * 2004-05-21 2010-10-12 Computer Associates Think, Inc. Method and apparatus for data backup using data blocks
EP1967952B1 (en) 2004-05-21 2011-01-19 Computer Associates Think, Inc. Method and apparatus for storage backup
US7627776B2 (en) * 2004-11-16 2009-12-01 Petruzzo Stephen E Data backup method
US7440979B2 (en) * 2005-03-30 2008-10-21 Sap Ag Snapshots for instant backup in a database management system
US7840539B2 (en) * 2006-01-24 2010-11-23 International Business Machines Corporation Method and system for building a database from backup data images
US7562186B2 (en) * 2006-04-11 2009-07-14 Data Domain, Inc. Efficient data storage using resemblance of data segments
US7441092B2 (en) * 2006-04-20 2008-10-21 Microsoft Corporation Multi-client cluster-based backup and restore
JP4977554B2 (ja) * 2007-08-22 2012-07-18 株式会社日立製作所 キャッシュメモリ上のデータをバックアップする機能を備えたストレージシステム
US7814074B2 (en) * 2008-03-14 2010-10-12 International Business Machines Corporation Method and system for assuring integrity of deduplicated data
US8060715B2 (en) * 2009-03-31 2011-11-15 Symantec Corporation Systems and methods for controlling initialization of a fingerprint cache for data deduplication
US8965852B2 (en) * 2009-11-24 2015-02-24 Dell Products L.P. Methods and apparatus for network efficient deduplication

Also Published As

Publication number Publication date
US20100312752A1 (en) 2010-12-09
EP2441002A1 (en) 2012-04-18
US8255365B2 (en) 2012-08-28
CN102460398B (zh) 2015-05-27
EP2441002B1 (en) 2013-04-24
CN102460398A (zh) 2012-05-16
WO2010144260A1 (en) 2010-12-16
JP2012529684A (ja) 2012-11-22

Similar Documents

Publication Publication Date Title
JP5207260B2 (ja) バックアップ操作において重複排除を行うためのソース分類
EP2904495B1 (en) Locality aware, two-level fingerprint caching
US9792306B1 (en) Data transfer between dissimilar deduplication systems
EP2673710B1 (en) Processes and methods for client-side fingerprint caching to improve deduplication system backup performance
US8255366B1 (en) Segment-based method for efficient file restoration
US10983867B1 (en) Fingerprint change during data operations
US20080147754A1 (en) Systems and methods for facilitating storage operations using network attached storage devices
WO2014130800A2 (en) Deduplication storage system with efficient reference updating and space reclamation
US20140358858A1 (en) Determining A Schedule For A Job To Replicate An Object Stored On A Storage Appliance
US10585752B1 (en) Intelligent snapshot cataloging using separate logical containers to reduce snapshot query times
US8438130B2 (en) Method and system for replicating data
US20230350863A1 (en) Methods and systems for scalable deduplication
US8914324B1 (en) De-duplication storage system with improved reference update efficiency
US11675668B2 (en) Leveraging a cloud-based object storage to efficiently manage data from a failed backup operation

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120822

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120822

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20120822

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20120913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120925

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121220

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130212

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

Free format text: PAYMENT UNTIL: 20160301

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371