説明

データオブジェクトのサーチ及び復元

【課題】データのサーチ法を提供する。
【解決手段】データのサーチ法を開示する。サーチ可能なインデックスを使用して、もしあれば、1組のバックアップデータを含むどのデータオブジェクトがサーチクエリーに応答するかを判断する。サーチクエリーに対して、サーチ結果が生成される。サーチ結果は、サーチクエリーに応答する第1のデータオブジェクトが、サーチクエリーに応答する1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含む場合に、第1のデータオブジェクトが、この1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含むことを示すデータを含む。

【発明の詳細な説明】
【背景技術】
【0001】
データオブジェクトやファイルシステム内のファイルのような他の記憶データは、データの生成及び使用中に何度も修正及び上書きすることができる。バックアップアプリケーション又はシステムは、1組のデータ、例えばファイルが関連バックアップオペレーションの実行時点で存在する時のファイルの状態を取り込むことができるので、バックアップデータは、以前のバックアップオペレーション中に取り込まれたファイルといった以前のバージョンのデータを取得するのに使用することができる。関連バックアップデータからある一定のバージョンのファイル又は他のデータを取得する段階は、一般的に、適切なバックアップソース(例えば、望ましいファイルバージョンを収容する特定のバックアップテープ)を判断する段階と、バックアップソースを使用して、関連するデータセット(例えば、バックアップソースに関連するバックアップオペレーションが実行された時点でそれが存在する時の1組の生成データ)を復元する段階と、望ましいファイルバージョンが復元データセットに存在するかを判断するためにサーチ又は閲覧する段階とを伴う。
【0002】
望ましいバージョンのファイルの特定の位置が既知でない場合、望ましいバージョンを見つけることが困難である可能性がある。一部の場合では、複数の個々のバックアップソースをサーチして望ましいバージョンを位置指定する必要があるであろう。例えば、特定のキーワードを含むファイルの全てのバージョンをサーチする時に、例えば、プロダクションサーチユーティリティ(例えば、「マイクロソフト・ウインドウズ・エクスプローラ」)を使用したプロダクション記憶装置のサーチに加えて、上述のように、全ての適用可能な取外し可能バックアップメディア、バックアップハードドライブ、及びネットワーク記憶ユニットを個々に復元してサーチする必要があるであろう。望ましいファイルが位置指定された状態で、典型的にはファイル間の関係を別々に判断する必要があると考えられ、適用可能なデータソースから望ましいバージョンを取得するために、1つ又はそれよりも多くの他のアプリケーション及び/又はユーティリティの使用が必要になるであろう。従って、データオブジェクト、又は1つ又はそれよりも多くに組のバックアップデータを含むことができるデータの領域内の他の関連データの1つ又はそれよりも多くのバージョンを効率的に位置指定する必要性が存在する。
【0003】
以下の詳細説明と添付図面に本発明の様々な実施形態を開示する。
【発明の開示】
【0004】
本発明は、装置、システム、合成物、コンピュータ可読記憶媒体のようなコンピュータ可読媒体、又は光学又は電気通信リンク上でプログラム命令が送られるコンピュータネットワークを処理として含む多くの方法で実施することができる。本明細書では、これらの実施例又は本発明が取り得るあらゆる他の形態を技術と呼ぶことができる。タスクを実施するように構成されているとして説明されるプロセッサ又はメモリのような構成要素は、所定時間にタスクを実施するように一時的に構成された一般構成要素、又はタスクを実施するように作られた特定構成要素の両方を含む。一般的に、開示する処理の段階の順序は、本発明の範囲内で変更することができる。
【0005】
本発明の1つ又はそれよりも多くの実施形態の詳細説明を本発明の原理を示す添付図面と共に以下に提供する。本発明をそのような実施形態に関連して説明するが、本発明は、どのような実施形態にも限定されない。本発明の範囲は、その特許請求の範囲によってのみ限定され、本発明は、多くの代替物、修正、及び均等物を包含する。本発明の完全な理解を提供するために、多くの特定の詳細が以下の説明に示される。これらの詳細は、例示の目的で提供され、本発明は、一部又は全てのこれら特定の詳細なしに特許請求の範囲に従って実施することができる。明快にするために、本発明に関連する技術分野で公知の技術的内容は、本発明が必要以上に不明瞭にならないように詳細には説明していない。
【0006】
ファイル又は他のデータオブジェクトのような関連データのバージョンのためのサーチバックアップデータを開示する。本明細書で使用される用語「データオブジェクト」は、以下に限定されるものではないが、ファイルシステムに記憶されたファイル又は他のデータオブジェクトを含む関連データの識別可能な組としてアプリケーション又は他の処理又はシステムによって生成され、アクセスされ、取り出され、修正され、又はその他の方法で処理される関連データのあらゆる識別可能な組を意味する。一部の実施形態では、2つのデータオブジェクトは、一方のデータオブジェクトが、他方のデータオブジェクトのその後のバージョンである場合に関連していると考えられる。一方のデータオブジェクトは、他方のデータオブジェクトから複写、修正、置換、及び/又は導出することができる。例えば、第1のデータオブジェクトは、第1のデータオブジェクトが第2のデータオブジェクト又は第2のデータオブジェクトに関連する別のデータオブジェクトと共通のファイル名及び/又は経路又は別の識別子をかつて共有したことがある場合、第2のデータオブジェクトに関連する。一実施形態では、バックアップデータは、プロダクション(生成)データからバックアップされた1つ又はそれよりも多くのデータオブジェクトを含むことができ、そのデータオブジェクトの各々は、関連バックアップオペレーションが実行された時にそれがプロダクションデータに存在した形式でバックアップデータに記憶される。データオブジェクトがその後に(又は以前に)変更又は削除された場合、バックアップデータに記憶された時のデータオブジェクトは、例えば、プロダクションデータの関連する組内に常駐する現在のバージョン、その後に生成されたバックアップデータの組に含まれるその後のバージョン、又は以前に生成されたバックアップデータの組に含まれる以前のバージョンである、どこか他の場所に存在する対応するデータオブジェクトの以前の(又はその後の)バージョンを含むことができる。
【0007】
一実施形態では、バックアップデータは、効率的なサーチのためにインデックス付けされる。一実施形態では、プロダクションデータは、効率的なサーチのためにインデックス付けされる。一実施形態では、インデックスを付ける段階は、関連のデータが1組のバックアップ又はプロダクションデータに存在するか否か、及び/又は関連のデータが1組のバックアップ又はプロダクションデータ内のどこに位置するかを判断するのに使用することができるデータを生成する段階を含む。一実施形態では、インデックスを付ける段階は、関連する及び/又は同じファイル又はデータのバージョンを互いに関連付ける段階を含む。一実施形態では、複数組のバックアップ及びプロダクションデータのためのインデックスは、各ファイル又は他のオブジェクトに対してバックアップ又はプロダクションデータ内の関連データの位置を示す(例えば、関連データセット及びその組内のオブジェクトの位置を識別する)位置識別子と共に統合及び/又は記憶される。一実施形態では、インデックスは、望ましいファイル又は他のオブジェクトを位置指定するためにサーチされる。一実施形態では、サーチに応答する第1のデータオブジェクトが、サーチに応答する1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含む場合、サーチ結果は、第1のデータオブジェクトが、サーチに応答する1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含むことを示すデータを含む。一実施形態では、サーチ結果は、関連及び/又は同じファイル又はデータのバージョンに関連するサーチ結果を含むグループに編成される。データオブジェクトの多重バージョンがクエリーに応答して識別され、位置指定され、及び/又は呈示されるサーチは、もしサーチデータに存在する場合に同じデータオブジェクトの時間にわたる複数の「世代」又はバージョンがサーチ結果に含まれるという意味で、本明細書で「世代別」サーチと呼ばれることがある。一実施形態では、サーチ結果は、インデックスに見出されたオブジェクトの各インスタンス又は発生に対する位置識別子を含む。識別子を使用すると、望ましいデータをバックアップ又はプロダクションデータ内に位置指定して復元することができる。
【発明を実施するための最良の形態】
【0008】
図1は、データオブジェクトサーチ可能な環境の実施形態を示すブロック図である。プロダクション記憶装置102は、アプリケーションホスト/クライアント104に接続される。バックアップデータ110は、バックアップサーバ108に接続される。インデックスを記憶装置114は、インデックス及びサーチサーバ112に接続される。アプリケーションホスト/クライアント104、バックアップサーバ108、及びインデックス及びサーチサーバ112は、ネットワーク106を通じて互いに接続される。あらゆる数のプロダクション記憶装置102、アプリケーションホスト/クライアント104、バックアップサーバ108、バックアップデータ110、インデックス及びサーチサーバ112、及びインデックス記憶装置114が存在することができる。プロダクション記憶装置102、バックアップデータ110、及びインデックス記憶装置114は、ハードドライブ、ファイルシステム区画、バックアップテープ、NAS(ネットワーク接続記憶装置)、SAN(記憶装置エリアネットワーク)、あらゆる光学及び磁気記憶媒体、及びあらゆる固定式、取外し可能、又はネットワーク記憶装置を含む1つ又はそれよりも多くの記憶媒体とすることができる。図1に示す接続のいずれも、1つ又はそれよりも多くの直接及び/又はネットワーク又は他の接続を含むことができ、図1に示す要素は、図1に示すものとは異なる配置によって接続することができ、例えば、各要素は、ネットワーク106を通じて互いに接続し、かつアクセス可能にすることができる。
【0009】
様々な代替的な実施形態では、バックアップデータ110は、ネットワーク106を通じてサーバ108やアプリケーションホスト/クライアント104に接続され、アプリケーションホスト/クライアント104に含まれ、例えば直接又は記憶装置エリアネットワーク接続を通じてローカルに接続される。そして、バックアップサーバ110やアプリケーションホスト/クライアント104に関連する記憶装置ノード又はプロキシクライアントに含まれ、又はそれに接続される。一実施形態では、バックアップデータ110は、バックアップデータセットを含む1つ又はそれよりも多くのオブジェクトのそれぞれに対してバックアップデータの組内でオブジェクトの位置を示すデータといった、バックアップサーバ108によって又はその制御或いは監視下で実行された1以上のバックアップオペレーションに関連するデータを収容する。
【0010】
一実施形態では、バックアップデータ110は、プロダクション記憶装置102からバックアップされた1つ又はそれよりも多くのデータオブジェクトを含む。バックアップデータ110に含まれたデータオブジェクトがその後修正されていた場合、そのようなデータオブジェクトは、それが、プロダクション記憶装置102又はバックアップデータ110及び/又はプロダクション記憶装置102に関連する他のバックアップデータに含まれその後バックアップされたバージョンにその後存在するので、ある一定のバージョンのデータオブジェクトを有することができる。バックアップデータ110は、一実施形態では、例えば、バックアップデータ110がプロダクションデータの同じ組(又は一部重複する組)に対して異なる時点で同時に実行された1つ又はそれよりも多くのオペレーションによって生成されたバックアップデータを含む場合、同じデータオブジェクトの複数バージョンを収容することができる。データオブジェクトは、周期的な間隔で、所定のインスタンスで、又は設定された時間にバックアップすることができる。周期的な間隔、所定のインスタンス、又は設定された時間は、事前設定又は動的に設定することができる。一実施形態では、バックアップは、プロダクション記憶装置に対する少なくとも1つのデータ変更が行われた後に実施される。一実施形態では、最後に終了したバックアップから各バックアップに対するデータの変更分だけがバックアップされる。一実施形態では、各バックアップインスタンスに対してプロダクション記憶装置の少なくとも設定された部分がバックアップされる。一実施形態では、バックアップデータは、スナップショットデータ、圧縮バックアップデータ、世代別バックアップデータ、連続ミラー保護及び/又はバックアップデータ、及び取外し可能記憶装置フォーマットのバックアップデータのうちの1つ又はそれよりも多くを含む。1以上のバックアップインスタンスは、別のバックアップインスタンスと組み合わせるか、又はバックアップインスタンスを作り出してから設定時間経過後に削除することができる。
【0011】
図示の例では、アプリケーションホスト/クライアント104は、アプリケーションをホスティングし、関連するアプリケーションのデータをプロダクション記憶装置102に記憶する。一実施形態では、アプリケーションホスト/クライアント104は、プロダクション記憶装置102に記憶されたアプリケーションデータがバックアップされるバックアップオペレーションを少なくとも部分的に実行するように設定される。一実施形態では、アプリケーションホスト/クライアント104にインストールされたエージェントが、プロダクション記憶装置102に記憶されたアプリケーションデータのバックアップを実行するか又は実行に参加する。一実施形態では、アプリケーションホスト/クライアント104は、プロダクション記憶装置102内のデータのインデックス付け及び/又はサーチを容易にする。インデックス及びサーチサーチサーバ112は、プロダクション記憶装置102のインデックス付け及び/又はサーチサーチのためにアプリケーションホスト/クライアント104と通信することができる。プロダクション記憶装置102は、パーソナルコンピュータに関連付けられているハードドライブとすることができる。アプリケーションホスト/クライアント104は、パーソナルコンピュータに関連付けられているプロセッサを含むことができる。アプリケーションホスト/クライアント104とプロダクション記憶装置102は、パーソナルコンピュータを含むことができる。
【0012】
バックアップサーバ108は、バックアップデータ110とネットワーク106に接続した装置との間の通信を容易にする。バックアップサーバ108は、バックアップ接続及び圧縮のような処理を実行することができる。一実施形態では、バックアップサーバ108は、マサチューセッツ州ホプキントン所在の「EMC Corporation」から市販されている「EMC Legato NetWorker」バックアップ及び回復ソフトウエアを実行するサーバである。一実施形態では、バックアップサーバ108は、1つ又はそれよりも多くの記憶装置ノードを含み、及び/又はそれらに直接又はネットワーク106を通じて接続され、このノードは、多重化/逆多重化バックアップストリーム機能、及び/又はアプリケーションホスト/クライアント104のようなアプリケーションサーバからのバックアップ、データ移動などのようなタスクのオフロードのような様々なバックアップ処理を行う「ユニバーサルプロキシクライアント」を含む。インデックス記憶装置114は、バックアップデータ110及び/又はプロダクション記憶装置102に関連するサーチデータ(例えば、インデックスデータ)を記憶する。インデックス及びサーチサーチサーバ112は、インデックス記憶装置114に関連する維持、サーチ、転送、及び処理データを作り出すことができる。ネットワーク106は、以下に限定されるものではないが、「イーサネット(登録商標)」、シリアル/パラレルバス、イントラネット、「インターネット」、NAS、SAN、LAN、WAN、及び複数のシステム及び/又はシステムの群を互いに接続する他の形式を含むあらゆるパブリック又はプライベートネットワーク及び/又はその組合せとすることができる。一部の実施形態では、プロダクション記憶装置102、バックアップデータ110、及び/又はインデックス記憶装置114は、他のデータ経路指定経路を通じてネットワーク106に接続され、及び/又は1つ又はそれよりも多くの他のシステムに接続される。
【0013】
一実施形態では、アプリケーションホスト/クライアント104又は他のホスト上で実行されているサーチ/復元アプリケーション、エージェント、又はインタフェースは、サーチクエリーをインデックス及びサーチサーバ112に送信する。サーバ112は、受け取ったクエリーに基づいて、インデックス記憶装置114に記憶されたインデックスをサーチし、インデックスに関連するバックアップデータ又はプロダクションデータセット内でオブジェクトの対応する位置を示す位置識別子のクエリーを満足する1つ又はそれよりも多くのデータオブジェクトの各々を含むサーチ結果を戻す。一実施形態では、そのサーチに応答する第1のデータオブジェクトが、そのサーチに応答する1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含む場合には、サーチ結果は、第1のデータオブジェクトが、そのサーチに応答する1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含むことを示すデータを含む。一実施形態では、サーチ結果は、少なくとも部分的にデータオブジェクトの関連するバージョンによって編成される。一実施形態では、リンク、ボタン、又は他のインタフェースが設けられ、サーチ結果で識別された1つ又はそれよりも多くのオブジェクトの復元が可能になる。一実施形態では、応答オブジェクトは、更に別の要求又は指示がなくとも自動的に取り出される。サーチ/復元アプリケーションは、バックアップサーバ又はプロダクション記憶装置に復元されるデータの位置識別子を送信する。一実施形態では、位置識別子がバックアップサーバに送信された場合、バックアップサーバは、位置識別子を使用してバックアップデータ110からデータを復元、復元したデータをサーチ/復元アプリケーションに送信する。復元データは、アプリケーションホスト/クライアント104上で実行されているアプリケーションによって閲覧、アクセス、及び/又は使用可能にすることができる。一部の実施形態では、復元データは、プロダクション記憶装置102に新しいデータとして保管され、又はプロダクション記憶装置102内の既存データを交換/組み合わせるのに使用される。一実施形態では、位置識別子がバックアップサーバ又はプロダクション記憶装置に送信された場合、バックアップサーバ又はプロダクション記憶装置は、位置識別子がプロダクション記憶装置内のデータと適合することを検証してそのデータを復元する。
【0014】
図2は、データオブジェクトバージョンサーチ有効環境の実施形態におけるデータフローを示すブロック図である。図示の例では、バックアップデータ202及びプロダクションデータ214は、ハードドライブ、バックアップテープ、NAS(ネットワーク接続記憶装置)、SAN(記憶装置エリアネットワーク)、あらゆる光学及び磁気記憶媒体、及びあらゆる固定式、取外し可能、又はネットワーク化記憶装置のうちの1つ又はそれよりも多くに記憶された、アプリケーション及び/又はデータによって生成されたデータストリームを含むことができる。バックアップデータ202は、ディスクへのバックアップ、テープへのバックアップ、スナップショット、世代別バックアップ、及び/又はバックアップストリームを含むデータオブジェクトの1つ又はそれよりも多くのバージョンを収容する1つ又はそれよりも多くの形式のバックアップデータを含むことができる。プロダクションデータ214は、以前にバックアップデータ202にバックアップされたデータオブジェクトの少なくとも1つの最新又は現在の修正バージョンを含むことができる。コンテンツジェネレータ204は、インデクサー及びサーチエンジン206によってインデックス付けするためのバックアップデータ202を含む及び/又はそれに関連するデータを処理する。コンテンツジェネレータ204は、バックアップデータ202を含む及び/又はそれに関連するデータをインデクサー及びサーチエンジン206に関連するフォーマットに解凍、変換、移動、及び/又は転送することができる。コンテンツジェネレータ204は、バックアップデータ202からのデータを所定の基準で、周期的に、及び/又はバックアップデータ202又はプロダクションデータ214へのデータの記憶及び/又は関連処理によるバックアップデータ202又はプロダクションデータ214の生成と実質的に同時に処理することができる。インデクサー及びサーチエンジン206は、プロダクションデータ214にインデックス付けすることができる。一実施形態では、コンテンツジェネレータは、インデクサー及びサーチエンジン206によってインデックス付けするためにプロダクションデータ214を処理することができる。
【0015】
例えば、第1の設定された周期的間隔では、プロダクションデータ214は、インデクサー及びサーチエンジン206によってインデックス付けされる。新しいバックアップデータは、バックアップデータ記憶装置ユニットと同様にコンテンツジェネレータ204に渡すことができる。インデクサー及びサーチエンジン206は、コンテンツジェネレータ204及びプロダクションデータ214からコンテンツを受け取り、データをインデックス付けしてサーチのために準備する。より新しい世代別データがインデックス付けされると、関連するより古い世代に関連するインデックス及びインデックス付けされたプロダクションデータがそれ相応に更新/修正/削除される。インデックス付けは、サーチ及び復元のためのデータを処理するあらゆる方法を含む。一実施形態では、インデックス付けする段階は、データオブジェクトの関連バージョンを互いに関連付ける段階を含む。マサチューセッツ州ニーダム所在のFASTから市販されている「FAST InStream」のようなインデックス付け及びサーチソフトウエアを使用することができる。一実施形態では、インデックス付け及びサーチに関連するサーチ可能なインデックスデータは、インデックス記憶装置208で生成されてそこに記憶される。一実施形態では、サーチ可能なインデックスデータは、複数のデータソース、バックアップ形式、及び/又はバックアップインスタンスから統合されたインデックスデータを含む。一実施形態では、インデックスデータは、グループに分割される。グループは、異なるデータソース、バックアップ形式、及び/又はバックアップインスタンスに関連付けることができる。一実施形態では、インデックス記憶装置208のデータは、バックアップデータ202又はプロダクションデータ214に関連付けられた位置識別子を含み、このデータは、関連データ、例えば、ファイル、ディレクトリ、又はバックアップデータ202又はプロダクションデータ214内の他のオブジェクトバージョンのような1つ又はそれよりも多くの特定のデータオブジェクトバージョンの位置を示す。例えば、インデックス記憶装置208内のデータ入力は、バックアップデータ202又はプロダクションデータ214内のファイル又は他のオブジェクトに関連するキーワード及び固有の識別子を含むことができるであろう。生成されたインデックスデータを使用して、インデクサー及びサーチエンジンは、サーチ及び復元モジュール210からサーチクエリーを受け入れる。一部の実施形態では、インデックス記憶装置内のデータ入力は、関連データオブジェクトの他のバージョンに関連する1つ又はそれよりも多くの他のデータ入力に対する識別子及び/又はポインターを含む。
【0016】
一実施形態では、クエリーに関連するサーチは、インデックス記憶装置208に記憶されたインデックスデータを使用してエンジン206によって行われ、クエリーの結果は、バックアップデータ202又はプロダクションデータ214の応答部分に関連する位置識別子と共にモジュール210に戻される。一実施形態では、データオブジェクトの関連バージョンに対応するサーチ結果が一緒に編集される。一実施形態におけるサーチ及び復元モジュール210は、エンジン206、バックアップデータ202、プロダクションデータ214、及び復元先212の間の相互作用を調整及び/又は容易にする。サーチ結果で受け取った識別子を使用して、モジュール210は、取り込まれる望ましいデータに関連する1つ又はそれよりも多くの識別子をバックアップデータ202及び/又はプロダクションデータ214に通信する。バックアップデータ202及び/又はプロダクションデータ214は、識別子に関連するデータを復元し、移動先212内へのデータ復元のために望ましいデータをモジュール210に戻す。データは、移動先212内に復元する前に解凍、変換、修正、及び/又は組み合わせることができる。一実施形態では、インデックス記憶装置208及び/又はプロダクションデータ214及び/又はバックアップデータ202は、同じ物理的記憶装置ユニットに存在する。一実施形態では、復元先は、プロダクションデータ214及び/又はバックアップデータ202を収容する。
【0017】
図3Aは、データオブジェクトバージョンをサーチして復元する処理の実施形態を示すフロー図である。302において、バックアップデータに関連するデータがサーチのために準備される。一実施形態では、バックアップ及びプロダクションデータに関連するデータがサーチのために準備される。準備段階は、インデックス付け、変換、解凍、移動、及び/又は転送段階を含む場合がある。サーチバックアップデータの準備は、所定の基準で周期的に、及び/又は例えばプロダクションデータ保管オペレーション又はバックアップオペレーションに関連して新しいプロダクションデータ及び/又はバックアップデータの生成と実質的に同時に行うことができる。304において、サーチは、インデックスのようなデータサーチ準備に関連するデータを使用して行われる。復元が必要なデータがサーチにより位置指定された状態で、306において、1つ又はそれよりも多くのサーチ結果に関連するデータが、プロダクションデータ及び/又はバックアップデータから復元される。
【0018】
図3Bは、サーチデータを準備するための処理の実施形態を示すフロー図である。一部の実施形態では、図3Bのプロセッサが図3Aの302に含まれる。308において、世代別サーチ及び/又は復元機能が利用可能にされるデータに関連するコンテンツが生成される。一実施形態では、バックアップデータ及び任意的にプロダクションデータのうちの1つ又はそれよりも多くの組に関連するコンテンツが308において生成される。コンテンツ生成は、サーチ処理データの準備のために、バックアップ/プロダクションデータの少なくとも一部分の解凍、変換、移動、及び/又は転送段階を含むことができる。310において、生成されたコンテンツがサーチのために処理される。一実施形態では、サーチ処理は、データのサーチ可能なインデックスの生成を含む。一実施形態では、サーチ可能なインデックスは、関連のデータオブジェクトが1組のバックアップ/プロダクションデータに存在するか否か、及び/又は関連のデータが1組のバックアップ/プロダクションデータ内のどこに位置しているかを判断するのに使用することができるデータを含む。一実施形態では、サーチ可能なインデックスは、実際のバックアップ/プロダクションデータにアクセスせず又はそれをサーチせずに、関連の特定のデータオブジェクトが1組のバックアップ/プロダクションデータ内のどこに位置しているかを判断するのに使用される。一実施形態では、サーチ可能なインデックスは、データオブジェクトの関連バージョンを判断するのに使用される。サーチ可能なインデックスは、関連データオブジェクトバージョンに関連する順序に編成され、又は関連データオブジェクトバージョンに関連する識別子又はポインターを含むことができる。データオブジェクトの関連バージョンは、ファイル名、ファイル・パス、ファイル属性、ファイルサイズ、ファイルコンテンツ、ファイル作成時間、ファイル修正時間、iノード番号、バックアップ情報、及び関連の位置識別子のうちの1つ又はそれよりも多くを使用して識別することができる。一実施形態では、インデックスデータは、関連データオブジェクトバージョンに関連する順序で編成されず、関連データオブジェクトバージョンに関連する識別子又はポインターを収容しない。一実施形態では、データオブジェクトの関係は、クエリーが行われた時に判断される。
【0019】
コンテンツを使用しバックアップ/プロダクションデータ内で特定データの位置を示す識別子に関連してキーワードを生成することができる。位置識別子は、バックアップ/プロダクションデータ内のファイル・パス、バックアップ/プロダクションメディア上のファイル又は他のオブジェクトの位置、メディアの経路、ボリューム、又は位置、又は関連データ及び/又はオブジェクトを復元するために後に使用されるあらゆる他の位置データを含むことができる。一実施形態では、識別子の位置は、あらゆる物理的及び論理的データ位置と無関係にし、かつバックアップ/プロダクションデータの形式と無関係にすることができる。例えば、識別子は、ユニフォームリソース識別子(URI)のような固有の識別子番号とすることができる。関連データに対応する識別子番号は、関連データが別の物理的又は論理的位置に再配置されたとしても、又はデータが変換、移動、又は圧縮されたとしても有効である。サーチのためのバックアップ/プロダクションデータ処理段階は、あらゆるサーチ技術のために必要なあらゆる処理段階の準備を含むことができる。インデックス及びキーワードサーチ技術は、単なる例示である。
【0020】
一部の実施形態では、インデックスは、データが変換、移動、又は圧縮された後に有効でない場合がある。プロダクションデータは、プロダクションデータの周期的インデックス付けの間に変更される場合があるので、インデックスに関連する位置識別子は、インデックス及び識別子が作り出されて以来データオブジェクトが修正又は移動されていた場合に、データオブジェクトの不正な位置を識別することができる。一実施形態では、インデックスは、バックアップ又はプロダクションデータに対する変更が行われた時に修正される。一実施形態では、位置識別子は、データを復元するために使用される前に検証される。312において、310において生成されたデータの一部分が記憶される。312において記憶されたデータは、バックアップ/プロダクションデータと共に、又は別々の論理的又は物理的記憶装置ユニットに記憶することができる。一実施形態では、312において記憶されたデータは、記憶装置ユニットには記憶されない。それは、一時的にメモリに記憶するか又はサーチが行われる度に生成することができる。
【0021】
図3Cは、データオブジェクトバージョンサーチを行うための処理の実施形態を示すフロー図である。一実施形態では、図3Cの処理は、図3Aの304に含まれる。一実施形態では、図3Cは、図2のインデクサー及びサーチエンジン206で実施することができる。314において、サーチクエリーが受信される。サーチクエリーは、データサーチアプリケーションから送ることができる。サーチアプリケーションは、バックアップ復元アプリケーションの一部とすることができる。一実施形態では、サーチクエリーが受諾される前にセキュリティ認証が要求される。316において、クエリーに関連するサーチが行われる。サーチを実行する段階は、バックアップ/プロダクションデータに関連するインデックスデータをサーチする段階を含むことができる。「FAST Instream」のようなサーチエンジンを使用することができる。318において、バックアップ又はプロダクションデータ内で特定のデータの位置を示す1つ又はそれよりも多くの識別子を用いて、サーチクエリーの結果が戻される。クエリー結果を戻す段階は、一緒に複数の中間サーチ結果を編集する段階を含むことができる。一実施形態では、サーチクエリーに応答するデータオブジェクトがサーチクエリーに応答する1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含む場合には、サーチクエリーの結果は、サーチクエリーに応答するデータオブジェクト間のバージョンの関係を示すデータを含む。一実施形態では、サーチ応答データオブジェクトバージョンに関連するがサーチクエリーにはまだ直接応答しないデータオブジェクトバージョンが、サーチ結果に含まれる。例えば、データオブジェクトの1つのバージョンしかサーチクエリーに直接応答しなくても、データオブジェクトの全てのバージョンがサーチ結果に含まれる。バージョンの関係は、ファイル名、ファイル・パス、ファイル属性、ファイルサイズ、ファイルコンテンツ、ファイル作成時間、ファイル修正時間、iノード番号、バックアップ情報、及び関連の位置識別子のうちの1つ又はそれよりも多くを使用して判断することができる。一実施形態では、サーチ結果は、サーチ及び復元アプリケーションに戻される。
【0022】
図3Dは、データ識別子を用いてデータを復元するための処理の実施形態を示すフロー図である。一実施形態では、図3Dの処理は、図Aの306に含まれる。320において、復元されるデータに関連する位置識別子が受信される。1つ又はそれよりも多くの識別子を受け取ることができる。識別子は、バックアップ又はプロダクションデータに関連する1つ又はそれよりも多くのファイル及び/又はディレクトリに関連付けることができる。322において、データは、データソースから復元される。データソースは、ハードドライブ、ファイルシステム区画、バックアップテープ、NAS(ネットワーク接続記憶装置)、SAN(記憶装置エリアネットワーク)、あらゆる光学及び磁気記憶媒体、及びあらゆる固定式、取外し可能、又はネットワーク化記憶装置を含むあらゆる物理的又は論理的データ記憶装置ユニットを含む。データを復元する段階は、バックアップデータ又はプロダクションデータ内の位置に識別子を移動する段階と、データソースを位置指定して復元する段階と、データソース内で望ましいデータを位置指定して復元する段階とを含むことができる。バックアップ/プロダクションデータの変更が行われる度にインデックスが更新されない場合、識別子は、データを復元するために使用される前に検証することができる。324において、復元先に出力データが提供される。出力データは、復元データとすることができ、又は復元データは、出力データとして提供される前に解凍、修正、変換、移動、組合せ、又は他のデータと交換するために使用することができる。一実施形態では、出力データは、復元先に供給される前に中間モジュールに供給される。
【0023】
図4は、サーチ結果を戻すための処理の実施形態を示すフロー図である。一実施形態では、図3Cの318は、図4の処理を含む。402において、位置データと、1つ又はそれよりも多くの応答データオブジェクトに対するもしある場合に応答データオブジェクトの関係とを判断することができるデータが、例えば、図3Cの316のクエリーに応答するものと識別された各データオブジェクトに対して受け取られる。一実施形態では、1つ又はそれよりも多くの応答データオブジェクトに対するもしある場合に応答データオブジェクトの関係を判断することができるデータは、ファイル名又は経路のようなそのデータオブジェクトに関連する識別子を含む。404において、もしあれば、応答データオブジェクトのどれが同じデータオブジェクトのバージョンを含むかが判断される。一実施形態では、同じファイル名及び/又は経路であるが異なるタイムスタンプ(又は、そのデータオブジェクトが保管又は例えばバックアップオペレーションに関連してその他の方法で記憶された時間を示す他のデータ)を有するデータオブジェクトは、404において、同じデータオブジェクトのバージョンとして判断される。406において、サーチ結果は、もしあれば、応答データオブジェクト間におけるバージョンの関係を示す形式で供給される。
【0024】
図5は、データオブジェクトサーチ結果表示の実施形態であり、対応データオブジェクト間の関係が示されている。ディスプレイ500は、1つ又はそれよりも多くのクエリー事項が表示されるクエリーテキストボックス502を含む。図示の例では、ユーザが用語「パフォーマンス」と「レビュー」を含むクエリーを予め提出している。ディスプレイ500は、サーチ結果表示区域504を含み、図示の例では、クエリーボックス502に示すクエリーに応答するものと識別されたデータオブジェクト(この場合ファイル)が表示される。例では、題名が「アンのパフォーマンスレビュー」というデータオブジェクトの3つのバージョン、題名が「ボブのレビュー」というデータオブジェクトの2つのバージョン、及び題名が「ジョーのパフォーマンスレビュー」というデータオブジェクトの1つのインスタンスが示されている。各応答データオブジェクトの名称は、サーチ結果表示区域504の「名称」表示区域506に表示されている。各応答データオブジェクトの各位置指定バージョンの時間及び日付(例えば、最後に保管された時間/日付)は、「バージョン」表示区域508に示され、各バージョンの位置は、「位置」表示区域510に示されている。様々な実施形態では、バージョン及び/又は位置情報は、選択可能なリンク又は他の制御を含むことができ、それらは、ディスプレイ500のユーザに選択された時に、復元される関連データオブジェクトの関連するバージョンをもたらすであろう。図5に示す例では、応答データオブジェクトは、オブジェクト名でアルファベット順に列挙され、かつデータオブジェクト間で同じ名称を有するので、それらは、バージョンの時間/日付に基づく順に列挙され、最新のバージョンが最初に列挙され、あらゆる残りのバージョンは、時間/日付により降順に列挙される。図示の例では、「アンのパフォーマンスレビュー」と「ジョーのパフォーマンスレビュー」の最新バージョンは、ローカル「c」ドライブ、例えばローカルハードドライブ上の「レビュー」という名称のフォルダのプロダクションデータ内にあるように示されている。図示の例では、「ボブのレビュー」のバージョンは、プロダクションデータには見つからなかった。例えば、データオブジェクト「ボブのレビュー」が「c」ドライブから間違って削除され、及び/又は「c」ドライブ上のバージョンが回復できないほど破損した場合に、そのようなケースが起きることがある。一実施形態では、現在入手可能であるデータオブジェクト「ボブのレビュー」の最新バージョンを回収しようと努めるユーザは、「6/10/05バックアップ」データ(例えば、6/10/05に行われた毎日又は毎夜のバックアップオペレーションに関連して生成されて記憶された1組のバックアップデータ)内にあることが分かった「11:14 6/10/05」バージョンに関連するリンク又は制御を選択し、それによって例えば関連バックアップ及び復元アプリケーションを呼び出すことにより、選択されたバージョンが取り出されたという結果がもたらされるであろう。同様にして、ディスプレイ500のユーザは、一部の実施形態では、例えば、上級管理者によるレビューに基づいてデータオブジェクトに対するその後の改定が不要であると分かった場合に、例えば、データオブジェクトの以前のバージョンに戻るために「アンのパフォーマンスレビュー」の以前のバージョンのようなデータオブジェクトの以前のバージョンを復元することができると考えられる。一実施形態では、データオブジェクトの例えばタイムスタンプによって識別された同じバージョンが、1つ又はそれよりも多くの位置にあることが分かった場合、バックアップが必ずしもそうとは限らないが一般的に最新のバックアップである場合に最も容易にアクセス可能な位置にあるインスタンスだけが表示される。図示の例では、「アンのパフォーマンスレビュー」の「14:12 6/08/05バックアップ」バージョンは、「6/08/05バックアップ」と「6/09/05バックアップ」の両方に存在することができるが、後者のインスタンスだけが示される。
【0025】
図5に示す例では、応答データオブジェクトは、この場合にワード処理文書であるファイルであるが、本明細書で説明した手法は、あらゆる形式のデータオブジェクト及び異なる形式のデータオブジェクトにわたって適用することができる。また、図5に示すデータソース(位置)は、プロダクションデータ(「c」ドライブ)及びバックアップデータ位置を含むが、クエリーに応答するデータオブジェクトに対してサーチされたデータ領域は、より多い、より少ない、及び/又は異なる位置を含むことができる。同様に、図5に示す例では、同じ名称を有するという理由でデータオブジェクトが互いに関連するものと判断されたが、一部の実施形態では、他の及び/又は付加的な情報が使用され、どのデータオブジェクトが互いに関連するかを判断することができる。
【0026】
以上の実施形態は、理解を明快にするためにある程度詳細に説明したが、本発明は、そのような詳細に制限されない。本発明を実施する上で多くの代替方法が存在する。開示した実施形態は、例示的であり制限的なものではない。
【図面の簡単な説明】
【0027】
【図1】データオブジェクトサーチ可能な環境の実施形態を示すブロック図である。
【図2】データオブジェクトバージョンサーチ可能な環境の実施形態におけるデータフローを示すブロック図である。
【図3A】データオブジェクトバージョンをサーチして復元するための処理の実施形態を示すフロー図である。
【図3B】サーチのためのデータを準備するための処理の実施形態を示すフロー図である。
【図3C】データオブジェクトバージョンサーチを実行するための処理の実施形態を示すフロー図である。
【図3D】データ識別子を有するデータを復元するための処理の実施形態を示すフロー図である。
【図4】サーチ結果を戻すための処理の実施形態を示すフロー図である。
【図5】応答データオブジェクト間の関係が示されたデータオブジェクトサーチ結果表示の実施形態を示す図である。
【符号の説明】
【0028】
102 プロダクション記憶装置
104 アプリケーションホスト/クライアント
108 バックアップサーバ
110 バックアップデータ

