JP2008545198A - Creating a single client snapshot using the client utility - Google Patents

Creating a single client snapshot using the client utility Download PDF

Info

Publication number
JP2008545198A
JP2008545198A JP2008519541A JP2008519541A JP2008545198A JP 2008545198 A JP2008545198 A JP 2008545198A JP 2008519541 A JP2008519541 A JP 2008519541A JP 2008519541 A JP2008519541 A JP 2008519541A JP 2008545198 A JP2008545198 A JP 2008545198A
Authority
JP
Japan
Prior art keywords
backup
snapshot
data
client
group
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
JP2008519541A
Other languages
Japanese (ja)
Other versions
JP4712873B2 (en
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.)
EMC Corp
Original Assignee
EMC 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
Priority claimed from US11/170,015 external-priority patent/US7523278B2/en
Priority claimed from US11/169,419 external-priority patent/US8024292B2/en
Priority claimed from US11/169,418 external-priority patent/US7716185B2/en
Priority claimed from US11/169,853 external-priority patent/US7549028B2/en
Application filed by EMC Corp filed Critical EMC Corp
Publication of JP2008545198A publication Critical patent/JP2008545198A/en
Application granted granted Critical
Publication of JP4712873B2 publication Critical patent/JP4712873B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • 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/1466Management of the backup or restore process to make the backup process non-disruptive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

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)
  • Hardware Redundancy (AREA)

Abstract

データをバックアップし、そして/または復元するシステム及び方法である。バックアップ処理が始まると、バックアップグループを含むバックアップアイテムの単一スナップショットを作成するシステム及び方法が提供される。単一スナップショットをバックアップ/復元アプリケーションが使用して保存プロセスを各バックアップグループに対して実行する。同じスナップショットを使用することにより、バックアップが同じ時点を基準にして行われるので、クライアントシステムでバックアップされるデータが矛盾の無い、かつ同期した状態になる。復元処理が始まると、復元アイテム(例えば、バックアップグループ、ライター、及びライターコンポーネント)がクライアントのバックアップグループから選択される。A system and method for backing up and / or restoring data. A system and method are provided for creating a single snapshot of a backup item that includes a backup group when the backup process begins. A single snapshot is used by the backup / restore application to perform the retention process for each backup group. By using the same snapshot, the backup is performed based on the same point in time, so that the data backed up in the client system is in a consistent and synchronized state. When the restore process begins, restore items (eg, backup group, writer, and writer components) are selected from the client's backup group.

Description

本発明は、データをバックアップするシステム及び方法に関する。詳細には、本発明の実施形態は、データを、単一クライアントスナップショットを使用してバックアップし、そして復元するシステム及び方法に関する。   The present invention relates to a system and method for backing up data. In particular, embodiments of the present invention relate to systems and methods for backing up and restoring data using a single client snapshot.

多くの個人及びビジネス交流がデータ駆動型である社会では、データは、システム障害、ウイルス、停電などのようなイベントに起因して容易に紛失したり、壊れたりする。データのバックアップは、コンピュータネットワークの重要な機能になっている。なぜならば、重大なビジネス機能及びパーソナル機能を実行する際のコンピュータ及びネットワークに対する依存度が益々高くなって行くからである。容易に、正確に、かつ高い信頼度でデータにアクセスすることができるという環境は、コンピュータ及び/又はネットワークにアクセスしようとする誰もが期待するところである。紛失データをバックアップする、または復元するために、コンピュータまたはネットワークの電源を「切断する」必要がある場合、このような切断時間はパーソナルプロセス及びビジネスプロセスに甚大な影響を及ぼす。データへの途切れないアクセスに対する要求は、データ及びサービスの提供に対する要求を満たすことができるソフトウェア及びハードウェアに対する要求に対応する。   In a society where many individuals and business exchanges are data driven, data is easily lost or corrupted due to events such as system failures, viruses, power outages, and the like. Data backup has become an important function of computer networks. This is because the dependence on computers and networks for executing critical business functions and personal functions is increasing. An environment where data can be accessed easily, accurately, and with high reliability is what anyone expects to access a computer and / or network. If the computer or network needs to be “turned off” to back up or restore lost data, such disconnect time has a profound effect on personal and business processes. The demand for uninterrupted access to data corresponds to the demand for software and hardware that can satisfy the demand for provision of data and services.

データのバックアップ及び復元は通常、データをバックアップし、かつデータをバックアップコピーから復元するソフトウェアを使用することにより行なわれる。データの量が増え続けることに伴ない、データのバックアップ及び復元は一層複雑になる。ギガバイトレベルのデータは現時点では、1つのディレクトリから別のディレクトリに迅速に転送することができず、バックアップ目的のために或るディレクトリのデータをオフラインで取得する処理は魅力に欠ける選択肢である。   Data backup and restoration is typically done by using software that backs up the data and restores the data from a backup copy. As the amount of data continues to increase, data backup and restore becomes more complex. Gigabyte-level data cannot currently be transferred quickly from one directory to another, and the process of obtaining data in one directory offline for backup purposes is an unattractive option.

ファイルシステムをバックアップする処理の他に、アプリケーション及びサービスのような他のタイプのデータをバックアップする必要が増している。しかしながら、アプリケーション及びサービスは多くの場合、バックアップが始まる場合にファイルを開いている。開かれたファイルは普通、従来のシステムを使用して効果的にバックアップするということができず、かつ多くの場合、バックアップ処理の間にスキップされる。その結果、更に別のアプリケーションが、開かれたファイルのバックアップを管理し易くするために、かつバックアップの間にスキップされたファイルのバックアップログを管理するために必要となる場合が多い。   In addition to the process of backing up file systems, there is an increasing need to back up other types of data such as applications and services. However, applications and services often open files when backup begins. Opened files usually cannot be effectively backed up using conventional systems and are often skipped during the backup process. As a result, yet another application is often required to make it easier to manage backups of opened files and to manage backup logs of files skipped during backup.

オペレーティングシステムは、データをバックアップするソフトウェア及びシステムに別の困難な課題を提示する。オペレーティングシステムが複雑であることによって多くの場合、オペレーティングシステムを論理ユニットにバックアップしてシステムまたはクライアントの状態を維持する必要がある。オペレーティングシステムを部分的にバックアップすることによって、オペレーティングシステムが部分的バックアップまたは不完全バックアップにより復元される場合に、矛盾またはシステム障害が発生する。別の表現をすると、ファイルシステム自体をバックアップすることによって、システムの状態を効果的にバックアップするということができず、その結果、システムが復旧するとエラーが発生する。オペレーティングシステムは多くの場合、システムの状態を維持しながらバックアップする必要のあるデータのデータベース、または他のディレクトリを使用する形で使用される。更に、オペレーティングシステムだけでなく、アプリケーション及びサービスは多くの場合、複数のコンピュータシステムに渡って分散配置され、これにより、データの効果的なバックアップ及び復元が複雑になる。   Operating systems present another difficult challenge to software and systems that back up data. Due to the complexity of the operating system, it is often necessary to back up the operating system to a logical unit to maintain the state of the system or client. By partially backing up the operating system, inconsistencies or system failures occur when the operating system is restored with a partial or incomplete backup. In other words, the system state cannot be effectively backed up by backing up the file system itself, and as a result, an error occurs when the system is restored. Operating systems are often used in the form of databases or other directories of data that need to be backed up while maintaining the state of the system. In addition to operating systems, applications and services are often distributed across multiple computer systems, which complicates effective backup and restoration of data.

途切れのないサービスを増大するストレージ要求を満たしながら提供したいという要望によって、データを迅速に、かつアプリケーション及びサービスの中断を最小限に抑えつつバックアップするシステム及び方法に対する要求が生まれている。   The desire to provide uninterrupted service while meeting growing storage requirements has created a need for systems and methods for backing up data quickly and with minimal disruption to applications and services.

本発明の実施形態は、データを選択的にバックアップし、そして/または復元するシステム及び方法に関する。本明細書で使用するように、「データ」という用語は、これらには制限されないが、ディレクトリ(例えば、ボリューム、ファイルシステムなど)、ユーザデータ、システムデータ、アプリケーション、サービス、オペレーティングシステムなどを指し、これらの要素はクライアントの一つ以上のストレージデバイスに保存される。オペレーティングシステムのバックアップまたは復元では、ここに定義される、またはこの技術分野の当業者によって理解されるデータのいずれかをバックアップする、または復元する。データは、必ずしも特定のストレージデバイスに対応する訳ではない論理ディレクトリに体系化される。データは多くのストレージデバイスに格納されるが、データを論理ディレクトリ及びサブディレクトリに体系化して、ユーザが容易に情報の場所を特定することができるようにする。一つの例として、Windows(登録商標)オペレーティングシステムでは、メインディレクトリはボリュームを表わす。ボリュームは、例えばクライアント側の通常のストレージボリュームであるCドライブ及びDドライブを含むが、CドライブまたはDドライブ自体は、スタックのハードディスクを含んでもよい。ユーザはどの特定のディスクから情報を取得すべきかについて認識する必要はない。従って、ディレクトリを設けてユーザがクライアント側のデータを探索し易くする。クライアントがネットワークを通してアクセスすることができる他のディレクトリを設けてもよい。更に、以下に更に説明するように、ディレクトリ及びサブディレクトリは複数のバックアップグループに体系化され、これらのバックアップグループを選択して、バックアップグループに対応するデータのバックアップまたは復元を実行することができる。クライアントの特定の機能に固有の更に別のディレクトリを設けることができる。例えば、Windows(登録商標)オペレーティングシステムでは、クライアントのオペレーティングシステム状態の維持に関する所定のデータは、オペレーティングシステムステートボリューム(ここでは、VSSボリュームと表記する)に体系化される。更に、VSSボリュームは他のアプリケーション及び/又はサービスを含み、これらのアプリケーション及び/又はサービスを使用してクライアント側のデータを復元することができる。VSSボリュームに関しては、一つよりも多くのストレージデバイスを導入することができ、そしてVSSボリュームのデータは、Cドライブ、Dドライブ、及び/又は他のドライブのようなクライアントコンピュータの異なるストレージデバイスに格納することができる。従って、VSSボリュームは、データの場所を特定するための単なる論理コンポーネントであるが、ストレージデバイスの実際の集合を表わす訳ではない。しかしながら、1つの実施形態では、VSSボリュームに関するデータの全ては、クライアント側の複数のストレージデバイスに分散されるのではなく、単一の個別のストレージデバイスに配置される。Windows(登録商標)オペレーティングシステムをここに例示として使用して本発明について説明する。しかしながら、クライアントをバックアップし、そして復元するシステム及び方法は他のオペレーティングシステムに適用することもできることを理解されたい。例えば、他のオペレーティングシステムでは通常、オペレーティングシステム状態の幾つかの局面または全ての局面をバックアップすることが望ましい。更に、他のオペレーティングシステムはディレクトリまたはファイルシステムを利用して、ユーザがクライアント側に格納されるデータを探索し易くする。従って、「ディレクトリ」という用語を「ボリューム」または「ファイルシステム」という用語と同じ意味に使用して、クライアント側のデータを論理的に体系化する全ての手段を指す。   Embodiments of the present invention relate to systems and methods for selectively backing up and / or restoring data. As used herein, the term “data” refers to, but is not limited to, directories (eg, volumes, file systems, etc.), user data, system data, applications, services, operating systems, etc. These elements are stored in one or more storage devices of the client. Operating system backup or restore backs up or restores any of the data defined herein or understood by one of ordinary skill in the art. Data is organized into logical directories that do not necessarily correspond to a particular storage device. Although data is stored in many storage devices, the data is organized into logical directories and subdirectories so that the user can easily locate the information. As one example, in a Windows® operating system, the main directory represents a volume. The volume includes, for example, a C drive and a D drive, which are normal storage volumes on the client side, but the C drive or the D drive itself may include a stack of hard disks. The user does not need to know from which particular disk the information should be obtained. Therefore, a directory is provided to make it easier for the user to search for data on the client side. There may be other directories that the client can access through the network. Further, as described further below, directories and subdirectories are organized into a plurality of backup groups, and these backup groups can be selected to perform backup or restoration of data corresponding to the backup groups. Additional directories specific to the specific function of the client can be provided. For example, in the Windows (registered trademark) operating system, the predetermined data related to the maintenance of the client operating system state is organized into an operating system state volume (herein referred to as a VSS volume). In addition, the VSS volume includes other applications and / or services, and these applications and / or services can be used to restore client-side data. With respect to VSS volumes, more than one storage device can be deployed, and VSS volume data is stored on different storage devices of the client computer, such as C drive, D drive, and / or other drives. can do. Thus, a VSS volume is merely a logical component for specifying the location of data, but does not represent an actual collection of storage devices. However, in one embodiment, all of the data relating to the VSS volume is not distributed across multiple client-side storage devices, but instead is located on a single individual storage device. The present invention will be described using the Windows® operating system as an example herein. However, it should be understood that the system and method for backing up and restoring clients can be applied to other operating systems. For example, in other operating systems it is usually desirable to back up some or all aspects of the operating system state. Furthermore, other operating systems use a directory or file system to make it easier for users to search for data stored on the client side. Thus, the term “directory” is used interchangeably with the terms “volume” or “file system” to refer to any means of logically organizing client-side data.

本発明のシステム及び方法は単一スナップショットを利用して、或る時点でのクライアントデータのコピーを単一の時点において可能にする。スナップショットは原始データの、または一つ以上のボリュームのコンテンツの読み出し限定の或る時点の複製または表現であるので、実際のコピーは別のローカルストレージデバイスまたはリモートストレージデバイスで行なわれる。単一スナップショットによって、クライアントにおける複数のボリューム及び/又はサブディレクトリにあるデータの或る部分、または全ての部分を単一の時点で同期バックアップされるので、ユーザは、バックアップデータを復元する、またはバックアップデータにアクセスするときに、クライアントのバックアップデータの全てが特定の時点で同期することを確認することができる。ローカルストレージデバイスまたはリモートストレージデバイスでの或る時点のコピーは、既に開いているファイルの有用なバックアップを含み、かつオペレーティングシステム状態のバックアップも可能にする。これにより、オペレーティングシステムを論理ユニットとして、システムのオペレーティングシステム状態を変化させることなく復旧される。本発明の実施形態によって更に、クライアントまたはシステムのコンポーネントを選択的にバックアップし、そして/または復元することができる。   The system and method of the present invention utilizes a single snapshot to allow client data to be copied at a single point in time. Since the snapshot is a point-in-time copy or representation of the source data, or read-only content of one or more volumes, the actual copy is made on another local or remote storage device. With a single snapshot, some or all of the data in multiple volumes and / or subdirectories on the client can be backed up synchronously at a single point in time so that the user can restore the backup data, or When accessing the backup data, it can be confirmed that all of the client backup data is synchronized at a specific point in time. A point-in-time copy on a local storage device or a remote storage device includes a useful backup of files that are already open, and also allows a backup of the operating system state. As a result, the operating system is recovered as a logical unit without changing the operating system state of the system. Embodiments of the present invention can further selectively back up and / or restore client or system components.

通常、ユーザはバックアップ対象のクライアントまたはシステムのボリュームに関連するバックアップグループの全てを選択するように選択を行なう。この場合、単一スナップショットは、単一の時点におけるクライアントまたはコンピュータのボリュームのデータの全ての表現を捕捉するので、例えばオペレーティングシステム状態を単一の時点の状態とも一致させることができる。しかしながら、バックアップグループの全てに満たないバックアップグループは、クライアントのデータの全てに満たないデータをバックアップする必要があると指定するユーザによって選択されてもよい。これは、クライアントデータシステム全体のバックアップを実行することなく、変更が或るバックアップグループにのみ行なわれたことをユーザが認識する場合に有利である。ユーザは、バックアップ/復元アプリケーションと通信するユーザインターフェースにアクセスすることにより、一つ以上のバックアップグループを選択することができる。バックアップグループは、バックアップを必要とするアイテムを特定する情報を含む。バックアップグループに特定されるアイテムは複数のボリュームに分散される可能性があるので、本発明の実施形態によって確実に、該当するボリュームを単一スナップショットに追加し、そして該当するデータを正しくバックアップするが、これについては以下に更に詳細に説明する。   Typically, the user selects to select all of the backup groups associated with the client or system volume being backed up. In this case, a single snapshot captures all representations of client or computer volume data at a single point in time so that, for example, the operating system state can be matched to the state at a single point in time. However, a backup group that is less than all of the backup groups may be selected by a user that specifies that less than all of the client's data needs to be backed up. This is advantageous when the user recognizes that a change has been made only to a certain backup group without performing a backup of the entire client data system. The user can select one or more backup groups by accessing a user interface that communicates with the backup / restore application. The backup group includes information that identifies items that require backup. Since items identified in a backup group may be distributed across multiple volumes, the embodiment of the present invention ensures that the corresponding volume is added to a single snapshot and that the corresponding data is backed up correctly. However, this will be described in more detail below.

バックアップを実行する場合、バックアップされることになるデータのストレージを処理している、または制御しているシステムは、クライアントにリクエストして、一時的に処理をフリーズさせる、または中断させる。処理が中断している間、データの単一スナップショットが作成される。単一スナップショットが作成された後、バックアップを単一スナップショットに基づいて実行しながら、アプリケーション及び/又はサービスに指示して処理を再開させる。処理を中断することによって開いているファイルを把握し、そして単一スナップショットに含める。従って、開いているファイルはバックアップにおいてスキップされることはない。また、バックアップされているサービスまたはアプリケーションには単一スナップショットを作成する前に通知が行なわれ、そしてバックアップのために中断し、そして準備するための時間が与えられる。従って、バックアップ/復元アプリケーションによって確実に、トランザクションが一時中断され、かつバックアップ対象のデータが矛盾の無い状態になる。   When performing a backup, the system that is processing or controlling the storage of the data to be backed up requests the client to temporarily freeze or interrupt the process. A single snapshot of the data is created while processing is interrupted. After the single snapshot is created, the application and / or service is instructed to resume processing while performing a backup based on the single snapshot. Keep track of open files by interrupting the process and include them in a single snapshot. Thus, open files are not skipped in the backup. Also, the service or application being backed up is notified before creating a single snapshot and is given time to suspend and prepare for backup. Therefore, the backup / restore application reliably ensures that the transaction is temporarily suspended and the data to be backed up is in a consistent state.

本発明に関する上に記載した特徴、及び他の特徴を更に明らかにするために、本発明についての更に詳細な説明を、添付の図に示される本発明の特定の実施形態を参照しながら行なうこととする。これらの図は本発明の単なる通常の実施形態を表わしているので、本発明の技術範囲を制限するものとして捉えられるべきではない。本発明は、更に別の細部及び詳細について添付の図を使用して記述され、そして説明される。   To further clarify the above-described features and other features of the present invention, a more detailed description of the present invention will be given with reference to specific embodiments of the present invention shown in the accompanying drawings. And These diagrams represent merely typical embodiments of the invention and should not be taken as limiting the scope of the invention. The invention will be described and explained with additional details and details using the accompanying figures.

1.データをバックアップするための環境例の概要
図1は、ネットワークデータのスナップショットを作成し、そして本発明への使用に適合させることができるネットワークデータをバックアップし/復元するシステム例を示している。図1のシステムを使用して、データを本発明に従ってバックアップするが、本発明の実施形態は、バックアップ対象のデータを有する他のネットワークにおいても実施される。図1はサーバ102を示し、このサーバは、クライアント104,106,及び108によって表わされるクライアント(群)との関係を有する。各クライアント104,106,及び108はデータをストレージボリュームに格納し、このストレージボリュームはそれぞれのクライアント自体に、そして/またはそれぞれのクライアントから離れた場所に設けられる。ストレージボリュームはクライアントの一つ以上のボリュームまたはドライブだけでなく、アプリケーション及びサービスを表わす。クライアント108は、例えばデータ(アプリケーション、サービス、及び/又はボリュームを含む)を含むストレージ109を有する。また、サービスは或るタイプのアプリケーションを表わすので、ここではアプリケーションと表記してもよい。
1. Overview of Example Environment for Backing Up Data FIG. 1 illustrates an example system for creating a snapshot of network data and backing up / restoring network data that can be adapted for use with the present invention. Although the system of FIG. 1 is used to back up data in accordance with the present invention, embodiments of the present invention are also practiced in other networks having data to be backed up. FIG. 1 shows a server 102 that has a relationship with a client (s) represented by clients 104, 106, and 108. Each client 104, 106, and 108 stores data in a storage volume that is provided on the client itself and / or at a location remote from the client. A storage volume represents applications and services as well as one or more volumes or drives of a client. The client 108 has a storage 109 that contains, for example, data (including applications, services, and / or volumes). Further, since a service represents a certain type of application, it may be expressed as an application here.

各クライアント104,106,及び108はバックアップ対象のデータを有するシステムを表わす。各クライアントは比較的に簡単なものでも(例えば、デスクトップコンピュータ)、または比較的複雑なものでも(例えば、大規模データベースサーバまたはサーバクラスタ内の一つのサーバ)よい。クライアントは更に、ネットワーク上の或るノード、またはストレージエリアネットワーク(SAN)上の或るストレージデバイスであってもよい。各クライアント104,106,及び108は更に、サーバ102とは異なるオペレーティングシステムまたはプラットフォームで動作してもよい。バックアップ処理の環境では、クライアントはサーバ102による制御の下で動作する。   Each client 104, 106, and 108 represents a system having data to be backed up. Each client can be relatively simple (eg, a desktop computer) or relatively complex (eg, a large database server or a server in a server cluster). A client may also be a node on the network or a storage device on a storage area network (SAN). Each client 104, 106, and 108 may further operate on a different operating system or platform than server 102. In the backup processing environment, the client operates under the control of the server 102.

本明細書において使用するように、「ユーザ」という用語は、サーバ102を操作する人(例えば、アドミニストレータ)を指してもよい。別の構成として、ユーザはクライアント104,106,及び/又は108を使用する人を指してもよい。両方のタイプのユーザはバックアップまたは復元を要求するリクエストを開始するが、サーバ102は、クライアント104,106,または108が利用することができない更に別の機能を有してもよいことを理解されたい。ユーザはスケジュールを立て、このスケジュールは、サーバ102がバックアップ処理をクライアント104,106,及び/又は108のデータに対して自動的に実行する時刻を決定する。しかしながら、クライアント側のユーザがアドホックバックアップ処理及び復元処理を開始してもよい。図1の例では、サーバ102はバックアップストレージ110にアクセスし、このバックアップストレージ110には、クライアントのデータの一つ以上のコピーが保存される。バックアップストレージ110はサーバ102の中に配置されても、サーバ102とは異なる別体として設けられてもよい。データ114は、サーバ102によってバックアップストレージ110でバックアップされているデータを表わす。   As used herein, the term “user” may refer to a person (eg, an administrator) operating server 102. Alternatively, the user may point to a person using the clients 104, 106, and / or 108. It should be understood that both types of users initiate a request to request backup or restore, but the server 102 may have additional features that are not available to the clients 104, 106, or 108. . The user establishes a schedule that determines when the server 102 automatically performs the backup process on the data of the clients 104, 106, and / or 108. However, the user on the client side may start the ad hoc backup process and the restoration process. In the example of FIG. 1, the server 102 accesses a backup storage 110, and one or more copies of client data are stored in the backup storage 110. The backup storage 110 may be arranged in the server 102 or may be provided as a separate body from the server 102. Data 114 represents data that is backed up by backup server 110 by server 102.

サーバ102は通常、サーバから開始する全てのバックアップ処理またはプロセスを制御し、そして指示する。クライアントはアドホックバックアップ処理及び復元処理を制御する。データは、1つの実施形態では、バックアップグループを使用してバックアップされる。しかしながら、バックアップグループを用いる場合でも、クライアントシステムの単一スナップショットを使用してバックアップグループのバックアップを実行する。   Server 102 typically controls and directs all backup processes or processes initiated from the server. The client controls ad hoc backup processing and restoration processing. Data is backed up using a backup group in one embodiment. However, even when a backup group is used, a backup of the backup group is executed using a single snapshot of the client system.

単一スナップショットは、オペレーティングシステム状態の重要なコンポーネントをバックアップし、そして矛盾の無いユニットとして復元されることが望ましい場合に有用である。別の表現をすると、オペレーティングシステムは、全ての時点におけるオペレーティングシステムの状態を定義するファイルまたはデータを含む。サーバ102がシステムのバックアップを実行する場合、このサーバ102によって、オペレーティングシステムに関連する適切なバックアップグループを同じスナップショットを使用してバックアップし、確実にオペレーティングシステムに対して、クライアントの矛盾の無い時点におけるバックアップを提供することが保証される。クライアントは、これもまた矛盾の無いユニットとしてバックアップする必要のあるコンポーネントを有するオペレーティングシステム固有のアプリケーション及びサービスの他に、他のアプリケーションまたはサービスを含む。例えば、上で説明したように、Windows(登録商標)オペレーティングシステムでは、これらのアプリケーション及びサービスはオペレーティングシステム状態コンポーネントとともに、VSSボリュームに入れることができる。しかしながら、クライアントデータは、デザイン検討事項によって変わる形で、いずれかの適切な方法により体系化し、そして/またはグループ化される。   A single snapshot is useful when it is desirable to back up critical components of the operating system state and be restored as a consistent unit. In other words, the operating system includes files or data that define the state of the operating system at all points in time. When server 102 performs a system backup, this server 102 backs up the appropriate backup group associated with the operating system using the same snapshot, ensuring that the operating system is consistent with the client. Is guaranteed to provide a backup in In addition to operating system specific applications and services that also have components that need to be backed up as a consistent unit, the client includes other applications or services. For example, as described above, in a Windows® operating system, these applications and services can be placed in a VSS volume along with operating system state components. However, client data is organized and / or grouped in any suitable manner, depending on design considerations.

図1に戻って、この図を参照すると、サーバ102は更に、クライアントファイルインデックス112及びメディアボリューム116を共に、サーバ自体、及びバックアップストレージ110に配置し、そして管理する。クライアントファイルインデックス112はバックアップデータアイテムのインデックスである。メディアボリューム116はバックアップボリュームのインデックスである。クライアントファイルインデックス112及びメディアボリューム116は一括してここでは「オンラインインデックス」と表記される。オンラインインデックスは通常、バックアップ処理が完了した後にバックアップストレージ110に保管される。しかしながら、他のオペレーティングシステムが同様のデータ構造を使用して、バックアップされるディレクトリ及びアイテムを維持してディレクトリ及びアイテムをリカバリーの間に復元することができるようにすることを理解されたい。   Returning to FIG. 1, referring to this figure, the server 102 further places and manages both the client file index 112 and the media volume 116 in the server itself and in the backup storage 110. The client file index 112 is an index of backup data items. The media volume 116 is an index of a backup volume. The client file index 112 and the media volume 116 are collectively referred to as “online index” herein. The online index is typically stored in the backup storage 110 after the backup process is complete. However, it should be understood that other operating systems may use similar data structures to maintain the directories and items that are backed up and restore the directories and items during recovery.

2.単一スナップショットを作成するシステム例
図2を簡単に参照すると、単一スナップショットを作成し、そしてバックアップ及び復元処理を実行するシステム例が示される。この図に示すように、バックアップ/復元アプリケーション202がバックアップ/復元処理を開始する。本明細書において使用するように、バックアップ/復元アプリケーションは、リクエスターと表記され、または別の表現では、バックアップまたは復元処理をリクエストするアプリケーションと表記される。バックアップ/復元アプリケーション202によって、ユーザはバックアップする、または復元する全ての、または特定のバックアップグループを選択する。例えば、図2の実施形態では、バックアップ/復元アプリケーション202はサーバコンポーネント202A及びクライアントコンポーネント202Bを有し、これらのコンポーネントは通信することによりバックアップまたは復元機能を実行する。サーバコンポーネント202A及びクライアントコンポーネント202Bはバックアップ/復元アプリケーション202全体の一部分であるが、サーバコンポーネント202A及びクライアントコンポーネント202Bを必要に応じて異ならせて、サーバ102及びクライアント108が種々の該当する機能を実行することができることを理解されたい。バックアップ/復元アプリケーション202の一部分が2通りに分かれる、或いは3通りにまでも分かれる場合、図2に示すコンポーネント群の配置は異なってもよく、かつ図2のシステムは例示として提示されるのであり、本発明を制限するために提示されるのではないことを理解されたい。典型的とは言えない実施形態では、バックアップ/復元アプリケーション202はサーバにのみ実装される(この場合、サーバはクライアントの特徴を持つ)か、またはクライアントにのみ実装される(この場合、クライアントはサーバの特徴を持つ)。図2に示すように、バックアップ/復元アプリケーション202は、バックアップ/復元アプリケーションのアクセス先であるバックアップストレージ204と通信して、バックアップ及び/又は復元機能を実行する。
2. Example System for Creating a Single Snapshot Referring briefly to FIG. 2, an example system for creating a single snapshot and performing backup and restore processing is shown. As shown in this figure, the backup / restore application 202 starts backup / restore processing. As used herein, a backup / restore application is referred to as a requester, or in other words, an application that requests a backup or restore process. The backup / restore application 202 allows the user to select all or specific backup groups to back up or restore. For example, in the embodiment of FIG. 2, the backup / restore application 202 includes a server component 202A and a client component 202B, which perform communication or backup / restore functions. The server component 202A and client component 202B are part of the overall backup / restore application 202, but the server component 202A and client component 202B differ as needed to allow the server 102 and client 108 to perform various applicable functions. Please understand that you can. If a part of the backup / restore application 202 is divided into two or even three, the arrangement of the components shown in FIG. 2 may be different, and the system of FIG. 2 is presented as an example, It should be understood that it is not presented to limit the invention. In a non-typical embodiment, the backup / restore application 202 is implemented only on the server (where the server has client characteristics) or is implemented only on the client (in this case, the client is the server With features). As shown in FIG. 2, the backup / restore application 202 communicates with the backup storage 204, which is the access destination of the backup / restore application, to execute a backup and / or restore function.

クライアントコンポーネント202Bは、1つの実施形態ではクライアント側のスナップショットマネージャ206と通信する。スナップショットマネージャ206はスナップショットジェネレータ208を始動し、スナップショットジェネレータは単一スナップショットの作成を開始する。スナップショットジェネレータ208は、スナップショットが作成されるまで、バックアップが行なわれているシステム、例えばクライアント108に対して処理の一時中断をリクエストする。スナップショットジェネレータ208は、単一スナップショット214がデータに基づいて作成されるときのデータとなる物理データ212を含むストレージ210と通信する。   Client component 202B communicates with client-side snapshot manager 206 in one embodiment. The snapshot manager 206 starts the snapshot generator 208, which starts creating a single snapshot. The snapshot generator 208 requests the system being backed up, for example, the client 108 to suspend processing until a snapshot is created. The snapshot generator 208 communicates with a storage 210 that includes physical data 212 that becomes data when a single snapshot 214 is created based on the data.

3.データのバックアップ/復元に使用されるバックアップグループ例
上で説明したように、バックアップ対象のクライアントデータまたはアイテムは、これらには制限されないが、ボリューム、ユーザデータ、システムデータ、アプリケーション、サービス、オペレーティングシステム、及び/又は他の類似の要素を含む。クライアントデータはディレクトリまたはボリュームに体系化され、ボリュームは更に或る階層のサブディレクトリを有し、更にクライアントデータは、バックアップ/復元アプリケーションと通信するユーザインターフェースに表示される。更に、階層によってユーザは特定のボリュームまたはサブディレクトリをバックアップする対象として指定し易くなる。ボリューム及びサブディレクトリは「バックアップグループ」単位で体系化され、バックアップグループはここでは、サーバ102と特定クライアント、例えばクライアント108との間でバックアップセッションが行われている間にバックアップされるデータまたはアイテムの集合として定義される。従って、バックアップグループはボリューム全体、ボリューム全体に満たないボリューム、または一つ以上のボリュームに分散されるデータを含み、バックアップグループはこれらには制限されないが、ファイルグループ、ファイルシステム全体、データベースまたはオペレーティングシステム情報のようなアプリケーション生成データなどを含む。バックアップグループはアプリケーションまたはサービス、或いは一つ以上のボリュームに分散されるアプリケーション、サービス、及び/又はオペレーティングシステムのコンポーネントを含む。バックアップグループが一つよりも多くのボリュームに格納される情報を含む構成の一つの例を示すと、バックアップグループは、オペレーティングシステム状態に関する情報を含むが、当該情報は異なるボリュームに格納される。従って、バックアップグループという用語は、論理的にグループを構成するファイル群を識別し、そしてファイル群の位置を特定する体系化ツールとして使用される。
3. As described above in the example backup group used for data backup / restore, the client data or items to be backed up are not limited to these, but volumes, user data, system data, applications, services, operating systems, And / or other similar elements. The client data is organized into directories or volumes, the volume further has a hierarchy of subdirectories, and the client data is also displayed in a user interface that communicates with the backup / restore application. Further, the hierarchy makes it easier for the user to designate a specific volume or subdirectory as a backup target. Volumes and subdirectories are organized in units of “backup groups”, where a backup group is a collection of data or items that are backed up during a backup session between server 102 and a particular client, eg, client 108. Defined as a set. Thus, a backup group includes an entire volume, a volume that is less than the entire volume, or data that is distributed across one or more volumes, and the backup group is not limited to these, but includes a file group, an entire file system, a database or an operating system Includes application-generated data such as information. A backup group includes applications or services, or applications, services and / or operating system components distributed over one or more volumes. In one example of a configuration in which a backup group includes information stored in more than one volume, the backup group includes information regarding the operating system state, but the information is stored in different volumes. Therefore, the term backup group is used as a systematic tool that identifies the files that logically comprise the group and identifies the location of the files.

或るオペレーティングシステムは、アプリケーションまたはサービスによって動作して情報をストレージデバイスに保存する書き込みコンポーネントを含む。例えば、Windows(登録商標)オペレーティングシステムでは、書き込みコンポーネントは「ライター」と表記される。従って、「ライター」及び「書き込みコンポーネント」という用語は、同じ意味に使用されてこの機能を提供する全てのコンポーネントを指す。更に、書き込みコンポーネントは、スナップショット生成ハードウェア及びソフトウェアを含むバックアップ/復元ハードウェア及びソフトウェアと対話する。一般的に、ライターはバックアップ対象の少なくとも一つのアプリケーションまたはサービスに対応する。バックアップグループにおいてライターに関連するデータは更に、異なるボリューム、サブディレクトリなどに格納される。例えば、ライターはデータを一つよりも多くのボリュームに格納される。更に、幾つかのボリュームをいずれのライターにも関連付けないようにすることができる。従って、バックアップグループを、ライターに関連付けられる或るボリューム、いずれのライターにも関連付けられないボリューム、または両方のボリュームに格納される情報に対応させることが可能である。クライアント側の一つ以上のファイルはオペレーティングシステム状態に関連する。1つの実施形態では、上に述べたように、バックアップグループを使用して、クライアントのオペレーティングシステム状態に関連するファイルが体系化される。例えば、Microsoft(登録商標)はボリューム・シャドウ・コピー・サービスを提供し、そしてVSSボリュームフレームワークを提供して、Windows(登録商標)で動作するクライアントのオペレーティングシステム状態をバックアップする。更に、上に述べたように、VSSボリュームは、ライターを含む他のアプリケーション及び/又はサービスを含む。VSSボリュームは、オペレーティングシステム状態に関連するバックアップデータの体系化ツールとなる。クライアントのオペレーティングシステム状態に関するバックアップグループを保存することによって、ユーザはユーザのオペレーティングシステムを復元し、そしてオペレーティングシステムを必要に応じて前の状態に戻し、更にこの保存処理は、ユーザのオペレーティングシステムドライブまたはマシン全体が壊れた場合に重要となる。この処理を行わない場合には、ユーザはユーザのシステムを再構築してサービスを再構成し、更にアプリケーションを再インストールし、そして再構成する必要がある。   Some operating systems include a writing component that operates by an application or service to store information on a storage device. For example, in the Windows (registered trademark) operating system, the writing component is written as “writer”. Thus, the terms “writer” and “writing component” refer to all components that are used interchangeably to provide this functionality. In addition, the write component interacts with backup / restore hardware and software, including snapshot generation hardware and software. In general, a writer corresponds to at least one application or service to be backed up. Data related to writers in the backup group is further stored in different volumes, subdirectories, etc. For example, a writer stores data in more than one volume. In addition, some volumes may not be associated with any writer. Thus, a backup group can correspond to information stored in a volume associated with a writer, a volume not associated with any writer, or both volumes. One or more files on the client side are related to the operating system state. In one embodiment, as described above, a backup group is used to organize files related to the client's operating system state. For example, Microsoft® provides a volume shadow copy service and provides a VSS volume framework to back up the operating system state of clients running on Windows®. In addition, as mentioned above, the VSS volume includes other applications and / or services including writers. The VSS volume is a tool for organizing backup data related to the operating system state. By saving a backup group relating to the client's operating system state, the user restores the user's operating system and returns the operating system to the previous state as needed, and the save process further includes the user's operating system drive or This is important if the entire machine breaks. Without this process, the user needs to rebuild the user's system to reconfigure the service, reinstall the application, and reconfigure.

ボリューム・シャドウ・コピー・サービスを、ここに説明する論理VSSボリュームと組み合わせて実装するWindows(登録商標)オペレーティングシステムは、クライアントデータに関連するバックアップグループを体系化する単なる一つの例示的な方法に過ぎない。他のオペレーティングシステムプラットフォームは、バックアップグループをクライアントに関連するデータに関して体系化する同様の方法、または異なる方法を使用する。しかしながら、Windows(登録商標)オペレーティングシステムの例を使用して、図3A及び3Bはユーザインターフェース302A,302Bの2つの例を示しており、各ユーザインターフェースは、クライアントのバックアップグループを体系化する異なる方法を有する。ユーザインターフェース302A,302Bはバックアップ/復元アプリケーションに関連付けられ、これについては以下で更に詳細に説明する。ユーザはユーザインターフェース302Aまたは302Bと対話して、保存すべき特定のバックアップグループを選択する。別の構成として、ユーザは単に、ユーザインターフェースを使用することなく、バックアップ対象のバックアップグループを列挙する。更に、ユーザはバックアップ対象の「全ての」バックアップグループを選択する。実際、矛盾の無いバックアップオペレーティングシステム状態について関心がある場合、ユーザは、VSSボリュームに関連する少なくともこれらのバックアップ対象の全てのバックアップグループを選択する。   The Windows operating system that implements the volume shadow copy service in combination with the logical VSS volume described herein is just one exemplary method for organizing backup groups associated with client data. Absent. Other operating system platforms use similar or different methods of organizing backup groups with respect to data associated with the client. However, using the Windows® operating system example, FIGS. 3A and 3B show two examples of user interfaces 302A and 302B, each user interface having a different way of organizing a backup group of clients. Have User interfaces 302A, 302B are associated with a backup / restore application, which will be described in further detail below. The user interacts with the user interface 302A or 302B to select a particular backup group to save. In another configuration, the user simply lists the backup groups to be backed up without using the user interface. Further, the user selects “all” backup groups to be backed up. In fact, if interested in consistent backup operating system state, the user selects at least all of these backup target backup groups associated with the VSS volume.

図3Aは、複数のボリュームを含むインターフェース302Aを示し、各ボリュームは特定の英数字によって特定され、かつドライブ(例えば、A:ドライブ、C:ドライブ、D:ドライブなど)として共通に表記される。複数のVSSバックアップグループ328も設けてバックアップ/復元機能を実行する。図3Aに示すように、システムの或るボリュームに関連するバックアップグループ326、及びオペレーティングシステム状態に関連するバックアップグループ328は同じツリーにある。これとは異なり、図3Bでは、メインVSSボリュームに関連するバックアップグループ354はツリー350の下に配置される。   FIG. 3A shows an interface 302A that includes a plurality of volumes, where each volume is identified by a specific alphanumeric character and is commonly described as a drive (eg, A: drive, C: drive, D: drive, etc.). A plurality of VSS backup groups 328 are also provided to perform the backup / restore function. As shown in FIG. 3A, the backup group 326 associated with a volume of the system and the backup group 328 associated with the operating system state are in the same tree. In contrast, in FIG. 3B, the backup group 354 associated with the main VSS volume is located under the tree 350.

一例としての図3Aによれば、図3Bにも当てはまるが、バックアップグループ328はバックアップグループ306,308,310,312,314,及び316を含み、これらのバックアップグループはシステムバックアップグループであり、かつオペレーティングシステムライター及びライターコンポーネントを含む。システムバックアップグループ328の多くのコンポーネントが相互依存性を持つので、ユーザはバックアップグループ328の全て(すなわち、クライアントのオペレーティングシステム状態の維持に関連するバックアップグループ)を選択して、単一スナップショットを、バックアップグループの全て、及び単一スナップショットを使用して行なうバックアップごとの保存に関して作成することができるようにすることが好ましい。システムのバックアップグループの全てに関するバックアップは同じスナップショットを使用して行なわれる。これにより、万が一、復元が必要になった場合には、クライアントのオペレーティングシステム状態を、無矛盾性を保ちながら確実に復元することができる。しかしながら、上で説明したように、かつ図3Aに示されるように、ユーザは、バックアップ対象のクライアントのオペレーティングシステム状態に関連するバックアップグループの全てに満たないバックアップグループを選択し、そして選択されるこれらのバックアップグループは単一スナップショットを使用してバックアップされることになる。   According to FIG. 3A as an example, backup group 328 includes backup groups 306, 308, 310, 312, 314, and 316, which are also applicable to FIG. 3B, and these backup groups are system backup groups and operating systems Includes system writer and writer components. Since many components of the system backup group 328 are interdependent, the user can select all of the backup groups 328 (ie, backup groups associated with maintaining the client operating system state) and take a single snapshot, It is preferable to be able to create for all backup groups and for each backup saved using a single snapshot. Backups for all of the system's backup groups are made using the same snapshot. As a result, in the unlikely event that restoration is necessary, the operating system state of the client can be reliably restored while maintaining consistency. However, as explained above and as shown in FIG. 3A, the user selects backup groups that are less than all of the backup groups associated with the operating system state of the client being backed up, and these selected Will be backed up using a single snapshot.

1つの実施形態では、バックアップグループ328,354は動的に収集され、そしてバックアップグループ328,354の内容は、どのライターがクライアント側でアクティブになっているかという事実に部分的に基づいて動的に決定される。クライアントのライターが列挙されるか、または特定されると、同じタイプのライターが或る特定のバックアップグループのライターになる。従って、特定のバックアップグループに関連するライターは同じタイプを有する。例えば、図3Aでは、複数のライター324はそれぞれ同じタイプを有し、かつバックアップグループ310に含まれる。特定のアプリケーションまたはサービスに関するライターを利用することができない(すなわち、非アクティブになっている、または存在しない)とすると、適切なファイルは、該当するボリューム(群)がバックアップ用に選択される場合にファイルシステムを通してバックアップされる。所定のバックアップ処理が行なわれる場合、バックアップグループ群の内の幾つかのバックアップグループは、他のバックアップグループがライターを全く含むことができない状態でアクティブライターを含む。   In one embodiment, backup groups 328, 354 are collected dynamically, and the contents of backup groups 328, 354 are dynamically based in part on the fact that which writer is active on the client side. It is determined. When a client writer is enumerated or specified, the same type of writer becomes a writer for a particular backup group. Thus, the writers associated with a particular backup group have the same type. For example, in FIG. 3A, the plurality of writers 324 have the same type and are included in the backup group 310. If a writer for a particular application or service is not available (ie, inactive or non-existent), the appropriate file is selected if the appropriate volume (s) are selected for backup. Backed up through the file system. When a predetermined backup process is performed, some backup groups in the backup group group include active writers with no other backup group including any writers.

ライターに関する上の説明から、ライター群を全てのボリュームまたはバックアップグループに関連付ける必要があるという風に捉えられるべきではない。或るボリュームをどのライターにも関連付けなくてもよい。更に、バックアップグループに対応する情報が、ライターに関連付けられないボリュームに格納される場合、或るバックアップグループをどのライターにも関連付けない。ボリューム群はライター群に関連付けてもよいが、オペレーティングシステム状態に関連するバックアップグループ群のいずれとも関連付けないようにしてもよい。   The above description of writers should not be taken to mean that writers need to be associated with all volumes or backup groups. A volume need not be associated with any writer. Furthermore, if information corresponding to a backup group is stored in a volume that is not associated with a writer, a backup group is not associated with any writer. The volume group may be associated with the writer group, but may not be associated with any of the backup group groups associated with the operating system state.

本発明は、全てのバックアップグループを実際に1回の処理ごとにバックアップすることを必要としないことを理解されたい。すなわち、ユーザはバックアップ対象の所定のバックアップグループ群を指定することができる。従って、図3A及び3Bの論理的体系化によって差が生じ、この場合、ユーザはバックアップ対象のバックアップグループ群の全てに満たないバックアップグループを選択する。例えば、図3Aの体系化によって、メインディレクトリとして体系化されるオペレーティングシステム状態に関連する所定のバックアップグループ群を設定して、これらのバックアップグループを選択する。図3Aに示すように、ユーザはユーザの希望に応じて、システムドライブD、VSS System Boot(VSSシステムブート)、及びVSS User Data(VSSユーザデータ)を選択して、または列挙して、バックアップすることができる。これとは異なり、図3Bでは、VSSバックアップグループ群は全て、一つのメインVSSボリュームの下のサブディレクトリ群として体系化されるので、ユーザはVSSボリューム全体を選択することができる。例えば、図3Bに示すように、ユーザは場合によっては、システムCドライブ、システムDドライブ、及びVSSボリュームを選択して、または列挙して、バックアップする。VSSボリュームを選択することにより、オペレーティングシステム状態に関連するバックアップグループ群の全てを含むオペレーティングシステム状態ディレクトリ全体が、VSSボリュームが選択されるたびにバックアップされる。図3Bの構成の方が、ユーザが単一の選択(すなわち、VSS:)を行なって、オペレーティングシステム状態に関連するバックアップグループ群の全てを特定する操作を容易にすることができるので望ましい。なぜならば、或る状況では、オペレーティングシステム状態が、オペレーティングシステム状態データのバックアップが行なわれるたびに一致していることを確認することが望ましいからである。しかしながら、ユーザは必要に応じて、オペレーティングシステム状態に関連するサブグループ群を、オペレーティングシステム状態サブグループ群の全てを選択する必要を生じることなく選択してもよい。ユーザがバックアップ対象のバックアップグループ群の全てを選択する、または幾つかのみを選択するかどうかに関係なく、単一スナップショットが、選択されるバックアップグループ群に対応するボリューム群から作成される。従って、図3Aの例の場合、単一スナップショットはCドライブボリューム及びDドライブボリュームから作成される。更に、VSS System Bootバックアップグループ、VSS System Fileset(VSSシステムファイルセット)バックアップグループ、及びVSS System Services(VSSシステムサービス)バックアップグループに対応するボリューム群が単一スナップショットに含まれることになる。1つの実施形態では、VSSバックアップグループ群に対応するボリューム群を実際には、Cドライブボリューム及びDドライブボリュームとして、追加のボリュームを単一スナップショットに含める必要がないようにする。別の実施形態では、選択されるVSSバックアップグループ群に対応するこれらのボリュームの他のボリューム群を表示して、追加のボリュームを単一スナップショットに含めることができるようにする。図3Bの場合、単一スナップショットはCドライブボリューム、Dドライブボリューム、及びVSSボリュームバックアップグループに関連するボリューム群から作成することができる(このスナップショットはここでも同じように、単一スナップショットに既に含まれているボリューム群、例えばCドライブボリューム及びDドライブボリュームに格納される情報に一致させることができる)。いずれの場合においても、単一スナップショットを作成した後、バックアップグループ群の各々に関するバックアッププロセスは、バックアップ処理のベースとなる同じスナップショットを使用することになる。従って、選択されるバックアップグループ群(または、必要に応じて、クライアントシステム全体)のバックアップは、単一時点でのバックアップを反映する。   It should be understood that the present invention does not require that all backup groups be actually backed up once per process. That is, the user can specify a predetermined backup group group to be backed up. Therefore, a difference is caused by the logical systematization of FIGS. 3A and 3B. In this case, the user selects a backup group that is less than all the backup group groups to be backed up. For example, according to the systematization of FIG. 3A, a predetermined backup group group related to the operating system state organized as the main directory is set, and these backup groups are selected. As shown in FIG. 3A, the user selects or enumerates and backs up system drive D, VSS System Boot (VSS system boot), and VSS User Data (VSS user data) as desired by the user. be able to. In contrast, in FIG. 3B, all VSS backup group groups are organized as sub-directory groups under one main VSS volume, so the user can select the entire VSS volume. For example, as shown in FIG. 3B, the user may select or enumerate system C drive, system D drive, and VSS volume for backup, as the case may be. By selecting a VSS volume, the entire operating system state directory, including all of the backup groups associated with the operating system state, is backed up each time a VSS volume is selected. The configuration of FIG. 3B is desirable because it allows a user to make a single selection (ie, VSS :) to facilitate the operation of identifying all of the backup groups associated with the operating system state. This is because, in some situations, it is desirable to ensure that the operating system state matches every time the operating system state data is backed up. However, if desired, the user may select a subgroup related to the operating system state without having to select all of the operating system state subgroups. Regardless of whether the user selects all or only some of the backup groups to be backed up, a single snapshot is created from the volumes corresponding to the selected backup group. Therefore, in the example of FIG. 3A, a single snapshot is created from the C drive volume and the D drive volume. Furthermore, a volume group corresponding to a VSS System Boot backup group, a VSS System Fileset (VSS system file set) backup group, and a VSS System Services (VSS system service) backup group is included in a single snapshot. In one embodiment, the volume groups corresponding to the VSS backup group groups are actually C drive volumes and D drive volumes so that no additional volumes need be included in a single snapshot. In another embodiment, other volumes of these volumes corresponding to the selected VSS backup group are displayed so that additional volumes can be included in a single snapshot. In the case of FIG. 3B, a single snapshot can be created from a group of volumes associated with a C drive volume, a D drive volume, and a VSS volume backup group (this snapshot is again converted to a single snapshot). It can be matched with information stored in a volume group already contained, for example, C drive volume and D drive volume). In either case, after creating a single snapshot, the backup process for each of the backup groups will use the same snapshot as the basis for the backup process. Therefore, the backup of the selected backup group (or the entire client system, if necessary) reflects the backup at a single point in time.

