(57)【特許請求の範囲】
【請求項１】
コンピュータが、
ターゲット・ファイルの少なくとも一つのデルタ・バックアップを実行して前記ターゲットファイルの最初に作成されたフル・バックアップ・セットのバージョンからの変更を含む少なくとも一つのデルタ・バックアップ・セットを得るための少なくとも一つのオペレーションを開始する処理、
前記最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを前記少なくとも一つのデルタ・バックアップ・セットに割り当てる処理、
前記ターゲット・ファイルの２回目のフル・バックアップを実行してフル・バックアップ・セットの新たなバージョンを得るためのオペレーションを開始する処理、
前記２回目のフル・バックアップ・オペレーションが実行されている間に、前記最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを持つ全てのデルタ・バックアップ・セットを決定する処理、及び、
前記最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを持つ決定されたデルタ・バックアップ・セットを非アクティブにするオペレーションを開始する処理を実行する、ターゲット・ファイルをバックアップするための方法。
【請求項２】
前記名前コンポーネントが、前記最初に作成されたフル・バックアップセットのバージョンを特定するオブジェクトＩＤを含む、請求項１の方法。
【請求項３】
前記２回目のフル・バックアップで前記ターゲット・ファイルのフル・バックアップ・セットが作成されると、前記最初に作成されたフル・バックアップ・セットが非アクティブにされる、請求項１の方法。
【請求項４】
それぞれのバージョンのフル・バックアップ・セットに前記ターゲット・ファイルの名前を含む同じ名前を割り当てる、請求項３の方法。
【請求項５】
前記デルタ・バックアップは前記ターゲット・ファイルに対する全ての更新を含む増分バックアップであり、さらに
前記コンピュータが、
それぞれの増分バックアップ・セットに対し、当該増分バックアップ・セットが関連するフル・バックアップ・セットのバージョンを示す名前コンポーネントを含む名前を割り当てる処理、及び
それぞれの増分バックアップ・オペレーションの間に、
（１）時刻値を生成する処理、及び、
（２）増分バックアップ・オペレーションの間に作成された増分バックアップ・セットに対する名前コンポーネントとして、新規時刻値を含ませる処理を実行する、請求項１の方法。
【請求項６】
前記時刻値の生成が、
最新のシーケンス番号を決定する処理、及び、
新規時刻値を生成するために前記シーケンス番号を増分する処理
を含む、請求項５の方法。
【請求項７】
前記デルタ・バックアップが、最後のフル・バックアップ以降の前記ターゲット・ファイルに対する全ての累積的変更を含む差分バックアップを含み、
前記コンピュータが、
新規の差分バックアップ・セットを得るために、最初のフル・バックアップ・オペレーション以降のターゲット・ファイルに対する更新を含む差分バックアップ・オペレーションを実行する少なくとも一つのオペレーションを開始する処理、及び、
前記新規の差分バックアップ・セットが差分バックアップの前のバージョンと同じ名前を持つようにするため、前記ターゲット・ファイルを示す名前コンポーネントを含む名前を差分バックアップ・セットに割り当てる処理を実行する、請求項１の方法。
【請求項８】
それぞれのデルタ・バックアップ、フル・バックアップ、名前コンポーネントの割り当て、及び全ての決定されたデルタ・バックアップ・セットの非アクティブ化のためのオペレーションをクライアント・コンピュータで実行し、該クライアント・コンピュータは、コマンド及びバックアップのためのターゲット・ファイルをサーバ・コンピュータに伝送し、さらに前記ターゲット・ファイルを示す名前コンポーネントを持つ全てのデルタ・バックアップ・セットについて前記サーバ・コンピュータに照会する、請求項１の方法。
【請求項９】
前記デルタ・バックアップが増分バックアップを含み、
前記クライアント・コンピュータが、増分バックアップ・セットと関連するフル・バックアップ・セットのバージョンを示す名前コンポーネントを含む名前をそれぞれの増分バックアップ・セットに割り当てる処理を実行し、
それぞれの増分バックアップ・オペレーションの間、前記クライアント・コンピュータが、
（１）時刻値を生成する処理、及び、
（２）増分バックアップ・オペレーションの間に作成された増分バックアップ・セットにする名前コンポーネントとして、新規時刻値を含ませる処理を実行する、請求項８の方法。
【請求項１０】
ターゲット・ファイルの少なくとも一つのデルタ・バックアップを実行して前記ターゲットファイルの最初に作成されたフル・バックアップ・セットのバージョンからの変更を含む少なくとも一つのデルタ・バックアップ・セットを得るための少なくとも一つのオペレーションを開始する手段と、
前記最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを前記少なくとも一つのデルタ・バックアップ・セットに割り当てる手段と、
前記ターゲット・ファイルの２回目のフル・バックアップを実行してフル・バックアップ・セットの新たなバージョンを得るためのオペレーションを開始する手段と、
前記２回目のフル・バックアップ・オペレーションが実行されている間に、前記最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを持つ全てのデルタ・バックアップ・セットを決定する手段と、
前記最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを持つ決定されたデルタ・バックアップ・セットを非アクティブにするオペレーションを開始する手段と、
を含む、ターゲット・ファイルをバックアップするためのシステム。
【請求項１１】
前記２回目のフル・バックアップで前記ターゲット・ファイルのフル・バックアップ・セットが作成されると、前記最初に作成されたフル・バックアップ・セットが非アクティブにされる、請求項１０のシステム。
【請求項１２】
それぞれのバージョンのフル・バックアップ・セットに前記ターゲット・ファイルの名前を含む同じ名前を割り当てる、請求項１１のシステム。
【請求項１３】
前記デルタ・バックアップは前記ターゲット・ファイルに対する全ての更新を含む増分バックアップであり、さらに
それぞれの増分バックアップ・セットに対し、当該増分バックアップ・セットが関連するフル・バックアップ・セットのバージョンを示す名前コンポーネントを含む名前を割り当てる手段と、
それぞれの増分バックアップ・オペレーションの間に、
（１）時刻値を生成する処理、及び、
（２）増分バックアップ・オペレーションの間に作成された増分バックアップ・セットに対する名前コンポーネントとして、新規時刻値を含ませる処理を実行する手段と、
を含む、請求項１０のシステム。
【請求項１４】
それぞれのデルタ・バックアップ、フル・バックアップ、名前コンポーネントの割り当て、及び全ての決定されたデルタ・バックアップ・セットの非アクティブ化のためのオペレーションはクライアント・コンピュータで実行され、該クライアント・コンピュータは、コマンド及びバックアップのためのターゲット・ファイルをサーバ・コンピュータに伝送し、さらに前記ターゲット・ファイルを示す名前コンポーネントを持つ全てのデルタ・バックアップ・セットについて前記サーバ・コンピュータに照会する、請求項１０のシステム。
【請求項１５】
コンピュータにターゲット・ファイルのバックアップを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記プログラムが、
前記ターゲット・ファイルの少なくとも一つのデルタ・バックアップを実行して前記ターゲットファイルの最初に作成されたフル・バックアップ・セットのバージョンからの変更を含む少なくとも一つのデルタ・バックアップ・セットを得るための少なくとも一つのオペレーションを開始する手順、
前記最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを前記少なくとも一つのデルタ・バックアップ・セットに割り当てる手順、
前記ターゲット・ファイルの２回目のフル・バックアップを実行してフル・バックアップ・セットの新たなバージョンを得るためのオペレーションを開始する手順、
前記２回目のフル・バックアップ・オペレーションが実行されている間に、前記最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを持つ全てのデルタ・バックアップ・セットを決定する手順、及び、
前記最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを持つ決定されたデルタ・バックアップ・セットを非アクティブにするオペレーションを開始する手順、
を実行させるプログラムである、前記記録媒体。
【請求項１６】
前記名前コンポーネントが、前記最初に作成されたフル・バックアップ・セットのバージョンを特定するオブジェクトＩＤを含む、請求項１５の記録媒体。
【請求項１７】
前記２回目のフル・バックアップで前記ターゲット・ファイルのフル・バックアップ・セットが作成されると、前記最初に作成されたフル・バックアップ・セットを非アクティブにする手順を含む、請求項１５の記録媒体。
【請求項１８】
それぞれのバージョンのフル・バックアップ・セットに前記ターゲット・ファイルの名前を含む同じ名前を割り当てる手順を含む、請求項１７の記録媒体。
【請求項１９】
前記デルタ・バックアップは前記ターゲット・ファイルに対する全ての更新を含む増分バックアップであり、さらに
それぞれの増分バックアップ・セットに対し、当該増分バックアップ・セットが関連するフル・バックアップ・セットのバージョンを示す名前コンポーネントを含む名前を割り当てる手順、及び
それぞれの増分バックアップ・オペレーションの間に、
（１）時刻値を生成し、
（２）増分バックアップ・オペレーションの間に作成された増分バックアップ・セットに対する名前コンポーネントとして、新規時刻値を含ませる手順、
を含む、請求項１５の記録媒体。
【請求項２０】
前記時刻値の生成が、
最新のシーケンス番号を決定する手順、及び、
新規時刻値を生成するために前記シーケンス番号を増分する手順
を含む、請求項１９の記録媒体。
【請求項２１】
前記デルタ・バックアップが、最後のフル・バックアップ以降の前記ターゲット・ファイルに対する全ての累積的変更を含む差分バックアップを含み、
新規の差分バックアップ・セットを得るために、最初のフル・バックアップ・オペレーション以降のターゲット・ファイルに対する更新を含む差分バックアップ・オペレーションを実行する少なくとも一つのオペレーションを開始する手順、及び、
前記新規の差分バックアップ・セットが差分バックアップの前のバージョンと同じ名前を持つようにするため、前記ターゲット・ファイルを示す名前コンポーネントを含む名前を差分バックアップ・セットに割り当てる手順、
を含む、請求項１５の記録媒体。
【請求項２２】
それぞれのデルタ・バックアップ、フル・バックアップ、名前コンポーネントの割り当て、及び全ての決定されたデルタ・バックアップ・セットの非アクティブ化のためのオペレーションをクライアント・コンピュータで実行し、該クライアント・コンピュータは、コマンド及びバックアップのためのターゲット・ファイルをサーバ・コンピュータに伝送し、さらに前記ターゲット・ファイルを示す名前コンポーネントを持つ全てのデルタ・バックアップ・セットについて前記サーバ・コンピュータに照会する、請求項１５のプログラム記録媒体。
【請求項２３】
前記デルタ・バックアップが増分バックアップを含み、
前記クライアント・コンピュータが、増分バックアップ・セットと関連するフル・バックアップ・セットのバージョンを示す名前コンポーネントを含む名前をそれぞれの増分バックアップ・セットに割り当てる手順、及び、
それぞれの増分バックアップ・オペレーションの間、前記クライアント・コンピュータが、
（１）時刻値を生成し、
（２）増分バックアップ・オペレーションの間に作成された増分バックアップ・セットにする名前コンポーネントとして、新規時刻値を含ませる手順、
を含む、請求項２２の記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ファイルをバックアップするための方法、システム及びプログラム記録媒体に関するものであり、特に、バックアップ・オペレーションの結果作成される旧式のバージョンのバックアップ・セットを除去することに関連する。
【０００２】
【従来の技術】
クライアント／サーバ環境においては、クライアントはデータをセントラル・サーバにバックアップすることができる。従来の技術では、データのフル・バックアップはクライアントからサーバへ実行され、それから次の増分バックアップが実行される。ＡＤＳＴＡＲ分散ストレージ管理（ＡＤＳＭ）のようなＩＢＭとＴｉｖｏｌｉのストレージ管理プロダクトにおいては、バックアップ・アーカイブ・クライアントはサーバでファイル及びディレクトリをバックアップし、回復することができる。バックアップ・アーカイブ・クライアントはファイル、サブディレクトリ、及びディレクトリをサーバで制御される媒体にコピーすることができる。バックアップは管理者が定義する方針及びスケジュールによって制御され、あるいは、ユーザは自分自身のデータのバックアップを要求することができる。バックアップ・コピー・グループにおけるバックアップの方針はサーバがファイル及びディレクトリのどのくらい多くのバックアップのバージョンを保持するか、及び、以前のバージョンのバックアップ・セットが消去される前にどのくらい長くファイル及びディレクトリのバックアップ・バージョンを保持するかを表示する。ファイルの最新のバックアップ・バージョンはアクティブ・バージョンとして参照され、それを消去することは望ましくなく、アクティブではないバックアップ・バージョンのみ、消去されうる。
【０００３】
従来のＡＤＳＭはファイルをバックアップするためのバックアップ／アーカイブ・クライアント、及び、データベース・オブジェクトをバックアップするためのクライアントを含んでいる。ファイル・レベルでのバックアップは、以前のバックアップ以降の変更を含む完全なファイルについての新しいバージョンが挿入されている。しかし、データベース・プロダクトとインターフェースするデータベース・アプリケーション・クライアントは、ＡＤＳＭコマンドを使ってデータベース・オブジェクトの増分バックアップを実行してもよい。増分バックアップは、最後のフル・バックアップ以降の変更データのみを含んでおり、完全なデータベース・オブジェクトは含んでいない。このことにより、データベース・アプリケーション・クライアントはバックアップ・サーバに、実質的に大きい完全なデータベース・オブジェクトを送るかわりに、増分バックアップにおいてデータベース・オブジェクトの変更部分のみを送ることができる。増分バックアップ実行スケジュールはファイルに対する管理クラスのバックアップ・コピー・グループで定義される。ＡＤＳＭはまた、差分的あるいは累積的増分バックアップを提供する。そのバックアップは、フル・バックアップ以降のすべての変更を持つ。従って、フル・バックアップ以降の更新に必要な差分バックアップは一つでよい。差分及び増分バックアップセットはフル・バックアップ以降の変更を含んでおり、ここで"デルタ”バックアップ・セットとして参照する。ファイルをバックアップするためにＡＤＳＭを使用することについてのさらなる詳細は、ＩＢＭ刊行物”Ｕｓｉｎｇ ＡＤＳＭ ｔｏ Ｂａｃｋ Ｕｐ Ｄａｔａｂｅｓｅｓ” ＩＢＭ資料番号”ＳＧ２４−４３３５−０３（ＩＢＭ著作１９９８年７月）の中で述べられている。
【０００４】
従来技術においては、フル・バックアップの新しいバージョンと、関連するフル・バックアップ以降の変更を含む関連デルタとは、前のバックアップのバージョン及び関連するデルタ・セットと区別するために、固有の名前がつけられる。デルタ・バックアップ・セットを持たないフル・バックアップからなるバックアップは、バージョンに関係なく同じ名前がつけられる。古くなった旧式のバージョンは、バックアップ・サーバで保持される。デルタ・バックアップ・セットのないフル・バックアップの場合のように、オブジェクトの新規のバックアップ・バージョンが前のバージョンと同じ名前を持つときは、新規のバージョンがバックアップ・サーバに追加される時に、古いバージョンが自動的に非アクティブにされる。一方、従来技術においては、関連デルタ・バックアップ・セットを持つフル・バックアップ・セットは固有の名前がつけられ、新規のバージョンが作成されたときに自動的に非アクティブにはされない。このようにして、フル・バックアップ及び関連デルタ・バックアップの旧式のバージョンは、新規のフル・バックアップ・セットがサーバに追加され、それにより前のフル・バックアップ及び関連デルタ・バックアップが旧式になっても、非アクティブにされることはない。従来技術においては、データベース・オブジェクトのフル及びデルタ・バックアップ・セットの旧式のバージョンを除去するため、データベース・クライアント側のユーザは、ＡＤＳＭコマンドを使用することにより、サーバのデータベース・オブジェクトの現バックアップ・セットをレビューするためのレポートを作成し、いくつかのあるいはすべての旧式のデータベース・バックアップ・セットを非アクティブにする。サーバは周期的にどの非アクティブ・バックアップを消去するかを決定する終了ルーチンを走らせる。ユーザがマニュアルで非アクティブにしたバックアップ・ファイルは、サーバが管理方針で終了要件として設定されている所定の日付またはバージョン番号により、古い非アクティブ・ジョブを終了するようチェックしたときに、サーバにより消去される。
【０００５】
【発明が解決しようとする課題】
この分野には旧式のバックアップ・セットを除去するための方法、システム、及びプログラムの改良が求められている。
【０００６】
【課題を解決するための手段】
前述した従来技術の制限を克服するため、本発明はターゲット・ファイルのバックアップ・オペレーションを実行する望ましいシステム、方法、プログラム及びデータ構造を提供する。ターゲット・ファイルの少なくとも一つのデルタ・バックアップを実行して、少なくとも一つのデルタ・バックアップ・セットを得るために、少なくとも一つのオペレーションが開始される。デルタ・バックアップ・セットは、ターゲット・ファイルの最初に作成されたフル・バックアップ・セットのバージョンに対してなされた変更を含んでいる。少なくとも一つのデルタ・バックアップ・セットはデルタ・バックアップを受ける最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを割り当てられ、ターゲット・ファイルの２回目のフル・バックアップを実行してフル・バックアップ・セットの新たなバージョンを得るためのオペレーションが開始される。２回目の処理は最初の処理に続いて行われる。２回目のフル・バックアップ・オペレーションの間、最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを持つすべてのデルタ・バックアップ・セットが決定される。最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを持つ決定されたデルタ・バックアップ・セットを非アクティブにするためのオペレーションが開始される。
【０００７】
望ましい実施形態では、２回目のフル・バックアップ・オペレーションで作成されたターゲット・ファイルのフル・バックアップ・セットのバージョンは、ターゲット・ファイルのアクティブ・バックアップ・セットになる。そのような場合には、最初に作成されたフル・バックアップ・セットのバージョンは非アクティブにされる。
【０００８】
望ましい実施形態では、デルタ・バックアップは、前の増分バックアップ・オペレーション以降のターゲット・ファイルに対する全ての更新を含む増分バックアップ・オペレーションを含む。ターゲット・ファイル及び増分バックアップを示す名前コンポーネントを含むそれぞれの増分バックアップ・セットに対し名前がつけられる。それぞれの増分バックアップ・オペレーションの間に、ターゲット・ファイルのすべての増分バックアップ・セットと関係する最新の時刻値が決定される。決定された最新の時刻値は、新規の時刻値を生成するために増分される。この新規の時刻値は、増分バックアップ・オペレーションの間に作成された、ターゲット・ファイルに対する増分バックアップ・セットの名前コンポーネントとして含まれる。
【０００９】
クライアント／サーバの実施形態においては、それぞれのデルタ・バックアップ、新規のフル・バックアップ、名前コンポーネントの割り当て、及びすべての決定されたデルタ・バックアップ・セットの非アクティブ化を開始するオペレーションは、クライアント・コンピュータで実行される。クライアント・コンピュータは、ストレージ媒体へのバックアップのために、サーバ・コンピュータへバックアップするためのコマンド及びターゲット・ファイルを伝送することによりオペレーションを開始する。クライアント・コンピュータはさらに、サーバに対して、ターゲット・ファイルを示す名前コンポーネントを持つすべてのデルタ・バックアップ・セットを照会することにより、ターゲット・ファイルを示す名前コンポーネントを持つすべてのデルタ・バックアップ・セットを決定する。
【００１０】
望ましい実施形態では、バックアップ・オペレーションが実行されるときはいつでも、前のフル・バックアップに関連するすべてのデルタ・バックアップ・セット、すなわち増分バックアップ・セット及び差分バックアップ・セットが自動的に決定される。決定されたデルタ・バックアップ・セットは非アクティブにされる。これは、バックアップされるターゲット・ファイルの固有名を含む名前、デルタ・バックアップ・インディケータ、をそれぞれのデルタ・バックアップ・セットに与えることにより成し遂げられる。新規フル・バックアップ・オペレーションが実行されるとき、ターゲット・ファイルに対する全ての現デルタ・バックアップを名前コンポーネントにより決めることができる。この命名規則により、ターゲット・ファイルの新規のフル・バックアップ・セットを作成する間に、デルタ・バックアップを自動的に除去することができる。さらには、望ましい実施形態によると、どんなフル・バックアップも以前のバージョンと同じ名前を持ち、それにより、アクティブ・バックアップとして以前のバージョンを置き換える。このようにして、バックアップされるときはいつでもターゲット・ファイルに関連するバックアップ・セットの旧式のバージョンは非アクティブにされ、後に終了オペレーションの間に除去される対象となる。
【００１１】
【発明の実施の形態】
以下の説明においては、本発明のいくつかの実施形態を例示する図面が参照される。本発明の目的から離れることなく他の実施形態を使用し、構造上及び動作上の変更が可能であることは理解できよう。
【００１２】
コンピュータ環境
図１は本発明が実施されるコンピュータ環境を例示する。コンピュータ環境２はサーバ４およびクライアント・コンピュータ６を含む。サーバ４はサーバ・バックアップ・プログラム８を含み、クライアント・コンピュータはクライアント・バックアップ・プログラム１０を含む。クライアント・バックアップ・プログラム１０は、バックアップ・セット１２をストレージ１４にバックアップするために、ターゲット・データベース２０からサーバ・バックアップ・プログラム８にデータ・セットを伝送する。望ましい実施形態はＩＢＭ  ＡＤＳＭバックアップ・システムにおいて実装される。その場合、クライアント・バックアップ・プログラム１０及びサーバ・バックアップ・プログラム８はＡＤＳＭクライアント及びサーバ・バックアップ設備の機能を含んでもよく、そのようなＡＤＳＭシステムはＩＢＭ刊行物”Ｕｓｉｎｇ ＡＤＳＭ ｔｏ Ｂａｃｋ Ｕｐ Ｄａｔａｂａｓｅｓ”に詳述されている。
【００１３】
ＡＤＳＭシステムはＡＩＸ、Ｓｕｎ Ｓｏｌａｒｉｓ、ＨＰ−ＵＸ、ＯＳ／２、ＤＯＳ、Ｍｉｃｒｏｓｏｆｔ Ｗｉｎｄｏｗｓ、及びＯｐｅｎＥｄｉｔｉｏｎ ＭＶＳのような違うオペレーティング・システムを含むクライアント及びサーバ・システムに実装することができる。クライアント６及びサーバ４はネットワーク１６を介して通信する。ネットワーク１０はイントラネット、インターネット、ワールド・ワイド・ウェブのようなＴＣＰ／ＩＰネットワーク、あるいは他のよく知られたネットワーク・システム、たとえばＬＡＮ、イーサネット、ＷＡＮ、トークンリングなどでもよい。あるいは、サーバ４とクライアント６の間には、複数の分離した別のネットワークがあってもよい。ターゲット・データベース２０はネットワークのどこにあってもよい。例えば、ネットワーク１６に接続される独立したデータベース・サーバにあってもよく、あるいはクライアント６がデータベースを制御できるようにクライアント内にあってもよい。
【００１４】
サーバ・バックアップ・プログラム８はバックアップ・セット１２に関する情報を含むバックアップ・カタログ１８を保持する。それぞれのターゲット・データベースは、バックアップ・カタログに登録される。オンライン・バックアップの間、バックアップ・カタログ１８はターゲット・データベースの現構造を反映するために自動的に更新される。
【００１５】
増分及びフルのバックアップ・セットを管理するため、望ましい実施形態によりバックアップ・データベース・セットに対する命名規則が提供される。データベース・オブジェクトのフル・バックアップ・セットは、データベース・オブジェクトの名前、例えば”ＤＢＮＡＭＥ”に拡張子”ｆｕｌｌ”をつけた”ＤＢＮＡＭＥ．ＦＵＬＬ”の名前がつけられる。オブジェクトのフル・バックアップに関してはそのすべてのバージョンに同じ名前が使われるので、データベース・オブジェクトの次のフル・バックアップはアクティブ・バージョンとなり、それにより、フル・バックアップの前のバージョンは自動的に非アクティブにされる。データベース・オブジェクトの増分バックアップは、例えばＤＢＯＢＪＥＣＴＩＤ．ＩＮＣＲ．ＴＩＭＥＳＴＡＭＰという形式の名前を持つ。ここで”ＤＢＯＢＪＥＣＴＩＤ”は固有のデータベース・オブジェクトＩＤ、”ＩＮＣＲ”はファイルが増分バックアップであることを示し、”ＴＩＭＥ ＳＴＡＭＰ”はタイムスタンプ又はシーケンス番号のような固有時刻値である。その時刻値は、同じデータベース・オブジェクトの異なる増分バックアップ・セットを区別する。この命名規則により、一つのデータベース・オブジェクトに対し、アクティブなフル・バックアップ・セットが一つだけ存在するようになる。しかし、それぞれの増分バックアップセットの時刻値が他の増分バックアップ・セットと区別する固有の名前を与えられるので、一つのアクティブなフル・バックアップ・セットに対して複数のアクティブな増分バックアップ・セットが存在し得る。さらに増分バックアップ・セットはフル・バックアップ・セットの異なったバージョンに対して存在することができる。増分バックアップ・セットの”ＤＢＯＢＪＥＣＴＩＤ”コンポーネントは、当該増分バックアップ・セットをＤＢＯＢＪＥＣＴＩＤによって識別される特定のフル・バックアップ・セットのバージョンと結び付ける。
【００１６】
差分バックアップは命名規則により”ＤＢＯＢＪＥＣＴＩＤ．ＤＩＦＦ”と命名され得る。ここで”ＤＢＯＢＪＥＣＴＩＤ”はバックアップのためのデータベース・オブジェクトの固有のＩＤであり、”ＤＩＦＦ”はバックアップが差分バックアップであることを示す。一つのフル・バックアップに対し、アクティブな差分バックアップは一つのみ存在するので、現差分バックアップは、データベース・オブジェクトに対してなされた差分バックアップのアクティブ・バージョンとなる。これにより、差分バックアップ・セットの前のバージョンは、自動的に非アクティブになる。
【００１７】
図２及び図３はクライアント・バックアップ・プログラム１０に実装される論理を例示したもので、オブジェクトをバックアップするときにそのオブジェクトのバックアップ・セットの旧式のバージョンを除去するように前述の命名規則を使用する。クライアント・バックアップ・プログラム１０による制御はブロック１００で開始し、ターゲット・データベース２０からデータベース・オブジェクトをバックアップするためのバックアップ機能が開始される。クライアント・バックアップ・プログラム１０はサーバに照会し、（ブロック１０２で）最新のフル・バックアップ・セットのオブジェクトＩＤを得る。そのオブジェクトＩＤは特定のバックアップ・セット及びバージョンの固有識別子を含む。サーバはオブジェクトＩＤを使用して、同じ名前のバックアップ・セット（例えばフル・バックアップ・セット）の複数のバージョンを区別する。デルタ・バックアップに対しては、望ましい実施形態において、オブジェクトＩＤが、フル・バックアップの特定のバージョンをデルタ・バックアップと論理的に関連付けるため使われる。フル・バックアップの特定のバージョン及びデルタ・バックアップは、オブジェクトＩＤにおいて一意的に識別される。フル・バックアップに対しては、望ましい実施形態において、オブジェクトＩＤは、フル・バックアップ・セットの前のバージョンに対する増分バックアップ・セットを示すオブジェクトＩＤを名前コンポーネントとして持つ増分バックアップを非アクティブにするために使用される。一度非アクティブにされると、そのバックアップ・セットは消去の対象となる。
【００１８】
（ブロック１０４で）バックアップがフル・バックアップであれば、クライアント・バックアップ・プログラム１０は（ブロック１０６で）バックアップするオブジェクトに名前をつける。そのオブジェクトはターゲット・オブジェクト”ＤＢＮＡＭＥ”として参照され、ここでは”ＤＢＮＡＭＥ”はデータベース・オブジェクトの名前となる。この名前はデータベース・オブジェクトの前のフル・バックアップ・バージョンと同じ名前なので、この新規のフル・バックアップ・セットによりフル・バックアップの前のバージョンは非アクティブにされる。クライアント・バックアップ・プログラム１０は、ストレージ１４におけるバックアップのため、サーバ・バックアップ・プログラム８へ、新規の名前を持つ完全なオブジェクトを送付する。バックアップが（ブロック１０８で）不成功であれば、クライアント・バックアップ・プログラム１０は（ブロック１１０で）バックアップ機能を終了し、エラーメッセージを返す。
【００１９】
バックアップが成功すれば、クライアント・バックアップ・プログラム１０は（ブロック１１２で）サーバ・バックアップ・プログラム８に対して、ブロック１０２で得られた、フル・バックアップ・セットの前のバージョンのオブジェクトＩＤを名前コンポーネントとして持つ、すべてのデルタ・オブジェクトについて照会する。返答として、クライアント・バックアップ・プログラム１０は（ブロック１１４で）ターゲット・オブジェクトに対するＩＤを名前コンポーネントとして含む、増分又は差分の全てのデルタ・オブジェクトのリストを受け取る。クライアント・バックアップ・プログラム１０はそれから（ブロック１１６で）ブロック１１２での照会で一致した全てのデルタ・オブジェクトを非アクティブにするためのコマンドをサーバに送る。このように、フル・バックアップがなされると、プログラムは前のフル・バックアップに依拠するデルタ・オブジェクトを同時に自動的に非アクティブにする。それらのデルタ・オブジェクトはともに論理的に非アクティブにされる。このようにして、命名規則は増分ファイルのような旧式のバージョンに依拠するファイルを自動的に消去する機構を提供する。非アクティブにされたオブジェクトは、サーバ・バックアップ・プログラム８が、期限切れのバックアップ・セット、すなわちバージョン又は時刻値の制限を満たしたバックアップ・セットを除去するプログラムを走らせるときに消去できる。フル・バックアップはそれからブロック１１８で終了する。
【００２０】
（ブロック１０４で）バックアップがフルでなければ、すなわちデルタ・バックアップであるならば、クライアント・バックアップ・プログラム１０は（ブロック１２０で）そのデルタ・バックアップが増分バックアップであるかどうか決定する。デルタ・バックアップが増分バックアップでなければ、クライアント・バックアップ・プログラム１０は（ブロック１２２で）そのデルタ・バックアップが差分バックアップであるかどうか決定する。そうでなければ、そのバックアップは既知のタイプではなく、エラーメッセージが（ブロッ１２４で）返される。デルタ・バックアップが差分バックアップであれば、クライアント・バックアップ・プログラム１０は（ブロック１２６で）ＤＢＯＢＪＥＣＴＩＤ．ＤＩＦＦを含む差分バックアップの名前を生成する。ここでＤＢＯＢＪＥＣＴＩＤはターゲット・データベース・オブジェクトの固有ＩＤである。クライアント・バックアップ・プログラム１０は、それから、ストレージ１４でバックアップするために、生成された名前を持つ差分バックアップを（ブロック１２８で）サーバ・バックアップ・プログラム８へ伝送する。
【００２１】
デルタ・バックアップが（ブロック１２０で）増分バックアップであれば、クライアント・バックアップ・プログラム１０は（ブロック１３０で）ターゲット・データベース・オブジェクトに対する最新の増分バックアップの名前について、サーバ・バックアップ・プログラム８に照会する。最新の増分バックアップは増分バックアップ名のシーケンス番号コンポーネント”ｎｎｎ”から決定される。クライアント・バックアップ・プログラム１０はそれから照会に対する応答でサーバ・バックアップ・プログラム８から得られたシーケンス番号を（ブロック１３２で）増分する。別の実施形態では、サーバ４は最後に使用されたシーケンス番号を別に保持する。そのような場合には、クライアント・バックアップ・プログラム１０は最新の増分バックアップの名前を必要とせず、その代わりに最後に使用された時刻値についてサーバに照会すればよい。さらなる実施形態においては、タイムスタンプが使われる。そのような場合には、クライアント・バックアップ・プログラム１０は時刻値についてサーバに照会する必要はなく、その代わりに、時刻値を現時刻にセットする。名前の時刻値コンポーネントはよく知られた別の方法によっても決定できる。次の時刻値を得た後、クライアント・バックアップ・プログラム１０は（ブロック１３４で）ＤＢＯＢＪＥＣＴＩＤ．ＩＮＣ．ＮＮＮ形式の、新規の時刻値を含むターゲット・オブジェクトに対する名前を生成する。新規に生成された名前を持つターゲット・オブジェクトに対する増分バックアップ・セットは、それから、バックアップ・セット１２に保存するためにサーバ・バックアップ・プログラム８へ伝送される。更新が（ブロック１３６で）成功しなければ、エラーメッセージが（ブロック１３８で）返される。一方、増分バックアップが成功すれば、クライアント・バックアップ・プログラム１０は（ブロック１４０で）コマンドをサーバ・バックアップ・プログラム８に伝送し、新規の増分バックアップがシステムに追加されたことを示す新規のシーケンス番号でバックアップ・カタログ１８を更新する。
【００２２】
望ましい実施形態はバックアップ・システムで保持されるバックアップ・セットを管理するための方法、システム及びプログラムを提供する。望ましい実施形態においては、バックアップ・セットの旧式のバージョンは、バックアップ・セットの新規のバージョンがバックアップ・サーバに追加されたときに、自動的に非アクティブにされる。さらには、フル・バックアップがデータベースあるいは他のファイル・オブジェクトに対して行われるときには、データベース又はファイル・オブジェクトの前のフル・バックアップ・バージョンと論理的に関連付けられる増分バックアップ・セット又は差分バックアップ・セットのようなどんなデルタ・バックアップ・セットも、自動的に非アクティブとしてマークされる。そのようにして、望ましい実施形態において、旧式のバージョンは、クライアント・システムで管理者により人為的に介入される必要なく、フル・バックアップをしている間に、旧式のものとなったときに、自動的に非アクティブにされる。また、望ましい実施形態においては、バックアップがクライアントにより開始されるときに旧式のバックアップ・セットをいつ自動的に非アクティブにするかを決定するための命名規則及びルーチンが提供される。これは、現在のシステムでは管理者が旧式のバージョンをチェックしそれから、旧式のバージョンを非アクティブにするためのコマンドを送らなければならないような手続きを改善するものである。
【００２３】
望ましい実施形態は、ソフトウェア、ファームウェア、ハードウェアあるいはそれらの組み合わせを供給するための標準的なプログラミング技術的あるいはエンジニアリング技術を使う方法、装置又は製造物として実装され得る。ここで使われる”製造物”（言い換えれば”コンピュータ・プログラム製品”）という言葉は、コンピュータで読み取り可能な装置、キャリア、又は媒体からアクセス可能な一つ又は複数のコンピュータ・プログラムやデータ・ファイルを包含することを意味する。前記媒体には、磁気記憶媒体、フロッピ・ディスク、ＣＤ−ＲＯＭ、光ディスク、ホログラフィ・ユニット、揮発性電子メモリ、不揮発性電子メモリ、ネットワーク伝送線を経由しプログラムへアクセスするファイル・サーバ、無線伝送媒体、空間を伝搬する信号などが含まれる。もちろん、本発明の範囲から離れることなく、この構成に種々の変更を加えることができることは、当業者には明らかであろう。
【００２４】
望ましい実施形態は、クライアント・システムがサーバ・システムに対するデータベース・オブジェクトのバックアップ・オペレーションを開始するネットワーク環境に関して詳述された。さらなる実施形態においては、クライアント及びサーバ・バックアップ・プログラムにより実行される機能は、単一のコンピュータ・システムに実装され、またそのようなコンピュータ・システムの中で、単一のバックアップ・プログラムで実装される。
【００２５】
望ましい実施形態は、データベース・オブジェクトのバックアップに関して詳述された。しかし、望ましい実施形態のバックアップ・セット管理テクニックは、データベース・オブジェクト以外のファイルを含む任意のタイプのファイル又はデータ・セットのバックアップを管理するのにも適用され得る。そのような場合には、バックアップされたファイル及びデータ・セットは、バックアップ・セットの生成された名前コンポーネントに固有ＩＤを含む。
【００２６】
要約すると、本発明は、ターゲット・ファイルのバックアップ・オペレーションを実行するためのシステム、方法、プログラム及びデータ構造を提供する。ターゲット・ファイルの少なくとも一つのデルタ・バックアップを実行して、少なくとも一つのデルタ・バックアップ・セットを得るために、少なくとも一つのオペレーションが開始される。デルタ・バックアップ・セットは、ターゲット・ファイルの最初に作成されたフル・バックアップ・セットのバージョンからの変更を含んでいる。少なくとも一つのデルタ・バックアップ・セットは、デルタ・バックアップを受ける最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを割り当てられ、ターゲット・ファイルの２回目のフル・バックアップを実行してフル・バックアップ・セットの新たなバージョンを得るためのオペレーションが開始される。２回目の処理は最初の処理に続いて行われる。２回目のフル・バックアップ・オペレーションの間、最初に作成されたフル・バックアップ・セットのバージョンを示す名前コンポーネントを持つ全てのデルタ・バックアップ・セットが決定される。最初に作成されたフル・バックアップのバージョンを示す名前コンポーネントを持つ決定されたデルタ・バックアップ・セットを非アクティブにするオペレーションが開始される。
【図面の簡単な説明】
【図１】本発明を実施し得るコンピュータ環境を例示するブロック図。
【図２】本発明の望ましい実施形態に従ってファイルをバックアップするための論理を示すフローチャート。
【図３】本発明の望ましい実施形態に従ってファイルをバックアップするための論理を示すフローチャート。
【図１】
0003782932.tif 000002
【図２】
0003782932.tif 000003
【図３】
0003782932.tif 000004