JP2007141231A - データをバックアップするための方法、システム、およびコンピュータ・プログラム - Google Patents

データをバックアップするための方法、システム、およびコンピュータ・プログラム Download PDF

Info

Publication number
JP2007141231A
JP2007141231A JP2006300236A JP2006300236A JP2007141231A JP 2007141231 A JP2007141231 A JP 2007141231A JP 2006300236 A JP2006300236 A JP 2006300236A JP 2006300236 A JP2006300236 A JP 2006300236A JP 2007141231 A JP2007141231 A JP 2007141231A
Authority
JP
Japan
Prior art keywords
entity
data
scheduling
entities
guest
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
JP2006300236A
Other languages
English (en)
Other versions
JP5186098B2 (ja
Inventor
Claudio Ruta
ルタ・クラウディオ
Claudio Fabbri
ファッブリ・クラウディオ
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2007141231A publication Critical patent/JP2007141231A/ja
Application granted granted Critical
Publication of JP5186098B2 publication Critical patent/JP5186098B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1461Backup scheduling policy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/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
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Abstract

【課題】 複数のゲスト計算機を別のホスト計算機が、支援するデータ処理システムに用いられるバックアップ・ソリューションを提示する。
【解決手段】 ホスト装置のうちの一つであるマスタ装置は、どのゲスト・システムが、そのデータをバックアップできるようになっているのか、またいつバックアップ処理を実施しなければならないのかを示すスケジューリング・ファイルを有している。毎日、ホスト装置は互いに、対応するゲスト装置が当日のスケジューリング・ファイルに含まれているか否かを検証する。含まれている場合、バックアップするそれぞれのデータのパスが、マスタ・ホスト装置の制御ファイルに追加される。手順の最後に、マスタ・ホスト装置は、(制御ファイルに表示されているように)別のゲスト装置の必要なデータをバックアップする。クリティカル・ゲスト装置はいずれも、自動的にシャットダウンして、対応するバックアップ・データの整合性を確保する。
【選択図】 図3

Description

本発明は、情報技術分野に関する。さらに具体的には、本発明は、データのバックアップに関する。
データのバックアップは、現代のデータ処理インフラストラクチャの管理において重要な役割を果たしている。一般に、データのバックアップ処理は、オリジナル・ソースの一つ以上の追加コピーを別の装置に作成することによって実施される。安全上の理由から、バックアップ用のコピーは、元データの場所と異なる場所に保存することが望ましい。このようにデータが保存されることによって、(メモリ破壊などの)インフラ障害、(火災などの)災害、偶発的な不正削除などの場合にデータの原本が破損したり、失われたりしたとしても、そのデータを復元(すなわち再生)することができる。
バックアップ処理は、大規模な組織では、日常業務として実施されている(クリティカル・データやサービスを扱っている場合は、特にそうである)。しかし、適切なバックアップ処理の設計は非常に複雑な作業である。実際、このために、多数の問題を慎重に検討する必要が生じている。例えば、バックアップ媒体を適切に選択すること、コピーしたデータの整合性を確保すること、効率的なバックアップ手順を定義すること、正しい再生の方針を確立すること、バックアップ・コピーの保全性と有効性を検証すること等々は極めて重要である。
バックアップすべきデータが複数のコンピュータに保存されている分散インフラストラクチャでは、さらに新たな問題が起こっている。特に、このような状況下では、分散インフラストラクチャは本来散在しているので、全てのバックアップ処理を制御することは極めて難しい。例えば、別のコンピュータ上のバックアップ処理のスケジューリングは、全く分からない。上記の問題は、コンピュータが、別種類のハードウェアおよび/またはソフトウェア・プラットフォームを実行している異種環境下では、さらに深刻である。
上述のシナリオにおいて、バックアップ処理を別のコンピュータの中央のサイト(central site)から、完全に強制的に実施することは、通常は許容されない点に留意するべきである。実際のところ、最も現実的な状況下では、バックアップされるデータの定義は、常にローカル制御下に留めておかなければならないのである。
業界で知られたソリューションのもう一つの課題は、そのソリューションがかなり侵襲的(invasive)なものであるということである。バックアップ処理には、一般に、各コンピュータ上において、バックアップ処理を管理するのに必要なすべての操作の実行を担当する比較的複雑なエージェントを使用できることが必要である。しかし、常にこのエージェントをインフラストラクチャの全てのコンピュータにインストールできるわけではない。例えば、インストールは、安全上の懸念から許容されない場合もある。
いずれの場合でも、バックアップ処理中は、できるだけ人間の介入に依存しないことが望ましい。人間の行動は殆ど反復不能で誤りを犯しやすく、かつ個人の技量に強く依存している。しかし、このように、分散アーキテクチャを備えたインフラストラクチャの自動バックアップ処理の設計は、上記の問題により妨げられる。
本発明は、独立請求項に記載のソリューションを提案する。また、本発明の有利な実施態様が、従属請求項に記述される。
原則として、本発明は中央制御によるバックアップ処理を提案している。
本発明の態様では、データを処理する複数のエンティティ(例えば、物理的なおよび/または論理的な装置(physical and/or logical machines))を含むシステムにおいて、データをバックアップする方法が提供される。方法には、複数のエンティティのセット(それらの内の1つから全部まで)についての一連のステップが含まれる。まず、スケジューリング構造(例えば、ファイル)が、エンティティのうち選択されたエンティティに備えられる。スケジューリング構造には、対応するデータをバックアップ可能なエンティティの記述(indication)が含まれる。次に、方法は、スケジューリング構造内の各エンティティが含まれていることを検証することによって継続する。含まれていることに応じて、各バックアップ可能なエンティティは、対応するデータの記述を、選択されたエンティティ上の制御構造(例えば別のファイル)に付加する。方法は、制御構造に記述されるデータを、選択されたエンティティの制御に基づいてバックアップしたあとで終了する。
スケジューリング・ファイルは、各バックアップ可能なエンティティに対するスケジューリング・ポリシーを定めるためにも用いられることが好ましい。また、スケジューリング・ファイルへ含まれていることの検証は、各エンティティの制御の下で定期的に実行されることが好ましい。さらに好ましくは、エンティティは相互にタイミングをずらして(out−of−phase)ステップを実行する。
ソリューションをさらに改良する方法としては、クリティカル・エンティティのシャットダウン時間を設定するために、スケジューリング構造を用いることである。
具体的な実施形態では、本発明は、(対応するゲスト計算機に関する上述の操作の実行を制御する)ホスト計算機に実装されるゲスト計算機に適用される。
有利には、スケジューリング・ファイルと、制御ファイルと、バックアップされるデータとが、共用ディスクに保存されている。
さらなる拡張として、提案されているソリューションでは、同一の共用ディスク(制御ファイルに複写されている)の反復バックアップが防止される。
さらに本発明の他の態様では、この方法を実行するためのコンピュータ・プログラムが提案される。
さらに本発明の他の態様では、対応するシステムが提案される。
本発明は、さらなる特徴及びその利点とともに、非制限的な表現によって純粋に記述されている。本発明は、添付図面と併せて、以下の発明の実施形態の詳細な説明を読むことによって、最もよく理解されるであろう。
図1は、分散アーキテクチャを備えたデータ処理インフラストラクチャ100を図示する。インフラストラクチャ100は、複数の物理コンピュータ105(例えば、IBM社の『zSeries(R)』または『AS/400(R)』タイプ)を含む。各コンピュータ105は、データ処理エンティティである複数の論理システム110を実装する。このために、別のコンピュータとして独立して動作するコンピュータ105は、対応する論理パーティション(LPAR)に分割され、各パーティションは、コンピュータ105のハードウェア資源のサブセットで構成される。同様に、各ホスト・システム110は、複数のゲスト・システム115をサポートする。特に、ホスト・システム110は、対応する仮想計算機を備える。そして、各仮想計算機は、仮想計算機が独占的に制御する現実のコンピュータの様相(appearance)を与える抽象的環境(abstract environment)から構成される。
コンピュータ105は、典型的には磁気ディスクから構成されるある配列のダイレクト・アクセス記憶装置(DASD)120を共用している。共用ディスク120では、かなり大量のデータ(例えばIBM社の3390−3タイプのディスクでは、3ギガ・バイト、3390−3タイプでは10ギガ・バイトなど)に高速アクセスできる。共用ディスク120は、論理システム110,115のローカル・データを保存するのに用いられる。ローカル・データは、別のファイル・システムに従って編成される(なお、各ファイル・システムは、対応する論理システム110,115のソフトウェア・プラットフォームに依存している)。さらに、共用ディスク120は、より大きな論理システム110,115が、読み出しおよび/または書き込みアクセスができるグローバル・データを保存することもある。このために、インフラストラクチャ100は、共用ファイル・システム・サービスを実装する。共用サービスにより、各論理システム110、115はそのファイル・システム(あるいはその一部のシステム)を、他の論理システム110、115にエキスポートできるようになる。エキスポート先の論理システム110、115はエキスポートされたデータを組み込んで、そのファイル・システムに完全に一体化する。この結果は、別の論理システム110、115上で実行される対応クライアント/サーバ・モジュールの手段により達成される。また、これらのモジュールは、プラットフォーム独立型になるように設計された対応プロトコル(例えばTCP/IP)を介して通信する。好適な共用サービスの例としては、ネットワーク・ファイル・システム(NFS)がある。
以下に詳述するように、共用ディスク120のデータは、典型的には磁気テープ・カートリッジ(あるいはストリーマ)から構成されるリムーバブル・メディア125にバックアップされる。テープ125は大変安価であり、大量の順次アクセスの記憶容量を有する(例えば、IBM社の3590タイプのテープは、10ギガ・バイトある)。バックアップ処理は、共用ディスク120からテープ125へ直接実行することもできる。他の方法として、バックアップするデータを、適切に処理して、ある配列のリポジトリ・ディスク130に一旦保存し、次にリポジトリ・ディスク130に保管した処理済みのデータを、テープ125にコピーするようにすることができる。
図2に移って、上述のインフラストラクチャ上で実行される主要なソフトウェア・コンポーネントが、まとめて200として参照される。情報(プログラムおよびデータ)は、典型的には、共用ディスクに保存され、プログラムを実行する際に、少なくとも部分的には、各コンピュータのメモリ(すなわちRAM)に読み込まれる。プログラムは最初に、例えばテープから共用ディスクにインストールされる。
特に、各コンピュータ105上のパーティション層(partitioning layer)205は、コンピュータ105を複数の論理パーティションに分割することによって、対応するホスト・システムをシミュレートする。各論理パーティションは、コンピュータ105のハードウェア資源の専用サブセットを制御する。以下に詳述するように、ホスト・システムのうちの一つのシステム(以後マスター・システム110mと記述する)は、その他のすべてのホスト・システム(以後従属システム110sと記述する)のバックアップ処理を制御する。特に、マスター・システム110mは、他の従属システム110sのゲスト・システム115のバックアップ処理スケジュールを共用ファイル内に記述する。各従属システム110sは定期的に、そのデータを本共用ファイルの内容に従ってバックアップすべきか否か検証する。バックアップが必要な場合、従属システム110sは、他の共用ファイルにバックアップするデータを特定する。手順の最後に、マスター・システム110mは、別のゲスト・システム115の必要なデータをバックアップできる。
提案したソリューションによって、バックアップ処理の集中制御が可能になる。特に、別のゲスト・システム115上で、バックアップ処理のスケジューリングを、極めて効果的な方法で管理することができる。この成果は、別のゲスト・システム115によってサポートされるファイル・システムに無関係に達成される。換言すれば、考案されたバックアップ処理は、本質的にプラットフォームには依存しない。それに加えて、バックアップされるデータの制御は、完全にローカルのままである。
この技法には、別の従属システム110sに、非常に簡単なプログラムをインストールするだけでよい。一方、バックアップ処理のコア・モジュールは、マスター・システム110mだけに必要になる。この結果、従属システム110sに及ぼす影響はごくわずかである。その上、別のゲスト・システム115には、追加コンポーネントはまったく必要ない。これにより、提案されているソリューションは、厳しいセキュリティ要件を有する適用に好適なものとなる。
上述のバックアップ処理は、最初の設定をしたあとはいかなる人間の介入をも必要としないということが重視されている。その結果、提案したソリューションは、完全に自動化されている。これにより、結果の品質が改善されるとともに、誤りの要因も大幅に軽減されることになる。
ここで、汎用の従属システム110sについてさらに詳しく考察する。バーチャリゼーション層(virtualization layer)210sは、多数の仮想計算機を用いて、対応ゲスト・システム115をシミュレートする。このような機能を備えた市販のバーチャリゼーション層210sの例としては、IBM社の『VMware(R)』や、マイクロソフト社の『マイクロソフト・バーチャル・サーバ2005(MSVS)(R)』などがある。
各ゲスト・システム115において、オペレーティング・システム215(例えば、IBM社の『z/OS(R)』や『Linux(R)』など)は、ソフトウェア・プラットフォームを定める。上記で指摘したように、オペレーティング・システム215は、あたかもバーチャリゼーション層210sによりシミュレートされる現実のコンピュータ(real computer)上にインストールされたように動作する。ソフトウェア・アプリケーション220は、オペレーティング・システム215上で実行される。各ソフトウェア・アプリケーション220は、対応する作業データ225(例えば、ファイル、データベースなど)を持っている。
従属システム110s上で実行される全てのゲスト・システム115についての構成情報は、バーチャリゼーション層210sによって、対応ファイル230に保存される。構成ファイル230は、典型的には、各ゲスト・システム115に割り当てられた従属システム110sのハードウェア資源を記述する。特に、本構成情報には、ゲスト・システム115が、そのデータ(例えば、オペレーティング・システム215、ソフトウェア・アプリケーション220、及び作業データ225)を保存するのに用いる各共用ディスクの識別子(ID)(すなわち、その絶対パス)が含まれる。
従属システム110sで実行されるバックアップ・スクリプト235は、バックアップ処理のクライアントとして、マスター・システム110mと連動している。バックアップ・スクリプト235(例えば、REXX言語で書かれている)は、小さなプログラムから構成され、一般的にはユーザとのいかなる対話をすることなく実行されることを意図した一連のコマンドで形成されている。このために、バックアップ・スクリプト235は、構成ファイル230に(読み出し専用モードで)アクセスする。
マスター・システム110mに移って、同様のバーチャリゼーション層210mが、多数の仮想計算機を同様にシミュレートする。バックアップ・マネージャ240(マスター・システム110m内で実行される)は、全ての従属システム110sのバックアップ処理のサーバー側を実行する。典型的には、バックアップ・マネージャ240は、バックグラウンドで継続的に稼動するエージェントから成る。
バックアップ・マネージャ240は、スケジューリング・ファイル245(例えば、エディタを用いて作成される)を制御する。スケジューリング・ファイル245は、別の従属システム110s上のどのゲスト・システム115(対応するIDにより特定される)が、そのデータをバックアップできるのか、またいつバックアップ処理を実行すべきなのかを表現している。このために、スケジューリング・ファイル245は、それぞれのバックアップ可能なゲスト・システム115のバックアップ処理回数を保存することが好ましい。これに加えて、スケジューリング・ファイル245は、ゲスト・システム115がオフの時にバックアップ処理を実行しなければならないクリティカル・ゲスト・システム115を識別できる。このことは、例えば、トランザクションが別のメモリ構造に影響を及ぼす場合などに、バックアップされたデータが、常に確実に整合するようにするために必要なことである。各クリティカル・システム115について、スケジューリング・ファイル245は、ゲスト・システム115をシャットダウンしなければならない時間(時分)を記憶している。例えば、「H1」と命名した従属システム110s上の、「G1」と命名した重要ゲスト・システム115を毎日バックアップしなければならず、他方、「H2」と命名した別の従属システム110sが、さほど重要性のないゲスト・システム115、すなわち、「G2a」と命名したゲスト・システム115(これは週に一度バックアップしなければない)と、「G2b」と命名したゲスト・システム115(これは月に一度バックアップしなければならない)をホストするという状況について、検討してみることとする。ゲスト・システム「G1」はクリティカルであり、そのシャットダウン時間は、「22時00分」である。この場合、年全体のスケジューリング・ファイル245は次の表で定められる。
Figure 2007141231
各従属システム110sのバックアップ・スクリプト235がスケジューリング・ファイル245を読み込む。それぞれが従属システム110sのホストとなっているゲスト・システム115が、現在の日付のスケジューリング・ファイル245にバックアップ回数に基づき表現された場合、バックアップ・スクリプト235は、ゲスト・システム115がデータ保存用に使用する共用ディスクのIDを構成ファイル230から抽出する。本情報は、マスター・システム110mにも保存されている制御ファイル250に付加される。このようにすることによって、この手順の終わりには、制御ファイル250は、バックアップされるインフラストラクチャ内のすべての共用ディスクのリストを含むこととなる。
制御ファイル250は、バックアップ処理を相応に制御するバックアップ・マネージャ240によってアクセスされる。このために、バックアップ・マネージャ240は、マスター・システム110m(例えば4〜8のような)のホストになっている専用仮想計算機255のプール(pool)を活用する。各仮想計算機255は、ネイティブ・モードでロボット260を作動する。ロボット260は、人間のいかなる介入もなく自動的に動作する、必要なデータをテープ125にコピーするプログラムから成っている。バックアップ・マネージャ240は、制御ファイル250に表現されている特定の大容量共用ディスクをバックアップするために、選択されたロボット260を直接呼び出すことができる。その代わりに、バックアップ・マネージャ240は、小容量共用ディスクをコピーしなければならないときは、マスター・システム110mのホストとなっているさらに専用的な仮想計算機265(例えば8〜15のような)のプールを活用する。各仮想計算機265は、ネイティブ・モードで圧縮ユーティリティ270を実行し、圧縮ユーティリティ270は、多数の共用ディスクを圧縮するとともに、リポジトリ・ディスクに保存される単一イメージ・ファイル275(例えば、CMSファイル)に結合する。圧縮ユーティリティ270は、イメージ・ファイル275を(それをテープ125にコピーする)、選択されたロボット260順に渡す。最後に、バックアップ・マネージャ240は、バックアップ処理の結果を対応するバックアップ・ログ280に保存する。
次に、図3および図4に関して、上述のシステムにおいて実行できるバックアップ処理を管理するための典型的な方法の論理フローを方法300として記述する。
方法は、マスター・システムのスイム・レーンにおけるスタートの黒色の円303から始まる。ブロック306に続き、バックアップ処理を管理している、インフラストラクチャ全体のアドミニストレータは、新しいスケジューリング・ファイルを規定する。この作業は、例えば、来年以降の各年の年末に実行される。
次に、汎用の従属システムのスイム・レーンに移って、検証手順が定期的に(例えば毎日)実行されるが、本検証手順は、別の従属システムでは時間をずらしてで呼び出される(例えば、第1の従属システムでは12時00分、第2のそれでは12時15分、第3のそれでは12時30分等々といったように)ことが好ましい。このように選択すると、必要な共用リソース(すなわち、スケジューリング・ファイルおよび制御ファイル)における競合が回避できる。
さらに詳細には、対応するタイムアウトが終了する(ブロック309)と、常にバックアップ・スクリプトがブロック312で起動し、これがトリガになってマスター・システムからスケジューリング・ファイルが読み込まれ、続いて従属システムのホストになっている各ゲスト・システムのループが実行される。ループは、ブロック315で始まり、ここでバックアップ・スクリプトは、カレント(現行)・ゲスト・システム(最初のシステムからスタートする)が、スケジューリング・ファイルに含まれているか否かを検証する。もし含まれていれば、さらなるテストがブロック318で行われ、現在の日付(current day)が、ゲスト・システムのスケジューリング・ファイルに特定されているバックアップ回数に対応しているか否かが決定される。
バックアップ回数に対応している場合、ゲスト・システムはそのデータを今日バックアップすることができることを意味し、方法はブロック321へ下る。この段階で、バックアップ・スクリプトは、ゲスト・システムが使用している共用ディスクのIDを(構成ファイルから)抽出する。さて、ブロック324では、現在の日付用の制御ファイルがマスター・システム上に既に存在しているか否か(例えば、後に現在の日付が続くキーワードによって識別される)を決定するためにテストが行われる。ファイルが存在していない場合、ブロック327で新しい制御ファイルが作成され、動作のフローはそれから、ブロック330へ続く。逆に存在する場合には、同ブロックにはブロック330から直接到達する。いずれの場合にも、(バックアップされるゲスト・システムのデータが保存されている)共用ディスクのIDが、ブロック330で制御ファイルに付加される。
次いでブロック333において、シャットダウン時間が、(クリティカル)ゲスト・システムの制御ファイルに特定されている場合、方法はブロック336へ下る。ここで、ゲスト・システムのシャットダウン時間が、従属システム(例えば、構成ファイル内の対応するレコード)に保存される。
動作のフローは、ブロック339で再び合流する。このブロックにはブロック336から、あるいは(シャットダウン時間がゲスト・システムのスケジューリング・ファイルに特定されていない場合には)ブロック333から、あるいは(現在の日付がゲスト・システムのスケジューリング・ファイルに特定されていない場合には)ブロック318から、あるいは(ゲスト・システムがスケジューリング・ファイルに含まれていない場合には)ブロック315から到達する。さらに処理すべきゲスト・システムがある場合は、方法はブロック315に戻り、次のゲスト・システム上で同じ操作を繰り返す。逆に、さらに処理すべきシステムがない場合には、ループは定期的検証手順を終えて、終了する。
このようにして、すべての従属システムについて検証手順が終了すると、制御ファイルは、(、別の従属システム上のバックアップ可能なゲスト・システム用に)今日にバックアップされる共用ディスクの一覧表を含むことになる。
動作のフローは、従属システムのスイム・レーン内で続く。従属システムでホストとなっている各クリティカル・ゲスト・システムについては、対応するシャットダウン時間になると(ブロック342)、クリティカル・ゲスト・システムは、ブロック345でオフになる。
同時に、ブロック348での対応するタイムアウトの終了がトリガとなって、マスター・システム上のバックアップ・マネージャが、ブロック351に入る。この段階で、バックアップ・マネージャは、(上述の命名規則に従って特定される)今日の制御ファイルを探す。制御ファイルがある(図4の判断ブロック354)場合、方法は、制御ファイルのあらゆる複製された共用ディスクが削除されているブロック357へ続く。これにより、同じ共用ディスクのコピーの繰り返しが防止される。このようにして、バックアップ処理は、必要な操作(そしてその時間)を軽減するように最適化される。
さて、ループはバックアップされる残りの共用ディスクごとに(1つ目からスタートして)、実行される。ループは、動作フローがカレントの共用ディスクの容量に応じて分岐するブロック360で始まる。共用ディスクが大容量である(すなわち、実質的にテープと同等の容量を有する)場合には、ブロック363が実行され、他方共用ディスクがより小容量である場合には、ブロック366〜367が実行される。いずれの場合にも、方法は、ブロック375で合流する。
特にブロック363(本発明の実施形態の例としては、10ギガ・バイトの容量を有しているような大容量の共用ディスク)について考えると、バックアップ・マネージャは、利用可能なロボットのうちの1つを(例えば、負荷平準化アルゴリズムに従って)選択する。選択されたロボットは、ダイレクト・トゥ・ディスク・レコーディング(Direct to Disk Recording)(DDR)として知られる技術により、共用ディスクをテープに(1つの共用ディスクを1つのテープに)コピーするよう命令される。
ブロック366(問題の例では、3ギガ・バイトの容量を有するような小容量の共用ディスク)に関しては、バックアップ・マネージャは、(常に負荷平準化アルゴリズムに従って)利用可能な圧縮ユーティリティのうち1つを選択する。選択された圧縮ユーティリティは、次いでDDR2CMSXとして知られている別の技術を用いて、共用ディスクを圧縮するとともに、リポジトリ・ディスク上のカレント・イメージ・ファイルに付加するよう命令される。ブロック369でイメージ・ファイルが完了しているか否かを検証するために、テストが実施される。各テープは10ギガ・バイトの容量を有し、各小容量の共用ディスクは3ギガ・バイトの容量を有している、本発明の実施形態の例では、3つの小容量の共用ディスクがイメージ・ファイルに圧縮された後に、テストが実施される。テストの結果が好ましいものである場合、ブロック372のバックアップ・マネージャは同様に、利用可能なロボットのうちの1つを選択して、例えば、VMコマンドVMFPLC2を使って、そのロボットにイメージ・ファイルをテープに(3つの共用ディスクを1つのテープに)コピーするよう命令する。次に方法は、ブロック375へ続く。同ブロックには、イメージ・ファイルが完了していない場合には直接、ブロック369からも到達する。
さてブロック375について考えると、さらなる共用ディスクがバックアップされるべく(制御ファイル内に)残存しているか否かを検証するために、テストが行われる。残存している場合、方法は、ブロック360まで戻り、次の共用ディスクについての手順を繰り返す。逆に残存していない場合、ループはブロック378へ下って終了する。
この段階では、(別の圧縮ユーティリティの制御下で)まだ完了していないいかなるイメージ・ファイルも同様に、対応するテープにコピーされる。ブロック381へ進んで、バックアップ処理の結果が、対応するログに保存される。同時に、アドミニストレータは、バックアップ処理の完了を電子メール(結果が添付されている)で通知されることが好ましい。方法は、白色・黒色の停止用の円384で終了する。
当業者は、ローカルで特定の要求を満足させるために、上述したソリューションに、多くの修正や改変を適用することができることは勿論である。特に、本発明は、その最適な実施形態に関して、ある程度詳細に記述されているけれども、他の実施形態の場合と同じように、形式および細部において、様々な省略や、置き換え、変更などが可能であることを理解すべきである。さらに、発明のあらゆる公開済みの実施形態に関連して記述されている特定の要素および/または方法は、一般的な設計選択要件として、他のいかなる実施形態にも盛り込むことができるよう、明確に意図されている。
例えば、インフラストラクチャが、異なるアーキテクチャを持っているか、あるいは、同等のユニットを含む場合、同様の考慮が適用される。さらに、各コンピュータは、別の構造を持ち得るし、同様の要素(例えば、実行中に共用ディスクへのアクセスを減らすために、プログラムやその一部を一時的に保存するキャッシュ・メモリなど)を持ってもよい。いずれの場合にあっても、コンピュータを何らかのコード実行エンティティ(例えば、PDAや、携帯電話等々)と置き換えることは可能である。代わりに、ここで提案したソリューションを、インフラストラクチャにおいて利用可能なホスト・システム、ゲスト・システムのサブセットのみに適用してもよい。本発明の概念は、バックアップされる他のいかなるデータ(例えば、プログラム・コードとか、マルチメディアの作品等のデータなど)にも適用される。発明の他の実施形態においては、スケジューリング・ファイルは、ゲスト・システム(ではあるが、それぞれの従属システムによって制御ファィルに常に付加される対応するアクセス・パスを有している)ごとにバックアップされるデータの記述も含んでいてよい。
提案されたスケジューリング・ファイルと制御ファイルは、単に例示のためのものであり、他の同等の構造に(例えば、単にバックアップの日付を列挙することによって)置き換えることができることは容易に明白になるべきであろう。
(特定の事柄の必要条件とされる)スケジューリング・ファイルにおいては、より複雑なポリシーの明確化を妨げるものはない。いずれの場合でも、バックアップされるゲスト・システムを(バックアップ処理が実行されるたびに)特定することのみは可能な発明の基本的な実施は、本発明の範囲内で行われる。
先の説明では、スケジューリング・ファイルに各ゲスト・システムが取り込まれているか否かの検証が(対応する従属計算機によって)毎日行われるバックアップ処理について述べたけれども、これは制限的にしようと意図したものではない。実際、同様の考慮が、同じ操作が他の周期で行われる場合や、もっと複雑な時間パターンで行われる場合にも適用される。いずれの場合にも、ゲスト・システムがマスター・システムによって記録される行為は含まれていない。
同様の考慮は、(別の従属システムによって実施される連続的な検証手順の各組合わせ間の)時間シフトが、別の長さである場合にも適用される。代わりに、同様の結果が、(各従属システムが、その検証手順の完了を次のシステムに通知する)通知技術によって達成される場合もある。しかし、すべての従属システムが、検証手順を同時に実行する基本的な実施体制を妨げるものは何もない。
発明の趣旨から離れることなく、クリティカル・ゲスト・システムのシャットダウン時間を、他の方法で定めることもできる。例えば、発明の他の実施形態では、シャットダウン時間はスケジューリング・ファイルでは定められない。この場合、毎日実施されるバックアップ処理の開始時(例えば22時00分)直前に各従属システムがマスター・システム上のスケジューリング・ファイルを読み込み、そこに含まれる対応ゲスト・システムをすべて無条件でオフにする。さらに、提案された事項の実施に際し、オフ中のゲスト・システムの再起動はそれらの所有者に委ねられている。代わりに、自動的な手順を実行することも可能で、バックアップ・マネージャが、バックアップ処理の完了を従属システムに通知する自動手順を実行して、従属システムがそのクリティカル・ゲスト・システムを自動的に再起動できるようにすることも可能である。いずれの場合にも、ゲスト・システムのシャットダウンに関する特徴は、厳密に必要だというわけではなく、ある実施形態(例えば、データの整合性が重要でない場合など)では省略してもよい。
本発明の実施形態におけるソリューションは、仮想計算機に基づく環境に合わせて特に記述されたものではあるが、これは制限的に解釈されるべきものではない。実際、同一の概念は、(汎用ホスト計算機が、多数のゲスト計算機の処理を実行する)同等の構造を持つシステムにも適用される。いずれの場合にも、提案されたソリューションを他のデータ処理エンティティ(例えば、各々が要求された操作の実施を直接制御する物理的計算機など)に適用することができるだろう。
考案されたソリューションは、共用ディスク(あるいは他の記憶媒体)に基づく上述のインフラストラクチャで実行されることが望ましい。しかし、同一のソリューションは、ネットワーク・インフラストラクチャにおいても適用できるだろう。
さらに、(制御ファイルに複写されている)同一の共用ディスクの反復バックアップを防止するという成果は、本発明と同等の技術で(例えば、バックアップ処理中に、それらをスキップすることによって)、達成することもできる。いずれの場合にも、この特徴を持たない単純化された実施形態は、発明の範囲内である。
同様の考慮は、(発明の各実施形態を実行するのに用いられる)プログラムが別の方法で構成されている場合や、モジュールや機能が追加されている場合でも、適用される。同様に、メモリの構成は、他のタイプであってもよいし、あるいは同等のエンティティ(必ずしも物理的な記憶媒体である必要はない)で置き換えてもよい。さらに、提案されたソリューション自体は、(順番は異なっていても、同様な又は付加的なステップを有する)同等の方法で実施できる。いずれの場合にも、プログラムは、例えば、外部ソフトウェア又は常駐ソフトウェア又は、ファームウェア又は、(オブジェクト・コードあるいは、ソース・コードの)マイクロ・コード等の、データ処理システムによるか、あるいはデータ処理システムと関連して用いるのに適した形態ならいかなる形態でもとることができる。さらに、プログラムは、コンピュータ使用可能ないかなる媒体にも提供できる。媒体は、プログラムを、搭載し、保存し、通信し、伝播し、あるいは転送するのに適した要素であれば何でもよい。そのような媒体の例としては、(プログラムをあらかじめ搭載しておくことができる)固定ディスク、リムーバブル・ディスク、テープ、カード、ワイヤ、ファイバ、無線接続、ネットワーク、放送波、などがあり、媒体には、電子タイプや、磁気タイプや、光タイプや、電磁気タイプや、赤外線タイプや、半導体タイプなどがある。
いずれの場合にも、本発明によるソリューションは、(例えば、半導体材料のチップに集積化された)ハードウェア構造、またはソフトウェアとハードウェアの組み合わせによって、実行することができる。
本発明の実施形態によるソリューションを実行できるデータ処理インフラを図示したものである。 本発明の実施形態によるソリューションを実行するのに用いることのできる主要なソフトウェア・コンポーネントを示す。 本発明の実施形態によるソリューションの実行に関する動作フローを説明する図表を示す。 本発明の実施形態によるソリューションの実行に関する動作フローを説明する図表を示す。
符号の説明
205 パーティション層
210 バーチャリゼーション層
215 オペレーティング・システム
220 アプリケーション
225 作業データ
230 構成ファイル
235 バックアップ・スクリプト
240 バックアップ・マネージャ
245 スケジューリング・ファイル
250、351 制御ファイル
260 ロボット
270 圧縮ユーティリティ
280 バックアップ・ログ

Claims (10)

  1. 複数のデータ処理エンティティを含むシステム内のデータを、前記複数のエンティティのセットを対象にバックアップするための方法であって、
    対応するデータをバックアップ可能な前記エンティティの記述を含むスケジューリング構造を、前記エンティティのうちから選択されたエンティティ上に供給するステップと、
    前記スケジューリング構造に各エンティティが含まれていることを検証するステップと、
    前記含まれていることに応じて、各バックアップ可能なエンティティが、前記対応するデータの記述を前記選択されたエンティティ上の制御構造に追加するステップと、
    前記制御構造に記述されたデータを、前記選択されたエンティティの制御に基づいてバックアップするステップと、
    を含む方法。
  2. 前記スケジューリング構造が、各バックアップ可能なエンティティのスケジューリング・ポリシーの記述をさらに含み、前記取り込みを検証するステップは、現在の日付と、前記対応するスケジューリング・ポリシーとの整合性を検証するステップを含む、請求項1に記載の方法。
  3. 前記含まれていることを検証するステップが、各エンティティの制御に基づいて定期的に実行される、請求項1または2に記載の方法。
  4. 前記エンティティが、相互にタイミングをずらして前記検証するステップを実行する、請求項3に記載の方法。
  5. シャットダウン時間の記述が、前記バックアップ可能なエンティティのうち少なくともクリティカル・エンティティの前記スケジューリング構造に存在し、
    前記含まれていることに応じて、各バックアップ可能なエンティティが、前記スケジューリング構造の前記対応するシャットダウン時間の存在を検証するステップと、
    前記シャットダウン時間の存在に応じて、クリティカルでバックアップ可能な各エンティティが、前記対応するシャットダウン時間の到達したことを条件に、シャットダウンするステップと、
    をさらに含む、請求項1乃至4のいずれかに記載の方法。
  6. 前記システムは、複数のホスト計算機を含み、各機械が複数のゲスト計算機のホストとして動作し、前記エンティティは、前記ゲスト計算機から構成され、前記検証するステップと前記付加するステップが、前記対応するゲスト計算機の各ホスト計算機の制御に基づいて実行される、請求項1乃至5のいずれかに記載の方法。
  7. 前記エンティティが、複数の記憶媒体と、前記スケジューリング構造と、前記制御構造と、前記共用記憶媒体に保存されている前記データを共用する、請求項1乃至6のいずれかに記載の方法。
  8. 前記制御構造が、各バックアップ可能なエンティティの前記データが保存されている前記記憶媒体の記述を含み、各記憶媒体の前記反復バックアップが前記制御構造で反復されるのを防止するステップをさらに含む、請求項7に記載の方法。
  9. 複数のデータ処理エンティティを含むシステム内のデータを、前記複数のエンティティのセットを対象にバックアップするためのコンピュータ・プログラムであって、
    対応するデータをバックアップ可能な前記エンティティの記述を含むスケジューリング構造を、前記エンティティのうちから選択されたエンティティ上に供給するステップと、
    前記スケジューリング構造に各エンティティが含まれていることを検証するステップと、
    前記含まれていることに応じて、各バックアップ可能なエンティティが、前記対応するデータの記述を前記選択されたエンティティ上の制御構造に追加するステップと、
    前記制御構造に記述されたデータを、前記選択されたエンティティの制御に基づいてバックアップするステップと、
    をデータ処理システムに実行させる、プログラム。
  10. 複数のデータ処理エンティティを含むシステム内のデータを、前記複数のエンティティのセットを対象にバックアップするためのシステムであって、
    対応するデータをバックアップ可能な前記エンティティの記述を含むスケジューリング構造を、前記エンティティのうちから選択されたエンティティ上に供給する手段と、
    前記スケジューリング構造に各エンティティが含まれていることを検証する手段と、
    前記含まれていることに応じて、各バックアップ可能なエンティティが、前記対応するデータの記述を前記選択されたエンティティ上の制御構造に追加する手段と、
    前記制御構造に記述されたデータを、前記選択されたエンティティの制御に基づいてバックアップする手段と、
    を含むシステム。
JP2006300236A 2005-11-21 2006-11-06 データをバックアップするための方法、システム、およびコンピュータ・プログラム Expired - Fee Related JP5186098B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP05111045 2005-11-21
EP05111045.0 2005-11-21

Publications (2)

Publication Number Publication Date
JP2007141231A true JP2007141231A (ja) 2007-06-07
JP5186098B2 JP5186098B2 (ja) 2013-04-17

Family

ID=38112362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006300236A Expired - Fee Related JP5186098B2 (ja) 2005-11-21 2006-11-06 データをバックアップするための方法、システム、およびコンピュータ・プログラム

Country Status (3)

Country Link
US (1) US8015374B2 (ja)
JP (1) JP5186098B2 (ja)
CN (1) CN100485630C (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010113707A (ja) * 2008-11-10 2010-05-20 Internatl Business Mach Corp <Ibm> 物理及び仮想マルチパス入出力を動的に管理する方法、装置、システム、及びプログラム
JP2012220964A (ja) * 2011-04-04 2012-11-12 Seiko Epson Corp 情報処理システムおよび情報処理システムのバックアップ方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399696B (zh) * 2007-09-24 2011-09-21 国际商业机器公司 通过网络为客户机安装软件的方法、系统及相应的客户机
US8201246B1 (en) 2008-02-25 2012-06-12 Trend Micro Incorporated Preventing malicious codes from performing malicious actions in a computer system
US9298563B2 (en) 2010-06-01 2016-03-29 Hewlett Packard Enterprise Development Lp Changing a number of disk agents to backup objects to a storage device
US8738958B2 (en) * 2011-06-20 2014-05-27 QuorumLabs, Inc. Recovery node testing
US9411628B2 (en) * 2014-11-13 2016-08-09 Microsoft Technology Licensing, Llc Virtual machine cluster backup in a multi-node environment
US10061611B2 (en) 2015-08-28 2018-08-28 Vmware, Inc. Virtual machine migration within a hybrid cloud system
CN110597778B (zh) * 2019-09-11 2022-04-22 北京宝兰德软件股份有限公司 一种分布式文件备份和监控的方法及装置
CN111538566A (zh) * 2020-04-24 2020-08-14 咪咕文化科技有限公司 镜像文件处理方法、装置、系统、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1031562A (ja) * 1996-07-17 1998-02-03 Hitachi Ltd 情報処理システム
JP2002297456A (ja) * 2001-03-29 2002-10-11 Hitachi Ltd バックアップ処理方法及びその実施システム並びにその処理プログラム
JP2002297427A (ja) * 2001-03-30 2002-10-11 Hitachi Ltd データのバックアップのための方法、装置、システム、プログラム及び記憶媒体
JP2004503011A (ja) * 2000-07-05 2004-01-29 アーンスト & ヤング エルエルピー コンピュータサービスを提供するための方法および装置
JP2004227127A (ja) * 2003-01-21 2004-08-12 Hitachi Ltd 複数の環境情報を持つプログラムおよびこのプログラムを持つ情報処理装置
JP2005055947A (ja) * 2003-08-04 2005-03-03 Hitachi Ltd 計算機システム
JP2005149106A (ja) * 2003-11-14 2005-06-09 Nec Corp バックアップシステム及びバックアップ運用制御プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5717934A (en) * 1994-10-28 1998-02-10 Deltec Electronics Corporation Sequential computer network shutdown system and process therefor
US7467267B1 (en) * 2004-07-23 2008-12-16 Sprint Communications Company L.P. Method and system for backing up or restoring data in remote devices over a communications network

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1031562A (ja) * 1996-07-17 1998-02-03 Hitachi Ltd 情報処理システム
JP2004503011A (ja) * 2000-07-05 2004-01-29 アーンスト & ヤング エルエルピー コンピュータサービスを提供するための方法および装置
JP2002297456A (ja) * 2001-03-29 2002-10-11 Hitachi Ltd バックアップ処理方法及びその実施システム並びにその処理プログラム
JP2002297427A (ja) * 2001-03-30 2002-10-11 Hitachi Ltd データのバックアップのための方法、装置、システム、プログラム及び記憶媒体
JP2004227127A (ja) * 2003-01-21 2004-08-12 Hitachi Ltd 複数の環境情報を持つプログラムおよびこのプログラムを持つ情報処理装置
JP2005055947A (ja) * 2003-08-04 2005-03-03 Hitachi Ltd 計算機システム
JP2005149106A (ja) * 2003-11-14 2005-06-09 Nec Corp バックアップシステム及びバックアップ運用制御プログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSND200100673038; 高橋 秀和 他: '障害対策とダウンタイム短縮' Windows2000徹底活用術 初版, 20000101, p. 160〜163, 日経BP社 *
JPN6011058750; 高橋 秀和 他: '障害対策とダウンタイム短縮' Windows2000徹底活用術 初版, 20000101, p. 160〜163, 日経BP社 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010113707A (ja) * 2008-11-10 2010-05-20 Internatl Business Mach Corp <Ibm> 物理及び仮想マルチパス入出力を動的に管理する方法、装置、システム、及びプログラム
JP2012220964A (ja) * 2011-04-04 2012-11-12 Seiko Epson Corp 情報処理システムおよび情報処理システムのバックアップ方法

Also Published As

Publication number Publication date
US8015374B2 (en) 2011-09-06
US20070159974A1 (en) 2007-07-12
CN100485630C (zh) 2009-05-06
JP5186098B2 (ja) 2013-04-17
CN1971527A (zh) 2007-05-30

Similar Documents

Publication Publication Date Title
JP5186098B2 (ja) データをバックアップするための方法、システム、およびコンピュータ・プログラム
US9852198B1 (en) Method and system for fast generation of file system snapshot bitmap in virtual environment
US9514029B2 (en) Partial recording of a computer program execution for replay
US8458422B1 (en) Policy based creation of export sets and backup media
RU2619894C2 (ru) Управление дублированным виртуальным хранилищем на сайтах восстановления
CN104685476B (zh) 用于还原虚拟机的方法、系统和制品
TWI438689B (zh) 用於建立虛擬機器之主機層級應用程式一致備份之方法及電腦程式產品
KR102047216B1 (ko) 서비스의 2차 위치에서의 작업의 재생 기법
US10296423B2 (en) System and method for live virtual incremental restoring of data from cloud storage
US8285679B2 (en) Creating a buffer point-in-time copy relationship for a point-in-time copy function executed to create a point-in-time copy relationship
US9569314B2 (en) Flash copy for disaster recovery (DR) testing
US8918783B2 (en) Managing virtual computers simultaneously with static and dynamic dependencies
US8001339B1 (en) Storage management policies in a virtual data storage system
CN111488241A (zh) 在容器编排平台实现无代理备份与恢复操作的方法和系统
CN107209705A (zh) 用于计算环境的活动回滚
US20120151258A1 (en) System reset
US20050262296A1 (en) Selective dual copy control of data storage and copying in a peer-to-peer virtual tape server system
KR101693683B1 (ko) 가상 데이터베이스 되감기
CN106062742A (zh) 用于改进快照性能的系统和方法
US10055307B2 (en) Workflows for series of snapshots
US7475277B1 (en) Automated repair of damaged objects
EP2992415A1 (en) Coordinating application deployment with a platform tier
US9262290B2 (en) Flash copy for disaster recovery (DR) testing
US8904346B1 (en) Method and system for automated load testing of web applications
US10545788B2 (en) Physical to virtual scheduling system and method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120125

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20120125

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20120125

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20120125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120726

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20120911

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120911

TRDD Decision of grant or rejection written
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20130104

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20130104

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130121

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20160125

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees