JP2005018736A - リモートコピーシステム - Google Patents

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

Info

Publication number
JP2005018736A
JP2005018736A JP2004081902A JP2004081902A JP2005018736A JP 2005018736 A JP2005018736 A JP 2005018736A JP 2004081902 A JP2004081902 A JP 2004081902A JP 2004081902 A JP2004081902 A JP 2004081902A JP 2005018736 A JP2005018736 A JP 2005018736A
Authority
JP
Japan
Prior art keywords
storage system
journal
data
volume
storage
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
JP2004081902A
Other languages
English (en)
Other versions
JP4473612B2 (ja
JP2005018736A5 (ja
Inventor
Kenji Yamakami
憲司 山神
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 JP2005018736A publication Critical patent/JP2005018736A/ja
Publication of JP2005018736A5 publication Critical patent/JP2005018736A5/ja
Application granted granted Critical
Publication of JP4473612B2 publication Critical patent/JP4473612B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or 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/2074Asynchronous techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/59Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • 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
    • 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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】プライマリストレージシステムとセカンダリストレージシステムを、たとえば100マイル以上離して設置すること。
【解決手段】第1のストレージシステムは第1のストレージシステムに関連する第1のホストからの書き込みリクエストを受け取ると第1のデータボリュームに書き込みデータを記憶し、コントローラデータとジャーナルデータを含むジャーナルを生成する。第2のストレージシステムはジャーナルボリュームを含み、ジャーナルボリュームの第1のストレージシステムにより生成されたジャーナルを受信し記憶する。第3のストレージシステムは第2のデータボリュームを含み、コントローラデータにより提供される情報に従って第2のストレージシステムからジャーナルを受け取り、ジャーナルのジャーナルデータを第2のストレージシステムに記憶する。
【選択図】図1A

Description

本発明はストレージシステムに係わり、さらに詳細にはリモートコピー機能を行うように構成されたストレージシステムに係わる。
データは全ての計算プロセスの基本となる基礎リソースである。近年のインターネットやe−ビジネスの爆発的な発展に伴い、データ記憶システムの需要は急速に増加している。一般に、ストレージネットワークは二つののアプリケーションや構成を包含するもので、ネットワーク接続ストレージ(NAS)またはストレージ・エリア・ネットワーク(SAN)などである。
NASはストレージサーバとそのクライアントの間でファイルフォーマットのデータを転送するためにイーサーネット上でIPを用いる。NASにおいては、ディスクアレイやテープアレイなどの総合ストレージシステムは、TCP/IPなどのメッセージコミュニケーションプロトコルを用いて、ローカルエリアネットワーク(LAN)を通してメッセージネットワークに直接接続される。クライアントサーバシステムでは、ストレージシステムはサーバとして機能する。
一般に、SANは異種のサーバとストレージリソース間でデータを移動させる専用高性能ネットワークである。従来のメッセージング・ネットワークでは、NASと異なり、クライアントとサーバ間のトラフィックの輻輳を避けるためにそれぞれに専用のネットワークが用いられる。SANでは、ストレージリソースとプロセッサーあるいはサーバ間に直接の接続を設定することが可能である。SANはサーバの間でシェアすることも、また特定のサーバに専用にすることも可能である。それは一カ所に集中させることも、地理的に離れた場所に拡張することも可能である。SANインターフェイスは、ファイバーチャネル(FC)やエンタプライズシステムコネクション(ESCON)や小型コンピュータシステムインターフェイス(SCSI)やシリアルストレージアーキテクチャ(SSA)や高性能パラレルインターフェイス(HIPPI)あるいは将来出現するであろう他のプロトコルのような各種のインターフェイスによることが可能である。
たとえば、インターネットエンジニアリングタスクフォース(IETF)は、TCP/IP上でブロックストレージを可能にする新しいプロトコルあるいは標準iSCSIを開発中であり、一方幾つかの会社はiSCSIをSANの主たる標準にするためにホストプロセッサーからiSCSI−TCP/IPプロトコルスタックを外す努力をしている。用いられているストレージシステムの形式がどうであろうとも、データストレージシステムのユーザは、ストレージユニット(あるいはストレージサブシステム)の障害で貴重なデータが失われることを防ぐためのデータバックアップに強い関心を持っている。
したがって、データストレージシステムは一般に、プライマリユニットに障害が発生した時に、エマージェンシーリカバリーのためのデータを記憶するバックアップユニットを含んでいる。しかしながら、障害は、ユニット自身の故障による場合も、たとえばユニットが設置されている場所での地震とか台風による自然災害の発生による場合もある。もしバックアップユニットがプライマリユニットの近くに設置されていると、自然災害が発生した場合に両方とも破壊される可能性がある。したがって、多くのストレージシステムのユーザは、たとえば100マイル以上離れた遠い距離を離してプライマリユニットとバックアップユニットを設置する傾向がある。実際に、複数のユーザはプライマリユニットとバックアップユニットを別の大陸に設置することまでやっている。
現在、ストレージシステムでは、データをバックアップあるいはセカンダリサイトにコピーするために二つの動作モード、すなわち同期モードと非同期モードが用いられている。
同期モードでは、ホストからプライマリストレージシステムへの書き込みリクエストは、書き込みデータがセカンダリストレージシステムにコピーされ、それが確認された後でのみ完了する。したがって、セカンダリストレージシステムから確認を受け取るまで、ホストからの書き込みデータはプライマリシステムのキャッシュに保存されているので、このモードではセカンダリシステムでデータの消失がないことが保証される。
さらに、プライマリストレージシステムにおけるプライマリボリューム(PVOL)とセカンダリストレージシステムにおけるセカンダリボリューム(SVOL)は同一に保持されているので、もしPVOLに障害が発生しても、速やかにSVOLを用いてPVOLを再生することができる。しかしながら、このモードの下では、プライマリストレージシステムとセカンダリストレージシステムを、たとえば100マイル以上離して設置することは出来ない。そのようなことがなければ、ストレージシステムは効率よくホストからの書き込みリクエストを実行できる。
非同期モードでは、ホストからプライマリストレージシステムへの書き込みリクエストは、プライマリシステムのみへ書き込みデータを記憶することで完了する。書き込みデータは、続いてセカンダリストレージシステムにコピーされる。すなわち、プライマリストレージシステムへデータを書き込むことは、セカンダリストレージシステムにデータをコピーすることとは独立した処理である。したがって、プライマリシステムとセカンダリシステムは、たとえば100マイルあるいはそれ以上ずっと離して別々に設置されてもよい。
しかしながら、PVOLとSVOLは同一に維持されているので、もしプライマリシステムがダウンするとデータが失われる可能性がある。したがって、同期モードと非同期モードの利点を提供する、言い換えればデータ喪失がないことを保証していながらプライマリシステムとセカンダリシステムをずっと離して設置できる、データストレージシステムあるいはリモートコピーシステムを提供することが望まれている。
本発明の実施例は、リモートコピー機能を行うべく構成されたストレージシステムに係わる。一実施例においては、プライマリストレージシステムは、仲介ストレージシステムに書き込みデータをコントロールデータとともに同期して送る。仲介ストレージシステムは書き込みデータとコントロールデータを、たとえばジャーナルボリューム(JNL)などのボリュームに記憶する。仲介ストレージシステムはデータの到着の順序を維持し、コントロールデータの各々に順序情報を割り当てあるいは連結させる。
つづいて、仲介ストレージシステムは書き込みデータとその対応するコントロールデータを非同期で、あるいはプライマリストレージシステムにおける書き込みデータとコントロールデータの記憶とは関連無しにセカンダリストレージシステムに送る。セカンダリストレージシステムは、コントロールデータとコントロールデータに関連した順序情報に従い、書き込みデータをセカンダリボリューム(SVOL)に記憶する。ここに用いられている、「ストレージシステム」という用語は、データを記憶するように構成され、たとえばディスクアレイユニットなどの1台ないしはそれ以上のストレージユニットあるいはストレージサブシステムを持つコンピュータシステムを意味する。
したがって、ストレージシステムは、1台ないしはそれ以上のホストと、1ないしはそれ以上のストレージサブシステムを含むコンピュータシステム、あるいは単にストレージサブシステムまたはユニット、あるいはコミュニケーションリンクを介して相互に結合した複数のストレージサブシステムまたはユニットを意味することもある。ここに用いられている、「ストレージサブシステム」という用語は、データを記憶するように構成され、ストレージ領域と1台ないしはそれ以上のホストからのリクエストを処理するストレージコントローラを含むコンピュータシステムを意味する。ストレージサブシステムの例はディスクアレイユニットである。
ここに用いられている、「ホスト」という用語は、1台ないしはそれ以上のストレージシステムあるいはストレージサブシステムに結合され、ストレージシステムあるいはストレージサブシステムにリクエストを送るように構成されたコンピュータシステムを意味する。ホストはサーバかあるいはクライアントであるかもしれない。ここに用いられている、「リモートコピーシステム」という用語は、リモートコピー機能を行うように構成されたコンピュータシステムを意味する。リモートコピーシステムは単一のストレージシステム、ストレージサブシステムまたはストレージユニット、あるいはネットワークまたはコミュニケーションリンクで結合された複数のストレージユニット、ストレージシステム、ストレージサブシステムを意味する。
したがって、リモートコピーシステムは、プライマリストレージシステム、セカンダリストレージシステム、仲介システムあるいはそれらの組み合わせを意味する。リモートコピーシステムはまた、1台ないしはそれ以上のホストを含むこともある。一実施例においては、プライマリストレージシステム110aのボリュームは、仲介ストレージシステム110cを用いてセカンダリストレージシステム110bにミラーリングされている。仲介ストレージシステム110cは一般にプライマリストレージシステム110aの比較的近くに位置し、一方セカンダリストレージシステム110bは、仲介ストレージシステム110cと/あるいはプライマリストレージシステムから比較的遠方に位置している。
プライマリストレージシステムと関連しているホストから書き込みリクエストを受け取ると、書き込みデータはプライマリストレージシステム110aから仲介ストレージシステム110cに同期的にコピーされる。仲介ストレージシステムにコピーされた書き込みデータは、コントロールデータとジャーナルデータを含むジャーナル情報の形式である。書き込みデータはジャーナルデータに対応し、コントロールデータはジャーナルデータについての管理情報を提供する。
次に、ホストの書き込みリクエストに関連して、ジャーナルは仲介ストレージシステム110cからセカンダリストレージシステム110bに非同期的にコピーされる。書き込みデータは、上記のコピー処理の間にプライマリストレージシステムと仲介ストレージシステムが損傷を受けない限り信頼できる。一実施例においては、仲介ストレージシステムは1ないしはそれ以上のジャーナルボリュームを含むがデータボリュームは含まないので、装置コストは低くなる。一実施例では、リモートコピーシステムは第1のストレージコントローラと第1のデータボリュームを含む第1のストレージシステムを含む。第1のストレージコントローラは第1のデータボリュームに対するデータアクセスリクエストを制御するように構成されている。
第1のストレージシステムは第1のストレージシステムに関連する第1のホストからの書き込みリクエストを受け取ると第1のデータボリュームに書き込みデータを記憶し、コントロールデータとジャーナルデータを含むジャーナルを生成するように構成されている。第2のストレージシステムはジャーナルボリュームを含み、第1のストレージシステムにより生成されたジャーナルをジャーナルボリュームに受信し記憶するように構成されている。第3のストレージシステムは第2のデータボリュームを含み、第2のストレージシステムからジャーナルを受け取り、コントロールデータにより提供される情報に従ってジャーナルのジャーナルデータを第2のストレージシステムに記憶する。
一実施例においては、ストレージシステムは、第1のホストからデータアクセスリクエストを受け取る第1のストレージコントローラと、第1のストレージコントローラと結合し第1のストレージコントローラの制御により情報を記憶するように構成され、プライマリボリュームを含んでいる第1のストレージ領域と、第1のストレージコントローラから少なくとも100マイル離れて設置されている第2のストレージコントローラと、第2のストレージコントローラと結合し第2のストレージコントローラの制御に従い情報を記憶するように構成され、セカンダリボリュームを含んでいる第2のストレージ領域と、を含んでいる。セカンダリボリュームはプライマリボリュームをミラーリングする。
第1のストレージコントローラはプライマリボリュームに第1のホストからの書き込みリクエストに関連した書き込みデータを記憶し、書き込みリクエストに応じてコントロールデータとジャーナルデータを含むジャーナルを生成するように構成されている。ジャーナルデータは書き込みデータに対応しており、ジャーナルは第1のストレージ領域の外に設けられたジャーナルボリュームに同期的に転送される。
別の実施例においては、リモートコピーシステム動作は、プライマリストレージシステムに関連したプライマリホストから書き込みリクエストを受け取った後にプライマリストレージシステムでコントロールデータとジャーナルデータを生成し、プライマリストレージシステムとセカンダリストレージシステムの間でデータのミラーリングを行うために仲介ストレージシステムにジャーナルを転送することを含んでいる。セカンダリストレージシステムは仲介ストレージシステムから遠く離れて配置されている。
一実施例においては、仲介ストレージシステムは1ないしはそれ以上のジャーナルボリュームを含むがデータボリュームは含まないので、装置コストは低くなる。
図1Aは、本発明の一実施例によるリモートコピーシステム50は複数のストレージシステムを含むことを示している。リモートコピーシステムはプライマリストレージシステム110aとセカンダリストレージシステム110bと仲介ストレージシステム110cを含んでいる。ストレージシステムは相互にコミュニケーションリンク120aと120bを介し結合されている。一実施例においては、以下に説明するようにリンク120aはリンク120bよりかなり短いので、リンク120aはファイバー・チャネルであり、リンク120bは公衆コミュニケーションリンクである。本実施例では、ストレージシステム110aと110bと110cはディスクアレイユニットか、あるいはストレージサブシステムである。
図1Bはデータの読み出し/書き込みリクエストを処理するように構成されたストレージコントローラ62と、書き込みリクエストに応じてデータを記憶する記録媒体を含むストレージユニット63を含む典型的なストレージサブシステム60(たとえばプライマリシステム110a)の例を示す。コントローラ62はホストコンピュータ(たとえばホスト100a)と結合したホストチャネルアダプター64と他のサブシステム(たとえばストレージシステム110cあるいは110b)と結合したサブシステムチャネルアダプター66とストレージサブシステム60におけるストレージユニット63に結合したディスクアダプター68を含んでいる。
本発明の実施例では、これらのアダプターの各々はデータを送受信するポート(図示せず)とポートを経由したデータ転送を制御するマイクロプロセッサー(図示せず)を含んでいる。コントローラ62はストレージユニット63から読み出したあるいは書き込むデータを一時的に記憶するために用いるキャッシュメモリー70も含んでいる。一実施例では、ストレージユニットは複数の磁気ディスクドライブ(図示せず)である。サブシステムはホストコンピュータに複数の論理ボリュームをストレージ領域として提供する。ホストコンピュータはこれらの論理ボリュームの識別子をストレージサブシステムからデータを読み出すあるいはそこにデータを書き込むために用いる。論理ボリュームの識別子は論理ユニット番号(LUN)と呼ばれる。論理ボリュームは単一の物理ストレージデバイスあるいは複数のストレージデバイスに含むことができる。同様に、複数の論理ボリュームを単一の物理ストレージデバイスに関連させることが出来る。
より詳細なストレージサブシステムの説明が、参考として援用されている、現在の特許権者が権利を有する、2002年6月5日に出願された日本国特許出願2002-163705により優先権が主張されており、2003年5月21日に出願された「データストレージサブシステム」という名称の米国特許出願 により提供されている。
図1Aに戻ると、本発明の実施例においては、書き込みデータはプライマリシステム110aと仲介システム110cとの間では同期して、仲介システム110cとセカンダリシステム110bとの間では非同期で送られる。したがって、仲介システム110cは一般にセカンダリシステム110bからの距離に比較してプライマリシステム110aの比較的近くに位置している。たとえば、仲介システムはプライマリシステムから約5マイル以下、あるいは10マイル以下もしくは20マイル以下に位置している。一実施例においては、仲介システムはプライマリシステムから100マイルを超えて離れることは無い。比較してみると、本発明の一実施例においては、仲介システムはセカンダリシステムから50マイル以上あるいは100マイル以上あるいは200マイル以上あるいは異なった大陸に位置している。
リモートコピーシステムはプライマリストレージシステム110aにコミュニケーションリンク130aを経由して結合しているプライマリホスト100aとコミュニケーションリンク130bを経由してセカンダリストレージシステム110bに結合しているセカンダリホスト100bを含んでいる。プライマリホストはプライマリストレージシステム110aのストレージ領域あるいはボリュームにアクセス(読み出し及び書き込み)するためのアプリケーションプログラム(APP)102を含んでいる。一実施例においては、APP102はもしプライマリホスト100aあるいは/およびプライマリストレージシステム110aが使えなくなった時には(言い換えれば障害が発生した時には)、特に企業などのビジネスユーザに支障なくデータにアクセス出来るようにセカンダリホスト100bにフェイルオーバを動作させることが出来る。
リモートコピーマネージメントソフトウエア(RCM)101は、リモートコピーシステムを制御するためのインターフェイスをユーザおよび/あるいはアプリケーションに提供するためにホスト100aと100bの双方のうえで走る。システム50は三つの形式のボリュームを含んでいる。プライマリストレージシステムは1ないしはそれ以上のプライマリボリューム(PVOL)111aを含んでいる。PVOL111aはAPP101が読み出しあるいは書き込むプロダクションデータを含んでいる。セカンダリストレージシステムは1ないしはそれ以上のセカンダリボリューム(SVOL)111bを含んでいる。SVOL111bはPVOL111aのコピーデータを含んでいる。仲介ストレージシステムは1ないしはそれ以上のジャーナルボリューム(JVOLあるいはJNL)112を含んでいる。JVOL112はPVOL111aに書き込まれた書き込みデータとそれに対応するコントロールデータを記憶する。
図2は本発明の一実施例によるJNLボリュームまたはJVOL112の例を示す。JVOLはリモートコピーを実行するに際し用いられるジャーナルあるいはジャーナル情報を記憶するように構成されている。ジャーナルはジャーナルデータとそのコントロールデータを対として持っている。ジャーナルデータはPVOL111aに記憶されたデータあるいはホスト100からPVOLに書き込まれたデータに対応している。コントロールデータは対応するジャーナルデータに関係した管理情報を含む。
本発明の実施例においては、コントロールデータとジャーナルデータは両方ともシーケンシャルに、言い換えれば受け取ったジャーナルはFIFOメモリーに順番に積み重ねられるように、同じジャーナルボリュームに記憶される。仲介ストレージシステムは複数のこのようなFIFOメモリーを含むことがある。一実施例では、最初のコントロールデータはボリューム112において最初に記憶され、それに対応する最初のジャーナルデータは同じボリュームに記憶される。
次に第2のコントロールデータは最初のジャーナルデータの隣に記憶され、第2のコントロールデータに対応する第2のジャーナルデータはその隣に記憶され、以下同様になる。コントロールデータは、ジャーナルデータが得られるPVOL111aに対する識別子であるインデックス(IDX)211、たとえばプライマリストレージシステム110aあるいはジャーナルグループ200(図4)におけるPVOLに割り当てられた固有の番号を、含んでいる。アドレス212は書き込みデータがそこから書かれるPVOLのオフセットアドレス、たとえば書き込みデータのスターティング論理ブロックアドレス(LBA)、を提供する。長さ213は書き込みデータの長さ、たとえば論理ブロックの数あるいは書き込みデータの総バイト数、を提供する。
時刻214はホストがPVOL111aにデータを書き込んだ時を示す。シーケンス番号(SEQ#)215は書き込みのシーケンス情報を提供する。すなわち、シーケンス番号はプライマリストレージシステム110a内の書き込み順序を提供する。JVOLアイデンティフィケーション(JVOL_ID)216は対応するジャーナルデータ、たとえばプライマリストレージシステムあるいはジャーナルグループ200におけるジャーナルボリュームに割り当てられた固有の番号、を含むジャーナルボリュームを識別する。ジャーナルオフセット(JFS)217は、ジャーナルデータの記憶を開始する、あるいはジャーナルデータのスターティングアドレスである、ジャーナルボリュームにおけるオフセットアドレスを提供する。あるいは、コントロールデータが対応するジャーナルデータに近接して記憶されているので、コントロールデータはJVOL_ID216とJOFS217を含まないかもしれない。
仲介ストレージシステム110cは、第1のポインター(JOPTR)218と第2のポインター(JIPTR)219を保持している。JOPTR218はリモートストレージシステム110bに送られるジャーナルを指す。JIPTR219はプライマリシステムから受け取った次のジャーナルを記憶するアドレスを指す。したがって、JIPTR219は、リモートストレージシステム110bに未だ送られていないジャーナルを新しいジャーナルが重ね書きしないように、JOPTR218より前に進んではならない。
図8に関連して説明されるが、仲介ストレージシステム110cはジャーナルボリューム上で空間を割り付ける。この空間の割付はJIPTR820にコントロールデータとジャーナルデータの長さを加える、言い換えれば次のJIPTR=JIPTR+(コントロールデータとジャーナルデータの長さ)にすることで実行される。前述のように、仲介ストレージシステム110cがプライマリストレージシステム110aからJNLWRコマンドを受け取ると、仲介ストレージシステム110cはコントロールデータとジャーナルデータを記憶するためにJNLボリューム112上に、キャッシュメモリーと併行してスペースを割り付ける。キャッシュメモリーにジャーナルが記憶されると、仲介ストレージシステム110cはJNLWRコマンドの完了を送る。続いてジャーナルはJNLボリューム112‘に記憶される。
図3は本発明の他の実施例におけるJNLボリュームあるいはJVOL112'を示す。上記にて説明したように、JVOLはリモートコピーを行うために用いられるジャーナルあるいはジャーナル情報を記憶するように構成されている。ジャーナルはジャーナルデータとそのコントロールデータの一対を含んでいる。コントロールデータはJVOL112'のコントロールデータ領域230に記憶され、ジャーナルデータはJVOL112’のジャーナルデータ領域240に記憶される。一実施例においては、JVOLは先入れ先出し(FIFO)ストレージであって、コントロールデータとジャーナルデータは受け取った順序で読み出される。一実施例では、コントロールデータは、ジャーナルデータが引き出されるPVOL111aの識別子であるインデックス(IDX)211'を含んでおり、たとえば固有の数値がプライマリストレージシステム110aあるいはジャーナルグループ200(図4)のPVOLに割り当てられる。
アドレス212'は書き込みデータがそこから書かれるPVOLのオフセットアドレス、たとえば書き込みデータのスターティング論理ブロックアドレス(LBA)、を提供する。長さ213'は書き込みデータの長さ、たとえば論理ブロックの数あるいは書き込みデータの総バイト数、を提供する。時刻214'はホストがPVOL111aにデータを書き込む時を示す。シーケンス番号(SEQ#)215’は書き込みのシーケンス情報を提供する。すなわち、シーケンス番号は、プライマリストレージシステム110a内における書き込み順序を与える。JVOLアイデンティフィケーション(JVOL_ID)216'は対応するジャーナルデータを含むジャーナルボリュームを識別し、たとえばプライマリストレージシステムあるいはジャーナルグループ200において固有の数値がジャーナルボリュームに割り当てられる。ジャーナルオフセット(JOFS)217'はジャーナルデータの記憶が始まるジャーナルボリュームのオフセットアドレスあるいはジャーナルデータのスターティングアドレスを提供する。コントロールは、本発明の実施例ではコントロールデータとジャーナルデータは異なった領域に記憶されているので、さらにJOFS217'とJVOL_ID216’を含んでいる。
ジャーナルには二つの形式があり、更新ジャーナルとベースジャーナルである。更新ジャーナルはホストから書き込まれたデータに対するジャーナルである。ジャーナルはホストがデータをPVOL111aに書き込む際に取られる。ベースジャーナルは、組み合わせを行う前にPVOL111aに存在している、先に存在しているデータに対するジャーナルである。ベースジャーナルはPVOLの新しいコピーが作成された時、あるいは再同期化が必要な際に取られる。
図3は本発明の一実施例によるジャーナルグループを示す。ジャーナルグループはジャーナルが生成されるべきボリューム(1ないしはそれ以上のボリューム)のセットである。ボリュームは只一つのジャーナルグループ300の一部であることも可能である。ジャーナルグループ300は1ないしはそれ以上のデータボリューム111あるいは1ないしはそれ以上のジャーナルボリュームを含んでいる。ジャーナルグループ300はマスターあるいはリストアの何れかの属性を持っている。マスタージャーナルグループ300aはジャーナルを生成し、一方リストアジャーナルグループ300bはジャーナルをSVOL111bに更新する。
マスタージャーナルグループはプライマリストレージシステム110aに関連し、1ないしはそれ以上のPVOL111aを含み、随意に1ないしはそれ以上のジャーナルボリュームを含む。リストアジャーナルグループはセカンダリストレージシステム110bに関連し、1ないしはそれ以上のPVOL111bを含み、随意に1ないしはそれ以上のジャーナルボリュームを含む。ジャーナルグループはたとえばJVOL112のような仲介的な属性(図示せず)を持つこともある。本発明の実施例では、仲介的なジャーナルグループはマスタージャーナルグループやリストアグループとグループ化している。このような仲介的なジャーナルグループ(図示せず)は仲介ストレージシステム110cと連携し、1ないしはそれ以上JVOLを含み、随意に1ないしはそれ以上のSVOL111bを含む。
図5は本発明の一実施例によるジャーナルグループ(JNLG)テーブル400を示している。ストレージシステムは、対応するジャーナルグループが生成されると、JNLGテーブル400を生成し保持する。
図4はプライマリストレージシステム110aとセカンダリストレージシステム110bと仲介ストレージシステム110cにより保持されているJNLGテーブル400の内容を示す。ジャーナルグループ番号(GRNUM)410はストレージシステム110内でジャーナルグループに個別に割り当てられた番号を示す。ジャーナルグループ名(GRNAME)420は一般にユーザが割り当てるものであるが、ジャーナルグループに与えられた名称を示す。もし、2ないしはそれ以上のグループが同じ名称GRNAME420を持つ場合は、それらはリモートミラーリング関係にある。ジャーナルグループの属性(GRATTR)430はジャーナルグループに割り当てられた属性、たとえばマスター(MASTER)や仲介(INTERMEDIARY)やリストア(RESTORE)などを示す。
上記で説明したように、マスタージャーナルグループはジャーナルグループにおけるデータボリューム(PVOL)からジャーナルを生成する。仲介ジャーナルグループはマスタージャーナルグループとリストアジャーナルグループ間に於いて過渡的なジャーナルグループである。リストアジャーナルグループはジャーナルボリュームからデータボリューム(SVOL)に対してジャーナルを再生する。グループステータス(GRSTS)440はジャーナルグループのステータスを示す。ジャ―ナルグループは以下のCOPYやPAIRやSUSPやSMPLなどのステ−タスをもつこともある。
COPYステータスはベースジャーナルを取り出す先であるジャーナルグループにデータボリュームがあることを示す。すなわち、組み合わせ(言い換えればベースジャーナルに記憶されている事前に存在するデータ)前にPVOLに記憶されているデータがSVOLにコピーするために検索されることである。PAIRステータスは全ての予め存在したデータはSVOLにコピーされ、SVOLへコピーするためにジャーナルグループは更新ジャーナルから更新されたデータを検索されあるいは検索してきた。SUSPステータスすなわちサスペンドステ−タスは、ジャーナルグループが、更新ジャーナルから更新したデータを取ることあるいは検索することを中断していることを示す。SMPLステ−タスは、ジャーナルグループのどのボリュームもベースジャーナルから予め存在するデータを取得することを開始していない、言い換えればリモートコピーを開始しようとすることを示している。
アレイ(DVOL_INFO)450はジャーナルグループの全てのデータボリュームについての情報を記憶する。アレイの各エントリーは次の情報を含んでいる。ストレージシステム110においてボリュームに個別に指定されるボリューム識別(VOLID)451(VOLID451は一般に整数の値を持つ)と、ユーザによりボリュームに指定されるボリューム名称(VOLNAME)452と、たとえばCOPYやPAIRやSUSPやSMPLやその他のボリュームのステータスを示すボリュームステータス(VOLSTS)453を含んでおり、ポインター(BJPtr)454はベースジャーナルを取得する経過を保持する。ジャーナルグループにおけるデータボリュームにはグループにおいてDVOL_INFO450の索引のために個別のインデックスが指定される。
アレイ(JVOL_INFO)460はジャーナルグループにおける全てのジャーナルボリュームに関連する情報を記憶する。JVOL_INFO460はジャーナルボリューム112の識別子であるVOLID461を含んでいる。ジャーナルグループにおけるジャーナルボリュームにはグループにおいてJVOL_INFO450アレイの索引のために個別のインデックスが指定される。
図6は本発明の一実施例によるベースジャーナル生成のためのプロセス500を示す。プロセス500はまた初期コピープロセスとも呼ばれる。ベースジャーナルはユーザがPAIR_CREATEまたはPAIR_SYNCコマンドを発行すると取得される。PAIR_CREATEコマンドによりプライマリストレージシステムの第1のボリュームがセカンダリストレージシステムの第2のボリュームと組み合わされる。本発明の実施例では、もし以下の条件、すなわち、(1)プライマリストレージシステム110aとセカンダリストレージシステム110cに保持されている二つのJNLグループ300が同じGRNAME420を持っている、(2)プライマリストレージシステム110aの二つのJNLグループ300の一つがGRATTR430においてMASTER属性を持ち、セカンダリストレージシステム110cにおける他方がRESTORE属性を持っている、(3)二つのJNLグループ300からの二つのデータボリュームが同じインデックス番号を持っている、が満たされる場合には、二つのデータボリュームはペアの関係にある。
PAIR_SYNCコマンドは、ペアの関係にあるボリュームに対して、双方が同じデータを保有するように同期をさせるかあるいはミラーリングをさせる。プライマリストレージシステムはこれらの二つののコマンドの一つを受け取ると、プロセス500を実行する。ステップ510においては、ベースジャーナルポインター(BJPtr)454は初期化されて、データボリュームにおける第1のデータ(たとえばデータボリューム上の第1のブロック、トラック、ブロックの一塊やアドレス指定可能な任意のデータなど)からベースジャーナルの取得を開始する。
次のターゲットが検査される(ステップ515)。次のターゲットはBJPtr454の値により得られる。たとえばもしBJPtrがjを持っていると、次のターゲットはj番目のブロックである。一実施例においては、より効率の良い処理のために、ジャーナルについて一度に数ブロックのデータが取得される。したがって、本例ではj番目のブロックの後、次のターゲットはj番目のブロックからnブロックである。プロセスは追加のターゲットが有るか否かを決める(ステップ520)。プロセス500はもうそれ以上のターゲットが無い、言い換えれば全てのベースジャーナルが取得された場合には終了する。しかしながら、もしさらにターゲットが存在する場合には、ターゲットブロックに関するコントロールデータが生成される(ステップ525)。生成されたコントロールデータはプライマリストレージシステム110aのキャッシュメモリーに記憶される。ターゲットデータはPVOLからキャッシュメモリーに読み込まれる(ステップ530)。ターゲットデータを読んだ後で、コントロールデータは確認される。
コントロールデータは、以下の情報、すなわち、IDX211やアドレス212や長さ213を含んでいる。他の情報も同様に含まれている可能性がある。ジャーナルデータとコントロールデータは仲介ストレージシステム110cに送られる(ステップ535)。一般に、ステップ530で確認されたジャーナル(コントロールデータとジャーナルデータの一対)のみが仲介システムに転送される。一実施例では、複数の確認されたジャーナルが単一のコマンドで共に送られる。ジャーナルを無事に転送し終えるとBJPtr454は次のターゲットへとインクリメントされる。すなわち、BJPtr454はj+nにインクリメントされる。ステップ515と540はターゲットが無くなるまで繰り返される。
図7は本発明の一実施例による更新ジャーナルを生成するためのプロセス600を示す。プロセス600はまた更新コピープロセスとも呼ばれる。ユーザによりPAIR_CREATEコマンドあるいはPAIR_SYNCコマンドが発行された後でプロセス600は開始される(ステップ602)。すなわち、プライマリストレージシステムが更新ジャーナルの取得を開始する。ステップ602はもしPVOLが予め存在するデータを持っている場合は、プロセス500の後で実行される。プライマリストレージシステム110aは書き込みコマンドを受け取ったか否かを判定する(ステップ610)。この時には全ての読み取りコマンドが無視される。
ストレージはまたPVOLのペアステータスがCOPYであるかPAIRであるかを判定する。もしこれらの条件が満足されると、プライマリストレージシステムはペアステータスがCOPYであるかを判定する(ステップ615)。もしそうであるならば、ベースジャーナルが書き込みターゲットアドレスに対して既に取得されているかを判定するためにステータスがチェックされる(ステップ620)。これはポインターBJPtr454を判定することで行われる。すなわち、もし(書き込みターゲットアドレス)<=BJPtr454であるならば、プロセス600はステップ625に進む。もしステップ620が真であるかステップ615が偽である、言い換えれば、ベースジャーナルを取得するプロセスが完了している場合は、更新ジャーナルは書き込みのために取得される。この目的のために、コントロールデータは最初に生成される。
コントロールデータはIDX211とアドレス212と長さ213を含んでいる。書き込みコマンドはアドレス212と長さ213を含んでいる。コントロールデータには他の情報が含まれている可能性がある。書き込みデータはホストから受け取り、キャッシュメモリーに記憶される(ステップ630)。書き込みデータはステップ625で生成されたコントロールデータに係わるジャーナルデータに対応する。コントロールデータとジャーナルデータは仲介ストレージシステム110cに転送される(ステップ635)。プロセス600は仲介ストレージシステム110cからの受け取り通知を待つ(ステップ640)。受け取り通知を受け取ると、書き込み完了がホストに送られる(ステップ645)。仲介ストレージシステムからの受け取り通知が受けとられるまでは書き込み完了がホストに通知されないので、書き込みデータのプライマリシステムと仲介システムへの記憶は保証される。
図8は本発明の一実施例による、コントロールデータとジャーナルデータを含むジャーナル情報を仲介ストレージシステム110cに転送するプロセス700を示している。プライマリストレージシステム110aは、仲介ストレージシステム110cにジャーナルデータを送るためのJNL書き込みコマンド(JNLWRコマンド)を発行する(ステップ702)一実施例においては、コマンドは1ないしはそれ以上のパラメータ、たとえばジャーナルデータの長さなどを含んでいる。コントロールデータの長さは、固定データ長、たとえば64バイト、が本発明の実施例のコントロールデータに用いられているのでコマンドパラメータには含まれていない。
もう一つの方法としては、可変長のコントロールデータが用いられることもあり、その場合はその長さについての情報がパラメータに含まれる必要がある。仲介ストレージシステム110cは、コマンドパラメータにおいて提供される情報に従いJNLボリューム上に記憶空間を割り付ける(ステップ710)。以下でより詳細に説明するように、空間の割り付けは、書き込み性能を向上させるために、キャッシュメモリーバッファー上でも実行される。割り付けられたバッファーはボリュームにおいて割り付けられたストレージ空間に関係している。
一旦ストレージ割り付けが実行されると、転送の準備が出来たパケットあるいはメッセージがプライマリストレージシステム110aへ送られる。プライマリシステムは、転送の準備の出来たパケットを受け取ると、ジャーナル情報を仲介ストレージシステムに転送する(ステップ720)。一実施例においては、コントロールデータが最初に送られ、次いでジャーナルデータが送られる。仲介ストレージシステムはキャッシュメモリー上のバッファーにコントロールデータとジャーナルデータを記憶させる(ステップ730)。ジャーナルは最終的には、ステップ720におけるバッファーストレージ結合によりプライマリストレージシステム110bがアイドル状態である時に、仲介システムにおける割り付けられたJNLボリュームに記憶される。
さらに、シーケンス番号および/あるいはその時のタイムスタンプがジャーナルに割り付けられ、言い換えればコントロールデータに付加される。シーケンス番号は順番に(プライマリシステムから)受け取られたジャーナルに割り当てられ、JNLボリュームに記憶される。シーケンス番号によりプライマリシステムから受け取ったジャーナルの順番が分かるので、データリカバリープロセスに役立つ。本発明の実施例では、仲介システム110cはジャーナルにシーケンス番号を付加し、さもなければ、シーケンス番号を管理する。仲介システムにおいてはカウンター152は、プライマリシステム110a(図1を参照)により転送されたジャーナルにシーケンス番号を付加するために用いられる。タイムスタンプも、仲介ストレージシステム110cがジャーナルを受け取った時刻を示すために、ジャーナルに付加される。
他の実施例においては、シーケンス情報は、ジャーナルが仲介システムに転送される前に、プライマリシステムにおいてジャーナルに付加される。同様に、タイムスタンプは、それが仲介システムへ転送された時刻を示すために、プライマリシステムによってジャーナルに付加することもある。一旦ジャーナルが正常に受信され記憶されると、仲介システムはジャーナルを問題なく受信したことの認証をプライマリシステムに送る。その後は、プライマリストレージシステム110aは書き込みジャーナルコマンドの完了を発行する。
図9は本発明の一実施例による、仲介ストレージシステム110cからセカンダリストレージシステム110bへジャーナルを送るプロセス900を示す。本発明の実施例においては、仲介ストレージシステム110cのJNLボリューム112に記憶されたジャーナルは、プライマリストレージシステム110aの書き込みコマンドとは非同期で、言い換えればプライマリシステムからの書き込みコマンドの合間に、セカンダリストレージシステム110bへ送られる。プロセス900はプライマリシステムから仲介システムへジャーナルを転送することに関してはプロセス700と同様である。パラメータが付いたJNL WRコマンドが仲介システムからセカンダリストレージシステムへ発行される(ステップ902)。セカンダリシステムはパラメータにより規定されたデータ長に従いキャッシュメモリー上にバッファー空間を割り付け、転送準備完の通知を仲介システムに送り返す(ステップ910)。仲介システムはコントロールデータとそれに対応するジャーナルデータを含んでいるジャーナルを送る(ステップ920)。一実施例においては、コントロールデータは最初に転送され、続いてジャーナルデータが転送される。セカンダリシステムは割り当てられたバッファー空間にジャーナルを記憶し、仲介システムにジャーナル受信の受け取り通知を送る(ステップ930)。
ジャーナルデータはプロセス700のステップ730において割り当てられたシーケンス番号とタイムスタンプに基づきSVOLに記憶される。たとえば、下位のシーケンス番号を持つジャーナルは上位のシーケンス番号を持つジャーナルの前に再記憶される。受け取り通知を受信すると、仲介システムはデータ書き込みの完了を示すWRJNLコマンドを発行する(ステップ940)。仲介システムのジャーナルボリュームに関連したポインター、たとえばJOPTR810は、次のバッチのデータまで前進しセカンダリシステムにコピーされる。
図10は、本発明の一実施例にしたがって、セカンダリストレージシステム110bのSVOLへ、その対応するコントロールデータを用いてジャーナルデータを記憶するプロセス1000を示している。セカンダリストレージシステム110bは、RESTOREの属性を持つJNLグループ300上で定期的にプロセス1000(ステップ1002)を実行する。一実施例では、プロセス1000は10秒ごとに実行される。SVOLに記憶する予定の、コントロールデータとジャーナルデータを含む次のジャーナルは、シーケンス番号を用いて選択される(ステップ1005)。この目的のために、セカンダリストレージシステム110bは再記憶した、言い換えればそのジャーナルをSVOLに記憶した、ジャーナルのシーケンス番号の追跡をしている。セカンダリストレージシステムは、最も最近に再記憶されたジャーナルのシーケンス番号とキャッシュメモリーに一時的に記憶されたジャーナルに係わるシーケンス番号とを比較し、再記憶する次のジャーナルを決定する。
ステップ1005で選択されたジャーナルのコントロールデータは、ジャーナルデータの記憶領域、言い換えれば特定のSVOLとその中の場所、を決めるために用いられる(ステップ1010)。たとえば、コントロールデータの以下の場所、すなわちIDX211、アドレス212、長さ213、が調べられる。IDX211はMASTER JNLグループのPVOL111a、言い換えればプライマリシステムにおけるプライマリストレージボリュームのインデックスを示す。ジャーナルデータは同じインデックスを持つSVOLに記憶される(ステップ1015)。すなわち、ジャーナルデータはIDX211で特定され、アドレス212で示されるアドレスで、長さ213に対応する長さによりSVOLに記憶される。本発明の実施例では、コントロールデータは、PVOLとSVOLにおけるジャーナルデータの記憶場所はミラーリングされているので、SVOLには記憶されない。
図11は本発明の一実施例の場合に於いて、プライマリシステム110aに障害が発生した場合に、リモートコピーシステム50がフェイルオーバを実行するところを示している。フェイルオーバはプライマリストレージシステム110aまたはホスト100aまたはその両者が停止し、セカンダリホスト100bが適当なアプリケーションを走らせる状態あるいはプロセスを言い、ここでセカンダリストレージシステムは新しい「プライマリ」ストレージシステムとして機能する。もしプライマリストレージシステム110aが未だ動作可能であるか、あるいは障害が発生した後で再起動した場合は、セカンダリストレージシステム110bのデータボリューム111bをPVOLと設定し、二つのサイトの間でミラーリングを継続することが求められる。
仲介ストレージシステム110cは従来と同様に仲介ストレージとして用いられる。しかしながら、仲介ストレージシステム110cはセカンダリストレージシステム110bから遠く離れている可能性があるので、新しいプライマリシステム(言い換えればセカンダリシステム110b)はホスト100bの書き込みリクエストに対して非同期でジャーナルを送信する。この目的のために、プロセス600はステップ635と640無しに実行される。すなわち、ジャーナルは同期して生成されるが、ホストの書き込みリクエストに対しては非同期で送られる。コントロールデータには、仲介システム110cへ送信する前に、新しいプライマリシステム110bでタイムスタンプとシーケンス番号が付加される。したがって、フェイルオーバの際には、仲介システムでは、このようなステップを実行する必要はない。
図12は本発明の他の実施例における、リモートコピーシステム50’を示す。システム50’はプライマリストレージシステム110a’とセカンダリストレージシステム110b’と仲介ストレージシステム110c’を含む。プライマリストレージシステムは複数のボリューム111a’を含み、コミュニケーションリンク130a’を経由してプライマリホスト100a’と結合されている。プライマリホスト100a’はアプリケーション102’とRCM101a’を含む。セカンダリシステムは複数のボリューム111b’を含み、コミュニケーションリンク130b’を経由してセカンダリホスト100b’と結合されている。セカンダリシステムはRCM101b’を含んでいる。仲介システムはジャーナルボリューム112’と複数のデータボリューム111c’を含んでいる。一実施例では、データボリューム111c’は、たとえば他のストレージシステムにあるジャーナルボリューム112’から遠く離れた場所に位置しているかもしれない。
仲介ホスト100c’はコミュニケーションリンク130c’を経由して仲介システム110c’に結合している。仲介ホストはRCM101c’を含んでいる。システム50’では、仲介システムとセカンダリシステムは共にプライマリシステムとミラーリングを行っている。仲介システムにおけるデータミラーリングは、上述のプロセス700、900および1000を用いて行われる。システム50’は、プライマリストレージシステム110a’が停止した場合は、仲介ストレージシステム110c’あるいはセカンダリストレージシステム110b’にフェイルオーバすることができる。このような構成に於いては、仲介ストレージシステムは、セカンダリストレージシステムよりもプライマリシステムやユーザに近い可能性があるので、セカンダリシステムよりも効率の良いストレージセンターの役を果たすものである。フェイルオーバの際には、仲介ホスト100c’は単独であるいはホスト100a’と協調してプライマリホストとして機能する。
上記の詳細説明は本発明の特定の実施例を説明するために提供されたものであって、制約を目的としたものではない。多くの改造や変更が本発明の範囲内に於いて可能である。したがって、本発明は特許請求の範囲により定義されるものである。
は、本発明の一実施例による3箇所のデータセンタを有するリモートコピーシステムを示す。 は、本発明の一実施例による典型的なストレージシステムの例を示す。 は、本発明の一実施例による仲介ストレージシステムにおいて提供されるジャーナルボリュームを示す。 は、本発明の他の実施例による仲介ストレージシステムにおいて提供されるジャーナルボリュームを示す。 は、本発明の一実施例によるマスターとリストアの属性を持つジャーナルグループを示す。 は、図1のリモートコピーシステムにおいてストレージシステムにより維持されているジャーナルグループテーブルを示す。 は、本発明の一実施例によるベースジャーナルを生成するプロセスを示す。 は、本発明の一実施例による更新ジャーナルを生成するプロセスを示す。 は、発明の一実施例によるジャーナルをプライマリストレージシステムから仲介ストレージシステムに転送するプロセスを示す。 は、本発明の一実施例によるジャーナルを仲介ストレージシステムからセカンダリストレージシステムへ送るプロセスを示す。 は、本発明の一実施例によるセカンダリストレージシステムにおいてジャーナルを復元するプロセスを示す。 は、本発明の一実施例によるリモートコピーシステムにおいて実行されるフェイルオーバあるいはフォールバックプロセスを示す。 は、本発明の他の実施例によるリモートコピーシステムを示す。
符号の説明
100a・・・ホスト
101a・・・RCM、ユーザコマンド
102・・・APP
111a・・・PVOL
111b・・・SVOL
110a・・・ストレージシステム
120a・・・JNLを取得(同期)
120b・・・JNLを適用(非同期)
230・・・コントロールデータ領域、コントロールデータ
240・・・ジャーナルデータ領域、ジャーナルデータ

Claims (22)

  1. 第1のデータボリュームと該第1のデータボリュームに対するデータアクセスリクエストを制御するように構成されている第1のストレージコントローラとを有し、関連する第1のホストから書き込みリクエストを受け取って該第1のデータボリュームに書き込みデータを記憶し、コントロールデータとジャーナルデータを含むジャーナルを生成するように構成されている第1のストレージシステムと、
    ジャーナルボリュームを有し、該ジャーナルボリュームに前記第1のストレージシステムにより生成された前記ジャーナルを受信し記憶するように構成されている第2のストレージシステムと、
    第2のデータボリュームを有し、前記第2のストレージシステムから前記ジャーナルを受信し、前記コントロールデータに規定された情報に従い前記第2のストレージシステムに前記ジャーナルの前記ジャーナルデータを記憶するように構成されている第3のストレージシステムと、
    を備えることを特徴とするリモートコピーシステム。
  2. 前記第1のストレージシステムは前記第1のホストから受信した前記書き込みリクエストに同期して前記第2のストレージシステムに前記ジャーナルを送信し、前記第2のストレージシステムは前記第1のホストから受信した前記書き込みリクエストに非同期で前記ジャーナルを前記第3のストレージシステムへ送信することを特徴とする、請求項1に記載のリモートコピーシステム。
  3. 前記第2のストレージシステムは前記第1のストレージシステムの比較的近くに位置し、前記第3のストレージシステムは前記第1のストレージシステムから比較的遠くに位置していることを特徴とする、請求項1に記載のリモートコピーシステム。
  4. 前記第2のストレージシステムは前記第1のストレージシステムから100マイル以内に位置し、前記第3のストレージシステムは前記第1のストレージシステムから100マイルを越えて位置していることを特徴とする、請求項3に記載のリモートコピーシステム。
  5. 前記ジャーナルボリュームが先入れ先出しメモリーであることを特徴とする、請求項1に記載のリモートコピーシステム。
  6. 前記ジャーナルボリュームがコントロールデータ領域とジャーナルデータ領域を含み、該コントロールデータ領域はコントロールデータのみを記憶する構成であり、該ジャーナルデータ領域はジャーナルデータのみを記憶する構成であることを特徴とする、請求項1に記載のリモートコピーシステム。
  7. 前記第3のストレージシステムと結合される第2のホストをさらに含み、前記第2のストレージシステムは、もし前記第1のストレージシステムに障害が発生した場合には、プライマリストレージシステムとして機能するように構成されていることを特徴とする、請求項1に記載のリモートコピーシステム。
  8. 前記第1のストレージシステムは前記第1のホストから受信した前記書き込みリクエストに同期して前記第2のストレージシステムに前記ジャーナルを送信し、
    前記第2のストレージシステムは前記第1のホストから受信した前記書き込みリクエストに非同期で前記ジャーナルを前記第3のストレージシステムへ送信し、
    前記第2のストレージシステムはさらに、前記第1のストレージシステムから受信した前記ジャーナルに対しシーケンス情報を付加するように構成されたシーケンス情報付加ユニットを備えることを特徴とする、請求項1に記載のリモートコピーシステム。
  9. 前記シーケンス情報付加ユニットが、前記第2のストレージシステムが受信したジャーナルのコントロールデータに受信の順番に関する情報を付加するカウンターを含むことを特徴とする、請求項8に記載のリモートコピーシステム。
  10. 前記シーケンス情報付加ユニットが、さらに、前記第2のストレージシステムが受信した前記ジャーナルの前記コントロールデータに受信の時刻に関する情報を付加するタイムスタンプを含むことを特徴とする、請求項9に記載のリモートコピーシステム。
  11. 前記第2のストレージシステムに結合される第2のホストと、
    前記第3のストレージシステムに結合される第3のホストと、
    をさらに含み、前記第1のデータボリュームと前記第2のデータストレージボリュームの間でデータミラーリングが保持されていることを特徴とする、請求項1に記載のリモートコピーシステム。
  12. 前記第3のストレージシステムは、もし前記第1のストレージシステムに障害が発生した場合には、前記第1のストレージシステムに代わってプライマリストレージシステムとして機能する構成であることを特徴とする、請求項11に記載のリモートコピーシステム。
  13. 前記第2のストレージシステムは前記第1のデータボリュームをミラーリングするように構成された第3のデータボリュームを含み、
    前記第2のストレージシステムは、もし前記第1のストレージシステムに障害が発生した場合には、前記第1のストレージシステムに代ってプライマリストレージシステムとして機能するように構成されていることを特徴とする、請求項11に記載のリモートコピーシステム。
  14. 第1のホストからデータアクセスリクエストを受信する第1のストレージコントローラと、
    前記第1のストレージコントローラと関連し、前記第1のストレージコントローラの制御により情報を記憶するように構成されており、プライマリボリュームを含む第1のストレージ領域と、
    前記第1のストレージコントローラから少なくとも100マイル離れて設置されている第2のストレージコントローラと、
    前記第2のストレージコントローラと関連し、前記第2のストレージコントローラの制御により情報を記憶するように構成されており、セカンダリボリュームを含む第2のストレージ領域と、
    から成るストレージシステムにおいて、
    前記セカンダリボリュームは前記プライマリボリュームをミラーリングし、
    前記第1のストレージコントローラは前記プライマリボリュームにおいて前記第1のホストからの書き込みリクエストに関連して書き込みデータを記憶し、前記書き込みリクエストに対応してコントロールデータとジャーナルデータを含むジャーナルを生成するように構成されており、前記ジャーナルデータは前記書き込みデータに対応し、前記ジャーナルは同期して前記第1のストレージ領域の外部に用意したジャーナルボリュームに送信されることを特徴とする、ストレージシステム。
  15. プライマリストレージシステムに関連したプライマリホストからの書き込みリクエストを受信後に、該プライマリストレージシステムにおいてコントロールデータとジャーナルデータを含むジャーナルを生成するステップと、
    前記プライマリストレージシステムと仲介ストレージシステムから遠く離れて位置しているセカンダリストレージシステムとの間でデータミラーリングを行うために前記ジャーナルを該仲介ストレージシステムに送信するステップと、
    から成ることを特徴とするリモートコピーシステムの動作方法。
  16. 前記ジャーナルを前記仲介ストレージシステムから前記セカンダリストレージシステムに送信するステップをさらに含み、
    前記ジャーナルは、前記プライマリストレージシステムから前記仲介ストレージシステムには同期モードで、前記仲介ストレージシステムから前記セカンダリストレージシステムへは非同期モードで送信されることを特徴とする、請求項15に記載の方法。
  17. 前記プライマリストレージシステムが前記仲介ストレージシステムから前記ジャーナルを受信したという受け取り通知を受け取ることにより、前記書き込みリクエストが完了したことを示すステップをさらに含み、
    前記仲介ストレージシステムは前記プライマリストレージシステムから100マイルの範囲内に位置し、前記セカンダリストレージシステムは前記プライマリストレージシステムから100マイルを超える場所に位置していることを特徴とする、請求項15に記載の方法。
  18. 前記仲介ストレージシステムのジャーナルボリュームに前記ジャーナルを記憶するステップをさらに含むことを特徴とする、請求項15に記載の方法。
  19. 前記プライマリボリュームをミラーリングするために前記仲介ストレージシステムのストレージボリュームに前記ジャーナルデータを記憶するステップをさらに含むことを特徴とする、請求項18に記載の方法。
  20. シーケンス情報を前記ジャーナルの前記コントロールデータに付加するステップをさらに含み、前記セカンダリストレージシステムは前記コントロールデータにより提供される情報に従って前記セカンダリボリュームに前記ジャーナルデータを記憶することを特徴とする、請求項18に記載の方法。
  21. もし前記プライマリストレージシステムに障害が発生した時には、前記セカンダリストレージシステムが新しいプライマリストレージシステムとして代行するステップをさらに含むことを特徴とする、請求項15に記載の方法。
  22. もし前記プライマリストレージシステムに障害が発生した時には、前記仲介ストレージシステムを新しいプライマリストレージシステムとするステップをさらに含むことを特徴とする、請求項15に記載の方法。
JP2004081902A 2003-06-23 2004-03-22 リモートコピーシステム Expired - Fee Related JP4473612B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/602,223 US7065589B2 (en) 2003-06-23 2003-06-23 Three data center remote copy system with journaling

Publications (3)

Publication Number Publication Date
JP2005018736A true JP2005018736A (ja) 2005-01-20
JP2005018736A5 JP2005018736A5 (ja) 2007-04-12
JP4473612B2 JP4473612B2 (ja) 2010-06-02

Family

ID=34115650

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004081902A Expired - Fee Related JP4473612B2 (ja) 2003-06-23 2004-03-22 リモートコピーシステム

Country Status (2)

Country Link
US (5) US7065589B2 (ja)
JP (1) JP4473612B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007310701A (ja) * 2006-05-19 2007-11-29 Hitachi Ltd データベースシステム、ストレージ装置、初期コピー方法及びログ適用方法
JP2008197894A (ja) * 2007-02-13 2008-08-28 Nec Corp データバックアップシステムおよびデータバックアップ方法ならびにプログラム
JP2008250717A (ja) * 2007-03-30 2008-10-16 Nec Corp データベース復旧方法、データベース復旧装置及びデータベース復旧プログラム
JP2008538624A (ja) * 2005-04-20 2008-10-30 アクサナ・(イスラエル)・リミテッド リモート・データ・ミラーリング・システム
JP2010020410A (ja) * 2008-07-08 2010-01-28 Hitachi Ltd リモートコピーシステム及びリモートコピー方法

Families Citing this family (127)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7287186B2 (en) * 2003-06-02 2007-10-23 Surgient Inc. Shared nothing virtual cluster
US7065589B2 (en) * 2003-06-23 2006-06-20 Hitachi, Ltd. Three data center remote copy system with journaling
JP4374953B2 (ja) * 2003-09-09 2009-12-02 株式会社日立製作所 データ処理システム
US7694086B1 (en) * 2003-06-30 2010-04-06 Symantec Operating Corporation Method and system for incremental backup of data volumes
JP4419460B2 (ja) * 2003-08-04 2010-02-24 株式会社日立製作所 リモートコピーシステム
JP2005062928A (ja) 2003-08-11 2005-03-10 Hitachi Ltd 複数のサイトにリモートコピーを行うシステム
US7769004B2 (en) * 2003-09-26 2010-08-03 Surgient, Inc. Network abstraction and isolation layer for masquerading machine identity of a computer
JP2005157712A (ja) * 2003-11-26 2005-06-16 Hitachi Ltd リモートコピーネットワーク
US7774474B2 (en) * 2003-12-23 2010-08-10 Nortel Networks Limited Communication of control and data path state for networks
US7363541B2 (en) * 2004-02-23 2008-04-22 Hewlett-Packard Development Company, L.P. Command management using task attributes
JP2005258850A (ja) * 2004-03-12 2005-09-22 Hitachi Ltd 計算機システム
US7299376B2 (en) * 2004-08-25 2007-11-20 International Business Machines Corporation Apparatus, system, and method for verifying backup data
JP2006099440A (ja) * 2004-09-29 2006-04-13 Hitachi Ltd リモートコピーシステム
JP4376750B2 (ja) * 2004-10-14 2009-12-02 株式会社日立製作所 計算機システム
US7412576B2 (en) * 2004-12-08 2008-08-12 Hitachi, Ltd. Remote copy system having multiple data centers
US7437601B1 (en) * 2005-03-08 2008-10-14 Network Appliance, Inc. Method and system for re-synchronizing an asynchronous mirror without data loss
EP2328089B1 (en) * 2005-04-20 2014-07-09 Axxana (Israel) Ltd. Remote data mirroring system
US9195397B2 (en) 2005-04-20 2015-11-24 Axxana (Israel) Ltd. Disaster-proof data recovery
JP2006309506A (ja) 2005-04-28 2006-11-09 Fujitsu Ltd リモートコピー処理方法、プログラム及び装置
US20060265358A1 (en) * 2005-05-17 2006-11-23 Junichi Hara Method and apparatus for providing information to search engines
JP4790377B2 (ja) * 2005-11-07 2011-10-12 株式会社日立製作所 ストレージサブシステムのボリューム複製方法
US8060713B1 (en) 2005-12-21 2011-11-15 Emc (Benelux) B.V., S.A.R.L. Consolidating snapshots in a continuous data protection system using journaling
US7849361B2 (en) * 2005-12-22 2010-12-07 Emc Corporation Methods and apparatus for multiple point in time data access
US7552148B2 (en) * 2006-02-28 2009-06-23 Microsoft Corporation Shutdown recovery
US7571292B2 (en) 2006-03-21 2009-08-04 International Business Machines Corporation Producing tertiary instant virtual copies without volume suspension
US8078728B1 (en) 2006-03-31 2011-12-13 Quest Software, Inc. Capacity pooling for application reservation and delivery
US7581136B2 (en) * 2006-05-19 2009-08-25 Hitachi, Ltd. Method and apparatus for data recovery
US7676690B2 (en) * 2006-05-30 2010-03-09 Dell Products L.P. Mirroring of activity between electronic devices
GB0616257D0 (en) * 2006-08-16 2006-09-27 Ibm Storage management system for preserving consistency of remote copy data
GB0617342D0 (en) * 2006-09-02 2006-10-11 Ibm Consistent remote copy data storage system error management
JP5244332B2 (ja) * 2006-10-30 2013-07-24 株式会社日立製作所 情報システム、データ転送方法及びデータ保護方法
US7925629B2 (en) * 2007-03-28 2011-04-12 Netapp, Inc. Write ordering style asynchronous replication utilizing a loosely-accurate global clock
US8194674B1 (en) 2007-12-20 2012-06-05 Quest Software, Inc. System and method for aggregating communications and for translating between overlapping internal network addresses and unique external network addresses
US7860836B1 (en) 2007-12-26 2010-12-28 Emc (Benelux) B.V., S.A.R.L. Method and apparatus to recover data in a continuous data protection environment using a journal
US7844856B1 (en) * 2007-12-26 2010-11-30 Emc (Benelux) B.V., S.A.R.L. Methods and apparatus for bottleneck processing in a continuous data protection system having journaling
US8041940B1 (en) 2007-12-26 2011-10-18 Emc Corporation Offloading encryption processing in a storage area network
US7840536B1 (en) 2007-12-26 2010-11-23 Emc (Benelux) B.V., S.A.R.L. Methods and apparatus for dynamic journal expansion
US9300738B2 (en) * 2008-01-03 2016-03-29 International Business Machines Corporation Virtual state machine for managing operation requests in a client server environment
US9501542B1 (en) 2008-03-11 2016-11-22 Emc Corporation Methods and apparatus for volume synchronization
US20090240761A1 (en) * 2008-03-20 2009-09-24 Nelson Nahum Sending voluminous data over the internet
US8099571B1 (en) 2008-08-06 2012-01-17 Netapp, Inc. Logical block replication with deduplication
US8250031B2 (en) * 2008-08-26 2012-08-21 Hitachi, Ltd. Low traffic failback remote copy
WO2010076755A2 (en) * 2009-01-05 2010-07-08 Axxana (Israel) Ltd Disaster-proof storage unit having transmission capabilities
US8655848B1 (en) 2009-04-30 2014-02-18 Netapp, Inc. Unordered idempotent logical replication operations
US8321380B1 (en) 2009-04-30 2012-11-27 Netapp, Inc. Unordered idempotent replication operations
KR101610109B1 (ko) * 2009-05-19 2016-04-11 삼성전자주식회사 전기장 통신을 이용한 입력 위치 추적 장치
US8671072B1 (en) 2009-09-14 2014-03-11 Netapp, Inc. System and method for hijacking inodes based on replication operations received in an arbitrary order
US8799367B1 (en) 2009-10-30 2014-08-05 Netapp, Inc. Using logical block addresses with generation numbers as data fingerprints for network deduplication
US8473690B1 (en) 2009-10-30 2013-06-25 Netapp, Inc. Using logical block addresses with generation numbers as data fingerprints to provide cache coherency
WO2011067702A1 (en) 2009-12-02 2011-06-09 Axxana (Israel) Ltd. Distributed intelligent network
US8392680B1 (en) 2010-03-30 2013-03-05 Emc International Company Accessing a volume in a distributed environment
US8332687B1 (en) 2010-06-23 2012-12-11 Emc Corporation Splitter used in a continuous data protection environment
US8478955B1 (en) 2010-09-27 2013-07-02 Emc International Company Virtualized consistency group using more than one data protection appliance
US8433869B1 (en) 2010-09-27 2013-04-30 Emc International Company Virtualized consistency group using an enhanced splitter
US8335771B1 (en) 2010-09-29 2012-12-18 Emc Corporation Storage array snapshots for logged access replication in a continuous data protection system
US8694700B1 (en) 2010-09-29 2014-04-08 Emc Corporation Using I/O track information for continuous push with splitter for storage device
US8335761B1 (en) 2010-12-02 2012-12-18 Emc International Company Replicating in a multi-copy environment
US9251021B2 (en) * 2011-05-23 2016-02-02 Bradley Gene Calder Asynchronous replication in a distributed storage environment
US9519555B2 (en) 2011-05-23 2016-12-13 Microsoft Technology Licensing, Llc Synchronous replication in a distributed storage environment
US9256605B1 (en) 2011-08-03 2016-02-09 Emc Corporation Reading and writing to an unexposed device
US8898112B1 (en) 2011-09-07 2014-11-25 Emc Corporation Write signature command
US8849939B2 (en) * 2011-12-02 2014-09-30 International Business Machines Corporation Coordinating write sequences in a data storage system
US9223659B1 (en) 2012-06-28 2015-12-29 Emc International Company Generating and accessing a virtual volume snapshot in a continuous data protection system
US10235145B1 (en) 2012-09-13 2019-03-19 Emc International Company Distributed scale-out replication
US9336094B1 (en) 2012-09-13 2016-05-10 Emc International Company Scaleout replication of an application
US8949562B2 (en) 2012-10-15 2015-02-03 Hitachi, Ltd. Storage system and method of controlling storage system
US9317423B2 (en) * 2013-01-07 2016-04-19 Hitachi, Ltd. Storage system which realizes asynchronous remote copy using cache memory composed of flash memory, and control method thereof
US9110914B1 (en) 2013-03-14 2015-08-18 Emc Corporation Continuous data protection using deduplication-based storage
US9383937B1 (en) 2013-03-14 2016-07-05 Emc Corporation Journal tiering in a continuous data protection system using deduplication-based storage
US9696939B1 (en) 2013-03-14 2017-07-04 EMC IP Holding Company LLC Replicating data using deduplication-based arrays using network-based replication
US8996460B1 (en) 2013-03-14 2015-03-31 Emc Corporation Accessing an image in a continuous data protection using deduplication-based storage
US9152339B1 (en) 2013-03-15 2015-10-06 Emc Corporation Synchronization of asymmetric active-active, asynchronously-protected storage
US9081842B1 (en) 2013-03-15 2015-07-14 Emc Corporation Synchronous and asymmetric asynchronous active-active-active data access
US9244997B1 (en) 2013-03-15 2016-01-26 Emc Corporation Asymmetric active-active access of asynchronously-protected data storage
US9395936B2 (en) 2013-04-22 2016-07-19 Hitachi, Ltd. Method and apparatus for remote storage performance data copy
US9087112B1 (en) 2013-06-24 2015-07-21 Emc International Company Consistency across snapshot shipping and continuous replication
US9069709B1 (en) 2013-06-24 2015-06-30 Emc International Company Dynamic granularity in data replication
US9146878B1 (en) 2013-06-25 2015-09-29 Emc Corporation Storage recovery from total cache loss using journal-based replication
US10769028B2 (en) 2013-10-16 2020-09-08 Axxana (Israel) Ltd. Zero-transaction-loss recovery for database systems
US9367260B1 (en) 2013-12-13 2016-06-14 Emc Corporation Dynamic replication system
US9405765B1 (en) 2013-12-17 2016-08-02 Emc Corporation Replication of virtual machines
US9158630B1 (en) 2013-12-19 2015-10-13 Emc Corporation Testing integrity of replicated storage
CA2942355A1 (en) * 2014-03-11 2015-09-17 Iex Group, Inc. Techniques for message retransmission mechanism
US9547565B2 (en) * 2014-03-11 2017-01-17 Iex Group, Inc. Techniques for message retransmission mechanism
US9189339B1 (en) 2014-03-28 2015-11-17 Emc Corporation Replication of a virtual distributed volume with virtual machine granualarity
US10339010B1 (en) * 2014-04-05 2019-07-02 Bruce Talley Systems and methods for synchronization of backup copies
US9274718B1 (en) 2014-06-20 2016-03-01 Emc Corporation Migration in replication system
US10082980B1 (en) 2014-06-20 2018-09-25 EMC IP Holding Company LLC Migration of snapshot in replication system using a log
US9619543B1 (en) 2014-06-23 2017-04-11 EMC IP Holding Company LLC Replicating in virtual desktop infrastructure
US10140035B2 (en) * 2014-06-25 2018-11-27 Hitachi, Ltd. Method for appropriately controlling duplicated volumes in virtual volume subsystems
US10101943B1 (en) 2014-09-25 2018-10-16 EMC IP Holding Company LLC Realigning data in replication system
US10324798B1 (en) 2014-09-25 2019-06-18 EMC IP Holding Company LLC Restoring active areas of a logical unit
US10437783B1 (en) 2014-09-25 2019-10-08 EMC IP Holding Company LLC Recover storage array using remote deduplication device
US9529885B1 (en) 2014-09-29 2016-12-27 EMC IP Holding Company LLC Maintaining consistent point-in-time in asynchronous replication during virtual machine relocation
US9910621B1 (en) 2014-09-29 2018-03-06 EMC IP Holding Company LLC Backlogging I/O metadata utilizing counters to monitor write acknowledgements and no acknowledgements
US9600377B1 (en) 2014-12-03 2017-03-21 EMC IP Holding Company LLC Providing data protection using point-in-time images from multiple types of storage devices
US10496487B1 (en) 2014-12-03 2019-12-03 EMC IP Holding Company LLC Storing snapshot changes with snapshots
US9405481B1 (en) 2014-12-17 2016-08-02 Emc Corporation Replicating using volume multiplexing with consistency group file
US10169225B2 (en) * 2015-01-23 2019-01-01 Silicon Motion, Inc. Memory system and memory-control method with a programming status
US9632881B1 (en) 2015-03-24 2017-04-25 EMC IP Holding Company LLC Replication of a virtual distributed volume
US10296419B1 (en) 2015-03-27 2019-05-21 EMC IP Holding Company LLC Accessing a virtual device using a kernel
US9411535B1 (en) 2015-03-27 2016-08-09 Emc Corporation Accessing multiple virtual devices
US9678680B1 (en) 2015-03-30 2017-06-13 EMC IP Holding Company LLC Forming a protection domain in a storage architecture
US10379958B2 (en) 2015-06-03 2019-08-13 Axxana (Israel) Ltd. Fast archiving for database systems
US10853181B1 (en) 2015-06-29 2020-12-01 EMC IP Holding Company LLC Backing up volumes using fragment files
US10154699B2 (en) * 2015-09-10 2018-12-18 Ansell Limited Highly chemical resistant glove
CN107924353B (zh) 2015-10-14 2021-03-09 株式会社日立制作所 存储系统和存储系统的控制方法
US9684576B1 (en) 2015-12-21 2017-06-20 EMC IP Holding Company LLC Replication using a virtual distributed volume
US10235196B1 (en) 2015-12-28 2019-03-19 EMC IP Holding Company LLC Virtual machine joining or separating
US10133874B1 (en) 2015-12-28 2018-11-20 EMC IP Holding Company LLC Performing snapshot replication on a storage system not configured to support snapshot replication
US10067837B1 (en) 2015-12-28 2018-09-04 EMC IP Holding Company LLC Continuous data protection with cloud resources
US10579282B1 (en) 2016-03-30 2020-03-03 EMC IP Holding Company LLC Distributed copy in multi-copy replication where offset and size of I/O requests to replication site is half offset and size of I/O request to production volume
US10235087B1 (en) 2016-03-30 2019-03-19 EMC IP Holding Company LLC Distributing journal data over multiple journals
US10152267B1 (en) 2016-03-30 2018-12-11 Emc Corporation Replication data pull
US10235060B1 (en) 2016-04-14 2019-03-19 EMC IP Holding Company, LLC Multilevel snapshot replication for hot and cold regions of a storage system
US10146961B1 (en) 2016-09-23 2018-12-04 EMC IP Holding Company LLC Encrypting replication journals in a storage system
US10210073B1 (en) 2016-09-23 2019-02-19 EMC IP Holding Company, LLC Real time debugging of production replicated data with data obfuscation in a storage system
US10019194B1 (en) 2016-09-23 2018-07-10 EMC IP Holding Company LLC Eventually consistent synchronous data replication in a storage system
US10235090B1 (en) 2016-09-23 2019-03-19 EMC IP Holding Company LLC Validating replication copy consistency using a hash function in a storage system
US10235091B1 (en) 2016-09-23 2019-03-19 EMC IP Holding Company LLC Full sweep disk synchronization in a storage system
US10338991B2 (en) 2017-02-21 2019-07-02 Microsoft Technology Licensing, Llc Cloud-based recovery system
US10592326B2 (en) 2017-03-08 2020-03-17 Axxana (Israel) Ltd. Method and apparatus for data loss assessment
US10795913B2 (en) * 2018-10-11 2020-10-06 Capital One Services, Llc Synching and reading arrangements for multi-regional active/active databases
US10802931B1 (en) * 2018-11-21 2020-10-13 Amazon Technologies, Inc. Management of shadowing for devices
JP2021033782A (ja) * 2019-08-27 2021-03-01 株式会社日立製作所 リモートコピーシステム
US11429308B2 (en) * 2020-03-18 2022-08-30 Vmware, Inc. Adaptive metadata batching based on input/output rate
JP2021174392A (ja) 2020-04-28 2021-11-01 株式会社日立製作所 リモートコピーシステム及びリモートコピー管理方法

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544347A (en) 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5630092A (en) * 1994-10-20 1997-05-13 International Business Machines System and method for transferring compressed and uncompressed data between storage systems
US6304980B1 (en) 1996-03-13 2001-10-16 International Business Machines Corporation Peer-to-peer backup system with failure-triggered device switching honoring reservation of primary device
US6101497A (en) * 1996-05-31 2000-08-08 Emc Corporation Method and apparatus for independent and simultaneous access to a common data set
JPH1049418A (ja) 1996-08-02 1998-02-20 Nippon Telegr & Teleph Corp <Ntt> ジャーナルデータの反映方法及び装置と、冗長構成形計算機システム
JP3344907B2 (ja) * 1996-11-01 2002-11-18 富士通株式会社 Raid装置及び論理ボリュームのアクセス制御方法
US5937414A (en) 1997-02-28 1999-08-10 Oracle Corporation Method and apparatus for providing database system replication in a mixed propagation environment
US6073209A (en) * 1997-03-31 2000-06-06 Ark Research Corporation Data storage controller providing multiple hosts with access to multiple storage subsystems
US6092213A (en) * 1997-09-30 2000-07-18 Tandem Computers Incorporated Fault tolerant method of maintaining and distributing configuration information in a distributed processing system
US6415373B1 (en) * 1997-12-24 2002-07-02 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
JP3609599B2 (ja) * 1998-01-30 2005-01-12 富士通株式会社 ノード代理システム、ノード監視システム、それらの方法、及び記録媒体
JP4689137B2 (ja) 2001-08-08 2011-05-25 株式会社日立製作所 リモートコピー制御方法、及びストレージシステム
US6148414A (en) * 1998-09-24 2000-11-14 Seek Systems, Inc. Methods and systems for implementing shared disk array management functions
US6209002B1 (en) 1999-02-17 2001-03-27 Emc Corporation Method and apparatus for cascading data through redundant data storage units
US6475303B1 (en) * 1999-04-12 2002-11-05 Honeywell International Inc. Magnetic glassy alloys for electronic article surveillance
JP2000305856A (ja) * 1999-04-26 2000-11-02 Hitachi Ltd ディスクサブシステム及びこれらの統合システム
US6304942B1 (en) * 1999-08-09 2001-10-16 Lsi Logic Corporation Providing an upgrade path for an existing data storage system
US6262610B1 (en) * 1999-08-25 2001-07-17 National Semiconductor Corporation Voltage sample and hold circuit for low leakage charge pump
US7203732B2 (en) * 1999-11-11 2007-04-10 Miralink Corporation Flexible remote data mirroring
US6684306B1 (en) 1999-12-16 2004-01-27 Hitachi, Ltd. Data backup in presence of pending hazard
CN1140396C (zh) * 2000-08-04 2004-03-03 株式会社精工技研 圆盘模制模具
EP1180747B1 (en) * 2000-08-10 2004-11-17 Mars Incorporated Currency handling apparatus
US6448301B1 (en) * 2000-09-08 2002-09-10 3M Innovative Properties Company Crosslinkable polymeric compositions and use thereof
US6785766B1 (en) * 2000-09-15 2004-08-31 Ciena Corporation Method and apparatus for servicing massive interrupts in random access memory (RAM)
US7024477B2 (en) * 2001-06-29 2006-04-04 International Business Machines Corporation Service time analysis methods for the WSM QOS monitor
US6823349B1 (en) * 2001-09-21 2004-11-23 Emc Corporation Method and system for establishing, maintaining, and using a persistent fracture log
US6745303B2 (en) 2002-01-03 2004-06-01 Hitachi, Ltd. Data synchronization of multiple remote storage
US8205009B2 (en) * 2002-04-25 2012-06-19 Emc Israel Development Center, Ltd. Apparatus for continuous compression of large volumes of data
US7134044B2 (en) 2002-08-16 2006-11-07 International Business Machines Corporation Method, system, and program for providing a mirror copy of data
US7266665B2 (en) 2003-06-17 2007-09-04 International Business Machines Corporation Method, system, and article of manufacture for remote copying of data
US7065589B2 (en) * 2003-06-23 2006-06-20 Hitachi, Ltd. Three data center remote copy system with journaling

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008538624A (ja) * 2005-04-20 2008-10-30 アクサナ・(イスラエル)・リミテッド リモート・データ・ミラーリング・システム
JP2007310701A (ja) * 2006-05-19 2007-11-29 Hitachi Ltd データベースシステム、ストレージ装置、初期コピー方法及びログ適用方法
JP2008197894A (ja) * 2007-02-13 2008-08-28 Nec Corp データバックアップシステムおよびデータバックアップ方法ならびにプログラム
JP2008250717A (ja) * 2007-03-30 2008-10-16 Nec Corp データベース復旧方法、データベース復旧装置及びデータベース復旧プログラム
JP2010020410A (ja) * 2008-07-08 2010-01-28 Hitachi Ltd リモートコピーシステム及びリモートコピー方法

Also Published As

Publication number Publication date
US20120096308A1 (en) 2012-04-19
JP4473612B2 (ja) 2010-06-02
US7152120B2 (en) 2006-12-19
US20070027939A1 (en) 2007-02-01
US8108486B2 (en) 2012-01-31
US7606940B2 (en) 2009-10-20
US20060184728A1 (en) 2006-08-17
US7065589B2 (en) 2006-06-20
US8700725B2 (en) 2014-04-15
US20100095078A1 (en) 2010-04-15
US20050033827A1 (en) 2005-02-10

Similar Documents

Publication Publication Date Title
JP4473612B2 (ja) リモートコピーシステム
JP4892185B2 (ja) 分散リモートコピーシステム
US7412576B2 (en) Remote copy system having multiple data centers
US6950915B2 (en) Data storage subsystem
US7139885B2 (en) Method and apparatus for managing storage based replication
TWI514249B (zh) 遠端非同步資料卷複製的方法及執行該方法的儲存系統
US6282610B1 (en) Storage controller providing store-and-forward mechanism in distributed data storage system
US9658929B1 (en) Asynchronous splitting
US9575857B1 (en) Active/active replication
US7318136B2 (en) Method and apparatus implementing virtualization for data migration with the efficient use of old assets
US7475208B2 (en) Method for consistent copying of storage volumes
US6446176B1 (en) Method and system for transferring data between primary storage and secondary storage using a bridge volume and an internal snapshot copy of the data being transferred
US7139851B2 (en) Method and apparatus for re-synchronizing mirroring pair with data consistency
US20060080362A1 (en) Data Synchronization Over a Computer Network
JP4902289B2 (ja) バックアップシステム及びバックアップ方法
JP2003233467A (ja) ストレージベースリモートコピーでのパス選択方式
JP2007317186A (ja) バックアップデータおよびジャーナルを管理するための方法および装置
JPH076099A (ja) リモート・データの2重化のためのシステム及び方法
US7107355B2 (en) High availability lightweight directory access protocol service
JP4208506B2 (ja) 高性能記憶装置アクセス環境
JP2002358222A (ja) データ二重化システム及び方法

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060424

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070226

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070226

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20070226

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070718

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

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100121

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

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

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

Free format text: PAYMENT UNTIL: 20130312

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130312

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees