JP4892185B2 - 分散リモートコピーシステム - Google Patents

分散リモートコピーシステム Download PDF

Info

Publication number
JP4892185B2
JP4892185B2 JP2004338341A JP2004338341A JP4892185B2 JP 4892185 B2 JP4892185 B2 JP 4892185B2 JP 2004338341 A JP2004338341 A JP 2004338341A JP 2004338341 A JP2004338341 A JP 2004338341A JP 4892185 B2 JP4892185 B2 JP 4892185B2
Authority
JP
Japan
Prior art keywords
subsystem
primary
write data
storage
volume
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
Application number
JP2004338341A
Other languages
English (en)
Other versions
JP2005276162A (ja
JP2005276162A5 (ja
Inventor
憲司 山神
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of JP2005276162A publication Critical patent/JP2005276162A/ja
Publication of JP2005276162A5 publication Critical patent/JP2005276162A5/ja
Application granted granted Critical
Publication of JP4892185B2 publication Critical patent/JP4892185B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • 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/2064Error 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
    • 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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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/2076Synchronous techniques

Landscapes

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

Description

0001 本発明はストレージシステムに関わり、より具体的には、リモートコピー機能を果たす分散ストレージシステムに関連する。
0002 データは全ての計算プロセスの基礎となる資源である。最近のインタネットやe−ビジネスの爆発的成長により、データストレージシステムに対する需要は凄まじく増大している。一般的にネットワーク結合型ストレージはNAS(Network Attached Storage)又はSAN(Storage Area Network)の二つの形態をとっている。NASでは、ファイルフォーマットのデータをストレージサーバとクライアント間で転送するのにイーサネット(イーサネットは登録商標です。)上のIPを使用する。NASに於いては、ディスクアレイやテープデバイスの如き集合ストレージシステムは、TCP/IPのようなメッセージ交信プロトコルを用いて、イーサネット等のLAN(Local Area Network)を通してメッセージ交換ネットワークに直結される。本ストレージシステムはクライアントーサーバシステムでのサーバとしての働きをする。
0003 一般的にSANは種々のサーバとストレージ資源の間でデータ移動を行う専用の高速ネットワークである。NASとは異なって、クライアントとサーバ間での慣用的メッセージ交換での交信衝突を避ける為に、分離した専用ネットワークが用いられる。SANでは、ストレージ資源とプロセッサ又はサーバとの間の直接結合が可能になる。SANは単一サーバ専用でも又サーバ間で共用することもできる。単一のローカルサイトに集中することも又地理的に離れたサイトに拡張することもできる。SANインタフェースでは、FC(Fibre Channel)、ESCON(Enterprise System Connection)、SCSI(Small Computer System Interface)、SSA(Serial Storage Architecture)、HIPPI(High Performance Parallel Interface)その他将来登場するものも含めて多様で異なったプロトコルが使用可能である。例えば、IETF(Internet Engineering Task Force)はTCP/IP上でブロックレベル転送を可能にするiSCSIの新プロトコルを開発中である。又ある会社は、iSCSIをSANでの主要スタンダードにすべく、iSCSI―TCP/IPプロトコルスタックをホストプロセッサから分離しようとしている。
0004 ストレージシステムのタイプに関わらず、データストレージシステムのユーザは、貴重なデータがストレージユニット(又はストレージシステム)の障害で損失することを防ぐ為に、バックアップデータを維持する事に強い関心がある。従って、データストレージシステムは、プライマリユニットが障害になった時の緊急回復データを保存するバックアップユニットを持つことが普通である。然しながら、障害は、ユニット自身の問題によるばかりではなく、ストレージユニットの設置場所での地震や嵐等の自然災害で発生する事もある。バックアップユニットがプライマリユニットの近くに設置されている場合には、両ユニットとも自然災害で損傷を受ける事があり得る。従って、多くのストレージシステムのユーザは、プライマリユニットとバックアップユニットを例えば100マイル以上も離れて設置している。実際には、プライマリとバックアップユニットを異なる大陸に設置しているユーザもある。
0005 今日では、同期モードと非同期モードの二つの動作モードが、ストレージシステムがデータをバックアップ又はセカンダリサイトにコピーするのに用いられる。同期モードでは、ホストからのプライマリストレージシステムへの書込み要求は、書込みデータがセカンダリストレージシステムにコピーされ、そこからの応答が返って初めて完了する。従って、本モードでは、セカンダリストレージシステムからの応答が返るまでは、プライマリシステムのキャッシュにホストからのデータが保存されている為に、セカンダリストレージシステムでのデータ損失は発生しないことが保証されている。加えて、プライマリストレージシステムのプライマリボリューム(PVOL)とセカンダリストレージシステムのセカンダリボリューム(SVOL)は同一に保たれている為に、PVOLが損失した場合にはSVOLが直ちに代わりを務める事ができる。然しながら、このモードでは、プライマリとセカンダリは、例えば、100マイルも離れて設置する事はできない。距離を離すと、ストレージシステムは、ホストからの書込み要求を効率的に実行することはできない。
0006 非同期モードでは、ホストからのプライマリストレージシステムへの書込み要求は、データを指定プライマリシステムに書き込むのみで終了する。書込みデータはその後に、セカンダリストレージシステムにコピーされる。即ち、プライマリストレージシステムへのデータ書込みは、セカンダリストレージシステムへのデータコピーとは独立したプロセスである。この結果として、プライマリとセカンダリは、例えば、100マイル以上も離れて設置することができる。然しながら、PVOLとSVOLは常に同じデータを維持している訳ではない為、プライマリシステムがダウンしたらデータが失われる可能性がある。従って、同期モードと非同期モードの長所、即ち、データを失う事無くプライマリとセカンダリシステムが離れて設置できるデータストレージシステムが望まれるところである。非同期モードの好適なリモートコピー方法については、参照記載のYamamotoその他による、米国特許NO.6,408,370に公開されている。
米国特許第6408370号
同期モードでは、ホストからのプライマリストレージシステムへの書込み要求は、書込みデータがセカンダリストレージシステムにコピーされ、そこからの応答が返って初めて完了する。従って、本モードでは、セカンダリストレージシステムからの応答が返るまでは、プライマリシステムのキャッシュにホストからのデータが保存されている為に、セカンダリストレージシステムでのデータ損失は発生しないことが保証されている。加えて、プライマリストレージシステムのプライマリボリューム(PVOL)とセカンダリストレージシステムのセカンダリボリューム(SVOL)は同一に保たれている為に、PVOLが損失した場合にはSVOLが直ちに代わりを務める事ができる。然しながら、このモードでは、プライマリとセカンダリは、例えば、100マイルも離れて設置する事はできない。距離を離すと、ストレージシステムは、ホストからの書込み要求を効率的に実行することはできない。
非同期モードでは、ホストからのプライマリストレージシステムへの書込み要求は、データを指定プライマリシステムに書き込むのみで終了する。書込みデータはその後に、セカンダリストレージシステムにコピーされる。即ち、プライマリストレージシステムへのデータ書込みは、セカンダリストレージシステムへのデータコピーとは独立したプロセスである。この結果として、プライマリとセカンダリは、例えば、100マイル以上も離れて設置することができる。然しながら、PVOLとSVOLは常に同じデータを維持している訳ではない為、プライマリシステムがダウンしたらデータが失われる可能性がある。従って、同期モードと非同期モードの長所、即ち、データを失う事無くプライマリとセカンダリシステムが離れて設置できるデータストレージシステムが望まれるところである。
0007 リモートコピーシステム(リモートコピー機能を備えるストレージシステム)は一つ又は複数のプライマリストレージサブシステムを持つことができる。分散リモートコピーシステムは、複数のプライマリストレージサブシステムを持つシステムを言う。リモートコピーの目的の為に、分散リモートコピーシステムでの複数のプライマリストレージサブシステムのデータは、複数のセカンダリストレージサブシステムにコピーされる。例えば、第一のプライマリサブシステムは第一のセカンダリサブシステムとペアを組みミラーされ、又第二のプライマリサブシステムは第二のセカンダリサブシステムとペアを組みミラーされる。
0008 このようなリモートコピーシステムで、データインテグリテイ(データの完全性)を保つ事は、現在使用可能なストレージデバイスと技術レベルのもとでは、困難な課題である。プライマリストレージサブシステムを使用するデータベースでは、書込み順又はデータインテグリテイを保証する為に、一般的に、書込み順を記録する書込みログを書き込む。第一のログが第一のプライマリサブシステムの為に、第二のログが第二のプライマリサブシステムの為に書き込まれる。第一と第二のログが共に、プライマリサブシステムでのデータベースのデータインテグリテイの為に使用される。同様に、第一と第二のログは、それぞれ、セカンダリサブシステムでの書込み順を保証する為に、セカンダリサブシステムにコピーする必要がある。プライマリサブシステムでの実際の書込み順をミラーする為に、二つのログ間の関係情報を維持しながら、第一と第二のログをセカンダリサブシステムにコピーする必要がある。然しながら、現行技術によるリモートコピーでは、第一と第二のプライマリサブシステムの間には、殆ど協調関係が存在しない為、このことは容易には実現できないことである。
0009 ここで用いる“ストレージシステム”は、データ保存の為に構成されたコンピュータシステムであり、一つ以上のストレージユニット又はディスクアレイの如きストレージサブシステムを備える。従って、ストレージシステムは、一つ以上のホストと一つ以上のストレージサブシステム、又は一つだけのストレージサブシステム又はユニット、又は通信回線で複数のホストに結合された複数のストレージサブシステム又はユニットを備えるコンピュータシステムである。
0010 ここで用いる“ストレージサブシステム”は、データ保存の為に構成され、ストレージ領域及び一つ以上のホストからの要求を処理するためのストレージコントローラを備えるコンピュータシステムである。ストレージサブシステムは、ストレージデバイス、ストレージユニット、ストレージ装置などと呼ばれる事がある。ストレージサブシステムの一例はディスクアレイユニットである。
0011 ここで用いる“ホスト”は、一つ以上のストレージシステム又はストレージサブシステムに結合し、本ストレージシステム又はストレージサブシステムに要求を送信するように構成されたコンピュータシステムである。ホストはサーバ又はクライアントとしての役割を果たす。
0012 ここで用いる“リモートコピーシステム”は、リモートコピー機能を果たすように構成されたコンピュータシステムである。リモートコピーシステムは、ネットワーク又は通信回線で結合した、単一のストレージシステム、ストレージサブシステム又はユニット、あるいは複数のストレージユニット、ストレージシステム、又はストレージサブシステムを指すこともある。従って、リモートコピーシステムは、プライマリストレージシステム、セカンダリストレージシステム、中間ストレージシステム、又はこれらの組合せを示すことがある。更にリモートコピーシステムは、一つ以上のホストを含むこともできる。
0013 一実施例では、プライマリストレージサブシステム(以降プライマリサブシステムで表す)は中間ストレージサブシステム(以降中間サブシステムで表す)にデータを同期的に送信する。書込みデータの受信を契機に、中間サブシステムは書込み順を指定する情報を含む制御データを生成する。一実施例では、制御データの一部例えば順序番号が生成され、書込みデータの制御データに付加される。中間サブシステムは、この書込みデータを制御データと共に、セカンダリストレージサブシステム(以降セカンダリサブシステムで表す)に非同期的に送信する。セカンダリサブシステムは、制御データに基づいてこの書込みデータをセカンダリボリュームに保存する。書込み順は、中間サブシステムにより生成された順序番号により維持される。
0014 一実施例では、リモートコピーシステムは、複数の書込みデータを与えられた順で保存する各々第一と第二のプライマリボリュームを備える第一と第二のプライマリサブシステムと;第一と第二のプライマリサブシステムからの書込みデータを受信し、本書込みデータに対して、本第一と第二のプライマリサブシステムで与えられた書込み順を反映し、各書込みデータに付与される書込み順情報、を生成する書込み順情報生成部を備える、中間サブシステムと;各々第一と第二のプライマリボリュームをミラーする第一と第二のセカンダリボリュームを備え、本中間サブシステムからの書込みデータを受信する第一と第二のセカンダリサブシステムと;から成り、各データに付与された書込み順情報に基づいて、本書込みデータを第一と第二のセカンダリサブシステムに保存する。
0015 他の実施例では、リモートコピーシステムで、複数のプライマリサブシステムと複数のセカンダリサブシステムに結合される中間サブシステムは、少なくとも一式のプライマリサブシステムからの書込みデータを同期的に受け取る第一のストレージ領域と;少なくとも一式のプライマリサブシステムから受けとった各書込みデータに付与される書込みデータの書込み順情報、を生成する書込み順情報生成部とを持ち、本書込み順情報は、セカンダリサブシステムの少なくとも一式でデータ書込みの為に使用され、少なくとも一式のセカンダリサブシステムが少なくとも一式のプライマリサブシステムのミラーをする。
0016 更に他の実施例では、リモートコピーシステムを操作する方法が提供され、中間サブシステムで第一と第二のプライマリサブシステムから各々第一と第二の書込みデータを同期的に受信し;本第一と第二の書込みデータに各々第一と第二の書込み順情報を付与し;本第一と第二の書込みデータと第一と第二の書込み順情報を各々第一と第二のセカンダリサブシステムに非同期的に送信する;ステップから成り、第一と第二の書込みデータは、各々第一と第二の書込み順情報に従って、第一と第二のセカンダリサブシステムに保存される。
0017 更に他の実施例は、リモートコピーシステムを操作するコンピュータプログラムを格納するコンピュータ読み取り可能な媒体を提供し、本媒体は、中間サブシステムで、第一と第二のプライマリサブシステムでの各々第一と第二のプライマリボリュームから第一と第二の書込みデータを同期的に受信するコードと;本第一と第二の書込みデータに各々第一と第二の書込み順情報を付与するコードと;本第一と第二の書込みデータと本第一と第二の書込み順情報を、各々第一と第二のセカンダリボリュームより成る第一と第二のセカンダリサブシステムに、非同期的に転送するコードとを、格納し、第一と第二の書込みデータは各々第一と第二の書込み順情報に従って、第一と第二のセカンダリサブシステムに保存され、第一と第二のセカンダリボリュームは各々第一と第二のプライマリボリュームのミラーをする。
0018 更にもう一つの実施例では、分散リモートコピーシステムでの中間サブシステムは、第一と第二のプライマリサブシステムで定義される各々第一と第二のプライマリボリュームから書込みデータを同期的に受信する手段と;プライマリサブシステムから受信した書込みデータに書込み順情報を与える書込み順情報生成手段と、から成り、本書込み順情報は、各々第一と第二のセカンダリサブシステムで定義される第一と第二のセカンダリボリュームへの書込みデータの書込みに使用され、本第一と第二のセカンダリボリュームが各々第一と第二のプライマリボリュームをミラーする。
本リモートコピーシステムは好適な分散リモートコピーシステムで、セカンダリストレージサブシステム(以下セカンダリサブシステムと呼ぶ)に亘って、データのインテグリテイ(データの完全性)を維持すべく構成されている。
0033 図1A(図1(a))は、本発明の一実施例による、複数のプライマリストレージサブシステム(以下プライマリサブシステムと呼ぶ)100aを持つリモートコピーシステム50を示す。本リモートコピーシステムは好適な分散リモートコピーシステムで、セカンダリストレージサブシステム(以下セカンダリサブシステムと呼ぶ)に亘って、データのインテグリテイ(データの完全性)を維持すべく構成されている。
0034 システム50は、複数のプライマリサブシステム100a、複数のセカンダリサブシステム100b、及び一つの中間ストレージサブシステム(以下中間サブシステムと呼ぶ)100cを含む。プライマリサブシステムは第一と第二のプライマリサブシステム100a−1と100a−2を含む。セカンダリサブシステムは第一と第二のセカンダリサブシステム100b−1と100b−2を含む。一実施例では、単一の中間サブシステムが用いられる。
0035 本実施例では、プライマリサブシステムはデータを中間サブシステムに同期的にコピーし、中間サブシステムは本データをセカンダリサブシステムに非同期的にコピーする。中間サブシステム100cは、プライマリサブシステム100aの近くに設置され、セカンダリサブシステム100bとは十分離れて設置される。例えば、プライマリと中間サブシステムは10マイル以内に設置され、中間とセカンダリサブシステムは互いに100マイル以上離れて設置される。一実施例では、プライマリと中間サブシステムは、同じビル又は複合建築体内に設置される。
0036 図1B(図1(b))は、読み書き要求を処理するストレージコントローラ62と書込み要求に対応してデータ保存の為の記録媒体を備えるストレージユニット63を含む好適なストレージサブシステム60を示す。ストレージコントローラ62は、ホストコンピュータに結合する為のホストチャネルアダプタ64と他のサブシステムに結合する為のサブシステムチャネルアダプタ66とストレージサブシステム60内のストレージユニット63に結合する為のディスクアダプタ68を有する。本実施例では、これらの各アダプタはデータを送受信する為のポート(図示していない)を備え、本ポートを通してデータ転送をコントロールする為のマイクロプロセッサ(図示していない)を備える。
0037 ストレージコントローラ62は、更に、ストレージユニット63との間で読み書きするデータを一時的に保存する為のキャッシュメモリ70を備える。一実施例ではストレージユニットは複数の磁気ディスクドライブ(図示していない)である。
0038 本サブシステムはホストコンピュータに対する記憶領域として、複数の論理ボリュームを提供する。ホストコンピュータはストレージサブシステムとの間でデータを読み書きする為に、これら論理ボリュームの識別子を使用する。これら論理ボリュームの識別子はLUN(Logical Unit Number)と呼ばれる。これら論理ボリュームは単一の物理ストレージデバイスに含まれてもよく又複数の物理ストレージデバイスに跨って定義されても良い。同様に複数の論理ボリュームが単一の物理ストレージデバイスに収容されても良い。ストレージサブシステムに関するより詳細な記述は、2002/6/5に出願受理された日本出願No.2002−163705に対する優先出願、標題"Data Storage Subsystem",2003/3/21に出願受理され本代理人の担当する米国特許NO.10/394,631に見られ、ここに参考として含まれる。
0039 図1Aに戻って、リモートコピーシステム50は更にプライマリホスト110aとセカンダリホスト110bを含む。ホストは、各ストレージサブシステムに対して、データの読み書き要求を発行する。プライマリホストは、プライマリサブシステムのボリュームにアクセスするアプリケーションプログラム102aを持つ。セカンダリホストは、セカンダリサブシステムのボリュームにアクセスするアプリケーションプログラム102bを持つ。プライマリホスト110a又はプライマリサブシステム100aの何れか又は双方が使用不能になれば、アプリケーションプログラム102aはセカンダリホスト110bにフェイルオーバされ、例えば、エンタプライスビジネスにデータベースを継続使用できる様にする。
0040 各ストレージサブシステムはデータ保存の為のボリュームを有する。プライマリサブシステムはプライマリボリューム即ちPVOL101aを有する。プライマリボリュームはプライマリホストがアクセスする生産用データを保存する。プライマリボリュームは第一と第二のPVOL101a−1と101a−2で成る。セカンダリサブシステムはセカンダリボリューム即ちSVOL101bを有する。セカンダリボリュームはPVOLの生産用データのバックアップデータを保存する。セカンダリボリュームは第一と第二のSVOL101b−1と101b−2で成る。中間サブシステムは中間ボリュームIVOL101cを有する。中間ボリュームはセカンダリボリュームに保存されるべき生産用データのコピーを一時的に保存する。従って、中間ボリュームは、プライマリボリューム101aに対して“セカンダリボリューム”で、セカンダリボリューム101bに対して“プライマリボリューム”である。中間ボリュームは、第一と第二のIVOL101c−1と101c−2で成る。
0041 整合性グループ120が中間サブシステム100cにて定義される。整合性グループは、データインテグリテイが保証されるボリュームの集合である。ユーザは、典型的に、データインテグリテイが望まれる所定のアプリケーション、例えばデータベース等、に関連するデータを格納するボリュームに対して整合性グループを定義する。
0042 タイマ130が中間サブシステム100cに備えられ、データ要求に対して時刻情報を提供する。例えば、タイマはプライマリサブシステム100aより受信した書込み要求の制御データにタイムスタンプを与える。書込み要求は、通常、所定のストレージロケーションのアドレス指定と共にここに書き込まれるデータを伴う。一般的に書込み要求は、書き込まれるデータ(書込みデータ)とこれに関連するヘッダ又は管理情報を含む。制御データは、所与の要求(読み出し、または書込み)に関連する管理情報を提供し、当該要求のヘッダの一部とも考えられる。
0043 カウンタ121は、中間サブシステム100cに配備され、プライマリサブシステム100aから書込み要求を受信した時に制御データに順序番号を付与する。順序番号は書込み順を保持する為に使用される。一般的に、各整合性グループ120は自分のカウンタ121を持ち、整合性グループ又はデータベースに対する書込み順を維持する。通常、中間サブシステムは書込みデータと共にヘッダ又は制御データを受け取り、順序番号はこのヘッダ又は制御データに付加される。
0044 タイムスタンプ又は順序番号又は双方は、セカンダリサブシステムが書込み順をプライマリサブシステム100aと同じにする為に使用することができる。本発明では、本順序番号が書込み順を保証する為に使用される。
0045 有効カウンタ122が、セカンダリサブシステム100bで有効化可能な最新順序番号を保存する為に中間サブシステム100cに用意される。
0046 図5を参照するに、各ストレージサブシステムは、ボリューム間のペア関係の情報を保存する為に、整合性グループテーブルを備える。プライマリサブシステム101aはプライマリ整合性グループテーブル500a、即ち各々第一と第の二プライマリサブシステムの為の第一と第二のテーブル500a−1と500aー2を備える。中間サブシステム101cは第一と第二の整合性グループテーブル500c−1と500c−2を備える。セカンダリサブシステム101bは、セカンダリ整合性グループテーブル500b、即ち各々第一と第二のセカンダリサブシステムの為の第一と第二のテーブル500b−1と500b−2を備える。
0047 各整合性グループテーブルは、グループID欄GID510、グループ属性欄GRATTR520、グループ状態欄GRSTS530、中間ポインタ欄IPTR540、及びボリューム情報欄VOLINFO#550を有する。
0048 GID510は整合性グループの識別情報を格納する。識別情報は一般に当該ストレージサブシステムでの固有番号である。GID510はペアを構成する整合性グループを識別する為に使用される。例えば、二つのGID欄が同じ値を持っていれば、二つの整合性グループはペアになっているとされる。
0049 GRATTR520は、当該グループが、プライマリボリュームか又はセカンダリボリュームのどちらとして機能しているかを表示する。例えば、プライマリ又はセカンダリサブシステムの整合性グループは各々PRIMARY又はSECONDARYを示す。PRIMARYは、当該整合性グループはデータの送信者で、SECONDARYは、当該整合性グループはデータの受信者であることを示す。従って、中間サブシステムの整合性グループテーブル500cは、プライマリグループに関連する第一グループテーブル500c−1はSECONDARYを、セカンダリグループに関連する第二グループテーブル500c−2はPRIMARYを示す。
0050 GRSTS530は整合性グループの状態を示す。一般的に、整合性グループはCOPY(コピー中)、PAIR(ペア中)、又はSUSP(サスペンド中)の何れかの状態にある。COPY状態は、現在、データが、一つのボリュームからもう一つのボリュームにコピー中、例えばPVOLからSVOLにコピー中、であることを示す。PAIR状態は、例えば、PVOLとSVOLはペア間のミラーが完成し、同一の情報を持つことを示す。SUSP状態は、例えば、PVOLからSVOLへのコピーがサスペンド(中断)している事を示す。
0051 IPTR540は、中間サブシステムでペアと成っている整合性グループテーブルへのポインタを含む。中間サブシステムでの本テ−ブルは、第一テーブル500c−1と第二テーブル500c−2を関連つける相応しい値が格納される。即ち、第一テーブル500c−1のIPTR540は第二テーブル500c−2をポイントし、第二テーブル500c−2のIPTR540は第一テーブル500c−1をポイントする。プライマリ又はセカンダリサブシステムは、通常唯一つの整合性グループテーブルしか持たない為、本サブシステムでは本テーブルの本欄の値はNULLである。
0052 VOLINFO#550はボリューム情報を格納する。一ボリュームに一エリアが割り当てられる。ボリューム識別欄VOLID551は所定のストレージサブシステム100でのボリューム識別子を表示する。各ボリュームはそのストレージサブシステム100での固有の番号を持つ。ボリューム状態欄VOLSTS552は、ボリュームの状態即ち、COPY,PAIR,又はSUSPを示す。シリアル番号欄PAIRDKC553は、ペアを組むストレージサブシステム100の識別子又はシリアル番号を格納する。各ストレージサブシステムは各々固有の番号を持つ。ペアボリューム欄PAIRVOLID554は、PAIRDKC553で指定されるペアを組むストレージサブシステム100のボリューム識別子を格納する。
0053 図5は、一実施例による、リモートコピーシステム50での下記のミラー構成を説明する。各プライマリサブシステムは単一のPVOLを持つとする。各プライマリサブシステム100aは、整合性グループテーブルを持ち、ここでは、
・0054 GID=0、
・0055 GRATTR=PRIMARYは、当ボリュームがPVOLである事を示し、
・0056 CTGはVOLINF#0で示される如く唯一つのPVOLを持ち、
・0057 IPTR=NULLは、本CTG項目はIVOL101cにて定義されてはいない事を示す。
0058 各セカンダリサブシステム100bは単一のSVOLを持つとする。各セカンダリサブシステム100bは整合性グループテーブルを持ち、ここでは、
・0059 GID=0,は中間サブシステム100cの整合性グループテーブルのGIDと同じであり、
・0060 GRATTR=SECONDARYは、当該ボリュームがSVOLであることを示し、
・0061 本CTGはVOLINFO#0に示される如く唯一つのSVOLを含み、
・0062 IPTR=NULLは、本CTG項目はIVOL101cにて定義されてはいない事を示す。
0063 中間サブシステム100cは、プライマリサブシステム100aとセカンダリサブシステム100bに結合する。本中間サブシステム100cは二つの整合性グループテーブルを持つ。ここでは、
・0064 GID=0は、プライマリサブシステム100aの整合性グループテーブルに含まれるのと同じGIDであることを示し、
・0065 GRATTR=SECONDARYは、第一テーブル500c−1に対して表示され、GRATTR=PRIMARYは第二テーブル500c−2に対して表示され、
・0066 各テーブルは、VOLINFO#0とVOLINFO#1の二つのボリューム情報欄を含み、
・0067 IPTRはIVOL101cでの対応する整合性グループテーブルをポイントする。
0068 図2を参照するに、本発明の一実施例による同期型リモートコピー方法に関するプロセス200は、プライマリサブシステムと中間サブシステムの間で実行される。本プロセス200は、書込み要求がプライマリホスト110aからプライマリサブシステム100aに到着する事により起動される。
0069 プライマリサブシステムが書込み要求を受信すると、本書込みデータを不揮発(又は安定な)記憶領域に格納する(ステップ205)。本不揮発記憶領域は、書込みデータを一時的に記憶する、キャッシュメモリ又は磁気ディスク上に割り当てられた記憶領域で良い。本プライマリサブシステムは次いで、書込みデータを中間サブシステム100cに送信し、中間サブシステム100cからの応答を待つ(ステップ210)。中間サブシステム100cがプライマリサブシステム100aから書込みデータを受信すると、本サブシステムは本書込みデータの制御データの少なくとも一部を生成する(ステップ215)。本実施例では、本生成ステップで、書込み要求のヘッダに対して順序番号を生成しこれを付与する。タイムスタンプが更にヘッダに対して付与されてもよい。
0070 一実施例では、制御データには、シリアル番号291(PVOL−ID291)、書込みアドレス292(ADDR292)、長さ293(LEN293)、時刻294、及び順序番号(SEQ295)が含まれる。PVOL−ID291は、プライマリサブシステムと本サブシステム内のPVOLを特定する。プライマリサブシステムと本PVOLはシリアル番号を用いて表示される。
0071 ADDR292は、PVOLでの書込みの開始アドレスを示し、データが本位置より書き込めるようにする。LEN293は書込みデータの長さを示す。従って、ADDR292とLEN293で書込みデータの正確な領域が指定される。
0072 時刻294は、プライマリサブシステム100aから中間サブシステム100cに書込み要求が到着した時に制御データに付与されるタイムスタンプである。本タイムスタンプは中間サブシステム100cのタイマ130により与えられる。
0073 SEQ295は書込み要求に付与された順序番号である。この値は、当該中間サブシステム100cの整合性グループに関連するカウンタ121により提供される。本ステップでは、カウンタ121からの値を+1(つまりカウンタを加算)してカウンタ121に戻し、得られた値を書込み要求の制御データに付加する。
0074 プロセス200に戻って、中間サブシステム100cは、プライマリサブシステム100aからの書込みデータとこの制御データを不揮発又は安定な記憶領域に保存する(ステップ220)。第一の応答がプライマリサブシステム100aに送信される(ステップ225)。本第一の応答は、書込みデータが中間サブシステムにコピーされたことを示す。不揮発記憶領域に保存されたデータは、続いてIVOL101cに、より長期的に保存される。プライマリサブシステム100aは、第二の応答をプライマリホスト110aに送信する(ステップ230)。図示されている様に、プロセス200では、第二の応答は、第一の応答がプライマリサブシステムで受信されて始めて返送される為、同期型コピー動作である。
0075 図3は、本発明の一実施例による、中間サブシステム100cとセカンダリサブシステム100bとの間の非同期型コピー動作を行うプロセス300を示す。プロセス300の特徴は、プライマリホスト110aからプライマリサブシステム100aに発行された書込み順序に従って、セカンダリサブシステム100bが受信した書込みデータの書込み順序を維持する事である。このデータインテグリテイの保証は、セカンダリサブシステムが受信した書込みデータを先ずINVALIDとして表示し、次いで有効化することを含む。本有効化プロセスは図4に関連して説明する。
0076 プロセス300は一定間隔、例えば10秒毎に起動される。中間サブシステム100cの不揮発記憶領域に保存された書込みデータとその制御データは、セカンダリサブシステム100bに送信される(ステップ301)。本発明では、送信する書込みデータは対応する制御データのSEQ295の昇順に従って選択される。
0077 セカンダリサブシステム100bは、書込みデータとその制御データを保存し、当該データをINVALIDとしてマークする(ステップ305)。セカンダリサブシステムは、中間サブシステム100cに応答を返す(ステップ310)。
0078 本応答を受け取ると、中間サブシステム100cは、有効カウンタ122の現在値が送信済みの制御データのSEQ295より小さいかを判定する(ステップ315)。小さければこの値は更新される(ステップ320)。プロセス300は次いで、再度起動される迄、一定時間休眠する(ステップ325)。有効カウンタ122は、かくして、セカンダリサブシステム100bで有効化可能な書込みデータの最新の順序番号を保持する事になる。別の言い方をすれば、有効カウンタ122は、セカンダリサブシステムに保存されたINVALIDデータ(有効化待ちのデータ)の最大順序番号数を示す、と言える。
0079 図4は、本発明の一実施例による、セカンダリサブシステム100bでのデータ有効化の為のプロセス400を示す。本プロセス400はPREPARE及びVALIDATE状態即ちフェーズを使用する。PREPAREフェーズでは、全セカンダリサブシステムは、ロールバック動作に必要な回復用情報を保持したまま、中間サブシステム100cより受信したデ−タを有効化する為の全ての必要な動作を実行する。セカンダリサブシステム100bがプロセス400の処理を実行できない条件が発生すれば、本回復情報を用いてロールバックする。VALIDATEフェーズでは、セカンダリサブシステム100bは、データを有効化し回復情報を破棄する。これら二つのフェーズと回復機構は、所定のデータに対する有効化プロセス400がセカンダリサブシステム100bの何れかで障害になるかもしれない為、有益なものである。
0080 本発明の一実施例では、プロセス400は中間サブシステムにて一定時間間隔で起動される(ステップ401)。有効カウンタ122は、その値が前回のプロセス以降変化があったか否かを決定するために、チェックされる(ステップ402)。変化がなかったら、プロセスはステップ401に戻り、所定の時間休眠する。有効カウンタ122が変化しなかったと言うことは、前回のセッション以後、セカンダリサブシステムには書込みデータが送られていないことを示す。値が変化していれば、プロセスは先に進む。
0081 中間サブシステム100cは、有効カウンタ122の現在値と共に、全てのセカンダリサブシステム100bに対してPREPARE要求を送信する(ステップ403)。この要求により、セカンダリサブシステム100bは、送られてきた有効カウンタ122以下の順序番号を持つデータについて有効化作業を開始する。中間サブシステム100cは、次いで、セカンダリサブシステム100bからの応答を待つ(ステップ406)。
0082 セカンダリサブシステムでは、PREPARE要求の受信を契機に、INVALIDとしてマークされ、有効カウンタの現在値以下の順序番号を割り当てられたデータの有効化作業を開始する(ステップ405)。現在値は基準値として参照される。データはPREPAREDとしてマークされる(ステップ410)。上記のステップには、データを不揮発ストレージの一時的領域から長期的領域にコピーし、本一時的領域を開放し、制御データを開放し、INVALID及びPREPARED状態に関する情報を更新することを含む。
0083 データを回復可能に維持する為に、セカンダリサブシステムは旧データに上書きしないで新データが有効化される迄、旧データを保持する。一つの方法は、新データを永久ストレージ(例えばディスク)の最終ターゲットに書き込まないことである。セカンダリサブシステム100bは、上記が成功裏に実行できたらデータをPREPAREDとしてマークする。
0084 セカンダリサブシステムは、全ての指定された書込みデータがPREPAREDとしてマークされたか否かを判定する(ステップ415)。判定が成立すれば、セカンダリサブシステム100bは、中間サブシステム100cに全ての指定されたデータはPREPAREDとしてマークされたことを示す応答を返す(ステップ420)。セカンダリサブシステム100bは、タイマをセットして、VALIDATE要求が中間サブシステム100cから受信されるのを待つ(ステップ421)。
0085 中間サブシステム100cが、全てのセカンダリサブシステム100bから、全ての指定された書込みデータがPREPAREDとしてマークされたことを示す応答を受信したら、中間サブシステムはセカンダリサブシステム100bにVALIDATE要求を送信する(ステップ425)。中間サブシステムは、次いで、セカンダリサブシステムからVALIDATE要求に対する応答を待つ(ステップ426)。
0086 セカンダリサブシステムに於いては、各サブシステムは、PREPAREDとしてマークされたデータをVALIDに更新して、当該データの回復に関する情報を破棄する(ステップ430)。旧データは通常この時点で破棄される。各セカンダリサブシステムは中間サブシステム100cに応答を返す(ステップ435)。
0087 ステップ415に戻って、幾つかの書込みデータをPREPAREDとしてマークすることに失敗した場合には、FAILURE通知が中間サブシステムに送信される(ステップ415)。中間サブシステムは、以下により詳細に記述される、エラー処理を実行する(ステップ424)。
0088 プロセス400は、参照順序番号、即ち有効カウンタ122の値、以下の順序番号を持つ書込みデータを有効化するのに用いられる。即ち、セカンダリサブシステム100bのSVOL101bの集合は、SVOL101bを通して整合しており、参照順序番号以下の順序番号で送信された全てのデータが受信され有効化されたことをセカンダリサブシステムが表示した以降には、書込みデータの損失は存在しない。
0089 時によっては、プロセス400は失敗し回復処理が必要になる。障害の例は、ステップ424で、書込みデータのPREPARE操作のときに発生する。本実施例では、回復処理は中間サブシステムで実施される。
0090 一般的に、中間サブシステムは、ステップ424でのエラーか、セカンダリサブシステムに要求を出してからのタイムアウト(ステップ406か426)で障害発生を検出する。
0091 障害がPREPAREフェーズで発生した場合には、中間サブシステム100cは、セカンダリサブシステム100bにABORT要求を送信し、セカンダリサブシステムはロールバックを行い、PREPAREDとしてマークされたデータの回復は、本データとこれの制御データをINVALIDに戻すことにより開始される。
0092 VALIDATEフェーズの場合には、障害はセカンダリサブシステムからの応答が既定時間内に受信できない場合に発生する。このような事態は起きそうもないが、もし実際に起きたなら、中間サブシステムはVALIDATE要求を再発行する。
0093 中間サブシステム100cが、PREPAREかVALIDATEフェーズ中にダウンした場合には、セカンダリサブシステム100bは、リブートされた中間サブシステム100cかホスト100の一つからのコマンドを待つ。一般に、リブート又は回復した中間サブシステム100cは、プロセス400を最初からではなく、最新の成功ステップから再開始する。
0094 図8は、本発明の一実施例に従い、プロセス400が障害なく成功裏に実行された場合のプロセスフローを示す。第一の状態800で示すように、中間サブシステム100cは、セカンダリサブシステム100b−1,100b−2、及び100b−3にPREPARE要求を発行する(ステップ800)。本REPARE要求は、1042までの順序番号の書込みデータをPREPAREすることをセカンダリサブシステムに要求する。
0095 第一の状態800でPREPARE要求を受信する前には、セカンダリサブシステム100bの第一、第二、及び第三の整合性グループ120−1,120−2、及び120−3は、1024までの順序番号の全ての書込みデータはPREPAREDになっていることを示す。1010までの順序番号の全ての書込みデータはVALIDになっている。1024より高い順序番号の書込みデータはINVALIDが表示されている。例えば、第一の整合性グループ120−1は、サブシステム100b−1はINVALIDの順序番号1029の書込みデータを持っている、ことを示す。
0096 第二の状態810は、PREPARE要求が完了した後の整合性グループを示す。第一の整合性グループ120−1は順序番号1042までの書込みデータはPREPAREされていることを示す。従って、順序番号1029までの書込みデータは最早INVALIDではなく、整合性グループ120−1は、サブシステム100b−1はINVALIDデータを持っていないことを示す。整合性グループは、順序番号1010迄の書込みデータはVALIDのままであることを示す。
0097 中間サブシステム100cはVALIDATE要求をセカンダリサブシステムに送信し、PREPAREされた書込みデータは本要求によりVALIDになる。第三の状態820は、VALIDATE要求がセカンダリサブシステム100bにて実行された後の整合性グループを示す。本整合性グループは、全てのPREPAREされた書込みデータはVALIDになった事を示す。即ち、1042迄の順序番号の全ての書込みデータはVALIDになっている。
0098 図9は、プロセス400で障害が発生した場合を示す。第一の状態900は、図8の第一の状態800のミラーイメージである。中間サブシステム100cはセカンダリサブシステム100bにPREPARE要求を発行する。
0099 第二の状態910は、PREPARE処理がセカンダリサブシステムの1つ、即ちセカンダリサブシステム100b−2で成功裏には実行できなかったことを示す。セカンダリサブシステム100b−2は、要求されたすべての、即ち順序番号1042迄の、書込みデータを成功裏にはPREPAREできなかった。セカンダリサブシステム100b−2の整合性グループ120−2は、順序番号1038迄しか書込みデータはPREPAREされていないことを示す。本PREPARE処理はセカンダリサブシステム100b−1と100b−3では成功裏に終了している。これらの整合性グループは、1042迄はPREPAREされている。
0100 セカンダリサブシステム100b−2の障害の結果、中間サブシステムはセカンダリサブシステムに参照順序番号1038(1042でなく)でVALIDATE要求を発行する。本VALIDATE要求は、セカンダリサブシステム100b−2での書込みデータのPREPARE処理での問題を反映して、修正されている。
0101 第三の状態920は、修正VALIDATE要求がセカンダリサブシステム100bで成功裏に実行できたことを示す。整合性グループ120−1と120−3は、依然として、PREPAREDだがVALIDでない書込みデータを持っていることを示す。然しながら、120−2の整合性グループは、全てのPREPAREDデータはVALIDになっていることを示す。VALIDになった書込みデータは、順序番号1038迄のものであることを示す。
0102 図10A(図10(a))と10B(図10(b))は、本発明の一実施例に従う、プライマリサイトからセカンダリサイトへのフェイルオーバ処理を示す。フェイルオーバはプライマリサイトがユーザに対して使用不能になったときに実行される。これは、プライマリサブシステム100aかプライマリホスト110aの何れか又は何れも使用不能になったときに発生する。プライマリサイトが障害になる、又は保守の為に一時的にオフラインにされた場合には、セカンダリサイトがアプリケーションを実行可能になる。
0103 一般的に、セカンダリサブシステムのボリューム、即ちSVOL101bは、プライマリサブシステム100aにペア又はミラーしている場合には、書込み不能である。従って、本発明の一実施例に拠れば、フェイルオーバではプライマリサブシステムへのミラー動作はサスペンドする必要がある。
0104 図10(a)は、プライマリサイトのみが使用不能で、中間サブシステム100cが使用可能な場合でのフェイルオーバ処理を示す。この状況では、IVOL101cがプライマリサブシステムから受信した全てのデータを保持している為に、データは損失していない。これらのデータは、中間サブシステム100cがSVOL101bに転送する。この後に、セカンダリサブシステムは使用可能になる。
0105 最初にユーザが、セカンダリホスト100bを使用してフェイルオーバを起動する(ステップ1000)。セカンダリサブシステム100bはFAILOVER要求を中間サブシステム100cに送信する。中間サブシステム100cは全ての未転送データをセカンダリサブシステム100bに送信する(ステップ1005)。本発明の一実施例では、中間サブシステムからセカンダリサブシステムにデータを送信するのに、プロセス300が使用される。中間サブシステムは、全ての未転送データがセカンダリサブシステムに転送されたら、ペア状態をPSUSに変更する(ステップ1006)。PSUSはペア動作がサスペンドしていることを示す。ひとたびセカンダリサブシステムがFAILOVER要求の完了を知らされると、セカンダリサブシステム100bは、ペア状態をPSUSに変更する(ステップ1010)。
0106 図10(b)は中間サブシステム100cが使用不能の場合のフェイルオーバ動作を示す。プライマリサイトは使用不能でも可能でもよい。この状況では、中間サブシステムが、セカンダリサブシステム100bへの未転送データを保持している可能性がある為、データは損失する可能性がある。ユーザは、セカンダリホスト110bを使用して、フェイルオーバ動作を起動して、セカンダリサブシステムにFAILOVER要求を送信する(ステップ1020)。中間サブシステム100cが使用不能の為、FAILOVER要求は失敗して、セカンダリサブシステム100bはセカンダリホストにエラーメッセージを返す(ステップ1025)。
0107 セカンダリホスト110bは、全てのセカンダリサブシステムの整合性グループからある種の情報を取得する(ステップ1030)。これらの情報には、INVALIDデータ、PRERAREDデータ、及びVALIDデータの各順序番号が含まれる。全てのPRERAREDデータは、プロセス400によりVALIDデータに更新する(ステップ1035)。
0108 セカンダリホスト110bは、有効化プロセスが成功したことを確認後、セカンダリサブシステム100bのペア状態をPSUSに変更開始する(ステップ1040)。セカンダリサブシステムの状態はPSUSに変更される(ステップ1045)。
0109 以上で説明したように、リモートコピーシステム50は三つのデータセンタを持っている。プライマリと中間サブシステムの双方が同時に障害にならない限り、データは損失しない。プライマリとセカンダリのデータセンタが各々複数のサブシステムを持っていてもデータの整合性は保証される。中間サブシステムは、プライマリサブシステムからの全ての書込みデータを受信しセカンダリサブシステムに転送する。中間サブシステムは、複数のプライマリサブシステムからの書込みデータの書込み順を保持する為の管理情報(例えば、順序番号)を生成する。
0110 図6は、本発明のもう一つの実施例に従う、リモートコピーシステム50’を示す。システム50’は、図1のシステム50に比べて、中間サブシステム100c’が減少したボリューム数で構成されている。アプリケーションが中間サブシステムにフェイルオーバしないなら、中間サブシステムはプライマリサイトのプライマリボリュームより少数のボリュームで構成することができる。ボリューム数を減らす事でコストを低減できる。中間サブシステム100c’は、プライマリサブシステム100aから受信したデータを保存するために、一つのボリュームを備えている。中間サブシステム100c’がボリュームを持たないで、一時的にデータを保存する為にキャッシュメモリを使用する、実施例も存在する。
0111 中間サブシステム100c’はジャーナルボリューム(JNLVOL)700を持つ。JNLVOL700はIVOL101cに相当する。システム50のIVOL100cとは異なり、JNLVOL700はPVOL101aのミラーではない。JNLVOL700は、"Remote Copy System"と標題を有し、参照としてここに含まれる米国特許NO.10/602,223(2003/6/23出願受理)にてより詳しく説明されているように、プライマリサブシステム100aから受信した書込みデータとその制御データの為のバッファ又は一時的記憶領域として働く。
0112 図7は、本発明の一実施例に従う、リモートコピーシステム50’に対する整合性グループテーブル702を示す。本整合性グループテーブル702は、ボリューム情報(VOLINFO#)750、ジャーナルボリューム情報(JNL_VOLID#)760、ジャーナル入力情報(JNLIN)770、及びジャーナル出力情報(JNLOUT)780を含む。VOLINFO#750は、中間サブシステム100cで定義されるIVOL101cは存在しない事を示す為に、NULLを保存するボリュームID(VOLID)751を含む。同様に、プライマリサブシステム100aとセカンダリサブシステム100bで定義される、PAIRVOLID(図示していない)は、関連する中間サブシステムで定義されるIVOL101cが存在しない為、NULLを表示する。
0113 JNL_VOLID760は、プライマリサブシステム100aより送信された書込みデータと制御データを保存する為に使用されるボリュームを識別する情報を含む。JNLIN770は、JNL_VOLID760エントリの識別子とジャーナルボリューム700でのアドレスを含む。JNLIN770は、次の書込みデータと制御データのセットが保存されるアドレスを表示する。JNLOUT780は、JNL_VOLID760エントリの識別子とジャーナルボリューム700でのアドレスを含む。JNLOUT780は、次の書込みデータと制御データのセットがセカンダリサブシステム100bに送信されるソースアドレスを表示する。有効なJNL_VOLID760エントリが存在しない(例えば、全てのJNL_VOLID760がNULL)場合には、整合性グループにはジャーナルボリューム700は割り当てられていない。
0114 リモートコピーシステム50’では、図2のプロセス200と実質的に同じプロセスを使用して同期コピー動作を実行する。一つの相違点はステップ220関するもので整合性グループテーブルを参照して不揮発記憶媒体を選択することである。本操作は、(1) IVOL101c(即ち、VOLID751!=NULLか)とJNLVOL700(即ち、JNL_VOLID760!=NULLか)が存在するかをチェックする;(2) (1)の結果に従い、下記の手順を実行する。
・0115 プライマリサブシステム100aから受信した書込みデータと制御データを中間サブシステム100cのキャッシュメモリに格納する、
・0116 JNLVOL700が存在すれば、書込みデータと制御データをJNLIN770で指定されるJNLVOL700のアドレスに格納する、
・0117 IVOL101cが存在すれば、書込みデータをIVOL101cに格納する。
0118 一般的に、中間サブシステム100cは、同期コピー動作を促進する為に、書込みデータをキャッシュメモリに格納し次第、プライマリサブシステム100aに応答を返す。
0119 リモートコピーシステム50’では、図3のプロセス300と実質的に同じプロセスを使用して非同期コピー動作を実行する。相違点の一つは、図3のステップ301に関し、データをセカンダリサブシステム100bに送信すべく選択する場合に、
0120 (1)IVOL101c(即ち、VOLID751!=NULLか)とJNLVOL700(即ち、JNL_VOLID760!=NULLか)が存在するかをチェックし、
0121 (2) (1)の結果に従い、下記の手順を実行する。
・0122 キャッシュメモリから最小の順序番号を持つデータを選択する。
・0123 キャッシュメモリにデータが存在せず、更にJNLVOL700が存在すれば、JNLVOL700からデータを抽出する。更に、JNLVOL700が存在しなければ、セカンダリサブシステムはミラー処理を維持できず、状態をPSUSにする。
0124 リモートコピーシステム50’は、(1) プライマリサブシステム100aからの書込みデータとその制御データを不揮発のランダムメモリ(NVRAM)のみに格納し、(2) 書込みデータとその制御データをJNLVOL700に格納する、ことによって、中間サブシステムでのボリューム数を低減できる。NVRAMのみを使用するなら中間サブシステムには、ボリュームは不要である。このような構成では、NVRAMの容量が限られ(例えば数GB)、又NVRAMの容量を増加する事は高価につく為、プライマリボリュームのミラーを維持する事は困難である。NVRAMと共にJNLVOL700を使用することは、書込みデータとその制御データをJNLVOL700に保存できる為に、より受け入れやすい構成である。この後者の構成でも、必要なボリュームはIVOL101cに比べて低減できる。
0125 図11は、本発明の一実施例に従う、ミラー動作のサスペンド終了後の再同期時間を最小にするリモートコピーシステム50”を示す。システム50”は、プライマリサブシステムに配備される複数のビットマップ1100a、セカンダリサブシステムに配備される複数のビットマップ1110b、及び中間サブシステムに配備されるビットマップ1100cと1110cを備える。
0126 一般的に、ミラー動作は、プライマリと中間サブシステムの間、又はセカンダリと中間サブシステムの間の結合が障害になるか、人的に中断されると、サスペンドされる。障害が回復するかユーザがサスペンドしたミラーボリュームの再同期の指示をしたときに、ミラー動作は回復するか再同期される。再同期に於いては、再同期時間を最小にする為に、サスペンド後に変更があったデータのみが、プライマリからセカンダリサブシステムにコピーされる。本実施例では、この目的の為にビットマップを使用する。同様に、サスペンド後に変更があったデータのみが中間からセカンダリサブシステムにコピーされる。
0127 ミラーボリュームの各ペアに二つのビットマップが用意される。ビットマップ1100はプライマリボリュームにアサインされ、ビットマップ1110はセカンダリボリュームにアサインされる。従って、本発明の一実施例では、ビットマップ1100aはプライマリサブシステムの各プライマリボリュームにアサインされる。対応するビットマップ1110cは中間サブシステムでのセカンダリボリューム(又はセカンダリボリュームとして稼動している中間ボリューム101c)にアサインされる。
0128 中間サブシステムでは、中間ボリュームは、セカンダリサブシステムに対してプライマリボリュームである為、ビットマップ1100cを有する。セカンダリサブシステムは、中間サブシステムのビットマップ1100cに対応するビットマップ1110bを有する。
0129 ビットマップ1100と1110は、ミラーがサスペンドしてからのボリュームになされた変更を追跡する。これらビットマップは、対応するミラーがサスペンドして初めて活性化する。例えば、ミラー(PVOL101a、IVOL101c)のみがサスペンドしている場合には、PVOL101aのビットマップ1100aとIVOL101cのビットマップ1110cのみが活性化され、IVOL101cのビットマップ1100cとSVOL101bのビットマップ1110bは非活性のままである。
0130 再同期化に於いては、全ての活性化しているビットマップを、再同期化するソースストレージサブシステムに転送し、次いでマージ(OR)される。ソースストレージサブシステムは、そのときのアプリケーションに従って、プライマリサブシステムか中間サブシステムである。再同期でのソースストレージサブシステムは、マージされたビットマップに基づいてデータをコピーする。例えば、図12に於いては、PVOL101aとIVOL101c間のミラーは継続され、IVOL101cとSVOL101bがサスペンドしている。再同期化では、中間サブシステム101cがセカンダリサブシステムのビットマップ1110bを取得して、これをIVOL101cのビットマップ1100cとマージ(OR)する。マージされたビットマップに基づく差分データがIVOL101cからSVOL101bにコピーされる。リモートコピーシステム50”では、2セットの異なったビットマップが用意されているので、第一のミラー(PVOL101aとIVOL101c)は、第二のミラー(IVOL101cとSVOL101b)とは独立に再同期化される。
0131 これまでの詳細な記述は、本発明の具体的実施例を説明する為のもので、制約を加えることを意図しているものではない。本発明の範囲内で多数の改造と変形が可能である。従って、本発明は、添付の請求範囲によって定義されるものである。
0019 図1(a)は、本発明の一実施例による、複数のプライマリサブシステムを持つリモートコピーシステムを示す。 0020 図1(b)は、データの読み書き要求を処理するストレージコントローラと、本書込み要求に従って、データを保存する記録媒体を持つストレージユニットを含むストレージサブシステムの好適な一実施例を示す。 0021 図2によれば、本発明の一実施例による、同期的リモートコピー方法に関するプロセスは、プライマリサブシステムと中間サブシステムとの間で実行される。 0022 図3は、本発明の一実施例による、中間サブシステムとセカンダリサブシステムとの間の非同期リモートコピー動作の為のプロセスを説明する。 0023 図4は、本発明の一実施例による、セカンダリサブシステムでのデータ有効化の為のプロセスを説明する。 0024 図5は、本発明の一実施例による、リモートコピーシステムの為のミラー構成を説明する。 0025 図6は、本発明のもう一つの実施例による、リモートコピーシステムを説明する。 0026 図7は、本発明の一実施例による、リモートコピーシステムの為の整合性グループテーブルを説明する。 0027 図8は、本発明の一実施例による、障害なしに成功裏に実行されたプロセスのプロセスフローを示す。 0028 図9は、プロセス中に障害が発生した場合のプロセスフローを示す。 0029 図10(a)は、プライマリサイトのみが使用不能で、中間サブシステムが使用可能な場合のフェイルオーバ動作を示す。 0030 図10(b)は、中間サブシステムが使用不能になった場合のフェイルオーバ動作を示す。 0031 図11は、本発明の一実施例による、ミラー動作がサスペンドした後の再同期時間を最小限にするリモートコピーシステムを示す。 0032 図12は、PVOL101aとIVOL101cがミラー継続し、IVOL101cとSVOL101b間のミラーがサスペンドした状態を説明する。
符号の説明
100a-1、100a-2、100b-1、100b-2、100c…DKC
101a-1、101a-2…PVOL
101b-1、101b-2…SVOL
101c-1、101c-2…IVOL
102a、102b…アプリケーション
110a、110b…ホスト
121…カウンタ
122…有効カウンタ
130…タイマ
50…リモートコピーシステム
60…ストレージサブシステム
62…ストレージコントローラ
63…ストレージユニット
64…ホストチャネルアダプタ
66…ストレージチャネルアダプタ
68…ディスクアダプタ
70…キャッシュメモリ

Claims (11)

  1. 第一のプライマリボリュームを含む第一のプライマリストレージサブシステム、及び第二のプライマリボリュームを含む第二のプライマリストレージサブシステムであって、前記第一及び第二のプライマリボリュームは、複数の書込みデータを当該複数の書き込みデータの書込み順に保存する、第一及び第二のプライマリストレージサブシステムと、
    前記第一及び第二のプライマリストレージサブシステムに接続されるとともに、前記第一及び第二のプライマリストレージサブシステムから前記書込みデータを同期的に受信するように構成された、中間ストレージサブシステムであって、前記第一及び第二のプライマリストレージサブシステムから受信した前記書込みデータの保存の順番を反映する書込み順情報を生成するカウンタを含み、
    データ完全性が保証される整合性グループとして定義された第一及び第二の中間ボリュームを含み、前記第一の中間ボリュームは、前記第一のプライマリボリュームから前記書込みデータを受信するように構成され、前記第二の中間ボリュームは前記第二のプライマリボリュームから前記書込みデータを受信するように構成される、中間ストレージサブシステムと、 前記中間ストレージサブシステムの有効カウンタであって、前記有効カウンタは、前記中間ストレージサブシステムに接続されるとともに、前記中間ストレージサブシステムから前記書込みデータを非同期的に受信するように構成された、第一及び第二のセカンダリストレージサブシステムでのコピーのために有効化される準備ができている前記書込みデータの最大順番番号を保持するように構成される有効カウンタと
    前記第一及び第二のセカンダリストレージサブシステムであって、前記第一のセカンダリストレージサブシステムは、前記中間ストレージサブシステムとは別のストレージサブシステムである前記第一のプライマリストレージサブシステムの前記第一のプライマリボリュームをミラーするように構成された第一のセカンダリボリュームを含み、前記第二のセカンダリストレージサブシステムは、前記中間ストレージサブシステムとは別のストレージサブシステムである前記第二のプライマリストレージサブシステムの前記第二のプライマリボリュームをミラーするように構成された第二のセカンダリボリュームを含み、前記第一のプライマリボリュームを有する前記第一のプライマリストレージサブシステム及び前記第二のプライマリボリュームを有する前記第二のプライマリストレージサブシステムとは別のストレージサブシステムである前記中間ストレージサブシステムの前記書込み順情報プロバイダによって生成されたとおりの、前記書込みデータと対応付けられた前記書込み順情報に従って、前記書込みデータは、前記第一及び第二のセカンダリストレージサブシステムに保存され、前記中間ストレージサブシステムから前記準備要求受信した場合、前記準備要求受信前に受信した書き込みデータを回復するために必要な情報である回復用情報を保持し、前記中間ストレージサブシステムから前記有効化を受信した場合、前記回復用情報を破棄する第一及び第二のセカンダリストレージサブシステムと、
    を備え、
    前記中間ストレージサブシステムは、前記書込みデータを準備するようにという準備要求を送信し、かつ当該準備要求に従って準備された前記書込みデータを前記有効カウンタの値に基づいて有効化するようにという有効化要求を送信する
    リモートコピーシステム。
  2. 各々前記第一及び第二のプライマリサブシステムに設けられる第一及び第二のプライマリビットマップと、
    前記中間サブシステムに設けられる第一及び第二の中間ビットマップと、
    各々前記第一及び第二のセカンダリサブシステムに設けられる第一及び第二のセカンダリビットマップと
    をさらに備え、
    前記第一及び第二のプライマリビットマップは前記第一の中間ビットマップに対応付けられ、前記第一及び第二のセカンダリビットマップは前記第二の中間ビットマップに対応付けられ、
    前記ビットマップは、再同期プロセスで、ペアボリュームのミラー処理が中断した後に変更のあったデータのみを決定し、かつ当該データをコピーするために使用される、請求項1に記載のリモートコピーシステム。
  3. 前記中間サブシステムは、前記第一及び第二のプライマリサブシステムから前記書込みデータを受信するジャーナルボリュームを含む、請求項1に記載のリモートコピーシステム。
  4. 前記第一及び第二のプライマリサブシステムはディスクアレイユニットである、請求項1に記載のリモートコピーシステム。
  5. 前記プライマリサブシステムはプライマリサイトに設けられ、前記セカンダリサブシステムはセカンダリサイトに設けられ、前記プライマリサイトはプライマリホストを含み、
    前記セカンダリサイトはセカンダリホストを含み、
    前記プライマリサブシステム又は前記プライマリホストのいずれかが障害を被るか又はオフラインにされた場合に、前記セカンダリサブシステムは、第一の保存領域として、前記プライマリサブシステムに取って代わるように構成されている、請求項1に記載のリモートコピーシステム。
  6. 第一のプライマリストレージサブシステムとは別のストレージサブシステムである中間ストレージサブシステムで、第一のプライマリストレージサブシステムから同期的に送信される第一の書込みデータを受信することと、
    データ完全性が保証される整合性グループとして定義される複数のボリュームからなる中間ボリュームを含む前記中間ストレージサブシステムで、第一の書込み順情報を前記第一の書込みデータに対応付けることと、
    前記第二のプライマリストレージサブシステムとは別のストレージサブシステムである前記中間サブシステムで、第二のプライマリストレージサブシステムから同期的に送信される第二の書込みデータを受信することと、
    前記中間ストレージサブシステムで、第二の書込み順情報を前記第二の書込みデータに対応付けることと、
    前記中間ストレージサブシステムとは別のストレージサブシステムである第一のセカンダリストレージサブシステムに、前記第一の書込みデータ及び前記第一の書込み順情報を非同期的に送信することと、
    前記中間ストレージサブシステムとは別のストレージサブシステムである第二のセカンダリストレージサブシステムに、前記第二の書込みデータ及び前記第二の書込み順情報を非同期的に送信することと、
    前記第一及び第二のセカンダリサブシステムに保存するために前記第一、第二及び第三の書込みデータを準備するようにという要求であって、参照用の順番番号を含む準備要求を、前記中間サブシステムから前記第一及び第二のセカンダリサブシステムへ送信することと、
    前記準備要求に従って準備された前記書込みデータを有効化するようにという要求を送信することであって、当該有効化要求は、前記中間サブシステムから前記第一及び第二のセカンダリサブシステムへ送信され、準備すべき前記書込みデータを識別し、前記参照用の順番番号よりも小さい又は等しい前記順番番号で前記書込みデータを有効化する、前記有効化要求を送信することと、
    を含む、リモートコピーシステムを操作する方法であって、
    前記第一及び第二の書込みデータは、各々前記第一及び第二の書込み順情報に従って前記第一及び第二のセカンダリサブシステムに保存され、
    前記中間ストレージサブシステムは、ホストユニットに直接的には接続されていない、
    リモートコピーシステムを操作する方法。
  7. 前記中間ストレージサブシステムで、前記第一のプライマリサブシステムから第三の書込みデータを、前記第一の書込みデータの後に、同期的に受信することと、
    前記第三の書込みデータを第三の書込み順情報に対応付けることと、
    前記第三の書込みデータ及び前記第三の書込み順情報を前記第一のセカンダリサブシスムに非同期的に送信することと、
    をさらに含み、 前記第一及び第三の書込みデータは、前記第一のセカンダリサブシステムでの保存領域を識別する保存先アドレスと同一の保存先アドレスを有し、
    前記第一及び第三の書込み順情報は、前記第三の書込みデータを前記識別された保存領域に保存する前に、前記第一の書込みデータを前記識別された保存領域に保存するために使用される、請求項6に記載の方法。
  8. リモートコピーシステムに設けられるとともに、複数のプライマリストレージサブシステムに接続され、かつ複数のセカンダリサブシステムに接続される、中間ストレージサブシステムであって、
    前記中間ストレージサブシステムとは別のストレージサブシステムである少なくとも一つのプライマリサブシステムから書込みデータを受信するように構成された第一の中間保存領域であって、前記書込みデータは、前記少なくとも一つのプライマリサブシステムから同期的に受信され、前記第一の中間保存領域は、データ完全性が保証される整合性グループとして定義される複数のボリュームの第一の中間保存領域と、
    前記少なくとも一つのプライマリサブシステムから受信された前記書込みデータのために書込み順情報を生成するように構成された、カウンタであって、前記書込み順情報は前記書込みデータに対応付けられる、カウンタと、
    前記中間サブシステムに設けられた有効カウンタであって、前記セカンダリサブシステムでのコピーのために有効化される準備ができている前記書込みデータの最大順番番号を保持するように構成された、有効カウンタと、
    第二の中間保存領域と、
    を備える中間ストレージサブシステムであり、
    前記中間ストレージサブシステムとは別のストレージサブシステムである前記セカンダリサブシステムのうちの少なくとも一つに前記書込みデータを保存するために、前記書込み順情報を使用することにより、前記少なくとも一つのセカンダリサブシステムは、前記少なくとも一つのプライマリサブシステムをミラーし、
    前記中間ストレージサブシステムは、前記書込みデータを準備するようにという要求と、当該準備要求に従って準備された前記書込みデータを、前記有効カウンタの値に基づいて有効化するようにという要求とを送信し、
    前記複数のプライマリサブシステムは、第一のプライマリサブシステムに設けられた第一のプライマリボリュームと、第二のプライマリサブシステムに設けられた第二のプライマリボリュームとを含み、
    前記第一及び第二の中間保存領域は第一及び第二の中間ボリュームであって、前記第一の中間ボリュームは、前記第一のプライマリボリュームから書込みデータを受信するように構成され、前記第二の中間ボリュームは、前記第二のプライマリボリュームから書込みデータを受信するように構成され、
    前記第一の中間ボリュームは、前記第一のプライマリボリュームから受信した前記書込みデータを、第一のセカンダリサブシステムに設けられた第一のセカンダリボリュームに送信するように構成され、前記第二の中間ボリュームは、前記第二のプライマリボリュームから受信した前記書込みデータを、第二のセカンダリサブシステムに設けられた第二のセカンダリボリュームに送信するように構成され、
    前記中間ストレージサブシステムは、ホストユニットに直接的には接続されてはいない、
    中間ストレージサブシステム。
  9. 前記第一の保存領域は、前記少なくとも一つのプライマリサブシステムから所定の順番で第一及び第二の書込みデータを受信するように構成され、前記第一及び第二の書込みデータには各々、
    前記中間サブシステムによって第一及び第二の書込み順情報が提供され、前記第一及び第二の書込みデータは、前記第一及び第二の書込み順情報を用いて、前記所定の順番に従って前記少なくとも一つのセカンダリサブシステムに保存される、請求項8に記載のストレージサブシステム。
  10. 前記書込み順情報は、順番番号を生成するように構成されたカウンタによって生成され、
    当該生成された順番番号は、前記書込みデータが前記少なくとも一つのプライマリサブシステムから受信された順番に従って、前記書込みデータに対応付けられる、請求項8に記載のストレージサブシステム。
  11. 前記第一の保存領域は、前記複数のプライマリサブシステムから書込みデータを受信するように構成されたジャーナルボリュームである、請求項8に記載のストレージサブシステム。
JP2004338341A 2004-01-15 2004-11-24 分散リモートコピーシステム Expired - Fee Related JP4892185B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/758971 2004-01-15
US10/758,971 US7600087B2 (en) 2004-01-15 2004-01-15 Distributed remote copy system

Publications (3)

Publication Number Publication Date
JP2005276162A JP2005276162A (ja) 2005-10-06
JP2005276162A5 JP2005276162A5 (ja) 2007-11-15
JP4892185B2 true JP4892185B2 (ja) 2012-03-07

Family

ID=34749616

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004338341A Expired - Fee Related JP4892185B2 (ja) 2004-01-15 2004-11-24 分散リモートコピーシステム

Country Status (2)

Country Link
US (1) US7600087B2 (ja)
JP (1) JP4892185B2 (ja)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7197663B2 (en) * 2003-11-20 2007-03-27 International Business Machines Corporation Concurrent PPRC/FCP and host access to secondary PPRC/FCP device through independent error management
US7421549B2 (en) * 2004-03-02 2008-09-02 Hitachi, Ltd. Method and apparatus of remote copy for multiple storage subsystems
JP2005309793A (ja) 2004-04-22 2005-11-04 Hitachi Ltd データ処理システム
US7657578B1 (en) * 2004-12-20 2010-02-02 Symantec Operating Corporation System and method for volume replication in a storage environment employing distributed block virtualization
US7681074B2 (en) * 2005-04-29 2010-03-16 Microsoft Corporation Transport high availability
US20070094336A1 (en) * 2005-10-24 2007-04-26 Microsoft Corporation Asynchronous server synchronously storing persistent data batches
US7565498B1 (en) 2005-11-07 2009-07-21 Symantec Operating Corporation System and method for maintaining write order fidelity in a distributed environment
US7921165B2 (en) * 2005-11-30 2011-04-05 Microsoft Corporation Retaining mail for availability after relay
US7668810B2 (en) * 2006-01-27 2010-02-23 International Business Machines Corporation Controlling consistency of data storage copies
JP4757300B2 (ja) * 2006-03-31 2011-08-24 富士通株式会社 ボリューム管理装置およびボリューム管理方法
JP4920291B2 (ja) * 2006-04-18 2012-04-18 株式会社日立製作所 計算機システム、アクセス制御方法及び管理計算機
US20080059941A1 (en) * 2006-08-30 2008-03-06 Timothy Payne Method and system for supporting a collaborative development environment
US7702953B2 (en) * 2007-01-04 2010-04-20 International Business Machines Corporation Storage management in cascaded replication of data
JP5042644B2 (ja) 2007-01-24 2012-10-03 株式会社日立製作所 リモートコピーシステム
WO2008139545A1 (ja) * 2007-05-01 2008-11-20 Fujitsu Limited ストレージシステム、ストレージ装置、リモートコピー方法
KR100926880B1 (ko) * 2007-05-21 2009-11-16 엔에이치엔(주) Dbms에서의 데이터 복제 방법 및 시스템
JP4400653B2 (ja) * 2007-06-11 2010-01-20 株式会社日立製作所 情報システム、および、情報システムの情報保存方法
US20090006744A1 (en) * 2007-06-28 2009-01-01 Cavallo Joseph S Automated intermittent data mirroring volumes
US20090006745A1 (en) * 2007-06-28 2009-01-01 Cavallo Joseph S Accessing snapshot data image of a data mirroring volume
US7962780B2 (en) * 2008-08-22 2011-06-14 International Business Machines Corporation Command sequence numbering apparatus and method
JP5218121B2 (ja) * 2009-02-06 2013-06-26 日本電気株式会社 情報システム及びディザスタリカバリ方法
US8055943B2 (en) * 2009-04-24 2011-11-08 International Business Machines Corporation Synchronous and asynchronous continuous data protection
WO2011062216A1 (ja) * 2009-11-18 2011-05-26 日本電気株式会社 中継装置、中継方法及びプログラム
US9471593B1 (en) * 2010-12-30 2016-10-18 Emc Corporation Method and apparatus for ensuring consistent ordering of writes in a distributed database storage system
US8490092B2 (en) 2011-07-06 2013-07-16 Microsoft Corporation Combined live migration and storage migration using file shares and mirroring
US9600206B2 (en) * 2012-08-01 2017-03-21 Microsoft Technology Licensing, Llc Request ordering support when switching virtual disk replication logs
US8990615B1 (en) * 2012-09-28 2015-03-24 Emc Corporation System and method for cache management
US9495293B1 (en) * 2014-05-05 2016-11-15 EMC IP Holding Company, LLC Zone consistency
US10140035B2 (en) * 2014-06-25 2018-11-27 Hitachi, Ltd. Method for appropriately controlling duplicated volumes in virtual volume subsystems
JP2016024656A (ja) * 2014-07-22 2016-02-08 富士通株式会社 ストレージ制御装置、ストレージシステム及びストレージ制御プログラム
US10303782B1 (en) 2014-12-29 2019-05-28 Veritas Technologies Llc Method to allow multi-read access for exclusive access of virtual disks by using a virtualized copy of the disk
US9727426B2 (en) * 2015-02-25 2017-08-08 Microsoft Technology Licensing, Llc Using an overinclusive write record to track and write changes to a storage system
US10579640B2 (en) * 2015-10-12 2020-03-03 International Business Machines Corporation Mirroring resynchronization
US10303572B2 (en) * 2017-01-23 2019-05-28 Wipro Limited Methods and systems for improving fault tolerance in storage area network
US11169727B1 (en) * 2017-03-10 2021-11-09 Pure Storage, Inc. Synchronous replication between storage systems with virtualized storage
US11520488B2 (en) * 2020-04-22 2022-12-06 Dell Products, L.P. Method and apparatus for identifying a device missing from a consistency group
JP2022052484A (ja) 2020-09-23 2022-04-04 富士通株式会社 ストレージ装置及びストレージ制御方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8915875D0 (en) 1989-07-11 1989-08-31 Intelligence Quotient United K A method of operating a data processing system
US5404508A (en) 1992-12-03 1995-04-04 Unisys Corporation Data base backup and recovery system and method
US5446871A (en) 1993-03-23 1995-08-29 International Business Machines Corporation Method and arrangement for multi-system remote data duplexing and recovery
US5504861A (en) 1994-02-22 1996-04-02 International Business Machines Corporation Remote data duplexing
KR0128271B1 (ko) 1994-02-22 1998-04-15 윌리암 티. 엘리스 재해회복을 위한 일관성 그룹 형성방법 및 레코드갱싱의 섀도잉 방법, 주시스템, 원격데이타 섀도잉 시스템과 비동기 원격데이타 복제 시스템
US6158019A (en) 1996-12-15 2000-12-05 Delta-Tek Research, Inc. System and apparatus for merging a write event journal and an original storage to produce an updated storage using an event map
JP3414218B2 (ja) 1997-09-12 2003-06-09 株式会社日立製作所 記憶制御装置
JP4689137B2 (ja) * 2001-08-08 2011-05-25 株式会社日立製作所 リモートコピー制御方法、及びストレージシステム
JP4141581B2 (ja) * 1999-04-05 2008-08-27 株式会社ルネサステクノロジ フラッシュメモリを搭載する記憶装置
JP2000305856A (ja) * 1999-04-26 2000-11-02 Hitachi Ltd ディスクサブシステム及びこれらの統合システム
US6757797B1 (en) * 1999-09-30 2004-06-29 Fujitsu Limited Copying method between logical disks, disk-storage system and its storage medium
US6526418B1 (en) 1999-12-16 2003-02-25 Livevault Corporation Systems and methods for backing up data files
JP4044717B2 (ja) * 2000-03-31 2008-02-06 株式会社日立製作所 記憶サブシステムのデータ二重化方法及びデータ二重化システム
US6658540B1 (en) 2000-03-31 2003-12-02 Hewlett-Packard Development Company, L.P. Method for transaction command ordering in a remote data replication system
JP2002189570A (ja) * 2000-12-20 2002-07-05 Hitachi Ltd 記憶システムの二重化方法および記憶システム
US6717988B2 (en) * 2001-01-11 2004-04-06 Koninklijke Philips Electronics N.V. Scalable MPEG-2 decoder
US20030014523A1 (en) 2001-07-13 2003-01-16 John Teloh Storage network data replicator
US6859865B2 (en) * 2001-11-09 2005-02-22 Nortel Networks Limited System and method for removing latency effects in acknowledged data transfers
US7886298B2 (en) 2002-03-26 2011-02-08 Hewlett-Packard Development Company, L.P. Data transfer protocol for data replication between multiple pairs of storage controllers on a san fabric
US6928513B2 (en) 2002-03-26 2005-08-09 Hewlett-Packard Development Company, L.P. System and method for managing data logging memory in a storage area network
EP1349285A1 (en) * 2002-03-28 2003-10-01 Matsushita Electric Industrial Co., Ltd. Method for making efficient use of the bits allocated to the sequence number when transmitting compressed header data
US7133984B1 (en) * 2003-04-11 2006-11-07 Sprint Communications Company L.P. Method and system for migrating data

Also Published As

Publication number Publication date
JP2005276162A (ja) 2005-10-06
US20050160248A1 (en) 2005-07-21
US7600087B2 (en) 2009-10-06

Similar Documents

Publication Publication Date Title
JP4892185B2 (ja) 分散リモートコピーシステム
US7065589B2 (en) Three data center remote copy system with journaling
US7412576B2 (en) Remote copy system having multiple data centers
US7673173B2 (en) System and program for transmitting input/output requests from a first controller to a second controller
US7467168B2 (en) Method for mirroring data at storage locations
US6910075B2 (en) Dynamic RDF groups
US6345368B1 (en) Fault-tolerant access to storage arrays using active and quiescent storage controllers
US7139885B2 (en) Method and apparatus for managing storage based replication
US7076687B2 (en) System and method for bi-directional failure detection of a site in a clustering system
JP4461147B2 (ja) リモートデータミラーリングを用いたクラスタデータベース
JP4902289B2 (ja) バックアップシステム及びバックアップ方法
US20060107007A1 (en) Data processing system
US7111004B2 (en) Method, system, and program for mirroring data between sites
JP2005062928A (ja) 複数のサイトにリモートコピーを行うシステム
US7107355B2 (en) High availability lightweight directory access protocol service
JP2005309793A (ja) データ処理システム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060425

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070927

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070927

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20070927

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071204

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100611

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100708

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100906

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110121

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4892185

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees