(57)【要約】【解決課題】リモートサイトでの業務が複数のストレージや複数のボリュームグループにまたがって運用されても、リモートサイトが扱うデータの時間順序性を保証できるリモートコピーシステムを提供する。【解決手段】正データボリューム８０と正ジャーナルボリューム８４と副ジャーナルボリューム８６と副データボリューム８２とからなるジャーナルグループ９２に、副ジャーナルボリューム８２とレプリカとからなるコンシステンシグループ９０とを、対応させる。副データボリュームをバックアップしてレプリカを形成する際に、ホスト２０がバックアップ時間予約コマンドをストレージ装置１２に発行し、ストレージ装置１２はジャーナルデータに付加されるタイムスタンプとバックアップ予約時刻を対比してレプリカを作成する。【選択図】図４
2008181288.tif 000002
【特許請求の範囲】
【請求項１】
ホストからローカルサイトを構成する第１のストレージシステムに送られたライトデータを、前記第１のストレージシステムからリモートサイトを構成する第２のストレージシステムにコピーするリモートコピーシステムにおいて、
前記第１のストレージシステムは、
前記ライトデータが書き込まれる正データボリュームと、
前記ライトデータからジャーナルデータを生成する第１のコントローラと、
生成されたジャーナルデータを格納する正ジャーナルボリュームと、
前記正ジャーナルボリュームに格納されたジャーナルデータを前記第２のストレージ装置に転送する第２のコントローラと、
を有し、
前記第２のストレージシステムは、
前記第１のストレージ装置から転送されたジャーナルデータを格納する副ジャーナルボリュームと、
前記正データボリュームに対応する副データボリュームと、
前記副ジャーナルボリュームに格納された前記ジャーナルデータを前記副データボリュームにリストアし、当該ジャーナルデータがリストアされた前記副データボリュームのデータをバックアップしてレプリカを生成する第３のコントローラと、
を有し、
前記ジャーナルデータには時間順序性に係るパラメータが付加されており、
前記第３のコントローラは、
前記パラメータを指定する第１のコマンドと、互いに対応する前記副ジャーナルボリュームと前記副データボリュームと前記レプリカとからなるグループを指定する第２のコマンドと、に基づいて、
前記副ジャーナルボリュームと前記副データボリュームと間の前記リストアの状態と、前記副データボリュームと前記レプリカとの間のペアの状態と、をそれぞれ制御する、
リモートコピーシステム。
【請求項２】
前記正データボリュームと、前記正ジャーナルボリュームと、前記副ジャーナルボリュームと、前記副データボリュームとを第１のグループとして互いに関連させ、
前記副データボリュームと前記レプリカとを第２のグループとして互いに関連させ、
さらに、前記第１のグループと前記第２のグループとの対応関係を有する、制御テーブルを有する、請求項１記載のリモートコピーシステム。
【請求項３】
前記第１のグループが複数あり、前記第２のグループが複数あり、前記制御テーブルは、前記第１のグループと前記第２のグループとを、１対１に対応させた請求項２記載のリモートコピーシステム。
【請求項４】
前記第１のストレージシステム及び前記第２のストレージシステムはそれぞれ、複数のストレージ装置から構成されており、
前記複数のストレージ装置のそれぞれの記憶資源の集合に対して、前記複数の第１のグループと、前記複数の第２のグループが設定されてなる、請求項３記載のリモートコピーシステム。
【請求項５】
前記パラメータは前記ジャーナルデータ付加されたタイムスタンプである、請求項１記載のリモートコピーシステム。
【請求項６】
前記第２のストレージシステムは、大容量記憶デバイスを備え、
当該大容量記憶デバイスの記憶資源が前記正ジャーナルボリュームと前記副ジャーナルボリュームとの少なくとも当該ジャーナルボリュームに割り当てられてなる、請求項１記載のリモートコピーシステム。
【請求項７】
前記大容量記憶デバイスがハードディスク駆動装置である請求項６記載のリモートコピーシステム。
【請求項８】
前記第３のコントローラは、指定された時刻までの前記タイムスタンプを有する前記ジャーナルデータを前記副ジャーナルボリュームから前記副データボリュームにリストアし、当該副データボリュームから前記レプリカを生成する、請求項５記載のリモートコピーシステム。
【請求項９】
前記第３のコントローラは、前記指定された時刻経過の所要時間が一定値を越えた場合、前記リストアを中断して前記レプリカを生成する、請求項８記載のリモートコピーシステム。
【請求項１０】
ローカルサイトを構成する第１のストレージの正ボリュームと、リモートサイトを構成する第２のストレージ装置の副ボリュームと、の間で筐体間ボリュームレプリケーションを実現するリモートコピーシステムにおいて、
前記第２のストレージ装置は、
前記第１のストレージ装置からリモートコピーされるジャーナルデータを記録するジャーナルボリュームと、
前記ジャーナルボリュームに記録した前記ジャーナルデータを前記副ボリュームにリストアし、次いで当該副ボリュームを前記ジャーナルボリュームから切り離して当該副ボリュームを静止化し、当該静止化された副ボリュームをレプリカにバックアップするコントローラと、
有し、
前記ジャーナルボリュームには前記第２のストレージ装置が有する、ホストＩＯデータに対する主記憶装置としての大容量記憶デバイスの記憶領域が割り当てられ、
前記コントローラは、前記副ボリュームが前記ジャーナルボリュームから切り離されている期間、前記第１のストレージ装置からリモートコピーされる前記ジャーナルデータを前記ジャーナルボリュームに受け入れることを中断することなく継続し、前記ジャーナルボリュームにこの間の前記ジャーナルデータを記録した、
リモートコピーシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はローカルサイトからリモートサイトにデータをリモートコピーするリモートコピーシステム及びその制御方法に関するものである。
【背景技術】
【０００２】
天変地異や火災或いは電力障害などの災害により、ストレージ装置に記憶されたデータが消失したり、ストレージ装置を利用した業務が停止したりする恐れがある。ストレージ装置を利用した記憶システムは、この種の異変や災害に対して抵抗性を備え、顧客に対して継続してサービスを提供できるものでなくてはならない。そこで、ディザスタリカバリのためにリモートコピーシステムが実現されている。
【０００３】
このリモートコピーシステムは、ローカルサイトに発生した障害が及ばない地域にリモートサイトを構築して、ローカルサイトからリモートサイトにデータをコピーするようにしている。ローカルサイトのストレージシステムに障害が発生した場合には、リモートサイトのストレージシステムがローカルサイトのストレージシステムの業務を引き継いで、リモートサイトが顧客に対して継続的に業務を提供できるようにしている。
【０００４】
このリモートコピーには、同期リモートコピーおよび非同期リモートコピーの２種類の方式がある。同期リモートコピーは、リモートサイトのストレージシステムの副ボリュームへのライト（リモートコピーＩ／Ｏ）が確定した後、ホストＩ／Ｏの完了報告がホストに対して通知するものである。したがって、ホストから見るとローカルサイトの正ボリュームで確定したライトが副ボリュームでも確定することになる。これにより災害時にホストからのトランザクションが喪失されることはない。但し、リモートＩＯが完了するまでホストは待たなければならないためホストの応答性能が低下する。
【０００５】
非同期リモートコピーでは、ホストＩＯとリモートコピーＩＯが非同期に処理されるために、ローカルサイトのストレージ装置は副ボリュームへのライトであるリモートＩＯが確定したことの確認をすることなく、ホストＩＯの完了報告をホストに行なうことが出来る。しかしながら、正ボリュームで確定したライトが副ボリュームで確定していることが保証されないために、災害時ではトランザクションの喪失の可能性はあるが、サイト間の距離が増えてもホストの性能に与える影響は少ない。
【０００６】
特開２００６―７９５６８号公報にはこの種の非同期リモートコピーの一例が説明されている。ここで説明されるリモートコピーシステムは、次のとおりである。副サイトのストレージには、非同期リモートコピーで正サイトから転送されるデータを格納するボリュームに対して二つのローカルレプリカが用意され、それぞれのローカルレプリカのペアは、書き込みデータに付与されたタイムスタンプの時間に準じた、時刻指定の停止コマンドで、交互に停止して時間順序の保証されたレプリカデータを常時準備し、正サイトに障害が発生した場合レプリカを用いてデータを復旧させる。
【特許文献１】特開２００６―７９５６８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
金融機関のシステム等において扱うデータが大量であり、そして、一つの業務に使用するデータ量が一つのストレージ装置又は一つのボリュームグループの容量ではまかないきれず、そのために複数のストレージ装置又は複数のボリュームグループにまたがって業務が運用されることがある。
【０００８】
この場合、ローカルサイトのストレージ装置が普通に運用されている限り、ローカルサイトでのホストＩＯの時間順序について整合性が確保されていれば、リモートサイトのストレージ装置でのリモートＩＯについての整合性を格別注意しなくても良い。但し、ローカルサイトに災害が発生しリモートサイトに切り替えて業務を継続させなければならない際には、ローカルサイトでのデータの整合性がとれていなければならない。
【０００９】
特に遠隔地へのデータコピーを行なう非同期リモートコピーでは、ストレージ装置又はボリュームグループの単位でしかデータの順序性に対する整合性が保証されないために、リモートサイトでの業務の運用が複数のストレージ又は複数のボリュームグループにまたがる場合、データの整合性が保証されない問題がある。このために、例えば、リモートサイトで複数のストレージ又は複数のボリュームグループにまたがって、副ボリュームからバックアップを行なってレプリカを形成する場合に、レプリカについてデータの整合性を確保できない問題があった。
【００１０】
そこで、本発明はリモートサイトでの業務が複数のストレージや複数のボリュームグループにまたがって運用されても、リモートサイトが扱うデータの時間順序性を保証できるリモートコピーシステムを提供することを目的とするものである。本発明の他の目的は、リモートサイトで複数のレプリカを作成する場合、各レプリカのデータにおける時間順序性を保証できるリモートコピーシステムを提供することにある。さらに本発明の他の目的は、リモートサイトで副ボリュームからレプリカを作成する際に、リモートコピーを中断することなく継続可能なリモートコピーシステムを提供することある。
【課題を解決するための手段】
【００１１】
前記目的を達成するために、本発明は、リモートコピーを行なうボリュームのグループと、バックアップを行なうボリュームのグループと、を対応させ、かつリモートコピーされるデータの時間順序性を利用することにより、バックアップを行なう間両グループ間でボリュームの切り離しがあっても、時間順序性について整合性を持った複数のレプリカを生成できることを特徴とするものである。本発明によれば、リモートサイトでの業務の運用が複数のストレージ又は複数のボリュームグループにまたがる場合であっても、整合性がとれた複数のレプリカを得ることが出来る。
【００１２】
さらに、リモートサイトにおいてジャーナルデータを記録するジャーナルボリュームに、ハードディスク駆動装置などの大容量記憶デバイスの物理的記憶領域をあてがうことにより、副ジャーナルボリュームへのジャーナルデータのリストアを中断していても、ローカルサイトからリモートサイトへのリモートコピーを継続することができる。
【発明の効果】
【００１３】
本発明によれば、リモートサイトでの業務が複数のストレージや複数のボリュームグループにまたがって運用されても、リモートサイトが扱うデータの時間順序性を保証できるリモートコピーシステムを提供することができる。
【００１４】
さらに、本発明によれば、リモートサイトで複数のレプリカを作成する場合、各レプリカのデータにおける時間順序性を保証できるリモートコピーシステムを提供することができる。
【００１５】
さらに、本発明によれば、リモートサイトで副ボリュームからレプリカを作成する際に、リモートコピーを中断することなく継続可能なリモートコピーシステムを提供することができる。
【発明を実施するための最良の形態】
【００１６】
次に本発明に係るリモートコピーシステムの実施形態について説明する。図１はこのシステムを示すブロック構成図である。このシステムはローカルサイトを構成するストレージシステムと、リモートサイトを構成するストレージと、両者を接続する通信経路と、から構成されている。
【００１７】
ローカルサイトのストレージシステムは、第１のストレージ装置１０と、これに接続するホスト２０とから構成されている。リモートサイトは第２のストレージ装置１２と、これに接続するホスト４８とから構成されている。
【００１８】
ローカルサイトに地震などの障害が発生し、ローカルサイトのストレージ装置１０又はホスト２０が影響を受けた場合、リモートサイトのストレージ装置１２とホスト４８がローカルサイトの業務を引き継ぐことになる。第１のストレージ装置１０に接続するホスト２０が第２のストレージ装置１２に接続するホスト４８を兼ねても良い。
【００１９】
次に、第１のストレージ装置１０の構成について説明する。第１のストレージ装置は、ホスト２０が接続するホストインターフェースとしてのチャネル制御部１８と、リモート側のストレージ１２と接続するリモート通信インターフェースとしてのチャネル制御部２２と、キャッシュメモリ２４と、共有メモリ２６と、複数のハードディスク駆動装置３０と、ハードディスク駆動装置とのインターフェースとしてのディスク制御部２８と、スイッチング制御部２７とを備えて構成されている。チャネル制御部１８及び２２、キャッシュメモリ２４、共有メモリ２６、そしてディスク制御部２８はスイッチング制御部２７を介して互いに接続可能である。
【００２０】
ホストインターフェースであるチャネル制御部１８はホスト２０が接続されるポート１９を有している。このポートを介して、ホスト２０と第１のストレージ装置１０との間でデータやコマンドが送受信される。
【００２１】
リモート通信インターフェースとしてのチャネル制御部２２は、第１のストレージ装置１０と第２のストレージ装置１２と間のコマンドやデータの送受信を制御する。チャネル制御部２２は第２のストレージ装置１２のリモート通信インターフェースとしてのチャネル制御部３７と接続されている。チャネル制御部２２の送信ポート３４はチャネル制御部３７の受信ポート４０に接続され、チャネル制御部２２の受信ポート３５はチャネル制御部３７の送信ポート３８に接続している。
【００２２】
キャッシュメモリ２４は、ホスト２０からのライトデータ及びホスト２０へのリードデータが、さらに第１のストレージ装置から第２のストレージ装置へリモートコピー機能によって送信されるデータが一時記憶される。共有メモリ２６は、第１のストレージ装置１０と第２のストレージ装置１２との間で行なわれるリモートコピー機能の制御に必要な制御情報を記憶している。
【００２３】
チャネル制御部１８と２２は、スイッチング制御部２７を介してディスク制御部２８に接続されている。さらに、スイッチング制御部２７は、キャッシュメモリ２４および共有メモリ２６にも接続されている。管理端末１４はスイッチング制御部２７を介してチャネル制御部１８，２２及びディスク制御部２８に接続して、ストレージ装置を管理するためのコンピュータから構成される。管理端末１４は、チャネル制御部１８と２２及びディスク制御部２８にマイクログラムを設定するためなどに使用される。
【００２４】
ストレージ装置１０は複数のハードディスク駆動装置３０を有している。ストレージ装置は、管理端末１４またはホスト２０からの操作を受けて、複数のハードディス駆動装置３０から１つのRAIDグループ（パリティグループ）を作る。ストレージ装置１０はRAIDグループを論理的に分割しそれぞれをホストから個別のディスク装置として認識されるようにする。この論理的記憶領域をメインフレームでは論理ボリューム、または論理デバイス（LDEV）と呼び、オープンシステムでは論理ユニット（LU）と呼ぶ。請求項に記載された「ボリューム」とは、論理ボリューム、論理デバイス、及び論理ユニットの包含する呼称である。ホスト２０はボリューム３２を認識して、ストレージ装置１０に対してライトまたはリードコマンドを発行する。
【００２５】
リモートサイト側のストレージ装置１２は、ローカルサイト側のストレージと接続されるポートを有するチャネル制御部３７と、ホスト４８と接続されるチャネル制御部４６を備えている。その他の構成はストレージ装置１０と同一である。ストレージ装置１２の共有メモリには、リモートコピーの実行及びレプリカの作成をチャネル制御部３７が処理する上で、チャネル制御部３７が参照すべき制御情報が格納されている。
【００２６】
符号４２は第１のストレージ装置１０と第２のストレージ装置１２とを接続して、両ストレージ装置間で行なわれるリモートコピーに必要なデータやコマンドの送受信用のネットワークである。
【００２７】
図２はホスト２０のブロック図である。ホスト２０はストレージ装置１０に対してライトＩＯを発行する他、ストレージ装置１０とストレージ装置１２との間で行なわれるリモートコピー、そしてストレージ装置１２で行なわれるレプリカに必要なコマンドを生成して、このコマンドをストレージ装置１０及びストレージ装置１２に発行する。ストレージ装置１２に対するコマンドはホスト４８によって生成されても良い。
【００２８】
ホスト２０には記録媒体５０が挿入される記録媒体読取装置５２、入力装置５４、及び出力装置５６が接続されている。ホスト２０はストレージ装置１０と接続するポート６６、メモリ６０と、メモリに記憶されたプログラム６２と６４によって各種制御処理を実行するＣＰＵ５８とを備えている。
【００２９】
メモリ６０は、ストレージ装置のコントローラ（ＤＫＣコントローラ）６２と、アプリケーションプログラム６４とを備えている。アプリケーションプログラムは、ストレージ装置１０の論理ボリューム３２を用いてトランザクション処理などの業務を行うものである。また、アプリケーションプログラムは、ストレージ装置１２にレプリカを生成させる業務を行なうものでもある。ホスト２０が論理ボリューム３２にライトを発行する際、ホストの時計を用いて書き込むデータに書き込み時刻を付加する。ホストが書き込むデータに付加された時刻情報をタイムスタンプと呼ぶ。このタイムスタンプは請求項に記載する、データの時間順序性を示すパラメータの一例である。
【００３０】
ＤＫＣコントローラ６２は、ストレージ装置１０からストレージ装置１２へ非同期リモートコピーを実行する上で、ストレージ装置１０の論理ボリュームとストレージ装置１２の論理ボリュームのぺアを形成し、ペアを操作するためのコマンドを生成する。また、ＤＫＣコントローラは、ストレージ装置１２にレプリカを作成するためのボリュームペアを形成すること、レプリカを作成するタイミングを指示するコマンドを生成する。
【００３１】
ペアとは複数のボリューム同士の組をいう。図１に係るリモートコピーシステムを実現する上で、複数のボリュームペアが必要である。リモートコピーのためのボリュームペアと、ストレージ装置１２内で行なわれるレプリカ作成のためのボリュームペアである。既述のとおり、ホストからボリュームペアを作成したり、或いはボリュームペアの状態を変更するためのペア操作コマンドをストレージ装置１０及び１２に発行する。ストレージ装置はこのコマンドを受けてペアを制御テーブルに登録したり、ペア状態の変更を制御テーブルに登録する。ストレージ装置の制御装置は、制御テーブルを参照してリモートコピーペアボリューム間でリモートコピーを行ない、レプリカペアボリューム間でレプリカの作成（ローカルレプリケーション）を行なう。チャネル制御部がこの制御装置の一例である。
【００３２】
図３は図１のチャネル制御部のブロック図である。チャネル制御部はストレージ装置のフロントエンド側の制御を司るもので、ホストとストレージ装置との間のリード・ライト、ストレージ装置間のリモートコピー、ストレージ装置内でのレプリカ作成を制御する。符合７０はホスト又は他のストレージ装置との接続用ポートである。ＣＰＵ７２は制御メモリ７６の制御プログラム７８に基づいて各種制御処理を主体的に実行する。キャッシュメモリ７４はデータ或いはコマンドの送受信を行なう。リモートコピーにおける、第１のストレージ装置と第２のストレージ装置との間でのデータ転送はキャッシュメモリ７４を介して行なわれる。
【００３３】
図４は、ストレージ装置１０とストレージ１２との間で行われるリモートコピーと、ストレージ装置１２において行われるローカルレプリケーションとを実行するためのボリュームペアについて説明するブロック図である。図４において、符合８０はローカルサイト側ストレージ装置１０の正データボリュームである。符合８２はリモートサイト側ストレージ装置１２の副データボリュームである。副データボリューム８２は正データボリューム８０の複製となるべきものである。
【００３４】
符合８４はローカルサイト側ストレージ装置の正ジャーナルボリュームであり、符号８６はリモートサイト側ストレージ装置の副ジャーナルボリュームである。符合８８は副ボリューム８２のレプリカ(バックアップボリューム)である。正ジャーナルボリューム８４と副ジャーナルボリューム８６とはペア関係にあり、副ジャーナルボリューム８６と副ボリューム８２とはペア関係にあり、さらに副ボリュームとレプリカ８８とはペア関係にある。二つのボリュームがペア関係にあることより、このペアを分割したり、同期させることによって、ペア関係にある二つのボリューム間でデータの転送を中断させたり、再開させることができる。
【００３５】
ホスト２０のアプリケーションプログラム６４がストレージ装置１０に書き込みＩＯ９４を発行すると、ストレージ装置１０のチャネルアダプタ１８は書き込みデータを正ボリューム８０に反映させる。チャネルアダプタは書き込みＩＯからジャーナルデータ９６を作成してこれを正ジャーナルボリューム８４に格納する。
【００３６】
ジャーナルデータとは、ホスト２０から正ボリューム８０に対して発行された、更新データそのものと、その更新が行われた正ボリュームの位置（正ボリュームの論理アドレス）、更新時刻(タイムスタンプ)、ジャーナルのシーケンスＩＤ等から構成される。シーケンスＩＤも請求項に記載したデータの時間的順序性を保証するためのパラメータである。この時間順序性は、ストレージ装置１２において、時刻を指定したバックアップを行なってレプリカを作成する場合に意義をもつものとなる。
【００３７】
正ジャーナルボリューム８４に格納されたジャーナルデータは、リモートコピー機能９８によってストレージ装置１２の副ジャーナルボリューム８６に転送される。第２のストレージ装置１２のチャネルアダプタ３７は、正ジャーナルボリューム８４に保持されているジャーナルデータを、ホスト２０からのライト動作とは非同期に読み出しこれを自身の副ジャーナルボリューム８６に格納する。
【００３８】
第２のストレージ装置のチャネルアダプタは、定期的に副ジャーナルボリューム８６にアクセスして副ジャーナルボリュームに格納してあるジャーナルデータから更新データを生成して、タイムスタンプおよびシーケンスＩＤの順序にしたがってこの更新データを副データボリューム８２に反映する（１００）。この反映をリストアという。これによってストレージ装置１２の副データボリューム８２は第１のストレージ装置の正データボリューム８０と同一のデータを有することなる。
【００３９】
副データボリューム８２からローカルレプリケーション１０２によってレプリカ８８が作成される。情報処理装置２０（情報処理装置４８であっても良い）がレプリカ作成タイミングをパラメータとしてストレージ装置１２に指定すると、そのパラメータを持つジャーナルデータまでを副データボリューム８２にリストアする。ストレージ装置はこのジャーナルデータが格納された副データボリューム８２をレプリカ８８にバックアップする。
【００４０】
図４において、ストレージ装置１０の正データボリューム８０、正ジャーナルボリューム８４、そして、ストレージ装置１２の副データボリューム８２、そして副ジャーナルボリューム８６によってジャーナルグループ９２が形成される。
【００４１】
ジャーナルグループとは、リモートコピーによってローカルサイトのジャーナルデータがリモートサイトのジャーナルボリュームにコピーされ、リモートサイトが遠隔コピーされたジャーナルによって時間的順序性を保証しつつ正ボリュームと同一の副ボリュームを形成する機能を実現するグループである。ストレージ装置１０又はストレージ装置１２は、正データボリューム８０を副データボリューム８２に初期コピーし、その後ホストからの正データボリューム８０に対する更新はジャーナル化され、ジャーナルデータが副データボリュームに反映されることなる。副データボリューム８２とレプリカ８８とはコンシステンシグループを形成している。コンシステンシグループは、レプリカのデータの時間的順序性を保証するためのものである。
【００４２】
ジャーナルグループ及びコンシステンシグループを構成するボリュームは、ホストのＤＫＣコントローラによって決定され、その決定はコマンドとしてストレージ装置１０及び１２に送信される。このコマンドを受けたストレージ装置のチャネルアダプタは共有メモリの制御テーブルにこれらグループを登録する。チャネルアダプタは制御テーブルを参照してリモートコピー及びローカルレプリケーションを行う。ホストはジャーナルグループとコンシステンシグループとを対応するように前記コマンドをストレージ装置に提供する。図４ではジャーナルグループ９２とコンシステンシグループ９０とを一対一に対応させている。こうすることにより、ジャーナルデータのタイムスタンプによる時間順序性を副データボリューム８２に反映でき、これをそのまま副データボリューム８２に対応したレプリカに反映させることができるので、レプリカが複数あってもレプリカ間で時間的な順序性が整合性されることになる。
【００４３】
図５はストレージ装置１０が図４に示すリモートコピーを実現するためのプログラムを示すブロック図である。ストレージ装置１０の共有メモリ２６には、Ｉ／Ｏ受付プログラム２６Ａと、リモートコピー（ＲＣ）ペア操作プログラム２６Ｂと、書き込みプログラム２６Ｃと、リモートコピーデータ転送プログラム２６Ｄとが格納されている。
【００４４】
各々のプログラムは、ストレージ装置のチャネル制御部１８及び/又はチャネル制御部２２によって実行される。なお、これらのプログラムはチャネル制御部のローカルメモリ７６に記憶されていてもよい。さらに、これら情報をハードディスク駆動装置３０の記憶領域によって構成されるボリューム３２に格納されていてもよい。
【００４５】
I/O受付プログラム２６Ａはホスト２０から論理ボリューム３２に書き込まれるためのデータを受信する処理を実行するプログラムである。リモートコピーペア操作プログラム２６Ｂは、ホスト２０からペア操作コマンドを受け、リモートコピーのペアを作成する操作（ペア操作）を行う処理を実行するプログラムである。
【００４６】
ペアは制御テーブルによって定義され、ストレージ装置１０はホスト２０からのペア操作コマンドを受けて共有メモリにペアを作成して登録する。ストレージ装置１０は、自身が有する論理ボリュームをペアに充当する。ストレージ装置１０がペアに充当すべき論理ボリュームが無いと判断する場合には新たに論理ボリュームを作成してペアに充当する。
【００４７】
ストレージ装置１０はペアに関する制御テーブルを参照してリモートコピーをストレージ装置１２に対して行う。ここでのペアとは、図４に即して言うと、正データボリューム８０と副データボリューム８２とのペアである。
【００４８】
書き込みプログラム２６ＣはI/O受付プログラム２６Ａが受け取った書き込みデータを正ボリューム８０に格納するプログラムである。リモートコピーデータ転送プログラム２６Ｄはホスト２０からストレージ装置１０の論理ボリューム３２に書き込まれるデータからジャーナルを形成し、これを正ジャーナルボリューム８４に格納した後、これをストレージ装置１２の副ジャーナルボリューム８６に転送するプログラムである。
【００４９】
図３２はストレージ装置１２がリモートコピー機能及びレプリカ作成機能を実現するためのプログラムの構成を示したブロック図である。ストレージ装置１２の共有メモリ１３には、リモートコピーデータ転送プログラム１３Ａと、リモートコピーペア操作プログラム１３Ｂと、リストア処理プログラム１３Ｃと、レプリカ機能制御プログラム１３Ｄと、レプリカペア操作プログラム１３Ｅとが記憶されている。
【００５０】
リモートコピーデータ転送プログラム１３Ａは、ストレージ装置１０から転送されるジャーナルデータを受信する処理を実行するプログラムである。リモートコピーペア操作プログラム１３Ｂは、ホスト２０（又はホスト４８）から発行されたペア操作コマンドを受け、非同期リモートコピーのペアを作成する操作を行う処理を実行するためのプログラムである。
【００５１】
リストア処理プログラム１３Ｃは、リモートコピーデータ転送プログラム１３Ｂが受信したジャーナルデータを、ジャーナルデータのタイムスタンプなどのパラメータに基づいて、副ジャーナルボリューム８６から副データボリューム８２にリストアする処理を実行するプログラムである。
【００５２】
ストレージ装置１２は、ローカルレプリケーション機能を用いて、副ボリューム８２からバックアップボリュームである、レプリカ８８を作成する。ローカルレプリケーション機能は、レプリカ（ＬＲ）制御プログラム１３Ｄとレプリカペア操作プログラム１３Ｅとによって実行される。レプリカ制御プログラム１３Ｄは、副ボリューム８２に書き込まれたデータをレプリカペア制御テーブルに基づいてレプリカ８８にバックアップする処理を実行するプログラムである。
【００５３】
レプリカペア操作プログラム１３Ｅは、副ジャーナルボリューム８６のタイムスタンプを用いて、ユーザが望む時点でのバックアップを可能にするために、バックアップが行われる、副ボリューム８２からとレプリカ８８とのペアを制御するプログラムである。なお、ストレージ装置１２の制御テーブルには副ボリューム８２とバックアップボリューム８８との間のペア情報の他に、副ジャーナルボリューム８６と副ボリューム８２との間のペア情報も含まれる。
【００５４】
ストレージ装置１２がある時点でのレプリカを作成する際、副ジャーナルボリューム８６と副ボリューム８２との間のリストアをジャーナルデータのタイムスタンプによって制御する。ホストがバックアップ取得時刻をストレージ装置１２に予約すると、ストレージ装置１２のプログラムは、その時点で副ジャーナルボリューム８６から副データボリューム８２へのリストアを停止状態にして副ボリューム８２のデータを固定化する。ストレージ装置は、データが確定された副ボリューム８２をレプリカ８８にバックアップする。具体例については後述する。
【００５５】
ここで、副ジャーナルボリュームがキャッシュメモリによって構成された場合の不利な点について説明する。副データボリューム８２へのリストア処理が停止されている間、ストレージ装置１０からストレージ装置１２へのリモートコピーが継続すると、キャッシュメモリは容量が小さいためストレージ装置１２のキャッシュメモリが満杯になりこれ以上コピーできなくなる。これではトランザクションが喪失するおそれがある。そこで、リモートサイトでレプリカ作成の際には、リモートコピーを停止する必要がある。レプリカの作成には、比較的時間を要するために、リモートコピーの停止期間が長引くおそれがある。
【００５６】
これに対して、図１に係るリモートコピーシステムは、副ジャーナルボリューム８６にハードディスク駆動装置３０から供給される論理ボリューム３２を割り当てている。副ジャーナルボリュームには大容量の論理ボリュームをあてがうことができるので、リモートサイトでレプリカ作成の処理が行われ、副ボリュームへジャーナルデータのリストア処理が停止されていても、システムはリモートコピーを継続させることができる。
【００５７】
副ジャーナルボリュームの容量は、レプリカ作成に要する間のジャーナルデータ量を見積もり決定されればよい。リモートコピーを運用する形態にもよるが、例えば、レプリカを一昼夜の間のジャーナルデータ量を格納できる容量を持つものとすると、概ね３０００ギガバイトである。なお、ストレージ装置１０の正ジャーナルボリューム８４は、ハードディスク駆動装置３０に基づく論理ボリューム３２のほかキャッシュメモリの記憶領域から構成されても良い。
【００５８】
図６は図４に示すボリュームの構成の発展例を示すブロック図である。図４のシステムではローカルサイトの１基のストレージ装置とリモートサイトの１基のストレージ装置とを対応させて、リモートコピー及びローカルレプリケーションのシステムを構成した。既述のとおり一つのジャーナグループと一つのコンシステンシグループとをリンクさせていた。
【００５９】
図６のシステムは、ローカルサイト及びリモートサイトとも複数のストレージ装置から構成されていること、ローカルサイトとリモートサイト間でジャーナルグループとコンシステンシグループとの組が複数形成されている点において図４のシステムとは相違する。
【００６０】
ローカルサイトはストレージ装置１０Ａと１０Ｂとから構成されている。リモートサイトはストレージ装置１２Ａと１２Ｂとから構成されている。ストレージ装置１０Ａはストレージ装置１２Ａに接続され、ストレージ装置１０Ｂはストレージ装置１２Ｂに接続されている。
【００６１】
ストレージ装置１０Ａとストレージ装置１２Ａにおいては、ジャーナグループ９２Ａと９２Ｂとが形成されており、ジャーナルグループ９２Ａにはコンシステンシグループ９０Ａが一対一に対応し、ジャーナルグループ９２Ｂにはコンシステンシグループ９０Ｂが一対一に対応するように設けられている。ストレージ装置１０Ｂとストレージ装置１２Ｂにおいても、ジャーナルグループ９２Ｃとコンシステンシグループ９０Ｃとが一対一に対応するように設けられている。図６に示す、ジャーナルグループとコンシステンシグループの関係はストレージ装置１０Ａ，１０Ｂ，１２Ａ，１２Ｂの共有メモリに格納された制御テーブルによって定義される。
【００６２】
ジャーナルグループとコンシステンシグループとの一つの組み合わせが一つの業務に対応している。例えば、ローカルサイト及びリモートサイトが金融機関のシステムであると想定した場合、第１の組み合わせを個人向業務とし、第２の組み合わせを法人向業務とする場合である。なお、金融機関が新たな業務を開始する必要があり、既存のストレージ装置では処理しきれない場合、図６のようにローカルサイト及びリモートサイトともそれぞれストレージ装置を増設することが必要である。１０Ｂはローカルサイトにおいて増設されたストレージ装置であり，１２Ｂはリモートサイトにおいて増設されたストレージ装置である。
【００６３】
ホストから各ジャーナルグループの正データボリューム（８０Ａ，８０Ｂ，８０Ｃ）に発行されるホストＩＯ９４に同じ時間軸でのタイムスタンプが付されている。ストレージ装置１２Ａ，１２Ｂが各グループについてレプリカを作成する場合には、このタイムスタンプにしたがって副ジャーナルボリューム（８６Ａ，８６Ｂ，８６Ｃ）から副データボリューム（８２Ａ，８２Ｂ，８２Ｃ）へのリストアに対する処理、及び、副データボリュームからレプリカ（８８Ａ,８８Ｂ,８８Ｃ）の作成に対する処理を行う。したがって、各コンシステンシグループの枠を超えて、複数のコンシステンシグループにわたって、時間的整合性が確保されたレプリカの作成が可能となる。このことを換言すると、ローカルサイト及びリモートサイトにストレージ装置が増設されたとしても、時間的整合性が保証されたバックアップを作成できるということである。
【００６４】
なお、図４のシステムでも同様であるが、各グループにおいて、正データボリューム及び副データボリュームはそれぞれ複数存在する。一つの正データボリュームは一つの副データボリュームに対応している。副データボリュームに合わせて、レプリカも各グループに複数も受けられている。ジャーナルボリュームは各グループにおいて単一のものとして存在する。データのバックアップはコンシステンシグループ毎に行なわれる。したがって、コンシステンシグループに複数のバックアップ用ボリュームが存在しても、同一グループ間でバックアップタイミングを変更することができない。バックアップタイミングを変更する場合には、複数のバックアップ用ボリューム間でコンシステンシグループを分ければよい。
【００６５】
図７はストレージ装置１０がストレージ装置１２との間でリモートコピーを行なう際の制御テーブルの一つのリモートコピーペア制御テーブルである。ローカルサイトのストレージ装置１０がこの制御テーブルを参照して、コピー元ボリュームからコピー先ボリュームへリモートコピーを行なう。既述の例では、正ジャーナルボリュームがコピー元ボリュームであり、副ジャーナルボリュームがコポー先ボリュームである。
【００６６】
ストレージ装置１０はホストからのペア操作コマンドを受けて、このテーブルを共有メモリに作成する。ストレージ装置１０のチャネル制御部２２はリモートコピーを実行する際に、この制御テーブルを参照してコピー元ボリュームとコピー先ボリュームと両ボリュームのペア状態を認識する。
【００６７】
ボリューム♯は正データボリュームの識別番号であり、コピー先装置♯はリモートサイトを構成するストレージ装置１２の識別番号であり、コピー先ボリューム♯とは副データボリュームの識別番号であり、ジャーナルグループ♯とは、ジャーナルグループを識別できる識別番号であり、ペア状態は正ボリュームと副ボリュームとの間のペア状態を示すものである。
【００６８】
ストレージ装置１２の共有メモリ２６には同様な制御テーブルが格納されているが、コピー先装置の代わりにコピー元装置としてストレージ装置１０の識別情報が登録されている。ストレージ装置１２は制御テーブルにしたがってリモートコピーを処理する。
【００６９】
正データボリュームと副データボリュームからなるペアの状態として、“Simplex”、“Duplex”、“Suspend”、“Duplex-Pending”、“Suspending”がある。“Simplex”とは正データボリュームと副データボリューム間でリモートコピーが開始されていない状態である。“Duplex”状態は両ボリュームが同期している状態である。すなわち、ホストから正ボリュームにデータが書き込まれた場合、正データボリュームから副データボリュームへデータがリモートコピーされる状態である。
【００７０】
“Suspend”状態は正データボリュームと副データボリュームとの間のリモートコピーを中断、あるいは停止させた状態である。両ボリュームがペア関係にあることは維持されている。
【００７１】
“Suspending”状態は、“Duplex”状態から“Suspend”状態へ遷移するまでの状態である。“Suspending”状態では、正データボリュームから副データボリュームへ未だコピーされていないデータを、正データボリュームから副データボリュームに反映させる。“Duplex-Pending”状態は、“Simplex”状態または“Suspend”状態から“Duplex”状態に遷移するまでの状態である。“Duplex-Pending”状態では、正データボリュームと副データボリュームとのデータを一致させるため、正データボリュームに格納されているデータを副データボリュームにコピーする。正データボリュームと副データボリュームとのデータの同一性が確保された後、ペア状態は“Duplex”状態に変更される。
【００７２】
図８はジャーナルグループの管理テーブルである。ジャーナルグループ毎にジャーナルボリュームを構成するボリュームのボリューム数と、各ボリュームの識別番号（ボリューム♯）と、ボリュームの記憶容量（サイズ）と、ジャーナルボリュームにおけるジャーナル開始位置とジャーナル終了位置が登録されている。図８の制御テーブルはストレージ装置１０及び１２のそれぞれの共有メモリに格納されている。この管理テーブルはホストから発行されたジャーナル登録コマンドによって各ストレージ装置によって生成される。
【００７３】
図９はストレージ装置１２におけるローカルレプリケーションを制御するための、レプリカ機能ペア管理テーブルである。ストレージ装置のチャネル制御部３７は、この管理テーブル参照して副データボリュームからレプリカを作成する。この制御テーブルはストレージ装置１２がホスト２０又は４８からのコマンドを受けて作成し、これを共有メモリに登録する。
【００７４】
図９に示す管理テーブルにおいて、ボリューム♯はコピー元であるリモートコピーの副データボリュームの識別番号であり、コピー先ボリューム♯はバックアップボリュームとしてのレプリカである。コンシステンシグループ♯は、コピー元ボリュームとコピー先ボリュームとが属するコンシステンシグループの識別番号である。
【００７５】
図１０ないし図１１はホストが備えているコピーグループの管理テーブルである。ホストがこれらテーブルを参照して、ジャーナルグループやコンシステンシグループ、グループに属するボリュームを認識して、ストレージ装置にリモートコピーの実行、レプリカ作成の実行等のコマンドを出すことが出来る。
【００７６】
図１０はリモートコピー及びローカルレプリケーションのコピーグループを示す制御テーブルであり、リモートコピーかレプリカかのコピー種別、コピーグループに属するペアボリューム数、ローカルＤＫＣ（ローカルサイトのストレージ装置）のＩＤ、リモートＤＫＣ（リモートサイトのストレージ）のＩＤ、グループに付された識別ＩＤ(グループ♯)と、を含んでいる。
【００７７】
図６のシステムに照らす、名称Ａのグループはジャーナルグループ９２Ａであり、名称Ｂのグループはジャーナルグループ９２Ｂであり、名称Ｃのグループはジャーナルグループ９２Ｃであり、名称Ｄのグループはコンシステンシグループ９６Ａであり、名称Ｅのグループはコンシステンシグループ９６Ｂであり、名称Ｆのグループはコンシステンシグループ９６Ｃである。ＤＫＣ−Ａはストレージ装置１０Ａであり、ＤＫＣ−Ｂはストレージ装置１０Ｂであり、ＤＫＣ-Ｃはストレージ装置１２Ａであり、ＤＳＣ-Ｄはストレージ装置１２Ｂである。
【００７８】
例えば、コピーグループＡとコピーグループＤは同一のグループＩＤ（0ｘ00）が与えられている。これによって図６に示すように、ホストはジャーナルグループ９２Ａとコンシステンシグループ９０Ａとが一対一に対応させることができる。
【００７９】
図１１は、コピーグループＡに属するボリュームペアの管理テーブルである。ローカルボリューム♯は正データボリュームのＩＤであり、リモートボリュームは副データボリュームのＩＤである。図４に示すように、ジャーナルグループ９２Ａには複数の正データボリュームと複数の副データボリュームとが含まれている。図１１のテーブルは、各正データボリュームと副データボリュームとの対応関係を示している。コピーグループ毎にこの管理テーブルが設けられている。
【００８０】
図１２はデータの整合性を保証すべきコピーグループの組（コンテナ）を規定するための制御テーブルである。名称ＡＡは、図１０のコピーブループＡ，Ｂ，Ｃからなるコンテナを示し、名称ＢＢはコピーグループＤ、Ｅ，Ｆからなるコンテナを示している。ホストがコンテナ単位でバックアップ時刻を指定することによって、グループの枠を越えてコンテナの単位で同じタイミングでのバックアップが可能となる。
【００８１】
次に、バックアップの詳細について説明する。図１３はバックアップを実施するためのリモートコピーシステムの概略構成図である。ホスト２０又はホスト４８から、ストレージ装置１０又は１２にバックアップ時刻を指定するコマンドが通知される。ホストからのバックアップ時刻の指定は“AtTimeSplit”コマンドの形でストレージ装置に提供される。“AtTimeSplit”とは、指定された時刻で副ジャーナルボリューム８６から副データボリュームへのリストアを停止し、副データボリューム８２とレプリカボリュームとを再同期させるコマンドである。副ジャーナルボリューム８６から副データボリュームへのリストア実行中では、副データボリュームとレプリカとの間は分割状態にある。
【００８２】
符合２０２はホスト４８からストレージ装置１２に通知されるコマンドである。コマンドはＤＫＣコントローラ６４から発行される。コマンドは共有メモリのバックアップ時刻予約管理テーブル１１Ｃに記憶される。コマンド２００がローカルサイトのホスト２０から発行された場合は、ストレージ装置１０のコマンドデバイス１１Ａがコマンドを記憶し、記憶したコマンド２０４をストレージ装置１２のコマンドデバイス１１Ｂに格納する。ストレージ装置１２はコマンドデバイス１１Ｂからコマンドを受けてバックアップ予約時刻をバックアップ時刻予約管理テーブル１１Ｃに登録する。コマンドデバイスとはコマンドを記憶する論理記憶領域である。
【００８３】
図１４乃至図１７は、ストレージ装置１２がホストによって指定された未来時刻（Ｔ１）でバックアップを作成する一連の流れを示したものである。図１４に示すようにリストア処理中のジャーナルのタイムスタンプ時刻（Ｔ）が時刻（Ｔ１）にならない場合、ストレージ装置１２は、副ジャーナルボリューム８６から副データボリューム８２へのジャーナルデータのリストアを継続している。
【００８４】
副データボリューム８２とレプリカ８８との間のペア状態は“Split”(分割)である。レプリカ８８には前回のバックアップ時刻Ｔ０でのバックアップデータが記録されている。
【００８５】
次に、図１５に示すように、リストア処理中のジャーナルのタイムスタンプ時刻（Ｔ）が予約時刻（Ｔ１）を過ぎ、ストレージ装置１２のリストア処理プログラムが、時刻Ｔ１以降のジャーナルデータを検出すると、副ジャーナルボリューム８６から副データボリューム８２へのリストアを停止する。さらに、ストレージ装置は、副データボリューム８２とレプリカ８８との間のペア状態を分割状態から再同期（“Recync”）にする。これによって、副データボリューム８２からレプリカ８８へ時刻Ｔ０から時刻Ｔ１までのデータが差分コピーされる。レプリカ８８には時刻Ｔ１での副データボリュームのバックアップが形成される。この差分コピーが終了すると、副データボリューム８２とレプリカ８８との間は分割状態に成される。この分割状態が完了するまでリストアは停止されたままである(図１６)。
【００８６】
副データボリューム８２とレプリカ８８との間の分割が完了すると、副ジャーナルボリューム８６から副データボリューム８２への時刻Ｔ１以降のジャーナルデータのリストアが再開される(図１７)。
【００８７】
図１４乃至図１７において説明されたバックアップ開始からバックアップ完了まで、正ジャーナルボリューム９２から副ジャーナルボリューム８４へのジャーナルのリモートコピーは継続されている。ストレージ装置１２は、リストア停止期間中のジャーナルデータを副ジャーナルボリュームへ順次格納している。副ジャーナルボリュームから副データボリュームへリストアされたジャーナルデータは副ジャーナルボリュームから削除（パージ）される。
【００８８】
なお、図１７に代えてストレージ装置１２がリストアを再開しないモードを実行することもできる。ホストのユーザがリストアを再開するモードと、リストアの停止を継続するモードを選択できるようにしても良い。ホストはこの選択のためにユーザにＧＵＩに基づく操作機会を提供する。リストアを停止することを継続する利点は、ストレージ装置が次のバックアップ予約時刻でのレプリカを作成できるようにするためである。
【００８９】
図１８はバックアップ時刻の予約管理テーブルである。ホストがストレージ装置１２に、“AtTimeSplit”コマンドを送ると、ストレージ装置１２はこの管理テーブルを作成してこれを共有メモリに格納する。ストレージ１２がバックアップを行なう際にこの管理テーブルを参照して、バックアップを行なう。
【００９０】
予約管理テーブルにおいて、バックアップの予約時間は世代毎に順次レプリカに対して設定できる。一例として、世代♯１が１１：００のバックアップ、世代♯２が１２：００のバックアップ、世代♯３が１３：００のバックアップである。図１４乃至１７は世代♯１（１１：００）のみのバックアップを示している。
【００９１】
バックアップの整合性を保つために、一つのコンシステンシグループに同時には一つの予約しかできないようにすることが好ましい。一つのジャーナルグループについて複数の世代の予約が可能になるようにするためには、ジャーナルグループに別のコンシステンシグループを宛がってこれを第２世代以降として予約の登録ができる。例えば、一つのジャーナルグループに３つまでのコンシステンシグループを連携することができる。ジャーナルグループとそれぞれのコンシステンシグループの合計３つの組み合わせの各々について、ホストは予約時間を設定することができる。
【００９２】
バックアップに必要な情報として、コンシステンシグループのＩＤとレプリカ正ボリューム（リモートコピー副データボリューム）とレプリカ副ボリュームとの間のペア状態、予約時間、バックアップ予約の受付時間、タイムアウト時間が管理テーブルに登録されている。コンシステンシグループが連携されるべきジャーナルグループのＩＤも登録されている。
【００９３】
世代フラグはバックアップの予約を有効にするか、無効にするかを規定するフラグである。通常バックアップが必要であるので、このフラグはセットされているが、バックアップを撤回、中止する場合には、このフラグをリセットしておけばよい。
【００９４】
リストア処理モードとは、副ジャーナルボリュームとリモートコピー副ボリュームと間のリストア処理の状態に対応するものである。リストア処理モードが起動であるとはリストア処理が実行されるべきである状態を示している。リストア処理モードが停止とは、リストアを停止すべきであることを示している。ペア状態とはレプリカ正ボリューム（リモートコピー副ボリュームとレプリカ副ボリューム）間のペア状態を示し、管理テーブルに示した一例は、両ボリュームのペア状態がSplitにあることを示している。
【００９５】
ストレージ装置１２はホストからのコマンドがバックアップの禁止条件にあるか否かを管理プログラムで判断し、コマンドが禁止条件に一致する場合にはストレージ装置はコマンドを拒否し、これをホストに返す。例えば、予約設定コマンドで指定された論理ボリュームがリモートコピーの対象である副データボリュームでない場合、または、予約設定コマンドで指定された論理ボリュームがローカルレプリケーションにおける正ボリュームでない場合、予約対象のコンシステンシグループに既にバックアップの予約が設定されている場合である、同一のジャーナルグループに対して既に３つの予約が設定されている場合である。なお、図４において、ボリューム８２はリモートコピーにおける副ボリュームであると同時に、ローカルレプリケーションの正ボリュームである。ローカルレプリケーションにおけるコピー元ボリュームがリモートコピーにおける副ボリュームであり、かつローカルレプリケーションにおける正ボリュームでない場合には、ストレージ装置１２ホストからの予約設定コマンドを返しても良い。予約設定コマンドが禁止条件に合致するか否かはストレージ装置が既述の制御テーブルを参照して判断する。
【００９６】
ホストはストレージ装置に予約設定状態の確認コマンドを発行することができる。このコマンドを受けたストレージ装置は予約確認テーブルを参照してホストのコマンドに対して応答する。ホストはストレージ装置に予約解除コマンドを発行することができる。但し、予約されたバックアップをストレージ装置が実行中であるような場合は、ストレージ装置は予約解除コマンドを拒否してこれをホストに返却する。
ストレージ装置１２が図１４乃至図１８の処理を進める過程で、図１９に示すリストア処理プログラムを実行する。ストレージ装置は図１９に示すフローチャートを所定タイミングで繰り返し実行して、リストアの要否を判断している。
【００９７】
ストレージ装置がリストア処理を起動させると、リストアモードが起動状態であるか否かをチェックする（１９００）。この判定を否定した場合はリストアを終了する（１９２２）。この判定を肯定した場合には次のステップに移りバックアップの予約時間が有効であるか否かを世代フラグに基づいて検出する（１９０４）。
【００９８】
ストレージ装置がフラグを無効と判断した場合には、副ジャーナルボリューム８６にあるジャーナルデータで副データボリューム８２に反映していないデータを副データボリューム８２にリストアする（１９２０）。
【００９９】
次いで、ストレージ装置は、予約時刻からの経過時間がタイムアウト時間を過ぎたか否かを判定する(１９０６)。タイムアウト時間は図１８に示すように、予約管理テーブルに設定されている。
【０１００】
ここでタイムアウト時間について説明する。図１５で説明したように、バックアップ予約時刻がＴ１に設定されると、ストレージ装置は時刻Ｔ１以降のタイムスタンプを持ったジャーナルデータを見つけるまでリストア処理を継続する。仮に、時刻Ｔ１以降のジャーナルデータが無い場合、タイムアウト時間を設けないと、ストレージ装置はリストア処理を停止して時刻Ｔ１におけるバックアップを作成するステップに移れないことになる。タイムアウト時間としてはストレージ装置の運用上適宜決定される。図１８にはタイムアウト時間の一例として６０分が管理テーブルに登録されている。タイムアウト時間が制御テーブルに設定されることにより、時刻Ｔ１以降のジャーナルデータが副ジャーナルボリューム８６に流入しなくても、素早く確実にバックアップ処理を開始することができる。
【０１０１】
タイムアウト時間が経過していない場合、ストレージ装置は副ジャーナルボリューム８６から最新のジャーナルデータのタイムスタンプを読み、タイムスタンプ（ＪＮＬ時刻）が予約時刻以後か否かを判定する(１９０８)。ジャーナルデータの時刻が予約時刻前の場合にはリストア処理を行う(１９２０)。
【０１０２】
ジャーナルデータの時刻が予約時間以降である場合には、ストレージ装置はペア管理プログラムに、コンシステンシグループに属する、全てのボリュームペアについて、各ペアの副データボリュームとレプリカとを再同期を指示する（１９１０）。ストレージ装置は前について再同期が完了したかを判断する(１９１２)。これにより、ペア関係にあるボリューム間でバックアップが完了する。
【０１０３】
ストレージ装置はバックアップを終了すると、全てのペアについてのボリュームの分割を指示し（１９１４）、全ペアについて分割が完了したか否かをチェックする（１９１６）。全ペアについて分割が完了すると、バックアップの予約を無効化する、即ち管理テーブルの世代フラグをリセット（１９１８）して、リストア処理を終了する。
【０１０４】
次に、ストレージ装置１２が副ジャーナルボリューム８６から副データボリューム８２へのリストアを通常停止させ、ホストから指定された時刻に基づいてストレージ装置がバックアップを行なう、システムについて図２０乃至図２２を利用して説明する。
【０１０５】
図２０においては、ストレージ装置１２はホストからリストア処理を通常停止するコマンド受けている。リストア停止は停止指示時刻Ｔ０以降である。副ジャーナルボリューム８６には停止指示時刻以降のタイムスタンプを持ったジャーナルデータが累積的に格納されている。この間、副データボリューム８２とレプリカ８８とのペアは分割状態にある。レプリカには前回の予約時刻までのバックアップデータが格納されている。
【０１０６】
ホストがストレージ装置に対して現在時刻よりも過去の時刻Ｔ２を予約してバックアップコマンドを発行すると、ストレージ装置１２は副ジャーナルボリューム８６から副データボリューム８２へのリストアを再開させる(図２１)。ストレージ装置１２は時刻Ｔ２以降のジャーナルデータを発見するまでリストを継続する。
【０１０７】
次いで、ストレージ装置が時刻Ｔ２以降のジャーナルデータを検出すると、図２２に示すようにリストアを停止し、副データボリューム８２をレプリカボリュームに再同期させ、時刻Ｔ２までのデータをレプリカ機能副ボリュームにバックアップする。その後、ストレージ装置は両ボリュームからなるペアを分割状態にする。
【０１０８】
なお、ストレージ装置１２は副ジャーナルボリュームに格納されたジャーナルデータの容量が副ジャーナルボリュームの上限容量に達した場合には、副ジャーナルボリューム８６を正ジャーナルボリューム８４からSplitあるいはSuspendして、ジャーナルデータが副ジャーナルボリュームに流入しないようにできる。また、副ジャーナルボリュームに新たに記憶領域あるいは記憶資源を割り当ててジャーナル副ボリュームの実質的な容量を動的に増加させることもできる。
【０１０９】
図２３乃至２７には、ジャーナルデータにタイムスタンプを付加する機能有していないホストの場合に適用されるシステムが説明されている。メインフレーム系ホストに対してオープン系ホストではストレージ装置に対するデータ書き込みの際にタイムスタンプの機能を有していない。そこで、ホストのアプリケーション６４と連携してバックアップを作成したいタイミングでマーカジャーナル２３２を作成すべきコマンド２３０を、ローカルサイトの正ジャーナルボリューム８４に対して発行する。
【０１１０】
ローカルサイト側のストレージ装置１０は、このコマンドを受けるとコマンドを受けたタイミングでマーカジャーナル２３２を作成してこれを正ジャーナルボリューム８４に格納する。マーカジャーナルはマーカジャーナルが作成されたタイミングで正ジャーナルボリュームに格納されるために、リモートサイト側ストレージ装置１２がマーカジャーナルによってバックアップタイミングを把握することができる。ホストもマーカジャーナルによってバックアップタイミングをストレージ装置１２に設定することができる。なお、マーカジャーナルの作成をホストのアプリケーション６２が行なう理由は、ローカルサイト側に複数のストレージ装置があった場合、複数のストレージ装置間でマーカジャーナルの順序性を保証させるためである。マーカジャーナルを複数のストレージ装置のそれぞれにおいて作成できるようにすると、ストレージ装置同士の間でマーカジャーナルの順序性を合わせることが出来なくなるおそれがある。
【０１１１】
図２４に示すように、マーカジャーナルをストレージ装置１２が検出するまで、ストレージ装置はリストアを継続する。この時、副データボリューム８２はレプリカ８８から分割されている。レプリカには前回のマーカジャーナルに基づくタイミングでのバックアップデータが格納されている。
【０１１２】
図２５に示すように、ストレージ装置１２が副ジャーナルボリューム８６のジャーナルデータを順次分析している過程で新たにマーカジャーナルを検出すると、リストアを停止して、副データボリューム８２をレプリカに再同期させる。副データボリューム８２にはこのマーカジャーナルまでのジャーナルデータが格納されることになる。したがって、レプリカにはこのマーカジャーナルまでの副データボリュームのデータがバックアップされる。
【０１１３】
図２６に示すようにストレージ装置１２はバックアップコピー終了後、副データボリューム８２とレプリカとのペア状態を分割状態する。なお、既述のシステムにおいても同様であるが、ボリュームペア間のペア状態の変更は制御テーブルに反映される。
【０１１４】
図２７に示すように、両ボリュームの分割が完了されるまで、リストア処理は停止される。ストレージ装置が両ボリュームの分割の完了を制御テーブルを参照して検出すると、ジャーナルデータのリストアが再開される。リモートサイト側のストレージ装置は、マーカジャーナルを検出すると、図２３乃至図２７の処理を自動的に実行する。なお、ホストがストレージ装置にマーカジャーナルを指定して、ストレージ装置がホストからのこの指定を受けてバックアップを実行するものであっても良い。
【０１１５】
先に、図１８に関連して、一つコンシステンシグループには一つのバックアップ時刻のみ予約できること、一つのジャーナルグループには３つまで（３世代）バックアップ時刻の予約ができること、を説明した。図２８乃至図３１は、その具体例を示したシステム構成図である。
【０１１６】
図２８にはストレージ装置１２は、レプリカボリュームを予約時刻の順番に複数世代からなる複数のボリュームから構成している。８８Ａが第１世代のボリューム（VOL♯１）、８８Ｂが第２世代のボリューム（VOL♯２）、８８Ｃが第３世代のボリューム（VOL♯３）である。ストレージ装置１２はホストからのコマンドを受けて、図１８の管理テーブルに次のとおりバックアップの予約時刻を設定する。第１世代のボリューム８８Ａに、コンシステンシグループ♯0x10及びバックアップ予約時刻１０：００を、第２世代のボリューム８８Ｂに、コンシステンシグループ♯0x11及びバックアップ予約時刻１１：００を、第３世代のボリュームにコンシステンシグループ♯0x12及びバックアップ予約時刻１２：００をそれぞれ設定した。一つの副データボリューム８２に対して３つのバックアップ予約を適用したが、コンシステンシグループがそれぞれ別であるために、この予約は既述の禁止条件には該当しない。
【０１１７】
副データボリューム８２には順次ジャーナルデータのリストアが行なわれている。図２８は、現在時刻が１０：００に達していない状態を示している。この状態では、全世代のレプリカボリューム８８Ａ乃至８８Ｃが副データボリュームから分割されている。
【０１１８】
図２９は、ジャーナルデータに第１世代における予約時刻である１０：００以降のタイムスタンプがあり、ストレージ装置１２がこれを検出した場合のシステム図である。ストレージ装置は副データボリューム８２へのリストアを停止して、第１世代に係るレプリカ８８Ａを副データボリューム８２に再同期させる。他のレプリカボリュームは副データボリュームから分割されたままである。
【０１１９】
ストレージ装置がボリューム８８Ａへ１０：００までのデータをバックアップすることを完了した場合は、ボリューム８８Ａを副データボリュームから分割し、副データボリュームへのリストアを再開する。
【０１２０】
図３０は、リストアの過程でストレージ装置が１１：００以降のジャーナルを検出すると、ストレージ装置はリストアを停止して、第２世代に係るレプリカ８８Ｂを副データボリューム８２に再同期させる。他のレプリカは副データボリュームから分割されたままである。
【０１２１】
ストレージ装置が１１：００までのデータをレプリカ８８Ｂに差分コピーすることを完了すると、レプリカ８８Ｂを副データボリュームから分割して、リストアを開始する。
【０１２２】
さらに、ストレージ装置がリストアの過程で１２：００以降のジャーナルを検出すると、ストレージ装置はリストアを停止して、第３世代に係るレプリカ８８Ｃを副データボリュームに再同期させる。他のレプリカは副データボリュームから分割されている。
【０１２３】
ストレージ装置が１２：００までのデータをレプリカ８８Ｃにバックアップすることを完了すると、レプリカ８８Ｃを副データボリュームから分割する。以上のようにすることにより、ストレージ装置１２は、各世代のバックアップボリュームを生成することができる。
【０１２４】
既述の実施形態では、副ジャーナルボリューム８６からジャーナルデータを副データボリューム８２にリストアした後は、ジャーナルデータをジャーナルボリュームからパージすると説明したが、ジャーナルデータをジャーナルボリュームに残しておくことにより、必要なタイミングでジャーナルデータを副データボリュームにリストすることもできる。したがって、副データボリューム自体がバックアップボリュームに相当するので、レプリカ機能に基づく既述のバックアップボリュームを省略することができる。
【０１２５】
既述の実施形態では大容量記憶デバイスとしてハードディスク駆動装置を述べたが、フラッシュメモリなどの半導体メモリを使用することもできる。既述の実施形態ではリモートコピー、バックアップに関するコマンドはホストがストレージ装置に送っていたが、管理端末がこれを行なっても良い。
【０１２６】
既述の実施形態は本発明の一例である。本発明は既述の実施形態を当業者が容易に変更可能な形態を包含する。
【図面の簡単な説明】
【０１２７】
【図１】本発明に係るリモートコピーシステムの一つの実施形態を示すハードウエアブロック図である。
【図２】ホスト（情報処理装置）のハードウエアブロック図である。
【図３】ストレージ装置のチャネル制御部のハードウエアブロック図である。
【図４】図１のシステムにおける論理ボリュームの接続関係を示す機能ブロック図である。
【図５】ホストのプログラム構成を示す機能ブロック図である。
【図６】図４に示した論理ボリュームの接続関係の発展例を示すブロック図である。
【図７】リモートコピーぺア制御テーブルである。
【図８】ジャーナルグループ管理テーブルである。
【図９】レプリカ機能ペア制御テーブルである。
【図１０】コピーグループ管理テーブルである。
【図１１】コピーグループのペア管理テーブルである。
【図１２】コピーグループコンテナ管理テーブルである。
【図１３】時刻指定によるバックアップ取得動作を実現するリモートコピーシステムのブロック図である。
【図１４】時刻指定バックアップを行なう際の、ボリューム間のリストア制御とボリューム間の分割・再同期に係る制御の一過程に係るシステムブロック図である。
【図１５】図１４の次の段階を示すシステムブロック図である。
【図１６】図１５の次の段階を示すシステムブロック図である。
【図１７】図１６の次の段階を示すシステムブロック図である。
【図１８】バックアップ時刻の予約内容を示す管理テーブルである。
【図１９】ジャーナルデータを副ボリュームへリストアする動作を示すフローチャートである。
【図２０】時刻指定バックアップを行なう際の、ボリューム間のリストア制御とボリューム間の分割・再同期に係る制御の一過程に係る、図４のシステムとは別の実施形態を示すシステムブロック図である。
【図２１】図２０の次の段階を示すシステムブロック図である。
【図２２】図２１の次の段階を示すシステムブロック図である。
【図２３】さらに他のバックアップ処理に係る他の実施形態を示す、リモートコピーシステムのブロック図である。
【図２４】マーカジャーナルを用いたバックアップを行なう際の、ボリューム間のリストア制御とボリューム間の分割・再同期に係る制御の一過程に係るシステムブロック図である。
【図２５】図２４の次の段階を示すシステムブロック図である。
【図２６】図２５の次の段階を示すシステムブロック図である。
【図２７】図２６の次の段階を示すシステムブロック図である。
【図２８】副データボリュームについて複数世代のバックアップの予約とバックアップの実施とを説明するシステムブロック図である。
【図２９】図２８の次の段階を示すシステムブロック図である。
【図３０】図２９の次の段階を示すシステムブロック図である。
【図３１】図３０の次の段階を示すシステムブロック図である。
【図３２】リモートコピー及びバックアップを実現するための、ストレージ装置のプログラム構成を示す機能ブロック図である。
【符合の説明】
【０１２８】
１０…ローカルサイト側ストレージ装置、１２…リモートサイト側ストレージ装置、２０、４８…ホスト、３０…ハードディスク駆動装置(大容量記憶デバイス)、３２…論理ボリューム、８０…正データボリューム、８２…副データボリューム、８２…副ジャーナルボリューム、８４…正ジャーナルボリューム、８８…レプリカ
【図１】
2008181288.tif 000003
【図２】
2008181288.tif 000004
【図３】
2008181288.tif 000005
【図４】
2008181288.tif 000006
【図５】
2008181288.tif 000007
【図６】
2008181288.tif 000008
【図７】
2008181288.tif 000009
【図８】
2008181288.tif 000010
【図９】
2008181288.tif 000011
【図１０】
2008181288.tif 000012
【図１１】
2008181288.tif 000013
【図１２】
2008181288.tif 000014
【図１３】
2008181288.tif 000015
【図１４】
2008181288.tif 000016
【図１５】
2008181288.tif 000017
【図１６】
2008181288.tif 000018
【図１７】
2008181288.tif 000019
【図１８】
2008181288.tif 000020
【図１９】
2008181288.tif 000021
【図２０】
2008181288.tif 000022
【図２１】
2008181288.tif 000023
【図２２】
2008181288.tif 000024
【図２３】
2008181288.tif 000025
【図２４】
2008181288.tif 000026
【図２５】
2008181288.tif 000027
【図２６】
2008181288.tif 000028
【図２７】
2008181288.tif 000029
【図２８】
2008181288.tif 000030
【図２９】
2008181288.tif 000031
【図３０】
2008181288.tif 000032
【図３１】
2008181288.tif 000033
【図３２】
2008181288.tif 000034