(57)【要約】【課題】より短い時間単位での復元時刻の指定を可能とすると共に、より短時間でのデータ復元処理を行い得る記憶システム及びデータ管理方法を実現できる。【解決手段】第１のストレージ装置において、第１のボリュームの更新履歴情報であるジャーナルを作成すると共に、作成したジャーナルを第２のストレージ装置に送信し、第２のストレージ装置において、受信したジャーナルに含まれる第１のボリュームに書き込まれたデータを第２のボリュームにコピーすると共に、各ジャーナルを保持する一方、定期的又は不定期に第２のボリュームのスナップショットを作成すると共に、作成した各スナップショットを保持し、その後、外部からの要求に応じて、保持したジャーナル及びスナップショットを利用して、指定された時刻の第１のボリュームを復元するようにした。【選択図】図５
2007280323.tif 000002
【特許請求の範囲】
【請求項１】
上位装置としてのホスト装置と、前記ホスト装置に対してデータを読み書きするための第１のボリュームを提供する第１のストレージ装置と、前記第１のボリュームに書き込まれた前記データをコピーするための第２のボリュームを提供する第２のストレージ装置とを有する記憶システムにおいて、
前記第１のストレージ装置は、
前記第１のボリュームの更新履歴情報であるジャーナルを作成し、作成した前記ジャーナルを前記第２のストレージ装置に送信するジャーナル作成送信部
を備え、
前記第２のストレージ装置は、
前記第１のストレージ装置から送信される前記ジャーナルに含まれる前記第１のボリュームに書き込まれた前記データを前記第２のボリュームにコピーするデータコピー部と、
前記第１のストレージ装置から送信される各前記ジャーナルを保持するジャーナル保持部と、
定期的又は不定期に前記第２のボリュームのスナップショットを作成するスナップショット作成部と、
前記スナップショット作成部により作成された各前記スナップショットを保持するスナップショット保持部と、
外部からの要求に応じて、前記ジャーナル保持部に保持された前記ジャーナル及び前記スナップショット保持部に保持された前記スナップショットを利用して、指定された時刻の前記第１のボリュームを復元するボリューム復元部と
を備える
ことを特徴とする記憶システム。
【請求項２】
前記スナップショット保持部は、
各前記ジャーナルを第３のボリュームに格納して保持し、
前記スナップショット作成部は、
前記第３のボリュームに対する前記ジャーナルの書込み量に応じて前記スナップショットを作成する
ことを特徴とする請求項１に記載の記憶システム。
【請求項３】
前記第１のストレージ装置は、
前記スナップショット保持部に保持された各前記スナップショットの作成時刻を管理するスナップショット管理部を備え、
前記ボリューム復元部は、
前記スナップショット管理部が管理する各前記スナップショットの作成時刻に基づいて、前記指定された時刻に最も近く、かつ当該指定された時刻よりも前に作成された前記スナップショットを利用して、前記指定された時刻の前記第１のボリュームを復元する
ことを特徴とする請求項１に記載の記憶システム。
【請求項４】
前記第２のストレージ装置は、
前記スナップショット保持部により保持された各前記スナップショットの作成時刻を管理するスナップショット管理部と、
前記ホスト装置からの要求に応じて、前記スナップショット管理部が管理する各前記スナップショットの作成時刻を当該ホスト装置に通知するスナップショット作成時刻通知部と
を備え、
前記ホスト装置は、
前記第２のストレージ装置から通知される前記スナップショット保持部に保持された各前記スナップショットの作成時刻を表示する
ことを特徴とする請求項１に記載の記憶システム。
【請求項５】
前記スナップショット保持部は、
必要に応じて最古の前記スナップショットを廃棄しながら、既定数の前記スナップショットを保持する
ことを特徴とする請求項１に記載の記憶システム。
【請求項６】
上位装置としてのホスト装置と、前記ホスト装置に対してデータを読み書きするための第１のボリュームを提供する第１のストレージ装置と、前記第１のボリュームに書き込まれた前記データをコピーするための第２のボリュームを提供する第２のストレージ装置とを有する記憶システムにおけるデータ管理方法において、
前記第１のストレージ装置が、前記第１のボリュームの更新履歴情報であるジャーナルを作成し、作成した前記ジャーナルを前記第２のストレージ装置に送信する第１のステップと、
前記第２のストレージ装置が、前記第１のストレージ装置から送信される前記ジャーナルに含まれる前記第１のボリュームに書き込まれた前記データを前記第２のボリュームにコピーすると共に、各前記ジャーナルを保持する一方、定期的又は不定期に前記第２のボリュームのスナップショットを作成すると共に、作成した各前記スナップショットを保持する第２のステップと、
前記第２のストレージ装置が、外部からの要求に応じて、保持した前記ジャーナル及び前記スナップショットを利用して、指定された時刻の前記第１のボリュームを復元する第３のステップと
を備えることを特徴とするデータ管理方法。
【請求項７】
前記第２のステップでは、
各前記ジャーナルを第３のボリュームに格納して保持すると共に、前記第３のボリュームに対する前記ジャーナルの書込み量に応じて前記スナップショットを作成する
ことを特徴とする請求項６に記載のデータ管理方法。
【請求項８】
前記第２のステップでは、
前記第２のストレージ装置が、保持した各前記スナップショットの作成時刻を管理し、
前記第３のステップでは、
前記第２のストレージ装置が、各前記スナップショットの作成時間に基づいて、前記指定された時刻に最も近く、かつ当該指定された時刻よりも前に作成されたスナップショットを利用して、前記指定された時刻の前記第１のボリュームを復元する
ことを特徴とする請求項６に記載のデータ管理方法。
【請求項９】
前記第２のステップでは、
前記第２のストレージ装置が、保持した各前記スナップショットの作成時刻を管理し、前記ホスト装置からの要求に応じて、各前記スナップショットの作成時刻を当該ホスト装置に通知し、
前記ホスト装置が、前記第２のストレージ装置から通知される各前記スナップショットの作成時刻を表示する
ことを特徴とする請求項６に記載のデータ管理方法。
【請求項１０】
前記第２のステップでは、
必要に応じて最古の前記スナップショットを廃棄しながら、既定数の前記スナップショットを保持する
ことを特徴とする請求項６に記載のデータ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶システム及びデータ管理方法に関し、例えばジャーナルを利用したデータバックアップを行い得るようになされた記憶システムに適用して好適なものである。
【背景技術】
【０００２】
従来、記憶システムにおいては、ユーザがデータを読み書きするボリュームのフルバックアップを１日から１週間程度の周期で定期的に実行し、又はボリュームのある時点のデータイメージでなるスナップショットを１２時間から１日程度の周期で定期的に作成し、かかるフルバックアップやスナップショットの作成により得られたバックアップデータやスナップショットの差分データを用いてボリュームや当該ボリュームに格納されたデータを復元することが行われている。
【０００３】
また、下記特許文献１には、かかるユーザがデータを読み書きするボリュームの更新履歴情報でなるジャーナルを利用したデータのバックアップに関する技術が開示され、下記特許文献２には、リモートコピーを利用したデータのバックアップに関する技術が開示されている。
【特許文献１】特開２００５−１１５８９８号公報
【特許文献２】特開２００３−１２２５０９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところが、上述のように１日から１週間程度の周期で定期的にボリュームに格納されたデータのフルバックアップを実行し、又は１２時間から１日程度の周期で定期的にボリュームのある時点のデータイメージでなるスナップショットを作成するデータ管理方法によると、当該ボリュームを復元可能な時間単位が１２時間から１週間ごととなり、またボリュームを復元するために１〜３時間程度の時間を要していた。
【０００５】
また従来の記憶システムでは、かかるボリュームの復元処理を、ユーザがデータを読み書きするためのボリュームが設けられたストレージ装置側において行っていた。ところが、このようなボリュームの復元処理は負荷が大きく、かかるボリュームの復元処理がホスト装置からのデータ入出力要求に応じたデータの入出力処理に悪影響を及ぼす問題があった。
【０００６】
本発明は以上の点を考慮してなされたもので、より短い時間単位での復元時刻の指定を可能とすると共に、より短時間でのデータ復元処理を行い得る記憶システム及びデータ管理方法を提案しようとするものである。
【課題を解決するための手段】
【０００７】
かかる課題を解決するため本発明においては、上位装置としてのホスト装置と、前記ホスト装置に対してデータを読み書きするための第１のボリュームを提供する第１のストレージ装置と、前記第１のボリュームに書き込まれた前記データをコピーするための第２のボリュームを提供する第２のストレージ装置とを有する記憶システムにおいて、前記第１のストレージ装置は、前記第１のボリュームの更新履歴情報であるジャーナルを作成し、作成した前記ジャーナルを前記第２のストレージ装置に送信するジャーナル作成送信部を備え、前記第２のストレージ装置は、前記第１のストレージ装置から送信される前記ジャーナルに含まれる前記第１のボリュームに書き込まれた前記データを前記第２のボリュームにコピーするデータコピー部と、前記第１のストレージ装置から送信される各前記ジャーナルを保持するジャーナル保持部と、定期的又は不定期に前記第２のボリュームのスナップショットを作成するスナップショット作成部と、前記スナップショット作成部により作成された各前記スナップショットを保持するスナップショット保持部と、外部からの要求に応じて、前記ジャーナル保持部に保持された前記ジャーナル及び前記スナップショット保持部に保持された前記スナップショットを利用して、指定された時刻の前記第１のボリュームを復元するデータ復元部とを備えることを特徴とする。
【０００８】
この結果、この記憶システムでは、第２のストレージ装置においてスナップショットを作成する時間的な間隔を調整することによって、第１のボリュームの復元可能な時間単位を短くすることができ、この結果として第１のボリュームの復元処理に要する時間を短縮することができる。またこの記憶システムでは、第１のボリュームの復元処理を第２のストレージ装置において行うため、当該復元処理が第１のストレージ装置におけるデータ入出力処理に悪影響を及ぼすのを有効に防止することができる。
【０００９】
また本発明においては、上位装置としてのホスト装置と、前記ホスト装置に対してデータを読み書きするための第１のボリュームを提供する第１のストレージ装置と、前記第１のボリュームに書き込まれた前記データをコピーするための第２のボリュームを提供する第２のストレージ装置とを有する記憶システムにおけるデータ管理方法において、前記第１のストレージ装置が、前記第１のボリュームの更新履歴情報であるジャーナルを作成し、作成した前記ジャーナルを前記第２のストレージ装置に送信する第１のステップと、前記第２のストレージ装置が、前記第１のストレージ装置から送信される前記ジャーナルに含まれる前記第１のボリュームに書き込まれた前記データを前記第２のボリュームにコピーすると共に、各前記ジャーナルを保持する一方、定期的又は不定期に前記第２のボリュームのスナップショットを作成すると共に、作成した各前記スナップショットを保持する第２のステップと、前記第２のストレージ装置が、外部からの要求に応じて、保持した前記ジャーナル及び前記スナップショットを利用して、指定された時刻の前記第１のボリュームを復元する第３のステップとを備えることを特徴とする。
【００１０】
この結果、このデータ管理方法によれば、第２のストレージ装置においてスナップショットを作成する時間的な間隔を調整することによって、第１のボリュームの復元可能な時間単位を短くすることができ、この結果として第１のボリュームの復元処理に要する時間を短縮することができる。またこのデータ管理方法によれば、第１のボリュームの復元処理を第２のストレージ装置において行うため、当該復元処理が第１のストレージ装置におけるデータ入出力処理に悪影響を及ぼすのを有効に防止することができる。
【発明の効果】
【００１１】
本発明によれば、より短い時間単位での復元時刻の指定を可能とすると共に、より短時間でのデータ復元処理を行い得る記憶システム及びデータ管理方法を実現できる。
【発明を実施するための最良の形態】
【００１２】
以下図面について、本発明の一実施の形態を詳述する。
【００１３】
（１）本実施の形態による記憶システムの構成
図１において、１は全体として本実施の形態による記憶システムを示す。この記憶システム１は、上位装置としてのホスト装置２がネットワーク３を介して正側ストレージ装置４及び副側ストレージ装置５と接続されることにより構成されている。
【００１４】
ホスト装置２は、ＣＰＵ（Central Processing Unit）１０やローカルメモリ１１等の情報処理資源を備えたコンピュータ装置であり、例えばパーソナルコンピュータや、ワークステーション、メインフレームなどから構成される。またホスト装置２は、キーボード、スイッチやポインティングデバイス、マイクロフォン等の情報入力装置（図示せず）と、モニタディスプレイやスピーカ等の情報出力装置（図示せず）とを備える。
【００１５】
ネットワーク３は、例えばＳＡＮ（Storage Area Network）、ＬＡＮ（Local Area Network）、インターネット、公衆回線又は専用回線などから構成される。このネットワーク３を介したホスト装置２、正側ストレージ装置４及び副側ストレージ装置５間の通信は、例えばネットワーク３がＳＡＮである場合にはファイバーチャネルプロトコルに従って行われ、ネットワーク３がＬＡＮである場合にはＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）プロトコルに従って行われる。
【００１６】
正側ストレージ装置４は、複数のディスクデバイス２０からなるディスクデバイス部２１と、各ディスクデバイス２０を制御するコントローラ２２とを備えて構成される。
【００１７】
ディスクデバイス２０は、例えばＦＣ（Fibre Channel）ディスク等の高価なディスクドライブ、又はＦＡＴＡ（Fibre Attached Technology Adapted）や、ＳＡＴＡ（Serial AT Attachment）ディスク又は光ディスクドライブ等の安価なディスクドライブから構成される。１又は複数のディスクデバイス２０が提供する記憶領域上に１又は複数の論理的なボリューム（以下、これを論理ボリュームと呼ぶ）ＶＯＬが定義される。そして、この論理ボリュームＶＯＬにホスト装置２からのデータが所定大きさのブロックを単位として読み書きされる。
【００１８】
各論理ボリュームＶＯＬには、それぞれ固有の識別子（ＬＵＮ：Logical Unit Number）が割り当てられる。本実施の形態の場合、データの入出力は、この識別子と、各ブロックにそれぞれ割り当てられるそのブロックに固有の番号（ＬＢＡ：Logical Block Address）との組み合わせたものをアドレスとして、当該アドレスを指定して行われる。
【００１９】
正側ストレージ装置４内に作成される論理ボリュームＶＯＬの属性としては、正側ボリューム及びジャーナルボリュームなどがある。このうち正側ボリュームは、ユーザがデータを読み書きするボリュームである。またジャーナルボリュームは、正側ボリュームに書き込まれたデータと、当該データが書き込まれた正側ボリューム上のアドレス及び当該データが書き込まれた時刻等の管理情報とから構成される、正側ボリュームの更新履歴情報であるジャーナルを格納するためのボリュームである。
【００２０】
コントローラ２２は、複数のチャネルアダプタ２３、接続部２４、共有メモリ２５、キャッシュメモリ２６、複数のディスクアダプタ２７及び管理端末２８を備えて構成される。
【００２１】
各チャネルアダプタ２３は、図２に示すように、それぞれＣＰＵ３０及びローカルメモリ３１等を備えたマイクロコンピュータシステムとして構成されており、それぞれネットワーク３に接続するためのポート（図示せず）を備える。チャネルアダプタ２３は、ホスト装置２から送信される各種コマンドを解釈して、必要な処理を実行する。各チャネルアダプタ２３のポートには、それぞれを識別するためのネットワークアドレス（例えば、ＩＰアドレスやＷＷＮ）が割り当てられており、これにより各チャネルアダプタ１３がそれぞれ個別にＮＡＳ（Network Attached Storage）として振る舞うことができるようになされている。
【００２２】
接続部２４は、チャネルアダプタ２３、共有メモリ２５、キャッシュメモリ２６及びディスクアダプタ２７と接続されている。チャネルアダプタ２３、共有メモリ２５、キャッシュメモリ２６及びディスクアダプタ２７間のデータやコマンドの授受は、この接続部２４を介して行われる。接続部２４は、例えば高速スイッチングによりデータ伝送を行う超高速クロスバススイッチなどのスイッチ又はバス等で構成される。
【００２３】
共有メモリ２５は、チャネルアダプタ２３及びディスクアダプタ２７により共有される記憶メモリである。共有メモリ２５は、主に正側ストレージ装置４の電源投入時に所定のディスクデバイス２０から読み出されたマイクロプログラム及びシステム構成情報や、ホスト装置２からのコマンドなどを記憶するために利用される。図３に示すように、後述のリモートコピー処理を実行するためのリモートコピー管理プログラム３２もこの共有メモリ２５に格納されている。
【００２４】
キャッシュメモリ２６も、チャネルアダプタ２３及びディスクアダプタ２７により共有される記憶メモリである。このキャッシュメモリ２６は、主に正側ストレージ装置４に入出力するデータを一時的に記憶するために利用される。
【００２５】
各ディスクアダプタ２７は、ＣＰＵやメモリ等を備えたマイクロコンピュータシステムとして構成され、各ディスクデバイス２０との通信時におけるプロトコル制御を行うインタフェースとして機能する。これらディスクアダプタ２７は、例えばファイバーチャネルケーブルを介して対応するディスクデバイス２０と接続されており、ファイバーチャネルプロトコルに従ってこれらディスクデバイス２０との間のデータの授受を行う。
【００２６】
管理端末２８は、正側ストレージ装置４全体の作動を制御するコンピュータ装置であり、例えばノート型のパーソナルコンピュータから構成される。この管理端末２８は、ＬＡＮ２９を介して各チャネルアダプタ２３及び各ディスクアダプタ２７とそれぞれ接続されている。管理端末２８は、正側ストレージ装置４内の障害の有無を監視し、障害が発生したときにこれをシステム管理者に通知するなどの処理を行う。
【００２７】
副側ストレージ装置５は、正側ストレージ装置４と同様に、複数のディスクデバイス４０からなるディスクデバイス部４１と、各ディスクデバイス４０を制御するコントローラ４２とを備えて構成される。
【００２８】
ディスクデバイス４０は、正側ストレージ装置４のディスクデバイス２０と同様の構成を有するものであるため、説明を省略する。このディスクデバイス４０が提供する記憶領域上には、正側ストレージ装置４と同様に、１又は複数の論理ボリュームＶＯＬが定義される。これら論理ボリュームＶＯＬの属性としては、ジャーナルボリューム、副側ボリューム及び差分ボリュームなどがある。
【００２９】
このうちジャーナルボリュームは、後述のように正側ストレージ装置４から送信されてくるジャーナルを保持するボリュームである。また副側ボリュームは、正側ボリュームに書き込まれたデータをバックアップするためのボリュームであり、正側ストレージ装置４から送信されてきたジャーナルに含まれる正側ボリュームに書き込まれたデータがコピーされる。差分ボリュームは、後述のように所定のタイミングで取得された副側ボリュームのスナップショットの差分データを保持するためのボリュームである。
【００３０】
一方、コントローラ４２は、複数のチャネルアダプタ４３、接続部４４、共有メモリ４５、キャッシュメモリ４６、複数のディスクアダプタ４７及び管理端末４８を備えて構成される。これらチャネルアダプタ４３、接続部４４、共有メモリ４５、キャッシュメモリ４６、ディスクアダプタ及び管理端末４８は、正側ストレージ装置４における対応部位と同様の機能を有するものであるため、説明は省略する。
【００３１】
なお、副側ストレージ装置５の場合、共有メモリ４５には、図４に示すように、後述のリモートコピー管理プログラム３３、スナップショット管理プログラム３４及びボリューム復元プログラム３５や、後述のジャーナル管理テーブル３６、第１のスナップショット管理テーブル３７及び第２のスナップショット管理テーブル３８が格納される。
【００３２】
（２）記憶システムにおけるデータ管理方法
（２−１）記憶システムにおけるデータ管理方法の概要
次に、この記憶システム１におけるデータ管理方法について説明する。
【００３３】
本実施の形態による記憶システム１では、正側ボリュームに書き込まれたデータを、正側ストレージ装置４及び副側ストレージ装置５のリモートコピー機能により副側ストレージ装置５に順次転送して副側ボリュームにコピーする一方、副側ストレージ装置５において、副側ボリュームのスナップショットを例えば秒又は分単位で定期的又は不定期に作成する。
【００３４】
また副側ストレージ装置５は、ホスト装置２から復元すべき時刻（以下、これを復元要求時刻と呼ぶ）を指定した正側ボリュームの復元要求が正側ストレージ装置４を介して与えられると、それまでに作成した副側ボリュームのスナップショットを利用して、ホスト装置２により指定された復元要求時刻の正側ボリュームを復元する。
【００３５】
実際上、この記憶システム１の場合、正側ストレージ装置４のチャネルアダプタ（以下、これを正側チャネルアダプタと呼ぶ）２３（図１）は、図５に示すように、ホスト装置２からのデータ書込み要求及び書込み対象のデータが与えられると、当該データを正側ボリューム（「ＰＶＯＬ」）内の指定されたアドレスに書き込む一方、このデータのジャーナルを作成し、作成したジャーナルを正側ストレージ装置４内のジャーナルボリューム（「ＪＮＬＶＯＬ（Ｐ）」。以下、これを正側ジャーナルボリュームと呼ぶ）に格納する。
【００３６】
一方、副側ストレージ装置５のチャネルアダプタ（以下、これを副側チャネルアダプタと呼ぶ）４３は、正側ジャーナルボリュームに格納されたジャーナルをホスト装置２による正側ボリュームへのデータの書き込みとは非同期に読み出し、これを当該副側ストレージ装置５内に設けられたジャーナルボリューム（「ＪＮＬＶＯＬ（Ｓ）」。以下、これを副側ジャーナルボリュームと呼ぶ）において保持する。
【００３７】
また、かかる副側チャネルアダプタ４３は、この副側ジャーナルボリュームにおいて保持した各ジャーナルに含まれるデータを副側ボリューム（「ＳＶＯＬ」）内の対応するアドレスコピーする。これにより副側ボリュームを用いて正側ボリュームの複製が作成されることとなる。
【００３８】
一方、副側チャネルアダプタ４３は、副側ジャーナルボリュームに対するジャーナルの書込み量を監視しており、当該書込み量が既定の閾値を超えるごとに副側ボリュームのスナップショットを作成する。また副側チャネルアダプタ４３は、作成した各スナップショットの作成時刻を管理する。そして副側チャネルアダプタ４３は、スナップショットの作成後に副側ボリュームにデータが書き込まれたときには、当該データが書き込まれる前に副側ボリュームに書き込まれていたデータ（スナップショットを作成した時点のデータ）を差分データとして差分ボリューム（「ＤＶＯＬ」）に順次格納する。これにより副側チャネルアダプタにより作成されたスナップショットが副側ボリューム及び差分ボリュームにおいて保持されることとなる。
【００３９】
さらに、副側チャネルアダプタ４３は、この後、ホスト装置２から正側ストレージ装置４を介してデータの復元要求が与えられたときには、各スナップショットの作成時刻に基づいて、指定された指定復元時刻に最も近く、かつ指定復元時刻よりも前に作成したスナップショット（以下、これを直近スナップショットと呼ぶ）を検索する。そして副側チャネルアダプタ４３は、この直近スナップショットと、当該直近スナップショットを作成してから指定復元時刻までの間に正側ストレージ装置４から送信されてきたジャーナルとを利用して、指定復元時刻の正側ボリューム（「ＰＶＯＬ′」）を復元する。
【００４０】
なお、リモートコピーには、同期型と非同期側とがある。このうち同期型のリモートコピーでは、ホスト装置２により正側ボリュームにデータが書き込まれると、このデータを直ちに副側ストレージ装置５に転送して副側ボリュームにコピーし、このコピー処理が完了した段階で正側ストレージ装置５からホスト装置２に当該データの書込み完了を報告する。また非同期型のリモートコピーでは、ホスト装置２により正側ボリュームにデータ書き込まれた段階で正側ストレージ装置４が当該データの書込み完了をホスト装置に報告し、その後適当な時期にこのデータが副側ストレージ装置５により正側ボリュームから読み出されて副側ボリュームに書き込まれる。本実施の形態による記憶システム１では、正側ストレージ装置４及び副側ストレージ装置５間において非同期型のリモートコピーが行われるものとする。
【００４１】
（２−２）各種管理テーブルの構成
図６は、副側ストレージ装置５の共有メモリ４５（図１）に保持される上述のジャーナル管理テーブル３６を示す。このジャーナル３６管理テーブルは、副側ストレージ装置５に転送されてきた各ジャーナルの作成時刻を管理するためのテーブルであり、シーケンス番号フィールド３６Ａ及びタイムスタンプフィールド３６Ｂから構成される。
【００４２】
シーケンス番号フィールド３６Ａには、副側ストレージ装置５が受信した各ジャーナルのシーケンス番号が順次格納される。このシーケンス番号は、正側ストレージ装置４の正側チャネルアダプタ２３がジャーナルを作成するごとに当該ジャーナルに順次付与する通し番号である。副側ストレージ装置５のチャネルアダプタ２３は、正側ストレージ装置４から送信されるジャーナルを受信するごとに、そのジャーナルに格納されている当該ジャーナルのシーケンス番号を読み出し、これをこのシーケンス番号フィールド３６Ａに格納する。
【００４３】
またタイムスタンプフィールド３６Ｂには、ジャーナルにタイムスタンプとして格納されている当該ジャーナルの作成時刻が読み出されて格納される。従って、例えば図６の例では、副側ストレージ装置が受信した「ＳＥＱ♯Ａ１」というシーケンス番号が付与されたジャーナルデータは「ＴＡｘ」という時刻に作成されたことが分かる。
【００４４】
一方、図７は、副側ストレージ装置５の共有メモリ２５に保持される第１のスナップショット管理テーブル３７を示す。この第１のスナップショット管理テーブル３７は、各スナップショットの作成時刻等を管理するためのテーブルであり、ボリューム番号フィールド３７Ａ、スナップショット番号フィールド３７Ｂ、スナップショット作成時刻フィールド３７Ｃ及びジャーナルシーケンス番号フィールド３７Ｄから構成される。
【００４５】
このうちボリューム番号フィールド３７Ａには、この第１のスナップショット管理テーブル３７に登録された副側ストレージ装置５内に存在する各副側ボリュームの識別番号（例えばＬＵＮ）が格納される。またスナップショット番号フィールド３７Ｂには、その副側ボリュームについて作成された各スナップショットの識別番号（以下、これをスナップショット番号と呼ぶ）が格納され、スナップショット作成時刻フィールド３７Ｃには、対応するスナップショットの作成時刻が格納される。さらにジャーナルシーケンス番号フィールド３７Ｄには、対応するスナップショットを作成した時点におけるジャーナルの最新のシーケンス番号が格納される。
【００４６】
従って、例えば図７の例では、「Ａ」という識別番号の副側ボリュームについては、それぞれ「Ａ１」，「Ａ２」，……，「ＡＮ」という識別番号が付与されたＮ個のスナップショットが作成されており、これらのスナップショットの作成時刻はそれぞれ「ＴＡ１」，「ＴＡ２」，……，「ＴＡＮ」であって、そのスナップショットを作成したときのジャーナルの最新のシーケンス番号がそれぞれ「ＳＥＱ♯Ａ１」，「ＳＥＱ♯Ａ２」，……，「ＳＥＱ♯ＡＮ」であったことが示されている。
【００４７】
他方、図８は、副側ストレージ装置５の共有メモリ４５に保持される第２のスナップショット管理テーブル３８を示す。この第２のスナップショット管理テーブル３８は、副側ストレージ装置５において順次作成される複数のスナップショットを一括管理するためのテーブルであり、副側ボリューム内の各ブロックにそれぞれ対応させてブロックアドレスフィールド３８Ａ及び複数のスナップショット管理フィールド３８Ｂが設けられている。
【００４８】
このうちブロックアドレスフィールド３８Ａには、それぞれ副側ボリューム内の対応するブロックアドレスが格納される。この場合のブロックアドレスとしては、例えばＬＢＡを用いることができる。
【００４９】
またスナップショット管理フィールド３８Ｂは、後述のように副側ストレージ装置５において保持可能なスナップショット数分だけ設けられており、ボリュームフィールド３８Ｃ及びブロックフィールド３８Ｄから構成されている。
【００５０】
そしてボリュームフィールド３８Ｃには、対応するスナップショットが作成された段階で「０」が格納され、その後正側ボリューム内の対応するブロックのデータが更新されて、更新前のデータが差分格納ボリュームに退避されると「１」が格納（「０」から「１」に更新）される。
【００５１】
またブロックフィールド３８Ｄには、対応するスナップショットが作成された段階で「０」が格納され、その後正側ボリューム内の対応するブロックのデータが更新されて、更新前のデータが差分ボリュームに退避されたときに、当該差分ボリュームにおける退避先のブロックのアドレスが格納される。
【００５２】
例えば図８の例では、スナップショット番号が「Ａ１」のスナップショットにおいて、副側ボリューム内のブロックアドレスが「ｔ」のブロックのデータは、当該スナップショットの作成後に更新され（「ボリューム」フィールド３８Ｃの値が「１」）、更新前のデータが差分ボリュームのブロックアドレスが「１０５１」のブロックに退避（「ブロック」フィールド３８Ｄの値が「１０５１」）されていることが示されている。
【００５３】
また、スナップショット番号が「Ａ１」のスナップショットにおいて、副側ボリューム内のブロックアドレスが「ｍ‐１」のブロックのデータは、当該スナップショットの作成後に更新されておらず（「ボリューム」フィールドの値が「０」）、当該スナップショットの作成時のデータが副側ボリュームのブロックアドレスが「ｍ‐１」であるブロックにそのまま残されていることが示されている。
【００５４】
従って、この図８の例では、第１のスナップショット管理テーブル３８のボリュームフィールド３８Ｃの値が「１」となっているブロック（ブロックアドレスが「ｔ」のブロックを含む）については、差分ボリューム上の対応するブロックアドレスのブロックからデータを参照し、当該スナップショット管理テーブル３８のボリュームフィールド３８Ｃの値が「０」となっているブロック（ブロックアドレスが「０」及び「ｍ‐１」のブロックを含む）については、副側ボリューム内の対応するブロックアドレスのブロックからデータを参照することで、スナップショット番号が「Ａ１」であるスナップショットを得ることができることが分かる。
【００５５】
（２−３）副側チャネルアダプタのＣＰＵの具体的な処理内容
（２−３−１）スナップショット作成処理
図９は、スナップショットの作成処理に関する副側チャネルアダプタ４３内のＣＰＵ（以下、これを副側チャネルアダプタＣＰＵと呼ぶ）３０（図２）の具体的な処理内容を示すフローチャートである。かかる副側チャネルアダプタＣＰＵ３０は、共有メモリ４５（図１）に格納されたスナップショット管理プログラム３４に基づき、この図９に示す処理手順に従って、ジャーナルボリュームへのジャーナルの書込み量に応じてスナップショットを作成する。
【００５６】
すなわち副側チャネルアダプタＣＰＵ３０は、正側ストレージ装置４の正側ボリュームからジャーナルを読み出すと、このスナップショット作成処理を開始し、まず、かかるジャーナルをジャーナルボリュームに格納する（ＳＰ１）。
【００５７】
続いて副側チャネルアダプタＣＰＵ３０は、ジャーナルボリュームにジャーナルが蓄積されていない初期状態から又は最後にスナップショットを作成してから、ジャーナルボリュームに書き込んだジャーナルのデータ量が基準値（例えばジャーナルボリュームの容量の１０〔％〕）内であるか否かを判断する（ＳＰ２）。
【００５８】
そして副側チャネルアダプタＣＰＵ３０は、この判断において否定結果を得ると、このスナップショット作成処理を終了する。これに対して副側チャネルアダプタＣＰＵ３０は、かかる判断において肯定結果を得ると、スナップショットを作成すると共に、このスナップショットの作成時刻及び現時点におけるジャーナルの最新のシーケンス番号をそれぞれスナップショット管理テーブル３６に登録し（ＳＰ３）、この後このスナップショット作成処理を終了する。
【００５９】
（２−３−２）スナップショット作成及び廃棄処理
ところで上述のようにジャーナルボリュームに対するジャーナルの書込み量に応じてスナップショットを順次作成する場合、差分ボリュームの容量が有限であるため、作成した各スナップショットをいつまでも維持することはできない。
【００６０】
そこで、本実施の形態による記憶システム１の場合、副側ストレージ装置５内に作成可能なスナップショット数（以下、これを最大スナップショット数と呼ぶ）を最大カウント値とするスナップショット作成位置カウンタ３９（図４）を当該副側ストレージ装置５の共有メモリ４５上に設けると共に、図１０に示すように、差分ボリュームをカウンタ３９の各カウント値とそれぞれ対応付けた複数の領域（図１０では３つの領域）ＡＲ０〜ＡＲ２に区分している。
【００６１】
そして記憶システム１では、副側ストレージ装置５において最新のスナップショットを作成するごとに、そのスナップショットに対してそのときのスナップショット作成位置カウンタ３９のカウント値に対応する領域ＡＲ０〜ＡＲ２を割り当てると共に、この後そのスナップショットについての差分データを、差分ボリュームにおける当該スナップショットに割り当てられた領域ＡＲ０〜ＡＲ２内に格納する。
【００６２】
また記憶システム１においては、スナップショット作成位置カウンタ３９のカウント値が最大スナップショット数に達したときには当該カウント値を「０」に戻し、この後、スナップショットに差分ボリューム内の領域ＡＲ０〜ＡＲ２を割り当てるごとにカウンタをカウントアップさせる。
【００６３】
このようにしてこの記憶システム１では、スナップショット数が最大スナップショット数に達した後には、新たなスナップショットを作成するごとに最古のスナップショットを廃棄するようになされ、これにより差分ボリューム内の各領域ＡＲ０〜ＡＲ２を循環的に使用することで、スナップショットの作成を継続し得るようになされている。
【００６４】
なお、スナップショットの場合と同様に、ジャーナルボリュームの容量も有限であるため、取得したジャーナルをいつまでも蓄積しておくことはできない。
【００６５】
そこでこの記憶システム１の場合、上述のようにして最古のスナップショットを破棄したときには、そのスナップショットから次のスナップショットの間に取得したジャーナルについては、当該ジャーナル上に新たなジャーナルを上書きするようにして廃棄する。この場合において、かかる最古のスナップショットを廃棄した時点で当該スナップショットを基点としてボリュームの復元が不可能となるので、かかる最古のスナップショットから次のスナップショットまでのジャーナルを破棄しても問題はない。
【００６６】
このようにしてこの記憶システム１では、スナップショットを廃棄したときには、これに伴って不要なジャーナルも廃棄することで、ジャーナルボリュームを有効利用し得るようになされている。
【００６７】
図１１は、このようなスナップショット廃棄処理に関する副側チャネルアダプタＣＰＵ３０の処理内容を示すフローチャートである。副側チャネルアダプタＣＰＵ３０は、図９について上述したスナップショット作成処理のステップＳＰ３に進むと、スナップショット管理プログラム３４（図４）に基づき、この図１１に示す処理手順に従って、必要に応じて過去に取得したスナップショットを廃棄する。
【００６８】
すなわち副側チャネルアダプタＣＰＵ３０は、かかるスナップショット作成処理のステップＳＰ３に進むと、このスナップショット廃棄処理を開始し、まず、現時点のプライマリボリュームＰＶＯＬのスナップショットを作成する（ＳＰ１０）。
【００６９】
続いて副側チャネルアダプタＣＰＵ３０は、カウンタ３９のカウント値を１つカウントアップさせ（ＳＰ１１）、その後スナップショット作成位置カウンタ３９のカウント値が最大スナップショット数に達したか否かを判断する（ＳＰ１２）。
【００７０】
副側チャネルアダプタＣＰＵ３０は、この判断において否定結果を得ると、このスナップショット廃棄及び作成処理を終了する一方、肯定結果を得ると、スナップショット作成位置カウンタ３９のカウント値を「０」に戻し（ＳＰ１３）、この後このスナップショット作成及び廃棄処理を終了する。
【００７１】
このようなスナップショット作成及び廃棄処理の結果、例えば最大スナップショット数が「３」であるものとして、１つ目のスナップショットが作成された初期時には、カウンタのカウント値が「０」であるため、図１２（Ａ）に示すように、スナップショット作成位置カウンタ３９のカウント値が「０」と対応付けられた差分ボリューム内の領域ＡＲ０が当該スナップショットに割り当てられると共に、スナップショット作成位置カウンタ３９のカウント値が「１」にカウントアップされる。
【００７２】
また、この後、スナップショット作成位置カウンタ３９のカウント値が「２」である状態で新たなスナップショットが作成されたときには、図１２（Ｂ）に示すように、スナップショット作成位置カウンタ３９のカウント値が最大スナップショット数である「３」と対応付けられた差分ボリューム内の領域ＡＲ２が当該新たなスナップショットに割り当てられると共に、スナップショット作成位置カウンタ３９のカウント値が「３」にカウントアップされ、この後カウンタのカウント値が「０」に戻される。
【００７３】
そして、この後、さらに新たなスナップショットが作成されたときには、図１２（Ｃ）に示すように、スナップショット作成位置カウンタ３９のカウント値が「０」と対応付けられた差分ボリューム内の領域ＡＲ０が当該新たなスナップショットに割り当てられると共に、スナップショット作成位置カウンタ３９のカウント値が「１」にカウントアップされる。そして、この後、同様の処理（図１２（Ａ）〜図１２（Ｃ））が繰り返されることとなる。
【００７４】
（２−３−３）ボリューム復元処理
他方、図１３は、図５について上述した本実施の形態によるデータ管理方法のうちのボリューム復元処理に関する副側チャネルアダプタＣＰＵ３０の処理内容を示すフローチャートである。副側チャネルアダプタＣＰＵ３０は、この図１３に示す処理手順に従ってホスト装置２により指定された時刻（以下、これを復元要求時刻と呼ぶ）における正側ボリュームを復元する。
【００７５】
すなわち副側チャネルアダプタＣＰＵ３０は、ホスト装置２から復元要求時刻を指定した正側ボリュームの復元要求が与えられると、この図１３に示す第１のボリューム復元処理を開始し、まず、第１のスナップショット管理テーブル３７上のそのとき対象としている正側ボリュームに関する情報が登録された情報域をデータの読出し対象の情報域に設定する（ＳＰ２０）。具体的には、例えば図７のように正側ボリュームとしてそれぞれボリューム番号が「Ａ」，「Ｂ」，……である複数の正側ボリュームが第１のスナップショット管理テーブル３７に登録されている状態において、ボリューム番号が「Ａ」の正側ボリュームのデータを復元する場合には、第１のスナップショット管理テーブル３７におけるボリューム番号が「Ａ」の正側ボリュームのスナップショット（スナップショット番号が「Ａ１」〜「Ａｎ」のスナップショット）に関連するフィールドをデータの読出し対象の情報域として設定することとなる。
【００７６】
続いて副側チャネルアダプタＣＰＵ３０は、第１のスナップショット管理テーブル３７上のデータの読出し対象に設定された情報域に含まれるスナップショットのうち、未だその作成時刻を第１のスナップショット管理テーブル３７から読み出していないスナップショットがあるか否かを判断する（ＳＰ２１）。
【００７７】
そして副側チャネルアダプタＣＰＵ３０は、この判断において肯定結果を得ると、第１のスナップショット管理テーブル３７上のデータの読出し対象に設定された情報域に含まれるスナップショットのうち、未だその作成時刻を読み出していないスナップショットを１つ選択し、その作成時刻を第１のスナップショット管理テーブル３７から読み出す（ＳＰ２２）。
【００７８】
この後、副側チャネルアダプタＣＰＵ３０は、そのとき読み出した作成時刻がホスト装置２により指定された復元要求時刻よりも過去であるか否かを判断する（ＳＰ２３）。そして副側チャネルアダプタＣＰＵ３０は、この判断において否定結果を得るとステップＳＰ２１に戻る。
【００７９】
これに対して副側チャネルアダプタＣＰＵ３０は、かかる判断において肯定結果を得ると、復元要求時刻に最も近く、かつ復元要求時刻よりも過去に作成されたと判断できるスナップショット（以下、これを直近スナップショットと呼ぶ）のスナップショット番号をローカルメモリ３１（図２）に記憶しているか否かを判断する（ＳＰ２４）。
【００８０】
副側チャネルアダプタＣＰＵ１０は、この判断において否定結果を得ると、このとき対象としているスナップショットのスナップショット番号を、直近スナップショットのスナップショット番号（Ａｘ）としてローカルメモリ３１上に設定する（ＳＰ２５）。
【００８１】
また副側チャネルアダプタＣＰＵ１０は、この後このスナップショットの作成時刻を第１のスナップショット管理テーブル３７から読み出し、これを直近スナップショットの作成時刻（以下、これを直近スナップショット作成時刻（ＴＡｘ）と呼ぶ）としてローカルメモリ３１上に設定する（ＳＰ２６）。そして、副側チャネルアダプタ４３は、この後ステップＳＰ２１に戻る。
【００８２】
これに対して副側チャネルアダプタＣＰＵ１０は、ステップＳＰ２４の判断において肯定結果を得ると、ステップＳＰ２２において第１のスナップショット管理テーブル３７から読み出したスナップショット作成時刻がそのときローカルメモリ３１に保持されている直近スナップショット作成時刻よりも後の時刻であるか否かを判断する（ＳＰ２７）。
【００８３】
副側チャネルアダプタＣＰＵ１０は、この判断において否定結果を得るとステップＳＰ２１に戻り、これに対して肯定結果を得ると、ローカルメモリ３１に保持されている直近スナップショット作成時刻（ＴＡｘ）をステップＳＰ２２において第１のスナップショット管理テーブル３７から読み出したスナップショット作成時刻に更新する（ＳＰ２８）。
【００８４】
また副側チャネルアダプタＣＰＵ１０は、この後ステップＳＰ２１に戻り、この後対象とするスナップショットを順次代えながら、同様の処理を繰り返す（ＳＰ２１〜ＳＰ２８）。そして、このように同様の処理を繰り返すことにより、第１のスナップショット管理テーブル３７に登録されたスナップショットの中から復元要求時刻に最も近く、かつ復元要求時刻よりも過去に作成された真の直近スナップショットのスナップショット番号及び当該スナップショットの作成時刻（直近スナップショット作成時刻）をそれぞれローカルメモリ３１に保持することが可能となる。
【００８５】
一方、副側チャネルアダプタＣＰＵ１０は、やがて第１のスナップショット管理テーブル３７に登録されたすべてのスナップショットについて同様の処理（ＳＰ２１〜ＳＰ２８）を実行し終えることによりステップＳＰ２１の判断において否定結果を得ると、直近スナップショットのスナップショット番号が既にローカルメモリ３１に格納されているか否かを判断する（ＳＰ２９）。
【００８６】
この判断において否定結果を得ることは、例えば未だスナップショットが作成されていない段階でホスト装置２からボリューム復元要求が与えられたなど、直近スナップショットを検出できなかったことを意味する。かくして、このとき副側チャネルアダプタＣＰＵ１０は、これに応じたコマンドをホスト装置２に送信することにより、復元要求時刻の復元は不可能である旨のエラーメッセージを当該ホスト装置２のディスプレイに表示等させ（ＳＰ３０）、この後この第１のボリューム復元処理を終了する。
【００８７】
これに対して、かかるステップＳＰ２９の判断において肯定結果を得ることは、直近スナップショットを検出できたことを意味する。かくして、このとき副側チャネルアダプタＣＰＵ１０は、この直近スナップショットを利用して復元要求時刻の正側ボリュームを復元し（ＳＰ３１）この後この第１のボリューム復元処理を終了する。なお、この復元した復元要求時刻の正側ボリュームのデータは、この後正側ストレージ装置４を介してホスト装置２に提示等されることとなる。
【００８８】
一方、図１４は、かかる第１のボリューム復元処理（図１３）のステップＳＰ３１における具体的なボリューム復元処理の処理内容を示すフローチャートである。副側チャネルアダプタＣＰＵ１０は、かかるボリューム復元処理によりホスト装置２により指定された復元要求時刻に最も近く、かつ復元要求時刻よりも過去に作成された直近スナップショットのスナップショット番号を検出すると、ボリューム復元プログラム３５に基づき、この直近スナップショットを利用して、指定要求時刻の正側ボリュームを復元する。
【００８９】
すなわち副側チャネルアダプタＣＰＵ１０は、かかる第１のボリューム復元処理（図１３）のステップＳＰ３１に進むと、この図１４に示す第２のボリューム復元処理を開始し、まず、第１のスナップショット管理テーブル３７上において、かかるスナップショット番号と対応付けられたジャーナルーケンス番号を検出する（ＳＰ４０）。
【００９０】
続いて副側チャネルアダプタＣＰＵ１０は、図１５に示すように、そのとき復元対象としている正側ボリュームのボリューム番号と、第１のボリューム復元処理（図１３）のステップＳＰ２０〜ステップＳＰ２９において検出した真の直近スナップショットのスナップショット番号と、ステップＳＰ４０において検出したジャーナルシーケンス番号と、ホスト装置２により指定された復元要求時刻とを、予めローカルメモリ３１上に設けられた復元ボリューム管理テーブル３１Ａに格納する（ＳＰ４１）。
【００９１】
次いで副側チャネルアダプタＣＰＵ１０は、ジャーナル管理テーブル３６（図６）上のステップＳＰ４１において復元ボリューム管理テーブル３１Ａに登録したジャーナルシーケンス番号の位置にアクセスし（ＳＰ４２）、この後ジャーナル管理テーブル３６から当該ジャーナルシーケンス番号が付与されたジャーナルのタイムスタンプを読み出す（ＳＰ４３）。
【００９２】
続いて副側チャネルアダプタＣＰＵ１０は、このとき取得したタイムスタンプが表す、そのとき対象としているジャーナル（以下、これを対象ジャーナルと呼ぶ）の作成時刻が、ホスト装置２により指定された復元要求時刻よりも過去であるか否かを判断する（ＳＰ４４）。
【００９３】
副側チャネルアダプタＣＰＵ１０は、この判断において肯定結果を得ると、対象ジャーナルに含まれる、ホスト装置２により正側ボリュームに書き込まれたデータを直近スナップショットに上書きし（ＳＰ４５）、さらに対象ジャーナルを次のジャーナルシーケンス番号のジャーナルに切り替えた後に（ＳＰ４６）、ステップＳＰ４３に戻る。
【００９４】
副側チャネルアダプタＣＰＵ１０は、この後、対象ジャーナを次のジャーナルシーケンス番号のジャーナルに順次代えながら同様の処理を繰り返す（ＳＰ４３〜ＳＰ４６）。これによりホスト装置２により指定された復元要求時刻よりも前に作成されたジャーナルに含まれるホスト装置２により正側ボリュームに書き込まれたデータが順次直近スナップショットに上書きされることとなる。
【００９５】
そして副側チャネルアダプタＣＰＵ１０は、やがてホスト装置２により指定された復元要求時刻よりも前に作成されたジャーナルに含まれるかかるデータをすべて直近スナップショットに上書きし終えることにより、ステップＳＰ４４の判断において否定結果を得ると、この第２のボリューム復元処理を終了して第１のボリューム復元処理に戻る。
【００９６】
（２−４）記憶システムにおける復元可能時間提示機能
一方、図１１について上述したように、副側ストレージ装置５において、新たなスナップショットを作成するごとに最古のスナップショットを順次廃棄する場合、ユーザが正側ボリュームごとの復元可能な時間的範囲を認識することが困難になる。
【００９７】
そこで本実施の形態による記憶システム１では、ユーザから要求に応じて、その時点において復元可能な正側ボリュームごとの時間的範囲を当該ユーザに提示する復元可能時間提示機能が搭載されている。
【００９８】
具体的に、この記憶システム１の場合、ホスト装置２のＣＰＵ１０（図１）は、図１６に示すように、ユーザによりボリュームごとの復元可能時間の表示指令が入力されると、ローカルメモリ１１（図１）に格納されたアプリケーションソフトウェアに基づいて、正側ストレージ装置４を介して副側ストレージ装置に復元可能時間提示要求を送信する（ＳＰ５０）。
【００９９】
この復元可能時間提示要求を受信した副側ストレージ装置５内の副側チャネルアダプタ４３の副側チャネルアダプタＣＰＵ３０は、第１のスナップショット管理テーブル３７から正側ボリュームごとのすべてのスナップショットの作成時刻を読み出し（ＳＰ５１）、これらを全スナップショット作成時刻情報として正側ストレージ装置４を介してホスト装置２に通知する（ＳＰ５２）。
【０１００】
そして、この全スナップショット作成時刻情報を受信したホスト装置２のＣＰＵ１０は、この全スナップショット作成時刻情報に基づき得られた正側ボリュームごとのすべてのスナップショットの作成時刻を、例えば図１７に示すようなフォーマットのリスト（以下、これをスナップショット作成時刻リストと呼ぶ）５０として図示しないモニタディスプレイ等の情報出力装置に表示する（ＳＰ５３）。
【０１０１】
この場合において、例えば図１７の例では、ボリューム番号が「Ａ」の正側ボリュームに関しては、現在残存する最古のスナップショットの作成時刻が「10:00:00」であるため、「10:00:00」から現時点（又は少なくとも最新のスナップショットの作成時刻である「23:50:42」）までのジャーナルが副側ストレージ装置５のジャーナルボリュームに残されており、従って、「10:00:00」から現時点（又は「23:50:42」）までの時間的範囲内において、当該正側ボリュームを復元可能であることが分かる。
【０１０２】
そしてユーザは、ホスト装置２を操作することにより、かかるスナップショット作成時刻リスト５０に掲載された所望する正側ボリュームの各スナップショットの作成時刻の中から所望のスナップショットの作成時刻を上述の復元要求時刻として選択し、又は正側ボリュームごとに、スナップショット作成時刻に搭載されたスナップショット作成時刻のうちの最古のスナップショット作成時刻から現在時刻（又は最新のスナップショットの作成時刻）までの間の範囲内において所望の時刻を復元要求時刻として指定することができる。このときホスト装置２は、選択又は指定された時刻を復元要求時刻としてボリューム復元要求を生成し、このボリューム復元要求を復元正側ストレージ装置４を介して副側ストレージ装置５に通知する（ＳＰ５４）。
【０１０３】
かくして副側ストレージ装置５は、このボリューム復元要求を受信すると、図１３及び図１４について上述した第１及び第２のボリューム復元処理を実行する（ＳＰ５５）。
【０１０４】
このようにしてこの記憶システム１においては、このホスト装置２の情報出力装置に表示された全スナップショット作成時刻情報に基づいて、正側ボリュームごとの復元可能な時間的範囲をユーザが認識し、認識した時間的範囲内において時刻を指定して正側ボリュームの復元を指示することができるようになされている。
【０１０５】
（３）本実施の形態の効果
以上のように本実施の形態の記憶システム１では、正側ストレージ装置４において、正側ボリュームの更新履歴情報であるジャーナルを作成し、作成したジャーナルを副側ストレージ装置５に送信する。また記憶システム１では、副側ストレージ装置５において、正側ストレージ装置４から送信されるジャーナルに含まれる正側ボリュームに書き込まれたデータを副側ボリュームにコピーすると共に、副側ジャーナルボリュームへのジャーナルの書込み量に応じて副側ボリュームのスナップショットを作成し、この後ホスト装置２からの要求に応じて、保持したジャーナル及びスナップショットを利用して、指定された時刻の正側ボリュームを復元する。
【０１０６】
従って、この記憶システム１では、副側ストレージ装置５においてスナップショットを作成する時間的な間隔が秒又は分単位となるように、副側ジャーナルボリュームに対するジャーナルの書込み量の基準値を設定することによって、正側ボリュームの復元可能な時間単位を短くすることができ、この結果として正側ボリュームの復元処理に要する時間を短縮することができる。またこの記憶システム１では、正側ボリュームのボリューム復元処理を副側ストレージ装置５において行うため、当該ボリューム復元処理が正側ストレージ装置４におけるデータ入出力処理に悪影響を及ぼすのを有効に防止することができる。かくするにつき、この記憶システム１によれば、より短い時間単位での復元時刻の指定を可能とすると共に、より短時間でのデータ復元処理を行い得るデータ管理を実現できる。
【０１０７】
（４）他の実施の形態
なお上述の実施の形態においては、本発明を図１のように構成された記憶システムに適用する場合について述べたが、本発明はこれに限らず、この他種々の構成の記憶システムに広く適用することができる。
【０１０８】
また上述の実施の形態においては、副側ストレージ装置５において、副側ジャーナルボリュームに対するジャーナルの書込み量に応じて不定期に副側ボリュームのスナップショットを作成するようにした場合について述べたが、本発明はこれに限らず、例えば一定時間間隔で定期的に副側ボリュームのスナップショットを作成するようにしても良い。
【０１０９】
さらに上述の実施の形態においては、副側ストレージ装置５から正側ストレージ装置４を介してホスト装置２に与えられる全スナップショット作成時刻情報に基づいて図１７に示すようなフォーマットのスナップショット作成時刻リスト５０を表示するようにした場合について述べたが、本発明はこれに限らず、各スナップショットの作成時刻の表示形態としては、この他種々の表示形態を広く適用することができる。
【０１１０】
さらに上述の実施の形態においては、正側ボリュームの更新履歴情報であるジャーナルを作成し、作成したジャーナルを副側ストレージ装置に送信するジャーナル作成送信部としての機能を正側チャネルアダプタ２３に搭載するようにした場合について述べたが、本発明はこれに限らず、かかる処理を行う処理部を正側チャネルアダプタ２３と別に設けるようにしても良い。
【０１１１】
同様に、上述の実施の形態においては、副側ストレージ装置５において、正側ストレージ装置４から送信されるジャーナルに含まれる正側ボリュームに書き込まれたデータを副側ボリュームにコピーするデータコピー部と、不定期に副側ボリュームのスナップショットを作成するスナップショット作成部と、ホスト装置２からの要求に応じて、副側ジャーナルボリュームに保持しているジャーナルと、差分ボリューム及び副側ボリューム等に保持しているスナップショットを利用して、指定された時刻の正側ボリュームを復元するボリューム復元部と、現在保持しているスナップショットの作成時刻を管理するスナップショット管理部と、各スナップショットの作成時刻をホスト装置２に通知するスナップショット作成時刻通知部との機能をすべて副側チャネルアダプタ４３に搭載するようにした場合について述べたが、本発明はこれに限らず、かかる処理を行う処理部を副側チャネルアダプタ４３と別に設けるようにしても良い。
【０１１２】
さらに上述の実施の形態においては、副側チャネルアダプタ４３が作成した各スナップショットを保持するスナップショット保持部としての副側ボリューム、差分ボリューム及び共有メモリ４５（第２のスナップショット管理テーブル３８）と、正側ストレージ装置４から送信される各ジャーナルを保持するジャーナル保持部としての副側ジャーナルボリュームとを同じ１つの副側ストレージ装置５内に設けるようにした場合について述べたが、本発明はこれに限らず、副側ジャーナルボリュームを副側ストレージ装置５とは別に設置された外部ストレージ装置内に設け、ボリューム復元処理時に副側ストレージ装置５が必要なジャーナルを当該外部ストレージ装置から読み出すようにしても良い。
【０１１３】
さらに上述の実施の形態においては、ホスト装置２からのボリューム復元要求に応じて副側ストレージ装置５が指定された時刻の正側ボリュームを復元するようにした場合について述べたが、本発明はこれに限らず、ホスト装置２以外の外部機器（例えばネットワーク３に接続されたシステム管理者側の管理装置など）からのボリューム復元要求に応じて副側ストレージ装置５が指定された時刻の正側ボリュームを復元するように記憶システム１を構築するようにしても良い。
【図面の簡単な説明】
【０１１４】
【図１】本実施の形態による記憶システムの全体構成を示すブロック図である。
【図２】チャネルアダプタの簡略構成を示すブロック図である。
【図３】正側ストレージ装置の共有メモリの説明に供するブロック図である。
【図４】副側ストレージ装置の共有メモリの説明に供するブロック図である。
【図５】本実施の形態の記憶システムにおけるデータ管理方法の説明に供する概念図である。
【図６】ジャーナル管理テーブルを示す図表である。
【図７】第１のスナップショット管理テーブルを示す図表である。
【図８】第２のスナップショット管理テーブルを示す図表である。
【図９】第１のスナップショット作成処理の説明に供するフローチャートである。
【図１０】第１のスナップショット作成処理の説明に供する概念図である。
【図１１】第２のスナップショット作成処理の説明に供するフローチャートである。
【図１２】第２のスナップショット作成処理の説明に供する概念図である。
【図１３】第１のボリューム復元処理の説明に供するフローチャートである。
【図１４】第２のボリューム復元処理の説明に供するフローチャートである。
【図１５】復元ボリューム管理テーブルの説明に供する概念図である。
【図１６】復元可能時間提示機能の説明に供するタイムチャートである。
【図１７】ホスト装置による復元可能時間の表示例を示す略線図である。
【符号の説明】
【０１１５】
１……記憶システム、２……ホスト装置、４……正側ストレージ装置、５……副側ストレージ装置、１０，３０……ＣＰＵ、１１，３１……ローカルメモリ、２０……ディスクデバイス、２２……コントローラ、２３，４３……チャネルアダプタ、２５，４５……共有メモリ、３１Ａ……復元ボリューム管理プログラム、３２，３３……リモートコピー管理プログラム、３４……スナップショット管理プログラム、３５……ボリューム復元プログラム、３６……ジャーナル管理プログラム、３７……第１のスナップショット管理プログラム、３８……第２のスナップショット管理プログラム、３９……スナップショット作成位置カウンタ、ＰＶＯＬ……正側ボリューム、ＳＶＯＬ……副側ボリューム、ＪＮＬＶＯＬ（Ｐ），ＪＮＬＶＯＬ（Ｓ）……ジャーナルボリューム、ＤＶＯＬ……差分ボリューム。
【図１】
2007280323.tif 000003
【図２】
2007280323.tif 000004
【図３】
2007280323.tif 000005
【図４】
2007280323.tif 000006
【図５】
2007280323.tif 000007
【図６】
2007280323.tif 000008
【図７】
2007280323.tif 000009
【図８】
2007280323.tif 000010
【図９】
2007280323.tif 000011
【図１０】
2007280323.tif 000012
【図１１】
2007280323.tif 000013
【図１２】
2007280323.tif 000014
【図１３】
2007280323.tif 000015
【図１４】
2007280323.tif 000016
【図１５】
2007280323.tif 000017
【図１６】
2007280323.tif 000018
【図１７】
2007280323.tif 000019