JP4325836B2 - 複数リモートストレージのデータ同期方式 - Google Patents
複数リモートストレージのデータ同期方式 Download PDFInfo
- Publication number
- JP4325836B2 JP4325836B2 JP2002369171A JP2002369171A JP4325836B2 JP 4325836 B2 JP4325836 B2 JP 4325836B2 JP 2002369171 A JP2002369171 A JP 2002369171A JP 2002369171 A JP2002369171 A JP 2002369171A JP 4325836 B2 JP4325836 B2 JP 4325836B2
- Authority
- JP
- Japan
- Prior art keywords
- storage system
- data
- remote
- remote storage
- received
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2082—Data synchronisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2058—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using more than 2 mirrored copies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2064—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring while ensuring consistency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2071—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2071—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
- G06F11/2074—Asynchronous techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2069—Management of state, configuration or failover
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
本発明は、一般的に、ローカルストレージシステムと、このローカルストレージシステムが保持するデータの少なくとも一部をミラーする複数のリモートストレージシステムとから構成されるデータストレージ処理システムに関係する。更に具体的には、本発明は、これらのシステム中の一システムが障害になった場合に、生存するストレージシステムのデータを同期させるための、方法及びこの方法を実装した装置に関連する。
【従来の技術】
商業、軍、政府、やその他の事業での積年のデータ処理の利用により大量のデータが保存されており、この多くのものは、実質上金銭に換算できないほどの重要性を持っている。例えばデータが失われると、企業は倒産する危険がある。偏にこのために、、ローカルデータは一つ以上のコピーでバックアップされており、元データが万一失われても利用できるように保持されている。データが重要であるほど、バックアップ方法は精密化されなければならない。
重要データを保護する一つの方法は、例えば、ローカルストレージシステムから地理的に離れた一つ以上のサイトで、そのデータのバックアップコピーを保存することである。各リモートストレージシステムがローカルストレージシステムのデータのミラーイメージを保持し、ローカルストレージシステムのローカルデータイメージに変更(書き込み、削除等による)が生じた場合には、該変更データイメージを各リモートストレージシステムに転送して、各リモートストレージシステムがローカルデータイメージのミラーを維持できるようにする。ローカルストレージシステムのデータをリモートストレージシステムがミラーする一つの例が米国特許 No.5,933,653に開示されている。
リモートストレージシステムに送信される更新データはしばしばキューされ、リモートコピー動作のオーバヘッドを最小にするために、グループとして送信される。又転送媒体には、インターネットまたは類似媒体がよく使用される。このような理由で、ローカルデータをミラーしているデータイメージと言えども、各時点では必ずしも同じではない。もし、ローカルデータのミラーのために複数のリモートストレージが使用されている場合には、各リモートストレージ間でデータイメージが一致していないことがしばしば発生する。少なくとも、ローカルストレージシステムによるデータを更新し終わる迄の時間は不一致になってしまう。このような異なったデータイメージが存在する事は、ローカルストレージシステムが障害になり、リモートストレージシステムが取り残された時には、問題になる。
ローカルストレージシステムが障害になった時点では、あるリモートストレージは、完全なミラーとまではいかなくても、最新に最も近いローカルストレージシステムのデータイメージを保持しており、他のリモートストレージでは、ある種のデータイメージは全く更新されていないという事態が発生する。かくのごとく、ローカルストレージシステムが障害になった場合に、全システムを再起動させるには、他のリモートストレージシステムのデータを同期させて、各システムが最新に最も近い同じデータイメージを保持するようにすることが必要になる。幾つかのデータ同期方式が存在する。
もし、ローカル及びリモートストレージシステムで可搬媒体(例えば、テープ、CD−R,DVD等)が使用出来る場合は、そのような可搬媒体を用いることが出来る。例えば、システム管理者は、ローカルストレージシステムの最新に最も近いデータイメージを保持していると信じられるリモートストレージシステムのデータをテープにコピーする。
次いで、他のリモートストレージシステムで同期させるために使われる前にデータイメージが変更されてしまうのを防ぐために、このテープを持ちまわって他のリモートストレージシステムのデータを更新し終えるまで、データイメージを供給するストレージシステムの入力/出力(I/O)動作は停止される。リモートストレージシステムでは、管理者が可搬媒体からリモートサイトのストレージにコピーする。コピーが終わった所で、システム管理者はこれまではリモートストレージシステムの一つであったものが新たなローカルストレージシステムになるように全システムを指定替えをして、I/O動作が開始できることになる。この方式は、関連するデータ量が少なく、それほど大きくないシステムに有効である。より大きなシステムではデータ量が急速に増大し、全同期プロセスに必要なコピー時間が過大になる。
可搬媒体が使用できない場合は、別の方式として、いろいろなストレージシステム間のデータ転送にネットワーク接続を使用する方式が考えられる。この方式では、一つのストレージシステムが、前の、(現在は障害になった)ローカルストレージシステムの代わりを務めるために選択される。
この選択されたストレージシステムは、先に述べたと同じ理由で、I/O動作は停止され、この選択されたストレージシステムと他のリモートストレージシステムとの間で、同期コピー処理が開始される。同期処理が完了すると、選択されたストレージシステムにおいてI/O動作が再スタートされ、(以前の、障害になったローカルストレージシステムの分だけ)ストレージシステムが一つ少なくはなるがシステムは以前と同様に業務を続けることができる。
この後者の方式の大きな問題は、同期処理に必要な時間であり、特に大量データを保有する大システムでは問題が大きい。例えば、100TBのデータを100MB/sの転送速度のネットワークで同期化する場合の時間は11.57日が必要となる。(100x1012/(100x106)=106秒=277時間=11.57日)。この時間はただ一つのストレージシステムを同期するのに必要な時間である。同期を必要とするストレージシステムが増加すると、この問題は深刻化する。更に、同期処理中は、関係するストレージシステムのI/O動作は停止しなければならない。
【発明が解決しようとする課題】
本発明は、ローカルストレージの障害時に於いても、複数のリモートデータストレージシステムが同じデータイメージを保持できるように、当該リモートデータストレージシステムを同期させるための方法及び当方法を実装するための方式を提供する。
【課題を解決するための手段】
一般的に本発明は、複数のリモートストレージシステムに通信結合したローカルデータストレージシステムから成る、データ処理システムに関係する。各ストレージシステムはローカルであるにせよ、リモートであるにせよ、データストレージにストレージメディアを保有する。ローカルデータストレージシステムのストレージメディアにて維持されているデータは、各リモートストレージシステム内のストレージメディアにミラーされる。
ローカルストレージシステムで発生したデータイメージの変更は、更新データと共にデータメッセージを送信する、リモートコピープロセスを用いて定期的にリモートストレージシステムに送信され、当該システムのデータイメージの更新が行われる。各ストレージシステムは、リモートストレージシステムがどんな更新データを受信したかのヒストリを示す情報、及びどんな更新データを(かかるリモートストレージシステムの各ストレージメディアへ書き込むことで)取り込んだかのヒストリを示す情報を保持している。一つのストレージシステムが障害になった場合は、生存ストレージシステムが、このヒストリの更新データを持ち回って、システム間のデータイメージの差異、即ち、各生存ストレージシステムでの未受領の更新データの有無を調べる。もし差異が存在する場合には、生存ストレージシステムがデータイメージの同期を実施して、全ての生存システムが実質的に同一データイメージを保有するようにする。
本発明の一実施例では、同期は、ヒストリの更新データ情報が示す最新の更新データを有するリモートストレージシステムが、他のリモートストレージシステムに必要な更新データを送信して、全てのデータイメージを最新状態に持ち上げる“ロールフォワード”方式で達成される。もう一つの“ロールバック”方式の同期方式では、不揃いの更新データを切り捨てて、すべてのデータイメージを共通の更新レベルに戻してしまう。
本発明の一つの効果は、ミラーされるストレージを有するデータ処理システムに於いては、ミラーするローカルストレージシステムに障害が起こった場合、ローカルストレージのミラーイメージは、互いに、対応付けが出来ると言う事実にある。
本発明のもう一つの実施例では、各ストレージシステムはキュー構造を持ち、ロールバックキューでは、ストレージメディアに未書き込みのメッセージを識別し、ライトヒストリキューでは、実際に書き込みが完了したメッセージを識別する。もし、ローカルストレージシステムで障害が発生したら、各リモートストレージシステムは、各システムのロールバックキューとライトヒストリキューの内容を示した情報を持ち回って、一つのストレージシステムでは保有しているが他のストレージシステムでは保有していないデータを見つけ出し、この情報に基づいて不揃いデータを、保有しているシステムから保有していないシステムに送信する。
本発明の更に他の実施例では、アラインメント処理を有し、ローカルストレージシステムがリモートストレージシステムで受信されたメッセージの来歴を追いかけて、当該情報により、各ロールバック及びライトヒストリキュー内に存在するメッセージを特定する。後になって、ロールバック、ロールフォワード、又はパージ処理が実施できるように、各ロールバックキュー及びライトヒストリキューに登録されているメッセージのオーバラップを維持するために、ローカルストレージシステムはデータ転送を抑制し調整する。
本発明の、これら及び他の効果が、添付する図面と共にこの明細書の以降に記載する詳細な説明により、本分野に造詣のある人には明確になる。
【発明の実施の形態】
図1は、データ通信ネットワーク16で互いに通信結合される、ローカルサイト12と多数のリモートサイト14を含む、データ処理システム10を説明する。ローカルサイト12は、ホストプロセッサ101とローカルストレージシステム104を含む。ホストプロセッサ101とローカルストレージシステム104は、ローカルサイト12でのデータイメージの更新データをリモートサイト14と交信するために、データ通信ネットワーク16を介してリモートサイト14に結合している。これにより、リモートサイト14は、ローカルサイト12のデータのミラーとなるデータイメージを維持することが出来る。
各リモートサイト14は、リモートストレージシステム105,106を有し、対応するホストプロセッサ102,103は持つ場合と持たない場合がある。リモートストレージシステム105,106は、ローカルストレージシステム104のデータイメージのミラーとなるデータイメージを保持するために、ローカルストレージシステム104のストレージメディアと極めて類似したストレージメディアを有する(後に更に議論する)。
リモートサイトは、ローカルストレージシステム104が計画的又は予期しない停止になった場合には、必要データへのアクセスを可能にするが、ローカルサイト12が災害でデータが失われる場合のことを考えると、リモートサイト14は、サイト及び維持するデータを保護するために、ローカルストレージシステム104から地理的に離れた位置に設置することがより大きな効果をもたらす。
リモートストレージシステム105,106は、ローカルストレージシステム104と実質的には、同一であり、ローカルストレージシステムに対する議論は、等しくリモートストレージシステム105,106にも適用される。
ローカルサイト12では、ホストプロセッサ101は、ネットワークインターフェース(I/F)111とネットワーク結合111aを通して、ネットワーク16に結合し、入力/出力バス(I/Oバス)108とI/Oインターフェース110を通して、ローカルストレージシステム104に結合する。
ローカルストレージシステム104は、デイスクコントローラ141を有し、このデイスクコントローラは、I/Oバス108を通してホストからのI/O要求を受け取るための、I/Oインターフェース130を持ち、ネットワークインターフェース(I/F)131とネットワーク結合131aを通して、データ通信ネットワーク16に接続される。更に、このローカルストレージシステム104は、データバス132とI/Oインターフェース137,138を通してこのデイスクコントローラ141に接続される、デイスクユニット140で構成されるストレージメディア142を有する。
このデイスクコントローラ141自身、内部バス132を通して、メモリ134に結合するCPU(Central Processing Unit:中央処理装置)133を持ち、この内部バス132は、デイスクコントローラの多様なインターフェース(例えば、I/O I/F130,138,ネットワークI/F131等)にも接続される。メモリ134はキャッシュメモリ135を含み、このキャッシュメモリはホストプロセッサ101からのI/O要求に応じて、ストレージメディア142との間の読み書き時のキャッシュ用として利用される。このメモリは、制御情報136のようなある種のデータ構造や情報を保持するために使用される。
CPU133は、ストレージメディア142のデータイメージへの(例えば、ホストプロセッサ101から要求された)変更データを、通常のやり方で(自らのストレージメディアを持つ)リモートストレージシステム105,106に送信処理する、リモートコピープロセスを優先的に実行する。これにより、リモートストレージシステム105,106は、ローカルストレージシステム104のデータをミラーできる。簡単に言うと、リモートコピープロセスは以下の通り処理される:デイスクコントローラ141は、ストレージメディア142上に保持されているデータ(データイメージ)への追加、変更、削除、その他の修正のいずれかを行う書き込みI/O要求を受け取ると、当該ストレージメディア142へデータの書き込みを行う。そのようなストレージメディアへの書き込みまたは、少なくとも書き込みの一部でも、リモートサイト14でミラーされたデータイメージが必要な場合には、データメッセージが生成されて、リモートコピーキュー(図示されていない)に登録される。このリモートコピーキューは、CPU133上で走行している、リモートコピープロセスにより周期的にチェックされる。もし、このキュー内に一つ以上のデータメッセージが検出されたら、このメッセージは抽出されて、各リモートストレージシステム105,106に送信され、データメッセージのデータが書き込まれ、それによって、それらのデータイメージを更新してローカルサイト12のデータイメージに一致させる。
データメッセージに関する情報は、ストレージシステム104,105,106にて、ローカルストレージシステム104から送信された、又は送信途中のデータメッセージか、又は、リモートストレージシステムで受信されたデータメッセージか、を識別するヒストリ情報として保持される。各ストレージシステムでは、ヒストリ情報を複数のキュー構造により実装する。図2はこれらのキュー構造を示す。
図2に示す通り、ローカルストレージシステム104は、ワーキングキュー110、ロールバックキュー111、中間キュー112、及びライトヒストリキュー113の各キューを含む。ワーキングキュー、ロールバックキュー、中間キュー、及びライトヒストリキュー(110−113)は、リモートストレージシステム105(キュー120,121,122、及び123)及びリモートストレージシステム106(キュー130,131,132、及び133)にそれぞれミラーされる。各キューは、FIFO(First−In−First−Out:先入れ先出し)構造で実装される。
典型的な読み書きI/O要求は、コマンドエントリとこれに伴うか又は後続するデータ(書き込み要求の場合)を含む。各コマンドエントリには、データと,データが読み書きされるストレージメディア142のロケーション及び、実装に従って必要とするその他の情報が指定される。もしホストプロッセサ101から、リモートストレージシステム105,106でミラーされるデータイメージを変更するデータを書き込むためのI/O要求を受けたら、該コマンドエントリには順序番号がアサインされる。するとコマンドエントリはコマンドエントリとアサインされた順序番号により形成されたものになる。このコマンドエントリは次に、ワーキングキュー110に登録される。これは、データに先立って、リモートストレージシステムに送信される、データとデータメッセージのためのヒストリ情報を形成する。
コマンドエントリがワーキングキュー110にある間に、対応する書き込み要求は受信処理されている。この処理は、書き込み要求に対応するデータ (ホスト101とストレージシステム104に適用されている通信プロトコル次第で、要求と共に転送されるか、又は要求の後に続いて転送されるかどちらかである) の受信、キャッシュ135にデータを格納するためのキャッシュエリアのアサイン、及び受信時の、このエリアへのデータの書き込み、を含む。キャッシュされたデータへのポインタは、対応するコマンドエントリに関連付けられる。このI/O要求の送信者に対して、状態メッセージが返送されて、このI/O要求のデータ状態即ち受信できたか、又は受信時エラーが検出されたかが報告される。
図2は、デイスクコントローラ104で受信され、順序番号“15”がアサインされた書き込みI/O要求101aと、アサインされた順序番号と書き込み要求のコマンドエントリで形成されたコマンドエントリを示す。コマンドエントリは既に述べられたように更に処理する為に、ワーキングキュー110に登録される。
当該I/O要求が処理され、エラーが検出されない場合、このコマンドエントリは、ワーキングキュー110からロールバックキュー111に移される。ロールバックキューは一時的な保持エリアで、後により詳しく説明される、ローカルストレージシステム104とリモートストレージシステム105,106の間のロールバック同期のために使用される。リモートストレージシステム105,106は、ロールバックキュー含めて、基本的には、同じ目的のために、同じキュー構造を持っている。ここでは、ロールバックキューに含まれているコマンドエントリに対応するデータは、本発明では、同期プロセスで使用され、ストレージシステムの一つが、障害になった場合には、破棄されるか、生存ストレージシステム間で比較するために使用される、とだけ言っておけば十分であろう。
コマンドエントリは、ロールバックキュー111から、ストレージメディア142への書き込み待ちの間又は、書き込んでいる間エントリを保持する中間キュー112に移される。当該ストレージメディアへの書き込みが終了すると、当該コマンドエントリは、プライマリ(ローカル)ストレージシステム104のミラーコピーを行うリモートストレージシステムに対してデータイメージの更新を行わせるために送信される、データメッセージを作成してリモートコピー要求を作成するために利用される。次いで、キャッシュポインタはコマンドエントリから削除され、エントリは中間キューからライトヒストリキュー113に移される。図2は、既に示されたように、ホストプロセッサ101から受信した順序番号15をアサインされ、ワーキングキュー110に登録されているコマンドエントリを示す。現在ロールバックキュー111に登録されている順序番号13,14のコマンドエントリは、関連データが、ストレージメディア142に書き込まれるのを待っている。中間キュー112は、順序番号10,11、及び12のコマンドエントリを保有している。順序番号10のコマンドエントリは、次に書き込まれるか、書き込まれている最中であることを示している。順序番号7,8,及び9のコマンドエントリは、関連データをストレージメディア142に書き込み済で、それ故にライトヒストリキュー113に登録されている。
リモートストレージシステムは基本的には、同じキュー構造を持ち、同様に操作される。例えば、リモートストレージシステム105は、当該エントリの全データパッケージを受信している間、ワーキングキュー120に登録されている順序番号10がアサインされたコマンドエントリを持つ、データメッセージを受信中であることを示している。この順序番号10はローカルストレージシステム104で与えられたものである。一度、データメッセージが、受信されると、そのコマンドエントリは、ワーキングキュー120からロールバックキュー121に移される。このロールバックキューには現在、順序番号6−9を持つデータメッセージのコマンドエントリが登録されている。
中間キュー122には順序番号5のデータメッセージのコマンドエントリが存在し、ストレージシステム105のストレージメディア142'への書き込み中であることを示している。書き込みが終了すると、当該エントリは、順序番号1−4のデータメッセージのコマンドエントリが既に存在するライトヒストリキュー123に移動する。ライトヒストリキュー123の深さにより、最古のエントリ、例えば順序番号1のエントリは順序番号5のコマンドエントリの加入により追い出されることになる。
他のリモートストレージ106も同じデータキュー構造(130,131、・・・133)を持つ。図2では、リモートストレージ106が、現在順序番号12のデータメッセージを受信しつつあり、ワーキングキュー130に順序番号12のコマンドエントリが入っている。ロールバックキュー131には、順序番号8−11を持つ制御情報が登録されている。以下同様である。
このようなヒストリ情報をストレージシステムによりトレースするキューは通常、メモリに保持されているが、ストレージメディアに保持してもかまわないことは、本分野に造詣のある人には明らかである。
ローカルストレージシステム104は、更に、メモリ134(図1)中にリモートコピー状態テーブル114を持ち、どのデータメッセージが送信され、どのリモートストレージシステムによりどのデータメッセージが受信され、完了報告が出されたかを表示している。
例えば、最も最近に、リモートストレージシステム105(表114で“S1”と表示)に受け取られたのは、順序番号9であり、リモートストレージシステム106(“S2”と表示)に受け取られたデータメッセージは、順序番号11であることが分かる。
リモートコピー状態テーブル114は更に、リモートストレージシステムのロールバックキュー、ライトヒストリキューに関する情報も保持している。即ち、テーブル114が示すようにリモートストレージシステム105,106のロールバックキューの長さはデータメッセージ4エントリ分で、10MBの容量まで収容可能であることが分かる。各リモートストレージシステム105,106のライトヒストリキューは5データメッセージの5エントリ分である。このライトヒストリキューのバイト単位の容量をこのテーブル114に保持させても良い。
図3は各種のネットワークアーキテクチュアを持つデータ処理システムで発生し得る、種々の傷害モードのシナリオを示す。最初の図3Aでは、ローカルストレージシステム304Aを持つデータ処理システムは、リモートストレージシステム305A,306Aに並列に通信接続されている。図3Aに示すように、リモートストレージシステム305Aが障害になった場合は、データ同期プロセスの必要性はない。ローカルストレージシステム304Aは依然稼動中であり、生存リモートストレージシステム306Aが通常のリモートコピー処理によりデータ更新を継続できるからである。
図3Bはローカルストレージシステムが障害になった場合のシナリオを図で示す。この場合も、ローカルストレージシステム304Bは、リモートストレージシステム305B,306Bに並列に通信接続されている。もし、ローカルストレージシステム304Bの障害が検出されると、図3Bの下半分に記されているように、リモートストレージシステム305B’,306B’は、最新の更新データを保有しているリモートストレージシステムのデータイメージに対して、自己の持つデータイメージを同期させる。リモートストレージシステム305Bが最新更新情報を保有しているとすると、本発明での同期プロセスは、リモートストレージシステム中のデータイメージの一つを、他システム中のそれと同期することにより行われる。すぐ分かるように同期には二つの方式が存在する。
ロールフォワード方式では、最新の更新データがこれを必要としているリモートストレージシステムに送信され、ロールバック方式では、最新の更新データは破棄される。いずれの方式でも、生存リモートストレージシステムが保持しているデータイメージは同一化される。
図3C,3D,3Eでは、ローカル及びリモートストレージシステム304C,305C,306Cが各々、デイジーチエンネットワーク結合で接続されている。図3Cでは、ローカルストレージシステム304Cが障害になり、リモートストレージシステム305Cがリモートストレージシステム306Cを同期させる場合を示している。
一方に於いて、図3Dの如く、デイジーチエンの遠端に存在するリモートストレージシステム306Cが障害になった場合は、データ同期の必要性はない。図3Eの如く、中間のリモートストレージシステムが障害になった場合は、残ったリモートストレージシステムは、ネットワーク結合が正常である限り、ローカルストレージシステムにより同期化される。
図4A−4Eは、ローカルストレージシステムが障害になった場合に、各ストレージシステムで保有している受信されたデータメッセージに関するヒストリ情報を用いて、本発明によるリモートストレージシステムのデータイメージの同期方法を一般的に説明する。
図4Aは、ローカルストレージシステム404が、リモートコピーキュー404aに3つのデータメッセージ(1,2,3)を持っている正常時の状態を示す。そのデータメッセージ中の二つ(1,2)がリモートストレージシステム405に送信され受信されているが、3番目のデータメッセージ3は、当該リモートストレージシステム405に送信中である。しかしながら、リモートストレージシステム406には、データメッセージ1,2,3が一つも受け取られいていなく、何れも送信準備中か、送信中である。
この状態で、即ち、データメッセージ3はリモートストレージシステム405で受信が完了しておらず、データメッセージ1,2,3のいずれもリモートストレージシステム406で受信が完了していない状態で、ローカルストレージシステム404が、障害になった場合の結果を図4Bに示す。この状態では、リモートストレージシステム405,406間でデータメッセージは、リモートストレージシステム405のロールバックキュー421に蓄えられている、最新のデータメッセージ1,2だけが相違している。
この状態での、本発明によれば、二つのストレージシステム405,406により保持されているデータイメージを同期させる方式の一つの技術は、リモートストレージシステム406にも、データメッセージ1,2を受け取らせ、リモートストレージシステム406が保有しているデータイメージを更新させることを必要とする。
かくして、図4Cに示すように、データイメージの相違はリモートストレージシステム405に保持される二つのデータメッセージ1,2にあることを検出した上で、これらのデータメッセージをロールフォワード同期のためにリモートストレージシステム406に転送する。反対に、ロールバック方式の同期では、リモートストレージシステム405に、保有しているデータメッセージ1,2を破棄させる。このロールバック同期方式を図4Eに示し、以下に論ずる。
図4Dは、システム中任意の場所に存在しえるソフトウエアマネージャ407により実行されるロールフォワード同期を示す。このようにこのマネージャはシステムの他の部分とは分離していながら、ローカルストレージシステムや、リモートストレージシステム405,406にアクセス可能であってもよいし、全体のストレージシステムの一部を形成してもよい。
実装方法にかかわらず、マネージャ407は、プライマリストレージシステム404の障害検出を契機に始まる、リモートストレージシステム405,406間の交信に立ち入る。この交信の結果により、マネージャ407は、プライマリストレージシステム404が倒れた時点の、更新情報の受信の差異をリモートストレージシステム間について調査する。図4Dの例では、マネージャ407は、リモートストレージシステム405が、リモートストレージシステム406が持っていないデータメッセージ1,2を受信しており、データメッセージ1,2はストレージシステム405のロールバックキューの中にあると知らされる。
そこで、このマネージャ407はリモートストレージシステム405にアクセスし、メッセージ1,2に関するデータをリモートストレージシステム406に転送し、リモートストレージシステム406のデータイメージをリモートストレージシステム405のデータイメージと同期させる。
代わりに、マネージャ407は、リモートストレージシステム405のロールバックキューのデータメッセージを破棄させることも出来る。この場合、当該データメッセージは、中間キューには入っていないため、メッセージに対応するデータは書き込まれず、データイメージは変更されない。メディアこの後者の同期方式はロールバック同期と呼ばれ、リモートストレージシステム405のデータイメージをリモートストレージシステム406のデータイメージに同期させるものである。
図4Eは、ロールバック同期処理の他のやり方を説明する。前と同様に、プライマリストレージシステム404が、リモートストレージシステムのデータイメージを更新するために転送すべき、データメッセージ1,2,3を保有したまま、障害になったとする。このとき、リモートストレージシステム405のみがデータが更新されて、データメッセージ1,2のみ保有しており、リモートストレージシステム406は全く更新されず、データメッセージ1,2,3の何れも保有していないとする。
従って、プライマリ(ローカル)ストレージシステム404がこの状態で障害になった場合は、両リモートストレージシステム405,406のデータイメージは、データメッセージ1,2だけが相違している。本発明のロールバック処理では、それぞれの保有するデータイメージを同期させるために、データメッセージ1,2のデータをリモートストレージシステム405からリモートストレージシステム406にフォワード転送するのではなく、リモートストレージシステム405が保有しているデータメッセージを破棄させる。
図5は、ローカルストレージシステム104(図1)が、ホスト101(図1)から受信した更新データを各リモートストレージシステムに転送する、リモートコピー処理のために行う主要ステップを説明する。既に説明したように、ローカルストレージシステム104の保有するデータイメージを更新させるホストプロセッサ101からの書き込みI/O要求は、リモートストレージシステムの保有するデータイメージのミラーに就いても同様な更新を必要とする。
この書き込みI/O要求の発生により、アサインされた順序番号及び、この要求データへのポインタを含む、対応するコマンドエントリが形成される。このコマンドエントリは、全てのデータが受信され、完了報告がホストプロセッサ101に返されるまで、ワーキングキュー110に収容されている。その後、このコマンドエントリはロールバックキュー111に移される。その後、このロールバックキュー111が満杯になるか、フラッシュコマンド(後述する)が受信されると、このコマンドエントリは中間キュー112に移される。中間キュー112に存在している間に、この要求に対応するデータがストレージメディア142に書き込まれる。
CPU133上で走行している、リモートコピープロセスは、周期的にリモートコピーキューの内容をチェックして、リモートストレージシステム105,106の各々に更新データをコピーするために受信したI/O要求に対してデータメッセージの形成が必要なコマンドエントリを見つける。図5のステップ501にて、ローカルストレージシステム104は各リモートストレージシステムがデータメッセージの受付が出来るか否かをチェックする。
このチェックは、RC状態テーブル114を参照して行う。このテーブルでは、各リモートストレージシステムが、どんなメッセージを受信して完了報告したか、完了報告してないか、及びリモートストレージシステムの各キューの受信可能サイズをローカルストレージシステムに伝える。このテーブルによりローカルストレージシステムは、特定のストレージシステムが別のデータメッセージや関連データの受信するスペースがあるか否かを判断する。もし否であったら、ステップ501は次の処理に移る。リモートストレージシステム自身が、これ以上データメッセージを受け取れないことの表示、例えば、SCSI等で定義された“BUSY(0x08):使用中”や“キュー満杯(0x28)”等の状態信号を返答することも出来る。
もし、対象リモートストレージシステムがデータメッセージを受信するのに十分なスペースを持っていることが分かれば、ローカルストレージシステムは、リモートストレージシステム(例えばリモートストレージシステム105)にデータメッセージの形式でRC(リモートコピー)コマンドを発行し、これに続いてステップ503で関連するデータを送信する。
ローカルストレージシステム104は、その後、データメッセージを受信したか否かの状態報告を待ち(ステップ504)、ローカルストレージシステムが報告を受信すると、ステップ505で、全てのリモートストレージシステムがデータメッセージの更新が済んだかのチェックを行う。未了のリモートストレージシステムが存在すれば、処理はステップ506aに移り、対象となるリモートストレージシステムがデータイメージを受信したことを示すようにRC状態テーブル114を更新して、次のリモートストレージシステムがデータメッセージを受け取るために、ステップ501に戻る。
しかしながら、ステップ505にて全てのリモートストレージシステムがデータメッセージを受信したことが判明すれば、当該データメッセージ(コマンドエントリ)は、ステップ506でRCキューから削除され、ステップ507でRC状態テーブル114が更新され、このデータメッセージのための処理は終了する。
図6は、リモートストレージシステムがリモートコピープロセスのデータメッセージを受信するステップを一般的に示す。ステップ601でリモートストレージシステムはデータメッセージを受信し、ステップ602で当該データメッセージを受け取るための十分なキュー資源がアサイン可能か、即ち受信のスペースがあるかを判定する。
更に、このステップ602の判定は、他のリモートストレージシステムのキュー内容に比較して、自らのキュー(即ち、ロールバック、中間、ライトヒストリキュー)の状態の分布、即ちアラインメント(後述される)に基づいて実施される。もし、ステップ602で、この時点では、当該データの受け取りは不可能と判定されたら、ステップ602からステップ606に移り、このリモートストレージシステムは、ローカルストレージシステム104に対して、“使用中”の応答を返し、この受信処理を終える。ローカルストレージシステムは、この応答により後の再試行の必要性を確認する。
もし、ステップ602で、受付可能と判定されたら、ステップ603でデータを受信し、ステップ604でリモートストレージシステムはデータ転送の状態を返す。続いて、ステップ605でこのデータメッセージは、メッセージ及びデータ受信用のワーキングキューから、ロールバックキューに移される。
図7は、ローカルストレージシステムで(又は、図3Eのデイジーチェイン接続での中間サイトのリモートストレージシステムで)障害が検出された場合の同期プロセスの処理ステップを示す。ステップ701で障害が検出される。障害検出は数々の方法でなされる。例えば、ストレージシステムは、互いに、ハートビート信号を他のストレージシステムに送信し、これが来なければ当該システムは障害とみなす;或いはストレージシステムは自己診断可能で、自システムの障害を他システムに同報通信することが出来る;或いはその他の任意の慣用的障害検知技術を用いることが出来る。
もし、障害が検出されると、他の生存システム、例えば、図2のリモートストレージシステム105,106は互いに交信し、誰が新しいリモートコピーマネージャになれるかを判定する。選択されたストレージシステムが、残りのすべての生存システムのデータイメージを同一状態に同期するためのリモートコピー処理をコントロールする。あるいは、リモートコピーマネージャは、システム管理者により事前定義されている場合もある。
いずれにせよ、選択されると、リモートコピーマネージャは、ローカルストレージシステムとなり、ステップ703で生存ストレージシステムで維持されている、各種キューの構造と内容に関する情報を集める。この情報には、ロールバックキューとライトヒストリキューの範囲(エントリ数)と、どれだけの数のエントリがデータメッセージを有するかの情報が含まれる。例えば、図2について、ローカルストレージシステム104が障害になり(ステップ701)、リモートストレージシステム105がステップ702でリモートコピーマネージャとして選択されると、リモートストレージシステム106は、自分のロールバックキュー131にはデータメッセージ8,9,10,11が、ライトヒストリキュー133にはデータメッセージ3,4,5,6が保有されていることを報告する。
リモートストレージシステム106の中間キューの内容は、障害が検出されるとリモートストレージシステムは優先的に中間キューを空にして、それにより該当データがストレージメディアに書き込まれるようにするので、短時間のうちにライトヒストリキューに付け加えられる。
ストレージシステムの一つに障害が起きた後、生存ストレージシステムのリモートコピー環境に関する情報が得られた場合、選択されたリモートコピーマネージャは、ロールバックか、ロールフォワードかの何れの同期方式を選択するかを決める。これは、典型的には、リモートコピー環境の管理者又はユーザによって、障害の場合にストレージシステムを同期させる最良の方式に関するフラグをセットしておく形で、事前決定されている。
もし、ステップ704で、ロールバック処理が選択されたら、ステップ705でリモートコピーマネージャーはすべてのストレージシステムが共有する最も大きな順序番号を持つデータメッセージを決定する。図2の例では、順序番号9のデータメッセージがこれに該当する。続いて、ステップ706にて、選択されたリモートコピーマネージャは、ロールバックコマンドを他の全てのストレージシステムに対して発行し、受信後順序番号9を超えるデータメッセージを破棄させる。かくして、図2に戻って、リモートストレージシステム106はこのロールバックコマンド受領により、順序番号10,11のデータメッセージを破棄する。この処理はステップ715で終了する。
一方において、ステップ704にて、ロールフォワードが選択された場合には、ステップ707でロールフォワードの順序番号を決定する。この処理では、リモートコピー処理が、各種のロールバックキューとライトヒストリキューの内容を比較して、最新のデータメッセージを保有するストレージシステム決定する。かくして図2に於いて、選択されたリモートコピーマネージャが、リモートストレージシステム105の場合は、リモートストレージシステム106が順序番号10,11のメッセージを持っており、自分は持っていないことを認識する。
そこで、各システムのデータイメージの同期を計るために、リモートストレージシステム106の順序番号10,11のデータメッセージを自システムに転送するリモートコピー処理を起動する。かくして、ステップ708にて、選択されたリモートコピーマネージャは、それが最新のストレージシステムだと判定すると、ステップ709にて、最新データを有するストレージシステムから必要データを取得する。このことは、選択されたRCマネージャ自身にも起こり得るし、他のストレージシステムの一つにも起こり得る。いずれにせよ、選択されたRCマネージャが更新データを受領すると、ステップ710に移り、更新データを必要とする他のストレージシステムに対して更新データ又はその一部を選択的に転送してすべてのリモートストレージシステムのデータイメージの同期を完了する。この処理はステップ715で完結する。
もし、逆に、ステップ708にて、同期処理は、最新データメッセージを保有するストレージシステムにより実施され、当該ストレージシステムは選択されたRCマネージャではない場合(あるいは、他のストレージシステムが予め、同期システムとして、事前指定されている場合)は、RCマネージャは、どのストレージシステムがデータ更新を必要としているかを含む更新情報を、最新更新データ保有ストレージシステムに送信する。次にステップ712にて、更新データはデータメッセージの形で、このデータイメージの同期を必要とするすべてのストレージシステムに送信され、処理はステップ715で完了する。
もし、 (図4Eで説明され、既に議論されたように) ロールバック処理が採用された場合には、リモートストレージシステム105,106(図1)のRB(ロールバック)キューは、アライン(調整)されている必要がある。アラインメント処理は、ローカルストレージシステム104で、CPU133上で走行しているリモートコピープロセスと(リモートストレージシステム105,106で維持されている各種のキューの状態に関する情報を提供する)リモートコピー状態テーブル114を用いて、実行される。
例えば、あるリモートストレージシステムはローカルストレージシステムからのリモートコピーデータメッセージを受信できず、他のリモートストレージシステムは受信できるという事態が存在する。このような場合には同期目的のために、注意しなければならないことは、同期が必要なときに、同期が必ず成立するためには、一つのリモートストレージシステムのキューの中にあるデータメッセージと他のリモートストレージシステムのキューの中にあるデータメッセージとを比較したときに、少なくとも一つのデータメッセージが共通に保有(オーバラップ)されている必要があることである。
図8,9はすべてのキュー(特にRBキューと、ライトヒストリキュー)に就いての、アライメント処理を説明する。図8では、リモートストレージシステム805/806のRBキュー821/831は2エントリの深さで、ライトヒストリキュー823/833はそれぞれ5エントリの深さの状態でのオーバラップを説明する。(ワーキングキュー及び中間キューは、不必要に話を複雑化させるために図示されていない)。図8に於いて、リモートストレージシステム805は、ライトヒストリキュー823にデータメッセージ6,7,8,9,10が、RBキュー821にデータメッセージ11,12が登録されている。
リモートストレージシステム805は、更にメッセージ13の受信途上であり、ローカルストレージシステム(図8に図示されていない)は、更にデータメッセージ14を送る準備をしている。リモートストレージシステムがデータメッセージ13を受信し受け付けると、このメッセージ13は、RBキュー821に入り込む。これにより、データメッセージ11が、スペースを作るためにライトヒストリキューに移動して、データメッセージエントリ6がライトヒストリキューから排出されることになる。リモートストレージシステム805は更に、順序番号14のデータメッセージを受け取れる状態になる。
同時にリモートストレージシステム806は、ライトヒストリキュー833にデータメッセージ1−5を持ち、RBキュー831にデータメッセージ6,7を持っており、データメッセージ8,9を受信中である。
この状態で、更に、リモートストレージシステム805がメッセージ14受信し受け付けたとすると、ライトヒストリキュー823から末尾にあるメッセージ7が脱落することになる。この状態で、リモートストレージシステム806がデータメッセージ8,9を受信し受け付ける前に、例えばローカルストレージシステムが障害になったとすると、データメッセージ7に関する情報がリモートストレージシステム805から欠落しているため、ロールバック方式を用いて二つのリモートストレージシステムを同期させることができない結果になってしまう。
このことより、ローカルストレージシステム(図8には図示されていない)は、データメッセージの受信状態及びリモートストレージシステム805,806のキューの保有状態に関する、リモートコピー状態テーブル114(図2)からの情報により、リモートストレージシステム806が少なくともデータメッセージ8を受信し受け付けられる迄は、データメッセージ14の送信を抑制することによって両者のアライメントを維持する必要がある。
図9は、ローカルストレージシステム104で採用され、定期的に発行されるフラッシュコマンドを用いたアライメント処理を説明する。図9では、ローカルストレージシステム104は、データメッセージ6を指定して、フラッシュコマンドを発行する。これにより、両リモートストレージシステム805,806とも、データメッセージ6に後続するすべてのデータメッセージ(7,8、・・・)の保有を確実にさせる。しかしながら、リモートストレージシステム805は依然として、データメッセージ14は受信不可能で“使用中”状態を返答する。
【発明の効果】
本発明により、従来の技術に勝る数々の便益が実現される。
【図面の簡単な説明】
【図1】図1は、本発明を実装する、ローカル及び複数のリモートストレージシステムを有するデータ処理システムのブロックダイアグラムである。
【図2】図2は、ローカルストレージからリモートストレージシステムに送られた更新データのヒストリ情報を保持するために、ローカル及び複数のリモートストレージシステムの各々で実装されるキュー構造を説明するダイアグラムである。
【図3A】図3Aは、ローカル及びリモートストレージシステム間の結合方式に対応して、発生し得る異なった障害モードを、図で説明する。
【図3B】図3Bは、ローカル及びリモートストレージシステム間の結合方式に対応して、発生し得る異なった障害モードを、図で説明する。
【図3C】図3Cは、ローカル及びリモートストレージシステム間の結合方式に対応して、発生し得る異なった障害モードを、図で説明する。
【図3D】図3Dは、ローカル及びリモートストレージシステム間の結合方式に対応して、発生し得る異なった障害モードを、図で説明する。
【図3E】図3Eは、ローカル及びリモートストレージシステム間の結合方式に対応して、発生し得る異なった障害モードを、図で説明する。
【図4A】図4Aは、ストレージシステムの一つ(例えばローカルストレージシステム)が障害になり、他の生存ストレージシステムがデータイメージを同期させるための、異なったシナリオを図で説明する。
【図4B】図4Bは、ストレージシステムの一つ(例えばローカルストレージシステム)が障害になり、他の生存ストレージシステムがデータイメージを同期させるための、異なったシナリオを図で説明する。
【図4C】図4Cは、ストレージシステムの一つ(例えばローカルストレージシステム)が障害になり、他の生存ストレージシステムがデータイメージを同期させるための、異なったシナリオを図で説明する。
【図4D】図4Dは、ストレージシステムの一つ(例えばローカルストレージシステム)が障害になり、他の生存ストレージシステムがデータイメージを同期させるための、異なったシナリオを図で説明する。
【図4E】図4Eは、ストレージシステムの一つ(例えばローカルストレージシステム)が障害になり、他の生存ストレージシステムがデータイメージを同期させるための、異なったシナリオを図で説明する。
【図5】図5は、ローカルストレージのデータイメージになされたデータ変更をリモートストレージシステムにデータメッセージを送信することによってコピーする、リモートコピー処理の主要ステップを説明する。
【図6】図6は、ローカルストレージシステムからのデータメッセージの受領に応じてリモートストレージシステムが行う主要ステップを説明する。
【図7】図7は、ローカルストレージシステムでの障害が検出された時に、リモートストレージシステムが行う主要ステップを説明する。
【図8】図8は、各リモートストレージシステム間での情報キューのオーバラップを維持するために、ローカルストレージシステムで発行される、アラインメント処理及びフラッシュ処理を図で説明する。
【図9】図9は、各リモートストレージシステム間での情報キューのオーバラップを維持するために、ローカルストレージシステムで発行される、アラインメント処理及びフラッシュ処理を図で説明する。
【符号の説明】
16・・・ネットワーク、101・・・プライマリホスト、102・103・・・リモートホスト、104・・・プライマリストレージ、105・106・・・セカンダリストレージ、110・130・137・138・・・I/Oインタフェース、111・131・・・ネットワークインタフェース、132・・・内部バス、133・・・CPU、134・・・メモリ、135・・・キャッシュメモリ、136・・・コントロール情報、140・・・ディスク、142・・・ボリューム
Claims (8)
- ローカルストレージシステムと複数のリモートストレージシステムで構成されるシステムにおいて、該複数のリモートストレージシステムに記憶された該ローカルストレージシステムのバックアップデータを同期させるための方法であって、
該各リモートストレージシステムが、該ローカルストレージシステムからのデータ更新要求を受信し、該受信したデータ更新要求の識別子を記録するステップと、
該各リモートストレージシステムが、該ローカルストレージシステムからのデータ更新要求を受信し、該データ更新要求に付随するデータをストレージメディアへ書き込んだデータ更新要求の識別子を記録するステップと、
該リモートストレージシステムのうちのいずれかのリモートストレージシステムが、該ローカルストレージシステムで障害が検出されると、該受信したデータ更新要求の識別子及び該受信し書き込みを完了したデータ更新要求の識別子の該各リモートストレージシステム間での差異を検出するステップと、
該差異を検出したリモートストレージシステムが、該差異に基づいて、該各リモートストレージシステム間のデータを同期させるステップとから構成されるデータ同期方法。 - 処理システムであって、
データ記憶のためのストレージメディアを有するローカルストレージシステムと、
各々付随データを有するリモートコピーコマンドに応答して、データを記憶するためのストレージメディアを有し、受信したリモートコピーコマンドを識別する情報及び付随データをストレージメディアに書き込んだ、受信したリモートコピーコマンドを識別するための情報を維持する、少なくとも二つのリモートストレージシステムと、
を備え、
該ローカルストレージシステムは、該各リモートストレージシステム内のストレージメディアにデータを書き込ませるために、該各リモートストレージシステムに該リモートコピーコマンドを送信し、
該ローカルストレージシステムでの障害検出により、該リモートストレージシステムのうちの選択されたリモートストレージシステムは、該各リモートコピーシステムが維持している該受信したリモートコマンドを識別するための情報を共有して、一つのリモートストレージシステムでは受信未了で、他のリモートストレージシステムでは受信完了しているリモートコピーコマンドを特定して、該各リモートストレージシステム間のデータを同期させる、処理システム。 - 該各リモートストレージシステムは、リモートコピーコマンドと共に受信されたデータを送受信する手段を有する、請求項2に記載の処理システム。
- 該各リモートストレージシステムは、一つのリモートストレージシステムで受信済みのデータを他のリモートストレージシステムに送信する為に、通信手段を用いる、請求項3に記載の処理システム。
- 処理システムであって、
データ記憶のためのストレージメディアを有するローカルストレージシステムと、
複数のリモートストレージシステムであって、それぞれがリモートコピーコマンドに応答して受信したデータを保存するストレージメディアを有する複数のリモートストレージシステムと、
を備え、
該ローカルストレージシステムは、該各リモートストレージシステム内のストレージメディアにデータを書き込ませるために、該各リモートストレージシステムにリモートコピーコマンドを送信し、
該ローカルストレージシステムでの障害検出により、該リモートストレージシステムのうちの選択されたリモートストレージシステムは、該各リモートストレージシステムが保有する更新情報の受信の差異に関する情報を共有して、一つのリモートストレージシステムで受信されている情報を、他の未受信のリモートストレージシステムに送信して、リモートストレージシステム間で、互いにデータがミラーとなるように修正する、処理システム。 - 各リモートストレージシステムは、該各リモートコピーシステムが維持している該リモートコピーコマンドを識別するための情報を保持するキューを含む、請求項5に記載の処理システム。
- 該情報は、受信されたリモートコピーコマンドの記録を有する、請求項6に記載の処理システム。
- 該情報は、該リモートストレージシステムのストレージメディアに書き込み済みの受信リモートコピーコマンドの記録を有する、請求項7に記載の処理システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/042,376 US6745303B2 (en) | 2002-01-03 | 2002-01-03 | Data synchronization of multiple remote storage |
US10/042,376 | 2002-01-03 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2003263280A JP2003263280A (ja) | 2003-09-19 |
JP2003263280A5 JP2003263280A5 (ja) | 2006-02-09 |
JP4325836B2 true JP4325836B2 (ja) | 2009-09-02 |
Family
ID=21921581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002369171A Expired - Fee Related JP4325836B2 (ja) | 2002-01-03 | 2002-12-20 | 複数リモートストレージのデータ同期方式 |
Country Status (2)
Country | Link |
---|---|
US (3) | US6745303B2 (ja) |
JP (1) | JP4325836B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230266956A1 (en) * | 2020-09-11 | 2023-08-24 | Inspur Suzhou Intelligent Technology Co., Ltd. | Method and apparatus for processing mirror images of ai platform |
Families Citing this family (194)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100365261B1 (ko) * | 2000-03-02 | 2002-12-18 | 주식회사 로직플랜트 | 웹 드라이브 시스템 |
US20040235523A1 (en) * | 2001-03-07 | 2004-11-25 | Schrire Michael Anton | System for replicating data of a mobile station |
GB0208922D0 (en) * | 2002-04-19 | 2002-05-29 | Ibm | Cache memory arrangement and methods for use in a cache memory system |
US20040006587A1 (en) * | 2002-07-02 | 2004-01-08 | Dell Products L.P. | Information handling system and method for clustering with internal cross coupled storage |
US7103727B2 (en) | 2002-07-30 | 2006-09-05 | Hitachi, Ltd. | Storage system for multi-site remote copy |
US7047377B2 (en) * | 2002-08-20 | 2006-05-16 | Gruintine Pueche, Inc. | System and method for conducting an auction-based ranking of search results on a computer network |
JP2004110367A (ja) * | 2002-09-18 | 2004-04-08 | Hitachi Ltd | 記憶装置システムの制御方法、記憶制御装置、および記憶装置システム |
US7546482B2 (en) * | 2002-10-28 | 2009-06-09 | Emc Corporation | Method and apparatus for monitoring the storage of data in a computer system |
US20040153558A1 (en) * | 2002-10-31 | 2004-08-05 | Mesut Gunduc | System and method for providing java based high availability clustering framework |
US20040199910A1 (en) * | 2003-04-05 | 2004-10-07 | Baack James E. | Automated change back off process for restoring the root disk |
US7415591B1 (en) * | 2003-04-23 | 2008-08-19 | Emc Corporation | Method and apparatus for migrating data and automatically provisioning a target for the migration |
AU2003246141A1 (en) * | 2003-05-30 | 2005-01-21 | Lg Electronics, Inc. | Home network system |
KR100605218B1 (ko) * | 2003-05-30 | 2006-07-31 | 엘지전자 주식회사 | 홈 네트워크 시스템 |
KR100605216B1 (ko) * | 2003-05-30 | 2006-07-31 | 엘지전자 주식회사 | 네트워크 디바이스 |
KR100596755B1 (ko) * | 2003-05-30 | 2006-07-04 | 엘지전자 주식회사 | 홈 네트워크 시스템 |
KR100638017B1 (ko) * | 2003-05-30 | 2006-10-23 | 엘지전자 주식회사 | 네트워크 디바이스 |
US7287186B2 (en) * | 2003-06-02 | 2007-10-23 | Surgient Inc. | Shared nothing virtual cluster |
US7124323B2 (en) * | 2003-06-18 | 2006-10-17 | International Business Machines Corporation | Method, system, and program for recovery of a reverse restore operation |
US7065589B2 (en) * | 2003-06-23 | 2006-06-20 | Hitachi, Ltd. | Three data center remote copy system with journaling |
JP4374953B2 (ja) * | 2003-09-09 | 2009-12-02 | 株式会社日立製作所 | データ処理システム |
US7159234B1 (en) * | 2003-06-27 | 2007-01-02 | Craig Murphy | System and method for streaming media server single frame failover |
US7130975B2 (en) * | 2003-06-27 | 2006-10-31 | Hitachi, Ltd. | Data processing system |
US8689043B1 (en) * | 2003-06-30 | 2014-04-01 | Symantec Operating Corporation | Fast failover with multiple secondary nodes |
US7165145B2 (en) * | 2003-07-02 | 2007-01-16 | Falconstor Software, Inc. | System and method to protect data stored in a storage system |
US7779169B2 (en) * | 2003-07-15 | 2010-08-17 | International Business Machines Corporation | System and method for mirroring data |
JP4021823B2 (ja) * | 2003-09-01 | 2007-12-12 | 株式会社日立製作所 | リモートコピーシステム及びリモートコピーの方法 |
US7827362B2 (en) | 2004-08-24 | 2010-11-02 | Symantec Corporation | Systems, apparatus, and methods for processing I/O requests |
US7991748B2 (en) | 2003-09-23 | 2011-08-02 | Symantec Corporation | Virtual data store creation and use |
US7725760B2 (en) | 2003-09-23 | 2010-05-25 | Symantec Operating Corporation | Data storage system |
US7730222B2 (en) | 2004-08-24 | 2010-06-01 | Symantec Operating System | Processing storage-related I/O requests using binary tree data structures |
US7577806B2 (en) | 2003-09-23 | 2009-08-18 | Symantec Operating Corporation | Systems and methods for time dependent data storage and recovery |
US7296008B2 (en) * | 2004-08-24 | 2007-11-13 | Symantec Operating Corporation | Generation and use of a time map for accessing a prior image of a storage device |
US7904428B2 (en) | 2003-09-23 | 2011-03-08 | Symantec Corporation | Methods and apparatus for recording write requests directed to a data store |
US7287133B2 (en) | 2004-08-24 | 2007-10-23 | Symantec Operating Corporation | Systems and methods for providing a modification history for a location within a data store |
US7769004B2 (en) * | 2003-09-26 | 2010-08-03 | Surgient, Inc. | Network abstraction and isolation layer for masquerading machine identity of a computer |
US7200726B1 (en) | 2003-10-24 | 2007-04-03 | Network Appliance, Inc. | Method and apparatus for reducing network traffic during mass storage synchronization phase of synchronous data mirroring |
US7203796B1 (en) | 2003-10-24 | 2007-04-10 | Network Appliance, Inc. | Method and apparatus for synchronous data mirroring |
US7325109B1 (en) * | 2003-10-24 | 2008-01-29 | Network Appliance, Inc. | Method and apparatus to mirror data at two separate sites without comparing the data at the two sites |
US7596672B1 (en) | 2003-10-24 | 2009-09-29 | Network Appliance, Inc. | Synchronous mirroring including writing image updates to a file |
WO2005045619A2 (en) * | 2003-10-31 | 2005-05-19 | Landmark Technology Partners, Inc. | Intelligent client architecture computer system and method |
US7137033B2 (en) * | 2003-11-20 | 2006-11-14 | International Business Machines Corporation | Method, system, and program for synchronizing subtasks using sequence numbers |
JP2005157521A (ja) * | 2003-11-21 | 2005-06-16 | Hitachi Ltd | 遠隔記憶装置の状態情報監視方法および記憶サブシステム |
JP4412989B2 (ja) * | 2003-12-15 | 2010-02-10 | 株式会社日立製作所 | 複数の記憶システムを有するデータ処理システム |
US8589513B1 (en) * | 2003-12-23 | 2013-11-19 | Emc Corporation | Remote mirroring of group name services |
JP4512386B2 (ja) * | 2004-03-05 | 2010-07-28 | 株式会社日立製作所 | バックアップシステムおよび方法 |
JP2005258850A (ja) | 2004-03-12 | 2005-09-22 | Hitachi Ltd | 計算機システム |
JP4563725B2 (ja) * | 2004-05-17 | 2010-10-13 | 株式会社日立製作所 | 計算機システム |
US7383462B2 (en) * | 2004-07-02 | 2008-06-03 | Hitachi, Ltd. | Method and apparatus for encrypted remote copy for secure data backup and restoration |
US7284150B2 (en) * | 2004-09-22 | 2007-10-16 | International Business Machines Corporation | System and method for reliably storing data and providing efficient incremental backup and asynchronous mirroring by preferentially handling new data |
JP4376750B2 (ja) * | 2004-10-14 | 2009-12-02 | 株式会社日立製作所 | 計算機システム |
US20060182050A1 (en) * | 2005-01-28 | 2006-08-17 | Hewlett-Packard Development Company, L.P. | Storage replication system with data tracking |
US7519851B2 (en) * | 2005-02-08 | 2009-04-14 | Hitachi, Ltd. | Apparatus for replicating volumes between heterogenous storage systems |
US8010498B2 (en) * | 2005-04-08 | 2011-08-30 | Microsoft Corporation | Virtually infinite reliable storage across multiple storage devices and storage services |
US20060230245A1 (en) * | 2005-04-08 | 2006-10-12 | Microsoft Corporation | Data storage safety indicator and expander |
JP2006309506A (ja) | 2005-04-28 | 2006-11-09 | Fujitsu Ltd | リモートコピー処理方法、プログラム及び装置 |
US7681074B2 (en) * | 2005-04-29 | 2010-03-16 | Microsoft Corporation | Transport high availability |
US7634514B2 (en) * | 2005-05-09 | 2009-12-15 | Microsoft Corporation | Synchronizing file system directories |
US7440984B2 (en) * | 2005-06-28 | 2008-10-21 | International Business Machines Corporation | Reconciliation of local and remote backup data |
US7600149B2 (en) * | 2005-09-20 | 2009-10-06 | International Business Machines Corporation | Failure transparency for update applications under single-master configuration |
US20070094336A1 (en) * | 2005-10-24 | 2007-04-26 | Microsoft Corporation | Asynchronous server synchronously storing persistent data batches |
US7921165B2 (en) * | 2005-11-30 | 2011-04-05 | Microsoft Corporation | Retaining mail for availability after relay |
JP5044638B2 (ja) * | 2006-03-30 | 2012-10-10 | エヌエイチエヌ コーポレーション | サーバーミラーリング方法及びそのシステム |
US8078728B1 (en) | 2006-03-31 | 2011-12-13 | Quest Software, Inc. | Capacity pooling for application reservation and delivery |
US7376805B2 (en) * | 2006-04-21 | 2008-05-20 | Hewlett-Packard Development Company, L.P. | Distributed storage array |
JP4887893B2 (ja) * | 2006-04-26 | 2012-02-29 | 株式会社日立製作所 | 計算機システム及び計算機システムの制御方法 |
JP2007310448A (ja) * | 2006-05-16 | 2007-11-29 | Hitachi Ltd | 計算機システム、管理計算機、および、ストレージシステム管理方法 |
US8010509B1 (en) * | 2006-06-30 | 2011-08-30 | Netapp, Inc. | System and method for verifying and correcting the consistency of mirrored data sets |
US20090248744A1 (en) * | 2006-07-17 | 2009-10-01 | Kika Medical | Transactional storage system for healthcare information |
US7587628B2 (en) * | 2006-09-20 | 2009-09-08 | International Business Machines Corporation | System, method and computer program product for copying data |
US7650476B2 (en) * | 2006-10-18 | 2010-01-19 | International Business Machines Corporation | System, method and computer program product for generating a consistent point in time copy of data |
US20080109804A1 (en) * | 2006-11-06 | 2008-05-08 | Richard Welcher Bloomstein | Additional uses of virtualization for disaster recovery and prevention |
US7647463B2 (en) * | 2006-11-16 | 2010-01-12 | International Business Machines Corporation | Apparatus, system and method for detection of mismatches in continuous remote copy using metadata |
US7779291B2 (en) * | 2006-12-29 | 2010-08-17 | Emc Corporation | Four site triangular asynchronous replication |
US7734884B1 (en) | 2006-12-29 | 2010-06-08 | Emc Corporation | Simultaneous concurrent and cascaded triangular asynchronous replication |
US9293032B2 (en) * | 2006-12-29 | 2016-03-22 | Echostar Technologies L.L.C. | Two-way communication for control of an entertainment device |
US7752404B2 (en) * | 2006-12-29 | 2010-07-06 | Emc Corporation | Toggling between concurrent and cascaded triangular asynchronous replication |
US7680997B1 (en) | 2006-12-29 | 2010-03-16 | Emc Corporation | Data recovery simulation |
US7702953B2 (en) * | 2007-01-04 | 2010-04-20 | International Business Machines Corporation | Storage management in cascaded replication of data |
US9889239B2 (en) | 2007-03-23 | 2018-02-13 | Allegiance Corporation | Fluid collection and disposal system and related methods |
AU2008232361B2 (en) | 2007-03-23 | 2013-05-16 | Allegiance Corporation | Fluid collection and disposal system and related methods |
US7751398B1 (en) * | 2007-03-28 | 2010-07-06 | Emc Corporation | Techniques for prioritization of messaging traffic |
US7747770B1 (en) * | 2007-03-28 | 2010-06-29 | Amazon Technologies, Inc. | Protocol for managing information |
US7756995B1 (en) | 2007-03-28 | 2010-07-13 | Amazon Technologies, Inc. | Regulating transmission rates |
US8001307B1 (en) | 2007-04-27 | 2011-08-16 | Network Appliance, Inc. | Apparatus and a method to eliminate deadlock in a bi-directionally mirrored data storage system |
US8145976B1 (en) | 2007-05-14 | 2012-03-27 | Marvell International Ltd. | Error correcting |
US8028090B2 (en) | 2008-11-17 | 2011-09-27 | Amazon Technologies, Inc. | Request routing utilizing client location information |
US7991910B2 (en) | 2008-11-17 | 2011-08-02 | Amazon Technologies, Inc. | Updating routing information based on client location |
US8301791B2 (en) * | 2007-07-26 | 2012-10-30 | Netapp, Inc. | System and method for non-disruptive check of a mirror |
US7861049B2 (en) * | 2007-11-19 | 2010-12-28 | Hitachi, Ltd. | Methods and apparatus for archiving digital data |
US8194674B1 (en) | 2007-12-20 | 2012-06-05 | Quest Software, Inc. | System and method for aggregating communications and for translating between overlapping internal network addresses and unique external network addresses |
US8156415B1 (en) * | 2007-12-26 | 2012-04-10 | Marvell International Ltd. | Method and system for command queuing in disk drives |
US10572188B2 (en) * | 2008-01-12 | 2020-02-25 | Hewlett Packard Enterprise Development Lp | Server-embedded distributed storage system |
US7962597B2 (en) | 2008-03-31 | 2011-06-14 | Amazon Technologies, Inc. | Request routing based on class |
US8447831B1 (en) | 2008-03-31 | 2013-05-21 | Amazon Technologies, Inc. | Incentive driven content delivery |
US8601090B1 (en) | 2008-03-31 | 2013-12-03 | Amazon Technologies, Inc. | Network resource identification |
US8321568B2 (en) | 2008-03-31 | 2012-11-27 | Amazon Technologies, Inc. | Content management |
US8606996B2 (en) | 2008-03-31 | 2013-12-10 | Amazon Technologies, Inc. | Cache optimization |
US7970820B1 (en) | 2008-03-31 | 2011-06-28 | Amazon Technologies, Inc. | Locality based content distribution |
US8370717B1 (en) | 2008-04-08 | 2013-02-05 | Marvell International Ltd. | Method and apparatus for flexible buffers in an XOR engine |
US8437744B1 (en) * | 2008-04-23 | 2013-05-07 | Zerotouchdigital, Inc. | Methods and devices for remote processing of information originating from a mobile communication device |
US9407681B1 (en) | 2010-09-28 | 2016-08-02 | Amazon Technologies, Inc. | Latency measurement in resource requests |
JP4774085B2 (ja) | 2008-07-31 | 2011-09-14 | 富士通株式会社 | ストレージシステム |
US7962780B2 (en) * | 2008-08-22 | 2011-06-14 | International Business Machines Corporation | Command sequence numbering apparatus and method |
US8671081B2 (en) * | 2008-09-18 | 2014-03-11 | Sap Ag | Data processing systems and methods to ensure the consistency of data |
US8122098B1 (en) | 2008-11-17 | 2012-02-21 | Amazon Technologies, Inc. | Managing content delivery network service providers by a content broker |
US8073940B1 (en) | 2008-11-17 | 2011-12-06 | Amazon Technologies, Inc. | Managing content delivery network service providers |
US9569349B2 (en) * | 2008-12-19 | 2017-02-14 | Ati Technologies Ulc | Method and apparatus for reallocating memory content |
US8688837B1 (en) | 2009-03-27 | 2014-04-01 | Amazon Technologies, Inc. | Dynamically translating resource identifiers for request routing using popularity information |
US8412823B1 (en) | 2009-03-27 | 2013-04-02 | Amazon Technologies, Inc. | Managing tracking information entries in resource cache components |
US8756341B1 (en) | 2009-03-27 | 2014-06-17 | Amazon Technologies, Inc. | Request routing utilizing popularity information |
US8782236B1 (en) | 2009-06-16 | 2014-07-15 | Amazon Technologies, Inc. | Managing resources using resource expiration data |
JP4951652B2 (ja) * | 2009-06-24 | 2012-06-13 | 株式会社日立製作所 | コンピュータシステムのリモートコピー方法及びコンピュータシステム |
US20110004718A1 (en) * | 2009-07-02 | 2011-01-06 | Ross John Stenfort | System, method, and computer program product for ordering a plurality of write commands associated with a storage device |
WO2011008961A1 (en) | 2009-07-15 | 2011-01-20 | Allegiance Corporation | Fluid collection and disposal system and related methods |
JP4871980B2 (ja) * | 2009-08-10 | 2012-02-08 | 株式会社日立製作所 | データ処理方法とデータ処理プログラムおよびデータ処理システム |
WO2011026661A1 (en) | 2009-09-03 | 2011-03-10 | International Business Machines Corporation | Shared-bandwidth multiple target remote copy |
US8397073B1 (en) | 2009-09-04 | 2013-03-12 | Amazon Technologies, Inc. | Managing secure content in a content delivery network |
US8433771B1 (en) * | 2009-10-02 | 2013-04-30 | Amazon Technologies, Inc. | Distribution network with forward resource propagation |
WO2011083507A1 (en) * | 2010-01-05 | 2011-07-14 | Hitachi,Ltd. | Replication system and its control method |
US8862816B2 (en) * | 2010-01-28 | 2014-10-14 | International Business Machines Corporation | Mirroring multiple writeable storage arrays |
US9495338B1 (en) | 2010-01-28 | 2016-11-15 | Amazon Technologies, Inc. | Content distribution network |
US20110231602A1 (en) * | 2010-03-19 | 2011-09-22 | Harold Woods | Non-disruptive disk ownership change in distributed storage systems |
US8375004B2 (en) | 2010-04-07 | 2013-02-12 | Hitachi, Ltd. | Asynchronous remote copy system and storage control method |
KR101635030B1 (ko) * | 2010-07-08 | 2016-07-01 | 엘지전자 주식회사 | 데이터 동기화 방법 및 이를 이용하는 이동 단말기 |
US10958501B1 (en) | 2010-09-28 | 2021-03-23 | Amazon Technologies, Inc. | Request routing information based on client IP groupings |
US10097398B1 (en) | 2010-09-28 | 2018-10-09 | Amazon Technologies, Inc. | Point of presence management in request routing |
US8468247B1 (en) | 2010-09-28 | 2013-06-18 | Amazon Technologies, Inc. | Point of presence management in request routing |
US9712484B1 (en) | 2010-09-28 | 2017-07-18 | Amazon Technologies, Inc. | Managing request routing information utilizing client identifiers |
US9003035B1 (en) | 2010-09-28 | 2015-04-07 | Amazon Technologies, Inc. | Point of presence management in request routing |
US8452874B2 (en) | 2010-11-22 | 2013-05-28 | Amazon Technologies, Inc. | Request routing processing |
US10467042B1 (en) | 2011-04-27 | 2019-11-05 | Amazon Technologies, Inc. | Optimized deployment based upon customer locality |
US8909996B2 (en) | 2011-08-12 | 2014-12-09 | Oracle International Corporation | Utilizing multiple storage devices to reduce write latency for database logging |
US10623408B1 (en) | 2012-04-02 | 2020-04-14 | Amazon Technologies, Inc. | Context sensitive object management |
US9154551B1 (en) | 2012-06-11 | 2015-10-06 | Amazon Technologies, Inc. | Processing DNS queries to identify pre-processing information |
US9323577B2 (en) | 2012-09-20 | 2016-04-26 | Amazon Technologies, Inc. | Automated profiling of resource usage |
US10205698B1 (en) | 2012-12-19 | 2019-02-12 | Amazon Technologies, Inc. | Source-dependent address resolution |
US9811432B2 (en) | 2013-03-04 | 2017-11-07 | Netapp, Inc. | Systems and methods for resynchronizing mirroring partners in a storage system |
US9294391B1 (en) | 2013-06-04 | 2016-03-22 | Amazon Technologies, Inc. | Managing network computing components utilizing request routing |
US9838346B2 (en) | 2014-03-17 | 2017-12-05 | Splunk Inc. | Alerting on dual-queue systems |
US9838467B2 (en) * | 2014-03-17 | 2017-12-05 | Splunk Inc. | Dynamically instantiating dual-queue systems |
US9753818B2 (en) | 2014-09-19 | 2017-09-05 | Splunk Inc. | Data forwarding using multiple data pipelines |
US9836358B2 (en) * | 2014-03-17 | 2017-12-05 | Splunk Inc. | Ephemeral remote data store for dual-queue systems |
US9660930B2 (en) | 2014-03-17 | 2017-05-23 | Splunk Inc. | Dynamic data server nodes |
US10339010B1 (en) * | 2014-04-05 | 2019-07-02 | Bruce Talley | Systems and methods for synchronization of backup copies |
US10097448B1 (en) | 2014-12-18 | 2018-10-09 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10091096B1 (en) | 2014-12-18 | 2018-10-02 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10033627B1 (en) | 2014-12-18 | 2018-07-24 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US20180107728A1 (en) * | 2014-12-31 | 2018-04-19 | International Business Machines Corporation | Using tombstone objects to synchronize deletes |
US20180107535A1 (en) * | 2014-12-31 | 2018-04-19 | International Business Machines Corporation | Vault redundancy reduction within a dispersed storage network |
US20180101434A1 (en) * | 2014-12-31 | 2018-04-12 | International Business Machines Corporation | Listing types in a distributed storage system |
US10656866B2 (en) * | 2014-12-31 | 2020-05-19 | Pure Storage, Inc. | Unidirectional vault synchronization to support tiering |
US10225326B1 (en) | 2015-03-23 | 2019-03-05 | Amazon Technologies, Inc. | Point of presence based data uploading |
US9819567B1 (en) | 2015-03-30 | 2017-11-14 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9832141B1 (en) | 2015-05-13 | 2017-11-28 | Amazon Technologies, Inc. | Routing based request correlation |
US10097566B1 (en) | 2015-07-31 | 2018-10-09 | Amazon Technologies, Inc. | Identifying targets of network attacks |
US9774619B1 (en) | 2015-09-24 | 2017-09-26 | Amazon Technologies, Inc. | Mitigating network attacks |
US10270878B1 (en) | 2015-11-10 | 2019-04-23 | Amazon Technologies, Inc. | Routing for origin-facing points of presence |
US10257307B1 (en) | 2015-12-11 | 2019-04-09 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
US10049051B1 (en) | 2015-12-11 | 2018-08-14 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
US10348639B2 (en) | 2015-12-18 | 2019-07-09 | Amazon Technologies, Inc. | Use of virtual endpoints to improve data transmission rates |
US10055807B2 (en) | 2016-03-02 | 2018-08-21 | Samsung Electronics Co., Ltd. | Hardware architecture for acceleration of computer vision and imaging processing |
US10075551B1 (en) | 2016-06-06 | 2018-09-11 | Amazon Technologies, Inc. | Request management for hierarchical cache |
US10110694B1 (en) | 2016-06-29 | 2018-10-23 | Amazon Technologies, Inc. | Adaptive transfer rate for retrieving content from a server |
US9992086B1 (en) | 2016-08-23 | 2018-06-05 | Amazon Technologies, Inc. | External health checking of virtual private cloud network environments |
US10033691B1 (en) | 2016-08-24 | 2018-07-24 | Amazon Technologies, Inc. | Adaptive resolution of domain name requests in virtual private cloud network environments |
US10515671B2 (en) | 2016-09-22 | 2019-12-24 | Advanced Micro Devices, Inc. | Method and apparatus for reducing memory access latency |
US10469513B2 (en) | 2016-10-05 | 2019-11-05 | Amazon Technologies, Inc. | Encrypted network addresses |
US10831549B1 (en) | 2016-12-27 | 2020-11-10 | Amazon Technologies, Inc. | Multi-region request-driven code execution system |
US10372499B1 (en) | 2016-12-27 | 2019-08-06 | Amazon Technologies, Inc. | Efficient region selection system for executing request-driven code |
US10938884B1 (en) | 2017-01-30 | 2021-03-02 | Amazon Technologies, Inc. | Origin server cloaking using virtual private cloud network environments |
US10394468B2 (en) * | 2017-02-23 | 2019-08-27 | International Business Machines Corporation | Handling data slice revisions in a dispersed storage network |
US11410754B2 (en) * | 2017-03-31 | 2022-08-09 | Konica Minolta Healthcare Americas, Inc. | Cloud-to-local, local-to-cloud switching and synchronization of medical images and data |
US10503613B1 (en) | 2017-04-21 | 2019-12-10 | Amazon Technologies, Inc. | Efficient serving of resources during server unavailability |
US11075987B1 (en) | 2017-06-12 | 2021-07-27 | Amazon Technologies, Inc. | Load estimating content delivery network |
US10447648B2 (en) | 2017-06-19 | 2019-10-15 | Amazon Technologies, Inc. | Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP |
US10742593B1 (en) | 2017-09-25 | 2020-08-11 | Amazon Technologies, Inc. | Hybrid content request routing system |
US10592164B2 (en) | 2017-11-14 | 2020-03-17 | International Business Machines Corporation | Portions of configuration state registers in-memory |
US10558366B2 (en) | 2017-11-14 | 2020-02-11 | International Business Machines Corporation | Automatic pinning of units of memory |
US10664181B2 (en) | 2017-11-14 | 2020-05-26 | International Business Machines Corporation | Protecting in-memory configuration state registers |
US10901738B2 (en) | 2017-11-14 | 2021-01-26 | International Business Machines Corporation | Bulk store and load operations of configuration state registers |
US10635602B2 (en) | 2017-11-14 | 2020-04-28 | International Business Machines Corporation | Address translation prior to receiving a storage reference using the address to be translated |
US10642757B2 (en) | 2017-11-14 | 2020-05-05 | International Business Machines Corporation | Single call to perform pin and unpin operations |
US10698686B2 (en) | 2017-11-14 | 2020-06-30 | International Business Machines Corporation | Configurable architectural placement control |
US10761983B2 (en) * | 2017-11-14 | 2020-09-01 | International Business Machines Corporation | Memory based configuration state registers |
US10761751B2 (en) | 2017-11-14 | 2020-09-01 | International Business Machines Corporation | Configuration state registers grouped based on functional affinity |
US10496437B2 (en) | 2017-11-14 | 2019-12-03 | International Business Machines Corporation | Context switch by changing memory pointers |
US10592578B1 (en) | 2018-03-07 | 2020-03-17 | Amazon Technologies, Inc. | Predictive content push-enabled content delivery network |
US11119662B2 (en) * | 2018-06-29 | 2021-09-14 | International Business Machines Corporation | Determining when to perform a data integrity check of copies of a data set using a machine learning module |
US11119850B2 (en) | 2018-06-29 | 2021-09-14 | International Business Machines Corporation | Determining when to perform error checking of a storage unit by using a machine learning module |
US11099743B2 (en) | 2018-06-29 | 2021-08-24 | International Business Machines Corporation | Determining when to replace a storage device using a machine learning module |
US10862852B1 (en) | 2018-11-16 | 2020-12-08 | Amazon Technologies, Inc. | Resolution of domain name requests in heterogeneous network environments |
US11025747B1 (en) | 2018-12-12 | 2021-06-01 | Amazon Technologies, Inc. | Content request pattern-based routing system |
US11593026B2 (en) | 2020-03-06 | 2023-02-28 | International Business Machines Corporation | Zone storage optimization using predictive protocol patterns |
CN115080311B (zh) * | 2022-07-01 | 2023-01-24 | 深圳美克拉网络技术有限公司 | 一种大数据的信息化远程控制方法及装置 |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5544347A (en) | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
US5432922A (en) * | 1993-08-23 | 1995-07-11 | International Business Machines Corporation | Digital storage system and method having alternating deferred updating of mirrored storage disks |
US6304980B1 (en) | 1996-03-13 | 2001-10-16 | International Business Machines Corporation | Peer-to-peer backup system with failure-triggered device switching honoring reservation of primary device |
US5870537A (en) | 1996-03-13 | 1999-02-09 | International Business Machines Corporation | Concurrent switch to shadowed device for storage controller and device errors |
US5852715A (en) | 1996-03-19 | 1998-12-22 | Emc Corporation | System for currently updating database by one host and reading the database by different host for the purpose of implementing decision support functions |
US5889935A (en) | 1996-05-28 | 1999-03-30 | Emc Corporation | Disaster control features for remote data mirroring |
US6052797A (en) | 1996-05-28 | 2000-04-18 | Emc Corporation | Remotely mirrored data storage system with a count indicative of data consistency |
US5673382A (en) * | 1996-05-30 | 1997-09-30 | International Business Machines Corporation | Automated management of off-site storage volumes for disaster recovery |
US6092066A (en) * | 1996-05-31 | 2000-07-18 | Emc Corporation | Method and apparatus for independent operation of a remote data facility |
JP2001514778A (ja) * | 1997-03-13 | 2001-09-11 | マーク・エム・ホイットニー | メッセージ・キューイング・ファシリティを含むネットワーク・トランザクションをメインフレームからインテリジェントな入出力装置にオフロードするシステム及び方法 |
US6073209A (en) | 1997-03-31 | 2000-06-06 | Ark Research Corporation | Data storage controller providing multiple hosts with access to multiple storage subsystems |
US6088740A (en) * | 1997-08-05 | 2000-07-11 | Adaptec, Inc. | Command queuing system for a hardware accelerated command interpreter engine |
US6199074B1 (en) | 1997-10-09 | 2001-03-06 | International Business Machines Corporation | Database backup system ensuring consistency between primary and mirrored backup database copies despite backup interruption |
US6304881B1 (en) | 1998-03-03 | 2001-10-16 | Pumatech, Inc. | Remote data access and synchronization |
US6157991A (en) | 1998-04-01 | 2000-12-05 | Emc Corporation | Method and apparatus for asynchronously updating a mirror of a source device |
US6189079B1 (en) | 1998-05-22 | 2001-02-13 | International Business Machines Corporation | Data copy between peer-to-peer controllers |
JP2000020366A (ja) | 1998-07-06 | 2000-01-21 | Hitachi Ltd | レプリケーションシステム |
US6260124B1 (en) | 1998-08-13 | 2001-07-10 | International Business Machines Corporation | System and method for dynamically resynchronizing backup data |
US6308284B1 (en) | 1998-08-28 | 2001-10-23 | Emc Corporation | Method and apparatus for maintaining data coherency |
JP3578385B2 (ja) | 1998-10-22 | 2004-10-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピュータ、及びレプリカ同一性保持方法 |
US6529944B1 (en) * | 1999-01-06 | 2003-03-04 | Emc Corporation | Host system for remote control of mass storage volumes using cascading commands |
US6209002B1 (en) * | 1999-02-17 | 2001-03-27 | Emc Corporation | Method and apparatus for cascading data through redundant data storage units |
US6247099B1 (en) * | 1999-06-03 | 2001-06-12 | International Business Machines Corporation | System and method for maintaining cache coherency and data synchronization in a computer system having multiple active controllers |
US6671705B1 (en) | 1999-08-17 | 2003-12-30 | Emc Corporation | Remote mirroring system, device, and method |
US6877044B2 (en) * | 2000-02-10 | 2005-04-05 | Vicom Systems, Inc. | Distributed storage management platform architecture |
US7065538B2 (en) * | 2000-02-11 | 2006-06-20 | Quest Software, Inc. | System and method for reconciling transactions between a replication system and a recovered database |
US6643795B1 (en) * | 2000-03-30 | 2003-11-04 | Hewlett-Packard Development Company, L.P. | Controller-based bi-directional remote copy system with storage site failover capability |
US6480970B1 (en) * | 2000-05-17 | 2002-11-12 | Lsi Logic Corporation | Method of verifying data consistency between local and remote mirrored data storage systems |
US6665780B1 (en) * | 2000-10-06 | 2003-12-16 | Radiant Data Corporation | N-way data mirroring systems and methods for using the same |
US6691245B1 (en) * | 2000-10-10 | 2004-02-10 | Lsi Logic Corporation | Data storage with host-initiated synchronization and fail-over of remote mirror |
US6728736B2 (en) * | 2001-03-14 | 2004-04-27 | Storage Technology Corporation | System and method for synchronizing a data copy using an accumulation remote copy trio |
US7139885B2 (en) * | 2001-12-27 | 2006-11-21 | Hitachi, Ltd. | Method and apparatus for managing storage based replication |
-
2002
- 2002-01-03 US US10/042,376 patent/US6745303B2/en not_active Expired - Lifetime
- 2002-12-20 JP JP2002369171A patent/JP4325836B2/ja not_active Expired - Fee Related
-
2004
- 2004-04-26 US US10/832,839 patent/US7234033B2/en not_active Expired - Lifetime
-
2007
- 2007-06-05 US US11/810,463 patent/US7698521B2/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230266956A1 (en) * | 2020-09-11 | 2023-08-24 | Inspur Suzhou Intelligent Technology Co., Ltd. | Method and apparatus for processing mirror images of ai platform |
Also Published As
Publication number | Publication date |
---|---|
US7698521B2 (en) | 2010-04-13 |
JP2003263280A (ja) | 2003-09-19 |
US6745303B2 (en) | 2004-06-01 |
US20040205309A1 (en) | 2004-10-14 |
US20030126387A1 (en) | 2003-07-03 |
US7234033B2 (en) | 2007-06-19 |
US20070239934A1 (en) | 2007-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4325836B2 (ja) | 複数リモートストレージのデータ同期方式 | |
US8108486B2 (en) | Remote copy system | |
US7139932B2 (en) | Data synchronization of multiple remote storage after remote copy suspension | |
JP2576847B2 (ja) | 記憶制御装置及び関連する方法 | |
US7225307B2 (en) | Apparatus, system, and method for synchronizing an asynchronous mirror volume using a synchronous mirror volume | |
JP2894676B2 (ja) | 非同期式遠隔コピー・システム及び非同期式遠隔コピー方法 | |
US7562103B2 (en) | Disaster recovery processing method and apparatus and storage unit for the same | |
JP5217967B2 (ja) | 故障ノード切り離し処理プログラム、故障ノード切り離し方法及びストレージシステム | |
US7600087B2 (en) | Distributed remote copy system | |
US6363462B1 (en) | Storage controller providing automatic retention and deletion of synchronous back-up data | |
JP2008515112A (ja) | 仮想順序付け書き込み | |
EP1569120A1 (en) | Computer system for recovering data based on priority of the data | |
US20090249116A1 (en) | Managing writes received to data units that are being transferred to a secondary storage as part of a mirror relationship | |
JP2002259063A (ja) | バックアップ処理可能な記憶システム | |
JPH076099A (ja) | リモート・データの2重化のためのシステム及び方法 | |
JP2002149499A (ja) | データの完全性を備えるリモートコピーシステム | |
JP2003521037A (ja) | ブリッジ・ボリュームによる一次記憶システムと二次記憶システムとの間でデータを転送するための方法及びその装置 | |
JP4452494B2 (ja) | 複数リモートストレージでのリモートコピー停止後のデータ同期化方式 | |
JP2004272884A5 (ja) | ||
JP2006107450A (ja) | トライアングル非同期複製(triangularasynchronousreplication) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051209 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051209 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20051209 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20061023 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080731 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080821 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081017 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081218 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090209 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20090219 |
|
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: 20090603 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090604 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120619 Year of fee payment: 3 |
|
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: 20120619 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130619 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |