JP2003507791A - 遠隔ミラーリングシステム、装置及び方法 - Google Patents

遠隔ミラーリングシステム、装置及び方法

Info

Publication number
JP2003507791A
JP2003507791A JP2001517262A JP2001517262A JP2003507791A JP 2003507791 A JP2003507791 A JP 2003507791A JP 2001517262 A JP2001517262 A JP 2001517262A JP 2001517262 A JP2001517262 A JP 2001517262A JP 2003507791 A JP2003507791 A JP 2003507791A
Authority
JP
Japan
Prior art keywords
image
slave
write
master
log
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2001517262A
Other languages
English (en)
Other versions
JP4430846B2 (ja
Inventor
デュプレイ、デニス
ルコブスキー、ジェフリー
ロア、ギラーモ
Original Assignee
イーエムシー コーポレーション
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 イーエムシー コーポレーション filed Critical イーエムシー コーポレーション
Publication of JP2003507791A publication Critical patent/JP2003507791A/ja
Application granted granted Critical
Publication of JP4430846B2 publication Critical patent/JP4430846B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2082Data synchronisation
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2058Error 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
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2071Error 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/2074Asynchronous techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/855Details of asynchronous mirroring using a journal to transfer not-yet-mirrored changes
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99955Archiving or backup

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)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 遠隔ミラーリングシステム、装置および方法において、マスタ記憶ユニットは、ログに情報を格納して、マスタ記憶ユニット内で誤動作(a failure)をフォローするスレーブイメージに再同期させるように該ログからの情報をす速く利用する。ホストから書込みリクエストを受信することで、マスタ記憶ユニットは、該ログに書込みエントリーを記憶する。前記書込みエントリーは、前記書込みリクエストによって前記マスタイメージから同期しないかもしれない前記スレーブイメージの一部を識別する情報を組み入れる。前記マスタ記憶ユニットは、それから前記マスタイメージと前記スレーブイメージを更新する手続きをする。前記ログは、前記誤動作にもかかわらず(through the failure)保護され、その結果、前記ログが、前記誤動作(the failure)からの回復によって前記マスタ記憶ユニットにとって利用可能にとなる。前記マスタ記憶ユニットが、前記誤動作(the failure)をフォローして、活動中である時、前記マスタ記憶ユニットは、前記スレーブイメージに対して前記ログで指摘される前記マスタイメージのそれらの部分を複写することによって前記マスタイメージに前記スレーブイメージに再同期させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】
本発明は概略コンピュータ記憶装置システムに関し、より詳細には、分配され
たコンピュータ記憶装置システムにおける遠隔ミラーリングに関する。
【0002】
【従来の技術】
通常のコンピュータシステム・アーキテクチャでは、ホストコンピューターは
、前記ホストコンピューター用に不揮発性記憶装置を提供するコンピュータ記憶
システムに接続される。とりわけ、前記コンピュータ記憶システムは、たくさん
の相互接続する記憶ユニットを包含する。各記憶ユニットは、たくさんの物理的
または論理的記憶媒体(たとえばディスクアレイ)を含む。便宜上、単一の仮想
ディスクを構成するために論理的に接続される一つ以上の物理的ディスクの群は
、以下に「論理ユニット」(LU)と呼ぶ。前記ホストコンピューターからのデー
タは、前記コンピュータ記憶システムにおいて、そして、特に前記コンピュータ
記憶システムの内部で前記多様な記憶ユニットにおいて格納される。
【0003】
【発明が解決しようとする課題】
コンピュータ記憶システムにおける1つの問題は、たとえば、メンテナンス、
修復または一つ以上の記憶ユニットの明白な誤動作(不良failure)に起因する
、データロス、または、利用不可能性(unavailability)である。そのようなデ
ータロスまたは利用不可能性(unavailability)を防止するために、前記ホスト
・データのコピーが、物理的に別個の記憶ユニットにおいて作動される複数の記
憶ユニットに頻繁に記憶される。便宜上、物理的に別個の記憶ユニットで前記ホ
スト・データを多重コピーする前記実行は、「遠隔ミラーリング(”remote mir
roring”)」と呼ばれる。もう一つの記憶ユニットでの前記ホスト・データが利
用できないか、損壊したとき、遠隔ミラーリングは、前記ホスト・データが前記
記憶ユニットのうちの1つからすぐに読み出されることを許容する。
【0004】 したがって、コンピュータ記憶システムにおいてデータロスまたは利用不能の
前記可能性を減軽するために、「遠隔ミラー」(または単に「ミラー」)は、複
数イメージを処理するために設置される。各イメージは一つ以上のLUから成る。
そして、それは以下において一纏めにして「LU アレー・セット(Array Set)」
と呼ぶ。前記コンピュータ記憶システムが同時にマルチプル・ミラーを維持する
かもしれない点に注意すべきである。そこでは、各ミラーは異なるイメージセッ
ト(a different set of images)を処理する。
【0005】 特定のミラーの範囲内で、1つのイメージは、マスタイメージとして指定され
、他方、前記ミラーの範囲内のその他のイメージは、各々、スレーブイメージと
して指定される。便宜上、スレーブイメージを保持する記憶ユニットが以下に「
スレーブ記憶ユニット」と呼ばれる一方、前記マスタイメージを保持する前記記
憶ユニットは、以下に前記「マスタ記憶ユニット」と呼ばれる。マルチプル・ミ
ラーを補佐する記憶ユニットが、一つのミラーのために1つのマスタミラーとし
て、もう一つのミラーのためにスレーブ記憶ユニットとして動作するかもしれな
い点に注意すべきである。
【0006】 前記マスタ記憶ユニットでの前記ホスト・データが利用できないか、破壊した
とき、前記ホスト・データが前記スレーブ記憶ユニットのうちの1つからすぐに
読み出されることができるように、ミラーがデータの利用可能性を提供するため
には、前記スレーブイメージの全てが前記マスタイメージと同じ前記情報を包含
するように、前記スレーブイメージの全部が前記マスタイメージで同期すること
は、肝要である。前記スレーブイメージの同期は、前記マスタ記憶ユニットによ
ってコーディネートされる。
【0007】 標準動作条件の下で、前記ホストは、前記マスタ記憶ユニットにホスト・デー
タを書き込む。そのマスタ記憶ユニットは、前記マスタイメージにおいて前記ホ
スト計算機データを記憶して、そのうえ前記ミラーの各スレーブ記憶ユニットへ
前記ホスト計算機データのコピーを書き込み、各スレーブ記憶ユニットがそのス
レーブイメージにおいて前記ホスト計算機データを受信し、記憶することを確か
めるために全てのデータ記憶操作をコーディネートする。前記ミラーで各スレー
ブ記憶ユニットに前記ホスト計算機データの前記コピーを書き込むための前記デ
ータ記憶操作は、同期方法か非同期方法のどちらでも行使されることができる。
同期遠隔ミラーリングで、前記マスタ記憶ユニットは、前記ホスト計算機データ
が前記ホスト計算機に肯定応答を送る前に前記ミラーにおいて全てのスレーブ記
憶ユニットにうまく書き込まれたことを保証する。そしてその肯定応答は、比較
的高い呼び出し時間で終わるが、全てのスレーブが前記書込み操作が完全である
前記ホスト計算機に知らせる前に更新されることを確実にする。非同期遠隔ミラ
ーリングにおいて、前記マスタ記憶ユニットは、前記ホスト計算機データが前記
ミラーで全てのスレーブ記憶ユニットにうまく書き込まれたことを確認する前に
前記ホスト計算機に肯定応答通報を送る。そして、その肯定応答は、比較的低い
呼び出し時間で終わるが、全てのスレーブが、前記書込み操作が完結しているこ
とを前記ホスト計算機に知らせる前に更新されることを保証しない。
【0008】 同期及び非同期遠隔ミラーリングの双方において、前記マスタ記憶ユニットが
前記ホスト計算機からの書込みリクエストを受信して及び前記マスタイメージ及
び前記スレーブイメージの全てを更新する間においてそのうち動かなくなること
は、ありうる。前記マスタ記憶ユニットは、たとえば、前記マスタ記憶ユニット
におけるアクチュアルハードウェアまたはソフトウェアの不良または予想外の電
源異常に起因して動かなくなるかもしれない。前記マスタ記憶ユニットが前記不
良の時点で一つ以上の書込み操作を完了する前記過程にあるならば、前記マスタ
記憶ユニットは、どんなイメージも更新しなかったかもしれないし、スレーブ・
イメージ以外の前記マスタ・イメージを更新したかもしれないがどのスレーブ・
イメージも更新しなかったかもしれず、前記マスタ・イメージ及び前記スレーブ
・イメージの一部を更新したかもしれないが、どんな特定の書込み操作に対して
も前記マスタ・イメージおよび前記スレーブ・イメージの全部を更新したかもし
れない。さらに、前記マスタ記憶ユニットは、前記不良に先立ち特定の書込みリ
クエストを承認するかもしれないが、承認しないかもしれない。
【0009】 前記不良(the failure)の後、マスタ記憶ユニットが、各スレーブ・イメー
ジのステータス、及び、具体的には、特定のスレーブ・イメージが前記マスタイ
メージと一致するかどうかを決定することは、出来ないかもしれない。したがっ
て、前記マスタ記憶ユニットは、前記マスタ・イメージをブロックごとに前記ス
レーブ記憶ユニットの各々へコピーすることによって典型的には前記スレーブ・
イメージの全てに再同期させる。これは、前記マスタ・イメージへ前記スレーブ
・イメージを同期させるが、特定の書込みリクエストが完了されたことを保証し
ない。残念なことに、前記全体のマスタ・イメージを全てのスレーブ記憶ユニッ
トへコピーすることは、前記イメージサイズ、スレーブ記憶ユニットの数及びそ
の他の要素に従い相当量の時間を必要とすることになる。そのような再同期が、
特に非常に大きいイメージに対し完了するために相当な時間を必要とすることは
、珍しくない。
【0010】 このように、不良をフォローするスレーブ・イメージにすばやく再同期させる
ためのシステム、装置及び方法が必要である。
【0011】
【課題を解決するための手段】
本発明の1つのアスペクトによれば、マスタ記憶ユニットは、前記マスタ記憶
ユニットにおける不良をフォローしているスレーブ・イメージをすばやく再同期
させるために書込みインテントログを利用する。前記書込みインテント・ログは
、前記不良にも関わらず保護され、その結果、前記書込みインテント・ログは、
前記不良からの回復に基づき前記マスタ記憶ユニットにとって利用可能である。
前記書込みインテント・ログは、前記マスタ・イメージとは非同期にされる可能
性のある前記スレーブ・イメージのどんな部分でも識別する。前記マスタ記憶ユ
ニットは、前記書込みインテント・ログにおいて識別されたように、非同期にさ
れる可能性のある前記スレーブ・イメージのそれらの部分のみを再同期する。
【0012】 好ましい実施例において、前記書込みインテント・ログは、非同期するかもし
れないどんなイメージ・ブロックでも識別する。前記スレーブ・イメージを再同
期させるために、前記マスタ記憶ユニットは、前記マスタ・イメージから前記ス
レーブ・イメージに前記書込みインテント・ログにおいて識別されたこれらのイ
メージ・ブロックだけをコピーする。
【0013】 非同期にする可能性がある前記スレーブ・イメージのそれらの部分だけを再同
期させることによって、前記マスタ記憶ユニットは、前記全体のマスタ・イメー
ジを前記スレーブ記憶ユニットの各々へブロックごとにコピーすることにかかっ
たであろうよりも、よりかなり少ない時間(多分時間よりむしろ秒)において前
記スレーブ・イメージを再同期させることが出来る。
【0014】
【発明の実施の形態】
本発明の一つの実施例は、マスタ記憶ユニットが、マスタ・イメージの対応す
る一部から非同期になる可能性があるスレーブ・イメージの一部(すなわちマス
タ・イメージの対応する一部と異なる可能性があるスレーブ・イメージの一部)
を単に更新することによって不良をフォローしているスレーブ・イメージを素早
く再同期させるのを可能にしている。具体的には、マスタ記憶ユニットは、非同
期にされる可能性があるスレーブ・イメージのどの部分をも識別するログ(以下
に「書込みインテント・ログ」と記す。)を保守する。書き込みインテント・ロ
グは、不良(a failure)を生き残らせることを保証するようなやり方で、不良
を保守する。したがって、不良をフォローしているマスタ記憶ユニットにとって
利用可能である。マスタ記憶ユニットが不良をフォローして作動中であるとき、
非同期にされる可能性があるスレーブ・イメージのこれらの部分を再同期させる
ことによって、好ましくはマスタ・イメージから各スレーブ記憶ユニットに、書
込みインテント・ログにおいて識別された際に非同期にされる可能性があるイメ
ージ・ブロックをコピーすることによって、マスタ記憶ユニットは、スレーブ・
イメージを再同期する。書込みインテント・ログにおいて識別されるスレーブ・
イメージの一部分は、たとえ識別された一部が一つ以上のスレーブ・イメージに
おいてマスタ・イメージと事実上同期させられているとしても、再同期させられ
る。非同期にさせられた可能性があるスレーブ・イメージのこれらの部分だけを
再同期させることによって、マスタ記憶ユニットは、スレーブ記憶ユニットの各
々にブロック毎に全体のマスタ・イメージをコピーするために必要としたであろ
うより非常に少ない時間(多分時間よりむしろ秒)において、スレーブ・イメー
ジを再同期させることができる。
【0015】 より具体的には、マスタ記憶ユニットがホストから書込みリクエストを受信す
るとき、マスタ記憶ユニットは、書込みインテントログにおいて書込みエントリ
を記憶する。書込みエントリは、非同期ミラーリングの場合においてミラー・イ
メージに書き込まれるアクチュアル・データーと同様に、書込み操作(例えばブ
ロック・オフセットと長さ)によって影響されるミラー・イメージの一部分を識
別する情報を含む。便宜上、書込みエントリの情報は、それとミラー・イメージ
に書き込まれる実際のデータを区別するために以下に「メタデータ(”meta-dat
a”)」と記す。
【0016】 本発明の好ましい実施例において、マスタ記憶ユニットは、ミラーの通常操作
の間、高速記憶メモリ(以下に「書込みキャッシュ(”write cashe”)」と記
す)の書込みインテント・ログを保守する。これは、マスタ記憶ユニットがすば
やく書込みエントリを書込みインテント・ログに加えるのを許す。もし、マスタ
記憶ユニットが冗長な(reductant)記憶プロセッサー(詳細は以下に記述する
)を含むならば、その時、各記憶プロセッサーは、同等の記憶プロセッサー上に
コピーが作られるところのそれ自身の書込みインテント・ログを保守する。これ
は、記憶プロセッサー(しかし、全体のマスタ記憶ユニットでなく)が動作しな
くなる(不良になるfails)時、1つの記憶プロセッサーが他の記憶プロセッサー
を占有する(引き継ぐtake over for)ことを許容する。完全なマスタ記憶ユニ
ット不良の場合には、マスタ記憶ユニットは、とりわけ、不良の検出に基づき不
揮発性記憶装置(例えばディスク)に全体の書込みインテント・ログを自動的に
記憶し、その不良からの回復に基づき該不揮発性記憶装置から自動的に書込みイ
ンテント・ログを再記憶する自動バックアップ/再生ロジックを含む。自動バッ
クアップ/再生ロジックは、書込インテント・ログが不良をフォローして回復で
きることを保証することができる程度に、重複するバッテリーバックアップと重
複する記憶能力によって、非常に強力である。
【0017】 一旦マスタ記憶ユニットが書込みインテントログに書込みエントリを記憶する
ならば、マスタ記憶ユニットは書込みリクエストに基づくマスタ・イメージとス
レーブ・イメージを更新することを続ける。マスタ記憶ユニットがうまくマスタ
・イメージとスレーブ・イメージの全部を更新することができると仮定すれば、
その時、書込みエントリがもはや必要でない。その場合には、マスタ記憶ユニッ
トは書込み意図ログから書込みエントリを削除する。本発明の好ましい実施例に
おいて、マスタ記憶ユニットは、「怠惰な(”lazy”)」削除メカニズムを使用
している書込みインテント・ログから、書込みエントリを削除する。具体的には
、マスタ記憶ユニットに都合のよい、マスタ記憶ユニットが書込みエントリがも
はや必要でないと決定すると必ずしも直ぐにではない、時間で、マスタ記憶ユニ
ットは、書込みインテント・ログから必要とされない一つの書込みエントリを削
除する。マスタ記憶ユニットは、典型的には書込みインテント・ログの定期的な
クリーンアップを進行させる。そこでは、マスタ記憶ユニットは各クリーンアッ
プ・サイクルの間、多数の必要とされない書込みエントリを削除する可能性があ
る。この削除方式は一つずつ必要とされない書込みエントリを削除することより
インプリメンテーション的に有効である。しかし、それは必要とされないある書
込みエントリが、ある期間のあいだ書込みインテント・ログに固執するのを許す
可能性がある。
【0018】 記憶プロセッサーが動かなくなるならば、動作が書込み意図ログでの何か書込
みエントリに該当する書込みが完了の異なる点に存在する可能性がある。たとえ
ば、マスタ記憶ユニットは何れかのイメージを更新しなかった可能性、スレーブ
・イメージをでなくマスタ・イメージを更新した可能性、マスタ・イメージ及び
スレーブ・イメージのいくつかを更新した可能性、または、何かの具体的な書込
み操作のためにマスタ・イメージとスレーブ・イメージの全部を更新した可能性
がある。
【0019】 マスタ記憶ユニットが重複する記憶プロセッサーを所有していると仮定すると
、不良になった記憶プロセッサーによって維持される書込みインテント・ログは
、同等の記憶プロセッサー上でコピーを作られる。従って、一旦同等の記憶プロ
セッサーが不良になった記憶プロセッサーを引き継いだなら、マスタ記憶ユニッ
トは、書込みインテント・ログ内で識別されるスレーブ・イメージの一部だけを
更新することによって、好ましくはマスタ・イメージからスレーブ記憶ユニット
へ対応するイメージ・ブロックをコピーすることによって、マスタ・イメージに
スレーブ・イメージの全部を再同期させる。
【0020】 マスタ記憶ユニットが動作しないならば、自動バックアップ/再生ロジックは
、自動的に不揮発性記憶装置に書込みインテント・ログを記憶する。このことが
起これば、書込みインテント・ログ内の書込みエントリーに対応する書込みオペ
レーションが、異なる完了点に存在する可能性がある。たとえば、マスタ記憶ユ
ニットが如何なるイメージも更新していない可能性、スレーブ・イメージを除い
てマスタ・イメージを更新した可能性、マスタ・イメージとスレーブ・イメージ
のいくつかを更新した可能性、または、何らかの具合的な書込動作によってマス
タ・イメージ及びスレーブ・イメージの全てを更新した可能性がある。
【0021】 一旦マスタ記憶ユニットが不良をフォローして動作しているならば、自動バッ
クアップ/再生ロジックは、不揮発性記憶装置から自動的に書込み意図ログを回
復する。そのとき、マスタ記憶ユニットは、書込み意図ログ内で識別されるスレ
ーブ・イメージの一部だけを更新することによって、好ましくは対応するイメー
ジ・ブロックをマスタ・イメージからスレーブ記憶ユニットへコピーすることに
よって、マスタ・イメージにスレーブ・イメージの全部を再同期させる。
【0022】 図1は、本発明の一つの実施例に従って、一つの例証的なコンピューターシス
テム100を示す。この例証的なコンピューターシステム100は、コンピュータ記憶
システム120に連結されるホスト110を含む。コンピュータ記憶システムl20は、1
40Nを通してマスタ記憶ユニット130と多数のスレーブ記憶ユニット1401を含む。
本発明の遠隔ミラーリング機能は、各記憶ユニットがコンピュータ記憶システム
100における他の記憶ユニットの全てに関係することができるように、コンピュ
ータ記憶システム100における各記憶ユニットがコンピュータ記憶システム100に
おいて他の記憶ユニットの全てに通信リンクを保全することを要求する。ホスト
110は、マスタ記憶ユニット130に連結されて、ホスト110を通してミラーにアク
セスする。
【0023】 本発明の好ましい実施例において、コンピュータ記憶システム、(例えばコン
ピュータ記憶システム120内の140Nを通してのマスタ記憶ユニット130とスレーブ
記憶ユニット1401のような)における記憶ユニットの各々は、重複する管理及び
記憶能力を有するフォルトトレラントRAID(reductant array of independent d
isks)記憶ユニットである。遠隔式ミラーリングは、記憶ユニットの一つのアド
オン方式機能として実行される。遠隔式ミラーリングは、特に、多数の地理学的
位置で一つのイメージのバイト毎のコピーをキープすることによって、災害回復
、遠端後備保護および他のデータ保全性ソリューションを提供するために使用さ
れる。
【0024】 図2に示すように、好ましい記憶ユニット200は、一つの管理用インターフェー
ス201、少なくとも1つのホストインターフェース202、少なくとも第一の記憶プ
ロセッサー(SP)204及び一つのオプショナルな第二のSP 208、一つのディスク
アレイ206としてアレンジされた多数のディスク並びにネットワークインターフ
ェース210を有する。管理インターフェース201は、好ましくは、それによって記
憶ユニット200が管理されおよびコントロールされる一つのイーサネット(登録 商標)(a Ethernet(登録商標))・インターフェースである。ホスト 110はホ スト インターフェイス 202を通して記憶ユニット200と入出力を行う、そしてそ れは、好ましくはSCSIインターフェースをエミュレートする。ホスト インター フェイス 202は、ホスト 110が、SP 204およびオプショナルなSP 208の両方と通 信することができるように、SP 204およびオプショナルなSP 208に連結される。 SP 204およびオプショナルなSP 208は一つのインターフェース209を通して相互 接続する。そのインターフェース209は、好ましくは、ファイバ・チャネル・イ ンタフェースである。SP 204およびオプショナルなSP 208はやはりインターフェ ース209を通してネットワークインターフェース210に連結される。そして、その インターフェース209は、各SP(204、208)にコンピュータ記憶システム120の範 囲内で他の記憶ユニットにおいてSPと通信するのを可能にする。
【0025】 好ましいSP(204、208)は、オペレーティングシステムを実行するマルチプロ
セッサー・ハードウェアプラットホームに基礎をおかれる。両方のSP(204、208
)は、本質的に同じソフトウェアを実行する。しかし、そのソフトウェアは、た
とえば、他のSP以外の1つのアップグレードされたソフトウェアによって、2つの
SPの間で異なることができる。したがって、各SP(204、208)は、記憶ユニット
のために十分なマネジメント機能を提供することができる。
【0026】 SPソフトウェアは、各LUが一度に一つのそして唯一の1つの5つのSPを通してア
クセスされることを要求する。LUオーナー権のこの概念は、「割当て(”assign
ment”)」と呼ばれる。該SPソフトウェアは、LU アレイ・セット内の各LUが異
なるSPに「割り当てられる(”assigned”)」のを許す。両方のSPプロセスは、
記憶ユニット用のリダンダンシイ(redundancy)を提供するためにいろいろなマ
ネジメント機能を要請し、執行する。SPのうちの1つが動かなくなるならば、他
のSPは、動かなくなったSPのためにLUのマネジメントを引き継ぐ。
【0027】 遠隔式ミラーリングは、LUアレイ・セット内の異なるLUを管理している異なる
SPによって(またはLUアレイ・セット内の各LUへのアクセスを分担している両方
のSPによっても)実行されることができる。しかし、そのようなインプリメンテ
ーションは、LU アレイ・セット内で情報を記憶するために本質的なインター(i
nter-)SP調整を必要とするだろう。本発明の好ましい実施例は、したがって、L
U アレイ・セット(Array Set)内での全てのLUSが同じSPに「割り当てられる(”
assigned”)」ことを要求する。それによって、それはLU アレイ・セット(Arra
y Set)内の情報を記憶するために何れかの15のインター(inter-)SPコーディネ
イションを無視している。このように、この発明の好ましい実施例においては、
各ミラー・イメージは、一度に1つのSPによって管理される。便宜上、他のSPが
以下「第二の」SPと呼ばれる一方、第一に具体的なミラー・イメージを管理する
ことに対して責任があるこのSPは、以下に「第一の」SPと呼ばれる。以下の説明
の目的のためにおよび図2に再び参照して、このSP 204は、「第一の」SPと呼ば
れ、このSP 208は、「第二の」SPと呼ばれる。
【0028】 図3は、第1SP204及び第2SP208のような、マスター記憶装置で作
動されるSPの関連するコンポーネントの概念図を示す。図3に示すように、特
にSPは、遠隔ミラーリング論理302、書込みキャッシュ304、自動バック
アップ回復ロジック(論理)306及びデイスクマネジメント論理308を含む
。デイスクマネジメント論理308は、遠隔ミラーリング論理302及び自動バ
ックアップ回復論理306を含む、SPの各種のコンポーネントが、双方共にイ
ンタフェース209を介した同一記憶装置及びインタフェース209を介した各
記憶装置を横切る、ディスクアレイ206をアクセスしかつ他の各SPと通信す
ることを可能にするある範囲のサービスを与える。遠隔ミラーリング論理302
は、デイスクマネジメント論理308によって与えられるサービスを利用し、デ
ィスクアレイ206のマスターイメージを維持しかつスレーブイメージの更新を
調整するスレーブ記憶装置と通信するようにされる。遠隔ミラーリング論理30
2はホストインタフェース202と間接的に結合され、それを通して遠隔ミラー
リング論理302はホスト110とインタフェースする。遠隔ミラーリング論理
302は、書込みキャッシュ304の書込み目的ログを維持し、それは同等SP
に複写されるSP(即ち、SP204上の書込みキャッシュ304はSP208
上に複写され、SP208上の書込みキャッシュ304はSP204上に複写さ
れる)上の局部高速メモリである。自動バックアップ回復論理306は、マスタ
ー記憶装置130の故障を検出すると同時に書込み目的ログを含む書込みキャッ
シュ304を自動的にディスクアレイ206に記憶し、SPが故障から回復する
とディスクアレイ206から書込みキャッシュ304を回復する。本発明の望ま
しい実施形態では、遠隔ミラーリング論理302はホスト110によって送られ
る情報を傍受かつ処理する層状装置ドライバとして実行される。
【0029】 遠隔ミラーリングを行うために遠隔ミラーリング論理302は、ディスクアレ
イ206内に一定量の永続性記憶装置を要する。この永続性記憶は遠隔ミラーリ
ング論理302によって用いられ、ミラー状態情報、ミラーメンバー情報、ミラ
ーイメージ構成情報、及びミラーの適切な作動を補償するのに要する他の情報の
ような一定の情報 (以下に詳記される)の追跡を維持するようにされる。この情
報は、全体として記憶装置の作動及びコンピュータ記憶にとって決定的なので、
情報は高度に利用可能でなければならず、従って、部分的なディスクアレイ故障
の場合には情報の冗長性コピーがディスクアレイ206に維持されるのが望まし
い。
【0030】 既に述べたように、LUアレイセットは1つまたはそれ以上のLUから成る。
LUのグループを単一構成要素(エンティティ)として扱う能力は、多量に集め
られた1つまたはそれ以上のLUに対する遠隔ミラーを管理するホスト管理タス
クを単純化する。スレーブイメージの更新に際して遠隔ミラーはこの概念を用い
て論理的に接続されたLU間のすべての書込み要求の順序づけを保護するように
する。非同期ミラーリングを用いる場合、テーブルを広げ、性能及び局部の理由
でそれが多重装置と見なすことすべを調べるデータベースエンジンにとってこの
順序づけは非常に重要である。
【0031】 ミラー内の各LUアレイセットは、それが単一LU又は多重LUで構成される
かどうかにかかわらず、正確に同一の物理的サイズから成るものでなければなら
ない。その理由はマスター記憶装置がホストシステムから受取るすべての書込み
要求のブロック対ブロック転送を行うからである。もし、各イメージが単一LU
から構成されるならば、各LUは物理的に同一サイズでなければならない。各イ
メージが多重LUから構成されるならば、マスター及びそのスレーブ間の対応す
る各LUが物理的に同一サイズでなければならない。例えば、マスターイメージ
がそれぞれサイズが8Gb及び4Gbの2つのLUA及びBから構成されるならば、
各スレーブイメージはそれぞれサイズが8Gb及び4Gbの2つのLUA_及びB_か
ら構成されなければならない。
【0032】 LUアレイセットの物理的サイズはミラーの各イメージ間と一致しなければなら
ないが、各LUアレイセット内の各LUのRAIDレベルは異なり得る。LUのRAIDレベル
は、情報がLUに記憶される方法、情報をLUに記憶するのに要する時間、LU故障時
にLUから回復され得る情報量のような多くのLU属性を決定する。望ましい記憶装
置は、業界では周知のRAIDレベル0、1、1/0、3及び5を支援する。各種のR
AIDの内、RAIDレベル5はLU故障の場合最高レベルの情報回復を与えるが、LUに
情報を記憶するために最大の時間がかかる。RAIDレベル0は、LU故障の場合最小
レベルの情報回復を与えるが、LUに情報を記憶するために最小の時間しかかから
ない。各LUには異なったRAIDレベルが割当てられ得る。
【0033】 本発明の一実施形態では、マスターイメージと関連するLUはRAIDレベル5に構
成され、一方スレーブイメージと関連するLUはRAIDレベル0に構成される。マス
ターイメージにRAIDレベル5を用いることでマスターイメージは極端に耐性的に
される。スレーブイメージにRAIDレベル0を用いることで、各スレーブイメージ
は比較的迅速にそれぞれのスレーブ記憶装置に書込まれことが可能になり、それ
は特に同期的遠隔ミラーリングで待ち時間を低減し得る。
【0034】 遠隔ミラーリング機能性は、マスターイメージ及びスレーブイメージ間の作動
関係と共にミラーの作動状態に関して記載され得る。
【0035】 図4は、ミラーの作動状態を示す状態図である。便宜上、図4に示される状態
図は、一定の故障変化、故障状態は示さない。図4に示されるように、ミラーに
は3つの主要状態、即ち、非アクティブ(INACTIVE)アクティブ402、(ACTI
VE)404及びアテンション(ATTENTION)406がある。3状態間の主要な区
別は、ミラーがホストからの要求を読取り及び書込む応答の仕方である。デフォ
ールトミラー状態は非アクティブ状態402である。非アクティブ状態402で
はホストがマスターイメージにアクセスすることはできない。従って、ホストは
マスターイメージからの読取り又はマスターイメージへの書込みはできない。ミ
ラーが作り出される時にはミラーは非アクティブ状態402ではないが、ミラー
が削除され得る前にはミラーは非アクティブ状態402でなければならない。
【0036】 ミラーが非アクティブ状態402である時には、管理者(アドミニストレータ
)はミラーを作動させるようにし得る。管理者がミラーを作動させるようにしか
つミラーが通常作動の最低用件をすべて満たすならば、ミラーはアクティブ状態
404に変化する。しかし、管理者がミラーを作動させるようにしても、ミラー
が通常作動の最低条件をすべて満たさないならば、ミラーはアテンション状態4
06に変化する。
【0037】 通常作動ミラー状態はアクティブ状態404である。アクティブ状態404で
はホストはマスターイメージにアクセスできる。任意の時にミラーが通常作動の
最低用件を満たさないならば、ミラーは自動的にアテンション状態406に変化
する。直接的管理制御化ではミラーは非アクティブ状態402へ変化する。
【0038】 アテンション状態406は、ミラー内のどこかでミラーの通常作動が妨げられ
る問題があることを示す。アテンション状態406では、ホストがマスターイメ
ージをアクセスできない。従って、ホストはマスターイメージからの読取り又は
マスターイメージへの書込みはできない。任意の時にミラーが通常作動の最低用
件を満たすならば、ミラーは自動的に非アクティブ状態402に変化する。
【0039】 図5は、マスターイメージ及びスレーブイメージの透視図からの単一スレーブ
イメージ間の作動的関係を示す状態図である。異なった各スレーブイメージはマ
スターイメージに関して異なった各状態にあり、それ故に各種のスレーブイメー
ジに含まれるデータは異なり得ることに注目すべきである。図5に示すように、
そこには4つの主要な状態がある。即ち、同期されていない502、同期されて
いる504、不変の506及び同期中の508の各状態がある。
【0040】 スレーブイメージのデータ及びマスターイメージのデータ間に既知の関係がな
いことが容易に決定される時にはスレーブイメージはアンシンクロナイズド状態
502と考えられる。例えば、最初にスレーブイメージがミラーに加えられる時
これは事実である。
【0041】 ミラーがアクティブ状態404ならばスレーブイメージはアンシンクロナイズ
ド状態502からシンクロナイジング状態508に変わる。これはスレーブ記憶
装置の遠隔ミラーリングソフトウェアによってとられる暗黙の作動である。
【0042】 スレーブイメージは同様に管理作動を通してアンシンクロナイズド状態502
からシンクロナイズド状態504に置かれ得る。特に、管理者は、ミラーをイン
アクティブ状態402に置き、マスターイメージをスレーブイメージにコピーす
るか又は他の方法でマスターイメージと同一のスレーブイメージを作りだし、明
示的にスレーブイメージがシンクロナイズド状態504にあるようにさせること
によって、スレーブイメージをマスターイメージと同期させ得る。
【0043】 スレーブイメージがマスターイメージの正確なバイト対バイト複製である時に
はスレーブイメージはシンクロナイズド状態504にあると考えられる。これは
、マスターイメージ及びスレーブイメージの双方へ安定して記憶されていなかっ
た、ホストからの未解決の各書込み要求がないことを意味する。
【0044】 ミラーがアクティブ状態にありかつマスターイメージで書込み要求が安定して
記憶される時には、スレーブイメージはシンクロナイズド状態504からコンシ
ステント(不変の)状態506に変わる。その時点では、スレーブイメージはな
おマッスターイメージの先行状態と一致するが、スレーブイメージは最早マスタ
ーイメージの正確なバイト対バイト複製ではない。
【0045】 スレーブイメージが現在マスターイメージの正確なバイト対バイト複製ではな
いが、過去のある確定できる時点でマスターイメージの正確なバイト対バイト複
製であるならば、スレーブイメージはコンシステント状態506にあると見なさ
れる。同期(シンクロナス)遠隔ミラーリングでは、各書込み要求に対してマス
ター記憶装置がすべてのスレーブを更新するので、スレーブイメージは精々一書
込み要求だけマスターイメージとは異なり得る。しかし、非同期(アンシンクロ
ナス)遠隔ミラーリングでは、マスターイメージ記憶装置は書込み要求に関して
非同期的にスレーブ記憶装置を更新するので、スレーブイメージはマスターイメ
ージから一書込み要求より大きく変わり得る。
【0046】 ミラーイメージがアクティブ状態404にありかつスレーブイメージですべて
の書込み要求を安定に記憶してしまっているならば(即ち、未解決書込み要求は
ない)、スレーブイメージはコンシステント状態506からシンクロナイズド状
態504に変わる。この変化はマスターイメージの制御下でなされる。同様にス
レーブイメージは管理者によってシンクロナイズド状態504に置かれ得る。
【0047】 1)ミラーが非アクティブ状態402にありかつ管理者が明示的にスレーブイ
メージをシンクロナイジング状態508に強制的にするか、又は2)ミラーがア
クティブ状態404にありかつマスターイメージからの1つ又はそれ以上の書込
み更新が変化で失われてしまっていることを確認する時には、コンシステント状
態506からも同様にスレーブイメージはシンクロナイジング状態508に変わ
る。
【0048】 ミラーがアクティブ状態404にありかつマスター記憶装置によって保持され
る書込み経歴が悪化されるか又は失われるならば、同様にスレーブイメージはコ
ンシステント状態506からアンシンクロナイズド状態502に変わる。
【0049】 マスターイメージへのホスト書込みの直接的結果でない方法でマスターイメー
ジからスレーブイメージが明示的に更新されるならば、それはシンクロナイジン
グ状態508にあると見なされる。実際のシンクロナイジング作動は、マスター
イメージの完全なバイト対バイトコピー又は一連の書込み要求を送信(又は再送
信)することを要し得る。
【0050】 理由の如何を問わず、スレーブイメージがマスターイメージと同調されないな
らばスレーブイメージはシンクロナイジング状態508からアンシンクロナイズ
ド状態502に変わる。この場合には、スレーブイメージを同期させる試みがな
され得るが、そのような同期は、例えば、スレーブイメージへの失われた通信の
ために、ある状況では不可能でありうる。
【0051】 スレーブイメージを同期させるのに用いられる方法にかかわらず、同期作動が
首尾よく完了すると同時に、スレーブイメージはシンクロナイジング状態508
からコンシステント状態506に変わる。
【0052】 スレーブ同期作動はホストに対して透過的に完成されることに注目すべきであ
る。スレーブ同期作動がホストによるミラーへの通常アクセスに影響を与えるの
を防止するために、マスターイメージ及びスレーブイメージ間の処理数を制限す
る抑圧機構が用いられる。
【0053】 上記のように、ホストはマスター記憶装置を通してのみミラーにアクセスする
ことが可能にされる。従って、特により高レベルのドライバーから受取る一定の
要求を傍受することによって、遠隔ミラーリングドライバーはミラーと関連する
各LUへの一定のアクセスを防止する。各要求を傍受するために各記憶装置は、ミ
ラーと関連するすべての記憶装置LUを識別するLUリストを維持する。各スレーブ
記憶装置の遠隔ミラーリングドライバーは、特に要求がより低レベルのドライバ
ーによって処理されるのを防止することによって、LUリストのLUを目標とするよ
り高レベルのドライバーからのあらゆる読取り又は書込み要求を傍受する。同様
に、マスター記憶装置の遠隔ミラーリングドライバーは、適切な遠隔ミラー機能
を行うためにLUリストのLUを目標とするより高レベルのドライバーからのあらゆ
る書込み要求を傍受する。しかし、マスター記憶装置の遠隔ミラーリングドライ
バーは、より高レベルのドライバーからのすべての読取り要求がより低レベルの
ドライバーによって処理されることを可能にする。
【0054】 ミラーに関係する各記憶装置は、ミラーデータベースの完全なコピーをその耐
久性記憶装置に維持する。ミラー関連情報が変わるにつれて、各記憶装置はその
ミラーデータベースを更新し、関係するものすべてが同一視界のミラーを有する
ようにさせる。すべてのミラーメンバーに亘るこの更新は、「アトミック(原子
的)」方法(即ち、すべてのミラーメンバーに亘るこの更新はすべてのミラー構
成要素によって完了されなければならない単一作動として扱われる)。この情報
を各記憶装置に対して局部的に保つことによって、マスターイメージの役割は管
理者によって管理されるようなミラーのあらゆるイメージによって引き受けられ
得る。
【0055】 ミラーデータベースに記憶される情報は2つの目的に役立つ。第1は各ミラー
の属性を永続的に記憶することである。第2はミラーの状態情報を維持すること
によって故障状態中支援することである。ミラーデータベースの情報は、管理者
作動を介した間接的修正、ミラーを作動的に用いた直接修正で行われる。上記目
的を満たすのに要する情報の最少量はミラーデータベースに維持される。
【0056】 ミラーデータベースの特定のミラーに対して維持される情報は、ミラー全体に
亘る情報及びイメージ特有情報に分類される。
【0057】 本発明の望ましい実施形態では、ミラー全体に亘る情報は、なかんずく、ミラ
ー名称、ミラー状態、フラクチャ(fracture)ログサイズパラメータ、ミラー範
囲サイズパラメータ、最大仕損じイメージパラメータ、必要最少イメージパラメ
ータ、ハートビート(中心ビート)パラメータ、同期優先パラメータ、書込み手
段パラメータ、書込み手持ちサイズパラメータを含む。
【0058】 ミラー名称はミラーの記号的名称である。ミラー名称は、ミラーが作リ出され
る時管理者によって与えられる。ミラー名称はミラーベース内のテキストストリ
ングフィールドとして維持される。
【0059】 ミラー状態は、ミラーが非アクティブ状態402、アクティブ状態404又は
アテンション状態406のいずれであるかを示す。ミラー状態は遠隔ミラーリン
グソフトウエアによって動的に更新される。
【0060】 フラクチャログサイズは、ミラー範囲サイズ(以下に記載)ユニット(一式)
のフラクチャログのサイズを特定する。フラクチャログサイズパラメータはフラ
クチャログに記憶され得る、仕損じた更新の数を決定する。
【0061】 ミラー範囲サイズパラメータは、部分的又は完全な同期を要する時に用いられ
るサイズをブロックで特定する。
【0062】 最大仕損じパラメータは、ミラーがアクティブのままであり得ると同時にミラ
ーからはずれ得るイメージの最大数を設定する。この限度に到達すると、それが
非アクティブ状態402ならミラーは作動されないか、又はミラーがアクティブ
状態404ならばそれはアテンション状態406に置かれる。ゼロの値は、ミラ
ーが作動化されるためにはすべてのスレーブイメージが存在することを要する。
マイナス1(‐1)の値はこの特性を不能にするのに用いられる。
【0063】 必要最少イメージパラメータは、ミラーが作動化され得る前に利用可能でなけ
ればならないイメージの最小数を設定する。この値をミラーの合計イメージ数と
等しく設定するには、ミラーが作動化され得る前に全イメージが存在することを
要する。マイナス1(‐1)の値はこの特性を不能にするのに用いられる。
【0064】 ハートビートパラメータは、各スレーブ記憶装置の「到達可能性」を決めるた
めにマスター記憶装置で用いられるハートビート信号の周波数を設定する。
【0065】 同期優先パラメータは、記憶装置によって維持される他のあらゆるミラーに関
するミラーの優先順位を設定する。多重ミラーが同期されなければならない時に
は、同期に当てられるミラー相互接続帯域幅の量を最小にするために同期優先パ
ラメータが各ミラーの同期を指定するように用いられる。
【0066】 書込み手段パラメータはミラーが同期又は非同期のいずれかを特定する。
【0067】 書込み手持ちサイズパラメータは、次にスレーブへ伝達するためにマスター上
で列をなし得るホスト書込みの量をブロックで設定する。この書込み手持ちサイ
ズパラメータは非同期遠隔ミラーリングに対してのみ用いられる。
【0068】 本発明の望ましい実施形態では、イメージ特定情報は、なかんずく、SP識別名
(子)、LUアレイセット識別子、イメージ指名子、ミラーイメージ状態、クッキ
ー、タイムアウト値パラメータ、同期率パラメータ、同期進行標識子(インジケ
ータ)及び回復手段パラメータを含む。
【0069】 SP識別子は、イメージに対する第1SP、若し得られるならば、第2SP、を独特
に確認する。
【0070】 LUアレイセット識別子は、イメージに対する1つ又はそれ以上の構成要素LUを
確認する。
【0071】 イメージ指名子は、イメージがマスターイメージか又はスレーブイメージかど
うかを特定する。
【0072】 ミラーイメージ状態は、イメージがアンシンクロナイズド状態504、シンク
ロナイズド状態504、コンシステント状態506又はシンクロナイジング状態
508かどうかを示す。
【0073】 コックは、イメージの状態をミラーの状態と関連付ける不変情報を含む動的に
更新される値である。
【0074】 タイムアウト値パラメータは、マスター記憶装置が到達不能(以下に記載)と
見なす前にスレーブ記憶装置が到達不能に止まることが可能な時間の量を示す。
【0075】 同期率パラメータは、イメージ同期がなされるレートを示し、それによって同
期が抑圧される機構である。
【0076】 同期進行インジケータは、スレーブイメージ同期の現情勢を維持するのに用い
られる。この値は、同期を受けていた到達不能なスレーブが到達可能になる時に
調べられる。
【0077】 回復手段パラメータは、イメージがオンラインになる時イメージが自動的に再
同期されるべきかどうかを特定する。
【0078】 本発明の望ましい実施形態では、各遠隔ミラー及びそれらの対応するイメージ
が一組の管理作動を通して管理される。これらの管理作動は全ミラーの一定の特
性又は作用を変化させる。イメージ作動ではミラーの特定のイメージが意図され
る。特に、あるイメージ作動ではマスターイメージが意図され、一方他の作動で
は特定のスレーブイメージが意図される。
【0079】 別段の指示がない限り、管理作動はマスター記憶装置に送られなければならず
、それがまた、特にメッセージ通過サービス(MSP)を用いて、必要に応じて適
切なスレーブ記憶装置へ当該作動を伝える。マスター記憶装置は、ミラーの各ス
レーブ記憶装置に対する現状情報、特にスレーブイメージ記憶装置が到達不能か
又は到達可能かどうか(即ち、マスター記憶装置がスレーブ記憶装置と通信可能
かどうか)の情報を維持する。マスター記憶装置がミラー構成情報をスレーブ記
憶装置へ伝えようと試み、スレーブ記憶装置がミラー構成情報を受信できない事
を確認するならば、マスター記憶装置はスレーブ記憶装置を「到達不能」として
マークし、当該ミラーの残余のスレーブ記憶装置に新しいミラー構成情報を伝え
る。
【0080】 遠隔ミラーリングソフトウエアはミラーの作動に影響を与えるあらゆる構成変
化に注目しなければならない。そのような構成変化それ自体はミラー作動ではな
いが、適切なミラー作用を確保するためにソフトウエアのミラーリングに注目す
ることを要する。例えば、各LUが一SPから他のSPへ再割当されるとき各SPの遠隔
ミラーリングソフトウエアが注目され、各SPが該変化によって生じるあらゆるミ
ラー関連回復を調整できるようにしなければならない。
【0081】 ミラーを作り出すために、管理者は第1にマスター記憶装置上にLUアレイセッ
トを作り出し、マスターイメージとして作動するようにLUアレイセットを構成す
る。次いで管理者はマスター記憶装置にミラー創出機能をもたらし、LUアレイセ
ット及びミラー名称を特定する。ミラー創出機能はミラー構成情報を初期化し、
マスター記憶装置によって維持されるLUリストにLUアレイセットを加える。LUア
レイセットが存在しないか又はLUアレイセットが他のミラーの一部であるならば
、ミラー創出機能はミラーを作り出せない。しかし、ミラー創出機能が首尾よく
完了するならば、ミラーは単一イメージから構成されかつインアクテイブ状態4
02にある。
【0082】 一度ミラーが作り出されると、管理者はミラーにスレーブイメージを加え、ミ
ラーからスレーブを除去し、マスターイメージとして作動するようスレーブイメ
ージを助長し、スレーブイメージとして作動するようマスターイメージを降格さ
せ、スレーブイメージを同期させ、スレーブイメージを分裂させ、分裂されたス
レーブイメージを回復させ、ミラーを作動させ、ミラーを非アクテイブかさせる
かまたはミラーを破棄することが出来る。管理者はまたミラー属性を変化させる
かまたはミラー属性を検索し得る。
【0083】 ミラーにスレーブイメージを加えるために、管理者は最初に、スレーブ記憶装
置(ストレージ)にLUアレイセットを作成して、LUアレイセットをスレーブイメ
ージとして作動させるように構成する。管理者は、次ぎに、ミラーにスレーブイ
メージを加えるようにマスタ記憶装置に命令する。マスタ記憶装置は、ミラーに
スレーブイメージを加えるように、順次、スレーブ記憶装置に命令する。例えば
、スレーブイメージが既にミラーにあるか、LUアレイセットが存在していないか
、LUアレイセットが別のミラーの一部であるならば、スレーブ記憶装置は要求を
拒絶するかもしれない。しかしながら、スレーブ記憶装置がミラーにスレーブイ
メージを加えることを決定すると、マスタ記憶装置はスレーブイメージを含むよ
うにそのミラー構成情報をアップデートし、マスタ記憶装置はすべてのスレーブ
記憶装置に新しいミラー構成情報を配付する。
【0084】 スレーブイメージをシンクロナイズド状態(504)又はアンシンクロナイズド状
態(502)のどちらかでミラーに加えることができることに留意すべきである。シ
ンクロナイズド状態(504)でスレーブイメージを加えることでいかなる同期操作
を避けられる。スレーブイメージをアンシンクロナイズド状態(502)で加えるこ
とは、マスタイメージにスレーブイメージを同期させるために同期操作を必要と
する。アンシンクロナイズド(非同期)スレーブイメージがミラーに加えられる
ときにミラーが非アクティブ状態(402)にあるならば、スレーブイメージはアン
シンクロナイズド状態(502)で残る。アンシンクロナイズドスレーブイメージが
ミラーに加えられときにミラーがアクティブ状態(404)にあるか、またはミラー
が以下で説明されるようにその後アクティブ状態になるならば、同期操作は、ス
レーブイメージをマスタイメージに同期させるように実行される。
【0085】 ミラーからスレーブイメージを取り除くために、管理者は最初に、以下に説明
されるようにミラーをディアクティベートする。管理者は次ぎにミラーからスレ
ーブイメージを取り除くようにマスタ記憶装置に命令する。管理者はスレーブイ
メージのグレースフル取り外し又はスレーブイメージの強制取り外しのいずれか
を要求することができる。管理者がスレーブイメージのグレースフル取り外しを
要求するならば、スレーブイメージに対するすべての未決の要求は、ミラーから
スレーブイメージを取り除く前に、完了される。管理者がスレーブイメージの強
制取り外しを要求するならば、いかなる未決の要求を完了することなく、スレー
ブイメージは取り除かれる。いずれの場合でも、マスタ記憶装置は、ミラーから
スレーブイメージを取り除くようにスレーブ記憶装置に命令する。LU アレイセ
ットがミラーの一部であることを確かめた後に、スレーブ記憶装置はミラーから
LUアレイセットを取り除いて、LUリストからLUアレイセットを取り除く。その結
果、スレーブ記憶装置のリモートミラーリングドライバーは、LUアレイセット内
のLUsを対象とする要求に割り込むことを止める。マスタ記憶装置はスレーブイ
メージを除くためにそのミラー構成情報をアップデートし、かつ、マスタ記憶装
置はすべてのスレーブ記憶装置に新しいミラー構成情報を配付する。ミラーから
スレーブイメージを取り除いても、対応するLUs又はそこに含まれるデータは削
除されないことに注意すべきである。
【0086】 スレーブイメージを昇格させてマスタイメージとして作動させるために、ミラ
ーはマスタイメージを持つことができず、したがって、管理者は、以下に説明す
るように、最初に既存のマスタイメージを格下げしてスレーブイメージとして作
動させなければならない。管理者は、次ぎに、スレーブ記憶装置にそれ自体を昇
格するようにスレーブ記憶装置に命令する。スレーブ記憶装置は、それ自体をマ
スタに昇格する前に、ミラー内にマスタイメージが存在しないこと、スレーブイ
メージがシンクロナイズド状態(504)又はコンシステント状態(506)のどちらかに
あること、及びスレーブイメージが以前にミラーから取り除かれていないこと又
は以前にアクセスすることができない(UNREACHABLE)とマークされていないこ
とを確かめる。ミラー内にマスタイメージがなく、スレーブイメージがシンクロ
ナイズド状態(504)又はコンシステント状態(506)のどちらかにあり、かつ、スレ
ーブイメージが以前にミラーから取り除かれていないか、あるいは、アクセスで
きないとマークされていないと決定すると、スレーブ記憶装置はそれ自体を昇格
させマスタ記憶装置として作動させ、その場合、新しいマスタ記憶装置はそのミ
ラー構成情報をアップデートして、ミラーのスレーブ記憶装置に新しいミラーの
構成情報を送る。管理者は明らかに後者に2つのプロモーション条件を上書きす
ることができ、ミラー内にマスタイメージがない限りスレーブ記憶装置にそれ自
体をマスタに昇格させることができることに注意すべきである。
【0087】 マスタイメージを格下げしてスレーブイメージとして作動させるために、管理
者は最初に、以下で説明されるようにミラーをディアクティベートする。そして
、管理者は、マスタ記憶装置にそれ自体を格下げするように命令する。マスタ記
憶装置が利用可能であると決定すると、マスタ記憶装置はミラーのスレーブ記憶
装置にそのミラーの構成情報をアップデートして、新しいミラーの構成情報を送
る。しかしながら、例えばマスタ記憶装置が不良のため使用できないならば、管
理者は、マスタ記憶装置を格下げするようにスレーブ記憶装置に命令することが
できる。それぞれのスレーブ記憶装置は、ミラー内にマスタイメージがないこと
を示すようにそのミラーの構成情報をアップデートする。
【0088】 スレーブイメージを同期させるために、管理者は、マスタ記憶装置にスレーブ
イメージを同期させるように命令する。マスタ記憶装置はマスタイメージをブロ
ックごとにスレーブイメージにコピーする。ミラーがアクティブ状態(404)又は
非アクティブ状態(402)にある間にこれをすることができる。書込み要求が、そ
して書き込み要求だけが、既にスレーブイメージに書き込まれたイメージの部分
に向けられるならば、スレーブイメージのリシンクロナイズ化(再同期化調整)
の間にマスタ記憶装置によって受け取られる入来書込み要求はスレーブ記憶装置
に転送される。同期操作の歩調を合わせて同期操作が記憶装置間に通信リンクを
過負荷することを防げるために、スロットリングメカニズムは使用される。
【0089】 ミラーをアクティブにするために、管理者は、マスタ記憶装置にミラーをアク
ティブにするように命令する。マスタ記憶装置は、そのミラーの構成情報をアッ
プデートしてミラーをアクティブ状態(404)にし、ミラーがアクティブであるこ
とをすべてのスレーブ記憶装置に知らせる。それぞれのスレーブ記憶装置は順番
にそのミラーの構成情報をアップデートして、ミラーをアクティブ状態(404)に
する。
【0090】 ミラーをディアクティベート(非アクティブに)するために、管理者は、マス
タ記憶装置にミラーをディアクティベートするように命令する。管理者はミラー
をグレースフル非アクティブ化又は強制非アクティブ化することのどちらかを要
求することができる。管理者がミラーのグレースフル非アクティブ化を要求する
ならば、スレーブイメージに対するすべての未決の要求は、ミラーをディアクテ
ィベートする前に、完了される。管理者がスレーブイメージの強制取り外しを要
求するならば、いかなる要求も完了しないで、ミラーはディアクティベートされ
る。どちらの場合でも、マスタ記憶装置はそのミラー構成情報をアップデートし
、ミラーを非アクティブ状態(402)にし、LUリストからミラーに関連するすべて
のLUsを取り除く。その結果、マスタ記憶装置のリモートミラーリングドライバ
ーは、LUアレイセットのLUsを対象とする書込み要求に割り込むことを止める。
マスタ記憶装置は、また、すべてのスレーブ記憶装置にミラーが非アクティブで
あることを知らせる。それぞれのスレーブ記憶装置は、順次、そのミラーの構成
情報をアップデートしミラーを非アクティブ状態(402)にする。
【0091】 ミラーの属性を変えるために、管理者はマスタ記憶装置に要求を送る。マスタ
記憶装置は、順次、そのミラー構成情報と、(必要ならば)ミラーの状態とをアッ
プデートして、スレーブ記憶装置に変更要求を伝える。従って、それぞれのスレ
ーブ記憶装置はそのミラー構成情報とミラーの状態をアップデートする。
【0092】 ミラーの属性(特に、ミラーの各イメージのミラー属性のコピー)を検索するた
めに、管理者はミラーのあらゆる記憶装置に要求を送る。受信記憶装置はそれ自
身のイメージのミラー属性を検索し、また、それぞれの記憶装置からのミラー内
の他のイメージのミラー属性を検索する。受信記憶装置はミラーの各イメージの
ミラー属性のコピー(または、非検索可能なイメージに関する1セットのエラーコ
ード)を管理者に返す。
【0093】 ミラーを破壊するために、ミラーはマスタイメージだけから成らなければなら
ないし、かつ、ミラーは非アクティブ状態(402)でなければならない。従って、
ミラーを破壊するために、管理者は最初にミラーからスレーブイメージを取り除
き、次に、上で説明されるようにミラーをディアクティベートする。そして、管
理者は、マスタ記憶装置にミラーを破壊するように命令する。マスタ記憶装置は
ミラーに関連するすべてのミラー構成情報を取り除いて、ミラーに関連するすべ
てのLUsをLUリストから取り除く。その結果、マスタ記憶装置のリモートミラー
リングドライバーは、LUアレイセット内のLUsを対象とする書込み要求に対する
割り込みを止める。ミラーを破壊することでは対応するLUs又はそこに含まれた
データが削除されないことに注意すべきである。
【0094】 ミラーの操作の間、マスタ記憶装置内の主SP、および特にリモートミラーリ
ングロジック302は、書込みインテントログを書込みキャッシュ内に維持する。
書込みインテントを維持することは、書込みインテントログ内に書き込みエント
リを格納することと、書込みインテントログから不要な書込みエントリを取り除
くことを含み、そして、特に、ランダム・アクセス・メモリ(RAM)などの揮発性
記憶装置に書込みインテントログが保存されているならば、不良を検出したとき
にディスクアレイ206などの不揮発性記憶装置に書込みインテントログを記憶す
ることと、不良から回復したときに不揮発性記憶装置から書込みインテントログ
を再生させることをさらに含むこととしても良い。それぞれの書込みエントリは
書込み要求から得られるメタデータを含み、そして望ましくは、リモートミラー
リングロジック302によってアップデートされている特定のイメージブロックを
識別する。特定の書込みエントリが書込みインテントログ内にある限り、リモー
トミラーリングロジック302は対応するイメージブロックがすべてのミラーイメ
ージに渡って潜在的に非同期であると考える。すべてのミラーイメージがいった
ん特定の書込み要求に基づいてアップデートされると、リモートミラーリングロ
ジック302は対応する書込みエントリを書込みインテントログから自由に取り除
くことができる。
【0095】 図6は、書込み要求を処理するリモートミラーリングロジックの例を示す論理
フローチャートである。ステップ602に始まり、ステップ604で書込み要求を受け
取ると、ステップ606においてリモートミラーリングロジックは、書込み要求か
ら得られるメタデータを含む書込みインテントログ内に書込みエントリを格納す
る。本発明の好ましい実施の態様では、メタデータはアップデートされたイメー
ジブロックを識別するブロック識別子をさらに含み、メタデータは追加的に、ま
たは代替的に、イメージに対する1以上の変更を示す書込み更新情報を含むこと
ができる。ステップ606で書込みインテントログ内に書込みエントリを格納した
後に、ステップ608においてリモートミラーリングロジックは書込み要求に基づ
くマスタイメージをアップデートし、次に、ステップ610で書込み要求に基づく
スレーブイメージをアップデートする。書込み要求を処理するリモートミラーリ
ングロジックはステップ699で終わる。
【0096】 図7は特に「遅延(lazy)」削除テクニックを使用して、不要な書込みエント
リを書込みインテントログから取り除くためのリモートミラーリングロジックの
例を示す論理フローチャートである。リモートミラーリングロジックは、書込み
インテントログ内の各書込みエントリを定期的にテストして書込みエントリがま
だ必要であるかを決定し、書込みエントリが不要であると決定したならば、書込
みインテントログから書込みエントリを取り除く。リモートミラーリングロジッ
クが、いまだ、対応する書込み要求に基づく1つ以上のミラーイメージのアップ
デート処理中であるならば、書込みエントリは必要であると考慮され、リモート
ミラーリングロジックが対応する書込み要求に基づくすべてのミラーイメージを
アップデートしたならば、書込みエントリは不要であると考慮される。
【0097】 従って、ステップ702に始まり、リモートミラーリングロジックは、ステッ
プ704において、書き込みインテントログ内にテストされていない書き込みエ
ントリがあるか否かを決定する。書き込みインテントログ内のすべての書き込み
エントリのテストが完了しているならば(即ち、ステップ704において、NO
ならば)、書き込みインテントログから書き込みエントリを削除するためのリモ
ートミラーリングロジックはステップ709において終了する。しかし、書き込
みインテントログ内にテストされていない書き込みエントリがあるならば(即ち
、ステップ704において、YESならば)、リモートミラーリングロジックは
、ステップ706において、書き込みエントリがいまだ必要か否かを決定する。
書き込みエントリがいまだ必要であるならば(即ち、ステップ706において、
YESならば)、リモートミラーリングロジックはステップ704を繰り返す。
しかし、書き込みエントリが不要であるならば(即ち、ステップ706において
、NOならば)、リモートミラーリングロジックはステップ708において、書
き込みインテントログ内から書き込みエントリを削除し、そしてステップ704
を繰り返す。
【0098】 ミラーの操作の間に、マスタイメージが不良となることがあり得る。マスタイ
メージは、SPの不良、通信不良又はメディアの不良によって不良となりうる。
マスタイメージが不良になると、マスタイメージが修復されるか又はスレーブイ
メージが上に説明したようにマスタイメージとして作動するように昇格されるま
で、ミラーにアクセスすることはできない。さらに、スレーブ同期化操作が生じ
ている間にマスタイメージの不良が起こると、同期化操作が開始されたときのス
レーブ状態がそのまま残ることになる。一旦マスタイメージが確立されると(現
在のマスタイメージを修復するか又はスレーブイメージをマスタイメージとして
昇格させることによる)、同期化操作は再開される。
【0099】 上に説明したように、1つのSPの不良がマスタイメージを不良にしうる。単
一のSPを有するマスタ記憶装置内のそのSPの不良はマスタイメージの即座の
不良となる。しかしながら、2つのSPを有するマスタ記憶装置内の1つのSP
に不良が生じても、このことはマスタ記憶装置がミラーで作動することを妨げな
い。なぜなら、残りの1つのSPは、ミラーが通常の操作(但し、バックアップ
SPの保障はない)を続けることができるようにマスタイメージの管理及び制御
を引き受けるからである。
【0100】 従って、マスタ記憶装置内の主SPが不良になったとき、二次SPがマスタイ
メージの制御を引き受ける。不良の時点において、書き込みインテントログ内の
いずれの書き込みエントリに相当する書き込み操作は完了時点が異なるかもしれ
ない。例えば、リモートミラーリングロジック302はいずれのイメージもアッ
プデートしていないかもしれず、マスタイメージをアップデートしたが、スレー
ブイメージをアップデートしていないかもしれず、マスタイメージといくつかの
スレーブイメージをアップデートしたかもしれず、又は、マスタイメージとすべ
てのスレーブイメージをアップデートしたかもしれない。しかしながら、主SP
からの書き込みインテントログが二次SPに複写されるため、二次SPは複写さ
れた書き込みインテントログを用いてスレーブイメージを同期させることができ
る。特に、全マスタイメージを各スレーブ記憶装置に複写するよりも、リモート
ミラーリングロジックは、書き込みインテントログ内の書き込みエントリに基づ
いて非同期化されるかもしれないいずれかの部分を決定し、次に、非同期化され
るかもしれないスレーブイメージ部分のみを、好ましくは、非同期化されるかも
しれないイメージブロックのみを複写することによって、再同期化調整する。
【0101】 一方、マスタ記憶装置が不良になると、自動バックアップ/再生ロジック30
6は書き込みインテントログをディスクアレイ206に記憶する。図8は、自動
バックアップ/再生ロジックの例を示す論理フローチャートである。ステップ8
02に始まり、ステップ804においてSPの不良を検出すると、自動バックア
ップ/再生ロジック306はステップ806において書き込みインテントログを
ディスクアレイ206に記憶し、そしてステップ899で終了する。本発明の好
ましい実施の形態において、マスタ記憶装置はバックアップ用のバッテリを備え
、電力の不良のときでも自動バックアップ/再生ロジック306が書き込みイン
テントログをディスクアレイ206に記憶できるようにしている。さらに、自動
バックアップ/再生ロジック306は、実際に、部分的なディスク不良の場合で
も書き込みインテントログを再生することができるようにディスクアレイ206
に書き込みインテントログの複数のコピーを記憶する。
【0102】 不良の時点において、書き込みインテントログ内のいずれの書き込みエントリ
に相当する書き込み操作の完了時点は異なるかもしれない。例えば、リモートミ
ラーリングロジック302はいずれのイメージもアップデートしていないかもし
れず、マスタイメージをアップデートしたが、スレーブイメージをアップデート
していないかもしれず、マスタイメージといくつかのスレーブイメージをアップ
デートしたかもしれず、又は、マスタイメージとすべてのスレーブイメージをア
ップデートしたかもしれない。
【0103】 不良の後に一旦マスタ記憶装置が操作されると、主SP(これは主SP又は不
良の前は二次SPであったかもしれない)と、特に、自動バックアップ/再生ロ
ジック306はディスクアレイ206から書き込みインテントログを再生する。
リモートミラーリングロジック302は、次に、スレーブイメージを再同期化調
整するように命令される。全マスタイメージを各スレーブ記憶装置にコピーする
よりもリモートミラーリングロジック302は、書き込みインテントログ内の書
き込みエントリに基づいて非同期化されるかもしれないスレーブイメージの部分
を決定し、次に、非同期化されるかもしれないスレーブイメージの部分のみを、
好ましくは、非同期化されるかもしれないスレーブイメージブロックのみをコピ
ーすることによって再同期化調整する。
【0104】 図9は、マスタ記憶装置の不良の後にスレーブイメージを再同期化調整するロ
ジックの例を示す論理フローチャートである。ステップ902に始まり、ロジッ
クは最初にステップ904においてディスクアレイ206から書き込みインテン
トログを再生する。ロジックは、次に、ステップ906において、書き込みイン
テントログ内の書き込みエントリによって示される非同期化されるかもしれない
スレーブイメージのいかなる部分を決定し、そして、書き込みインテントログ内
の書き込みエントリによって示されるスレーブイメージの部分のみをステップ9
08において再同期化調整する。ロジックはステップ999において終了する。
【0105】 本発明のある局面を例として示した。この例において、マスタ記憶装置は、第
1イメージブロック(ブロック1)に書き込むために第1要求を受け、第2イメ
ージブロック(ブロック2)に書き込むために第2要求を受け、第3イメージブ
ロック(ブロック3)に書き込むために第3要求を受け、第4イメージブロック
(ブロック4)に書き込むために第4要求を受ける。マスタ記憶装置は書き込み
インテントログに書き込みエントリを加えて、ブロック1、ブロック2、ブロッ
ク3及びブロック4が、図10Aに示すように、非同期化されるかもしれないこ
とを示し、次に、その書き込み要求に基づいてミラーイメージをアップデートす
る。不良が生じる前に、マスタ記憶装置は第1書き込み要求に基づくすべてのミ
ラーイメージのアップデート及び書き込みインテントログからの相当する書き込
みエントリ(即ち、ブロック1)の削除、第2書き込み要求に基づくすべてのミ
ラーイメージのアップデート(但し、書き込みインテントログからの相当する書
き込みエントリの削除はしない)、第3書き込み要求に基づくいくつかの(すべ
てではない)ミラーイメージのアップデート、並びに第4書き込み要求に基づく
ミラーイメージの非更新を行うことができる。従って、図10Bに示すように、
書き込みインテントログは、不良の時点でブロック2,ブロック3及びブロック
4のための書き込みエントリを含む。不良の時点でブロック3のみが実際に非同
期化されている(なぜなら、マスタ記憶装置はすべてのミラーイメージのために
ブロック2の更新を完了し、かつ、いずれのミラーイメージについてブロック4
をアップデートしていないため)ことに留意されたい。不良から回復すると、書
き込みインテントログは図10Bに示すものである。なぜなら、書き込みインテ
ントログは、不良の期間中保護されるからである。従って、マスタ記憶装置は、
書き込みインテントログに示されるように、スレーブイメージを再同期化するた
めにマスタイメージからブロック2,ブロック3及びブロック4をすべてのスレ
ーブイメージにコピーする。
【0106】 本発明の好ましい実施の形態において、書き込みインテントログを維持し、そ
れを使用してマスタ記憶装置の不良の後にスレーブイメージを再同期化調整する
ほとんどすべてのロジックは、コンピュータによって読み取ることが可能なメデ
ィアに格納されマスタ記憶装置内、特に、マスタ記憶装置内で作動する記憶装置
プロセッサ内に設けたマイクロプロセッサシステムによって実行される1セット
のコンピュータプログラム命令として実行される。発明の好ましい実施の形態は
いかなる従来のコンピュータプログラム言語によって実行される。例えば、好ま
しい実施の形態は手続プログラム言語(例えば、「C」)又はオブジェクト指向
プログラム言語(例えば、「C++」)で実行される。発明の代替実施形態は、
個別の構成要素、即ち、集積回路、フィールドプログラマブルゲートアレイ(F
PGA)又はマイクロプロセッサのようなプログラマブルロジック装置と関連し
て用いられるプログラマブルロジック、あるいはこれらの組合せを含み、その他
の手段を用いて実行される。
【0107】 発明の代替実施形態は、コンピュータシステムで使用されるコンピュータプロ
グラム製品として実行されうる。そのような実行は、コンピュータで読み取り可
能なメディア(例えば、ディスケット、CD−ROM,ROM、又は固定ディス
ク)のような有形メディアに保存された、又は、メディアを介してネットワーク
に接続された通信アダプタのようなモデムその他のインタフェースを介してコン
ピュータシステムに送信可能な搬送波に乗せるコンピュータデータ信号にされる
一連のコンピュータ命令を含む。媒体は、有形媒体(例えば、光又はアナログ通
信線)、又は、無線技術(例えば、マイクロウェーブ、赤外線その他の送信技術
)により実行される媒体のいずれかとすることができる。一連のコンピュータ命
令は、システムに関連して上で説明したすべて又は一部の機能性を具現する。そ
のようなコンピュータ命令は多数のコンピュータアーキテクチュアー又はオペレ
ーティングシステムで用いられる多数のプログラム言語で記述可能であることを
当業者は理解できる。その上、そのような命令は、半導体、磁気、光学その他の
メモリ装置のようなメモリ装置に記憶させることができ、そして、光学、赤外線
、マイクロウェーブ、その他の伝送技術といったどのような通信技術を用いて通
信することができる。そのようなコンピュータプログラム製品が、コンピュータ
システム(例えば、システムROM又は固定ディスク)にプレロードされる印刷又は
電子ドキュメンテーション(例えば、パッケージソフトウェア)付きのリムーバブ
ルメディアとして配付されるか、またはネットワーク(例えば、インターネット
又はWWW)上でサーバか電子掲示板から配付されることが期待される。
【0108】 従って、本願発明はコンピュータシステム内で複数のデータイメージを同期さ
せる方法として具体化することができる。その複数のデータイメージはマスタイ
メージと少なくとも1つのスレーブイメージとを含む。その方法は、複数のデー
タイメージの同期していない可能性のある部分を特定するログを保持することと
、その同期していない可能性のある部分のみを再び同期させることとを含む。ロ
グを保持することには、書込み要求を受け取ることと、その書込み要求から得ら
れる情報からなる書込みエントリーをそのログに記憶させることとが含まれる。
書込み要求から得られるその情報は、同期していない可能性のあるイメージブロ
ックを特定するブロック識別子又はそれらの複数のデータイメージへの1又は2
以上の修正を表す書込み更新情報でもよい。ログを保持することには、書込み要
求に基づいてマスタイメージを更新すること、書込み要求に基づいて少なくとも
1つのスレーブイメージを更新すること、及び、その書込み要求に基づいてマス
タイメージ及び少なくとも1つのスレーブイメージを更新した後にログから書込
みエントリーを削除することも含まれる。ログを保持することには、不良を検出
するとログを不揮発性記憶媒体に書き込むことと、不良から回復するとその不揮
発性記憶媒体からログを再記憶させることとも含めてもよい。複数のデータイメ
ージの同期していない可能性のある部分のみを再同期させることには、マスタイ
メージのそれらの部分を少なくとも1つのスレーブイメージに複写することが含
まれる。本願発明の望ましい実施例においては、ログは同期していない可能性の
あるイメージブロックの数を特定し、また、同期していない可能性のある複数の
データイメージの部分のみを再同期させることには、同期していない可能性のあ
るそれらのイメージブロックのみをマスタイメージから少なくとも1つのスレー
ブイメージに複写することが含まれる。
【0109】 本願発明はコンピュータシステム内で複数のデータイメージを保持するための
装置として具体化することもできる。その複数のデータイメージはマスタイメー
ジと少なくとも1つのスレーブイメージとを含む。その装置は、少なくともマス
タイメージを記憶する不揮発性記憶媒体、少なくとも1つのスレーブイメージに
アクセスするネットワークインタフェース、同期していない可能性のある少なく
とも1つのスレーブイメージの部分を示す書込みインテントログ及び複数のデー
タイメージを保持するための遠隔ミラーリングロジックを備える。その遠隔ミラ
ーリングロジックは、特に、書込みインテントログによって示されているように
同期していない可能性のある少なくとも1つのスレーブイメージの部分のみを再
同期させることによって、不良に続いて少なくとも1つのスレーブイメージをマ
スタイメージに再同期させるための再同期ロジックを備える。遠隔ミラーリング
ロジックは、ホストから書込み要求を受け取るように作動するように接続された
受信ロジックと、書込み要求から得られる情報を含む書込みエントリーを書込み
インテントログに記憶させるように接続されたログ保持ロジックとをも備える。
書込み要求から得られた情報は、同期していない可能性のあるイメージブロック
を特定するブロック識別子又は複数のデータイメージへの1又は2以上の修正を
表す書込み更新情報でもよい。遠隔ミラーリングロジックは、書込み要求に基づ
いてマスタイメージを更新するためのマスタイメージ更新ロジックと、書込み要
求に基づいて少なくとも1つのスレーブイメージを更新するためのスレーブイメ
ージ更新ロジックとをも備える。ログ保持ロジックは、望ましくは「レイジー」
削除技術を用いることによって、その書込み要求に基づいてマスタイメージ及び
少なくとも1つのスレーブイメージを更新した後に書込みインテントログから書
込みエントリーを削除する。この装置には、不良を検出すると書込みインテント
ログを不揮発性記憶媒体に書き込むともに、その不良から回復するとその不揮発
性記憶媒体からその書込みインテントログを復元するための自動バックアップ/
再生ロジックを含めてもよい。再同期ロジックは、同期していない可能性のある
マスタイメージの部分のみを少なくとも1つのスレーブイメージに複写する。本
願発明の望ましい実施例では、書込みインテントログは同期していない可能性の
あるイメージブロックの数を特定し、また、再同期ロジックが、同期していない
可能性のあるイメージブロックのみをマスタイメージから少なくとも1つのスレ
ーブイメージに複写する。
【0110】 本願発明はコンピュータシステム内で複数のデータイメージを保持するための
コンピュータプログラムとして具体化することもできる。その複数のデータイメ
ージはマスタイメージと少なくとも1つのスレーブイメージとを含む。そのコン
ピュータプログラムは、少なくともマスタイメージを記憶する不揮発性記憶媒体
及び少なくとも1つのスレーブイメージにアクセスするネットワークインタフェ
ースへのインタフェースを提供するディスク管理ロジックと、複数のデータイメ
ージを保持するための遠隔ミラーリングロジックとを備える。その遠隔ミラーリ
ングロジックは、同期していない可能性のある少なくとも1つのスレーブイメー
ジの部分を表す書込みログを保持するようにプログラムされたログ保持ロジック
と、その書込みインテントログによって示されるように同期していない可能性の
ある少なくとも1つのスレーブイメージのそれらの部分のみを再同期することに
よって、不良に続いて少なくとも1つのスレーブイメージをマスタイメージに再
同期させるようにプログラムされた再同期ロジックとを含む。遠隔ミラーリング
ロジックは、ホストから書込み要求を受け取るように作動するように接続された
受信ロジックを含み、ログ保持ロジックは、書込み要求から得られる書込みエン
トリーを書込みインテントログに記憶するようにプログラムされている。書込み
要求から得られる情報は、同期していない可能性のあるイメージブロックを特定
するブロック識別子又は複数のデータイメージへの1又は2以上の修正を表す書
込み更新情報でもよい。遠隔ミラーリングロジックは、書込み要求に基づいてマ
スタイメージを更新するためのマスタイメージ更新ロジックと、書込み要求に基
づいて少なくとも1つのスレーブイメージを更新するためのスレーブイメージ更
新ロジックとをも備える。ログ保持ロジックは、望ましくは「レイジー」削除技
術を用いることによって、その書込み要求に基づいてマスタイメージ及び少なく
とも1つのスレーブイメージを更新した後に書込みインテントログから書込みエ
ントリーを削除するようにプログラムされている。このコンピュータプログラム
には、不良を検出するとディスク管理ロジックを介して書込みインテントログを
不揮発性記憶媒体に書き込むともに、その不良から回復するとディスク管理ロジ
ックを介してその不揮発性記憶媒体からその書込みインテントログを復元するた
めの自動バックアップ/再生ロジックを含めてもよい。再同期ロジックは、同期
していない可能性のあるマスタイメージの部分のみをディスク管理ロジックを介
して少なくとも1つのスレーブイメージに複写する。本願発明の望ましい実施例
では、書込みインテントログは同期していない可能性のあるイメージブロックの
数を特定し、再同期ロジックは、同期していない可能性のあるイメージブロック
のみをディスク管理ロジックを介してマスタイメージから少なくとも1つのスレ
ーブイメージに複写する。
【0111】 本願発明は、マスタイメージを保持するためのマスタ記憶ユニットとスレーブ
イメージを保持するための少なくとも1つのスレーブ記憶ユニットとを持つコン
ピュータシステムとして具体化することもできる。マスタ記憶ユニットは、同期
していない可能性のあるスレーブイメージの部分を特定するログを保持するとと
もに、ログ内に特定されたマスタイメージのそれらの部分のみをマスタイメージ
から少なくとも1つのスレーブ記憶ユニットに複写する。スレーブ記憶ユニット
は、スレーブイメージをマスタイメージに同期させるために、マスタイメージか
ら複写されたマスタイメージのそれらの部分のみを含めるようにスレーブイメー
ジを更新する。
【0112】 本願発明は、本質又は本質的な特徴から逸脱することなく他の形態に具体化す
ることができる。上記の実施例はすべての点において例示として考慮されるもの
で限定を意図するものではない。
【図面の簡単な説明】
本発明の前述の及びその他の目的及び利点は、ここでは添付図面を参照して以
下の更なる説明からより十分に理解されるであろう。
【図1】 図1は、本発明の実施例に従って、例証的なコンピュータ記憶システムを示し
ているブロックダイヤグラムである。
【図2】 図2は、発明の実施例に従って、例証的な記憶ユニットを示しているブロック
ダイヤグラムである。
【図3】 図3は、本発明の実施例に従って、記憶プロセッサーの関連するロジック・ブ
ロックの概念図を示しているブロックダイヤグラムである。
【図4】 図4は、前記現在の発明の実施例に従って、ミラーの3つの第一ステートを示
している状態(ステート)図である。
【図5】 図5は、本発明の実施例に従って、遠隔ミラー・イメージの4つの第一ステー
トを示している状態(ステート)図である。
【図6】 図6は、本発明の実施例に従って、書込みリクエストを処理するための例証的
なロジックを示している論理流れ図である。
【図7】 図7は、本発明の実施例に従って、書込みインテント・ログから必要とされな
い書込みエントリーを削除するための例証的なロジックを示している論理流れ図
である。
【図8】 図8は、本発明の実施例に従って、不良の検出によって不揮発性記憶装置に前
記書込みインテント・ログを自動的に記憶するための例証的なロジックを示して
いる論理流れ図である。
【図9】 図9は、本発明の実施例に従って、不良をフォローしているスレーブ・イメー
ジを再同期させるために例証的なロジックを示している論理流れ図である
【図10】 図10Aは、本発明の実施例に従って、多数の書込みリクエストを受信した後
の例証的な書込みインテント・ログのステートを示しているブロックダイヤグラ
ムである。 図10Bは、本発明の実施例に従って、不良の時点および該不良から回復した
後の例証的な書込みインテント・ログのステートを示しているブロックダイヤグ
ラムである。
【手続補正書】
【提出日】平成14年5月21日(2002.5.21)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ロア、ギラーモ アメリカ合衆国、ノースカロライナ州 27613、ローリ、ブレイスリッジ・ロード 8833 Fターム(参考) 5B065 BA01 CA15 CC08 CE11 CH01 EA31 EA33 EK05 5B082 DC09 DE05 GB06 【要約の続き】 することによって前記マスタイメージに前記スレーブイ メージに再同期させる。

Claims (30)

    【特許請求の範囲】
  1. 【請求項1】 コンピュータシステム内で、マスタイメージ及び少なくとも
    1つのスレーブイメージを含む複数のデータイメージを同期させる方法であって
    、 複数のデータイメージの再同期させるべき部分を識別するログを保持する工程
    と、 そのログ内において識別された複数のデータイメージのそれらの部分を再同期
    する工程とを含む方法。
  2. 【請求項2】 請求項1の方法において、前記複数のデータイメージの前記
    再同期すべき部分は前記データイメージの同期していない可能性のある部分から
    なる方法。
  3. 【請求項3】 請求項2の方法において、前記ログを保持する工程は、 書込み要求を受け取る工程と、 前記書込み要求から得られる情報からなる書込みエントリーを前記ログに記憶
    させる工程とを含む方法。
  4. 【請求項4】 請求項3の方法において、前記書込み要求から得られる情報
    は、同期していない可能性のあるイメージブロックを識別するブロック識別子か
    らなる方法。
  5. 【請求項5】 請求項3の方法において、前記書込み要求から得られる情報
    は、前記複数のデータイメージへの1又は2以上の修正を示す書込み更新情報か
    らなる方法。
  6. 【請求項6】 請求項3の方法において、前記ログを保持する工程は、さら
    に、 前記書込み要求に基づいて前記マスタイメージを更新する工程と、 前記書込み要求に基づいて前記少なくとも1つのスレーブイメージを更新する
    工程とを含む方法。
  7. 【請求項7】 請求項6の方法において、前記ログを保持する工程は、さら
    に、前記書込み要求に基づいて前記マスタイメージ及び少なくとも1つのスレー
    ブイメージを更新した後に、前記ログから前記書込みエントリーを削除する工程
    を含む方法。
  8. 【請求項8】 請求項2の方法において、前記ログを保持する工程は、 不良を検出すると不揮発性記憶装置に前記ログを書き込む工程と、 前記不良から回復すると前記不揮発性記憶装置から前記ログを再記憶させる工
    程とを含む方法。
  9. 【請求項9】 請求項2の方法において、前記複数のデータイメージの同期
    していない可能性のある前記部分を再同期させる工程は、前記マスタイメージの
    前記部分を前記少なくとも1つのスレーブイメージに複写する工程からなる方法
  10. 【請求項10】 請求項2の方法において、前記ログは、同期していない可
    能性のあるイメージブロックの数を識別し、前記複数のデータイメージの同期し
    ていない可能性のある前記部分を再同期させる工程は、同期していない可能性の
    ある前記イメージブロックを前記マスタイメージから前記少なくとも1つのスレ
    ーブイメージに複写する方法。
  11. 【請求項11】 請求項1の方法において、前記ログにおいて識別された前
    記複数のデータイメージの部分を再同期させる工程は、前記ログにおいて識別さ
    れた前記複数のデータイメージの部分のみを再同期させる方法。
  12. 【請求項12】 コンピュータシステム内で、マスタイメージ及び少なくと
    も1つのスレーブイメージを含む複数のデータイメージを同期させる装置であっ
    て、 少なくともマスタイメージを記憶する不揮発性記憶装置と、 少なくとも1つのスレーブイメージにアクセスするネットワークインタフェー
    スと、 前記少なくとも1つのスレーブイメージの同期していない可能性のある部分を
    示す書込みインテントログと、 前記複数のデータイメージを保持するための遠隔ミラーリングロジックであっ
    て、書込みインテントログによって示されているように同期していない可能性の
    ある少なくとも1つのスレーブイメージの部分のみを再同期させることによって
    、不良に続いて少なくとも1つのスレーブイメージをマスタイメージに再同期さ
    せるように作動するように接続されている再同期ロジックからなる遠隔ミラーリ
    ングロジックとを備える装置。
  13. 【請求項13】 請求項12の装置において、前記遠隔ミラーリングロジッ
    クは、さらに、 ホストから書込み要求を受け取るように接続されている受信ロジックと、 前記書込み要求から得られる情報を含む書込みエントリーを前記書込みインテ
    ントログに記憶させるように接続されているログ保持ロジックとを備える装置。
  14. 【請求項14】 請求項13の装置において、前記書込み要求から得られる
    情報は、同期していない可能性のあるイメージブロックを識別するブロック識別
    子からなる装置。
  15. 【請求項15】 請求項13の装置において、前記書込み要求から得られる
    情報は、前記複数のデータイメージへの1又は2以上の修正を示す書込み更新情
    報からなる装置。
  16. 【請求項16】 請求項13の装置において、前記遠隔ミラーリングロジッ
    クは、さらに、 前記書込み要求に基づいて前記マスタイメージを更新するように接続されてい
    るマスターイメージ更新ロジックと、 前記書込み要求に基づいて前記少なくとも1つのスレーブイメージを更新する
    ように接続されているスレーブイメージ更新ロジックとを備える装置。
  17. 【請求項17】 請求項16の装置において、前記ログ保持ロジックは、前
    記書込み要求に基づいて前記マスタイメージ及び前記少なくとも1つのスレーブ
    イメージを更新した後に、前記書込みインテントログから前記書込みエントリー
    を削除するように接続されている装置。
  18. 【請求項18】 請求項12の装置において、さらに、不良を検出すると前
    記不揮発性記憶装置に前記書込みインテントログを記憶させ、さらに、前記不良
    から回復すると前記不揮発性記憶装置から前記書込みインテントログを再記憶さ
    せるように接続された自動バックアップ/再生ロジックを備える装置。
  19. 【請求項19】 請求項12の装置において、前記再同期ロジックは、前記
    マスターイメージの同期していない可能性のある前記部分を前記少なくとも1つ
    のスレーブイメージに複写するように接続されている装置。
  20. 【請求項20】 請求項12の装置において、前記書込みインテントログは
    、同期していない可能性のあるイメージブロックの数を識別し、前記再同期ロジ
    ックは、同期していない可能性のある前記イメージブロックを前記マスタイメー
    ジから前記少なくとも1つのスレーブイメージに複写する装置。
  21. 【請求項21】 コンピュータシステム内でマスタイメージ及び少なくとも
    1つのスレーブイメージを含む複数のデータイメージを保持するコンピュータプ
    ログラムを包含したコンピュータ読取り可能な媒体を備えるプログラム製品であ
    って、前記コンピュータプログラが、 少なくともマスターイメージを記憶する不揮発性記憶装置へ、及び、少なくと
    も1つのスレーブイメージにアクセスするネットワークインタフェースへのイン
    タフェースを提供するディスク管理ロジックと、 前記複数のデータイメージを保持するための遠隔ミラーリングロジックであっ
    て、少なくとも1つのスレーブイメージの同期していない可能性のある部分を示
    す書込みインテントログを保持するようにプログラムされたログ管理ロジックと
    、前記書込みインテントログによって示されているように同期していない可能性
    のある少なくとも1つのスレーブイメージのそれらの部分を再同期することによ
    って、不良に続いて少なくとも1つのスレーブイメージをマスタイメージに再同
    期させるようにプログラムされている再同期ロジックとからなるディスク管理ロ
    ジックとを備えるプログラム製品。
  22. 【請求項22】 請求項21のプログラム製品において、前記遠隔ミラーリ
    ングロジックは、さらに、ホストから書込み要求を受け取るように接続されてい
    る受信ロジックを更に備えており、前記ログ保持ロジックは、前記書込み要求か
    ら得られる情報を含む書込みエントリーを前記書込みインテントログに記憶させ
    るようにプログラムされているプログラム製品。
  23. 【請求項23】 請求項22のプログラム製品において、前記書込み要求か
    ら得られる情報は、同期していない可能性のあるイメージブロックを識別するブ
    ロック識別子からなるプログラム製品。
  24. 【請求項24】 請求項22のプログラム製品において、前記書込み要求か
    ら得られる情報は、前記複数のデータイメージへの1又は2以上の修正を示す書
    込み更新情報からなるプログラム製品。
  25. 【請求項25】 請求項22のプログラム製品において、前記遠隔ミラーリ
    ングロジックは、さらに、 前記書込み要求に基づいて前記マスタイメージを更新するようにプログラムさ
    れているマスターイメージ更新ロジックと、 前記書込み要求に基づいて前記少なくとも1つのスレーブイメージを更新する
    ようにプログラムされているスレーブイメージ更新ロジックとを備えるプログラ
    ム製品。
  26. 【請求項26】 請求項25のプログラム製品において、前記ログ保持ロジ
    ックは、前記書込み要求に基づいて前記マスタイメージ及び前記少なくとも1つ
    のスレーブイメージを更新した後に、前記書込みインテントログから前記書込み
    エントリーを削除するようにプログラムされているプログラム製品。
  27. 【請求項27】 請求項21のプログラム製品において、さらに、不良を検
    出すると前記ディスク管理ロジックを介して不揮発性記憶装置に前記書込みイン
    テントログを記憶させ、さらに、前記不良から回復すると前記ディスク管理ロジ
    ックを介して前記不揮発性記憶装置から前記書込みインテントログを再記憶させ
    るようにプログラムされた自動バックアップ/再生ロジックを備えるプログラム
    製品。
  28. 【請求項28】 請求項21のプログラム製品において、前記再同期ロジッ
    クは、前記マスターイメージの同期していない可能性のある前記部分を前記ディ
    スク管理ロジックを介して前記少なくとも1つのスレーブイメージに複写するよ
    うにプログラムされているプログラム製品。
  29. 【請求項29】 請求項21のプログラム製品において、前記書込みインテ
    ントログは、同期していない可能性のあるイメージブロックの数を識別し、前記
    再同期ロジックは、同期していない可能性のある前記イメージブロックを前記デ
    ィスク管理ロジックを介して前記マスタイメージから前記少なくとも1つのスレ
    ーブイメージに複写するようにプログラムされているプログラム製品。
  30. 【請求項30】 マスタイメージを保持するためのマスタ記憶装置ユニット
    とスレーブイメージを保持するためのスレーブ記憶装置ユニットとを備えるコン
    ピュータシステムにおいて前記スレーブを前記マスタイメージに再同期させる方
    法であって、 前記マスタ記憶装置ユニットによって、前記スレーブイメージの同期していな
    い可能性のある部分を識別するログを保持する工程と、 前記マスタ記憶装置ユニットによって、前記スレーブ記憶装置ユニットへ、前
    記ログ内で識別された前記マスタイメージの部分を複写する工程と、 前記スレーブ記憶装置ユニットによって、前記スレーブイメージを前記マスタ
    イメージに同期させるために、前記マスタイメージから複写された前記スレーブ
    イメージの前記部分を更新する工程とを含む方法。
JP2001517262A 1999-08-17 2000-08-02 遠隔ミラーリングシステム、装置及び方法 Expired - Lifetime JP4430846B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/375,860 US6671705B1 (en) 1999-08-17 1999-08-17 Remote mirroring system, device, and method
US09/375,860 1999-08-17
PCT/US2000/021193 WO2001013235A1 (en) 1999-08-17 2000-08-02 Remote mirroring system, device, and method

Publications (2)

Publication Number Publication Date
JP2003507791A true JP2003507791A (ja) 2003-02-25
JP4430846B2 JP4430846B2 (ja) 2010-03-10

Family

ID=23482669

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001517262A Expired - Lifetime JP4430846B2 (ja) 1999-08-17 2000-08-02 遠隔ミラーリングシステム、装置及び方法

Country Status (4)

Country Link
US (1) US6671705B1 (ja)
EP (2) EP1569119A3 (ja)
JP (1) JP4430846B2 (ja)
WO (1) WO2001013235A1 (ja)

Families Citing this family (117)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7114049B2 (en) * 1997-01-08 2006-09-26 Hitachi, Ltd. Adaptive remote copy in a heterogeneous environment
JP4689137B2 (ja) * 2001-08-08 2011-05-25 株式会社日立製作所 リモートコピー制御方法、及びストレージシステム
US7313581B1 (en) * 1999-04-29 2007-12-25 International Business Machines Corporation Method for deferred deletion of entries for a directory service backing store
US6832379B1 (en) * 1999-08-17 2004-12-14 Emc Corporation Computer architecture utilizing layered device drivers
US7167962B2 (en) * 1999-08-19 2007-01-23 Hitachi, Ltd. Remote copy for a storage controller with reduced data size
US6938058B2 (en) 1999-08-23 2005-08-30 Eisenworld, Inc. Apparatus and method for transferring information between platforms
US7051173B2 (en) * 2000-02-04 2006-05-23 Fujitsu Limited Backup system and method thereof in disk shared file system
US6873987B1 (en) * 2000-05-31 2005-03-29 International Business Machines Corporation Method, system and program products for recovering from failures within a shared nothing distributed computing environment
US7386610B1 (en) * 2000-09-18 2008-06-10 Hewlett-Packard Development Company, L.P. Internet protocol data mirroring
US7143249B2 (en) * 2000-10-04 2006-11-28 Network Appliance, Inc. Resynchronization of mirrored storage devices
US6654912B1 (en) * 2000-10-04 2003-11-25 Network Appliance, Inc. Recovery of file system data in file servers mirrored file system volumes
DE10053016A1 (de) * 2000-10-17 2002-04-25 Libelle Informatik Gmbh Vorrichtung und Verfahren zur Datenspiegelung
US7054927B2 (en) * 2001-01-29 2006-05-30 Adaptec, Inc. File system metadata describing server directory information
US6990667B2 (en) 2001-01-29 2006-01-24 Adaptec, Inc. Server-independent object positioning for load balancing drives and servers
US6990547B2 (en) * 2001-01-29 2006-01-24 Adaptec, Inc. Replacing file system processors by hot swapping
US6862692B2 (en) 2001-01-29 2005-03-01 Adaptec, Inc. Dynamic redistribution of parity groups
JP2002259062A (ja) * 2001-02-28 2002-09-13 Hitachi Ltd 記憶装置システム及び記憶装置システムにおけるデータの複写方法
US7194590B2 (en) * 2001-02-28 2007-03-20 Hitachi, Ltd. Three data center adaptive remote copy
US6983294B2 (en) * 2001-05-09 2006-01-03 Tropic Networks Inc. Redundancy systems and methods in communications systems
US7143252B2 (en) * 2001-05-10 2006-11-28 Hitachi, Ltd. Storage apparatus system and method of data backup
US7213114B2 (en) 2001-05-10 2007-05-01 Hitachi, Ltd. Remote copy for a storage controller in a heterogeneous environment
US6742138B1 (en) 2001-06-12 2004-05-25 Emc Corporation Data recovery method and apparatus
US7310743B1 (en) 2001-06-12 2007-12-18 Emc Corporation Data recovery method and apparatus
US6910153B2 (en) * 2002-01-03 2005-06-21 International Business Machines Corporation Method and system for recovery from a coupling facility failure without preallocating space
US7139932B2 (en) * 2002-01-03 2006-11-21 Hitachi, Ltd. Data synchronization of multiple remote storage after remote copy suspension
US6745303B2 (en) * 2002-01-03 2004-06-01 Hitachi, Ltd. Data synchronization of multiple remote storage
US7503042B2 (en) * 2002-03-08 2009-03-10 Microsoft Corporation Non-script based intelligent migration tool capable of migrating software selected by a user, including software for which said migration tool has had no previous knowledge or encounters
US20040201689A1 (en) * 2002-03-21 2004-10-14 Angelica Quintana Method and system for recording a history of an image file history
US6993635B1 (en) * 2002-03-29 2006-01-31 Intransa, Inc. Synchronizing a distributed mirror
GB0208922D0 (en) * 2002-04-19 2002-05-29 Ibm Cache memory arrangement and methods for use in a cache memory system
US7103727B2 (en) * 2002-07-30 2006-09-05 Hitachi, Ltd. Storage system for multi-site remote copy
US7664984B2 (en) * 2002-10-09 2010-02-16 Xpoint Technologies, Inc. Method and system for updating a software image
US8336044B2 (en) 2002-10-09 2012-12-18 Rpx Corporation Method and system for deploying a software image
US7024581B1 (en) 2002-10-09 2006-04-04 Xpoint Technologies, Inc. Data processing recovery system and method spanning multiple operating system
JP4301849B2 (ja) 2003-03-31 2009-07-22 株式会社日立製作所 情報処理方法及びその実施システム並びにその処理プログラム並びにディザスタリカバリ方法およびシステム並びにその処理を実施する記憶装置およびその制御処理方法
JP2004362111A (ja) * 2003-06-03 2004-12-24 Hitachi Global Storage Technologies Inc 外部記憶装置
US7318133B2 (en) * 2003-06-03 2008-01-08 Hitachi, Ltd. Method and apparatus for replicating volumes
JP4433372B2 (ja) * 2003-06-18 2010-03-17 株式会社日立製作所 データアクセスシステム及び方法
US7467168B2 (en) * 2003-06-18 2008-12-16 International Business Machines Corporation Method for mirroring data at storage locations
US7617369B1 (en) * 2003-06-30 2009-11-10 Symantec Operating Corporation Fast failover with multiple secondary nodes
US7568034B1 (en) * 2003-07-03 2009-07-28 Google Inc. System and method for data distribution
US8136025B1 (en) 2003-07-03 2012-03-13 Google Inc. Assigning document identification tags
JP4021823B2 (ja) 2003-09-01 2007-12-12 株式会社日立製作所 リモートコピーシステム及びリモートコピーの方法
US7188127B2 (en) * 2003-10-07 2007-03-06 International Business Machines Corporation Method, system, and program for processing a file request
US7103739B2 (en) 2003-10-09 2006-09-05 International Business Machines Corporation Method and apparatus for providing hardware aware logical volume mirrors
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
US7596672B1 (en) 2003-10-24 2009-09-29 Network Appliance, Inc. Synchronous mirroring including writing image updates to a file
US7203796B1 (en) 2003-10-24 2007-04-10 Network Appliance, Inc. Method and apparatus for synchronous data mirroring
JP4319017B2 (ja) * 2003-12-02 2009-08-26 株式会社日立製作所 ストレージシステムの制御方法、ストレージシステム、及び記憶装置
US20050149554A1 (en) * 2003-12-29 2005-07-07 Chong Fay Jr. One-way data mirror using write logging
US7478211B2 (en) * 2004-01-09 2009-01-13 International Business Machines Corporation Maintaining consistency for remote copy using virtualization
US20050154786A1 (en) * 2004-01-09 2005-07-14 International Business Machines Corporation Ordering updates in remote copying of data
JP4551096B2 (ja) * 2004-02-03 2010-09-22 株式会社日立製作所 ストレージサブシステム
US7039662B2 (en) * 2004-02-24 2006-05-02 Hitachi, Ltd. Method and apparatus of media management on disk-subsystem
US7137042B2 (en) 2004-03-17 2006-11-14 Hitachi, Ltd. Heartbeat apparatus via remote mirroring link on multi-site and method of using same
JP4452533B2 (ja) * 2004-03-19 2010-04-21 株式会社日立製作所 システムおよび記憶装置システム
US20050210318A1 (en) * 2004-03-22 2005-09-22 Dell Products L.P. System and method for drive recovery following a drive failure
US7395446B2 (en) * 2004-05-03 2008-07-01 Microsoft Corporation Systems and methods for the implementation of a peer-to-peer rule-based pull autonomous synchronization system
US7225307B2 (en) * 2004-05-04 2007-05-29 International Business Machines Corporation Apparatus, system, and method for synchronizing an asynchronous mirror volume using a synchronous mirror volume
US20050278382A1 (en) * 2004-05-28 2005-12-15 Network Appliance, Inc. Method and apparatus for recovery of a current read-write unit of a file system
US7461101B2 (en) * 2004-07-13 2008-12-02 International Business Machines Corporation Method for reducing data loss and unavailability by integrating multiple levels of a storage hierarchy
US7392423B2 (en) 2004-08-13 2008-06-24 Microsoft Corporation Combined computer backup, disaster recovery and migration in a shared environment
US7634685B2 (en) 2004-08-13 2009-12-15 Microsoft Corporation Remote computer disaster recovery and migration tool for effective disaster recovery and migration scheme
US8224784B2 (en) * 2004-08-13 2012-07-17 Microsoft Corporation Combined computer disaster recovery and migration tool for effective disaster recovery as well as the backup and migration of user- and system-specific information
JP4662743B2 (ja) * 2004-09-13 2011-03-30 Necインフロンティア株式会社 データ2重化システム
US7577805B2 (en) * 2004-11-01 2009-08-18 Hitachi, Ltd. Using bandwidth and capacity parameters to control remote copy operations in storage systems
GB0424490D0 (en) * 2004-11-05 2004-12-08 Ibm Management of persistence in a data processing system
US8359429B1 (en) * 2004-11-08 2013-01-22 Symantec Operating Corporation System and method for distributing volume status information in a storage system
US8346843B2 (en) 2004-12-10 2013-01-01 Google Inc. System and method for scalable data distribution
US7415488B1 (en) 2004-12-31 2008-08-19 Symantec Operating Corporation System and method for redundant storage consistency recovery
US7617259B1 (en) 2004-12-31 2009-11-10 Symantec Operating Corporation System and method for managing redundant storage consistency at a file system level
US20060161808A1 (en) * 2005-01-18 2006-07-20 Burkey Todd R Method, apparatus and program storage device for providing intelligent copying for faster virtual disk mirroring
KR100640469B1 (ko) * 2005-01-28 2006-10-31 삼성전자주식회사 통신 시스템에서 미러링 서비스를 제공하기 위한 방법 및장치와 그 통신시스템
US7720890B2 (en) * 2005-02-22 2010-05-18 Microsoft Corporation Ghosted synchronization
US7933966B2 (en) * 2005-04-26 2011-04-26 Hewlett-Packard Development Company, L.P. Method and system of copying a memory area between processor elements for lock-step execution
US8010485B1 (en) 2005-10-20 2011-08-30 American Megatrends, Inc. Background movement of data between nodes in a storage cluster
US8010829B1 (en) 2005-10-20 2011-08-30 American Megatrends, Inc. Distributed hot-spare storage in a storage cluster
US7996608B1 (en) 2005-10-20 2011-08-09 American Megatrends, Inc. Providing redundancy in a storage system
JP5165206B2 (ja) * 2006-03-17 2013-03-21 富士通株式会社 バックアップシステムおよびバックアップ方法
US8078585B2 (en) * 2006-06-29 2011-12-13 Emc Corporation Reactive file recovery based on file naming and access information
US7849350B2 (en) * 2006-09-28 2010-12-07 Emc Corporation Responding to a storage processor failure with continued write caching
US8149133B2 (en) * 2006-10-20 2012-04-03 Hydril Usa Manufacturing Llc MUX BOP database mirroring
JP4369471B2 (ja) * 2006-12-27 2009-11-18 富士通株式会社 ミラーリングプログラム、ミラーリング方法、情報記憶装置
US8046548B1 (en) * 2007-01-30 2011-10-25 American Megatrends, Inc. Maintaining data consistency in mirrored cluster storage systems using bitmap write-intent logging
US8498967B1 (en) 2007-01-30 2013-07-30 American Megatrends, Inc. Two-node high availability cluster storage solution using an intelligent initiator to avoid split brain syndrome
US7908448B1 (en) * 2007-01-30 2011-03-15 American Megatrends, Inc. Maintaining data consistency in mirrored cluster storage systems with write-back cache
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
US8037524B1 (en) * 2007-06-19 2011-10-11 Netapp, Inc. System and method for differentiated cross-licensing for services across heterogeneous systems using transient keys
US20090300169A1 (en) * 2008-06-03 2009-12-03 Microsoft Corporation Synchronization throttling based on user activity
US8255739B1 (en) 2008-06-30 2012-08-28 American Megatrends, Inc. Achieving data consistency in a node failover with a degraded RAID array
US9256598B1 (en) * 2009-08-19 2016-02-09 Emc Corporation Systems, methods, and computer readable media for copy-on-demand optimization for large writes
US8301600B1 (en) * 2010-11-15 2012-10-30 Amazon Technologies, Inc. Failover recovery in a distributed data store
US9971656B2 (en) * 2010-12-13 2018-05-15 International Business Machines Corporation Instant data restoration
US9323572B2 (en) 2011-06-02 2016-04-26 International Business Machines Corporation Autoconfiguration of a cloud instance based on contextual parameters
CN103188282B (zh) * 2011-12-27 2017-08-04 腾讯科技(北京)有限公司 文件同步的方法、系统及设备
US9218252B1 (en) * 2012-03-27 2015-12-22 Emc Corporation Techniques for performing data validation
US9542209B2 (en) * 2012-06-29 2017-01-10 Vmware, Inc. Preserving user profiles across remote desktop sessions
CN103780638B (zh) * 2012-10-18 2019-02-19 腾讯科技(深圳)有限公司 数据同步方法及系统
US9424117B1 (en) 2013-03-15 2016-08-23 Emc Corporation Virtual storage processor failover
US9436407B1 (en) * 2013-04-10 2016-09-06 Amazon Technologies, Inc. Cursor remirroring
US9015062B2 (en) * 2013-06-20 2015-04-21 Aol Advertising Inc. Systems and methods for cross-browser advertising ID synchronization
US9405628B2 (en) * 2013-09-23 2016-08-02 International Business Machines Corporation Data migration using multi-storage volume swap
US9619331B2 (en) 2014-01-18 2017-04-11 International Business Machines Corporation Storage unit replacement using point-in-time snap copy
US9430338B2 (en) * 2014-01-30 2016-08-30 Mckesson Financial Holdings Method and computing device for recording log entries
US9361194B2 (en) 2014-03-20 2016-06-07 Netapp Inc. Mirror vote synchronization
CN105224546B (zh) * 2014-06-04 2020-10-30 创新先进技术有限公司 数据存储和查询方法及设备
US10185639B1 (en) 2015-05-08 2019-01-22 American Megatrends, Inc. Systems and methods for performing failover in storage system with dual storage controllers
US9921764B2 (en) * 2015-06-30 2018-03-20 International Business Machines Corporation Using inactive copy relationships to resynchronize data between storages
US10452680B1 (en) 2015-09-25 2019-10-22 Amazon Technologies, Inc. Catch-up replication with log peer
US9733869B1 (en) 2015-09-25 2017-08-15 Amazon Technologies, Inc. Provisioning a slave for data storage using metadata with updated references
US9753813B1 (en) 2015-09-25 2017-09-05 Amazon Technologies, Inc. Data replication snapshots for persistent storage using operation numbers
US10382544B2 (en) 2016-04-08 2019-08-13 International Business Machines Corporation Establishing reverse paths between servers in a copy environment
US10013320B2 (en) 2016-06-14 2018-07-03 Oracle International Corporation Systems and methods for support log cache device removal through standard user interfaces
US11226980B2 (en) * 2017-03-13 2022-01-18 International Business Machines Corporation Replicating containers in object storage using intents
KR102079439B1 (ko) * 2018-02-22 2020-02-19 주식회사 에이티센스 패치형 심전도 측정기기를 구비한 심전도 측정 시스템
US11029875B2 (en) * 2018-09-28 2021-06-08 Dell Products L.P. System and method for data storage in distributed system across multiple fault domains
CN112749123A (zh) * 2019-10-30 2021-05-04 伊姆西Ip控股有限责任公司 用于管理文件系统的方法、设备和计算机程序产品

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE158424T1 (de) * 1989-06-30 1997-10-15 Digital Equipment Corp Verfahren und anordnung zur steuerung von schattenspeichern
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5835953A (en) * 1994-10-13 1998-11-10 Vinca Corporation Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating
US5799323A (en) 1995-01-24 1998-08-25 Tandem Computers, Inc. Remote duplicate databased facility with triple contingency protection
US5758355A (en) * 1996-08-07 1998-05-26 Aurum Software, Inc. Synchronization of server database with client database using distribution tables
US5924096A (en) * 1997-10-15 1999-07-13 Novell, Inc. Distributed database using indexed into tags to tracks events according to type, update cache, create virtual update log on demand
US6192460B1 (en) * 1997-12-16 2001-02-20 Compaq Computer Corporation Method and apparatus for accessing data in a shadow set after a failed data operation
US6065018A (en) * 1998-03-04 2000-05-16 International Business Machines Corporation Synchronizing recovery log having time stamp to a remote site for disaster recovery of a primary database having related hierarchial and relational databases
US6205449B1 (en) * 1998-03-20 2001-03-20 Lucent Technologies, Inc. System and method for providing hot spare redundancy and recovery for a very large database management system
US6260125B1 (en) * 1998-12-09 2001-07-10 Ncr Corporation Asynchronous write queues, reconstruction and check-pointing in disk-mirroring applications

Also Published As

Publication number Publication date
WO2001013235A1 (en) 2001-02-22
JP4430846B2 (ja) 2010-03-10
WO2001013235A9 (en) 2002-09-06
EP1569119A2 (en) 2005-08-31
EP1208433A1 (en) 2002-05-29
EP1569119A3 (en) 2007-02-21
US6671705B1 (en) 2003-12-30

Similar Documents

Publication Publication Date Title
JP4430846B2 (ja) 遠隔ミラーリングシステム、装置及び方法
US6823349B1 (en) Method and system for establishing, maintaining, and using a persistent fracture log
US7225307B2 (en) Apparatus, system, and method for synchronizing an asynchronous mirror volume using a synchronous mirror volume
US9501542B1 (en) Methods and apparatus for volume synchronization
US7882286B1 (en) Synchronizing volumes for replication
US8375000B2 (en) Remote copy system
US8401999B2 (en) Data mirroring method
US8060714B1 (en) Initializing volumes in a replication system
US8438135B1 (en) Mirroring metadata in a continuous data protection environment
JP4833734B2 (ja) データベースシステム、ストレージ装置、初期コピー方法及びログ適用方法
US7577867B2 (en) Cross tagging to data for consistent recovery
EP1481324B1 (en) Producing a mirrored copy using incremental-divergence
US7627776B2 (en) Data backup method
JP3968207B2 (ja) データ多重化方法およびデータ多重化システム
JP4074072B2 (ja) データの完全性を備えるリモートコピーシステム
US20040073831A1 (en) Remote data mirroring
JP2006023889A (ja) リモートコピーシステム及び記憶装置システム
US20060031646A1 (en) Storage remote copy system
US8250240B2 (en) Message conversion method and message conversion system
US7437389B2 (en) Remote copy system
US8942073B1 (en) Maintaining tape emulation consistency
US8032726B2 (en) Remote copy system

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050405

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20050705

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20050715

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051005

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060606

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061002

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20061121

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20061222

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20070629

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20090716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091022

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: 20091218

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

Free format text: PAYMENT UNTIL: 20121225

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4430846

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20121225

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20131225

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term