【特許請求の範囲】
【請求項1】
サーチ可能なインデックスを使用して、1組のバックアップデータを含むどのデータオブジェクトが、サーチクエリーに応答するかを判断する段階と、
前記サーチクエリーに応答する第1のデータオブジェクトが、該サーチクエリーに応答する1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含む場合に、該第1のデータオブジェクトが、該1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含むことを示すデータを有するサーチ結果を該サーチクエリーに対して生成する段階と、
を含むことを特徴とする、データサーチ方法。
【請求項2】
サーチクエリーを受信する段階を更に含むことを特徴とする請求項1に記載の方法。
【請求項3】
前記サーチクエリーに応答する前記第1のデータオブジェクトが、該サーチクエリーに応答する1つ又はそれよりも多くの他のデータオブジェクトの次のバージョンを含むかを判断する段階を更に含むことを特徴とする請求項1に記載の方法。
【請求項4】
前記判断は、ファイル名、ファイル・パス、ファイル属性、ファイルサイズ、ファイルコンテンツ、ファイル作成時間、ファイル修正時間、iノード番号、バックアップ情報、及び関連の位置識別子のうちの1つ又はそれよりも多くを使用して行われることを特徴とする請求項3に記載の方法。
【請求項5】
前記バックアップデータは、プロダクション(生成)データからバックアップされたデータオブジェクトのバージョンを含むことを特徴とする請求項1に記載の方法。
【請求項6】
前記バックアップデータの組は、周期的な間隔で、所定のインスタンスで、設定された時間で、又は少なくとも1つのデータ変更がプロダクション記憶装置に対して行われた後でバックアップされたデータオブジェクトを含むことを特徴とする請求項1に記載の方法。
【請求項7】
前記バックアップデータの組は、最後に完了した全バックアップオペレーションからのデータ変更を含む区分的、差分的、又は他のバックアップデータを有することを特徴とする請求項1に記載の方法。
【請求項8】
バックアップデータを解凍する段階、バックアップデータを変換する段階、バックアップデータを移動する段階、バックアップデータを転送する段階、バックアップデータをインデックス付けする段階、バックアップデータに関連するキーワードを生成する段階、及び所定の基準で、周期的に、又は該バックアップデータの追加、修正、及び削除と実質的に同時に、データサーチ及び復元に必要なあらゆる処理を行う段階のうちの1つ又はそれよりも多くを実行することによることを含む前記サーチ可能なインデックスを生成する段階を更に含むことを特徴とする請求項1に記載の方法。
【請求項9】
前記サーチ可能なインデックスは、前記バックアップデータの組を含むデータオブジェクトの該バックアップデータの組内の位置を示すインデックスデータを含むことを特徴とする請求項1に記載の方法。
【請求項10】
2つのデータオブジェクトは、第1のデータオブジェクトの少なくとも一部分が、第2のデータオブジェクト又は該第2のデータオブジェクトに関連する別のデータオブジェクトから複写、修正、置換、又は導出された場合に、互いのバージョンであると判断されることを特徴とする請求項1に記載の方法。
【請求項11】
前記サーチ可能なインデックスを使用して、前記バックアップデータの組に関連する1組のプロダクションデータを含むどのデータオブジェクトが、前記サーチクエリーに応答するかを判断する段階を更に含むことを特徴とする請求項1に記載の方法。
【請求項12】
前記サーチ可能なインデックスは、前記バックアップデータの組に対して第1の周期的な間隔で更新され、該サーチ可能なインデックスは、前記プロダクションデータの組に対して該第1の周期的間隔よりも短い第2の周期的間隔で更新されることを特徴とする請求項11に記載の方法。
【請求項13】
前記サーチ可能なインデックスは、
1つ又はそれよりも多くのメディアボリューム又は他の記憶装置位置に記憶されたバックアップデータ、1つ又はそれよりも多くのバックアップオペレーションによって生成されたバックアップデータ、及びプロダクションデータのうちの1つ又はそれよりも多くに関連するデータオブジェクトに関連するインデックスデータと、
各データオブジェクトに対して前記バックアップ又はプロダクションデータ内の関連データの位置を示す位置識別子と、
を含む、ことを特徴とする請求項1に記載の方法。
【請求項14】
前記サーチ可能なインデックスデータは、複数のデータソース、バックアップ形式、又はバックアップインスタンスからのインデックスデータを含むことを特徴とする請求項1に記載の方法。
【請求項15】
前記サーチ結果は、前記第1のデータオブジェクトが前記1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含むことを示す順序で編成されることを特徴とする請求項1に記載の方法。
【請求項16】
前記サーチ結果は、関連データオブジェクトのバージョンに関連するグループに分類されたデータを含むことを特徴とする請求項1に記載の方法。
【請求項17】
前記サーチ結果は、サーチ応答データオブジェクトバージョンに関連する非応答データオブジェクトバージョンに関連するデータを含み、
前記非応答データオブジェクトバージョンは、前記サーチクエリーに対して直接には応答しない、
ことを特徴とする請求項1に記載の方法。
【請求項18】
前記クエリー結果に関連するデータオブジェクトを復元する段階を更に含み、
前記データオブジェクトは、アプリケーションによって閲覧、アクセス、又は使用され、プロダクション記憶装置に新しいデータとして保管され、又はプロダクション記憶装置の既存データと交換するか又はそれと組み合わせるのに使用することができる、
ことを特徴とする請求項1に記載の方法。
【請求項19】
サーチ可能なインデックスを使用して、1組のバックアップデータを含むどのデータオブジェクトが、サーチクエリーに応答するかを判断し、かつ該サーチクエリーに対して、該サーチクエリーに応答する第1のデータオブジェクトが、該サーチクエリーに応答する1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含む場合に、該第1のデータオブジェクトが該1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含むことを示すデータを有するサーチ結果を生成するように構成されたプロセッサと、
前記プロセッサに結合され、かつ前記サーチ可能なインデックスを供給するように構成されたメモリと、
を含むことを特徴とする、データをサーチするためのシステム。
【請求項20】
前記プロセッサが、更に、前記サーチクエリーに応答する前記第1のデータオブジェクトが、該サーチクエリーに応答する1つ又はそれよりも多くの他のデータオブジェクトの次のバージョンを含むかを判断するように構成されていることを特徴とする請求項19に記載のシステム。
【請求項21】
前記判断は、ファイル名、ファイル・パス、ファイル属性、ファイルサイズ、ファイルコンテンツ、ファイル作成時間、ファイル修正時間、iノード番号、バックアップ情報、及び関連の位置識別子のうちの1つ又はそれよりも多くを使用して行われることを特徴とする請求項20に記載のシステム。
【請求項22】
前記バックアップデータの組は、最後に完了した全バックアップオペレーションからのデータ変更を含む区分的、差分的、又は他のバックアップデータを有することを特徴とする請求項19に記載のシステム。
【請求項23】
前記プロセッサは、更に、バックアップデータを解凍する段階、バックアップデータを変換する段階、バックアップデータを移動する段階、バックアップデータを転送する段階、バックアップデータをインデックス付けする段階、バックアップデータに関連するキーワードを生成する段階、及び規定ベースで、周期的に、又は該バックアップデータの追加、修正、及び削除と実質的に同時に、データサーチ及び復元に必要なあらゆる処理を行う段階のうちの1つ又はそれよりも多くを実行することによることを含む前記サーチ可能なインデックスを生成するように構成されていることを特徴とする請求項19に記載のシステム。
【請求項24】
前記サーチ可能なインデックスは、前記バックアップデータの組を含むデータオブジェクトの該バックアップデータの組内の位置を示すインデックスデータを含むことを特徴とする請求項19に記載のシステム。
【請求項25】
2つのデータオブジェクトは、第1のデータオブジェクトの少なくとも一部分が、第2のデータオブジェクト又は該第2のデータオブジェクトに関連する別のデータオブジェクトから複写、修正、置換、又は導出された場合に、互いのバージョンであると判断されることを特徴とする請求項19に記載のシステム。
【請求項26】
前記サーチ可能なインデックスは、
1つ又はそれよりも多くのメディアボリューム又は他の記憶装置位置に記憶されたバックアップデータ、1つ又はそれよりも多くのバックアップオペレーションによって生成されたバックアップデータ、及びプロダクションデータのうちの1つ又はそれよりも多くに関連するデータオブジェクトに関連するインデックスデータと、
各データオブジェクトに対して前記バックアップ又はプロダクションデータ内の関連データの位置を示す位置識別子と、を含む、ことを特徴とする請求項19に記載のシステム。
【請求項27】
前記サーチ結果は、前記第1のデータオブジェクトが前記1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含むことを示す順序で編成されることを特徴とする請求項19に記載のシステム。
【請求項28】
前記サーチ結果は、サーチ応答データオブジェクトバージョンに関連する非応答データオブジェクトバージョンに関連するデータを含み、
前記非応答データオブジェクトバージョンは、前記サーチクエリーに対して直接には応答しない、
ことを特徴とする請求項19に記載のシステム。
【請求項29】
前記プロセッサが、更に、前記クエリー結果に関連するデータオブジェクトを復元するように構成されており、
前記データオブジェクトは、アプリケーションによって閲覧、アクセス、又は使用され、プロダクション記憶装置に新しいデータとして保管され、又はプロダクション記憶装置の既存データと交換するか又はそれと組み合わせるのに使用することができる、
ことを特徴とする請求項19に記載のシステム。
【請求項30】
データをサーチするためのコンピュータ可読媒体に組み込まれたコンピュータプログラムであって、
サーチ可能なインデックスを使用して、1組のバックアップデータを含むどのデータオブジェクトが、サーチクエリーに応答するかを判断し、かつ
前記サーチクエリーに応答する第1のデータオブジェクトが、該サーチクエリーに応答する1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含む場合に、該第1のデータオブジェクトが、該1つ又はそれよりも多くの他のデータオブジェクトのバージョンを含むことを示すデータを有するサーチ結果を該サーチクエリーに対して生成する、
ためのコンピュータ命令を含むことを特徴とする製品。

【図1】
image rotate

【図2】
image rotate

【図3A】
image rotate

【図3B】
image rotate

【図3C】
image rotate

【図3D】
image rotate

【図4】
image rotate

【図5】
image rotate


【公表番号】特表2009−507278(P2009−507278A)
【公表日】平成21年2月19日(2009.2.19)
【国際特許分類】
【出願番号】特願2008−527005(P2008−527005)
【出願日】平成18年8月9日(2006.8.9)
【国際出願番号】PCT/US2006/031202
【国際公開番号】WO2007/021842
【国際公開日】平成19年2月22日(2007.2.22)
【出願人】(507024769)イーエムシー コーポレイション (13)
【Fターム(参考)】