JP5124183B2 - 非同期リモートコピーシステムの制御方法及び非同期リモートコピーシステム - Google Patents

非同期リモートコピーシステムの制御方法及び非同期リモートコピーシステム Download PDF

Info

Publication number
JP5124183B2
JP5124183B2 JP2007169622A JP2007169622A JP5124183B2 JP 5124183 B2 JP5124183 B2 JP 5124183B2 JP 2007169622 A JP2007169622 A JP 2007169622A JP 2007169622 A JP2007169622 A JP 2007169622A JP 5124183 B2 JP5124183 B2 JP 5124183B2
Authority
JP
Japan
Prior art keywords
volume
data
remote copy
primary
secondary 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
JP2007169622A
Other languages
English (en)
Other versions
JP2009009333A (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
Priority to JP2007169622A priority Critical patent/JP5124183B2/ja
Priority to US12/007,529 priority patent/US7966463B2/en
Priority to EP08250292A priority patent/EP2009550A1/en
Priority to CNA2008100809294A priority patent/CN101334748A/zh
Publication of JP2009009333A publication Critical patent/JP2009009333A/ja
Application granted granted Critical
Publication of JP5124183B2 publication Critical patent/JP5124183B2/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
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2082Data synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2069Management of state, configuration or failover

Description

本発明は、ストレージシステムを用いたリモートコピーシステムに関するものであり、特に、リモートコピーシステムを構成する第1のストレージシステムと第2のストレージシステムと間で、メインサイトとリモートサイトの役割を交換する機能を持った非同期リモートコピーシステムに関するものである。なお、以後の説明において、この機能をスワップ機能ということがある。
データセンタのような大規模なデータを取り扱うデータベースシステムでは、ホストシステムとは別に構成されたストレージシステムを用いてデータを管理することが行なわれている。このようなストレージシステムとして、例えば、ディスクアレイシステムが知られている。
ディスクアレイシステムは、アレイ状に配列された多数のディスクドライブをRAID(Redundant Array of Inexpensive Disks)管理する。多数のディスクドライブが提供する物理的な記憶領域上には、少なくとも1つ以上の論理ユニットが形成され、この論理ユニットがホストシステムに提供される。ホストシステムは、論理ユニットを一つの物理的なデバイスとして認識し、論理ユニットへのデータアクセスを行う。
この種のストレージシステムでは、災害等に備えてデータを確実に保護するための措置が講じられている。例えば、特開2005−293469号公報には、メインサイトにある正記憶制御装置の複製元ボリュームに書き込まれるデータを、リモートサイトにある副記憶制御装置の複製先ボリュームにリモートコピーし、データを二重化することで、耐障害性を高めるシステムが開示されている。
このリモートコピーには、メインサイトのホストから正記憶制御装置へのホストIOと、正記憶制御装置から副記憶制御装置へのリモートコピーIOとを同期的に処理する同期リモートコピーと、ホストIOとリモートコピーIOを非同期的に処理する非同期リモートコピーとがある。
非同期リモートコピーでは、正記憶制御装置は複製元ボリュームに対する差分データを所定周期、例えば5分毎で確定させ、この差分データをその周期毎に副記憶制御装置の複製先ボリュームに転送することが行なわれている。以後の説明において、複製元ボリュームをプライマリボリュームといい、複製先ボリュームをセカンダリボリュームということもある。
特開2005−293469号公報
同期リモートコピーを実行するシステムは、プライマリボリュームとセカンダリボリュームとにホストからのライトデータを同期して2重書を行なっているために、スワップ機能の実行がユーザから要求された段階で、リモートサイトのセカンダリボリュームをプライマリボリュームに昇格させ、メインサイトのプライマリボリュームをセカンダリボリュームに変更し、リモートサイトとメインサイトの役割を交換すれば、このスワップ機能を実現できる。
これに対して、スワップ機能を持たない、従来の非同期リモートコピーシステムでは、メインサイトのプライマリボリュームに対するデータ更新は数分から数十分遅れてリモートサイトのセカンダリボリュームに反映されるために、非同期リモートコピーが実行されている途中のセカンダリボリュームは、確定できない中途半端な状態であり、リモートコピーシステムに対してスワップ機能を実行するコマンドが発行された時点のセカンダリボリュームをそのままプライマリボリュームに昇格することができない。
そこで、非同期リモートコピーシステムでスワップ機能を実現するためには、セカンダリボリュームのデータイメージを、非同期リモートコピーが実行されているサイクルの前の状態まで戻し、メインサイトのプライマリボリュームをリモートサイトのセカンダリボリュームに一致、即ち、両ボリュームを、スワップ機能を実現する際に一旦同期させる必要がある。
この際、セカンダリボリュームの全データをプライマリボリュームに全コピーすると、全コピーの終了までには長時間を要し、メインサイトとリモートサイトとを結ぶ通信回線に与える通信負荷も大きなものとなる。
本発明は、このような課題を解決するために、プライマリボリュームとセカンダリボリュームとの間で非同期リモートコピーを行っていても、短時間でスワップ機能を実現可能な非同期リモートコピーシステムの制御方法及び非同期リモートコピーシステムを提供することを目的とするものである。
前記目的を達成するために、本発明は、スワップ機能を実行する際に、非同期リモートコピーが行なわれているサイクルにおいて、セカンダリボリュームのデータを確定し、データが確定したセカンダリボリュームからプライマリボリュームへのデータのコピーが必要な、セカンダリボリュームの領域を決定することによって、セカンダリボリュームからプライマリボリュームに全コピーを行なわなくても、非同期リモートコピーシステムにおいてもスワップ機能を実現できるようにしたことを特徴とするものである。
本発明によれば、短時間でスワップ機能を実現可能な非同期リモートコピーシステム、及びその制御方法を提供することができる。
以下、各図を参照しながら本発明の実施形態について説明する。図1は、本発明に係わる非同期リモートコピーシステムを実現するストレージシステム10のシステム構成を示すものである。ストレージシステム10は、メインサイトに設置されている正記憶制御装置20と、リモートサイトに設置されている副記憶制御装置50と、を備えている。
正記憶制御装置20、副記憶制御装置50、正ホストシステム100、及び副ホストシステム110は、SAN(Storage Area Network)120を介して相互に接続されている。
正ホストシステム100は、常用系のホストシステムであり、主として、正ホストシステムが正常なときに、正記憶制御装置20にI/O処理を要求する。副ホストシステム110は、待機系のホストシステムであり、主として、常用系のホストシステムに障害が発生したときに、副記憶制御装置50にI/O処理を要求し、障害発生時に正ホストシステム100が行っていた処理を引き継ぐ。正ホストシステム100、及び副ホストシステム110は、例えば、パーソナルコンピュータ、ワークステーション、メインフレームコンピュータ等である。正ホストシステム100には正記憶制御装置20を制御する、RAIDマネージャと称されるプログラムが常駐し、副ホストシステム110にも同様に副記憶制御装置50を制御するRAIDマネージャが常駐している。
ストレージシステム10は、正記憶制御装置20に書き込まれたデータが副記憶制御装置50にリモートコピーされるように構成されている。副記憶制御装置50は、正記憶制御装置20が過去に保持していたデータイメージと同一のデータイメージを保持する。これにより、正記憶制御装置20に障害が生じた場合でも、副記憶制御装置50を用いて、正記憶制御装置20の業務を引き継ぐことが可能になる。
リモートコピー方式としては、正記憶制御装置20にデータが書き込まれた段階で、正記憶制御装置20が正ホストシステム100にライト完了を報告し、所定期間毎の各ステップにおいて、正記憶制御装置から副記憶制御装置にデータを転送する非同期リモートコピーが採用される。
正記憶制御装置20は、主に、コントローラ30と、記憶装置40とを備えている。コントローラ30は、LAN(Local Area Network)インターフェース31、フロントエンドインターフェース32、CPU33、データ転送コントローラ34、キャッシュメモリ35、ローカルメモリ36、及びバックエンドインターフェース37を備えている。
コントローラ30は、複数のディスクドライブ41をいわゆるRAID方式に規定されるRAIDレベル(例えば、0,1,5)で制御することができる。RAID方式においては、複数のディスクドライブ41が一つのRAIDグループとして管理される。RAIDグループ上には、正ホストシステム100からのアクセス単位である複数の論理ボリューム42が定義されている。それぞれの論理ボリューム42には、LUN(Logical Unit Number)がアサインされる。
CPU33は、正ホストシステム100からのデータ入出力要求に応答して、複数のディスクドライブ41へのI/O処理(ライトアクセス、又はリードアクセス)を制御するプロセッサである。
ローカルメモリ36には、各種マイクロプログラム、及びボリューム管理テーブルなどが格納されている。各種マイクロプログラム、及びボリューム管理テーブルの詳細については、後述する。
キャッシュメモリ35は、ディスクドライブ41に書き込むためのライトデータ、又はディスクドライブ41から読み出したリードデータを一時的に格納するバッファメモリである。キャッシュメモリ35は、電源バックアップされており、正記憶制御装置20に電源障害が発生した場合でも、キャッシュデータのロストを防ぐ不揮発性メモリとして構成されている。
データ転送コントローラ34は、キャッシュメモリ35、フロントエンドインターフェース32、バックエンドインターフェース37、及びCPU33を相互に接続し、正ホストシステム100とディスクドライブ41との間のデータ転送を制御する。正ホストシステム100からのライトアクセスが要求されると、データ転送コントローラ34は、フロントエンドインターフェース32を介して正ホストシステム100から受け取ったデータをキャッシュメモリ35に書き込み、その後、そのライトデータをディスクドライブ41へ非同期書き込みすることを目的として、そのライトデータをバックエンドインターフェース37へ転送する。また、正ホストシステム100からのリードアクセスが要求されると、バックエンドインターフェース37を介してディスクドライブ41から読みとったリードデータをキャッシュメモリ35に書き込むとともに、フロントエンドインターフェース32にそのリードデータを転送する。
フロントエンドインターフェース32は、正ホストシステム100とのインターフェースを制御するコントローラであり、例えば、ファイバチャネルプロトコルに基づく正ホストシステム100からのブロックアクセス要求を受信する機能を有する。
バックエンドインターフェース37は、ディスクドライブ41とのインターフェースを制御するコントローラであり、例えば、ディスクドライブ41を制御するプロトコルに基づくディスクドライブ41へのデータ入出力要求を制御する機能を有する。
LANインターフェース31は、LAN90に接続するインターフェースであり、TCP/IPに基づいて管理端末80との間でデータ及び制御信号の送受信を制御する。
記憶装置40は、複数のディスクドライブ41を備える。ディスクドライブ41は、FC(Fibre Channel)ディスクドライブ、SATA(Serial Advanced Technology Attachment)ディスクドライブ、PATA(Parallel Advanced Technology Attachment)ディスクドライブ、FATA(Fibre Attached Technology Adapted)ディスクドライブ、SAS(Serial Attached SCSI)ディスクドライブ或いはSCSI(Small Computer System Interface)ディスクドライブ等のストレージデバイスである。
正記憶制御装置20は、LAN(Local Area Network)90を介して管理端末80に接続されている。管理端末80は、例えば、CPU、メモリ及びディスプレイ等のハードウェア資源を備えるコンピュータシステムである。システム管理者は、管理端末80を入力操作することにより、正記憶制御装置20を管理するためのコマンドを正記憶制御装置20に送信する。正記憶制御装置20を管理するためのコマンドとして、例えば、ディスクドライブ41の増設或いは減設、又はRAID構成の変更を指示するためのコマンド、正ホストシステム100と正記憶制御装置20との間の通信パスを設定するためのコマンド、CPU33のマイクロプログラムをローカルメモリ36にインストールするためのコマンド、正記憶制御装置20の動作状態の確認や故障部位を特定するためのコマンド等がある。
副記憶制御装置50は、正記憶制御装置と同様に、コントローラ60と、記憶装置70とを備えている。コントローラ60の構成は、コントローラ60は、複数のディスクドライブ71をいわゆるRAID方式に規定されるRAIDレベル(例えば、0,1,5)で制御することができる。RAID方式においては、複数のディスクドライブ71が一つのRAIDグループとして管理される。
RAIDグループ上には、副ホストシステム110からのアクセス単位である複数の論理ボリューム72が定義されている。それぞれの論理ボリューム72には、LUN(Logical Unit Number)がアサインされる。論理ボリュームは論理的な記憶領域である。コントローラ60と記憶装置70のハードウエア構成などは、正記憶制御装置20のものと同じである。
図2は、正記憶制御装置20及び副記憶制御装置50のローカルメモリ36に格納されている各種マイクロプログラム及びボリューム管理テーブルを示す。ローカルメモリ36は、ビットマップ制御プログラム200、リモートコピー実行プログラム210、制御プログラム220、及びボリューム管理テーブル230を格納する。
ビットマップ制御プログラム200は、後述のビットマップに関する制御処理を実行する。リモートコピー実行プログラム210は、リモートコピーを実行する。制御プログラム220は、ビットマップ制御プログラム200、及びリモートコピー実行プログラム210を制御する。ボリューム管理テーブル230は、複数の論理ボリューム42(72)に関する情報を格納する。
図3はボリューム管理テーブル230のテーブル構造を示す。ボリューム管理テーブル230には、複数の論理ボリュームの各々について、論理ボリューム(以下、「VOL」と略記することがある。)を識別するためのVOL−IDと、その論理ボリュームへのアクセスパスを示すパス情報と、その論理ボリュームの種類と、その論理ボリュームがプールボリュームであるか否かを示すフラグと、その論理ボリュームを含んだボリュームペアに関する情報(以下、「ペア情報」と記す。)と、が対応付けられて格納される。
ボリューム管理テーブル230に格納される情報は、正記憶制御装置20及び副記憶制御装置50のそれぞれに対して、管理端末80又はそれぞれのホストシステムを介して入力される。副記憶制御装置50に対しても独自に管理端末80を設けるか、あるいは正記憶制御装置の管理端末80が副記憶制御装置50を制御するようにしても良い。
ボリュームの種類としては、例えば、「プライマリ」、「セカンダリ」、「プール」がある。「プライマリ」という種類のボリュームは、リモートコピー処理において、正記憶制御装置にあって、コピー元となるボリュームである。
「セカンダリ」という種類のボリュームは、リモートコピー処理において、副記憶制御装置にあって、コピー先となるボリュームである。記憶制御装置の正副の立場が交換(スワップ)される際には、ボリュームのプライマリ又はセカンダリの立場も変更される。
なお、プールボリュームは、パス情報が未定義のボリュームである。プールボリュームフラグは、それに対応する論理ボリュームがプールボリュームであるか否かを示す。具体的には、例えば、プールボリュームフラグが「1」であれば、それに対応する論理ボリュームは、プールボリュームであり、プールボリュームフラグが「0」であれば、それに対応する論理ボリュームは、プールボリュームでないことを示している。
ペア情報には、例えば、ペア相手情報、及びペア状態が含まれている。ペア相手情報には、例えば、ペア相手となる論理ボリューム(以下、ペア相手VOL)に関する情報として、ペア相手VOLを有する記憶制御装置のID、ペア相手VOLのVOL−ID、及びパス情報などがある。ペア状態としては、例えば、「SMPL」、「COPY」、「PAIR」、「PSUE」、「SPLIT」、「SSWS」などがある。
「SMPL」とは、ペア生成前の正副関係のない状態を示す。「COPY」は、プライマリボリュームのデータをセカンダリボリュームにコピーする形成コピー中の状態を示す。「COPY」では、セカンダリボリュームへのライトは禁止される。
「PAIR」は、プライマリボリュームからセカンダリボリュームへ非同期コピーを行っている状態を示す。「PAIR」では、セカンダリボリュームへのライトは禁止される。
「PSUE」は、プライマリボリュームからセカンダリボリュームへ非同期コピーを停止している状態を示す。「PSUE」では、セカンダリボリュームへのリード/ライトは禁止される。「PSUE」では、プライマリボリュームへのライトは可能であるが、セカンダリボリュームへのデータ転送が禁止される。
「SPLIT」は、プライマリボリュームとセカンダリボリュームとを論理的に分離して、プライマリボリュームの更新前後の差分データのみをセカンダリボリュームにコピーする状態を示す。「SSWS」は、セカンダリボリュームがリード/ライト可能な状態を示す。「SSWS」では、セカンダリボリュームのデータは、前回の確定内容にリストアされ、プライマリボリュームは、[PSUE]に遷移する。
CPU33は、ボリューム管理テーブル230を参照することにより、アクセスすべき論理ボリューム42の種類、及びペア情報を特定することができる。また、CPU33は、プールボリュームが後述の仮想ボリュームに割り当てられた場合には、そのプールボリュームへのパスを表す情報を定義し、定義されたパス情報をボリューム管理テーブル230に登録することができる。また、CPU33は、アサインされなくなったプールボリュームについてのパス情報を消去することにより、プールボリュームを未使用状態にすることができる。CPU33は、各プールボリュームについて、パス情報が登録されているか否かにより、各プールボリュームが使用中であるか、或いは未使用状態であるかを判別することができる。
図4は正記憶制御装置20が実行する非同期リモートコピーの処理概要を示す。正記憶制御装置20は、CPU33、キャッシュメモリ35、プライマリボリューム(P-VOL)600、仮想ボリューム(P_VVOL)610、複数のプールボリューム620、内部スナップショットビットマップ310、及び転送差分ビットマップ510を備える。内部スナップショットビットマップ310及び転送差分ビットマップ510は、プライマリボリューム又はプールボリュームに関する制御情報であり、ローカルメモリ36に記憶されている。
プールボリューム620は、非同期リモートコピー期間中にプライマリボリューム600に正ホストシステム100からライトIOがあった場合に、更新前のデータを退避させるための論理ボリュームである。
仮想ボリューム610は、正記憶制御装置20のCPU33がプライマリボリューム600からセカンダリボリューム(S-VOL)700へ差分データを非同期リモートコピーするために利用される仮想的な論理ボリュームである。
非同期リモートコピーシステムは、メインサイトからリモートサイトにデータコピー開始から終了までの一つのサイクルを正ホストシステムからプライマリボリュームへのライトIOとは非同期で繰り返している。非同期リモートコピーを行なっている現在のサイクルでは、プライマリボリュームについて、前回のサイクル終了の際に確定した差分データが現在のサイクルの間にセカンダリボリュームに転送される。
リモートコピーシステムにおいて、プライマリボリューム600とセカンダリボリューム700とをそれぞれ複数設け、一つのプライマリボリュームと一つのセカンダリボリュームとを一つのペア関係として、複数のペア間でリモートコピーを行なうことができる。これら複数のペアは同一のコンシステンシグループを形成する。コンシステンシグループとは、データ更新の時間順序性が複数のペア間で保証されていることを意味している。
仮想ボリューム610は、キャッシュメモリ35の記憶領域に形成される場合を、図4において例示したが、ディスクドライブ41の記憶領域に形成されてもよい。
一つのプライマリボリューム600と一つのセカンダリボリューム700とのペアが複数ある場合には、全てのペアについてプールボリューム620が割り当てられている。この非同期リモートコピーペアが複数ある場合には、仮想ボリューム610も複数あり、各ペアに仮想ボリューム610が割り当てられる。一つの仮想ボリュームには一つのプライマリボリューム及びプールボリュームが割り当てられ、仮想ボリュームを介して、プライマリボリューム又はプールボリュームからデータがセカンダリボリュームに転送される。
なお、プールボリュームを複数設け、プライマリボリューム600とセカンダリボリューム700とのペアが複数ある場合には、各ペアについてプールボリュームが割り当てられても良い。
正記憶制御装置のキャッシュメモリ35には、正ホストシステムからのライトIOに基づいてデータが更新された、プライマリボリューム600の記憶領域を管理するためのビットマップ310が設定されている。ビットマップの各ビットは、プライマリボリューム及びセカンダリボリュームの各ブロックに対応している。これは後述の転送差分ビットマップ510についても同様である。ブロックとは論理アドレスで規定される領域である。
したがって、CPU33は、ビットマップを参照することにより、フラグがセットされたビットに対応する、プライマリボリュームのブロックに、正ホストシステムからのIOに基づくデータの更新があったと判断することができる。このビットマップを後述の転送差分ビットマップ510と区別するために、内部スナップショットビットマップと称することとする。
転送差分ビットマップ510は、プライマリボリューム600からセカンダリボリューム700に転送されるべき差分データの所在を管理するための制御情報である。CPU33は転送差分ビットマップ510を参照して、差分データをプライマリボリューム又はプールボリュームから読み出してセカンダリボリュームに転送する。
副記憶制御装置50は副ホストシステム110と組み合わされて待機系システムを構成するために、正記憶制御装置20と同様な構成を持っている。符号63は正記憶制御装置20のCPU33に対応するCPUであり、符号700は既述のとおりセカンダリボリュームであり、符号720はプールボリューム620に対応するプールボリュームであり、符号65はキャッシュメモリ35に対応するキャッシュメモリであり、符号320は内部スナップショットビットマップ310に対応する内部スナップショットビットマップであり、符号710は仮想ボリューム610に対応する仮想ボリュームであり、符号520は転送ビットマップ510に対応する転送ビットマップである。
次に、図4に示す非同期リモートコピーシステムにおける、スワップ機能を実現するための動作を説明する。非同期リモートコピーのサイクルが実行されている間に、ストレージシステムがスワップ機能を実現するためには、プライマリボリュームをセカンダリボリュームに同期、すなわち、セカンダリボリュームのデータとプライマリボリュームのデータとを一致させる必要がある。
そのためには、第1にセカンダリボリュームのデータを確定させ、第2にセカンダリボリュームから必要な部分だけをプライマリボリュームにコピーすれば、スワップ機能の実現のための工程が短時間で済む。
セカンダリボリュームのデータを確定するために、セカンダリボリュームを、前回のサイクルの非同期リモートコピーが終了した時点のデータに、副ホストシステムが正ホストシステムから業務が委譲された後副ホストシステムからセカンダリボリュームに対してライトされたデータを加えたデータを持った姿にする。
第2にセカンダリボリュームから必要な部分だけをプライマリボリュームにコピーするために、セカンダリボリュームのコピーが必要な領域を決定する。この領域は、非同期リモートコピーの現在のサイクルで、プライマリボリュームの差分データが書き込まれた領域と、プライマリボリュームから差分データが書き込まれるべき領域と、副ホストシステムが正ホストシステムから業務を引き継いだ以降、副ホストシステムからセカンダリボリュームにデータが書き込まれた領域と、そして、現在の非同期リモートコピーのサイクルが開始された後、正ホストシステムが副ホストシステムに業務を引き継ぐまでに、プライマリボリュームに対して正ホストシステムからライトがあった領域に対応するセカンダリボリュームの領域と、を合計したものである。
以後具体的に説明する。図5乃至図16は、非同期リモートコピーの一連の動作を説明するブロック図である。これらの図において、図4のハードウエア構成が簡略化されて示されている。なお、以後の説明において、正記憶制御装置20のCPU33を正CPU33といい、副記憶制御装置50のCPU63を副CPU63ということとする。
正CPU33は、非同期リモートコピーのサイクル毎に、正ホストシステム100からのライトコマンドによるプライマリボリュームの差分データを確定させ、確定した差分データを次回の非同期リモートコピーのサイクルで副記憶制御装置50に送信する。
図16の(1)に示すように、正CPU33は、非同期リモートコピーが終了する時点・時刻で、内部スナップショットビットマップ310の全イメージを転送ビットマップ510にコピーする。この際、正CPU33は、図16の(2)に示すように、内部スナップショットビットマップ310の全ビットをクリアする。この時点で、プライマリボリュームからセカンダリボリュームに転送されるべき、プライマリボリュームに対する差分データが確定することになる。
図5は、現在の非同期リモートコピーのサイクルの開始時点での、正記憶制御装置20と副記憶制御装置50内のボリューム及びビットマップの状態を示している。非同期リモートコピーの途中で、プライマリボリューム600に正ホストシステム100からライトコマンドS100が発行されると、正CPU33は、図6に示すように、内部スナップショットビットマップ310の、ライトデータが書き込まれたブロックにフラグをセットする。内部スナップショットビットマップとして、5ビット×5ビットのものが例示されており、各ビットがボリュームの各ブロックに対応している。黒く塗られて図示されたビットにフラグが設定されていることを表している。これは他のビットマップについても同様である。
プライマリボリューム600とセカンダリボリューム700は、既述の“PAIR”に設定されて、セカンダリボリューム700へ差分データが順次転送される(S110)。正ホストシステム100からプライマリボリューム600にライトアクセスがあると、正CPU33はプライマリボリューム600の更新前のデータを、プライマリボリュームの各ブロック単位でプールボリューム620に退避させる(S120)。このように退避させる理由は、更新前のデータがセカンダリボリュームに転送されるべき、差分データであるかもしれないからである。
図6を参照してさらに説明を続ける。正CPU33は転送ビットマップ510をチェックして、フラグが設定されているビットに対応する、仮想ボリューム610のブロックに確定した差分データが割り当てられていると判断する。正CPU33は、転送ビットマップ510のフラグが設定されているビットに対応する、内部スナップショットビットマップ310のビットのフラグをチェックし、フラグが設定されていない場合にはプライマリボリューム600の対応領域から差分データを読み出して、これを仮想ボリューム610の対応領域に割り当てる。
一方、内部スナップショットビットマップにフラグが設定されている場合には、プライマリボリュームの対応ブロックはライトコマンドS100によって更新されており、更新前のデータ(差分データ)は、プールボリューム620にあるために、プールボリュームの対応領域から差分データを読み出して、これを仮想ボリューム610の対応領域に割り当てる。
正CPU33は仮想ボリューム610に割り当てられた差分データをセカンダリボリューム700に転送する(S110)。正CPU33は、転送ビットマップ510に基づいて差分データをセカンダリボリュームに転送した場合には、転送された差分データに対応するブロックのフラグを順次クリアしていく。
差分データの転送を受けた副CPU63は、セカンダリボリューム700に差分データを書き込む際に、セカンダリボリュームに対して差分データの書き込みがあった領域に対応する、内部スナップショットビットマップ320のビットにフラグをセットし、さらにセカンダリボリュームの更新前のデータをプールボリューム720に退避させる(S130)。
非同期リモートコピーの途中で、正ホストシステム100に障害が発生して、待機系の、副ホストシステム110及び副記憶制御装置50を稼動系に切り替える場合には、副ホストシステムのユーザ又は管理者110Aは、副ホストシステムのRAIDマネージャ112に対して“Horctakeover”コマンドを実行する(S140)。RAIDマネージャはホストシステムが記憶制御装置を制御するエージェントソフトウェアである。
このコマンドは副ホストシステム110及び副記憶制御装置50を稼動系、即ち正側に切り替えるためのものである。このコマンドを受けた副ホストシステム50は副CPU63にセカンダリボリュームに対して後述のリストアを開始させるために、“S-VOL Takeover”コマンドを発行する(S150)。
セカンダリボリュームのペア状態が「SSWS」に変更された場合、副CPUはデータ転送によるセカンダリボリュームへの書き込みを禁止する。データ転送中にセカンダリボリュームへのデータ転送がエラーになることを契機に正CPU33はプライマリボリュームのペア状態を「PSUE」に変更し、セカンダリボリュームへのデータ転送を中断する。即ち、リモートコピーが中断又は中止される。
図7に示すように、“S-VOL Takeover”コマンドを受けた、副CPU63はRAIDマネージャ112に対して“S-VOL Takeover”コマンドに対する応答を返すとともに(S160)、セカンダリボリューム700のペア状態を「SSWS」に変更する。副ホストシステム110は正ホストシステム100の業務を引き継いで、セカンダリボリューム700にライトコマンド(S170)の発行を開始する。ライトコマンドを受けた副CPU63はセカンダリボリューム700にこのライトコマンドに伴うライトデータを書き込む。
副CPU63は、非同期リモートコピーの一つ前のサイクルで確定されたセカンダリボリュームのデータを再現するために、プールボリューム720に退避してあるデータをセカンダリボリューム700に書き込む(S180)。副CPU63がプールボリューム720に退避してあるデータをセカンダリボリューム700の特定領域に書き込んで、セカンダリボリュームを更新前の状態に戻す一連の処理をリストアという。このリストアによって、セカンダリボリュームを非同期リモートコピーの一つ前のサイクルで確定された姿、即ち、今回の非同期リモートコピーのサイクルが開始される前の姿に戻して、セカンダリボリュームのデータを確定させることができる。
副CPU63は、内部スナップショットビットマップ320のフラグをチェックし、プールボリューム720に退避したデータを、セカンダリボリュームのどの領域に書き込めばよいかを知ることができる。
図7の520は副記憶制御装置50側の転送ビットマップである。この転送ビットマップは、正記憶制御装置20側の転送ビットマップ510と同様に、正記憶制御装置と副記憶制御装置とが交換され、非同期リモートコピーが再開された以降、プライマリボリュームとなったボリューム700からセカンダリボリュームとなったボリューム600へ、ボリューム700の差分データを転送すべき領域をCPUが知るためのものであるが、正記憶制御装置と副記憶制御装置とが交換されている過程では、セカンダリボリュームからプライマリボリュームへ転送されるべきデータのセカンダリボリュームにおける位置を管理するための、S-VOL(セカンダリボリューム)変更ビットマップとして機能する。
図7において、セカンダリボリュームに対して副ホストシステム110からライトコマンド(S170)が発行されると、ライトデータはセカンダリボリューム700に書き込まれ、副CPU63はライトデータが書き込まれたブロックに対応する、S-VOL変更ビットマップ520のビットにフラグをセットする。
ユーザ110Aは、RAIDマネージャ112のS-VOL Takeoverコマンドに対する、副CPU63からRAIDマネージャへの応答から、副記憶制御装置50で既述のリストア処理が開始されたことを知ることができる。
副CPU63はリストア処理の過程で、リストアの対象となっている退避データについて、リストアが終了する都度、内部スナップショットビットマップ320のフラグをS-VOL変更ビットマップ520にコピーし、このフラグを内部スナップショットビットマップ320からクリアする。副CPU63は内部スナップショットビットマップ320の全フラグがクリアされた段階でリストアを終了する。図8に示す520AはS-VOL変更ビットマップ520に登録された、リストアが終了したブロックに対応するフラグである、520Bはリストア期間中に副ホストシステム110からセカンダリボリューム700にデータが書き込まれたブロックに対するフラグである。なお、このことは後に詳しく説明する。

副CPU63は、S-VOL変更ビットマップ520を参照することによって、セカンダリボリュームに対して更新があったブロックを特定することができる。副CPU63は、リストアが行なわれている間、プライマリボリューム600とセカンダリボリューム700とのペア関係を解除するコマンドを受け付けない。
なお、セカンダリボリュームのペア状態を“SSWS”として説明したが、リストア期間中は、このペア状態が“SSWS(R)”としてテーブルに記録される。(R)はリストア中であることを示している。リストアが終了すると“SSWS(R)”が“SSWS”に変更される。ユーザは、クライアントコンピュータ又は管理装置の管理画面を観察して、セカンダリボリュームのペア状態が“SSWS(R)”が“SSWS”に変更したことによって、リストアが終了したことを知ることができる。
図8に示すように、S-VOL Takeoverコマンドに対する応答を受けたRAIDマネージャ112は、副CPU63に対して、正記憶制御装置20と副記憶制御装置50との役割を交換するコマンドである、“Swap Takeover” を発行する(S190)。
このコマンドを受けた副CPU63は、内部スナップショットビットマップ320をチェックして、フラグが残っていることを検出し、リストアが終了しておらず、正副をスワップすることができないと判定して、RAIDOマネージャ112に対して、エラー応答を返す(図9:S200)。
図9に示すように、ユーザ110Aは、RAIDマネージャ112の通知により、S-VOL Takeoverコマンドが開始されたこと、すなわち、既述のリストアが開始されたことを知ることができる。
図10に示すように、副CPU63は内部スナップショットビットマップのフラグ320を全フラグがクリアされるまで繰り返しチェックし、全フラグがクリアされた段階で、リストアが終了したと判定することができる。副CPU63は、リストアが終了すると、セカンダリボリュームのステイタスを“SSWS(R)”から“SSWS”に変更する。ユーザは管理画面での表示から、セカンダリボリュームのステイタスが“SSWS(R)”から“SSWS”に変更されたことを知ることができる。
図11に示すように、リストアが完了したら、ユーザ110AはRAIDマネージャ112に“pairresync-swapコマンド”S210を発行する。このコマンドは、プライマリボリューム600をセカンダリボリューム700に同期させるコマンド、即ち、セカンダリボリューム700のデータイメージにプライマリボリューム600のデータイメージを一致させるためのコマンドである。
図12に示すように、このコマンドを受けたRAIDマネージャ112は、副CPU63に“Swap Takeoverコマンド”S220を再度発行する。このSwap Takeoverを受けた副CPU63は、正CPU33から内部スナップショットビットマップ310と転送ビットマップ510のビットパターンを得て、これらをS-VOL変更ビットマップ520にマージする。
内部スナップショットビットマップ310でフラグが立っている領域は、差分データを正CPU33によってセカンダリボリューム700に転送している過程でプライマリボリューム600に対して正ホストシステム100からデータの更新があった領域であるから、システムを交換する際に、セカンダリボリューム700の対応領域のデータをプライマリボリューム600の対応領域にコピーする必要がある。
また、転送ビットマップ510においてフラグが設定されている領域は、差分データがセカンダリボリュームにまだ送られていないことを示すものであるから、セカンダリボリュームの対応領域からプライマリボリュームの対応領域にデータが転送される必要がある。
このように、内部スナップショットビットマップ310のビットパターンと転送ビットマップ510のビットパターンがS-VOL変更ビットマップ520にマージされる。副CPU63は、S-VOL変更ビットマップ520のビットパターンを参照することによって、プライマリボリューム600へデータが転送されるべき、セカンダリボリューム700の領域を知ることができる。
なお、このマージは、内部スナップショットビットマップ310と、転送ビットマップ510と、S-VOL変更ビットマップ520との互いに対応するビットの全てについて、フラグデータに関して論理和演算を適用することによって実現される。
図13において、副CPU63はRAIDマネージャ112に“Swap-Takeoverコマンド”に対する応答S230を返す。RAIDマネージャ112はユーザ110AにSwap-Takeoverが開始されたことを通知する(S240)。
副CPU63はプライマリボリューム600とセカンダリボリューム700とを入れ替え、かつこれらのボリュームのペア情報を「COPY」に設定する。副CPU63はS-VOL変更ビットマップ520に従って、フラグが立っているビットに対応する、プライマリボリューム700の領域からデータを読み出し、このデータをセカンダリボリューム600に転送する(S241)。
このデータはプライマリボリューム700のセカンダリボリューム600に対する差分に該当する。したがって、副CPU63はプライマリボリューム700からこの差分に対応するデータだけをセカンダリボリューム600に転送するだけで、待機系システムを稼動系システムに変更することができる。
図14に示すように、プライマリボリューム700からセカンダリボリューム600にデータを転送している間での、副ホストシステム110から副記憶制御装置50へライトコマンドが発行された場合は、データがプライマリボリューム700にライトされる他、データの更新があった領域が副内部スナップショットビットマップ320にフラグの形で登録される。
副CPU63は、S-VOL変更ビットマップ520の各ビットを読み込んで、フラグが設定してあるブロックに対応するデータをプライマリボリューム700からセカンダリボリューム600にコピーする。副CPU63は、データを転送したブロックのフラグをクリアしていく。副CPU63はS-VOL変更ビットマップ520のフラグが設定されている全てのビットについてデータの転送を継続する。副CPU63はS-VOL変更ビットマップ520をチェックしてフラグが設定されていないことを確認して、プライマリボリュームからセカンダリボリュームへのデータ転送を終了させる。
次に、図15に示すように、副CPU63がプライマリボリューム700からセカンダリボリューム600にデータの転送を終了させると、副CPU63はプライマリボリューム700とセカンダリボリューム600のペア情報を、非同期リモートコピーが行なわれる「PAIR」に変更する。さらに副CPU63は内部スナップショットビットマップ320におけるフラグが設定された差分ビットの情報を転送ビットマップ520にコピーする(S240)。
副CPU63はこの後内部スナップショットビットマップ320の、全差分ビットであるフラグをクリアして、副ホストシステム110を正ホストシステムに切り替え、正ホストシステム100を副ホストシステムに切り替える。したがって、これにともない、符号20が副記憶制御装置になり、符号50が正記憶制御装置になる。
転送ビットマップ520は、S-VOL変更ビットマップは同一の制御情報であり、プライマリボリューム700からセカンダリボリューム600にデータをコピーした後内部スナップショットビットマップ320のデータの情報がコピーされた後は、プライマリボリュームになる前のセカンダリボリューム700の更新位置を表すビットマップではなく、プライマリボリューム700からセカンダリボリューム600に差分データを転送すべき制御情報となったものである。
転送ビットマップ520にあるフラグ情報がプライマリボリューム700のセカンダリボリューム600に対する差分データが存在する、プライマリボリューム700の論理アドレスを示すものである。以上によって、稼動系システムと待機系システムとが交換され、これによって、記憶制御装置50がメインサイトを構成し、記憶制御装置20がリモートサイトを構成する。
図5乃至図16で説明した、非同期リモートコピーシステムにおけるスワップ機能の実現のための処理動作において、セカンダリボリュームにプールボリュームからデータをリストアしている最中に、副ホストシステムからライトコマンドがセカンダリボリュームに発行された場合の処理について補足して説明する。副CPU63が退避データのコピーが必要な、セカンダリボリュームのブロックにライトコマンド受領した場合の動作が図17に示されている。
副CPU63は副ホストシステム110からライトコマンドを受領すると、ライトコマンドの対象となった、セカンダリボリューム700のブロックに対応するビットについて、内部スナップショットビットマップ320にフラグが設定されているか否かをチェックする(図17(1),(2))。
フラグが設定されている場合には、副ホストシステムからのライトデータをセカンダリボリューム700に書き込む前に退避データをプールボリューム720からセカンダリボリューム700にコピーする必要があるので、副CPU63は、このフラグがあるビットに対応する退避データをセカンダリボリュームにコピーし(図17(3))、退避データをプールボリューム720から削除するとともに、S-VOL変更ビットマップ520の対応ビットにフラグをセットし、内部スナップショットビットマップの対応ビットからフラグをクリアする(図17(4))。
次いで、副CPU63は、ライトコマンドによるデータをセカンダリボリューム700に書き込み、S-VOL変更ビットマップ520の対応ビットにフラグをセットする。この対応ビットには既にフラグが設定されているので、S-VOL変更ビットマップの状態に変化はない(図17(5)))。
一方、退避データのコピーが不要な、セカンダリボリューム700のブロックに対して、副CPU63がライトコマンドを受領した場合の動作が図18に示されている。副CPU63がセカンダリボリューム700に対するライトコマンドを副ホストシステム110から受領すると、副CPU63はライトコマンドの対象ブロックにフラグがセットされているか否かについて内部スナップショットビットマップをチェックする(図18(1),(2))。
副CPU63はフラグがセットされていないと判定し、ライトデータをセカンダリボリューム700の特定ブロックに書き込む。副CPU63はS-VOL変更ビットマップ520の対応ビットにフラグをセットする(図18(3)。
一方、退避データのコピーが済んだ、セカンダリボリュームのブロックに対して、副CPU63がライトコマンドを受領した場合の動作が図19に示されている。副CPU63がセカンダリボリューム700に対するライトコマンドを副ホストシステム110から受領すると、副CPU63はライトコマンドの対象ブロックにフラグがセットされているか否かについて内部スナップショットビットマップ320をチェックする(図19(1),(2))。
副CPU63はフラグがセットされていないと判定し、ライトデータをセカンダリボリューム700の特定ブロックに書き込む。副CPU63はS-VOL変更ビットマップ520の対応ビットにフラグをセットする(図19(3))。但し、S-VOL変更ビットマップの対応ビットには既にフラグが退避データをセカンダリボリュームにコピーした段階でセットされているために、S-VOL変更ビットマップの状態には変化がない。
既述の図9において、副CPU63はRAIDマネージャ112からのSwap Takeoverコマンドに対してエラーを応答し(S20)、このエラー応答を契機として、ユーザ110AはリストアS180が終了するタイミングを把握して、“pairresync-swapコマンド”S210(図11)を副CPU63に発行し、正副の記憶制御装置間でスワップ機能を実行できるようにした。これに代えて、副CPU63は、“Swap Takeoverコマンド”に対して、エラーを応答することなく、当該コマンドをリストアが終了するまで保留し、ユーザからの“pairresync-swapコマンド”の発行を待つことなく、スワップ機能が実行されるようにしても良い。
また、“Swap Takeoverコマンド”に対してエラーを応答することなく、当該コマンドをリストアが終了するまで保留する場合、“Swap Takeoverコマンド”を受領したのがリストア完了前であっても、Swap Takeoverに対して正常に応答し、ペア状態が「SSWS」(実際には「SSWS(R)」)から「COPY」(実際には「COPY(R)」)に変更され、セカンダリボリュームはプライマリボリュームに、プライマリボリュームはセカンダリボリュームになる。
本発明に係る非同期リモートコピーの実施形態を示すストレージシステムのハードウエアブロック図である。 各種マイクロプログラム及びボリューム管理テーブルの説明図である。 ボリューム管理テーブルの説明図である。 非同期リモートコピーにおけるスワップ機能を実現するためのハードウエア構成を示すブロック図である。 非同期リモートコピーにおけるスワップ機能を実現するための第1の段階を示すブロック図である。 非同期リモートコピーにおけるスワップ機能を実現する継続段階を示すブロック図である。 非同期リモートコピーにおけるスワップ機能を実現するためのさらに継続する段階を示すブロック図である。 非同期リモートコピーにおけるスワップ機能を実現するためのさらに継続する段階を示すブロック図である。 非同期リモートコピーにおけるスワップ機能を実現するためのさらに継続する段階を示すブロック図である。 非同期リモートコピーにおけるスワップ機能を実現するためのさらに継続する段階を示すブロック図である。 非同期リモートコピーにおけるスワップ機能を実現するためのさらに継続する段階を示すブロック図である。 非同期リモートコピーにおけるスワップ機能を実現するためのさらに継続する段階を示すブロック図である。 非同期リモートコピーにおけるスワップ機能を実現するためのさらに継続する段階を示すブロック図である。 非同期リモートコピーにおけるスワップ機能を実現するためのさらに継続する段階を示すブロック図である。 非同期リモートコピーにおけるスワップ機能を実現するためのさらに継続する段階を示すブロック図である。 メインサイトの記憶制御装置における、内部スナップショットビットマップと転送ビットマップとに対する、CPUの制御の一例を示すブロック図である。 セカンダリボリュームに対するプールボリュームへデータをリストアする過程で、副ホストシステムからセカンダリボリュームにライトアクセスがあった場合の、処理動作を示すブロック図である。 図17の第1の変形例である。 その第2の変形例である。
符号の説明
10…ストレージシステム 20…正記憶制御装置 50…副記憶制御装置 510,520…転送差分ビットマップテーブル 600…プライマリボリューム 700…セカンダリボリューム 610,710…仮想ボリューム 620,720…プールボリューム

Claims (9)

  1. 複数の記憶制御装置間でプライマリボリュームとセカンダリボリュームとを設定し、前記プライマリボリュームから前記セカンダリボリュームにデータの転送を非同期で行う非同期リモートコピーシステムの制御方法において、
    第1の記憶制御装置にプライマリボリュームを設定する第1のステップと、
    第2の記憶制御装置にセカンダリボリュームを設定する第2のステップと、
    前記プライマリボリュームから前記セカンダリボリュームに対して行われる非同期リモートコピーにおいて、前記第1の記憶制御装置からのデータを受信した前記第2の記憶制御装置は、受信したデータを前記セカンダリボリュームに書き込んで更新する前に、更新前のデータを前記第2の記憶制御装置において予め設定されているプールボリュームに退避させる第3のステップと、
    前記第1の記憶制御装置に接続されている第1の上位装置の業務を前記第2の記憶制御装置に接続されている第2の上位装置が引き継ぐ際、前記プライマリボリュームから前記セカンダリボリュームに対して現在行っている非同期リモートコピーのサイクルを中止する第4のステップと、
    前記セカンダリボリュームのデータを確定する第5のステップと、
    前記データが確定したセカンダリボリュームから前記プライマリボリュームへのデータのコピーが必要な前記セカンダリボリュームの特定領域を決定する第6のステップと、
    前記第1の記憶制御装置の前記プライマリボリュームをセカンダリボリュームに変更する第7のステップと、
    前記第2の記憶制御装置の前記セカンダリボリュームをプライマリボリュームに変更する第8のステップと、
    前記セカンダリボリュームにおける特定領域のデータを前記セカンダリボリュームから前記プライマリボリュームへコピーする第9のステップと、
    前記第2の記憶制御装置の前記変更したプライマリボリュームから前記第1の記憶制御装置の前記変更したセカンダリボリュームに対して非同期リモートコピーを再開する第10のステップとを備え
    前記第6のステップにおいて決定される特定領域は、
    前記第4のステップにおいて中止された非同期リモートコピーの現在のサイクルで、前記プライマリボリュームから前記セカンダリボリュームに対してコピーされるべきであったが、未だコピーされていない差分データがあることを示す転送ビットマップにより示される領域と、
    前記第1の上位装置から前記第2の上位装置に業務が引き継がれた以降、前記第2の上位装置から前記セカンダリボリュームにデータが書き込まれたこと及び前記第2の記憶制御装置に予め設定されている前記プールボリュームに退避させた更新前のデータを前記セカンダリボリュームにリストアしたことを示すセカンダリボリューム変更ビットマップにより示される領域と、
    前記現在の非同期リモートコピーのサイクルが開始されてから、前記第1の上位装置から前記第2の上位装置に業務が引き継がれるまでの間に、前記第1の上位装置から前記プライマリボリュームに対してデータの書込みがあった領域と
    を論理和演算することにより定まる
    非同期リモートコピーシステムの制御方法。
  2. 前記第のステップは、
    前記セカンダリボリュームを、前回のサイクルの非同期リモートコピーが終了した時点のデータと、前記第2の上位装置が前記第1の上位装置から前記業務を引き継いだ後前記第2の上位装置から前記セカンダリボリュームに対してライトされたデータを加えた状態の姿にすること
    を含む請求項記載の非同期リモートコピーシステムの制御方法。
  3. 前記第のステップは、
    前記非同期リモートコピーの現在のサイクルにおいて、前記セカンダリボリュームの前記プライマリボリュームの差分データが格納された領域に、当該差分データを格納する前のデータを前記プールボリュームに退避させるステップと、前記退避させたデータを前記セカンダリボリュームにリストアするステップと
    有する請求項1記載の非同期リモートコピーシステムの制御方法。
  4. 第1のストレージシステムと第2のストレージシステムとの間でデータを非同期でリモートコピーする非同期リモートコピーシステムにおいて、
    前記第1のストレージシステムは、
    第1の計算機に接続する第1の記憶制御装置を備え、
    前記第1の記憶制御装置は、
    第1の論理記憶領域を有する第1の記憶デバイスと、第1のメモリと、第1のコントローラとを備え、
    前記第2ストレージシステムは、
    第2の計算機に接続する第2の記憶制御装置を備え、
    前記第2記憶制御装置は、
    第2の論理記憶領域を有する第2の記憶デバイスと、第2のメモリと、第2のコントローラとを備え、
    前記第1のコントローラは、
    前記第1の論理記憶領域をプライマリボリュームと認識し、前記第2の論理記憶領域をセカンダリボリュームと認識して、前記第1の論理記憶領域に対する前記第1の計算機からのライトアクセスに基づく差分データを前記第2の論理記憶領域に非同期でリモートコピーを行い、
    前記第2のコントローラは、
    前記プライマリボリュームから前記セカンダリボリュームに対して行われる非同期リモートコピーにおいて、前記第1の記憶制御装置からのデータを受信すると、受信したデータを前記セカンダリボリュームに書き込んで更新する前に、更新前のデータを前記第2の記憶制御装置において予め設定されている第2の退避ボリュームに退避させておき、
    前記非同期リモートコピーが実行されている間、前記第1の計算機の業務を引き継いだ前記第2の計算機からのコマンドに基づいて、前記第2の論理記憶領域をプライマリボリュームとし、前記第1の論理記憶領域をセカンダリボリュームとして、前記第の論理記憶領域のデータイメージを前記第の論理記憶領域のデータイメージに一致させる制御情報を前記第2のメモリに格納し、当該制御情報に基づいて、前記非同期リモートコピーの前回のサイクルが終了した時点での前記第2の論理記憶領域の特定ブロックのデータを前記第1の論理記憶領域にコピー
    前記第2のメモリは、
    前記第2の論理記憶領域から前記第1の論理記憶領域へデータがコピーされるべき、前記第2の論理記憶領域の特定ブロックを管理
    前記第2のメモリが管理する前記特定ブロックは、
    前記非同期リモートコピーの現在のサイクルで、前記第1の論理記憶領域から前記第2の論理記憶領域に対して書き込まれるべきであったが、未だ書き込まれていない差分データがあることを示す転送ビットマップにより示される領域と、
    前記第1の計算機から前記第2の計算機に業務が引き継がれた以降、前記第2の計算機から前記第2の論理記憶領域にデータが書き込まれたこと及び前記第2の計算機に予め設定されている第2の退避ボリュームに退避させた更新前のデータを前記第2の論理記憶領域にリストアしたことを示すセカンダリボリューム変更ビットマップにより示される領域と、
    前記現在の非同期リモートコピーのサイクルが開始されてから、前記第1の計算機から前記第2の計算機に業務が引き継がれるまでの間に、前記第1の上位装置から前記第1の論理記憶領域に対してデータの書き込みがあった領域と
    を論理和演算することにより定まる
    リモートコピーシステム。
  5. 前記第1のコントローラは、
    前記第1の計算機からの書き込みデータが更新記憶された、前記第1の論理記憶領域のブロックを管理する第1の管理部と、
    当該書き込み前のデータを退避させる第1の退避ボリュームと、
    前記非同期リモートコピーの際に、前記第2の論理記憶領域に転送されるべき差分データが格納されている前記第1の論理記憶領域のブロックを管理する第2の管理部と、
    を備える請求項記載のリモートコピーシステム。
  6. 前記第2のコントローラは、
    前記第2の計算機からの書き込みデータが更新記憶された、前記第2の論理記憶領域のブロックを管理する第3の管理部と、
    前記第2の論理記憶領域に前記差分データが書き込まれたブロックを管理する第4の管理部と、
    前記差分データが書き込まれる前のデータを退避させる前記第2の退避ボリュームと、
    を備える請求項記載のリモートコピーシステム。
  7. 前記第2のコントローラは、
    前記第4の管理部により管理されるブロックを前記第3の管理部に登録する
    請求項記載のリモートコピーシステム。
  8. 前記第2のコントローラは、
    前記第2の退避ボリュームの退避データを前記第2の論理記憶領域にリストアする
    請求項記載のリモートコピーシステム。
  9. 前記第2のコントローラは、
    前記第1の管理部と前記第2の管理部とにより管理されるブロックを前記第3の管理部に登録する
    請求項記載のリモートコピーシステム。
JP2007169622A 2007-06-27 2007-06-27 非同期リモートコピーシステムの制御方法及び非同期リモートコピーシステム Expired - Fee Related JP5124183B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2007169622A JP5124183B2 (ja) 2007-06-27 2007-06-27 非同期リモートコピーシステムの制御方法及び非同期リモートコピーシステム
US12/007,529 US7966463B2 (en) 2007-06-27 2008-01-11 Asynchronous remote copy system and control method for the same
EP08250292A EP2009550A1 (en) 2007-06-27 2008-01-23 Asynchronous remote copy system and control method for the same
CNA2008100809294A CN101334748A (zh) 2007-06-27 2008-02-29 异步远程复制系统及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007169622A JP5124183B2 (ja) 2007-06-27 2007-06-27 非同期リモートコピーシステムの制御方法及び非同期リモートコピーシステム

Publications (2)

Publication Number Publication Date
JP2009009333A JP2009009333A (ja) 2009-01-15
JP5124183B2 true JP5124183B2 (ja) 2013-01-23

Family

ID=39618914

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007169622A Expired - Fee Related JP5124183B2 (ja) 2007-06-27 2007-06-27 非同期リモートコピーシステムの制御方法及び非同期リモートコピーシステム

Country Status (4)

Country Link
US (1) US7966463B2 (ja)
EP (1) EP2009550A1 (ja)
JP (1) JP5124183B2 (ja)
CN (1) CN101334748A (ja)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5147570B2 (ja) 2008-07-02 2013-02-20 株式会社日立製作所 ストレージシステム及びリモートコピー復旧方法
JP5226125B2 (ja) * 2009-03-19 2013-07-03 株式会社日立製作所 ストレージシステム及びストレージシステムの制御方法
JP5475123B2 (ja) * 2010-02-19 2014-04-16 株式会社日立製作所 ディスクアレイ装置およびその制御方法
CN101814042B (zh) * 2010-03-05 2011-12-07 成都市华为赛门铁克科技有限公司 数据异步复制方法及装置
US8793447B2 (en) * 2010-03-30 2014-07-29 Netapp, Inc. Restoration of a parent LUN through modification of a read-write clone LUN as the parent LUN
US8849750B2 (en) * 2010-10-13 2014-09-30 International Business Machines Corporation Synchronization for initialization of a remote mirror storage facility
JP5772443B2 (ja) * 2011-09-22 2015-09-02 富士通株式会社 ストレージ装置及びプログラム
CN103379167A (zh) * 2012-04-28 2013-10-30 鸿富锦精密工业(深圳)有限公司 多点同步存储的文件下载异常处理系统及方法
JP2013250948A (ja) 2012-06-04 2013-12-12 Hitachi Ltd ファイル格納システム及びファイル格納方法
US20140244936A1 (en) * 2013-02-25 2014-08-28 Lsi Corporation Maintaining cache coherency between storage controllers
IN2013CH01006A (ja) * 2013-03-08 2015-08-14 Lsi Corp
US9405628B2 (en) 2013-09-23 2016-08-02 International Business Machines Corporation Data migration using multi-storage volume swap
CN103617096A (zh) * 2013-11-04 2014-03-05 华为技术有限公司 一种存储数据的复制方法、设备及系统
US9594583B2 (en) * 2013-11-12 2017-03-14 Red Hat, Inc. Lightweight snapshots for virtual disks
US9619331B2 (en) 2014-01-18 2017-04-11 International Business Machines Corporation Storage unit replacement using point-in-time snap copy
US9501240B2 (en) 2014-02-21 2016-11-22 International Business Machines Corporation Efficient free-space management of multi-target peer-to-peer remote copy (PPRC) modified sectors bitmap in bind segments
WO2016042650A1 (ja) * 2014-09-19 2016-03-24 株式会社日立製作所 非同期リモートコピーを構成するストレージシステム、ストレージ装置及び非同期リモートコピー制御方法
WO2016072015A1 (ja) * 2014-11-07 2016-05-12 株式会社日立製作所 コピー処理管理システム及びコピー処理管理方法
CN104506496B (zh) * 2014-12-10 2017-09-29 山大地纬软件股份有限公司 基于Oracle Streams技术的准实时数据增量分发的方法
JP6569476B2 (ja) * 2014-12-19 2019-09-04 富士通株式会社 ストレージ装置、ストレージシステムおよびストレージ制御プログラム
CN105278522B (zh) * 2015-10-16 2018-09-14 浪潮(北京)电子信息产业有限公司 一种远程复制方法及系统
US10795881B2 (en) * 2015-12-18 2020-10-06 Sap Se Table replication in a database environment
CN108121600B (zh) * 2016-11-30 2022-11-29 中兴通讯股份有限公司 磁盘阵列控制器、输入输出io数据处理方法及装置
US10133510B2 (en) 2017-01-19 2018-11-20 International Business Machines Corporation Apparatus, method, and program product for data integrity during asynchronous remote copy
US10884884B2 (en) * 2017-03-23 2021-01-05 International Business Machines Corporation Reversal of the direction of replication in a remote copy environment by tracking changes associated with a plurality of point in time copies
WO2019026222A1 (ja) * 2017-08-03 2019-02-07 株式会社日立製作所 ストレージシステム及びデータ転送制御方法
CN107566481B (zh) * 2017-08-30 2020-11-24 北京珞安科技有限责任公司 一种远程数据复制控制信息传输实现方法
CN109460323A (zh) * 2018-11-14 2019-03-12 郑州云海信息技术有限公司 一种数据生成云备份的方法和装置
CN109669812A (zh) * 2018-11-27 2019-04-23 武汉烽火信息集成技术有限公司 基于数据分流备份的云数据中心容灾系统及方法
CN109725855B (zh) * 2018-12-29 2023-09-01 杭州宏杉科技股份有限公司 一种连跳复制的方法及装置
KR20210046348A (ko) * 2019-10-18 2021-04-28 삼성전자주식회사 복수의 프로세서들에 유연하게 메모리를 할당하기 위한 메모리 시스템 및 그것의 동작 방법
CN113434598B (zh) * 2021-06-28 2024-03-22 青岛海尔科技有限公司 实现数据双写的方法、装置与电子装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870537A (en) 1996-03-13 1999-02-09 International Business Machines Corporation Concurrent switch to shadowed device for storage controller and device errors
JP4374953B2 (ja) * 2003-09-09 2009-12-02 株式会社日立製作所 データ処理システム
JP2005062928A (ja) * 2003-08-11 2005-03-10 Hitachi Ltd 複数のサイトにリモートコピーを行うシステム
US7219201B2 (en) 2003-09-17 2007-05-15 Hitachi, Ltd. Remote storage disk control device and method for controlling the same
JP2005141381A (ja) * 2003-11-05 2005-06-02 Hitachi Ltd 記憶装置システム
JP4319017B2 (ja) * 2003-12-02 2009-08-26 株式会社日立製作所 ストレージシステムの制御方法、ストレージシステム、及び記憶装置
JP2005293469A (ja) 2004-04-05 2005-10-20 Nippon Telegr & Teleph Corp <Ntt> データコピーシステムおよびデータコピー方法
JP4728031B2 (ja) * 2005-04-15 2011-07-20 株式会社日立製作所 リモートコピーペアの移行を行うシステム
JP4668763B2 (ja) * 2005-10-20 2011-04-13 株式会社日立製作所 ストレージ装置のリストア方法及びストレージ装置
JP5074010B2 (ja) 2005-11-28 2012-11-14 旭化成イーマテリアルズ株式会社 優れた光学材料用樹脂組成物及び成形体

Also Published As

Publication number Publication date
EP2009550A1 (en) 2008-12-31
JP2009009333A (ja) 2009-01-15
US20090006794A1 (en) 2009-01-01
CN101334748A (zh) 2008-12-31
US7966463B2 (en) 2011-06-21

Similar Documents

Publication Publication Date Title
JP5124183B2 (ja) 非同期リモートコピーシステムの制御方法及び非同期リモートコピーシステム
JP4800056B2 (ja) ストレージシステム及びその制御方法
US7856425B2 (en) Article of manufacture and system for fast reverse restore
JP4800031B2 (ja) ストレージシステム及びスナップショット管理方法
JP4902403B2 (ja) 情報システム及びデータ転送方法
US7594137B2 (en) Storage system and data restoration method thereof
JP3974538B2 (ja) 情報処理システム
US7464236B2 (en) Storage system and storage management method
US7409510B2 (en) Instant virtual copy to a primary mirroring portion of data
US20070113034A1 (en) Storage remote copy system
EP1837767B1 (en) Storage system and data management method
JP2008225616A (ja) ストレージシステム、リモートコピーシステム、及びデータ復元方法
JP4311532B2 (ja) 記憶システム及び同システムにおけるスナップショット管理方法
JP4294692B2 (ja) 情報処理システム

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090219

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120529

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120730

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

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

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

Free format text: PAYMENT UNTIL: 20151102

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees