(57)【要約】      （修正有）【課題】ディスク２重障害を防止する。またデータ移行に際し、ホストレスポンスを低下することなく、かつデータを失うことなく、データを移行する。【解決手段】エラー発生状況を監視し、エラー発生回数が規定値を超えた場合にディスク装置とスペアディスク装置とのミラーリング開始を指示するエラー監視手段と、ディスク装置とスペアディスク装置とのミラーリングを行うミラー手段とを設ける。また、ディスク装置のステータスが仮閉塞状態となるよう指示するエラー監視手段と、データ復元中にディスクアレイを構成する他のディスク装置からの読み出しができない場合、仮閉塞状態のディスク装置からの読み出しを行うことでデータ復元を行うデータ復旧手段とを設ける。さらに、データを移行する際、発生したリードエラー回数を示す障害カウンタを設け、冗長度計算によってどのディスク装置から復旧するか選択可能とする。【選択図】図１
2006164304.tif 000002
【特許請求の範囲】
【請求項１】
複数のディスク装置を有するアレイ型ディスク装置であって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置は、
前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値レベル１を超えた場合に前記ディスク装置と前記スペアディスク装置とのミラーリングを開始し、前記ディスク装置のエラー発生回数が前記規定値レベル１よりも大きい規定値レベル２を超えた場合に前記スペアディスク装置から読み出し処理を行うことを特徴とするアレイ型ディスク装置。
【請求項２】
複数のディスク装置を有するアレイ型ディスク装置であって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置は、
前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値レベル１を超えた場合に前記ディスク装置と前記スペアディスク装置とのミラーリング開始を指示し、前記ディスク装置のエラー発生回数が前記規定値レベル１よりも大きい規定値レベル２を超えた場合に前記ディスク装置の閉塞開始を指示し、該ディスク装置で行っていた処理の前記スペアディスク装置への移行を指示するエラー監視部と、前記ディスク装置と前記スペアディスク装置とのミラーリングを行うミラー部と、前記ディスク装置の閉塞と前記移行とを行う閉塞移行部とを備えたことを特徴とするアレイ型ディスク装置。
【請求項３】
複数のディスク装置を有するアレイ型ディスク装置であって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置は、
前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値を超えた場合に、該ディスク装置と前記スペアディスク装置とのミラーリング開始を指示し、ミラーリングをしていないディスク装置のエラー発生回数がミラーリングをしているディスク装置のエラー発生回数を超えた場合、該スペアディスク装置のミラーリングを解除し、ミラーリングをしていないディスク装置とミラーリングを解除したスペアディスク装置とのミラーリングを開始するよう指示するエラー監視部と、
前記ディスク装置と前記スペアディスク装置とのミラーリングを行うミラー部とを備えたことを特徴とするアレイ型ディスク装置。
【請求項４】
アレイ状に配置した複数のディスク装置を有するアレイ型ディスク装置であって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置は、
前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値を超えた場合に前記ディスク装置のステータスが仮閉塞状態となるよう指示するエラー監視部と、
ディスクアレイグループを構成するディスク装置が仮閉塞状態となった場合、仮閉塞となったディスク装置のデータをディスクアレイグループを構成する他のディスク装置からスペアディスク装置に復旧するデータ復旧部とを備え、
前記データ復旧部は、データ復旧中にディスクアレイグループを構成する他のディスク装置からの読み出しができない場合、仮閉塞状態のディスク装置からの読み出しを行うことを特徴とするアレイ型ディスク装置。
【請求項５】
複数のディスク装置を有するアレイ型ディスク装置であって、ディスク装置間のデータ移行に際し、移行元ディスク装置からのデータ読み込みエラー発生回数を記憶し、エラー発生回数が規定値に達するまでは移行元ディスク装置から移行先ディスク装置にデータを読み込み、エラー発生回数が規定値に達した場合、ディスクアレイグループを構成するデータディスク装置からのデータ読み込みに切り替え、ディスクアレイグループを構成するデータディスク装置からのデータ読み込みがエラーになり、データ復旧できない場合に、移行元のディスク装置からのデータ読み込みを行うことを特徴としたアレイ型ディスク装置。
【請求項６】
請求項５に記載のアレイ型ディスク装置であって、前述のディスクアレイグループを構成するデータディスク装置からのデータ読み込みに切り替え後、ディスクアレイグループを構成するデータディスク装置からのデータ読み込みがエラーになり、移行元のデータディスク装置からのデータ読み込みに切り替え、その読み込みが成功した場合、移行元のデータディスク装置から読み込んだデータとディスクアレイグループを構成するデータディスク装置からのデータを用いて、読み込みエラーになったディスクアレイグループを構成する前記データディスク装置のデータを復旧することを特徴としたアレイ型ディスク装置。
【請求項７】
アレイ状に配置した複数のディスク装置を有するアレイ型ディスク装置であって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスクアレイ型ディスク装置は、
前記ディスク装置が形成するディスクアレイグループを１単位としてディスク装置のエラー発生状況を監視し、エラー発生回数が規定値を超えた場合、該ディスク装置のデータをスペアディスク装置に移行することを指示するエラー監視部と、
前記ディスクアレイグループの複数の前記ディスク装置のエラー発生回数が、規定値よりも小さく設定した補助規定値に達した場合、上記規定値をより小さな値に動的に変更するエラー回数規定値変更部と、
前記移行指示を受けてデータコピーを行うコピー部とを備えたことを特徴とするアレイ型ディスク装置。
【請求項８】
複数のディスク装置を有するアレイ型ディスク装置におけるエラー監視制御プログラムであって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置におけるエラー監視制御プログラムは、
前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値レベル１を超えた場合に前記ディスク装置と前記スペアディスク装置とのミラーリングを開始し、前記ディスク装置のエラー発生回数が前記規定値レベル１よりも大きい規定値レベル２を超えた場合に前記スペアディスク装置から読み出し処理を行うプログラムであることを特徴とするアレイ型ディスク装置におけるエラー監視制御プログラム。
【請求項９】
アレイ状に配置した複数のディスク装置を有するアレイ型ディスク装置におけるエラー監視制御プログラムであって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置におけるエラー監視制御プログラムは、
前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値レベル１を超えた場合に前記ディスク装置と前記スペアディスク装置とのミラーリング開始を指示するエラー監視プログラムと、
前記ディスク装置のエラー発生回数が前記規定値レベル１よりも大きい規定値レベル２を超えた場合に前記ディスク装置の閉塞開始を指示し、該ディスク装置で行っていた処理の前記スペアディスク装置への移行を指示する閉塞監視プログラムと、
前記ディスク装置と前記スペアディスク装置とのミラーリングを行うミラープログラムと、前記ディスク装置の閉塞と前記移行とを行う閉塞移行プログラムと
を備えたことを特徴とするアレイ型ディスク装置におけるエラー監視制御プログラム。
【請求項１０】
複数のディスク装置を有するアレイ型ディスク装置におけるエラー監視制御プログラムであって、
前記アレイ型ディスクアレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置におけるエラー監視制御プログラムは、
前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値を超えた場合に、前記ディスク装置と前記スペアディスク装置とのミラーリング開始を指示し、ミラーリングをしていないディスク装置のエラー発生回数がミラーリングをしているディスク装置のエラー発生回数を超えた場合、該スペアディスク装置のミラーリングを解除し、ミラーリングをしていないディスク装置とミラーリングを解除したスペアディスク装置とのミラーリングを開始するよう指示するエラー監視プログラムと、
前記ディスク装置と前記スペアディスク装置とのミラーリングを行うミラープログラムとを備えたことを特徴とするアレイ型ディスク装置におけるエラー監視制御プログラム。
【請求項１１】
アレイ状に配置した複数のディスク装置を有するアレイ型ディスク装置におけるエラー監視制御プログラムであって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置におけるエラー監視制御プログラムは、
前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値を超えた場合に前記ディスク装置のステータスが仮閉塞状態となるよう指示するエラー監視プログラムと、
ディスクアレイグループを構成するディスク装置が仮閉塞状態となった場合、仮閉塞となったディスク装置のデータをディスクアレイグループを構成する他のディスク装置からスペアディスク装置に復旧するデータ復旧プログラムとを備え、
前記データ復旧プログラムは、データ復元中にディスクアレイグループを構成する他のディスク装置からの読み出しができない場合、仮閉塞状態のディスク装置からの読み出しを行うことでデータ復旧を行うプログラムであることを特徴とするアレイ型ディスク装置におけるエラー監視制御プログラム。
【請求項１２】
アレイ状に配置した複数のディスク装置を有するアレイ型ディスク装置におけるエラー監視制御プログラムであって、ディスク装置間のデータ移行に際し、移行元ディスク装置からのリードエラー発生回数するエラー発生回数記憶プログラムと、エラー発生回数が規定値に達するまでは移行元のデータをディスク装置から移行先ディスク装置にデータを読み込み、エラー発生回数が規定値に達した場合、ディスクアレイグループを構成するデータディスク装置からのデータ読み込みに切り替え、ディスクアレイグループを構成するデータディスク装置からのデータリードがエラーになり、データ復旧できない場合のみ移行元のディスク装置からのデータ読み込みを行うデータ監視移行プログラムとを有することを特徴としたアレイ型ディスク装置におけるエラー監視制御プログラム。
【請求項１３】
請求項１２に記載のアレイ型ディスク装置におけるエラー監視制御プログラムであって、前述のディスクアレイグループを構成するデータディスク装置からのデータ読み込みに切り替え後、ディスクアレイグループを構成するデータディスク装置からのデータ読み込みがエラーになり、データ復旧できない場合のみ、移行元のディスク装置からのデータ読み込みに切り替えその読み込みに成功した場合、移行元のディスク装置からの読み込んだデータとディスクアレイグループを構成するデータディスク装置からのデータを用いて読み込みエラーになったディスクアレイグループを構成するディスク装置のデータを復旧するデータ復旧プログラムを有することを特徴としたアレイ型ディスク装置におけるエラー監視制御プログラム。
【請求項１４】
複数のディスク装置を有するアレイ型ディスク装置におけるエラー監視制御プログラムであって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置におけるエラー監視制御プログラムは、
前記ディスク装置が形成するディスクアレイグループを１単位としてエラー発生状況を監視し、エラー発生回数が規定値を超えた場合、該ディスク装置のデータをスペアディスク装置に移行することを指示するするエラー監視プログラムと、
前記ディスク装置が形成するディスクアレイグループの複数の前記ディスク装置のエラー発生回数が規定値よりも小さく設定した補助規定値に達した場合、上記規定値をより小さな値に動的に変更する規定の条件を超えた場合、ディスクアレイグループを形成する前記ディスク装置のエラー発生回数の規定値を動的に変更するエラー回数規定値変更プログラムと、
前記移行指示を受けてデータコピーを行うコピープログラムとを備えたことを特徴とするアレイ型ディスク装置におけるエラー監視制御プログラム。
【請求項１５】
複数のディスク装置を有するアレイ型ディスク装置のエラー監視制御方法であって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置のエラー監視制御方法は、
前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値レベル１を超えた場合に前記ディスク装置と前記スペアディスク装置とのミラーリングを開始するエラー監視方法と、前記ディスク装置のエラー発生回数が前記規定値レベル１よりも大きい規定値レベル２を超えた場合に前記スペアディスク装置から読み出し処理を行う読み出し方法を含むことを特徴とするアレイ型ディスク装置のエラー監視制御方法。
【請求項１６】
アレイ状に配置した複数のディスク装置を有するアレイ型ディスク装置のエラー監視制御方法であって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置のエラー監視制御方法は、
前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値レベル１を超えた場合に前記ディスク装置と前記スペアディスク装置とのミラーリング開始を指示し、前記ディスク装置のエラー発生回数が前記規定値レベル１よりも大きい規定値レベル２を超えた場合に前記ディスク装置の閉塞開始を指示し、該ディスク装置で行っていた処理の前記スペアディスク装置への移行を指示するエラー監視方法と、
前記ディスク装置と前記スペアディスク装置とのミラーリングを行うミラー方法と、前記ディスク装置の閉塞と前記移行とを行う閉塞移行方法とを含むことを特徴とするアレイ型ディスク装置のエラー監視制御方法。
【請求項１７】
複数のディスク装置を有するアレイ型ディスク装置のエラー監視制御方法であって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置のエラー監視制御方法は、
前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値を超えた場合に、前記ディスク装置と前記スペアディスク装置とのミラーリング開始を指示し、ミラーリングをしていないディスク装置のエラー発生回数がミラーリングをしているディスク装置のエラー発生回数を超えた場合、スペアディスク装置のミラーリングを解除し、ミラーリングをしていないディスク装置とミラーリングを解除したスペアディスク装置とのミラーリングを開始するよう指示するエラー監視方法と、
前記ディスク装置と前記スペアディスク装置とのミラーリングを行うミラー監視方法とを含むことを特徴とするアレイ型ディスク装置のエラー監視制御方法。
【請求項１８】
アレイ状に配置した複数のディスク装置を有するアレイ型ディスク装置のエラー監視制御方法であって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスク装置のエラー監視制御方法は、
前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値を超えた場合に前記ディスク装置のステータスが仮閉塞状態となるよう指示するエラー監視方法と、
ディスクアレイグループを構成するディスク装置が仮閉塞状態となった場合、仮閉塞となったディスク装置のデータをディスクアレイグループを構成する他のディスク装置からスペアディスク装置に復旧するデータ復旧方法とを含み、
前記データ復旧方法は、データ復旧中にディスクアレイグループを構成する他のディスク装置からの読み出しができない場合、仮閉塞状態のディスク装置からの読み出しを行う方法であることを特徴とするアレイ型ディスク装置のエラー監視制御方法。
【請求項１９】
アレイ状に配置した複数のディスク装置を有するアレイ型ディスク装置のデータ移行方法であって、前記ディスク装置間のデータ移行に際し、移行元ディスク装置からのデータ読み込みエラー発生回数するエラー記憶方法と、エラー発生回数が規定値に達した場合、ディスクアレイグループを構成するデータディスク装置からのデータ読み込みに切り替え、ディスクアレイグループを構成するデータディスク装置からのデータ読み込みがエラーになり、データ復旧できない場合に、移行元のディスク装置からのデータ読み込みを行うデータ監視移行方法とを含むことを特徴としたアレイ型ディスク装置のデータ移行方法。
【請求項２０】
請求項１９に記載のアレイ型ディスク装置のデータ移行方法であって、前述のディスクアレイグループを構成するデータディスク装置からのデータリード・データ復元方式に切り替え後、冗長度をもつデータディスク装置からのデータリードがエラーになり、データ復元できない場合のみ、移行元のディスクディスク装置からのデータ読み込みに切り替え後、ディスクアレイグループを構成するデータディスク装置からのデータ読み込みがエラーになり、移行元のデータディスク装置からのデータ読み込みに切り替え、その読み込みが成功した場合、移行元のディスクディスク装置からの読み込んだデータとディスクアレイグループを構成するデータディスク装置からのデータを用いて読みエラーになったディスクアレイグループを構成するディスクディスク装置のデータを復旧するデータ復旧方法を含むことを特徴としたアレイ型ディスク装置のデータ移行方法。
【請求項２１】
アレイ状に配置した複数のディスク装置を有するアレイ型ディスク装置のエラー監視制御方法であって、
前記アレイ型ディスク装置が有するディスク装置のうち、少なくとも１台はスペアディスク装置であり、
前記アレイ型ディスクアレイ型ディスク装置のエラー制御方法は、
前記ディスク装置が形成するディスクアレイグループを１単位としてディスク装置のエラー発生状況を監視し、エラー発生回数が規定値を超えた場合、該ディスク装置のデータをスペアディスク装置に移行することを指示するエラー監視方法と、
前記ディスク装置が形成するディスクアレイグループのエラー発生回数が、規定値よりも小さく設定した補助規定値に達した場合、上記規定値をより小さな値に動的に変更するエラー回数規定値変更方法と、
前記移行指示を受けてデータコピーを行うコピー方法とを含むことを特徴とするアレイ型ディスク装置のエラー監視制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は主として、コンピュータの外部記憶装置であるディスク装置に関わり、特に、ディスクアレイを構成するアレイ型ディスク装置において複数台のディスク装置が同時に故障を起こすことを予防するための技術に関わり、さらに、冗長度を有するディスクアレイグループを構成するディスク装置間のデータ移行時における、ホストＩ／Ｏレスポンス向上及び確実性向上技術に関する。
【背景技術】
【０００２】
計算機に接続される記憶装置システムの一種に、アレイ型ディスク装置がある。アレイ型ディスク装置は、ＲＡＩＤ(Redundant Arrays of Inexpensive Disks)とも呼ばれ、アレイ状に配置された複数のディスク装置及びそれらを制御する制御部とを有する記憶装置である。アレイ型ディスク装置では、リード要求（データの読み出し要求）およびライト要求（データの書き込み要求）がディスク装置の並列動作によって高速に処理され、かつデータに冗長性が付加される。アレイ型ディスク装置は、非特許文献１に開示されているように、付加される冗長データの種類とその構成により５つのレベルに分類されている。
【０００３】
市場に出回っているアレイ型ディスク装置においては、運用されているディスク装置が故障する場合を想定し、スペアディスク装置をあらかじめ同一アレイ型ディスク装置内に搭載しておくことが一般的である。アレイ型ディスク装置のレイド（ＲＡＩＤ）グループ即ちディスクアレイグループを形成するディスク装置が故障状態になったとアレイ型ディスク装置が判定した場合に、他のディスク装置のデータ、および、パリティをもとに、故障状態となったディスク装置と同一のデータ、および、パリティをスペアディスク装置に復元する。復元後は、スペアディスク装置が、故障状態となったディスク装置にかわりに動作する。
【０００４】
さらに、ディスク装置が故障状態となってからデータ、および、パリティの復元を行うと、レイド（ＲＡＩＤ）グループを構成する全ディスク装置にアクセスが発生し、オンラインの性能が低下することから、あらかじめ故障状態となりそうなディスク装置を予測しておき、故障状態となってアクセスができなくなる前にデータを予め各々対となっているスペアディスク装置にコピーし、スペアディスク装置によって運用を続ける技術がある。ディスク装置のエラー発生回数が規定値を超えた場合に、データをスペアディスク装置にコピーし、スペアディスクにデータを復元する技術が、特許文献１に開示されている。
【０００５】
さらに、従来のアレイ型ディスク装置では、予防保守等の理由によりディスク装置のスペアディスク装置へのデータ移行に際し、移行元のディスク装置で、データ読取り（リード）障害が多発した場合、移行元のディスク装置からデータリードを試み、データリード障害を検出後、アレイ型ディスク装置のデータ回復機能を用いて冗長性を持つディスク装置より移行元のデータを復元するというフローとなるため、ホストコンピュータからのデータリード要求のレスポンスの低下が予想される。このレスポンス低下を回避するため、移行元のディスク装置においてデータリードエラーが多発した場合、移行元のディスク装置をアレイ型ディスク装置から切り離し、アレイ型ディスク装置のデータ回復機能を用いて、冗長性を持つディスク装置より、移行元のデータを復旧する方式のみを用いてホストコンピュータのデータ読み出し要求に対応するという処理が一般的であった。
【０００６】
ところが、年々ディスク装置の容量は増加し、冗長性を持つアレイ型ディスク装置にもデータリード障害が発生する確率もそれに比例して増加するという問題が生じている。また、冗長性を持つアレイ型ディスク装置にデータリード不能な部分があった場合、移行元のデータを復元することができず、結果として、データを失ってしまうという問題も発生する。
【０００７】
【特許文献１】特開平８−１４７１１２号公報
【非特許文献１】"A Case for Redundant Arrays of Inexpensive Disks (RAID)", David A.Patterson, Garth Gibson, and Randy H.Katz, Computer Science Division Department of Electrical Engineering and Computer Sciences, University of California Berkeley
【発明の開示】
【発明が解決しようとする課題】
【０００８】
冗長なディスク装置即ちディスクアレイグループを１台分備えたアレイ型ディスク装置構成の場合、ディスク装置１台の故障の際にアレイ型ディスク装置の冗長性を利用してデータの回復することができるが、１台のディスク装置が故障している状態でもう一台のディスク装置からの読み出しができなくなるとディスク２重障害となり、データを消失する。
【０００９】
アレイ型ディスク装置のデータ回復処理はオンライン処理と併行して行うことが一般的であり、年々ディスク装置の容量自体も増加しているため、データ回復処理時間が伸び、回復中にもう１台のディスク装置が故障する確率が上がる傾向にある。また、ディスク装置の容量の増加に伴い、データ回復時のディスク装置からの読み出し時間も増加し、回復不能なビットエラーが発生する確率も上がってきている。以上のことから、ディスク装置２重障害となる確率が増加する傾向にある。
【００１０】
ディスク装置へのアクセスができなくなる前に、データをスペアディスク装置にコピーしておく従来技術の場合、スペアディスク装置にコピーを開始する契機としてのエラー発生回数規定値を高くしておくと、潜在的な故障の可能性を低く見てしまうことになり、２重障害となる確率が高くなる。また、エラー発生回数規定値を低くしておくと、スペアディスク装置の使用が頻度が高くなり、スペアディスク装置のコストが高くなる。
【００１１】
また、ディスク装置が故障状態になったとアレイ型ディスク装置が判定した場合に、アレイ型ディスク装置のディスクアレイグループを形成する他のディスク装置のデータ、および、パリティをもとに、故障状態となったディスク装置と同一のデータ、および、パリティをスペアディスク装置に復元しようとアレイ型ディスク装置が試みるが、データ復元中に別のディスク装置において読み出しができないデータがあると、そのデータに関わるパリティグループのデータが復元できなくなってしまい、２重障害となってしまうという問題がある。
【００１２】
また、アレイ型ディスク装置のディスクアレイグループを構成するディスク装置のうち、エラー発生回数が規定値に到達しているものはないながらも、複数のディスク装置のエラー発生回数が規定値に近くなっていて、潜在的にアレイ型ディスク装置のディスクアレイグループを構成するディスク装置のうち複数台が同時に故障するディスク２重障害となる可能性が高い場合がある。エラー発生回数をもとにスペアディスク装置へのコピーを開始する従来の技術では、上記の潜在的な２重障害の回避に対応できないという問題がある。
【００１３】
以上のように、従来の技術ではアレイ型ディスク装置を構成するディスク装置のうち複数台が同時に故障する２重障害への対応ができないケースがある。
【００１４】
本発明の第一の目的は、スペアディスク装置に予防コピーしておくアレイ型ディスク装置において、スペアディスク装置のコストを上げることなく、ディスク２重障害の確率を下げる信頼性の高いアレイ型ディスク装置を提供することである。
【００１５】
本発明の第二の目的は、アレイディスクを形成する１台のディスク装置が故障状態になったアレイ型ディスク装置において、ディスク装置２重障害の確率を下げる信頼性の高いアレイ型ディスク装置を提供することである。
【００１６】
本発明の第三の目的は、スペアディスク装置に予防コピーしておくアレイ型ディスク装置において、アレイ型ディスク装置を形成する複数のディスク装置の故障ポテンシャルが高くなっている状態において、ディスク２重障害の確率を下げる信頼性の高いアレイ型ディスク装置を提供することである。
【００１７】
本発明の第四の目的は、冗長性のあるアレイ型ディスク装置構成におけるディスク装置のスペアディスク装置へのデータ移行に際し、ホストコンピュータへのI/Oレスポンスを低下されることなく、かつデータを失うことなくデータ移行を完了されるアレイ型ディスク装置を提供することにある。
【００１８】
さらには、上記四つの目的を達成するアレイ型ディスク装置を駆動する制御プログラム、制御方法、およびデータ移行方法を提供することにある。
【課題を解決するための手段】
【００１９】
本発明においては、上記目的を達成するために、複数のディスク装置を有するアレイ型ディスク装置において、少なくとも１台はスペアディスク装置とし、前記アレイ型ディスク装置は、前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値レベル１を超えた場合に前記ディスク装置と前記スペアディスク装置とのミラーリング開始を指示し、前記ディスク装置のエラー発生回数が前記規定値レベル１よりも大きい規定値レベル２を超えた場合に前記ディスク装置の閉塞開始を指示し、該ディスク装置で行っていた処理の前記スペアディスク装置への移行を指示するエラー監視部と、前記ディスク装置と前記スペアディスク装置とのミラーリングを行うミラー部と、前記ディスク装置の閉塞と前記移行とを行う閉塞移行部とを備えるようにした。
【００２０】
また、前記アレイ型ディスク装置は、前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値を超えた場合に、該ディスク装置と前記スペアディスク装置とのミラーリング開始を指示し、ミラーリングをしていないディスク装置のエラー発生回数がミラーリングをしているディスク装置のエラー発生回数を超えた場合、該スペアディスク装置のミラーリングを解除し、ミラーリングをしていないディスク装置とミラーリングを解除したスペアディスク装置とのミラーリングを開始するよう指示し、前記ディスク装置と前記スペアディスク装置とのミラーリングを行うようにした。
【００２１】
さらに、前記アレイ型ディスク装置は、前記ディスク装置のエラー発生状況を監視し、前記ディスク装置のエラー発生回数が規定値を超えた場合に前記ディスク装置のステータスが仮閉塞状態となるよう指示するエラー監視部と、ディスクアレイグループを構成するディスク装置が仮閉塞状態となった場合、仮閉塞となったディスク装置のデータをディスクアレイグループを構成する他のディスク装置からスペアディスク装置に復旧するデータ復旧部とを備え、前記データ復旧部は、データ復旧中にディスクアレイグループを構成する他のディスク装置からの読み出しができない場合、仮閉塞状態のディスク装置からの読み出しを行うことでデータ復旧を行うようにした。
【００２２】
さらにまた、複数のディスク装置を有するアレイ型ディスク装置のディスク装置間のデータ移行に際し、移行元ディスク装置からのデータ読み込みエラー発生回数を記憶し、エラー発生回数が規定値に達するまでは移行元のデータをディスク装置からデータを読み込み、エラー発生回数が規定値に達した場合、ディスクアレイグループを構成するデータディスク装置からのデータ読み込みに切り替え、この時ディスクアレイグループを構成するデータディスク装置からのデータ読み込みがエラーになり、データ復旧できない場合に、移行元のディスク装置からのデータ読み込みを行うようにした。
【００２３】
また、前記アレイ型ディスクアレイ型ディスク装置は、前記ディスク装置が形成するディスクアレイグループを１単位としてディスク装置のエラー発生状況を監視し、エラー発生回数が規定値を超えた場合、該ディスク装置のデータをスペアディスク装置に移行することを指示し、前記ディスクアレイグループの複数の前記ディスク装置のエラー発生回数が、規定値よりも小さく設定した補助規定値に達した場合、上記規定値をより小さな値に動的に変更し、前記移行指示を受けてデータ移行を行うようにした。
【発明の効果】
【００２４】
本発明によれば、ディスクアレイ（ＲＡＩＤ）グループを構成するディスク装置のうち複数台が同時に故障する２重障害の発生を抑えることができる。
【００２５】
スペアディスク装置に予防コピーしておくアレイ型ディスク装置において、あらかじめスペアディスク装置にミラーリングしておき、スペアディスク装置をミラーリングしていなかったディスク装置へのスペアとして利用できるので、スペアディスク装置のコストを上げることなく、ディスク２重障害の確率を下げることができるという効果がある。
【００２６】
また、スペアディスク装置に予防コピーしておくアレイ型ディスク装置において、エラー発生回数が少ないうちから、エラー派生回数の多いディスク装置に対してミラーリングを行っておき、ミラーリングを組むディスク装置をエラー発生回数に応じて、ダイナミックに切り替えていくことで、第２段階の規定値に達したときに即時にスペアディスク装置への切り替えができるという効果がある。
【００２７】
また、ディスクアレイ（ＲＡＩＤ）グループを形成する１台のディスク装置が故障状態になったディスクアレイシステムにおいて、ディスク２重障害の確率を下げることができるという効果がある。
【００２８】
また、スペアディスク装置に予防コピーしておくアレイ型ディスク装置において、ディスクアレイ（ＲＡＩＤ）グループを形成する複数のディスク装置の故障ポテンシャルが高くなっている状態において、ディスク装置２重障害の確率を下げることができるという効果がある。
【００２９】
さらにまた、大容量アレイ型ディスク装置におけるディスク装置間のデータ移行の際、移行元のディスク装置を完全に切り離すことなく使い続けることにより、冗長データによるデータの復旧方式と、移行元のディスク装置からのリード方式のハイブリッド方式により、データを失うことなく移行先のディスク装置にデータ移行が可能となる効果を奏する。
【発明を実施するための最良の形態】
【００３０】
（第１の実施形態）
本発明の第１の実施形態は、発明が解決しようとする課題の第１の目的を達成するためのものである。
すなわち、スペアディスク装置に予防コピーしておくアレイ型ディスク装置において、スペアディスク装置のコストを上げることなく、ディスクドライブあるいは単にドライブとも称されるディスク装置の２重障害の確率を低減する信頼性の高いアレイ型ディスク装置を提供することである。
（１） 構成の説明
本発明の第１の実施形態のシステム構成を図１〜３を用いて説明する。図１において、１００はホストコンピュータ、１２３はアレイ型ディスク装置、２００はアレイ型ディスク装置の管理制御部、３１０はディスク装置群、５００は管理端末である。
【００３１】
アレイ型ディスク装置１２３、ホストコンピュータ１００、管理制御部２００、ディスク装置群３１０、および、管理端末５００はそれぞれ図のように結線する。
【００３２】
アレイ型ディスク装置１２３は管理制御部２００として以下を含む。２０１は管理制御部２００の制御を実施するＣＰＵ、２０２はメモリ、２０３はユーザのデータをバッファリングするキャッシュ、２０４はホストとのデータの送受信を行うホストＩ／Ｆ、２０５はディスク装置群３１０との送受信を行うドライブＩ／Ｆ、２０７は管理端末５００との制御情報の送受信を行う管理Ｉ／Ｆであり、それぞれを結線する。メモリ２０２は、ディスクアレイを制御するレイド（ＲＡＩＤ）制御部２１０と、ディスク装置群３１０の管理を行うディスク装置管理部２３０と、ディスク装置群３１０の運用パラメータや運用状況などディスク装置情報を記録するディスク装置管理テーブル２４０と、管理端末５００からの入力を受けてディスク装置情報を設定するディスク装置情報設定部２５０と、管理端末５００への出力としてディスク装置情報を通知するディスク装置情報通知部２６０とを有する。
【００３３】
ディスク装置群３１０は、ディスク装置３０１〜３０７とからなる。ディスク装置３０１〜３０５は、従来の技術で述べたようなディスクの並列動作と冗長性の付加により、性能と信頼性を強化したディスクアレイグループを構成しており、この状態をディスク装置３０１〜３０５の組でレイド（ＲＡＩＤ）グループとなるディスクアレイグループを構成していると呼ぶこととする。ディスク装置３０６、３０７は、ディスクアレイ（ＲＡＩＤ）グループを構成するディスクが故障したときに替わりにディスクアレイグループに組み入れるためのスペアディスク装置である。
【００３４】
管理端末５００は、ユーザからのディスク装置３０１〜３０５への設定を入力する入力部５１０と、ディスク装置３０１〜３０５の情報をユーザに示す出力部５２０とからなる。入力部５１０からは、ディスク装置管理テーブル２４０へのディスク装置運用パラメータを入力する。出力部５２０は、ディスク装置管理テーブル２４０のディスク装置運用状況を出力表示する。
【００３５】
図２は、ディスク装置管理テーブル２４０である。パラメータとしては、ディスク装置の識別番号を表す「ディスク装置Ｎｏ．」、ディスク装置の累積エラー回数を格納する「エラー回数カウンタ」、ディスク装置の累積エラー回数の指標として第１段階の値を示す「エラー回数規定値レベル１」、ディスク装置の累積エラー回数の指標として第２段階の値を示す「エラー回数規定値レベル２」、スペアディスク装置として運用されていることを示す「スペアビット」、ディスク装置の運用状況を示す「ディスク装置状況」、ディスク装置障害に対応するために使うスペアディスク装置との関連付けを示す「ペアディスク装置」を有する。
【００３６】
「エラー回数規定値レベル１」には、対象となるディスク装置のエラー回数が累積し障害が発生する可能性が高くなった場合に、スペアディスク装置とのミラーリングを開始する契機を示す値を設定する。「エラー回数規定値レベル２」には、「エラー回数規定値レベル１」の値よりも高い値を設定し、対象となるディスク装置のエラー回数が累積し運用が継続できないとみなせる状況になったと判定する値とし、ディスク装置を閉塞させ、スペアディスク装置とのミラーリングを終了する契機を示す値を設定する。「スペアビット」には、該当ディスク装置がスペアディスク装置である場合はＹＥＳを、そうでない場合はＮＯを設定する。「エラー回数規定値レベル１」、「エラー回数規定値レベル２」、「スペアビット」の設定は、ユーザが管理端末５００の入力手段５１０を用いて設定する。
【００３７】
「ディスク装置状況」には、ディスク装置の運用状況として異常がないことを示す「正常」、エラー回数カウンタの値が「エラー回数規定値レベル１」に達し、スペアディスク装置とのミラーリングを実施していることを示す「ミラー」、エラー回数カウンタの値が「エラー回数規定値レベル２」に達し、該当ディスク装置を運用継続不可とみなしたことを示す「閉塞」のパラメータを設定する。「ペアディスク装置」には、ミラーリングするペアとなるディスク装置の「ディスク装置Ｎｏ．」を設定する。ディスク装置管理テーブル２４０の各パラメータ値は、ユーザ指示により管理端末５００の出力手段５２０に出力表示する。
【００３８】
図３は、ディスク装置管理部２３０である。２３１は、ディスク装置のエラー発生状況を監視し、ディスク装置のエラー発生回数が「エラー回数規定値レベル１」を超えた場合にディスク装置とスペアディスク装置のミラーリング開始を指示し、「エラー回数規定値レベル２」を超えた場合はミラーリングを終了するように指示するエラー監視部である。２３２は、ディスク装置のエラー発生回数をカウントし、ディスク装置管理テーブル２４０の「エラー回数カウンタ」に積算したエラー発生回数を設定するエラーカウント部である。２３３は、管理端末５００を使ってユーザが指定したパラメータをディスク装置管理テーブル２４０に設定するエラー回数規定値設定部である。２３４は、エラー監視部２３１の指示により、ディスク装置の運用状況をディスク装置管理テーブル２４０に設定するディスク状況設定部である。２３５は、あるディスク装置とスペアディスク装置へのアクセスをミラーリングするミラー部である。２３６はディスク装置の閉塞と該装置が行っていた処理のスペアディスク装置への移行を指示する閉塞移行監視部である。２３７は閉塞監視部の指示によりディスク装置の閉塞・移行を行う閉塞移行部である。
【００３９】
以上が、本実施形態のアレイ型ディスク装置のシステム構成である。
（２）予防スペアコピー動作
従来の技術では、ディスク装置のエラー発生回数を監視し、ある規定値に達した場合にスペアディスク装置にコピーし、該当ディスク装置を閉塞させるのに対し、本実施形態では、規定値を２段階設け、第１段階の規定値レベル１に達した場合にスペアディスク装置とのミラーリングを開始する。その際、該当ディスク装置は閉塞させずに運用を継続する。第２段階の規定値レベル２に達した場合にミラーリングを解除し、該当ディスク装置を閉塞させスペアディスク装置にて運用を継続する。
【００４０】
次に、予防スペアコピー動作を図４のフローチャートを用いて説明する。
【００４１】
前提として、各ディスク装置３０１〜３０７のエラー発生状況は、エラーカウント部２３２によってカウントし、ディスク装置管理テーブル２４０に継続的に設定されているものとする。図４は、ディスクアレイグループ（ＲＡＩＤ）グループを構成するディスク装置３０１〜３０５に対して、独立に実施するものとする。
【００４２】
まず、エラー監視部２３１が、監視の対象としている該当ディスク装置のディスク装置管理テーブル２４０の「エラー回数カウンタ」の値が「エラー回数規定値レベル１」に達したかどうかを判定する（ステップ１００１）。達していない場合は、引き続きステップ１００１を繰り返す。達していた場合は、「スペアビット」がＹｅｓとなっているディスク装置を探索し、スペアディスク装置を選択する（ステップ１００２）。その後、エラー監視部２３１は、選択したスペアディスク装置の「ペアディスク装置」に該当ディスク装置のディスク装置番号を設定し（ステップ１００３）、対象となるディスク装置の「ペアディスク装置」にスペアディスク装置の番号を設定する（ステップ１００４）。次に、エラー監視部２３１は、対象となるディスク装置とスペアディスク装置の「ディスク装置状況」をミラーのステータスに設定し（ステップ１００５）、ミラー部２３５に指示を送り、該当ディスク装置とスペアディスク装置のミラーリングを開始する（ステップ１００６）。
【００４３】
ここで、図２にディスク装置管理テーブル２４０の設定状況の例を示す。「ディスク装置Ｎｏ．」として０〜４にてディスクアレイ（ＲＡＩＤ）グループを構成するディスクアレイにおいて、「ディスク装置Ｎｏ．」の４のディスク装置が「エラー回数規定値レベル１」である「５０」という値を超えた「エラー回数カウンタ」の値６０となっている。この状態はすでにスペアディスク装置である「ディスク装置Ｎｏ．」の５とのミラーリングが開始された状況であり、「ディスク装置Ｎｏ．」の４のディスク装置の「ディスク装置状況」はミラー、「ペアディスク装置」はＮｏ．５となっており、「ディスク装置Ｎｏ．」の５のディスク装置の「ディスク装置状況」はミラー、「ペアディスク装置」はＮｏ．４となっている。
【００４４】
図４に戻り、次のステップとして、エラー監視部２３１が、監視の対象としている該当ディスク装置のディスク装置管理テーブル２４０の「エラー回数カウンタ」の値が「エラー回数規定値レベル２」に達したかどうかを判定する（ステップ１００７）。達していない場合は、引き続きステップ１００７を繰り返す。達していた場合は、閉塞移行監視部が閉塞開始およびスペアディスク装置への移行開始を指示し、対象となるディスク装置の「ディスク装置状況」を閉塞のステータスに、スペアディスク装置の「ディスク装置状況」を正常のステータスに設定し（ステップ１００８）、ミラー部２３５に指示を送り、該当ディスク装置とスペアディスク装置のミラーリングを終了し、対象ディスク装置に行っていた処理をスペアディスク装置に移行する（ステップ１００９）。上記の閉塞及び移行は閉塞移行部により行う。スペアディスク装置がどのディスクから移行したかは「ペアディスク装置」の値を参照すればよい。
【００４５】
以上が、予防スペアコピー動作である。
（３） 効果
従来の技術では、ディスク装置のエラー発生回数を監視し、ある規定値に達した場合にスペアディスク装置にコピーし、該当ディスク装置を閉塞させるのに対し、本実施形態では、規定値を２段階設け、第１段階の規定値に達した場合にスペアディスク装置とのミラーリングを開始する。その際、該当ディスク装置は閉塞させずに運用を継続する。第２段階の規定値に達した場合にミラーリングを解除し、該当ディスク装置を閉塞させスペアディスク装置にて運用を継続する。
【００４６】
また、ミラーリングしているだけであるため、仮に該当ディスク装置以外のディスク装置で、第２段階の規定値を超えるようなエラー発生状況となった場合、該当ディスク装置のミラーリングを解除し、スペアディスク装置を他のディスク装置のスペアとして使用することも可能である。
【００４７】
例えば、図２のディスク装置管理テーブル２４０の例が示すように、「ディスク装置No.」の４のディスク装置が「エラー回数規定値レベル１」である「５０」という値を超えた「エラー回数カウンタ」の値６０となっている場いいで、「ディスク装置No.」４のディスクと、「ディスク装置No.」の５のディスク装置が６０となっている場合で、「ディスク装置No.」の５のディスク装置がミラーリングされている状態を想定する。この状態で、「ディスク装置No.」の０のディスク装置の「エラー回数カウンタ」の値が、「エラー回数規定値レベル２」である「９０」という値を超えた場合、エラー監視部２３１が「ディスク装置No.」の４と５のミラーリングを解除し、「ディスク装置No.」の５のディスク装置を「ディスク装置No.」の０のディスクのスペアとして使用することができる。「ディスクNo.」の０のディスクはエラー発生頻度が高くなり、故障状態となりそうなディスク装置であり、故障状態となる前にデータをスペアディスク装置にコピーする。
【００４８】
このように、他のディスク装置のスペアディスク装置としての転用が可能であるため、第１段階の規定値は、従来の技術で規定していた値よりも、低い値とすることが可能で、ディスクの２重障害に対する耐性を向上できる。また、スペアディスクの転用が可能であるため、第１段階で閉塞させる従来の技術と比較して、スペアディスク装置のコストを抑止できる。
【００４９】
また、第１段階でミラーリングしておくので、第２段階の規定値に達したときに即時にスペアディスク装置への切り替えが可能であり、ディスク装置の２重障害に対する耐性を向上できる。
【００５０】
以上、本実施形態により、スペアディスク装置に予防コピーしておくディスクアレイにおいて、スペアディスク装置のコストを上げることなく、ディスク２重障害の確率を下げる信頼性の高いアレイ型ディスク装置を提供することができる。
【００５１】
（第２の実施形態）
第２の実施形態は、第１の実施形態と同様に、発明が解決しようとする課題の第１の目的を解決するためのものである。すなわち、スペアディスク装置に予防コピーしておくアレイ型ディスク装置において、スペアディスク装置のコストを上げることなく、ディスク装置の２重障害の確率を下げる信頼性の高いアレイ型ディスク装置を提供することである。
（１）構成の説明
本発明の第２の実施形態のシステム構成を説明する。簡単化のため、第１の実施形態との違いについてのみ述べる。システム構成は第１の実施形態と同様に図１である。
ディスク装置群３１０は、ディスク装置３０１から３０７とからなる。ディスク３０１〜３０５は、従来の技術で述べたようなディスク装置の並列動作と冗長性の付加により、性能と信頼性を強化したディスクアレイを構成しており、この状態をディスク装置３０１から３０５の組でディスクアレイ（ＲＡＩＤ）グループを構成していると呼ぶこととする。ディスク装置３０６，３０７はディスクアレイ（ＲＡＩＤ）グループを構成するディスク装置が故障したときに替わりにディスクアレイ（ＲＡＩＤ）グループに組み入れるためのスペアディスク装置であるが、第１の実施形態との違いはエラー発生回数が少ないうちから、エラー発生回数の多いディスク装置に対してミラーリングを行っておくことである。ミラーリングを行うスペアディスク装置は全スペアディスク装置、もしくは、２台以上のスペアディスク装置があることが望ましいが１台のスペアディスクでもよい。また、ミラーリングしているディスク装置以外のディスク装置で、ミラーリングをしているディスク装置のエラー発生回数を超える状況になった場合には、ミラーリングをしているディスク装置のうちエラー発生回数が最も低いディスク装置のミラーリングを解除し、解除したスペアディスク装置をエラー発生回数が高くなったディスク装置に対するミラーリングを行うスペアディスク装置として使用する。ミラーリングを組むディスク装置をダイナミックに切り替えていくことから、この動作をダイナミックミラーリング動作と呼ぶこととする。
【００５２】
図５は、第２の実施形態のディスク装置管理テーブル２４０であり、パラメータは、第１の実施形態の図２と同様である。第１の実施形態との違いは、「エラー回数規定値レベル１」には、対象となるディスク装置のエラー回数が累積し障害が発生する確率が高くなった場合に、全ディスク装置の「エラー回数カウンタ」を調査し、スペアディスク装置を「エラー回数カウンタ」の値の高い方のディスク装置とミラーリングを開始する契機を示す値を設定する。
【００５３】
「ディスク装置状況」には、ディスク装置の運用状況として異常がないことを示す「正常」、スペアディスク装置とのミラーリングを実施していることを示す「ミラー」、エラー回数カウンタの値が「エラー回数規定値レベル２」に達し、該当ディスク装置を運用継続不可とみなしたことを示す「閉塞」のパラメータを設定する。
【００５４】
第２の実施形態においては、ディスク装置管理部２３０は図３であり、２３１は、ディスク装置のエラー発生状況を監視し、ディスク装置のエラー発生回数が「エラー回数規定値レベル１」を超えた場合、全ディスク装置の「エラー回数カウンタ」を調査し、スペアディスク装置を「エラー回数カウンタ」の値の高い方のディスク装置とミラーリングを開始し、「エラー回数規定値レベル２」を超えた場合はミラーリングを終了するよう指示するエラー監視部である。
以上が、本実施形態のシステム構成である。
【００５５】
（２）ダイナミックミラーリング動作
従来の技術では、ディスク装置のエラー発生回数を監視し、ある規定値に達した場合にスペアディスク装置にコピー(ミラーリング)し、該当ディスク装置を閉塞させるのに対し、本実施形態では、エラー発生回数が少ないうちから、エラー発生回数の多いディスク装置に対しミラーリングを行っておき、ミラーリングを組むディスク装置をエラー発生回数に応じて、ダイナミックに切り替えていく。
【００５６】
次に、ダイナミックミラーリング動作を図６−１及び図６−２のフローチャートを用いて説明する。前提として、各ディスク装置３０１から３０７のエラー発生状況は、エラーカウント部２３２によってカウントし、ディスク装置管理テーブル２４０に継続的に設定されているものとする。
【００５７】
まず、エラー監視部２３１が、ディスク装置管理テーブル２４０の「エラー回数カウンタ」の値が「エラー回数規定値レベル１」に達したディスク装置があるかどうかを判断する(ステップ１５０１)。この場合、「エラー回数規定値レベル１」に達したディスク装置はどのディスク装置であってもよい.「エラー回数カウンタ」の値が「エラー回数規定値レベル１」に達したディスク装置がない場合は、引き続きステップ１５０１を繰り返す。
【００５８】
「エラー回数規定値レベル１」に達したディスク装置がある場合は、全ディスク装置の「エラー回数カウンタ」の値を調査する(ステップ１５０２)。次に、エラー監視部２３１は、「スペアビット」がYESとなっているディスク装置を探索し、「ミラー状況」がミラーとなっていないディスク装置、即ちペアを組んでいないスペアディスク装置があるかどうかを判定する(ステップ１５０３)。
【００５９】
ペアを組んでいないスペアディスク装置がある場合は、エラー監視部２３１が、ペアを組んでいないディスク装置のうち、「エラー回数カウンタ」の値が最大のものをペアリング対象に選定し（ステップ１５０４）、スペアディスク装置の「ペアディスク装置」に対象となるディスク装置番号を設定し(ステップ１５０５)、対象となるディスク装置の「ペアディスク装置」にスペアディスク装置番号を設定し(ステップ１５０６)、対象となるディスク装置とスペアディスク装置の「ディスク装置状況」をミラーのステータスに設定し(ステップ１５０７)、ミラー部２３５にミラー開始を指示し(ステップ１５０８)、ステップ１５０３に戻る。
ペアを組んでいないスペアディスク装置がない場合は、ステップ１５０９に移行する。
【００６０】
ここで、図５にディスク装置管理テーブル２４０の設定状況の例を示す。「ディスク装置No.」として０〜４にてレイド（RAID）グループを構成するディスクアレイにおいて、「ディスク装置No.」の２のディスクが「エラー回数規定値レベル１」である「３０」という値を超えた「エラー回数カウンタ」の値３５となっている。この状態はすでにステップ１５０９まで移行した状況であり、スペアディスク装置である「ディスク装置No.」の５と「ディスク装置No.」の２のミラーリングが開始された状況であり、「ディスク装置No.」の２の「ディスク装置状況」はミラー、「ペアディスク装置」はNo.5となっており、「ディスク装置No.」の５のディスク装置の「ディスク装置状況」はミラー、「ペアディスク装置」はNo.２となっている。また、２番目に「エラー回数カウンタ」の値が大きかった「ディスク装置No.」の４のディスク装置とペアディスク装置である「ディスク装置No.」の６のミラーリングが開始された状況であり、「ディスク装置No.」の４のディスク装置の「ディスク装置状況」はミラー、「ペアディスク装置」はNo.6となっており、「ディスク装置No.」の６のディスクの「ディスク装置状況」はミラー、「ペアディスク装置」はNo.4となっている。
【００６１】
図６−２に戻り、次のステップ１５０９として、エラー監視部２３１が、ペアを組んでいないディスク装置のうち、ペアを組んでいるディスク装置を超える「エラー回数カウンタ」の値となったディスク装置があるかどうか判定する(ステップ１５０９)。
【００６２】
該当のディスク装置がある場合は、エラー監視部２３１が、ペアを組んでいないディスク装置のうち、ペアを組んでいるディスク装置を超える「エラー回数カウンタ」の値となったディスクをペアリング対象に選定し(ステップ１５１０)、ペアを組んでいるディスクのうち、「エラー回数カウンタ」の値が最小のディスクにおけるペアリングを解除し(ステップ１５１１)、ペアリングを解除したスペアディスク装置の「ペアディスク装置」に対象となるディスク装置番号を設定し(ステップ１５１２)、対象となるディスク装置の「ペアディスク装置」にスペアディスク装置番号を設定し(ステップ１５１３)、対象となるディスク装置とスペアディスク装置の「ディスク装置状況」をミラーのステータスに設定し(ステップ１５１３)、ミラー部２３５にミラー開始を指示し(ステップ１５１５)、ステップ１５０９に戻る。
【００６３】
ここで、図５のディスク装置管理テーブル２４０の設定状況の例を用いて、ステップ１５０９からステップ１５１５を説明する。スペアディスク装置である「ディスク装置No.」の５と「ディスク装置No.」の２のミラーリングが実施され、スペアディスク装置である「ディスク装置No.」の６と「ディスク装置No.」の４のミラーリングが実施されている状況を示している。
【００６４】
この状況において、例えば、「ディスク装置No.」の０のディスク装置の「エラー回数カウンタ」の値が、ミラーリングしている「ディスク装置No.」のディスク装置の値を超える２５となった場合を想定する。この場合、ステップ１５０９でいうところのYesの状況であり、次のミラーリング対象を「ディスク装置No.」の０のディスク装置とし、ミラーリングしているディスク装置のうち「エラー回数カウンタ」の値が最小の「ディスク装置No.」の４のペアリングを解除し、ペアを解除したスペアディスク装置である「ディスク装置No.」の６と、新規にミラーリングの対象となった「ディスク装置No.」の０のディスク装置のミラーリングを実施するように動作する。
【００６５】
図６−２に戻り、ステップ１５０９においては、ペアを組んでいないディスク装置のうち、ペアを組んでいるディスク装置を超える「エラー回数カウンタ」の値となったディスク装置がない場合はエラー監視部２３１が、監視の対象としているディスク装置の「エラー回数カウンタの値」が「エラー回数規定値レベル２」に達したかどうか判定する(ステップ１５１６)。達していない場合は、ステップ１５０９に戻る。達していた場合は、対象となるディスク装置の「ディスク装置状況」を関連のステータスに、スペアディスク装置の「ディスク装置状況」を正常のステータスに設定し(ステップ１５１７)、ミラー部２３５に指示を送り、該当ディスク装置とスペアディスク装置のミラーリングを終了し、対象ディスク装置に行っていた処理をスペアディスク装置に移行し(ステップ１５１８)、ステップ１５０９に戻る。スペアディスク装置がどのディスク装置に移行したかは「ペアディスク装置」の値を参照すればよい。
以上がダイナミックミラーリングの動作である。
【００６６】
なお、「エラー回数規定値レベル１」の値を０にしておき、当初からステップ１５０２移行のダイナミックミラーリング動作を実施してもよい。
また、ステップ１５０９における判定基準を、ペアを組んでいないディスク装置のうち、ペアを組んでいるディスク装置中の「エラー回数カウンタ」の最大値を超えたディスク装置があるかどうかの判定としてもよい。または、ペアを組んでいるディスク装置の「エラー回数カウンタ」の値から導かれる中間値、平均値等の値を超えたディスク装置があるかどうかの判定としてもよい。
【００６７】
（３）効果
従来の技術では、ディスク装置のエラー発生回数を監視し、ある規定値に達した場合にスペアディスク装置にコピーし、該当ディスク装置を閉塞させるのに対し、本実施形態では、エラー発生回数が少ないうちから、エラー発生回数の多いディスク装置に対してミラーリングを行っておき、ミラーリングを組むディスク装置をエラー発生回数に応じて、ダイナミックにきりかえていくため、第２段階の規定値に達したときに即時にスペアディスク装置への切り替えができる確率が上がり、ディスク装置の２重障害に対する耐性を向上できる。
【００６８】
なお、ダイナミックミラーリングを行うディスク装置を１つのアレイディスク（RAID）グループに対して行うよう記載したが、アレイ型ディスク装置全体にあるアレイディスク（RAID）グループに対して、アレイ型ディスク装置内にある全スペアディスク装置を用いてダイナミックミラーリングを実施してもよい。
【００６９】
（第３の実施形態）
第３の実施形態は、発明が解決しようとする課題の第２の目的を解決するためのものである。
すなわち、ディスクアレイ（ＲＡＩＤ）グループを形成する１台のディスク装置が故障状態になったアレイ型ディスク装置において、ディスク２重障害の確率を低減する信頼性の高いアレイ型ディスク装置を提供することである。
【００７０】
（１） 構成の説明
本発明の第３の実施形態の装置構成を図７〜９を用いて説明する。簡単化のため、第１の実施形態との違いについてのみ述べる。図７においては図１の構成に加え、ディスク装置が閉塞し、ディスクアレイ（ＲＡＩＤ）グループを構成する他のディスク装置からスペアディスク装置にデータを復元するデータ復旧部２７０をメモリ２０２に設置する。
【００７１】
また、図７のディスク装置管理テーブル２４０が所持するパラメータは、図２の場合と比較してエラー回数規定値レベル２を除いたものである。また、以下の点で格納内容が異なる。
【００７２】
「エラー回数規定値レベル１」には、対象となるディスク装置のエラー回数が累積し障害が発生する可能性が高くなった場合に、スペアディスク装置にコピーを開始する契機を示す値を設定する。コピー終了後、対象となるディスク装置の処理はスペアディスク装置に移行するが、データ復旧部２７０が実施する対象ディスク装置からの読み出しは許可する。
【００７３】
「ディスク装置状況」には、ディスク装置の運用状況として異常がないことを示す「正常」、エラー回数カウンタの値が「エラー回数規定値レベル１」に達し、スペアディスク装置にコピーしている状態である「コピー」、スペアディスク装置にコピーが終了し、データ復旧手段２７０が実施する対象ディスク装置からの読み出しは許可する状態である「仮閉塞」、コピーが終了した後の「閉塞」、アレイディスク（ＲＡＩＤ）グループを構成する他のディスク装置からスペアディスク装置にデータを復元する処理を実行中であることを示す「復旧中」の各パラメータを設定する。「ペアディスク装置」には、コピーするペアとなるディスク装置の「ディスク装置Ｎｏ．」を設定する。
【００７４】
また、図９は、第３の実施形態のディスク装置管理部２３０であり、図３のミラー部２３５に替わり、２３６のコピー部を有する。２３１のエラー監視部は、ディスクのエラー発生状況を監視し、ディスク装置のエラー発生回数が「エラー回数規定値レベル１」を超えた場合にディスク装置からスペアディスク装置へのコピー開始を指示し、コピー中は仮閉塞のステータスにし、コピー終了後は、閉塞のステータスにする。２３６のコピー部は、あるディスクのデータをスペアディスクにコピーする。
以上が、本実施形態のシステム構成である。
【００７５】
（２）セクタ障害復旧動作
本実施形態では、あるセクタの読み出しができなくなり、ディスクアレイ（ＲＡＩＤ）グループを構成する他のディスク装置からスペアディスク装置にデータを復旧することになった状況において、さらに、ディスクアレイ（ＲＡＩＤ）グループを構成する他のディスク装置のあるセクタが読み出せなくなるディスク２重障害のケースでのデータ復旧の可能性を向上させる。あるセクタの読み出しができなくなったディスク装置はデータ復旧部２７０が実施する読み出しについては許可する仮閉塞状態としておく。
【００７６】
次に、セクタ障害復旧動作を図１０のフローチャートを用いて説明する。
前提として、各ディスク装置３０１〜３０７のエラー発生状況は、エラーカウント手段２３２によってカウントし、ディスク装置管理テーブル２４０に継続的に設定されているものとする。図１０は、ディスクアレイ（ＲＡＩＤ）グループを構成するディスク装置３０１〜３０５に対して、独立に実施するものとする。また、ディスクアレイ（ＲＡＩＤ）グループを構成する「ディスク装置Ｎｏ．」の４は、エラー回数が多くなっていると同時にあるセクタが読み出せなくなっており、エラー回数カウンタにかかわらず、仮閉塞状態としている。「ディスク装置Ｎｏ．」の０〜３を用いて、スペアディスク装置である「ディスク装置Ｎｏ．」の５にディスクアレイ（ＲＡＩＤ）の冗長性を使ってデータを復旧している状況を想定する。この状況において、「ディスク装置Ｎｏ．」の０のあるセクタが読み出せなくなり、「ディスク装置Ｎｏ．」の４の同一セクタからデータを読み出し、ディスクアレイ（ＲＡＩＤ）グループの復旧をするものと想定する。
【００７７】
まず、データ復旧部２７０が、「ディスク装置Ｎｏ．」の０〜３のデータをもとに、「ディスク装置Ｎｏ．」の５のスペアディスク装置に、「ディスク装置Ｎｏ．」の４相当のデータ復旧処理を開始する（ステップ２００１）。次に、データ復旧部２７０は、復旧が終了したかどうかを判定し（ステップ２００２）、終了した場合は復旧対象となる「ディスク装置Ｎｏ．」の４の処理をスペアディスク装置に移行し（ステップ２００３）、処理を終了する（ステップ２００４）。終了していない場合は、復旧に使用している「ディスク装置Ｎｏ．」の０〜３のディスク装置にセクタが読み出せないセクタ障害があるかどうかを判定する（ステップ２００５）。セクタ障害がない場合は、引き続きステップ２００２を繰り返す。セクタ障害がある場合は、仮閉塞となっている「ディスク装置Ｎｏ．」の４の同一セクタから読み出しを試みる（ステップ２００６）。データ復旧部２７０は、読み出しが成功したかどうかの判定を行い（ステップ２００７）、成功した場合は読み出したセクタの内容をもとに復旧処理を実施し（ステップ２００８）、ステップ２００２に戻る。失敗した場合は、対応セクタをデータロスト扱いにし（ステップ２００９）、ステップ２００２に戻る。
【００７８】
以上が、セクタ障害復旧動作である。
【００７９】
（３）セクタ障害復旧動作時のライト動作
前提として、各ディスク装置３０１〜３０７のエラー発生状況は、エラーカウント部２３２によってカウントし、ディスク装置管理テーブル２４０に継続的に設定されているものとする。図１は、ディスク装置３０１〜３０５により構成するディスクアレイ（RAID）グループ全体に対して実施するものとする。また、ディスク装置３０１〜３０５によりディスクアレイ（RAID）グループを構成しており、各ディスク装置内にはデータとパリティが格納されており、パリティとパリティを算出するためのデータの組をストライプセットと呼ぶこととする。
【００８０】
図１１において、まず、管理制御部２００がホスト１００からの書き込み要求を受け取ると、ディスクアレイ（RAID）制御部２１０は、書き込み先が仮閉塞しているディスク装置かどうかを判定する(ステップ２５０１)。
【００８１】
書き込み先が仮閉塞ディスク装置の場合、ステップ２５０２以降の処理となる。ここで仮閉塞ディスク装置をディスク装置３０５、書き込ムデータの同一ストライプセットのパリティが格納されているディスク装置をディスク装置３０１とする。まずディスクアレイ（RAID）制御部２１０は、仮閉塞しているディスク装置３０５とパリティが格納されているディスク装置３０１以外のディスク装置３０２から３０４から書き込むデータに対応する同一ストライプセットのデータを読み出す(ステップ２５０２)。次に、書き込みデータとステップ２５０２で読み出したデータの排他的論理和を算出し、新パリティを生成する(ステップ２５０３)。次に、書き込むデータを仮閉塞ディスク装置であるディスク装置３０５に書き込み(ステップ２５０４)、新パリティをパリティが格納されているディスク装置３０１に格納し(ステップ２５０５)、処理を終了する。
【００８２】
書き込み先が仮閉塞しているディスク装置でない場合、ステップ２５０７以降の処理となる。ディスクアレイ（RAID）制御部２１０は、書き込むデータのストライプセットのパリティが仮閉塞しているディスク装置にあるかどうか判定する(ステップ２５０７)。
【００８３】
パリティが仮閉塞しているディスク装置にある場合、ステップ２５０８以降の処理となる。ここで、仮閉塞しているディスク装置をディスク装置３０５、書き込むデータが格納されているディスク装置を３０１とする。まず、ディスクアレイ（RAID）制御部２１０は仮閉塞しているディスク装置３０５とデータが格納されているディスク装置３０１以外のディスク装置３０２空０４から書き込むデータに対応する同一ストライプセットのデータを読み出す(ステップ２５０８).次に、書き込みデータとステップ２５０８で読み出した同一ストライプセットのデータの排他的論理和を算出し、新パリティを生成する(ステップ２５０９)。次に、書き込むデータをディスク装置３０１に書き込み(ステップ２５１０)、新パリティをパリティが格納されている仮閉塞しているディスク装置であるディスク装置３０５に格納し(ステップ２５１１)、処理を終了する。
【００８４】
パリティが仮閉塞しているディスク装置にない場合、ステップ２５１２以降の処理となる。ここで仮閉塞しているディスク装置をディスク装置３０５、書き込むデータが格納されているディスク装置をディスク装置３０１、同一ストライプセットのパリティが格納されているディスク装置をディスク装置３０２とする。まず、ディスクアレイ（RAID）制御部２１０は、書き込むデータの更新前のデータが格納されているディスク装置３０１から旧データを読み出し、更新前のパリティが格納されているディスク装置３０２から旧パリティを読み出す(ステップ２５１２)。次に、書き込みデータと、ステップ２５１２で読み出した旧データと旧パリティの排他的論理和を算出し、新パリティを生成する(ステップ2513).次に、書き込むデータをディスク装置３０１に書き込み(ステップ２５１４)、新パリティをパリティが格納されているディスク装置３０２に格納し(ステップ２５１５)、処理を終了する。
【００８５】
以上が、セクタ障害復旧中にホストより書き込み要求が来た場合のライト動作である。
なお、ディスクアレイ（RAID）の冗長性を利用してデータを復旧できることから、ステップ２５０４、ステップ２５１１での仮閉塞しているディスク装置への書き込みは省略してもよい。また、ステップ２５０４、ステップ２５１１での仮閉塞しているディスクへの書き込みに替えて、スペアコピーを実施しているスペアディスク装置に書き込むようにしてもよい。また、ステップ２５０４、ステップ２５１１での仮閉塞しているディスク装置への書き込みに加えて、スペアコピーを実施しているスペアディスク装置にも仮閉塞しているディスク装置に書き込み内容を書き込むようにしてもよい。
（４）効果
本実施形態では、あるセクタの読み出しができなくなり、ディスクアレイ（ＲＡＩＤ）グループを構成する他のディスク装置からスペアディスク装置にデータを復旧することになった状況において、さらに、ディスクアレイ（ＲＡＩＤ）グループを構成する他のディスク装置のあるセクタが読み出せなくなるディスク装置２重障害のケースでのデータ復旧の可能性を向上させることができる。
【００８６】
以上、本実施形態により、ディスクアレイ（ＲＡＩＤ）グループを形成する１台のディスク装置が故障状態になったアレイ型ディスク装置において、ディスク装置２重障害の確率を下げる信頼性の高いアレイ型ディスク装置を提供することができる。
【００８７】
なお、スペアディスク装置に予防コピーを行うことを前提として記載したが、予防コピーを行わないアレイ型ディスク装置においても、本実施形態は適用可能である。
【００８８】
また、アレイ型ディスク装置の復旧開始の前提として、あるセクタ読み出しができなくなったディスクアレイ型ディスク装置の存在が復旧の契機であるとしたが、その他の条件であっても構わない。たとえば、エラー発生回数が規定値を超えたことにより、閉塞状態とみなしたことディスク装置の復旧を開始したという契機であってもよい。
【００８９】
（第４の実施形態）
第４の実施形態は、発明が解決しようとする課題の第３の目的を解決するためのものである。
すなわち、スペアディスク装置に予防コピーしておくアレイ型ディスク装置において、ディスクアレイ（ＲＡＩＤ）グループを形成する複数のディスク装置の故障ポテンシャルが高くなっている状態において、ディスク装置２重障害の確率を下げる信頼性の高いアレイ型ディスク装置を提供することである。
（１） 構成の説明
本発明の第４の実施形態のアレイ型ディスク装置構成を図１２、１３を用いて説明する。簡単化のため、第３の実施形態との違いについてのみ述べる。アレイ型ディスク装置構成図としては、第２の実施形態の図７と同一である。ただし、データ復旧手段２７０の機能として、データ復旧中にセクタ障害があった場合に、かわりとなるセクタを読み出す機能は持たなくてもよい。
【００９０】
また、図１２のディスク装置管理テーブル２４０は、所持するパラメータは図８と比較してエラー回数補助規定値を付加したものである。また、以下の点で図８と格納内容が異なる。
【００９１】
「エラー回数規定値レベル１」には、対象となるディスク装置のエラー回数が累積し障害が発生する可能性が高くなった場合に、スペアディスク装置にコピーを開始する契機を示す値を設定する。コピー終了後、対象となるディスク装置の処理はスペアディスク装置に移行し、対象となるディスク装置は閉塞状態とする。「エラー回数補助規定値」には、「エラー回数規定値レベル１」の値よりも低い値を設定し、ディスクアレイ（ＲＡＩＤ）グループを構成するディスク装置のうち、複数のディスク装置がこの値に達すると、潜在的に同時に障害を起こす危険性が高いことを意味する値とする。
【００９２】
「ディスク装置状況」には、ディスク装置の運用状況として異常がないことを示す「正常」、エラー回数カウンタの値が「エラー回数規定値レベル１」に達し、スペアディスク装置にコピーしている状態である「コピー」、スペアディスク装置にコピーが終了した後の「閉塞」、ディスクアレイ（ＲＡＩＤ）グループを構成する他のディスク装置からスペアディスク装置にデータを復元する処理を実行中であることを示す「復旧中」の各パラメータを設定する。
【００９３】
また、図１３は、第４の実施形態のディスク装置管理手段２３０であり、図３のミラー部２３５に替わり、２３６のコピー部を有する。２３１のエラー監視部は、ディスク装置のエラー発生状況を監視し、ディスク装置のエラー発生回数が「エラー回数規定値レベル１」を超えた場合にディスク装置からスペアディスク装置へのコピー開始を指示し、コピー終了後は、閉塞のステータスにする。２３７は、「エラー回数規定値レベル１」の値を再設定するエラー回数規定値変更部である。
以上が、本実施形態のアレイ型ディスク装置構成である。
【００９４】
（２）ディスク装置２重障害予防動作
本実施形態は、ディスクアレイ（ＲＡＩＤ）グループを形成する複数のディスク装置の故障ポテンシャルが高くなっている状態において、スペアディスク装置への予防コピー開始契機となるエラー発生回数の規定値を動的に変更することでディスク装置２重障害の確率を下げるものである。
【００９５】
次に、ディスク装置２重障害予防動作を図１４のフローチャートを用いて説明する。
【００９６】
前提として、各ディスク装置３０１〜３０７のエラー発生状況は、エラーカウント部２３２によってカウントし、ディスク装置管理テーブル２４０に継続的に設定されているものとする。図１１は、ディスクアレイ（ＲＡＩＤ）グループを構成するディスク装置３０１〜３０５に対して、独立に実施するものとする。また、ディスクアレイ（ＲＡＩＤ）グループを構成する「ディスク装置Ｎｏ．」の１と３は、エラー回数が多くなっており、潜在的にディスク装置の２重障害のポテンシャルが高くなっている状態を想定する。
【００９７】
まず、エラー監視部２３１が、監視の対象としている該当ディスク装置のディスク装置管理テーブル２４０の「エラー回数カウンタ」の値が「エラー回数規定値レベル１」に達したかどうかを判定する（ステップ３００１）。達した場合は、該当ディスク装置の内容をスペアディスク装置にコピーし、移行する処理を行う（ステップ３００２）。達していない場合は、「エラー回数カウンタ」の値が「エラー回数補助規定値」に達したかどうかを判定する（ステップ３００４）。達していない場合は、引き続きステップ３００１を繰り返す。達していた場合は、同一ディスクアレイ（ＲＡＩＤ）グループを構成する対象以外のディスク装置でエラー回数のカウンタの値が「エラー補助規定値」に達しているものがあるかどうかを判定する（ステップ３００５）。達しているものがない場合は、引き続きステップ３００１を繰り返す。達しているものがある場合は、ディスクアレイ（ＲＡＩＤ）グループを構成する全ディスク装置の「エラー回数規定値レベル１」の値を下げ（ステップ３００６）、引き続きステップ３００１を繰り返す。
【００９８】
「エラー回数規定値レベル１」の値の再設定はエラー回数規定値変更部２３７で実施する。再設定する値は、「エラー回数規定値レベル１」と「エラー補助規定値」の中間値としておくなど任意の値でよい。また、ステップ３００４、ステップ３００５では、同一ＲＡＩＤグループを構成する対象以外のディスク装置でエラー回数のカウンタの値が「エラー補助規定値」に達しているものがあるかどうかを判定基準としたが、たとえば、ディスクアレイ（ＲＡＩＤ）グループを構成する全ディスク装置の「エラー回数カウンタ」の値の合計値を判定基準としてもよい。
以上が、ディスク装置２重障害予防動作である。
【００９９】
（３） 効果
本実施形態によれば、スペアディスク装置に予防コピーしておくアレイ型ディスク装置において、ディスクアレイ（ＲＡＩＤ）グループを形成する複数のディスク装置の故障ポテンシャルが高くなっている状態において、ディスク装置２重障害の確率を下げる信頼性の高いアレイ型ディスク装置を提供することができる。
なお、第４の実施形態は、エラー回数の判断基準となる規定値を動的に変更するものであり、第１、第２、第３の実施形態と組み合わせて適用してもよい。
【０１００】
また、第１、第２の実施形態において、第３の実施形態のデータ復旧手段２７０を適用することで、ディスク装置障害を契機としたデータ復旧中における、あるディスク装置のセクタ読み出し障害にも対応することができる。
【０１０１】
（第５の実施形態）
次に、本発明の第５の実施形態を示す。第５の実施形態は、本発明が解決しようとする課題の第4の目的を達成するためのものである。
図１５は本発明の第５の実施形態のアレイ型ディスク装置の構成を示す説明図である。本実施例のアレイ型ディスク装置は、ホストコンピュータ１００とコマンド及びデータの入出力を行う複数のホストI/Fを具備した単一または複数のチェネルコントローラ（１１０１）とホストコンピュータとの入出力データを一時的に蓄えておくキャッシュメモリ（１３０１）とホストコンピュータの入出力データを記憶しておくディスク装置（１６０１〜１６０５）とディスク装置の制御を行うための単一または複数のディスク装置I/F１５５１を具備した単一または複数のディスクコントローラＡ（１４０１）と、同じく単一または複数のディスクドライブI/F１５５２を具備した単一または複数のディスクコントローラＢ（１４０２）がアクセス可能な共有メモリ１３０２と、チェネルコントローラ（１１０１）−キャッシュメモリ（１３０１）−共有メモリ１３０２−ディスクコントローラＡ及びＢ（１４０１、１４０２）間のデータ転送及び通信を行うためのシステム・バス（１２０１、１２０２）より構成される。
また、ディスク装置Ｄ１（１６０１）、Ｄ２（１６０２）、Ｄ３（１６０３）、Ｐ（１６０４）は、ディスクアレイ（ＲＡＩＤ）構成により冗長度を有している。
【０１０２】
ホストコンピュータ（１００）からライトデータを受領したチャネルコントローラ（１１０１）はキャッシュメモリ（１３０１）に退避すると共にディスクコントローラＡ（１４０１）またはディスクコントローラＢ（１４０２）に対して、キャッシュメモリ（１３０１）にあるライトデータをディスク装置（１６０１〜１６０４）に書き込むよう指示する。またホストコンピュータ（１００）からデータリード要求を受領したチェネルコントローラはディスクコントローラＡ（１４０１）または、ディスクコントローラＢ（１４０２）に対し、ディスク装置（ドライブ）（１６０１〜１６０４）よりデータを読み出し、キャッシュメモリ（１３０１）に転送するよう指示する。指示を受けたディスクコントローラＡ（１４０１）またはディスクコントローラＢ（１４０２）はディスク装置（１６０１〜１６０４）よりデータを読み出し、キャッシュメモリ（１３０１）に転送したのち、チャネルコントローラ（１１０１）にデータ読み出し完了を報告する。報告をうけたチェネルコントローラ（１１０１）データをキャッシュ（１３０１）よりホストコンピュータ（１００）に転送する。
【０１０３】
図１６はディスク装置Ｄ１（１６０１）でリードエラーが発生した場合の本発明の二重障害発生を防止したデータ回復を説明する図である。
【０１０４】
ディスク装置（ドライブ）Ｄ１（１６０１）上のデータＤ１D1(２００１)のリードエラーを検出したディスクコントローラＡ（１４０１）またはディスクコントローラＢ（１４０２）は共有メモリ（１３０２）上のディスク装置（ドライブ）情報（２１０１）を更新し、リードエラーとなったディスク装置Ｄ１（１６０１）のデータの冗長データをディスク装置Ｄ２（１６０２）のデータＤ２D1(２００２)、ディスク装置Ｄ３（１６０３）のデータデータＤ３D1(２００３)、ディスク装置ＤP（１６０４）のデータデータＰD1(２００４)を読み出してキャッシュメモリ（１３０１）にそれぞれ、データＤ２D1(２３０２)、データＤ３D1(２３０３)、データＰD1(２３０４)として転送したのち、データＤ２D1(２３０２)、データＤ３D1(２３０３)、データＰD1(２３０４)を用いて冗長度計算により、ディスク装置Ｄ１（１６０１）のデータＤ１D1(２３０１)を回復し、キャッシュメモリ（１３０１）に格納する。
【０１０５】
図１７はディスク装置情報（２１０１）の構成要素を示す概略図である。
ディスク装置情報（２１０１）はデータリードエラーの発生回数を示す障害カウンタ（エラー発生回数カウンタ）（３００１）、ディスク装置Ｓ（１６０５）へのデータ移行のコピー完了位置を示すコピーカウンタ（３００２）、ディスク装置のリード/ライト可否情報等を示すディスク装置状態（３００３）から構成され、障害カウンタ（エラー発生回数カウンタ）（３００１）、コピーカウンタ（３００２）の初期値は０、ディスク装置状態（３００３）の初期値は“通常状態”である。
【０１０６】
図１８はディスクドライブ状態（２１０１）のディスク装置状態が“通常状態”でディスク装置Ｄ１（１６０１）でデータリードエラーが発生した場合の状態変更処理を示すフローチャートである。
【０１０７】
ディスクコントローラＡ（１４０１）またはディスクコントローラＢ（１４０２）はディスク装置Ｄ１（１６０１）からのデータリードがエラーになった場合、ステップ４００１で前述のように共有メモリ（１３０２）にあるディスク装置Ｄ１（１６０１）に関するディスク装置情報（２１０１）の障害カウンタ（３００１）を加算する。次にステップ４００２で障害カウンタ（２１０１）がしきい値Ｎ１を超えたかどうか判定する。もししきい値Ｎ１を超えた場合、ディスクコントローラＡ（１４０１）または、ディスクコントローラＢ（１４０２）はディスク装置Ｄ１（１６０１）が近い将来完全にデータ読み出しができなくなる可能性があると考え、ステップ３００３でディスク装置情報（２１０１）のディスク装置状態（３００３）を“データ移行中”に変更し、ステップ３００３でディスク装置Ｄ1（１６０１）のデータＤ１D1(２００１)〜Ｄ１Dm(２００ｎ)をキャッシュメモリ（１３０１）上にデータＤ１D1(２３０１)〜Ｄ１Dm(２３０ｎ)として読み込み、順次ディスク装置Ｓ（１６０５）に書き込むことにより、ディスク装置Ｄ１（１６０１）のデータをディスクドライブＳ（１６０５）に移行する。またこの時ディスク装置Ｓ（１６０５）にデータＤ１Dm(0≦Dm≦Dn)移行毎にディスクドライブ情報（２１０１）のコピーカウンタをＤmに更新する。
【０１０８】
図１９はディスク装置状態（２１０１）のディスク装置状態が“データ移行中”でディスク装置Ｄ１（１６０１）においてでデータリードエラーが発生した場合の状態変更処理を示すフローチャートである。
【０１０９】
ディスクコントローラＡ（１４０１）またはディスクコントローラＢ（１４０２）はディスク装置Ｄ１（１６０１）からのデータリードがエラーになった場合、ステップ５００１で前述のように共有メモリ（１３０２）にあるディスク装置Ｄ１（１６０１）に関するディスク装置情報（２１０１）の障害カウンタ（エラー発生回数カウンタ）（３００１）を加算する。次にステップ５００２で障害カウンタ（エラー発生回数カウンタ）（２１０１）が規定値Ｎ２を超えたかどうか判定する。規定値Ｎ２を越えていた場合、ディスク装置状態を“警告”に変更し、ステップ５００４でデータ移行元のデータＤ１D1(２００１)〜Ｄ１Dm(２００ｎ)をディスク装置Ｄ１（１６０１）から読み出すのではなく、ディスクアレイのレイド（ＲＡＩＤ）機能を用いてディスク装置Ｄ２〜Ｐ（１６０２〜１６０４）から読み出して冗長度計算によって求める方式に変更する。
【０１１０】
図２０はディスク装置情報（２１０１）のディスク装置状態（３００３）が“通常状態”または“データ移行中”時におけるディスク装置Ｄ１（１６０１）のデータＤ１Dm(0≦Dm≦Dn)のリード方式を示すフローチャートである。
【０１１１】
ステップ６００１でディスク装置Ｄ１（１６０１）からデータＤ1 Dmをリードしてキャッシュに転送する。ステップ６００２でリードエラーがどうか判定し、リードエラーが発生した場合、ステップ６００３で前述の通り冗長度を持つアレイディスクグループを構成するディスク装置Ｄ２（１６０２）、ディスク装置Ｄ３（１６０３）、ディスク装置Ｐ（１６０４）を用いて、ディスク装置Ｄ１（１６０１）のデータＤ１Dmを作成する。
【０１１２】
また、ディスク装置情報（２１０１）のディスク装置状態（３００３）が“通常状態”または“データ移行中”時におけるディスク装置Ｄ１（１６０１）のデータＤ１Dm(0≦Dm≦Dn)のライト方式は更新ライトデータをＤ１D1（２３０１）とした場合、ディスクコントローラＡ（１４０１）またはディスクコントローラＢ（１４０２）はディスク装置Ｄ１（１６０１）の当該ブロック位置に存在しているデータＤ１D1（２００１）を読み出し、キャッシュメモリ(１３０１)上に旧データＯ１D1（２３１１）として格納する。次にディスク装置Ｐ（１６０４）よりデータＰD1（２００４）を読み出し、キャッシュメモリ(１３０１)上に旧パリティデータＰoD1（２３１４）として格納する。次にディスクコントローラＡ（１４０１）またはディスクコントローラＢ（１４０２）は更新データＤ１D1（２３０１）、旧データＯ１D1（２３１１）及び旧パリティデータＰoD1（２３１４）を用いて、排他的論理和演算により、新パリティデータＰD1（２３０４）を生成し、キャッシュメモリ（１３０１）に格納する。次にディスクコントローラＡ（１４０１）またはディスクコントローラＢ（１４０２）は更新データＤ１D1（２３０１）をディスク装置Ｄ1（１６０１）及びディスク装置Ｓ（１６０５）に書き込むとともに、先に生成した新パリティデータＰD1（２３０４）をディスク装置Ｐ（２００４）に書き込む。
【０１１３】
図２１はディスク装置情報（２１０１）のディスク装置状態（３００３）が“警告”時におけるディスク装置Ｄ１（１６０１）のデータＤ１Dm(0≦Dm≦Dn)のリード方式を示すフローチャートである。
【０１１４】
ステップ７００１で前述の通り冗長度を持つアレイディスクグループを構成するディスク装置Ｄ２（１６０２）、ディスク装置Ｄ３（１６０３）、ディスク装置Ｐ（１６０４）を用いて、ディスク装置Ｄ１（１６０１）のデータＤ１Dmを作成する。ステップ７００２でディスク装置Ｄ２〜Ｐ（１６０２〜１６０４）のいずれかのディスク装置でデータＤxDm(DX:D2orD3orP)リードエラーが発生した場合、ステップ７００３でDmとディスク装置情報（２００１）のコピーカウンタ（３００２）と比較し、コピーカウンタ以下であれば既にディスク装置Ｓ（１６０５）に当該データの移行は完了しているため、ステップ７００４でディスク装置ＳよりデータＤ1Dmをリードする。またコピーカウントを超える場合は、ステップ７００５でディスク装置Ｄ１（１６０１）よりＤ1Dmをリードする。またこの時Ｄ１Dmを用いてリードエラーとなったＤxDmを回復してもよい、例えばＤ２Dmがリードエラーとなった場合、冗長度を持つアレイディスクグループを構成するＤ１DmとＤ３DmとＰDmよりをＤ２Dm回復し、ディスク装置Ｄ２（１６０２）に交替媒体領域を設定し、その領域に回復したＤ２Dmを書き込んでもよい。
【０１１５】
またディスクドライブ情報（２１０１）のディスク装置状態（３００３）が“警告”時におけるディスク装置Ｄ１（１６０１）のデータＤ１Dm(0≦Dm≦Dn)のライト方式はライトデータをＤ１D1（２３０１）とした場合、ディスクコントローラＡ（１４０１）またはディスクコントローラＢ（１４０２）はディスク装置Ｄ２（１６０２）、及びディスク装置Ｄ３（１６０３）の当該ブロックにて冗長度を有しているデータＤ２D1（２００２）、及びデータＤ３D1（２００３）を読み出し、キャッシュメモリ(１３０１)上にそれぞれ旧データＯ２D1（２３１２）及び旧データＯ３D1（２３１３）として格納する。次にディスクコントローラＡ（１４０１）またはディスクコントローラＢ（１４０２）は更新データＤ１D1（２３０１）、旧データＯ２D1（２３１２）、旧データＯ３D1（２３１３）を用いて、排他的論理和演算により、新パリティデータＰD1（２３０４）を生成し、キャッシュメモリ（１３０１）に格納する。次にディスクコントローラＡ（１４０１）またはディスクコントローラＢ（１４０２）は更新データＤ１D1（２３０１）をディスク装置Ｄ1（１６０１）及びディスク装置Ｓ（１６０５）に書き込むとともに、先に生成した新パリティデータＰD1（２３０４）をディスク装置Ｐ（２００４）に書き込む。
【図面の簡単な説明】
【０１１６】
【図１】本発明の第１の実施形態における装置構成図である。
【図２】本発明の第１の実施形態におけるディスク装置管理テーブルの説明図である。
【図３】本発明の第１の実施形態におけるディスク装置管理手段の説明図である。
【図４】本発明の第１の実施形態における予防スペアコピー動作のフローチャートである。
【図５】本発明の第２の実施形態におけるディスク装置管理テーブルの説明図である。
【図６−１】本発明の第２の実施形態におけるダイナミックミラーリング動作のフローチャートである。
【図６−２】本発明の第２の実施形態におけるダイナミックミラーリング動作のフローチャートである。
【図７】本発明の第３の実施形態における装置構成図である。
【図８】本発明の第３の実施形態におけるディスク装置管理テーブルの説明図である。
【図９】本発明の第３の実施形態におけるディスク装置管理部の説明図である。
【図１０】本発明の第３の実施形態におけるセクタ障害復旧動作のフローチャートである。
【図１１】本発明の第３の実施形態におけるセクタ障害復旧動作時のライト動作のフローチャートである。
【図１２】本発明の第４の実施形態におけるディスク装置管理テーブルの説明図である。
【図１３】本発明の第４の実施形態におけるディスク装置管理手段の説明図である。
【図１４】本発明の第４の実施形態におけるディスク装置２重障害予防動作のフローチャートである。
【図１５】本発明の第５の実施形態における装置構成を示す図である。
【図１６】本発明の第５の実施形態における装置構成の詳細を示す図である。
【図１７】本発明の第５の実施形態における装置構成の部分詳細を示す図である。
【図１８】本発明の第５の実施形態における動作フローチャートを示す図である。
【図１９】本発明の第５の実施形態における別の動作フローチャートを示す図である。
【図２０】本発明の第５の実施形態における他の動作フローチャートを示す図である。
【図２１】本発明の第５の実施形態におけるさらに別の本発明の原理を示す動作フローチャートを示す図である。
【符号の説明】
【０１１７】
１００…ホストコンピュータ、１２３…アレイ型ディスク装置、２００…アレイ型ディスク装置の管理制御部、３１０…ディスク装置群、５００…管理端末、
２０１…ＣＰＵ、２０２…メモリ、２０３…キャッシュ、２０４…ホストＩ／Ｆ、２０５…ディスク装置Ｉ／Ｆ、２０７…管理Ｉ／Ｆであり、それぞれを結線する。２１０…アレイ型ディスク装置制御するＲＡＩＤ制御部、２３０…ディスク装置管理部、２４０…ディスク装置管理テーブル、２５０…ディスク装置情報設定部、２６０…ディスク装置情報通知部、ディスク装置３０１〜３０７…ディスク装置
５１０…入力部、５２０…出力部。
【図１】
2006164304.tif 000003
【図２】
2006164304.tif 000004
【図３】
2006164304.tif 000005
【図４】
2006164304.tif 000006
【図５】
2006164304.tif 000007
【図６−１】
2006164304.tif 000008
【図６−２】
2006164304.tif 000009
【図７】
2006164304.tif 000010
【図８】
2006164304.tif 000011
【図９】
2006164304.tif 000012
【図１０】
2006164304.tif 000013
【図１１】
2006164304.tif 000014
【図１２】
2006164304.tif 000015
【図１３】
2006164304.tif 000016
【図１４】
2006164304.tif 000017
【図１５】
2006164304.tif 000018
【図１６】
2006164304.tif 000019
【図１７】
2006164304.tif 000020
【図１８】
2006164304.tif 000021
【図１９】
2006164304.tif 000022
【図２０】
2006164304.tif 000023
【図２１】
2006164304.tif 000024