(57)【要約】【課題】グリッド・コンピューティング・システム上の複数のクライアントに亙るデータをバックアップする装置、システム及び方法を提供する。【解決手段】シーケンス管理装置は、クライアント・モジュールと、シーケンス・モジュールと、パケット記憶モジュールとを含む。シーケンス・モジュールは、ソース・クライアントからバックアップすべきデータを受取るように構成される。シーケンス・モジュールは、グリッド・コンピューティング・システム上の１個若しくは複数個のターゲット・クライアントを識別する非トランスペアレントなシーケンス・キーを発生するように構成される。パケット記憶モジュールは、その非トランスペアレントなシーケンス・キーに従って複数のターゲット・クライアント上にソース・クライアントからのデータのバックアップ・コピーを記憶するように構成される。その非トランスペアレントなシーケンス・キーは、シーケンス管理装置により発生されるが、そのシーケンス管理装置のみに知られていても良い。これは、複数のターゲット・クライアント上にバックアップされるデータの最低のセキュリティ・レベルを維持するためである。【選択図】図４【特許請求の範囲】
【請求項１】
複数のクライアントに亙るデータをバックアップするためのシーケンス管理装置にして、
ソース・クライアントからバックアップされるべきデータを受取るように構成されたクライアント・リクエスト・モジュールと、
複数のターゲット・クライアントの非トランスペアレントなシーケンスを発生するように構成されたシーケンス・モジュールと、
前記非トランスペアレントなシーケンスに従って複数のターゲット・クライアント上にデータを記憶するように構成されたパケット記憶モジュールとを含む
シーケンス管理装置。
【請求項２】
前記複数のターゲット・クライアントにバックアップされるデータを記述するメタデータ・ファイルを管理するように構成されたグローバル・プロファイル管理モジュールを更に含む、請求項１に記載のシーケンス管理装置。
【請求項３】
前記メタデータ・ファイルが、グローバル・クライアント・プロファイル、ソース・クライアント・プロファイル、ソース・データ・レコード、ターゲット・データ・レコード、データ・アセンブリ・レコード、及びグローバル・バックアップ・ログからなる群から選択される、請求項２に記載のシーケンス管理装置。
【請求項４】
前記グローバル・プロファイル管理モジュールが、データをソース・クライアントに写像するため、該データに対応するユニーク・データ識別子であって、該データが他のデータと比較してユニークであることを示す前記ユニーク・データ識別子を使用するように構成された、請求項２に記載のシーケンス管理装置。
【請求項５】
前記グローバル・プロファイル管理モジュールが、前記データの同一のコピーが記憶される第２のソース・クライアントに前記ユニーク・データ識別子を写像するように構成された、請求項４に記載のシーケンス管理装置。
【請求項６】
前記ソース・クライアントからの復元リクエストに応答して、複数のターゲット・クライアントのうちの一つにバックアップされるデータの少なくとも一部を取出すように構成されたパケット取出しモジュールを更に含む、請求項１に記載のシーケンス管理装置。
【請求項７】
前記パケット取出しモジュールが、更に前記シーケンス・モジュールにより発生される非トランスペアレントなシーケンスに従って、前記複数のターゲット・クライアントのうちの一つにバックアップされるデータの少なくとも一部を取出すように構成された、請求項６に記載のシーケンス管理装置。
【請求項８】
前記ソース・クライアントからの復元リクエストに応答し、且つ前記複数のターゲット・クライアントのうちの一つにバックアップされるデータの少なくとも一部の取出しの後、前記データを理解可能なフォーマットにアセンブルするように構成されたデータ・アセンブリ・モジュールを更に含む、請求項１に記載のシーケンス管理装置。
【請求項９】
前記パケット記憶モジュールが、前記データを複数のデータ・パケットに分割するように、且つ複数のターゲット・クライアントに前記データ・パケットを記憶するように更に構成された、請求項１に記載のシーケンス管理装置。
【請求項１０】
前記複数のターゲット・クライアントに前記データ・パケットを記憶する前に、前記データ・パケット中のデータを圧縮するように構成された圧縮モジュールを更に含む、請求項９に記載のシーケンス管理装置。
【請求項１１】
前記複数のターゲット・クライアントに前記データ・パケットを記憶する前に、前記データ・パケット中のデータを暗号化するように構成された暗号化モジュールを更に含む、請求項９に記載のシーケンス管理装置。
【請求項１２】
前記複数のターゲット・クライアントに前記データ・パケットを記憶する前に、前記データ・パケットの少なくとも一つに冗長化データ・パケットを生じるように構成された冗長化モジュールを更に含む、請求項９に記載のシーケンス管理装置。
【請求項１３】
前記複数のターゲット・クライアントのうちの一つに、前記冗長化データ・パケットを前記非トランスペアレントなシーケンスに従って記憶するように前記パケット記憶モジュールが更に構成された、請求項１２に記載のシーケンス管理装置。
【請求項１４】
第１のターゲット・クライアント及び第２のターゲット・クライアント間の最小距離及び最大距離のうちの少なくとも一つを定義するパケット近接性パラメータに従って、前記パケット記憶モジュールが前記複数のターゲット・クライアントにデータ・パケットを記憶する、請求項９に記載のシーケンス管理装置。
【請求項１５】
前記ソース・クライアント及び前記複数のターゲット・クライアントの各々との間の最小距離及び最大距離の少なくとも一つを定義するバックアップ近接性パラメータに従って、前記パケット記憶モジュールが前記複数のターゲット・クライアントにデータを記憶する、請求項１に記載のシーケンス管理装置。
【請求項１６】
複数のクライアントに亙るデータをバックアップする方法にして、
ソース・クライアントからバックアップされるべきデータを受取るステップと、
複数のターゲット・クライアントの非トランスペアレントなシーケンスを発生するステップと、
前記非トランスペアレントなシーケンスに従って複数のターゲット・クライアントにデータを記憶するステップとを含む
バックアップ方法。
【請求項１７】
複数のターゲット・クライアントにバックアップされるデータを記述するメタデータであって、グローバル・クライアント・プロファイル、ソース・クライアント・プロファイル、ソース・データ・レコード、ターゲット・データ・レコード、データ・アセンブリ・レコード、及びグローバル・バックアップ・ログのうちの一つを含むメタデータ・ファイルを管理するステップを更に含む、請求項１６に記載のバックアップ方法。
【請求項１８】
データを複数のデータ・パケットに分割し、該データ・パケットを複数のターゲット・クライアントに記憶するステップを含む、請求項１６に記載のバックアップ方法。
【請求項１９】
データをソース・クライアントに写像するために、該データに対応するユニーク・データ識別子であって、該データが他のデータと比較してユニークであることを示す前記ユニーク・データ識別子を使用するステップを含む、請求項１６に記載のバックアップ方法。
【請求項２０】
ソース・クライアント及び複数のターゲット・クライアントの、契約上の予約申込みを管理するステップを更に含む、請求項１６に記載のバックアップ方法。
【請求項２１】
ソース記憶割当てパラメータ、ターゲット記憶割当てパラメータ、ネットワーク割当てパラメータ、クライアント・プロセッサ・パラメータ、及びクライアント帯域幅パラメータのうちの一つである資源割当てパラメータを追跡するステップを更に含む、請求項１６に記載のバックアップ方法。
【請求項２２】
複数のクライアントに亙るデータをバックアップするようにコンピュータを動作させるコンピュータ可読コードを含むコンピュータ可読記憶媒体にして、
ソース・クライアントからバックアップされるべきデータを受取るステップと、
複数のターゲット・クライアントの非トランスペアレントなシーケンスを発生するステップと、
前記非トランスペアレントなシーケンスに従って複数のターゲット・クライアントにデータを記憶するステップとからなるバックアップ方法をコンピュータに実行させるコンピュータ可読コードとを含む
コンピュータ可読記憶媒体。
【請求項２３】
複数のターゲット・クライアントにバックアップされるデータを記述するメタデータであって、グローバル・クライアント・プロファイル、ソース・クライアント・プロファイル、ソース・データ・レコード、ターゲット・データ・レコード、データ・アセンブリ・レコード、及びグローバル・バックアップ・ログのうちの一つを含むメタデータ・ファイルを管理するステップを前記バックアップ方法が更に含む、請求項２２に記載のコンピュータ可読記憶媒体。
【請求項２４】
データをソース・クライアントに写像するために、該データに対応するユニーク・データ識別子であって、該データが他のデータと比較してユニークであることを示す前記ユニーク・データ識別子を使用するステップを前記バックアップ方法が更に含む、請求項２２に記載のコンピュータ可読記憶媒体。
【請求項２５】
前記ソース・クライアントからの復元リクエストに応答し、複数のターゲット・クライアントのうちの一つにバックアップされるデータの少なくとも一部を、前記非トランスペアレントなシーケンスに従って取出すステップを前記バックアップ方法が更に含む、請求項２２に記載のコンピュータ可読記憶媒体。
【請求項２６】
前記ソース・クライアントからの復元リクエストを受取るのに応答し、且つ前記複数のターゲット・クライアントのうちの一つにバックアップされるデータの少なくとも一部の取出しの後、前記データを理解可能なフォーマットにアセンブルするステップを前記バックアップ方法が更に含む、請求項２２に記載のコンピュータ可読記憶媒体。
【請求項２７】
データを複数のデータ・パケットに分割し、該データ・パケットを複数のターゲット・クライアントに記憶するステップを前記バックアップ方法が更に含む、請求項２２に記載のコンピュータ可読記憶媒体。
【請求項２８】
第１のターゲット・クライアント及び第２のターゲット・クライアント間の最小距離及び最大距離のうちの少なくとも一つを定義するパケット近接性パラメータに従って、前記複数のターゲット・クライアントにデータ・パケットを記憶するステップを前記バックアップ方法が更に含む、請求項２２に記載のコンピュータ可読記憶媒体。
【請求項２９】
前記複数のターゲット・クライアントにデータを記憶するステップの前に、該データの少なくとも一部を、圧縮、暗号化、及び複製のうちの一つを含む、データの修正をするステップを前記バックアップ方法が更に含む、請求項２２に記載のコンピュータ可読記憶媒体。
【請求項３０】
前記ソース・クライアント及び前記複数のターゲット・クライアントの各々との間の最小距離及び最大距離の少なくとも一つを定義するバックアップ近接性パラメータに従って、前記複数のターゲット・クライアントにデータを記憶するステップを前記バックアップ方法が更に含む、請求項２２に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、グリッド・コンピューティングに関し、より詳細にはグリッド・コンピューティング・システムで複数のクライアントにまたがるデータをバックアップすることに関する。
【背景技術】
【０００２】
グリッド・コンピューティングは、コンピュータ産業では比較的新しいテクノロジである。今日の多くのグリッド・コンピューティング・システムは、複数の相互接続されたコンピュータないしノードが、単一のマシーンでは行うことができないような計算問題など、大型のグリッド・アップリケーションに関し互いに協働するのを許容するように設計されている。そのような圧倒的な量の計算処理をうまく管理するために、そのような計算問題を幾つかの小さい管理しやすいジョブに分割してもよい。多くのパーソナル・コンピュータまたはビジネス・コンピュータにつきものの、あるいはやむを得ず生じるような遊休処理時間があるので、グリッド・アプリケーションのこのタイプの分散処理が部分的に可能である。
【０００３】
これまで十分に実施されてこなかったグリッド・コンピューティングの一つの視点は、データ・バックアップ・アプリケーションの領域にある。これまでのデータ・バックアップ設備は大きな、スタンドアローンのデータ・バックアップ装置を用いて実施されている。実際にも全産業でデータセンタを作ることに熱心であり、これによって情報を記憶し、情報をバックアップし、情報を利用できるようにしている。この記憶された情報の可用性を増すために、データセンタは冗長性やエラー検出訂正のコードないし機能をしばしば用いている。このようなデータセンタは、データを記憶することのみに資する専用のデータ記憶装置の大きなバンクを用いるようにこれまで設計され、操作されている。残念ながら、従来のデータ記憶技法や装置は一般に非常に高価で、購入しにくいほどであり、その結果そのような技法の広汎な使用を制限している。
【０００４】
グリッド・コンピューティングに関する他の課題は、個別の或いはネットワーク化されたコンピュータに対する大容量記憶装置の普及度（pervasiveness）である。多くの会社や家庭は、少なくとも今日の米国では、１個ないし複数個のコンピュータを使用し、それらが１日のうち常時ではなくても頻繁にインターネットに接続されている。これらの多くの個人用又は商用のコンピュータは、その全体の能力のうち２％ないし２０％をおそらく使用しているだけで、その記憶能力を十分活用していない。このことは、これらのコンピュータで利用することができる記憶装置のサイズでは、例えば４０ないし１００ギガバイトの記憶装置で３２ないし９８ギガバイトの記憶スペースが使用されていないか十分活用されていないことを意味する。もっと低い能力の装置でさえ、数ギガバイトの記憶スペースが使用されないままかもしれない。全部では、何百万ドル（おそらく何十億ドル）に相当する記憶能力が毎日使用されないでいる。
【０００５】
本発明の背景に関する更なる課題は、データ・バックアップ操作に対する十分な記憶能力の必要性である。コンパクト・ディスクやフロッピー（登録商標）・ディスクなど、低コストの取外し可能媒体のための記憶能力が、時代とともに大きく伸びて来ているが、完全なまたは部分的なバックアップに必要な記憶スペースは単一の取外し可能媒体の装置で利用することができるスペースを、多くの場合に越えることになる。同様に、幾つかの取外し可能媒体の装置上にバックアップ・データを記憶するのに含まれる時間、労力、経済的コストは、一般的に利用できないほど高い。これは、データをバックアップするための高容量の記憶を必要とし、グリッド・コンピューティングの能力及び大量の存在する不使用のまたは使用不十分な記憶スペースと相俟って、グリッド・ベースのデータ・バックアップを導入する必要性が存在することを示唆する。
【０００６】
従って、グリッド・コンピューティング・システム上で好適にバックアップし、機能的に復旧する装置、システム及び方法に対する需要がある。有利なことに、このような装置、システム、及び方法は、専用のデータセンタに現在依存しているのを克服するとともに、利用可能な、使用されていない記憶能力とグリッド・コンピューティング技法とを利用する。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、今日の技術水準に応じて開発された。そして特に今日利用できるグリッド・コンピューティング・システムによって完全には解決されていない従来技術の課題及び要求に応じて開発された。従って、本発明はグリッド・コンピューティング上の複数個のクライアントにまたがるデータをバックアップするための装置、システム及び方法を提供するために開発され、上述した従来技術の課題の全部又は多くを克服する。
【課題を解決するための手段】
【０００８】
本発明の好適な実施例では、グリッド・コンピューティング・システム上の複数のクライアントにまたがるデータをバックアップするのに必要なステップを機能的に実行するように構成された複数のモジュールを含む論理ユニットが、グリッド・コンピューティング・システム上の複数のクライアントにまたがるデータをバックアップするための装置に設けられる。ここで説明する実施例に於けるこれらのモジュールはクライアント・リクエスト・モジュール、シーケンス・モジュール、グローバル・プロファイル・マネージメント・モジュール、パケット記憶モジュール、パケット取出し（retrieval）モジュール、データ・アセンブリ・モジュール、データ・アセンブリ・モジュール、圧縮モジュール、データ暗号化モジュール、及び冗長モジュールを含む。
【０００９】
本発明によれば、複数のクライアントに亙るデータをバックアップするためのシーケンス管理装置が提供される。そのシーケンス管理装置には、ソース・クライアントからバックアップされるべきデータを受取るように構成されたクライアント・リクエスト・モジュールと、複数のターゲット・クライアントの非トランスペアレントなシーケンスを発生するように構成されたシーケンス・モジュールと、その非トランスペアレントなシーケンスに従って複数のターゲット・クライアント上にデータを記憶するように構成されたパケット記憶モジュールとが設けられる。
【００１０】
他の視点から本発明を見ると、複数のクライアントに亙るデータをバックアップする方法が提供される。そのバックアップ方法は、ソース・クライアントからバックアップされるべきデータを受取るステップと、複数のターゲット・クライアントの非トランスペアレントなシーケンスを発生するステップと、その非トランスペアレントなシーケンスに従って複数のターゲット・クライアント上にデータを記憶するステップとを含む。
【００１１】
更に他の視点から本発明を見ると、複数のクライアントに亙るデータをバックアップするようにコンピュータを動作させるコンピュータ可読記憶媒体が提供される。そのコンピュータ可読記憶媒体には、ソース・クライアントからバックアップされるべきデータを受取り、複数のターゲット・クライアントの非トランスペアレントなシーケンスを発生するステップと、その非トランスペアレントなシーケンスに従って複数のターゲット・クライアント上にデータを記憶するステップとを含むバックアップ方法をコンピュータに実行させるように構成されたコンピュータ可読コードを含む。
【００１２】
グリッド・コンピューティング・システム上で複数のクライアントに亙るデータをバックアップするシステムが提供される。このシステムが実施されるのは、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、ローカル・エリア・ネットワーク及びワイド・エリア・ネットワークの組み合わせ、一つ又は複数のワイヤレス・ネットワーク、インターネット・ベースのグリッド・コンピューティング・ネットワーク、或いはその他のグリッド・コンピューティング環境である。特にこのシステムは、一実施例では、グローバル・シーケンス・マネジャと、ソース・クライアントと、一つ若しくは複数のターゲット・クライアントと、これらのコンポーネント相互間でのコミュニケーションを許容するコミュニケーション・インフラストラクチャとを含む。
【００１３】
このシステムはグリッド・コンピューティング・システムに接続されたクライアントに各々の料金申し込み(fee subscription) を管理し、且つここで説明するグリッド・システムの機能を回復するように構成される。
【００１４】
クライアントはまたグリッド・コンピューティング・システム上の複数のクライアントに亙るデータをバックアップするように提供される。一実施例では、そのクライアントには、ロジック回路が設けられ、これにはグリッド・コンピューティング・システム上で複数のクライアントに亙るデータをバックアップするのに必要な諸ステップを実行するように構成される。上述の実施例に於けるこれらのモジュールは、データ・バックアップ・モジュール、データを元に戻すモジュールと、ローカル・プロファイル・マネージメント・モジュールと、ユニーク・データ識別子発生モジュールとを含む。
【００１５】
また、グリッド・コンピューティング・システム上の複数のクライアントに亙るデータをバックアップする本発明の方法が提供される。開示された実施例に於けるこのプロセスは、説明される装置及びシステムの動作に関し、上記の機能を実行するのに必要な諸ステップを実質的に含む。一実施例では、ソース・クライアントからバックアップされるデータを受取るステップと、複数のターゲット・クライアントの非トランスペアレントなシーケンスを発生するステップとを含む。
【００１６】
このプロセスはまたそのバックアップ・データを記述するメタデータ情報を管理するステップと、そのデータをバックアップ・データ・パケットに再分割するステップと、ユニーク・データ識別子（ＵＤＩ）を用いてバックアップ・データを識別するステップ、クライアント申し込みを管理するステップと、クライアント・パフォーマンス資源の割り当てをトラックするステップと、ここで説明するような他の必要な付帯的で有益なステップとを含む。
【００１７】
本発明の一実施例は、グリッド・コンピューティング・システムに於ける幾つかのターゲット・クライアントの間で大量のバックアップ・データが分散され記憶されるのを効果的に許容する。本発明の他の実施例ではまた、大きなデータセンタを必要とすることなくデータがバックアップされるのを許容する。本発明の更に他の実施例では、データを複数のパケットに再分割し、非トランスペアレントなシーケンスに従ってターゲット・クライアント上にバックアップ・データ・パケットを記憶することによって、バックアップ・データのための追加的なセキュリティを効果的に提供する。
【００１８】
本明細書中では特徴、利点、もしくはそれらに類する用語で言及することが、本発明に関して実現されるような特徴及び利点の全てを本発明の単一の実施例に於いて実現しなければならないことを暗示するのではない。むしろ、特徴や利点に言及した用語は、或る実施例に関連して説明する特徴、利点、或いは特性が、本発明の少なくとも一つの実施例に含まれることを意味すると理解されたい。
【００１９】
本発明を他の視点から見ると、シーケンス管理装置に関連して、複数のクライアントに亙るデータをバックアップするためのクライアントが提供される。このクライアントは、シーケンス管理装置と交信するように構成されたネットワーク・インターフェイスと、割り当てられた記憶域を画成するように構成された記憶部と、ユニーク・データ識別子及び非トランスペアレントなシーケンスを用いてバックアップ動作を管理するように構成されたクライアント・バックアップ管理装置とを含む。
【００２０】
このクライアントは、データのためのバックアップ動作を開始し、そのデータのためのユニークなデータ識別子を発生するように構成されるソース・クライアントであっても良い。同様に、このクライアントは、シーケンス管理装置からのデータ記憶リクエストに応答して、その割り当てられた記憶域にそのデータの少なくとも一部を記憶するように構成されたターゲット・クライアントであっても良い。
【００２１】
本発明を更に他の視点から見ると、複数のクライアントに亙るデータをバックアップするためのシステムが提供される。このシステムが含むものは、ネットワーク・コミュニケーション・チャネルと、そのネットワーク・コミュニケーション・チャネルに結合され、データ・バックアップ動作を開始するように構成されたソース・クライアントと、そのネットワーク・コミュニケーション・チャネルに結合され、そのデータの少なくとも一部を記憶するように構成された複数のターゲット・クライアントと、そのネットワーク・コミュニケーション・チャネルに結合され、非トランスペアレントなシーケンスに従って複数のターゲット・クライアント上にそのデータを記憶するように構成されたグローバル・シーケンス・マネジャとである。
【００２２】
そのグローバル・シーケンス・マネジャはユニーク・データ識別子に対応するデータの単一のコピーを記憶するように構成され、そしてそのデータが記憶されるべきソース・クライアントに、またそのデータの同じコピーが記憶されるべき第２のソース・クライアントに、その単一のコピーを写像するように構成される。このシステムは、ソース・クライアント及び複数のターゲット・クライアントの各々についての契約上の定期購読ないし予約申込み（a contractual subscription）を管理するように構成された予約申込みマネジャを含んでも良い。このグローバル・シーケンス・マネジャ及び予約申込みマネジャは更にソース・クライアントのソース記憶割り当てパラメータを追跡するように構成されていても良い。同様に、グローバル・シーケンス・マネジャ及び予約申込みマネジャは、複数のターゲット・クライアントの各々のターゲット記憶割り当てパラメータを追跡するように構成されても良い。同様に、グローバル・シーケンス・マネジャ及び予約申込みマネジャは、ソース割り当てパラメータを追跡するように構成されていても良い。
【００２３】
そのソース割り当てパラメータは、ネットワーク割り当てパラメータ、クライアント・プロセッサ・パラメータ、及びクライアント帯域パラメータからなる群から選択されても良い。
【００２４】
本発明を更に他の視点から見ると、グリッド・コンピューティング・システム中で、予約申込みしたクライアントの契約上の予約申込みを管理する予約申込みマネジャが提供される。この予約申込みマネジャは、予約申込みしたクライアントと通信するように構成されたネットワーク・インターフェイスと、予約申込みしたクライアントからのグリッド・アプリケーションからのグリッド・アプリケーション開始リクエストを受取るように構成され、グリッド・コンピューティング・システム上のグリッド・アプリケーションを、その予約申込みしたクライアントが開始することができるようにするための予約申込みモジュールと、クライアント予約申込み料金を計算するように構成され、契約上の予約申込みに関連してクライアントの予約申込み料金の支払いをリクエストする料金モジュールとを含む。
【００２５】
そのグリッド・アプリケーションはグリッド・バックアップ・アプリケーションであっても良い。その料金モジュールは、特定の期間に亙る、クライアントの使用履歴に少なくとも部分的には基づいてクライアント予約申込み料金を計算するように構成される。同様に、その料金モジュールは、グリッド・コンピューティング・システムに割り当てられたクライアント資源を定義するクライアント資源割り当てパラメータに部分的には基づくクライアント料金を計算するように構成されても良い。
【００２６】
本発明を更に他の視点から見ると、複数のクライアントに亙るデータをバックアップする方法が提供される。そのバックアップ方法は、ソース・クライアントからバックアップすべきデータをリクエストするステップと、複数のデータ・パケットにデータを分割するステップと、複数のターゲット・クライアントの非トランスペアレントなシーケンスを発生するステップと、その非トランスペアレントなシーケンスに従って複数のターゲット・クライアント上のデータ・パケットを記憶するステップと、ソース・クライアントにデータを写像するためにそのデータに対応するユニーク・データ識別子を使用するステップと、複数のターゲット・クライアント上にバックアップされるデータを記述するメタデータ・ファイルを管理するステップと、ソース記憶割り当てパラメータ、ターゲット記憶割り当てパラメータ、ネットワーク割り当てパラメータ、クライアント・プロセッサ・パラメータ及びクライアント帯域幅パラメータのうちの一つである資源割り当てパラメータを追跡するステップと、ソース・クライアント及び複数のターゲット・クライアントの契約上の予約申込みを管理するステップとを含む。
【００２７】
本発明を更に他の視点から見ると、複数のクライアントに亙るデータをバックアップするための装置がここで提供される。この装置は、ソース・クライアントからバックアップされるべきデータを受取る手段と、複数のターゲット・クライアントの非トランスペアレントなシーケンスを発生する手段と、その非トランスペアレントなシーケンスに従って複数のターゲット・クライアントにデータを記憶する手段とを含む。
【００２８】
更に、本発明のここで記す特徴、効果、及び特性は、一つ若しくはそれ以上の実施例の適切な態様で組み合わされても良い。当業者は、或る特定の実施例の一若しくはそれ以上の特定の特徴や効果がなくても、本発明が実施できることを理解できよう。他の例では、本発明の全ての実施例には存在しないかもしれないが、或る実施例に於いては追加的な特徴や効果も認められるかもしれない。
【００２９】
本発明のこれらの特徴及び効果は、以下の説明及び特許請求の範囲から十分明瞭になるであろうし、或いは以下で開示する発明を実践することで理解されよう。
【発明を実施するための最良の形態】
【００３０】
本明細書で説明する多くの機能ユニットをモジュールと名づけているが、これはそれらの導入の仕方が独立であることを特に強調するためである。例えば、汎用のＶＬＳＩ回路やゲート・アレイ、或いは論理チップ、トランジスタ、その他の個別のコンポーネントなど、直ぐ入手できる半導体で構成されているハードウエアとしてモジュールが導入されてもよい。モジュールはまた、フィールドでプログラム可能なゲート・アレイ、プログラム可能なアレイ・ロジック、プログラム可能な論理装置など、プログラム可能なハードウエア装置で導入されていても良い。
【００３１】
モジュールはまた、いろいろな種類のプロセッサを実行させるためのソフトウエアで導入されていても良い。実行可能なコードの或る識別されたモジュールは、例えばオブジェクト、プロシージャ、または機能としてまとめられるような１個若しくは複数個の物理的又は論理的な、コンピュータ命令のブロックを例えば含んでいても良い。それでも、或る識別されたモジュールの実行可能ユニットは、互いに物理的に一緒に位置づけられる必要はなく、異なる位置に記憶された、異なる命令を含んでいても良い。これらは論理的に互いに一緒にされると、そのモジュールを構成し、そのモジュールのために記述された目的を達成する。
【００３２】
実際、実行可能コードのモジュールは、単一の命令、あるいは多くの命令からなっていてもよく、幾つかの異なるコード・セグメント、幾つかの異なるプログラム、幾つかのメモリ装置に亙って跨っていても良い。同様に、動作可能データは、ここではモジュール内で取り上げられ、説明されていてもよく、また任意の適当なタイプのデータ構造中に組み込まれ、任意の適当な形式で実施されても良い。この動作データは、単一のデータ・セットとして集められていても、異なる記憶装置や異種のメモリ装置といった異なる位置に亙って分散されていても良いし、また、少なくとも部分的には単に電子的な信号としてのみシステムやネットワーク上に存在していても良い。
【００３３】
更に、モジュールは、ソフトウエア及び１個若しくはそれ以上のハードウエア装置の組み合わせとして導入されていても良い。例えば、モジュールが、メモリ装置上に記憶されたソフトウエア実行可能コードといった組み合わせで実施されても良い。他の実施例では、モジュールは、一組の動作データ上で動作するプロセッサといった組み合わせであっても良い。更に他の例では、モジュールは、伝送回路を通る電子的信号の組み合わせで実施されてもよい。
【００３４】
この明細書全般で、「一実施例」「ある実施例」あるいはそれらと同様な用語で示すことは、その実施例に関連して説明する特徴、構造、若しくは特性が、本発明の少なくとも一つの実施例に含まれることを意味する。従って、「一実施例では」、「ある実施例では」及びこの明細書中で用いる同様の用語は、必ずしも全て同じ実施例を示すものではない。
【００３５】
更に、本発明で説明する特徴、構造、及び特性は、一つ若しくはそれ以上の実施例で任意の適当な態様で組み合わされても良い。以下の説明では、多くの特定の詳細が提供される。例えば、プログラミング、ソフトウエア・モジュール、ユーザの選択、ネットワークのやりとり、データベースの質問、データベース構造、データベース、ハードウエア・モジュール、ハードウエア回路、ハードウエア・チップ等々の例であり、これらで本発明を完全に理解することができる。他の例では、良く知られた構造、材料または動作を詳細には示していないが、これは本発明を分かりにくくしないためである。
【００３６】
図１は、複数のクライアント、即ちノード１０４ないし１１０にコミュニケーション・チャネルを介して接続されたグリッド・サーバ１０２を含むグリッド・システム１００を示す。図示のグリッド・システム１００は、ローカル・エリア・ネットワーク（ＬＡＮ）に似ており、コミュニケーション・チャネル１１２は、一実施例ではイーサネット（登録商標）。コミュニケーション・チャネル、ワイヤレス・コミュニケーション・チャネル、又は他の等価なコミュニケーション・チャネルであってよい。同様に、コミュニケーション・チャネル１１２は種々のタイプのコミュニケーションの組み合わせを含んでいても良い。図示のグリッド・システム１００が１個のグリッド・サーバ１０２と４個のクライアント１０４ないし１１０を含んでいるが、このグリッド・システムはもっと少ない或いはもっと多くのクライアント１０４ないし１１０、１個よりも多いサーバ１０２を有する種々の組み合わせのネットワーク構成の組み合わせ、或いは代替のサーバ構成を含んでいても良い。ある別の実施例では、グリッド・システム１００はまた図３で説明する申し込みマネジャ（図示せず）を含んでいてもよい。一実施例では、グリッド・サーバ１０２はグリッド・システム１００の申し込み(subscription)マネジャとして同時に作用する。
【００３７】
グリッド・システム１００は、一実施例で、グリッド・アプリケーションを実行するように構成される。グリッド・アプリケーションは、特定の目的を一緒に達成するワーク・アイテムの集合である。例えば、あるグリッド・アプリケーションは天気予報や株式市場開発など、非常に複雑な数学的計算を判断してもよい。あるグリッド・アプリケーションはまた、大規模なマルチメディア動作を処理しても良い。他の実施例では、あるグリッド・アプリケーションが、かなりで多様な量のデータについてデータ・バックアップ動作を実行しても良い。本発明が無数の他のグリッド・アプリケーションや機能に適用されるかもしれないが、以下の説明はグリッド・コンピューティング環境内でのデータ・バックアップ動作に焦点を当てている。
【００３８】
一つのグリッド・アプリケーションは複数のジョブに分割されても良いし、単一のユニットのワークであっても良い。一つのグリッド・アプリケーションのうち幾つかのジョブは、一つ若しくはより多くの種々のノード１０４ないし１１０上で、同時に、逐次的に、又は共同従属的に（co-dependently）実行されても良い。各ノード１０４ないし１１０は、あるグリッド・アプリケーションを実行するためのグリッド・システム１００に或るパフォーマンス資源を割り当てても良い。クライアント１０４ないし１１０によって利用できるようにされるこれらのパフォーマンス資源はプロセッサの能力、プロセッサの容量、記憶容量、又はメモリ容量、及び他の同様の資源を含んでも良い。一実施例では、クライアント１０４ないし１１０は、グリッド・アプリケーションの実行のために、グリッド・システム１００に全体のプロセッサ能力、記憶容量またはメモリ容量の特定の量をグリッド・システム１００の専用にしても良い。
【００３９】
各クライアント１０４ないし１１０は、特定のグリッド・アプリケーションに於ける各クライアント１０４ないし１１０の役割に従って、ソース・クライアントあるいはターゲット・クライアントとして働く。例えば、クライアント１０４ないし１１０がグリッド・アプリケーションを開始する場合、クライアント１０４ないし１１０はソース・クライアントとして働く。あるいは、クライアント１０４ないし１１０が、遠隔で開始されるグリッド・アプリケーションを実行するのにローカルのパフォーマンス・ソースとして利用できるようにする場合には、クライアント１０４ないし１１０はターゲット・クライアントとして働く。例えば、グリッド・バックアップ動作の場合は、ソース・クライアントは一つまたは複数のターゲット・クライアント上にバックアップ・データ・ファイルを有しているかもしれないが、そのようなときターゲット・クライアントは、バックアップ・グリッド動作のためにグリッド・システム１００に、利用可能な記憶部を割り当てる。
【００４０】
図２は図１のグリッド・システム１００中のクライアント記憶部２００の一実施例を示す。図示の例では、特定のクライアント１０４ないし１１０上の記憶部２００が使用済み記憶部２０２およびフリー記憶部２０４を含むかもしれない。使用済み記憶部２０２は、オペレーティング・システム・ファイル２０６、アプリケーション・プログラム・ファイル２０８、データ・ファイル２１０などを含む、データを記憶する電子的な記憶スペースである。フリー記憶部２０４は、クライアント１０４ないし１１０による動作ないし記憶のために、特別に使用されない電子的記憶スペースである。
【００４１】
フリー記憶部２０４は、一実施例では、オーバーフロー記憶部２１２、利用可能記憶部２１４、及び割り当て済み記憶部２１６を含んでいてもよい。オーバーフロー記憶部２１２は、Windows （MicrosoftCorporationの米国その他の国における商標）オペレーティング・システム中のページ・ファイルに似て、アプリケーション・プログラムの実行のためにリザーブされた記憶スペースであってもよい。割り当て済み記憶部２１６はグリッド・アプリケーションの実行及びグリッド・データの記憶のためにグリッド・システム１００の専用にしても良い。その割り当て済み記憶部２１６は、以下の説明に亙って詳細に説明するであろう。利用可能記憶部２１４は、オーバーフロー記憶部２１２または割り当て済み記憶部２１６のいずれかとしては現在使用されていないきおくスペースであっても良く、クライアント１０４ないし１１０による将来の使用のためにリザーブされている。
【００４２】
図２は特定のタイプの使用済み記憶部２０２及びフリー記憶部２０４を示すが、グリッド・システム１００上の特定のクライアント１０４ないし１１０の記憶部２００は、サイズ、容量、利用の仕方、可用性、特にグリッド・システム１００専用の割り当て済み記憶部２１６の量も変えても良い。また特定のクライアント１０４ないし１１０の記憶部２００は、使用済み記憶部２０２及びフリー記憶部２０４及びその再分割したものの量及び割り当てに関して時間の経過とともに変わっても良い。一実施例では、その割り当て済み記憶部２１６は、クライアント１０４ないし１１０上の記憶部２００全体に対し最小であってもよい。その代わりに、割り当て済み記憶部２１６は、オーバーフロー記憶部２１２を除くフリー記憶部２０４の全てを含んでいてもよい。その場合はクライアント１０４ないし１１０は、上述のような利用可能記憶部２１４を持たないことになろう。
【００４３】
図３は、図１のグリッド・システム１００に幾つかの点で似たグリッド・システム３００の他の実施例を示す。図示のグリッド・システム３００は、グリッド・システム３００の種々の他のコンポーネントに亙るコミュニケーション・チャネルを提供するインターネット３０２を介して動作する。図示のグリッド・システム３００はまた、図１のグリッド・システムに似たネットワーク・システム３０４、３０６をも含み、これらが図３のグリッド・システム３００中のサブシステムを構成する。更には、このグリッド・システム３００はインターネットに直接結合され、その点でローカル・ネットワークの一部を構成しない他のクライアント３０８、３１０を含む。
【００４４】
グリッド・システム３００はまた、以下で詳細に説明する申し込みマネジャ３１２を含んでいても良い。代わりに、申し込みマネジャ３１２は、グリッド・システム３００中で他のネットワーク・システム３０４、３０６に接続されていても良い。更なる実施例では、これらのグリッド・システム３００は複数の申し込みマネジャ３１２を有し、夫々が独立に画成された申し込みグループを管理するようになっていても良い。
【００４５】
上述のとおり、他の同様のグリッド・システム構成が、図１や図２のグリッド・システム１００、３００の代わりに、あるいはそれに加えて用いられていても良い。以下の説明で、グリッド・システム１００、３００のいずれかを参照するときは、特にグリッド・システム１００、３００の一つを除外すると断らない限り、グリッド・システム１００、３００のいずれかまたは両方を指すものと理解されたい。
【００４６】
図４はグローバル・シーケンス・マネジャ４００の一実施例を示す。図示のグローバル・シーケンス・マネジャ４００は、一実施例においては、グリッド・システム１００上でのデータ・バックアップ動作を管理する。一実施例では、グローバル・シーケンス・マネジャ４００は中央処理装置（ＣＰＵ）４０２、ローカル記憶装置４０４、ユーザー・インターフェイス４０６、ネットワーク・インターフェイス４０８、メモリ４１０、及びグローバル・シーケンス管理装置４１２を含む。ＣＰＵ４０２はグローバル・シーケンス・マネジャ４００中の動作を実行するように概略構成される。ユーザー・インターフェイス４０６は、一実施例では、ユーザーがグローバル・シーケンス・マネジャ４００と相互作用するのを許容するように構成される。この相互作用には、ユーザーからのデータ及びコマンドを入力し、ユーザーに出力データを伝送（コミュニケーション）するのを許容することを含む。このネットワーク・インターフェイス４０８は、一実施例では、グリッド・ネットワーク１００のコミュニケーション・チャネル１１２上でのグローバル・シーケンス・マネジャ４００のネットワーク・コミュニケーションを促進するように構成される。
【００４７】
ローカルのメモリ４１０は、一実施例では、グリッド・バックアップ動作と関連して使用され得るような幾つかのデータ及びメタデータのファイルを記憶するように構成される。代替実施例では、これらのデータ及びメタデータのファイルの幾つか又は全てがローカル記憶装置４０４に複製(replicate)されても良い。更なる実施例では、これらのデータ及びメタデータのファイルの一つ又は全てがメモリ４１０よりもローカル記憶装置４０４に排他的に記憶されても良い。他の実施例では、これらのデータ及びメタデータのファイルの一つ又は全てがグリッド・システム１００上の分散された記憶部に記憶されていても良い。ここでの説明で「ファイル」に言及しているが、本発明は他の電子的メモリや記憶構造を用い、実質上同じ態様で動作するものと理解されたい。ここでデータ・ファイル若しくはメタデータ・ファイルと言及するのは、これも他の電子的メモリや記憶構造にも等しく言及しているものと理解されたい。
【００４８】
特に、メモリ４１０はグローバル・クライアント・プロファイル４１４、ソース・クライアント・プロファイル４１６、ソース・データ・レコード４１８、ターゲット・データ・レコード４２０、データ・アセンブリ・レコード４２２、及びグローバル・バックアップ・ログ４２４を記憶しても良い。グローバル・クライアント・プロファイル４１４は、一実施例で、ネットワーク・プロファイルを記憶するように構成されるが、更にデフォールトのクライアント・プロファイルを記憶していても良い。グローバル・クライアント・プロファイル４１４は、図６で詳細に説明する。ソース・クライアント・プロファイル４１６は、一実施例で、ユニークなクライアント・プロファイルを記憶するように構成され、更に別の実施例では、データ・ユニット・プロファイルを記憶しても良い。ソース・クライアント・プロファイル２１６は、図７で詳細に説明する。
【００４９】
ソース・データ・レコード４１８は、一実施例では、１個若しくはそれ以上のターゲット・クライアントに記憶されている、バックアップ・データ・ファイルに関するメタデータ若しくはその一部を記憶するように構成される。同様に、ターゲット・データ・レコード４２０は、一実施例で、１個若しくはそれ以上のターゲット・クライアントに記憶されている、バックアップ・データ・ファイルに関するメタデータ若しくはその一部を記憶するように構成される。１個のファイル若しくはその一部のためのソース・データ・レコード４１８及びターゲット・データ・レコード４２０は、バックアップ・ファイルについての、同様の、若しくは部分的に複製されたメタデータを含んでいても良い。ソース・データ・レコード４１８及びターゲット・データ・レコード４２０は図８及び図９で、夫々詳細に説明する。
【００５０】
データ・アセンブリ・レコード４２２は、一実施例では、単一のバックアップ・ファイルに関する幾つかのパケットの情報がアセンブルされるべき順序についての情報を記憶するように構成される。その結果、復元されるバックアップ・ファイルは元々バックアップされていたファイルに記憶されていた情報を正確に記憶する。このデータ・アセンブリ・レコード４２２については図１０で詳細に説明する。グローバル・バックアップ・ログ４２４は、一実施例では、バックアップ・ヒストリを記憶するように構成される。このバックアップ・ヒストリは、或る期間に亙っての一つ若しくはそれ以上のグローバル・バックアップ・グリッド・アプリケーションの動作を記録している。このようにして、グローバル・バックアップ・ログ４２４は、バックアップ・ヒストリのレビューをし易くし、また所与のバックアップ・グリッド・アプリケーションの実行前に存在していたグリッド、若しくはクライアントの状況の復元し易くする。
【００５１】
グローバル・シーケンス管理装置４１２は、一実施例では、グリッド・システム１００に亙るデータ・バックアップ動作をし易くするように構成される。グローバル・シーケンス管理装置４１２は、特定のソース・クライアントにより開始されるバックアップ及び取戻し動作の実行を管理することができる。図示のグローバル・シーケンス管理装置４１２は、クライアント・リクエスト・モジュール４２６、シーケンス・モジュール４２８、グローバル・プロファイル管理モジュール４３０、パケット記憶モジュール４３２、パケット取出しモジュール４３４、データ・アセンブリ・モジュール４３６、圧縮モジュール４３８、暗号化モジュール４４０、冗長化モジュール４４２を含む。
【００５２】
一実施例では、クライアント・リクエスト・モジュール４２６は、１個若しくはそれ以上のファイルをバックアップするために、ソース・クライアントからのリクエストを処理するように構成される。クライアント・リクエスト・モジュール４２６は、ソース・クライアントからバックアップされるべきデータを受取るように更に構成されていても良い。シーケンス・モジュール４２８は、一実施例では、バックアップ・データが記憶されてもよいような１個若しくはそれ以上のターゲット・クライアントを識別する非トランスペアレントなシーケンス・キーを発生するように構成させる。この非トランスペアレントなシーケンス・キーは排他的に記憶され、バックアップ・データのセキュリティのレベルを提供するように、グローバル・シーケンス・マネジャによってアクセス可能である。このシーケンス・キーの非トランスペアレントな性質はそのユニークさに関連し、ならびにその発生の排他性、アクセスし易さ、複製に関係する。
【００５３】
例えば、グローバル・シーケンス・マネジャ４００は、複数のターゲット・クライアントの各々のデータのパケット若しくはその一部を記憶することによって複数のターゲット・クライアント上にソース・クライアントからデータをバックアップしても良い。ソース・クライアントからのデータの一部がリモート・ターゲット・クライアントのローカル記憶装置上に記憶されても良いので、グローバル・シーケンス・マネジャ４００にのみ知られた順序で、幾つかの異なるターゲット・クライアント上にバックアップ・データ・パケットを記憶することによって、一つのレベルのデータ・セキュリティが提供されても良い。このようにして、データの一部が特定のターゲット・クライアント上でアクセス可能であったとしても（バックアップ・データは暗号化してもよいが、第２層のセキュリティを加える）、要求しているソース・クライアントに元々記憶されていたデータを実質的に若しくは完全に再アセンブルするのは非常に困難であるか、或いは不可能でさえある。その結果、異なるターゲット・クライアント上に記録されるデータのこれらの部分のサイズが小さくなるので、データ・セキュリティのレベルを上げることになる。
【００５４】
グローバル・プロファイル管理モジュール４３０は、一実施例では、グリッド・システム１００中に接続された個々のネットワークのためのプロファイルを含む、デフォールトの、ユニークなクライアント・プロファイルの管理をし易くする。一実施例では、グローバル・プロファイル管理モジュール４３０は、ユーザーが上述のグローバル・クライアント・プロファイル４１４及びソース・クライアント・プロファイル４１６を画成するのを許容する。これらの説明は図６及び図７で夫々もっと詳しく説明する。
【００５５】
パケット記憶モジュール４３２は、一実施例で、ソース・クライアントから１個若しくはそれ以上のターゲット・クライアントにバックアップ・データを記録するようにグリッド・システム１００中で構成される。一実施例では、パケット記憶モジュール４３２は、バックアップ・データをターゲット・クライアントに記憶する前に、等しいサイズ若しくは不均等なサイズのパケットに再分割してもよい。別の実施例では、パケット記憶モジュール４３２は、シーケンス・モジュール４２８により発生される非トランスペアレントなシーケンス・キーに従って、１個若しくはそれ以上のターゲット・クライアント上にバックアップ・データ・パケットを記憶しても良い。別の実施例では、パケット記憶モジュール４３２は、バックアップ・データが圧縮モジュール４３８により圧縮され、暗号化モジュール４４０を介して暗号化され、或いは冗長化モジュール４４２により複製(duplicate)されるの許容した後、ターゲット・クライアント上にそのバックアップ・データを記憶しても良い。複製された(replicated)データの場合、パケット記憶モジュール４３２はまた非トランスペアレントなシーケンス・キーに従って複製されたバックアップ・データを記憶しても良い。一実施例では、パケット記憶モジュール４３２はまた１個若しくはそれ以上のソース・データ・レコード４１８、ターゲット・データ・レコード４２０、及びデータ・アセンブリ・レコード４２２のうちの１個若しくはそれ以上を生成し或いは記憶するように構成されていても良い。
【００５６】
パケット取出しモジュール４３４は、一実施例では、バックアップ・データ・パケットまたはその複製（copy）を、そのパケットが記憶され得るようなターゲット・クライアントから取出すように構成されても良い。一実施例では、パケット取出しモジュール４３４は、バックアップ・データ・パケットをターゲット・クライアント上に予め記憶するようにパケット記憶モジュール４３２により使用されたのと同じ若しくは似たような非トランスペアレントなシーケンス・キーを用いていても良い。
【００５７】
データ・アセンブリ・モジュール４３６は、一実施例では、複数のバックアップ・データ・パケットを、再分割前の元データ・ファイルのフォーマットに、同一でないなら、似ている、或る理解可能なフォーマットにアセンブルするように構成されていても良い。一実施例では、データ・アセンブリ・モジュール４３６は、元データがパケットに再分割され、ターゲット・クライアントに記憶されたときにほぼ発生されるデータ・アセンブリ・レコード４２２に従って復元されるデータをアセンブルしてもよい。
【００５８】
上述のとおり、圧縮モジュール４３８、暗号化モジュール４４０、及び冗長化モジュール４４２は、夫々バックアップ・データを、そのデータが１個若しくはそれ以上のターゲット・クライアントに記憶される前に、修正しても良い。同様に、圧縮モジュール４３８、暗号化モジュール４４０、及び冗長化モジュール４４２は、そのデータを、解凍、解読等により元のフォーマットに復元するように独立に若しくは一緒に使用されても良い。
【００５９】
図５は、グリッド・システム１００中でソース・クライアント若しくはターゲット・クライアントのいずれかとして動作しても良いクライアント５００の一実施例を示す。図４のグローバル・シーケンス・マネジャ４００のように、クライアント５００はＣＰＵ５０２、ローカル記憶装置５０４、ユーザー・インターフェイス５０６、ネットワーク・インターフェイス５０８、及びメモリ５１０を含む。図示のクライアント５００はまたローカル・シーケンス管理装置５１２を含む。クライアント５００のＣＰＵ５０２、ユーザー・インターフェイス５０６、及びネットワーク・インターフェイス５０８は、グローバル・シーケンス・マネジャ４００のＣＰＵ４０２、ユーザー・インターフェイス４０６、及びネットワーク・インターフェイス５０８とほぼ同様のものである。ローカル記憶装置５０４は図２の記憶装置２００に似たものであり、一実施例では、図２に示すように分割されても良い。例えば、一実施例では、ローカル記憶装置５０４は、使用済み記憶部２０２（オペレーティング・システム・ファイル２０６、アプリケーション・プログラム・ファイル２０８、及びデータ・ファイル２１０を含む）並びにフリー記憶部２０４（オーバーフロー記憶部１２、利用可能記憶部２１４、及び割り当て済み記憶部２１６を含む）を含んでいても良い。
【００６０】
メモリ５１０は、一実施例では、グリッド・バックアップ動作と関連して使用されても良い幾つかのデータ・ファイル及びメタデータ・ファイルを記憶するように構成される。代替実施例では、これらのデータ・ファイル及びメタデータ・ファイルの幾つか若しくは全部がローカル記憶装置５０４に複製される。別の実施例では、これらのデータ・ファイル及びメタデータ・ファイルの一つ若しくは全部がメモリ５１０ではなく、ローカル記憶装置５０４に排他的に記憶されても良い。他の実施例では、これらのデータ・ファイル及びメタデータ・ファイルのうちの一つ若しくは全部がグリッド・システム１００上の分散された記憶部に記憶されても良い。
【００６１】
メモリ５１０は、一実施例では、グローバル・クライアント・プロファイル５１４、ソース・クライアント・プロファイル５１６、ターゲット・データ・レコード５１８、ローカル・ソース・ログ５２０、及びローカル・ターゲット・ログ５２２を記憶していても良い。グローバル・クライアント・プロファイル５１４は、グローバル・シーケンス・マネジャ４００のグローバル・クライアント・プロファイル４１４にほぼ似ており、一実施例で、一方が他方の複製品であっても良い。同様に、ソース・クライアント・プロファイル５１６はグローバル・シーケンス・マネジャ４００のソース・クライアント・プロファイル４１６に略似ており、一実施例では一方が他方の複製品であっても良い。似たようにして、ターゲット・データ・レコード５１８はグローバル・シーケンス・マネジャ４００の
ターゲット・データ・レコード４２０に略似ており、一実施例では、一方が他方の服製品であっても良い。ローカル・ソース・ログ５２０及びローカル・ターゲット・ログ５２２は夫々グローバル・バックアップ・ログ４２４に似ているが、クライアント５００でユニークなのはソース・クライアント若しくはターゲット・クライアントとしてのその能力である。一実施例では、クライアント５００及びグローバル・シーケンス・マネジャ４００は、例えば単一のクライアント１０４ないし１１０に含まれていても良い。
【００６２】
ローカル・シーケンス管理装置５１２は。一実施例では、グリッド・システム１００に亙るデータ・バックアップ及び復元動作を開始し、促進するように構成される。一つの特定の実施例では、クライアント５００がソース・クライアントとして働き、クライアント５００のローカル記憶装置５０４上に元々記憶されていたデータ・ファイルをバックアップするバックアップ・グリッド・アプリケーションを開始しても良い。グローバル・シーケンス・マネジャ４００の管理下で、ローカル・シーケンス管理装置５１２は、グリッド・システム１００中の１個若しくはそれ以上のリモートのターゲット・クライアント１０４ないし１１０にローカル・ファイルをバックアップしても良い。同様に、クライアント５００がソース・クライアントとして働き、適切なターゲット・クライアント１０４ないし１１０からバックアップ・データ・パケットを復元するように復元グリッド・アプリケーション開始するようにしても良い。代替実施例では、クライアント５００がターゲット・クライアントとして働き、リモートのソース・クライアント１０４ないし１１０上に元元記憶されているファイルのバックアップ・コピー若しくはその一部を記憶してもよい。その場合は、バックアップ・データを記憶するためにクライアント５００がローカル記憶装置５０４中の割り当て済み記憶部２１６を使用していても良い。
【００６３】
図示のローカル・シーケンス管理装置５１２は、データ・バックアップ・モジュール５２４、データ復元モジュール５２６、ローカル・プロファイル管理モジュール５２８、及びユニーク・データ識別子発生モジュール５３０を含む。一実施例では、データ・バックアップ・モジュール５２４は、グローバル・シーケンス・マネジャ４００に対するデータ・バックアップ・リクエストを送るように構成される。一実施例では、データ・バックアップ・モジュール５２４が、フル・バックアップ若しくは部分的バックアップ（増分バックアップや。差分バックアップ等を含む）といった種々のタイプのバックアップをリクエストしても良い。バックアップ・リクエストは、クライアント５００を介するユーザー・リクエスト、若しくはローカル・ネットワーク若しくはグリッド・システム１００を介するアドミニストレータ・リクエストに応答して引き起こされても良い。代わりに、バックアップ・リクエストが、例えば週単位で増分するバックアップ・プロシージャなど、スケジュールされたイベントに応答して、或いは記憶部利用設定ポイントなど非同期のイベントに応答して引き起こされても良い。代わりに、バックアップ・リクエストは、クライアント５００上、あるいはグリッド・システム１００中で生じる特定の挙動やイベントなど、トリガとなるイベントに応答して引き起こされても良い。
【００６４】
データ復元モジュール５２６は、一実施例では、グロ−バル・シーケンス・マネジャ４００にデータ復元リクエストを送るように構成される。データ・バックアップ・リクエストに似て、データ復元リクエストは、ユーザー・リクエスト、記憶失敗、若しくはローカル・アプリケーション・プログラムを含む、１個若しくはそれ以上の手動若しくは自動の入力に応答して引き起こされる。ローカル・プロファイル管理モジュール５２８はグローバル・シーケンス管理装置４１２のグローバル・プロファイル管理モジュール４３０に似ている。一実施例では、ローカル・プロファイル管理モジュール５２８は、ローカル・プロファイル管理モジュール５２８が在るクライアント５００に特有のユニークなソース・クライアント・プロファイル５１６を発生し、若しくは記憶する。他の実施例では、ローカル・プロファイル管理モジュール５２８が、特定のデータ・ユニットに特有のユニークなソース・クライアント・プロファイル５１６を生じ、若しくは記憶しても良い。
【００６５】
ユニーク・データ識別子発生モジュール即ちＵＤＩ発生モジュール５３０は、一実施例では、クライアント５００上に在っても良い夫々、元の（非バックアップの）ユニークなデータごとにユニット・データ識別子（ＵＤＩ）を発生するように構成される。例えば、ＵＤＩ発生モジュール５３０は、クライアント５００上の各データ・ファイル若しくはその一部ごとにユニーク・データ識別子（ＵＤＩ）を発生し、割り当てても良い。他の実施例では、ＵＤＩ発生モジュール５３０はグローバル・シーケンス管理装置４１２上に在って、データ・ファイルの一部であってもよい各データ・パケットごとにユニーク・データ識別子（ＵＤＩ）を割り当ても良い。このユニーク・データ識別子（ＵＤＩ）は、特定のデータ・ユニット、ファイル、パケット若しくはその一部のバックアップ・コピーが特定のターゲット・クライアント若しくはターゲット・クライアントのセット上に既にバックアップされているか調べるのに使用されてもよい。もしそうであれば、グローバル・シーケンス管理装置４１２は、グリッド・システム１００に利用できる記憶スペースを保存しても良い。この保存は、データ・ユニットの元のコピーが独特のソース・クライアントから発生したとしても、同じデータ・ユニットのバックアップ・コピーの複製のバックアップ・コピーを生じるよりは既に存在するバックアップ・コピーを参照することによって行われる。
【００６６】
一実施例では、ローカル・シーケンス管理装置５１２及びグローバル・シーケンス管理装置４１２が単一の装置上に在っても良い。例えば、大きなローカル・ネットワークの一部でなく、直接接続されたクライアント３０８、３１０が、必要に応じともにクライアント５００及びグローバル・シーケンス・マネジャ４００として動作しても良い。他の実施例では、クライアント５００は、グローバル・シーケンス・マネジャ４００にデータ・パケットを送る前に、それらをパケット化し、圧縮し、暗号化し、複製するなどのための必要なモジュールとともに構成されていても良い。他の実施例では、クライアント５００若しくはグローバル・シーケンス・マネジャ４００中のモジュールは、グリッド・システム１００中の幾つかの装置に分散されていても良い。
【００６７】
図６は、図４及び図５のグローバル・クライアント・プロファイル４１４、５１４に略似たグローバル・クライアント・プロファイル６００の一実施例を示す。一実施例では、グローバル・クライアント・プロファイル６００はグローバル・シーケンス・マネジャ４００及びクライアント５００の一方又はその両方に記憶される。図示のグローバル・クライアント・プロファイル６００は、ネットワーク識別子フィールド６０２、ネットワーク割り当てフィールド６０４、クライアント識別子フィールド６０６、クライアント・パケット圧縮フィールド６０８、クライアント・パケット冗長化フィールド６１０、クライアント・パケット暗号化フィールド６１２、クライアント・バックアップ近接フィールド６１４、クライアント・パケット近接フィールド６１６、クライアント・パケット記憶フィールド６１８、クライアント・プロセッサ・フィールド６２０、クライアント帯域フィールド６２２、クライアント同期フィールド６２４、及びクライアント・オート・アーカイブ・フィールド６２６を含む。
【００６８】
ネットワーク識別子フィールド６０２は、一実施例では、グリッド・システム３００中で、例えば図３のネットワーク・システム３０４のような特定のネットワーク・システムのためのネットワーク識別子を記憶するように構成される。ネットワーク割り当てフィールド６０４は、一実施例では、グリッド・システム３００に専用のネットワーク・パフォーマンス資源を示すネットワーク割り当てパラメータを記憶しても良い。例えば、ネットワーク割り当てフィールド６０４が、グリッド・システム３００専用で、バックアップ・グリッド・アプリケーションに利用できるネットワーク帯域の割合を示すネットワーク帯域割り当てパラメータを記憶しても良い。
【００６９】
クライアント識別子フィールド６０６は、一実施例では、クライアント名若しくはクライアント番号などクライアント識別パラメータを記憶するように構成されても良い。一実施例では、グリッド・システム１００に接続された各クライアント５００はユニークなクライアント名によって識別されても良い。他の実施例では、クライアント識別フィールド６０６に記憶されたクライアント識別パラメータが、ネットワーク識別フィールド６０２に記憶されたネットワーク識別パラメータを採用しても良い。
【００７０】
一実施例では、クライアント・バックアップ近接性パラメータが、バックアップ・データが記憶されるターゲット・クライアント及びソース・クライアント間の、最短又は最長の距離など、地理的限界を示しても良い。他の実施例では、クライアント・パケット近接性パラメータが、バックアップ・データを記憶する幾つかのターゲット・クライアント間の最短又は最長の距離を示しても良い。このようにして、クライアント・バックアップ近接パラメータ及びクライアント・パケット近接性パラメータは、一つのパケットのアクセス容易性が、別のデータ・パケットのアクセス容易性とほぼ独立にされても良いことを確保する。例えば、ソース・クライアントは、クライアント・バックアップ近接性パラメータを調整することによって、そのソース・クライアントと同じ首都圏領域、州、又は国にはないターゲット・クライアントにバックアップ・データを記憶するようにリクエストしても良い。
【００７１】
クライアント・バックアップ近接性パラメータ及びクライアント・パケット近接性パラメータを、一実施例では、マイルやキロメータなど、物理的距離を示しても良い。ノード１０４ないし１１０の間の距離は、例えば全地球測位システム（ＧＰＳ）座標を用いて計算または予測しても良い。代りに、これらのパラメータを論理的距離で示してもよい。例えば、クライアント・バックアップ近接性パラメータ及びクライアント・パケット近接性パラメータが、ソース・クライアントのインターネット・プロトコル（ＩＰ）アドレスを参照し、別のネットワーク若しくはサブネット中のターゲット・クライアント上にそのバックアップ・パケットが記憶されるように特定しても良い。他の実施例では、クライアント・バックアップ近接性パラメータ及びクライアント・パケット近接性パラメータが、或るノード１０４ないし１１０を、バックアップ・データ・パケットを記憶するべきノード若しくは記憶しないノードと内包的に若しくは排他的に特定しても良い。
【００７２】
クライアント・パケット圧縮フィールド６０８、クライアント・パケット冗長化フィールド６１０、及びクライアント・パケット暗号化フィールド６１２は、夫々、デフォールトの圧縮、冗長性、及び暗号化のパラメータを記憶するように構成されても良い。これらのパラメータは、圧縮のタイプ、暗号化のレベル、若しくは冗長性のレベルを示す。例えば、デフォールト・パラメータとして使用されても良い。同様に、クライアント・バックアップ近接性フィールド６１４及びクライアント・パケット近接性フィールド６１６がデフォールトの近接性パラメータを記憶するように構成されても良い。
【００７３】
クライアント記憶フィールド６１８は、一実施例では、グリッド・システム１００専用のクライアント記憶のデフォールト量を定義するデフォールト・クライアント記憶割り当てパラメータを記憶するように構成されても良い。同様に、クライアント・プロセッサ・フィールド６２０及びクライアント帯域フィールド６２２が、一実施例では、グリッド・システム１００に専ら関係するプロセッサ性能及び帯域を示しても良い。一実施例では、これらのパラメータの各々を量的な数値によって示してもよい。他の実施例では、これらのパラメータの各々を、利用可能な全性能のうちの割合として表すことができる。
【００７４】
クライアント同期フィールド６２４は、一実施例では、クライアント同期パラメータを記憶するように構成されても良い。このパラメータは、グローバル・シーケンス・マネジャ４００上のグローバル・クライアント・プロファイル６００がクライアント５００上のグローバル・クライアント・プロファイル５１４又はソース・クライアント・プロファイル５１６にどの程度の頻度で同期すべきかを示す。この同期は一実施例では、単一ステップのプロセスであってよい。代替実施例では、クライアント５００上のグローバル・クライアント・プロファイル５１４及びグローバル・シーケンス・マネジャ４００上のソース・クライアント・プロファイル４１６を同期させるための追加のステップを含んでも良い。好ましくは、グローバル・クライアント・プロファイル６００の複数のコピーがクライアント５００及びグローバル・シーケンス・マネジャ４００上に存在するなら、これらのコピーはクライアント５００及びグローバル・シーケンス・マネジャ４００の両方に正確な情報を提供するのに必要な頻度だけ同期される。
【００７５】
クライアント・オート・アーカイブ・フィールド６２６は、一実施例では、クライアント・データ・ファイルがどの程度の頻度でバックアップされるべきかを示すクライアント・オート・アーカイブ・パラメータを記憶しても良い。他の実施例では、クライアント・オート・アーカイブ・パラメータが、所与の刺激に応答して実行されるべきバックアップのタイプ、即ちフルか、増分的か、或いは他のタイプのバックアップか、を示してもよい。
【００７６】
図７は、図４及び図５のソース・クライアント・プロファイル４１６、５１６に実質的に良く似たソース・クライアント・プロファイル７００の一実施例を示す。
一実施例では、ソース・クライアント・プロファイル７００がグローバル・シーケンス・マネジャ４００及びクライアント５００の一方又は両方に記憶されても良い。図示のソース・クライアント・プロファイル７００は、ソース・クライアント識別子フィールド７０２、ユニーク・データ識別子（ＵＩＤ）フィールド７０４、データ・ソース位置フィールド７０６、データ・パケット圧縮フィールド７０８、データ・パケット冗長性フィールド７１０、データ・パケット暗号化フィールド７１２、データ・バックアップ近接性フィールド７１４、データ・パケット近接性フィールド７１６、データドウキフィールド７１８、及びデータ・シーケンス・キー・フィールド７２０を含む。
【００７７】
ソース・クライアント識別子フィールド７０２は、一実施例では、グローバル・クライアント・プロファイル６００のクライアント識別子フィールド６０６に略似たものである。
ユニーク・データ識別子（ＵＤＩ）フィールド７０４は、一実施例では、特定のデータ・ユニットに対応するユニーク・データ識別子（ＵＤＩ）を記憶するように構成されても良い。データ・ソース位置フィールド７０６は、一実施例では、ユニーク・データ・フィールド（ＵＤＩ）７０４に記憶されたＵＤＩにより識別される、ソース・クライアント上の元のデータ・ユニットのファイル位置を識別するように構成されても良い。
【００７８】
データ・パケット圧縮フィールド７０８、データ・パケット冗長化フィールド７１０、及びデータ・パケット暗号化フィールド７１２は、グローバル・クライアント・プロファイル６００のクライアント・パケット圧縮フィールド６０８、クライアント・パケット冗長化フィールド６１０、及びクライアント・パケット暗号化フィールド６１２に似ている。しかし、一実施例では、ソース・クライアント・プロファイル７００中のこれらのフィールド７０８、７１０、７１２は、特定のソース・クライアント上のデータ・ユニットの全てに対しデフォールトのパラメータを記憶するというより、各データ・ユニットに対しユニーク・データ識別子（ＵＤＩ）により識別された実際のパラメータを記憶しても良い。代替例として、これらのフィールド７０８、７１０、７１２は全てのデータ・ユニットに対し同じパラメータを記憶しても良いし、またグローバル・クライアント・プロファイル６００中の各フィールド６０８、６１０、６１２と同じパラメータを記憶しても良い。同様にデータ・バックアップ近接性フィールド７１４及びデータ・パケット近接性フィールド７１６は、グローバル・クライアント・プロファイル６００の近接性フィールド６１４、６１６、と似ている。しかし、ソース・クライアント・フィールド７００中のこれらのフィールド７１４、７１６は、上述のフィールド７０８、７１０、７１２と似たように、各データ・ユニットごとに特定される、ユーザーが定義したパラメータを記憶しても良い。
【００７９】
好ましくは、ソース・クライアント・プロファイル７００の複数のコピーがクライアント５００及びグローバル・シーケンス・マネジャ４００の両方に存在する場合は、その両方に正確な情報を提供するためにこれらのコピーが、必要な頻度で同期されることになろう。このデータ同期フィールド７１８は、一実施例では、クライアント同期パラメータを記憶するように構成されても良い。このクライアント同期パラメータは、グローバル・シーケンス・マネジャ４００上のソース・クライアント・プロファイル４１６が、クライアント５００上のソース・クライアント・プロファイル５１６とどの程度の頻度で同期されるべきかを示す。このデータ同期フィールド７１８及びそのパラメータは、グローバル・クライアント・プロファイル６００のクライアント同期フィールド及びそのパラメータに似たものであってよい。適用可能ならば、ソース・クライアント・プロファイル７００はまたグローバル・クライアント・プロファイル６００の少なくとも一部と同期されても良い。
【００８０】
データ・シーケンス・キー・フィールド７２０は、一実施例では、特定のデータ・ユニットのための非トランスペアレントなシーケンス・キーを記憶するように構成される。上述のとおり、このシーケンス／キーはグローバル・シーケンス管理装置４１２のシーケンス・モジュール４２８によって発生されても良い。代替例では、データ・シーケンス・キー・フィールド７２０は、実際のシーケンス・キーではなく、発生刺激（stimulus）キーを記憶しても良い。このようにして、実際のシーケンス・キーは、クライアント５００上でなく、グローバル・シーケンス・マネジャ４００上にのみ記憶されても良い。他の実施例では、その非トランスペアレントなシーケンス・キーは、グリッド・システム１００のどこにも記憶されなくても良く、むしろシーケンス・モジュール４２８によって発生刺激キーを用いて発生されても良い。非トランスペアレントなシーケンス・キーは、それが必要なときごとに、少なくともこの発生刺激キーを用いることによって発生される。このシーケンス・モジュール４２８はまた、必要時にこのシーケンス・キーを発生するために、発生刺激キーと関連して、ユニーク・データ識別子（ＵＤＩ）、データ・ソース位置パラメータ、ソース・クライアント識別子パラメータ、或いは１個若しくはそれ以上の他のパラメータを使用しても良い。
【００８１】
図８は、図４のソース・データ・レコード４１８にほぼ似たソース・データ・レコード８００の一実施例を示す。一実施例では、ソース・データ・レコード８００は、グローバル・シーケンス・マネジャ４００上に排他的に記憶される。図示のソース・データ・レコード８００は、ユニーク・データ識別子（ＵＤＩ）フィールド８０２、パケット識別子フィールド８０４、及び１個若しくは複数個のターゲット識別子フィールド８０６ないし８１０を含む。一実施例では、ソース・データ・レコード８００は、各バックアップ・データ・パケットが記憶される種々のターゲット・クライアントを識別する。
【００８２】
ＵＤＩフィールド８０２は、一実施例では、バックアップ・データ・ファイルのユニーク・データ識別子（ＵＤＩ）を記憶するように構成される。パケット識別子フィールド８０４は、一実施例では、バックアップ・データ・ファイルに属する特定のデータ・パケットのためのパケット識別子を記憶するように構成される。ターゲット識別子フィールド８０６ないし８１０は、一実施例では、バックアップ・データ・パケットのコピーが記憶されているターゲット・クライアントに対応するターゲット識別子を夫々記憶するように構成される。何個のターゲット・クライアントが同じデータ・パケットのコピーを記憶するかに依って、複数のターゲット識別子８０６ないし８１０が、ソース・・データ・レコード８００に追加されても良い。代替実施例では、ユニーク・データ識別子（ＵＤＩ）がバックアップ・データ・ファイル全体よりも特定のデータ・パケットを識別してもよい。この場合、ソース・データ・レコード８００は、元のファイル、データ・パケット及びデータ・パケットの各バックアップ・コピーの位置を示す等価な手段を使用しても良い。
【００８３】
図９は、図４及び図５のターゲット・データ・レコード４２０、５１８に良く似たターゲット・データ・レコード９００の一実施例を示す。一実施例では、ターゲット・データ・レコード９００が、グローバル・シーケンス・マネジャ４００及びクライアント５００の一方若しくは両方に記憶されても良い。図示のターゲット・データ・レコード９００は、ユニーク・データ識別子（ＵＤＩ）フィールド９０２、パケット識別子フィールド９０４、パケット・サイズ・フィールド９０６、及びターゲット位置フィールド９０８を含む。
【００８４】
ＵＤＩフィールド９０２は、一実施例では、バックアップ・データ・ファイルのユニーク・データ識別子（ＵＤＩ）を記憶するように構成される。パケット識別子フィールド９０４は、一実施例では、そのバックアップ・データ・ファイルに属する或る特定のデータ・パケットのためのパケット識別子を記憶するように構成される。パケット・サイズ・フィールド９０６は、一実施例では、パケットのサイズを示すためにパケット・サイズ・パラメータを記憶するように構成される。ターゲット位置フィールド９０８は、一実施例では、バックアップ・データ・パケットが記憶されるターゲット・クライアント上の記憶位置を示すように構成される。このようにして、ターゲット・データ・レコード９００は、復元動作中、ソース・クライアントのためのリクエストされたバックアップ・データ・パケットの回復を促進することができる。代替実施例では、ユニーク・データ識別子（ＵＤＩ）が、バックアップ・データ・ファイル全体ではなく、特定のデータ・パケットを識別しても良い。この場合、ターゲット・データ・レコード９００は、元のファイル、データ・パケット、そのパケットのサイズ、及びターゲット・クライアント上のバックアップ・コピーの位置を示すための等価な手段を使用しても良い。
【００８５】
図１０は、図４のデータ・アセンブリ・レコード４２２に実質的に似たデータ・アセンブリ・レコード１０００の一実施例を示す。一実施例では、データ・アセンブリ・レコード１０００は、グローバル・シーケンス・マネジャ４００に排他的に記憶される。このデータ・アセンブリ・レコード１０００は、ユニーク・データ識別子（ＵＤＩ）フィールド１００２及び１個若しくはそれ以上のパケット・フィールド１００４a-mないし１０１０a-mのテーブルを含む。
【００８６】
ＵＤＩフィールド１００２は、一実施例では、バックアップ・データ・ファイルのユニーク・データ識別子を記憶するように構成される。パケット識別子フィールド１００４ａないし１００４ｍは、一実施例では、そのバックアップ・データ・ファイルに属する第１のデータ・パケットの複製コピーに対するパケット識別子を記憶するように構成される。同様に、パケット識別子フィールド１００６ａないし１００６ｍは、一実施例では、そのバックアップ・データ・ファイルに属する第２のデータ・パケットのコピーに対するパケット識別子を記憶するように構成される。同様に、パケット識別子フィールド１００８ａないし１００８ｍは、一実施例では、そのバックアップ・データ・ファイルに属する第３のデータ・パケットのコピーに対するパケット識別子を記憶するように構成される。このパターンは、そのバックアップ・データ・ファイルに属する最後のパケットのコピーに対するパケット識別子を記憶するパケット識別子フィールド１０１０ａないし１０１０ｍまで続く。代替実施例では、ユニーク・データ識別子（ＵＤＩ）が、バックアップ・データ・ファイル全体ではなく、特定のデータ・パケットを識別しても良い。この場合、データ・アセンブリ・レコード１０００は、元ファイル及びデータ・パケットのアセンブルする順序を示す等価な手段を用いても良い。
【００８７】
これから説明する図式的なフローチャートは、論理的なフローチャートである。厳密な意味では、ここで示した順序及び名づけたステップは本発明のプロセスの一実施例を示す。機能、論理、効果に於いて等価な他のステップ及びプロセスも考えられる。更に、ここで使用したフォーマットや記号は、そのプロセスの論理ステップを説明するために与えられており、そのプロセスの範囲を制限しないものと理解される。同様に、種々の矢印のタイプ、線のタイプが、このフローチャートでは使用されているが、その対応するプロセスの範囲を制限しないものと理解される。実際、ある矢印や他のコネクタがそのプロセスの論理フローだけを示すのに使用されても良い。例えば、一つの矢印は、そこで示すプロセスの列挙したステップ相互間の特定されていない間隔の待機期間若しくはモニタ期間を示しても良い。
【００８８】
図１１及び図１２は、グリッド・システム１００上にデータをバックアップするのに用いられ得るバックアップ方法１１００の一実施例を示す。図示のバックアップ方法１１００は、３個ほどの区域に分けられる。各区域はグリッド・システム１００の特定のコンポーネントに生じるようなサブプロセスを示す。しかし、そのバックアップ方法１１００は、３個のサブプロセスに分けられ、一つの特定のコンポーネントで生じるようなラベルが付されているが、この説明は一つの特定のコンポーネントにサブプロセスを制限しようと意図するものではない。実際、バックアップ方法１１００の中で示した諸ステップの多くはグリッド・システム１００中の種々のコンポーネントにより実行されても良い。更に、単一のサブプロセスの全てのステップが単一のコンポーネントによって実行されねばならないという訳ではない。同様に、単一のコンポーネントが異種のサブルーチンからの種々のステップを実行しても良い。
【００８９】
図示のバックアップ方法１１００は、ステップ１１０２で始まり、ステップ１１０４で、バックアップされるべきデータ・ユニットに対しユニーク・データ識別子（ＵＤＩ）を発生する。その後、ステップ１１０６で、ソース・クライアントがグローバル・シーケンス・マネジャにバックアップ・リクエストを送る。ステップ１１１０で、グローバル・シーケンス・マネジャ４００がソース・クライアントからそのバックアップ・リクエストを受取る。一実施例では、そのバックアップ・リクエストが、バックアップされるべきデータ・ユニットのユニーク・データ識別子（ＵＤＩ）を含む。代わりに、そのユニーク・データ識別子（ＵＤＩ）が別個に送られても良い。
【００９０】
判断ステップ１１１２に於いて、グローバル・シーケンス・マネジャ４００は、そのユニーク・データ識別子（ＵＤＩ）を用いて、データ・ユニットのバックアップ・コピーがグリッド・システム１００中に既に存在しているかを調べる。そのユニーク・データ識別子（ＵＤＩ）に対応するデータのバックアップ・コピーが既に存在するのでなければ、図１２のステップ１２０２に進み、グローバル・シーケンス・マネジャ４００が、データ・リクエストをソース・クライアントに送り、バックアップすべきデータ・ユニットのコピーをリクエストする。図１２のステップ１２０４で、ソース・クライアントがそのデータ・リクエストを受け取り、その後ステップ１２０６で、そのデータ・ユニットのコピーをグローバル・シーケンス・マネジャ４００に送る。図示の実施例で、グローバル・シーケンス・マネジャ４００はソース・クライアントからデータ・ユニットを受け取り（ステップ１２０８）、そのデータ・ユニットを必要な数のデータ・パケットに再分割し（ステップ１２１０）、ユニークな、非トランスペアレントのシーケンス・キーをそのデータ・ユニットのために発生する（ステップ１２１０）。
【００９１】
そこで、グローバル・シーケンス・マネジャ４００が、その非トランスペアレントなシーケンス・キーに従ってターゲット・クライアントにバックアップ・データ・パケットを記憶する（ステップ１２１２）。各データ・ユニット又はその部分ごとに、グローバル・シーケンス・マネジャ４００は、クライアント５００及びデータ・ユニットと関係する適切なプロファイル（図６、図７のグローバル・クライアント・プロファイル６００、ソース・クライアント・プロファイル７００）、及びレコード（図８ないし図９のソース・データ・レコード８００、ターゲット・データ・レコード９００、データ・アセンブリ・レコード１０００）を生じ、修正ないし更新する（ステップ１２１４）。それから、グローバル・シーケンス・マネジャ４００は、データ・バックアップ確認をソース・クライアントに送り、そのバックアップ動作が成功裏に完了したことを示す（ステップ１２１６）。ソース・クライアントは、グローバル・シーケンス・マネジャ４００からデータ・バックアップ確認を受取る（ステップ１２２０）と、もっと多くのデータ・ユニットがバックアップされる必要があるかを調べる（ステップ１２２２）。もしあれば、図示のバックアップ方法は次のデータ・ユニットのために新しいユニーク・データ識別子（ＵＤＩ）を発生する（図１１のステップ１１０４）。もしなければ、図示のバックアップ方法が終了する（ステップ１２２４）。
【００９２】
ここで図１１のステップ１１１２に説明を戻すと、もしもグローバル・シーケンス・マネジャ４００が、グリッド・システム１００上にそのデータ・ユニットのバックアップ・コピーが既に存在すると判断した場合は、グローバル・シーケンス・マネジャ４００がその存在するバックアップをソース・クライアントに知らせる（ステップ１１１４）。図示のバックアップバックアップ方法１１００は上述のとおりに続けられる。他の実施例では、グローバル・シーケンス・マネジャ４００が、ソース・クライアントに、その存在するバックアップを知らせる前に、適切なプロファイル（６００、７００）若しくはレコード（８００、９００、１０００）を生じ若しくは修正してもよい。
【００９３】
図１３ないし図１６は、グリッド・システム１００上にデータを復元するように使用されても良い復元方法１３００の実施例を示す。図示の復元方法１３００は３個ほどの区域に分けられる。各区域は、グリッド・システム１００の特定のコンポーネントに生じるようなサブプロセスを示す。しかし、その復元方法１３００は、３個のサブプロセスに分けられ、一つの特定のコンポーネントで生じるようなラベルが付されているが、この説明は一つの特定のコンポーネントにサブプロセスを制限しようと意図するものではない。実際、復元方法１３００の中で示した諸ステップの多くはグリッド・システム１００中の種々のコンポーネントにより実行されても良い。更に、単一のサブプロセスの全てのステップが単一のコンポーネントによって実行されねばならないという訳ではない。同様に、単一のコンポーネントが異種のサブルーチンからの種々のステップを実行しても良い。
【００９４】
図示の復元方法１３００は図１３のブロック１３０２で開始する。ソース・クライアントがデータ復元リクエストをグローバル・シーケンス・マネジャ４００に送る（ステップ１３０４）。一実施例では、その復元リクエストが、復元しようとするバックアップ・データ・ユニットのユニーク・データ識別子（ＵＤＩ）を含む。代わりにユニーク・データ識別子（ＵＤＩ）が別個に伝送されても良い。グローバル・シーケンス・マネジャ４００は、データ復元リクエストを受取る（ステップ１３０８）と、そのリクエストされたデータ・ユニットのバックアップ・データ・パケットをどのターゲット・クライアントが記憶しているかを調べるために、対応するソース・データ・レコード８００にアクセスすることができる（ステップ１３１０）。代替実施例では、グローバル・シーケンス・マネジャ４００は、そのリクエストされたデータ・ユニットのバックアップ・データ・パケットをどのターゲット・クライアントが記憶しているかを調べるために、対応するソース・クライアント・プロファイル７００にアクセスし、そのシーケンス・キーを再発生することができる（ステップ１３１０）。
【００９５】
それから、グローバル・シーケンス・マネジャ４００は、パケット・リクエストを適切なターゲット・クライアントに送る（ステップ１３１２）。上述のとおり、各データ・パケットの複製コピーが１個若しくはそれ以上のターゲット・クライアントに記憶されても良い。図示の実施例では、各ターゲット・クライアントがグローバル・シーケンス・マネジャ４００からパケット・リクエストを受取る（ステップ１３１８）。
グリッド・システム１００が幾つかの独立に管理されるネットワーク及びクライアントを含むとすれば、幾つかのターゲット・クライアントはリクエスト時にオフラインであっても利用できなくても良い。幾つかの利用可能なターゲット・クライアントは、グリッド資源として以前は使用されていた再クレームされた記憶スペースを有していても良い。これにより、グリッド・システム１００には利用できていなかった、バックアップ・データ・パケットのコピーを破壊したり作ったりすることができる。
【００９６】
もしそのリクエストされたパケットが利用可能でないと、その利用可能なターゲット・クライアントが判断した場合（図１４のステップ１４０２）は、ターゲット・クライアントはグローバル・シーケンス・マネジャ４００にその喪失したパケットのことを知らせる（ステップ１４０４）。そのパケット喪失に応答して、グローバル・シーケンス・マネジャ４００は、そのリクエストされたデータ・パケットのコピーを有する他のターゲット・クライアントが利用可能かを調べる（ステップ１４０８）。もしも他のターゲット・クライアントが利用可能であるならば、グローバル・シーケンス・マネジャ４００はその利用可能なターゲット・クライアントにパケット・リクエストを送る（ステップ１３１２）。そして上述したとおりの復元方法１３００が続く。もしそのリクエストされたパケットが利用可能と、その利用可能なターゲット・クライアントが判断する（ステップ１４０２）ならば、そのターゲット・クライアントはそのリクエストされたパケットをグローバル・シーケンス・マネジャ４００に送る（ステップ１４１０）。すると、グローバル・シーケンス・マネジャ４００はその利用可能なターゲット・クライアントからそのリクエストされたパケットを受取る（ステップ１４１４）。
【００９７】
特定のデータ・パケットが利用可能であるか否かに関して、グローバル・シーケンス・マネジャ４００は、リクエストされたデータ・ユニットに対し追加のデータ・パケットが必要か、利用できるかを判断する（図１５のステップ１５０２）。もし、もっとパケットが必要であれば、グローバル・シーケンス・マネジャ４００は、その必要なパケット・リクエストを、その対応するターゲット・クライアントに送る（ステップ１３１２）。そして上述したとおりの復元方法１３００が続く。
【００９８】
一旦、全てのデータ・パケットがリクエストされ、もし利用可能ならそのターゲット・クライアントから受取られると、グローバル・シーケンス・マネジャ４００はそのリクエストされたデータ・パケットのどれかが欠けているか、喪失したか、破壊されたか、或いは利用不可能かを調べても良い（ステップ１５０４）。一実施例では、グローバル・シーケンス・マネジャ４００が、この欠けているパケットの冗長なコピーをアクセスするために、グローバル・クライアント・プロファイル６００、及びソース・クライアント・プロファイル７００に夫々記憶されたクライアント・パケット冗長性パラメータ６１０及びデータ・パケット冗長性パラメータ７１０を参照しても良い。
【００９９】
グローバル・シーケンス・マネジャ４００は、十分な数のパケットが、元のデータの全てもしくは一部をアセンブルするよう取出されたか調べる（ステップ１５０６）。もし十分な数のパケットが利用可能なら、グローバル・シーケンス・マネジャ４００はデータを、一実施例では、データ・アセンブリ・レコード１０００を用いてアセンブルし（ステップ１５０８）、そのデータをソース・クライアントに送る。そこでソース・クライアントはグローバル・シーケンス・マネジャ４００から一部若しくは全部をアセンブルされたデータを受取る（ステップ１５１４）。
【０１００】
もし、幾つかのデータがバックアップ及び復元動作中に喪失したり利用できなくなったりしたならば、データが完全に若しくは十分に再構成されるかをソース・クライアントが判定する（図１６のステップ１６０２）。もしデータが十分に再構成されるなら、ソース・クライアントは追加のデータ・ユニットを復元する必要があるかをソース・クライアントが判定する（ステップ１６１２）。もしその復元が必要となれば、後続のデータ復元リクエストをグローバル・シーケンス・マネジャ４００に送るステップ１３０４に戻る。そして上述したとおりの復元方法１３００が続く。
【０１０１】
もし、リクエストされたデータが十分に再構成されないと、ソース・クライアントが判定する（ステップ１６０２）なら、ソース・クライアントはグローバル・シーケンス・マネジャ４００からの残りのデータ・パケットを反復的にリクエストする（ステップ１６０４）。復元しようとする全ての試みが潰えたか、グローバル・シーケンス・マネジャ４００が判定する（ステップ１６０８）。もし、その判定が「潰えていない」ということであれば、後続のパケット・リクエストをターゲット・クライアントに送る。というステップ１３１２の前に、所定の遅延期間、待機しても良い（ステップ１６１０）。代替例では、グローバル・シーケンス・マネジャ４００が、所定の遅延期間ではなく、ランダムな遅延期間、待機しても良い（ステップ１６１０）。例えば、一実施例では、グローバル・シーケンス・マネジャ４００が２４時間、待機しても良い。他の実施例では、グローバル・シーケンス・マネジャ４００が、次の労働日の始まる時刻まで待機してから、その後のパケット・リクエストを送る（ステップ１３１２）のでも良い。これまで利用できなかったターゲット・クラが、この遅延期間の間にグリッド・システム１００に利用できるようになるかもしれない。
【０１０２】
図示の復元方法１３００は、リクエストされたデータ・ユニットが完了するまで又は全ての復元の試みが潰えるまで、上述のとおり続く。データ復元の試みの全てが潰え、且つデータがまだ完了していない場合は、グローバル・シーケンス・マネジャ４００は、喪失データのこと、及び潰えた試みのことをソース・クライアントに知らせる。ソース・クライアントはグローバル・シーケンス・マネジャ４００から喪失データの知らせを受取る（ステップ１６１８）。そしてその説明した復元方法１３００が終了する（ステップ１６２０）。
【０１０３】
上述のバックアップ方法１１００及び復元方法１３００に関連して、グリッド・システム１００は、クライアント１０４ないし１１０が、そのグリッド・システム１００のバックアップ機能及び復元機能をアクセスするのに対価を支払えるようにするためにクライアント予約支払いプログラムを管理するのに必要なコンポーネントを含むかもしれない。一実施例では、図３の予約申込みマネジャ３１２が、このタイプのクライアント予約申込みシステムを管理するよう構成されても良い。クライアント予約申込みシステムは多数のソース・クライアント及びターゲット・クライアントを許容しても良い。クライアントごとの予約申込み料金は、記憶しようとするデータの量、ソース・クライアントが必要とするバックアップの信頼性、アクセスし易さ、グリッド・システム専用のローカル・クライアント・パフォーマンス資源の量、並びに時間あたりの割り当て資源の一貫性に依存しても良い。グリッド・システム１００のパフォーマンスに影響する他の要素をも、特定のクライアント１０４ないし１１０ごとの料金を決めるのに使用しても良い。
【０１０４】
予約申込みマネジャ３１２は、一実施例では、ユーザーの料金を決めるプロセスに於いて、集められ、使用され、若しくは発生された情報を管理し、グリッド・アプリケーションや顧客に関して、サービスのレベルを制御し、そのサービスの利用を制御し、パフォーマンス資源相互間の寄与度を制御するなどのことを行う装置である。
【０１０５】
一実施例では、予約支払いマネジャ３１２が少なくとも二つの目的に資する。第１に、それはユーザーによるグリッド資源の使用度合い及びユーザーによるパフォーマンス資源のグリッドに対する貢献度合いの一方若しくは両方に基づいてユーザーに課されるユーザー料金を決めることができる。第２に、予約支払いマネジャ３１２が、グリッド・システム１００及びグリッド資源へのアクセス、使用、使用レベル等を制御することができる。予約申込みマネジャ１２はまたここで説明した自律的な（オートノミック）ポリシーに基づいてグリッド・システムへのクライアント・パフォーマンス資源の割り当て、貢献度合い等を制御することもできる。
【０１０６】
グリッド・システム１００への種々のクライアント１０４ないし１１０の予約申込みを管理するために、予約申込みマネジャ３１２が、クライアント・プロファイル、グローバル・プロファイル、及び顧客プロファイルを生じ、記憶することができる。一実施例では、特定の顧客についての予約申込みマネジャ３１２のグローバル・プロファイルが、特定の顧客のためのユーザー料金を決めるために、パフォーマンス資源割り当て及び使用に関する情報を含んでも良い。
【０１０７】
一実施例では、顧客プロファイルは特定の顧客へのグローバル・プロファイルに関する情報を含む。顧客プロファイルは、クライアント・パフォーマンス資源割り当てについての情報及びローカルに呼び出されるグリッド・アプリケーションについての情報を含む、特定の顧客についての情報を集めても良い。顧客プロファイルは或る顧客が課される全体の料金を決定するのに使用されても良い。同様に、一実施例では、予約申込みマネジャ３１２中のクライアント・プロファイルが特定のクライアント１０４ないし１１０に対応する情報を含んでも良い。
【０１０８】
一実施例では、予約申込みマネジャ３１２は、一つのグリッド・アプリケーションについてクライアント１０４ないし１１０によるグリッド・システム１００の、瞬間的な使用、平均的な使用、最大の使用、最小の使用、予定の使用、リザーブした使用、ピークの使用など、その中の１つ若しくは複数の使用に基づいてユーザー料金を決定する。他の実施例では、予約申込みマネジャ３１２が、クライアント１０４ないし１１０によるグリッド・システム１００へのクライアント・パフォーマンス資源の割り当てを追跡しても良い。予約申込みマネジャ３１２が、瞬間的なレベル、平均的なレベル、最大のレベル、最小のレベル、予定のレベル、リザーブしたレベル、ピークのレベルなど、その中の一つ若しくは複数の、貢献したレベルを追跡しても良い。更に別の実施例では、予約申込みマネジャ３１２が、上記に挙げた１個若しくは複数個のファクタの組み合わせを追跡しても良い。
【０１０９】
他の実施例では、予約申込みマネジャ３１２が、グローバル・オートノミック・マネジャによる又はクライアント１０４ないし１１０によるオートノミック・ポリシーの実行をモニタし、制御しても良い。例えば、ある企業がバックアップ取出しグリッド・アプリケーションのためにグリッド・システム１００に予約申込みしても良い。コスト・ダウンのために、或る企業は、各々の結合されたクライアント１０４ないし１１０からグリッド・システム１００にパフォーマンス資源を寄付することを決めても良い。もしもユーザーが特定のクライアントの割当て済みのパフォーマンス資源を再度要求すると決め、その貢献度をゼロに減らすならば、予約申込みマネジャ３１２は、そのクライアント・プロファイル、及び顧客プロファイルを変えて、適当な料金を決定しても良い。予約申込みマネジャ３１２のグローバル・プロファイルによれば、グリッド・システム１００のグローバル・オートノミック・マネジャはパフォーマンス資源割当てのための上下の閾値を維持しても良い。
【０１１０】
他の実施例では、クライアント１０４ないし１１０又はグローバル・オートノミック・マネジャによりリクエストされたポリシーの変更を予約申込みマネジャ３１２が制御しても良い。予約申込みマネジャ３１２の顧客プロファイルは、クライアント１０４ないし１１０のグリッド・アプリケーションの使用や資源割当てのある種の変更を抑えても良い。例えば、クライアント・プロファイルは顧客が所定の請求期間に生じる総コストに制限を設けても良い。予約申込みマネジャ３１２は、もしもこれらの制限を越えるなら、クライアント１０４ないし１１０による使用を阻止しても良い。
【０１１１】
本発明は、その精神や基本的特性から逸脱することなく他の特定の態様で実施されても良い。上述の実施例は全ての点で説明用としてのみ考慮すべきであって、制限を加えるべきものではない。従って、本発明の範囲は上述の説明よりも特許請求の範囲によって示されるべきである。特許請求の範囲の意味するところとその等価な範囲内の全ての変更は本発明の範囲内に包含されるべきである。
【０１１２】
本発明の利点を容易に理解できるようにするために、上記で簡単に説明した本発明の一層具体的な説明を、添付図に示す特定の実施例に沿って行う。これらの図が本発明の典型的な実施例だけを示し従って本発明の範囲を制限するものでないことに留意しつつ、以下の添付図を使用することによって本発明を詳細に説明する。
【図面の簡単な説明】
【０１１３】
【図１】本発明に従うグリッド・システムの一実施例のブロック図である。
【図２】本発明に従うクライアントの記憶装置の一実施例のブロック図である。
【図３】本発明に従うグリッド・システムの他の実施例のブロック図である。
【図４】本発明に従うグローバル・シーケンス・マネジャの一実施例のブロック図である。
【図５】本発明に従うクライアントの一実施例のブロック図である。
【図６】本発明に従うグローバル・クライアント・プロファイルの一実施例のブロック図である。
【図７】本発明に従うソース・クライアント・プロファイルの一実施例のブロック図である。
【図８】本発明に従うソース・データ・レコードの一実施例のブロック図である。
【図９】本発明に従うターゲット・データ・レコードの一実施例のブロック図である。
【図１０】本発明に従うデータ・アセンブリ・レコードの一実施例のブロック図である。
【図１１】本発明に従うバックアップ方法の一実施例の図式図である。
【図１２】本発明に従うバックアップ方法の一実施例の図式図である。
【図１３】本発明に従う復元方法の一実施例の図式図である。
【図１４】本発明に従う復元方法の一実施例の図式図である。
【図１５】本発明に従う復元方法の一実施例の図式図である。
【図１６】本発明に従う復元方法の一実施例の図式図である。
【図１】
2008519319.tif 000002
【図２】
2008519319.tif 000003
【図３】
2008519319.tif 000004
【図４】
2008519319.tif 000005
【図５】
2008519319.tif 000006
【図６】
2008519319.tif 000007
【図７】
2008519319.tif 000008
【図８】
2008519319.tif 000009
【図９】
2008519319.tif 000010
【図１０】
2008519319.tif 000011
【図１１】
2008519319.tif 000012
【図１２】
2008519319.tif 000013
【図１３】
2008519319.tif 000014
【図１４】
2008519319.tif 000015
【図１５】
2008519319.tif 000016
【図１６】
2008519319.tif 000017
【手続補正書】
【提出日】平成19年10月10日(2007.10.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のクライアントに亙るデータをバックアップするためのシーケンス管理装置にして、
ソース・クライアントからバックアップされるべきデータを受取るように構成されたクライアント・リクエスト・モジュールと、
複数のターゲット・クライアントの非トランスペアレントなシーケンスを発生するように構成されたシーケンス・モジュールと、
前記非トランスペアレントなシーケンスに従って複数のターゲット・クライアント上にデータを記憶するように構成されたパケット記憶モジュールとを含む
シーケンス管理装置。
【請求項２】
前記複数のターゲット・クライアントにバックアップされるデータを記述するメタデータ・ファイルを管理するように構成されたグローバル・プロファイル管理モジュールを更に含む、請求項１に記載のシーケンス管理装置。
【請求項３】
前記メタデータ・ファイルが、グローバル・クライアント・プロファイル、ソース・クライアント・プロファイル、ソース・データ・レコード、ターゲット・データ・レコード、データ・アセンブリ・レコード、及びグローバル・バックアップ・ログからなる群から選択される、請求項２に記載のシーケンス管理装置。
【請求項４】
前記グローバル・プロファイル管理モジュールが、データをソース・クライアントに写像するため、該データに対応するユニーク・データ識別子であって、該データが他のデータと比較してユニークであることを示す前記ユニーク・データ識別子を使用するように構成された、請求項２に記載のシーケンス管理装置。
【請求項５】
前記グローバル・プロファイル管理モジュールが、前記データの同一のコピーが記憶される第２のソース・クライアントに前記ユニーク・データ識別子を写像するように構成された、請求項４に記載のシーケンス管理装置。
【請求項６】
前記ソース・クライアントからの復元リクエストに応答して、複数のターゲット・クライアントのうちの一つにバックアップされるデータの少なくとも一部を取出すように構成されたパケット取出しモジュールを更に含む、請求項１に記載のシーケンス管理装置。
【請求項７】
前記パケット取出しモジュールが、更に前記シーケンス・モジュールにより発生される非トランスペアレントなシーケンスに従って、前記複数のターゲット・クライアントのうちの一つにバックアップされるデータの少なくとも一部を取出すように構成された、請求項６に記載のシーケンス管理装置。
【請求項８】
前記ソース・クライアントからの復元リクエストに応答し、且つ前記複数のターゲット・クライアントのうちの一つにバックアップされるデータの少なくとも一部の取出しの後、前記データを理解可能なフォーマットにアセンブルするように構成されたデータ・アセンブリ・モジュールを更に含む、請求項１に記載のシーケンス管理装置。
【請求項９】
前記パケット記憶モジュールが、前記データを複数のデータ・パケットに分割するように、且つ複数のターゲット・クライアントに前記データ・パケットを記憶するように更に構成された、請求項１に記載のシーケンス管理装置。
【請求項１０】
前記複数のターゲット・クライアントに前記データ・パケットを記憶する前に、前記データ・パケット中のデータを圧縮するように構成された圧縮モジュールを更に含む、請求項９に記載のシーケンス管理装置。
【請求項１１】
前記複数のターゲット・クライアントに前記データ・パケットを記憶する前に、前記データ・パケット中のデータを暗号化するように構成された暗号化モジュールを更に含む、請求項９に記載のシーケンス管理装置。
【請求項１２】
前記複数のターゲット・クライアントに前記データ・パケットを記憶する前に、前記データ・パケットの少なくとも一つに冗長化データ・パケットを生じるように構成された冗長化モジュールを更に含む、請求項９に記載のシーケンス管理装置。
【請求項１３】
前記複数のターゲット・クライアントのうちの一つに、前記冗長化データ・パケットを前記非トランスペアレントなシーケンスに従って記憶するように前記パケット記憶モジュールが更に構成された、請求項１２に記載のシーケンス管理装置。
【請求項１４】
第１のターゲット・クライアント及び第２のターゲット・クライアント間の最小距離及び最大距離のうちの少なくとも一つを定義するパケット近接性パラメータに従って、前記パケット記憶モジュールが前記複数のターゲット・クライアントにデータ・パケットを記憶する、請求項９に記載のシーケンス管理装置。
【請求項１５】
前記ソース・クライアント及び前記複数のターゲット・クライアントの各々との間の最小距離及び最大距離の少なくとも一つを定義するバックアップ近接性パラメータに従って、前記パケット記憶モジュールが前記複数のターゲット・クライアントにデータを記憶する、請求項１に記載のシーケンス管理装置。
【請求項１６】
複数のクライアントに亙るデータをバックアップする方法にして、
ソース・クライアントからバックアップされるべきデータを受取るステップと、
複数のターゲット・クライアントの非トランスペアレントなシーケンスを発生するステップと、
前記非トランスペアレントなシーケンスに従って複数のターゲット・クライアントにデータを記憶するステップとを含む
バックアップ方法。
【請求項１７】
複数のターゲット・クライアントにバックアップされるデータを記述するメタデータであって、グローバル・クライアント・プロファイル、ソース・クライアント・プロファイル、ソース・データ・レコード、ターゲット・データ・レコード、データ・アセンブリ・レコード、及びグローバル・バックアップ・ログのうちの一つを含むメタデータ・ファイルを管理するステップを更に含む、請求項１６に記載のバックアップ方法。
【請求項１８】
ソース・クライアント及び複数のターゲット・クライアントの、契約上の予約申込みを管理するステップを更に含む、請求項１６に記載のバックアップ方法。
【請求項１９】
ソース記憶割当てパラメータ、ターゲット記憶割当てパラメータ、ネットワーク割当てパラメータ、クライアント・プロセッサ・パラメータ、及びクライアント帯域幅パラメータのうちの一つである資源割当てパラメータを追跡するステップを更に含む、請求項１６に記載のバックアップ方法。
【請求項２０】
請求項１６〜１９の何れかに記載されたバックアップ方法の各ステップを、コンピュータに実行させる、コンピュータ・プログラム。
【国際調査報告】
2008519319.tif 000018
2008519319.tif 000019