JP5542241B2 - 計算機システム及びデータバックアップ方法 - Google Patents

計算機システム及びデータバックアップ方法 Download PDF

Info

Publication number
JP5542241B2
JP5542241B2 JP2013521336A JP2013521336A JP5542241B2 JP 5542241 B2 JP5542241 B2 JP 5542241B2 JP 2013521336 A JP2013521336 A JP 2013521336A JP 2013521336 A JP2013521336 A JP 2013521336A JP 5542241 B2 JP5542241 B2 JP 5542241B2
Authority
JP
Japan
Prior art keywords
primary
write request
copy
volume
storage apparatus
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
JP2013521336A
Other languages
English (en)
Other versions
JP2013543995A (ja
Inventor
敦 湯原
宏 桑原
淳一 樋渡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of JP2013543995A publication Critical patent/JP2013543995A/ja
Application granted granted Critical
Publication of JP5542241B2 publication Critical patent/JP5542241B2/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
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1466Management of the backup or restore process to make the backup process non-disruptive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2058Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using more than 2 mirrored copies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • G06F11/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/84Using snapshots, i.e. a logical point-in-time copy of the data

Landscapes

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

Description

本発明は、記憶制御装置及び方法に関し、特に、フラッシュコピー(同一筐体内コピー)機能及びリモートコピー機能が搭載された正側ストレージ装置及び副側ストレージ装置から構成される計算機システムに適用して好適なものである。
近年、企業等では、多量のデータを管理するために、大容量のストレージ装置が使用されている。かかるストレージ装置は、多数の記憶デバイスをアレイ状に配設して構成されたもので、各記憶デバイスは、例えばRAID(Redundant Array of Independent Inexpensive Disks)方式で運用される。記憶デバイス群が提供する物理的な記憶領域上には少なくとも1つ以上の論理的なボリューム(以下、これを論理ボリュームと呼ぶ)が形成され、この論理ボリュームがホスト装置に提供される。ホスト装置は、所定のコマンドを送信することにより、論理ボリュームに対してデータの書き込みや読み出しを行うことができる。
このようなストレージ装置に搭載される機能として、従来、リモートコピー機能及びフラッシュコピー機能が広く知られている。
リモートコピー機能は、ローカルサイト内のストレージ装置に格納されたデータを、当該ローカルサイトから離れた場所に設けられたリモートサイト内のストレージ装置にコピー(以下、適宜、これをリモートコピーと呼ぶ)する機能である。このようなリモートコピー機能により、リモートサイトにおけるデータバックアップが可能となり、地震や火事等によりローカルサイトのストレージ装置に障害が発生した場合においてもデータの消失を防ぐことができる。
またフラッシュコピー機能は、ストレージ装置に設けられた論理ボリューム内のホスト装置により指定された記憶領域に格納されているデータを同一ストレージ装置内の他の論理ボリュームにコピー(以下、適宜、これをフラッシュコピーと呼ぶ)する機能である。このようなフラッシュコピー機能により、フラッシュコピーの実行開始時点におけるフラッシュコピー対象の記憶領域の静的なデータイメージ(以下、これをスナップショットと呼ぶ)を他の論理ボリュームに保存することができる。
特開2008−040762号公報
ところで、従来、計算機システムにおけるデータのバックアップ方法として、上述のフラッシュコピー機能及びリモートコピー機能を組み合わせたデータバックアップ方法が提案されている(例えば特許文献1)。
実際上、この種のデータバックアップ技術の1つとして、ローカルサイトに設置された第1のストレージ装置内のホスト装置に提供される第1の論理ボリュームに書き込まれたデータをリモートサイトに設置された第2のストレージ装置内の第2の論理ボリュームにリモートコピーする一方、第1及び第2のストレージ装置の双方において、それぞれ第1又は第2の論理ボリューム内のホスト装置により指定された記憶領域内に格納されているデータをこれら第1及び第2のストレージ装置内に設けられた第3又は第4の論理ボリュームにフラッシュコピーする方法が従来から提案されている。
このようなデータバックアップ方法によれば、第1のストレージ装置の第1の論理ボリュームに格納されたデータを第2のストレージ装置の第2の論理ボリュームにバックアップすることができ、また第1のストレージ装置の第3の論理ボリュームに保存されたデータを第2のストレージ装置の第4の論理ボリュームにバックアップすることができる。
ところが、かかるデータバックアップ方法によると、後述のように、第1及び第2のストレージ装置がフラッシュコピーを実行中に、そのフラッシュコピーの対象範囲内の記憶領域をデータの書込み先とする書込み要求がホスト装置から第1のストレージ装置に与えられた場合に、ホスト装置から第1のストレージ装置に書込み要求が発行された後、第1のストレージ装置からホスト装置にその書込み要求に対する書込み処理完了通知が送信されるまでに相応の時間(応答時間)が必要となり、ホスト装置からの書込み要求に対する第1のストレージ装置の応答性能が低下する問題があった。
本発明は以上の点を考慮してなされたもので、ホスト装置からの書込み要求に対するストレージ装置の応答性能を向上させ得る計算機システム及びデータバックアップ方法を提案しようとするものである。
かかる課題を解決するために本発明においては、計算機システムにおいて、ホスト装置がデータを読み書きする第1のプライマリボリュームと、当該第1のプライマリボリュームとコピーペアに設定された第1のセカンダリボリュームとが設けられ、前記ホスト装置からのコピー指示に応じて、前記第1のプライマリボリュームに格納されたデータのうちの当該コピー指示において指定されたデータを前記第1のセカンダリボリュームにコピーする第1の筐体内コピー処理を実行する正側ストレージ装置と、前記第1のプライマリボリュームとリモートコピーのコピーペアに設定された第2のプライマリボリュームと、当該第2のプライマリボリュームとコピーペアに設定された第2のセカンダリボリュームとが設けられ、前記正側ストレージ装置からの指示に応じて、前記第2のプライマリボリュームに格納されたデータのうち、前記第1のプライマリボリュームから前記第1のセカンダリボリュームにコピーされるデータを前記第2のセカンダリボリュームにコピーする第2の同一筐体内コピー処理を実行する副側ストレージ装置とを設け、前記正側ストレージ装置は、前記第1の同一筐体内コピー処理の実行指示が与えられた後に、前記第1のプライマリボリュームにおける当該第1の同一筐体内コピー処理の対象範囲内の記憶領域をデータ書込み先とする前記ホスト装置からの書込み要求を受信すると、当該書込み要求において指定されたデータ書込み先の記憶領域に対応する前記副側ストレージ装置内の記憶領域のアドレスを格納した先行通知を前記副側ストレージ装置に送信し、前記先行通知を前記副側ストレージ装置に送信した後に、前記書込み要求において指定された前記第1のプライマリボリューム内の前記記憶領域に書込み対象のデータを書き込むと共に、当該書込み要求において指定されたデータ書込み先の記憶領域のアドレスを前記副側ストレージ装置内の対応する記憶領域のアドレスに設定した書込み要求及び書込み対象のデータを前記副側ストレージ装置に転送し、前記副側ストレージ装置は、前記正側ストレージ装置からの前記先行通知を受信した場合、前記第2のプライマリボリュームにおける当該先行通知において指定されたアドレスの記憶領域に格納されているデータを前記第2のセカンダリボリュームにコピーし終えていないときには、当該データを前記第2のセカンダリボリュームにコピーし、前記正側ストレージ装置からの前記書込み要求を受信すると、前記第2のプライマリボリュームにおける当該書込み要求において指定された前記アドレスの記憶領域に、書込み対象のデータを書き込むようにした。
また本発明においては、正側ストレージ装置及び副側ストレージ装置を有する計算機システムにおけるデータバックアップ方法において、前記正側ストレージ装置は、ホスト装置がデータを読み書きする第1のプライマリボリュームと、当該第1のプライマリボリュームとコピーペアに設定された第1のセカンダリボリュームとが設けられ、前記ホスト装置からのコピー指示に応じて、前記第1のプライマリボリュームに格納されたデータのうちの当該コピー指示において指定されたデータを前記第1のセカンダリボリュームにコピーする第1の筐体内コピー処理を実行し、前記副側ストレージ装置は、前記第1のプライマリボリュームとリモートコピーのコピーペアに設定された第2のプライマリボリュームと、当該第2のプライマリボリュームとコピーペアに設定された第2のセカンダリボリュームとが設けられ、前記正側ストレージ装置からの指示に応じて、前記第2のプライマリボリュームに格納されたデータのうち、前記第1のプライマリボリュームから前記第1のセカンダリボリュームにコピーされるデータを前記第2のセカンダリボリュームにコピーする第2の同一筐体内コピー処理を実行し、前記正側ストレージ装置が、前記第1の同一筐体内コピー処理の実行指示が与えられた後に、前記第1のプライマリボリュームにおける当該第1の同一筐体内コピー処理の対象範囲内の記憶領域をデータ書込み先とする前記ホスト装置からの書込み要求を受信すると、当該書込み要求において指定されたデータ書込み先の記憶領域に対応する前記副側ストレージ装置内の記憶領域のアドレスを格納した先行通知を前記副側ストレージ装置に送信する第1のステップと、前記正側ストレージ装置が、前記先行通知を前記副側ストレージ装置に送信した後に、前記書込み要求において指定された前記第1のプライマリボリューム内の前記記憶領域に書込み対象のデータを書き込むと共に、当該書込み要求において指定されたデータ書込み先の記憶領域のアドレスを前記副側ストレージ装置内の対応する記憶領域のアドレスに設定した書込み要求及び書込み対象のデータを前記副側ストレージ装置に転送する第2のステップと、前記副側ストレージ装置が、前記正側ストレージ装置からの前記先行通知を受信した場合に、前記第2のプライマリボリュームにおける当該先行通知において指定されたアドレスの記憶領域に格納されているデータを前記第2のセカンダリボリュームにコピーし終えていないときには、当該データを前記第2のセカンダリボリュームにコピーする第3のステップと、前記副側ストレージ装置が、前記正側ストレージ装置からの前記書込み要求を受信した場合に、前記第2のプライマリボリュームにおける当該書込み要求において指定された前記アドレスの記憶領域に、書込み対象のデータを書き込む第4のステップとを設けるようにした。
本発明によれば、ホスト装置からの書込み要求に対するストレージ装置の応答性能を向上させることができる。
第1及び第2の実施の形態による計算機システムの概略的な構成を示すブロック図である。 ホスト装置の概略構成を示すブロック図である。 (A)はチャネル制御部の概略構成を示すブロック図であり、(B)はプロセッサ部の概略構成を示すブロック図であり、(C)はディスク制御部の概略構成を示すブロック図である。 ディスク制御部のメモリに格納されたプログラムの説明に供する概念図である。 従来の計算機システムにおけるデータバックアップ方法の説明に供する概念図である。 第1の実施の形態の計算機システムにおけるデータバックアップ方法の説明に供する概念図である。 第1、第2及び第4の実施の形態によるオンデマンドコピー先行通知の説明に供する概念図である。 (A)は第1の実施の形態のボリューム情報テーブルの構成を示す概念図であり、(B)は第1の実施の形態のペア情報テーブルの構成を示す概念図であり、(C)は第1の実施の形態の差分ビットマップの構成を示す概念図である。 (A)は第1の実施の形態による正側フラッシュコピー処理の処理手順を示すフローチャートであり、(B)は第1の実施の形態による副側フラッシュコピー処理の処理手順を示すフローチャートである。 バックグラウンドコピー処理の処理手順を示すフローチャートである。 (A)は第1の実施の形態による正側バックアップコピー処理の処理手順を示すフローチャートであり、(B)は第1の実施の形態による副側オンデマンドコピー処理先行通知受領処理の処理手順を示すフローチャートである。 オンデマンドコピー処理の処理手順を示すフローチャートである。 (A)は第2の実施の形態の正側ストレージ装置が保持するボリューム情報テーブルの構成を示す概念図であり、(B)は当該正側ストレージ装置が保持するペア情報テーブルの構成を示す概念図であり、(C)は当該正側ストレージ装置が保持する差分ビットマップの構成を示す概念図である。 (A)は第2の実施の形態の副側ストレージ装置が保持するボリューム情報テーブルの構成を示す概念図であり、(B)は当該副側ストレージ装置が保持するペア情報テーブルの構成を示す概念図であり、(C)は当該副側ストレージ装置が保持する差分ビットマップの構成を示す概念図である。 (A)は第2の実施の形態による正側バックアップコピー処理の処理手順を示すフローチャートであり、(B)は第2の実施の形態による副側オンデマンドコピー処理先行通知受領処理の処理手順を示すフローチャートである。 第3の実施の形態による計算機システムの概略的な構成を示すブロック図である。 第3及び第5の実施の形態によるオンデマンドコピー先行通知の説明に供する概念図である。 (A)は第3の実施の形態の正側ストレージ装置が保持するシーケンシャル指示テーブルの構成を示す概念図であり、(B)は当該正側ストレージ装置が保持するボリューム情報テーブルの構成を示す概念図であり、(C)は当該正側ストレージ装置が保持するペア情報テーブルの構成を示す概念図であり、(D)は当該正側ストレージ装置が保持する差分ビットマップの構成を示す概念図である。 (A)は第3の実施の形態の副側ストレージ装置が保持するボリューム情報テーブルの構成を示す概念図であり、(B)は当該副側ストレージ装置が保持するペア情報テーブルの構成を示す概念図であり、(C)は当該副側ストレージ装置が保持する差分ビットマップの構成を示す概念図である。 第3の実施の形態による正側バックアップコピー処理の処理手順を示すフローチャートである。 第3の実施の形態による副側オンデマンドコピー処理先行通知受領処理の処理手順を示すフローチャートである。 第3の実施の形態による副側書込み処理の処理手順を示すフローチャートである。 第4及び第5の実施の形態による計算機システムの概略的な構成を示すブロック図である。 第4の実施の形態の計算機システムにおけるデータバックアップ方法の説明に供する概念図である。 (A)は第4の実施の形態の正側ストレージ装置が保持するボリューム情報テーブルの構成を示す概念図であり、(B)は当該正側ストレージ装置が保持するペア情報テーブルの構成を示す概念図であり、(C)は当該正側ストレージ装置が保持する差分ビットマップの構成を示す概念図である。 (A)は第4の実施の形態においてカスケード接続の最終段以外の副側ストレージ装置が保持するボリューム情報テーブルの構成を示す概念図であり、(B)は当該副側ストレージ装置が保持するペア情報テーブルの構成を示す概念図であり、(C)は当該副側ストレージ装置が保持する差分ビットマップの構成を示す概念図である。 (A)は第4の実施の形態においてカスケード接続の最終段の副側ストレージ装置が保持するボリューム情報テーブルの構成を示す概念図であり、(B)は当該副側ストレージ装置が保持するペア情報テーブルの構成を示す概念図であり、(C)は当該副側ストレージ装置が保持する差分ビットマップの構成を示す概念図である。 第4の実施の形態による正側バックアップコピー処理の処理手順を示すフローチャートである。 第4の実施の形態による第1の副側オンデマンドコピー処理先行通知受領処理の処理手順を示すフローチャートである。 第4の実施の形態による第1の副側書込み処理の処理手順を示すフローチャートである。 第4の実施の形態による第2の副側オンデマンドコピー処理先行通知受領処理の処理手順を示すフローチャートである。 第4の実施の形態による第2の副側書込み処理の処理手順を示すフローチャートである。 (A)は第5の実施の形態の正側ストレージ装置が保持するシーケンシャル指示テーブルの構成を示す概念図であり、(B)は当該正側ストレージ装置が保持するボリューム情報テーブルの構成を示す概念図であり、(C)は当該正側ストレージ装置が保持するペア情報テーブルの構成を示す概念図であり、(D)は当該正側ストレージ装置が保持する差分ビットマップの構成を示す概念図である。 (A)は第5の実施の形態においてカスケード接続の最終段以外の副側ストレージ装置が保持するシーケンシャル指示テーブルの構成を示す概念図であり、(B)は当該副側ストレージ装置が保持するボリューム情報テーブルの構成を示す概念図であり、(C)は当該副側ストレージ装置が保持するペア情報テーブルの構成を示す概念図であり、(D)は当該副側ストレージ装置が保持する差分ビットマップの構成を示す概念図である。 (A)は第5の実施の形態においてカスケード接続の最終段の副側ストレージ装置が保持するシーケンシャル指示テーブルの構成を示す概念図であり、(B)は当該副側ストレージ装置が保持するボリューム情報テーブルの構成を示す概念図であり、(C)は当該副側ストレージ装置が保持するペア情報テーブルの構成を示す概念図であり、(D)は当該副側ストレージ装置が保持する差分ビットマップの構成を示す概念図である。 第5の実施の形態による正側バックアップコピー処理の処理手順を示すフローチャートである。 第5の実施の形態による第1の副側オンデマンドコピー処理先行通知受領処理の処理手順を示すフローチャートである。 第5の実施の形態による第2の副側オンデマンドコピー処理先行通知受領処理の処理手順を示すフローチャートである。 (A)は第2及び第3の実施の形態による正側差分ビットマップ更新処理の処理手順を示すフローチャートであり、(B)は副側差分ビットマップ送信処理の処理手順を示すフローチャートである。 (A)は第4及び第5の実施の形態による正側差分ビットマップ更新処理の処理手順を示すフローチャートであり、(B)は第1の副側差分ビットマップ送信処理の処理手順を示すフローチャートであり、(C)は第2の副差分ビットマップ送信処理の処理手順を示すフローチャートである。
以下図面について、本発明の一実施の形態を詳述する。
(1)本実施の形態による計算機システム
(1−1)本実施の形態による計算機システムの構成
図1において、1は全体として本実施の形態による計算機システム1を示す。この計算機システム1は、複数のホスト装置2と、ローカルサイトLSに設置された正側ストレージ装置3Aと、リモートサイトRSに設置された副側ストレージ装置3Bとが、WAN(Wide Area Network)、SAN(Storage Area Network)又はインターネット等からなるネットワーク4を介して接続されることにより構成されている。
ホスト装置2は、正側ストレージ装置3Aにデータを読み書きする情報処理装置であり、図2に示すように、CPU2A、メモリ2B、記憶装置2C、入力装置2D及び通信インターフェース2Fを備えて構成される。
CPU2Aは、ホスト装置2全体の動作制御を司るプロセッサであり、メモリ2Bは、CPU2Aのワークメモリとして使用される半導体メモリである。また記憶装置2Cは、例えばハードディスク装置から構成され、ユーザが使用するアプリケーション等の各種プログラムや各種情報が格納される。記憶装置2Cに格納されたプログラムがホスト装置2の起動時にメモリ2Bに読み出され、このプログラムをCPU2Aが実行することによりユーザ業務に応じた各種処理が実行される。そして、この処理において使用されるデータが正側ストレージ装置3Aに読み書きされる。
入力装置2Dは、例えばキーボードスイッチやポインティングデバイスなどから構成され、ユーザがホスト装置2に情報を入力し又はホスト装置2に指示を与えるために使用される。出力装置2Eは、GUI(Graphical User Interface)や各種情報をユーザに提示するための表示装置であり、例えば液晶ディスプレイなどから構成される。通信インターフェース2Fは、例えばNIC(Network Interface Card)から構成され、正側ストレージ装置3Aとの通信時におけるインターフェースとして機能する。
正側ストレージ装置3Aは、1又は複数の物理ディスク10AAからなる物理ディスク部10Aと、これら物理ディスク10AAに対するデータの読み書きを制御するコントロール部11Aとから構成される。
物理ディスク10AAは、例えばSCSI(Small Computer System Interface)ディスク等の高価なディスク又はSATA(Serial AT Attachment)ディスク等の安価なディスクから構成される。1又は複数の物理ディスク10AAによりRAIDグループRGが構成され、1つのRAIDグループRGを構成する各物理ディスク10AAが提供する物理的な記憶領域上に1又は複数の論理ボリュームVOLが定義される。そしてホスト装置2からのデータは、この論理ボリュームVOL内に論理トラック単位で記憶される。ここで「論理トラック」とは、その論理ボリュームVOLを提供しているRAIDグループRGを構成する各物理ディスク10AA上の同一アドレスのトラックを1つにまとめた論理的なトラックを指す。
各論理ボリュームVOLには、それぞれ固有の識別子(以下、これをLUN(Logical Unit Number)と呼ぶ)が付与される。本実施の形態の場合、データの入出力は、このLUNと、各論理トラックにそれぞれ付与されるその論理トラックに固有の番号(以下、これをトラック番号と呼ぶ)との組み合わせたものをアドレスとして、当該アドレスを指定して行われる。
コントロール部11Aは、複数のチャネル制御部12A、共有メモリ13A、キャッシュメモリ14A、内部スイッチ15A、複数のプロセッサ部16A、複数のディスク制御部17A及び保守装置18Aから構成される。
チャネル制御部12Aは、ホスト装置2との通信時におけるプロトコル制御を行うアダプタであり、図3(A)に示すように、外部通信インターフェース12AA、プロセッサ12AB、メモリ12AC及び内部通信インターフェース12ADを備えて構成される。外部通信インターフェース12AAは、ホスト装置2との通信時におけるインターフェースである。またプロセッサ12ABは、チャネル制御部12A全体の動作制御を司る制御装置であり、メモリ12ACは、各種プログラムを記憶するために利用される半導体メモリである。内部通信インターフェース12ADは、チャネル制御部12Aが内部スイッチ15Aに接続された他のデバイス(他のチャネル制御部12A、共有メモリ13A、キャッシュメモリ14A、プロセッサ部16A又はディスク制御部17A)と通信する際のインターフェースとして機能する。
共有メモリ13A及びキャッシュメモリ14Aは、チャネル制御部12A、プロセッサ部16A及びディスク制御部17Aにより共有されるメモリである。共有メモリ13Aは、主としてプロセッサ部16Aが参照及び更新を行なう制御情報を記憶するために利用される。また、キャッシュメモリ14Aは、主に物理ディスク10AAに読み書きするデータを一時的に記憶するために利用される。
内部スイッチ15Aは、例えば高速スイッチングによりデータ伝送を行う超高速クロスバススイッチなどのスイッチ又はバス等により構成される。チャネル制御部12A、共有メモリ13A、キャッシュメモリ14A、プロセッサ部16A及びディスク制御部17A間でのデータやコマンドの授受は、この内部スイッチ15Aを介して行われる。
プロセッサ部16Aは、正側ストレージ装置3A全体の動作制御を司るデバイスであり、図3(B)に示すように、内部通信インターフェース16AA、プロセッサ16AB及びメモリ16ACを備えて構成される。このうち内部通信インターフェース16AAは、プロセッサ部16Aが内部スイッチ15Aに接続された他のデバイス(チャネル制御部12A、共有メモリ13A、キャッシュメモリ14A、他のプロセッサ部16A又はディスク制御部17A)との通信時におけるインターフェースである。またプロセッサ16ABは、プロセッサ部16A全体の動作制御を司る機能を有する。メモリ16ACは、主として各種プログラムを記憶するために利用される。プロセッサ16ABがメモリ16ACに格納された各種プログラムを実行することにより、後述のようなプロセッサ部16A全体としての各種処理が実行される。
ディスク制御部17Aは、物理ディスク10AAとの通信時における通信プロトコルを制御するアダプタであり、図3(C)に示すように、内部通信インターフェース17AA、プロセッサ17AB、メモリ17AC及びドライブインターフェース17ADを備えて構成される。内部通信インターフェース17AAは、ディスク制御部17Aが内部スイッチ15Aに接続された他のデバイス(チャネル制御部12A、共有メモリ13A、キャッシュメモリ14A、プロセッサ部16A又は他のディスク制御部17A)との通信時におけるインターフェースである。またプロセッサ17ABは、ディスク制御部17A全体の動作制御を司る機能を有する。メモリ17ACは、主として各種プログラムを記憶するために利用され、ドライブインターフェース17ADは、ディスク制御部17Aが物理ディスク10AAと通信を行う際のインターフェースとして機能する。
なお、ディスク制御部17Aのメモリ17ACに格納されるプログラムとしては、図4に示すように、RAID制御プログラム20、ディスク制御プログラム21及びデータIOプログラム22がある。RAID制御プログラム20は、管理装置19A又は保守装置18Aを介して与えられたユーザからの指示に応じてRAIDグループRGを作成及び管理するプログラムである。またディスク制御部プログラム21は、物理ディスク部10Aに対するデータの入出力を制御するプログラムであり、データIOプログラム22は、ホスト装置2が認識する論理的なアドレスを物理ディスク10AA上の物理的なアドレスに変換するなどの処理を行うプログラムである。
保守装置18は、正側ストレージ装置3Aの保守に利用される情報処理装置であり、例えばパーソナルコンピュータから構成される。保守装置18は、正側ストレージ装置3A内の各種情報を収集して管理装置19Aに通知したり、後述のように管理装置19Aから送信される設定指令に従って正側ストレージ装置3A内の各種設定を行う。
管理装置19Aは、例えばパーソナルコンピュータ又はワークステーション等のコンピュータ装置から構成され、LANを介して正側ストレージ装置3Aの保守装置18Aと接続されている。管理装置19Aは、正側ストレージ装置3Aに対して各種設定を行うためのGUI(Graphical User Interface)や各種情報を表示する表示装置と、オペレータが各種操作や各種設定入力を行うためのキーボードやマウス等の入力装置と、LANを介して正側ストレージ装置3Aの保守装置18Aと通信を行うための通信装置とを備える。そして管理装置19Aは、例えば正側ストレージ装置3Aの保守装置18Aから通知される各種情報を表示装置に表示したり、表示装置に表示したGUIを用いて入力された各種設定内容に従った設定指令を正側ストレージ装置3Aの保守装置18Aに送信する。
副側ストレージ装置3Bは、正側ストレージ装置3Aと同様のハードウェア構成を有するものであるため、その詳細についての説明は省略する。
(1−2)本実施の形態におけるデータバックアップ方法
(1−2−1)本実施の形態におけるデータバックアップ方法の概要
次に、本計算機システム1において実行されるデータバックアップ方法について説明する。これに際して、まず、フラッシュコピー機能及びリモートコピー機能を組み合わせた従来のデータバックアップ方法について、図5を参照して説明する。
図5は、フラッシュコピー機能及びリモートコピー機能を組み合わせたデータバックアップ機能を有する従来の計算機システム30の構成例を示す。この計算機システム30において、正側ストレージ装置32Aは、ローカルサイトに設置されたストレージ装置であり、ホスト装置31がデータを読み書きする論理ボリュームVOL(以下、これをプライマリボリュームPVOL1と呼ぶ)と、当該プライマリボリュームPVOL1とフラッシュコピーのコピーペアに設定されたボリューム(以下、これをセカンダリボリュームSVOL1と呼ぶ)とがその内部に設けられている。
また副側ストレージ装置32Bは、リモートサイトに設置されたストレージ装置であり、正側ストレージ装置32AのプライマリボリュームPVOL1とリモートコピーのコピーペアに設定されたプライマリボリュームPVOL2と、当該プライマリボリュームPVOL2とフラッシュコピーのコピーペアに設定されたセカンダリボリュームSVOL2とがその内部に設けられている。
この計算機システム30において、ホスト装置31が正側ストレージ装置32AのプライマリボリュームPVOL1にデータを書き込むと、正側ストレージ装置32Aのリモートコピー機能により、そのデータが副側ストレージ装置32Bに転送されて当該副側ストレージ装置32B内の対応するプライマリボリュームPVOL2にコピー(リモートコピー)される。これにより正側ストレージ装置32AのプライマリボリュームPVOL1に格納されたデータが副側ストレージ装置32BのプライマリボリュームPVOL2にバックアップされることとなる。
なお、このとき正側ストレージ装置32Aのかかるリモートコピーのコピー元のプライマリボリュームのLUN及び当該プライマリボリュームにおけるデータのコピー元の論理トラックのトラック番号と、副側ストレージ装置32Bにおけるかかるリモートコピーのコピー先のプライマリボリュームのLUN及び当該プライマリボリュームにおけるデータのコピー先の論理トラックのトラック番号とは同一である。
この後、ホスト装置31が、正側ストレージ装置32A内のプライマリボリュームPVOL1のLUNと当該プライマリボリュームPVOL1内における対象範囲(フラッシュコピーの対象となる論理トラックの範囲)とを指定して、その対象範囲内に格納されているデータのフラッシュコピーを実行するよう正側ストレージ装置32Aに指示(以下、これをフラッシュコピー指示と呼ぶ)を与えると、正側ストレージ装置32Aのフラッシュコピー機能により、その対象範囲内の各論理トラックに格納されているデータがセカンダリボリュームにコピー(フラッシュコピー)される。これにより、フラッシュコピー指示において指定されたプライマリボリュームPVOL1内のフラッシュコピーの対象範囲に格納されていたデータのスナップショットがセカンダリボリュームSVOL1に保存される。
また、フラッシュコピー指示は正側ストレージ装置32Aから副側ストレージ装置32Bに転送される。副側ストレージ装置32Bは、かかるフラッシュコピー指示を受信すると、そのフラッシュコピー機能により、当該副側ストレージ装置32B内の対応するプライマリボリュームPVOL2内の対応する各論理トラックにそれぞれ格納されているデータをセカンダリボリュームSVOL2にコピー(フラッシュコピー)する。これにより正側ストレージ装置32AのセカンダリボリュームSVOL1に保存されているスナップショットが、副側ストレージ装置32Bの対応するセカンダリボリュームSVOL2にバックアップされることとなる。
以上のようなフラッシュコピー機能及びリモートコピー機能を組み合わせたデータバックアップ機能を有する従来の計算機システム30において、正側ストレージ装置32A及び副側ストレージ装置32Bにおいてフラッシュコピーの実行中に、ホスト装置31から書込み要求が与えられた場合(SP1)に当該計算機システム30において実行されるデータバックアップ処理の処理内容について説明する。
この場合、正側ストレージ装置32Aは、まず、かかる書込み要求においてデータ書込み先として指定された正側ストレージ装置32A内のプライマリボリュームPVOL1の当該データ書込み先として指定された論理トラックが、現在実行しているフラッシュコピーの対象範囲内の論理トラックであるか否か、及び、その論理トラックに格納されているデータを既にセカンダリボリュームSVOL1にコピーし終えているか否かを判断する。
そして正側ストレージ装置32Aは、書込み要求においてデータ書込み先として指定された論理トラックが、現在実行しているフラッシュコピーの対象範囲内の論理トラックであり、かつ、その論理トラックに対するフラッシュコピーを完了していないとの判断結果を得た場合には、その書込み要求においてデータ書込み先として指定された論理トラックに格納されているデータを優先的にセカンダリボリュームSVOL1にコピー(以下、これを、適宜、オンデマンドコピーと呼ぶ)する(SP2)。
次いで、正側ストレージ装置32Aは、書込み要求と共に与えられた書込み対象のデータを、その書込み要求においてデータの書込み先として指定されたプライマリボリュームPVOL1内の当該書込み要求においてデータの書込み先として指定された論理トラックに書き込み(SP3)、この後、かかる書込み要求及び書込み対象のデータを副側ストレージ装置32Bに転送する(SP4)。
副側ストレージ装置32Bは、正側ストレージ装置32Aからの書込み要求及び書込み対象のデータを受信すると、その書込み要求においてデータの書込み先として指定された副側ストレージ装置32B内のプライマリボリュームPVOL2の当該データ書込み先として指定された論理トラックが、現在実行しているフラッシュコピーの対象範囲内の論理トラックであるか否か、及び、その論理トラックに格納されているデータを既にセカンダリボリュームSVOL2にコピーし終えているか否かを判断する。
そして副側ストレージ装置32Bは、書込み要求においてデータ書込み先として指定された論理トラックが、現在実行しているフラッシュコピーの対象範囲内の論理トラックであり、かつ、その論理トラックに格納されているデータを未だセカンダリボリュームSVOL2にコピーし終えていないとの判断結果を得た場合には、その書込み要求においてデータ書込み先として指定された論理トラックに格納されているデータをセカンダリボリュームSVOL2にオンデマンドコピーする(SP5)。
次いで、副側ストレージ装置32Bは、かかる書込み要求と共に与えられた書込み対象のデータを、書込み要求において指定されたプライマリボリュームPVOL2内の当該書込み要求において指定された論理トラックに書き込み(SP6)、この後、正側ストレージ装置32Aに対して、書込み要求に従ったデータの書込み処理を完了した旨の完了通知を送信する(SP7)。
そして正側ストレージ装置32Aは、この完了通知を受信すると、ステップSP1で受信した書込み要求に対する書込み処理が完了したことを意味する書込み処理完了通知をホスト装置31に送信する(SP8)。これによりステップSP1でホスト装置2が発行した書込み要求に対する一連のデータ書込み処理が終了する。
ところで、以上のような従来の計算機システム30におけるデータバックアップ方法によると、上述のように正側ストレージ装置32Aでのオンデマンドコピー(SP2)と、副側ストレージ装置32Bでのオンデマンドコピー(SP5)とが異なる時間に別個に行われるため、ホスト装置31から正側ストレージ装置32Aに書込み要求が発行された後、正側ストレージ装置32Aからホスト装置31にその書込み要求に対する書込み処理完了通知が送信されるまでに相応の時間が必要となる問題がある。このような問題は、ホスト装置31からみた計算機システム30の応答性能を低下させ、ホスト装置31の業務に悪影響を及ぼす要因ともなり得るおそれがあった。
そこで、本計算機システム1においては、正側ストレージ装置3A及び副側ストレージ装置3Bでフラッシュコピーを実行中に、正側ストレージ装置3A及び副側ストレージ装置3Bの各プライマリボリュームPVOL1,PVOL2内のフラッシュコピーの対象範囲に含まれる論理トラックであって、フラッシュコピーが行われていない論理トラックをデータの書込み先とする書込み要求がホスト装置2から正側ストレージ装置3Aに与えられた場合には、正側ストレージ装置3Aがオンデマンドコピーを開始する前にその書込み要求においてデータの書込み先として指定されたプライマリボリュームのLUN及び論理トラックのトラック番号を正側ストレージ装置3Aから副側ストレージ装置3Bに通知(以下、これをオンデマンドコピー先行通知と呼ぶ)する。また副側ストレージ装置3Bは、かかるオンデマンドコピー先行通知に従って正側ストレージ装置3Aと並行してオンデマンドコピーを実行する。
具体的に、本計算機システム1の場合、正側ストレージ装置3Aは、図6に示すように、フラッシュコピーの実行中にホスト装置2からの書込み要求を受信すると(SP10)、まず、その書込み要求において指定されたLUN及びトラック番号により特定される正側ストレージ装置3A内の論理トラックがフラッシュコピーの対象範囲に含まれているか否かを判断する。そして正側ストレージ装置3Aは、この判断で肯定結果を得ると、その書込み要求において指定されたLUN及びトラック番号を格納した図7に示すようなオンデマンドコピー先行通知40を生成し、このオンデマンドコピー先行通知40を副側ストレージ装置3Bに送信する(SP11)。
この後、正側ストレージ装置3Aは、書込み要求において指定されたLUN及びトラック番号により特定される論理トラックに対するフラッシュコピーを完了しているか否かを判断する。そして正側ストレージ装置3Aは、この判断で否定結果を得ると、その論理トラックに格納されているデータを対応するセカンダリボリュームSVOL1にコピー(オンデマンドコピー)した後に(SP12A)、書込み対象のデータを対応するプライマリボリュームPVOL1内の対応する論理トラックに書き込む(SP13)。また正側ストレージ装置3Aは、この後、その書込み要求と書込み対象のデータとを副側ストレージ装置3Bに転送する(SP14)。
一方、かかるオンデマンドコピー先行通知40を受信した副側ストレージ装置3Bは、オンデマンドコピー先行通知40において指定されたLUN及びトラック番号(図7の書込みボリューム番号欄40A及び書込みトラック番号欄40B参照)により特定される論理トラックに対するフラッシュコピーを完了しているか否かを判断する。そして副側ストレージ装置3Bは、この判断で否定結果を得ると、当該論理トラックに格納されているデータを対応するセカンダリボリュームSVOL2にコピー(オンデマンドコピー)する(SP12B)。
また副側ストレージ装置3Bは、この後、正側ストレージ装置3Aから上述の書込み要求及び書込み対象のデータが転送されてくると、そのデータを、その書込み要求において指定されたLUN及びトラック番号(オンデマンドコピー先行通知40において指定されたLUN及びトラック番号と同じ)により特定される論理トラックに書き込む(SP15)。さらに副側ストレージ装置3Bは、この後、正側ストレージ装置3Aに対して、書込み要求に従ったデータの書込み処理を完了した旨の完了通知を送信する(SP16)。
そして正側ストレージ装置3Aは、この完了通知を受信すると、ステップSP10で受信した書込み要求に対する書込み処理が完了したことを意味する書込み処理完了通知をホスト装置2に送信する(SP17)。これによりステップSP10でホスト装置2が発行した書込み要求に対する一連のデータ書込み処理が終了する。
以上のような本実施の形態のデータバックアップ方法によれば、正側ストレージ装置3A及び副側ストレージ装置3B内の各プライマリボリュームPVOL1,PVOL2内のフラッシュコピーが未だ完了していない論理トラックに対する書込み要求がホスト装置2から正側ストレージ装置3Aに与えられた場合に、正側ストレージ装置3A及び副側ストレージ装置3Bの双方において並行してオンデマンドコピーが実行されるため、ホスト装置2から正側ストレージ装置3Aに書込み要求が発行された後、正側ストレージ装置3Aからホスト装置2にその書込み要求に対する書込み処理完了通知が送信されるまでの時間を短縮化させることができる。
このようなデータバックアップ方法を実現するための手段として、正側ストレージ装置3A及び副側ストレージ装置3Bの各共有メモリ13A,13B(図1参照)には、それぞれ図8(A)に示すボリューム情報テーブル41と、図8(B)に示すペア情報テーブル42と、図8(C)に示す1又は複数の差分ビットマップ43とが格納されている。
ボリューム情報テーブル41は、自ストレージ装置内に設定された論理ボリュームVOLを管理するために利用されるテーブルであり、図8(A)に示すように、論理ボリューム番号欄41A、ボリューム種別欄41B及びペア番号欄41Cから構成される。
そして論理ボリューム番号欄41Aには、その正側ストレージ装置3A又は副側ストレージ装置3B内の論理ボリュームVOLに対してそれぞれ付与されたその論理ボリュームVOLのLUNが格納される。またボリューム種別欄41Bには、対応する論理ボリュームVOLの種別(プライマリボリューム又はセカンダリボリューム等)を表わす情報が格納される。具体的には、その論理ボリュームVOLがプライマリボリュームである場合には「Pvol」が、その論理ボリュームVOLがセカンダリボリュームである場合には「Svol」が、その論理ボリュームVOLがプライマリボリュームとしても、またセカンダリボリュームとしても使用されない場合には「not」がそれぞれ格納される。さらに、ペア番号欄41Cには、対応する論理ボリュームVOLが他の論理ボリュームVOLとコピーペアを形成している場合に、そのコピーペアに対して付与された識別子(以下、これをペア番号と呼ぶ)が格納される。
従って、図8(A)の場合、例えばLUNが「0」の論理ボリュームVOLはプライマリボリュームとして設定されており、LUNが「2」の論理ボリュームVOLと共にペア番号が「1」のコピーペアを形成していることが示されている。
またペア情報テーブル42は、自ストレージ装置内に設定されたコピーペアを管理するために利用されるテーブルであり、図8(B)に示すように、ペア番号欄42A、プライマリボリューム番号欄42B、セカンダリボリューム番号欄42C及びビットマップ番号欄42Dから構成される。
そしてペア番号欄42Aには、対応するコピーペアに付与されたペア番号が格納され、プライマリボリューム番号欄42Bには、そのコピーペアのプライマリボリュームを構成する論理ボリュームVOLのLUNが格納される。またセカンダリボリューム番号欄42Cには、かかるコピーペアのセカンダリボリュームを構成する論理ボリュームVOLのLUNが格納され、ビットマップ番号欄42Dには、そのコピーペアに対応付けられた後述の差分ビットマップ43に付与された識別番号(以下、これをビットマップ番号と呼ぶ)が格納される。
差分ビットマップ43は、対応するコピーペアにおけるフラッシュコピーの進捗状態を管理するために利用されるビットマップであり、図8(C)に示すように、プライマリボリューム内のフラッシュコピーの対象領域内に存在する各論理トラックにそれぞれ対応付けられた1又は複数の差分ビットを備えて構成される。そしてこれらの差分ビットは、その差分ビットマップ43が作成された直後の初期状態では「0」に設定され、その後、対応する論理トラックに格納されたデータをセカンダリボリュームにコピー(フラッシュコピー)し終えた段階で「1」に更新される。
(1−2−2)本実施の形態によるデータバックアップ方法に関する各種処理
次に、本実施の形態によるデータバックアップ方法に関する各種処理の具体的な処理内容について説明する。
(1−2−2−1)フラッシュコピー処理
図9(A)は、ホスト装置2からのフラッシュコピー指示を受信した正側ストレージ装置3Aのプロセッサ部(以下、これを正側プロセッサ部と呼ぶ)16Aにより実行されるフラッシュコピー処理(以下、これを正側フラッシュコピー処理と呼ぶ)の処理手順を示す。
正側プロセッサ部16Aは、ホスト装置2から発行されたフラッシュコピー指示を受信すると、この正側フラッシュコピー処理を開始し、まず、受信したフラッシュコピー指示に応じて、正側ストレージ装置3A内の対応するプライマリボリューム及び当該プライマリボリューム内の対応する範囲を指定したフラッシュコピーの実行指示を副側ストレージ装置3Bに発行する(SP20)。
続いて正側プロセッサ部16Aは、ホスト装置2からのフラッシュコピー指示において指定されたフラッシュコピーを実行すべきプライマリボリューム及びセカンダリボリュームについて、そのプライマリボリュームをコピー元とし、そのセカンダリボリュームをコピー先とするコピーペアを設定し、設定したコピーペアに関する情報を自ストレージ装置内のペア情報テーブル42(図8(B))に登録する。また正側プロセッサ部16Aは、かかるコピーペアの設定に伴い、必要に応じて自ストレージ装置内のボリューム情報テーブル41(図8(A))を更新すると共に、当該コピーペアにおけるフラッシュコピー処理の進捗を管理するための差分ビットマップ43を作成する(SP21)。
次いで正側プロセッサ部16Aは、ホスト装置2からのフラッシュコピー指示に従ったバックグラウンドコピー処理を起動する(SP22)。そして正側プロセッサ部16Aは、副側ストレージ装置3Bのプロセッサ部10から後述の完了報告が送信されると(SP23)、フラッシュコピー処理が完了した旨のフラッシュコピー完了報告をホスト装置2に送信し(SP24)、この後、この正側フラッシュコピー処理を終了する。
なお、上述のステップSP24の完了報告によって、ホスト装置2側では、正側及び副側ストレージ装置3A,3Bでのフラッシュコピー処理が完了しているように見えるが、実際には、バックグラウンドで、正側及び副側ストレージ装置3A,3Bにおいてコピー処理が継続して行われる。
また図9(B)は、正側フラッシュコピー処理(図9(A))のステップSP20において正側ストレージ装置3Aから発行された上述のフラッシュコピー指示を受信した副側ストレージ装置3Bのプロセッサ部(以下、これを副側プロセッサ部と呼ぶ)16B(図1参照)により実行されるフラッシュコピー処理(以下、これを副側フラッシュコピー処理と呼ぶ)の処理手順を示す。
副側プロセッサ部16Bは、かかる正側ストレージ装置3Aからのフラッシュコピー指示を受信すると、この副側フラッシュコピー処理を開始し、まず、受信したフラッシュコピー指示において指定されたフラッシュコピーを実行すべきプライマリボリューム及びセカンダリボリュームについて、そのプライマリボリュームをコピー元とし、そのセカンダリボリュームをコピー先とするコピーペアを設定し、設定したコピーペアに関する情報を自ストレージ装置内のペア情報テーブル42に登録する。また副側プロセッサ部16Bは、かかるコピーペアの設定に伴い、必要に応じて自ストレージ装置内のボリューム情報テーブル41を更新すると共に、当該コピーペアにおけるフラッシュコピー処理の進捗を管理するための差分ビットマップ43を作成する(SP30)。
次いで副側プロセッサ部16Bは、正側ストレージ装置3Aからのフラッシュコピー指示に従ったバックグラウンドコピー処理を起動する(SP31)。そしてこの後、副側プロセッサ部16Bは、当該フラッシュコピー指示に従ったフラッシュコピー処理が完了した旨の完了報告を正側ストレージ装置3Aに送信し(SP32)、この後、この副側フラッシュコピー処理を終了する。
なお、上述のステップSP32の完了報告によって、正側ストレージ装置3Aでは、副側ストレージ装置3Bでのフラッシュコピー処理が完了しているように見えるが、実際には、バックグラウンドで、副側ストレージ装置3Bにおいてコピー処理が継続して行われる。
なお上述の正側フラッシュコピー処理(図9(A))のステップSP22や、副側フラッシュコピー処理(図9(B))のステップSP31において実行されるバックグラウンドコピー処理の具体的な処理内容を図10に示す。以下においては、このバックグラウンドコピー処理を正側フラッシュコピー処理のステップSP22における正側プロセッサ部16Aの処理として説明するが、副側フラッシュコピー処理のステップSP31における副側プロセッサ部16Bの処理内容も同様である。
正側プロセッサ部16Aは、正側フラッシュコピー処理のステップSP22に進むと、この図10に示すコピー処理を開始し、まず、図9(A)について上述した正側フラッシュコピー処理のステップSP21において作成した差分ビットマップのすべてのビットがコピー済みを表す値(「1」)になっているか否かを判断する(SP40)。
そして正側プロセッサ部16Aは、この判断で否定結果を得ると、ステップSP21において更新したペア情報テーブル42と、かかる差分ビットマップ43とを参照して、ホスト装置2からのフラッシュコピー指示において指定されたプライマリボリューム内のフラッシュコピーの対象範囲に含まれる論理トラックであって、未だフラッシュコピーを行っていない論理トラックを1つ選択し、その論理トラックに格納されているデータを対応するセカンダリボリュームにコピーする(SP41)。
次いで正側プロセッサ部16Aは、かかる差分ビットマップ43のビットのうち、ステップSP41においてコピーを実行した論理トラックに対応するビットを、コピー済みであることを表す値(「1」)に更新した後(SP42)、ステップSP40に戻る。
そして正側プロセッサ部16Aは、この後、ホスト装置2からのフラッシュコピー指示において指定されたプライマリボリューム内のフラッシュコピーの対象範囲に含まれる論理トラックであって、未だフラッシュコピーを行っていない各論理トラックについて同様の処理を実行し(SP40〜SP42−SP40)、やがてそのプライマリボリューム内のフラッシュコピーの対象範囲に含まれるすべてのトラックについてのコピーが完了することによりステップSP40において肯定結果を得ると、このバックグラウンドコピー処理を終了する。
(1−2−2−2)バックアップコピー処理
図11(A)は、正側ストレージ装置3A及び副側ストレージ装置3Bにおいてフラッシュコピー処理(図10)が実行されている状態で、正側ストレージ装置3Aのプライマリボリュームにおけるフラッシュコピーの対象範囲内の論理トラックをデータ書込み先とする書込み要求がホスト装置2から正側ストレージ装置3Aに送信された場合に、正側プロセッサ部16Aにより実行されるバックアップコピー処理(以下、これを正側バックアップコピー処理と呼ぶ)の処理手順を示す。
この場合、正側プロセッサ部16Aは、かかるホスト装置2からの書込み要求を受信すると、その書込み要求においてデータの書込み先として指定されたLUN及びトラック番号を格納したオンデマンドコピー先行通知40(図7参照)を副側ストレージ装置3Bに送信する(SP50)。
また正側プロセッサ部16Aは、かかる書込み要求において指定されたLUN及びトラック番号により特定される正側ストレージ装置3A内の論理トラックに対するフラッシュコピーが完了しているか否かを判断する。また正側プロセッサ部16Aは、そのコピーが行われていない場合には、そのプライマリボリュームのその論理トラックに格納されているデータを、対応するセカンダリボリュームにコピー(オンデマンドコピー)するオンデマンドコピー処理を実行する(SP51)。
次いで正側プロセッサ部16Aは、かかる書込み要求と共にホスト装置2から与えられた書込み対象のデータを、書込み要求において指定されたLUN及びトラック番号により特定される正側ストレージ装置3A内の論理トラックに書き込み(SP52)、この後、その書込み要求及び書込み対象のデータを副側ストレージ装置3Bに転送する(SP53)。
この後、正側プロセッサ部16Aは、副側ストレージ装置3Bから後述するデータ書込み完了報告が送信されるのを待ち受け、やがてデータ書込み完了報告を受信すると(SP54)、書込み対象のデータの書込み処理が完了した旨のデータ書込み完了報告をホスト装置2に送信する(SP55)。そして正側プロセッサ部16は、この後、この正側バックアップコピー処理を終了する。
一方、図11(B)は、正側ストレージ装置3Aから発行された上述のオンデマンドコピー先行通知40(図7)を受信した副側ストレージ装置3Bの副側プロセッサ部16Bにより実行されるオンデマンドコピー処理先行通知受領処理(以下、これを副側オンデマンドコピー処理先行実施通知受領処理と呼ぶ)の処理手順を示す。
副側プロセッサ部16Bは、かかるオンデマンドコピー先行通知40を受信すると、この副側オンデマンドコピー処理先行通知受領処理を開始し、オンデマンドコピー先行通知40に従ったオンデマンドコピー処理を実行し(SP60)、この後、副側オンデマンドコピー処理先行通知受領処理を終了する。
他方、図11(C)は、正側バックアップコピー処理(図11(A))のステップSP53において正側ストレージ装置3Aから発行された上述の書込み要求を受信した副側ストレージ装置3Bの副側プロセッサ部16Bにより実行される書込み処理の処理手順を示す。
副側プロセッサ部16Bは、かかる書込み要求を受信すると、この書込み処理を開始し、まず、正側ストレージ装置3Aから送信される書込み対象のデータ(つまりホスト装置2により正側ストレージ装置3A内の対応するプライマリボリュームに書き込まれたデータ)を副側ストレージ装置3B内の対応するプライマリボリュームに書き込む(SP70)。
続いて副側プロセッサ部16Bは、データの書込みが完了した旨の完了報告を正側ストレージ装置3Aに送信し(SP71)、この後、この書込み処理を終了する。
なお、上述の正側バックアップコピー処理(図11(A))のステップSP51や、副側オンデマンドコピー処理先行通知受領処理(図11(B))のステップSP60において実行されるオンデマンドコピー処理の具体的な処理内容を図12に示す。なお、以下においては、このオンデマンドコピー処理を正側バックアップコピー処理のステップSP51における正側プロセッサ部16Aの処理として説明するが、副側オンデマンドコピー処理先行通知受領処理のステップSP60における副側プロセッサ部16Bの処理内容も同様である。
正側プロセッサ部16Aは、正側バックアップコピー処理のステップSP51に進むと、この図12に示すオンデマンドコピー処理を開始し、まず、そのとき受信した書込み要求と、共有メモリ13A(図1)に格納されているボリューム情報テーブル41(図8(A))、ペア情報テーブル42(図8(B))及び対応する差分ビットマップ43(図8(C))とを参照して、当該差分ビットマップ43における、その書込み要求において指定されたLUN及びトラック番号により特定される論理トラックに対応するビットがコピー済みを表す値(「1」)であるか否かを判断する(SP80)。そして正側プロセッサ部16Aは、この判断で肯定結果を得ると、このオンデマンドコピー処理を終了する。
これに対して正側プロセッサ部16Aは、ステップSP80の判断で否定結果を得ると、書込み要求において指定されたLUN及びトラック番号により特定される正側ストレージ装置3A内の論理トラックに格納されているデータを対応するセカンダリボリュームにコピーする(SP81)。
そして正側プロセッサ部16Aは、この後、そのプライマリボリューム及びセカンダリボリュームが構成するコピーペアと対応付けられた差分ビットマップ43のその論理トラックに対応するビットをコピー済みであることを表す値(「1」)に変更し(SP82)、この後、このオンデマンドコピー処理を終了する。
(1−3)本実施の形態による効果
以上のように本実施の形態によれば、必要なオンデマンドコピーが正側ストレージ装置3A及び副側ストレージ装置3Bで並行して行われるため、従来のように正側ストレージ装置3A及び副側ストレージ装置3Bにおいて異なる時間にオンデマンドコピーを行う場合と比べて一連の処理に要する時間を短縮することができる。かくするにつき、ホスト装置からの書込み要求に対するストレージ装置の応答性能を向上させ得る計算機システムを実現できる。
(2)第2の実施の形態
(2−1)計算機システムの構成
図1において、50は全体として第2の実施の形態による計算機システムを示す。この計算機システム50は、正側ストレージ装置51Aが副側ストレージ装置51Bに上述のオンデマンドコピー先行通知40(図7)を発行する条件が異なる点を除いて第1の実施の形態による計算機システム1と同様に構成されている。
実際上、第1の実施の形態による計算機システム1では、正側ストレージ装置3A及び副側ストレージ装置3Bがフラッシュコピーを実行中に、正側ストレージ装置3A及び副側ストレージ装置3Bの各プライマリボリューム内のフラッシュコピーの対象範囲に含まれる論理トラックをデータの書込み先とする書込み要求がホスト装置2から正側ストレージ装置3Aに与えられた場合、常に正側ストレージ装置3Aが副側ストレージ装置3Bに対してオンデマンド先行通知40を送信する。
このため副側ストレージ装置51Bにおいて、書込み要求においてデータの書込み先として指定された論理トラックに対するフラッシュコピーが完了している場合においても、オンデマンドコピー先行通知40が副側ストレージ装置3Bに送信されることとなり、その分ネットワーク4の帯域を無駄に消費することになる。
そこで、本実施の形態による計算機システム50の場合、副側ストレージ装置51Bは、例えば図9(C)のステップSP32について上述した完了報告を正側ストレージ装置51Aに通知する際、当該完了報告と併せて、そのとき実行しているフラッシュコピーの進捗状況を表す差分ビットマップを正側ストレージ装置51Aに送信する。そして正側ストレージ装置51Aは、この差分ビットマップを共有メモリ13Aに格納する。
また正側ストレージ装置51Bは、この後、正側ストレージ装置51A及び副側ストレージ装置51Bにおいて実行中のフラッシュコピーの対象範囲内の論理トラックをデータ書込み先とする書込み要求がホスト装置2から与えられた場合に、共有メモリ13Aに保持している副側ストレージ装置51Bの差分ビットマップを利用して、その書込み要求において指定されたLUN及びトラック番号により特定される副側ストレージ装置51B内の論理トラックに対応するフラッシュコピーが当該副側ストレージ装置51Bにおいて完了していない場合にのみ、オンデマンドコピー先行通知40を副側ストレージ装置51Bに送信する。
以上のような本実施の形態によるデータバックアップ方法を実現するための手段として、正側ストレージ装置51Aの共有メモリ13A(図1)には、図13(A)に示すボリューム情報テーブル53と、図13(B)に示すペア情報テーブル54と、図13(C)に示す複数の差分ビットマップ55とが格納されている。
ボリューム情報テーブル53は、第1の実施の形態のボリューム情報テーブル41(図8(A))と同様のものであるため、ここでの説明は省略する。
ペア情報テーブル54は、自ストレージ装置内に設定されたコピーペアを管理するために利用されるテーブルであり、図13(B)に示すように、ペア番号欄54A、プライマリボリューム番号欄54B、セカンダリボリューム番号欄54C、正側ビットマップ番号欄54D及び副側ビットマップ番号欄54Eから構成される。
そしてペア番号欄54A、プライマリボリューム番号欄54B及びセカンダリボリューム番号欄54Cには、それぞれ第1の実施の形態によるペア情報テーブル42の対応する欄(ペア番号欄42A、プライマリボリューム番号欄42B又はセカンダリボリューム番号欄42C)に格納される情報と同じ情報が格納され、正側ビットマップ番号欄54Dには、第1の実施の形態によるペア情報テーブル42のビットマップ番号欄42Dに格納される情報と同じ情報が格納される。
また副側ビットマップ番号欄54Eには、正側ストレージ装置51A内の対応するフラッシュコピーのコピーペアと対応する副側ストレージ装置51B内のコピーペアについて、当該副側ストレージ装置51Bから送信されてきた差分ビットマップ55(図13(C))のビットマップ番号が格納される。なお、「正側ストレージ装置51A内のコピーペアと対応する副側ストレージ装置51B内のコピーペア」とは、副側ストレージ装置51B内に設定されたコピーペアのうち、正側ストレージ装置51A内のそのコピーペアを構成するプライマリボリュームに書き込まれたデータがリモートコピーされる副側ストレージ装置51B内のプライマリボリュームをフラッシュコピーのコピー元とするコピーペアを指す。
差分ビットマップ55は、第1の実施の形態による差分ビットマップ43(図7(C)と同様のものであるため、ここでの説明は省略する。ただし、上述のように本実施の形態の場合、正側ストレージ装置51Aは、当該正側ストレージ装置51A内に設けられたフラッシュコピーの各コピーペアとそれぞれ対応付けられた副側ストレージ装置51B内のコピーペアにおけるフラッシュコピーの進捗状況をそれぞれ表す差分ビットマップ55を保持している。
一方、副側ストレージ装置51Bの共有メモリ13B(図1)には、図14(A)に示すようなボリューム情報テーブル56と、図14(B)に示すペア情報テーブル57と、図14(C)に示す複数の差分ビットマップ58とが格納されている。これらボリューム情報テーブル56、ペア情報テーブル57及び差分ビットマップ58は、第1の実施の形態のボリューム情報テーブル41(図8(A))、ペア情報テーブル42(図8(B))又は差分ビットマップ43(図8(C))と同様のものであるため、ここでの説明は省略する。
(2−2)本実施の形態によるバックアップコピー処理
次に、本実施の形態によるオンデマンドコピー処理の処理手順について説明する。図15(A)は、正側ストレージ装置51A及び副側ストレージ装置51Bでフラッシュコピーを実行中に、そのフラッシュコピーの対象範囲内の論理トラックをデータ書込み先とする書込み要求がホスト装置2から正側ストレージ装置51Aに送信された場合に、正側ストレージ装置51Aの正側プロセッサ部52A(図1)により実行される正側バックアップコピー処理の処理手順を示す。
この場合、正側プロセッサ部52Aは、かかるホスト装置2からの書込み要求を受信すると、その書き込み要求と、共有メモリ13Aに格納されているボリューム情報テーブル53及びペア情報テーブル54と、上述のように副側ストレージ装置51Bから送信されてきた差分ビットマップ55とを参照して、その差分ビットマップ55における、かかる書込み要求において指定されたLUN及びトラック番号により特定される正側ストレージ装置51A内の論理トラックに対応するビットがコピー済みを表す値(「1」)になっているか否かを判断する(SP90)。
正側プロセッサ部52Aは、この判断で否定結果を得ると、副側ストレージ装置51Bに対して、ホスト装置2からの書込み要求において指定されたLUN及びトラック番号を格納したオンデマンドコピー先行通知40を生成し、これを副側ストレージ装置51Bに送信する(SP91)。そして正側プロセッサ部52Aは、この後、ステップSP92に進む。
これに対して正側プロセッサ部52Bは、ステップSP90の判断で肯定結果を得ると、図12について上述したオンデマンドコピー処理を実行することにより、かかる書込み要求において指定されたLUN及びトラック番号により特定される論理トラックに格納されているデータを対応するセカンダリボリュームにコピー(オンデマンドコピー)する(SP92)。
続いて、正側プロセッサ部52Bは、かかる書込み要求と共にホスト装置2から与えられた書込み対象のデータを、書込み要求において指定されたLUN及びトラック番号により特定される正側ストレージ装置51A内の論理トラックに書き込み(SP93)、この後、その書込み要求及び書込み対象のデータを副側ストレージ装置51Bに転送する(SP94)。
この後、正側プロセッサ部52Bは、副側ストレージ装置51Bから後述するデータ書込み完了報告及び対応する差分ビットマップ58(図14(C))のデータが送信されるのを待ち受ける。なお、ここでいう「対応する差分ビットマップ」とは、書込み要求においてデータ書込み先として指定されたプライマリボリュームをコピー元とするフラッシュコピーのコピーペアと対応する副側ストレージ装置51B内のコピーペアにおけるフラッシュコピーの進捗状況を管理するために副側ストレージ装置51Bが保持する差分ビットマップ58を指す。
そして正側プロセッサ部52Bは、やがてそのデータ書込み完了報告及び差分ビットマップ58のデータを受信すると(SP95)、このとき受信した差分ビットマップをコピーするようにして、対応する副側差分ビットマップ55を更新する(SP96)。なお、ここでいう「対応する副側差分ビットマップ」とは、上述の「対応する差分ビットマップ」に対応して正側ストレージ装置51A内に設けられた差分ビットマップ55を指す。
次いで、正側プロセッサ52Bは、書込み要求に対するデータの書込み処理が完了した旨のデータ書込み完了報告をホスト装置2に送信し(SP97)、この後、この正側バックアップコピー処理を終了する。
一方、図15(B)は、正側ストレージ装置51Aから発行された上述のオンデマンドコピー先行通知40(図7)を受信した副側ストレージ装置51Bの副側プロセッサ部52B(図1)により実行される副側オンデマンドコピー処理先行通知受領処理の処理手順を示す。
副側プロセッサ部52Bは、かかるオンデマンドコピー先行通知40を受信すると、この副側オンデマンドコピー処理先行通知受領処理を開始し、オンデマンドコピー先行通知に従ったオンデマンドコピー処理を起動実行し(SP100)、この後、副側オンデマンドコピー処理先行通知受領処理を終了する。
他方、図15(C)は、正側バックアップコピー処理(図15(A))のステップSP94において正側ストレージ装置51Aから発行された上述の書込み要求を受信した副側ストレージ装置51Bの副側プロセッサ部52Bにより実行される書込み処理の処理手順を示す。
副側プロセッサ部52Bは、かかる書込み要求を受信すると、この書込み処理を開始し、まず、正側ストレージ装置51Aから送信される書込み対象のデータ(つまりホスト装置2により正側ストレージ装置51A内の対応するプライマリボリュームに書き込まれたデータ)を副側ストレージ装置51B内の対応するプライマリボリュームに書き込む(SP110)。
続いて副側プロセッサ部52Bは、データの書込みが完了した旨の完了報告と、そのとき実行している対応するフラッシュコピーの現状の進捗状況を表す差分ビットマップ58とを正側ストレージ装置51Aに送信し(SP111)、この後、この書込み処理を終了する。
なお、本実施の形態においては、上述のように副側ストレージ装置51Bが書込み要求に従った書込み処理を完了した旨の完了報告を前段の正側ストレージ装置51Aに送信する際に、これと併せて自ストレージ装置の対応する差分ビットマップ58を当該正側ストレージ装置51Aに送信するようにしているが、例えば副側ストレージ装置51Bが差分ビットマップ58を定期的に前段の正側ストレージ装置51Aに送信するようにしても良い。
図39(B)は、副側ストレージ装置51Bが差分ビットマップ58を定期的に前段の正側ストレージ装置51Aに送信する場合に、副側ストレージ装置51Bの副側プロセッサ部52Bにより実行される副側差分ビットマップ送信処理を示し、図39(A)は、このとき正側ストレージ装置51Aの正側プロセッサ部52Aにより実行される正側差分ビットマップ更新処理の処理手順を示す。
副側ストレージ装置51Bの副側プロセッサ部52Bは、定期的にこの図39(B)に示す副側差分ビットマップ送信処理を開始し、正側ストレージ装置51Aへ副側ストレージ装置51B内で実行している対応するフラッシュコピーの現状の進捗状況を表す差分ビットマップ58を送信する(SP280)。副側プロセッサ部52Bは、この後、この副側差分ビットマップ送信処理を終了する。
一方、正側ストレージ装置51Aの正側プロセッサ部52Aは、かかる差分ビットマップ58を受信すると、図39(A)に示す正側差分ビットマップ更新処理を開始し、受信した差分ビットマップ58をコピーするようにして、対応する副側差分ビットマップ55を更新する(SP270)。そして、この後正側ストレージ装置51Aの正側プロセッサ部52Aは、この差分ビットマップ更新処理を終了する。
(2−3)本実施の形態による効果
以上のように本実施の形態によれば、不要なオンデマンドコピー先行通知40が正側ストレージ装置51Aから副側ストレージ装置51Bに送信されるのを未然に防止することができる。かくするにつき、第1の実施の形態の計算機システム1により得られる効果に加えて、ネットワーク4の帯域を有効利用できるという効果をも得られる計算機システムを実現できる。
(3)第3の実施の形態
(3−1)計算機システムの構成
図1との対応部分に同一符号を付して示す図16において、60は全体として第3の実施の形態による計算機システムを示す。この計算機システム60は、ホスト装置61から正側ストレージ装置62Aに与えられる書込み要求がシーケンシャルな書込み要求である場合に、これに応じたオンデマンドコピー先行通知が正側ストレージ装置62Aから副側ストレージ装置62Bに与えられ、副側ストレージ装置62Bがこのオンデマンドコピー先行通知に基づいて、複数トラック単位でオンデマンドコピー処理を実行する点を除いて第2の実施の形態による計算機システム50と同様に構成されている。
実際上、本計算機システム60の場合、ホスト装置61は、シーケンシャルな書込み要求(以下、これをシーケンシャル書込み要求と呼ぶ)を正側ストレージ装置62Aに送信する場合、その書込み要求がシーケンシャル書込み要求であることを表すコードを、当該書込み要求の所定位置(以下、これをシーケンシャルコード埋込み位置と呼ぶ)に埋め込む。なお、ここでいう「シーケンシャルな書込み要求」及び「シーケンシャル書込み要求」」とは、今回の書込み要求においてデータの書込み先として指定した論理トラックと物理的に連続する論理トラックを、少なくとも次回発行する書込み要求においてデータの書込み先として指定することを予定している書込み要求をいう。
そして正側ストレージ装置62Aは、正側ストレージ装置62A及び副側ストレージ装置62Bがフラッシュコピーを実行中にホスト装置2からの書込み要求を受信すると、その書込み要求のシーケンシャルコード埋込み位置を参照して、その書込み要求がシーケンシャル書込み要求であるか否かを判断する。
また正側ストレージ装置62Aは、その書込み要求がシーケンシャル書込み要求であり、当該書込み要求においてデータ書込み先として指定された論理トラックが、現在実行中のフラッシュコピーの対象範囲内で、かつ副側ストレージ装置62Bにおいて、当該書込み要求においてデータ書込み先として指定されたトラック番号の論理トラックから連続する所定数(以下に説明するように、本実施の形態においては「5」)のすべての論理トラックに対するコピーが終了していない場合には、例えば図17に示すようなオンデマンドコピー先行通知70を副側ストレージ装置62Bに送信する。
このオンデマンドコピー先行通知70は、図17からも明らかなように、書込みボリューム番号フィールド70A、書込みトラック番号フィールド70B及びシーケンシャル情報フィールド70Cを有する。そして書込みボリューム番号フィールド70Aには、ホスト装置61からの書込み要求においてデータ書込み先として指定されたプライマリボリュームのLUNが格納され、書込みトラック番号フィールド70Bには、その書込み要求においてデータ書込み先として指定された論理トラックのトラック番号が格納される。またシーケンシャル情報フィールド70Cには、その書込み要求がシーケンシャル書込み要求であるか否かを表す情報(以下、これをシーケンシャル情報と呼ぶ)が格納される。具体的に、その書込み要求がシーケンシャル書込み要求である場合には、シーケンシャル情報フィールド70Cに「1」が格納され、当該書込み要求がシーケンシャル書込み要求出ない場合には、シーケンシャル情報フィールド70Cに「0」が格納される。
副側ストレージ装置62Bは、このオンデマンドコピー先行通知70を受信すると、まず、当該オンデマンドコピー先行通知70に格納されたシーケンシャル情報を参照して、そのときホスト装置61から正側ストレージ装置62Aに送信された書込み要求がシーケンシャル書込み要求であるか否かを判断する。そして副側ストレージ装置62Bは、この判断で肯定結果を得ると、そのオンデマンドコピー先行通知70において指定されたLUN及びトラック番号により特定される副側ストレージ装置62B内の論理トラックを先頭とする連続する所定数の論理トラックのうちのフラッシュコピーが完了していない論理トラックに対するオンデマンドコピーを実行する。
なお、本実施の形態の場合、オンデマンドコピー先行通知70のシーケンシャル情報が「1」であった場合に副側ストレージ装置62Bがオンデマンドコピーの対象とする論理トラック数は「5」に設定されている。よって、本実施の形態の場合、正側ストレージ装置62Aは、それぞれ連続する論理トラックをデータの書込み先として指定した書込み要求がホスト装置2から連続して与えられた場合、そのような書込み要求の5回に1回の割合でシーケンシャル情報を「1」に設定したオンデマンドコピー先行通知70を副側ストレージ装置62Bに送信することになる。
以上のような本実施の形態によるデータバックアップ方法を実現するための手段として、本実施の形態による正側ストレージ装置62Aの共有メモリ13Aには、図18(A)に示すシーケンシャル指示テーブル71と、図18(B)に示すボリューム情報テーブル72と、図18(C)に示すペア情報テーブル73と、図18(D)に示す複数の差分ビットマップ74とが格納されている。
シーケンシャル指示テーブル71は、上述のようにそれぞれ連続する論理トラックをデータ書込み先として指定した書込み要求がホスト装置61から連続して与えられた場合に、そのような書込み要求の5回に1回の割合でシーケンシャル情報を「1」に設定したオンデマンドコピー先行通知70を副側ストレージ装置62Bに送信するために利用されるテーブルであり、図18(A)に示すように、ボリューム番号欄71A、書込みトラック番号欄71B及び終了値欄71Cから構成される。
そしてボリューム番号欄71Aには、シーケンシャル情報を「1」に設定したオンデマンドコピー先行通知70を副側ストレージ装置70Bに送信したときに、そのオンデマンドコピー先行通知70においてデータの書込み先として指定したプライマリボリュームのLUNが格納される。また書込みトラック番号欄71Bには、かかるオンデマンドコピー先行通知70においてデータの書込み先として指定した論理トラックのトラック番号が格納され、終了値欄71Cには、そのオンデマンドコピー先行通知70が副側ストレージ装置62Bに与えられた結果、副側ストレージ装置62Bにおいてオンデマンドコピーが行われる連続する5つの論理トラックのうちの最後の論理トラックのトラック番号(書込みトラック欄71Bに格納されている数値に4を加えた値)が格納される。
ボリューム情報テーブル72、ペア情報テーブル73及び差分ビットマップ74については、それぞれ第1の実施の形態のボリューム情報テーブル41(図8(A))、ペア情報テーブル42(図8(B))又は差分ビットマップ43(図8(C))と同様のものであるため、ここでの説明は省略する。
一方、副側ストレージ装置62Bの共有メモリ13B(図16)には、図19(A)に示すボリューム情報テーブル75と、図19(B)に示すペア情報テーブル76と、図19(C)に示す複数の差分ビットマップ77とが格納されている。この場合、これらボリューム情報テーブル75、ペア情報テーブル76及び差分ビットマップ77も、第1の実施の形態のボリューム情報テーブル41、ペア情報テーブル42又は差分ビットマップ43と同様のものであるため、ここでの説明は省略する。
(3−2)本実施の形態によるバックアップコピー処理
次に、本実施の形態によるバックアップコピー処理の処理手順について説明する。
(3−2−1)正側バックアップコピー処理
図20は、正側ストレージ装置62A及び副側ストレージ装置62Bでフラッシュコピーを実行中に、そのフラッシュコピーの対象範囲内の論理トラックをデータの書込み先とする書込み要求がホスト装置61から正側ストレージ装置62Aに発行された場合に、正側ストレージ装置62Aの正側プロセッサ部63Aにより実行される正側バックアップコピー処理の処理手順を示す。
この場合、正側プロセッサ部63Aは、ホスト装置61からの書込み要求を受信すると、その書込み要求のシーケンシャルコード埋込み位置を参照して、その書込み要求がシーケンシャル書込み要求であるか否かを判断する(SP120)。
正側プロセッサ部63Aは、この判断で否定結果を得ると、その書き込み要求と、共有メモリ13Aに格納されているボリューム情報テーブル72、ペア情報テーブル73及び対応する差分ビットマップ74とを参照して、書込み要求において指定されたLUN及びトラック番号により特定される正側ストレージ装置62A内の論理トラックに対応する副側ストレージ装置62B内の論理トラックに対するフラッシュコピーが完了しているか否かを、その差分ビットマップ74の対応するビットの値に基づいて判断する(SP121)。
正側プロセッサ部63Aは、この判断で肯定結果を得ると、ステップSP129に進む。これに対して正側プロセッサ63Aは、この判断で否定結果を得ると、書込み要求において指定されたLUN及びトラック番号を格納したオンデマンドコピー先行通知70(図17)を副側ストレージ装置62Bに送信する(SP122)。なお、このときオンデマンドコピー先行通知70のシーケンシャル情報フィールド70Cには、ホスト装置61からの書込み要求がシーケンシャル書込み要求でないことを意味する「0」が格納される。
正側プロセッサ63Aは、この後、ステップSP129〜ステップSP134の処理を、図15について上述した第2の実施の形態による正側バックアップコピー処理のステップSP92〜ステップSP97と同様に処理することにより、必要に応じてオンデマンドコピー処理を実行すると共に、書込み要求において指定されたLUN及びトラック番号により特定される正側ストレージ装置62A内の論理トラックに書込み対象のデータを書き込み、この後、この正側バックアップコピー処理を終了する。
一方、正側プロセッサ部63Aは、ステップSP120の判断で肯定結果を得ると、シーケンシャル指示テーブル71(図18(A))を参照して、シーケンシャル情報が「1」に設定されたオンデマンドコピー先行通知70(図17)を副側ストレージ装置62Aに送信済みであるか否かを判断する(SP123)。
そして正側プロセッサ部63Aは、この判断で否定結果を得ると、副側ストレージ装置62B内のオンデマンドコピーを実行させるべきプライマリボリューム及び当該プライマリボリューム内の論理トラック(5トラック分)を決定し、決定結果をシーケンシャル指示テーブル71に登録する(SP124)。具体的に、正側プロセッサ部63Aは、シーケンシャル指示テーブル71上の1つのエントリ(行)を確保し、そのエントリのボリューム番号欄71Aに、書込み要求において指定されたLUNを格納すると共に、書込みトラック番号欄71Bに、当該書込み要求において指定されたトラック番号を格納する。また正側プロセッサ部63Aは、そのエントリの終了値欄71Cに、書込みトラック番号欄71Bに格納したトラック番号に4を加えた数値を格納する。そして正側プロセッサ部63Aは、この後、ステップSP127に進む。
また正側プロセッサ部63Aは、ステップSP123の判断で肯定結果を得ると、書込み要求において指定されたトラック番号が、既に副側ストレージ装置62Bでオンデマンドコピーが行われた複数の論理トラックのうちの最後の論理トラックのトラック番号よりも1少ないトラック番号であるか否かを判断する(SP125)。具体的に、正側プロセッサ部63Aは、シーケンシャル指定テーブル71を参照して、書込み要求においてデータの書込み先として指定された論理トラックのトラック番号が、終了値欄71Cに格納されているトラック番号よりも「1」少ないエントリ(行)が存在するか否かを判断する。
この判断で否定結果を得ることは、副側ストレージ装置62Bに送信する今回のオンデマンドコピー先行通知70が不要であることを意味する。かくして、このとき正側プロセッサ部63Aは、ステップSP129に進み、この後、ステップSP129〜ステップSP134を処理した後に、この正側バックアップコピー処理を終了する。
これに対してステップSP125の判断で肯定結果を得ることは、副側ストレージ装置62Bに送信する今回のオンデマンドコピー先行通知70のシーケンシャル情報を「1」に設定すべきであることを意味する。かくして、このとき正側プロセッサ部63Aは、副側ストレージ装置62B内のオンデマンドコピーを実行させるべきプライマリボリューム及び当該プライマリボリューム内の論理トラック(5トラック分)を決定し、決定結果をシーケンシャル指示テーブル71に登録する(SP126)。具体的に、正側プロセッサ部63Aは、シーケンシャル指示テーブル71上の1つのエントリ(行)を確保し、そのエントリのボリューム番号欄71Aに、書込み要求で指定されたLUNを格納すると共に、書込みトラック番号欄71Bに、当該書込み要求において指定されたトラック番号に2を加えた数値を格納する。また正側プロセッサ部63Aは、そのエントリの終了値欄71Cに、書込みトラック番号欄71Bに格納したトラック番号に4を加えた数値を格納する。
続いて、正側プロセッサ部63Aは、後述のように副側ストレージ装置62Bから送信された対応する差分ビットマップ74を参照して、その差分ビットマップ74において、ステップSP124又はステップSP126でオンデマンドコピーを実行すべき論理トラックとして決定された副側ストレージ装置62B内の5つの論理トラックにそれぞれ対応するすべてのビットの値が「1」であるか否かを判断する(SP127)。
この判断で否定結果を得ることは、かかる5つのすべての論理トラックに格納されているデータのフラッシュコピーが既に完了していることを意味する。かくして、このとき正側プロセッサ部63Aは、ステップSP129に進み、この後、ステップSP129〜ステップSP134を処理した後に、この正側バックアップコピー処理を終了する。
これに対してステップSP127の判断で肯定結果を得ることは、かかる5つの論理トラックのうち、少なくとも1つの論理トラックに格納されているデータのフラッシュコピーが完了していないことを意味する。かくして、このとき正側プロセッサ部63Aは、ステップSP124又はステップSP126においてシーケンシャル指示テーブル71に新たに登録した登録内容に従ったオンデマンドコピー先行通知70(図17)を生成し、生成したオンデマンドコピー先行通知70を副側ストレージ装置62Bに送信する(SP128)。具体的に、正側プロセッサ部63Aは、ステップSP124又はステップSP126においてシーケンシャル指示テーブル71に新たに登録したエントリのボリューム番号欄71Aに格納されたLUN及びトラック番号をそれぞれ書込みボリューム番号フィールド70A(図17)や書込みトラックフィールド70B(図17)に格納し、さらにシーケンシャル情報フィールド70C(図17)に「1」を格納したオンデマンドコピー先行通知70を生成し、これを副側ストレージ装置62Bに送信する。
そして正側プロセッサ部63Aは、この後、ステップSP129〜ステップSP134を処理した後に、この正側バックアップコピー処理を終了する。
(3−2−2)副側オンデマンドコピー処理先行通知受領処理及び副側書込み処理
一方、図21は、上述した正側バックアップコピー処理(図20)のステップSP128において正側ストレージ装置62Aが発行した上述のオンデマンドコピー先行通知70(図17)を受信した副側ストレージ装置62Bの副側プロセッサ部63Bにより実行されるオンデマンドコピー処理先行通知受領処理(以下、これを副側オンデマンドコピー処理先行通知受領処理と呼ぶ)の処理手順を示す。
副側プロセッサ部63Bは、かかるオンデマンドコピー先行通知70を受信すると、この副側オンデマンドコピー処理先行通知受領処理を開始し、まず、そのオンデマンドコピー先行通知70のシーケンシャル情報を参照して、そのときホスト装置61から正側ストレージ装置62Aに送信された書込み要求がシーケンシャル書込み要求であったか否かを判断する(SP140)。
副側プロセッサ部63Bは、この判断で否定結果を得ると、かかるオンデマンドコピー先行通知70において指定されたLUN及びトラック番号により特定される副側ストレージ装置62B内の論理トラックを対象として、図12について上述したオンデマンドコピー処理を実行し(SP141)、この後、この副側オンデマンドコピー処理先行通知受領処理を終了する。
これに対して、副側プロセッサ部63Bは、ステップSP140の判断で肯定結果を得ると、オンデマンドコピー先行通知70と、共有メモリ13B(図16)に格納されているボリューム情報テーブル75(図19(A))、ペア情報テーブル76(図19(B))及び対応する差分ビットマップ77(図19(C))とを参照して、その差分ビットマップ77における、そのオンデマンドコピー先行通知70において指定されたLUN及びトラック番号により特定される副側ストレージ装置62B内の論理トラックを先頭とする連続する5つの論理トラックにそれぞれ対応するすべてのビットの値が「1」であるか否かを判断する(SP142)。
このステップSP142の判断で肯定結果を得ることは、かかる5つの論理トラックに格納されているデータのフラッシュコピーが既に完了していることを意味する。かくして、このとき副側プロセッサ部63Bは、この副側オンデマンドコピー処理先行通知受領処理を終了する。
これに対して、ステップSP142の判断で否定結果を得ることは、かかる5つの論理トラックのうち、少なくとも1つの論理トラックに対するフラッシュコピーが完了していないことを意味する。かくして、このとき副側プロセッサ63Bは、ボリューム情報テーブル75、ペア情報テーブル76及び対応する差分ビットマップ77を参照して、その5つの論理トラックのうちのフラッシュコピーが完了していない論理トラックを1つ選択し、選択した論理トラックに格納されているデータを対応するセカンダリボリュームにコピー(オンデマンドコピー)するオンデマンドコピー処理を実行した後(SP143)、ステップSP142に戻る。
そして副側プロセッサ63Bは、この後、フラッシュコピーが完了していない各論理トラックについて同様の処理を実行し(SP142−SP143−SP142)、これら5つの論理トラックに対するフラッシュコピー又はオンデマンドコピーが完了することによりステップSP142において肯定結果を得ると、このオンデマンドコピー処理を終了する。
他方、図22は、図20について上述した正側バックアップコピー処理のステップSP131で正側ストレージ装置62Aから発行された上述の書込み要求を受信した副側ストレージ装置62Bの副側プロセッサ部63Bにより実行される副側書込み処理の処理手順を示す。
副側プロセッサ部63Bは、かかる書込み要求を受信すると、この副側書込み処理を開始し、まず、正側ストレージ装置62Aから送信される書込み対象のデータを、その書込み要求において指定されたLUN及びトラック番号により特定される副側ストレージ装置62B内の論理トラックに書き込む(SP150)。
続いて副側プロセッサ部63Bは、かかる書込み要求に従ったデータの書込み処理が完了した旨の完了報告と、そのとき実行している対応するフラッシュコピーの現在の進捗状況を表す差分ビットマップとを正側ストレージ装置62Aに送信し(SP151)、この後、この副側書込み処理を終了する。
なお、本実施の形態において、上述のように副側ストレージ装置62Bが書込み要求に従った書込み処理を完了した旨の完了報告を前段の正側ストレージ装置62Aに送信する際に、これと併せて自ストレージ装置の対応する差分ビットマップ77を当該正側ストレージ装置62Aに送信するようにしているが、例えば上述の正側差分ビットマップ更新処理(図39(A))及び副側差分ビットマップ送信処理(図39(B))の処理を実行することによって副側ストレージ装置62Bが差分ビットマップ77を定期的に前段の正側ストレージ装置62Aに送信するようにしても良い。
(3−3)本実施の形態の効果
以上のように本実施の形態によれば、正側ストレージ装置62Aから副側ストレージ装置62Bへのオンデマンドコピー先行通知70が、シーケンシャル書込み要求の5回に1回の割合でのみ送信されるため、第2の実施の形態による計算機システム50と比べてもより一層と不要なオンデマンドコピー先行通知40が正側ストレージ装置51Aから副側ストレージ装置51Bに送信されるのを防止することができる。かくするにつき、第1の実施の形態の計算機システム1により得られる効果に加えて、ネットワーク4をより有効に利用できるという効果をも得られる計算機システムを実現できる。
(4)第4の実施の形態
(4−1)第4の実施の形態による計算機システムの構成
図1との対応部分に同一符号を付して示す図23は、第4の実施の形態による計算機システム80を示す。この計算機システム80は、ローカルサイトLSに設置された正側ストレージ装置81Aと、それぞれ異なるリモートサイトRSに設置された複数(以下、Nとする)の副側ストレージ装置81Bとを備えて構成されている。そして、これら正側ストレージ装置81A及び複数の副側ストレージ装置81Bは、物理的には図23のようにネットワーク4を介して接続され、論理的には図24のようにカスケード接続されている。
なお、以下の説明においては、各リモートサイトRSにそれぞれ設置された副側ストレージ装置81Bのうち、正側ストレージ装置81Aにカスケード接続のM(M=1,2,……,N)番目に接続された副側ストレージ装置81Bを第Mの副側ストレージ装置81BMと呼ぶ場合がある。また以下の説明においては、第Mの副側ストレージ装置81BMが設置されたローカルサイトRSを第MのローカルサイトRSMと呼ぶ場合がある。
かかる構成を有する本実施の形態による計算機システム80では、正側ストレージ装置81A及び各副側ストレージ装置81Bにリモートコピー機能がそれぞれ搭載されており、図24に示すように、正側ストレージ装置81A及び各副側ストレージ装置81Bに、それぞれプライマリボリュームPVOLが設けられている。また各副側ストレージ装置81Bに設けられたプライマリボリュームPVOLは、それぞれカスケード接続の接続順に、前段の正側ストレージ装置81A又は副側ストレージ装置81B内の対応するプライマリボリュームPVOLと順次リモートコピーのコピーペアに設定されている。
ただし、以下においては、正側ストレージ装置81A内のプライマリボリュームPVOLと上述のように直接又は間接的にコピーペアに設定された各副側ストレージ装置81B内のプライマリボリュームPVOLには、正側ストレージ装置81A内のプライマリボリュームPVOLと同じLUNが付与されるものとして説明する。また正側ストレージ装置81A及び副側ストレージ装置81B間や、副側ストレージ装置81B同士間のリモートコピーでは、コピー元のプライマリボリュームPVOL内の論理トラックに格納されているデータは、コピー先のプライマリボリュームPVOL内の当該論理トラック(コピー元のプライマリボリュームPVOL内の論理トラック)のトラック番号と同じトラック番号の論理トラックにコピーされるものとして説明する。
かくして本計算機システム80では、ホスト装置2が正側ストレージ装置81A内のプライマリボリュームPVOLにデータを書き込むと、図6について上述した場合と同様にして、そのデータが第1の副側ストレージ装置81B1の対応するプライマリボリュームPVOLにリモートコピーされ、この後、そのデータがカスケード接続の接続順で第2の副側ストレージ装置及びこれよりも後段の各副側ストレージ装置81B内の対応するプライマリボリュームPVOLに順次リモートコピーされる。これにより正側ストレージ装置81AのプライマリボリュームPVOLに書き込まれたデータと同じデータが各副側ストレージ装置81B内の対応するプライマリボリュームPVOLにそれぞれバックアップされる。
また本計算機システム80の場合、正側ストレージ装置81A及び各副側ストレージ装置81Bには、それぞれフラッシュコピー機能が搭載されており、図24に示すように、それぞれ同一ストレージ装置内の上述したプライマリボリュームPVOLとフラッシュコピーのコピーペアに設定されたセカンダリボリュームSVOLが設けられている。
そして正側ストレージ装置81Aは、ホスト装置2からプライマリボリュームPVOL及び当該プライマリボリュームPVOL内の対象範囲を指定したフラッシュコピー指示が与えられると、このフラッシュコピー指示において指定されたプライマリボリュームPVOL内の当該フラッシュコピー指示において指定された対象範囲内の各論理トラックにそれぞれ格納されているデータを対応するセカンダリボリュームSVOLにコピー(フラッシュコピー)する。
また、このフラッシュコピー指示は正側ストレージ装置81Aから第1の副側ストレージ装置81B1に転送される。そして第1の副側ストレージ装置81B1は、正側ストレージ装置81Aから送信された上述のフラッシュコピー指示を受信すると、正側ストレージ装置81Aと同様に、このフラッシュコピー指示において指定されたプライマリボリュームPVOL内の当該フラッシュコピー指示において指定された範囲内の各論理トラックにそれぞれ格納されているデータを対応するセカンダリボリュームSVOLにコピー(フラッシュコピー)する。また第1の副側ストレージ装置81B1は、かかるフラッシュコピー指示を第2の副側ストレージ装置に転送する。また第2の副側ストレージ装置及び当該第2の副側ストレージ装置よりも後段の各副側ストレージ装置81Bも、同様の処理を実行する。
これによりフラッシュコピー指示において指定された正側ストレージ装置81AのプライマリボリュームPVOL内の対象とすべき各論理トラックに格納されたデータが当該プライマリボリュームPVOLとフラッシュコピーのコピーペアに設定されたセカンダリボリュームSVOLにバックアップされると共に、そのデータと同じデータが各副側ストレージ装置81B内の対応するセカンダリボリュームSVOLにもそれぞれバックアップされる。
かかる構成に加えて、本計算機システム80の場合、各副側ストレージ装置81Bは、フラッシュコピーの実行中に、適宜、そのフラッシュコピーの進捗状況を表す差分ビットマップを前段の正側ストレージ装置81A又は副側ストレージ装置81Bに送信する。
そして各副側ストレージ装置81Bは、後段の副側ストレージ装置81Bから送信される上述の差分ビットマップを受信したときには、これを前段の正側ストレージ装置81A又は副側ストレージ装置81Bに転送する一方、その差分ビットマップを自ストレージ装置内の共有メモリ13A,13Bに格納する。
従って、本計算機システム80の場合、正側ストレージ装置81A及び各副側ストレージ装置81Bは、それぞれ自ストレージ装置において実行しているフラッシュコピーを管理するための差分ビットマップに加えて、カスケード接続の後段に位置するすべての副側ストレージ装置81Bに関して、その副側ストレージ装置81Bで実行中のフラッシュコピーの進捗状況をそれぞれ表す差分ビットマップを保持することになる。
そして正側ストレージ装置81Aは、この後、正側ストレージ装置81A及び各副側ストレージ装置81Bで実行中のフラッシュコピーの対象範囲内の論理トラックをデータ書込み先とする書込み要求がホスト装置2から与えられた場合、上述のように保持している各副側ストレージ装置81Bについての差分ビットマップを参照して、その書込み要求において指定された論理トラックに対するフラッシュコピーが完了していない副側ストレージ装置81Bが存在するか否かを判断し、肯定結果を得た場合には、図7について上述したオンデマンドコピー先行通知40を第1の副側ストレージ装置81B1に送信する。
第1の副側ストレージ装置81B1は、オンデマンドコピー先行通知40において指定されたLUN及びトラック番号により特定される当該第1の副側ストレージ装置81B1内の論理トラックに対するフラッシュコピーを完了していない場合には、直ちにその論理トラックに格納されたデータを対応するセカンダリボリュームSVOLにコピー(オンデマンドコピー)する。
また第1の副側ストレージ装置81B1は、上述のように共有メモリ13Bに保持している自ストレージ装置よりも後段の各副側ストレージ装置81Bについての差分ビットマップを参照して、これらの副側ストレージ装置81Bのうちの少なくとも1つの副側ストレージ装置81Bにおいて、オンデマンドコピー先行通知40において指定されたLUN及びトラック番号により特定されるその副側ストレージ装置81B内の論理トラックに対するフラッシュコピーが完了していない場合には、そのオンデマンドコピー先行通知40を第2の副側ストレージ装置81B2に転送する。
また第2の副側ストレージ装置81B2及びこれよりも後段の各副側ストレージ装置81Bもそれぞれ第1の副側ストレージ装置と同様の処理をそれぞれ実行する。このような処理により、正側ストレージ装置81A及び各副側ストレージ装置81Bで実行中のフラッシュコピーの対象領域内の論理トラックをデータ書込み先とする書込み要求がホスト装置2から正側ストレージ装置81Aに与えられた場合に、当該書込み要求において指定されたLUNが付与されたプライマリボリューム内の当該書込み要求において指定されたトラック番号の論理トラックに対するフラッシュコピーが完了していないすべての副側ストレージ装置81Bにおいて、その論理トラックに格納されたデータのオンデマンドコピーが実行されることになる。
以上のような本実施の形態によるバックアップコピー方法を実現するための手段として、正側ストレージ装置81Aの共有メモリ13Aには、図25(A)に示すボリューム情報テーブル90と、図25(B)に示すペア情報テーブル91と、図25(C)に示す複数の差分ビットマップ92とが格納されている。
ボリューム情報テーブル90は、第2の実施の形態のボリューム情報テーブル53(図13(A))と同様のものであるため、その詳細の説明は省略する。
ペア情報テーブル91は、正側ストレージ装置81A内に設定されたコピーペアと、そのコピーペアに対応する後段の各副側ストレージ装置81B内のコピーペアとを管理するために利用されるテーブルである。なお、「正側ストレージ装置81A内のコピーペアと対応する後段の副側ストレージ装置81B内のコピーペア」とは、後段の副側ストレージ装置81Bに設定されたコピーペアのうち、正側ストレージ装置81A内のそのコピーペアを構成するプライマリボリュームに書き込まれたデータが直接又は間接的にリモートコピーされる後段の副側ストレージ装置81B内のプライマリボリュームをフラッシュコピーのコピー元とするコピーペアを指す。
このペア情報テーブル91は、図25(B)に示すように、ペア番号欄91A、プライマリボリューム番号欄91B、セカンダリボリューム番号欄91C及び正側ビットマップ番号欄91Dと、自ストレージ装置よりも後段の各副側ストレージ装置81Bにそれぞれ対応させて設けられた複数の副側ビットマップ番号欄91Eとから構成される。
そしてペア番号欄91A、プライマリボリューム番号欄91B、セカンダリボリューム番号欄91C及び正側ビットマップ番号欄91Dには、それぞれ第2の実施の形態のペア情報テーブル54(図13(B))の対応する欄(ペア番号欄54A、プライマリボリューム番号欄54B、セカンダリボリューム番号欄54C又は正側ビットマップ番号欄54D)に格納される情報と同じ情報が格納される。
また各副側ビットマップ番号欄91Eには、その副側ビットマップ番号欄91Eに対応する副側ストレージ装置81B内に設けられた対応するコピーペアに関してその副側ストレージ装置81Bから送信されてきた差分ビットマップ92のビットマップ番号が格納される。
従って、例えば図25(B)では、このペア情報テーブル91を保持する正側ストレージ装置81A内の「0」というボリューム番号の論理ボリュームをプライマリボリュームとし、「2」というボリューム番号の論理ボリュームをセカンダリボリュームとする「1」というペア番号のコピーペアと対応付けられた差分ビットマップ92のビットマップ番号は「1」であり、正側ストレージ装置81Aよりも後段の各副側ストレージ装置81B(第1の副側ストレージ装置81B1、……、第Nの副側ストレージ装置81BN)内のそのコピーペアに対応するコピーペアについてこれらの副側ストレージ装置81Bからそれぞれ送信されてきた差分ビットマップ92のビットマップ番号がそれぞれ「100」、……、「200」であることが示されている。
各差分ビットマップ92は、いずれも第2の実施の形態による差分ビットマップ55(図13(C))と同様の構成を有する。ただし、本実施の形態の場合、上述のように正側ストレージ装置81Aは、各副側ストレージ装置81Bにおいてそれぞれ実行中のフラッシュコピーの進捗状況を表す差分ビットマップ92をも保持している。
一方、カスケード接続の最終段の副側ストレージ装置81B(第Nの副側ストレージ装置81BN)以外の各副側ストレージ装置81Bの共有メモリ13B(図23)には、図26(A)に示すボリューム情報テーブル93と、図26(B)に示すペア情報テーブル94と、図26(C)に示す複数の差分ビットマップ95とが格納されている。なお、この図26は、正側ストレージ装置81AとM番目にカスケード接続された副側ストレージ装置81B(第Mの副側ストレージ装置81BM)が保持するボリューム情報テーブル93、ペア情報テーブル94及び差分ビットマップ95の構成例を示す。
ボリューム情報テーブル93は、第2の実施の形態のボリューム情報テーブル56(図14(A))と同様のものであるため、その詳細の説明は省略する。
ペア情報テーブル94は、第Mのストレージ装置81BM内に設定されたコピーペアと、そのコピーペアに対応する後段の各副側ストレージ装置81B内のコピーペアを管理するために利用されるテーブルであり、図26(B)に示すように、ペア番号欄94A、プライマリボリューム番号欄94B、セカンダリボリューム番号欄94C及び自ストレージ用ビットマップ番号欄94Dと、後段の各副側ストレージ装置81Bにそれぞれ対応させて設けられた複数の後段ストレージ用ビットマップ番号欄94Eとから構成される。
そしてペア番号欄94A、プライマリボリューム番号欄94B、セカンダリボリューム番号欄94C及び自ストレージ用ビットマップ番号欄94Dには、それぞれ第2の実施の形態のペア情報テーブル57(図14(B))の対応する欄(ペア番号欄57A、プライマリボリューム番号欄57B、セカンダリボリューム番号欄57C又はビットマップ番号欄57D)に格納される情報と同じ情報が格納される。
また各後段ストレージ用ビットマップ番号欄94Eには、対応する副側ストレージ装置81Bから送信されてきた、その副側ストレージ装置81B内に設けられた対応するコピーペアにおいて実行されているフラッシュコピーの進捗状況を表す差分ビットマップ95のビットマップ番号が格納される。
従って、例えば図26(B)では、第Mの副側ストレージ装置81BM内の「5」というボリューム番号の論理ボリュームをプライマリボリュームとし、「8」というボリューム番号の論理ボリュームをセカンダリボリュームとする「2」というペア番号のコピーペアと対応付けられた差分ビットマップ95のビットマップ番号は「2」であり、第Mの副側ストレージ装置81BMよりも後段の各副側ストレージ装置81B(第(M+1)の副側ストレージ装置81B(M+1)、……、第Nの副側ストレージ装置81BN)内の対応するコピーペアにおいて実行されているフラッシュコピーの進捗状況を表す差分ビットマップ95のビットマップ番号がそれぞれ「100」、……、「200」であることが示されている。
各差分ビットマップ95は、いずれも第2の実施の形態による差分ビットマップ58(図14(C))と同様の構成を有する。ただし、本実施の形態の場合、上述のように各副側ストレージ装置81Bは、後段の各副側ストレージ装置81Bにおいてそれぞれ実行中のフラッシュコピーの進捗状況を表す差分ビットマップ95をも保持している。
他方、カスケード接続の最終段の副側ストレージ装置81B(第Nの副側ストレージ装置81BN)の共有メモリ13B(図23)には、図27(A)に示すボリューム情報テーブル96と、図27(B)に示すペア情報テーブル97と、図27(C)に示す1又は複数の差分ビットマップ98とが格納されている。
ボリューム情報テーブル96は、第2の実施の形態のボリューム情報テーブル56(図14(A))と同様のものであるため、その詳細の説明は省略する。
ペア情報テーブル97は、第Nの副側ストレージ装置81BN内に設定されたコピーペアを管理するために利用されるテーブルであり、図27(B)に示すように、ペア番号欄97A、プライマリボリューム番号欄97B、セカンダリボリューム番号欄97C及び自ストレージ用ビットマップ番号欄97Dから構成される。
そしてペア番号欄97A、プライマリボリューム番号欄97B、セカンダリボリューム番号欄97C及び自ストレージ用ビットマップ番号欄97Dには、それぞれ第2の実施の形態のペア情報テーブル57(図14(B))の対応する欄(ペア番号欄57A、プライマリボリューム番号欄57B、セカンダリボリューム番号欄57C又はビットマップ番号欄57D)に格納される情報と同じ情報が格納される。
従って、例えば図27(B)では、第Nのストレージ装置81BN内の「0」というボリューム番号の論理ボリュームをプライマリボリュームとし、「2」というボリューム番号の論理ボリュームをセカンダリボリュームとする「1」というペア番号のコピーペアにおいて実行されているフラッシュコピーの進捗状況を表す差分ビットマップ98のビットマップ番号は「1」であることが示されている。
各差分ビットマップ98は、いずれも第2の実施の形態による差分ビットマップ58(図14(C))と同様のものであるため、その詳細の説明は省略する。
(4−2)本実施の形態によるバックアップコピー処理
(4−2−1)正側バックアップコピー処理
次に、本実施の形態によるバックアップコピー処理の処理手順について説明する。図28は、正側ストレージ装置81A及び各副側ストレージ装置81Bでフラッシュコピー処理(図10)を実行中に、そのフラッシュコピーの対象領域内の論理トラックをデータの書込み先とする書込み要求がホスト装置2から正側ストレージ装置81Aに発行された場合に、正側ストレージ装置81Aの正側プロセッサ部82A(図23)により実行される正側バックアップコピー処理の処理手順を示す。
この場合、正側プロセッサ部82Aは、かかるホスト装置2からの書込み要求を受信すると、この正側バックアップコピー処理を開始し、そのとき対象とする副側ストレージ装置81Bが正側ストレージ装置81Aに何番目にカスケード接続されたものであるかを表すパラメータxを「1」に設定(初期化)する(SP160)。従って、例えばxが「1」の場合には、そのとき対象とする副側ストレージ装置81Bは第1の副側ストレージ装置81B1であり、xが「2」の場合には、そのとき対象とする副側ストレージ装置81Bは第2の副側ストレージ装置81B2である。
続いて、正側プロセッサ部82Aは、その書き込み要求と、共有メモリ13Aに格納されているボリューム情報テーブル90、ペア情報テーブル91及び対応する差分ビットマップ92とを参照して、そのとき対象としている副側ストレージ装置81Bに対応する差分ビットマップ92における、かかる書込み要求において指定されたLUN及びトラック番号により特定されるその副側ストレージ装置81B内の論理トラックに対応するビットが「1」であるか否かを判断する(SP161)。
この判断で否定結果を得ることは、そのとき対象としている副側ストレージ装置81B内のかかる書込み要求において指定されたLUN及びトラック番号により特定される論理トラックに対するフラッシュコピーが完了していないことを意味する。かくして、このとき正側プロセッサ部82Aは、その書込み要求において指定されたLUN及びトラック番号を格納したオンデマンドコピー先行通知40を第1の副側ストレージ装置81Bに送信し(SP164)、この後、ステップSP165に進む。
これに対してステップSP161の判断で肯定結果を得ることは、そのとき対象としている副側ストレージ装置81B内のかかる書込み要求において指定されたLUN及びトラック番号により特定される論理トラックに対するフラッシュコピーが既に完了していることを意味する。かくして、このとき正側プロセッサ部82Aは、ステップSP161の処理をすべての副側ストレージ装置81Bについて実行し終えたか否かを判断する(SP162)。
正側プロセッサ部82Aは、この判断で否定結果を得ると、パラメータxをインクリメント(xの値を1増加)した後(SP163)、ステップSP161に戻る。そして正側プロセッサ部82Aは、この後、同様の処理(SP161〜SP163−SP161)を繰り返す。
そして正側プロセッサ部82Aは、ステップSP161で肯定結果を得ないまますべての副側ストレージ装置81BについてSP161〜SP163の処理を実行し終える(つまりすべての副側ストレージ装置81Bにおいて、書込み要求において指定されたLUN及びトラック番号により特定される論理トラックに対するフラッシュコピーが完了している)と、ステップSP165に進む。
そして正側プロセッサ63Aは、この後、ステップSP165〜ステップSP170の処理を、図15について上述した第2の実施の形態による正側バックアップコピー処理のステップSP92〜ステップSP97と同様に処理することにより、必要に応じてオンデマンドコピー処理を実行すると共に、書込み要求において指定されたLUN及びトラック番号により特定される正側ストレージ装置81A内の論理トラックに対して書込み対象のデータを書き込む。そして正側プロセッサ部63Aは、この後、この正側バックアップコピー処理を終了する。
(4−2−2)本実施の形態による副側オンデマンドコピー処理先行通知受領処理及び副側書込み処理
一方、図29は、正側ストレージ装置81A又は前段の副側ストレージ装置81Bから発行された上述のオンデマンドコピー先行通知40(図7)を受信した第Mのストレージ装置81BM(M=1,2,……,N−1)の副側プロセッサ部82B(図23)により実行される第1の副側オンデマンドコピー処理先行通知受領処理の処理手順を示す。
副側プロセッサ部82Bは、かかるオンデマンドコピー先行通知40を受信すると、この第1の副側オンデマンドコピー処理先行通知受領処理を開始し、まず、そのとき対象としている副側ストレージ装置81Bが正側ストレージ装置81Aに何番目にカスケード接続されたものであるかを表すパラメータxを「M+1」に設定(初期化)する(SP180)。従って、例えばxが「M+1」の場合には、そのとき対象とする副側ストレージ装置81Bは第(M+1)の副側ストレージ装置81B(M+1)であり、xが「M+2」の場合には、そのとき対象とする副側ストレージ装置81Bは第(M+2)の副側ストレージ装置81B(M+2)である。
続いて、副側プロセッサ82Bは、そのオンデマンドコピー先行通知40と、共有メモリ13Bに格納されているボリューム情報テーブル93、ペア情報テーブル94及び対応する差分ビットマップ95とを参照して、そのとき対象としている副側ストレージ装置81Bに対応する差分ビットマップ95における、かかるオンデマンドコピー先行通知40においてデータの書込み先として指定されたプライマリボリューム内の当該書込み先として指定された論理トラックに対応するビットが「1」であるか否かを判断する(SP181)。
この判断で否定結果を得ることは、そのとき対象としている副側ストレージ装置81B内のかかるオンデマンドコピー先行通知40において指定されたLUN及びトラック番号により特定される論理トラックに対するフラッシュコピーが完了していないことを意味する。かくして、このとき副側プロセッサ部82Bは、前段の正側ストレージ装置81A又は副側ストレージ装置81Bから送信されてきたオンデマンドコピー先行通知40を次段の副側ストレージ装置81Bに送信し(SP184)、この後、ステップSP185に進む。
これに対してステップSP181の判断で肯定結果を得ることは、そのとき対象としている副側ストレージ装置81B内のかかるオンデマンドコピー先行通知40において指定されたLUN及びトラック番号により特定される論理トラックに対するフラッシュコピーが既に完了していることを意味する。かくして、このとき副側プロセッサ部82Bは、ステップSP181の処理を、自ストレージ装置よりも後段のすべての副側ストレージ装置81Bについて実行し終えたか否かを判断する(SP182)。
副側プロセッサ部82Bは、この判断で否定結果を得ると、パラメータxをインクリメント(xの値を1増加)した後(SP183)、ステップSP181に戻る。そして副側プロセッサ部82Bは、この後、同様の処理(SP181〜SP183−SP181)を繰り返す。
そして副側プロセッサ部82Bは、ステップSP181で肯定結果を得ないまますべての副側ストレージ装置81BについてSP181〜SP183の処理を実行し終える(つまり自ストレージ装置よりも後段のすべての副側ストレージ装置81Bにおいて、書込み要求において指定されたLUN及びトラック番号により特定される論理トラックに対するフラッシュコピーが完了している)と、ステップSP185に進む。
続いて、副側プロセッサ部82Bは、図12について上述したオンデマンドコピー処理を実行し(SP185)この後、この第1の副側オンデマンドコピー処理先行通知受領処理を終了する。
これに対して、図30は、図28について上述した正側バックアップコピー処理のステップSP167において正側ストレージ装置81Aから転送された書込み要求又は前段の各副側ストレージ装置81Bを順次介して転送されてきた当該書込み要求を受信した副側ストレージ装置81Bの副側プロセッサ部82Bにより実行される副側書込み処理の処理手順を示す。なお、この図30は、正側ストレージ装置81AとM(M=1,2,……N−1)番目にカスケード接続された副側ストレージ装置81B(第Mの副側ストレージ装置81BM)の副側プロセッサ部82Bにより実行される第1の副側書込み処理の処理手順である。
この場合、副側プロセッサ部82Bは、前段の正側ストレージ装置81A又は副側ストレージ装置81Bから転送されたかかる書込み要求を受信すると、この第1の副側書込み処理を開始し、まず、かかる書込み要求と共に与えられた書込み対象のデータを、その書込み要求において指定されたLUN及びトラック番号により特定される当該副側ストレージ装置81B内の論理トラックに書き込み(SP190)、この後、その書込み要求及び書込み対象のデータを次段の副側ストレージ装置81Bに転送する(SP191)。
この後、副側プロセッサ部82Bは、次段の副側ストレージ装置81Bから後述する完了報告及び差分ビットマップ95(図26(C)又は図27(C))のデータが送信されるのを待ち受ける。
そして副側プロセッサ部82Bは、やがてかかる完了報告及び差分ビットマップ95のデータを受信すると(SP192)、この差分ビットマップをコピーするようにして、それまで保持していたその副側ストレージ装置81Bに対応する差分ビットマップ95を更新する(SP193)。
次いで、副側プロセッサ82Bは、書込み要求に従ったデータの書込み処理が完了した旨のデータ書込み完了報告と、そのとき自ストレージ装置で実行している対応するフラッシュコピーの進捗状況を管理するための差分ビットマップ95と、ステップSP192において受信したすべての差分ビットマップ95とを前段の正側ストレージ装置81A及び副側ストレージ装置81Bに送信し(SP194)、この後、この第1の副側書込み処理を終了する。
他方、図31は、前段の副側ストレージ装置81Bから転送されてきた上述のオンデマンドコピー先行通知40(図7)を受信した最終段の副側ストレージ装置81B(第Nの副側ストレージ装置81BN)の副側プロセッサ部82B(図23)により実行される第2の副側オンデマンドコピー処理先行通知受領処理の処理手順を示す。
副側プロセッサ部82Bは、かかるオンデマンドコピー先行通知40を受信すると、この第2の副側オンデマンドコピー処理先行通知受領処理を開始し、図12について上述したオンデマンドコピー処理を実行することにより、かかるオンデマンドコピー先行通知40に従ったオンデマンドコピーを実行し(SP200)、この後、この第2の副側オンデマンドコピー処理先行通知受領処理を終了する。
これに対して、図32は、図28について上述した正側バックアップコピー処理のステップSP167において正側ストレージ装置81Aから転送された後、前段の各副側ストレージ装置81Bを順次介して転送されてきた書込み要求を受信した最終段の副側ストレージ装置81B(第Nの副側ストレージ装置81BN)の副側プロセッサ部82Bにより実行される第2の副側書込み処理の処理手順を示す。
この場合、かかる副側プロセッサ部82Bは、前段の副側ストレージ装置81Bよりかかる書込み要求を受信すると、この書込み処理を開始し、まず、かかる書込み要求と共に与えられた書込み対象のデータ(つまりホスト装置2により正側ストレージ装置81A内の対応するプライマリボリュームに書き込まれたデータ)を、その書込み要求において指定されたLUN及びトラック番号により特定される当該副側ストレージ装置81B内の論理トラックに書き込む(SP210)。
続いて、副側プロセッサ部82Bは、書込み要求に従ったデータの書込み処理が完了した旨の完了報告と、そのとき自ストレージ装置で実行している対応するフラッシュコピーの進捗状況を管理するための差分ビットマップ98とを前段の副側ストレージ装置81B(第(N−1)の副側ストレージ装置81B(N−1))に送信し(SP211)、この後、この第2の副側書込み処理を終了する。
なお、本実施の形態においては、上述のように各副側ストレージ装置81Bが書込み要求に従った書込み処理を完了した旨の完了報告を前段の正側ストレージ装置81A又は前段の副側ストレージ装置81Bに送信する際、これと併せて自ストレージ装置の対応する差分ビットマップ95,98や後段の副側ストレージ装置102Bから転送されてきた差分ビットマップ95,98を当該正側ストレージ装置81A又は当該副側ストレージ装置81Bに送信するようにしているが、例えば各副側ストレージ装置81Bが差分ビットマップ95,98を定期的に前段の正側ストレージ装置81A又は前段の副側ストレージ装置81Bに送信するようにしても良い。
図40(C)は、第Nの副側ストレージ装置81BNが差分ビットマップ98を前段の副側ストレージ装置81Bに送信する場合に、第Nの副側ストレージ装置81BNの副側プロセッサ部82Bにより実行される第2の副差分ビットマップ送信処理を示し、図40(B)は、第Mの副側ストレージ装置81BM(M=1,2,……,N−1)が差分ビットマップ95,98を定期的に前段の正側ストレージ装置81A及び前段の副側ストレージ装置81Bに送信する場合に、第Mの副側ストレージ装置81BM(M=1,2,……,N−1)の副側プロセッサ部82Bにより実行される第1の副側差分ビットマップ送信処理を示し、図40(A)は、このとき正側ストレージ装置81Aの正側プロセッサ部82Aにより実行される正側差分ビットマップ更新処理の処理手順を示す。
第Nの副側ストレージ装置81BNの副側プロセッサ部82Bは、定期的にこの図40(C)に示す第2の副側差分ビットマップ送信処理を開始し、前段の副側ストレージ装置81Bへ第Nの副側ストレージ装置81BN内で実行している対応するフラッシュコピーの現状の進捗状況を表す差分ビットマップ98を送信する(SP310)。副側プロセッサ部82Bは、この後、この第2の副側差分ビットマップ送信処理を終了する。
一方、第Mの副側ストレージ装置81BM(M=1,2,……,N−1)の各副側プロセッサ部82Bは、後段の副側ストレージ装置81Bより差分ビットマップ95,98を受信すると、図40(B)に示す第1の副側差分ビットマップ送信処理を開始し、受信した差分ビットマップ95,98をコピーするようにして、対応する副側差分ビットマップ95を更新する(SP300)。そして、この後第Mの副側ストレージ装置81BM(M=1,2,……,N−1)の副側プロセッサ部82Bは、正側ストレージ装置81A及び前段の副側ストレージ装置81Bへ第Mの副側ストレージ装置81BM(M=1,2,……,N−1)内で実行している対応するフラッシュコピーの現状の進捗状況を表す差分ビットマップ95及び後段の副側ストレージ装置から受信した差分ビットマップ95,98を送信する(SP301)。副側プロセッサ部82Bは、この後、この第1の副側差分ビットマップ送信処理を終了する。
他方、正側ストレージ装置81Aの正側プロセッサ部82Aは、かかる差分ビットマップ95,98を受信すると、図40(A)に示す正側差分ビットマップ更新処理を開始し、受信した差分ビットマップ95,98をコピーするようにして、対応する副側差分ビットマップ92を更新する(SP290)。そして、この後正側ストレージ装置81Aの正側プロセッサ部82Aは、この差分ビットマップ更新処理を終了する。
(4−3)本実施の形態の効果
以上のように本実施の形態によれば、副側ストレージ装置81Bが複数存在する場合においても、必要なオンデマンドコピーがこれら複数の副側ストレージ装置3B及び正側ストレージ装置3Aで並行して行われるため、一連の処理に要する時間を短縮することができる。かくするにつき、ホスト装置2からの書込み要求に対するストレージ装置の応答性能を向上させ得る計算機システムを実現できる。
(5)第5の実施の形態
(5−1)第5の実施の形態による計算機システムの構成
図23において、100は全体として第5の実施の形態による計算機システムを示す。この計算機システム100は、ホスト装置101から発行された書込み要求がシーケンシャル書込み要求である場合に、これに応じたオンデマンドコピー先行通知70(図17)が正側ストレージ装置102Aから第1の副側ストレージ装置102Bに与えられると共に、このオンデマンドコピー先行通知70が第1の副側ストレージ装置102Bから後段の各副側ストレージ装置102Bに順次転送され、各副側ストレージ装置102Bがそれぞれこのオンデマンドコピー先行通知70に基づいて、複数トラック単位でオンデマンドコピー処理を実行する点を除いて第4の実施の形態による計算機システム80と同様に構成されている。
なお、以下の説明においても、正側ストレージ装置102A内のプライマリボリュームと直接又は間接的にコピーペアに設定された各副側ストレージ装置102B内のプライマリボリュームには、正側ストレージ装置102A内のプライマリボリュームと同じLUNが付与されるものとして説明する。また正側ストレージ装置102A及び副側ストレージ装置102B間や、副側ストレージ装置102B同士間のリモートコピーでは、コピー元のプライマリボリューム内の論理トラックに格納されているデータは、コピー先のプライマリボリューム内の当該論理トラック(コピー元のプライマリボリューム内の論理トラック)のトラック番号と同じトラック番号の論理トラックにコピーされるものとして説明する。
さらに以下の説明においても、各リモートサイトRSにそれぞれ設置された副側ストレージ装置102Bのうち、正側ストレージ装置102AにM(M=1,2,……,N)番目にカスケード接続された副側ストレージ装置102Bを第Mの副側ストレージ装置102BMと呼ぶ場合があり、第Mの副側ストレージ装置102BMが設置されたローカルサイトRSを第MのローカルサイトRSMと呼ぶ場合がある。
本計算機システム100において、ホスト装置101は、第3の実施の形態と同様に、シーケンシャルな書込み要求を正側ストレージ装置102Aに送信する場合、その書込み要求がシーケンシャル書込み要求であることを表すコードを当該書込み要求のシーケンシャルコード埋込み位置に埋め込む。
正側ストレージ装置102Aは、当該正側ストレージ装置102A及び各副側ストレージ装置102Bにおいてフラッシュコピーを実行中に、そのフラッシュコピーの対象範囲内の論理トラックをデータの書込み先とする書込み要求がホスト装置101から与えられた場合、書込み要求のシーケンシャルコード埋込み位置を参照して、その書込み要求がシーケンシャル書込み要求であるか否かを判断する。
そして正側ストレージ装置102Aは、この判断で肯定結果を得ると、共有メモリ13Aに格納されている、各副側ストレージ装置102Bにおいてそれぞれ実行中の対応するフラッシュコピーの進捗状況を表す各差分ビットマップを参照して、複数の副側ストレージ装置102Bの中に、書込み要求において指定されたLUN及びトラック番号により特定される論理トラックを先頭とする連続する5つのすべての論理トラックについてのフラッシュコピーが完了していない副側ストレージ装置102Bが存在するか否かを判断する。そして正側ストレージ装置102Aは、この判断で肯定結果を得ると、図17について上述したオンデマンドコピー先行通知70を第1の副側ストレージ装置102B1に送信する。この際、正側ストレージ装置102Aは、オンデマンドコピー先行通知70のシーケンシャル情報を「1」に設定する。
また正側ストレージ装置102Aは、共有メモリ13Aに格納されている自ストレージ装置用の対応する差分ビットマップを参照して、当該正側ストレージ装置102Aのその書込み要求において指定されたLUN及びトラック番号により特定される正側ストレージ装置102A内の論理トラックに対するフラッシュコピーが完了しているか否かを判断する。そして正側ストレージ装置102Aは、この判断で否定結果を得ると、その論理トラックに格納されているデータを対応するセカンダリボリュームにオンデマンドコピーする。また正側ストレージ装置102Aは、この後、後段の副側ストレージ装置102B(第1の副側ストレージ装置102B1)にかかる書込み要求及び書込み対象のデータを転送する。
第1の副側ストレージ装置102B1は、オンデマンドコピー先行通知70を受信すると、まず、当該オンデマンドコピー先行通知70に格納されたシーケンシャル情報を参照して、そのときホスト装置101から正側ストレージ装置102Aに送信された書込み要求がシーケンシャル書込み要求であるか否かを判断する。そして第1の副側ストレージ装置102Bは、この判断で肯定結果を得ると、共有メモリ13Aに格納されている、後段の各副側ストレージ装置102Bにおいてそれぞれ実行中の対応するフラッシュコピーの進捗状況を表す各差分ビットマップを参照して、オンデマンドコピー先行通知70において指定されたLUN及びトラック番号により特定される第1の副側ストレージ装置102B内の論理トラックを先頭とする連続する5つのすべての論理トラックについてのフラッシュコピーが完了していない副側ストレージ装置102Bが存在するか否かを判断する。そして第1の副側ストレージ装置102Bは、この判断で肯定結果を得ると、そのオンデマンドコピー先行通知70を第2の副側ストレージ装置102B2に転送する。
続いて、第1の副側ストレージ装置102Bは、共有メモリ13Aに格納されている、対応する差分ビットマップを参照して、オンデマンドコピー先行通知70において指定されたLUN及びトラック番号により特定されるLUN及びトラック番号により特定される第1の副側ストレージ装置102B内の論理トラックのうちのフラッシュコピー処理が完了していない論理トラックについて、オンデマンドコピーを実行する。
さらに第1の副側ストレージ装置102Bは、この後、正側ストレージ装置102Aから転送された書込み要求及び書込み対象のデータを受信すると、その書込み要求において指定されたLUN及びトラック番号により特定される第1の副側ストレージ装置102B内の論理トラックに書込み対象のデータを書き込むと共に、これら書込み要求及び書込み対象のデータを後段の副側ストレージ装置102B(第2の副側ストレージ装置102B)に転送する。
さらに第2の副側ストレージ装置102B2及び最終段の副側ストレージ装置102B(第Nの副側ストレージ装置102BN)を除く他の各副側ストレージ装置102Bも、第1の副側ストレージ装置102B1と同様の処理を実行する。このような処理により、正側ストレージ装置102A及び各副側ストレージ装置102Bで実行しているフラッシュコピーの対象領域内の論理トラックをデータの書込み先とする書込み要求がホスト装置101から正側ストレージ装置102Aに与えられた場合に、当該書込み要求において指定されたLUN及びトラック番号により特定される論理トラックを先頭とする連続する5つのすべての論理トラックに対するフラッシュコピーが完了していないすべての副側ストレージ装置102Bにおいて、その連続する5つの論理トラックに格納されたデータのオンデマンドコピーが実行されることになる。
以上のような本実施の形態によるデータバックアップ方法を実現するための手段として、正側ストレージ装置102Aの共有メモリ13Aには、図33(A)に示すシーケンシャル指示テーブル110と、図33(B)に示すボリューム情報テーブル111と、図33(C)に示すペア情報テーブル112と、図33(D)に示す複数の差分ビットマップ113とが格納されている。
シーケンシャル指示テーブル110は、上述のようにそれぞれ連続する論理トラックをデータの書込み先として指定した書込み要求が連続してホスト装置101から与えられた場合に、そのような書込み要求の5回に1回の割合でシーケンシャル情報を「1」に設定したオンデマンドコピー先行通知70を次段の副側ストレージ装置81Bに送信するために利用されるテーブルであり、図33(A)に示すように、ボリューム番号欄110A、書込みトラック番号欄110B及び終了値欄110Cから構成される。
そしてボリューム番号欄110Aには、シーケンシャル情報を「1」に設定したオンデマンドコピー先行通知70を次段の副側ストレージ装置81Bに送信したときに、そのオンデマンドコピー先行通知70においてデータ書込み先として指定したプライマリボリュームのLUNが格納される。また書込みトラック番号欄110Bには、かかるオンデマンドコピー先行通知70においてデータの書込み先として指定された論理トラックのトラック番号が格納され、終了値欄110Cには、そのオンデマンドコピー先行通知70が副側ストレージ装置81Bに与えられた結果、副側ストレージ装置81Bにおいてオンデマンドコピーが行われる連続する5つの論理トラックのうちの最後の論理トラックのトラック番号(単純には書込みトラック欄に格納されている数値に4を加えた値)が格納される。
ボリューム情報テーブル111、ペア情報テーブル112及び差分ビットマップ113については、図25について上述した第4の実施の形態における対応するボリューム情報テーブル90、ペア情報テーブル91又は差分ビットマップ92と同じ構成を有するものであるため、その詳細の説明は省略する。
一方、カスケード接続の最終段の副側ストレージ装置102Bを除く各副側ストレージ装置102Bの共有メモリ13Bには、図34(A)に示すシーケンシャル指示テーブル114と、図34(B)に示すボリューム情報テーブル115と、図27(C)に示すペア情報テーブル116と、図34(D)に示す複数の差分ビットマップ117とが格納されている。なお、この図34は、正側ストレージ装置81AとM(M=1,2,……,N−1)番目にカスケード接続された副側ストレージ装置102B(第Mの副側ストレージ装置102BM)が保持するシーケンシャル指示テーブル114、ボリューム情報テーブル115、ペア情報テーブル116及び差分ビットマップ117の構成例を示す。
これらシーケンシャル指示テーブル114、ボリューム情報テーブル115、ペア情報テーブル116及び差分ビットマップ117は、図33について上述したシーケンシャル指示テーブル110、ボリューム情報テーブル111、ペア情報テーブル112又は差分ビットマップ113と同様のものであるため、その詳細の説明は省略する。
一方、カスケード接続の最終段の副側ストレージ装置102B(第Nのストレージ装置102BN)には、図35(A)に示すボリューム情報テーブル118と、図35(B)に示すペア情報テーブル119と、図35(C)に示す複数の差分ビットマップ120とが格納されている。これらボリューム情報テーブル118、ペア情報テーブル119及び差分ビットマップ120は、図8について上述した第1の実施の形態における対応するボリューム情報テーブル41、ペア情報テーブル42又は差分ビットマップ43と同様のものであるため、その詳細の説明は省略する。
(5−2)本実施の形態によるバックアップコピー処理
(5−2−1)正側バックアップコピー処理
次に、本実施の形態によるバックアップコピー処理の処理手順について説明する。図36は、正側ストレージ装置102A及び各副側ストレージ装置102Bでフラッシュコピー処理(図10)を実行中に、そのフラッシュコピーの対象領域内の論理トラックをデータの書込み先とする書込み要求がホスト装置101から正側ストレージ装置102Aに発行された場合に、正側ストレージ装置102Aの正側プロセッサ部103Aにより実行される正側バックアップコピー処理の処理手順を示す。
この場合、正側プロセッサ部103Aは、かかるホスト装置101からの書込み要求を受信すると、この正側バックアップコピー処理を開始し、そのとき対象とする副側ストレージ装置102Bを表すパラメータxを「1」に初期化する(SP220)。従って、例えばxが「1」の場合には、そのとき対象とする副側ストレージ装置102Bは第1の副側ストレージ装置102B1であり、xが「2」の場合には、そのとき対象とする副側ストレージ装置102Bは第2の副側ストレージ装置102B2である。
続いて、正側プロセッサ部103Aは、書込み要求のシーケンシャルコード埋込み位置を参照して、その書込み要求がシーケンシャル書込み要求であるか否かを判断する(SP221)。
そして正側プロセッサ部103A部は、この判断で否定結果を得ると、ステップSP222に進み、この後、ステップSP222〜ステップSP225を、図28について上述した第4の実施の形態の正側バックアップコピー処理のステップSP161〜ステップSP164と同様に処理する。これにより正側プロセッサ部103Aは、正側ストレージ装置102Aにカスケード接続されたすべての副側ストレージ装置102Bの中に、そのとき正側ストレージ装置102Aが受信した書込み要求において指定されたLUN及びトラック番号により特定される正側ストレージ装置102A内の論理トラックと対応する論理トラックに対するフラッシュコピーが完了していない副側ストレージ装置102Bが1つでも存在するときには、次段の副側ストレージ装置102B(第1の副側ストレージ装置102B1)にオンデマンドコピー先行通知70A及び書込み要求を送信し、そのような副側ストレージ装置102Bが存在しないときには、書込み要求のみを次段の副側ストレージ装置102Bに送信することになる。
また正側プロセッサ部103Aは、この後、ステップSP234〜ステップSP239を、図28について上述した第4の実施の形態の正側バックアップコピー処理のステップSP165〜ステップSP170と同様に処理する。ただし、本実施の形態においては、ステップSP237において、正側ストレージ装置102Aが、当該正側ストレージ装置102Aとカスケード接続されたすべての副側ストレージ装置102Bからそれぞれ送信されたすべての差分ビットマップを受信する点と、これらの差分ビットマップに基づいて、共有メモリ13Aに格納されている対応する差分ビットマップ113(図33(D))をそれぞれ更新する点とが第4の実施の形態の正側バックアップコピー処理と相違する。以上の処理により、正側ストレージ装置102Aは、必要に応じてオンデマンドコピーを実行しながら、書込み要求において指定されたLUN及びトラック番号により特定される正側ストレージ装置102A内の論理トラックに対して書込み対象のデータを書き込むことになる。そして正側プロセッサ部103Aは、この後、この正側バックアップコピー処理を終了する。
これに対して正側プロセッサ部103Aは、ステップSP221の判断で肯定結果を得ると、ステップSP226に進み、この後、ステップSP226〜ステップSP229を、図20について上述した第3の実施の形態による正側バックアップコピー処理のステップSP123〜ステップSP126と同様に処理する。
そして正側プロセッサ部103Aは、この後、そのとき対象としている副側ストレージ装置102B(そのときのパラメータxの値に対応する副側ストレージ装置102B)に対応させて設けられた差分ビットマップ113(図3(C))を参照して、その差分ビットマップ113において、ステップSP227又はステップSP229でオンデマンドコピーを実行すべき論理トラックとして決定した各副側ストレージ装置102B内の5つの論理トラックにそれぞれ対応するすべてのビットの値が「1」であるか否かを判断する(SP230)。
正側プロセッサ部103Aは、この判断で肯定結果を得ると、そのとき対象としている副側ストレージ装置102Bよりも後段のすべての副側ストレージ装置102BについてステップSP230の処理を実行し終えたか否かを判断する(SP231)。そして正側プロセッサ部103Aは、この判断で否定結果を得ると、パラメータxをインクリメント(値を1増加)した後(ステップSP232)、ステップSP230に戻り、この後ステップSP230〜ステップSP232の処理を繰り返す。
この結果、そのとき対象としている副側ストレージ装置102Bよりも後段のいずれかの副側ストレージ装置102Bにおいて、ステップSP227又はステップSP229でオンデマンドコピーを実行すべき論理トラックとして決定された5つの論理トラックのうちのいずれかの論理トラックのフラッシュコピーが完了していない場合には、ステップSP230で否定結果が得られることになる。
かくして、このとき正側プロセッサ部103Aは、図20のステップSP128と同様にして、ステップSP227又はステップSP229においてシーケンシャル指示テーブル110(図33(A))に新たに登録した登録内容に従ったオンデマンドコピー先行通知70(図17)を生成し、生成したオンデマンドコピー先行通知70を次段の副側ストレージ装置102Bに送信する(SP233)。また正側プロセッサ部103Aは、ステップSP234に進み、この後、ステップSP234〜ステップSP239を上述のように処理した後、この正側バックアップコピー処理を終了する。
これに対して、そのとき対象としている副側ストレージ装置102Bよりも後段のすべての副側ストレージ装置102Bにおいて、ステップSP227又はステップSP229でオンデマンドコピーを実行すべき論理トラックとして決定された5つの論理トラックのうちのすべての論理トラックに対するフラッシュコピーが完了している場合には、ステップSP230で肯定結果が得られることになる。かくして、このとき正側プロセッサ部103Aは、ステップSP234に進み、この後、ステップSP234〜ステップSP239を上述のように処理した後、この正側バックアップコピー処理を終了する。
(5−2−2)副側オンデマンドコピー処理先行通知受領処理
一方、図37は、カスケード接続の最終段の副側ストレージ装置102Bを除く各副側ストレージ装置102Bが前段の正側ストレージ装置102A又は副側ストレージ装置102Bから発行された上述のオンデマンドコピー先行通知70(図17)を受信したときに、その副側ストレージ装置102Bの副側プロセッサ部103Bにより実行される第1の副側オンデマンドコピー処理先行通知受領処理の処理手順を示す。なお、以下の説明においては、この第1の副側オンデマンドコピー処理先行通知受領処理を第Mのストレージ装置81BM(M=1,2,……,N−1)の副側プロセッサ部103Bが実行するものとして説明を進める。
かかる副側プロセッサ103Bは、オンデマンドコピー先行通知70を受信すると、この第1の副側オンデマンドコピー処理先行通知受領処理を開始し、そのとき対象とする副側ストレージ装置102Bを表すパラメータxを「1」に初期化する(SP240)。なお、以下の処理において対象となる副側ストレージ装置102Bは、この第1の副側オンデマンドコピー処理先行通知受領処理を実行する第Mの副側ストレージ装置102Bよりも後段の副側ストレージ装置102Bである。従って、例えばxが「1」の場合には、そのとき対象とする副側ストレージ装置102Bは第(M+1)の副側ストレージ装置102B(M+1)であり、xが「2」の場合には、そのとき対象とする副側ストレージ装置102Bは第(M+2)の副側ストレージ装置102B(M+2)である。
続いて、副側プロセッサ部103Bは、受信したオンデマンドコピー先行通知70のシーケンシャルコード埋込み位置を参照して、そのオンデマンドコピー先行通知70がシーケンシャル書込み要求であるか否かを判断する(SP241)。
そして、副側プロセッサ部103Bは、この判断で否定結果を得ると、ステップSP242に進み、この後、ステップSP242〜ステップSP245を図36について上述した正側バックアップコピー処理のステップSP222〜ステップSP225と同様に処理する。これにより副側プロセッサ部103Bは、その第Mの副側ストレージ装置102BMの後段の各副側ストレージ装置102Bの中に、そのとき第Mの副側ストレージ装置102BMが受信した書込み要求において指定されたLUN及びトラック番号により特定される当該第Mの副側ストレージ装置102BM内の論理トラックと対応する論理トラックに対するフラッシュコピーが完了していない副側ストレージ装置102Bが1つでも存在するときには、次段の副側ストレージ装置102B(第(M+1)の副側ストレージ装置102B(M+1))にオンデマンドコピー先行通知70A及び書込み要求を送信し、そのような副側ストレージ装置102Bが存在しないときには、書込み要求のみを次段の副側ストレージ装置102Bに送信することになる。
また副側プロセッサ部103Bは、この後、図12について上述したオンデマンドコピー処理を実行することにより(SP256)、書込み要求において指定されたLUN及びトラック番号により特定されるその第Mの副側ストレージ装置102B内の論理トラックに書込み対象のデータを書き込むことになる。そして副側プロセッサ部103Bは、この後、この第1の副側オンデマンドコピー処理先行通知受領処理を終了する。
これに対して副側プロセッサ部103Bは、ステップSP241の判断で肯定結果を得ると、ステップSP246に進み、この後、ステップSP246〜ステップSP253を、図33について上述した正側バックアップコピー処理のステップSP226〜ステップSP233と同様に処理する。
そして副側プロセッサ部103Bは、ステップSP253の処理を終了し、又はステップSP251で肯定結果を得るとステップSP254に進み、オンデマンドコピー先行通知70と、共有メモリ13B(図23)に格納されている図34について上述したボリューム情報テーブル115、ペア情報テーブル116及び自ストレージ装置(第Mの副側ストレージ装置102B)に対応する差分ビットマップ117とを参照して、その差分ビットマップ117における、そのオンデマンドコピー先行通知70において指定されたLUN及びトラック番号により特定される当該第Mの副側ストレージ装置102BM内の論理トラックを先頭とする連続する5つの論理トラックにそれぞれ対応するすべてのビットの値が「1」であるか否かを判断する(SP254)。
このステップSP254の判断で肯定結果を得ることは、かかる5つの論理トラックに格納されているデータのフラッシュコピーが既に完了していることを意味する。かくして、このとき副側プロセッサ部102Bは、この第1の副側オンデマンドコピー処理先行通知受領処理を終了する。
これに対して、ステップSP254の判断で否定結果を得ることは、かかる5つの論理トラックのうち、少なくとも1つの論理トラックに対するフラッシュコピーが完了していないことを意味する。かくして、このとき副側プロセッサ102Bは、ボリューム情報テーブル115、ペア情報テーブル116及び自ストレージ装置に対応する差分ビットマップ117を参照して、その5つの論理トラックのうちのフラッシュコピーが完了していない論理トラックを1つ選択し、選択した論理トラックに格納されているデータを対応するセカンダリボリュームにコピー(オンデマンドコピー)するオンデマンドコピー処理を実行した後(SP255)、ステップSP254に戻る。
そして副側プロセッサ102Bは、この後、フラッシュコピーが完了していない各論理トラックについて同様の処理を実行し(SP254−SP255−SP254)、これら5つの論理トラックに対するフラッシュコピー又はオンデマンドコピーが完了することによりステップSP254において肯定結果を得ると、この第1の副側オンデマンドコピー処理先行通知受領処理を終了する。
他方、図38は、カスケード接続の最終段の副側ストレージ装置102B(第Nの副側ストレージ装置102BN)が前段の副側ストレージ装置102Bから発行された上述のオンデマンドコピー先行通知70(図17)を受信したときに、その副側ストレージ装置102Bの副側プロセッサ部103Bにより実行される第2の副側オンデマンドコピー処理先行通知受領処理の処理手順を示す。
かかる副側プロセッサ部103Bは、オンデマンドコピー先行通知70を受信すると、この第2の副側オンデマンドコピー処理先行通知受領処理を開始し、ステップSP260〜ステップSP263を図21について上述した副側オンデマンドコピー処理先行通知受領処理のステップSP140〜ステップSP143と同様に処理する。そして副側プロセッサ部103Bは、この後、この第2の副側オンデマンドコピー処理先行通知受領処理を終了する。
なお、本実施の形態においては、上述のように各副側ストレージ装置102Bが書込み要求に従った書込み処理を完了した旨の完了報告を前段の正側ストレージ装置102A又は前段の副側ストレージ装置102Bに送信する際、これと併せて自ストレージ装置の対応する差分ビットマップ117,120や後段の副側ストレージ装置102Bから転送されてきた差分ビットマップ117,120を当該正側ストレージ装置102A又は当該副側ストレージ装置102Bに送信するようにしているが、例えば上述の正側差分ビットマップ更新処理(図40(A))、第1の副側差分ビットマップ送信処理(図40(B))の処理及び第2の副側差分ビットマップ送信処理(図40(C))の処理を実行することによって各副側ストレージ装102Bが差分ビットマップ117,120を定期的に前段の正側ストレージ装置102A又は前段の副側ストレージ装置102Bに送信するようにしても良い。
(5−3)本実施の形態の効果
以上のように本実施の形態によれば、副側ストレージ装置81Bが複数存在する場合においても、第4の実施の形態と同様に、一連の処理に要する時間を短縮することができ、さらに第3の実施の形態と同様に、不要なオンデマンドコピー先行通知70が正側ストレージ装置102Aから副側ストレージ装置102Bに送信されるのを防止することができる。かくするにつき、ホスト装置2からの書込み要求に対するストレージ装置の応答性能を向上させながら、ネットワーク4をより有効に利用し得る計算機システムを実現できる。
(6)他の実施の形態
なお上述の第1〜第3の実施の形態においては、正側ストレージ装置3A,51A,62A内のプライマリボリュームのLUNと、当該プライマリボリュームとリモートコピーのコピーペアに設定される副側ストレージ装置3B,51B,62B内のプライマリボリュームのLUNとが同じに設定され、第4及び第5の実施の形態においては、これに加えて正側ストレージ装置81A,102A内のプライマリボリュームのLUNと、当該プライマリボリュームに格納されたデータが直接又は間接的にリモートコピーされる各副側ストレージ装置81B,102B内のプライマリボリュームのLUNとがすべて同じLUNに設定されている場合について述べたが、本発明はこれに限らず、これらプライマリボリュームのLUNが異なっていてもよい。
ただし、このような場合には、正側ストレージ装置3A,51A,62A,81A,102Aや副側ストレージ装置62B,102Bが次段の副側ストレージ装置3B,51B,62B,81B,102Bに書込み要求やオンデマンドコピー先行通知40,70を送信又は転送する際に、書込み要求やオンデマンドコピー先行通知40,70に格納されたLUN及びトラック番号を、それぞれ次段の副側ストレージ装置3B,51B,62B,81B,102B内の対応する論理トラックのアドレス(プライマリボリュームのLUN及び当該プライマリボリューム内の対応する論理トラックのトラック番号)に設定する必要がある。
さらに上述の第3及び第5の実施の形態においては、正側ストレージ装置62A,102Aが各副側ストレージ装置62B,102Bの差分ビットマップを取得する方法として、各副側ストレージ装置62B,102Bがそれぞれ自ストレージ装置の差分ビットマップ及び後段の副側ストレージ装置62B,102Bから送信される差分ビットマップを前段の副側ストレージ装置62B,102Bに順次送信する方法を適用するようにした場合について述べたが、本発明はこれに限らず、例えば正側ストレージ装置62A,102A及び各副側ストレージ装置62B,102Bをそれぞれデータ転送用以外の制御用の通信回線で接続し、この通信回線を通じて正側ストレージ装置62A,102Aが各副側ストレージ装置62B,102Bのそれぞれから個別に差分ビットマップを取得できるようにしてもよい。
さらに上述の第3及び第5の実施の形態においては、正側ストレージ装置62A,102Aから送信されるオンデマンドコピー先行通知70に基づいて、副側ストレージ装置62B,102Bにおいて5トラック単位でオンデマンドコピーを実行するようにした場合について述べたが、本発明はこれに限らず、副側ストレージ装置62B,102Bがオンデマンドコピー先行通知70に基づいて5トラック単位以外の複数トラック単位でオンデマンドコピーを実行するようにしてもよい。
本発明は、フラッシュコピー機能及びリモートコピー機能を組み合わせたデータバックアップ機能が搭載された計算機システムに広く適用することができる。
1,50,60,80,100……計算機システム、2,61,101……ホスト装置、3A,51A,62A,81A,102A……正側ストレージ装置、3B,51B,62B,81B,102B……副側ストレージ装置、10AA……物理ディスク、10A……物理ディスク部、13A,13B,13BN……共有メモリ、16A,52A,63A,82A,103A……正側プロセッサ部、16B,52B,63B,82B,103B……副側プロセッサ部、40,70……オンデマンドコピー先行通知、41,53,56,72,75,90,93,96,111,115,118……ボリューム情報テーブル、42,54,57,73,76,91,94,97,112,116,119……ペア情報テーブル、43,55,58,74,77,92,95,98,113,117,120……差分ビットマップ、71,110,114……シーケンシャル指示テーブル。

Claims (10)

  1. ホスト装置がデータを読み書きする第1のプライマリボリュームと、当該第1のプライマリボリュームとコピーペアに設定された第1のセカンダリボリュームとが設けられ、前記ホスト装置からのコピー指示に応じて、前記第1のプライマリボリュームに格納されたデータのうちの当該コピー指示において指定されたデータを前記第1のセカンダリボリュームにコピーする第1の筐体内コピー処理を実行する正側ストレージ装置と、
    前記第1のプライマリボリュームとリモートコピーのコピーペアに設定された第2のプライマリボリュームと、当該第2のプライマリボリュームとコピーペアに設定された第2のセカンダリボリュームとが設けられ、前記正側ストレージ装置からの指示に応じて、前記第2のプライマリボリュームに格納されたデータのうち、前記第1のプライマリボリュームから前記第1のセカンダリボリュームにコピーされるデータを前記第2のセカンダリボリュームにコピーする第2の同一筐体内コピー処理を実行する副側ストレージ装置と
    を備え、
    前記正側ストレージ装置は、
    前記第1の同一筐体内コピー処理の実行指示が与えられた後に、前記第1のプライマリボリュームにおける当該第1の同一筐体内コピー処理の対象範囲内の記憶領域をデータ書込み先とする前記ホスト装置からの書込み要求を受信すると、当該書込み要求において指定されたデータ書込み先の記憶領域に対応する前記副側ストレージ装置内の記憶領域のアドレスを格納した先行通知を前記副側ストレージ装置に送信し、
    前記先行通知を前記副側ストレージ装置に送信した後に、前記書込み要求において指定された前記第1のプライマリボリューム内の前記記憶領域に書込み対象のデータを書き込むと共に、当該書込み要求において指定されたデータ書込み先の記憶領域のアドレスを前記副側ストレージ装置内の対応する記憶領域のアドレスに設定した書込み要求及び書込み対象のデータを前記副側ストレージ装置に転送し、
    前記副側ストレージ装置は、
    前記正側ストレージ装置からの前記先行通知を受信した場合、前記第2のプライマリボリュームにおける当該先行通知において指定されたアドレスの記憶領域に格納されているデータを前記第2のセカンダリボリュームにコピーし終えていないときには、当該データを前記第2のセカンダリボリュームにコピーし、
    前記正側ストレージ装置からの前記書込み要求を受信すると、前記第2のプライマリボリュームにおける当該書込み要求において指定された前記アドレスの記憶領域に、書込み対象のデータを書き込む
    ことを特徴とする計算機システム。
  2. 前記正側ストレージ装置は、
    前記第2の同一筐体内コピー処理の進捗状況を表す進捗状況情報を前記副側ストレージ装置から取得し、
    取得した当該進捗状況情報に基づいて、前記ホスト装置からの前記書込み要求において指定されたデータ書込み先の記憶領域に対応する前記副側ストレージ装置内の記憶領域に対する前記第2の同一筐体内コピー処理が完了しているか否かを判断し、当該第2の同一筐体内コピー処理が完了しているときには、前記先行通知を前記副側ストレージ装置に送信しない
    ことを特徴とする請求項1に記載の計算機システム。
  3. 前記ホスト装置から発行される前記書込み要求には、当該書込み要求がシーケンシャルな書込み要求であるか否かを表す第1のシーケンシャル情報が含まれ、
    前記正側ストレージ装置は、
    前記書込み要求に含まれる前記第1のシーケンシャル情報に基づいて、当該書込み要求がシーケンシャルな書込み要求であるか否かを表す第2のシーケンシャル情報を前記先行通知に格納し、
    前記副側ストレージ装置は、
    前記先行通知に格納された前記第2のシーケンシャル情報に基づいて、前記ホスト装置から発行された前記書込み要求がシーケンシャルな書込み要求であると判断したときには、当該先行通知においてアドレスが指定された前記第2のプライマリボリューム内の記憶領域を先頭とする連続する複数の記憶領域にそれぞれ格納されているデータを前記第2のセカンダリボリュームにコピーする
    ことを特徴とする請求項2に記載の計算機システム。
  4. 前記副側ストレージ装置を複数備え、
    前記正側ストレージ装置及び複数の前記副側ストレージ装置は、論理的に、前記正側ストレージ装置を先頭とするカスケード接続形式で接続され、
    前記正側ストレージ装置及び各前記副側ストレージ装置は、
    それぞれ自ストレージ装置よりもカスケード接続の後段に位置するすべての前記副側ストレージ装置から前記進捗状況情報を取得し、
    前記ホスト装置又は前段の前記正側ストレージ装置若しくは前記副側ストレージ装置からの前記書込み要求を受信すると、自ストレージ装置よりもカスケード接続の後段に位置する各前記副側ストレージ装置の前記進捗状況情報に基づいて、自ストレージ装置よりもカスケード接続の後段に位置する少なくとも1つの前記副側ストレージ装置において、当該書込み要求においてデータ書込み先として指定された前記第2のプライマリボリューム内の記憶領域に対応する記憶領域に対する前記第2の同一筐体内コピー処理が完了していないときに、対応する前記先行通知を次段の前記副側ストレージ装置に送信する
    ことを特徴とする請求項2に記載の計算機システム。
  5. 前記ホスト装置から発行される前記書込み要求には、当該書込み要求がシーケンシャルな書込み要求であるか否かを表す第1のシーケンシャル情報が含まれ、
    前記正側ストレージ装置は、
    前記書込み要求に含まれる前記第1のシーケンシャル情報に基づいて、当該書込み要求がシーケンシャルな書込み要求であるか否かを表す第2のシーケンシャル情報を前記先行通知に格納し、
    各前記副側ストレージ装置は、
    前段の前記正側ストレージ装置又は前記副側ストレージ装置から送信される前記先行通知に格納された前記第2のシーケンシャル情報に基づいて、前記ホスト装置から発行された前記書込み要求がシーケンシャルな書込み要求であると判断したときには、当該先行通知においてアドレスが指定された前記第2のプライマリボリューム内の記憶領域を先頭とする連続する複数の記憶領域にそれぞれ格納されているデータを前記第2のセカンダリボリュームにコピーする
    ことを特徴とする請求項4に記載の計算機システム。
  6. 正側ストレージ装置及び副側ストレージ装置を有する計算機システムにおけるデータバックアップ方法において、
    前記正側ストレージ装置は、
    ホスト装置がデータを読み書きする第1のプライマリボリュームと、当該第1のプライマリボリュームとコピーペアに設定された第1のセカンダリボリュームとが設けられ、前記ホスト装置からのコピー指示に応じて、前記第1のプライマリボリュームに格納されたデータのうちの当該コピー指示において指定されたデータを前記第1のセカンダリボリュームにコピーする第1の筐体内コピー処理を実行し、
    前記副側ストレージ装置は、
    前記第1のプライマリボリュームとリモートコピーのコピーペアに設定された第2のプライマリボリュームと、当該第2のプライマリボリュームとコピーペアに設定された第2のセカンダリボリュームとが設けられ、前記正側ストレージ装置からの指示に応じて、前記第2のプライマリボリュームに格納されたデータのうち、前記第1のプライマリボリュームから前記第1のセカンダリボリュームにコピーされるデータを前記第2のセカンダリボリュームにコピーする第2の同一筐体内コピー処理を実行し、
    前記正側ストレージ装置が、前記第1の同一筐体内コピー処理の実行指示が与えられた後に、前記第1のプライマリボリュームにおける当該第1の同一筐体内コピー処理の対象範囲内の記憶領域をデータ書込み先とする前記ホスト装置からの書込み要求を受信すると、当該書込み要求において指定されたデータ書込み先の記憶領域に対応する前記副側ストレージ装置内の記憶領域のアドレスを格納した先行通知を前記副側ストレージ装置に送信する第1のステップと、
    前記正側ストレージ装置が、前記先行通知を前記副側ストレージ装置に送信した後に、前記書込み要求において指定された前記第1のプライマリボリューム内の前記記憶領域に書込み対象のデータを書き込むと共に、当該書込み要求において指定されたデータ書込み先の記憶領域のアドレスを前記副側ストレージ装置内の対応する記憶領域のアドレスに設定した書込み要求及び書込み対象のデータを前記副側ストレージ装置に転送する第2のステップと、
    前記副側ストレージ装置が、前記正側ストレージ装置からの前記先行通知を受信した場合に、前記第2のプライマリボリュームにおける当該先行通知において指定されたアドレスの記憶領域に格納されているデータを前記第2のセカンダリボリュームにコピーし終えていないときには、当該データを前記第2のセカンダリボリュームにコピーする第3のステップと、
    前記副側ストレージ装置が、前記正側ストレージ装置からの前記書込み要求を受信した場合に、前記第2のプライマリボリュームにおける当該書込み要求において指定された前記アドレスの記憶領域に、書込み対象のデータを書き込む第4のステップと
    を備えることを特徴とするデータバックアップ方法。
  7. 前記第1のステップにおいて、前記正側ストレージ装置は、
    前記第2の同一筐体内コピー処理の進捗状況を表す進捗状況情報を前記副側ストレージ装置から取得し、
    取得した当該進捗状況情報に基づいて、前記ホスト装置からの前記書込み要求において指定されたデータ書込み先の記憶領域に対応する前記副側ストレージ装置内の記憶領域に対する前記第2の同一筐体内コピー処理が完了しているか否かを判断し、当該第2の同一筐体内コピー処理が完了しているときには、前記先行通知を前記副側ストレージ装置に送信しない
    ことを特徴とする請求項6に記載のデータバックアップ方法。
  8. 前記ホスト装置から発行される前記書込み要求には、当該書込み要求がシーケンシャルな書込み要求であるか否かを表す第1のシーケンシャル情報が含まれ、
    前記第1のステップにおいて、前記正側ストレージ装置は、
    前記書込み要求に含まれる前記第1のシーケンシャル情報に基づいて、当該書込み要求がシーケンシャルな書込み要求であるか否かを表す第2のシーケンシャル情報を前記先行通知に格納し、
    前記第3のステップにおいて、前記副側ストレージ装置は、
    前記先行通知に格納された前記第2のシーケンシャル情報に基づいて、前記ホスト装置から発行された前記書込み要求がシーケンシャルな書込み要求であると判断したときには、当該先行通知においてアドレスが指定された前記第2のプライマリボリューム内の記憶領域を先頭とする連続する複数の記憶領域にそれぞれ格納されているデータを前記第2のセカンダリボリュームにコピーする
    ことを特徴とする請求項7に記載のデータバックアップ方法。
  9. 前記計算機システムは、前記副側ストレージ装置を複数備え、
    前記正側ストレージ装置及び複数の前記副側ストレージ装置は、論理的に、前記正側ストレージ装置を先頭とするカスケード接続形式で接続され、
    前記正側ストレージ装置及び各前記副側ストレージ装置は、
    それぞれ自ストレージ装置よりもカスケード接続の後段に位置するすべての前記副側ストレージ装置から前記進捗状況情報を取得し、
    前記正側ストレージ装置は、前記ホスト装置又は前段の前記正側ストレージ装置若しくは前記副側ストレージ装置からの前記書込み要求を受信すると、自ストレージ装置よりもカスケード接続の後段に位置する各前記副側ストレージ装置の前記進捗状況情報に基づいて、自ストレージ装置よりもカスケード接続の後段に位置する少なくとも1つの前記副側ストレージ装置において、当該書込み要求においてデータ書込み先として指定された前記第2のプライマリボリューム内の記憶領域に対応する記憶領域に対する前記第2の同一筐体内コピー処理が完了していないときに、対応する前記先行通知を次段の前記副側ストレージ装置に送信する
    ことを特徴とする請求項7に記載のデータバックアップ方法。
  10. 前記ホスト装置から発行される前記書込み要求には、当該書込み要求がシーケンシャルな書込み要求であるか否かを表す第1のシーケンシャル情報が含まれ、
    前記正側ストレージ装置は、
    前記書込み要求に含まれる前記第1のシーケンシャル情報に基づいて、当該書込み要求がシーケンシャルな書込み要求であるか否かを表す第2のシーケンシャル情報を前記先行通知に格納し、
    各前記副側ストレージ装置は、
    前段の前記正側ストレージ装置又は前記副側ストレージ装置から送信される前記先行通知に格納された前記第2のシーケンシャル情報に基づいて、前記ホスト装置から発行された前記書込み要求がシーケンシャルな書込み要求であると判断したときには、当該先行通知においてアドレスが指定された前記第2のプライマリボリューム内の記憶領域を先頭とする連続する複数の記憶領域にそれぞれ格納されているデータを前記第2のセカンダリボリュームにコピーする
    ことを特徴とする請求項9に記載のデータバックアップ方法。
JP2013521336A 2011-03-24 2011-03-24 計算機システム及びデータバックアップ方法 Expired - Fee Related JP5542241B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/001746 WO2012127537A1 (en) 2011-03-24 2011-03-24 Computer system and data backup method

Publications (2)

Publication Number Publication Date
JP2013543995A JP2013543995A (ja) 2013-12-09
JP5542241B2 true JP5542241B2 (ja) 2014-07-09

Family

ID=46878317

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013521336A Expired - Fee Related JP5542241B2 (ja) 2011-03-24 2011-03-24 計算機システム及びデータバックアップ方法

Country Status (3)

Country Link
US (1) US8555010B2 (ja)
JP (1) JP5542241B2 (ja)
WO (1) WO2012127537A1 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8959300B2 (en) 2010-05-18 2015-02-17 International Business Machines Corporation Cascade ordering
US9292588B1 (en) * 2011-07-20 2016-03-22 Jpmorgan Chase Bank, N.A. Safe storing data for disaster recovery
JP2013239926A (ja) * 2012-05-15 2013-11-28 Canon Inc 撮像装置、その制御方法、プログラム
US9135121B2 (en) 2012-10-16 2015-09-15 International Business Machines Corporation Managing updates and copying data in a point-in-time copy relationship expressed as source logical addresses and target logical addresses
US8904133B1 (en) * 2012-12-03 2014-12-02 Hitachi, Ltd. Storage apparatus and storage apparatus migration method
US9275123B2 (en) * 2013-04-09 2016-03-01 International Business Machines Corporation Replicating a source storage system
US9842032B2 (en) * 2013-08-27 2017-12-12 Red Hat, Inc. Memory first live snapshot
US9535612B2 (en) * 2013-10-23 2017-01-03 International Business Machines Corporation Selecting a primary storage device
US10372548B2 (en) 2016-11-17 2019-08-06 International Business Machines Corporation Copying data from multiple point-in-time copies to a log storage to use to roll-back a source storage
US10261868B2 (en) 2016-11-17 2019-04-16 International Business Machines Corporation Using a forward log storage and backward log storage to recover a storage to a forward or backward point-in-time
US20180157697A1 (en) 2016-12-07 2018-06-07 International Business Machines Corporation Updating change information for current copy relationships when establishing a new copy relationship having overlapping data with the current copy relationships
US10042581B2 (en) 2016-12-07 2018-08-07 International Business Machines Corporation Releasing space allocated to a space efficient target storage in a copy relationship with a source storage
US9983815B1 (en) 2016-12-07 2018-05-29 International Business Machines Corporation Using a cascade flag to process a copy relationship having a backward cascade copy relationship
US10698631B2 (en) 2018-02-13 2020-06-30 International Business Machines Corporation Point-in-time copy with target write optimization
US10671486B2 (en) * 2018-07-25 2020-06-02 International Business Machines Corporation Flashcopy tracking for storage optimization

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6209002B1 (en) * 1999-02-17 2001-03-27 Emc Corporation Method and apparatus for cascading data through redundant data storage units
US7747576B2 (en) * 2002-02-20 2010-06-29 International Business Machines Corporation Incremental update control for remote copy
US7188272B2 (en) * 2003-09-29 2007-03-06 International Business Machines Corporation Method, system and article of manufacture for recovery from a failure in a cascading PPRC system
JP2005196683A (ja) * 2004-01-09 2005-07-21 Hitachi Ltd 情報処理システム、情報処理装置、及び情報処理システムの制御方法
US7165141B2 (en) * 2004-02-27 2007-01-16 Hewlett-Packard Development Company, L.P. Daisy-chained device-mirroring architecture
US7185157B2 (en) * 2004-03-29 2007-02-27 International Business Machines Corporation Method, system, and article of manufacture for generating a copy of a first and a second set of volumes in a third set of volumes
US7461100B2 (en) * 2004-05-27 2008-12-02 International Business Machines Corporation Method for fast reverse restore
US20070028064A1 (en) * 2005-07-28 2007-02-01 Mcbrearty Gerald F Method for suspending mirrored writes during large data transfers
JP4800056B2 (ja) * 2006-02-09 2011-10-26 株式会社日立製作所 ストレージシステム及びその制御方法
JP2007323218A (ja) * 2006-05-31 2007-12-13 Hitachi Ltd バックアップシステム
JP4942418B2 (ja) * 2006-08-04 2012-05-30 株式会社日立製作所 計算機システム及びそのスナップショット作成方法
US8055865B2 (en) * 2007-08-06 2011-11-08 International Business Machines Corporation Managing write requests to data sets in a primary volume subject to being copied to a secondary volume
JP2009211132A (ja) * 2008-02-29 2009-09-17 Hitachi Ltd 記憶システム及びデータ移行方法
US8099387B2 (en) * 2008-06-02 2012-01-17 International Business Machines Corporation Managing consistency groups using heterogeneous replication engines

Also Published As

Publication number Publication date
US20120246424A1 (en) 2012-09-27
US8555010B2 (en) 2013-10-08
WO2012127537A1 (en) 2012-09-27
JP2013543995A (ja) 2013-12-09

Similar Documents

Publication Publication Date Title
JP5542241B2 (ja) 計算機システム及びデータバックアップ方法
JP5188538B2 (ja) 計算機システム及びリストア方法
JP2007206931A (ja) 記憶システム、データ処理方法並びにストレージ装置
JP4938328B2 (ja) 記憶システム及びその電源制御方法並びにストレージ装置
JP5222469B2 (ja) 記憶システム及びデータ管理方法
US7137033B2 (en) Method, system, and program for synchronizing subtasks using sequence numbers
JP4990940B2 (ja) 計算機装置及びパス管理方法
US20090043979A1 (en) Managing write requests to data sets in a primary volume subject to being copied to a secondary volume
JP4942371B2 (ja) 記憶システム及びデータ管理方法
JP2006302015A (ja) ストレージシステム及びデータ管理方法
JP5147570B2 (ja) ストレージシステム及びリモートコピー復旧方法
WO2012017493A1 (ja) 計算機システム及びデータ移行方法
US6526419B1 (en) Method, system, and program for remote copy in an open systems environment
WO2011007459A1 (ja) ストレージ装置及びその制御方法
CN110023912A (zh) 异步本地和远程生成一致的时间点快照拷贝
US20190258548A1 (en) Storage Unit Replacement
JP2009282800A (ja) ストレージ装置及びその制御方法
JP2009211401A (ja) ストレージ装置及びその制御方法
JP2002244933A (ja) チェックサムを異なるメモリ位置へ動的に移動させるシステムおよび方法
JP5456767B2 (ja) 計算機システム及びバックアップ方法
US7668810B2 (en) Controlling consistency of data storage copies
JP4677443B2 (ja) データ・ストレージ・システムおよび複数の異機種ストレージ・コントローラに渡って書き込みセットおよび書き込みセットの境界を保持するための方法
JP4583075B2 (ja) サイト間でデータをミラーリングする方法、システム、およびプログラム
TWI468930B (zh) 於儲存裝置執行資料寫入
WO2017022128A1 (ja) 管理装置及び方法

Legal Events

Date Code Title Description
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: 20140408

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140502

R150 Certificate of patent or registration of utility model

Ref document number: 5542241

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees