JP4573310B2 - ストレージ・サブシステム全体にわたる整合的な更新のための方法、システム、およびコンピュータ・プログラム - Google Patents

ストレージ・サブシステム全体にわたる整合的な更新のための方法、システム、およびコンピュータ・プログラム Download PDF

Info

Publication number
JP4573310B2
JP4573310B2 JP2009503521A JP2009503521A JP4573310B2 JP 4573310 B2 JP4573310 B2 JP 4573310B2 JP 2009503521 A JP2009503521 A JP 2009503521A JP 2009503521 A JP2009503521 A JP 2009503521A JP 4573310 B2 JP4573310 B2 JP 4573310B2
Authority
JP
Japan
Prior art keywords
control unit
storage subsystem
primary
secondary control
control units
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.)
Active
Application number
JP2009503521A
Other languages
English (en)
Other versions
JP2009532789A (ja
Inventor
カーン、ロバート、フレデリック
マクブライド、グレゴリー、エドワード
ボイド、ケネス、ウェイン
スピア、ゲイル、アンドレア
ミッカ、ウィリアム、フランク
バートファイ、ロバート、フランシス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2009532789A publication Critical patent/JP2009532789A/ja
Application granted granted Critical
Publication of JP4573310B2 publication Critical patent/JP4573310B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/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/1456Hardware arrangements for backup
    • 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/82Solving problems relating to consistency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本開示は、ストレージ・サブシステム全体にわたる整合性のある更新のための方法、システム、およびプログラムに関する。
ストレージ・システムを含む情報技術システムは、サイトの災害または障害からの保護を必要とする場合がある。さらに情報技術システムは、データ・マイグレーション、データ・バックアップ、またはデータ複写のための機構を必要とする場合がある。災害または障害のリカバリ、データ・マイグレーション、データ・バックアップ、およびデータ複写のための実装環境は、ストレージ・システムにおけるデータのミラーリングまたはコピーを含むことができる。エンタープライズ・ストレージ・サーバ(ESS)は、高容量スケーラブル・ストレージ・デバイス、RAID(Redundant Array of Independent Disks)などを含む、ストレージ・デバイスに結合された1つまたは複数のプロセッサを含むことができる。エンタープライズ・ストレージ・サーバは、データをローカルに、すなわち同じオン・サイトESS内でコピーするため、またはデータをリモートに、すなわち別のリモート・サイトESSにコピーするための、コピー機能を含むことができる。
特定のエンタープライズ・ストレージ・サーバには、データのポイント・イン・タイム(特定時点)コピーを提供するコピー機能が存在する場合がある。実装環境は、エンタープライズ・ストレージ・サーバのストレージ・サブシステムにおいて、ローカル/ソース・ボリュームのセットと対応するリモート/ターゲット・ボリュームとの間で、データをコピーすることができる。コピー機能は、アプリケーションへの最小限の割り込みで、データの物理的ポイント・イン・タイム・コピーを作成することによって、ESSボリュームにポイント・イン・タイム・コピーを提供し、ソース・コピーとターゲット・コピーの両方に実質的にほぼ即時のアクセスを可能にすることができる。
整合性グループ(consistency group)とは、互いに整合した状態を維持する必要性のあるストレージ・ボリュームのグループである。非限定的な例を提供するために、第1のコピー・コマンドはボリュームA1からB1へとコピーし、第2のコピー・コマンドはボリュームA2からB2へとコピーする。ボリュームB1およびB2は、ある時点でのボリュームA1およびA2内のデータセットの整合状態を表すものとすることが必要である。ボリューム上でのある特定の動作シーケンスにおいて、以下のような依存書き込み動作のセット(第2の動作は第1の動作の後で発生する)が発生する可能性がある。
1.ボリュームA1上のデータセットへの書き込み(データ更新済み)
2.ボリュームA2上のデータセットへの書き込み(データ更新済み)
ボリュームA1およびA2がそれぞれボリュームB1およびB2にコピーされる場合、以下の動作シーケンスの非限定的な例は、ボリュームB1、B2内にボリュームA1、A2に対する非整合状態を作成する可能性がある。
1.ボリュームA1のボリュームB1へのコピー
2.ボリュームA1上のデータセットへの書き込み(データ更新済み)
3.ボリュームA2上のデータセットへの書き込み(データ更新済み)
4.ボリュームA2のボリュームB2へのコピー
すべてのコピー動作の最後、すなわち第4の動作の最後には、ボリュームB2はボリュームA2のデータ更新を含むが、ボリュームB1はボリュームA1のデータ更新を含まない。ボリュームB1、B2のセットは、ボリュームA1、A2のセットに対して非整合状態である。ボリュームB1、B2を使用するアプリケーションは、ボリュームB1、B2に格納されたバックアップ・コピーからリカバリすることができない。コンピュータに結合されたディスク内に格納されたものは、ディスクのイメージを生成することによってバックアップすることができる。
特定のシステムは、ストレージ・サブシステム内のソース・ボリュームおよびターゲット・ボリュームのセット上のデータを互いに整合状態で維持しながら、ストレージ・サブシステム内のソース・ボリュームのセットからターゲット・ボリュームのセットへとコピーする。ストレージ・サブシステム内のソース・ボリュームおよびターゲット・ボリュームを整合状態で維持することによって、整合性グループのストレージ・サブシステム内のいかなるターゲット・ボリュームにも順序外れの(out of order)依存書き込みがコピーされないことが保証される。
1次制御ユニットが複数の2次制御ユニットに選択された時間を送信する、方法、システム、およびプログラムを提供することである。
クロックは、1次制御ユニットおよび2次制御ユニットで、タイム・サーバと定期的に同期される。1次制御ユニットおよび複数の2次制御ユニットは、複数の2次制御ユニットに結合された2次ストレージ・サブシステムを選択された時間に整合して更新する。
追加の実施形態では、2次ストレージ・サブシステムは、1次制御ユニットからの単一のコマンドに応答して、選択された時間に整合して更新され、選択された時間は、2次ストレージ・サブシステムを整合して更新するために使用される整合性グループに関連付けられる。
さらに追加の実施形態では、1次制御ユニットが、1次制御ユニットに結合された1つまたは複数のホスト・アプリケーションから更新を受信する。1次制御ユニットは、この更新を、1次制御ユニットに結合された少なくとも1つの1次ストレージ・サブシステムに格納する。この更新に対応して整合性グループが生成され、整合性グループは、複数の2次制御ユニットに結合された2次ストレージ・サブシステムを整合して更新するために使用される。
他の実施形態では、複数の2次制御ユニットが1次制御ユニットから選択された時間を受信する。複数の2次制御ユニットは、複数の2次制御ユニットに結合された2次ストレージ・サブシステムを選択された時間に整合して更新するためのプロセスを開始する。複数の2次制御ユニットは、2次ストレージ・サブシステムを整合して更新するために開始されたプロセスを完了するための要求を、1次制御ユニットから受信する。複数の2次制御ユニットは、2次ストレージ・サブシステムが整合して更新可能であるとの決定に応答して、2次ストレージ・サブシステムを整合して更新するためのプロセスを完了する。2次ストレージ・サブシステムが整合して更新不能であるとの決定に応答して、エラーの通知が1次制御ユニットに送信される。
さらに他の実施形態では、1次制御ユニットは、複数の2次制御ユニットのそれぞれが、複数の2次制御ユニットに結合されたストレージ・サブシステムを選択された時間に整合して更新するためのプロセスを開始したかどうかを判別する。1次制御ユニットは、複数の2次制御ユニットのそれぞれに、2次ストレージ・サブシステムを整合して更新するためのプロセスを完了するように要求する。
追加の実施形態では、2次ストレージ・サブシステムを整合して更新している間、入力/出力(I/O)書き込み動作が整合性グループ形成時にはビジーではなく、整合性グループのストレージ・サブシステム内のいかなるターゲット・ボリュームにも順序外れの依存書き込みがコピーされないように、ソース・ボリュームおよびターゲット・ボリュームが整合状態で維持される。
好ましくは、タイム・サーバに結合された1次制御ユニットと、タイム・サーバに結合された複数の2次制御ユニットと、複数の2次制御ユニットに結合された2次ストレージ・サブシステムと、メモリと、メモリに結合されたプロセッサとを備える、タイム・サーバと通信するシステムが提供され、プロセッサは、(i)1次制御ユニットによって、選択された時間を複数の2次制御ユニットに送信するステップと、(ii)1次制御ユニットおよび2次制御ユニットのクロックをタイム・サーバと定期的に同期させるステップと、(iii)1次制御ユニットおよび複数の2次制御ユニットによって、複数の2次制御ユニットに結合された2次ストレージ・サブシステムを、選択された時間に整合して更新するステップと、を実行する。
より好ましくは、1次制御ユニットおよび複数の2次制御ユニットを制御するためのプログラムが提供され、1次制御ユニットおよび複数の2次制御ユニットはタイム・サーバと通信し、2次ストレージ・サブシステムは2次制御ユニットに結合され、プログラムは、1次制御ユニットによって、選択された時間を複数の2次制御ユニットに送信するステップと、1次制御ユニットおよび2次制御ユニットのクロックをタイム・サーバと定期的に同期させるステップと、1次制御ユニットおよび複数の2次制御ユニットによって、複数の2次制御ユニットに結合された2次ストレージ・サブシステムを、選択された時間に整合して更新するステップと、コンピュータに実行させることができる。
さらにより好ましくは、コンピュータ読み取り可能コードをコンピューティング・システムに統合するステップを含む、コンピューティング・インフラストラクチャを配置するための方法が提供され、この方法によって、コードをコンピューティング・システムと組み合わせて、1次制御ユニットによって、選択された時間を複数の2次制御ユニットに送信するステップと、1次制御ユニットおよび2次制御ユニットのクロックをタイム・サーバと定期的に同期させるステップと、1次制御ユニットおよび複数の2次制御ユニットによって、複数の2次制御ユニットに結合された2次ストレージ・サブシステムを、選択された時間に整合して更新するステップと、を実行することができる。
次に図面を参照するが、これらの図面では、同じ参照番号は全体を通じて対応する部分を表す。
以下の説明では、本明細書の一部を形成し、いくつかの実施形態を示す、添付の図面を参照する。他の実施形態が使用可能であること、ならびに構造および動作の変更が可能であることを理解されよう。
整合性グループを作成するためのデータ整合方法であるIBM社のGlobal Mirrorは、整合性グループを生成するための「データ整合」方法を使用する。「データ整合」方法では、マスタ制御ユニットが従属制御ユニットにコマンドを発行し、従属制御ユニットはマスタ制御ユニットからコマンドを受信するのを待ってこれに対応する。整合性グループを開始するために、マスタ制御ユニットは、入力/出力(I/O)動作を休止するよう、従属制御ユニットにコマンドを送信する。最後の従属ユニットがI/O動作の休止を完了した後にのみ、マスタ制御ユニットは、従属制御ユニットに書き込みI/Oが完了できるようにコマンドを送信する。マスタ制御ユニットに書き込むホスト・アプリケーションが、より長い応答時間を体験する可能性があるのは、このI/O休止中である。さらに、I/O休止コマンドはすべての従属制御ユニットに対して同時に発生しないため、単一の共通タイムスタンプが整合性グループに関連付けられることはない。
「データ整合」方法におけるボリューム全体にわたる整合性の調整は、書き込みI/Oが整合性グループ内のすべてのボリュームにわたって休止されることを必要とする可能性があり、書き込みI/Oの休止は、アプリケーションの実行に影響を与える可能性がある。さらに、整合性グループ内のすべてのボリュームにわたって有効な正確な単一のタイムスタンプは使用不能である。加えて、マスタ制御ユニットは、「休止」ウィンドウ中にすべての従属制御ユニットと連携し合う。整合性グループを確実に作成するためにすべての書き込みI/Oを休止することによって、ストレージ・システムに関与可能な従属制御ユニットの数が制限される。従属制御ユニットの数が多いほど、アプリケーションの影響(インパクト)時間も長くなる。たとえば、ある非限定的な例では、マスタ制御ユニットと共にわずか2つの従属制御ユニットが関与している場合でも、アプリケーションは1ミリ秒またはそれ以上ごとに影響を受ける可能性がある。
整合性グループを作成するための時間整合方法であるIBM社のGlobal Mirrorおよび他のシステムは、制御ユニット全体にわたるいかなる正確な時間基準もなかった可能性があるため、整合性グループを作成するためにデータ整合モデルを使用してきた可能性がある。本発明の特定の実施形態では、様々なメカニズムを使用して、データに時間整合性を与えるのに十分な細分性(granularity)を提供するために、すべての内部ストレージ制御クロックをサーバ・クロックと同期させることができる。たとえば、ネットワーク・タイム・プロトコルを使用する特定のネットワーク・タイム・サーバを使用して、1ミリ秒またはそれ未満の細分性で、サーバにまたがって時間を同期させることができる。
依存書き込みI/Oを管理するため、および整合性グループを構築するために、ストレージ・ベースのデータ複製ソリューションに必要な細分性を提供する、複数のシステムに対する共通クロックが使用可能であるとすれば、特定の実施形態は、この共通クロックおよび時間同期化を使用して、依存書き込みI/Oを管理し、整合性グループを構築する。
たとえば特定の実施形態は、タイムスタンプを介してすべてのコントローラおよびストレージ・サブシステムにわたって依存I/O順序付けを管理するように試みる。しかし、サーバおよびストレージ・サブシステムのクロックはずれる可能性があるため、特定の実施形態は、依存I/Oシーケンスを実行するためにかかる時間よりも短い細分性で、ストレージ・サブシステムがそれらの時間を共通クロック・ソースと連係および同期させることを保証する。依存I/Oシーケンスの非限定的な例は、以下のような3つの依存I/O動作を通じて実行される、データ・ベース・テーブルの更新である。
I/O動作#1:データ・ベース・テーブルの更新が実行されることを示す、データ・ベース・ログ・ボリュームの更新
I/O動作#2:データ・ベース・テーブルの更新
I/O動作#3:I/O動作#2が完了したことを示す、データ・ベース・テーブルの更新
データ・ベース・ログおよびデータ・ベース・テーブルは、同じかまたは異なるストレージ・サブシステムに接続された、物理的に同じかまたは異なるボリューム上に常駐する可能性がある。整合性グループは時間に基づいて形成されるため、1次および2次のストレージ・サブシステム全体にわたって、ユーザが、2次ストレージ・サブシステムで、I/O動作#1およびI/O動作#3がどちらも2次ボリューム上で完了しているかどうかを判別しようと試みる場合、I/O動作#2も2次ボリューム上で完了していなければならないことになる。ストレージ・サブシステムが、I/O動作の時間よりも細分性の低い共通クロックと同期化されていない場合、使用されている非同期データ複製技法が、1次ストレージ・サブシステム全体にわたってI/Oコマンドを発行しているデータ・ベース・アプリケーションと非同期であるため、潜在的にこのI/Oシーケンスは、ストレージ・サブシステム内の2次ターゲット・ボリューム上で順序外れで完了した可能性がある。たとえば、I/O動作#1およびI/O動作#3の結果が、I/O動作#2の結果を伴わずにターゲット・ボリューム上に常駐している場合、データ・ベース・テーブルはダウン・レベル・データを有する一方で、データ・ベース・ログはデータ・ベース・テーブル内のデータが正しいことを示すため、検出不能なデータ完全性の問題が生じることになる。
様々なサーバにまたがった時間ベースの整合性により、本発明による特定の実施形態は、共通タイムスタンプを使用して整合性グループを構築および管理することができる。これにより、IBM Global Mirrorなどの非同期データ複製メカニズムによって使用される、データ・フリーズ回避技法が可能になる。データ・フリーズ技法では、すべての書き込みI/Oが、動的に留保されること、すなわち、ストレージ・ボリュームおよびストレージ・サブシステム全体にわたってI/O整合性を保証するために、整合性グループ形成時間中はビジー(使用中)とされることが必要である。
図1は、特定の実施形態に従ったコンピューティング環境100を示すブロック図である。1つまたは複数の1次制御ユニット102が、1つまたは複数のホスト104および1つまたは複数の2次制御ユニット106a、106b、...、106nに結合される。1次制御ユニット102の2次制御ユニット106a...106nへの結合は、ネットワーク108を介することが可能であり、1次制御ユニット102および2次制御ユニット106a...106nのホスト104への結合も、ネットワーク108を介することが可能である。コンピューティング環境100の様々な構成要素の結合は、ネットワーク接続の代わりに、またはネットワーク接続に加えて、直接接続を介することも可能である。図1には単一のネットワーク108が示されているが、追加のネットワークが、コンピューティング環境100の様々な構成要素間に接続を提供することもできる。2次制御ユニット106a...106nに関連付けられた1次制御ユニット102は、データの複製を可能にする場合があり、すべてのデータは1次制御ユニット102および2次制御ユニット106a...106n内で整合的に格納される。タイム・サーバ112がネットワーク108に結合され、このタイム・サーバ112を使用して、1次制御ユニット102および2次制御ユニット106a...106nの時間を同期させることができる。タイム・サーバ112は、タイム・サーバ112によって提供される時間を生成するクロック114を含む。特定の実施形態では、タイム・サーバ112はネットワーク・タイム・サーバとすることができる。
1次制御ユニット102、2次制御ユニット106a...106n、およびホスト102はそれぞれ、パーソナル・コンピュータ、ワークステーション、メインフレーム、ミッドレンジ・コンピュータ、ネットワーク機器、パーム・トップ・コンピュータ、電話デバイス、ブレード・コンピュータ、ハンド・ヘルド・コンピュータなどの、当分野で現在知られたものを含む、任意の好適な計算プラットフォームを備えることが可能な計算プラットフォームを含むことができる。1次制御ユニット102などの1次制御ユニットはマスタ・ユニットと呼ばれる場合があり、2次制御ユニット106aなどの2次制御ユニットは従属ユニットと呼ばれる場合がある。
1次制御ユニット102は、1次アプリケーション116、1次ストレージ・サブシステム118と呼ばれる1つまたは複数のストレージ・サブシステム、およびクロック120を含む。1次ストレージ・サブシステム118は、データを格納するストレージ・ボリュームを含むことができる。クロック120は、1次制御ユニット102での時間を表す。1次ストレージ・システム116に格納されたデータは、クロック120によって提供される時間に従ってタイムスタンプを押すことができる。1次制御ユニット102上の1次アプリケーション116は、1次制御ユニット102のクロック120を、タイム・サーバ112のクロック114と定期的に同期させることが可能であるため、結果として同期化後、1次制御ユニット102のクロック120は、タイム・サーバ112のクロック114によって示される時間に設定されることになる。
複数の2次制御ユニット106a、106b、...、106nは、2次アプリケーション122a、122b、...、122nと、2次ストレージ・サブシステム124a、124b、...、124nと、クロック126a、126b、...、126nとを含む。たとえば2次制御ユニット106aは、2次アプリケーション122a、2次ストレージ・サブシステム124a、およびクロック126aを含む。2次アプリケーション122aなどの2次アプリケーションは、2次制御ユニット106aのクロック126aなどの2次制御ユニットのクロックを、タイム・サーバ112のクロック114と定期的に同期させる。2次ストレージ・サブシステム124a...124nは、データを格納するストレージ・ボリュームを含むことができる。
ホスト104は、入力/出力(I/O)動作などの様々な動作を実行するために、1次制御ユニット102および2次制御ユニット106a...106nにコマンドを送信することができる、1つまたは複数のホスト・アプリケーション128を含むことができる。
したがって図1は、1次制御ユニット102および2次制御ユニット106a...106nのクロック120、126a...126nが、タイム・サーバ112のクロック114との同期化を維持する、特定の実施形態を示し、ここでタイム・サーバ112はネットワーク・タイム・サーバとすることができる。特定の実施形態では、クロック120、126a...126nとクロック114との同期化は、ネットワーク・タイム・プロトコルを使用することによって実行することができる。
図2は、特定の実施形態に従った、定期的な時間の同期化と、ストレージ・サブシステムが整合的に更新されるべきである選択された時間の送信とを実行するために、コンピューティング環境100において実施される動作を示す。
定期的な時間の同期化200は、1次制御ユニット102上の1次アプリケーション116および2次制御ユニット106a、106b、...、106n上の2次アプリケーション122a、122b、...、122nによって、タイム・サーバ112と共に実行される。定期的な時間の同期化200は、ネットワーク・タイム・プロトコルを使用することによって実行可能である。特定の実施形態では、正確な時間のソースとして全地球測位システム(GPS)を使用することが可能であり、GPSは基準クロックとして使用可能である。
特定の実施形態では、2次制御ユニット106a...106n上の対応するクロック126a...126nが選択された時間を示す場合に、2次ストレージ・サブシステム124a...124nが整合して(整合的に)更新されるように、1次制御ユニット102上の1次アプリケーション116が、2次制御ユニット106a...106n上の2次アプリケーション122a...122nのそれぞれに、選択された時間202を送信する。たとえば、1次アプリケーション116は、午後3時に、2次アプリケーション122a...122nのそれぞれに、選択された時間の午後3時01分を送信することができる。2次アプリケーション122a...122nは午後3時01分の時間を監視し、この午後3時01分の時間に達すると、午後3時01分での2次ストレージ・サブシステム124a...124nの整合した更新のプロセスを開始する。1次アプリケーション116が、すべての2次アプリケーション122a...122nが2次ストレージ・サブシステム124a...124nの整合した更新のプロセスを開始したことを決定した後に、2次ストレージ・サブシステム124a...124nは、2次アプリケーション122a...122nによって整合的に更新される。
したがって図2は、1次制御ユニット102および2次制御ユニット106a...106nが、1次制御ユニット102および2次制御ユニット106a...106nのクロック120、126a...126nと、タイム・サーバ112とを定期的に同期させる、特定の実施形態を示す。1次制御ユニット102は、選択された時間202を複数の2次制御ユニット106a...106nに送信し、この選択された時間202とは将来のことである。整合的な更新は、選択された時間に2次制御ユニット106a...106nによって2次ストレージ・サブシステム124a...124n内に格納されたデータで構成される。
図3は、特定の実施形態に従った、1次制御ユニット102および複数の2次制御ユニット106a...106nで実行される動作を示す。動作は、1次制御ユニット102に含まれる1次アプリケーション116および2次制御ユニット106a...106nに含まれる2次アプリケーション122a...122nにおいて、実施可能である。1次制御ユニット102によって実行される動作は1次アプリケーション動作300と呼ばれ、2次制御ユニット106a...106nのいずれかによって実行される動作は2次アプリケーション動作302と呼ばれる。
制御はブロック304および306で開始され、ブロック304では、1次制御ユニット102上の1次アプリケーション116が、1次制御ユニット102上のクロック120と、タイム・サーバ112のクロック114とを定期的に同期させ、ブロック306では、それぞれの2次制御ユニット上の2次アプリケーションが、対応するクロックとタイム・サーバ112とを定期的に同期させる。たとえば2次アプリケーション122aは、2次制御ユニット106aのクロック126aと、タイム・サーバ112のクロック114とを同期させることができる。
制御はブロック304からブロック308へと進み、1次アプリケーション116は、データの整合的な更新(すなわち、整合性グループを介した整合的なコピー)が複数の2次制御ユニット106a...106nで実施されるべきである、将来の時間を選択する。1次アプリケーション116は(ブロック310で)、この選択された時間202を複数の2次制御ユニット106a...106nに送信する。選択された時間202を複数の2次制御ユニット106a...106nに送信した後、1次アプリケーション116は(ブロック312で)、ホスト・アプリケーション128からのデータの受信を続行する。
それぞれの2次制御ユニット106a...106n上の2次アプリケーション122a...122nは(ブロック314で)、1次制御ユニット102から選択された時間202を受信するが、この選択された時間202は、ブロック310で1次制御ユニット102上の1次アプリケーション116によって送信されている。
それぞれの2次制御ユニット106a...106n上の2次アプリケーション122a...122nは、選択された時間202に2次ストレージ・サブシステム124a...124nを整合して更新するためのプロセスを開始する。しかしながら、2次アプリケーション122a...122nが、すべての2次アプリケーション122a...122nが2次ストレージ・サブシステム124a...124nを選択された時間に整合して更新するためのプロセスを開始した旨の確認を、1次アプリケーションから受信しない限り、2次ストレージ・サブシステム124a...124nのボリュームの整合的な更新は実行されない。
制御はブロック312からブロック318に進み、1次アプリケーション116は、すべての2次制御ユニット106a...106nが、2次ストレージ・サブシステム124a...124nを選択された時間に整合して更新するためのプロセスを開始したかどうかを判別する。開始した場合、1次アプリケーション116は(ブロック320で)、複数の2次制御ユニット106a...106nに、2次ストレージ・サブシステム124a...124nの整合的な更新を完了するように要求する。開始していない場合、制御はブロック312に戻り、1次アプリケーション116はホスト・アプリケーション128からのデータの受信を続行する。
それぞれの2次制御ユニット106a...106n上の2次アプリケーション122a...122nは(ブロック322で)、2次ストレージ・サブシステム124a...124nの選択された時間との整合的な更新を完了するようにとの要求を、1次アプリケーション116から受信する。それぞれの2次制御ユニット106a...106n上の2次アプリケーション122a...122nは(ブロック324で)、整合的な更新が可能であるかどうかを判別する。整合的な更新が可能でない場合、(ブロック326で)1次アプリケーション116にエラーが戻される。(ブロック324で)整合的な更新が可能であると判別された場合、制御はブロック328に進み、それぞれの2次制御ユニット106a...106n上の2次アプリケーション122a...122nは、2次ストレージ・サブシステム124a...124nを選択された時間に整合して更新するためのプロセスを完了する。2次ストレージ・サブシステム124a...124nを選択された時間整合してに更新するためのプロセスの完了は、2次ストレージ・サブシステムに格納されたターゲット・ストレージ・ボリュームへのソース・ストレージ・ボリュームのコピーによって実行することができる。
本発明の特定の実施形態では、2次ストレージ・サブシステムを選択された時間に整合して更新している間、整合性グループの形成中に、入力/出力(I/O)書き込み動作はビジーではなく、整合性グループのストレージ・サブシステム内のいかなるターゲット・ボリュームにも順序外れの依存書き込みがコピーされないように、ソースおよびターゲットのボリュームは整合状態で維持される。
特定の実施形態は、整合性グループを更新するための純粋なデータ整合方法を使用するのではなく、整合性グループを更新するための時間整合方法を使用する。I/O動作は、必ずしも整合性グループ内のすべてのボリュームにわたって休止されない。I/O動作が必ずしも休止されないため、特定の実施形態に関与可能なストレージ・サブシステムの数は、アプリケーション応答時間に許容できない影響を与えるのを避けるために1次制御ユニットによって休止可能な2次制御ユニットの最大数に限定されない。本発明の特定の実施形態では、各整合性グループに1つの時間が関連付けられる。
データ複製目的で整合的な更新を管理するための特定の実施形態は、任意の時点で「データのコピー」を再作成する場合に、書き込みI/Oの依存順序も維持する、継続的データ保護(CDP)ジャーナルのような間接的なデータ複製ソリューションにも適用可能である。共通クロック方式は、ターゲット2次ストレージ・サブシステム全体にわたって更新をキャプチャおよび管理するためにCDPアプリケーションが導入された場合、CDPアプリケーションの集合全体にわたって作動することになる。
追加の実施形態の詳細
説明された技法は、ソフトウェア、ファームウェア、マイクロコード、ハードウェア、あるいはそれらの任意の組み合わせ、またはそれらすべてを含む、方法、装置、またはプログラムとして実装可能である。本明細書で使用される「プログラム」という用語は、媒体内に実装されるコードまたは論理を言い表し、こうした媒体は、ハードウェア論理(たとえば集積回路チップ、プログラマブル・ゲート・アレイ(PGA)、特定用途向け集積回路(ASIC)など)、あるいは、磁気ストレージ媒体(たとえばハード・ディスク・ドライブ、フロッピィ・ディスク、テープなど)、光ストレージ(CD−ROM、光ディスクなど)、揮発性および不揮発性メモリ・デバイス(たとえば、電気的消去再書き込み可能読み取り専用メモリ(EEPROM)、読み取り専用メモリ(ROM)、再書き込み可能読み取り専用メモリ(PROM)、ランダム・アクセス・メモリ(RAM)、動的ランダム・アクセス・メモリ(DRAM)、静的ランダム・アクセス・メモリ(SRAM)、フラッシュ、ファームウェア、再書き込み可能論理など)などの、コンピュータ読み取り可能媒体を備えることができる。コンピュータ読み取り可能媒体内のコードは、プロセッサによってアクセスおよび実行される。コードまたは論理が内部で符号化された媒体は、空間、または光ファイバ、銅線などの伝送媒体を介して伝播される、伝送信号を含むこともできる。コードまたは論理が内部で符号化された伝送信号は、無線信号、衛星伝送、電波、赤外線信号、ブルートゥースなどをさらに含むことができる。コードまたは論理が内部で符号化された伝送信号は、送信局による送信および受信局による受信が可能であり、伝送信号内部で符号化されたコードまたは論理は、受信側および送信側の局または装置にあるハードウェアまたはコンピュータ読み取り可能媒体内に復号および格納することができる。加えて「プログラム」は、内部でコードが具体化、処理、および実行される、ハードウェアおよびソフトウェアの構成要素の組み合わせを含むこともできる。もちろん、当業者であれば、諸実施形態の範囲を逸脱することなく多くの修正が実行可能であること、およびプログラムが任意の情報担持媒体を含むことが可能であることを、理解されよう。たとえばプログラムは、マシンによって実行された場合に結果として動作が実行される、内部に命令を格納したストレージ媒体に格納される。
特定の実施形態は、全体としてハードウェアの実施形態、全体としてソフトウェアの実施形態、またはハードウェアおよびソフトウェアの両方の要素を含む実施形態の形を取ることができる。好ましい実施形態では、本発明は、ファームウェア、常駐ソフトウェア、マイクロコードなどを含むがこれらに限定されることのない、ソフトウェア内で実装される。
さらに特定の実施形態は、コンピュータまたは任意の命令実行システムによって、またはそれらに関連して使用するための、プログラム・コードを提供する、コンピュータ使用可能またはコンピュータ読み取り可能の媒体からアクセス可能な、コンピュータ・プログラムの形を取ることができる。この説明では、コンピュータ使用可能またはコンピュータ読み取り可能の媒体は、命令実行システム、装置、またはデバイスによって、あるいはそれらに関連して使用するための、プログラムの包含、格納、通信、伝播、または移送が可能な、任意の装置とすることができる。媒体は、電子、磁気、光、電磁、赤外線、または半導体のシステム(あるいは装置またはデバイス)、あるいは伝播媒体とすることができる。コンピュータ読み取り可能媒体の例には、半導体またはソリッド・ステート・メモリ、磁気テープ、取り外し可能コンピュータ・ディスケット、ランダム・アクセス・メモリ(RAM)、読み取り専用メモリ(ROM)、剛性磁気ディスク、および光ディスクが含まれる。光ディスクの現在の例には、コンパクト・ディスク−読み取り専用メモリ(CD−ROM)、コンパクト・ディスク−読み取り/書き込み(CD−R/W)、およびDVDが含まれる。
「特定の実施形態」という用語は、特に明示されていない限り、(すべてではないが)1つまたは複数の実施形態を意味する。「含む」、「備える」、「有する」、およびそれらの変形の用語は、特に明示されていない限り、「含むが限定されない」ことを意味する。列挙されたアイテムのリストは、特に明示されていない限り、任意またはすべてのアイテムが相互に排他的であることを示唆するものではない。
互いに通信しているデバイスは、特に明示されていない限り、互いに連続して通信しているとは限らない。加えて、互いに通信しているデバイスは、直接、あるいは1つまたは複数の中継を介して間接的に、通信することができる。さらに、互いに通信しているいくつかの構成要素を備えた実施形態の説明は、こうした構成要素のすべてが必要であることを示唆するものではない。これに対して、多種多様な可能な実施形態を例示するために、多様なオプションの構成要素について説明している。
さらに、プロセス・ステップ、方法ステップ、アルゴリズムなどは、一連の順序で説明されている場合があるが、こうしたプロセス、方法、およびアルゴリズムは、代替の順序で動作するように構成することができる。言い換えれば、説明されている場合のあるステップのいかなるシーケンスまたは順序も、必ずしもステップがその順序で実行される旨の要件を示すものではない。本明細書で説明されたプロセスのステップは、任意の実際の順序で実行可能である。さらにいくつかのステップは、同時に、並行して、または一斉に実行可能である。
本明細書で単一のデバイスまたはプログラムについて説明されている場合、単一のデバイス/プログラムの代わりに、複数のデバイス/プログラムが(それらが協働するか否かにかかわらず)使用可能であることが明らかとなろう。同様に、本明細書で複数のデバイスまたはプログラム(それらが協働するか否かにかかわらず)について説明されている場合、複数のデバイスまたはプログラムの代わりに、単一のデバイス/プログラムが使用可能であることが明らかとなろう。デバイスの機能あるいは機構は、別の方法として、こうした機能/機構を有するものとして明示的に説明されていない1つまたは複数の他のデバイスによって具体化することが可能である。したがって他の諸実施形態は、必ずしもデバイス自体を含むとは限らない。
図4は、特定の実施形態において、図1のコンピューティング環境の計算プラットフォーム102、104、106a...106n、112がコンピュータ・システム400のアーキテクチャに従って実装可能な、例示的コンピュータ・システムを示す。コンピュータ・システム400はシステムと呼ばれる場合もあり、特定の実施形態ではプロセッサ404を含む場合がある回路402を含むことができる。システム400は、メモリ406(たとえば揮発性メモリ・デバイス)およびストレージ408も含むことができる。システム400の特定の要素は、図1の計算プラットフォーム102、104、106a...106n、112内に見られる場合または見られない場合がある。ストレージ408は、不揮発性メモリ・デバイス(たとえばEEPROM、ROM、PROM、RAM、DRAM、SRAM、フラッシュ、ファームウェア、再書き込み可能論理など)、磁気ディスク・ドライブ、光ディスク・ドライブ、テープ・ドライブなどを含むことができる。ストレージ408は、内部ストレージ・デバイス、取り付け型ストレージ・デバイス、あるいはネットワーク・アクセス可能ストレージ・デバイス、またはそれらすべてを備えることができる。システム400は、メモリ406内にロード可能であり、プロセッサ404または回路402によって実行可能な、コード412を含む、プログラム論理410を含むことができる。特定の実施形態では、コード412を含むプログラム論理410はストレージ408に格納することができる。特定の他の実施形態では、プログラム論理410は回路402内に実装可能である。したがって、図4ではプログラム論理410を他の要素と別に示しているが、プログラム論理410はメモリ406あるいは回路402またはそれら両方の内部に実装可能である。
特定の実施形態は、コンピュータ読み取り可能コードをコンピューティング・システムに統合する、自動化された処理によって、コンピューティング命令を展開するための方法を対象とすることが可能であり、コードとコンピューティング・システムとがあいまって、説明された実施形態の動作を実行することが可能となる。
図2および図3に示された少なくとも特定の動作は、並行して、ならびに順次、実行することができる。代替の実施形態では、特定の動作は、異なる順序での実行、修正、または除去が可能である。
さらに、ソフトウェアおよびハードウェア構成要素の多くは、例示の目的で別々のモジュール内に記載されている。こうした構成要素は、より少数の構成要素に統合するか、またはより多数の構成要素に分割することができる。加えて、特定構成要素によって実行されるように記載された特定の動作は、他の構成要素による実行が可能である。
図1〜図4で図示または言及されたデータ構造および構成要素は、特定タイプの情報を有するように記載されている。代替の実施形態では、このデータ構造および構成要素を異なるように構造化すること、ならびに、図面で図示または言及されたものよりも少ない、多い、または異なるフィールド、あるいは異なる機能を有することが可能である。
したがって、諸実施形態の前述の記載は、例示および説明の目的で提示されたものである。諸実施形態を網羅すること、または開示された精密な形に限定することは意図されていない。上記教示に照らして、多くの修正および変形が可能である。
特定の実施形態に従った、コンピューティング環境を示すブロック図である。 特定の実施形態に従った、定期的な時間の同期化を実行するための動作と、ストレージ・サブシステムが整合的に更新されるべきである選択された時間を送信するための動作とを示す図である。 特定の実施形態に従った、1次制御ユニットおよび複数の2次制御ユニットで実行される動作を示す図である。 特定の実施形態において、図1のコンピューティング環境の計算プラットフォームがコンピューティング・システムのアーキテクチャに従って実装可能な、コンピューティング・システムのアーキテクチャを示す図である。

Claims (5)

  1. 1次制御ユニットと複数の2次制御ユニットとタイム・サーバを含むシステムにおいて、ストレージ・サブシステムに関連付けられた更新をサポートするための方法であって、
    前記1次制御ユニットがホスト・アプリケーションから受信した更新を前記1次制御ユニットに結合可能な1次ストレージ・サブシステムに格納するステップと、
    前記1次制御ユニットおよび前記複数の2次制御ユニットがそれぞれのクロックを前記タイム・サーバと定期的に同期させるステップと、
    前記1次制御ユニットが将来の時間を選択し、該将来の時間を前記複数の2次制御ユニットに送信するステップと、
    前記2次制御ユニットが前記1次制御ユニットから受信した前記将来の時間に前記2次制御ユニットに結合可能な2次ストレージ・サブシステムを更新するためのプロセスを開始するステップと、
    前記1次制御ユニットが前記複数の2次制御ユニットのそれぞれが前記2次ストレージ・サブシステムを前記将来の時間に更新するための前記プロセスを開始したかどうかを判別するステップと、
    前記1次制御ユニットが前記将来の時間に更新するための前記プロセスを開始したと判別した場合に、前記複数の2次制御ユニットのそれぞれが前記2次ストレージ・サブシステムを更新するための前記プロセスを完了するための要求を前記複数の2次制御ユニットに送信するステップと、
    前記2次制御ユニットが前記要求を受信したことに応答して、前記2次ストレージ・サブシステムが整合的に更新可能であるか否かを決定し、更新可能であるとの決定に応答して、前記2次ストレージ・サブシステムを更新するための前記プロセスを完了するステップと、
    を有する方法。
  2. 前記2次制御ユニットが更新不能であるとの決定に応答して、エラーの通知を前記1次制御ユニットに送信するステップをさらに含む、請求項1に記載の方法。
  3. 1次制御ユニットと複数の2次制御ユニットとタイム・サーバを含み、ストレージ・サブシステムに関連付けられた更新をサポートするためのシステムであって、
    前記1次制御ユニットは、
    1次ストレージ・サブシステムと、
    前記1次制御ユニットのクロックを前記タイム・サーバと定期的に同期させるための手段と、
    ホスト・アプリケーションから受信した更新を前記1次ストレージ・サブシステムに格納するための手段と、
    将来の時間を選択し、該将来の時間を前記複数の2次制御ユニットに送信するための手段と
    を備え、
    前記2次制御ユニットは、
    2次ストレージ・サブシステムと、
    前記2次制御ユニットのクロックを前記タイム・サーバと定期的に同期させる手段と、
    前記1次制御ユニットから受信した前記将来の時間に前記2次ストレージ・サブシステムを更新するためのプロセスを開始するための手段と
    を備え、
    前記1次制御ユニットは、
    前記複数の2次制御ユニットのそれぞれが前記2次ストレージ・サブシステムを前記将来の時間に更新するための前記プロセスを開始したかどうかを判別するための手段と、
    前記将来の時間に更新するための前記プロセスを開始したと判別した場合に、前記複数の2次制御ユニットのそれぞれが前記2次ストレージ・サブシステムを更新するための前記プロセスを完了するための要求を前記複数の2次制御ユニットに送信するための手段と
    を備え、
    前記2次制御ユニットは、
    前記要求を受信したことに応答して、前記2次ストレージ・サブシステムが整合的に更新可能であるか否かを決定し、更新可能であるとの決定に応答して、前記2次ストレージ・サブシステムを更新するための前記プロセスを完了するための手段と
    を備えるシステム。
  4. 前記2次制御ユニットは、更新不能であるとの決定に応答して、エラーの通知を前記1次制御ユニットに送信するための手段をさらに含む、請求項3に記載のシステム。
  5. 請求項1または2に記載の方法のステップをコンピュータに実行させるためのコンピュータ・プログラム。
JP2009503521A 2006-04-06 2007-03-20 ストレージ・サブシステム全体にわたる整合的な更新のための方法、システム、およびコンピュータ・プログラム Active JP4573310B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/399,973 US7571268B2 (en) 2006-04-06 2006-04-06 Consistent updates across storage subsystems coupled to a plurality of primary and secondary units at selected times
PCT/EP2007/052627 WO2007113101A1 (en) 2006-04-06 2007-03-20 Consistent updates across storage subsystems

Publications (2)

Publication Number Publication Date
JP2009532789A JP2009532789A (ja) 2009-09-10
JP4573310B2 true JP4573310B2 (ja) 2010-11-04

Family

ID=38007223

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009503521A Active JP4573310B2 (ja) 2006-04-06 2007-03-20 ストレージ・サブシステム全体にわたる整合的な更新のための方法、システム、およびコンピュータ・プログラム

Country Status (5)

Country Link
US (1) US7571268B2 (ja)
EP (1) EP2005301B1 (ja)
JP (1) JP4573310B2 (ja)
CN (1) CN101401073B (ja)
WO (1) WO2007113101A1 (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7899894B2 (en) * 2006-08-30 2011-03-01 International Business Machines Corporation Coordinated timing network configuration parameter update procedure
US7895303B2 (en) * 2007-01-31 2011-02-22 International Business Machines Corporation Server time protocol control messages and methods
US9112626B2 (en) * 2007-01-31 2015-08-18 International Business Machines Corporation Employing configuration information to determine the role of a server in a coordinated timing network
US7689718B2 (en) * 2007-01-31 2010-03-30 International Business Machines Corporation Channel subsystem server time protocol commands and system therefor
US8290899B2 (en) * 2007-03-28 2012-10-16 Netapp, Inc. Group stamping style asynchronous replication utilizing a loosely-accurate global clock
US7925629B2 (en) 2007-03-28 2011-04-12 Netapp, Inc. Write ordering style asynchronous replication utilizing a loosely-accurate global clock
US8150800B2 (en) 2007-03-28 2012-04-03 Netapp, Inc. Advanced clock synchronization technique
US8015427B2 (en) * 2007-04-23 2011-09-06 Netapp, Inc. System and method for prioritization of clock rates in a multi-core processor
US7925916B2 (en) * 2008-04-10 2011-04-12 International Business Machines Corporation Failsafe recovery facility in a coordinated timing network
US8416811B2 (en) * 2008-04-10 2013-04-09 International Business Machines Corporation Coordinated timing network having servers of different capabilities
US8099571B1 (en) 2008-08-06 2012-01-17 Netapp, Inc. Logical block replication with deduplication
US7873862B2 (en) * 2008-10-21 2011-01-18 International Business Machines Corporation Maintaining a primary time server as the current time server in response to failure of time code receivers of the primary time server
US9158579B1 (en) 2008-11-10 2015-10-13 Netapp, Inc. System having operation queues corresponding to operation execution time
DE102008044367A1 (de) 2008-12-04 2010-06-10 Robert Bosch Gmbh Intelligenter Sensor für ein Kraftfahrzeug, Erfassungssystem und Verfahren zum Übertragen eines Sensorsignals
US8108575B2 (en) * 2009-02-03 2012-01-31 International Business Machines Corporation Methods of multi-server application synchronization without stopping I/O
US8655848B1 (en) 2009-04-30 2014-02-18 Netapp, Inc. Unordered idempotent logical replication operations
US8321380B1 (en) 2009-04-30 2012-11-27 Netapp, Inc. Unordered idempotent replication operations
US8671072B1 (en) 2009-09-14 2014-03-11 Netapp, Inc. System and method for hijacking inodes based on replication operations received in an arbitrary order
US8799367B1 (en) 2009-10-30 2014-08-05 Netapp, Inc. Using logical block addresses with generation numbers as data fingerprints for network deduplication
US8473690B1 (en) 2009-10-30 2013-06-25 Netapp, Inc. Using logical block addresses with generation numbers as data fingerprints to provide cache coherency
US8271441B1 (en) * 2009-12-26 2012-09-18 Emc Corporation Virtualized CG
US8554737B2 (en) 2010-09-28 2013-10-08 International Business Machines Corporation Dynamic consistency group formation and systems using the same
US9417815B1 (en) 2013-06-21 2016-08-16 Amazon Technologies, Inc. Capturing snapshots of storage volumes
CN110209726B (zh) * 2018-02-12 2023-10-20 金篆信科有限责任公司 分布式数据库集群系统、数据同步方法及存储介质
US11900102B2 (en) * 2021-06-21 2024-02-13 Western Digital Technologies, Inc. Data storage device firmware updates in composable infrastructure
US11733909B2 (en) 2021-06-21 2023-08-22 Western Digital Technologies, Inc. Secure-erase prediction for data storage devices
US20230236937A1 (en) * 2022-01-21 2023-07-27 International Business Machines Corporation Coordinated cycling cyber protection managers and repositories

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0448464A (ja) 1990-06-13 1992-02-18 Nec Corp 磁気記録再生装置
US5555371A (en) * 1992-12-17 1996-09-10 International Business Machines Corporation Data backup copying with delayed directory updating and reduced numbers of DASD accesses at a back up site using a log structured array data storage
US5577222A (en) * 1992-12-17 1996-11-19 International Business Machines Corporation System for asynchronously duplexing remote data by sending DASD data grouped as a unit periodically established by checkpoint based upon the latest time value
US5615329A (en) * 1994-02-22 1997-03-25 International Business Machines Corporation Remote data duplexing
KR0128271B1 (ko) 1994-02-22 1998-04-15 윌리암 티. 엘리스 재해회복을 위한 일관성 그룹 형성방법 및 레코드갱싱의 섀도잉 방법, 주시스템, 원격데이타 섀도잉 시스템과 비동기 원격데이타 복제 시스템
US6578120B1 (en) * 1997-06-24 2003-06-10 International Business Machines Corporation Synchronization and resynchronization of loosely-coupled copy operations between a primary and a remote secondary DASD volume under concurrent updating
US7079269B2 (en) * 1998-03-19 2006-07-18 Océ-Technologies B.V. Interactive printing with a plurality of printer devices
JP2000137638A (ja) 1998-10-29 2000-05-16 Hitachi Ltd 情報記憶システム
JP2000305856A (ja) 1999-04-26 2000-11-02 Hitachi Ltd ディスクサブシステム及びこれらの統合システム
JP4044717B2 (ja) 2000-03-31 2008-02-06 株式会社日立製作所 記憶サブシステムのデータ二重化方法及びデータ二重化システム
JP2002342038A (ja) * 2001-05-16 2002-11-29 Hitachi Ltd コマンドの実行順序を制御するディスク装置
DE10216984A1 (de) * 2002-04-16 2003-11-06 Philips Intellectual Property Netzwerk mit einem Verbindungs-Netzwerk und mehreren mit dem Verbindungs-Netzwerk gekoppelten Netzknoten
US6842825B2 (en) 2002-08-07 2005-01-11 International Business Machines Corporation Adjusting timestamps to preserve update timing information for cached data objects
US7117386B2 (en) 2002-08-21 2006-10-03 Emc Corporation SAR restart and going home procedures
SE525157C2 (sv) * 2002-12-03 2004-12-14 Mentice Ab Simuleringssystem för invasiv kirurgi
JP4354233B2 (ja) 2003-09-05 2009-10-28 株式会社日立製作所 バックアップシステム及び方法
US20080253315A1 (en) * 2003-09-16 2008-10-16 Koninklijke Philips Electronics N.V. Communication Network and a Communication Element and Method of Operation Thereof
US7188222B2 (en) 2003-09-29 2007-03-06 International Business Machines Corporation Method, system, and program for mirroring data among storage sites
US7293048B2 (en) * 2003-10-29 2007-11-06 Hewlett-Packard Development Company, L.P. System for preserving logical object integrity within a remote mirror cache
US7318074B2 (en) 2003-11-17 2008-01-08 International Business Machines Corporation System and method for achieving deferred invalidation consistency
US8214328B2 (en) 2003-11-25 2012-07-03 International Business Machines Corporation High-performance asynchronous peer-to-peer remote copy for databases
US7421549B2 (en) 2004-03-02 2008-09-02 Hitachi, Ltd. Method and apparatus of remote copy for multiple storage subsystems
KR100557192B1 (ko) * 2004-04-06 2006-03-03 삼성전자주식회사 서버와 클라이언트간에 데이터 동기화 시 비정상 종료된경우 데이터 전송 방법 및 그 시스템.

Also Published As

Publication number Publication date
CN101401073B (zh) 2010-11-10
CN101401073A (zh) 2009-04-01
WO2007113101A1 (en) 2007-10-11
JP2009532789A (ja) 2009-09-10
EP2005301A1 (en) 2008-12-24
US7571268B2 (en) 2009-08-04
US20070239950A1 (en) 2007-10-11
EP2005301B1 (en) 2013-05-08

Similar Documents

Publication Publication Date Title
JP4573310B2 (ja) ストレージ・サブシステム全体にわたる整合的な更新のための方法、システム、およびコンピュータ・プログラム
US7941622B2 (en) Point in time remote copy for multiple sites
US8055865B2 (en) Managing write requests to data sets in a primary volume subject to being copied to a secondary volume
US8108364B2 (en) Representation of system clock changes in time based file systems
US7577867B2 (en) Cross tagging to data for consistent recovery
KR100734817B1 (ko) 싸이트간 데이타 미러링을 위한 방법, 시스템, 및 기록 매체
CN101755257B (zh) 管理在不同的网络上将写入从首要存储器拷贝到次要存储器
JP2009295154A (ja) 異種レプリケーションエンジンを用いた整合性グループの管理
US8903775B2 (en) Using a heartbeat signal to maintain data consistency for writes to source storage copied to target storage
CN104335159A (zh) 间隔控制复制
JP2007183930A (ja) 異なるコピー技術を用いてデータをミラーリングするときの整合性の維持
CN103597463A (zh) 恢复服务的自动配置
WO2014059804A1 (zh) 数据同步方法及系统
JP2007220103A (ja) 結合セッション環境におけるセッションのクラスタのためのセッション情報の統合方法、システム、およびプログラム
US20050154786A1 (en) Ordering updates in remote copying of data
US7698519B2 (en) Backup of hierarchically structured storage pools
JP2013114628A (ja) データ管理プログラム、データ管理方法およびストレージ装置
CN111506453A (zh) 磁盘快照创建方法、装置、系统和存储介质
US7587466B2 (en) Method and computer system for information notification
JP4790283B2 (ja) ストレージサブシステム及びストレージシステム
JP4583075B2 (ja) サイト間でデータをミラーリングする方法、システム、およびプログラム
CN117743026A (zh) 一种数据容灾的方法、系统、设备及存储介质
JP2008140080A (ja) クラスタシステム及び同期化方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091113

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20100315

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20100331

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100406

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20100419

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100419

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100702

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100810

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20100811

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100812

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4573310

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130827

Year of fee payment: 3