(57)【要約】【課題】指定時刻のデータコピーを取得する際に、当該指定時刻にコピー元のデータに入出力要求が発生している場合であっても、回復時間を短縮できる手段を提供すること。【解決手段】データを格納した第１の記憶装置（１０５）と、データのコピーを取得する第２の記憶装置（１０６）と、第１の記憶装置にデータを書き込むホストコンピュータ（１０４）とを含むシステムにおいて、第２の記憶装置（１０６）が、ホストコンピュータ（１０４）において第１のディスク装置（１０５）への入出力要求が発生していない場合に、所定時間間隔で発行される空入出力要求を取得する手順と、空入出力要求を所定時間連続して取得した時刻のうち、データのコピーを取得する目標時刻である所定のデータコピー取得時刻に最も近い時刻を、データのコピーを取得するコピー実行時刻に決定する手順とを含むコピー制御方法。【選択図】図１
2008129809.tif 000002
【特許請求の範囲】
【請求項１】
データを格納した第１の記憶装置と、前記データのコピーを取得する第２の記憶装置と、前記第１の記憶装置に前記データを書き込むホストコンピュータとを含むシステムにおけるコピー制御方法であって、
前記第２の記憶装置が、
前記ホストコンピュータにおいて前記第１のディスク装置への入出力要求が発生していない場合に、所定時間間隔で発行される空入出力要求を取得し、
前記空入出力要求を所定時間連続して取得した時刻のうち、前記データのコピーを取得する目標時刻である所定のデータコピー取得時刻に最も近い時刻を、前記データのコピーを取得するコピー実行時刻に決定すること、
を特徴とするコピー制御方法。
【請求項２】
データを格納した第１の記憶装置と、前記データのコピーを取得する第２の記憶装置と、前記第１の記憶装置に前記データを書き込むホストコンピュータとを含むシステムにおけるコピー制御方法であって、
前記第２の記憶装置が、
前記データのコピーを取得する目標時刻である所定のデータコピー取得時刻と、このデータコピー取得時刻を挟んで所定の時間幅で設定された、データコピー開始時刻及びデータコピー終了時刻とを取得し、
前記ホストコンピュータにおいて前記第１のディスク装置への入出力要求が発生していない場合に、所定時間間隔で発行される空入出力要求を取得し、
前記データコピー開始時刻から前記データコピー取得時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻を、仮のデータコピー実行時刻として設定し、
前記データコピー取得時刻から前記データコピー終了時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻と、前記仮のデータコピー実行時刻とを比較して、前記データコピー取得時刻に近い時刻を、前記データのコピーを取得するコピー実行時刻に決定すること、
を特徴とするコピー制御方法。
【請求項３】
データを格納した第１の記憶装置と、前記データのコピーを取得する第２の記憶装置と、前記第１の記憶装置に前記データを書き込むホストコンピュータとを含むシステムにおけるコピー制御方法であって、
前記第２の記憶装置が、
データコピー開始時刻及びデータコピー終了時刻を取得し、
前記ホストコンピュータにおいて前記第１のディスク装置への入出力要求が発生していない場合に、所定時間間隔で発行される空入出力要求を取得し、
前記データコピー開始時刻から前記データコピー終了時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻の前記データのコピーを格納すること、
を特徴とするコピー制御方法。
【請求項４】
データを格納した第１の記憶装置と、前記データのコピーを取得する第２の記憶装置と、前記第１の記憶装置に前記データを書き込むホストコンピュータとを含むシステムにおけるコピー制御方法であって、
前記第２の記憶装置が、
前記データのコピーを取得する目標時刻である所定のデータコピー取得時刻と、このデータコピー取得時刻を挟んで所定の時間幅で設定された、データコピー開始時刻及びデータコピー終了時刻とを取得し、
前記第１の記憶装置から取得した前記データの更新内容である更新データを、前記第２の記憶装置のジャーナル領域に格納し、
前記データコピー開始時刻から前記データコピー取得時刻までの間で、前記ホストコンピュータにおいて前記第１のディスク装置への入出力要求が発生していない場合に所定時間間隔で発行される空入出力要求を所定時間連続して取得した時刻を、仮のデータコピー実行時刻として設定し、前記ジャーナル領域に格納された前記更新データを前記第２の記憶装置のコピー領域に反映して、前記仮のデータコピー実行時刻における前記データとして格納し、
前記データコピー取得時刻から前記データコピー終了時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻と、前記仮のデータコピー実行時刻とを比較して、前記データコピー取得時刻に近い時刻を前記データのコピーを取得するコピー実行時刻に決定し、
前記データコピー取得時刻から前記データコピー終了時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻が、前記データコピー取得時刻に近い場合、当該時刻に前記ジャーナル領域に格納されている前記更新データを前記コピー領域に反映して、前記データを更新し、
決定した前記コピー実行時刻の前記コピー領域の前記データを、前記第２の記憶装置の指定時刻コピー領域に格納すること、
を特徴とするコピー制御方法。
【請求項５】
データを格納した第１の記憶装置と、前記データのコピーを取得する第２の記憶装置と、前記第１の記憶装置に前記データを書き込むホストコンピュータとを含むシステムにおけるコピー制御方法であって、
前記第２の記憶装置が、
前記第１の記憶装置から取得した前記データの更新内容である更新データを前記第２の記憶装置のコピー領域に反映して、前記データとして格納し、
データコピー開始時刻及びデータコピー終了時刻を取得し、
前記データコピー開始時刻から前記データコピー終了時刻までの間で、前記ホストコンピュータにおいて前記第１のディスク装置への入出力要求が発生していない場合に所定時間間隔で発行される空入出力要求を所定時間連続して取得した時刻の前記コピー領域の前記データを、前記第２の記憶装置の指定時刻コピー領域に格納すること、
を特徴とするコピー制御方法。
【請求項６】
前記第２の記憶装置が、
前記データコピー開始時刻から前記データコピー終了時刻までの間で、前記空入出力要求または前記更新データを取得できない場合は、前記データのコピーを前記指定時刻コピー領域に格納しないこと、
を特徴とする請求項４または請求項５に記載のコピー制御方法。
【請求項７】
データを格納した第１の記憶装置と、前記データのコピーを取得する第２の記憶装置と、前記第１の記憶装置に前記データを書き込むホストコンピュータとを含むシステムにおけるコピー制御方法であって、
前記第１の記憶装置が、前記ホストコンピュータから取得した前記データの更新内容である更新データを、前記第２の記憶装置に送信し、
前記第２の記憶装置が、取得した前記更新データを、前記第２の記憶装置のコピー領域に反映して、前記データとして格納し、
前記ホストコンピュータまたは前記第１の記憶装置が、前記第１のディスク装置への入出力要求が発生していない場合に、所定時間間隔で発行する空入出力要求を、前記第２の記憶装置に送信し、
前記第２の記憶装置が、前記空入出力要求を所定時間連続して取得した時刻のうち、前記データのコピーを取得する目標時刻である所定のデータコピー取得時刻に最も近い時刻を、前記データのコピーを取得するコピー実行時刻に決定し、
前記第２の記憶装置が、決定した前記コピー実行時刻の前記コピー領域の前記データを、前記第２の記憶装置の指定時刻コピー領域に格納すること、
を特徴とするコピー制御方法。
【請求項８】
データを格納した第１の記憶装置と、前記データのコピーを取得する第２の記憶装置と、前記第１の記憶装置に前記データを書き込むホストコンピュータとを含むシステムにおけるコピー制御方法であって、
前記第１の記憶装置が、前記ホストコンピュータから取得した前記データの更新内容である更新データを、前記第２の記憶装置に送信し、
前記第２の記憶装置が、取得した前記更新データを、前記第２の記憶装置のジャーナル領域に格納し、
前記第２の記憶装置が、前記データのコピーを取得する目標時刻である所定のデータコピー取得時刻と、このデータコピー取得時刻を挟んで所定の時間幅で設定された、データコピー開始時刻及びデータコピー終了時刻とを取得し、
前記ホストコンピュータまたは前記第１の記憶装置が、前記第１のディスク装置への入出力要求が発生していない場合に、所定時間間隔で発行される空入出力要求を、前記第２の記憶装置に送信し、
前記第２の記憶装置が、前記データコピー開始時刻から前記データコピー取得時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻を仮のデータコピー実行時刻として設定し、前記ジャーナル領域に格納された前記更新データをコピー領域に反映して、前記データとして格納し、
前記第２の記憶装置が、前記データコピー取得時刻から前記データコピー終了時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻と、前記仮のデータコピー実行時刻とを比較して、前記データコピー取得時刻に近い時刻を前記データのコピーを取得するコピー実行時刻に決定し、
前記データコピー取得時刻から前記データコピー終了時刻までの間で前記空入出力要求を所定時間連続して取得した時刻が、前記データコピー取得時刻に近い場合、当該時刻に前記ジャーナル領域に格納されている前記更新データをコピー領域に反映して、前記データを更新し、
前記第２の記憶装置が、決定した前記コピー実行時刻の前記コピー領域の前記データを、指定時刻コピー領域に格納すること、
を特徴とするコピー制御方法。
【請求項９】
データを格納した第１の記憶装置と、前記データのコピーを取得する第２の記憶装置と、前記第１の記憶装置に前記データを書き込むホストコンピュータとを含むシステムにおけるコピー制御方法であって、
前記第１の記憶装置が、前記データの更新内容である更新データを前記第２の記憶装置に送信し、
前記第２の記憶装置が、取得した前記更新データを、前記第２の記憶装置のコピー領域に反映して、前記データとして格納し、
前記第２の記憶装置が、データコピー開始時刻及びデータコピー終了時刻を取得し、
前記ホストコンピュータまたは前記第１の記憶装置が、前記第１のディスク装置への入出力要求が発生していない場合に、所定時間間隔で発行される空入出力要求を、前記第２の記憶装置に送信し、
前記第２の記憶装置が、前記データコピー開始時刻から前記データコピー終了時刻までの間で、前記空入出力要求を所定時間連続して取得した場合、この時刻の前記コピー領域の前記データを、前記第２の記憶装置の指定時刻コピー領域に格納すること、
を特徴とするコピー制御方法。
【請求項１０】
前記第２の記憶装置が、前記データコピー開始時刻から前記データコピー終了時刻までの間で、前記空入出力要求または前記更新データを取得できない場合は、前記データのコピーを前記指定時刻コピー領域に格納しないこと、
を特徴とする請求項８または請求項９に記載のコピー制御方法。
【請求項１１】
ホストコンピュータのデータを格納した第１の記憶装置のデータのコピーを取得して格納する記憶装置であって、
前記記憶装置は、
前記ホストコンピュータにおいて前記第１のディスク装置への入出力要求が発生していない場合に、所定時間間隔で発行される空入出力要求を少なくとも取得する入力部と、
前記空入出力要求を所定時間連続して取得した時刻のうち、前記データのコピーを取得する目標時刻である所定のデータコピー取得時刻に最も近い時刻を、前記データのコピーを取得するコピー実行時刻に決定する演算部とを備えること、
を特徴とする記憶装置。
【請求項１２】
ホストコンピュータのデータを格納した第１の記憶装置のデータのコピーを取得して格納する記憶装置であって、
前記記憶装置は、
前記データのコピーを取得する目標時刻である所定のデータコピー取得時刻と、このデータコピー取得時刻を挟んで所定の時間幅で設定された、データコピー開始時刻及びデータコピー終了時刻と、前記ホストコンピュータにおいて前記第１のディスク装置への入出力要求が発生していない場合に、所定時間間隔で発行される空入出力要求とを少なくとも取得する入力部と、
前記データコピー開始時刻から前記データコピー取得時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻を、仮のデータコピー実行時刻として設定し、前記データコピー取得時刻から前記データコピー終了時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻と、前記仮のデータコピー実行時刻とを比較して、前記データコピー取得時刻に近い時刻を、前記データのコピーを取得するコピー実行時刻に決定する演算部とを備えること、
を特徴とする記憶装置。
【請求項１３】
ホストコンピュータのデータを格納した第１の記憶装置のデータのコピーを取得して格納する記憶装置であって、
前記記憶装置は、
データコピー開始時刻及びデータコピー終了時刻と、前記ホストコンピュータにおいて前記第１のディスク装置への入出力要求が発生していない場合に、所定時間間隔で発行される空入出力要求とを少なくとも取得する入力部と、
前記データコピー開始時刻から前記データコピー終了時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻の前記データのコピーを格納する演算部とを備えること、
を特徴とする記憶装置。
【請求項１４】
ホストコンピュータのデータを格納した第１の記憶装置のデータのコピーを取得して格納する記憶装置であって、
前記記憶装置は、
前記第１の記憶装置から取得した前記データの更新内容である更新データが格納されるジャーナル領域と、前記データが格納されるコピー領域と、前記データのコピーを取得するコピー実行時刻の前記データが格納される指定時刻コピー領域とを備える記憶部と、
前記データのコピーを取得する目標時刻である所定のデータコピー取得時刻と、このデータコピー取得時刻を挟んで所定の時間幅で設定されたデータコピー開始時刻及びデータコピー終了時刻と、前記ホストコンピュータにおいて前記第１のディスク装置への入出力要求が発生していない場合に、所定時間間隔で発行される空入出力要求と、前記更新データとを取得する入力部と、
前記データコピー開始時刻から前記データコピー取得時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻を、仮のデータコピー実行時刻として設定し、前記ジャーナル領域に格納された前記更新データを、前記コピー領域に反映して、前記データとして格納し、
前記データコピー取得時刻から前記データコピー終了時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻と、前記仮のデータコピー実行時刻とを比較して、前記データコピー取得時間に近い時刻を前記コピー実行時刻に決定し、前記データコピー取得時刻から前記データコピー終了時刻までの間で、前記空入出力要求を所定時間連続して取得した時刻が、前記データコピー取得時刻に近い場合、この時刻に前記ジャーナル領域に格納されている前記更新データを前記コピー領域に反映して、前記データを更新し、前記決定した前記コピー実行時刻の前記コピー領域の前記データを、前記指定時刻コピー領域に格納する演算部とを備えること、
を特徴とする記憶装置。
【請求項１５】
ホストコンピュータのデータを格納した第１の記憶装置のデータのコピーを取得して格納する記憶装置であって、
前記記憶装置は、
前記データが格納されるコピー領域と、前記データのコピーを取得するコピー実行時刻の前記データが格納される指定時刻コピー領域とを備える記憶部と、
前記第１の記憶装置から伝送された前記データの更新内容である更新データと、データコピー開始時刻及びデータコピー終了時刻と、前記ホストコンピュータにおいて前記第１のディスク装置への入出力要求が発生していない場合に、所定時間間隔で発行される空入出力要求とを取得する入力部と、
前記更新データを前記コピー領域に反映して前記データとして格納し、前記データコピー開始時刻から前記データコピー終了時刻までの間で、前記空入出力要求を所定時間連続して取得した場合、この時刻の前記コピー領域の前記データを、前記指定時刻コピー領域に格納する演算部とを備えること、
を特徴とする記憶装置。
【請求項１６】
前記演算部は、前記データコピー開始時刻から前記データコピー終了時刻までの間で、前記空入出力要求または前記更新データを取得できない場合は、前記データのコピーを前記指定時刻コピー領域に格納しないこと、
を特徴とする請求項１４または請求項１５に記載の記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステムが保持するデータのデータコピー技術に関し、特に指定時刻にデータコピーを取得する際に、当該指定時刻を調整して最適な取得時刻を算出するコピー制御方法及び記憶装置に関する。
【背景技術】
【０００２】
従来、コンピュータシステムに保持されたデータを、業務処理の集中しない指定時刻にバックアップするために、さまざまな手法が開発されている。
例えば、特許文献１には、指定時刻のデータのデータコピー方法に関して、オンラインシステムで使用中のデータベースの更新動作を中断することなく、バッチ処理を行うための指定時刻のデータベースバックアップ方法及びデータベースバックアップ装置が開示されている。
【０００３】
また、他のバックアップの例として、特許文献２には、プライマリストレージに書きこまれるデータを、指定時刻ではなく、常時トラック、キャプチャーし、その変更部分のみを時系列的にセカンダリストレージに随時保管しておくことで、過去のある時点以降について、任意の時点のデータを再現する技術（ＣＤＰ：Continuous Data Protection）が開示されている。
【特許文献１】特開２００６−１５５６７６号公報（請求項１）
【特許文献２】特開２００５−１８７３８号公報（請求項１）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載の指定時刻のデータベースバックアップ方法及びデータベースバックアップ装置においては、指定時刻に例えば業務処理が稼働中であってもバックアップを取得できる。
しかしながら、このバックアップのデータは、前記の業務処理のプログラムが扱うデータとして見た場合、業務処理が未完了であるためにそのままでは使えないデータとなる。このため、更新後のデータや更新前のデータ（いわゆるジャーナル）を取得しておき、任意の指定時刻のバックアップを回復する必要があるが、復元に必要な更新後のデータ量や更新前のデータ量が多くなるにつれて回復に時間がかかる恐れがある。また、指定時刻に障害が発生している場合に、既存のコピー先のバックアップが上書きされる恐れもある。
【０００５】
また、引用文献２に記載のストレージベースのジャーナリングを用いてバックアップ及びリカバリを行う方法と装置においては、過去のある時点以降について、任意の時点のデータを再現することができる。
しかしながら、引用文献１に記載の技術と同様にジャーナルを用いて回復するため、回復に必要なジャーナルの量が多くなるにつれて、回復に時間を要するという問題点がある。
【０００６】
したがって本発明が解決しようとする課題は、指定時刻のデータコピーを取得する際に、当該指定時刻にコピー元のデータに入出力要求が発生している場合であっても、回復時間を短縮できる手段を提供することである。
【課題を解決するための手段】
【０００７】
前記の課題を解決するためになされた本発明は、データを格納した第１の記憶装置と、データのコピーを取得する第２の記憶装置と、第１の記憶装置に前記データを書き込むホストとを含むシステムにおけるコピー制御方法であって、第２の記憶装置が、ホストにおいて第１のディスク装置への入出力要求が発生していない場合に、所定時間間隔で発行される空入出力要求を取得する手順と、空入出力要求を所定時間連続して取得した時刻のうち、データのコピーを取得する目標時刻である所定のデータコピー取得時刻に最も近い時刻を、データのコピーを取得するコピー実行時刻に決定する手順とを含むことを特徴としている。
なお、本発明の他の態様は、後記する実施の形態の中で詳しく説明する。
【発明の効果】
【０００８】
本発明によれば、指定時刻（データコピー取得時刻）のデータコピーを取得する際に、当該指定時刻にコピー元のデータに入出力要求が発生している場合であっても、入出力要求をさけてデータを取得するため、データコピーの回復時間を短縮することができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の好適な実施の形態を添付した図面を参照しつつ、詳しく説明する。なお、以下の実施の形態では、第１のディスク装置のバックアップを指定時刻に取得する際に、指定時刻の前後において第１のディスク装置に対するＩ／Ｏ（Input/Output：入出力要求）の区切りを検出し、そのタイミングで第２のディスク装置にバックアップを実行するための記憶領域制御方法及び記憶領域制御システムについて、２つの実施形態を示して説明する。
【００１０】
（第１実施形態：システム構成）
図１は、本発明の第１の実施形態に係る記憶領域制御システムの構成ブロック図である。図１に示すように、本実施形態の記憶領域制御システムは、サイトＡ１０１のホストＡ１０４と、ホストＡ１０４に接続されたディスク制御装置Ａ１０５１及びディスク装置Ａ１０５６を有する記憶領域サブシステムＡ１０５と、サイトＢ１０２のディスク制御装置Ｂ１０６１及びディスク装置Ｂ１０６６を有する記憶領域サブシステムＢ１０６とを有している。
【００１１】
また、サイトＡ１０１のディスク制御装置Ａ１０５１とサイトＢ１０２のディスク制御装置Ｂ１０６１とは高速なデータ送受信が可能である、例えば、ＬＡＮ（Local Area Network）やＳＡＮ(Storage Area Network)などの通信回線１０３で接続されている。
サイトＡ１０１のディスク制御装置Ａ１０５１と、サイトＢ１０２のディスク制御装置Ｂ１０６１とは通信回線１０３で接続されることで、サイトＢ１０２にサイトＡ１０１のディスク装置Ａ１０５６のコピーを作成することができる。
なお、本実施形態において、サイトＡ１０１とサイトＢ１０２とを異なるサイトとして示したが、同一サイトに設置してもよい。
【００１２】
以下、記憶領域制御システムの各構成要素について説明する。
ホストＡ１０４は、ディスク装置Ａ１０５６に格納されるデータの入出力要求を、ディスク制御装置Ａ１０５１に対して発行する。この入出力要求を受けたディスク制御装置Ａ１０５１は、ディスク装置Ａ１０５６に対して、データの読み出し、あるいは、書き込みを行う。このホストＡ１０４は、ＣＰＵ（Central Processing Unit）１０４１、メモリ１０４２、及び入出力インタフェース１０４３を備えるコンピュータである。ＣＰＵ１０４１は、メモリ１０４２に格納されたプログラムを目的に応じて実行する。メモリ１０４２は、ホストＡ１０４で動作するプログラムやデータを格納する。入出力インタフェース１０４３はディスク制御装置Ａ１０５１との間でデータの送受信を行う。
なお、ホストＡ１０４のメモリ１０４２に格納されたプログラムの詳細は後記する。
【００１３】
ディスク制御装置Ａ１０５１は、入出力インタフェース１０５２、ＣＰＵ１０５３、メモリ１０５４、及び記憶領域インタフェース１０５５を備える。
入出力インタフェース１０５２は、ホストＡ１０４との間でデータの送受信と、ディスク制御装置Ｂ１０６１との間でデータの転送を行う。ＣＰＵ１０５３は、メモリ１０５４に格納されたプログラムを実行する。メモリ１０５４は、ディスク制御装置Ａ１０５１で稼動するプログラムやデータを格納する。記憶領域インタフェース１０５５は、ディスク装置Ａ１０５６との間でデータの送受信を行う。
なお、ディスク制御装置Ａ１０５１のメモリ１０４２に格納されたプログラムの詳細は後記する。
【００１４】
ディスク装置Ａ１０５６は複数の記憶領域１０５７からなる２次記憶装置であり、ハードディスクドライブ、光ディスクドライブ、磁気テープドライブ、シリコンディスク等のさまざまなストレージデバイスにより具現することができる。
【００１５】
サイトＢ１０２は、入出力インタフェース１０６２、ＣＰＵ１０６３、メモリ１０６４及び記憶領域インタフェース１０６５を備えるディスク制御装置Ｂ１０６１と、複数の記憶領域１０６７を備えるディスク装置Ｂ１０６６から構成される。ディスク制御装置Ｂ１０６１の構成は、ディスク制御装置Ａ１０５１とほぼ同様であるため、その説明は省略する。ただし、ディスク制御装置Ｂ１０６１のメモリ１０６４に格納されたプログラムの内容は異なるが、このプログラムの詳細は後記する。
【００１６】
（作用）
ここで、図２は、図１に示した記憶領域制御システムにおいて、非同期コピーによるデータコピー及び指定時刻のデータのデータコピーを取得する運用を説明する説明図である。
以下、図２を参照しつつ、非同期コピーによるデータコピーと、指定時刻のデータのデータコピーを取得する運用例を説明する（適宜、図１参照のこと）。
【００１７】
本実施形態の記憶領域制御システムでは、業務などの処理を実行するサイトをサイトＡ１０１とし、そのサイトのコンピュータをホストＡ１０４、このサイトＡ１０１の記憶装置を記憶領域サブシステムＡ１０５とする。また、サイトＡ１０１のデータコピーを保持しているサイトをサイトＢ１０２とし、このサイトＢ１０２の記憶装置を記憶領域サブシステムＢ１０６とする。
【００１８】
また、記憶領域制御システムにおいてホストＡ１０４のメモリ１０４２に格納されたコピー制御プログラム１１２からの非同期コピーや指定時刻のデータのデータコピー指示により、記憶領域サブシステムＡ１０５のデータボリューム１２１が記憶領域サブシステムＢ１０６のコピーボリューム１３１、及び業務などの区切りのデータコピー１３３にコピーされる。
なお、記憶領域サブシステムＡ１０５のデータボリューム１２１及び後記するジャーナルＡ１２２は、ディスク装置Ａ１０５６の各記憶領域１０５７に格納され、記憶領域サブシステムＢ１０６のコピーボリューム１３１、業務などの区切りのデータコピー１３３及びジャーナルＢ１３２は、ディスク装置Ｂ１０６６の各記憶領域１０６７に格納されている。
【００１９】
ここで、非同期コピーとは、記憶領域サブシステムＡ１０５のデータボリューム１２１への更新内容を、非同期に記憶領域サブシステムＢ１０６のコピーボリューム１３１に反映してデータのデータコピーを取得することである。非同期コピーを実行することで、コピーボリューム１３１にデータボリューム１２１のデータが、常時、データコピーされる。ただし、非同期にデータコピーを取得するため、コピーボリューム１３１のデータはデータボリューム１２１のデータよりも古いことになる。
【００２０】
一方、指定時刻のデータコピーとは、記憶領域サブシステムＡ１０５の指定時刻におけるデータボリューム１２１のデータを、記憶領域サブシステムＢ１０６の業務などの区切りのデータコピー１３３にコピーすることである。この指定時刻のデータのデータコピーは、一般的に、業務などが稼働していない時間に取得される。従って、業務などの区切りのデータコピー１３３に格納されるデータコピーは、業務などの区切りで取得されたデータコピーである。
このため、業務などの区切りのデータコピー１３３は、ホストＡ１０４が実行する業務プログラムなどのデータとして見た場合に、業務処理が未完了であるためにそのままでは使えない場合などにも利用される。
【００２１】
本実施形態のホストＡ１０４のメモリ１０４２には、オペレーティングシステム１１０と、データを書き込むプログラム１１１と、コピー制御プログラム１１２が格納され、これらのプログラムをＣＰＵ１０４１が実行している。オペレーティングシステム１１０はデータを書き込むプログラム１１１やコピー制御プログラム１１２からの入出力要求を処理する。また、データを書き込むプログラム１１１は、記憶領域サブシステムＡ１０５内のデータボリューム１２１へのデータ書き込みを行いながら業務処理を実行するプログラムである。また、コピー制御プログラム１１２は、非同期コピーや指定時刻のデータのデータコピーを入出力要求として指示するプログラムである。
【００２２】
記憶領域サブシステムＡ１０５のメモリ１０５４には、記憶領域制御プログラムＡ１１３が格納され、ディスク装置Ａ１０５６の各記憶領域１０５７には、データボリューム１２１及びジャーナルＡ１２２が格納されている。
ここで、記憶領域制御プログラムＡ１１３は、ホストＡ１０４のオペレーティングシステム１１０からの入出力要求を処理するプログラムである。
また、記憶領域サブシステムＡ１０５のジャーナルＡ１２２は、データボリューム１２１への更新内容を更新データ情報として蓄積するボリュームである。
【００２３】
記憶領域サブシステムＢ１０６のメモリ１０６４には、記憶領域制御プログラムＢ１１４が格納され、ディスク装置Ｂ１０６６の各記憶領域１０６７には、コピーボリューム１３１及びジャーナルＢ１３２が格納されている。
ここで、記憶領域制御プログラムＢ１１４は、記憶領域制御プログラムＡ１１３からの入出力要求を処理するプログラムである。
また、記憶領域サブシステムＢ１０６のジャーナルＢ１３２は、コピーボリューム１３１への更新内容を更新データ情報として蓄積するボリュームである。
【００２４】
次に、データを書き込むプログラム１１１からデータの書き込みが行われた場合の非同期コピーの動作の概略を説明する。なお、この非同期コピーは公知の技術である。
【００２５】
まず、ホストＡ１０４のデータを書き込むプログラム１１１からのデータの書き込みは、オペレーティングシステム１１０によって処理される。データを書き込むプログラム１１１からオペレーティングシステム１１０にデータの書き込みが指示されると、データを書き込むプログラム１１１から受け取った更新データを、後記する更新データ情報１１０３（図３、図７参照）に設定して記憶領域サブシステムＡ１０５に伝送する。
【００２６】
次に、記憶領域サブシステムＡ１０５では、記憶領域制御プログラムＡ１１３が、受け取った更新データをデータボリューム１２１に書き込み、同時にジャーナルＡ１２２に格納する。この際、記憶領域制御プログラムＡ１１３は、データボリューム１２１への書き込みが完了した時点で、入出力が完了したことを、ホストＡ１０４のオペレーティングシステム１１０へ通知する。
以上の手順で、ホストＡ１０４のデータを書き込むプログラム１１１が出力した更新データが、記憶領域サブシステムＡ１０５のデータボリューム１２１及びジャーナルＡ１２２に反映される。
【００２７】
次に、ホストＡ１０４のコピー制御プログラム１１２からの非同期コピーの指示の動作と、コピー制御プログラム１１２から非同期コピーの指示が行われた場合の非同期コピーの動作の概略を説明する。
【００２８】
まず、ホストＡ１０４のコピー制御プログラム１１２からの非同期コピーの指示は、オペレーティングシステム１１０と、記憶領域サブシステムＡ１０５の記憶領域制御プログラムＡ１１３の後記するリモートＩ／Ｏ制御部１１３３（図５参照）を経由して、記憶領域サブシステムＢ１０６の記憶領域制御プログラムＢ１１４に制御が渡される。
【００２９】
ホストＡ１０４のコピー制御プログラム１１２から非同期コピーの指示が行われると、記憶領域サブシステムＢ１０６の記憶領域制御プログラムＢ１１４は、定期的に記憶領域サブシステムＡ１０５のジャーナルＡ１２２から更新データを取得し、取得した更新データを記憶領域サブシステムＢ１０６のコピーボリューム１３１に反映する。
更新データの取得と反映とは非同期に行われ、更新データを取得した際に、他の更新データの反映中だった場合は、取得した更新データを一旦、ジャーナルＢ１３２に格納し、あとでジャーナルＢ１３２からコピーボリューム１３１に反映する。
【００３０】
このように非同期コピーを実行しておけば、記憶領域サブシステムＡ１０５のデータボリューム１２１に障害が発生した場合でも、記憶領域サブシステムＢ１０６のコピーボリューム１３１からデータボリューム１２１を回復できる。
【００３１】
しかしながら、記憶領域サブシステムＢ１０６のコピーボリューム１３１にも同時に障害が発生した場合や、コピーボリューム１３１のデータをそのまま回復に使えない場合は回復に時間がかかる恐れがあるため、その場合に備えて、指定時刻において、記憶領域サブシステムＡ１０５のデータボリューム１２１のデータコピーを、記憶領域サブシステムＢ１０６の業務などの区切りのデータコピー１３３に取得しておくことが望ましい。
【００３２】
この際、データボリューム１２１を、業務などの区切りのデータコピー１３３から回復できるように、ホストＡ１０４においてデータを書き込むプログラム１１１が稼働していない時間帯にデータコピーを取得するのが一般的である。
ところが、データを書き込むプログラム１１１がデータコピーの開始時刻まで終了していない場合や、誤って、データを書き込むプログラム１１１をデータコピーの開始時刻前に実行した場合、指定時刻にデータを書き込むプログラム１１１が稼働中であるため、コンピュータプログラムが扱う業務データとして見た場合に、業務などが未完了であるためにそのままでは使えないデータとなる。このため、本発明では、データを書き込むプログラム１１１の実行の区切りを検知して、指定時刻を目標時刻として、この指定時刻に最も近い区切りをデータコピーの取得時刻とすることでデータコピーの取得時刻を最適化する。
【００３３】
以下に、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化する方法の一例を示す。
【００３４】
図３は、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化するために必要なホストＡ１０４のオペレーティングシステム１１０の機能ブロックの例を示す図面である。
本実施形態のオペレーティングシステム１１０は、入出力制御部１１０１、更新時刻設定部１１０２及び更新データ情報１１０３を備えている。入出力制御部１１０１は、データを書き込むプログラム１１１やコピー制御プログラム１１２からの入出力要求を処理して、処理結果を返却する。
入出力制御部１１０１は、入出力要求を処理する際に後記する更新データ情報１１０３の更新時刻６０１（図７参照）の項目を設定するための更新時刻設定部１１０２を備えている。
【００３５】
ここで、更新データ情報１１０３の例を、図７のテーブルに示す。図７に示すように、更新データ情報１１０３は、更新時刻６０１、更新箇所６０２、及び更新データ６０３の項目を含んでいる。ただし、コピー制御プログラム１１２の後記する空Ｉ／Ｏ発行部１１２４（図４参照）から発行されるＩ／Ｏが、空Ｉ／Ｏの場合は、参照符号６１１で示す更新箇所６０２及び更新データ６０３の項目が無効となったレコードが記録される。
ここで、空Ｉ／Ｏとは、業務などが完了した区切りを判断するためのＩ／Ｏのことである。
【００３６】
次に、図４は、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化するために必要な、ホストＡ１０４のコピー制御プログラム１１２の機能ブロックの例を示す図面である。
本実施形態のコピー制御プログラム１１２は、非同期コピーの処理を指示する非同期コピー制御部１１２１、指定時刻のデータのデータコピー取得を指示する指定時刻のデータコピー制御部１１２２、及びデータコピー指示情報１１２６を備えている。
【００３７】
さらに、指定時刻のデータコピー制御部１１２２は、データコピー指示情報１１２６を設定するデータコピー時刻設定部１１２３と、空Ｉ／Ｏを発行する空Ｉ／Ｏ発行部１１２４と、データコピーの状態を監視するデータコピー状態監視部１１２５とを含んで構成される。なお、本実施形態では、空Ｉ／Ｏはコピー制御プログラム１１２の空Ｉ／Ｏ発行部１１２４が発行するが、オペレーティングシステム１１０や記憶領域制御プログラムＡ１１３が発行する構成としてもよい。
【００３８】
ここで、データコピー指示情報１１２６の例を図８のテーブルに示す。図８に示すようにデータコピー指示情報１１２６は、データコピー開始時刻７１１と、データコピー取得時刻７１２と、データコピー終了時刻７１３と、空Ｉ／Ｏ発行間隔７１４と、業務などの区切り間隔７１５の項目を含んでいる。ここで、業務などの区切り間隔７１５の項目は、この値で指定された時間、データを書き込むプログラム１１１から更新Ｉ／Ｏが発行されない場合を業務などの区切りとみなすために指定される値である。
なお、データコピー指示情報１１２６は、データコピー運用の時間帯や業務などの特性によって異なるため、コピー制御プログラム１１２を起動する際に、ユーザや運用管理システム等により適切な値が指定される。
【００３９】
次に、図５は、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化するために必要な、記憶領域サブシステムＡ１０５のメモリ１０５４に格納された記憶領域制御プログラムＡ１１３の機能ブロックの例を示す図面である。記憶領域制御プログラムＡ１１３は、オペレーティングシステム１１０からのデータの入出力要求を処理する。
【００４０】
本実施形態の記憶領域制御プログラムＡ１１３は、コピー元のプライマリボリュームであるディスク装置Ａ１０５６を制御するＰ−ＶＯＬ制御部１１３１を備え、このＰ−ＶＯＬ制御部１１３１は、ジャーナル制御部１１３２及びリモートＩ／Ｏ制御部１１３３を含んでいる。
ジャーナル制御部１１３２は、ホストＡ１０４のオペレーティングシステム１１０からのデータの入出力要求によって更新データをデータボリューム１２１に反映し、ジャーナルＡ１２２に蓄積する。また、記憶領域制御プログラムＢ１１４からのジャーナル取得要求に応じて、蓄積した更新データをジャーナルＡ１２２から取得する。
リモートＩ／Ｏ制御部１１３３は、記憶領域サブシステムＢ１０６のディスク制御装置Ｂ１０６１への入出力要求を処理する。
【００４１】
次に、図６は、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化するために必要な、記憶領域サブシステムＢ１０６の記憶領域制御プログラムＢ１１４の機能ブロックの例を示す図面である。記憶領域制御プログラムＢ１１４は、記憶領域制御プログラムＡ１１３のリモートＩ／Ｏ制御部１１３３からの入出力要求を処理する。
【００４２】
本実施形態の記憶領域制御プログラムＢ１１４は、コピー先のセカンダリボリュームであるディスク装置Ｂ１０６６を制御するＳ−ＶＯＬ制御部１１４１と、データコピー管理テーブル１１４５とを備え、Ｓ−ＶＯＬ制御部１１４１は、ジャーナル制御部１１４２と、業務などの区切り判定部１１４３と、障害発生有無判定部１１４４とを含んでいる。
コピー制御プログラム１１２から指定時刻のデータコピー取得指示の入出力要求が出されると、ホストＡ１０４のオペレーティングシステム１１０と、記憶領域制御プログラムＡ１１３のリモートＩ／Ｏ制御部１１３３を経由して、ジャーナル制御部１１４２に制御が渡り、この後、ジャーナル制御部１１４２は、指定時刻のデータコピー取得処理を開始する。
業務などの区切り判定部１１４３は、指定時刻のデータコピーを取得する際に、データコピーの取得時刻を最適化するための業務などの区切りを判定する。
障害発生有無判定部１１４４は、指定時刻のデータコピーを取得する際に、サイトＡ１０１のホストＡ１０４又は記憶領域サブシステムＡ１０５に障害が発生しているか否かを判定する。
【００４３】
ここで、データコピー管理テーブル１１４５の例を図９のテーブルに示す。図９に示すようにデータコピー管理テーブル１１４５は、データコピー開始時刻８１１と、データコピー取得時刻８１２と、データコピー終了時刻８１３と、空Ｉ／Ｏ発行間隔８１４と、業務などの区切り間隔８１５と、データコピー状態８１６と、データコピー実行時刻８１７と、空Ｉ／Ｏの連続取得回数８１８と、仮のデータコピー実行時刻８１９の項目を含んでいる。
【００４４】
以下に、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化する方法を説明する（適宜、図１ないし図９参照）。
【００４５】
図１０は、指定時刻のデータコピー取得の処理の概略を示すフローチャートである。図１０に示すとおり、本実施形態の指定時刻のデータコピー取得の処理は、「コピー制御プログラムからのデータコピーの指定時刻の設定（ステップＳ１００１）」、「コピー制御プログラムからの空Ｉ／Ｏの発行（ステップＳ１００２）」、「サイトＡでの更新データ、及び、空Ｉ／Ｏのジャーナルの蓄積（ステップＳ１００３）」、「サイトＢでの指定時刻のデータコピー取得（ステップＳ１００４）」の各手順からなる。
【００４６】
まず、コピー制御プログラムからのデータコピーの指定時刻の設定（ステップＳ１００１）の手順について詳しく説明する。ここで、図１１は、ホストＡ１０４のコピー制御プログラム１１２から、指定時刻のデータコピー取得指示が出された場合における、ホストＡ１０４のコピー制御プログラム１１２及び記憶領域サブシステムＢ１０６の記憶領域制御プログラムＢ１１４のデータコピー時刻設定処理を示すフローチャートである。
ここで、指定時刻のデータコピー取得指示は、データコピーの開始時刻より前にユーザや図示しない運用管理システムなどがコピー制御プログラム１１２を起動することによって行う。
【００４７】
まず、ホストＡ１０４のコピー制御プログラム１１２は、データコピー指示情報１１２６（図８参照）を指定して、指定時刻のデータコピー取得指示の入出力要求（データコピー指示情報１１２６）を伝送する（ステップＳ１１０１）。この入出力要求は、ホストＡ１０４のオペレーティングシステム１１０及び記憶領域サブシステムＡ１０５の記憶領域制御プログラムＡ１１３のリモートＩ／Ｏ制御部１１３３を経由して、記憶領域制御プログラムＢ１１４に伝送される。
【００４８】
記憶領域サブシステムＢ１０６の記憶領域制御プログラムＢ１１４は、受け取ったデータコピー指示情報１１２６をデータコピー管理テーブル１１４５（図９参照）に設定し（ステップＳ１１１１）、データコピー管理テーブル１１４５のデータコピー状態８１６の項目の値を、「待機中」に更新する（ステップＳ１１１２）。そして、指定時刻のデータコピー取得処理を開始する（ステップＳ１１１３）。この指定時刻のデータコピー取得処理については後記する。
【００４９】
ステップＳ１１０１の処理で伝送されるデータコピー指示情報１１２６（図８参照）は、ユーザや運用管理システムなどがコピー制御プログラムを起動する際に指定する。または、運用管理システムやコピー制御プログラムなどが、最適な時刻を決定して指定してもよい。
データコピー指示情報１１２６のデータコピー開始時刻７１１、データコピー取得時刻７１２、及びデータコピー終了時刻７１３の各項目には、指定時刻のデータコピー取得指示の入出力要求を出した時刻以降の任意の時刻が指定されている。また、空Ｉ／Ｏ発行間隔７１４の項目には、データコピー開始時刻７１１からデータコピー終了時刻７１３の間で、コピー制御プログラム１１２の空Ｉ／Ｏ発行部１１２４が発行する空Ｉ／Ｏの間隔が設定される。
【００５０】
前記のように、業務などの区切り間隔７１５の項目は、この値で指定された時間、データを書き込むプログラム１１１から更新Ｉ／Ｏが発行されない場合を業務などの区切りとみなすための値が指定される。このため、データを書き込むプログラム１１１を連続して実行する場合はデータを書き込むプログラム１１１の間隔をこの値で指定した時間、間を開けて実行する必要がある。また、データを書き込むプログラム１１１実行中にこの値で指定した時間、更新Ｉ／Ｏが発行されない場合は業務などの区切りとみなすため、データを書き込むプログラム１１１から定期的にデータボリューム１２１にログを出力するなどの配慮が必要である。
【００５１】
次に、ステップＳ１１１３において指定時刻のデータコピー取得処理が開始した以降における、ホストＡ１０４のコピー制御プログラム１１２からの空Ｉ／Ｏ発行の動作と、ホストＡ１０４での更新データ及び空Ｉ／Ｏ発行時のジャーナルの蓄積動作を説明する。
【００５２】
ここで、図１２は、ホストＡ１０４のコピー制御プログラム１１２における空Ｉ／Ｏ発行処理のフローチャートである。
まず、指定時刻のデータコピー取得指示が出されている場合、コピー制御プログラム１１２は、現在の時刻と、データコピー指示情報１１２６（図８参照）のデータコピー開始時刻７１１及びデータコピー終了時刻７１３との関係から、現在の時刻の判例を行う（ステップＳ１２０１）。この判定の結果、現在の時刻がデータコピー開始時刻よりも前であるか否かを判定し（ステップＳ１２０２）、データコピー開始時刻よりも前であれば（ステップＳ１２０２で‘はい’）、データコピー開始時刻まで待機する（ステップＳ１２０３）ために、ステップＳ１２０１に戻る。また、データコピー開始時刻よりも前でなければ（ステップＳ１２０２で‘いいえ’）、現在の時刻はデータコピー終了時刻より前か否かを判定する（ステップＳ１２０４）。
【００５３】
ステップＳ１２０４の判定において、データコピー終了時刻よりも前でなければ（ステップＳ１２０４で‘いいえ’）、そのまま処理を終了する。
一方、データコピー終了時刻よりも前であれば（ステップＳ１２０４で‘はい’）、空Ｉ／Ｏを発行し（ステップＳ１２０５）、データコピーの状態を監視する（ステップＳ１２０６）。このとき発行された空Ｉ／Ｏの更新データは、記憶領域制御プログラムＡ１１３に渡され、記憶領域制御プログラムＡ１１３は、この空Ｉ／Ｏの更新データをジャーナルＡ１２２に蓄積する（ステップＳ１２１１）
なお、ステップＳ１２０６のデータコピー状態の監視の詳細については後記する。また、ステップＳ１２０５において、コピー制御プログラム１１２が、空Ｉ／Ｏを発行すると、空Ｉ／Ｏの更新データは記憶領域制御プログラムＡ１１３のジャーナル制御部１１３２によって、データを書き込むプログラム１１１の更新データと共にジャーナルＡ１２２に蓄積される。
【００５４】
そして、コピー制御プログラム１１２は、データコピーが取得済みか否かを判定し（ステップＳ１２０７）、取得されている場合は（ステップＳ１２０７で‘はい’）、そのまま処理を終了し、一方、取得されていない場合は（ステップＳ１２０７で‘いいえ’）、データコピー指示情報１１２６の空Ｉ／Ｏ発行間隔７１４に指定された時間だけ、次の空Ｉ／Ｏ発行間隔まで待機して（ステップＳ１２０８）、ステップＳ１２０１の処理に戻る。
以上の処理において、データコピー開始時刻まで待機する処理（ステップＳ１２０３）や、空Ｉ／Ｏ発行間隔で指定された間隔を待機する処理（ステップＳ１２０８）は、オペレーティングシステム１１０が一般的に備えている機能を利用することができる。
【００５５】
ここで、ステップＳ１２０６におけるデータコピー状態の監視の詳細を図１３に示したフローチャートを参照して説明する。まず、コピー制御プログラム１１２は、記憶領域サブシステムＢ１０６に対して、データコピー管理テーブル１１４５（図９参照）のデータコピー状態８１６の伝送を要求する。この要求を受信した記憶領域制御プログラムＢ１１４は、ホストＡ１０４に対して、データコピー管理テーブル１１４５（図９参照）のデータコピー状態８１６を伝送する（ステップＳ１３１１）。そして、コピー制御プログラム１１２は、記憶領域制御プログラムＢ１１４から伝送されたデータコピー状態８１６を取得する（ステップＳ１３０１）。つまり、データコピー状態の監視は、記憶領域制御プログラムＢ１１４でデータコピー管理テーブル１１４５のデータコピー状態８１６の項目を参照することで監視する。
【００５６】
また、コピー制御プログラム１１２のＩ／Ｏ発行部１１２４が、図１２に示したフローチャートのステップＳ１２０５において空Ｉ／Ｏを発行すると、空Ｉ／Ｏの更新データは、記憶領域制御プログラムＡ１１３のジャーナル制御部１１４２によって、記憶領域サブシステムＡ１０５のジャーナルＡ１２２に蓄積される。この蓄積の手順を図１４に示したフローチャートを用いて説明する。
まず、ホストＡ１０４のオペレーティングシステム１１０は、コピー制御プログラム１１２の空Ｉ／Ｏ発行部１１２４が発行した空Ｉ／Ｏの情報、またはデータを書き込むプログラム１１１が出力した更新データを取得すると、取得した時刻に応じて更新時刻を設定し（ステップＳ１４１１）、この更新時刻と、更新データまたは空Ｉ／Ｏの情報とから更新データ情報１１０３（図７参照）を設定する（ステップＳ１４１２）。
そして、オペレーティングシステム１１０は、ステップＳ１４１２において設定した更新データ情報１１０３の入出力要求を、記憶領域制御プログラムＡ１１３に対して発行する（ステップＳ１４１３）。
【００５７】
この入出力要求を受けた記憶領域サブシステムＡ１０５の記憶領域制御プログラムＡ１１３は、取得した更新データ情報１１０３（図７参照）の更新データ６０３データボリューム１２１に反映し（ステップＳ１４０１）、入出力完了通知をホストＡ１０４のオペレーティングシステム１１０に伝送する（ステップＳ１４０２）。そして、更新データ情報１１０３をジャーナルＡ１２２に蓄積する（ステップＳ１４０３）。
以上の手順により、更新データまたは空Ｉ／Ｏの情報は、記憶領域サブシステムＡ１０５のジャーナルＡ１２２に蓄積される。
【００５８】
次に、指定時刻のデータコピー取得指示が出されている場合における、記憶領域サブシステムＢ１０６の記憶領域制御プログラムＢ１１４の動作を説明する。
ここで、図１５Ａないし図１５Ｅは、記憶領域サブシステムＢ１０６の記憶領域制御プログラムＢ１１４の指定時刻のデータコピー取得処理のフローチャートである。
【００５９】
まず、記憶領域制御プログラムＢ１１４は、データコピー管理テーブル１１４５（図９参照）の空Ｉ／Ｏの連続取得回数８１８の項目を初期化し（ステップＳ１５０１）、
記憶領域サブシステムＡ１０５の記憶領域制御プログラムＡ１１３に、更新データ情報１１０３の送信を要求して制御を渡し、この要求を受信した記憶領域サブシステムＡ１０５の記憶領域制御プログラムＡ１１３から、更新データ情報１１０３を取得する（ステップＳ１５０２）。
このとき、記憶領域サブシステムＡ１０５の記憶領域制御プログラムＡ１１３は、ジャーナルＡ１２２から更新データ情報１１０３を取得し（ステップＳ１５１１）、この取得した更新データ情報１１０３を記憶領域制御プログラムＢ１１４に受け渡す。
【００６０】
次に、記憶領域制御プログラムＢ１１４は、更新データ情報１１０３の取得後に障害発生有無の判定を行い（ステップＳ１５０３）、この判定により、障害発生有りか否かを判断し（ステップＳ１５０４）、障害が発生している場合は（ステップＳ１５０４で‘はい’）、データコピー管理テーブル１１４５（図９参照）のデータコピー状態８１６の項目を「失敗」に設定し（ステップＳ１５０５）データコピー取得を中止する。この場合、業務の区切りのデータコピー１３３には前回の指定時刻のデータコピーがそのまま残っている。
【００６１】
ここで、障害発生有無の判定処理を図１６に示したフローチャートを参照して説明する。記憶領域制御プログラムＢ１１４の障害発生有無判定部１１４Ａは、ステップＳ１５０２において、記憶領域サブシステムＡ１０５のジャーナルＡ１２２から更新データ情報を取得できたか否かを判定し（ステップＳ１６０１）、取得できた場合は（ステップＳ１６０１で‘はい’）、現在の時刻とデータコピー管理テーブル１１４５（図９参照）のデータコピー終了時刻８１３との関係を判定し（ステップＳ１６０２）、現在の時刻がデータコピー終了時刻８１３よりも前か否かを判定する（ステップＳ１６０３）。
この判定で、現在の時刻がデータコピー終了時刻８１３よりも前ではない場合（ステップＳ１６０３で‘いいえ’）、つまり、データコピー終了時刻を過ぎても更新データ情報が取得できなかった場合は、「障害発生有」と判定する（ステップＳ１６０４）。
また、ステップＳ１６０１において更新データ情報を取得できた場合（ステップＳ１６０１で‘はい’）及びステップＳ１６０３においてデータコピー終了時刻８１３よりも前の場合（ステップＳ１６０３で‘はい’）は、「障害発生無」と判定する（ステップＳ１６０５）。
【００６２】
一方、図１５Ａに戻って、ステップＳ１５０４において、障害が発生していない場合は（ステップＳ１５０４で‘いいえ’）、記憶領域制御プログラムＢ１１４は、ステップＳ１５０２において、記憶領域サブシステムＡ１０５のジャーナルＡ１２２から、更新データ情報１１０３を取得できたか否かを判定し（ステップＳ１５０６）、できなかった場合は（ステップＳ１５０６で‘いいえ’）、ステップＳ１５０２の更新データ情報１１０３の取得に戻り、できた場合は（ステップＳ１５０６で‘はい’）、取得した更新データ情報１１０３（図７参照）の更新データ６０３の更新時刻６０１が、データコピー管理テーブル１１４５（図９参照）のデータコピー開始時刻８１１よりも前か否かを判定する（ステップＳ１５０７）。
【００６３】
ステップＳ１５０７において、データコピー開始時刻８１１よりも前の場合は（ステップＳ１５０７‘はい’）、端子Ａから図１５Ｂに移って、更新データをコピーボリューム１３１に反映し（ステップＳ１５１０１）、端子Ｅから図１５Ａの更新データ情報１１０３の取得処理（ステップＳ１５０２）に戻る。
【００６４】
一方、ステップＳ１５０７において、データコピー開始時刻８１１よりも前ではない場合は（ステップＳ１５０７で‘いいえ’）、取得した更新データ情報１１０３（図７参照）の更新データ６０３の更新時刻６０１が、データコピー管理テーブル１１４５（図９参照）のデータコピー取得時刻８１２よりも前か否かを判定する（ステップＳ１５０８）。
【００６５】
ステップＳ１５０８において、データコピー取得時刻８１２よりも前の場合は（ステップＳ１５０８で‘はい’）、端子Ｂから図１５Ｃに移って、記憶領域制御プログラムＢ１１４は、データコピー管理テーブル１１４５（図９参照）のデータコピー状態８１６の項目を「処理中」に設定し（ステップＳ１５２０１）、業務などの区切りの判定を行い（ステップＳ１５２０２）、業務などの区切りを検知したか否かを判定する（ステップＳ１５２０３）。なお、ステップＳ１５２０２の業務などの区切り判定の詳細については後記する。
【００６６】
ステップＳ１５２０３において、業務などの区切りを検出した場合は（ステップＳ１５２０３で‘はい’）、記憶領域サブシステムＢ１０６のジャーナルＢ１３２に蓄積された更新データをすべてコピーボリューム１３１に反映し（ステップＳ１５２０４）、図１５ＡのステップＳ１５０２で取得した更新データ情報１１０３（図７参照）の更新データ６０３の更新時刻６０１を、データコピー管理テーブル１１４５（図９参照）の仮のデータコピー実行時刻８１９に設定する（ステップＳ１５２０５）。そして、端子Ｅから図１５Ａの更新データ情報１１０３の取得処理（ステップＳ１５０２）に戻る。
【００６７】
一方、ステップＳ１５２０３において、業務などの区切りを検出しなかった場合は（ステップＳ１５２０３で‘いいえ’）、図１５ＡのステップＳ１５０２で取得した更新データ情報１１０３（図７参照）が空Ｉ／Ｏの更新データ情報１１０３か否かを判定し（ステップＳ１５２０６）、空Ｉ／Ｏの更新データ情報１１０３であれば（ステップＳ１５２０６で‘はい’）そのまま、空Ｉ／Ｏの更新データ情報１１０３でなければ（ステップＳ１５２０６で‘いいえ’）この更新データ情報１１０３をジャーナルＢ１３２に格納して（ステップＳ１５２０７）、端子Ｅから図１５Ａの更新データ情報１１０３の取得処理（ステップＳ１５０２）に戻る。
なお、ステップＳ１５２０６の空Ｉ／Ｏの更新データか否かの判定は、更新データ情報１１０３（図７参照）の更新箇所６０２及び更新データ６０３の項目が無効であるか否かで判定される。
【００６８】
図１５Ａに戻って、ステップＳ１５０８において、データコピー取得時刻８１２よりも前の場合ではない場合は（ステップＳ１５０８で‘いいえ’）、ステップＳ１５０２で取得した更新データ情報１１０３（図７参照）の更新データ６０３の更新時刻６０１が、データコピー管理テーブル１１４５（図９参照）のデータコピー終了時刻８１３よりも前か否かを判定する（ステップＳ１５０９）。データコピー終了時刻８１３よりも前の場合は（ステップＳ１５０９で‘はい’）、端子Ｃから図１５Ｄに移って、記憶領域制御プログラムＢ１１４は、データコピー管理テーブル１１４５（図９参照）のデータコピー状態８１６の項目を「処理中」に設定し（ステップＳ１５３０１）、業務などの区切りの判定を行い（ステップＳ１５３０２）、業務などの区切りを検知したか否かを判定する（ステップＳ１５３０３）。
【００６９】
ステップＳ１５３０３において、業務などの区切りを検出しなかった場合は（ステップＳ１５３０３で‘いいえ’）、図１５ＡのステップＳ１５０２で取得した更新データ情報１１０３（図７参照）が空Ｉ／Ｏの更新データ情報１１０３か否かを判定し（ステップＳ１５３０４）、空Ｉ／Ｏの更新データ情報１１０３であれば（ステップＳ１５３０４で‘はい’）はそのまま、空Ｉ／Ｏの更新データ情報１１０３でなければ（ステップＳ１５３０４で‘いいえ’）この更新データ情報１１０３をジャーナルＢ１３２に蓄積して（ステップＳ１５３０５）、端子Ｅから図１５Ａの更新データ情報１１０３の取得処理（ステップＳ１５０２）に戻る。
【００７０】
一方、ステップＳ１５３０３において、業務などの区切りを検出した場合は（ステップＳ１５３０３で‘はい’）、検知した業務などの区切りの時刻と、データコピー管理テーブル１１４５（図９参照）の仮のデータコピー実行時刻８１９とを比較して（ステップＳ１５３０６）、業務などの区切りの時刻は、仮のデータコピー実行時刻８１９より、データコピー管理テーブル１１４５（図９参照）のデータコピー取得時刻８１２に近い時刻か否かを判定する（ステップＳ１５３０７）。
【００７１】
ステップＳ１５３０７において、業務などの区切りの時刻の方が近い場合は（ステップＳ１５３０７で‘はい’）、記憶領域制御プログラムＢ１１４は、ジャーナルＢ１３２に蓄積された更新データをすべてコピーボリューム１３１に反映し（ステップＳ１５３０８）、この業務などの区切りの時刻を、データコピー管理テーブル１１４５（図９参照）のデータコピー実行時刻８１７に設定する（ステップＳ１５３０９）。
一方、ステップＳ１５３０７において、仮のデータコピー実行時刻８１９の方が近い場合は（ステップＳ１５３０７で‘いいえ’）、この仮のデータコピー実行時刻８１９をデータコピー管理テーブル１１４５のデータコピー実行時刻８１７に設定する（ステップＳ１５３０９）。
【００７２】
そして、記憶領域制御プログラムＢ１１４は、業務などの区切りのデータコピー１３３にコピーボリューム１３１をデータコピーし（ステップＳ１５３１１）、データコピー管理テーブル１１４５（図９参照）のデータコピー状態８１６の項目を「完了」に設定して処理を終了する（ステップＳ１５３１２）。
【００７３】
図１５Ａに戻って、ステップＳ１５０９において、データコピー終了時刻８１３よりも前ではない場合は（ステップＳ１５０９で‘いいえ’）、端子Ｄから図１５Ｅに移って、ジャーナルＢ１３２に蓄積された更新データのうち、データコピー管理テーブル１１４５（図９参照）のデータコピー取得時刻８１２までの更新データを、コピーボリューム１３１に反映する（ステップＳ１５４０１）。そして、このデータコピー管理テーブル１１４５のデータコピー取得時刻８１２を、データコピー実行時刻８１９に設定する（ステップＳ１５４０２）。
【００７４】
次に、記憶領域制御プログラムＢ１１４は、業務などの区切りのデータコピー１３３にコピーボリューム１３１をコピーし（ステップＳ１５４０３）、データコピー状態８１６を「強制完了」に設定して（ステップＳ１５４０４）すべての処理を終了する。
【００７５】
ここで、図１５ＣのステップＳ１５２０２及び図１５ＤのステップＳ１５３０２における業務などの区切り判定の処理について詳しく説明する。図１７は、記憶領域制御プログラムＢ１１４の業務などの区切り判定部１１４３が実行する業務などの区切り判定の処理を示すフローチャートである。
まず、記憶領域制御プログラムＢ１１４は、図１５ＡのステップＳ１５０２においてジャーナルＡ１２２から取得した更新データが、空Ｉ／Ｏの更新データ情報１１０３であるか否かを判定する（ステップＳ１７０１）。空Ｉ／Ｏの更新データ情報１１０３であれば（ステップＳ１７０１で‘はい’）、データコピー管理テーブル１１４５（図９参照）の空Ｉ／Ｏの連続取得回数８１８をカウントアップし（ステップＳ１７０２）、（空Ｉ／Ｏの連続取得回数（８１８）−１）×空Ｉ／Ｏ発行間隔（８１４）が業務などの区切り間隔８１５より大きいか否かを判定する（ステップＳ１７０３）。
【００７６】
ステップＳ１７０３の判定において大きい場合は（ステップＳ１７０３で‘はい’）、所定時間、空Ｉ／Ｏが連続したため、業務などの区切りと判定して（ステップＳ１７０４）、処理を終了する。
一方、ステップＳ１７０１において、空Ｉ／Ｏの更新データ情報１１０３ではない場合（ステップＳ１７０１で‘いいえ’）、データコピー管理テーブル１１４５（図９参照）の空Ｉ／Ｏの連続取得回数８１８の項目を０に初期化し（ステップＳ１７０５）、業務などの区切りではないと判定して（ステップＳ１７０６）、処理を終了する。
また、ステップＳ１７０３の判定において、比較の結果、小さい場合も（ステップＳ１７０３で‘いいえ’）、業務などの区切りではないと判定して（ステップＳ１７０６）、処理を終了する。
【００７７】
以上の手順により、図１０に示したフローチャートの一連の処理が実行され、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化することができる。
【００７８】
次に、前記の手順により実現される、最適なデータコピーの実行時刻の判定の例をパターンごとに説明する。ここで、図１８Ａは、この例におけるデータコピー開始時刻、データコピー取得時刻及びデータコピー終了時刻の設定値を示すテーブルであり、図１８Ｂないし図１８Ｅは、最適なデータコピー実行時刻の設定例を説明する図面である。
【００７９】
ここでは、図１８Ａに示すように、データコピー開始時刻を１１：５０、データコピー取得時刻を１２：００、データコピー終了時刻を１２：２０とした場合を取り上げる。
図１８Ｂに示した例では、データコピー取得時刻の１２：００に、業務などの区切りが検出され、１２：００に業務などが稼働していないため、最適なデータコピー実行時刻は１２：００と判定される。
図１８Ｃに示した例では、業務Ｂがデータコピー取得時刻の１２：００に稼働しており、業務などの区切りが最もデータコピー取得時刻の１２：００に近い１１：５８が最適なデータコピー実行時刻と判定される。
図１８Ｄに示した例では、業務Ａがデータコピー取得時刻の１２：００に稼働しているため、業務などの区切りが最もデータコピー取得時刻の１２：００に近い１２：０３が最適なデータコピー実行時刻と判定される。
図１８Ｅに示した例では、業務Ａがデータコピー取得時刻の１２：００に稼働している。また、業務Ａの稼働前後に業務などの区切りがあるが（１１：５８と１２：１０）、そのうち、業務などの区切りが最もデータコピー取得時刻の１２：００に近い１１：５８が最適なデータコピー実行時刻と判定される。
【００８０】
以上、説明した本実施形態の記憶領域制御システムによると、通信回線１０３で接続されたサイト（１０１，１０２）間で指定時刻のデータのデータコピーを取得する際であっても、Ｉ／Ｏの発生を避けた最適なデータコピーの取得時刻を算出できる。これにより、障害発生時の回復が短縮され、システムの信頼性が向上する。
【００８１】
（第２実施形態：システム構成）
次に、本発明の第２実施形態について説明する。本実施形態は、指定時刻に同一サイト内のディスク装置間でローカルコピーを取得する場合の実施形態である。
なお、本実施形態の図面において、第１実施形態と同様の要素については同じ参照符号を付してその説明は省略する。
【００８２】
図１９は、本発明の第２の実施形態に係る記憶領域制御システムの構成ブロック図である。図１９に示すように、本実施形態の記憶領域制御システムは、ホストＡ１０４と、ディスク制御装置Ａ１０５１及びディスク装置Ａ１０５６を有する記憶領域サブシステムＡ１０５と、ディスク制御装置Ｂ１０６１及びディスク装置Ｂ１０６６を有する記憶領域サブシステムＢ１０６とを、通信回線１０３でそれぞれ接続して構成されるサイトＡ１０１を有している。
図１９に示した記憶領域制御システムの各構成要素は、図１に示した第１実施形態の記憶領域制御システムとほぼ同様であるため、その説明を省略する。但し、ホストＡ１０４、ディスク制御装置Ａ１０５１及びディスク制御装置Ｂ１０６１のメモリ（１０４２、１０５４、１０６４）に格納されるプログラムは第１実施形態と異なっており、これについては後記する。
【００８３】
（作用）
ここで、図２０は、図１９に示した記憶領域制御システムにおいて、同期コピーによるデータ及び指定時刻のデータのデータコピーを取得する運用を説明する説明図である。
以下、図２０を参照しつつ、同期コピーによるデータコピーと、指定時刻のデータのデータコピーを取得する運用例を説明する（適宜、図１９参照のこと）。
【００８４】
本実施形態の記憶領域制御システムでは、データコピー運用の通常時、業務などの処理を実行しているサイトをサイトＡ１０１とし、そのサイトのコンピュータをホストＡ１０４、コピー元の記憶装置を記憶領域サブシステムＡ１０５、コピー先の記憶装置を記憶領域サブシステムＢ１０６とする。
コピー制御プログラム１１２ｂからの同期コピーや指定時刻のデータのデータコピー指示により、記憶領域サブシステムＡ１０５のデータボリューム１２１が、記憶領域サブシステムＢ１０６のコピーボリューム１３１、及び業務などの区切りのデータコピー１３３にコピーされる。
【００８５】
ここで、同期コピーとは、記憶領域サブシステムＡ１０５のデータボリューム１２１への更新内容を、同期して記憶領域サブシステムＢ１０６のコピーボリューム１３１に反映してデータのデータコピーを取得することである。
同期コピーを実行することで、記憶領域サブシステムＢ１０６のコピーボリューム１３１に、記憶領域サブシステムＡ１０５のデータボリューム１２１のデータが、常時、データコピーされる。同期してデータコピーを取得するため、コピーボリューム１３１のデータは、データボリューム１２１のデータと同一内容である。
【００８６】
一方、指定時刻のデータのデータコピーとは、第１実施形態と同様に、記憶領域サブシステムＡ１０５の指定時刻におけるデータボリューム１２１のデータを、記憶領域サブシステムＢ１０６の業務などの区切りのデータコピー１３３にデータコピーを取得することである。指定時刻のデータのデータコピーは、一般的に、業務などが稼働していない時間に取得される。従って、このデータコピーは業務などの区切りで取得されるデータコピーである。
本実施形態のように、同期コピーと組み合わせて指定時刻のデータのデータコピーを取得する場合は、業務などの区切りのデータコピー１３３は、データボリューム１２１とコピーボリューム１３１との両方に障害が発生した場合などに利用される。
【００８７】
なお、記憶領域サブシステムＡ１０５のデータボリューム１２１は、ディスク装置Ａ１０５６の記憶領域１０５７に格納され、記憶領域サブシステムＢ１０６のコピーボリューム１３１及び業務などの区切りのデータコピー１３３は、ディスク装置Ｂ１０６６の各記憶領域１０６７に格納されている。
【００８８】
本実施形態のホストＡ１０４のメモリ１０４２には、オペレーティングシステム１１０ｂと、データを書き込むプログラム１１１ｂと、コピー制御プログラム１１２が格納され、これらのプログラムをＣＰＵ１０４１が実行している。オペレーティングシステム１１０ｂはデータを書き込むプログラム１１１ｂやコピー制御プログラム１１２ｂからの入出力要求を処理する。また、データを書き込むプログラム１１１ｂは、記憶領域サブシステムＡ１０５内のデータボリューム１２１へのデータ書き込みを行いながら業務などを行っているプログラムである。また、コピー制御プログラム１１２ｂは、同期コピーや指定時刻のデータのデータコピーを入出力要求として指示するプログラムである。
【００８９】
本実施形態の記憶領域サブシステムＡ１０５のメモリ１０５４には、記憶領域制御プログラムＡ１１３ｂが格納され、ディスク装置Ａ１０５６の記憶領域１０５７には、データボリューム１２１が格納されている。ここで、記憶領域制御プログラムＡ１１３ｂは、オペレーティングシステム１１０ｂからの入出力要求を処理するプログラムである。
また、本実施形態の記憶領域サブシステムＢ１０６のメモリ１０６４には、記憶領域制御プログラムＢ１１４ｂが格納され、ディスク装置Ｂ１０６６の各記憶領域１０６７には、コピーボリューム１３１と、業務などの区切りのデータコピー１３３とが格納されている。ここで、記憶領域制御プログラムＢ１１４ｂは、記憶領域制御プログラムＡ１１３ｂからの入出力要求を処理するプログラムである。
【００９０】
次に、データを書き込むプログラム１１１ｂからデータの書き込みが行われた場合の同期コピーの動作を説明する。なお、この同期コピーは公知の技術である。
まず、ホストＡ１０４のデータを書き込むプログラム１１１ｂからのデータの書き込みは、オペレーティングシステム１１０ｂによって処理される。データを書き込むプログラム１１１ｂからオペレーティングシステム１１０ｂにデータの書き込みが指示されると、データを書き込むプログラム１１１ｂから受け取った更新データを、後記する更新データ情報１１０３ｂ（図２２参照）に設定して記憶領域サブシステムＡ１０５に伝送する。
【００９１】
記憶領域制御プログラムＡ１１３ｂは、ホストＡ１０４から受け取った更新データをデータボリューム１２１に書き込み、同時に記憶領域制御プログラムＢ１１４ｂに制御を渡してコピーボリューム１３１に書き込む。この際、記憶領域制御プログラムＡ１１３ｂは、記憶領域サブシステムＢ１０６のコピーボリューム１３１への書き込みが完了した時点で、入出力が完了したことを、ホストＡ１０４のオペレーティングシステム１１０ｂに通知する。
【００９２】
このように同期コピーを実行しておけば、記憶領域サブシステムＡ１０５のデータボリューム１２１に障害が発生した場合でも、記憶領域サブシステムＢ１０６のコピーボリューム１３１から、データボリューム１２１を回復できる。
【００９３】
しかしながら、記憶領域サブシステムＢ１０６のコピーボリューム１３１にも同時に障害が発生した場合や、コピーボリューム１３１のデータをそのまま回復に使えない場合は回復に時間がかかる恐れがあるため、その場合に備えて、指定時刻における、記憶領域サブシステムＡ１０５のデータボリューム１２１のデータコピーを、記憶領域サブシステムＢ１０６の業務などの区切りのデータコピー１３３に取得しておくことが望ましい。
【００９４】
この際、データボリューム１２１を、業務などの区切りのデータコピー１３３から回復できるように、ホストＡ１０４においてデータを書き込むプログラム１１１ｂが稼働していない時間帯にデータコピーを取得するのが一般的である。
ところが、データを書き込むプログラム１１１ｂがデータコピーの開始時刻まで終了していない場合や、誤って、データを書き込むプログラム１１１ｂをデータコピーの開始時刻前に実行した場合、指定時刻にデータを書き込むプログラム１１１ｂが稼働中であるため、コンピュータプログラムが扱う業務データとして見た場合に、業務などが未完了であるためにそのままでは使えないデータとなる。このため、データを書き込むプログラム１１１ｂの実行の区切りを検知して、指定時刻に最も近い区切りをデータコピーの実行時刻とすることでデータコピーの取得時刻を最適化することが考えられる。
【００９５】
以下に、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化する方法の一例を示す。
【００９６】
図２１は、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化するために必要なホストＡ１０４のオペレーティングシステム１１０ｂの機能ブロックの例を示す図面である。
本実施形態のオペレーティングシステム１１０ｂは、入出力制御部１１０１ｂ及び更新データ情報１１０３ｂを備えている。入出力制御部１１０１ｂは、データを書き込むプログラム１１１ｂやコピー制御プログラム１１２ｂからの入出力要求を処理して、処理結果を返却する。
【００９７】
ここで、更新データ情報１１０３ｂの例を、図２２のテーブルに示す。図２２に示すように、更新データ情報１１０３ｂは、更新箇所２３０１及び更新データ２３０２の項目を含んでいる。
【００９８】
次に、図２３は、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化するために必要な、ホストＡ１０４のコピー制御プログラム１１２ｂの機能ブロックの例を示す図面である。
本実施形態のコピー制御プログラム１１２ｂは、同期コピーの処理を指示する同期コピー制御部１１２１ｂ、指定時刻のデータのデータコピー取得を指示する指定時刻のデータコピー制御部１１２２ｂ、及びデータコピー指示情報１１２６ｂを備えている。
【００９９】
さらに、指定時刻のデータコピー制御部１１２２ｂは、データコピー指示情報１１２６ｂを設定するデータコピー時刻設定部１１２３ｂと、データコピーの状態を監視するデータコピー状態監視部１１２５ｂとを含んで構成される。
ここで、データコピー指示情報１１２６ｂの例を図２４のテーブルに示す。図２４に示すようにデータコピー指示情報１１２６ｂは、データコピー開始時刻２４１１と、データコピー取得時刻２４１２と、データコピー終了時刻２４１３と、空Ｉ／Ｏ発行間隔２４１４と、業務などの区切り間隔２４１５の項目を含んでいる。
ここで、本実施形態における空Ｉ／Ｏは、記憶領域制御プログラムＡ１１３ｂが発行することとするが、オペレーティングシステム１１０ｂやコピー制御プログラム１１２ｂから発行してもよい。また、データコピー指示情報１１２６ｂは、データコピー運用の時間帯や業務などの特性によって異なるため、コピー制御プログラム１１２ｂを起動する際に、ユーザや運用管理システム等により適切な値が設定される。
【０１００】
次に、図２５は、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化するために必要な、記憶領域サブシステムＡ１０５のメモリ１０５４に格納された記憶領域制御プログラムＡ１１３ｂの機能ブロックの例を示す図面である。記憶領域制御プログラムＡ１１３ｂは、オペレーティングシステム１１０ｂからのデータの入出力要求を処理する。
【０１０１】
本実施形態の記憶領域制御プログラムＡ１１３は、コピー元のプライマリボリュームであるディスク装置Ａ１０５６を制御するＰ−ＶＯＬ制御部１１３１ｂと、データコピー管理テーブルＡ１１３６と、更新データ情報Ａ１１３７とを備え、このＰ−ＶＯＬ制御部１１３１ｂは、空Ｉ／Ｏを発行する空Ｉ／Ｏ発行部１１３４と、記憶領域サブシステムＡ１０５のデータボリューム１２１の更新データを、記憶領域サブシステムＢ１０６のコピーボリューム１３１にコピーするデータコピー処理部１１３５を備えている。
【０１０２】
ここで、図２６にデータコピー管理テーブルＡ１１３６の例を示す。図２６に示すように、データコピー管理テーブルＡ１１３６は、データコピー開始時刻２５１１と、データコピー取得時刻２５１２と、データコピー終了時刻２５１３と、空Ｉ／Ｏ発行間隔２５１４と、業務などの区切り間隔２５１５との項目を含んでいる。
また、図２７に更新データ情報Ａ１１３７の例を示す。図２７に示すように、更新データ情報Ａ１１３７は、更新時刻２６０１と、更新箇所２６０２と、更新データ２６０３との項目を含んでいる。ただし、空Ｉ／Ｏ発行部１１３４が発行する空Ｉ／Ｏの場合は、参照符号２６１１で示す更新箇所２６０２及び更新データ２６０３の項目が無効となったレコードが記録される。
【０１０３】
次に、図２８は、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化するために必要な、記憶領域サブシステムＢ１０６の記憶領域制御プログラムＢ１１４ｂの機能ブロックの例を示す図面である。記憶領域制御プログラムＢ１１４ｂは、記憶領域制御プログラムＡ１１３のリモートＩ／Ｏ制御部１１３３からの入出力要求を処理する。
本実施形態の記憶領域制御プログラムＢ１１４ｂは、コピー先のセカンダリボリュームであるディスク装置Ｂ１０６６を制御するＳ−ＶＯＬ制御部１１４１ｂと、データコピー管理テーブルＢ１１４５ｂとを備え、Ｓ−ＶＯＬ制御部１１４１は、指定時刻のデータコピー処理部１１４６と、業務などの区切り判定部１１４３ｂと、障害発生有無判定部１１４４ｂとを含んでいる。
【０１０４】
記憶領域制御プログラムＢ１１４ｂにおいて、コピー制御プログラム１１２ｂから指定時刻のデータコピー取得指示の入出力要求が出されると、ホストＡ１０４のオペレーティングシステム１１０ｂを経由して、指定時刻のデータコピー処理部１１４６に制御が渡り、この後、指定時刻のデータコピー処理部１１４６は、指定時刻のデータコピー取得処理を開始する。
業務などの区切り判定部１１４３ｂは、指定時刻のデータコピーを取得する際に、データコピーの取得時刻を最適化するための業務などの区切りを判定する。
障害発生有無判定部１１４４ｂは、指定時刻のデータコピーを取得する際に、サイトＡ１０１のホストＡ１０４又は記憶領域サブシステムＡ１０５に障害が発生しているか否かを判定する。
【０１０５】
ここで、データコピー管理テーブルＢ１１４５ｂの例を図２９のテーブルに示す。図２９に示すようにデータコピー管理テーブルＢ１１４５ｂは、データコピー開始時刻２７１１と、データコピー取得時刻２７１２と、データコピー終了時刻２７１３と、空Ｉ／Ｏ発行間隔２７１４と、業務などの区切り間隔２７１５と、データコピー状態２７１６と、データコピー実行時刻２７１７と、空Ｉ／Ｏの連続取得回数２７１８と、仮のデータコピー実行時刻２７１９の項目を含んでいる。
【０１０６】
以下に、指定時刻のデータのデータコピーを取得する際に、データコピーの取得時刻を最適化する方法を説明する（適宜、図１９ないし図２９参照）。
【０１０７】
図３０は、指定時刻のデータコピー取得の処理の概略を示すフローチャートである。図３０に示すとおり、本実施形態の指定時刻のデータコピー取得の処理は、「コピー制御プログラムからのデータコピーの指定時刻の設定（ステップＳ３００１）」、「記憶領域制御プログラムＡからの空Ｉ／Ｏの発行（ステップＳ３００２）」、「記憶領域制御プログラムＢでの指定時刻のデータコピー取得（ステップＳ３００３）」の各手順からなる。
【０１０８】
まず、「コピー制御プログラムからのデータコピーの指定時刻の設定（ステップＳ３００１）」の手順について詳しく説明する。ここで、図３１は、ホストＡ１０４のコピー制御プログラム１１２ｂのデータコピー時刻設定処理を示すフローチャートである。
ここで、指定時刻のデータコピー取得指示は、データコピーの開始時刻より前にユーザや図示しない運用管理システムなどがコピー制御プログラム１１２ｂを起動することによって行う。
【０１０９】
まず、ホストＡ１０４のコピー制御プログラム１１２は、データコピー指示情報１１２６ｂ（図２４参照）を指定して、指定時刻のデータコピー取得指示の入出力要求（データコピー指示情報１１２６ｂ）を伝送する（ステップＳ３１０１）。このデータコピー指示情報１１２６ｂは、ホストＡ１０４のオペレーティングシステム１１０ｂを経由して、記憶領域制御プログラムＡ１１３ｂに伝送される。その後、記憶領域制御プログラムＡ１１３ｂを経由して、記憶領域制御プログラムＢ１１４ｂに制御が渡される。
【０１１０】
記憶領域サブシステムＡ１０５の記憶領域制御プログラムＡ１１３ｂは、受け取ったデータコピー指示情報１１２６ｂをデータコピー管理テーブルＡ１１３６に設定し（ステップＳ３１１１）、空Ｉ／Ｏ発行処理を起動する（ステップＳ３１１２）。空Ｉ／Ｏ発行処理については後で説明する。
【０１１１】
そして、指定時刻のデータコピー取得指示の入出力要求（データコピー指示情報１１２６ｂ）を取得した記憶領域サブシステムＢ１０６の記憶領域制御プログラムＢ１１４ｂは、データコピー指示情報１１２６ｂをデータコピー管理テーブルＢ１１４５ｂ（図２９参照）に設定し（ステップＳ３１２１）、データコピー管理テーブルＢ１１４５ｂのデータコピー状態２７１６の項目の値を、「待機中」に設定し（ステップＳ３１２２）、空Ｉ／Ｏの連続取得回数２７１８の項目を０に初期化する（ステップＳ３１２３）。
そして、指定時刻のデータコピー取得処理を開始する（ステップＳ３１２４）。この指定時刻のデータコピー取得処理については後記する。
【０１１２】
ステップＳ３１０１の処理で伝送されるデータコピー指示情報１１２６ｂ（図２４参照）に含まれる各項目値は、ユーザや運用管理システムなどがコピー制御プログラムを起動する際に指定する。又は、運用管理システムやコピー制御プログラムなどが、最適な時刻を決定して指定してもよい。
また、データコピー指示情報１１２６ｂのデータコピー開始時刻２４１１、データコピー取得時刻２４１２、及びデータコピー終了時刻２４１３の各項目には、指定時刻のデータコピー取得指示の入出力要求を出した時刻以降の任意の時刻が指定されている。また、空Ｉ／Ｏ発行間隔２４１４の項目には、データコピー開始時刻２４１１からデータコピー終了時刻２４１３の間で、記憶領域制御プログラムＡ１１３ｂの空Ｉ／Ｏ発行部１１３４が発行する空Ｉ／Ｏの間隔が設定される。
【０１１３】
また、業務などの区切り間隔２４１５の項目は、この値で指定された時間、データを書き込むプログラム１１１ｂから更新Ｉ／Ｏが発行されない場合を業務などの区切りとみなすための値が指定される。このため、データを書き込むプログラム１１１ｂを連続して実行する場合はデータを書き込むプログラム１１１ｂの間隔をこの値で指定した時間、間を開けて実行する必要がある。また、データを書き込むプログラム１１１ｂ実行中にこの値で指定した時間、更新Ｉ／Ｏが発行されない場合は業務などの区切りとみなすため、データを書き込むプログラム１１１ｂから定期的に、記憶領域サブシステムＡ１０５のデータボリューム１２１にログを出力するなどの配慮が必要である。
【０１１４】
次に、指定時刻のデータコピー取得指示が出されている場合の記憶領域サブシステムＡ１０５の記憶領域制御プログラムＡ１１３ｂにおける空Ｉ／Ｏ発行の動作と、ホストＡ１０４のオペレーティングシステム１１０ｂがデータの書き込み要求を取得した場合の記憶領域制御プログラムＡ１１３ｂでのデータコピー処理の動作を説明する。
【０１１５】
ここで、図３２は、記憶領域制御プログラムＡ１１３ｂにおける空Ｉ／Ｏ発行処理を示すフローチャートである。
まず、指定時刻のデータコピー取得指示が出されている場合、コピー制御プログラム１１２ｂは、現在の時刻と、データコピー指示情報１１２６ｂ（図２４参照）のデータコピー開始時刻２４１１及びデータコピー終了時刻２４１３との関係から、現在の時刻の判定を行う（ステップＳ３２０１）。この判定の結果、現在の時刻がデータコピー開始時刻よりも前であるか否かを判定し（ステップＳ３２０２）、データコピー開始時刻よりも前であれば（ステップＳ３２０２で‘はい’）、データコピー開始時刻まで待機して（ステップＳ３２０４）、ステップＳ３２０１に戻る。また、データコピー開始時刻よりも前でなければ（ステップＳ３２０２で‘いいえ’）、現在の時刻はデータコピー終了時刻より前か否かを判定する（ステップＳ３２０３）。
【０１１６】
ステップＳ３２０３の判定において、データコピー終了時刻よりも前でなければ（ステップＳ３２０３で‘いいえ’）、そのまま処理を終了する。
一方、データコピー終了時刻よりも前であれば（ステップＳ３２０３で‘はい’）、データコピー管理テーブルＡ１１３６の現在の時刻を更新時刻２６０１に設定し（ステップＳ３２０５）、空Ｉ／Ｏ発行間隔２５１４で指定された間隔で、記憶領域制御プログラムＢ１１４ｂに対して空Ｉ／Ｏを発行し（ステップＳ３２０６）、データコピーの状態を監視する（ステップＳ３２０７）。
なお、ステップＳ３０２６で発行された空Ｉ／Ｏは、記憶領域サブシステムＢ１０６の記憶領域制御プログラムＢ１１４ｂに伝送され、後記する指定時刻のデータコピー処理での業務などの区切りの判定処理（ステップＳ３２１１）に用いられる。また、ステップＳ３２０７のデータコピー状態の監視の詳細については後記する。
【０１１７】
そして、記憶領域制御プログラムＡ１１３ｂは、記憶領域サブシステムＢ１０６のデータコピー管理テーブルＢ１１４５ｂのデータコピー状態２７１６が、「完了」、「強制完了」、「失敗」のいずれかであるかを判定する（ステップＳ３２０８）。
ここで、図３３は、データコピー状態２７１６を記憶領域制御プログラムＢ１１４ｂに問い合わせる手順を示したフローチャートである。まず、記憶領域制御プログラムＡ１１３ｂは、記憶領域サブシステムＢ１０６に対して、データコピー管理テーブルＢ１１４５ｂ（図２９参照）のデータコピー状態２７１６の伝送を要求する。この要求を受信した記憶領域制御プログラムＢ１１４ｂは、記憶領域制御プログラムＡ１１３ｂに対して、データコピー管理テーブルＢ１１４５ｂのデータコピー状態２７１６を伝送する（ステップＳ３３０２）。そして、記憶領域制御プログラムＡ１１３ｂは、記憶領域制御プログラムＢ１１４ｂから伝送されたデータコピー状態２７１６を取得する（ステップＳ３３０１）。
【０１１８】
図３２に戻って、ステップＳ３２０８おいて、「完了」、「強制完了」、「失敗」のいずれかである場合は（ステップＳ３２０８で‘はい’）、そのまま処理を終了し、一方、いずれかではない場合は（ステップＳ３２０８で‘いいえ’）、データコピー指示情報１１２６ｂの空Ｉ／Ｏ発行間隔２４１４に指定された時間だけ、次の空Ｉ／Ｏ発行間隔まで待機して（ステップＳ３２０９）、ステップＳ３２０１の処理に戻る。
以上の処理において、データコピー開始時刻まで待機する処理（ステップＳ３２０４）や、空Ｉ／Ｏ発行間隔で指定された間隔を待機する処理（ステップＳ３２０９）は、オペレーティングシステム１１０ｂが一般的に備えている機能を利用する。
【０１１９】
次に、記憶領域制御プログラムＡ１１３ｂのデータコピー取得処理の手順を図３４のフローチャートに示す。
ホストＡ１０４のオペレーティングシステム１１０ｂが、データの書き込み要求を取得すると（ステップＳ３４１１）、更新データ情報１１０３ｂ（図２２参照）を更新し（ステップＳ３４１２）、記憶領域サブシステムＡ１０５の記憶領域制御プログラムＡ１１３ｂに入出力要求を伝送する（ステップＳ３４１３）。この際、更新データ情報１１０３ｂが入力情報として渡される。
【０１２０】
次に、記憶領域制御プログラムＡ１１３ｂが、更新データ情報１１０３ｂを含む入出力要求を受け取ると、まず、更新データ情報１１０３ｂの更新データ２３０２をデータボリューム１２１に反映し（ステップＳ３４０１）、この更新データ情報１１０３ｂを更新データ情報Ａ１１３７（図２７参照）に設定する（ステップＳ３４０２）。
さらに、現在の時刻を更新データ情報Ａ１１３７の更新時刻２６０１に設定して（ステップＳ３４０３）、記憶領域制御プログラムＢ１１４ｂの指定時刻のデータコピー処理部１１４６を起動する（ステップＳ３４０４）。
この後、指定時刻のデータコピー処理部１１４６の処理により、更新データがコピーボリューム１３１に反映され、指定時刻の場合は、記憶領域サブシステムＡ１０５のデータボリューム１２１が業務の区切りのデータコピー１３３にコピーされる。指定時刻のデータコピー処理については、このあと詳しく説明する。記憶領域制御プログラムＡ１１３ｂの指定時刻のデータコピー処理が完了すると、ホストＡ１０４のオペレーティングシステム１１０ｂに入出力完了通知を送信して（ステップＳ３４０５）、オペレーティングシステム１１０ｂに制御が戻される。
【０１２１】
次に、指定時刻のデータコピー取得指示が出されている場合における、記憶領域サブシステムＢ１０６の記憶領域制御プログラムＢ１１４ｂの動作を説明する。
ここで、図３５Ａないし図３５Ｆは、記憶領域サブシステムＢ１０６の記憶領域制御プログラムＢ１１４ｂの指定時刻のデータコピー取得処理のフローチャートである。
【０１２２】
まず、記憶領域制御プログラムＢ１１４ｂは、記憶領域サブシステムＡ１０５の記憶領域制御プログラムＡ１１３ｂから、更新データ情報Ａ１１３７（図２７参照）を取得して（ステップＳ３５０１）、障害発生有無の判定を行い（ステップＳ３５０２）、この判定により、障害発生有りか否かを判断し（ステップＳ３５０３）、障害が発生している場合は（ステップＳ３５０３で‘はい’）、データコピー管理テーブルＢ１１４５ｂ（図２９参照）のデータコピー状態２７１６の項目を「失敗」に設定し（ステップＳ３５０４）データコピー取得を中止する。
なお、このとき、障害発生前までに業務などの区切りが検知されている場合は、業務などの区切りのデータコピー１３３には、障害発生前までに検知した業務などの区切りについて、業務などの区切りデータコピー１３３が取得されている。
また、業務などの区切りが検知されていない場合は、障害検知前までにデータコピー取得時刻２７１２を超える更新データ情報Ａ１１３７が取得されていなければ、前回の指定時刻のデータコピーがそのまま残っているが、データコピー取得時刻２７１２を超える更新データ情報Ａ１１３７が取得されていれば、データコピー取得時刻２７１２のデータコピーが取得されている。
さらに、図３６に、ステップＳ３５０２の障害発生有無の判定の詳細なフローチャートを示し、データコピー管理テーブルＢ１１４５ｂ（図２９参照）のデータコピー終了時刻２７１３を過ぎても、ホストＡ１０４のオペレーティングシステム１１０ｂから更新データ情報Ａ１１３７が取得できなかった場合を障害発生有とみなす。図３６に示した手順は、図１６に示した第１実施形態の障害発生有無の判定手順とほぼ同様であるため、その詳細な説明は省略する。
【０１２３】
一方、ステップＳ３５０３において、障害が発生していない場合は（ステップＳ３５０３で‘いいえ’）、ステップＳ３５０１において更新データ情報Ａ１１３７を取得できたか否かを判定し（ステップＳ３５０５）、取得できていない場合は（ステップＳ３５０５で‘いいえ’）更新データ情報Ａ１１３７を取得するために、ステップＳ３５０１に戻る。
また、ステップＳ３５０５において、更新データ情報Ａ１１３７を取得できた場合は（ステップＳ３５０５で‘はい’）、取得した更新データ情報Ａ１１３７（図２７参照）の更新データ２６０３の更新時刻２６０１が、データコピー管理テーブルＢ１１４５ｂ（図２９参照）のデータコピー開始時刻２７１１より前か否かを判定する（ステップＳ３５０６）。
【０１２４】
ステップＳ３５０６において、データコピー開始時刻２７１１よりも前の場合は（ステップＳ３５０６‘はい’）、端子Ｆから図３５Ｂに移って、更新データをコピーボリューム１３１に反映し（ステップＳ３５１０１）、端子Ｋから図１５Ａの更新データ情報１１０３の取得処理（ステップＳ１５０２）に戻る。
【０１２５】
一方、ステップＳ３５０６において、データコピー開始時刻２７１１よりも前ではない場合は（ステップＳ３５０６で‘いいえ’）、取得した更新データ情報Ａ１１３７（図２７参照）の更新データ２６０３の更新時刻２６０１が、データコピー管理テーブルＢ１１４５ｂ（図２９参照）のデータコピー取得時刻２７１２よりも前か否かを判定する（ステップＳ３５０７）。
ステップＳ３５０７において、データコピー取得時刻２７１２よりも前の場合は（ステップＳ３５０７で‘はい’）、端子Ｇから図３５Ｃに移って、記憶領域制御プログラムＢ１１４ｂは、データコピー管理テーブルＢ１１４５ｂ（図２９参照）のデータコピー状態２７１６の項目を「処理中」に設定し（ステップＳ３５２０１）、業務などの区切りの判定を行い（ステップＳ３５２０２）、業務などの区切りを検知したか否かを判定する（ステップＳ３５２０３）。
【０１２６】
ステップＳ３５２０３において、業務などの区切りを検出した場合は（ステップＳ３５２０３で‘はい’）、ステップＳ３５２０２の処理で決定した業務などの区切りの時刻を、データコピー管理テーブルＢ１１４５ｂ（図２９参照）の仮のデータコピー実行時刻２７１９に設定し（ステップＳ３５２０４）、コピーボリューム１３１を、業務などの区切りのデータコピー１３３にデータコピーする（ステップＳ３５２０５）。そして、端子Ｋから図３５Ａの更新データ情報Ａ１１３７の取得処理（ステップＳ３５０１）に戻る。
【０１２７】
一方、ステップＳ３５２０３において、業務などの区切りを検出しなかった場合は（ステップＳ３５２０３で‘いいえ’）、図３５ＡのステップＳ３５０１で取得した更新データ情報Ａ１１３７（図２７参照）が空Ｉ／Ｏの更新データ情報Ａ１１３７か否かを判定し（ステップＳ３５２０６）、空Ｉ／Ｏの更新データ情報Ａ１１３７であれば（ステップＳ３５２０６で‘はい’）そのまま、空Ｉ／Ｏの更新データ情報Ａ１１３７でなければ（ステップＳ３５２０６で‘いいえ’）この更新データ情報Ａ１１３７をコピーボリューム１３１に反映して（ステップＳ３５２０７）、端子Ｋから図３５Ａの更新データ情報Ａ１１３７の取得処理（ステップＳ３５０１）に戻る。
なお、ステップＳ３５２０６の空Ｉ／Ｏの更新データ情報Ａ１１３７か否かの判定は、更新箇所２６０２及び更新データ２６０３の項目が無効であるか否かで判定される。
【０１２８】
次に、ステップＳ３５０７において、データコピー取得時刻２７１２よりも前ではない場合は（ステップＳ３５０７で‘いいえ’）、取得した更新データ情報Ａ１１３７（図２７参照）の更新データ２６０３の更新時刻２６０１が、データコピー管理テーブルＢ１１４５ｂ（図２９参照）のデータコピー終了時刻２７１３よりも前か否かを判定する（ステップＳ３５０８）。
ステップＳ３５０８において、データコピー終了時刻２７１３よりも前の場合は（ステップＳ３５０８で‘はい’）、端子Ｈから図３５Ｄに移って、業務などの区切りの判定を行い（ステップＳ３５３０１）、業務などの区切りを検知したか否かを判定する（ステップＳ３５３０２）。
【０１２９】
ステップＳ３５３０２において、業務などの区切りを検出した場合は（ステップＳ３５３０２で‘はい’）、検知した業務などの区切りの時刻と、データコピー管理テーブルＢ１１４５ｂ（図２９参照）の仮のデータコピー実行時刻２７１９とを比較して（ステップＳ３５３０３）、業務などの区切りの時刻は、仮のデータコピー実行時刻２７１９より、データコピー管理テーブルＢ１１４５ｂ（図２９参照）のデータコピー取得時刻２７１２に近い時刻か否かを判定する（ステップＳ３５３０４）。
【０１３０】
ステップＳ３５３０４において、業務などの区切りの時刻の方が近い場合は（ステップＳ３５３０４で‘はい’）、ステップＳ３５３０１で検出した業務などの区切りの時刻を、データコピー管理テーブルＢ１１４５ｂ（図２９参照）のデータコピー実行時刻２７１７に設定し（ステップＳ３５３０５）、業務などの区切りのデータコピー１３３にコピーボリューム１３１をコピーする（ステップＳ３５３０６）。
一方、ステップＳ３５３０４において、仮のデータコピー実行時刻２７１９の方が近い場合は（ステップＳ３５３０４で‘いいえ’）、この仮のデータコピー実行時刻２７１９をデータコピー管理テーブルＢ１１４５ｂのデータコピー実行時刻２７１７に設定する（ステップＳ３５３０８）。
そして、記憶領域制御プログラムＢ１１４は、データコピー管理テーブルＢ１１４５ｂ（図２９参照）のデータコピー状態２７１６の項目を「完了」に設定して（ステップＳ３５３０７）処理を終了する。
【０１３１】
一方。ステップＳ３５３０２において、業務などの区切りを検出できなかった場合は（ステップＳ３５３０２で‘いいえ’）、端子Ｉから図３５Ｅに移って、データコピー管理テーブルＢ１１４５ｂの仮のデータコピー実行時刻２７１９の項目が未設定か否かを判定し（ステップＳ３５４０１）、未設定の場合は（ステップＳ３５４０１で‘はい’）、データコピー取得時間以降の最初の更新データか否かを判定する（ステップＳ３５４０２）。
ステップＳ３５４０２において、データコピー取得時間以降の最初の更新データの場合は（ステップＳ３５４０２で‘はい’）、一度もコピーボリューム１３１を業務などの区切りのデータコピー１３３にデータコピーしていないため、コピーボリューム１３１を業務などの区切りのデータコピー１３３にコピーする（ステップＳ３５４０３）。
一方、ステップＳ３５４０１またはステップＳ３５４０２において‘いいえ’の場合は、ステップＳ３５４０３をスキップする。
【０１３２】
次に、記憶領域制御プログラムＢ１１４ｂは、図３５ＡのステップＳ３５０１で取得した更新データ情報Ａ１１３７（図２７参照）が、空Ｉ／Ｏの更新データ情報２６０３か否かを判定し（ステップＳ３５４０４）、空Ｉ／Ｏの場合は（ステップＳ３５４０４で‘はい’）、そのまま、空Ｉ／Ｏではない場合は（ステップＳ３５４０４で‘いいえ’）、更新データ２６０３をコピーボリューム１３１に反映して（ステップＳ３５４０５）、端子Ｋから図３５Ａの更新データ情報Ａ１１３７の取得処理（ステップＳ３５０１）に戻る。
【０１３３】
そして、ステップＳ３５０８において、データコピー終了時刻２７１３よりも前ではない場合は（ステップＳ３５０８で‘いいえ’）、端子Ｊから図３５Ｆに移り、データコピー管理テーブルＢ１１４５ｂ（図２９参照）のデータコピー取得時刻２７１２をデータコピー実行時刻２７１７に設定し（ステップＳ３５５０１）、データコピー状態２７１６を「強制完了」に設定してすべての処理を終了する（ステップＳ３５５０２）。
【０１３４】
なお、ステップＳ３２１１、ステップＳ３５２０２、及びステップＳ３５３０１における業務などの区切り判定の手順を図３７のフローチャートに示すが、判定に用いる更新データが更新データ情報Ａ１１３７であること以外は、図１７に示した第１実施形態の業務などの区切り判定処理とほぼ同様であるため、その説明は省略する。
【０１３５】
以上、説明したように本実施形態の記憶領域制御システムによると、同一サイト内で指定時刻のデータのデータコピーを取得する際であっても、データコピーの取得時刻を最適化できる。これにより、障害発生時のリカバリが短縮されシステムの信頼性が向上する。
【０１３６】
以上、本発明の好適な態様について、２つの実施形態を示したが、本発明は前記の実施形態に限定されることなく、特許請求の範囲に記載された技術的思想により定められるものである。
【図面の簡単な説明】
【０１３７】
【図１】第１実施形態の記憶領域制御システムの構成ブロック図である。
【図２】非同期コピーによるデータコピー及び指定時刻のデータのデータコピーを取得する運用を説明する説明図である。
【図３】オペレーティングシステムの機能ブロックを示す図面である。
【図４】コピー制御プログラムの機能ブロックを示す図面である。
【図５】記憶領域制御プログラムＡの機能ブロックを示す図面である。
【図６】記憶領域制御プログラムＢの機能ブロックを示す図面である。
【図７】更新データ情報に格納される情報を示すテーブルである。
【図８】データコピー指示情報に格納される情報を示すテーブルである。
【図９】データコピー管理テーブルに格納される情報を示すテーブルである。
【図１０】指定時刻のデータコピー取得処理の概略を示すフローチャートである。
【図１１】データコピー時刻設定処理を示すフローチャートである。
【図１２】コピー制御プログラムにおける空Ｉ／Ｏ発行処理のフローチャートである。
【図１３】データコピー状態の監視処理を示すフローチャートである。
【図１４】更新データ又は空Ｉ／Ｏの情報をジャーナルＡに蓄積する処理を示すフローチャートである。
【図１５Ａ】指定時刻のデータコピー取得処理を示すフローチャートである。
【図１５Ｂ】指定時刻のデータコピー取得処理を示すフローチャートである。
【図１５Ｃ】指定時刻のデータコピー取得処理を示すフローチャートである。
【図１５Ｄ】指定時刻のデータコピー取得処理を示すフローチャートである。
【図１５Ｅ】指定時刻のデータコピー取得処理を示すフローチャートである。
【図１６】障害発生有無の判定処理を示すフローチャートである。
【図１７】業務などの区切り判定の処理を示すフローチャートである。
【図１８Ａ】データコピー開始時刻、データコピー取得時刻及びデータコピー終了時刻の設定値を示すテーブルである。
【図１８Ｂ】最適なデータコピー実行時刻の設定例を説明する図面である。
【図１８Ｃ】最適なデータコピー実行時刻の設定例を説明する図面である。
【図１８Ｄ】最適なデータコピー実行時刻の設定例を説明する図面である。
【図１８Ｅ】最適なデータコピー実行時刻の設定例を説明する図面である。
【図１９】第２実施形態の記憶領域制御システムの構成ブロック図である。
【図２０】同期コピーによるデータコピー及び指定時刻のデータのデータコピーを取得する運用を説明する説明図である。
【図２１】オペレーティングシステムの機能ブロックを示す図面である。
【図２２】更新データ情報に格納される情報を示すテーブルである。
【図２３】コピー制御プログラムの機能ブロックを示す図面である。
【図２４】データコピー指示情報に格納される情報を示すテーブルである。
【図２５】記憶領域制御プログラムＡの機能ブロックを示す図面である。
【図２６】データコピー管理テーブルＡに格納される情報を示すテーブルである。
【図２７】更新データ情報Ａに格納される情報を示すテーブルである。
【図２８】記憶領域制御プログラムＢの機能ブロックを示す図面である。
【図２９】データコピー管理テーブルＢに格納される情報を示すテーブルである
【図３０】指定時刻のデータコピー取得処理の概略を示すフローチャートである。
【図３１】データコピー時刻設定処理を示すフローチャートである。
【図３２】記憶領域制御プログラムＡの空Ｉ／Ｏ発行処理を示すフローチャートである。
【図３３】データコピー状態を問い合わせる手順を示すフローチャートである。
【図３４】記憶領域制御プログラムＡのデータコピー取得処理を示すフローチャートである。
【図３５Ａ】指定時刻のデータコピー取得処理を示すフローチャートである。
【図３５Ｂ】指定時刻のデータコピー取得処理を示すフローチャートである。
【図３５Ｃ】指定時刻のデータコピー取得処理を示すフローチャートである。
【図３５Ｄ】指定時刻のデータコピー取得処理を示すフローチャートである。
【図３５Ｅ】指定時刻のデータコピー取得処理を示すフローチャートである。
【図３５Ｆ】指定時刻のデータコピー取得処理を示すフローチャートである。
【図３６】障害発生有無の判定処理を示すフローチャートである。
【図３７】業務などの区切り判定の処理を示すフローチャートである。
【符号の説明】
【０１３８】
１０４  ホストＡ
１０５  記憶領域サブシステムＡ
１０６  記憶領域サブシステムＢ
１１０、１１０ｂ  オペレーティングシステム
１１１、１１１ｂ  データを書き込むプログラム
１１２、１１２ｂ  コピー制御プログラム
１１３、１１３ｂ  記憶領域制御プログラムＡ
１１４、１１４ｂ  記憶領域制御プログラムＢ
１２１  データボリューム
１２２  ジャーナルＡ
１３１  コピーボリューム
１３２  ジャーナルＢ
１３３  業務などの区切りのデータコピー
【図１】
2008129809.tif 000003
【図２】
2008129809.tif 000004
【図３】
2008129809.tif 000005
【図４】
2008129809.tif 000006
【図５】
2008129809.tif 000007
【図６】
2008129809.tif 000008
【図７】
2008129809.tif 000009
【図８】
2008129809.tif 000010
【図９】
2008129809.tif 000011
【図１０】
2008129809.tif 000012
【図１１】
2008129809.tif 000013
【図１２】
2008129809.tif 000014
【図１３】
2008129809.tif 000015
【図１４】
2008129809.tif 000016
【図１５Ａ】
2008129809.tif 000017
【図１５Ｂ】
2008129809.tif 000018
【図１５Ｃ】
2008129809.tif 000019
【図１５Ｄ】
2008129809.tif 000020
【図１５Ｅ】
2008129809.tif 000021
【図１６】
2008129809.tif 000022
【図１７】
2008129809.tif 000023
【図１８Ａ】
2008129809.tif 000024
【図１８Ｂ】
2008129809.tif 000025
【図１８Ｃ】
2008129809.tif 000026
【図１８Ｄ】
2008129809.tif 000027
【図１８Ｅ】
2008129809.tif 000028
【図１９】
2008129809.tif 000029
【図２０】
2008129809.tif 000030
【図２１】
2008129809.tif 000031
【図２２】
2008129809.tif 000032
【図２３】
2008129809.tif 000033
【図２４】
2008129809.tif 000034
【図２５】
2008129809.tif 000035
【図２６】
2008129809.tif 000036
【図２７】
2008129809.tif 000037
【図２８】
2008129809.tif 000038
【図２９】
2008129809.tif 000039
【図３０】
2008129809.tif 000040
【図３１】
2008129809.tif 000041
【図３２】
2008129809.tif 000042
【図３３】
2008129809.tif 000043
【図３４】
2008129809.tif 000044
【図３５Ａ】
2008129809.tif 000045
【図３５Ｂ】
2008129809.tif 000046
【図３５Ｃ】
2008129809.tif 000047
【図３５Ｄ】
2008129809.tif 000048
【図３５Ｅ】
2008129809.tif 000049
【図３５Ｆ】
2008129809.tif 000050
【図３６】
2008129809.tif 000051
【図３７】
2008129809.tif 000052