これまでのプロセス例において説明したように、スナップショットマネージャ206及びスナップショットジェネレータ208は、バックアップグループ群のいずれかの保存プロセスを実行するために使用される単一スナップショットを開始する。これにより、従来のバックアッププログラムによって実現する復元よりも更に無矛盾性を保った復元が実現する。例えば、新規の1枚のハードウェアをインストールする場合、新規のドライバもインストールする必要がある場合が多い。普通、新規のドライバは当該ドライバの動作に関する情報を含む。この情報の或る部分は一つのオペレーティングシステムライターの内部に保存され、そして更に、データは、別のライターに割り当てられるハードドライブの一つ以上のファイルに保存される。この情報には必要に応じて、オペレーティングシステムがアクセスされ、そしてこの情報はドライバが正しく動作するために必要である。ドライバデータを保存するこれらのライターの内の一つのライターを一つのバックアップグループに入れ、ドライバデータを有するファイル群を含む別のライターを別のバックアップグループに入れる。両方のバックアップグループが同じスナップショットによって保存されない場合、情報の一方の部分が他方の部分と同期しないようにすることが可能である。   As described in the previous example processes, the snapshot manager 206 and the snapshot generator 208 initiate a single snapshot that is used to perform any storage group backup process. As a result, it is possible to realize restoration with more consistentness than restoration realized by a conventional backup program. For example, when installing a new piece of hardware, it is often necessary to install a new driver. Usually, a new driver contains information about the operation of the driver. Some portion of this information is stored inside one operating system writer, and further, the data is stored in one or more files on a hard drive assigned to another writer. This information is accessed by the operating system as needed, and this information is necessary for the driver to operate correctly. One of these writers that store driver data is put into one backup group, and another writer containing a group of files with driver data is put into another backup group. If both backup groups are not saved by the same snapshot, it is possible to prevent one part of the information from being synchronized with the other part.

これとは異なり、本発明では、選択されるバックアップグループ群に対応するボリューム群の単一スナップショットが単一時点で作成される場合に、サーバ102がクライアント108に指示して、単一スナップショットを使用させてバックアップグループ群の各々の保存を実行させるようにする。更に、ファイル群を共有するバックアップグループ群にとっては、共有ファイルが同じ時点で更新され、これによって、重要な情報が脱落する機会を最小限に抑えることが保証される。従って、本発明では、バックアップデータは、単一クライアントスナップショットにより提供される単一の基準時点を基準とするので、実際にバックアップされる選択データが同じ時点が基準となる。バックアップのタイプは変わり得る。例えば、インクリメンタルバックアップを所定のバックアップグループ群に対して実行してもよい。別の構成として、フルバックアップを実行してもよい。   In contrast, in the present invention, when a single snapshot of a volume group corresponding to the selected backup group group is created at a single point in time, the server 102 instructs the client 108 to execute a single snapshot. To save each of the backup groups. Furthermore, for backup groups that share files, the shared files are updated at the same time, thereby ensuring that the chances of missing important information are minimized. Therefore, in the present invention, the backup data is based on a single reference time point provided by a single client snapshot, so that the selection data actually backed up is based on the same time point. The type of backup can vary. For example, incremental backup may be performed on a predetermined backup group group. As another configuration, a full backup may be performed.

しかしながら、Windows(登録商標)オペレーティングシステム形態では、ライター群を含む或るバックアップグループがバックアップされている場合には、当該バックアップグループのライター群の全てに対するフルバックアップを通常実行して、クライアントのオペレーティングシステム状態を維持するか、またはバックアップされているアプリケーションまたはサービスの状態を維持する。或る例では、バックアップグループのライター群の内の一つのライターはバックアックされない。この状況は、例えば当該ライターに関連するデータが変化していない場合に生じる。バックアップの性能は、特にライターによって特定されるアプリケーションが大きい場合に改善される。別の表現をすると、変化していない大きなアプリケーションをバックアップする処理を行なわないことにより、バックアップの性能は改善される。しかしながら、アプリケーションのデータが変化してしまうと、アプリケーションのフルバックアップが通常実行される。   However, in the Windows (registered trademark) operating system, when a backup group including a writer group is backed up, a full backup is normally performed for all the writers in the backup group, and the client operating system Maintain state or maintain the state of the application or service being backed up. In one example, one of the writers in the backup group is not backed up. This situation occurs, for example, when the data associated with the writer has not changed. Backup performance is improved, especially when the application specified by the writer is large. In other words, the backup performance is improved by not performing the process of backing up a large application that has not changed. However, if the application data changes, a full backup of the application is normally executed.

図3C及び3Dは更に、Windows(登録商標)オペレーティングシステムで実行されるクライアント側のデータを選択的に復元するユーザインターフェース例を示している。図3Cにおいて、インターフェース302Cは、バックアップグループ310及び314が選択されて復元される様子を示している。更に、例えばバックアップグループ310におけるサブグループ群、すなわちライター群324及びコンポーネント313は、復元対象のバックアップグループ310全体を選択することなく、選択して復元される。図3Dは、図3Bの論理的体系化に対応するが、図3Cのインターフェース302Cとほぼ同じ機能及び目的を有する復元インターフェース302Dを示している。   FIGS. 3C and 3D further illustrate an example user interface for selectively restoring client-side data running on the Windows® operating system. In FIG. 3C, the interface 302C shows how the backup groups 310 and 314 are selected and restored. Further, for example, subgroups in the backup group 310, that is, the writer group 324 and the component 313 are selected and restored without selecting the entire backup group 310 to be restored. FIG. 3D shows a restoration interface 302D that corresponds to the logical organization of FIG. 3B, but has substantially the same function and purpose as interface 302C of FIG. 3C.

4.単一スナップショットを作成する方法例
次に、図4Aを参照して、クライアントデータを図2のシステム例を使用してバックアップするために使用される単一スナップショットを作成するプロセス例について更に詳細に説明する。図4Aは、クライアント及びサーバが1つの実施形態において相互作用して単一クライアントスナップショットを作成する様子を示している。ステップ402では、サーバ102側のバックアップ/復元アプリケーションサーバコンポーネント202Aを起動する。ステップ404では、サーバコンポーネント202Aがクライアント側のバックアップ/復元アプリケーションクライアントコンポーネント202Bを起動する。ステップ406では、クライアントコンポーネント202Bが、全ての使用可能なバックアップグループ群のリストを当該クライアント用に作成し、そして当該リストをサーバコンポーネント202Aに返送する。
4). Example Method of Creating a Single Snapshot Referring now to FIG. 4A, further details of an example process for creating a single snapshot used to back up client data using the example system of FIG. Explained. FIG. 4A illustrates how a client and server interact in one embodiment to create a single client snapshot. In step 402, the backup / restore application server component 202A on the server 102 side is activated. In step 404, server component 202A launches the client side backup / restore application client component 202B. In step 406, the client component 202B creates a list of all available backup groups for the client and returns the list to the server component 202A.

ステップ408では、サーバコンポーネント202Aがバックアップグループ群のリストを受信して、ユーザがバックアップ対象の利用可能なバックアップグループ群の内の一つ以上を選択することができるようにする。上で説明したように、ユーザはバックアップグループ群の全てを、または特定のバックアップグループ群のみを選択してバックアップすることができる。本明細書で使用するように、「ユーザ」という用語は、どのバックアップグループ群をバックアップすべきかに関する選択を行なう全ての人を指す。従って、ユーザとは、クライアントコンピュータを操作する人、またはクライアントコンピュータをサーバまたは他のグラフィカルユーザインターフェースを通して操作する管理者を指す。ユーザはバックアップグループ群を選択してバックアップ前のいずれの時点でも保存することができる。例えば、ユーザは、事前に構成されたバックアップグループを選択し、この同じ選択が一連の事前にスケジューリングされたバックアップに使用される。1つの実施形態では、クライアントコンポーネント202Bは、バックアップグループ群の全てを事前に構成して、バックアップが行なわれるたびにこれらのバックアップグループを保存するように構成される。この実施形態によって、オペレーティングシステム状態が確実に、バックアップが行なわれるたびに矛盾の無い基準時点でバックアップされるようにする。しかしながら、上に記載したように、ユーザが所定のバックアップグループ群のみを選択してバックアップし、そしてバックアップが行なわれる前のそれぞれの機会ごとに、この選択プロセスを実行してもよい。   In step 408, the server component 202A receives the list of backup groups and allows the user to select one or more of the available backup groups to be backed up. As described above, the user can select all backup groups or only specific backup groups for backup. As used herein, the term “user” refers to any person who makes a selection as to which backup groups to backup. Thus, a user refers to a person operating a client computer or an administrator operating a client computer through a server or other graphical user interface. The user can select a backup group and save it at any point before backup. For example, the user selects a pre-configured backup group, and this same selection is used for a series of pre-scheduled backups. In one embodiment, the client component 202B is configured to pre-configure all of the backup groups and store these backup groups each time a backup is performed. This embodiment ensures that the operating system state is backed up at a consistent reference time each time a backup is made. However, as described above, the user may select and back up only a predetermined group of backup groups and perform this selection process for each opportunity before the backup is performed.

ステップ409では、サーバコンポーネント202Aは、ユーザが選択する選択バックアップグループ群を含むバックアップグループ群の変更リストを作成する。変更リストは、リストの先頭の先頭バックアップグループ512、及びリストの末尾の末尾バックアップグループ514も含む。変更リストは単に、選択されたバックアップグループ群が処理される順番を示し、そして本発明はバックアップグループ群の実際のリストの作成に制限されない。別の実施形態では、ユーザはまず、バックアップグループ群を、クライアントで利用する可能性がある潜在バックアップグループ群のリストに基づいて選択し、次に選択されたバックアップグループ群を、クライアントで利用する実際のバックアップグループ群のリストと比較する。他の変形例を使用してもよい。   In step 409, the server component 202A creates a backup group group change list including the selected backup group group selected by the user. The change list also includes a head backup group 512 at the top of the list and a tail backup group 514 at the end of the list. The change list simply indicates the order in which the selected backup groups are processed, and the present invention is not limited to creating an actual list of backup groups. In another embodiment, the user first selects a backup group based on a list of potential backup groups that may be used on the client, and then uses the selected backup group on the client. Compare with the list of backup groups. Other variations may be used.

図4Bは、Windows(登録商標)オペレーティングシステムの実施形態例において図3Aに特定される選択を使用してサーバコンポーネント202Aで作成されるバックアップグループ群の変更リスト500の一例を示している。1つの実施形態では、バックアップグループ群の変更リストは、リストの先頭の先頭バックアップグループ512、及びリストの末尾の末尾バックアップグループ514を必ず含む。例えば、図3Aに示すように、バックアップグループ502,504,506,508,及び510をユーザがバックアップ用に選択している。更に、選択されたバックアップグループ502,504,506,508,及び510の他に、先頭バックアップグループ512及び末尾バックアップグループ514もリストの先頭及び末尾に含まれる。ここで、同じようにして、図4Cが、バックアップグループ群の変更リストを図3Bのユーザインターフェース302Bに示される選択を使用して作成する様子を示していることに注目されたい。この場合、変更リスト516は先頭バックアップグループ512と、選択バックアップグループ518,520,及び522と、そして末尾バックアップグループ514と、を含む。勿論、変更リスト516は、特定のオペレーティングシステムがどのようにしてバックアップグループ群を体系化するかによって変わることになる。   FIG. 4B shows an example of a backup group group change list 500 created at the server component 202A using the selections identified in FIG. 3A in an example embodiment of a Windows® operating system. In one embodiment, the backup group group change list necessarily includes a head backup group 512 at the top of the list and a tail backup group 514 at the end of the list. For example, as shown in FIG. 3A, the user has selected backup groups 502, 504, 506, 508, and 510 for backup. Further, in addition to the selected backup groups 502, 504, 506, 508, and 510, the head backup group 512 and the tail backup group 514 are also included in the head and tail of the list. Note that in the same manner, FIG. 4C shows the creation of a backup group group change list using the selection shown in the user interface 302B of FIG. 3B. In this case, the change list 516 includes a head backup group 512, selected backup groups 518, 520, and 522, and a tail backup group 514. Of course, the change list 516 will change depending on how the particular operating system organizes the backup groups.

先頭バックアップグループ512及び末尾バックアップグループ514は疑似バックアップグループである、というのは、これらのバックアップグループは、クライアントコンポーネント202Bに送信されることになる最初及び最後のバックアップグループであるが、どの特定のボリュームにも関連付けられることがないからである。これらのバックアップグループは、単一スナップショットの作成及び削除に使用され、そしてこれらのバックアップグループを使用して、作成スナップショットを維持する。変更リスト500の作成がユーザには見えないことが好ましいことを理解されたい。   The first backup group 512 and the last backup group 514 are pseudo-backup groups, because these backup groups are the first and last backup groups that will be sent to the client component 202B, but which specific volume It is because it is not associated with any other. These backup groups are used to create and delete single snapshots and use these backup groups to maintain the created snapshots. It should be appreciated that the creation of change list 500 is preferably not visible to the user.

いずれにしても、ステップ410では、サーバコンポーネント202Aはバックアップグループ群の変更リストをクライアントコンポーネント202Bに送信する。ステップ412では、変更リストの先頭バックアップグループ512を送信することにより、サーバコンポーネント202Aは、バックアップを要求する他のどのようなリクエストも当該特定のクライアントに送信しないことを認識し、そして単一クライアントスナップショットの生成が成功した、または失敗したことを示す信号をクライアントコンポーネント202Bから受信するまで待機することを認識する。単一スナップショットの生成が失敗すると、バックアップ/復元アプリケーション202はデフォルト手順を使用して、単一スナップショットに一括してグループ化するのではなく、各選択バックアップグループのスナップショットを個々に生成する。   In any case, in step 410, the server component 202A sends a backup group group change list to the client component 202B. In step 412, by sending the first backup group 512 of the change list, the server component 202A recognizes that it will not send any other request for backup to that particular client, and a single client snap. It recognizes that it waits until it receives a signal from the client component 202B indicating that the generation of the shot has succeeded or failed. If the generation of a single snapshot fails, the backup / restore application 202 uses the default procedure to generate a snapshot for each selected backup group individually, rather than grouping them together into a single snapshot .

ステップ414では、クライアントコンポーネント202Bは、先頭バックアップグループ512及び末尾バックアップグループ514を含む変更リストを受信する。ステップ416では、先頭バックアップグループ512を実行することにより、クライアント側に配置されるスナップショットマネージャ206を起動する。   In step 414, the client component 202B receives the change list including the first backup group 512 and the last backup group 514. In step 416, by executing the head backup group 512, the snapshot manager 206 arranged on the client side is started.

ステップ418では、クライアントコンポーネント202Bは変更リストをスナップショットジェネレータ208に渡す。ステップ420では、スナップショットジェネレータ208を起動すると、単一スナップショットの作成が始まる。スナップショットマネージャ206はアクティブ状態を維持して、スナップショットジェネレータ208からのスナップショット作成完了信号を待機する。   In step 418, the client component 202B passes the change list to the snapshot generator 208. In step 420, when the snapshot generator 208 is activated, creation of a single snapshot begins. The snapshot manager 206 maintains an active state and waits for a snapshot creation completion signal from the snapshot generator 208.

ステップ422では、スナップショットジェネレータ208は、変更リストに特定されるバックアップグループアイテム群に対応するボリューム群の全ての識別情報を管理することにより、単一スナップショットの作成を調整する。1つの実施形態では、スナップショットジェネレータ208は、特定済のボリューム群の全てをコピーセットに含み、そしてスナップショットの作成をリクエストする。コピーセットという用語は、単一スナップショットに記録することになるボリューム群のグループを指すために使用される。コピーセットは、単一スナップショットに記録する必要のあるボリューム群のリストまたは他の識別情報とすることができる。各オペレーティングシステムはスナップショット群を異なる形で作成するので、スナップショットを作成する処理の詳細についてはここでは説明しないが、システム例を使用して以下に更に詳細に説明する。一旦、スナップショットが作成されると、当該スナップショットをパスネームに関連付けて、バックアップ/復元アプリケーションが後の時点でスナップショットの位置を特定することができるようにする。以下に更に詳細に説明するように、クライアントコンポーネント202Bは、スナップショットが作成されている間は、クライアント108側のライター動作を一時中断する。更に、1つの実施形態では、メタデータは単一スナップショットを使用して生成される。   In step 422, the snapshot generator 208 coordinates the creation of a single snapshot by managing all the identification information of the volume group corresponding to the backup group item group specified in the change list. In one embodiment, the snapshot generator 208 includes all specified volumes in the copy set and requests the creation of a snapshot. The term copy set is used to refer to a group of volumes that will be recorded in a single snapshot. The copy set can be a list of volumes or other identification information that needs to be recorded in a single snapshot. Since each operating system creates a group of snapshots differently, details of the process of creating a snapshot will not be described here, but will be described in more detail below using a system example. Once the snapshot is created, it is associated with the path name so that the backup / restore application can locate the snapshot at a later time. As will be described in further detail below, the client component 202B suspends the writer operation on the client 108 side while the snapshot is being created. Further, in one embodiment, the metadata is generated using a single snapshot.

スナップショットに成功すると、ステップ423では、スナップショットジェネレータ208はスナップショットに、単一スナップショットが作成される時点で生成されるメタデータを付加して、保存またはバックアッププロセスを実行するために有用な追加情報を取り込む。更に、変更済みスナップショットファイルがクライアント202B側に格納されていても、ファイル名を作成して変更済みスナップショットファイルの位置を特定する。これについては以下に更に詳細に説明する。ステップ424では、スナップショットの作成に成功したことを示す信号をサーバコンポーネント202Aに送信する。これがサーバコンポーネント202Aに通知されて保存プロセスが開始する。ステップ425では、スナップショットジェネレータ208は或るイベントを設定し、このイベントを使用して、スナップショットを削除するときに信号を受信する。ステップ426では、スナップショットジェネレータ208がアクティブ状態を維持している間、スナップショットマネージャ206は停止する。スナップショットジェネレータ208は、選択バックアップグループ群の保存プロセス群の全てが完了するまで、かつスナップショットが削除されるまで、アクティブ状態を維持する。   If the snapshot is successful, in step 423, the snapshot generator 208 appends the snapshot to the metadata generated at the time the single snapshot is created and is useful for performing a save or backup process. Capture additional information. Further, even if the modified snapshot file is stored on the client 202B side, a file name is created to specify the position of the modified snapshot file. This will be described in more detail below. In step 424, a signal indicating that the snapshot has been successfully created is transmitted to the server component 202A. This is notified to the server component 202A and the saving process starts. In step 425, the snapshot generator 208 sets an event and uses this event to receive a signal when deleting the snapshot. In step 426, the snapshot manager 206 stops while the snapshot generator 208 remains active. The snapshot generator 208 remains active until all of the storage processes of the selected backup group are completed and until the snapshot is deleted.

ステップ426では、停止する前にスナップショットマネージャ206は変更済みスナップショットファイル名を先頭バックアップグループ512と一緒にサーバコンポーネント202Aに返送し、これらの変更済みスナップショットファイル名及び先頭バックアップグループをサーバコンポーネント202Aがステップ428で受信する。或る実施形態では、この動作によって別のアクション424が生成されるのではなく、サーバコンポーネント202Aに、スナップショットの作成に成功したことが通知されるようになる。いずれにしても、変更済みスナップショットファイル名及び先頭バックアップグループ512を受信することにより、サーバコンポーネント202Aに、当該コンポーネントがこの時点で保存プロセスを開始することを通知する。   In step 426, before stopping, the snapshot manager 206 returns the changed snapshot file name together with the first backup group 512 to the server component 202A, and the changed snapshot file name and the first backup group are returned to the server component 202A. Is received at step 428. In some embodiments, this action does not generate another action 424, but informs the server component 202A that the snapshot was successfully created. In any case, by receiving the changed snapshot file name and the first backup group 512, the server component 202A is notified that the component starts the saving process at this point.

ステップ429では、サーバコンポーネント202Aはクライアントコンポーネント202Bへのリクエストの送信を開始して、クライアントコンポーネント202Bに変更リストに特定されるバックアップグループ群を保存させる。サーバコンポーネント202Aは更に、変更済みスナップショットファイルのファイル名を各保存リクエストと一緒に送信する。ステップ430では、クライアントコンポーネント202Bは選択バックアップグループ群及び変更済みスナップショットファイル名を使用して、各バックアップグループの保存プロセスを開始する。各バックアップグループの保存プロセス(すなわち、バックアップ)の実行はバックアップ/復元アプリケーションによって変わるので、プロセス例について以下に更に詳細に説明する。しかしながら、一般的に、バックアップ/復元アプリケーションは変更リストを使用して、どのバックアップグループを保存すべきかについて特定する。   In step 429, the server component 202A starts sending a request to the client component 202B, causing the client component 202B to store the backup groups identified in the change list. The server component 202A further sends the file name of the modified snapshot file along with each save request. In step 430, the client component 202B initiates a save process for each backup group using the selected backup group group and the modified snapshot file name. Since the execution of each backup group's storage process (ie, backup) varies from backup / restore application, an example process is described in more detail below. However, in general, the backup / restore application uses the change list to identify which backup group to save.

判定ブロック431は、サーバコンポーネント202Aが、ユーザによって選択される他のバックアップグループ群を次々に選択して移動する様子を表わしている。1つの実施形態では、判定ブロック431では、現在のバックアップグループが最後のバックアップグループであるかどうかを尋ねる。上で説明したように、ユーザはバックアップ対象のバックアップグループ群の全てに関する指定を行なうことができる、または特定のバックアップグループ群のみを選択することができる。いずれの場合においても、サーバコンポーネント202Aはバックアップグループリストを順次移動して、変更済みスナップショットファイル名を各バックアップグループ保存リクエストと一緒に送信し、クライアントコンポーネント202Bが、どの場所からスナップショットにアクセスして必要データを取り出せばよいかが分かるようにする。   The determination block 431 represents a state in which the server component 202A selects and moves another backup group group selected by the user one after another. In one embodiment, decision block 431 asks if the current backup group is the last backup group. As described above, the user can specify all of the backup groups to be backed up, or can select only a specific backup group. In either case, the server component 202A sequentially moves the backup group list and sends the modified snapshot file name along with each backup group save request so that the client component 202B can access the snapshot from any location. To find out if the necessary data can be retrieved.

従って、サーバコンポーネント202Aは、各選択バックアップグループに関する個々の保存リクエストをクライアントコンポーネント202Bに送信することにより、バックアップグループ群の保存を指示する。別の構成として、サーバコンポーネント202Aは、一つの単一保存リクエストをクライアントコンポーネント202Bに送信して、変更リストに特定されるバックアップグループ群の全てに関する保存を実行させる。いずれの場合においても、スナップショットジェネレータ208は、バックアップグループ群の保存の全てを処理している間は、動作している状態を維持する。1つの実施形態では、選択バックアップグループ群に関する保存が完了した後、ステップ432では、サーバコンポーネント202Aはリクエストをクライアントコンポーネント202Bに送信して、ステップ433で受信する末尾バックアップグループ514を保存させる。末尾バックアップグループ514の受信はクライアントコンポーネント202Bに対する信号であり、この信号は、スナップショットマネージャ206をここでも同じように始動する必要があることを示す。ステップ435では、スナップショットマネージャ206は、スナップショットジェネレータ208が最初にステップ425で設定したイベントを通知する。ステップ436では、このイベントを設定することにより、スナップショットジェネレータ208が現在のスナップショットを削除するようになる。   Accordingly, the server component 202A instructs the storage of the backup group group by transmitting individual storage requests regarding each selected backup group to the client component 202B. As another configuration, the server component 202A sends a single save request to the client component 202B to cause saving for all of the backup groups identified in the change list. In either case, the snapshot generator 208 remains operational while processing all of the backup group groups. In one embodiment, after the saving for the selected backup group is complete, in step 432, the server component 202A sends a request to the client component 202B to save the tail backup group 514 received in step 433. The receipt of the tail backup group 514 is a signal to the client component 202B, which indicates that the snapshot manager 206 needs to be started again as well. In step 435, the snapshot manager 206 notifies the event initially set by the snapshot generator 208 in step 425. In step 436, setting this event causes the snapshot generator 208 to delete the current snapshot.

ステップ438では、スナップショットジェネレータ208が停止する。ステップ439では、スナップショットマネージャ206は末尾バックアップグループ514をサーバコンポーネント204Aに送信する。次にステップ440では、スナップショットマネージャ206が停止し、そして保存プロセスが完了する。ステップ442では、クライアントコンポーネント202Bが停止する。ステップ444では、サーバコンポーネント204Aが末尾バックアップグループ514を受信すると、これによってバックアッププロセスの完了が通知される。ステップ446では、サーバコンポーネント204Aが停止する。この技術分野の当業者であれば、上に説明したプロセス例は例示のために提示されるのであり、本発明を制限するためのものではなく、そしてプロセスステップ及び/又はアクションは順番を入れ替え、そして組み合わせる、または削除することができ、更に他のアクションを、クライアントで実行されるオペレーティングシステムプラットフォーム及び/又はバックアップ/復元アプリケーションによって変わる設計検討事項に起因して付け加えることができることを理解できるであろう。例えば、単一スナップショットを削除するのではなく、既存のスナップショットを第2スナップショットの基礎として使用することができる。すなわち、第1スナップショットを行なった時点と第2スナップショットを行なった時点との間に加えられる変更を示すポインタがポインタリストに維持される。新規のポインタリストを使用して第1スナップショットを更新し、第2スナップショットを作成する。   In step 438, the snapshot generator 208 is stopped. In step 439, the snapshot manager 206 sends the tail backup group 514 to the server component 204A. Next, at step 440, the snapshot manager 206 is stopped and the saving process is complete. In step 442, the client component 202B stops. In step 444, when the server component 204A receives the tail backup group 514, it notifies the completion of the backup process. In step 446, the server component 204A stops. Those skilled in the art will appreciate that the process examples described above are presented for purposes of illustration and are not intended to limit the present invention, and that the process steps and / or actions are reversed in order, It will be understood that further combinations can be added due to design considerations that vary depending on the operating system platform and / or backup / restore application running on the client, and can be combined or deleted. . For example, instead of deleting a single snapshot, an existing snapshot can be used as the basis for the second snapshot. That is, a pointer indicating a change made between the time when the first snapshot is performed and the time when the second snapshot is performed is maintained in the pointer list. The first snapshot is updated using the new pointer list to create a second snapshot.

上で説明したように、種々のオペレーティングシステムが、スナップショットを作成し、更にバックアップ及び復元を実行する異なるシステムまたは方法を使用する。図2に戻って再度この図を簡単に参照すると、スナップショット214は、厳密な時点において物理ストレージ212に収容される内容物の少なくとも一部分の厳密な表現であることが分かる。読み出し、及び書き込みが可能な物理ストレージ212とは異なり、スナップショット214は読み出し専用である。   As explained above, various operating systems use different systems or methods for creating snapshots and performing backups and restores. Returning briefly to FIG. 2 again, it can be seen that the snapshot 214 is a strict representation of at least a portion of the content contained in the physical storage 212 at a strict time. Unlike the physical storage 212 that can be read and written, the snapshot 214 is read-only.

別の実施形態では、例えばコピーオンライト法(copy on write method)を使用すると、スナップショット214は、2つの時点で物理ストレージ212に加えられる変更の差分表現になる。第1時点での最初のコピーは、物理ストレージに新規変更が上書きされる前の物理ストレージ212のコピーを含む。変更が物理ストレージ212に対して加えられると、ポインタを変更されるエリアに置き、そしてポインタを物理ストレージ212に格納されるポインタリストに維持することができる。ポインタリスト及び最初のコピーを使用して、スナップショット214を作成することができ、このスナップショットは、スナップショットが作成された時点における物理ストレージ212の少なくとも一部分を表わす。単一スナップショットは、システムプロバイダ、ソフトウェアプロバイダ、及び/又はハードウェアプロバイダを使用して生成することができる。本明細書においてプロバイダとは、スナップショットを作成し、そして維持するハードウェアまたはソフトウェアとして広義に定義される。システムプロバイダの例は、特定のオペレーティングシステムに固有のソフトウェアプロバイダである。例えば、Windows(登録商標)オペレーティングシステムは事前設定のデフォルトソフトウェアプロバイダを持ち、これによりスナップショットを作成するが、他のオペレーティングシステムも同様の機能を当該オペレーティングシステムに実装する。ソフトウェアプロバイダはI/Oリクエストを、ファイルシステムとバックアップ/復元ボリュームマネージャとの間のソフトウェアレベルでインターセプトする。従って、ソフトウェアプロバイダは、スナップショットを作成し、そして/または維持するために特殊な形で維持されるソフトウェアアプリケーションとすることができる。ハードウェアプロバイダはスナップショットを、ハードウェアストレージアダプター(例えば、特定のストレージアレイ)またはコントローラと連動して動作することにより、ハードウェアレベルで管理する。いずれかの適切なシステムプロバイダ、ソフトウェアプロバイダ、及び/又はハードウェアプロバイダを使用して、単一スナップショットを本発明の示唆に従って実行することができる。更に、システムプロバイダ、ソフトウェアプロバイダ、及び/又はハードウェアプロバイダをバックアップ/復元アプリケーションのコードの一部分とすることができるので、同じアプリケーションによって、単一スナップショットの実行を要求するリクエストが行なわれ、そして単一スナップショットが実際に実行される。他の構成を、本明細書が示唆する事項を考慮に入れて使用することもできる。   In another embodiment, for example using a copy on write method, the snapshot 214 is a differential representation of the changes made to the physical storage 212 at two points in time. The first copy at the first time point includes a copy of the physical storage 212 before the new change is overwritten on the physical storage. As changes are made to physical storage 212, the pointer can be placed in the area to be changed and the pointer can be maintained in a pointer list stored in physical storage 212. Using the pointer list and the first copy, a snapshot 214 can be created, which represents at least a portion of the physical storage 212 at the time the snapshot was created. A single snapshot can be generated using a system provider, software provider, and / or hardware provider. As used herein, a provider is broadly defined as hardware or software that creates and maintains a snapshot. An example of a system provider is a software provider that is specific to a particular operating system. For example, the Windows® operating system has a pre-configured default software provider, which creates a snapshot, but other operating systems implement similar functionality in the operating system. The software provider intercepts I / O requests at the software level between the file system and the backup / restore volume manager. Thus, a software provider can be a software application that is maintained in a special way to create and / or maintain snapshots. Hardware providers manage snapshots at the hardware level by operating in conjunction with a hardware storage adapter (eg, a specific storage array) or controller. A single snapshot can be performed in accordance with the teachings of the present invention using any suitable system provider, software provider, and / or hardware provider. In addition, since the system provider, software provider, and / or hardware provider can be part of the backup / restore application code, the same application makes a request to perform a single snapshot and simply One snapshot is actually executed. Other configurations may also be used taking into account the implications suggested herein.

図5及び6を参照すると、スナップショットを作成する例示としてのシステム及び方法が示され、当該システムは、Windows(登録商標)オペレーティングシステムに搭載されるシステムを表わす。ここで、幾つかのコンポーネントは図2に示すものと同じであり、かつ同様の構成要素は同様の参照番号により表記されることを理解されたい。更に、他のオペレーティングシステムは同様の、または等価なコンポーネント、或いは異なるコンポーネントを使用して、スナップショットを実行することができる。図5では、リクエスター218はオペレーティングシステムのコンポーネントを起動してスナップショットを作成する。リクエスター218は一般的にいずれかのアプリケーションであり、このアプリケーションは、スナップショットをとるようにリクエストする。1つの実施形態では、リクエスター218はバックアップ/復元アプリケーション202、スナップショットマネージャ206、及び/又はスナップショットジェネレータ208とすることができる。リクエスター218になるのが何であるかを定義することが重要であるのではなく、リクエスターがスナップショットの作成を直接リクエストするのか、または間接的にリクエストするのかだけが重要であるので、リクエスターという用語は、スナップショットを作成する実施形態例、及びバックアップ/復元処理を説明するために使用される。   With reference to FIGS. 5 and 6, an exemplary system and method for creating a snapshot is shown, which represents a system mounted on a Windows® operating system. Here, it should be understood that some components are the same as those shown in FIG. 2, and like components are labeled with like reference numerals. In addition, other operating systems can perform snapshots using similar or equivalent components, or different components. In FIG. 5, requester 218 activates operating system components to create a snapshot. The requester 218 is typically any application that requests to take a snapshot. In one embodiment, requester 218 may be backup / restore application 202, snapshot manager 206, and / or snapshot generator 208. It is not important to define what will be the requester 218, but only the requester is requesting the creation of the snapshot directly or indirectly, so it is important. The term star is used to describe an example embodiment for creating a snapshot and a backup / restore process.

リクエスター218(リクエスターは1つの実施形態では、スナップショットジェネレータ208とすることができる)はシャドウコピーサービス220と通信し、このシャドウコピーサービスは、クライアントの単一スナップショットの作成に参加するオペレーティングシステムサービスである。シャドウコピーサービスの場合、スナップショットはシャドウコピーまたは仮想ボリュームと表記することができることもある。コピーサービス220はリクエスター218に対して、選択バックアップグループ群に対応するデータをどのボリュームに格納すべきかについて特定する。上で説明したように、VSSボリュームは、例えば変更リストに含めることができる、または含める必要がない一つ以上のボリュームに格納されるデータを格納することができる。コピーサービス220は、単一スナップショットに記録する必要のあるボリューム群の全てを特定する。次に、リクエスター218がコピーセットに含まれるこれらのボリュームを特定する。   The requester 218 (which can be the snapshot generator 208 in one embodiment) communicates with the shadow copy service 220, which is an operating system that participates in the creation of a single snapshot of the client. It is a system service. In the case of the shadow copy service, the snapshot may be expressed as a shadow copy or a virtual volume. The copy service 220 identifies to the requester 218 which volume the data corresponding to the selected backup group group should be stored. As described above, a VSS volume may store data stored in one or more volumes that may or may not be included in a change list, for example. The copy service 220 identifies all of the volume groups that need to be recorded in a single snapshot. Next, requester 218 identifies those volumes included in the copy set.

1つの例では、VSSボリュームのデータがCドライブ及びDドライブに保存され、そしてユーザがCドライブ(ライターに関連する)、Dドライブ(ライターに関連する)、Gドライブ(ライターに関連しない)、及びVSSボリューム(ライターに関連する)のバックアップをリクエストすると仮定する。結果として得られるコピーセットはCドライブボリューム、Dドライブボリューム、及びGドライブボリュームを含むことになる。他のどのボリュームも、コピーセットに含める必要はない、というのは、VSSに関する情報が既にCドライブボリューム及びDドライブボリュームに記録されているからである。別の例では、ユーザがDドライブ、Gドライブ、及びVSSボリュームのみをバックアップ対象として選択すると仮定する。コピーセットはCドライブボリューム、Dドライブボリューム、及びGドライブボリュームを含むことになる。この例では、Cドライブボリュームがコピーセットに含まれる、というのは、VSSボリュームに関する情報がCドライブに保存されるからである。更に、別の例では、ユーザは単に、VSSボリューム(または、当該ボリュームのサブグループ)をバックアップ対象として選択することができる。コピーセットは、Cドライブボリューム及びDドライブボリュームのようなVSSボリュームグループに関する情報を記録するいずれのボリュームも含むことができる。最後に、1つの実施形態では、ライターを使用する全てのアプリケーションをVSSボリュームに格納することができる。しかしながら、VSSボリュームに、ライターを使用する全てのアプリケーション及び/又はサービスを格納する必要はなく、かつアプリケーション及び/又はサービスを他のボリュームに格納することができることを理解されたい。この状況では、または書き込みコンポーネントを使用するアプリケーションまたはサービスがVSSボリューム等価物の内部でグループ化されない他のオペレーティングシステムでは、ユーザは、いずれのライターにも関連付けることができるバックアップグループ群のみを、またはいずれのライターにも関連付けることができず、しかもいずれのVSSバックアップグループにも関連付けられないバックアップグループ群のみを選択することができる。従って、コピーセットは、これらのバックアップグループに対応するこれらのボリュームのみから成る。従って、これまでの例は、別のバックアップグループ(例えば、VSSボリューム)には当該ボリュームをバックアップするために当該ボリュームに関する情報が必要になるので、当該ボリュームがユーザによってバックアップ対象として最初に選択されることがない場合でも、或るボリュームを或るコピーセットに含めることができることを示すために提示される。更に、ライター群に関連付けられるボリューム群(例えば、C及びDドライブ)及びライター群に関連付けられないボリューム群(例えば、Gドライブ)の両方をコピーセットに含めることができる。ライター群に関連付けられる、または関連付けられない、或いはVSS情報を保存するC,D,及びGドライブの例は、例としてのみ提示されるのであり、そしてC及びDドライブをライター群に関連付ける必要はなく、かつライター群に関連付けられないものとして説明されるGドライブを実際には、他のデザイン構成のライター群に関連付けることができることを、またはこれらのドライブはオペレーティングシステム状態情報を保存する必要がないことを理解されたい。更に、コピーセット群はこれまで、ボリューム群全体またはメインディレクトリ群全体の表示を含むものとして説明してきたが、全ボリュームまたは全ディレクトリに満たないボリュームまたはディレクトリは、或るコピーセットに含めることができるので、バックアップグループを保存するために必要な情報が当該コピーセットまたは単一スナップショットに含まれる限り、単一スナップショットに記録することができることを理解されたい。   In one example, VSS volume data is stored on the C and D drives, and the user drives C drive (related to the writer), D drive (related to the writer), G drive (not related to the writer), and Suppose you request a backup of a VSS volume (related to a writer). The resulting copy set will include a C drive volume, a D drive volume, and a G drive volume. No other volume needs to be included in the copy set because information about VSS is already recorded in the C drive volume and D drive volume. In another example, assume that the user selects only D drive, G drive, and VSS volumes as backup targets. The copy set includes a C drive volume, a D drive volume, and a G drive volume. In this example, the C drive volume is included in the copy set because information about the VSS volume is stored in the C drive. Furthermore, in another example, the user can simply select a VSS volume (or a subgroup of the volume) as a backup target. A copy set can include any volume that records information about a VSS volume group, such as a C drive volume and a D drive volume. Finally, in one embodiment, all applications that use the writer can be stored on the VSS volume. However, it should be understood that not all applications and / or services that use a writer need be stored on a VSS volume, and that applications and / or services can be stored on other volumes. In this situation, or on other operating systems where the application or service that uses the write component is not grouped within the VSS volume equivalent, the user can only backup groups that can be associated with any writer, or any It is possible to select only backup group groups that cannot be associated with any other writer and that are not associated with any VSS backup group. Therefore, the copy set consists only of these volumes corresponding to these backup groups. Therefore, in the examples so far, another backup group (for example, VSS volume) needs information about the volume in order to back up the volume, so that the volume is first selected as a backup target by the user. If not, it is presented to show that a volume can be included in a copy set. In addition, both a volume group (eg, C and D drives) associated with the writer group and a volume group (eg, G drive) not associated with the writer group can be included in the copy set. Examples of C, D, and G drives associated with or not associated with writers or storing VSS information are provided as examples only, and there is no need to associate C and D drives with writers And that G drives described as not associated with writers can actually be associated with writers of other design configurations, or that these drives do not need to store operating system state information I want you to understand. Further, while copy sets have been described so far as including an indication of an entire volume or an entire main directory, volumes or directories that are less than all volumes or directories can be included in a copy set. Therefore, it should be understood that a single snapshot can be recorded as long as the information necessary for storing the backup group is included in the copy set or single snapshot.

バックアップグループ群に対応するボリューム群を特定するためには、コピーサービス220が各バックアップグループに関連するライター群を列挙して、どのライター群がクライアント側でアクティブになっているかを判断する必要がある。コピーサービス220は複数のライター222〜224と通信する。ライター222〜224は、少なくとも一つのアプリケーションまたはサービス、及び少なくとも一つのバックアップグループに関連付けられる。ライター222〜224はメタデータを供給し、メタデータはライターの名前、バックアップ対象のファイル及びコンポーネントのようなアイテムまたはデータ、どのアイテムまたはデータをバックアップから除外すべきかについての情報、及び/又はコンポーネント及びアプリケーションをバックアップ及び復元の間にハンドリングする方法を含む。ライター222〜224は、バックアップされているアプリケーションまたはサービスのタイプの特定も行なう。   In order to identify the volume group corresponding to the backup group group, the copy service 220 needs to enumerate the writer group associated with each backup group and determine which writer group is active on the client side. . Copy service 220 communicates with a plurality of writers 222-224. The writers 222-224 are associated with at least one application or service and at least one backup group. Writers 222-224 provide metadata, which includes the name of the writer, items or data such as files and components to be backed up, information about which items or data should be excluded from backup, and / or components and Includes a method for handling applications during backup and restore. The writers 222-224 also identify the type of application or service being backed up.

ライターは、例えばメールサーバ、データベース、オペレーティングシステムコンポーネント、または他のアプリケーション或いはデータストアに関連付ける。本発明の実施形態は、ライター機能または同様の機能を提供する他のオペレーティングシステム及びコンピュータに連動させて用いられ、ライターを用いるオペレーティングシステムの一つの例がWindows(登録商標)である。このようにして、コピーサービス220はメタデータを、クライアント側でアクティブになっている各ライターから受信することができ、今度はライターがコピーサービス220を支援して、コピーサービスにVSSボリュームに関連するボリューム群、またはライターに関連付けられる他のいずれかのボリュームを特定させる。   A writer is associated with, for example, a mail server, database, operating system component, or other application or data store. Embodiments of the present invention are used in conjunction with other operating systems and computers that provide writer functions or similar functions, and one example of an operating system that uses a writer is Windows. In this way, the copy service 220 can receive metadata from each writer that is active on the client side, which in turn assists the copy service 220 to associate the VSS volume with the copy service. Have the volume group or any other volume associated with the writer identified.

一旦、コピーセットが特定されると、コピーサービス220はクライアント側のストレージ210と通信する。ストレージ210内の物理ボリューム212は、バックアップグループ群の内の少なくとも一つに対応するデータを格納する。矛盾の無いデータセットを物理ボリューム212に格納した後、スナップショット214を作成して、矛盾の無いデータの表現または複製を物理ボリュームに反映させる。リクエスター218はストレージ210と通信して、ストレージ210に保存される単一スナップショット214にアクセスすることもできる。   Once the copy set is identified, the copy service 220 communicates with the client-side storage 210. The physical volume 212 in the storage 210 stores data corresponding to at least one of the backup group groups. After a consistent data set is stored in the physical volume 212, a snapshot 214 is created to reflect the consistent data expression or copy in the physical volume. Requester 218 can also communicate with storage 210 to access a single snapshot 214 stored in storage 210.

図6を参照しながら、スナップショットを、例えば図5に示すシステムを使用して作成する方法例について次に説明する。ステップ602では、リクエスター218は通常、リクエスター218がコピーセットを選択バックアップグループ群に対応するボリューム群から作成するように支援するコピーサービス220とのインターフェース接続を行なうことにより始動する。ライターを含まないバックアップグループ群に対応するボリューム群をコピーセットに追加する。一つ以上の選択バックアップグループがライター群を有する場合、これらのバックアップグループに対応するボリューム群は、バックアップグループの各ライターにクエリーを出して、関連するデータをどのようにしてバックアップすべきかについて記述した情報だけでなく、どのデータをバックアップすべきかを特定する情報を取得することにより特定される。図6によれば、コピーサービス220は、現在クライアント側でアクティブになっているライター222〜224を列挙して、ライター群に関連付けられるボリューム群を特定する。クライアント側でアクティブになっているライター222〜224は動的に発見される。バックアップグループ群の内容は動的に、この場合は発見されたライター群に基づいて収集される。   Next, an example of a method for creating a snapshot using the system shown in FIG. 5 will be described with reference to FIG. In step 602, the requester 218 typically starts by making an interface connection with the copy service 220 that assists the requester 218 to create a copy set from the volume group corresponding to the selected backup group group. Add a volume group corresponding to the backup group group that does not include the writer to the copy set. If one or more selected backup groups have writers, the volumes corresponding to these backup groups query each writer in the backup group to describe how the associated data should be backed up It is specified by acquiring not only information but also information specifying which data should be backed up. According to FIG. 6, the copy service 220 lists the writers 222 to 224 that are currently active on the client side, and identifies the volume group associated with the writer group. Writers 222-224 that are active on the client side are dynamically discovered. The contents of backup groups are collected dynamically, in this case based on discovered writers.

従って、ステップ604では、コピーセットが、クライアントのスナップショットの一部分として含める必要のあるボリューム群を特定することにより作成される。従って、コピーセットは、これらには制限されないが、ライターを持たないバックアップグループを特定するボリューム、及び/又はライターを持つバックアップグループを特定するボリューム、或いは両方のボリュームを含む。コピーセットが作成された後、リクエスター218はスナップショットを作成する状態になる。コピーセットによってバックアップグループ群に対応するボリューム群が特定されるので、単一スナップショットは、特定のクライアントに関してバックアップされている選択バックアップグループ群に対応するボリューム群の全ての正確な表現を含むことになる。   Thus, in step 604, a copy set is created by identifying the volumes that need to be included as part of the client snapshot. Thus, the copy set includes, but is not limited to, a volume that identifies a backup group that does not have a writer and / or a volume that identifies a backup group that has a writer, or both volumes. After the copy set is created, the requester 218 is ready to create a snapshot. Since the copy set identifies the volume group corresponding to the backup group group, a single snapshot will contain all accurate representations of the volume group corresponding to the selected backup group group being backed up for a particular client. Become.

ステップ606では、コピーセットに特定される関連ボリュームのスナップショットが実行される。バックアップ処理に関連するバックアップグループ群を同時に処理して単一スナップショットに記録する対象となるボリューム群を特定する。しかしながら、スナップショットを実行する前に、シャドウコピーサービス220はライター222〜224に、スナップショットが発生しようとしていることを通知し、次にこれらのライターに指示して、該当するアプリケーションまたはサービスを中断またはフリーズさせて、クライアントのデータが、例えば新規のトランザクションを中断する処理、現在のトランザクションを終了させる処理、キャッシュをディスクにフラッシュする処理などを行なうことにより、矛盾の無い状態になるようにすることができる。次に、リクエスター218はシャドウコピーサービス220に指示してスナップショットを作成させる。矛盾の無い状態になった後、スナップショットを実行することができる。スナップショットが完了すると、ライター222〜224はアクティビティを再開することができる。スナップショットはクライアントの一つ以上のボリュームに格納されるデータの表現であるので、実行スナップショットに含まれるデータは「スナップショットデータ」とも表記される。   In step 606, a snapshot of the associated volume identified in the copy set is performed. A backup group related to backup processing is simultaneously processed to specify a volume group to be recorded in a single snapshot. However, before performing a snapshot, shadow copy service 220 informs writers 222-224 that a snapshot is about to occur and then instructs these writers to suspend the appropriate application or service. Alternatively, freeze the client data so that it is in a consistent state, for example, by suspending a new transaction, ending the current transaction, or flushing the cache to disk. Can do. Next, the requester 218 instructs the shadow copy service 220 to create a snapshot. A snapshot can be executed after a consistent state. Once the snapshot is complete, writers 222-224 can resume activity. Since the snapshot is a representation of data stored in one or more volumes of the client, the data included in the execution snapshot is also expressed as “snapshot data”.

スナップショットが生成されている間は、ステップ608では、メタデータファイルがコピーセットから得られる情報に基づいて生成される。メタデータファイルは、バックアップ対象のアイテムまたはデータだけでなく、或る例では、バックアップから除外すべきアイテムまたはデータを特定するマップである。メタデータファイルは多くの場合、適切な復元操作の命令を含む。コピーセット及びスナップショットのボリュームがライターに関連付けられる場合、メタデータファイルは、スナップショットが作成される前に収集されるライターデータを含む。ライターデータはファイルに、単一スナップショットの作成が成功するまで書き込まれない。コピーセットの、従ってスナップショットのボリュームがいずれのライターにも対応することがない場合、メタデータファイルはライターデータを含まないことになる。   While the snapshot is being generated, in step 608, a metadata file is generated based on information obtained from the copy set. The metadata file is a map that specifies not only items or data to be backed up but also items or data to be excluded from backup in some examples. Metadata files often contain instructions for proper restore operations. If the copy set and snapshot volume are associated with a writer, the metadata file contains writer data that is collected before the snapshot is created. The writer data is not written to the file until a single snapshot is successfully created. If the copy set, and therefore the snapshot volume, does not correspond to any writer, the metadata file will not contain writer data.

ステップ610では、クライアントコンポーネント202Bはメタデータファイルをスナップショットデータに追加して、変更済みスナップショットファイルを形成する。この操作では、保存するために選択されるライターファイル群(設ける場合)、バックアップグループ群の各々を追加し、物理ボリューム群をスナップショットボリューム群及びマウントポイント群にマッピングする。この追加データは変更することができる、または他のデータは設計検討事項によって変わる形で追加することができる。クライアントコンポーネント202Bは変更済みスナップショットファイルのファイル名を生成する。   In step 610, the client component 202B adds the metadata file to the snapshot data to form a modified snapshot file. In this operation, a writer file group (if provided) and a backup group group selected for saving are added, and a physical volume group is mapped to a snapshot volume group and a mount point group. This additional data can be changed, or other data can be added depending on the design considerations. The client component 202B generates a file name of the modified snapshot file.

5.バックアッププロセス例及び復元プロセス例
次に、クライアントデータをバックアップし、そして復元するプロセスについて更に詳細に説明する。ここでも同じように、例示としての説明を、Windows(登録商標)オペレーティングシステムを使用して提示する。しかしながら、ここで得られる示唆は、他のオペレーティングシステムにも同様に適用することができる。図7を参照すると、バックアッププロセス例が示される。上で説明したように、本発明の1つの態様は単一スナップショットの作成に関するものであり、単一スナップショットは、スナップショットデータを、変更済みスナップショットファイルの選択バックアップグループ群に関連するメタデータとともに含む。変更済みスナップショットファイルは、例えばクライアント108側に格納されて、クライアント108側に保存されるデータに関連するバックアップグループ群を保存するために使用される。変更済みスナップショットファイルは、スナップショットデータ及び復元方法に関するXML記述を含むことができる。
5. Backup Process Example and Restore Process Example Next, the process of backing up and restoring client data will be described in more detail. Again, an illustrative description is presented using the Windows® operating system. However, the suggestions obtained here can be applied to other operating systems as well. Referring to FIG. 7, an example backup process is shown. As explained above, one aspect of the present invention relates to the creation of a single snapshot, where the snapshot data is stored in the meta data associated with the selected backup group of modified snapshot files. Include with data. The modified snapshot file is stored on the client 108 side, for example, and is used to store a backup group group related to data stored on the client 108 side. The modified snapshot file can include XML data related to snapshot data and a restoration method.

ステップ702では、特定のバックアップグループの保存を要求するリクエストが行なわれると、リクエスター218は、保存対象のリクエストバックアップグループに対応するリクエストデータオブジェクト群またはライター群を特定する。リクエスター218は、メタデータを収集してグループを、リクエストデータオブジェクト群、または特定されたライター群に関連する変更済みスナップショットファイルから保存する。1つの実施形態では、変更済みスナップショットファイルによってアクティブライター群のみを特定する。変更済みスナップショットファイルは、ライターコンポーネント群を個々に選択することができる機能に関する情報を含む。例えば、変更済みスナップショットファイルによって、ライターコンポーネント群の幾つかをバックアップまたは復元のために一括して選択する必要があることを通知する。別の例では、幾つかのライターコンポーネントを復元のために個々に選択するが、バックアップのためには個々に選択する必要はない。   In step 702, when a request for saving a specific backup group is made, the requester 218 specifies a request data object group or writer group corresponding to the requested backup group to be saved. The requester 218 collects the metadata and saves the group from the request data object group, or a modified snapshot file associated with the identified writer group. In one embodiment, only the active writer group is identified by the modified snapshot file. The modified snapshot file contains information about the functions that allow individual selection of writer components. For example, a modified snapshot file notifies that some of the writer components need to be selected together for backup or restore. In another example, several writer components are individually selected for restoration, but need not be individually selected for backup.

次に、ステップ706では、バックアップアプリケーションが、変更済みスナップショットファイルに特定されるアイテム及びメタデータのバックアップコピーを行なって、ファイル群を、当該特定のバックアップグループに対応する単一スナップショットから保存する。図4Aを参照しながら上に説明したように、クライアントは同じスナップショットを参照して、特定のバックアップグループに対応するスナップショット部分の位置を特定する。バックアップはバックアップストレージ204に保存される。従って、各バックアップグループに関する保存データは、当該バックアップグループに対応するスナップショットデータ及びメタデータのみを含み、単一スナップショットに同じようにして含まれる他のバックアップグループに対応するスナップショットデータ及びメタデータは含まない。クライアントのデータの特定バージョンにアクセスするために、バックアップストレージは、クライアントのデータの複数の表現を保存するように構成することができる。別の表現をすると、クライアントのデータの時点表現(point in time representations)は再構成することができる。ステップ708では、バックアップが完了した後、単一スナップショットは削除することができる。   Next, in step 706, the backup application makes a backup copy of the items and metadata identified in the modified snapshot file and saves the files from a single snapshot corresponding to the particular backup group. . As described above with reference to FIG. 4A, the client refers to the same snapshot to determine the location of the snapshot portion corresponding to a particular backup group. The backup is stored in the backup storage 204. Therefore, the storage data related to each backup group includes only snapshot data and metadata corresponding to the backup group, and snapshot data and metadata corresponding to other backup groups included in the same manner in a single snapshot. Is not included. In order to access a particular version of the client's data, the backup storage can be configured to store multiple representations of the client's data. In other words, the point-in-time representations of the client's data can be reconstructed. In step 708, after the backup is complete, the single snapshot can be deleted.

図3C及び3Dに示すインターフェース302Cまたは302Dを使用して復元処理を開始することもできる。オペレーティングシステムは通常、論理ユニットとしてバックアップされるので、オペレーティングシステムは普通、ユニットとして復元される。前に示したように、各ライターのメタデータは、バックアップ処理の一部分として保存される。メタデータを使用して、復元がスナップショットバックアップ処理に関するものであるかどうかを判断することができる。   The restoration process can also be initiated using the interface 302C or 302D shown in FIGS. 3C and 3D. Since the operating system is usually backed up as a logical unit, the operating system is usually restored as a unit. As previously indicated, each writer's metadata is stored as part of the backup process. The metadata can be used to determine whether the restore is for a snapshot backup process.

図8は、Windows(登録商標)オペレーティングシステムを使用する復元処理の例示としての方法を示している。ステップ802では、リクエスター218は通常、復元メタデータと表記されることになるものを取り出すことから始動する。一般的に、復元メタデータは、アクティブ状態のライターから収集される特定のメタデータ、及び単一スナップショットに含まれていた特定のライター群/コンポーネント群を最終的に取り込むことになる変更済みスナップショットファイルから収集される保存メタデータの両方を含む。復元処理に使用される復元メタデータは、選択バックアップ時点におけるバックアップデータから得られるので、復元メタデータが、クライアント側にはもはや存在しないライターのデータ、またはクライアント側で現時点において非アクティブ状態になっているライターのデータを含むことが可能である。しかしながら、これらのライターは通常、復元される。なぜならば、クライアントが選択バックアップ時点の状態に復元されているからである。この状態は、天災からの復旧が行なわれる状況でも発生し得る。復元メタデータは通常、シャドウコピーサービス220に渡され、次にサービスに復元処理の間にクエリーを出す。マウントポイント群がライターの保存ファイルリストに含まれる場合、マウントポイント及びマウントポイントが参照するボリュームを含むマウントポイントファイルはライターデータが復元される前には必ず復元される。マウントポイント群はライターデータを正しく復元する、または復旧するために必要である。   FIG. 8 illustrates an exemplary method for a restore process using a Windows® operating system. In step 802, requester 218 typically starts by retrieving what will be represented as restored metadata. In general, restore metadata is a modified snapshot that will eventually capture specific metadata collected from active writers and specific writers / components that were included in a single snapshot. Includes both saved metadata collected from shot files. The restore metadata used for the restore process is derived from the backup data at the time of the selected backup, so the restore metadata is either writer data that no longer exists on the client side, or is inactive on the client side at this time It is possible to include the data of a writer. However, these writers are usually restored. This is because the client is restored to the state at the time of selective backup. This state can also occur in situations where recovery from natural disasters is performed. The restoration metadata is typically passed to the shadow copy service 220 and then queries the service during the restoration process. When the mount point group is included in the writer's saved file list, the mount point file including the mount point and the volume referenced by the mount point is always restored before the writer data is restored. Mount points are necessary to restore or restore writer data correctly.

次に、ステップ804では、復元処理が続いているときに復元メタデータのクエリーを発行する。復元メタデータのクエリーを発行して、例えば特定のライターの復元方法、使用タイプ、ライターを復元するために再起動が必要かどうか、そしていずれかの潜在的な別のロケーションマッピングを判断する。   Next, in step 804, a restoration metadata query is issued when the restoration process continues. Issue a restore metadata query to determine, for example, how to restore a particular writer, usage type, whether a restart is required to restore the writer, and any potential alternative location mappings.

次に、ステップ806では、復元プロセスはシャドウコピーサービスとのインターフェース接続を行ない、そして事前復元コマンドを発行する。事前復元コマンドによって、復元用に選択されたライターコンポーネント群を有するライター群に、復元処理が行われようとしていることを通知する。従って、ライター群、及びライター群に関連するアプリケーションは、復元処理に対して準備する機会を得る。   Next, in step 806, the restore process interfaces with the shadow copy service and issues a pre-restore command. The pre-restoration command notifies the writer group having the writer component group selected for restoration that the restoration process is about to be performed. Thus, writers and applications associated with writers get an opportunity to prepare for the restoration process.

次に、ステップ808では、復元プロセスは、各ライターの復元メタデータに特定される復元方法を実行する。
ファイルが復元処理の間にコピーされた後、事後復元通知を、影響を受けるライターに発行する。従って、ライターは事後復元処理を規定通りに実行することができる。この時点で、サーバはクライアントシステムの再起動を推奨することができる。
Next, in step 808, the restoration process performs the restoration method specified in the restoration metadata for each writer.
After the file is copied during the restore process, issue a post-restore notification to the affected writer. Therefore, the writer can execute the post-restoration process as prescribed. At this point, the server can recommend restarting the client system.

図3C及び3Dに示すインターフェース302C及び302Dは、バックアップグループ、ライター、及び/又は書き込みコンポーネントを復元のために選択的に特定する方法の例である。選択されるバックアップグループ、ライター、及び/又は書き込みコンポーネントは復元アイテムの例である。従って、復元処理は、復元アイテムに含まれるライターを利用して進行する。復元方法は、例えば各ライターに関して、各ライターに関連する復元メタデータに従って行なわれる。書き込みコンポーネントが非選択状態になっている場合、復元メタデータの該当する部分は復元処理の間に無効にする、または無視される。オペレーティング固有のバックアップグループが復元のために選択される場合、復元処理ではユーザに促して、全ての適切なバックアップグループ、ライター、及び/又は書き込みコンポーネントがオペレーティングシステムを論理ユニットとして復元するようにという推奨に応じるために選択されてしまう、ということがないようにする。しかしながら、復元処理は、推奨されるバックアップグループを選択することなく進めることができる。   The interfaces 302C and 302D shown in FIGS. 3C and 3D are examples of methods for selectively identifying backup groups, writers, and / or write components for restoration. The selected backup group, writer, and / or write component is an example of a restore item. Therefore, the restoration process proceeds using the writer included in the restoration item. The restoration method is performed according to restoration metadata associated with each writer, for example, for each writer. If the writing component is in a non-selected state, the corresponding portion of the restoration metadata is invalidated or ignored during the restoration process. If an operating-specific backup group is selected for restore, the restore process will prompt the user and recommend that all appropriate backup groups, writers, and / or write components restore the operating system as a logical unit. So that they are not selected to meet the requirements. However, the restoration process can proceed without selecting a recommended backup group.

或るライターの或るコンポーネントが復元のために選択されない場合、或るバックアップグループの或るライターが復元のために選択されない場合、または或るバックアップグループが、当該バックアップグループに関連するライターを全く持たない場合、復元プロセスは、復元メタデータの内、選択されないコンポーネントまたはライターに対応する部分を無視する、または無効にすることができる。   A certain component of a writer is not selected for restore, a writer of a backup group is not selected for restore, or a backup group has no writers associated with the backup group If not, the restore process can ignore or disable portions of the restore metadata that correspond to unselected components or writers.

6.コンピューティングシステム例
本発明は、データをバックアップする方法及びシステムの両方に拡張することができる。本発明の実施形態は以下に更に詳細に説明するように、種々のコンピュータハードウェアを含む特定用途向けコンピュータまたは汎用コンピュータを含む。本発明の技術範囲に含まれる実施形態は更に、コンピュータ実行可能な命令またはデータ構造を実装する、または格納するコンピュータ読み取り可能な媒体を含む。このようなコンピュータ読み取り可能な媒体は、汎用コンピュータまたは特定用途向けコンピュータによるアクセスが可能ないずれかの利用可能な媒体である。一例として、かつ非制限的な例として、このようなコンピュータ読み取り可能な媒体は、RAM,ROM,EEPROM,CD−ROM,または他の光ディスクストレージデバイス、磁気ディスクストレージデバイス、または他の磁気ストレージデバイス、或いはコンピュータ実行可能な命令またはデータ構造の形態の所望のプログラムコード手段を搭載する、または格納するために使用することができ、かつ汎用コンピュータまたは特定用途向けコンピュータによるアクセスが可能な他のいずれかの媒体を含む。情報がネットワークまたは別の通信接続(有線、無線、または有線または無線の組み合わせ)を経由してコンピュータに転送される、または供給される場合、コンピュータは接続をコンピュータ読み取り可能な媒体として正しく認識する。従って、このような接続はいずれも、コンピュータ読み取り可能な媒体と正しく表記される。上述した手段の組み合わせもコンピュータ読み取り可能な媒体の範疇に含めるべきである。コンピュータ実行可能な命令は、例えば汎用コンピュータ、特定用途向けコンピュータ、または特定用途向け処理デバイスに所定の機能または機能グループを実行させる命令及びデータを含む。
6). Exemplary Computing System The present invention can be extended to both methods and systems for backing up data. Embodiments of the present invention include application specific computers or general purpose computers including various computer hardware, as will be described in more detail below. Embodiments within the scope of the present invention further include computer-readable media that implement or store computer-executable instructions or data structures. Such computer-readable media can be any available media that can be accessed by a general purpose or special purpose computer. By way of example and not limitation, such computer readable media may be RAM, ROM, EEPROM, CD-ROM, or other optical disk storage device, magnetic disk storage device, or other magnetic storage device, Or any other that can be used to carry or store the desired program code means in the form of computer-executable instructions or data structures and accessible by a general purpose or special purpose computer Includes media. When information is transferred or supplied to a computer via a network or another communication connection (wired, wireless, or a combination of wired or wireless), the computer correctly recognizes the connection as a computer-readable medium. Thus, any such connection is correctly labeled as a computer readable medium. Combinations of the above means should also be included within the scope of computer-readable media. Computer-executable instructions include, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing device to perform a certain function or group of functions.

以下の説明は、本発明を用いることができる適切なコンピューティング環境に関する簡単な概要説明を提示するために行なわれる。必要ではないが、本発明について、コンピュータがネットワーク環境で実行しているプログラムモジュールのようなコンピュータ実行可能な命令との一般的な関連で説明する。一般的に、プログラムモジュールは、特定のタスクを実行する、または特定の抽象データタイプを実現するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。コンピュータ実行可能な命令、関連データ構造、及びプログラムモジュールは、本明細書に開示する方法のステップを実行するプログラムコード手段の例を表わす。このような実行可能な命令または関連データ構造の特定シーケンスは、このようなステップで説明される機能を実行する該当する行為の例を表わす。   The following description is presented to provide a brief summary description of a suitable computing environment in which the present invention may be used. Although not required, the invention will be described in the general context of computer-executable instructions, such as program modules, being executed by a computer in a network environment. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Computer-executable instructions, associated data structures, and program modules represent examples of program code means that perform the steps of the methods disclosed herein. Such a specific sequence of executable instructions or associated data structures represents an example of a corresponding act of performing the functions described in such steps.

この技術分野の当業者であれば、本発明を、パーソナルコンピュータ、携帯型デバイス、マルチプロセッサシステム、マイクロプロセッサ応用電子機器またはプログラム可能なコンシューマ電子機器、ネットワークPC、ミニコンピュータ、メインフレームコンピュータなどを含む多くのタイプのコンピュータシステム構成を持つネットワークコンピューティング環境で実施することができることが理解できるであろう。本発明は更に、タスクが通信ネットワークを通して接続される(有線リンク、無線リンクによって、または有線リンクまたは無線リンクの組み合わせによって)ローカルデバイス及びリモート処理デバイスによって行なわれる分散コンピューティング環境で実施することもできる。分散コンピューティング環境では、プログラムモジュールはローカルメモリストレージデバイス及びリモートメモリストレージデバイスの両方に配置することができる。   Those skilled in the art will recognize that the present invention includes personal computers, portable devices, multiprocessor systems, microprocessor-applied electronics or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. It will be appreciated that the invention can be implemented in a network computing environment having many types of computer system configurations. The invention may also be practiced in distributed computing environments where tasks are performed by local and remote processing devices (via wired links, wireless links, or a combination of wired or wireless links) connected through a communication network. . In a distributed computing environment, program modules can be located in both local and remote memory storage devices.

本発明は他の特定の形態で、本発明の技術思想または基本的特徴から逸脱しない範囲で具体化することができる。記載の実施形態は、全ての点で単なる例示として捉えられ、かつ非制限的に解釈されるべきである。従って、本発明の技術範囲は、これまでの記述によってではなく、添付の請求項によって示される。請求項の等価物の意味及び範囲に包まれる全ての変更は請求項の技術的範囲に含まれるべきものである。   The present invention can be embodied in other specific forms without departing from the technical idea or basic features of the present invention. The described embodiments are to be considered in all respects only as illustrative and are to be interpreted in a non-limiting manner. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope.

本発明の実施形態を実施する環境の例を示す。2 illustrates an example environment in which embodiments of the present invention are implemented. バックアップ及び/又は復元操作を行なうシステム例を示す。1 illustrates an example system that performs backup and / or restore operations. バックアップグループを体系化するユーザインターフェース例を示す。An example user interface for organizing backup groups is shown. バックアップグループを体系化する別のユーザインターフェース例を示す。Fig. 4 shows another example user interface for organizing backup groups. 復元操作を行なうユーザインターフェース例を示す。An example of a user interface for performing a restoration operation is shown. 復元操作を行なう別のユーザインターフェース例を示す。An example of another user interface for performing a restoration operation is shown. 単一スナップショットを作成し、そして使用するフローチャート例を示す。Fig. 4 shows an example flow chart for creating and using a single snapshot. 図3Aに示すバックアップグループの選択に基づくバックアップグループの変更リスト例を示す。3B shows an example of a backup group change list based on the selection of the backup group shown in FIG. 3A. は図3Bに示すバックアップグループの選択に基づくバックアップグループの変更リスト例を示す。Shows an example of a backup group change list based on the backup group selection shown in FIG. 3B. スナップショットを生成するシステムの1つの実施形態を示す。1 illustrates one embodiment of a system for generating a snapshot. スナップショットを生成するフローチャート例である。It is an example of a flowchart which produces | generates a snapshot. データをバックアップするフローチャート例である。It is an example of the flowchart which backs up data. データを復元するフローチャート例である。It is an example of the flowchart which restore | restores data.

Claims (24)

一つ以上のクライアントからのデータのバックアップ処理を実行するサーバと通信する一つ以上のクライアントを含むシステムにおいて、前記データはバックアップグループに体系化され、第1クライアントからのデータを保存する方法は、
単一スナップショットを生成する必要があることを示す信号を受信するステップと;
一つ以上のバックアップグループを保存すべきであることを示す通知を受信するステップと;
前記一つ以上のバックアップグループに対応する一つ以上のディレクトリを特定するステップと;
特定される前記一つ以上のディレクトリの各々の少なくとも一部分を使用して、単一スナップショットを作成するようにリクエストするステップと、
を備える方法。
In a system including one or more clients communicating with a server that performs a backup process of data from one or more clients, the data is organized into a backup group, and the method of storing data from the first client includes:
Receiving a signal indicating that a single snapshot needs to be generated;
Receiving a notification indicating that one or more backup groups should be stored;
Identifying one or more directories corresponding to the one or more backup groups;
Requesting to create a single snapshot using at least a portion of each of the one or more directories identified;
A method comprising:
前記単一スナップショットを生成する必要があることを示す信号は、前記サーバのバックアップマネージャによって生成されるスナップショットジョブリクエストを含む、請求項1記載の方法。 The method of claim 1, wherein the signal indicating that the single snapshot needs to be generated includes a snapshot job request generated by a backup manager of the server. 前記一つ以上のバックアップグループに対応する一つ以上のディレクトリを特定するステップは、
前記第1クライアント側でアクティブになっている一つ以上のバックアップグループに関連する一つ以上のライターを列挙するステップと;
前記第1クライアント側でアクティブになっている前記一つ以上のライターから、メタデータを受信するステップと;
前記受信メタデータを分析して前記一つ以上のライターに関連付けられる前記一つ以上のディレクトリを特定するステップと;
前記特定される一つ以上のディレクトリを、単一スナップショットの作成を要求する前記リクエストに含めるステップと、
を含む、請求項1記載の方法。
Identifying one or more directories corresponding to the one or more backup groups,
Listing one or more writers associated with one or more backup groups active on the first client side;
Receiving metadata from the one or more writers active on the first client side;
Analyzing the received metadata to identify the one or more directories associated with the one or more writers;
Including the identified one or more directories in the request to request creation of a single snapshot;
The method of claim 1 comprising:
前記単一スナップショット開始信号を受信するステップは、先頭バックアップグループを受信するステップを含み、前記先頭バックアップグループは前記第1クライアント側のどのデータにも関連付けられることがなく、且つ前記先頭バックアップグループを実行することによって、前記選択された一つ以上のバックアップグループに対応する前記一つ以上のディレクトリの特定が開始される、請求項1記載の方法。 The step of receiving the single snapshot start signal includes the step of receiving a head backup group, the head backup group is not associated with any data on the first client side, and the head backup group is The method of claim 1, wherein executing starts identifying the one or more directories corresponding to the selected one or more backup groups. 前記特定される一つ以上のディレクトリの各々の前記少なくとも一部分の前記単一スナップショットを実行するステップを更に備える、請求項1記載の方法。 The method of claim 1, further comprising performing the single snapshot of the at least a portion of each of the one or more specified directories. 前記単一スナップショットの削除をリクエストするステップを更に備える、請求項1記載の方法。 The method of claim 1, further comprising requesting deletion of the single snapshot. 前記第1クライアントの単一スナップショットを実行している間、各ライターに関連付けられる各アプリケーションに処理を一時中断させるステップを更に備える、請求項6記載の方法。 The method of claim 6, further comprising causing each application associated with each writer to suspend processing while performing a single snapshot of the first client. 末尾バックアップグループを受信するステップを更に備え、前記末尾バックアップグループは前記第1クライアント側のどのデータにも関連付けられることがなく、且つ前記末尾バックアップグループを実行することによって、前記単一スナップショットの削除のリクエストが開始される、請求項6記載の方法。 Receiving a tail backup group, wherein the tail backup group is not associated with any data on the first client side, and the tail backup group is deleted to delete the single snapshot The method of claim 6, wherein the request is initiated. 前記一つ以上のバックアップグループはリストとして受信される、請求項1記載の方法。 The method of claim 1, wherein the one or more backup groups are received as a list. 各アプリケーションに新規のトランザクションを中断させるステップと;
各アプリケーションに現在行なっているトランザクションを終了させるステップと;
各アプリケーションに関連する全てのキャッシュをディスクにフラッシュするステップと、
を更に備える、請求項9記載の方法。
Causing each application to interrupt a new transaction;
Ending the current transaction for each application;
Flushing all caches associated with each application to disk;
The method of claim 9, further comprising:
前記単一スナップショットが実行された後で、各ライターに関連付けられる各アプリケーションに処理を再開させるステップを更に備える、請求項9記載の方法。 The method of claim 9, further comprising causing each application associated with each writer to resume processing after the single snapshot is performed. 前記特定される一つ以上のディレクトリの各々の少なくとも一部分はコピーセットに含まれ、単一スナップショットの作成を要求する前記リクエストは、前記コピーセットで特定される一つ以上のディレクトリの前記一部分を使用して行なわれる、請求項1記載の方法。 At least a portion of each of the one or more specified directories is included in a copy set, and the request to create a single snapshot includes the portion of the one or more directories specified in the copy set. The method of claim 1, wherein the method is performed using. 一つ以上のディレクトリは、ユーザデータ、システムデータ、オペレーティングシステム、アプリケーション、サービス、前記第1クライアントのオペレーティングシステム状態、これらの要素のコンポーネント、またはこれらの要素の組み合わせの内の少なくとも一つに関連するデータを含む、請求項1記載の方法。 One or more directories are associated with at least one of user data, system data, operating system, application, service, operating system state of the first client, components of these elements, or combinations of these elements. The method of claim 1, comprising data. バックアップグループに対応する前記データの或る部分、または全ての保存を実行するために、前記単一スナップショットを参照するステップを更に備える、請求項1記載の方法。 The method of claim 1, further comprising referencing the single snapshot to perform storage of a portion or all of the data corresponding to a backup group. 一つ以上のバックアップグループを保存すべきであることを示す通知を受信するステップは、ユーザが一つ以上のバックアップグループを、ユーザインターフェースを通して選択することを可能にするステップを含む、請求項1記載の方法。 The method of claim 1, wherein receiving a notification indicating that one or more backup groups should be saved includes allowing a user to select one or more backup groups through a user interface. the method of. 一つ以上のクライアントからのデータのバックアップコピーを保存するサーバと通信する一つ以上のクライアントを含むシステムにおいて、クライアントは、
一つ以上のバックアップグループの保存を、一つ以上のバックアップグループの単一スナップショットを使用して実行するように構成されるバックアップアプリケーションの少なくとも一部分と;
前記バックアップアプリケーションと通信するスナップショットマネージャであって、単一スナップショットを生成する必要があることを示す信号を検出するように構成される前記スナップショットマネージャと;
前記スナップショットマネージャと通信し、かつ前記単一スナップショットの実行をリクエストするように構成されるスナップショットジェネレータであって、単一スナップショットを、前記単一スナップショットがもはや必要ではないことを示す信号を受信するまで維持する、前記スナップショットジェネレータと;
保存対象の前記クライアントのデータを維持するように構成されるストレージデバイスと、を備え、
前記データは、ディレクトリ、ユーザデータ、システムデータ、オペレーティングシステム、アプリケーション、サービス、クライアントのオペレーティングシステム状態、これらの要素のコンポーネント、またはこれらの要素の組み合わせの内の一つ以上である、
システム。
In a system that includes one or more clients in communication with a server that stores backup copies of data from one or more clients, the client includes:
At least a portion of a backup application configured to perform storage of one or more backup groups using a single snapshot of one or more backup groups;
A snapshot manager in communication with the backup application, the snapshot manager configured to detect a signal indicating that a single snapshot needs to be generated;
A snapshot generator configured to communicate with the snapshot manager and request execution of the single snapshot, the single snapshot indicating that the single snapshot is no longer needed The snapshot generator, which is maintained until a signal is received;
A storage device configured to maintain the data of the client to be saved,
The data is one or more of a directory, user data, system data, operating system, application, service, client operating system state, a component of these elements, or a combination of these elements.
system.
前記スナップショットマネージャは、先頭バックアップグループを受信し、そして実行するように構成され、前記先頭バックアップグループは前記クライアント側のどのデータにも関連付けられることがなく、先頭バックアップグループを実行することによって、前記スナップショットジェネレータが始動する、請求項16記載のシステム。 The snapshot manager is configured to receive and execute a first backup group, the first backup group is not associated with any data on the client side, and by executing the first backup group, the The system of claim 16, wherein the snapshot generator is started. スナップショットジェネレータからのリクエストに応答して単一スナップショットを実行するように構成される、単一スナップショットを実行する手段を更に備る、請求項16記載のシステム。 The system of claim 16, further comprising means for performing a single snapshot configured to perform a single snapshot in response to a request from a snapshot generator. 単一スナップショットを実行する前記手段は、システムプロバイダ、ハードウェアプロバイダ、またはソフトウェアプロバイダの内の少なくとも一つを含む、請求項18記載のシステム。 The system of claim 18, wherein the means for performing a single snapshot comprises at least one of a system provider, a hardware provider, or a software provider. 単一スナップショットを実行する手段は、シャドウコピーサービスを含む、請求項18記載のシステム。 The system of claim 18, wherein the means for performing a single snapshot includes a shadow copy service. 前記シャドウコピーサービスは、
前記クライアント側でアクティブになっている一つ以上のバックアップグループに関連する一つ以上のライターを列挙し;
メタデータを、前記クライアント側でアクティブになっている前記一つ以上のライターから受信し;
ライターを有する前記バックアップグループに対応する一つ以上のディレクトリを特定する
ように構成される、請求項20記載のシステム。
The shadow copy service
List one or more writers associated with one or more backup groups active on the client side;
Receiving metadata from the one or more writers active on the client side;
21. The system of claim 20, configured to identify one or more directories corresponding to the backup group having a writer.
前記スナップショットジェネレータは、
前記一つ以上のバックアップグループに対応する一つ以上のディレクトリを特定し;
コピーセットにおいて特定される一つ以上のディレクトリの各々の少なくとも一部分をコンパイルする
ように更に構成される、請求項16記載のシステム。
The snapshot generator
Identifying one or more directories corresponding to the one or more backup groups;
The system of claim 16, further configured to compile at least a portion of each of the one or more directories identified in the copy set.
前記スナップショットジェネレータは、前記クライアントの前記単一スナップショットを実行している間、各ライターに関連付けられる各アプリケーションに処理を一時中断させ、前記単一スナップショットが実行された後で、各ライターに関連付けられる各アプリケーションに処理を再開させるように更に構成される、請求項20記載のシステム。 The snapshot generator causes each application associated with each writer to suspend processing while executing the single snapshot of the client, and allows each writer to execute after the single snapshot is executed. 21. The system of claim 20, further configured to cause each associated application to resume processing. ユーザに、一つ以上のバックアップグループを選択させることを可能にするユーザインターフェースを更に備える、請求項16記載のシステム。 The system of claim 16, further comprising a user interface that allows a user to select one or more backup groups.
JP2008519541A 2005-06-29 2006-06-29 Creating a single client snapshot using the client utility Active JP4712873B2 (en)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US11/169,418 2005-06-29
US11/170,015 US7523278B2 (en) 2005-06-29 2005-06-29 Backup and restore operations using a single snapshot
US11/170,015 2005-06-29
US11/169,419 US8024292B2 (en) 2005-06-29 2005-06-29 Creation of a single snapshot using a server job request
US11/169,418 US7716185B2 (en) 2005-06-29 2005-06-29 Creation of a single client snapshot using a client utility
US11/169,419 2005-06-29
US11/169,853 2005-06-29
US11/169,853 US7549028B2 (en) 2005-06-29 2005-06-29 Backup and restore operations using a single snapshot driven by a server job request
PCT/US2006/025287 WO2007002795A2 (en) 2005-06-29 2006-06-29 Creation of a single client snapshot using a client utility

Publications (2)

Publication Number Publication Date
JP2008545198A true JP2008545198A (en) 2008-12-11
JP4712873B2 JP4712873B2 (en) 2011-06-29

Family

ID=37596035

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008519541A Active JP4712873B2 (en) 2005-06-29 2006-06-29 Creating a single client snapshot using the client utility

Country Status (3)

Country Link
EP (1) EP1915682A4 (en)
JP (1) JP4712873B2 (en)
WO (1) WO2007002795A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012018449A (en) * 2010-07-06 2012-01-26 Fujitsu Ltd Snapshot acquisition processing program, snapshot acquisition processing method, snapshot participant computer, and snap shot coordinator computer

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8332842B2 (en) * 2008-11-14 2012-12-11 International Business Machines Corporation Application restore points

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004227132A (en) * 2003-01-21 2004-08-12 Nec Corp System and method for backing up data
JP2004334650A (en) * 2003-05-09 2004-11-25 Fujitsu Ltd Backup method, restoration method, and program
JP2005512191A (en) * 2001-11-29 2005-04-28 イーエムシー コーポレイション A backup method for saving a snapshot of selected data in a mass storage system

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6604118B2 (en) * 1998-07-31 2003-08-05 Network Appliance, Inc. File system image transfer
US7363633B1 (en) * 2000-04-24 2008-04-22 Microsoft Corporation Registering and storing dependencies among applications and objects in a computer system and communicating the dependencies to a recovery or backup service
US6865655B1 (en) * 2002-07-30 2005-03-08 Sun Microsystems, Inc. Methods and apparatus for backing up and restoring data portions stored in client computer systems
US7568080B2 (en) * 2002-10-07 2009-07-28 Commvault Systems, Inc. Snapshot storage and management system with indexing and user interface
US7275177B2 (en) * 2003-06-25 2007-09-25 Emc Corporation Data recovery with internet protocol replication with or without full resync
US7398422B2 (en) * 2003-06-26 2008-07-08 Hitachi, Ltd. Method and apparatus for data recovery system using storage based journaling
US20050081099A1 (en) * 2003-10-09 2005-04-14 International Business Machines Corporation Method and apparatus for ensuring valid journaled file system metadata during a backup operation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005512191A (en) * 2001-11-29 2005-04-28 イーエムシー コーポレイション A backup method for saving a snapshot of selected data in a mass storage system
JP2004227132A (en) * 2003-01-21 2004-08-12 Nec Corp System and method for backing up data
JP2004334650A (en) * 2003-05-09 2004-11-25 Fujitsu Ltd Backup method, restoration method, and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012018449A (en) * 2010-07-06 2012-01-26 Fujitsu Ltd Snapshot acquisition processing program, snapshot acquisition processing method, snapshot participant computer, and snap shot coordinator computer

Also Published As

Publication number Publication date
EP1915682A2 (en) 2008-04-30
JP4712873B2 (en) 2011-06-29
WO2007002795A3 (en) 2007-07-12
WO2007002795A2 (en) 2007-01-04
EP1915682A4 (en) 2014-10-01

Similar Documents

Publication Publication Date Title
US7716185B2 (en) Creation of a single client snapshot using a client utility
US7523278B2 (en) Backup and restore operations using a single snapshot
US8024292B2 (en) Creation of a single snapshot using a server job request
US7549028B2 (en) Backup and restore operations using a single snapshot driven by a server job request
US8510271B1 (en) Application and file system data virtualization from image backup
US7647360B2 (en) System and method for managing a consistency among volumes in a continuous data protection environment
US7346799B2 (en) Systems and methods for recovering and backing up data
US9298382B2 (en) Systems and methods for performing replication copy storage operations
US7672979B1 (en) Backup and restore techniques using inconsistent state indicators
JP5008991B2 (en) Apparatus and method for controlling data recovery
US8346826B2 (en) Switch device, system, backup method and computer program
US7849059B2 (en) Data classification systems and methods for organizing a metabase
US20080027998A1 (en) Method and apparatus of continuous data protection for NAS
US7584339B1 (en) Remote backup and restore operations for ISB protocol systems
JP2010508608A (en) Automatic protection system for data and file directory structure recorded in computer memory
WO2004047078A2 (en) Fast backup storage and fast recovery of data (fbsrd)
JP2005018757A (en) Quick restoration for use of file system in ultra-large-scale file system
US7725669B1 (en) Backup and restore operations using coherency groups for ISB protocol systems
US7487310B1 (en) Rotation policy for SAN copy sessions of ISB protocol systems
US7685460B1 (en) Multiple concurrent restore using same user interface
US7587565B1 (en) Generating automated and scheduled SAN copy sessions for ISB protocol systems
JP4712873B2 (en) Creating a single client snapshot using the client utility
CN103559100A (en) Method for backing up client date by using server and the server

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101012

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101228

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110323

R150 Certificate of patent or registration of utility model

Ref document number: 4712873

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250