(57)【特許請求の範囲】
【請求項１】
第１のボリュームと第２のボリュームとに記憶されるデータを等価状態と非等価状態に制御する制御装置において、
前記第１のボリュームへのデータ書き込みの有無を、前記第１のボリュームの記憶領域毎に記憶する第１の進捗情報と、前記第２のボリュームへのデータ書き込みの有無を、前記第２のボリュームの記憶領域毎に記憶する第２の進捗情報とを記憶する進捗情報記憶部と、
前記第１のボリュームと前記第２のボリュームとに記憶されるデータが非等価状態に制御されているときに前記第１のボリュームに読み出し障害が発生すると、読み出し障害が発生した第１の記憶領域を特定する特定部と、
非等価状態での、前記第１の記憶領域へのデータ書き込みの有無および前記第２のボリュームの前記第１の記憶領域に対応する第２の記憶領域へのデータ書き込みの有無を前記第１の進捗情報および前記第２の進捗情報に基づいて判断し、いずれの記憶領域にも非等価状態でのデータの書き込みがなかった場合、前記第２の記憶領域に記憶されているデータを前記第１の記憶領域にコピーし、
非等価状態から等価状態に移行したとき、前記第２の進捗情報を前記第１の進捗情報にマージし、マージされた前記第１の進捗情報においてデータ書き込みがあったことが示されている前記第１のボリュームの第３の記憶領域のデータを、前記第２のボリュームの前記第３の記憶領域に対応する第４の記憶領域にコピーし、
等価状態で前記第１のボリュームの第５の記憶領域にデータ書き込みが行われた場合は、前記第５の記憶領域にデータ書き込みが行われたことを前記第２の進捗情報に記憶し、前記第２の進捗情報に基づいて、前記第５の記憶領域に書き込まれたデータを前記第２のボリュームの前記第５の記憶領域に対応する第６の記憶領域にコピーするコピー制御部と、
を有することを特徴とする制御装置。
【請求項２】
前記コピー制御部は、等価状態で前記第２のボリュームの第７の記憶領域に読み出し障害が発生すると、前記第７の記憶領域で障害が発生したことを前記第１の進捗情報に記憶し、前記第１の進捗情報に基づいて、前記第１のボリュームの前記第７の記憶領域に対応する第８の記憶領域に書き込まれているデータを前記第７の記憶領域にコピーすることを特徴とする請求項１記載の制御装置。
【請求項３】
前記コピー制御部は、
等価状態で前記第５の記憶領域に読み出し障害が発生すると、前記第５の記憶領域で障害が発生したことを前記第２の進捗情報に記憶し、
前記第５の記憶領域に対する読み出し要求を受信し、前記第２の進捗情報に基づいて前記第５の記憶領域を障害発生箇所と判定したとき、前記第５の記憶領域のデータを前記第６の記憶領域にコピーする処理の実行中でない場合には、前記第６の記憶領域のデータを前記第５の記憶領域にコピーするとともに、当該データを前記読み出し要求に対する応答として送信する、
ことを特徴とする請求項１または２記載の制御装置。
【請求項４】
第１のボリュームと第２のボリュームとに記憶されるデータを等価状態と非等価状態に制御する制御方法において、
コンピュータが、
前記第１のボリュームと前記第２のボリュームとに記憶されるデータが非等価状態に制御されているときに前記第１のボリュームに読み出し障害が発生すると、読み出し障害が発生した第１の記憶領域を特定し、
非等価状態での、前記第１の記憶領域へのデータ書き込みの有無および前記第２のボリュームの前記第１の記憶領域に対応する第２の記憶領域へのデータ書き込みの有無を、前記第１のボリュームへのデータ書き込みの有無を前記第１のボリュームの記憶領域毎に記憶する第１の進捗情報および前記第２のボリュームへのデータ書き込みの有無を前記第２のボリュームの記憶領域毎に記憶する第２の進捗情報に基づいて判断し、いずれの記憶領域にも非等価状態でのデータの書き込みがなかった場合、前記第２の記憶領域に記憶されているデータを前記第１の記憶領域にコピーし、
非等価状態から等価状態に移行したとき、前記第２の進捗情報を前記第１の進捗情報にマージし、マージされた前記第１の進捗情報においてデータ書き込みがあったことが示されている前記第１のボリュームの第３の記憶領域のデータを、前記第２のボリュームの前記第３の記憶領域に対応する第４の記憶領域にコピーし、
等価状態で前記第１のボリュームの第５の記憶領域にデータ書き込みが行われた場合は、前記第５の記憶領域にデータ書き込みが行われたことを前記第２の進捗情報に記憶し、前記第２の進捗情報に基づいて、前記第５の記憶領域に書き込まれたデータを前記第２のボリュームの前記第５の記憶領域に対応する第６の記憶領域にコピーする、
ことを特徴とする制御方法。
【請求項５】
第１のボリュームを構成する第１の記憶部、および第２のボリュームを構成する第２の記憶部と、前記第１のボリュームおよび前記第２のボリュームに記憶されるデータを等価状態と非等価状態に制御する制御装置とを備えるストレージ装置において、
前記制御装置は、
前記第１のボリュームへのデータ書き込みの有無を、前記第１のボリュームの記憶領域毎に記憶する第１の進捗情報と、前記第２のボリュームへのデータ書き込みの有無を、前記第２のボリュームの記憶領域毎に記憶する第２の進捗情報とを記憶する進捗情報記憶部と、
前記第１のボリュームと前記第２のボリュームとに記憶されるデータが非等価状態に制御されているときに前記第１のボリュームに読み出し障害が発生すると、読み出し障害が発生した第１の記憶領域を特定する特定部と、
非等価状態での、前記第１の記憶領域へのデータ書き込みの有無および前記第２のボリュームの前記第１の記憶領域に対応する第２の記憶領域へのデータ書き込みの有無を前記第１の進捗情報および前記第２の進捗情報に基づいて判断し、いずれの記憶領域にも非等価状態でのデータの書き込みがなかった場合、前記第２の記憶領域に記憶されているデータを前記第１の記憶領域にコピーし、
非等価状態から等価状態に移行したとき、前記第２の進捗情報を前記第１の進捗情報にマージし、マージされた前記第１の進捗情報においてデータ書き込みがあったことが示されている前記第１のボリュームの第３の記憶領域のデータを、前記第２のボリュームの前記第３の記憶領域に対応する第４の記憶領域にコピーし、
等価状態で前記第１のボリュームの第５の記憶領域にデータ書き込みが行われた場合は、前記第５の記憶領域にデータ書き込みが行われたことを前記第２の進捗情報に記憶し、前記第２の進捗情報に基づいて、前記第５の記憶領域に書き込まれたデータを前記第２のボリュームの前記第５の記憶領域に対応する第６の記憶領域にコピーするコピー制御部と、
を有することを特徴とするストレージ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は制御装置、制御方法およびストレージ装置に関する。
【背景技術】
【０００２】
コンピュータシステムで取り扱う大容量のデータを記憶する記憶装置を複数用いたストレージ装置が広く使用されている。一般的なストレージ装置は、１つまたは複数のディスク装置と、これらのディスク装置に対するデータの書き込みおよびデータの読み出しを制御する制御装置を含む。
【０００３】
このストレージ装置のデータ記憶の信頼性を向上する方法の一例として、複数のディスク装置間のデータをミラー処理して冗長構成をとり、１つのディスク装置にエラーが発生した場合には他のディスクを参照してデータを修復する方法が知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１１０３０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ディスク装置に格納されているデータのバックアップ等の目的で、定期的にミラー処理を一時停止して、その時点でディスク装置に格納されているデータのバックアップを行う技術が知られている。
【０００６】
例えば、同期コピーさせた業務ボリュームと業務ボリュームに同期されている複製ボリュームを、ある時点で非同期状態とし、業務ボリュームで業務を継続しながら複製ボリュームをテープ装置へバックアップする技術が知られている。
【０００７】
この技術を用いてデータのバックアップを行う際に、ミラー処理が一時停止された状態（非等価状態）で業務ボリュームに不良セクタが発生し、値が保証できないデータが作成されてしまうと、そのデータが同期再開時に複製ボリュームに書き込まれてしまう。このため、複製ボリュームに記憶されるデータの信頼性が低下するという問題があった。
【０００８】
本発明はこのような点に鑑みてなされたものであり、非等価状態においてデータの修復を行う制御装置、制御方法およびストレージ装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、開示の制御装置が提供される。この制御装置は、第１のボリュームと第２のボリュームとに記憶されるデータを等価状態と非等価状態に制御する装置であり、特定部と、コピー制御部とを有している。
【００１０】
特定部は、第１のボリュームと第２のボリュームとに記憶されるデータが非等価状態に制御されているときに第１のボリュームに読み出し障害が発生すると、読み出し障害が発生した第１の記憶領域を特定する。
【００１１】
コピー制御部は、非等価状態での、第１のボリュームの第１の記憶領域へのデータ書き込みの有無および第２のボリュームの第１の記憶領域に対応する第２の記憶領域へのデータ書き込みの有無を判断し、いずれの記憶領域にも非等価状態でのデータの書き込みがなかった場合、第２のボリュームの第２の記憶領域に記憶されているデータを、第１のボリュームの第１の記憶領域にコピーする。
【発明の効果】
【００１２】
非等価状態においてデータの修復を行うことができる。
【図面の簡単な説明】
【００１３】
【図１】第１の実施の形態のストレージ装置を示す図である。
【図２】第２の実施の形態のストレージシステムを示すブロック図である。
【図３】第２の実施の形態の制御装置の機能を示すブロック図である。
【図４】セッション管理情報を説明する図である。
【図５】ビットマップ管理情報を説明する図である。
【図６】アクティブ状態においてコピー元論理ボリュームにバッドデータが発生した場合のコピー制御部の処理を説明する図である。
【図７】アクティブ状態においてコピー先論理ボリュームにバッドデータが発生した場合のコピー制御部の処理を説明する図である。
【図８】サスペンド状態においてコピー元論理ボリュームにバッドデータが発生した場合のコピー制御部の処理を説明する図である。
【図９】サスペンド状態においてコピー先論理ボリュームにバッドデータが発生した場合のコピー制御部の処理を説明する図である。
【図１０】バッドデータのリカバリ処理を示すフローチャートである。
【図１１】コピー元リカバリ処理を示すフローチャートである。
【図１２】コピー先リカバリ処理を示すフローチャートである。
【図１３】サスペンド状態からレジューム状態に遷移するときのコピー制御部の処理を示すフローチャートである。
【図１４】Ｉ／Ｏ処理を示すフローチャートである。
【図１５】データ読み出し処理を説明するフローチャートである。
【図１６】コピー先論理ボリュームライト処理を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、実施の形態のストレージ装置を、図面を参照して詳細に説明する。
＜第１の実施の形態＞
図１は、第１の実施の形態のストレージ装置を示す図である。
【００１５】
第１の実施の形態のストレージ装置１は、電気通信回線や、光通信回線等を介してホスト装置２に接続されている。
ストレージ装置１は、制御装置（コンピュータ）３と、第１のボリューム４ａと第２のボリューム４ｂとを有している。
【００１６】
第１のボリューム４ａと第２のボリューム４ｂは、ホスト装置２から送られてくるデータを記憶可能な記憶領域を有する。この第１のボリューム４ａと第２のボリューム４ｂは、１つまたは複数のＨＤＤ（Hard Disk Drive）や、ＳＳＤ（Solid State Drive）等の一部または全部の記憶領域で構成されている。
【００１７】
この制御装置３は、特定部３ａとコピー制御部３ｂとを有している。なお、特定部３ａとコピー制御部３ｂは、制御装置３が有する図示しないＣＰＵ（Central Processing Unit）が備える機能により実現することができる。
【００１８】
コピー制御部３ｂは、第１のボリューム４ａと第２のボリューム４ｂに記憶されるデータを二重化状態に保つ等価状態と第１のボリューム４ａと第２のボリューム４ｂの二重化状態を切り離して第２のボリューム４ｂを独立させる非等価状態に制御する。具体的には、コピー制御部３ｂは、第１のボリューム４ａと第２のボリューム４ｂを同期させることで、第１のボリューム４ａと第２のボリューム４ｂに記憶されるデータを等価状態に保つ。そして、コピー制御部３ｂは、第２のボリューム４ｂのバックアップを開始する時点で第１のボリューム４ａと第２のボリューム４ｂの同期状態を切り離して第２のボリューム４ｂを独立させることで、非等価状態に移行する。非等価状態に移行した直後の第２のボリューム４ｂには、同期を停止した時点の第１のボリューム４ａと同一のデータが記憶されている。このため、第１のボリューム４ａにホスト装置２から送られてくるデータを記憶しながら第２のボリューム４ｂの内容を図示しないテープ装置等にバックアップすることができる。
【００１９】
コピー制御部３ｂは、等価状態において、第１のボリューム４ａの記憶領域毎に第２のボリューム４ｂへの１回目のデータコピーの進捗を記憶する第１のビットマップ３ｂ１と第２のボリューム４ｂへの２回目以降のデータコピーの進捗を記憶する第２のビットマップ３ｂ２を有している。第１のビットマップ３ｂ１は第１の進捗情報記憶部の一例であり、第２のビットマップ３ｂ２は第２の進捗情報記憶部の一例である。
【００２０】
第１のビットマップ３ｂ１および第２のビットマップ３ｂ２は、それぞれ第１のボリューム４ａの所定箇所の記憶領域毎に第２のボリューム４ｂへのデータコピーの進捗を示すビットを有している。ビットが「１」に設定された記憶領域は、コピー未完了であることを示している。ビットが「０」に設定された記憶領域は、コピー完了であることを示している。
【００２１】
特定部３ａは、第１のボリューム４ａと第２のボリューム４ｂに記憶されるデータが非等価状態であるときに第１のボリューム４ａに読み出し障害が発生すると、読み出し障害が発生した第１の記憶領域Ａ１を特定する。
【００２２】
非等価状態では、次のバックアップを行うため、更新部分のみのコピーを行う。具体的には、コピー制御部３ｂは、非等価状態では第１のビットマップ３ｂ１と第２のビットマップ３ｂ２の機能を等価状態での機能と変える。具体的には、非等価状態では、第１のビットマップ３ｂ１は、第１のボリューム４ａへのデータ書き込みの有無を記憶するために使用され、第２のビットマップ３ｂ２を第１のボリューム４ｂへのデータ書き込みの有無を記憶するために使用する。
【００２３】
特定部３ａが、読み出し障害が発生した第１の記憶領域Ａ１を特定すると、コピー制御部３ｂは、特定部３ａが特定した第１の記憶領域Ａ１に対応する第１のビットマップ３ｂ１のビット（図１では、ビット５ａ）を参照する。そして、コピー制御部３ｂは、特定部３ａが特定した第１の記憶領域Ａ１へのデータの書き込みがあったか否かを判断する。また、コピー制御部３ｂは、ビット５ａに対応する第２のビットマップ３ｂ２のビット５ｂを参照する。そして、コピー制御部３ｂは、ビット５ｂに対応する第２の記憶領域Ａ２へのデータの書き込みがあったか否かを判断する。そして、コピー制御部３ｂは、ビット５ａおよびビット５ｂがいずれも「０」に設定されている場合、第２のボリューム４ｂのビット５ｂに対応する第２の記憶領域Ａ２に記憶されているデータを、第１のボリューム４ａの第１の記憶領域Ａ１にコピーする。この処理により、第１のボリューム４ａの読み出し障害が発生した第１の記憶領域Ａ１に記憶されているデータを修復することができる。
【００２４】
また、コピー制御部３ｂは、第１のボリューム４ａと第２のボリューム４ｂに記憶される情報が非等価状態から等価状態に移行したときは、第１のビットマップ３ｂ１と第２のビットマップ３ｂ２を等価状態の機能に戻す。具体的には、コピー制御部３ｂは、第２のビットマップ３ｂ２の各ビットの内容を第１のビットマップ３ｂ１の各ビットにマージ（併合）する。この処理により、第１のビットマップ３ｂ１と第２のビットマップ３ｂ２それぞれの「１」に設定されたビットが、第１のビットマップ３ｂ１に反映される。マージ後は、第２のビットマップ３ｂ２のビットを全て「０」に設定する。
【００２５】
コピー制御部３ｂは、非等価状態から等価状態に移行後に、第１のビットマップ３ｂ１を参照し、ビットが「１」に設定された第１のボリューム４ａの記憶領域に記憶されているデータを、第２のボリューム４ｂにコピーする処理（差分コピー処理）を行う。
【００２６】
以下、第２の実施の形態において、開示のストレージ装置をより具体的に説明する。
＜第２の実施の形態＞
図２は、第２の実施の形態のストレージシステムを示すブロック図である。
【００２７】
ストレージシステム１０００は、ホスト装置５０と、このホスト装置５０にファイバチャネル（ＦＣ：Fibre Channel）スイッチ５１を介して接続されたストレージ装置１００とを有している。なお、図２では１つのホスト装置５０がストレージ装置１００に接続されているが、複数のホスト装置が、ストレージ装置１００に接続されていてもよい。
【００２８】
ストレージ装置１００は、それぞれが複数のＨＤＤ２０を備えるドライブエンクロージャ（ＤＥ：Drive Enclosure）２０ａと、このドライブエンクロージャ２０ａの物理記憶領域をＲＡＩＤ（Redundant Arrays of Inexpensive/Independent Disks）によって管理する制御モジュール（ＣＭ：Controller Module）１０ａ、１０ｂとを有している。なお、本実施の形態では、ドライブエンクロージャ２０ａが備える記憶媒体としては、ＨＤＤ２０を例示したが、ＨＤＤ２０に限らず、ＳＳＤ等、他の記憶媒体を用いてもよい。以下、ドライブエンクロージャ２０ａが備える複数のＨＤＤ２０を区別しない場合は、「ＨＤＤ２０群」と言う。ＨＤＤ２０群の総容量は、例えば６００ＧＢ（Giga Byte）〜２４０ＴＢ（Tera Byte）である。
【００２９】
ストレージ装置１００は、２つの制御モジュール１０ａ、１０ｂを運用に使用することで、冗長性が確保されている。なお、ストレージ装置１００が備える制御モジュールの数は、２つに限定されず、３つ以上の制御モジュールにより冗長性が確保されていてもよいし、制御モジュール１０ａのみを使用した構成であってもよい。
【００３０】
制御モジュール１０ａ、１０ｂは、それぞれ制御装置の一例であり、制御モジュール１０ａ、１０ｂは、それぞれ同じハードウェア構成によって実現される。
制御モジュール１０ａ、１０ｂは、それぞれ、ホスト装置５０からのデータアクセス要求に応じてドライブエンクロージャ２０ａが有するＨＤＤ２０の物理記憶領域へのデータアクセスをＲＡＩＤによって制御する。
【００３１】
制御モジュール１０ａ、１０ｂは、それぞれ同じハードウェア構成によって実現されるため、代表的に、制御モジュール１０ａのハードウェア構成を説明する。
制御モジュール１０ａは、ＣＰＵ１０１と、ＲＡＭ（Random Access Memory）１０２と、フラッシュＲＯＭ（Read Only Memory）１０３と、キャッシュメモリ１０４と、チャネルアダプタ（ＣＡ：Channel Adapter）１０５と、ＢＲＴ（Back end RouTer）１０６とを備えている。
【００３２】
ＣＰＵ１０１は、フラッシュＲＯＭ１０３等に記憶されたプログラムを実行することにより、制御モジュール１０ａ全体を統括的に制御する。ＲＡＭ１０２は、ＣＰＵ１０１に実行させるプログラムの少なくとも一部や、プログラムによる処理に必要な各種データを一時的に記憶する。フラッシュＲＯＭ１０３は、不揮発性のメモリであり、ＣＰＵ１０１により実行されるプログラムや、プログラムの実行に必要な各種のデータ等を記憶する。
【００３３】
また、フラッシュＲＯＭ１０３は、ストレージ装置１００の停電時等にキャッシュメモリ１０４に記憶されているデータの退避先となる。
キャッシュメモリ１０４は、ＨＤＤ２０群に書き込まれているデータやＨＤＤ２０群から読み出したデータを一時的に記憶する。
【００３４】
そして、制御モジュール１０ａは、例えばホスト装置５０からのデータ読み出し命令を受けたときに、読み出し対象のデータがキャッシュメモリ１０４に記憶されているか否かを判断する。読み出し対象のデータがキャッシュメモリ１０４に記憶されていれば、制御モジュール１０ａは、キャッシュメモリ１０４に記憶されている読み出し対象のデータをホスト装置５０に送る。読み出し対象のデータをＨＤＤ２０群から読み出す場合に比べ、データを迅速にホスト装置５０に送ることができる。
【００３５】
また、キャッシュメモリ１０４には、ＣＰＵ１０１による処理に必要なデータが一時的に記憶されてもよい。このキャッシュメモリ１０４としては、例えば、ＳＲＡＭ（Static Random Access Memory）等の揮発性の半導体装置が挙げられる。また、キャッシュメモリ１０４の記憶容量は、特に限定されないが、一例として２〜６４ＧＢ程度である。
【００３６】
チャネルアダプタ１０５は、ファイバチャネルスイッチ５１に接続され、ファイバチャネルスイッチ５１を介してホスト装置５０のチャネルに接続される。チャネルアダプタ１０５は、ホスト装置５０と制御モジュール１０ａとの間でデータを送受信するインタフェース機能を提供する。
【００３７】
ＢＲＴ１０６は、ドライブエンクロージャ２０ａに接続されている。このＢＲＴ１０６は、ドライブエンクロージャ２０ａが備えるＨＤＤ２０群とキャッシュメモリ１０４との間でデータを送受信するインタフェース機能を提供する。制御モジュール１０ａは、ＢＲＴ１０６を介してドライブエンクロージャ２０ａが備えるＨＤＤ２０群との間でデータの送受信を行う。
【００３８】
制御モジュール１０ａ、１０ｂは、ルータ５２を介して互いに接続されている。例えば、ＨＤＤ２０群に書き込みを要求するデータがホスト装置５０からファイバチャネルスイッチ５１を介して制御モジュール１０ａに送信されると、ＣＰＵ１０１は、受信したデータをキャッシュメモリ１０４に格納する。また、ＣＰＵ１０１はデータの格納と共に、受信したデータを、ルータ５２を介して制御モジュール１０ｂに送信する。そして、制御モジュール１０ｂは、制御モジュール１０ｂが有するＣＰＵが受信したデータを制御モジュール１０ｂが有するキャッシュメモリに格納する。この処理によって、制御モジュール１０ａ内のキャッシュメモリ１０４と制御モジュール１０ｂ内のキャッシュメモリとに同一のデータが記憶される。
【００３９】
ドライブエンクロージャ２０ａには、ドライブエンクロージャ２０ａが備える複数のＨＤＤ２０のうち、１つ、または複数のＨＤＤ２０により構成されたＲＡＩＤグループが形成されている。このＲＡＩＤグループは、「仮想ディスク」、「ＲＬＵ（RAID Logical Unit）」等と呼ばれる場合もある。
【００４０】
図２では、ＲＡＩＤ５を構成する２つのＲＡＩＤグループ２１、２２を示している。なお、ＲＡＩＤグループ２１のＲＡＩＤ構成は、一例であり、図示のＲＡＩＤ構成に限定されない。例えば、ＲＡＩＤグループ２１、２２は、任意の個数のＨＤＤ２０を有することができる。また、ＲＡＩＤグループ２１、２２は、ＲＡＩＤ６等、任意のＲＡＩＤ方式で構成することができる。
【００４１】
例えば、ＲＡＩＤグループ２１には、ＲＡＩＤグループ２１を構成するＨＤＤ２０の記憶領域が論理的に分割され、論理ボリュームが構成されている。分割された各論理ボリュームには、ＬＵＮ（Logical Unit Number）が設定されている。
【００４２】
また、ドライブエンクロージャ２０ａには、ＨＤＤ２０の障害の発生に備えてＨＤＤ２４が用意されている。制御モジュール１０ａ、１０ｂは、例えば、ＨＤＤ２０の故障等により、ＨＤＤ２０のデータの読み出しや、ＨＤＤ２０へのデータの書き込みが１回または複数回失敗した場合に障害が発生したと判断する。このＨＤＤ２４は、ストレージ装置１００の運用時には、通電状態で待機している。このＨＤＤ２４はホットスペアディスクと言われるものである。ＲＡＩＤグループ２１、２２内のいずれかのＨＤＤ２０に障害が発生すると、障害が発生したＨＤＤ２０を管理する制御モジュールが、障害が発生したＨＤＤ２０に記憶されているデータ（と同じデータ）をＨＤＤ２４に再構築するリビルド処理を実行する。障害が発生したＨＤＤ２０が、正常なＨＤＤ２０に交換されると、障害が発生したＨＤＤ２０を管理する制御モジュールは、ＨＤＤ２４に記憶されているデータを、交換した正常なＨＤＤ２０にコピーバック（書き戻し）する処理を実行する。なお、コピーバック処理は、バックグラウンドで行われる。
【００４３】
図２に示すようなハードウェア構成のストレージ装置１００内には、以下のような機能が設けられる。
図３は、第２の実施の形態の制御装置の機能を示すブロック図である。
【００４４】
制御モジュール１０ａは、ＲＡＩＤ制御部１１と、セッション管理情報記憶部１２と、ビットマップ管理情報記憶部１３と、コピー制御部１４とを有している。なお、ＲＡＩＤ制御部１１は、特定部の一例である。
【００４５】
ＲＡＩＤ制御部１１は、ホスト装置５０からの論理ボリューム３１へのＩ／Ｏアクセスを制御する。ここで、論理ボリューム３１は、ＲＡＩＤグループ２１を構成するＨＤＤ２０の一部または全部の記憶領域で構成されている。
【００４６】
ＲＡＩＤ制御部１１は、ホスト装置５０が発行したコピー設定コマンドに応じてコピー先の論理ボリューム（以下、コピー先論理ボリュームと言う）３２にコピー元の論理ボリューム（以下、コピー元論理ボリュームと言う）３１に格納されているデータと等価なデータを筐体内で等価コピー（ＥＣ：Equivalent Copy）するようコピー制御部１４に指示する。ここで、コピー先論理ボリューム３２は、ＲＡＩＤグループ２２を構成するＨＤＤ２０の一部または全部の記憶領域で構成されている。
【００４７】
以下、等価なローカルコピーを「ＥＣ」とも言う。ＥＣの切り離しを実施した際は、次のバックアップを採取するために、最初から全面コピーとなるため、更新部分のみのコピーが可能なサスペンド（Suspend）機能、およびレジューム（Resume）機能を使用する。サスペンド機能は、ＥＣによる等価性維持状態を一時中断する機能である。レジューム機能は、サスペンド機能により一時中断した等価性維持状態を再開する機能である。ＥＣ機能を使用し、一時中断状態からの差分コピーを行うことによって、より高速な同期型バックアップ運用が可能となる。
【００４８】
また、ＲＡＩＤ制御部１１は、Ｉ／Ｏアクセス中にコピー元論理ボリューム３１またはコピー先論理ボリューム３２へのディスク異常が発生すると、前述したリビルド処理を行う。具体的には、ＲＡＩＤ制御部１１は、コピー元論理ボリューム３１またはコピー先論理ボリューム３２の一部を構成するＨＤＤ２０が障害の発生により切り離されたとき、残りのＨＤＤ２０に記憶されたデータを使用してＨＤＤ２４にデータをリビルドする。ＲＡＩＤ制御部１１は、データの復旧時にデータが読み出せない記憶領域に対し、データが読み出せなかったことを識別するデータ（以下、本実施の形態では、「バッドデータ」と言う）を作成する。
【００４９】
ＲＡＩＤ制御部１１は、データのリビルド中にコピー元論理ボリューム３１またはコピー先論理ボリューム３２にバッドデータを作成すると、通知情報をコピー制御部１４に通知する。この通知情報には、（１）バッドデータが発生したＲＡＩＤグループの番号、（２）バッドデータが発生したＲＡＩＤグループ内の論理ボリュームを特定する番号、（３）バッドデータが発生した論理ボリュームの発生領域開始ＬＢＡ（Logical Block Address）、および（４）バッドデータが発生したブロック数が含まれる。
【００５０】
セッション管理情報記憶部１２は、ホスト装置５０が発行したコマンドに基づいてＲＡＩＤ制御部１１が作成したＥＣのセッション管理情報を記憶する。
ビットマップ管理情報記憶部１３は、データコピーの進捗を管理するビットマップ毎に設定されるビットマップ管理情報を記憶する。
【００５１】
ビットマップの種別には、等価状態において、コピー元の論理ボリュームの所定のサイズの記憶領域毎にコピー先の論理ボリュームへの１回目のデータコピーの進捗を記憶する初期コピー用ビットマップとＩ／Ｏを契機としたコピー先の論理ボリュームへの２回目以降のデータコピーの進捗を記憶するＩ／Ｏ延長用ビットマップとが存在する。
【００５２】
コピー制御部１４は、コピー元論理ボリューム３１とコピー先論理ボリューム３２に記憶されるデータを等価状態と非等価状態に制御する。
次に、セッション管理情報記憶部１２に記憶されているセッション管理情報を説明する。
【００５３】
図４は、セッション管理情報を説明する図である。
図４では、セッション管理情報がテーブル化されている。
図４に示すセッション管理テーブル１２ａには、テーブル番号、コピー元セッションＩＤ、コピー種別、ステータス、フェーズ、コピー元論理ボリューム、コピー先論理ボリューム、コピー元論理ボリュームの開始ＬＢＡ、コピー先論理ボリュームの開始ＬＢＡ、コピーサイズ、初期コピー用先頭オフセット、初期コピー用ビットマップ枚数、Ｉ／Ｏ延長用先頭オフセット、およびＩ／Ｏ延長用ビットマップ枚数の欄が設けられている。
【００５４】
テーブル番号の欄には、当該セッション管理テーブル１２ａを識別する番号が設定される。
コピー元セッションＩＤの欄には、コピー元の装置（制御モジュール１０ａ）内で管理されるセッションを識別するＩＤが設定される。
【００５５】
コピー種別の欄には、当該セッション管理テーブル１２ａが管理するセッション（以下、「当該セッション」と言う）の種別を示す値が設定される。例えば、当該セッションの種別がＥＣである場合は、「０ｘ０１」が設定される。当該セッションの種別が筐体間の等価コピー（ＲＥＣ：Remote Equivalent Copy）である場合は「０ｘ００」が設定される。
【００５６】
ステータスの欄には、当該セッションの状態を示す値が設定される。例えば、アイドル（Idol）状態である場合は「０ｘ００」が設定される。予約（Reserved）状態である場合は「０ｘ０１」が設定される。ＥＣによるボリューム間の等価性を維持している状態であるアクティブ（Active）状態である場合は「０ｘ０２」が設定される。エラーサスペンド（Error Suspend）状態である場合は「０ｘ０３」が設定される。ＥＣによるボリューム間の等価性を維持している状態を一時中断しているサスペンド状態である場合は「０ｘ０４」が設定される。
【００５７】
フェーズの欄には、当該セッションのフェーズを示す値が設定される。例えば、コピー元論理ボリューム３１からコピー先論理ボリューム３２にデータをコピー中の場合は「０ｘ０１」が設定される。コピー元論理ボリューム３１からコピー先論理ボリューム３２へのコピーが完了した（等価（Equivalent）である）場合は「０ｘ０２」が設定される。
【００５８】
コピー元論理ボリュームの欄には、データコピー元の論理ボリュームを識別する値が設定される。
コピー先論理ボリュームの欄には、データコピー先の論理ボリュームを識別する値が設定される。
【００５９】
コピー元論理ボリュームの開始ＬＢＡの欄には、コピー元論理ボリュームのコピー開始位置（論理ブロックアドレス）を示す値が設定される。
コピー先論理ボリュームの開始ＬＢＡの欄には、コピー先論理ボリュームのコピー開始位置を示す値が設定される。
【００６０】
コピーサイズの欄には、コピー容量が、ブロック単位で設定される。
初期コピー用先頭オフセットの欄には、当該セッションのビットマップを管理する初期コピー用のビットマップ管理テーブルの先頭テーブルの位置情報が設定される。
【００６１】
初期コピー用ビットマップ枚数の欄には、当該セッションで使用される初期コピー用ビットマップの枚数が設定される。１つのビットマップが管理できる記憶領域のサイズは一定である。このため、論理ボリュームの記憶領域のサイズが、１つのビットマップで管理できるサイズを超えている場合、記憶領域に応じて複数のサイズのビットマップが用意される。
【００６２】
Ｉ／Ｏ延長用先頭オフセットの欄には、当該セッションのビットマップを管理するＩ／Ｏ延長用のビットマップ管理テーブルの先頭テーブルの位置情報が設定される。
Ｉ／Ｏ延長用ビットマップ枚数の欄には、当該セッションで使用されるＩ／Ｏ延長用ビットマップ枚数が設定される。なお、初期コピー用ビットマップ枚数とＩ／Ｏ延長用ビットマップ枚数は同じ枚数となる。
【００６３】
次に、ビットマップ管理情報を説明する。
図５は、ビットマップ管理情報を説明する図である。
図５では、ビットマップ管理情報がテーブル化されている。
【００６４】
図５に示すビットマップ管理テーブル１３ａには、フラグ、セッション管理テーブル番号およびビットマップアドレスの欄が設けられている。
フラグの欄には、当該ビットマップ管理テーブル１３ａに関連づけられているビットマップが初期コピー用かＩ／Ｏ延長用かを識別する値が設定される。
【００６５】
セッション管理テーブル番号の欄には、当該ビットマップ管理テーブル１３ａを使用しているセッション管理テーブル１２ａのテーブル番号が設定される。
ビットマップアドレスの欄には、当該ビットマップ管理テーブル１３ａが管理するビットマップの先頭アドレスが設定される。
【００６６】
以下、コピー制御部１４の処理を説明する。
図６は、アクティブ状態においてコピー元論理ボリュームにバッドデータが発生した場合のコピー制御部の処理を説明する図である。
【００６７】
コピー元論理ボリューム３１およびコピー先論理ボリューム３２の各記憶領域に形成された各ブロックの先頭ページには、当該ブロックがバッドデータであるか否かを示すバッドデータ情報（フラグ）ｆ１が記憶されている。
【００６８】
図６（ａ）に示すように、コピー元論理ボリューム３１の所定の領域にバッドデータＤ０が発生した場合、ＲＡＩＤ制御部１１は、バッドデータＤ０が発生した領域（以下、「発生領域」と言う）をコピー制御部１４に通知する。図６（ａ）では、発生領域に対応する初期コピー用ビットマップＢ１のビットにアンダーラインを引いている。コピー制御部１４は、Ｉ／Ｏ延長用ビットマップＢ２を参照し、発生領域に対応するビットが「０」（コピー完了）であれば、発生領域に対応するＩ／Ｏ延長用ビットマップＢ２のビットを「１」に設定する。これにより、後述する図６（ｃ）の処理を実行することができる。
【００６９】
図６（ｂ）は、図６（ａ）の処理を行った後にＲＡＩＤ制御部１１が、コピー元論理ボリューム３１の発生領域に対する書き込み要求をホスト装置５０から受け取った場合を示している。ＲＡＩＤ制御部１１は、コピー制御部１４に受け取ったデータをコピー元論理ボリューム３１の発生領域に上書きさせることで、バッドデータＤ０を消去することができる。また、アクティブ状態の書き込みなので、コピー制御部１４は、受け取ったデータを、コピー先論理ボリューム３２のＩ／Ｏ延長用ビットマップＢ２のビットを「１」に設定した記憶領域にコピーする。データのコピーが完了すると、コピー制御部１４は、Ｉ／Ｏ延長用ビットマップＢ２のビットを「１」に設定した箇所を「０」に設定する。
【００７０】
図６（ｃ）は、図６（ａ）の処理を行った後にコピー元論理ボリューム３１の発生領域に対する読み出し要求を受け取った場合を示している。コピー制御部１４は、Ｉ／Ｏ延長用ビットマップＢ２の発生領域に対応するビットを調べる。Ｉ／Ｏ要因でなくビットが「１」に設定されている場合は、バッドデータＤ０の発生によりビットが「１」に設定されていると判断する。なお、Ｉ／Ｏ要因であるか否かは、例えばビットが「１」に設定されている範囲に対するコピー処理が動いている場合は、Ｉ／Ｏ要因であると判断することができる。他方、ビットが「１」に設定されている範囲に対するコピー処理が動いていない場合は、Ｉ／Ｏ要因ではないと判断することができる。この場合、コピー制御部１４は、発生領域に対応するコピー先論理ボリューム３２の記憶領域に記憶されているデータＤ２をコピー元論理ボリューム３１にコピーする。コピーが完了すると、コピー制御部１４は、発生領域に対応するＩ／Ｏ延長用ビットマップＢ２のビットを「０」に設定する。その後、ＲＡＩＤ制御部１１は、コピー元論理ボリューム３１の発生領域に記憶されているデータＤ２をホスト装置５０に読み出す。
【００７１】
図７は、アクティブ状態においてコピー先論理ボリュームにバッドデータが発生した場合のコピー制御部の処理を説明する図である。
コピー先論理ボリューム３２の所定の領域にバッドデータＤ３が発生した場合、ＲＡＩＤ制御部１１は、発生領域をコピー制御部１４に通知し、初期コピー用ビットマップＢ１の発生領域に対応するビットを「１」に設定する。なお、Ｉ／Ｏ延長用ビットマップＢ２の発生領域に対応するビットを「１」に設定してもよい。ビットを「１」に設定することにより、コピー中にエラーが発生した場合でも、エラーが復旧した後に発生領域を識別できる。従って、エラーリカバリが可能となる。コピー制御部１４は、コピー元論理ボリューム３１から初期コピーがされているかどうかにかかわらず、発生領域に対応するコピー元論理ボリューム３１の記憶領域に記憶されているデータＤ４をコピー先論理ボリューム３２にコピーする。データＤ４のコピーが完了すると、発生領域に対応する初期コピー用ビットマップＢ１のビットを「０」に設定する。
【００７２】
図８は、サスペンド状態においてコピー元論理ボリュームにバッドデータが発生した場合のコピー制御部の処理を説明する図である。
サスペンド状態において、コピー制御部１４は、初期コピー用ビットマップＢ１とＩ／Ｏ延長用ビットマップＢ２を、アクティブ状態とは異なる役割で使用する。具体的には、コピー制御部１４は、初期コピー用ビットマップＢ１をコピー元論理ボリューム３１の更新の有無を判断するビットマップに使用し、Ｉ／Ｏ延長用ビットマップＢ２を、コピー先論理ボリューム３２の更新の有無を判断するビットマップに使用する。
【００７３】
コピー元論理ボリューム３１の所定の領域にバッドデータＤ５が発生した場合、ＲＡＩＤ制御部１１は、発生領域をコピー制御部１４に通知する。
コピー制御部１４は、コピー元論理ボリューム３１のバッドデータ発生領域と、発生領域に対応するコピー先論理ボリューム３２の記憶領域のいずれかにデータの更新が発生したか否かを判断する。具体的には、コピー制御部１４は、初期コピー用ビットマップＢ１の発生領域に対応するビットとＩ／Ｏ延長用ビットマップＢ２の発生領域に対応するビットを確認する。初期コピー用ビットマップＢ１とＩ／Ｏ延長用ビットマップＢ２の発生領域に対応するビットのいずれかが「１」であれば、データの更新が発生したと判断する。初期コピー用ビットマップＢ１とＩ／Ｏ延長用ビットマップＢ２を、アクティブ状態とは異なる役割で使用することにより、データの更新が発生したか否かを容易に判断することができる。
【００７４】
コピー元論理ボリューム３１とコピー先論理ボリューム３２の該当領域のいずれにもデータの更新がなければ、コピー制御部１４は、サスペンド状態であるが、発生領域に対応するコピー先論理ボリューム３２の記憶領域に記憶されているデータＤ６を発生領域に上書きする。なお、この上書きは、バックグラウンドで行われる。上書きにより、コピー元論理ボリューム３１の発生領域のデータを復旧することができる。
【００７５】
コピー制御部１４は、サスペンド状態から等価性を維持している状態へ移行したレジューム状態において、初期コピー用ビットマップＢ１とＩ／Ｏ延長用ビットマップＢ２の役割を元に戻す。具体的には、コピー制御部１４は、Ｉ／Ｏ延長用ビットマップＢ２の各ビットの状態を、初期コピー用ビットマップＢ１の対応する各ビットにマージする。
【００７６】
コピー制御部１４は、レジューム状態では、初期コピー用ビットマップＢ１を参照し、ビットが「１」に設定されたコピー元論理ボリューム３１の記憶領域に記憶されているデータを、コピー先論理ボリューム３２にコピーする処理（差分コピー処理）を行う。
【００７７】
図９は、サスペンド状態においてコピー先論理ボリュームにバッドデータが発生した場合のコピー制御部の処理を説明する図である。
コピー先論理ボリューム３２の所定の領域にバッドデータＤ７が発生した場合、ＲＡＩＤ制御部１１は、発生領域をコピー制御部１４に通知する。
【００７８】
コピー制御部１４は、図８にて説明した場合と同様に、コピー元論理ボリューム３１の発生領域と、発生領域に対応するコピー先論理ボリューム３２の記憶領域のいずれかにデータの更新が発生したか否かを判断する。コピー先論理ボリューム３２でバッドデータＤ７が発生した時に、発生領域のデータの更新がコピー元論理ボリューム３１およびコピー先論理ボリューム３２で発生していなければ、発生領域のデータは、サスペンド時のままである。従って、コピー制御部１４は、サスペンド状態であるが、発生領域に対応するコピー元論理ボリューム３１の記憶領域に記憶されているデータＤ８を発生領域に上書きする。なお、この上書きは、バックグラウンドで行われる。上書きにより、コピー先論理ボリューム３２の発生領域のデータを復旧することができる。
【００７９】
その後、コピー制御部１４は、サスペンド状態から等価性を維持している状態へ移行したレジューム状態において、初期コピー用ビットマップＢ１とＩ／Ｏ延長用ビットマップＢ２の役割を元に戻す。
【００８０】
次に、ＲＡＩＤ制御部１１から通知情報を受け取ったコピー制御部１４が実行するバッドデータのリカバリ処理を、フローチャートを用いて説明する。
図１０は、バッドデータのリカバリ処理を示すフローチャートである。
【００８１】
［ステップＳ１］  コピー制御部１４は、セッション管理情報記憶部１２に記憶されている全てのセッション管理テーブル１２ａのコピー元論理ボリュームの開始ＬＢＡの欄およびコピー種別の欄を参照し、通知情報に含まれるバッドデータが発生した論理ボリュームの発生領域開始ＬＢＡが、ＥＣによるコピー対象か否かを判断する。具体的には、通知情報に含まれるバッドデータが発生した論理ボリュームの発生領域開始ＬＢＡを含むＬＢＡがコピー元論理ボリュームの開始ＬＢＡの欄に設定されており、コピー種別の欄に「０ｘ０１」が設定されているセッション管理テーブル１２ａ（以下、「特定セッション管理テーブル」と言う）が存在すれば、コピー制御部１４は、発生領域開始ＬＢＡがＥＣによるコピー対象であると判断する。発生領域開始ＬＢＡがＥＣによるコピー対象である場合（ステップＳ１のＹｅｓ）、ステップＳ２に遷移する。発生領域開始ＬＢＡがＥＣによるコピー対象ではない場合（ステップＳ１のＮｏ）、図１０の処理を終了する。なお、発生領域開始ＬＢＡがＥＣコピー対象ではない場合、コピー制御部１４は、ストレージ装置１００を管理する管理装置（図示せず）にエラーを送信するようにしてもよい。
【００８２】
［ステップＳ２］  コピー制御部１４は、特定セッション管理テーブル１２ａのコピー元論理ボリュームの欄を参照し、通知情報に含まれるバッドデータが発生したＲＡＩＤグループ内の論理ボリュームを特定する番号が、コピー元論理ボリューム３１を示す番号か否かを判断する。通知情報に含まれるバッドデータが発生したＲＡＩＤグループ内の論理ボリュームを特定する番号がコピー元論理ボリューム３１を示す番号である場合（ステップＳ２のＹｅｓ）、ステップＳ３に遷移する。通知情報に含まれるバッドデータが発生したＲＡＩＤグループ内の論理ボリュームを特定する番号が、コピー元論理ボリューム３１を示す番号ではない場合、すなわち、通知情報に含まれるバッドデータが発生したＲＡＩＤグループ内の論理ボリュームを特定する番号が、コピー先論理ボリューム３２を示す番号である場合（ステップＳ２のＮｏ）、ステップＳ４に遷移する。
【００８３】
［ステップＳ３］  コピー制御部１４は、コピー元論理ボリューム３１に発生したバッドデータをリカバリするコピー元リカバリ処理を行う。なお、コピー元リカバリ処理については、後述する。コピー元リカバリ処理が終了すると、図１０の処理を終了する。
【００８４】
［ステップＳ４］  コピー制御部１４は、コピー先論理ボリューム３２に発生したバッドデータをリカバリするコピー先リカバリ処理を行う。なお、コピー先リカバリ処理については、後述する。コピー先リカバリ処理が終了すると、図１０の処理を終了する。
【００８５】
次に、図１０のステップＳ３のコピー元リカバリ処理を説明する。
図１１は、コピー元リカバリ処理を示すフローチャートである。
［ステップＳ３ａ］  コピー制御部１４は、特定セッション管理テーブル１２ａのステータスの欄を参照し、コピー元論理ボリューム３１を含むＥＣセッション（以下、図１１において「対象ＥＣセッション」と言う）の状態がアクティブ（「０ｘ０２」）か否かを判断する。対象ＥＣセッションの状態がアクティブである場合（ステップＳ３ａのＹｅｓ）、ステップＳ３ｂに遷移する。対象ＥＣセッションの状態がアクティブではない場合、（ステップＳ３ａのＮｏ）、ステップＳ３ｄに遷移する。
【００８６】
［ステップＳ３ｂ］  コピー制御部１４は、発生領域のデータがコピー完了か否かを判断する。具体的には、コピー制御部１４は、特定セッション管理テーブル１２ａの初期コピー用先頭オフセットの欄に設定された初期コピー用ビットマップ（以下、初期コピー用ビットマップＢ１であるものとして説明する）を参照し、発生領域に対応するビットは「０」に設定されているか否かを判断する。発生領域はコピー完了である場合（ステップＳ３ｂのＹｅｓ）、ステップＳ３ｃに遷移する。発生領域はコピー完了ではない場合（ステップＳ３ｂのＮｏ）、図１１の処理を終了する。
【００８７】
［ステップＳ３ｃ］  コピー制御部１４は、特定セッション管理テーブル１２ａのＩ／Ｏ延長用先頭オフセットの欄に設定されたＩ／Ｏ延長用ビットマップ（以下、Ｉ／Ｏ延長用ビットマップＢ２であるものとして説明する）の発生領域に対応するビットを「１」に設定する。その後、図１１の処理を終了する。
【００８８】
［ステップＳ３ｄ］  コピー制御部１４は、特定セッション管理テーブル１２ａのステータスの欄を参照し、対象ＥＣセッションの状態がサスペンドか否かを判断する。対象ＥＣセッションの状態がサスペンドである場合（ステップＳ３ｄのＹｅｓ）、ステップＳ３ｅに遷移する。対象ＥＣセッションの状態がサスペンドではない場合（ステップＳ３ｄのＮｏ）、図１１の処理を終了する。
【００８９】
［ステップＳ３ｅ］  コピー制御部１４は、初期コピー用ビットマップＢ１を参照し、発生領域に対応するビットの値を確認する。また、コピー制御部１４は、初期コピー用ビットマップＢ１にて確認したビットに対応するＩ／Ｏ延長用ビットマップＢ２のビットの値を確認する。そして、確認した各ビットはいずれも「１」（未更新）か否かを判断する。確認した各ビットがいずれも「１」である場合（ステップＳ３ｅのＹｅｓ）、ステップＳ３ｆに遷移する。確認した各ビットのいずれかが「１」ではない場合（ステップＳ３ｅのＮｏ）、図１１の処理を終了する。この場合、バッドデータの復旧処理は行われない。
【００９０】
［ステップＳ３ｆ］  コピー制御部１４は、発生領域に対応するコピー先論理ボリューム３２の記憶領域に記憶されているデータを発生領域にコピーすることでバッドデータを上書きする。その後、図１１の処理を終了する。
【００９１】
次に、図１０のステップＳ４のコピー先リカバリ処理を説明する。
図１２は、コピー先リカバリ処理を示すフローチャートである。
［ステップＳ４ａ］  コピー制御部１４は、特定セッション管理テーブル１２ａのステータスの欄を参照し、コピー先論理ボリューム３２を含むＥＣセッション（以下、図１２において「対象ＥＣセッション」と言う）の状態がアクティブか否かを判断する。対象ＥＣセッションの状態がアクティブである場合（ステップＳ４ａのＹｅｓ）、ステップＳ４ｂに遷移する。対象ＥＣセッションの状態がアクティブではない場合、（ステップＳ４ａのＮｏ）、ステップＳ４ｅに遷移する。
【００９２】
［ステップＳ４ｂ］  コピー制御部１４は、特定セッション管理テーブル１２ａの初期コピー用先頭オフセットの欄に設定された初期コピー用ビットマップＢ１を参照し、発生領域はコピー完了か否かを判断する。発生領域はコピー完了である場合（ステップＳ４ｂのＹｅｓ）、ステップＳ４ｃに遷移する。発生領域はコピー完了ではない場合（ステップＳ４ｂのＮｏ）、図１２の処理を終了する。
【００９３】
［ステップＳ４ｃ］  コピー制御部１４は、特定セッション管理テーブル１２ａのフェーズの欄を参照し、フェーズがコピー中か否かを判断する。フェーズがコピー中である場合（ステップＳ４ｃのＹｅｓ）、ステップＳ４ｄに遷移する。フェーズがコピー中ではない場合、すなわち、フェーズが等価である場合（ステップＳ４ｃのＮｏ）、ステップＳ４ｇに遷移する。
【００９４】
［ステップＳ４ｄ］  コピー制御部１４は、初期コピー用ビットマップＢ１の発生領域に対応するビットを「１」に設定する。その後、図１２の処理を終了する。
［ステップＳ４ｅ］  コピー制御部１４は、特定セッション管理テーブル１２ａのステータスの欄を参照し、対象ＥＣセッションの状態がサスペンドか否かを判断する。対象ＥＣセッションの状態がサスペンドである場合（ステップＳ４ｅのＹｅｓ）、ステップＳ４ｆに遷移する。対象ＥＣセッションの状態がサスペンドではない場合（ステップＳ４ｅのＮｏ）、図１２の処理を終了する。
【００９５】
［ステップＳ４ｆ］  コピー制御部１４は、初期コピー用ビットマップＢ１を参照し、発生領域に対応するビットの値を確認する。また、コピー制御部１４は、初期コピー用ビットマップＢ１にて確認したビットに対応するＩ／Ｏ延長用ビットマップＢ２のビットの値を確認する。そして、確認した各ビットはいずれも「１」（未更新）か否かを判断する。確認した各ビットがいずれも「１」である場合（ステップＳ４ｆのＹｅｓ）、ステップＳ４ｇに遷移する。確認した各ビットのいずれかが「１」ではない場合（ステップＳ４ｆのＮｏ）、図１２の処理を終了する。
【００９６】
［ステップＳ４ｇ］  コピー制御部１４は、発生領域に対応するコピー元論理ボリューム３１の記憶領域に記憶されているデータを発生領域にコピーすることでバッドデータを上書きする。その後、図１２の処理を終了する。
【００９７】
次に、サスペンド状態からレジューム状態に遷移するときのコピー制御部１４の処理を説明する。
図１３は、サスペンド状態からレジューム状態に遷移するときのコピー制御部の処理を示すフローチャートである。
【００９８】
［ステップＳ１１］  コピー制御部１４は、Ｉ／Ｏ要求に含まれる処理対象のセッション（以下、図１３において「対象セッション」と言う）がローカルＥＣか否かを判断する。対象セッションがローカルＥＣである場合（ステップＳ１１のＹｅｓ）、ステップＳ１３に遷移する。対象セッションがローカルＥＣではない場合（ステップＳ１１のＮｏ）、ステップＳ１２に遷移する。
【００９９】
［ステップＳ１２］  コピー制御部１４は、ＲＥＣのレジューム処理を実行する。その後、図１３の処理を終了する。
［ステップＳ１３］  コピー制御部１４は、特定セッション管理テーブル１２ａを参照し、対象セッションがレジューム状態か否かを判断する。対象セッションがレジューム状態である場合（ステップＳ１３のＹｅｓ）、ステップＳ１５に遷移する。対象セッションがレジューム状態ではない場合（ステップＳ１３のＮｏ）、ステップＳ１４に遷移する。
【０１００】
［ステップＳ１４］  コピー制御部１４は、コマンドエラーをホスト装置５０に応答する。その後、図１３の処理を終了する。
［ステップＳ１５］  コピー制御部１４は、Ｉ／Ｏ延長用ビットマップＢ２の各ビットの値を初期コピー用ビットマップＢ１の各ビットにマージする。その後、ステップＳ１６に遷移する。
【０１０１】
［ステップＳ１６］  コピー制御部１４は、Ｉ／Ｏ延長用ビットマップＢ２の全てのビットを「０」に設定する。その後、ステップＳ１７に遷移する。なお、ステップＳ１５およびステップＳ１６の処理によって、アクティブ状態からサスペンド状態に移行したときに役割を変更した初期コピー用ビットマップＢ１およびＩ／Ｏ延長用ビットマップＢ２を、アクティブ状態における役割で用いる準備が完了する。
【０１０２】
［ステップＳ１７］  コピー制御部１４は、特定セッション管理テーブル１２ａのステータスをアクティブに変更する。その後、図１３の処理を終了する。
次に、ホスト装置５０からＩ／Ｏ要求を受け取ったときのコピー制御部１４の処理を説明する。
【０１０３】
図１４は、Ｉ／Ｏ処理を示すフローチャートである。
［ステップＳ２１］  コピー制御部１４は、Ｉ／Ｏ要求が、ＥＣセッションが確立されている論理ボリュームに対するＩ／Ｏ要求か否かを判断する。具体的には、コピー制御部１４は、Ｉ／Ｏ要求に含まれるコピー元論理ボリュームを特定するデータ、コピー開始ＬＢＡを特定するデータ、およびコピーサイズと、セッション管理テーブル１２ａのコピー種別のコピー元論理ボリューム、コピー元論理ボリュームの開始ＬＢＡ、およびコピーサイズを比較する。Ｉ／Ｏ要求が、ＥＣセッションが確立されている論理ボリュームに対するＩ／Ｏ要求である場合（ステップＳ２１のＹｅｓ）、ステップＳ２２に遷移する。Ｉ／Ｏ要求が、ＥＣセッションが確立されている論理ボリュームに対するＩ／Ｏ要求ではない場合（ステップＳ２１のＮｏ）、図１４の処理を終了する。
【０１０４】
［ステップＳ２２］  コピー制御部１４は、Ｉ／Ｏ要求が書き込み要求か否かを判断する。Ｉ／Ｏ要求が書き込み要求である場合（ステップＳ２２のＹｅｓ）、ステップＳ２４に遷移する。Ｉ／Ｏ要求が書き込み要求ではない場合、すなわち読み出し要求である場合（ステップＳ２２のＮｏ）、ステップＳ２３に遷移する。
【０１０５】
［ステップＳ２３］  コピー制御部１４は、Ｉ／Ｏ要求に応じたデータをコピー元論理ボリューム３１またはコピー先論理ボリューム３２から読み出すデータ読み出し処理を行う。なお、データ読み出し処理については、後述する。データ読み出し処理が終了すると、図１４の処理を終了する。
【０１０６】
［ステップＳ２４］  コピー制御部１４は、Ｉ／Ｏ要求に含まれるデータの書き込み先アドレスを参照し、Ｉ／Ｏ要求のアクセス対象はコピー元論理ボリューム３１か否かを判断する。Ｉ／Ｏ要求のアクセス対象がコピー元論理ボリューム３１である場合（ステップＳ２４のＹｅｓ）、ステップＳ２６に遷移する。Ｉ／Ｏ要求のアクセス対象がコピー元論理ボリューム３１ではない場合、すなわち、Ｉ／Ｏ要求のアクセス対象がコピー先論理ボリューム３２である場合（ステップＳ２４のＮｏ）、ステップＳ２５に遷移する。
【０１０７】
［ステップＳ２５］  コピー制御部１４は、Ｉ／Ｏ要求に含まれる書き込み対象のデータをコピー先論理ボリューム３２に書き込むコピー先論理ボリュームライト処理を行う。なお、コピー先論理ボリュームライト処理については、後述する。コピー先論理ボリュームライト処理が終了すると、図１４の処理を終了する。
【０１０８】
［ステップＳ２６］  コピー制御部１４は、Ｉ／Ｏ要求に含まれる書き込み対象のデータをコピー元論理ボリューム３１に書き込む。書き込みが完了すると、Ｉ／Ｏ要求が完了した旨をホスト装置５０に応答する。その後、ステップＳ２７に遷移する。
【０１０９】
［ステップＳ２７］  コピー制御部１４は、セッション管理テーブル１２ａのステータスの欄を参照し、当該ＥＣセッションはアクティブか否かを判断する。当該ＥＣセッションがアクティブである場合（ステップＳ２７のＹｅｓ）、ステップＳ２８に遷移する。当該ＥＣセッションがアクティブではない場合（ステップＳ２７のＮｏ）、ステップＳ３１に遷移する。
【０１１０】
［ステップＳ２８］  コピー制御部１４は、Ｉ／Ｏ要求が指定するデータの書き込み対象領域に対応するＩ／Ｏ延長用ビットマップＢ２のビットを「１」に設定する。その後、ステップＳ２９に遷移する。
【０１１１】
［ステップＳ２９］  コピー制御部１４は、ステップＳ２８にてＩ／Ｏ延長用ビットマップＢ２の「１」に設定したビットに対応する記憶領域に、コピー元論理ボリューム３１に記憶されているデータをコピーする。ステップＳ２９の処理により、ステップＳ２６にてコピー元論理ボリューム３１に書き込んだデータが、コピー先論理ボリューム３２にコピーされる。コピーが完了すると、ステップＳ３０に遷移する。
【０１１２】
［ステップＳ３０］  コピー制御部１４は、書き込み対象領域に対応するＩ／Ｏ延長用ビットマップＢ２のビットを「０」に設定する。その後、図１４の処理を終了する。
［ステップＳ３１］  コピー制御部１４は、セッション管理テーブル１２ａのステータスの欄を参照し、当該ＥＣセッションはサスペンドか否かを判断する。当該ＥＣセッションがサスペンドである場合（ステップＳ３１のＹｅｓ）、ステップＳ３２に遷移する。当該ＥＣセッションがサスペンドではない場合（ステップＳ３１のＮｏ）、図１４の処理を終了する。
【０１１３】
［ステップＳ３２］  コピー制御部１４は、書き込み対象領域に対応する初期コピー用ビットマップＢ１のビットを「１」に設定する。その後、図１４の処理を終了する。
次に、図１４のステップＳ２３のデータ読み出し処理を説明する。
【０１１４】
図１５は、データ読み出し処理を説明するフローチャートである。
［ステップＳ２３ａ］  コピー制御部１４は、Ｉ／Ｏ要求に含まれるデータの読み出し先アドレスを参照し、Ｉ／Ｏ要求の対象はコピー元論理ボリューム３１か否かを判断する。Ｉ／Ｏ要求の対象がコピー元論理ボリューム３１である場合（ステップＳ２３ａのＹｅｓ）、ステップＳ２３ｂに遷移する。Ｉ／Ｏ要求の対象がコピー元論理ボリューム３１ではない場合（ステップＳ２３ａのＮｏ）、ステップＳ２３ｉに遷移する。
【０１１５】
［ステップＳ２３ｂ］  コピー制御部１４は、セッション管理テーブル１２ａのステータスの欄を参照し、対象ＥＣセッションはアクティブか否かを判断する。対象ＥＣセッションがアクティブである場合（ステップＳ２３ｂのＹｅｓ）、ステップＳ２３ｃに遷移する。対象ＥＣセッションがアクティブではない場合（ステップＳ２３ｂのＮｏ）、ステップＳ２３ｈに遷移する。
【０１１６】
［ステップＳ２３ｃ］  コピー制御部１４は、Ｉ／Ｏ要求が指定するデータの読み出し対象領域に対応するＩ／Ｏ延長用ビットマップＢ２のビットが「１」に設定されているか否か判断する。読み出し対象領域に対応するビットが「１」に設定されている場合（ステップＳ２３ｃのＹｅｓ）、ステップＳ２３ｄに遷移する。読み出し対象領域に対応するビットが「１」に設定されていない場合（ステップＳ２３ｃのＮｏ）、ステップＳ２３ｈに遷移する。
【０１１７】
［ステップＳ２３ｄ］  コピー制御部１４は、バッドデータの発生により読み出し対象領域に対応するビットが「１」に設定されているか否かを判断する。具体的には、コピー制御部１４は、読み出し対象領域に対応するビットが「１」に設定されている要因が、Ｉ／Ｏ延長コピー処理中によるものか否かを判断する。Ｉ／Ｏ延長コピー処理中ではない場合、バッドデータの発生によりビットが設定されているものと判断することができる。Ｉ／Ｏ延長コピー処理中である場合（ステップＳ２３ｄのＹｅｓ）、ステップＳ２３ｅに遷移する。Ｉ／Ｏ延長コピー処理中ではない場合（ステップＳ２３ｄのＮｏ）、ステップＳ２３ｆに遷移する。
【０１１８】
［ステップＳ２３ｅ］  コピー制御部１４は、Ｉ／Ｏ延長コピー処理の完了を待ち合わせる。Ｉ／Ｏ延長コピー処理が完了すると、ステップＳ２３ｈに遷移する。
［ステップＳ２３ｆ］  コピー制御部１４は、コピー先論理ボリューム３２に記憶されているデータをコピー元論理ボリューム３１の読み出し対象領域にコピーする。コピーが完了するとステップＳ２３ｇに遷移する。
【０１１９】
［ステップＳ２３ｇ］  コピー制御部１４は、読み出し対象領域に対応するＩ／Ｏ延長用ビットマップＢ２のビットを「０」に設定する。その後、ステップＳ２３ｈに遷移する。
【０１２０】
［ステップＳ２３ｈ］  コピー制御部１４は、コピー元論理ボリューム３１の読み出し対象領域に記憶されているデータを読み出す。データの読み出しが終了すると、図１５の処理を終了する。
【０１２１】
［ステップＳ２３ｉ］  コピー制御部１４は、セッション管理テーブル１２ａのステータスの欄およびフェーズの欄を参照し、対象ＥＣセッションはアクティブ、かつ、コピー中である否かを判断する。当該セッションはアクティブ、かつ、コピー中である場合（ステップＳ２３ｉのＹｅｓ）、ステップＳ２３ｊに遷移する。当該セッションはアクティブ、かつ、コピー中ではない場合（ステップＳ２３ｉのＮｏ）、ステップＳ２３ｋに遷移する。
【０１２２】
［ステップＳ２３ｊ］  コピー制御部１４は、エラーをホスト装置５０に応答する。これは、当該ＥＣセッションにおいて初期コピーが実行されているためである。その後、図１５の処理を終了する。
【０１２３】
［ステップＳ２３ｋ］  コピー制御部１４は、コピー元論理ボリューム３１の読み出し対象領域に記憶されているデータを読み出す。データの読み出しが終了すると、図１５の処理を終了する。
【０１２４】
次に、図１４のステップＳ２５のコピー先論理ボリュームライト処理を説明する。
図１６は、コピー先論理ボリュームライト処理を示すフローチャートである。
［ステップＳ２４ａ］  コピー制御部１４は、セッション管理テーブル１２ａのステータスの欄を参照し、当該ＥＣセッションがアクティブか否かを判断する。当該ＥＣセッションがアクティブである場合（ステップＳ２４ａのＹｅｓ）、ステップＳ２４ｂに遷移する。当該ＥＣセッションがアクティブではない場合（ステップＳ２４ａのＮｏ）、ステップＳ２４ｃに遷移する。
【０１２５】
［ステップＳ２４ｂ］  コピー制御部１４は、エラーをホスト装置５０に応答する。その後、図１６の処理を終了する。これは、当該ＥＣセッションにおいて初期コピーが実行されており、コピー先論理ボリューム３２に対するＩ／Ｏ要求による書き込みが禁止されているためである。
【０１２６】
［ステップＳ２４ｃ］  コピー制御部１４は、Ｉ／Ｏ要求に含まれる書き込み対象のデータをコピー先論理ボリューム３２に書き込む。書き込みが完了すると、Ｉ／Ｏ要求が完了した旨をホスト装置５０に応答する。その後、ステップＳ２４ｄに遷移する。なお、ステップＳ２４ｄ以降の処理は、ホスト装置５０と非同期で行われる。
【０１２７】
［ステップＳ２４ｄ］  コピー制御部１４は、セッション管理テーブル１２ａのステータスの欄を参照し、当該ＥＣセッションはサスペンドか否か判断する。当該ＥＣセッションがサスペンドである場合（ステップＳ２４ｄのＹｅｓ）、ステップＳ２４ｅに遷移する。当該ＥＣセッションはサスペンドではない場合（ステップＳ２４ｄのＮｏ）、図１６の処理を終了する。
【０１２８】
［ステップＳ２４ｅ］  コピー制御部１４は、書き込み対象領域に対応する初期コピー用ビットマップＢ１のビットを「１」に設定する。その後、図１６の処理を終了する。
以上述べたように、制御モジュール１０ａによれば、サスペンド状態では、コピー制御部１４が、初期コピー用ビットマップＢ１を参照し、発生領域に対応するビットの値を確認する。また、コピー制御部１４が、初期コピー用ビットマップＢ１にて確認したビットに対応するＩ／Ｏ延長用ビットマップＢ２のビットの値を確認する。そして、確認した各ビットがいずれも未更新である場合、コピー制御部１４は、発生領域に対応するコピー元論理ボリューム３１の記憶領域に記憶されているデータを発生領域にコピーすることでバッドデータを上書きする。この処理により、バッドデータが発生した記憶領域に記憶されているデータを修復することができる。
【０１２９】
なお、ストレージ装置１００が行った処理が、複数の装置によって分散処理されるようにしてもよい。
以上、本発明の制御装置、制御方法およびストレージ装置を、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。
【０１３０】
また、本発明は、前述した各実施の形態のうちの、任意の２以上の構成（特徴）を組み合わせたものであってもよい。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、制御装置３または制御モジュール１０ａ、１０ｂが有する機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリ等が挙げられる。磁気記憶装置には、ハードディスクドライブ、フレキシブルディスク（ＦＤ）、磁気テープ等が挙げられる。光ディスクには、ＤＶＤ、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ／ＲＷ等が挙げられる。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）等が挙げられる。
【０１３１】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１３２】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１３３】
また、上記の処理機能の少なくとも一部を、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＰＬＤ（Programmable Logic Device）等の電子回路で実現することもできる。
【０１３４】
以上の第１〜第２の実施の形態に関し、さらに以下の付記を開示する。
（付記１）  第１のボリュームと第２のボリュームとに記憶されるデータを等価状態と非等価状態に制御する制御装置において、
前記第１のボリュームと前記第２のボリュームとに記憶されるデータが非等価状態に制御されているときに前記第１のボリュームに読み出し障害が発生すると、読み出し障害が発生した第１の記憶領域を特定する特定部と、
非等価状態での、前記第１のボリュームの前記第１の記憶領域へのデータ書き込みの有無および前記第２のボリュームの前記第１の記憶領域に対応する第２の記憶領域へのデータ書き込みの有無を判断し、いずれの記憶領域にも非等価状態でのデータの書き込みがなかった場合、前記第２のボリュームの前記第２の記憶領域に記憶されているデータを、前記第１のボリュームの前記第１の記憶領域にコピーするコピー制御部と、
を有することを特徴とする制御装置。
【０１３５】
（付記２）  前記コピー制御部は、前記第１のボリュームへのデータ書き込みの有無を、前記第１のボリュームの記憶領域毎に記憶する第１の進捗情報記憶部と、前記第２のボリュームへのデータ書き込みの有無を、前記第２ボリュームの記憶領域毎に記憶する第２の進捗情報記憶部とを有し、
前記コピー制御部は、前記第１の進捗情報記憶部および前記第２の進捗情報記憶部を参照し、前記第１の記憶領域および前記第２の記憶領域へデータの書き込みがあったか否かを判断することを特徴とする付記１記載の制御装置。
【０１３６】
（付記３）  前記制御装置は、前記第１ボリュームから前記第２ボリュームにデータを書き込むことで、前記第１ボリュームと前記第２ボリュームとの等価状態を保つように制御し、
前記第１のボリュームと第２のボリュームとに記憶されるデータの制御が非等価状態から等価状態に移行したときは、前記コピー制御部は、前記第２の進捗情報記憶部に記憶されている前記第２のボリュームへのデータ書き込みの有無を示す情報を前記第１の進捗情報記憶部に記憶されている前記第１のボリュームのデータ書き込みの有無を示す情報にマージすることを特徴とする付記２記載の制御装置。
【０１３７】
（付記４）  等価状態では、前記コピー制御部は、前記第１のボリュームの記憶領域毎に前記第２のボリュームへの１回目のデータコピーの進捗を前記第１の進捗情報記憶部に記憶し、前記第２のボリュームへの２回目以降のデータコピーの進捗を前記第２の進捗情報記憶部に記憶することを特徴とする付記２または３に記載の制御装置。
【０１３８】
（付記５）  前記第１のボリュームから前記第２のボリュームにデータを書き込むことで等価状態を保つよう構成されている場合において、
前記第１のボリュームと前記第２のボリュームに記憶されるデータが非等価状態であるときに前記第１のボリュームへの書き込み要求を受け取ると、前記コピー制御部は、前記第１の進捗情報記憶部の、前記第１のボリュームへの書き込み要求が指定する記憶領域の書き込み状況を書き込み有りに設定し、前記第２のボリュームへの書き込み要求を受け取ると、前記コピー制御部は、前記第２の進捗情報記憶部の、前記第２のボリュームへの書き込み要求が指定する記憶領域の書き込み状況を書き込み有りに設定することを特徴とする付記２記載の制御装置。
【０１３９】
（付記６）  前記第１のボリュームから前記第２のボリュームにデータを書き込むことで等価状態を保つよう構成されている場合において、
前記第１のボリュームと前記第２のボリュームに記憶される情報が非等価状態であるときに前記第２のボリュームからの読み出し要求を受け取ると、前記コピー制御部は、前記読み出し要求が指定する記憶領域の前記第２の進捗情報記憶部での書き込み状況が書き込み有りに設定されている場合、前記指定された記憶領域への書き込みがＩ／Ｏ要因であるか否かを判断し、前記指定された記憶領域への書き込みがＩ／Ｏ要因でない場合、前記読み出し要求が指定する記憶領域に記憶されているデータを前記第２のボリュームから前記第１のボリュームにコピーすることを特徴とする付記２記載の制御装置。
【０１４０】
（付記７）  第１のボリュームと第２のボリュームに記憶されるデータを等価状態と非等価状態に制御する制御方法において、
コンピュータが、
前記第１のボリュームと前記第２のボリュームとに記憶されるデータが非等価状態に制御されているときに前記第１のボリュームに読み出し障害が発生すると、読み出し障害が発生した第１の記憶領域を特定し、
非等価状態での、前記第１のボリュームの前記第１の記憶領域へのデータ書き込みの有無および前記第２のボリュームの前記第１の記憶領域に対応する第２の記憶領域へのデータ書き込みの有無を判断し、いずれの記憶領域にも非等価状態でのデータの書き込みがなかった場合、前記第２のボリュームの前記第２の記憶領域に記憶されているデータを、前記第１のボリュームの前記第１の記憶領域にコピーする、
ことを特徴とする制御方法。
【０１４１】
（付記８）  第１のボリュームを構成する第１の記憶部、および第２のボリュームを構成する第２の記憶部と、前記第１のボリュームおよび前記第２のボリュームに記憶されるデータを等価状態と非等価状態に制御する制御装置とを備えるストレージ装置において、
前記制御装置は、
前記第１のボリュームと前記第２のボリュームとに記憶されるデータが非等価状態に制御されているときに前記第１のボリュームに読み出し障害が発生すると、読み出し障害が発生した第１の記憶領域を特定する特定部と、
非等価状態での、前記第１のボリュームの前記第１の記憶領域へのデータ書き込みの有無および前記第２のボリュームの前記第１の記憶領域に対応する第２の記憶領域へのデータ書き込みの有無を判断し、いずれの記憶領域にも非等価状態でのデータの書き込みがなかった場合、前記第２のボリュームの前記第２の記憶領域に記憶されているデータを、前記第１のボリュームの前記第１の記憶領域にコピーするコピー制御部と、
を有することを特徴とするストレージ装置。
【符号の説明】
【０１４２】
１、１００  ストレージ装置
２、５０  ホスト装置
３  制御装置
３ａ  特定部
３ｂ、１４  コピー制御部
３ｂ１  第１のビットマップ
３ｂ２  第２のビットマップ
４ａ  第１のボリューム
４ｂ  第２のボリューム
５ａ、５ｂ  ビット
１０ａ、１０ｂ  制御モジュール
１１  ＲＡＩＤ制御部
１２  セッション管理情報記憶部
１２ａ  セッション管理テーブル
１３  ビットマップ管理情報記憶部
１３ａ  ビットマップ管理テーブル
３１  コピー元論理ボリューム（論理ボリューム）
３２  コピー先論理ボリューム（論理ボリューム）
Ａ１  第１の記憶領域
Ａ２  第２の記憶領域
Ｂ１  初期コピー用ビットマップ
Ｂ２  Ｉ／Ｏ延長用ビットマップ
【図１】
0005817296.tif 000002
【図２】
0005817296.tif 000003
【図３】
0005817296.tif 000004
【図４】
0005817296.tif 000005
【図５】
0005817296.tif 000006
【図６】
0005817296.tif 000007
【図７】
0005817296.tif 000008
【図８】
0005817296.tif 000009
【図９】
0005817296.tif 000010
【図１０】
0005817296.tif 000011
【図１１】
0005817296.tif 000012
【図１２】
0005817296.tif 000013
【図１３】
0005817296.tif 000014
【図１４】
0005817296.tif 000015
【図１５】
0005817296.tif 000016
【図１６】
0005817296.tif 000017