(57)【要約】【課題】ホストからのライトコマンドの性能劣化を回避できるストレージシステムおよびその制御方法を提供する。【解決手段】ストレージシステムにおいて、スナップショットから実データコピーへの変換要求を受領した場合、ペアテーブルのオリジナルボリュームとスナップショットボリュームとのペアを解除せずに、まず、コピー差分テーブルの先頭ビットから走査し、未コピーデータをオリジナルボリュームからプールボリュームへコピーし、コピーが完了したら、コピー差分テーブルの該当するビットをコピー済にし、データ一致差分テーブルの該当するビットを一致にする。そして、コピー差分テーブルの全てのビットについて、上記の処理が完了したら、ペアテーブルのバックアップタイプを実データコピーに変更する。【選択図】図１３
2008269374.tif 000002
【特許請求の範囲】
【請求項１】
上位装置からリード動作またはライト動作の要求を受け、前記リード動作またはライト動作を制御するチャネル制御部と、前記リード動作またはライト動作によるデータを格納する記憶デバイスと、前記記憶デバイスに対するデータのリード動作またはライト動作を制御する記憶デバイス制御部と、前記チャネル制御部、前記記憶デバイス制御部によって通信される制御情報が格納される共用メモリと、前記チャネル制御部と前記記憶デバイス制御部との間で通信されるデータが一時的に保存されるキャッシュメモリとを有するストレージシステムであって、
前記記憶デバイスには、スナップショット作成時に元データが格納されている論理ボリュームであるオリジナルボリュームと、前記スナップショット作成時にスナップショットとなる仮想論理ボリュームであるスナップショットボリュームと、前記スナップショット作成後に前記スナップショットボリュームの実データを格納するための論理ボリュームであるプールボリュームとが設定され、
前記共用メモリは、前記オリジナルボリュームと前記スナップショットボリュームとのペア対応を管理するペアテーブルと、前記オリジナルボリュームから前記プールボリュームへデータをコピーしたか否かを示すコピー差分テーブルと、前記オリジナルボリュームと前記プールボリュームとのデータが一致しているか否かを示すデータ一致差分テーブルとを有し、
スナップショットから実データコピーへの変換要求を外部から受領した場合、
前記チャネル制御部は、
前記ペアテーブルの前記オリジナルボリュームと前記スナップショットボリュームとのペアを解除せずに、
前記コピー差分テーブルの先頭ビットから走査し、未コピーデータを前記オリジナルボリュームから前記プールボリュームへコピーし、コピーが完了したら、前記コピー差分テーブルの該当するビットをコピー済にし、前記データ一致差分テーブルの該当するビットを一致にし、
前記コピー差分テーブルの全てのビットについて、前記コピー差分テーブルの該当するビットをコピー済にし、前記データ一致差分テーブルの該当するビットを一致にする処理が完了したら、前記ペアテーブルのバックアップタイプを実データコピーに変更する、ことを特徴とするストレージシステム。
【請求項２】
請求項１記載のストレージシステムにおいて、
前記共用メモリは、プール内エントリ番号とそのエントリに対応する実データのアドレスが格納されるプールボリュームテーブルをさらに有し、
前記実データコピーから前記スナップショットへの変換要求を外部から受領した場合、
前記チャネル制御部は、
前記ペアテーブルの前記オリジナルボリュームと前記スナップショットボリュームとのペアを解除せずに、
前記ペアテーブルのバックアップタイプをスナップショットに変更し、
前記データ一致差分テーブルの先頭ビットから走査し、データが一致しているロケーションのプール内エントリ番号を無効値にし、
前記プールボリュームテーブルのうち、前記データが一致しているロケーションに該当するプール内エントリ番号のデータアドレスを無効値にし、
前記コピー差分テーブルの、前記データが一致しているロケーションに該当するビットを未コピーにする、ことを特徴とするストレージシステム。
【請求項３】
請求項２記載のストレージシステムにおいて、
前記共用メモリは、前記スナップショットボリュームの実データ位置をロケーション単位に管理し、前記スナップショットボリュームの実データが前記プールボリュームにある場合はプール内のエントリ番号が格納され、実データが前記プールボリュームにない場合は無効値が格納されるデータ部と、前記データ部の使用／未使用をビットマップ管理するヘッダ部からなるスナップショットボリュームテーブルをさらに有し、
前記スナップショットの解除処理を行う場合、
前記チャネル制御部は、
前記スナップショットボリュームテーブルのうち、無効値でないプール内エントリ番号に対応する前記プールボリュームテーブルのデータアドレスを無効値にし、
前記スナップショットボリュームテーブルのヘッダ部の該当する使用ビットを未使用にし、プール内エントリ番号を全て無効値にし、
前記ペアテーブルのオリジナルボリューム番号、スナップショットボリューム番号をゼロクリアし、スナップショットボリュームテーブルアドレスとバックアップタイプを無効値にする、ことを特徴とするストレージシステム。
【請求項４】
請求項１記載のストレージシステムにおいて、
前記共用メモリは、プール内エントリ番号とそのエントリに対応する実データのアドレスが格納されるプールボリュームテーブルと、前記スナップショットボリュームの実データ位置をロケーション単位に管理し、前記スナップショットボリュームの実データが前記プールボリュームにある場合はプール内のエントリ番号が格納され、実データが前記プールボリュームにない場合は無効値が格納されるデータ部と、前記データ部の使用／未使用をビットマップ管理するヘッダ部からなるスナップショットボリュームテーブルとをさらに有し、
前記スナップショットの作成要求を外部から受領した場合、
前記チャネル制御部は、
前記ペアテーブルのバックアップタイプが無効であるエントリを検索し、オリジナルボリューム番号、スナップショットボリューム番号を登録し、
前記スナップショットボリュームテーブルのヘッダ部を検索し、未使用のデータ部のアドレスをスナップショットボリュームテーブルアドレスに設定し、
前記ペアテーブルのバックアップタイプをスナップショットにし、
前記スナップショットボリュームテーブルのプール内エントリ番号を無効値にし、
前記コピー差分テーブルの全ビットを未コピーにし、
前記データ一致差分テーブルの全ビットを不一致にする、ことを特徴とするストレージシステム。
【請求項５】
請求項４記載のストレージシステムにおいて、
前記スナップショットの作成後に前記オリジナルボリュームへの上位装置からのリード動作を行う場合、
前記チャネル制御部は、
前記オリジナルボリュームのデータをリードし、前記コピー差分テーブルと前記データ一致差分テーブルを更新せず、
前記スナップショットの作成後に前記オリジナルボリュームへの上位装置からのライト動作を行う場合、
前記チャネル制御部は、
前記コピー差分テーブルを参照し、前記オリジナルボリュームから前記プールボリュームへデータをコピーしていない場合は、コピーした後に、前記オリジナルボリュームへライトデータを書き込み、前記コピー差分テーブルを未コピーからコピー済へ更新し、前記データ一致差分テーブルを不一致のままとし、既にコピーした場合は、前記オリジナルボリュームへライトデータをライトし、前記コピー差分テーブルをコピー済のままとし、前記データ一致差分テーブルを一致から不一致へ更新する、ことを特徴とするストレージシステム。
【請求項６】
請求項５記載のストレージシステムにおいて、
前記上位装置からのリードアクセス、ライトアクセスにより発生する前記オリジナルボリュームから前記プールボリュームへのデータコピー処理を行う場合、
前記チャネル制御部は、
前記プールボリュームテーブルのエントリのうち、データアドレスが無効値であるプール内エントリ番号を検索し、
前記データアドレスが無効値であるプール内エントリ番号に対応するデータアドレスを実際にデータをコピーするデータアドレスに更新し、
前記スナップショットボリュームテーブルのプール内エントリ番号を、前記データアドレスが無効値であるプール内エントリ番号に更新し、
前記データを前記オリジナルボリュームから前記プールボリュームにコピーする、ことを特徴とするストレージシステム。
【請求項７】
請求項４記載のストレージシステムにおいて、
前記スナップショットの作成後に前記スナップショットボリュームへの上位装置からのリード動作を行う場合、
前記チャネル制御部は、
前記コピー差分テーブルを参照し、前記オリジナルボリュームから前記プールボリュームへデータをコピーしていない場合は、コピーした後に、前記プールボリュームのデータをリードし、前記コピー差分テーブルを未コピーからコピー済へ更新し、前記データ一致差分テーブルを不一致から一致に更新し、既にコピーした場合は、前記プールボリュームのデータをリードし、前記コピー差分テーブルをコピー済のままとし、前記データ一致差分テーブルを更新せず、
前記スナップショットの作成後に前記スナップショットボリュームへの上位装置からのライト動作を行う場合、
前記チャネル制御部は、
前記コピー差分テーブルを参照し、前記オリジナルボリュームから前記プールボリュームへデータをコピーしていない場合は、コピーした後に、前記プールボリュームへライトデータを書き込み、前記コピー差分テーブルを未コピーからコピー済へ更新し、前記データ一致差分テーブルを不一致のままとし、既にコピーした場合は、前記プールボリュームへライトデータをライトし、前記コピー差分テーブルをコピー済のままとし、前記データ一致差分テーブルを一致から不一致へ更新する、ことを特徴とするストレージシステム。
【請求項８】
請求項７記載のストレージシステムにおいて、
前記上位装置からのリードアクセス、ライトアクセスにより発生する前記オリジナルボリュームから前記プールボリュームへのデータコピー処理を行う場合、
前記チャネル制御部は、
前記プールボリュームテーブルのエントリのうち、データアドレスが無効値であるプール内エントリ番号を検索し、
前記データアドレスが無効値であるプール内エントリ番号に対応するデータアドレスを実際にデータをコピーするデータアドレスに更新し、
前記スナップショットボリュームテーブルのプール内エントリ番号を、前記データアドレスが無効値であるプール内エントリ番号に更新し、
前記データを前記オリジナルボリュームから前記プールボリュームにコピーする、ことを特徴とするストレージシステム。
【請求項９】
請求項１記載のストレージシステムにおいて、
前記ペアテーブルは、複数のペアをコンシステンシーグループとして管理するものであり、
前記コンシステンシーグループのペアに対して、前記スナップショットから前記実データコピーへの変換要求を外部から受領した場合、
前記チャネル制御部は、
前記コンシステンシーグループに属する全ペアについて、前記スナップショットから前記実データコピーへの変換処理を実行する、ことを特徴とするストレージシステム。
【請求項１０】
請求項９記載のストレージシステムにおいて、
前記コンシステンシーグループのペアに対して、前記実データコピーから前記スナップショットへの変換要求を外部から受領した場合、
前記チャネル制御部は、
前記コンシステンシーグループに属する全ペアについて、前記実データコピーから前記スナップショットへの変換処理を実行する、ことを特徴とするストレージシステム。
【請求項１１】
上位装置からリード動作またはライト動作の要求を受け、前記リード動作またはライト動作を制御するチャネル制御部と、前記リード動作またはライト動作によるデータを格納する記憶デバイスと、前記記憶デバイスに対するデータのリード動作またはライト動作を制御する記憶デバイス制御部と、前記チャネル制御部、前記記憶デバイス制御部によって通信される制御情報が格納される共用メモリと、前記チャネル制御部と前記記憶デバイス制御部との間で通信されるデータが一時的に保存されるキャッシュメモリとを有するストレージシステムの制御方法であって、
前記記憶デバイスには、スナップショット作成時に元データが格納されている論理ボリュームであるオリジナルボリュームと、前記スナップショット作成時にスナップショットとなる仮想論理ボリュームであるスナップショットボリュームと、前記スナップショット作成後に前記スナップショットボリュームの実データを格納するための論理ボリュームであるプールボリュームとが設定され、
前記共用メモリは、前記オリジナルボリュームと前記スナップショットボリュームとのペア対応を管理するペアテーブルと、前記オリジナルボリュームから前記プールボリュームへデータをコピーしたか否かを示すコピー差分テーブルと、前記オリジナルボリュームと前記プールボリュームとのデータが一致しているか否かを示すデータ一致差分テーブルとを有し、
スナップショットから実データコピーへの変換要求を外部から受領した場合、
前記チャネル制御部は、
前記ペアテーブルの前記オリジナルボリュームと前記スナップショットボリュームとのペアを解除せずに、
前記コピー差分テーブルの先頭ビットから走査し、未コピーデータを前記オリジナルボリュームから前記プールボリュームへコピーし、コピーが完了したら、前記コピー差分テーブルの該当するビットをコピー済にし、前記データ一致差分テーブルの該当するビットを一致にし、
前記コピー差分テーブルの全てのビットについて、前記コピー差分テーブルの該当するビットをコピー済にし、前記データ一致差分テーブルの該当するビットを一致にする処理が完了したら、前記ペアテーブルのバックアップタイプを実データコピーに変更する、ことを特徴とするストレージシステムの制御方法。
【請求項１２】
請求項１１記載のストレージシステムの制御方法において、
前記共用メモリは、プール内エントリ番号とそのエントリに対応する実データのアドレスが格納されるプールボリュームテーブルをさらに有し、
前記実データコピーから前記スナップショットへの変換要求を外部から受領した場合、
前記チャネル制御部は、
前記ペアテーブルの前記オリジナルボリュームと前記スナップショットボリュームとのペアを解除せずに、
前記ペアテーブルのバックアップタイプをスナップショットに変更し、
前記データ一致差分テーブルの先頭ビットから走査し、データが一致しているロケーションのプール内エントリ番号を無効値にし、
前記プールボリュームテーブルのうち、前記データが一致しているロケーションに該当するプール内エントリ番号のデータアドレスを無効値にし、
前記コピー差分テーブルの、前記データが一致しているロケーションに該当するビットを未コピーにする、ことを特徴とするストレージシステムの制御方法。
【請求項１３】
請求項１２記載のストレージシステムの制御方法において、
前記共用メモリは、前記スナップショットボリュームの実データ位置をロケーション単位に管理し、前記スナップショットボリュームの実データが前記プールボリュームにある場合はプール内のエントリ番号が格納され、実データが前記プールボリュームにない場合は無効値が格納されるデータ部と、前記データ部の使用／未使用をビットマップ管理するヘッダ部からなるスナップショットボリュームテーブルをさらに有し、
前記スナップショットの解除処理を行う場合、
前記チャネル制御部は、
前記スナップショットボリュームテーブルのうち、無効値でないプール内エントリ番号に対応する前記プールボリュームテーブルのデータアドレスを無効値にし、
前記スナップショットボリュームテーブルのヘッダ部の該当する使用ビットを未使用にし、プール内エントリ番号を全て無効値にし、
前記ペアテーブルのオリジナルボリューム番号、スナップショットボリューム番号をゼロクリアし、スナップショットボリュームテーブルアドレスとバックアップタイプを無効値にする、ことを特徴とするストレージシステムの制御方法。
【請求項１４】
請求項１１記載のストレージシステムの制御方法において、
前記共用メモリは、プール内エントリ番号とそのエントリに対応する実データのアドレスが格納されるプールボリュームテーブルと、前記スナップショットボリュームの実データ位置をロケーション単位に管理し、前記スナップショットボリュームの実データが前記プールボリュームにある場合はプール内のエントリ番号が格納され、実データが前記プールボリュームにない場合は無効値が格納されるデータ部と、前記データ部の使用／未使用をビットマップ管理するヘッダ部からなるスナップショットボリュームテーブルとをさらに有し、
前記スナップショットの作成要求を外部から受領した場合、
前記チャネル制御部は、
前記ペアテーブルのバックアップタイプが無効であるエントリを検索し、オリジナルボリューム番号、スナップショットボリューム番号を登録し、
前記スナップショットボリュームテーブルのヘッダ部を検索し、未使用のデータ部のアドレスをスナップショットボリュームテーブルアドレスに設定し、
前記ペアテーブルのバックアップタイプをスナップショットにし、
前記スナップショットボリュームテーブルのプール内エントリ番号を無効値にし、
前記コピー差分テーブルの全ビットを未コピーにし、
前記データ一致差分テーブルの全ビットを不一致にする、ことを特徴とするストレージシステムの制御方法。
【請求項１５】
請求項１４記載のストレージシステムの制御方法において、
前記スナップショットの作成後に前記オリジナルボリュームへの上位装置からのリード動作を行う場合、
前記チャネル制御部は、
前記オリジナルボリュームのデータをリードし、前記コピー差分テーブルと前記データ一致差分テーブルを更新せず、
前記スナップショットの作成後に前記オリジナルボリュームへの上位装置からのライト動作を行う場合、
前記チャネル制御部は、
前記コピー差分テーブルを参照し、前記オリジナルボリュームから前記プールボリュームへデータをコピーしていない場合は、コピーした後に、前記オリジナルボリュームへライトデータを書き込み、前記コピー差分テーブルを未コピーからコピー済へ更新し、前記データ一致差分テーブルを不一致のままとし、既にコピーした場合は、前記オリジナルボリュームへライトデータをライトし、前記コピー差分テーブルをコピー済のままとし、前記データ一致差分テーブルを一致から不一致へ更新する、ことを特徴とするストレージシステムの制御方法。
【請求項１６】
請求項１５記載のストレージシステムの制御方法において、
前記上位装置からのリードアクセス、ライトアクセスにより発生する前記オリジナルボリュームから前記プールボリュームへのデータコピー処理を行う場合、
前記チャネル制御部は、
前記プールボリュームテーブルのエントリのうち、データアドレスが無効値であるプール内エントリ番号を検索し、
前記データアドレスが無効値であるプール内エントリ番号に対応するデータアドレスを実際にデータをコピーするデータアドレスに更新し、
前記スナップショットボリュームテーブルのプール内エントリ番号を、前記データアドレスが無効値であるプール内エントリ番号に更新し、
前記データを前記オリジナルボリュームから前記プールボリュームにコピーする、ことを特徴とするストレージシステムの制御方法。
【請求項１７】
請求項１４記載のストレージシステムの制御方法において、
前記スナップショットの作成後に前記スナップショットボリュームへの上位装置からのリード動作を行う場合、
前記チャネル制御部は、
前記コピー差分テーブルを参照し、前記オリジナルボリュームから前記プールボリュームへデータをコピーしていない場合は、コピーした後に、前記プールボリュームのデータをリードし、前記コピー差分テーブルを未コピーからコピー済へ更新し、前記データ一致差分テーブルを不一致から一致に更新し、既にコピーした場合は、前記プールボリュームのデータをリードし、前記コピー差分テーブルをコピー済のままとし、前記データ一致差分テーブルを更新せず、
前記スナップショットの作成後に前記スナップショットボリュームへの上位装置からのライト動作を行う場合、
前記チャネル制御部は、
前記コピー差分テーブルを参照し、前記オリジナルボリュームから前記プールボリュームへデータをコピーしていない場合は、コピーした後に、前記プールボリュームへライトデータを書き込み、前記コピー差分テーブルを未コピーからコピー済へ更新し、前記データ一致差分テーブルを不一致のままとし、既にコピーした場合は、前記プールボリュームへライトデータをライトし、前記コピー差分テーブルをコピー済のままとし、前記データ一致差分テーブルを一致から不一致へ更新する、ことを特徴とするストレージシステムの制御方法。
【請求項１８】
請求項１７記載のストレージシステムの制御方法において、
前記上位装置からのリードアクセス、ライトアクセスにより発生する前記オリジナルボリュームから前記プールボリュームへのデータコピー処理を行う場合、
前記チャネル制御部は、
前記プールボリュームテーブルのエントリのうち、データアドレスが無効値であるプール内エントリ番号を検索し、
前記データアドレスが無効値であるプール内エントリ番号に対応するデータアドレスを実際にデータをコピーするデータアドレスに更新し、
前記スナップショットボリュームテーブルのプール内エントリ番号を、前記データアドレスが無効値であるプール内エントリ番号に更新し、
前記データを前記オリジナルボリュームから前記プールボリュームにコピーする、ことを特徴とするストレージシステムの制御方法。
【請求項１９】
請求項１１記載のストレージシステムの制御方法において、
前記ペアテーブルは、複数のペアをコンシステンシーグループとして管理するものであり、
前記コンシステンシーグループのペアに対して、前記スナップショットから前記実データコピーへの変換要求を外部から受領した場合、
前記チャネル制御部は、
前記コンシステンシーグループに属する全ペアについて、前記スナップショットから前記実データコピーへの変換処理を実行する、ことを特徴とするストレージシステムの制御方法。
【請求項２０】
請求項１９記載のストレージシステムの制御方法において、
前記コンシステンシーグループのペアに対して、前記実データコピーから前記スナップショットへの変換要求を外部から受領した場合、
前記チャネル制御部は、
前記コンシステンシーグループに属する全ペアについて、前記実データコピーから前記スナップショットへの変換処理を実行する、ことを特徴とするストレージシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステムおよびその制御方法に関し、特に、スナップショットと実データコピーの変換に適用して有効な技術に関する。
【背景技術】
【０００２】
本発明者が検討したところによれば、ストレージシステムにおいては、データバックアップにスナップショットと実データコピーがある。スナップショットは、オリジナルボリュームへのホストからのライト時に書き込み前のデータを退避領域へコピーする（ｃｏｐｙ−ｏｎ−ｗｒｉｔｅ）ことにより、使用するボリューム容量を削減するものである。一方、実データコピーは、オリジナルボリュームの全データを実ボリュームへコピーするために、使用するボリューム容量はオリジナルボリュームと同じになる。また、全データをコピーすることでシステム全体の性能へ与える影響も大きい。
【特許文献１】特開２００６−３１５７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、ストレージシステムにおいては、上記のように、スナップショットは容量削減とシステム全体性能には効果的であるが、ｃｏｐｙ−ｏｎ−ｗｒｉｔｅ動作はライトコマンドのオーバーヘッドを増加させてしまう。実データコピーは全データをライトコマンドとは独立にコピーするので、ライトコマンドのオーバーヘッドに影響を与えない。
【０００４】
一般的に、ユーザは、データウェアハウスのようにバックアップポイントを細かく設定する場合はスナップショット、定期的なバックアップの場合は実データコピーというように、バックアップ目的に応じてスナップショットと実データコピーを使い分けている。
【０００５】
しかし、一旦、スナップショットで作成したデータを実データコピーに変換することはできない。従って、スナップショットで試験的にバックアップポイントを設定した後、選択したバックアップポイントにおける全データをバックアップする場合には、ライトコマンドの性能を劣化させてしまう。よって、従来方法の場合は、一旦、スナップショットで作成した後は、ホストからのライトコマンドの性能劣化を回避できない。
【０００６】
そこで、本発明の目的は、上記問題点を解決して、ホストからのライトコマンドの性能劣化を回避できるストレージシステムおよびその制御方法を提供することにある。
【課題を解決するための手段】
【０００７】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【０００８】
本発明によるストレージシステムおよびその制御方法は、スナップショットから実データコピーへの変換要求を受領した場合に、オリジナルボリュームのデータをオリジナルボリュームとは別領域にコピーすることで、スナップショットから実データコピーへの変換を可能とするものである。これにより、ボリューム容量、ライトコマンドオーバヘッド、システム性能の優先順位に応じて、任意にバックアップ形態を使い分けることができる。
【０００９】
すなわち、本発明においては、スナップショットから実データコピーへの変換要求を受領した場合、ペアテーブルのオリジナルボリュームとスナップショットボリュームとのペアを解除せずに、まず、コピー差分テーブルの先頭ビットから走査し、未コピーデータをオリジナルボリュームからプールボリュームへコピーし、コピーが完了したら、コピー差分テーブルの該当するビットをコピー済にし、データ一致差分テーブルの該当するビットを一致にする。そして、コピー差分テーブルの全てのビットについて、上記の処理が完了したら、ペアテーブルのバックアップタイプを実データコピーに変更する、ことを特徴とするものである。
【発明の効果】
【００１０】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００１１】
本発明によれば、オリジナルボリュームに対するｃｏｐｙ−ｏｎ−ｗｒｉｔｅ動作が発生しなくなることで、ホストからのライトコマンドの性能劣化を回避できる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１３】
＜本発明の実施の形態の概念＞
本発明は、上位装置からリード動作またはライト動作の要求を受け、リード動作またはライト動作を制御するチャネルアダプタ（チャネル制御部）と、リード動作またはライト動作によるデータを格納する記憶装置（記憶デバイス）と、記憶装置に対するデータのリード動作またはライト動作を制御するディスクアダプタ（記憶デバイス制御部）と、チャネルアダプタ、ディスクアダプタによって通信される制御情報が格納される共用メモリと、チャネルアダプタとディスクアダプタとの間で通信されるデータが一時的に保存されるキャッシュメモリとを有するストレージシステムおよびその制御方法に適用される。
【００１４】
このようなストレージシステムの構成において、記憶装置には、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ（オリジナルボリューム）、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅ（スナップショットボリューム）、ＰＯＯＬ  Ｖｏｌｕｍｅ（プールボリューム）が設定される。また、共用メモリは、ペアテーブル、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅテーブル、ＰＯＯＬ  Ｖｏｌｕｍｅテーブル、コピー差分テーブル、データ一致差分テーブルを有する。
【００１５】
ここで、本発明の説明において用いられる各用語を定義する。
【００１６】
Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅは、Ｓｎａｐｓｈｏｔを作成するときに、元データが格納されている論理ボリュームである。
【００１７】
Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅは、Ｓｎａｐｓｈｏｔを作成するときに、Ｓｎａｐｓｈｏｔとなる仮想論理ボリュームである。
【００１８】
ＰＯＯＬ  Ｖｏｌｕｍｅは、Ｓｎａｐｓｈｏｔを作成した後に、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅの実データを格納するための論理ボリュームである。
【００１９】
ペアテーブルは、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅとＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅのペア対応を管理するテーブルである。
【００２０】
Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅテーブルは、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅの実データ位置をロケーション単位に管理するテーブルである。ヘッダ部とデータ部により構成される。ヘッダ部は、データ部の使用／未使用をビットマップ管理するものである。データ部は、各Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅの実データがＰＯＯＬ  Ｖｏｌｕｍｅにある場合は、ＰＯＯＬ内のエントリ番号が格納される。実データがＰＯＯＬ  Ｖｏｌｕｍｅにない場合は、無効値が格納される。
【００２１】
ＰＯＯＬ  Ｖｏｌｕｍｅテーブルは、ＰＯＯＬ内エントリ番号とそのエントリに対応する実データのアドレスが格納される。複数のペアにより共用される。
【００２２】
コピー差分テーブルは、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーしたか否かを示す差分テーブルである。１ビット／データを割り当てる。
【００２３】
データ一致差分テーブルは、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅとＰＯＯＬ  Ｖｏｌｕｍｅのデータが一致しているか否かを示す差分テーブルである。１ビット／データを割り当てる。コピー差分テーブルがＯＦＦの場合のみ有効とする。
【００２４】
バックグラウンドコピーは、Ｓｎａｐｓｈｏｔを作成した後に、ホストからのリード処理、ライト処理とは独立に実行されるＯｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへのデータコピーである。
【００２５】
スナップショットは、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅへのホストからのライト時に書き込み前のデータを退避領域のＰＯＯＬ  Ｖｏｌｕｍｅへコピーする（ｃｏｐｙ−ｏｎ−ｗｒｉｔｅ）処理である。
【００２６】
実データコピーは、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅの全データを実ボリュームのＰＯＯＬ  Ｖｏｌｕｍｅへコピーする処理である。
【００２７】
＜ストレージシステムの全体構成＞
図１により、本発明の一実施の形態に係るストレージシステムの全体構成の一例を説明する。図１は、本実施の形態に係るストレージシステムの全体構成を示す図である。
【００２８】
本実施の形態に係るストレージシステムは、たとえばハイエンドシステム構成（ミッドレンジシステム構成は後述）に適用され、制御装置１と、記憶装置２とから構成される。制御装置１には、ＧＵＩ３が接続されている。このストレージシステムには、上位装置としてホスト４が接続されている。
【００２９】
制御装置１は、ホスト４からリード動作またはライト動作の要求を受け、リード動作またはライト動作を制御する複数（図１では２個）のチャネルアダプタ（ＣＨＡ）１１（１１Ａ，１１Ｂ）と、記憶装置２に対するデータのリード動作またはライト動作を制御する複数（図１では２個）のディスクアダプタ（ＤＫＡ）１２（１２Ａ，１２Ｂ）と、ＣＨＡ１１、ＤＫＡ１２によって通信される制御情報が格納される共用メモリ１３と、ＣＨＡ１１とＤＫＡ１２との間で通信されるデータが一時的に保存されるキャッシュメモリ１４とを有して構成される。
【００３０】
ＣＨＡ１１は、ホスト４との間で通信を行うための通信インタフェースを備え、ホスト４との間でデータ入出力コマンドなどを授受する機能を備える。特に、ＣＨＡ１１は、詳細は後述するが、スナップショット作成処理、ホストからのリード、ライトアクセス動作、ホストアクセス契機によるコピー動作における処理、スナップショットから実データコピーへの変換、実データコピーからスナップショットへの変換、スナップショットの解除処理などを実行する機能も備える。
【００３１】
共用メモリ１３およびキャッシュメモリ１４は、ＣＨＡ１１、ＤＫＡ１２により共用される記憶メモリである。共用メモリ１３は、主に制御情報やコマンドなどを記憶するために利用されるのに対して、キャッシュメモリ１４は、主にデータを記憶するために利用される。特に、共用メモリ１３は、詳細は後述するが、ペアテーブル、プールボリュームテーブル、スナップショットボリュームテーブル、コピー差分テーブル、データ一致差分テーブルなどのテーブルも記憶している。
【００３２】
たとえば、あるＣＨＡ１１がホスト４から受信したデータ入出力要求が書き込みコマンドであった場合には、当該ＣＨＡ１１は書き込みコマンドを共用メモリ１３に書き込むと共に、ホスト４から受信した書き込みデータをキャッシュメモリ１４に書き込む。一方、ＤＫＡ１２は、共用メモリ１３を監視しており、共用メモリ１３に書き込みコマンドが書き込まれたことを検出すると、当該コマンドに従ってキャッシュメモリ１４から書き込みデータを読み出して記憶装置２内のディスクドライブに書き込む。
【００３３】
また、あるＣＨＡ１１がホスト４から受信したデータ入出力要求が読み出しコマンドであった場合には、読み出し対象となるデータがキャッシュメモリ１４に存在するかどうかを調べる。ここで、キャッシュメモリ１４に存在すれば、ＣＨＡ１１はそのデータをホスト４に送信する。一方、読み出し対象となるデータがキャッシュメモリ１４に存在しない場合には、当該ＣＨＡ１１は読み出しコマンドを共用メモリ１３に書き込むと共に、共用メモリ１３を監視する。読み出しコマンドが共用メモリ１３に書き込まれたことを検出したＤＫＡ１２は、記憶装置２内のディスクドライブから読み出し対象となるデータを読み出して、これをキャッシュメモリ１４に書き込むと共に、その旨を共用メモリ１３に書き込む。そして、ＣＨＡ１１は、読み出し対象となるデータがキャッシュメモリ１４に書き込まれたことを検出すると、そのデータをホスト４に送信する。
【００３４】
このように、ＣＨＡ１１およびＤＫＡ１２の間では、キャッシュメモリ１４を介してデータの授受が行われ、キャッシュメモリ１４には、ディスクドライブに記憶されるデータのうち、ＣＨＡ１１やＤＫＡ１２により読み書きされるデータが記憶される。
【００３５】
なお、ＣＨＡ１１からＤＫＡ１２に対するデータの書き込みや読み出しの指示を、共用メモリ１３を介在させて間接的に行う構成の他、たとえばＣＨＡ１１からＤＫＡ１２に対してデータの書き込みや読み出しの指示を共用メモリ１３を介さずに直接に行う構成とすることもできる。また、ＣＨＡ１１にＤＫＡ１２の機能を持たせて、データ入出力制御部とすることもできる。
【００３６】
ＤＫＡ１２は、記憶装置２のデータを記憶する複数のディスクドライブと通信可能に接続され、ディスクドライブに対するデータの書き込み動作または読み出し動作の制御を行う。たとえば、上述のように、ＣＨＡ１１がホスト４から受信したデータ入出力要求に応じて、ディスクドライブに対してデータの読み書きを行う。
【００３７】
なお、本実施の形態においては、共用メモリ１３およびキャッシュメモリ１４がＣＨＡ１１およびＤＫＡ１２に対して独立に設けられていることについて記載したが、これに限られるものではなく、共用メモリ１３またはキャッシュメモリ１４がＣＨＡ１１およびＤＫＡ１２の各々に分散されて設けられることも可能である。
【００３８】
また、ＣＨＡ１１、ＤＫＡ１２、共用メモリ１３、キャッシュメモリ１４の少なくともいずれかが一体として構成されているようにすることもできる。
【００３９】
記憶装置２は、多数のディスクドライブを備えている。これにより、ホスト４に対して大容量の記憶領域を提供することができる。ディスクドライブは、ハードディスクドライブなどのデータ記憶媒体、あるいはＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）を構成する複数のハードディスクドライブにより構成されてなるようにすることができる。
【００４０】
また、ディスクドライブにより提供される物理的な記憶領域である物理ボリュームには、論理的な記録領域である論理ボリュームを設定することができる。特に、論理ボリュームとして、詳細は後述するが、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅ、ＰＯＯＬ  Ｖｏｌｕｍｅが設定される。
【００４１】
記憶装置２とＤＫＡ１２との間は、図１のように直接に接続される形態とすることもできるし、ネットワークを介して接続されるようにすることもできる。さらに、記憶装置２は、制御装置１と一体として構成されることもできる。
【００４２】
ＧＵＩ３は、制御装置１を保守・管理するためのコンピュータである。オペレータは、ＧＵＩ３を操作することにより、たとえば記憶装置２内のディスクドライブの構成の設定や、ホスト４とＣＨＡ１１との間の通信路であるパスの設定、論理ボリュームの設定、ＣＨＡ１１やＤＫＡ１２において実行されるマイクロプログラムのインストールなどを行うことができる。ここで、記憶装置２内のディスクドライブの構成の設定としては、たとえばディスクドライブの増設や減設、ＲＡＩＤ構成の変更（ＲＡＩＤ１からＲＡＩＤ５への変更など）などとすることができる。
【００４３】
さらに、ＧＵＩ３からは、制御装置１の動作状態の確認や故障部位の特定、ＣＨＡ１１で実行されるオペレーティングシステムのインストールなどの作業を行うことができる。これらの設定や制御は、ＧＵＩ３が備えるユーザインタフェース、あるいはＧＵＩ３で動作するＷｅｂサーバにより提供されるＷｅｂページを表示する管理クライアントのユーザインタフェースからオペレータなどにより行うようにすることができる。オペレータなどは、ＧＵＩ３を操作して障害監視する対象や内容の設定、障害通知先の設定などを行うこともできる。
【００４４】
ＧＵＩ３は、制御装置１に外付けされる形態に限らず、内蔵されている形態とすることもできる。また、ＧＵＩ３は、制御装置１および記憶装置２の保守・管理を専用に行うコンピュータとすることもできるし、汎用のコンピュータに保守・管理機能を持たせたものとすることもできる。
【００４５】
ホスト４は、ＣＰＵやメモリを備えたコンピュータなどの情報機器である。ホスト４が備えるＣＰＵによって各種プログラムが実行されることにより、様々な機能が実現される。ホスト４は、たとえばパーソナルコンピュータやワークステーションであることもあるし、メインフレームコンピュータであることもある。特に、ホスト４は、たとえば銀行の自動預金預け払いシステムや航空機の座席予約システムなどにおける中枢コンピュータとして利用される。
【００４６】
また、ホスト４は、たとえばＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を介して制御装置１と通信可能に接続されている。ＳＡＮは、記憶装置２が提供する記憶資源におけるデータの管理単位であるブロックを単位としてホスト４との間でデータの授受を行うためのネットワークである。ＳＡＮを介して行われるホスト４と制御装置１との間の通信は、たとえばファイバチャネルプロトコルに従って行われる。ホスト４からは、制御装置１に対して、ファイバチャネルプロトコルに従ってブロック単位のデータアクセス要求が送信される。
【００４７】
また、ホスト４は、ＳＡＮなどのネットワークを介さずに直接に制御装置１と通信可能に接続されていてもよい。ネットワークを介さずに直接に、ホスト４と制御装置１との間の通信は、たとえばＦＩＣＯＮ（Ｆｉｂｒｅ  Ｃｏｎｎｅｃｔｉｏｎ）（登録商標）やＥＳＣＯＮ（Ｅｎｔｅｒｐｒｉｓｅ  Ｓｙｓｔｅｍ  Ｃｏｎｎｅｃｔｉｏｎ）（登録商標）、ＡＣＯＮＡＲＣ（Ａｄｖａｎｃｅｄ  Ｃｏｎｎｅｃｔｉｏｎ  Ａｒｃｈｉｔｅｃｔｕｒｅ）（登録商標）、ＦＩＢＡＲＣ（Ｆｉｂｒｅ  Ｃｏｎｎｅｃｔｉｏｎ  Ａｒｃｈｉｔｅｃｔｕｒｅ）（登録商標）などの通信プロトコルに従って行われる。ホスト４からは、制御装置１に対して、これらの通信プロトコルに従ってブロック単位のデータアクセス要求が送信される。
【００４８】
もちろん、ホスト４と制御装置１との間は、ＳＡＮを介して接続される場合、ＳＡＮを介さずに直接に接続される場合に限らず、たとえば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を介して接続されているようにすることもできる。ＬＡＮを介して接続される場合には、たとえばＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）プロトコルに従って通信を行うようにすることができる。
【００４９】
＜ストレージシステムの主要部構成＞
図２により、本発明の一実施の形態に係るストレージシステムの主要部構成の一例を説明する。図２は、本実施の形態に係るストレージシステムの主要部構成を示す図である。併せて、図３によりペアテーブルの構成、図４によりスナップショットボリュームテーブルの構成、図５によりプールボリュームテーブルの構成をそれぞれ説明する。
【００５０】
前述したストレージシステムの構成において、図２に示すように、記憶装置２のディスクドライブにより提供される物理ボリュームには、論理ボリュームとして、Ｓｎａｐｓｈｏｔ作成時に元データが格納されている論理ボリュームであるＯｒｉｇｉｎａｌ  Ｖｏｌｕｍｅと、Ｓｎａｐｓｈｏｔ作成時にＳｎａｐｓｈｏｔとなる仮想論理ボリュームであるＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅと、Ｓｎａｐｓｈｏｔ作成後にＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅの実データを格納するための論理ボリュームであるＰＯＯＬ  Ｖｏｌｕｍｅとが設定される。
【００５１】
また、共用メモリ１３には、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅとＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅとのペア対応を管理するペアテーブルＴ１と、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅの実データ位置をロケーション単位に管理するＳｎａｐｓｈｏｔ  ＶｏｌｕｍｅテーブルＴ２と、ＰＯＯＬ内エントリ番号とそのエントリに対応する実データのアドレスが格納されるＰＯＯＬ  ＶｏｌｕｍｅテーブルＴ３と、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーしたか否かを示すコピー差分テーブルＴ４と、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅとＰＯＯＬ  Ｖｏｌｕｍｅとのデータが一致しているか否かを示すデータ一致差分テーブルＴ５とを有する。
【００５２】
ペアテーブルＴ１には、図３に示すように、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ番号、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅ番号、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅテーブルアドレス、バックアップタイプ、コピー差分テーブルアドレス、データ一致差分テーブルアドレス、コンシステンシーグループ番号の各格納領域がある。このペアテーブルＴ１により、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅとＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅとのペア対応が管理される。
【００５３】
Ｓｎａｐｓｈｏｔ  ＶｏｌｕｍｅテーブルＴ２は、図４に示すように、ヘッダ部とデータ部により構成される。ヘッダ部は、図４（ａ）に示すように、データ部の使用／未使用をビットマップ管理するものである（“１”：使用、“０”：未使用）。データ部には、図４（ｂ）に示すように、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅ内のロケーション、ＰＯＯＬ内エントリ番号の各格納領域がある。このデータ部は、各Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅの実データがＰＯＯＬ  Ｖｏｌｕｍｅにある場合は、ＰＯＯＬ内のエントリ番号が格納される。実データがＰＯＯＬ  Ｖｏｌｕｍｅにない場合は、無効値が格納される。このＳｎａｐｓｈｏｔ  ＶｏｌｕｍｅテーブルＴ２により、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅの実データ位置がロケーション単位に管理される。
【００５４】
ＰＯＯＬ  ＶｏｌｕｍｅテーブルＴ３には、図５に示すように、ＰＯＯＬ内エントリ番号、データアドレスの各格納領域がある。各格納領域に、ＰＯＯＬ内エントリ番号とそのエントリに対応する実データのアドレスが格納される。このＰＯＯＬ  ＶｏｌｕｍｅテーブルＴ３は、複数のペアにより共用される。
【００５５】
コピー差分テーブルＴ４は、図示しないが、１ビット／データを割り当てられ、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーしたか否かを示す。各１ビットにおいて、“１”の場合（ＯＮ）は未コピー（初期値）、“０”の場合（ＯＦＦ）はコピー済を示す。
【００５６】
データ一致差分テーブルＴ５は、コピー差分テーブルＴ４がＯＦＦの場合のみ有効とし、図示しないが、１ビット／データを割り当てられ、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅとＰＯＯＬ  Ｖｏｌｕｍｅのデータが一致しているか否かを示す。各１ビットにおいて、“１”の場合（ＯＮ）は不一致（初期値）、“０”の場合（ＯＦＦ）は一致を示す。
【００５７】
＜スナップショット作成処理＞
スナップショットの作成処理では、ＣＨＡ１１において、下記（１）−（４）を実行する。スナップショット作成要求は、ホスト４及びＧＵＩ３により可能である。
【００５８】
（１）ペアテーブルＴ１のバックアップタイプが無効であるエントリを検索し、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ番号、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅ番号を登録する。Ｓｎａｐｓｈｏｔ  ＶｏｌｕｍｅテーブルＴ２のヘッダ部を検索し、未使用のデータ部のアドレスをＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅテーブルアドレスに設定する。また、バックアップタイプをスナップショットにする。
【００５９】
（２）Ｓｎａｐｓｈｏｔ  ＶｏｌｕｍｅテーブルＴ２のＰＯＯＬ内エントリ番号を無効値にする。
【００６０】
（３）コピー差分テーブルＴ４の全ビットをＯＮにする（初期化）。
【００６１】
（４）データ一致差分テーブルＴ５の全ビットをＯＮにする（初期化）。
【００６２】
以上のようにして、スナップショットの作成処理を実行することができる。
【００６３】
＜ホストからのリード、ライトアクセス動作＞
スナップショット作成後における、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ及びＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへのホストからのリード、ライト動作は、ＣＨＡ１１において、下記の通り実行する。図６〜図１２により、これらの動作の一例を説明する。それぞれ、図６はＯｒｉｇｉｎａｌ  Ｖｏｌｕｍｅへのホストからのリード動作の概念、図７はＯｒｉｇｉｎａｌ  Ｖｏｌｕｍｅへのホストからのライト動作の概念、図８は図７の動作フロー、図９はＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへのホストからのリード動作の概念、図１０は図９の動作フロー、図１１はＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへのホストからのライト動作の概念、図１２は図１１の動作フロー、を示す図である。
【００６４】
（１）Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅへのホスト４からのリード動作では、図６（ａ）に示すように、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーしていない場合や、図６（ｂ）に示すように、既にコピーした場合は、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅのデータをリードする。この場合に、コピー差分テーブルＴ４、データ一致差分テーブルＴ５を更新しない。
【００６５】
（２）Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅへのホスト４からのライト動作では、コピー差分テーブルＴ４を参照し、図７（ａ）に示すように、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーしていない場合は、コピーした後に、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅへライトデータを書き込む。この場合に、コピー差分テーブルＴ４をＯＮからＯＦＦへ更新し、データ一致差分テーブルＴ５をＯＮのままとする。図７（ｂ）に示すように、既にコピーした場合は、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅへライトデータをライトする。この場合に、コピー差分テーブルＴ４をＯＦＦのままとし、データ一致差分テーブルＴ５をＯＦＦからＯＮへ更新する。
【００６６】
具体的な処理手順は、図８に示すように、まず、コピー差分テーブルＴ４を参照し（Ｓ１０１）、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピー済か否かを判断する（Ｓ１０２）。
【００６７】
このＳ１０２の判断の結果、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーしていない場合（ＮＯ）は、ＰＯＯＬ  ＶｏｌｕｍｅテーブルＴ３のエントリのうち、データアドレスが無効値のエントリを検索する（Ｓ１０３）。さらに、この検索したエントリの無効値をコピー先のデータアドレスに変更し（Ｓ１０４）、また、Ｓｎａｐｓｈｏｔ  ＶｏｌｕｍｅテーブルＴ２のＰＯＯＬ内エントリ番号を検索したエントリ番号に変更する（Ｓ１０５）。
【００６８】
そして、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーする（Ｓ１０６）。コピーした後は、コピー差分テーブルＴ４をＯＦＦし（Ｓ１０７）、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅへライトデータをライトして（Ｓ１０８）、終了となる。
【００６９】
一方、Ｓ１０２の判断の結果、既にＯｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーした場合（ＹＥＳ）は、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅへライトデータをライトする（Ｓ１０９）。さらに、データ一致差分テーブルＴ５がＯＦＦか否かを判断する（Ｓ１１０）。
【００７０】
このＳ１１０の判断の結果、データ一致差分テーブルＴ５がＯＦＦの場合（ＹＥＳ）は、データ一致差分テーブルＴ５をＯＮする（Ｓ１１１）。一方、データ一致差分テーブルＴ５がＯＦＦでない場合（ＮＯ）は、ＯＮであるので、そのままで終了となる。
【００７１】
（３）Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへのホストからのリード動作では、コピー差分テーブルＴ４を参照し、図９（ａ）に示すように、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーしていない場合は、コピーした後に、ＰＯＯＬ  Ｖｏｌｕｍｅのデータをリードする。この場合に、コピー差分テーブルＴ４をＯＮからＯＦＦへ更新し、データ一致差分テーブルＴ５をＯＮからＯＦＦに更新する。図９（ｂ）に示すように、既にコピーした場合は、ＰＯＯＬ  Ｖｏｌｕｍｅのデータをリードする。この場合に、コピー差分テーブルＴ４をＯＦＦのままとし、データ一致差分テーブルＴ５を更新しない。
【００７２】
具体的な処理手順は、図１０に示すように、まず、コピー差分テーブルＴ４を参照し（Ｓ２０１）、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピー済か否かを判断する（Ｓ２０２）。
【００７３】
このＳ２０２の判断の結果、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーしていない場合（ＮＯ）は、ＰＯＯＬ  ＶｏｌｕｍｅテーブルＴ３のエントリのうち、データアドレスが無効値のエントリを検索する（Ｓ２０３）。さらに、この検索したエントリの無効値をコピー先のデータアドレスに変更し（Ｓ２０４）、また、Ｓｎａｐｓｈｏｔ  ＶｏｌｕｍｅテーブルＴ２のＰＯＯＬ内エントリ番号を検索したエントリ番号に変更する（Ｓ２０５）。
【００７４】
そして、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーする（Ｓ２０６）。コピーした後は、コピー差分テーブルＴ４をＯＦＦし（Ｓ２０７）、また、データ一致差分テーブルＴ５をＯＦＦし（Ｓ２０８）、ＰＯＯＬ  Ｖｏｌｕｍｅからデータをリードして（Ｓ２０９）、終了となる。
【００７５】
一方、Ｓ２０２の判断の結果、既にＯｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーした場合（ＹＥＳ）は、ＰＯＯＬ  Ｖｏｌｕｍｅからデータをリードして（Ｓ２０９）、終了となる。
【００７６】
（４）Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへのホスト４からのライト動作では、コピー差分テーブルＴ４を参照し、図１１（ａ）に示すように、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーしていない場合は、コピーした後に、ＰＯＯＬ  Ｖｏｌｕｍｅへライトデータを書き込む。この場合に、コピー差分テーブルＴ４をＯＮからＯＦＦへ更新し、データ一致差分テーブルＴ５をＯＮのままとする。図１１（ｂ）に示すように、既にコピーした場合は、ＰＯＯＬ  Ｖｏｌｕｍｅへライトデータをライトする。この場合に、コピー差分テーブルＴ４をＯＦＦのままとし、データ一致差分テーブルＴ５をＯＦＦならばＯＮへ更新する。
【００７７】
具体的な処理手順は、図１２に示すように、まず、コピー差分テーブルＴ４を参照し（Ｓ３０１）、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピー済か否かを判断する（Ｓ３０２）。
【００７８】
このＳ３０２の判断の結果、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーしていない場合（ＮＯ）は、ＰＯＯＬ  ＶｏｌｕｍｅテーブルＴ３のエントリのうち、データアドレスが無効値のエントリを検索する（Ｓ３０３）。さらに、この検索したエントリの無効値をコピー先のデータアドレスに変更し（Ｓ３０４）、また、Ｓｎａｐｓｈｏｔ  ＶｏｌｕｍｅテーブルＴ２のＰＯＯＬ内エントリ番号を検索したエントリ番号に変更する（Ｓ３０５）。
【００７９】
そして、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーする（Ｓ３０６）。コピーした後は、コピー差分テーブルＴ４をＯＦＦし（Ｓ３０７）、ＰＯＯＬ  Ｖｏｌｕｍｅへライトデータをライトして（Ｓ３０８）、終了となる。
【００８０】
一方、Ｓ３０２の判断の結果、既にＯｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーした場合（ＹＥＳ）は、ＰＯＯＬ  Ｖｏｌｕｍｅへライトデータをライトする（Ｓ３０９）。さらに、データ一致差分テーブルＴ５がＯＦＦか否かを判断する（Ｓ３１０）。
【００８１】
このＳ３１０の判断の結果、データ一致差分テーブルＴ５がＯＦＦの場合（ＹＥＳ）は、データ一致差分テーブルＴ５をＯＮする（Ｓ３１１）。一方、データ一致差分テーブルＴ５がＯＦＦでない場合（ＮＯ）は、ＯＮであるので、そのままで終了となる。
【００８２】
以上のようにして、スナップショット作成後における、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ及びＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへのホスト４からのリード、ライト動作を実行することができる。
【００８３】
＜ホストアクセス契機によるコピー動作における処理＞
ホスト４からのリード、ライトアクセスにより発生するＯｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへのデータコピー処理では、ＣＨＡ１１において、下記（１）−（４）を実行する。
【００８４】
（１）ＰＯＯＬ  ＶｏｌｕｍｅテーブルＴ３のエントリのうちデータアドレスが無効値であるＰＯＯＬ内エントリ番号を検索する。
【００８５】
（２）上記（１）のＰＯＯＬ内エントリ番号に対応するデータアドレスを実際にデータをコピーするデータアドレスに更新する。
【００８６】
（３）Ｓｎａｐｓｈｏｔ  ＶｏｌｕｍｅテーブルＴ２のＰＯＯＬ内エントリ番号を上記（１）のＰＯＯＬ内エントリ番号に更新する。
【００８７】
（４）データをＯｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅにコピーする。
【００８８】
以上のようにして、ホスト４からのリード、ライトアクセスにより発生するＯｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへのデータコピー処理を実行することができる。
【００８９】
＜スナップショットから実データコピーへの変換＞
スナップショットから実データコピーへの変換要求を受領した場合は、ＣＨＡ１１において、ペアの解除をせずに、下記（１）−（２）を実行する。変換要求は、ホスト４及びＧＵＩ３により可能である。図１３により、この動作の一例を説明する。図１３は、スナップショットから実データコピーへの変換の動作フローを示す図である。
【００９０】
（１）コピー差分テーブルＴ４の先頭ビットから走査し、未コピーデータをＯｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへコピーする（バックグラウンドコピー）。コピーが完了したら、コピー差分テーブルＴ４とデータ一致差分テーブルＴ５の該当するビットをＯＦＦにする。
【００９１】
（２）コピー差分テーブルＴ４の全てのビットについて、上記（１）の処理が完了したら、ペアテーブルＴ１のバックアップタイプを実データコピーに変更する。
【００９２】
具体的な処理手順は、図１３に示すように、ホスト４またはＧＵＩ３から、スナップショットから実データコピーへの変換要求を受領したら（Ｓ４０１）、まず、コピー位置＝０にした後（Ｓ４０２）、コピー差分テーブルＴ４を参照し（Ｓ４０３）、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピー済か否かを判断する（Ｓ４０４）。
【００９３】
このＳ４０４の判断の結果、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーしていない場合（ＮＯ）は、ＰＯＯＬ  ＶｏｌｕｍｅテーブルＴ３のエントリのうち、データアドレスが無効値のエントリを検索する（Ｓ４０５）。さらに、この検索したエントリの無効値をコピー先のデータアドレスに変更し（Ｓ４０６）、また、Ｓｎａｐｓｈｏｔ  ＶｏｌｕｍｅテーブルＴ２のＰＯＯＬ内エントリ番号を検索したエントリ番号に変更する（Ｓ４０７）。
【００９４】
そして、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーする（Ｓ４０８）。コピーした後は、コピー差分テーブルＴ４をＯＦＦし（Ｓ４０９）、また、データ一致差分テーブルＴ５をＯＦＦする（Ｓ４１０）。
【００９５】
次に、コピー位置を＋１した後（Ｓ４１１）、全データのコピーが終了したか否かを判断する（Ｓ４１２）。このＳ４１２の判断の結果、全データのコピーが終了した場合（ＹＥＳ）は、ペアテーブルＴ１のバックアップタイプを実データコピーに変更して（Ｓ４１３）、終了となる。一方、全データのコピーが終了していない場合（ＮＯ）は、Ｓ４０３からの処理を繰り返す。
【００９６】
また、Ｓ４０４の判断の結果、既にＯｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＰＯＯＬ  Ｖｏｌｕｍｅへデータをコピーした場合（ＹＥＳ）は、Ｓ４１１へ移行して処理を継続する。
【００９７】
以上のようにして、スナップショットから実データコピーへの変換処理を実行することができる。
【００９８】
＜実データコピーからスナップショットへの変換＞
実データコピーからスナップショットへの変換要求を受領した場合は、ＣＨＡ１１において、ペアの解除をせずに、下記（１）−（４）を実行する。変換要求は、ホスト４及びＧＵＩ３により可能である。
【００９９】
（１）ペアテーブルＴ１のバックアップタイプをスナップショットに変更する。
【０１００】
（２）データ一致差分テーブルＴ５の先頭ビットから走査し、データが一致しているロケーションのＰＯＯＬ内エントリ番号を無効値にする。
【０１０１】
（３）ＰＯＯＬ  ＶｏｌｕｍｅテーブルＴ３のうち、上記（２）に該当するＰＯＯＬ内エントリ番号のデータアドレスを無効値にする。
【０１０２】
（４）コピー差分テーブルＴ４の上記（２）に該当するビットをＯＮにする。
【０１０３】
以上のようにして、実データコピーからスナップショットへの変換処理を実行することができる。
【０１０４】
＜スナップショット解除処理＞
スナップショット解除処理では、ＣＨＡ１１において、下記（１）−（３）を実行する。
【０１０５】
（１）Ｓｎａｐｓｈｏｔ  ＶｏｌｕｍｅテーブルＴ２のうち、無効値でないＰＯＯＬ内エントリ番号に対応するＰＯＯＬ  ＶｏｌｕｍｅテーブルＴ３のデータアドレスを無効値にする。
【０１０６】
（２）上記（１）のＳｎａｐｓｈｏｔ  ＶｏｌｕｍｅテーブルＴ２のヘッダ部の該当する使用ビットを０にし、ＰＯＯＬ内エントリ番号を全て無効値にする。
【０１０７】
（３）ペアテーブルＴ１のＯｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ番号、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅ番号をゼロクリアし、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅテーブルアドレスとバックアップタイプを無効値にする。
【０１０８】
以上のようにして、スナップショット解除処理を実行することができる。
【０１０９】
＜状態遷移＞
以上説明した、スナップショット作成処理、ホストからのリード、ライトアクセス動作、ホストアクセス契機によるコピー動作における処理、スナップショットから実データコピーへの変換、実データコピーからスナップショットへの変換、スナップショット解除処理を任意に組み合わせて実行することで、図１４に示すような状態遷移を実現することができる。図１４により、この状態遷移の一例を説明する。図１４は、状態遷移を示す図である。
【０１１０】
状態として、ペアなし（初期状態）の第１の状態、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへ未コピー（Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ≠ＰＯＯＬ  Ｖｏｌｕｍｅ）の第２の状態、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへコピー済（Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ≠ＰＯＯＬ  Ｖｏｌｕｍｅ）の第３の状態、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへコピー済（Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ＝ＰＯＯＬ  Ｖｏｌｕｍｅ）の第４の状態の４つがある。
【０１１１】
第１の状態から第２の状態へは、Ｓｎａｐｓｈｏｔ作成で遷移できる。その逆は、Ｓｎａｐｓｈｏｔ解除で遷移できる。第２の状態から第３の状態へは、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅライト、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅライトで遷移できる。第２の状態から第４の状態へは、バックグラウンドコピー、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅリードで遷移できる。その逆は、Ｓｎａｐｓｈｏｔから実データコピーへの変換で遷移できる。第３の状態から第１の状態へは、Ｓｎａｐｓｈｏｔ解除で遷移できる。第４の状態から第１の状態へは、Ｓｎａｐｓｈｏｔ解除で遷移できる。第４の状態から第３の状態へは、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅライト、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅライトで遷移できる。
【０１１２】
また、第２の状態では、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅリードが実行される。第３の状態では、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅライト、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅリード、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅライト、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅリードが実行される。第４の状態では、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅリード、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅリードが実行される。
【０１１３】
以上のようにして、第１の状態、第２の状態、第３の状態、第４の状態の任意の間で遷移させることができる。
【０１１４】
＜コンシステンシーグループ＞
本発明においては、前述した、スナップショット作成処理、ホストからのリード、ライトアクセス動作、ホストアクセス契機によるコピー動作における処理、スナップショットから実データコピーへの変換、実データコピーからスナップショットへの変換、スナップショット解除処理の各処理を、コンシステンシーグループとして管理することも可能である。ここでは、前述した各処理に対して、異なる部分を説明する。
【０１１５】
たとえば、スナップショットから実データコピーへの変換においては、複数のペアをコンシステンシーグループとして管理する。コンシステンシーグループのペアに対して、スナップショットから実データコピーへの変換要求を受領した場合、コンシステンシーグループに属する全ペアについて、前述したスナップショットから実データコピーへの変換処理を実行する。コンシステンシーグループ番号は、前述した図３のペアテーブルＴ１で管理する。このコンシステンシーグループ番号が同じものは、同じコンシステンシーグループに属する。図１５により、このコンシステンシーグループの一例を説明する。図１５は、コンシステンシーグループを説明するための図である。
【０１１６】
図１５においては、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ１とＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅ１のペア１と、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ２とＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅ２のペア２との２つのペアがコンシステンシーグループとなっている。よって、この２つのペアを含むコンシステンシーグループに対して、スナップショットから実データコピーへの変換要求を受領した場合、ペア１とペア２についてスナップショットから実データコピーへの変換処理が実行される。
【０１１７】
以上のようにして、複数のペアをコンシステンシーグループとして管理する場合にも適用することができる。
【０１１８】
＜ミッドレンジコントローラの制御方法＞
本発明においては、前述したハイエンドシステム構成に対して、ミッドレンジシステム構成にも適用可能である。図１６により、このミッドレンジシステム構成のストレージシステムの全体構成の一例を説明する。図１６は、ミッドレンジシステム構成のストレージシステムを説明するための図である。ここでは、前述したハイエンドシステム構成に対して、異なる部分を説明する。
【０１１９】
このミッドレンジシステム構成のストレージシステムは、制御装置１内に、複数（図１６では２個）のコントローラ１５（コントローラ０（１５Ａ）、コントローラ１（１５Ｂ））を有し、各コントローラ１５が独立して動作することが可能となっている。各コントローラ１５には、ハイエンドシステム構成と同様の機能を持つ、ＣＨＡ１１、ＤＫＡ１２、キャッシュメモリ１４を有して構成される。
【０１２０】
ミッドレンジシステム構成においては、コントローラ１５が制御するボリューム（Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅ、ＰＯＯＬ  Ｖｏｌｕｍｅ）種別により、下記パターン１，２，３がある。
【０１２１】
パターン１では、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅ、ＰＯＯＬ  Ｖｏｌｕｍｅのすべてをコントローラ０（１５Ａ）で制御する。
【０１２２】
パターン２では、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅをコントローラ０（１５Ａ）で制御し、Ｓｎａｐｓｈｏｔ  ＶｏｌｕｍｅとＰＯＯＬ  Ｖｏｌｕｍｅをコントローラ１（１５Ｂ）で制御する。
【０１２３】
パターン３では、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅとＰＯＯＬ  Ｖｏｌｕｍｅをコントローラ０（１５Ａ）で制御し、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅをコントローラ１（１５Ｂ）で制御する。
【０１２４】
このようなパターン１，２，３の制御の管理分担によって、新たに生じる処理は下記（１）〜（３）の通りである。図１７〜図１９により、これらの新たに生じる処理の一例を説明する。それぞれ、図１７はパターン１、図１８はパターン２、図１９はパターン３、を説明するための図である。
【０１２５】
（１）図１７に示すように、コントローラ０（１５Ａ）とコントローラ１（１５Ｂ）のキャッシュメモリ１４には、各々同一の制御テーブルＴ６（ペアテーブル、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅテーブル、ＰＯＯＬ  Ｖｏｌｕｍｅテーブル、コピー差分テーブル、データ一致差分テーブル）を持つ。この制御テーブルＴ６の内容は常に一致しているものとする。一方のコントローラ１５Ａ（１５Ｂ）の制御テーブルＴ６を更新した場合は、他方のコントローラ１５Ｂ（１５Ａ）の制御テーブルＴ６に対する更新はホスト４を経由して行う。
【０１２６】
（２）図１８に示すように、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅがコントローラ０（１５Ａ）にあり、ＰＯＯＬ  Ｖｏｌｕｍｅ、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅがコントローラ１（１５Ｂ）にある場合のように、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅとＰＯＯＬ  Ｖｏｌｕｍｅが異なるコントローラ配下にある場合（パターン２）に、双方のＶｏｌｕｍｅ間でのデータコピーはホスト４を経由して行う。
【０１２７】
（３）図１９に示すように、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ、ＰＯＯＬ  Ｖｏｌｕｍｅがコントローラ０（１５Ａ）にあり、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅがコントローラ１（１５Ｂ）にある場合のように、ホストアクセスを受領したＶｏｌｕｍｅの実データが、他方のコントローラ配下にある場合は、ホスト４を経由してデータアクセスを行う。
【０１２８】
以上のようにして、ミッドレンジシステム構成のストレージシステムにも適用することができる。
【０１２９】
＜外部接続＞
本発明においては、前述したＰＯＯＬ  Ｖｏｌｕｍｅを外部接続ストレージ内の論理ボリュームとすることも可能である。図２０，図２１により、この外部接続の一例を説明する。それぞれ、図２０は外部接続を説明するための図、図２１は外部接続マッピングテーブルの構成を示す図である。
【０１３０】
図２０に示すように、制御装置１にＯｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅ、ＰＯＯＬ  Ｖｏｌｕｍｅ（仮想）があり、この外部の外部制御装置５にＰＯＯＬ  Ｖｏｌｕｍｅ（実）がある構成において、ＰＯＯＬ  Ｖｏｌｕｍｅへアクセスする場合は、共用メモリ１３に有する外部接続マッピングテーブルＴ７を参照し、外部接続制御装置種別の外部接続論理ボリューム番号にアクセスする。これにより、外部制御装置５のＰＯＯＬ  Ｖｏｌｕｍｅを利用することができる。
【０１３１】
外部接続マッピングテーブルＴ７には、図２１に示すように、自筐体論理ボリューム番号、外部接続論理ボリューム番号、外部接続制御装置種別の各格納領域がある。この外部接続マッピングテーブルＴ７により、自筐体の論理ボリュームと外部接続の論理ボリュームとがマッピングされる。
【０１３２】
以上のようにして、ＰＯＯＬ  Ｖｏｌｕｍｅを外部接続ストレージ内のボリュームとする場合にも適用することができる。
【０１３３】
＜実施の形態の効果＞
本実施の形態によれば、スナップショットから実データコピーへの変換要求を受領した場合に、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅのデータをＰＯＯＬ  Ｖｏｌｕｍｅにコピーすることで、スナップショットから実データコピーへの変換が可能となるので、ボリューム容量、ライトコマンドオーバヘッド、システム性能の優先順位に応じて、任意にバックアップ形態を使い分けることができる。
【０１３４】
この結果、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅに対するｃｏｐｙ−ｏｎ−ｗｒｉｔｅ動作が発生しなくなることで、ホストからのライトコマンドの性能劣化を回避することができる。
【０１３５】
また、実データコピーからスナップショットへの変換要求を受領した場合には、実データコピーからスナップショットへの変換処理を実行することができる。
【０１３６】
また、ペアなし、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへ未コピー（Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ≠ＰＯＯＬ  Ｖｏｌｕｍｅ）、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへコピー済（Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ≠ＰＯＯＬ  Ｖｏｌｕｍｅ）、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅからＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへコピー済（Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅ＝ＰＯＯＬ  Ｖｏｌｕｍｅ）の各状態の間で遷移させることができる。
【０１３７】
また、Ｏｒｉｇｉｎａｌ  ＶｏｌｕｍｅとＳｎａｐｓｈｏｔ  Ｖｏｌｕｍｅとの管理は、１つのペアの場合に限らず、複数のペアをコンシステンシーグループとして管理する場合にも適用することができる。
【０１３８】
また、ストレージシステムの構成は、ハイエンドシステム構成に限らず、ミッドレンジシステム構成にも適用することができる。
【０１３９】
また、ＰＯＯＬ  Ｖｏｌｕｍｅは、自筐体の論理ボリュームに限らず、外部接続ストレージ内の論理ボリュームとする場合にも適用することができる。
【０１４０】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【図面の簡単な説明】
【０１４１】
【図１】本発明の一実施の形態に係るストレージシステムの全体構成を示す図である。
【図２】本発明の一実施の形態に係るストレージシステムの主要部構成を示す図である。
【図３】本発明の一実施の形態に係るストレージシステムにおいて、ペアテーブルの構成を示す図である。
【図４】本発明の一実施の形態に係るストレージシステムにおいて、スナップショットボリュームテーブルの構成（ａ），（ｂ）を示す図である。
【図５】本発明の一実施の形態に係るストレージシステムにおいて、プールボリュームテーブルの構成を示す図である。
【図６】本発明の一実施の形態に係るストレージシステムにおいて、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅへのホストからのリード動作の概念（ａ），（ｂ）を示す図である。
【図７】本発明の一実施の形態に係るストレージシステムにおいて、Ｏｒｉｇｉｎａｌ  Ｖｏｌｕｍｅへのホストからのライト動作の概念（ａ），（ｂ）を示す図である。
【図８】本発明の一実施の形態に係るストレージシステムにおいて、図７の動作フローを示す図である。
【図９】本発明の一実施の形態に係るストレージシステムにおいて、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへのホストからのリード動作の概念（ａ），（ｂ）を示す図である。
【図１０】本発明の一実施の形態に係るストレージシステムにおいて、図９の動作フローを示す図である。
【図１１】本発明の一実施の形態に係るストレージシステムにおいて、Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅへのホストからのライト動作の概念（ａ），（ｂ）を示す図である。
【図１２】本発明の一実施の形態に係るストレージシステムにおいて、図１１の動作フローを示す図である。
【図１３】本発明の一実施の形態に係るストレージシステムにおいて、スナップショットから実データコピーへの変換の動作フローを示す図である。
【図１４】本発明の一実施の形態に係るストレージシステムにおいて、状態遷移を示す図である。
【図１５】本発明の一実施の形態に係るストレージシステムにおいて、コンシステンシーグループを説明するための図である。
【図１６】本発明の一実施の形態に係るストレージシステムにおいて、ミッドレンジシステム構成を説明するための図である。
【図１７】本発明の一実施の形態に係るストレージシステムにおいて、ミッドレンジコントローラの制御方法のパターン１を説明するための図である。
【図１８】本発明の一実施の形態に係るストレージシステムにおいて、ミッドレンジコントローラの制御方法のパターン２を説明するための図である。
【図１９】本発明の一実施の形態に係るストレージシステムにおいて、ミッドレンジコントローラの制御方法のパターン３を説明するための図である。
【図２０】本発明の一実施の形態に係るストレージシステムにおいて、外部接続を説明するための図である。
【図２１】本発明の一実施の形態に係るストレージシステムにおいて、外部接続マッピングテーブルの構成を示す図である。
【符号の説明】
【０１４２】
１…制御装置、２…記憶装置、３…ＧＵＩ、４…ホスト、５…外部制御装置、
１１（１１Ａ，１１Ｂ）…ＣＨＡ、１２（１２Ａ，１２Ｂ）…ＤＫＡ、１３…共用メモリ、１４…キャッシュメモリ、１５（１５Ａ，１５Ｂ）…コントローラ、
Ｔ１…ペアテーブル、Ｔ２…Ｓｎａｐｓｈｏｔ  Ｖｏｌｕｍｅテーブル、Ｔ３…ＰＯＯＬ  Ｖｏｌｕｍｅテーブル、Ｔ４…コピー差分テーブル、Ｔ５…データ一致差分テーブル、Ｔ６…制御テーブル、Ｔ７…外部接続マッピングテーブル。
【図１】
2008269374.tif 000003
【図２】
2008269374.tif 000004
【図３】
2008269374.tif 000005
【図４】
2008269374.tif 000006
【図５】
2008269374.tif 000007
【図６】
2008269374.tif 000008
【図７】
2008269374.tif 000009
【図８】
2008269374.tif 000010
【図９】
2008269374.tif 000011
【図１０】
2008269374.tif 000012
【図１１】
2008269374.tif 000013
【図１２】
2008269374.tif 000014
【図１３】
2008269374.tif 000015
【図１４】
2008269374.tif 000016
【図１５】
2008269374.tif 000017
【図１６】
2008269374.tif 000018
【図１７】
2008269374.tif 000019
【図１８】
2008269374.tif 000020
【図１９】
2008269374.tif 000021
【図２０】
2008269374.tif 000022
【図２１】
2008269374.tif 000023