(57)【要約】【課題】  ディスクアレイ装置で、従来特に対策されていなかった装置運用初期におけるデータ消失を回避してデータ信頼性の確保を可能とする。【解決手段】  ディスクアレイ装置１００のコントローラ１０は、ＨＤＤ３０に格納する対象となる第１のデータについて、複数のＨＤＤ３０からなる全体の記憶領域を対象として、１台以上のＨＤＤ３０上の一部領域に格納し、格納した第１のデータのバックアップデータを、格納先が別のＨＤＤ３０となるように、１台以上のＨＤＤ３０上の一部領域に格納する。全体の記憶領域で、第１のデータを格納するための空き領域が少なくなったら、バックアップデータを格納している領域を上書きして使用する。【選択図】  図２
2006113648.tif 000002
【特許請求の範囲】
【請求項１】
上位の情報処理装置と接続され、
記憶装置と、前記記憶装置の記憶領域に対するデータの記憶を制御するコントローラとを有するディスクアレイ装置であって、
前記コントローラは、
前記上位の情報処理装置から送信される第１のデータを、複数の記憶装置からなる全体の記憶領域のうち、１台以上の記憶装置上の一部領域である第１の記憶領域に格納し、
前記第１のデータのバックアップデータを、前記第１のデータの格納先とは別の記憶装置となるように、１台以上の記憶装置上の一部領域である第２の記憶領域に格納し、
前記全体の記憶領域で、前記上位の情報処理装置から新たに送信されるデータを格納するための空き領域が所定の値より少なくなった場合に、前記バックアップデータを格納している記憶領域を、前記新たに送信されるデータを格納する領域とすることを特徴とするディスクアレイ装置。
【請求項２】
請求項１記載のディスクアレイ装置において、
前記コントローラは、
ＲＡＩＤ制御として前記第１のデータの分割及びパリティ処理を行い、
前記第１のデータについて、前記ＲＡＩＤ制御で作成された分割データを、前記全体の記憶領域のうち、２台以上の記憶装置上の一部領域である第１の記憶領域に格納し、
前記分割データのバックアップデータを、前記分割データの格納先と別の記憶装置となるように、２台以上の記憶装置上の一部領域である第２の記憶領域に格納することを特徴とするディスクアレイ装置。
【請求項３】
請求項１記載のディスクアレイ装置において、
前記コントローラは、前記記憶装置から前記第１のデータをリードする際、前記第１の記憶領域や第２の記憶領域から、前記第１のデータと前記バックアップデータとの少なくともいずれか一方を利用してリードして正常データを取得することを特徴とするディスクアレイ装置。
【請求項４】
請求項１記載のディスクアレイ装置において、
前記コントローラは、前記全体の記憶領域において、前記第１のデータに対して前記バックアップデータを、隣接した記憶装置へスライドした位置取りで格納することを特徴とするディスクアレイ装置。
【請求項５】
請求項１記載のディスクアレイ装置において、
前記コントローラは、前記全体の記憶領域で、前記第１のデータの格納用のデータ領域と、前記バックアップデータの格納用のバックアップ領域とを設け、前記バックアップ領域を使い切るまでは前記バックアップデータの格納を続け、前記データ領域を使い切った場合は前記バックアップ領域を前記第１のデータの格納のために使い始めることを特徴とするディスクアレイ装置。
【請求項６】
請求項１記載のディスクアレイ装置において、
前記コントローラは、
前記第１のデータとバックアップデータの格納のために、前記全体の記憶領域を、所定サイズの領域単位に分割して、その分割領域のアドレスと前記記憶装置におけるアドレス体系との変換による対応付け情報と、前記分割領域の格納データの種別を示す情報とをメモリ上に保持し、
前記全体の記憶領域に対して前記第１のデータやバックアップデータを格納する際、連続的な空き領域を確保するように、本来の格納先アドレスと前記分割領域のアドレスとの変換を行って、前記分割領域を単位として順に格納する処理を行うことを特徴とするディスクアレイ装置。
【請求項７】
請求項１記載のディスクアレイ装置において、
前記コントローラは、前記複数の記憶装置で前記第１のデータ又はバックアップデータを格納した記憶装置あるいは記憶領域における障害の場合、これに対応する別の記憶装置あるいは記憶領域におけるバックアップデータ又は第１のデータをリードして障害データの回復を行うことを特徴とするディスクアレイ装置。
【請求項８】
請求項１記載のディスクアレイ装置において、
前記コントローラは、第１のバックアップモードとして、
前記全体の記憶領域のうち、先頭領域から最終領域に向かって順に前記第１のデータを格納し、最終領域から先頭領域に向かって順に前記バックアップデータを格納してゆく制御を行い、前記バックアップデータを格納した領域の新しい方から順に開放して使用することを特徴とするディスクアレイ装置。
【請求項９】
請求項１記載のディスクアレイ装置において、
前記コントローラは、第２のバックアップモードとして、
前記全体の記憶領域のうち、先頭領域から最終領域に向かって順に前記第１のデータを格納し、途中領域から最終領域に向かって順に前記バックアップデータを格納してゆく制御を行い、前記バックアップデータを格納した領域の古い方から順に開放して使用することを特徴とするディスクアレイ装置。
【請求項１０】
請求項１記載のディスクアレイ装置において、
前記コントローラは、前記複数の記憶装置を対象に前記第１のデータを入出力する際に、特定の記憶装置にアクセスが集中しないように、前記第１のデータの格納先の記憶装置と前記バックアップデータの格納先の記憶装置とを対象としてアクセスの分散を行うことを特徴とするディスクアレイ装置。
【請求項１１】
上位の情報処理装置と接続され、
記憶装置と、前記記憶装置の記憶領域に対するデータの記憶を制御するコントローラとを有するディスクアレイ装置であって、
前記コントローラは、
前記記憶装置に格納する対象となる第１のデータについて、複数の記憶装置からなる全体の記憶領域のうち、１台以上の記憶装置上の一部領域である第１の記憶領域に格納し、前記第１のデータのバックアップデータを、前記第１のデータの格納先とは別の記憶装置となるように、１台以上の記憶装置上の一部領域である第２の記憶領域に格納する処理と、
前記第１のデータとして、大サイズのデータと小サイズのデータとでペアに設定し、前記大サイズのデータのバックアップデータを前記小サイズのデータを格納する記憶装置の空き領域へ格納し、前記小サイズのデータのバックアップデータを前記大サイズのデータを格納する記憶装置の空き領域へ格納する処理とを行うことを特徴とするディスクアレイ装置。
【請求項１２】
請求項１１記載のディスクアレイ装置において、
前記コントローラは、ＯＳやアプリケーションのデータを含むシステムデータと、一般データとを前記ペアとして設定して、前記システムデータのバックアップデータを前記一般データを格納する記憶装置の空き領域へ格納し、前記一般データのバックアップデータを前記システムデータを格納する記憶装置の空き領域へ格納する処理を行うことを特徴とするディスクアレイ装置。
【請求項１３】
上位の情報処理装置と接続され、
記憶装置と、前記記憶装置の記憶領域に対するデータの記憶を制御するコントローラとを有するディスクアレイ装置であって、
前記コントローラは、
複数の記憶装置からなる全体の記憶領域内で、格納データの重要度に対応した記憶領域を設け、
前記記憶装置に格納する対象となる第１のデータを、１台以上の記憶装置上の一部領域である第１の記憶領域に格納する処理と、
前記第１のデータについての重要度を判断して前記第１のデータの格納先となる記憶領域を選択し、前記重要度の変化に応じて前記第１のデータをその重要度に対応した記憶領域に移動する処理と、
高い重要度に対応した記憶領域に第１のデータが格納されるのに伴い自動的に、そのバックアップデータを、その格納先が別の記憶装置となるように、１台以上の記憶装置上の一部領域である第２の記憶領域に格納する処理とを行うことを特徴とするディスクアレイ装置。
【請求項１４】
上位の情報処理装置と接続され、
記憶装置と、前記記憶装置の記憶領域に対するデータの記憶を制御するコントローラとを有するディスクアレイ装置であって、
前記コントローラは、
複数の記憶装置からなる全体の記憶領域内で、格納データの重要度に対応した記憶領域を設け、
前記コントローラのメモリ上に、前記上位の情報処理装置からの設定に基づき、前記記憶装置に格納する対象となる第１のデータのうち、重要度の高いデータの属性の指定を設定したテーブルを保持する処理と、
前記上位の情報処理装置から送信される前記第１のデータについて、前記テーブルの参照によりその重要度を判断する処理と、
前記重要度に応じて前記第１のデータの格納先となる記憶領域を選択して格納する処理と、
高い重要度に対応した記憶領域に前記第１のデータが格納されるのに伴い自動的に、そのバックアップデータを、その格納先が別の記憶装置となるように、１台以上の記憶装置上の一部領域である第２の記憶領域に格納する処理とを行うことを特徴とするディスクアレイ装置。
【請求項１５】
請求項１４記載のディスクアレイ装置において、
前記コントローラは、
前記コントローラのメモリ上に、前記上位の情報処理装置からの設定に基づき、前記第１のデータのうち、前記バックアップデータの格納の処理を含む特定の処理の対象となるデータについての属性と、前記属性のデータに対して実行する特定の処理との指定を設定したテーブルを保持する処理と、
前記第１のデータを前記記憶装置に格納する際、前記テーブルの参照によりそれが前記特定の処理の対象となるデータであるかを判断する処理と、
前記特定の処理の対象となるデータに対して前記バックアップデータの格納の処理を含む特定の処理を自動的に実行する処理とを行うことを特徴とするディスクアレイ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハードディスクドライブ（以下、ＨＤＤと称する）等の記憶装置にデータを記憶する制御を行うディスクアレイ装置に関し、特に、ディスクアレイ装置の記憶領域に記憶されるデータの消失を回避するための技術に関する。
【背景技術】
【０００２】
従来、顧客（ユーザ）の使用するホストコンピュータ等の上位の情報処理装置にディスクアレイ装置を通信接続したコンピュータシステムで、上位装置からのデータをディスクアレイ装置の提供する記憶領域に格納する処理を行っている。特にディスクアレイ装置で所定のＲＡＩＤ方式での制御を行う形態である。ディスクアレイ装置において、顧客が使用する形態は、ディスクアレイ装置の記憶領域に格納するデータの重要性により様々である。また、データ容量のコストパフォーマンスとデータの信頼性は一般的にトレードオフの関係にある。また装置の故障率は、一般にバスタブ曲線（故障率曲線）のような傾向を有しており、特に、装置利用の初期では故障率が高い。従来のディスクアレイ装置では、ＨＤＤ故障等の初期故障に対する対策は特に採られていない。また、一般的にディスクアレイ装置でのデータ蓄積率は時間の経過と共に増加する。
【０００３】
また、記憶装置に格納されるデータに関する冗長性を確保するための技術として、ディスクアレイでデータを分散して格納する技術が特許文献１に記載されている。
【特許文献１】特開２０００−１４８４０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
一般にＨＤＤの初期故障率は高く、更にディスクアレイ装置において同一ＲＡＩＤグループ内に含まれるＨＤＤの数が多いほど、ＨＤＤの不良によるデータ消失の可能性が高くなる。ディスクアレイ装置でデータ消失を回避してデータ信頼性を確保するための対策を備える必要があるが、ディスクアレイ装置をデータ信頼性だけを考えて構成すると、コストパフォーマンスが悪くなる。
【０００５】
従来、初期不良におけるディスクアレイ装置側の回避策は、所定の冗長性の確保以外では特に採られていない。また、製造側の回避策も現実には検査スペースや設備コストの面で実現は難しい。そのため、製品の初期故障に対するリスクは大きいと言える。
【０００６】
冗長性確保のためのＲＡＩＤ方式に関しても、装置稼動初期のデータ消失リスクは、一般に良く使用されるＲＡＩＤ４，５の場合でも決して低いとは言えない。ＲＡＩＤ４，５等でも、ＨＤＤが２台故障の場合はデータ消失が発生する。大きく分けて、特にＲＡＩＤ４，５の場合、データ信頼性は、初期ではリスクが高めであり、中期ではリスクが小であり、終期ではリスクが低めであると言える。
【０００７】
また、前記特許文献１記載の技術では、性能向上のために、記憶装置群に対してデータを二重化して書き込みを行っており、ある記憶装置に格納するデータと同一データが他の記憶装置にも格納される点では本発明と共通するが、本発明での処理とは異なる。
【０００８】
本発明は以上のような問題に鑑みてなされたものであり、その目的は、ディスクアレイ装置で、従来特に対策されていなかった装置運用初期におけるデータ消失を回避してデータ信頼性の確保を可能とする技術を提供することにある。
【課題を解決するための手段】
【０００９】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１０】
前記目的を達成するために、本発明のディスクアレイ装置は、ＨＤＤ等の記憶装置と、記憶装置の記憶領域に対するデータの記憶を制御するコントローラとを有し、通信手段を通じて接続されるユーザのホストコンピュータ等の上位の情報処理装置からの要求などに従って前記データの入出力を行う装置であって、以下のような技術的手段を備えることを特徴とする。
【００１１】
本発明では、ディスクアレイ装置における運用初期における不良の発生率が、ＨＤＤにおけるデータ蓄積率が低い時期に高いと言えることから、装置運用初期にデータ信頼性を確保できる手段を提供する。その手段として、前記記憶装置の空き領域すなわちデータ格納についての未使用領域などを利用してデータのバックアップ、言い換えればコピーの格納を行うことで、装置運用初期の不良によるデータ消失を回避する。
【００１２】
本発明のディスクアレイ装置では、前記コントローラは、特に装置運用初期において前記記憶装置の記憶領域の大きな空き領域を利用し、前記記憶装置に格納する対象となるデータ（以下、第１のデータと称する）について、複数の記憶装置からなる全体の記憶領域を対象として、１台以上の記憶装置上の一部領域である第１の記憶領域に格納し、前記第１のデータの格納に伴い、前記第１のデータについてのバックアップデータを、前記第１のデータの格納先とは別の記憶装置となるように、１台以上の記憶装置上の一部領域である第２の記憶領域に格納する。前記第１のデータは、上位の情報処理装置から記憶装置に対して入出力されるユーザデータ、すなわち前記上位の情報処理装置から送信されコントローラで受信したライトデータ等である。前記全体の記憶領域内で空き領域が有る限り、又は一定容量まで、あくまで通常の第１のデータの格納を優先しつつ前記バックアップデータの格納を行う。前記コントローラは、前記全体の記憶領域で、前記第１のデータを格納するための空き領域が無くなった場合あるいは所定値より少なくなった場合などには、前記バックアップデータを格納している第２の記憶領域を次第に開放して前記第１のデータの格納のために上書きして使用する。前記コントローラは、前記記憶装置への第１のデータとバックアップデータのライトにおいて、第１のデータについての１台以上の記憶装置への各格納データに対し、その各バックアップデータの格納先が別の記憶装置となるような配置で書き込む。
【００１３】
典型的な処理手順としては、前記コントローラは、情報処理装置からのライトデータを前記第１の記憶領域にライトし、それに伴い直に又は時間的に後で、例えばコントローラのキャッシュメモリ等に余裕が有る時などにおいて、前記第２の記憶領域へバックアップデータをライトする。また、前記情報処理装置から前記記憶装置に格納されている前記第１のデータをリードする際には、コントローラは、前記第１の記憶領域の第１のデータと前記第２の記憶領域のバックアップデータとの両方をリード先として利用でき、データ復元にも利用できる。すなわち、コントローラは、前記第１のデータとバックアップデータのいずれか一方のみリードして、データ復元が必要な場合などに他方をリードする。あるいは、コントローラは、最初から両方を並列的にリードすることもできる。
【００１４】
例えば記憶装置のグループにおける５０％以上の未使用領域のうち一部がバックアップデータ格納用の領域となる。なお１台の記憶装置の記憶領域で見ると、前記第１のデータとバックアップデータの格納が混在し、その格納単位におけるサイズが同一であるなら、それぞれの格納に約５０％ずつの記憶容量を使った時点で空き領域が無くなってすべて使用済みの状態となる。全体の記憶領域のうち、所定容量を前記バックアップデータ格納用の領域としてあらかじめ確保してもよい。
【００１５】
また、前記コントローラは、ＲＡＩＤ制御、例えばＲＡＩＤ３，４，５等の方式での制御として前記記憶装置への格納対象となる第１のデータの分割（ストライピング）、更にはパリティ処理すなわちパリティ生成やパリティチェック等を行う。コントローラは、前記第１のデータについて、複数の記憶装置からなる全体の記憶領域を対象として、２台以上の記憶装置上の一部領域である第１の記憶領域に、前記ＲＡＩＤ制御で作成した分割データすなわち非パリティデータやパリティデータを格納し、前記第１のデータの格納に伴い、前記分割データについてのバックアップデータを、前記分割データの格納先と別の記憶装置となるように、例えば隣接した記憶装置などへのスライドした位置取りで、２台以上の記憶装置上の一部領域である第２の記憶領域に格納する。コントローラは、前記分割により作成された２つ以上の分割データを、それぞれの格納先となる２台以上の記憶装置に対して格納する。またコントローラは、前記分割データをリードする際は、前記第１の記憶領域や第２の記憶領域を構成する各記憶装置の記憶領域から、前記分割データをそれぞれリードして正常な前記第１のデータを取得する。例えば、複数の記憶装置から構成されるＲＡＩＤグループ内において、ＲＡＩＤ制御に応じて、前記第１のデータすなわち各分割データのバックアップデータを、隣接した記憶装置等へスライドした位置取りで格納する。前記第１のデータとバックアップデータの配置関係において、前記スライド等の仕方は一定としてもよいし、格納先記憶装置が別の記憶装置となるような条件のもとで不定、すなわちデータ格納状況などにより変動することとしてもよい。
【００１６】
また、前記コントローラは、前記全体の記憶領域で、前記第１のデータの格納用の領域（データ領域と称する）と、前記バックアップデータ格納用の領域（バックアップ領域と称する）とをあらかじめ設けておくようにしてもよい。例えば、設定で、全体の記憶領域のうち所定容量、例えば５０％ずつを前記データ領域とバックアップ領域として確保し、またあるいは７５％を前記データ領域、２５％を前記バックアップ領域として確保する等しておく。コントローラは、前記バックアップ領域を使い切るまでは前記第１のデータと共にバックアップデータの格納を続け、前記データ領域を第１のデータの格納に使い切ったら、前記バックアップ領域を前記第１のデータの格納のために使い始める。例えば２５％をバックアップ領域とした場合、最初はデータ領域及びバックアップ領域に各データを格納してゆき、バックアップ領域を使い切った後は第１のデータをバックアップ無しでデータ領域に格納してゆき、データ領域を使い切ったら、バックアップ領域に第１のデータを上書きしてゆく。
【００１７】
また、前記コントローラは、前記第１のデータとバックアップデータの格納のために、前記複数の記憶装置からなる全体の記憶領域を、所定サイズの領域単位に分割して、その領域（分割領域と称する）のアドレスと記憶装置におけるアドレス体系例えばＨＤＤにおけるＬＢＡとのアドレス変換による対応付けなどを、管理変数で保持して管理する。前記分割領域の管理により、前記全体の記憶領域で、広い空き領域を積極的に確保するように、前記分割領域の単位で順に前記第１のデータやバックアップデータを格納する処理を行う。
【００１８】
また、前記コントローラは、前記複数の記憶装置で前記第１のデータ又はバックアップデータを格納した記憶装置あるいは記憶領域における障害によりデータ読み出しエラーの場合、これに対応する別の記憶装置あるいは記憶領域におけるバックアップデータ又は第１のデータをリードして障害データの回復を行う。例えばある記憶装置に格納している第１のデータが障害によりエラーの場合に、その隣接記憶装置に格納しているバックアップデータをリードすることでデータ回復する。この際、第１のデータ及びそのバックアップデータの格納されている記憶装置が共に障害にならない限り、２台の記憶装置が障害であってもデータ回復が可能であり、特にＲＡＩＤ３，４，５等の場合で、パリティデータを格納している記憶装置からリードしたパリティデータを用いた処理を経ずとも、該当データのリード処理のみでのデータ回復が可能である。
【００１９】
また、前記コントローラは、第１のバックアップモードとして、前記全体の記憶領域のうち前記データ領域の先頭領域から順に割り当てて第１のデータを格納し、前記バックアップ領域の最後領域から順に割り当ててバックアップデータを格納してゆく制御を行い、前記データ領域を使い切ったら、前記バックアップ領域の新しい方のバックアップデータから順に開放してゆく。
【００２０】
また、前記コントローラは、第２のバックアップモードとして、前記全体の記憶領域のうち前記データ領域の先頭領域から順に割り当てて第１のデータを格納し、前記バックアップ領域の先頭領域から順に割り当ててバックアップデータを格納してゆく制御を行い、前記データ領域を使い切ったら、前記バックアップ領域の古い方のバックアップデータから順に開放してゆく。
【００２１】
また、前記コントローラは、前記複数の記憶装置を対象として前記第１のデータやバックアップデータを入出力する際に、特定の記憶装置にアクセスが集中しないように、前記第１のデータの格納先の記憶装置と前記バックアップデータの格納先の記憶装置とを対象としてアクセスの分散、例えば交互アクセスなどを行う。
【発明の効果】
【００２２】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００２３】
本発明によれば、ディスクアレイ装置で、従来特に対策されていなかった装置運用初期におけるデータ消失を回避してデータ信頼性の確保が可能となる。従来ではＨＤＤの初期故障率がディスクアレイ装置の冗長性を上回る、ＨＤＤ二重障害のような場合においても、本バックアップ方式によりユーザデータが保護され、システムのロバスト性を向上させることができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一符号を付し、その繰り返しの説明は省略する。
【００２５】
（実施の形態１）
図１〜図１２は、本発明の実施の形態１におけるディスクアレイ装置について説明するための図である。実施の形態１のディスクアレイ装置は、装置運用初期などのＨＤＤの空き領域が大きい時期において、ＨＤＤに対し格納する第１のデータについて、そのバックアップを他ＨＤＤの記憶領域の空き領域へと行う手段を備える。実施の形態１は、その手段によるバックアップ方式の基本的な構成及び処理を示す形態である。
【００２６】
＜ハードウェア構成＞
まず、実施の形態１のディスクアレイ装置の全体構成について説明する。その後、本発明で特徴的な処理について説明する。図１（ａ），（ｂ）は、実施の形態１のディスクアレイ装置のハードウェア構成においてその外観構成を示す図である。（ａ）は装置正面を、（ｂ）は装置背面を示す。本ディスクアレイ装置１００は、ラックフレーム１１１をベースとして、ラックフレーム１１１の内側の上下方向に複数段にわたってマウントフレーム１１２が形成されており、マウントフレーム１１２に沿って基本筐体１２０（ディスクアレイ制御筐体ともいう）及び増設筐体１３０（ＨＤＤ筐体ともいう）が引き出し式に装着される構成である。本装置１００では、下段に１つの基本筐体１２０が装着され、上段に複数の増設筐体１３０が装着可能となっている。各筐体には、本装置１００の各種機能を提供するボード（回路基板）やユニットが装備される。基本筐体１２０は、ディスクアレイ装置のコントローラ１０を構成するコントローラボード５９等を収容する筐体である。増設筐体１３０は、複数のＨＤＤ３０を収容する筐体であり、必要に応じて増設が可能となっている。
【００２７】
装置正面では、基本筐体１２０及び増設筐体１３０において、ＨＤＤ３０が、ＨＤＤ３０を装填してキャニスタ等と一体的にしたユニットの形態で複数台並べて装着可能な領域が配されている。各装着位置において、ＨＤＤ３０の装着／取り外しが可能となっている。また基本筐体１２０の正面では、バックアップ電源として機能するバッテリーユニット、装置状態を表示する表示パネル、プログラムロード用のフレキシブルディスクドライブ等が配置されている。
【００２８】
装置背面では、基本筐体１２０及び増設筐体１３０において電源コントローラボード５６や電源ユニット等が配置されている。また基本筐体１２０の背面においてコントローラボード５９や冷却ファンユニット等が配置されている。
【００２９】
各筐体内には各部間を接続するバックボードが設けられており、バックボードに対して各ボードやユニットや複数のＨＤＤ３０などが接続される。バックボードでの配線を通じて各部が通信可能に接続される。
【００３０】
コントローラボード５９は、情報処理装置３００等からの命令に基づきＨＤＤ３０に対するデータの記憶の制御を行う。コントローラボード５９には、情報処理装置３００等の外部装置との通信インタフェース（チャネル制御部）、キャッシュメモリ、共有メモリ、及びＨＤＤ３０との通信インタフェース（ディスク制御部）、例えばＲＡＩＤ方式による制御や、ＨＤＤ３０の状態監視などの機能を有する回路などが実装されている。なお通信インタフェースやキャッシュメモリ等の各機能をコントローラボードとは別のボードとして実装する形態としてもよい。なお、基本筐体１２０のＨＤＤ３０の制御に関するセキュリティを確保するために、２枚のコントローラボード５９を冗長に装着させる形態である。
【００３１】
コントローラ１０の有する情報処理装置３００側との通信インタフェースには、情報処理装置３００と接続するための外部コネクタとして、ファイバチャネル（ＦＣ）・プロトコルで構築されたＳＡＮ（Storage Area Network）や、Ｅｔｈｅｒｎｅｔ（登録商標）などのプロトコルで構築されたＬＡＮ（Local Area Network）、あるいはＳＣＳＩなどの所定の規格に準拠したものが設けられている。ディスクアレイ装置１００は、この外部コネクタに接続される通信ケーブル９２を介して情報処理装置３００と接続される。
【００３２】
電源コントローラボード５６は、各筐体間を接続し、筐体間での電源供給等のシステム制御やＨＤＤ３０に対する制御等を行う。電源コントローラボード５６の有するコネクタに通信ケーブル９１が接続され、電源コントローラボード５６間が通信ケーブル９１を通じて接続される。電源コントローラボード５６は、各筐体における複数のＨＤＤ３０と、所定のプロトコルに対応した通信経路によって通信可能に接続される。電源コントローラボード５６は、ＨＤＤ３０に対する制御を行うディスク制御部の他に、ＡＣ／ＤＣ電源の状態監視やＨＤＤ３０の状態監視、ＨＤＤ３０への電源供給の制御などを行う回路が実装されている。なお、電源コントローラボード５６の有する各機能をコントローラボード５６側に有する形態としてもよい。
【００３３】
電源ユニットは、ＡＣ／ＤＣ電源等を備え、ＨＤＤ３０やボード等の筐体内各部にＤＣ電源を供給する。電源ユニットは、電源コントローラボード５６と接続され、電源コントローラボード５６からの信号により各ＨＤＤ３０に対し電源を供給する。なお、各筐体の電源供給に関するセキュリティを確保するために、各筐体に対し電源コントローラボード５６と電源ユニットとを各２台ずつ冗長に装着させる形態である。
【００３４】
ＨＤＤ３０は、例えば、コンタクト・スタート・ストップ（ＣＳＳ：Contact Start Stop）方式の３．５インチサイズの磁気ディスクや、ロード／アンロード方式の２．５インチサイズの磁気ディスクなどを備える記憶装置である。３．５インチサイズの磁気ディスクは、例えば、ＳＣＳＩ１、ＳＣＳＩ２、ＳＣＳＩ３、ＦＣ−ＡＬ（Fibre Channel - Arbitrated Loop）、パラレルＡＴＡ、シリアルＡＴＡなどの通信インタフェースを有している。同様に、２．５インチサイズの磁気ディスクは、例えば、パラレルＡＴＡ、シリアルＡＴＡなどの通信インタフェースを有している。筐体に装着・接続されるＨＤＤ３０として、２．５インチサイズの磁気ディスクと３．５インチサイズの磁気ディスクとは、通信インタフェースが異なるだけではなく、Ｉ／Ｏ性能、消費電力、寿命の点などで異なっている。２．５インチサイズの磁気ディスクは、３．５インチサイズの磁気ディスクに比べ、Ｉ／Ｏ性能が優れておらず寿命が短いが、消費電力が少ないという点で優れている。
【００３５】
＜システム構成＞
図２は、実施の形態１のディスクアレイ装置１００におけるバックアップ方式に係わるシステム構成を示す機能ブロック図である。同図でバックアップ方式の概要も示している。
【００３６】
ディスクアレイ装置１００を含んで構成されるコンピュータシステムで、ディスクアレイ装置１００のコントローラ１０と、ホストとなる情報処理装置３００とが、チャネル制御部１３及び通信ケーブル９２等を介して接続される構成である。チャネル制御部１３と情報処理装置３００の通信処理部とで、例えばＦＣ、Ｅｔｈｅｒｎｅｔ（登録商標）などの規格に従って通信接続される。
【００３７】
ディスクアレイ装置１００は、コントローラ１０、ＨＤＤ３０、及びこれらを接続するバス（通信ライン）やポート等の接続部分を有する。基本筐体１２０においてコントローラ１０とＨＤＤ３０のグループとを有し、基本筐体１２０に接続される１つ以上の増設筐体１３０においてＨＤＤ３０のグループを有する。各部は、情報処理装置３００−コントローラ１０−ＨＤＤ３０の間の接続で冗長性を持つように接続される。例えば、コントローラ１０等を二重化して、情報処理装置３００からＨＤＤ３０までのデータパス上の各部を二重化した構成が可能である。一方のパス上で障害が発生した場合等においても他方のパスに切り替えて処理を継続するフェイルオーバや、負荷分散などが可能である。多重化される場合の各部の構成は略同等である。
【００３８】
情報処理装置３００は、ユーザの使用するパーソナルコンピュータ、ワークステーション、メインフレームコンピュータなどである。情報処理装置３００は、ディスクアレイ装置１００を利用するためのプログラムやＦＣ等に対応してディスクアレイ装置１００と通信する通信インタフェース等を備える。情報処理装置３００は、ディスクアレイ装置１００に対し、ＨＤＤ３０が提供する記憶領域に対するデータのリードやライト等を行うための命令（入出力要求）を発行する。情報処理装置３００からディスクアレイ装置１００内の記憶ボリュームに対するアクセスにおいて、コントローラ１０のチャネル制御部１３に対して、通信プロトコルに対応して例えばＨＤＤ３０側でのデータアクセス単位であるブロック単位でのデータアクセス要求が送信される。
【００３９】
情報処理装置３００は、ＣＰＵ、メモリ、ポート、入力装置、出力装置、記憶装置、記録媒体読取装置などを備える。ＣＰＵによりメモリ上のプログラムが実行されることにより様々な機能が実現される。メモリ上にアプリケーションプログラム、利用プログラムを有する。ポートは、ネットワークに接続され、ディスクアレイ装置１００や他の情報処理装置３００等の外部装置との間で通信を行うための装置である。入力装置は、ユーザによる操作のためのキーボードやマウスなどである。出力装置は、情報を表示するためのディスプレイなどである。記憶装置は、例えばＨＤＤや半導体記憶装置等である。記録媒体読取装置は、記録媒体に記録されているプログラムやデータを読み取る装置である。読み取られたプログラムやデータは、メモリや記憶装置に格納される。記録媒体は、例えばフレキシブルディスクやＣＤ−ＲＯＭ等である。
【００４０】
情報処理装置３００上のアプリケーションプログラムは、ディスクアレイ装置１００の提供する機能を利用したオンライン処理等を制御するためのプログラムである。情報処理装置３００は、ディスクアレイ装置１００内の記憶ボリュームに記憶されているデータに適宜アクセスしながらアプリケーションプログラムを実行することで各種の情報処理サービスを提供する。情報処理サービスは、例えば銀行の自動預金預け払いシステムなどである。
【００４１】
情報処理装置３００上の利用プログラムは、ディスクアレイ装置１００の提供する各種機能を利用するためのプログラムであり、ＨＤＤ３０に対するデータ入出力のためのリード／ライトコマンド等の各種要求を発行する機能を備える。また特に情報処理装置３００をディスクアレイ装置１００の保守・管理を行う役割の管理サーバとする場合は、利用プログラムに各種保守・管理のための機能を備える。
【００４２】
コントローラ１０は、ＣＰＵ１１、メモリ１２、チャネル制御部１３、データコントローラ１４、キャッシュメモリ１５、ディスク制御部１６、及びこれら各部を接続する接続部を有し、前述のコントローラボード５９に実装されている。チャネル制御部１３やディスク制御部１６は、複数個用意して多重化した構成が可能である。各コントローラ１０はチャネル制御部１３を通じて外部に接続される。またコントローラ１０はディスク制御部１６及びバスを通じて各筐体内のＨＤＤ３０のグループと接続される。筐体間の接続は前記通信ケーブル９１に対応している。
【００４３】
コントローラ１０は、情報処理装置３００から受信した要求に従ってデータ記憶に係わる各種制御を行う。例えば情報処理装置３００からのリードコマンドやライトコマンドを受信して、ＨＤＤ３０上の記憶ボリュームに対するリード／ライト処理等のデータ入出力処理を行う。またコントローラ１０は、情報処理装置３００との間で、ディスクアレイ装置１００を管理するための各種命令の授受も行う。またＨＤＤ３０のグループに対してＲＡＩＤグループを設定してＲＡＩＤグループ上に論理デバイス（ＬＤＥＶ）や論理ユニット（ＬＵ）を設定可能で、所定のＲＡＩＤ方式での制御を行う機能を有する。
【００４４】
ＣＰＵ１１は、メモリ１２を用いてコントローラ１０における制御のためのプログラムを実行し、コントローラ１０の各種機能を実現する。メモリ１２は、各種プログラムやデータが格納される。
【００４５】
チャネル制御部１３は、情報処理装置３００等に対して接続され、ＦＣプロトコル等に従った通信機能を提供する通信処理部である。チャネル制御部１３は、ポート部及びプロトコル部を介して、情報処理装置３００側の通信処理部や他のディスクアレイ装置１００などとの間で通信を行う。またチャネル制御部１３は、データコントローラ１４に接続され、キャッシュメモリ１５に対してデータをリード／ライトする。
【００４６】
データコントローラ１４は、ＣＰＵ１１、チャネル制御部１３、キャッシュメモリ１５、ディスク制御部１６に接続され、各部間でのデータ通信及びデータ処理を行うＬＳＩである。データコントローラ１４は、キャッシュメモリ１５に対して処理データのリード／ライトを行う。
【００４７】
キャッシュメモリ１５は、処理データ、特に情報処理装置３００とＨＤＤ３０の間での転送データを記憶するのに使用される。例えば、通常アクセス時には、情報処理装置３００からのリードやライトなどのデータ入出力要求に対応して、チャネル制御部１３によりデータコントローラ１４を介してキャッシュメモリ１５にライトデータ等が格納される。ディスク制御部１６は、ＣＰＵ１１からの指示でデータコントローラ１４を介してキャッシュメモリ１５にコマンドに対応した入出力処理を実行する。
【００４８】
ディスク制御部１６は、データコントローラ１４にバスで接続され、ＨＤＤ３０に対するデータ入出力処理を含む制御を行う。またディスク制御部１６は、データコントローラ１４を介してキャッシュメモリ１５に対してデータをリード／ライトする。ディスク制御部１６は、ＨＤＤ３０との間の接続において例えばループ状となるＦＣ−ＡＬ等の方式に対応した通信ラインで接続されて通信を行う。コントローラ１０には、ディスク制御部１６及びバスを通じて複数のＨＤＤ３０すべてが通信可能に接続される。
【００４９】
ディスク制御部１６は、データライト処理時、ＨＤＤ３０の領域に対してキャッシュメモリ１５等からユーザデータを転送してライトさせる処理を行う。また、データリード処理時、ＨＤＤ３０の領域からユーザデータをリードさせてキャッシュメモリ１５等に転送する処理を行う。リード／ライト処理の際は、ディスク制御部１６等において、対象データについて、アドレス変換により、アクセス対象となるＨＤＤ３０内位置の物理的なアドレスすなわちＬＢＡが求められる。
【００５０】
また、コントローラ１０内の構成は一例である。例えばキャッシュメモリ１５がチャネル制御部１３及びディスク制御部１６に対して独立に設けられた構成であるが、これに限らず、チャネル制御部１３等の各々にメモリが分散されて設けられる形態なども可能である。
【００５１】
データは、１つ以上のＨＤＤ３０により提供される記憶ボリューム、すなわちディスク上の物理的な記憶領域または物理的な記憶領域上に論理的に設定される記憶領域に記憶される。ＨＤＤ３０上に設定される記憶ボリュームとしては、情報処理装置３００からアクセス可能でユーザデータが格納される領域や、ディスクアレイ装置１００でのシステム制御のためにシステムデータ等の格納のために使用される領域等が有り、必要に応じて設定・確保される。ユーザデータは、本バックアップ方式によりバックアップデータを格納してデータ信頼性を確保する対象となるデータに含まれる。情報処理装置３００からのユーザデータだけでなく、後述するＯＳやアプリケーション等のシステムデータ等も本バックアップ方式でのバックアップ対象とすることができる。また、コントローラ１０に対して接続される記憶装置としてはＨＤＤ３０に限らず、フレキシブルディスク装置、半導体記憶装置など様々なものを用いることができる。ディスク制御部１６とＨＤＤ３０との間は、直接接続される形態にもできるし、ネットワークやスイッチを介して接続される形態にもできる。
【００５２】
ＨＤＤ３０では、ディスク上の物理的な記憶領域のどの位置にデータを読み書きするかを識別する物理アドレスとしてＬＢＡ（論理ブロックアドレス）を持つ。例えばＨＤＤ３０ではシリンダやトラックといった位置情報を指定することで、ランダムアクセスとしてディスク上の任意位置にデータを読み書き可能である。記憶ボリュームへのデータ入出力の際は、ディスク制御部１６等での処理により、論理アドレスとディスクにおける物理アドレスすなわちＬＢＡとの変換がなされる。
【００５３】
また、ディスクアレイ装置１００には、ディスクアレイ装置１００の保守・管理等を行うための管理装置や、ＨＤＤ３０に格納されるデータのバックアップを記録するための磁気テープ装置等の他装置も直接あるいはネットワークを介して接続可能である。また、あるディスクアレイ装置１００の設置場所（プライマリサイト）とは遠隔した場所（セカンダリサイト）に他のディスクアレイ装置１００を設置して遠隔で通信可能である。ディスクアレイ装置１００間で、例えばデータ保全のためのリモートコピー等の実行が可能である。
【００５４】
情報処理装置３００やディスクアレイ装置内蔵の管理端末（ＳＶＰ：サービスプロセッサ）にインストールされる管理プログラムなどから、ディスクアレイ装置１００の各種設定や保守・管理が可能である。管理プログラムにより、例えばＨＤＤ３０の物理ディスク構成や論理デバイスの設定、論理パスの設定、チャネル制御部１３等において実行されるプログラムのインストール等を行うことができる。物理ディスク構成の設定としては、例えばＨＤＤ３０の増減設、ＲＡＩＤ構成の変更等を行うことができる。またディスクアレイ装置１００の動作状態の確認や、故障部位の特定等の作業を行うこともできる。
【００５５】
管理端末（ＳＶＰ）のハードウェア構成は、ＰＣの形態である場合、情報処理装置３００のハードウェア構成と同様に、ＣＰＵ、メモリ、ポート、入力装置、出力装置、記憶装置等を備える。ＣＰＵがメモリ上の制御プログラムを実行することで保守・管理のための各種機能を実現する。メモリには、制御プログラムや、保守・管理に係わる各種情報が記憶される。例えば管理端末のポートがコントローラ１０に接続され、チャネル制御部１３等と通信可能である。
【００５６】
＜バックアップ方式＞
前記図２で、コントローラ１０は、ＨＤＤ３０への格納対象となる第１のデータについて、ディスク制御部１６での処理を介して格納を行う。この際、コントローラ１０は、複数のＨＤＤ３０から構成されるＲＡＩＤグループの提供する全体の記憶領域内において、その一部の領域に第１のデータを格納すると共に、未使用領域に、前記第１のデータのバックアップデータを、それらの格納先ＨＤＤ３０が別となるように格納する処理を行う。１つのＨＤＤ３０内の記憶領域では、第１のデータと、他ＨＤＤ３０の第１のデータのバックアップデータとが並存することになる。
【００５７】
実施の形態１では、ＲＡＩＤ制御例として、複数のＨＤＤ３０に対して上位からの第１のデータを分割して格納する制御、例えばＲＡＩＤ０，３，４，５等に対応した制御を行う。コントローラ１０で特にデータコントローラ１４での処理制御により、ＨＤＤ３０に格納する対象となる情報処理装置３００からのユーザデータについて、ＲＡＩＤグループを構成する複数のＨＤＤ３０により提供される記憶領域に対して、分割（ストライピング）して格納する制御を行う。これと共に、その格納ユーザデータのバックアップデータを、同ＲＡＩＤグループの記憶領域内で、各分割データの格納先が他ＨＤＤ３０の記憶領域となるように格納する処理を行う。
【００５８】
図２中、ディスクアレイ装置１００でのＲＡＩＤ制御に従って、ＲＡＩＤグループを構成するＨＤＤ３０に分割データが格納されている状態を示す。コントローラ１０は、ＲＡＩＤ制御として、上位からのユーザデータを分割してＨＤＤ３０に入出力する機能を備える。例として、基本筐体１２０に接続されているうちの５台の物理的なＨＤＤ３０のグループで１つのＲＡＩＤグループが構成されており、このＲＡＩＤグループ上にＲＡＩＤ制御に対応した論理的な記憶ボリュームが設定されており、この記憶ボリューム上に分割データＡ〜Ｅからなる第１のデータが格納されている。同様に、増設筐体１３０に接続されているうちの５台の物理的なＨＤＤ３０でＲＡＩＤグループが構成され、このＲＡＩＤグループ上に、ＲＡＩＤ制御に対応した記憶ボリュームが設定されており、この記憶ボリューム上に分割データＧ〜Ｋからなる第１のデータが格納されている。前記ＲＡＩＤグループ上に設定される記憶ボリュームは、ＬＵ（論理ユニット）やＬＤＥＶ（論理デバイス）などに対応する。そして、コントローラ１０は、上記第１のデータを分割して各分割データをＨＤＤ３０に格納するのに伴い、各分割データを対象にして、同ＲＡＩＤグループの記憶領域へのバックアップを行う。図２中、例えば、前記データＡ〜Ｅからなる第１のデータについて、データコントローラ１４から、同ＲＡＩＤグループ内でユーザデータ格納のための未使用領域が有るので、当該未使用領域に、前記第１のデータのバックアップデータを格納する処理を行う。この際、冗長性を確保するために、各分割データＡ〜Ｅの格納先とその各バックアップデータＡ〜Ｅの格納先とが別のＨＤＤ３０となるように格納する。なお第１のデータとそのバックアップデータは内容が同一なので、同じ記号で表わすこととする。例えば、ユーザデータすなわち各分割データＡ〜Ｅからそのバックアップデータすなわち各バックアップデータＡ〜Ｅへと、隣接ＨＤＤ３０へスライドした位置取りで格納する。例えば、分割データＢについて見てみると、分割データＢのバックアップデータＢが、分割データＡが格納されているＨＤＤ３０の未使用領域に格納され、分割データＣのバックアップデータＣが、分割データＢが格納されているＨＤＤ３０の未使用領域に格納される。
【００５９】
また、上記はＲＡＩＤ制御に対応したバックアップの場合であるが、それよりも単純な場合としては、２台のＨＤＤ＃０，＃１を対象としてユーザデータａを格納してもよい。その場合、コントローラ１０は、一方のＨＤＤ＃０にユーザデータａを格納して他方のＨＤＤ＃１の空き領域にそのバックアップデータａ’を格納する。また、２台のＨＤＤ＃０，＃１を対象としてユーザデータａ，ｂを格納する場合なら、コントローラ１０は、例えば一方のＨＤＤ＃０にユーザデータａを格納して他方のＨＤＤ＃１の空き領域にそのバックアップデータａ’を格納し、ＨＤＤ＃１にユーザデータｂを格納してＨＤＤ＃０の空き領域にそのバックアップデータｂ’を格納する。すなわち２台のＨＤＤ３０をペアにして、第１のデータとそのバックアップデータを交差するような配置で互いのＨＤＤ３０の空き領域に格納する。
【００６０】
なおパリティデータを格納するＲＡＩＤ３，４，５等の制御を行う場合は、前記分割データの一部はデータについてのパリティとなる。例えば、前記データＥが非パリティデータＡ〜Ｄについてのパリティデータとなる。コントローラ１０は、例えばＲＡＩＤ５の制御において、第１のデータとしての上位からのユーザデータについて、ストライピング及びパリティ生成・付加処理してから、ＲＡＩＤグループのＨＤＤ３０に対して各ストライピングデータ及びパリティデータを並列的にライトする処理を行う。また、コントローラ１０は、ＲＡＩＤグループ上に分割して格納されている第１のデータについて、各ストライピングデータ及びパリティデータを並列的にリードし、パリティデータを用いてリードデータが正常かどうかをパリティチェックして、正常な復元データを上位に返す処理を行う。
【００６１】
実施の形態１のディスクアレイ装置１００でのバックアップ方式に係わる処理手順は概略以下のようになる。実施の形態１でのバックアップ方式が適用可能なＲＡＩＤ方式は、ＲＡＩＤ３，４，５，０である。
【００６２】
（１）：複数のＨＤＤ３０での全体の記憶領域におけるユーザデータ等の第１のデータでの使用量が例えば５０％以下の時期すなわち空き領域が有る時期において、コントローラ１０は、第１のデータを通常通り格納すると共に、当該第１のデータについてのバックアップデータを他ＨＤＤ３０の空き領域に作成してゆく。コントローラ１０は、データを分割して格納する場合は、各分割データをＨＤＤ３０のグループ内で対応するＨＤＤ３０に格納し、各分割データに対応したバックアップデータを同グループ内で他ＨＤＤ３０の空き領域に格納する。ただし、前記全体の記憶領域において第１のデータでの使用量が５０％近くになると、すなわち第１のデータとバックアップデータとで記憶領域を使い切ると、バックアップデータの領域を通常の第１のデータの格納で上書きして使用してゆく。これによりバックアップデータは徐々に消失することとなる。
【００６３】
（２）：ＨＤＤ３０に格納されている第１のデータについてリードする際、コントローラ１０は、バックアップデータが有る状態でのデータリード時は、対象データとその同一内容のバックアップデータとが別のＨＤＤ３０の記憶領域に存在するので、通常に格納した第１のデータの方のみならず、それに対応するバックアップデータの方も利用可能である。すなわち、コントローラ１０は、ＨＤＤ３０に格納されている第１のデータとそのバックアップデータとで、その一方あるいは両方をアクセスして、目的のデータを取得する。また、このうち待ち時間が少ない方のＨＤＤ３０から目的のデータをリードして取得することも可能である。
【００６４】
（３）：第１のデータ及びバックアップデータを格納したＨＤＤ３０のグループにおいて、ＨＤＤ３０の障害により目的の第１のデータのリードがエラーになった場合は、障害状態でない他のＨＤＤ３０に格納されている対応するバックアップデータのリードにより、エラー状態のデータについての回復が可能である。同様に目的のバックアップデータのリードがエラーになった場合は他ＨＤＤ３０からの対応する第１のデータのリードにより回復可能である。前記グループで１台のＨＤＤ３０が障害でエラーになった時は、他ＨＤＤ３０のバックアップデータからのコピーのみで前記エラー状態のデータを復元できる。また、同グループで２台以上のＨＤＤ３０が障害で前記バックアップデータからのコピーのみではデータ復元できない場合には、ＲＡＩＤ３，４，５の方式を使用している場合ではＥＣＣ計算との併用によりデータ復元する。
【００６５】
上記のようなデータ及びバックアップデータの格納処理を、特にディスクアレイ装置１００の運用の初期など、ＨＤＤ３０の記憶領域の使用容量が少ない時期において自動的に実行し、大きい空き領域において第１のデータとそのバックアップデータをそれぞれ順に格納して蓄積してゆく。例えば、全体の記憶領域において、第１のデータごと、バックアップデータごとに格納領域を分けて蓄積する。ＲＡＩＤ０のような本来は冗長性が無い方式を使用している場合でも、バックアップデータを利用してデータ回復が可能であり、ＲＡＩＤ１を使用した場合と同様のデータ信頼性が確保される。ＨＤＤ３０におけるデータ蓄積率が低く故障率の高い装置運用の初期において本バックアップ方式の実行によりデータ信頼性が確保される。その後、装置運用の中期すなわち故障率の低い安定期に移行するに従って、ＨＤＤ３０におけるデータ蓄積率も高くなりバックアップデータ保持の必要性も低くなってゆくので、全体の記憶領域のうちバックアップデータを格納している領域を、本来のデータの格納用に徐々に開放して上書きして使用する。
【００６６】
＜領域管理＞
本バックアップ方式の処理のために、コントローラ１０は、複数のＨＤＤ３０により提供される全体の記憶領域に対して第１のデータ及びバックアップデータを格納するにあたって、全体の記憶領域を所定サイズの記憶領域単位に分割して管理する。そして、コントローラ１０は、この分割して管理される領域（分割領域ｒと称する）を単位として連続的に第１のデータやバックアップデータを格納してゆく処理を行う。これにより全体の記憶領域で小さい空き領域を作らずになるべく連続的な広い空き領域が残るようにし、各第１のデータと各バックアップデータをそれぞれデータ格納用の領域（データ領域と称する）とバックアップデータ格納用の領域（バックアップ領域と称する）とで分けて、複数の連続する分割領域ｒで各データをまとめて格納する。分割領域ｒは、論理的な記憶領域単位であり、ＨＤＤ３０におけるアドレス体系であるＬＢＡに対応した記憶領域とは別の単位である。また、分割領域ｒの管理により、全体の記憶領域における第１のデータとバックアップデータでの使用容量の把握・管理を行う。前記分割領域ｒ及び使用容量の管理を、以下、領域管理と称する。
【００６７】
前記領域管理では、コントローラ１０は、ＬＢＡ変換により、ＨＤＤ３０の記憶領域のアドレスであるＬＢＡと、前記分割領域ｒのアドレスとを対応付ける。そして、その対応付け情報をコントローラ１０内に保持し必要に応じて参照する。前記ＬＢＡ変換は、ＨＤＤ３０の記憶領域に対する、本来のすなわち領域管理無しの場合のデータ格納先となるＬＢＡと、分割領域ｒの位置を示すＬＢＡとの相互変換である。コントローラ１０は、データ格納の際に、上位からのコマンド等をもとに指定される本来のデータ格納先のＬＢＡの位置に対してではなく、ＬＢＡ変換により求めた分割領域ｒの位置に対して対象データを格納する処理を行う。
【００６８】
図３は、コントローラ１０が領域管理のために保持する制御情報である配列変数（領域管理テーブルと称する）の構成例を示す。この領域管理テーブルにおいて、管理変数として、アドレス管理変数と、領域種別管理変数を有する。格納値は一例である。アドレス管理変数で、前記ＬＢＡ変換における対応付け情報を記憶する。すなわち、コントローラ１０は、各分割領域ｒに対応したアドレス管理変数に、本来のデータ格納先となるＬＢＡ値を記憶する。言い換えれば、本来のデータ格納先となるＬＢＡ値に対して、ＬＢＡ変換により第１のデータやそのバックアップデータの格納のための各分割領域ｒが割り当てされる。
【００６９】
また、コントローラ１０は、各分割領域ｒに格納されるデータが通常の第１のデータであるかバックアップデータであるか等の格納データ種別について判別できるように制御情報の管理を行う。すなわち、領域種別管理変数で、各分割領域ｒの格納データの種別を判別するための領域種別情報を記憶する。領域種別情報は、例えば、上位からのユーザデータ等の、通常の第１のデータが格納されるデータ領域を「１」、そのバックアップデータが格納されるバックアップ領域を「２」として区別する。コントローラ１０は、ＨＤＤ３０に対するデータ入出力の際などには、ＬＢＡ変換を行うと共にこれら管理変数を参照／更新して処理を行う。
【００７０】
図３中に示すアドレス管理変数の並びは、ＨＤＤ３０の記憶領域における分割領域ｒの並びと対応している。例として１つのＨＤＤ３０における８つの分割領域ｒに対応したアドレス管理変数｛ｒ（０）〜ｒ（７）｝を示している。左側のアドレス管理変数は、後述の第１のバックアップモード（モードＡ）に対応した例を、右側のアドレス管理変数は、後述の第２のバックアップモード（モードＢ）に対応した例を示す。モードＡとモードＢでバックアップ領域の配置の順番が逆になっている。例えば左側のモードＡに対応したアドレス管理変数において、一番下の、全体のうち先頭の分割領域ｒに対応したアドレス管理変数ｒ（０）にＬＢＡ値「２００００」が記憶され、これに対応する領域種別管理変数にデータ領域を示す「１」が記憶されている。更に、一番上の、全体のうち最終の分割領域ｒに対応したアドレス管理変数ｒ（７）に同じＬＢＡ値「２００００」が記憶され、これに対応する領域種別管理変数にバックアップ領域を示す「２」が記憶されている状態である。すなわち、本来のデータ格納先となるＬＢＡ値「２００００」に対して、全体の記憶領域における先頭の分割領域ｒがデータ領域として割り当てられ、最終の分割領域ｒがバックアップ領域として割り当てられていることを示す。コントローラ１０は、上位からの要求が全体の未使用の記憶領域でＬＢＡ値「２００００」の位置に対してデータを格納する要求であった時、ＬＢＡ変換により全体のうち先頭の分割領域ｒをデータ領域、最後の分割領域ｒをバックアップ領域として対応付けると共に、それら分割領域ｒに対応した管理変数でＬＢＡ値「２００００」及び各領域種別情報の値「１」、「２」を記憶する。
【００７１】
このような領域管理を行うことで、コントローラ１０により分割領域ｒを単位に効率的な第１のデータ及びバックアップデータの格納処理を行うと共に、全体の記憶領域における使用容量や格納データ種別についても把握がなされる。また、処理対象となる分割領域ｒを選択可能であり、第１のデータやバックアップデータを利用したスペアディスク等へのデータ復元に要する時間も小さくすることが可能である。
【００７２】
＜バックアップモード＞
実施の形態１でのバックアップ方式で、複数のＨＤＤ３０が提供する全体の記憶領域内でどのような配置で第１のデータとバックアップデータを格納してゆくかに係わるバックアップ処理のモードとして例えば以下に示す第１、第２のバックアップモードがある。これらモードでは、領域管理により分割領域ｒを単位として第１のデータとバックアップデータの格納を行う。前記領域管理テーブルで各分割領域ｒについての情報が記憶される。
【００７３】
図４は、第１のバックアップモード（モードＡ）と第２のバックアップモード（モードＢ）について示す説明図である。例として、ＲＡＩＤグループを構成するＨＤＤ＃０〜＃４の５台のＨＤＤ３０が提供する全体の記憶領域において第１のデータとバックアップデータの格納を行う場合である。各ＨＤＤ３０における物理ＬＢＡに対応して分割領域ｒが管理されている。例えばＨＤＤ＃０で、ＬＢＡ「００００００Ｈ」〜「０７ＦＦＦＦＨ」の領域が１つの分割領域ｒである。またＨＤＤ＃０で同サイズの３２個の分割領域ｒでモードＡ及びモードＢに対応した記憶領域が確保されている。
【００７４】
第１のバックアップモードでは、ＨＤＤ３０の記憶領域において、その先頭領域から順に通常の第１のデータの格納に使用すると共に、その最終領域から順にバックアップ領域として使用する。本モードでは、古いバックアップデータを優先して残しておく。空き領域が無くなった場合あるいは所定の容量よりも少なくなった場合は、新しいバックアップ領域から順に第１のデータを上書きして使用する。
【００７５】
上側に示すモードＡで、モードＡに対応した全体の記憶領域、すなわち８０（１６×５）個の分割領域ｒからなる記憶領域（領域Ａとする）において、例えば先頭から半分までの５０％の領域を通常の第１のデータ格納用のデータ領域として用い、半分から最後までの５０％をバックアップデータ格納用のバックアップ領域として用いる。前記データ領域は、特に上位の情報処理装置３００からのユーザデータを専用に格納するためのユーザデータ領域としてもよい。左側はモードＡを示すアイコンである。コントローラ１０は、データ領域で、先頭の分割領域ｒから順に用いて第１のデータを格納してゆく。例えば、最初に、前記分割データＡ〜Ｅからなる第１のデータが各ＨＤＤ＃０〜＃４の先頭の分割領域ｒに格納される。その下の点線枠で示すのは、次にデータ領域として割り当てられる領域である。またコントローラ１０は、前記第１のデータの格納と共に、バックアップ領域で、最後の分割領域ｒから先頭側に向かって順に用いてバックアップデータを格納してゆく。例えば、最初に、前記分割データＡ〜Ｅのバックアップデータ（Ｂ〜Ｅ及びＡ）が、各ＨＤＤ＃０〜＃４の領域Ａにおける最後の分割領域ｒに、第１のデータに対してスライドした位置取りで格納される。その上の点線枠で示すのは、次にバックアップ領域として割り当てられる領域である。コントローラ１０は、第１のデータ及びバックアップデータの格納の際は、ＬＢＡ変換を行ってデータ領域及びバックアップ領域として割り当てされる分割領域ｒを決定し、その割り当てに関する情報を領域管理テーブル内に記憶する。装置利用に伴い、所定容量のデータ領域を第１のデータの格納に使い切った等の場合は、使用済みのバックアップ領域で最後にバックアップ領域として割り当てた分割領域ｒ（１つ以上）から順に開放して使用する。
【００７６】
第２のバックアップモードでは、ＨＤＤ３０の記憶領域において、その先頭領域から順に通常の第１のデータの格納に使用すると共に、その途中例えば半分の位置から順にバックアップ領域として使用する。これは５０％をバックアップ領域として使用する場合に対応する。本モードでは、新しいバックアップデータを優先して残しておく。空き領域が無くなった等の場合は、古いバックアップ領域から順に第１のデータを上書きして使用する。
【００７７】
下側に示すモードＢで、モードＢに対応した全体の記憶領域、すなわち８０個の分割領域ｒからなる記憶領域（領域Ｂとする）において、例えば先頭から半分までの５０％の領域を通常の第１のデータの格納用のデータ領域として用い、半分から最後までの５０％をバックアップデータ格納用のバックアップ領域として用いる。左側はモードＢを示すアイコンである。コントローラ１０は、データ領域で、先頭の分割領域ｒから順に用いて第１のデータを格納してゆく。例えば、最初に、前記分割データＧ〜Ｋからなる第１のデータが各ＨＤＤ＃０〜＃４の領域Ｂにおける先頭の分割領域ｒに格納される。その下の点線枠で示すのは、次にデータ領域として割り当てられる領域である。またコントローラ１０は、前記第１のデータの格納と共に、バックアップ領域で、先頭の分割領域ｒから最後側に向かって順にバックアップデータを格納してゆく。例えば、最初に、前記分割データＧ〜Ｋのバックアップデータ（Ｈ〜Ｋ及びＧ）が各ＨＤＤ＃０〜＃４の領域Ｂにおける半分の位置の分割領域ｒに格納される。その下の点線枠で示すのは、次にバックアップ領域として割り当てられる領域である。所定容量のデータ領域を第１のデータの格納に使い切った等の場合は、使用済みのバックアップ領域で最初にバックアップ領域として割り当てた分割領域ｒ（１つ以上）から順に開放して使用する。
【００７８】
モードＡの場合、バックアップ領域として最後に割り当てた分割領域ｒから開放される。すなわち新しいバックアップデータの方から冗長性を失い、古いバックアップデータの冗長性が保持される。この方式は、格納データとして、古い時期にＨＤＤ３０に格納したデータを残したい場合、すなわち装置使用時期として初期に記憶したデータの方が最近の格納データよりも重要な場合などに使用することが適している。このタイプのデータとして、例えば、情報処理装置３００のＯＳやアプリケーション等のデータは、最初期にＨＤＤ３０の領域にインストールされる。例えば、ＯＳデータについて、バックアップデータを保持した状態を長くすることができ、ＯＳデータの障害に備えることができる。
【００７９】
一方、モードＢの場合、バックアップ領域として最初に割り当てた分割領域ｒから開放される。すなわち古いバックアップデータの方から冗長性を失い、新しいバックアップデータの冗長性が保持される。この方式は、格納データとして、最近の格納データを優先して残したい場合、すなわち装置使用時期として中期／終期に記憶したデータの方が重要な場合などに使用することが適している。前記各モードのように記憶領域の使用及び開放を行うことでデータのロバスト性をユーザの使用状況・利用形態にあわせて調節可能である。
【００８０】
＜ライト時フロー＞
図５は、実施の形態１のディスクアレイ装置１００で、ＨＤＤ３０に対するデータライト時の処理を示すフロー図である。特に、前記モードＡに対応した処理を示す。
【００８１】
コントローラ１０が、情報処理装置３００よりライトデータを受領する（ステップＳ１０１）。コントローラ１０のＣＰＵ１１は、受領コマンドで指定されたＬＢＡを演算することにより、分割領域位置（以下、第１の位置と称し、対応する分割領域ｒを第１の領域と称する）と、前記第１の領域内のオフセット位置すなわちデータ格納位置（以下、第２の位置と称する）とを計算する（Ｓ１０２）。なお、コントローラ１０は、データ格納領域が分割領域ｒを跨る場合は、対象データを分割する。
【００８２】
次に、前記計算した第１の領域は、以前に使用されたことがあるかを、前記領域管理のための管理変数を参照することで判断する（Ｓ１０３）。前記判断で、使用済みの場合（Ｓ１０３−ＹＥＳ）、ＣＰＵ１１が、前記第１の領域を検索して選択する（Ｓ１０４）。そして、データコントローラ１４が、前記第１の領域内の第２の位置に、データをライトする（Ｓ１０５）。その後、前記第１の領域に対応するバックアップ領域が有るかどうか判断し（Ｓ１０６）、バックアップ領域が有る場合は（ＹＥＳ）、Ｓ１１４へ移り、バックアップ領域が無い場合は（ＮＯ）、終了する。
【００８３】
前記Ｓ１０３の判断で、以前に未使用である場合（ＮＯ）、次に、ＣＰＵ１１は、空き領域が残っているかどうか、言い換えれば使用可能な分割領域ｒが有るかどうかを管理変数の参照により判断する（Ｓ１０７）。
【００８４】
前記Ｓ１０７の判断で、空き領域無しの場合（ＮＯ）、ＣＰＵ１１は、バックアップ領域の最終領域を開放し、前記第１の領域として割り当てる（Ｓ１０８）。そして、データコントローラ１４は、前記第１の領域内の第２の位置にデータをライトし（Ｓ１０９）、終了する。
【００８５】
前記Ｓ１０７の判断で、空き領域有りの場合（ＹＥＳ）、ＣＰＵ１１は、空き領域の先頭領域に、前記第１の領域を割り当てる（Ｓ１１０）。そして、データコントローラ１４は、第１の領域内の第２の位置に、データをライトする（Ｓ１１１）。そして、ＨＤＤ３０のユーザデータ格納用の使用分割領域数は全数の半分以下かどうか、言い換えればバックアップ領域が有るかどうかを判断する（Ｓ１１２）。
【００８６】
前記Ｓ１１２の判断で、使用領域数が半分以下でない場合（ＮＯ）、バックアップ不可能なので終了する。前記Ｓ１１２の判断で、半分以下の場合（ＹＥＳ）、バックアップ可能なので、ＣＰＵ１１は、空き領域の最終領域を、前記第１の領域のデータについてのバックアップ領域として割り当てる（Ｓ１１３）。そして、データコントローラ１４は、バックアップ領域で、前記第１の領域及び第２の位置に対応する位置に、バックアップデータをライトし（Ｓ１１４）、終了する。
【００８７】
＜リード時フロー（通常時）＞
図６は、実施の形態１のディスクアレイ装置１００で、ＨＤＤ３０に対するデータリード時の処理、特に、ＨＤＤ３０に障害が無い通常時の処理を示すフロー図である。
【００８８】
コントローラ１０が、情報処理装置３００よりリード要求を受領する（Ｓ２０１）。ＣＰＵ１１は、指定されたＬＢＡを演算することにより、前記ライト時と対応した、第１の位置（分割領域位置）及び第１の領域（分割領域ｒ）と、第２の位置（第１の領域内のオフセット位置）とを計算する（Ｓ２０２）。なお、コントローラ１０は、データ格納領域が分割領域ｒを跨る場合は、データを分割する。
【００８９】
次に、ＣＰＵ１１は、前記第１の領域を検索して選択する（Ｓ２０３）。次に、データコントローラ１４は、前記第１の領域内の第２の位置のデータをリードする（Ｓ２０４）。次に、データコントローラ１４は、リードデータを情報処理装置３００へデータ転送し（Ｓ２０５）、終了する。
【００９０】
＜リード時フロー（ＨＤＤ障害時）＞
図７は、実施の形態１のディスクアレイ装置１００で、ＨＤＤ３０に対するデータリード時の処理、特に、ＨＤＤ３０に障害が有る時の処理を示すフロー図である。
【００９１】
コントローラ１０が、情報処理装置３００よりリード要求を受領する（Ｓ３０１）。ＣＰＵ１１は、指定されたＬＢＡを演算することにより、前記ライト時と対応した、第１の位置（分割領域位置）及び第１の領域（分割領域ｒ）と、第２の位置（第１の領域内のオフセット位置）を計算する（Ｓ３０２）。なお、コントローラ１０は、データ格納領域が分割領域ｒを跨る場合は、データを分割する。
【００９２】
次に、ＣＰＵ１１は、前記第１の領域を検索して選択する（Ｓ３０３）。次に、データコントローラ１４は、前記第１の領域内の第２の位置の、正常なＨＤＤ３０のデータをリードする（Ｓ３０４）。
【００９３】
続いて、コントローラ１０は、パリティデータからデータ回復可能かどうかを判断する（Ｓ３０５）。前記判断で、回復可能な場合（ＹＥＳ）、データコントローラ１４は、パリティデータによりデータ回復を行い（Ｓ３０６）、Ｓ３１２へ移る。
【００９４】
前記Ｓ３０５の判断で、回復不能な場合（ＮＯ）、コントローラ１０は、前記第１の領域に対応するバックアップ領域が有るかどうか判断する（Ｓ３０７）。前記判断で、バックアップ領域が無い場合（ＮＯ）、データコントローラ１４は、「ユーザデータ消失」の旨のエラー報告を行い（Ｓ３０８）、終了する。
【００９５】
前記Ｓ３０７の判断で、バックアップ領域が有る場合（ＹＥＳ）、コントローラ１０は、バックアップデータのみで回復可能かどうかを判断する（Ｓ３０９）。前記判断で、バックアップデータのみで回復可能な場合（ＹＥＳ）、バックアップデータを読み出して、バックアップデータによりデータ回復を行い（Ｓ３０９ｂ）、Ｓ３１２へ移る。前記判断で、バックアップデータのみでは回復不能な場合（ＮＯ）、コントローラ１０は、バックアップデータとパリティデータ併用で回復可能かどうかを判断する（Ｓ３１０）。前記判断で、併用でも回復不能の場合（ＮＯ）、前記データコントローラ１４でのエラー報告処理（Ｓ３０８）を行って終了する。前記Ｓ３１０の判断で、併用により回復可能の場合（ＹＥＳ）、データコントローラ１４は、バックアップデータとパリティデータからデータ回復を行う（Ｓ３１１）。そして、データコントローラ１４は、リードデータを情報処理装置３００へデータ転送を行い（Ｓ３１２）、終了する。
【００９６】
＜障害時のデータ回復＞
次に、図８（ａ）〜（ｃ）は、前記バックアップ方式で第１のデータとバックアップデータを格納している場合において、ＨＤＤ障害時（データ読み出しエラー時）にデータ回復を行う場合の処理モデルを示す説明図である。（ａ）は、ＲＡＩＤ構成、例えばＲＡＩＤ０の方式でＨＤＤ＃０〜＃４の５台のＨＤＤ３０をＲＡＩＤグループとして第１のデータ及びそのバックアップデータを格納している状態を示す。（ｂ）は、（ａ）に対応して、ＲＡＩＤ構成で１台のＨＤＤに障害が発生した場合のデータ回復について示す。（ｃ）は、ＲＡＩＤ３，４，５の構成で２台のＨＤＤに障害が発生した場合のデータ回復について示す。
【００９７】
図８（ａ）で、ＲＡＩＤグループの記憶領域で、データ領域に、分割データＡ〜Ｅからなる第１のデータが格納されており、同ＲＡＩＤグループで未使用領域のうちのバックアップ領域に、前記第１のデータのバックアップデータ（Ｂ〜Ｅ及びＡ）が、他ＨＤＤ３０へと格納先をスライドした位置取りで格納されている。データリードの際、例えば分割データＢをリードする場合、ＨＤＤ＃１，＃０の２台を利用できる。ＲＡＩＤ４，５の方式でのリード時など、ストライプサイズ以下の小さな第１のデータ（バックアップデータ）へのアクセスが特定のディスクに集中する場合などには、別のディスクのバックアップデータ（第１のデータ）にアクセスして同一内容データを読み出すことが可能であり、負荷分散の効果が得られる。
【００９８】
図８（ｂ）で、コントローラ１０が、前記分割データＡ〜Ｅからなる第１のデータをリードする際、例えばＨＤＤ＃３が障害でデータ読み出しがエラーであるとする。この場合、コントローラ１０は、ＨＤＤ＃３のデータＤについて、ＨＤＤ＃２のバックアップデータＤをリードして回復する。バックアップデータからのコピーのみで回復可能である。またＨＤＤ＃３の格納データをスペアＨＤＤ等に対して回復する場合は、例えば前記ＨＤＤ＃３のデータＤ，Ｅに関して、ＨＤＤ＃２内のバックアップデータＤと、ＨＤＤ＃４内のデータＥの部分をそれぞれリードして、スペアＨＤＤ等で前記ＨＤＤ＃３での格納位置に対応した位置にライトする。
【００９９】
図８（ｃ）で、例えばＨＤＤ＃０〜＃４のＲＡＩＤグループのデータ領域において分割データＡ〜Ｄ及びＰ（データＡ〜Ｄは非パリティデータ、データＰはパリティデータ）からなる第１のデータを格納しており、そのバックアップデータＡ〜Ｄ及びＰを同ＲＡＩＤグループ内のバックアップ領域に格納している。前記分割データＡ〜Ｄ及びＰをリードして第１のデータを取得する際、例えばＨＤＤ＃２，＃３が障害でデータ読み出しがエラーであるとする。この場合、コントローラ１０は、ＨＤＤ＃２のデータＣは、ＨＤＤ＃１のバックアップデータＣをリードして回復し、ＨＤＤ＃３のデータＤは、ＨＤＤ＃２のバックアップデータＤがエラーなので、前記データＡ，Ｂ，ＨＤＤ＃１からリードしたバックアップデータＣ、ＨＤＤ＃４からリードしたデータＰを利用して、パリティ演算により回復する。またＨＤＤ＃２，＃３の格納データをスペアＨＤＤ等に対して回復する場合は、例えば前記ＨＤＤ＃２，＃３のデータＣ，Ｄ，Ｐに関して、ＨＤＤ＃０，＃１，＃４からそれぞれリードしたデータＡ，Ｂ，Ｐ，及びバックアップデータＣの部分を用いて、バックアップデータＣと、前記パリティ演算により回復したデータＤと、前記データＰとをそれぞれスペアＨＤＤ等で前記ＨＤＤ＃２，＃３での格納位置に対応した位置にライトする。
【０１００】
図９は、前記図８（ｃ）に対応して、障害状態からデータ回復を行う場合の処理を示すフロー図である。まず、ディスクアレイ装置１００で例えばＨＤＤ＃２，＃３の２台が故障したことが検出され通知や表示がなされる（Ｓ４０１）。障害検出後、ディスクアレイ装置１００の管理者が、ＨＤＤ＃２，＃３を別のＨＤＤ３０に交換する作業を行う（Ｓ４０２）。交換後ＨＤＤが認識されたら、コントローラ１０におけるデータコントローラ１４は、まず、ＨＤＤ＃１から、バックアップデータＣの部分を、交換後ＨＤＤ＃２の対応位置（前記データＣの位置）にコピーする（Ｓ４０３）。続いて、データコントローラ１４は、ＨＤＤ＃４から、データＰを、交換後ＨＤＤ＃３の対応位置（前記バックアップデータＰの位置）にコピーする（Ｓ４０４）。続いて、データコントローラ１４は、データＡ，Ｂ，Ｃ，ＰからデータＤを計算して求める（Ｓ４０５）。データコントローラ１４は、計算して求めたデータＤを、交換後ＨＤＤ＃２，＃３における対応位置にコピーして（Ｓ４０６）、終了する。
【０１０１】
前記（ｃ）の例では、前記ＲＡＩＤグループにおいてデータＤの部分が完全に欠落した場合を想定しているが、通常の第１のデータ及びそのバックアップデータが共に消失しない限り、パリティデータを使用せずにバックアップデータのみで回復が可能である。これはＲＡＩＤ５＋１と同等の冗長性を持っており、同一ＲＡＩＤグループのＨＤＤ数における約半分の台数まではＨＤＤが故障してもユーザデータが消失しない。そのため、特別な事をしなくても一般的な初期故障率を上回る冗長性を保有可能である。同様にＲＡＩＤ３方式の場合もＲＡＩＤ３＋１相当となりＲＡＩＤ５＋１と同等のデータ信頼性を得ることができる。
【０１０２】
＜設定画面＞
図１０は、実施の形態１でのバックアップ方式に関する設定画面例及び設定例を示す。ディスクアレイ装置１００に接続される管理装置、例えば、管理プログラムをインストールした情報処理装置３００などで、管理プログラムの処理により設定画面を表示し、管理者等が設定入力を行う。
【０１０３】
設定画面例において、例えば、５台のＨＤＤ３０からＲＡＩＤ５に対応したＲＡＩＤグループ０が設定され、ＲＡＩＤグループ０上にＬＵとしてＬＵ０，ＬＵ１が設定されている。各ＬＵＮ（論理ユニット番号）を「０」、「１」とする。また、ＲＡＩＤグループ１にＲＡＩＤ１が設定され、ＬＵ２が設定されている。また、ＲＡＩＤグループ２にＲＡＩＤ０が設定され、ＬＵ３が設定されている。右側に示すように、各ＬＵに対して適用する前記バックアップモードを選択する。上側は、各バックアップモード（モードＡ，モードＢ）に対応したアイコンを示す。例えば、ＬＵ０でモードＡがオン、ＬＵ１とＬＵ３でモードＢがオンに設定されている様子を示す。また、既定のバックアップモード以外を選択する場合は、バックアップ処理に関する別の詳細設定画面で設定する。例えば、バックアップデータ格納用に確保するバックアップ領域の容量などを設定する。なおＬＵ２のような、ＲＡＩＤ１等のミラーリング制御が設定されているデータに対しては、ミラーリングによりデータ信頼性が確保されるため、本バックアップ方式を合わせて使用する必要は特に無い。
【０１０４】
＜内部動作例＞
図１１は、前記設定例に対応した、ディスクアレイ装置１００での内部動作の例について示す。前記ＲＡＩＤ５に対応したＲＡＩＤグループ０上のＬＵ０とＬＵ１について、ＬＵ０でモードＡのバックアップ処理を行い、ＬＵ１でモードＢのバックアップ処理を行う。ＲＡＩＤグループ０を構成するＨＤＤ＃０〜＃４において、物理ＬＢＡ「００００００Ｈ」〜「７ＦＦＦＦＦＨ」（１６進数）に対応した記憶領域を、モードＡに対応した領域Ａ（Ｒ１〜Ｒ１６）、ＬＢＡ「８０００００Ｈ」〜「ＦＦＦＦＦＦＨ」に対応した記憶領域を、モードＢに対応した領域Ｂ（Ｒ１７〜Ｒ３２）とする。なおあくまで一例のため記憶領域における分割数は少なく示している。
【０１０５】
効率的なバックアップ処理のために、全体の記憶領域を前記分割領域ｒを単位で扱う。図１１中、各ＨＤＤ３０で例えばＬＢＡ「００００００Ｈ」から「０７ＦＦＦＦＨ」までの領域が１つの分割領域ｒである。また複数のＨＤＤ３０に跨る複数の分割領域ｒから１つの領域（Ｒとする）単位が構成される。例えばＨＤＤ＃０〜＃４の同ＬＢＡに対応した分割領域ｒから１つの領域Ｒが構成される。ＨＤＤ＃０〜＃４の記憶領域において領域Ｒ１〜Ｒ３２が構成される。領域Ｒ１〜Ｒ１６からなる領域Ａ及びＲ１７〜Ｒ３２からなる領域Ｂは、それぞれ１つのＬＵ（ＬＵ０，ＬＵ１）に対応する。またＬＢＡ変換により前記領域管理テーブルの管理変数で分割領域ｒと本来のデータ格納先のＬＢＡとの対応付けを管理し、全体の記憶領域において連続的な空き領域を作成して利用する。例えば、ＨＤＤ＃０におけるＬＢＡ「００００００Ｈ」に対応した先頭の分割領域ｒが、前記図３に示すアドレス管理変数ｒ（０）及び領域種別管理変数で管理される。コントローラ１０は、バックアップモードに対応して、例えばモードＡなら、領域Ａで、先頭領域Ｒ１から最終領域Ｒ１６へ向かって順にユーザデータ等の第１のデータが格納され、最終領域Ｒ１６から先頭領域Ｒ１へ向かって順に対応するバックアップデータが格納されるように、データ格納位置のＬＢＡ変換を行う。コントローラ１０は、ＬＵ０，ＬＵ１について、ＬＵ内の領域をＨＤＤ３０側の分割領域ｒに対応して分割して、データＲＥＡＤ／ＷＲＩＴＥ処理を行う。ＬＵ０とＬＵ１の場合、ＲＡＩＤ５におけるストライピングサイズと各分割領域ｒのサイズが対応する。
【０１０６】
まず、図１１の上側で、ＬＵ０についてのデータライト処理を示す。以下（１）〜（５）の手順で処理を行う。モードＡで、領域Ａで、最終位置から順にバックアップ領域として割り当てする。先頭領域Ｒ１は、ＬＵ０のデータが格納されるデータ領域となる。領域Ａにおける最終領域Ｒ１６は、そのバックアップデータが格納されるバックアップ領域となる。領域Ｒ２は、領域Ｒ１の次のデータ領域となる。領域Ｒ１５は、領域１６の次のバックアップ領域となる。
【０１０７】
（１）：例えば、情報処理装置３００から、論理アドレス指定で、ＬＵ０の「１００３１２３４Ｈ」に対するライト要求が発行される。コントローラ１０で論理アドレスから物理アドレスが求められる。前記論理アドレスは、物理アドレスで、ＨＤＤ＃３のＬＢＡ「４０１２３４Ｈ」に対するライト要求であり、すなわち、ベースアドレス「４０００００Ｈ」＋オフセット「１２３４Ｈ」である。
【０１０８】
（２）：コントローラ１０は、ＬＢＡ変換により、前記ベースアドレスのＬＢＡ「４０００００Ｈ」を前記領域管理テーブルの管理変数に記憶する。すなわち、領域Ｒ１をデータ領域として割り当てし、ＨＤＤ＃３の先頭の分割領域ｒに対応したアドレス管理変数に、ＬＢＡ値「４０００００Ｈ」を記憶する。そしてコントローラ１０は、データ領域となる領域Ｒ１で、同一ＨＤＤ（ＨＤＤ＃３）の同一オフセット位置（ＬＢＡ「００１２３４Ｈ」）にライトデータをライトする。
【０１０９】
（３）：コントローラ１０は、前記ＨＤＤ＃３に格納したデータについてのパリティデータＰを生成して、同様に、領域Ｒ１で、パリティ格納先のＨＤＤ３０の対応位置ここではＨＤＤ＃１のＬＢＡ「００１２３４Ｈ」にパリティデータＰをライトする。これにより、データ領域で、第１のデータとしてＬＵ０のデータがライトされた状態となる。
【０１１０】
（４）：コントローラ１０は、前記ＬＢＡ変換によりバックアップ領域となる最終領域Ｒ１６に対して、前記ベースアドレスのＬＢＡ「４０００００Ｈ」を記憶する。すなわち、領域Ｒ１６をバックアップ領域として割り当てし、ＨＤＤ＃２の最終の分割領域ｒに対応したアドレス管理変数に、ＬＢＡ値「４０００００Ｈ」を記憶する。そしてコントローラ１０は、領域Ｒ１６で、前記第１のデータの格納先であるＨＤＤ＃３に隣接した他ＨＤＤ３０ここではＨＤＤ＃２の同一オフセット位置（ＬＢＡ「７８１２３４Ｈ」）に、前記第１のデータのバックアップデータを記憶する。
【０１１１】
（５）：またコントローラ１０は、領域Ｒ１６で、前記パリティデータＰの格納先であるＨＤＤ＃１に対応して、同様に、隣接した他ＨＤＤ３０ここではＨＤＤ＃０の同一オフセット位置（ＬＢＡ「７８１２３４Ｈ」）にパリティデータＰのバックアップデータＰを記憶する。
【０１１２】
また、図１１の下側で、ＬＵ１についてのデータライト処理を示す。以下（１）〜（５）の手順で処理を行う。特に、ライト対象領域が２つの領域Ｒに跨る場合を示す。モードＢで、領域Ｂで、５０％の位置から順にバックアップ領域として割り当てする。領域Ｒ１７，Ｒ１８は、ＬＵ１のデータが格納されるデータ領域となる。５０％の位置にある領域Ｒ２５，Ｒ２６は、そのバックアップデータが格納されるバックアップ領域となる。領域Ｒ１９は、領域Ｒ１７，Ｒ１８の次のデータ領域となる。領域Ｒ２７は、領域２５，Ｒ２６の次のバックアップ領域となる。
【０１１３】
（１）：例えば、情報処理装置３００から、論理アドレス指定で、ＬＵ１の「７ＦＦＦＦＥＨ」に対するライト要求が発行される。本ライト要求ではライト対象領域が２つの領域Ｒ１９，Ｒ２０に跨る。ライト対象の分割領域ｒは、領域Ｒ１９におけるＨＤＤ＃４の分割領域ｒと、領域Ｒ２０におけるＨＤＤ＃０の分割領域ｒである。各分割領域ｒに対応した、領域Ｂにおけるベースアドレスは、それぞれ「１０００００Ｈ」、「１８００００Ｈ」として求められる。
【０１１４】
（２）：コントローラ１０は、ＬＢＡ変換により、ライト対象の前記２つの領域Ｒについて、領域Ｂのデータ領域となる先頭領域Ｒ１７，Ｒ１８に対し領域管理テーブルの管理変数で割り当てし（図１１中の「１０００００Ｈ」「１８００００Ｈ」）、それぞれの領域Ｒで第１のデータの格納先となる分割領域ｒの該当位置にデータをライトする。
【０１１５】
（３）：コントローラ１０は、前記２つの分割領域ｒに格納したデータについてのパリティデータＰ及びＰ’を生成して、領域Ｒ１７，Ｒ１８で、パリティ格納先のＨＤＤ３０ここではＨＤＤ＃２，＃１の対応位置にライトする。
【０１１６】
（４）：コントローラ１０は、前記ＬＢＡ変換により、領域Ｂで、バックアップ領域として、５０％の位置から割り当てし（図１１中の「１０００００Ｈ」「１８００００Ｈ」）、バックアップ領域となる領域Ｒ２５，Ｒ２６で、前記Ｒ１７，Ｒ１８に格納した各データのバックアップデータを、隣接した他ＨＤＤ３０ここではＨＤＤ＃３，＃４の対応位置へとライトする。
【０１１７】
（５）：同様に、コントローラ１０は、前記各パリティデータＰ及びＰ’のバックアップデータＰ及びＰ’を、隣接した他ＨＤＤ３０ここではＨＤＤ＃１，＃０の対応位置へとライトする。
【０１１８】
＜効果及びデータ信頼性＞
以上説明したように、本実施の形態では、バックアップ処理の実行によりデータ消失を回避できる。ディスクアレイ装置の運用において初期では一般にＨＤＤ故障率が高いが、ＨＤＤ空き容量には余裕が有るという面に着目して、本バックアップ方式を適用することで、特にＨＤＤ故障率の高い初期での冗長性・データ信頼性を確保できる。
【０１１９】
本バックアップ方式は、ＲＡＩＤ方式としてＲＡＩＤ３，４，５，０の各方式に適用可能である。ＲＡＩＤ０の場合でも、装置の記憶領域の使用容量が少ない場合にＲＡＩＤ０＋１と同等の信頼性を確保できる。また、前記領域管理を行うことで、第１のデータやバックアップデータの格納に使用している部分のみのデータコピーすれば良いため、データ復元時間なども小さくすることが可能である。ＲＡＩＤ３，４，５の場合でも、１台のディスクの障害ならパリティを再計算する必要なくデータ回復が可能である。また、２台のディスクが障害でもＥＣＣ（誤り訂正符号）との併用でデータ回復が可能である。従来ではＨＤＤの初期故障率が装置の冗長性を上回るＨＤＤ二重障害のような場合においても、本バックアップ方式の使用によりユーザデータが保護され、システムのロバスト性を向上させることができる。
【０１２０】
本実施の形態による効果（データ信頼性）に関して、装置故障率とデータ蓄積率とＲＡＩＤ方式の観点から述べる。図１２（ａ）は、一般的な故障率曲線と、ディスクアレイ装置でのデータ蓄積率（容量使用率）の関係について示すグラフである。図１２（ｂ）は、ＲＡＩＤ方式と装置稼動期間に応じたデータ信頼性を示す表である。
【０１２１】
まず、ディスクアレイ装置の利用にあたってユーザが使用する代表的な形態を、データ信頼性の観点から大きく分類すると以下のようになる。データ信頼性に関しては、ＲＡＩＤ０＋１やＲＡＩＤ１では大、ＲＡＩＤ４やＲＡＩＤ５では中、ＲＡＩＤ０では小となる。データ容量コスト（コストパフォーマンス）に関しては、ＲＡＩＤ０＋１やＲＡＩＤ１では大（小）、ＲＡＩＤ４やＲＡＩＤ５では中（中）、ＲＡＩＤ０では、小（大）となる。
【０１２２】
次に、ハードディスクの故障率を一定と仮定した場合、同一ＲＡＩＤクループ内に含まれるＨＤＤの数が多い程、不良ＨＤＤ及びデータロストの発生リスクが上がる。このようにデータ容量のコストパフォーマンスとデータの信頼性は一般的に常にトレードオフの関係にある。
【０１２３】
また装置故障率は、一般に図１２（ａ）に示すようなバスタブ曲線（故障率曲線）のような傾向を有しており、特定の期間で発生した故障は、一般的に、初期故障／偶発故障／磨耗故障の３つに分類され、以下のような特徴を有する。装置使用において、初期では初期故障、中期では偶発故障、終期では磨耗故障が、それぞれ発生する。初期では故障率が高く、中期では安定化し、終期で増加する。
【０１２４】
初期故障については、故障原因は部品のロット不良や設計ミス等であり、その発生確率は大きい。またその回避・対応策としては、装置側では所定手段により冗長性を確保することであり、製造側では長期検査を行うことである。前記冗長性の確保は、ディスクアレイ装置の場合、代表的なのがＲＡＩＤ０＋１，１，３，４，５といった各種ＲＡＩＤ方式によるデータ記憶の制御である。
【０１２５】
偶発故障については、故障原因は部品故障等の偶発的な要因であり、その発生確率は比較的小さい。またその回避・対応策としては、装置側では、前記冗長性を確保することであり、製造側では装置の点検・保守を行うことである。
【０１２６】
磨耗故障については、故障原因は磨耗・劣化等の寿命的な要因であり、その発生確率は増加的である。またその回避・対応策としては、装置側では、障害予測を行うことであり、製造側では装置の保守・交換を行うことである。前記障害予測により、装置でエラーが増加してきた場合に寿命を判断して交換が行われる。
【０１２７】
図１２（ａ）で、特にＨＤＤ３０の故障率も、故障率曲線に対応する。データ蓄積率は、ディスクアレイ装置１００でのＨＤＤ３０により提供される記憶領域へのデータの格納による蓄積率（容量使用率）に対応する。一般的にデータ蓄積率は時間の経過と共に増加する。
【０１２８】
図１２（ｂ）で、装置稼動初期のデータ消失リスクはＲＡＩＤ４，５の場合でも決して低いとは言えない。例えばＲＡＩＤグループで２台のＨＤＤが故障した場合はデータ消失が発生する。表で、ＲＡＩＤ４，５の場合、データ信頼性は、初期ではリスク（データ消失リスク）が比較的高めであり、中期ではリスクが小であり、終期ではリスクが比較的低めである。ＲＡＩＤ０＋１，１の場合は時期によらずリスクが小である。ＲＡＩＤ０の場合は初期ではリスクがかなり高めであり、中期ではリスクが中であり、終期ではリスクが比較的高めである。
【０１２９】
ディスクアレイ装置における初期故障の発生率は、ＨＤＤにおけるデータ蓄積率が５０％以下である時期に高いと言える。本発明の各実施の形態でのバックアップ方式により、データ蓄積率が全体の５０％程度以下の時点で故障率の高い初期の期間をカバー（対策）可能となる。従って、仮に信頼性の低いＲＡＩＤ０の方式をユーザが使用していたとしても、ディスク（ＨＤＤ３０）の空き領域に第１のデータのバックアップを保存していることでデータ回復が可能であり、その後の安定期（中期）への移行が容易である。装置運用の初期にデータ信頼性を確保できるメリットは大きい。
【０１３０】
（実施の形態２）
次に、本発明の実施の形態２のディスクアレイ装置について説明する。実施の形態２でのバックアップ方式では、複数のＨＤＤ３０が提供する全体の記憶領域において、ある記憶ボリューム例えばＬＵとペアになる他の記憶ボリューム例えばＬＵとで第１のデータとバックアップデータとを交差（クロス）するように格納する処理（以下、交差処理と称する）を行う。言い換えれば、前記ペアで、データ領域とバックアップ領域とを交差するように配置する処理を行う。前記ペアになる記憶ボリュームとして、互いに格納データの性質の異なるもの、特にサイズが異なるものでペアにする。ハードウェア構成等は実施の形態１と同様である。
【０１３１】
図１３は、実施の形態２でのバックアップ方式の概要について示す説明図である。例として、ＨＤＤ＃０〜＃９の１０台のＨＤＤ３０が提供する全体の記憶領域が有る。ＨＤＤ＃０〜＃４の記憶領域で、データ領域に一方の記憶ボリュームであるＬＵ０が設定されている。またＨＤＤ＃５〜＃９の記憶領域で、データ領域に他方の記憶ボリュームであるＬＵ１が設定されている。ＬＵ０は、情報処理装置３００のＯＳやアプリケーションを構成するデータ等のシステムデータを格納するための領域である。ＬＵ１は、情報処理装置３００からのユーザデータ等の一般データを格納するための領域である。
【０１３２】
コントローラ１０は、上記格納データの性質が異なるＬＵ０とＬＵ１を、前記ペアとなるＬＵとして設定する。そして、コントローラ１０は、ＬＵ０の格納データ例えばデータＡ〜Ｄ及びＰについて、そのバックアップデータを、ペアであるＬＵ１のＨＤＤグループの未使用領域に格納し、また、ＬＵ１の格納データ例えばデータＥ〜Ｈ及びＰ’について、そのバックアップデータを、ペアであるＬＵ０のＨＤＤグループの未使用領域に格納する。このように、コントローラ１０は、ペアとなる記憶ボリューム及びＨＤＤ３０において、第１のデータとそのバックアップデータを互いの記憶ボリューム及びＨＤＤ３０へと交差するような配置で格納する制御を行う。
【０１３３】
ＨＤＤ３０上に確保される記憶領域として、例えばＯＳ及びアプリケーション用のＬＵ０と汎用データ格納用のＬＵ１を比較すると、前記ＬＵ０では装置使用開始当初から使用される容量が大きいが、前記ＬＵ１ではデータ蓄積に従って徐々に使用されてゆく性質である。そのため、ＨＤＤ３０における全体の記憶領域における第１のデータでの使用率が５０％以上となっても、ペアとなるＬＵの第１のデータでの使用率が低ければ、バックアップデータの保持を維持することが可能である。
【０１３４】
図１４は、交差処理を行う場合の設定画面の例を示す。ディスクアレイ装置１００を利用・管理するためのプログラムを備えた管理装置等の装置上で本処理を行うための設定処理を行う。例えば、ディスクアレイ装置１００に対し管理サーバとして接続される情報処理装置３００上の管理プログラムで、ディスクアレイ装置１００との通信によりＷｅｂページ等のユーザインタフェースで設定画面を表示し、管理者により設定入力を行う。設定情報はディスクアレイ装置１００に送信されてメモリ上に保持され、コントローラ１０は設定に従って動作を行う。
【０１３５】
設定画面例において、ＲＡＩＤ５の方式に対応したＲＡＩＤグループ０、ＲＡＩＤグループ１が設定されている状態を示す。また、バックアップモードに関するアイコンの選択により、前記第１のバックアップモード（モードＡ）が選択されている。また、ＲＡＩＤグループ０上にＬＵ０が、ＲＡＩＤグループ１上にＬＵ１がそれぞれ設定されている。ＲＡＩＤグループ０について、設定ＬＵすなわち本バックアップ方式の処理を行う対象であり、第１のデータを格納するＬＵとして、ＬＵ０が設定されている。またバックアップＬＵすなわち前記設定ＬＵのデータについてのバックアップデータを格納するペアとなるＬＵとしてＬＵ１が設定されている。また同様に、ＲＡＩＤグループ１について、設定ＬＵとしてＬＵ１が、バックアップＬＵとしてＬＵ０が、それぞれ設定されている。このようにＬＵ０とＬＵ１をペアにする設定を行うことで前記第１のデータとバックアップデータとをペアのＬＵの空き領域へと交差して格納する処理が実現される。また、設定画面中に示すように、残量警告として、ＲＡＩＤグループに対応したＨＤＤ３０の記憶領域におけるデータ格納に使用可能な残量（％）などを表示して管理者やユーザに対し示すようにしてもよい。残量の把握は、例えば前記領域管理により行われる。前記領域管理テーブルを参照することで簡単な計算により残量などを求めることができる。残量警告表示により、管理者やユーザに対して、磁気テープ装置等の他のバックアップ手段を利用したデータのバックアップを薦めること等を伝える。
【０１３６】
図１５は、交差処理のための設定手順、特に前記バックアップＬＵの設定手順を示すフロー図である。
【０１３７】
コントローラ１０は、あるＬＵ例えば前記ＬＵ０について、交差対象となるＬＵは存在するかどうかを、ＨＤＤ３０の全体の記憶領域におけるデータ使用容量の把握や調査などに基づき判断する（Ｓ５０１）。前記判断で、交差対象となるＬＵが存在しない場合は（ＮＯ）、管理装置から、別のＲＡＩＤグループを作成・設定してその上に交差対象となるＬＵを割り当てる（Ｓ５０２）。
【０１３８】
次に、管理装置から、第１のデータを格納する設定ＬＵ自身のＬＵＮ（論理ユニット番号）と、そのペアとなるバックアップデータ格納対象となるバックアップＬＵのＬＵＮとを設定する（Ｓ５０３）。例えばそれぞれ「０」、「１」と設定される。また、管理装置から、ＨＤＤ３０における空き領域の残量がどの程度になったら前記残量警告を行うか、すなわち磁気テープ装置等へのバックアップ処理実行契機などについて設定する（Ｓ５０４）。すべてのＬＵについて設定を繰り返したら（Ｓ５０５）、設定を終了する。
【０１３９】
実施の形態２でのバックアップ方式では、前記ペアとなるＬＵの選択によって効率的にバックアップを保持することが可能である。
【０１４０】
＜ＨＤＤアクセスの負荷分散＞
ＲＡＩＤ４，５に対して実施の形態１や実施の形態２のバックアップ方式を適用した場合、特定のＨＤＤ３０に対してアクセスが集中することを避けることができる。ＨＤＤに対するアクセス集中のタイプとして、第１に、１台のＨＤＤを対象として、ストライプサイズ以下のデータとなる場合がある。また、第２に、２台以上のＨＤＤを対象として、隣接する２台以上のＨＤＤに跨るデータとなる場合がある。アクセス集中に対する負荷分散に関して、前記いずれのタイプでも、従来方式では特に対応できない。
【０１４１】
前記第１のタイプについて、例えばＲＡＩＤ４やＲＡＩＤ５に対応したＲＡＩＤグループを構成するＨＤＤ＃０〜＃４において、データＡ〜Ｅからなる第１のデータがデータ領域に格納されつつ、自動バックアップ処理で前記第１のデータのバックアップデータＢ〜Ｅ及びＡがバックアップ領域に格納されている状態とする。各データとバックアップデータは異なるＨＤＤ３０の対応位置に格納される。従って、例えばＨＤＤ＃２のデータＣに対してアクセスする際に、ＨＤＤ＃１のバックアップデータＣと交互にアクセスする等の方式（交互アクセス方式）によるＨＤＤアクセスの負荷分散により、特定のＨＤＤ＃２へのアクセス集中を避けて、ＨＤＤ３０のシーク（データ読み出し）の待ち時間を軽減することが可能となる。本負荷分散は、主にリードデータに対して有効である。
【０１４２】
前記第２のタイプについて、例えば前記ＨＤＤ＃０〜＃４のＲＡＩＤグループにおいて、同じデータ格納状態とする。例えば、隣接する２台のＨＤＤ＃２，＃３に跨るデータＣ，Ｄに対するデータアクセスを考えると、単純な前記交互アクセス方式により、データＣについて、ＨＤＤ＃１と＃２での負荷分散により待ち時間を軽減可能であるが、ＨＤＤ＃２に対してデータＣ（ユーザデータ）とデータＤ（バックアップデータ）の双方に対してアクセスがある分、全体（ＨＤＤ＃１〜＃３）での負荷分散効果が得られない。このタイプにおける負荷分散効果を高めるために、上記例での交互アクセスに関して、ＨＤＤ＃１（バックアップデータＣ）とＨＤＤ＃３（ユーザデータＤ）へのアクセス頻度をＨＤＤ＃２（ユーザデータＣとバックアップデータＤ）へのアクセス頻度よりも高めに設定することで、全体（ＨＤＤ＃１〜＃３）でのより効率的な負荷分散が実現される。
【０１４３】
上記のように、コントローラ１０から複数のＨＤＤ３０に対するデータアクセスにおいて、第１のデータとそのバックアップデータを対象として交互にアクセスする等の工夫を行うことで、前記アクセス集中のタイプに対応して負荷分散効果を得ることができる。実施の形態２での、ペアのＬＵで第１のデータとバックアップデータの配置を交差する方式では、ディスクにデータの重複部分が無いので、より効率的な負荷分散が可能である。交差無しの場合は、特に前記第１のタイプに対して大きな効果がある。交差有りの場合は、前記第１，第２のタイプのいずれに対しても大きな効果がある。
【０１４４】
（実施の形態３）
次に、本発明の実施の形態３のディスクアレイ装置について説明する。実施の形態３でのバックアップ方式では、複数のＨＤＤ３０が提供する全体の記憶領域において、重要度に応じた重要データを格納する領域（重要データ領域と称する）を設け、ＨＤＤ３０に格納される第１のデータをその重要度に応じて前記重要度に応じた領域に配置する。そして、前記第１のデータのうち特にその重要データ領域に格納されるデータについて自動的に実施の形態１等と同様のバックアップを行う。コントローラ１０は、例えば重要データ領域のみを対象にバックアップを行う。ハードウェア構成等は実施の形態１と同様である。
【０１４５】
データに対するランダムアクセスの単位がＬＢＡであるブロックアクセスが行われるメインフレーム系などのシステムに対し、パス／ファイル名を単位でアクセス（ファイルアクセス）が行われるＮＡＳ（Network Attached Storage）等のシステムでは、ディスクアレイ装置の記憶領域におけるデータの内部的な配置及びデータライト位置に対する自由度が大きい。このことから、以下のように、前記実施の形態１等でのバックアップ方式によるバックアップ処理を、恒久的に及び自動的にシステムの一部として運用することが可能である。実施の形態３では、その例について示す。
【０１４６】
図１６は、実施の形態３でのバックアップ方式の概要について示す説明図である。例としてＲＡＩＤ５に対応したＲＡＩＤグループを構成するＨＤＤ＃０〜＃４の５台のＨＤＤ３０からなる全体の記憶領域が有る。全体の記憶領域内において、データ領域とバックアップ領域を設ける。データ領域は、前記ユーザデータ等の第１のデータの格納用の領域である。バックアップ領域は、前記バックアップデータ格納用の領域である。本実施の形態では更にデータ領域内において、システム内部的に確保される重要データ領域を設け、当該領域に、第１のデータうちより重要であると判断されるデータを格納する。コントローラ１０側からのライトにより、データ領域中例えば先頭に一般データａ〜ｄ及びｐが格納される。空き領域は、第１のデータの格納についての未使用領域である。
【０１４７】
例として、ＮＡＳに対応した、かつＲＡＩＤ５方式の制御を行うディスクアレイ装置１００（ＮＡＳシステム）において、ＨＤＤ３０のシステム容量すなわち全記憶領域のうち一部例えば１０％を、本バックアップ方式を使用してバックアップデータを格納するためのバックアップ領域として確保しておく。この設定サイズは必要に応じて可変である。また、前記バックアップ領域に対応するデータ領域中の重要データ領域をシステム内部的に設定しておく。コントローラ１０は、重要データ領域に、データ領域への格納データのうちでより重要であると推測されるデータを配置する制御を行う。これにより、当該重要データの消失保護を行う。
【０１４８】
コントローラ１０は、ＨＤＤ３０の格納データのうち重要データを重要データ領域に配置し、重要データ領域の格納データを、バックアップ領域へ自動的にバックアップする。その後、重要データ領域の格納データを必要に応じて一般データ領域へ移動する。例えば、重要データ領域のデータＡ〜Ｄ及びＰからなるデータについて、バックアップ領域へ、格納先ＨＤＤをスライドしてバックアップデータＡ〜Ｄ及びＰを格納する。重要データ領域に配置されるのは、例えば以下のようなデータである。
【０１４９】
（１）：ライト後に一定期間の間リードされていないデータを重要データ領域に保持する。コントローラ１０は、ＨＤＤ３０の記憶領域に対するすべてのライトデータを、原則として一旦この重要データ領域に配置する。ただし、対象データのサイズが極端に小さい場合等は、対象データを直接にデータ領域における一般データ領域にライトする方がよい。すなわちデータ損失の重大性リスクが小さい。コントローラ１０は、重要データ領域にデータを一旦格納した後、次の契機で、格納データをデータ領域における一般データ用の領域へ移動する。第１に、重要データ領域にライト後、一定時間以上、上位からのアクセスが無い時に、当該データを移動する。第２に、重要データ領域にライト後、当該データのリードがなされる時に、移動する。前記第２の契機の場合、コントローラ１０は、一旦ライト後のリードと、磁気テープ装置等へのデータのバックアップが実施される場合等であると推定する。この場合、重要データ領域にライト後、当該データのリードの際に重要データ領域から当該データをリードした後、一般データ領域に移動すると共に、当該データで使用していたバックアップ領域を開放する。
【０１５０】
（２）：リード時のアクセス回数が多いデータを重要データ領域に保持する。コントローラ１０は、ＨＤＤ３０の記憶領域に対するライトデータで、リードアクセス回数や頻度等が多いデータを重要データ領域に配置する。この場合の配置に関する判定基準は、指定アクセス回数以上、指定アクセス頻度以上、またそれらの上位からの順位等である。このような性質のデータやファイルとして、例えばデータベースファイル（テーブル）や、Ｗｅｂページを構成するＷｅｂファイル等がある。また、この処理の対象データについて、以下のような規則を適用した方がよい。適用規則として、前記アクセス回数の判断において、同一データやファイルを更新した場合でもカウント数が一定期間引き継がれるようにする。また、その後、一定期間以上アクセスが無い場合は、カウント数をクリアして一般データ領域へ移動するようにする。
【０１５１】
本実施の形態３でのバックアップ方式により、重要データ領域のデータについてはＨＤＤ３０が２台まで障害となっても（ＲＡＩＤ５の場合）、データ消失しないのみならず、ボリューム方式（後述のバックアップ手段）でバックアップされたデータからのリストアに対しても、重要データ領域に対しては継続してリードアクセスが可能、すなわちリストア中でもバックアップ領域をリードアクセス可能で、かつ最新のデータを自動的に復元できるメリットがある。
【０１５２】
図１７は、実施の形態３でのバックアップ方式に対応した処理フローを示す。管理装置などからバックアップ領域の容量を設定する（Ｓ６０１）。管理者は、バックアップ領域を例えば全体の１０％に設定する。設定済み状況において、情報処理装置３００からディスクアレイ装置１００に対してデータライトが発生する（Ｓ６０２）。例えば、第１のデータとしてデータＢをライトするためのコマンド及びライトデータが発行され、コントローラ１０で、受領コマンド及びライトデータに応じて、データＢがデータ領域の重要データ領域にライトされる。
【０１５３】
データコントローラ１４は、重要データ領域のデータ（データＢ）を、バックアップ領域にバックアップする（Ｓ６０３）。すなわち他ＨＤＤ３０のバックアップ領域にバックアップデータ（データＢ）が格納される。データコントローラ１４は、各データについてのバックアップ時間Ａを計算により認識する（Ｓ６０４）。データコントローラ１４は、データ（データＢ）についてのバックアップ時間Ａが一定時間を超えるかを判断する（Ｓ６０５）。前記判断で、超える場合は（ＹＥＳ）、Ｓ６０８へ移る。前記判断で、超えない場合（ＮＯ）は、続いて、情報処理装置３００からの前記バックアップデータ（データＢ）に対するリード（リード要求）が有るかを判断する（Ｓ６０６）。前記判断で、リードが無い場合（ＮＯ）、ステップＳ６１６へ移る。前記判断で、リードが有る場合（ＹＥＳ）は、続いて、データ（データＢ）についてのリード数Ｃが指定数を超えるかを判断する（Ｓ６０７）。データコントローラ１４では、データリードに伴いそのリード数Ｃをカウントしている。前記判断で、指定数を超える場合（ＹＥＳ）、Ｓ６１２へ移る。前記判断で、指定数を超えない場合（ＮＯ）、続いて、データコントローラ１４は、データ領域の一般データ領域に、重要データ領域のデータ（データＢ）を移動する（Ｓ６０８）。それと共に当該データで使用していたバックアップ領域を開放する。そして、リード要求に対応して、情報処理装置３００からデータ領域のデータＢがリードされる（Ｓ６０９）。データコントローラ１４は、リードに伴いデータ（データＢ）についてのリード数Ｃをカウントアップする（Ｓ６１０）。データコントローラ１４は、リード数Ｃのカウントアップしたデータの時間Ｄを計算する（Ｓ６１１）。そして、前記時間Ｄが一定時間を超えるかを判断する（Ｓ６１２）。前記判断で、一定時間を超える場合（ＹＥＳ）、データコントローラ１４は、リード数Ｃ及び時間Ｄのカウンタをリセットする（Ｓ６１３）。続いて、リード数Ｃが指定数を超えるかを判断し（Ｓ６１４）、指定数を超える場合（ＹＥＳ）、データコントローラ１４は、重要データ領域にデータを移動し、それに伴い、バックアップ領域にデータ（データＢ）をバックアップする（Ｓ６１５）。
【０１５４】
その後、処理終了かどうか判断して（Ｓ６１６）、情報処理装置３００からの要求が無い場合などには、終了する。処理終了でない場合すなわち情報処理装置３００からの要求が有る場合などには、要求がリード要求かどうかを判断し（Ｓ６１７）、ライト要求の場合（ＮＯ）、Ｓ６０２のデータライト処理に戻る。リード要求の場合（ＹＥＳ）、データ領域のデータが対象かを判断し（Ｓ６１８）、データ領域が対象の場合（ＹＥＳ）、Ｓ６０７へ戻る。データ領域のデータが対象でない場合（ＮＯ）、Ｓ６０６へ戻る。
【０１５５】
図１８（ａ）〜（ｄ）は、実施の形態３に対応して、ＨＤＤ二重障害すなわちＨＤＤ２台故障等が発生した場合のデータ回復手順及び内部処理の概念を示す。
【０１５６】
（ａ）は、ＨＤＤ二重障害が発生した状態を示す。例えばＨＤＤ＃０〜＃４の５台のＨＤＤ３０のＲＡＩＤグループにおける記憶領域で、データ領域の一般データ領域に、データａ〜ｄ及びｐからなる一般データが格納されており、重要データ領域に、データＡ〜Ｄ及びＰからなる重要データが格納されている。そして、バックアップ領域に、前記重要データのバックアップデータＡ〜Ｄ及びＰが格納されている。この状態から、例えばＨＤＤ＃２，＃３で障害が発生し、データの読み出しがエラーの状態とする。データ領域で、一般データ領域の一般データｃ，ｄがエラー、及び重要データ領域のデータＣ，Ｄがエラーであり、バックアップ領域でデータＤ，Ｐがエラーである。
【０１５７】
本状態で、一般データ領域のデータは、アクセス不可すなわちデータ損失となる。重要データ領域のデータは、重要データ領域のデータＡ，重要データ領域のデータＢ，バックアップ領域のデータＣ，重要データ領域のデータＰから計算したデータＤにより、アクセス可能となる。このフェイズでは、装置状態（データアクセス属性）は、一般データ領域では「アクセス不可」であり、重要データ領域では「リードオンリー」である。
【０１５８】
（ｂ）は、障害ＨＤＤを交換後、重要データ領域のデータを復元する状態を示す。復元処理は、オペレータ介入による処理またはシステム内部の自動処理である。前記障害状態のＨＤＤ＃２，＃３が管理者により別のＨＤＤ３０に交換される。交換後ＨＤＤ＃２，＃３で、重要データ領域に、データＣ，Ｄが復元される。またバックアップ領域に、データＤ，Ｐが復元される。
【０１５９】
本状態で、一般データ領域のデータは、復元不能であるので、初期化すなわちデータクリア及びパリティ整合処理などする。重要データ領域のデータは、重要データ領域のデータＡ，重要データ領域のデータＢ，バックアップ領域のデータＣ，重要データ領域のデータＰからのデータＤの計算により、欠損データが復元される。このフェイズでは、装置状態は前記（ａ）と同様である。
【０１６０】
（ｃ）は、以前のバックアップデータから該当ボリュームを旧データに復元する状態を示す。復元処理は、例えば情報処理装置３００からのコマンド実行による。ＨＤＤ３０の格納データに関する他のバックアップ手段により、以前のバックアップデータすなわち旧データが記録されているものとする。バックアップ手段としては磁気テープ装置へのバックアップ処理などがある。従来、ディスクアレイ装置にネットワーク等を介して接続される磁気テープ装置に対してＨＤＤ３０のデータをバックアップする処理が行われている。
【０１６１】
本状態で、ディスクアレイ装置１００は、例えば磁気テープ装置等のバックアップ装置に記録されているバックアップデータをもとに、前記障害に対応した記憶ボリュームの旧データを復元する。例として、一般データ領域に、データａ’〜ｄ’及びｐ’からなるデータが格納される。重要データ領域に、データＡ’〜Ｄ’及びＰ’からなるデータが格納される。バックアップ領域に、データＡ〜Ｄ及びＰからなるデータが格納されている。バックアップ装置に、データ領域のバックアップデータ（旧データ）例えば前記データａ〜ｄ及びｐ等が格納されている。情報処理装置３００からのコマンドの実行により、バックアップ装置から前記旧データをＨＤＤ３０のデータ領域上にコピーして復元する。これにより、一般データ領域及び重要データ領域のデータが、旧データにより上書きされる。ただし、この際、重要データ領域のデータについては、バックアップ領域に対するデータ応答によりアクセス可能である。このフェイズでは、装置状態は「復元処理中」であり、一般データ領域では「アクセス不可」であり、重要データ領域では「リードオンリー」である。
【０１６２】
（ｄ）は、重要データ領域のデータをバックアップ領域の最新データで復元する状態を示す。復元は、オペレータ介入が必要である。コントローラ１０は、バックアップ領域の最新のバックアップデータＡ〜Ｄ及びＰを、重要データ領域へ上書きする。なおバックアップの際と対応した位置取りでライトする。これにより、重要データ領域のデータを最新のデータへと復元する。一般データ領域のデータは旧データである。また、逆に、重要データ領域に格納されている旧データをバックアップ領域に上書きすることでバックアップ領域の最新のバックアップデータを旧データに戻すことも可能である。このフェイズでは、装置状態は、一般データ領域及び重要データ領域で「リード／ライト可能」である。
【０１６３】
図１９は、図１８に対応して、ＲＡＩＤグループで２台のＨＤＤ３０例えばＨＤＤ＃２，＃３で障害が発生した場合の処理手順を示すフロー図である。ディスクアレイ装置１００で、ＨＤＤ＃２，＃３が故障する（Ｓ７０１）。管理者は、ＨＤＤ＃２，＃３を別のＨＤＤ３０に交換する（Ｓ７０２）。データコントローラ１４は、ＨＤＤ＃１からバックアップ領域のバックアップデータであるデータＣを交換後ＨＤＤ＃２の重要データ領域にコピーする（Ｓ７０３）。また、データコントローラ１４は、ＨＤＤ＃４から重要データ領域のパリティデータであるデータＰを交換後ＨＤＤ＃３のバックアップ領域にコピーする（Ｓ７０４）。
【０１６４】
データコントローラ１４は、ＨＤＤ＃０，＃１からのデータＡ，Ｂと、前記ＨＤＤ＃１からのデータＣと、前記ＨＤＤ＃４からのデータＰとから、データＤを計算する（Ｓ７０５）。データコントローラ１４は、前記計算で求めたデータＤを、交換後ＨＤＤ＃２のバックアップ領域及びＨＤＤ＃３のデータ領域にそれぞれコピーする（Ｓ７０６）。データコントローラ１４は、前記バックアップ装置からデータ領域についての旧データをリードして旧データによりデータ領域を上書きする（Ｓ７０７）。そして、コントローラ１０は、重要データのみ最新データを使用するかどうかを判断する（Ｓ７０８）。最新データを使用する場合は（ＹＥＳ）、データコントローラ１４は、バックアップ領域のデータで重要データ領域のデータを上書きし（Ｓ７１０）、最新データを使用しない場合は（ＮＯ）、データコントローラ１４は、重要データ領域のデータでバックアップ領域のデータを上書きして（Ｓ７０９）、終了する。
【０１６５】
（実施の形態４）
次に、本発明の実施の形態４のディスクアレイ装置について説明する。実施の形態４でのバックアップ方式では、実施の形態３の方式を踏まえて更に、上位の情報処理装置３００等からディスクアレイ装置１００に対してＨＤＤ３０に対する格納データの属性を指定することで、指定属性のデータについて前記バックアップ処理を含む各種処理を自動的に行わせる。
【０１６６】
実施の形態４のディスクアレイ装置１００は、ホストコンピュータ等の情報処理装置３００からパス／ファイル名を指定でアクセスされるＮＡＳ等に対応したネットワークストレージ装置（ＮＡＳ装置）である。ディスクアレイ装置１００側でフォルダ名やファイル拡張子等の属性を登録することにより、指定属性のファイルに対する自動圧縮等の様々な処理を自動的に行い、ストレージ容量を効率的に使用及びデータ信頼性を高めた形態である。このような形態の装置であれば、属性テーブルの利用により、前記実施の形態３の例よりも、さらなる積極的な重要データの明確な指定が可能である。
【０１６７】
図２０は、実施の形態４のディスクアレイ装置１００（ＮＡＳ装置）の機能ブロック構成を示す。全体のコンピュータシステムは、ＮＡＳに対応したＳＡＮやＬＡＮ等のネットワークに、ホストとなる情報処理装置３００と、ディスクアレイ装置１００（ＮＡＳ装置）が接続される構成である。ディスクアレイ装置１００は、前記ネットワークに対してＦＣやＥｔｈｅｒｎｅｔ（登録商標）に対応したインタフェースで接続される。情報処理装置３００からディスクアレイ装置１００に対してネットワークを介してＮＡＳに対応したファイルアクセスが行われる。前記ファイルアクセスではパス／ファイル名の指定が含まれる。
【０１６８】
ディスクアレイ装置１００のハードウェア構成は、ＮＡＳに対応した構成である。コントローラ１０で、ＮＡＳとしてのサービスの提供と、本バックアップ方式での処理とを実現するためのソフトウェア的な処理を行う。ＮＡＳとしての構成及び機能自体は従来技術である。
【０１６９】
コントローラ１０は、前記属性の登録処理と、情報処理装置３００等からのデータアクセスに対応してその対象データの属性を判断して、属性に対応した自動処理を行う。コントローラ１０は、属性登録のための情報である属性テーブル８０をメモリ上に保持する。
【０１７０】
属性テーブル８０は、属性登録情報として、重要データ指定情報８１を含む。また、圧縮／伸張指定情報８２、世代管理データ指定情報８３、ウィルスチェック指定情報８４など、各種処理のための指定情報を含む。属性テーブル８０は、装置通常動作時にコントローラ１０内のメモリ上に保持される。また、属性テーブル８０は、例えば、所定契機でＨＤＤ３０側のシステム領域にセーブ／バックアップされ、また所定契機でＨＤＤ３０側のシステム領域からメモリ上にロードされる。
【０１７１】
属性テーブル８０には、処理対象となるファイルやデータの属性が記述される。記述される属性の例としては、フォルダ名／ファイルあるいはその一部例えば“ＣＭＰ＊”のファイルはすべて等の指定、ファイル拡張子、作成ユーザ（ユーザ／ホスト識別情報、ＩＰアドレス等）、リードオンリー等のパーミッション情報、アクセス頻度やアクセス回数（前記実施の形態３に対応）などが有る。
【０１７２】
ＨＤＤ３０の記憶領域に、前記データ領域、バックアップ領域を有する。データ領域中に重要データ領域を有する。また、世代管理用に旧データ退避領域を有する。
【０１７３】
重要データ指定情報８１は、前記実施の形態３で示した重要データのバックアップ処理に対応して、ＨＤＤ３０のデータ領域中の重要データ領域に格納する対象となる重要データを指定するための設定である。本指定に該当するファイルやデータは、コントローラ１０により重要データ領域に対して格納・配置され、重要データ領域からバックアップ領域に対して所定契機で自動的にデータがバックアップされる制御が行われる。
【０１７４】
圧縮／伸張指定情報８２は、ＨＤＤ３０への格納対象データを、自動的に圧縮／伸張する処理のための設定である。本指定に該当するファイルやデータは、ディスクライトの際に、ディスクアレイ装置１００内に有する自動圧縮／伸張手段例えばコントローラ１０内に持つ圧縮／伸張プログラムや圧縮／伸張回路等により、自動的に圧縮されてＨＤＤ３０の記憶領域に書き込まれる。またディスクリードの際は、ＨＤＤ３０の記憶領域からのリードデータが、前記圧縮／伸張手段により自動的に伸張されて上位に渡される。
【０１７５】
世代管理データ指定情報８３は、データについて世代や版により管理する世代管理処理（従来技術）を指定するための設定である。本指定に該当するファイルやデータは、コントローラ１０により、データ領域でデータが旧データ退避領域に退避されて各世代のデータが保存される制御が行われる。ウィルスチェック指定情報８４は、コントローラ１０で行う自動ウィルスチェック処理を指定するための設定である。
【０１７６】
上記各種処理は組み合わせて使用可能である。例えば、全データについて自動ウィルスチェック処理を施しつつ、重要データ指定情報８１と圧縮／伸張指定情報８２での指定により、重要データとしてのバックアップ処理と自動圧縮／伸張処理を施すことができる。
【０１７７】
図２１は、実施の形態４における、重要データ選択画面の例を示す。ディスクアレイ装置１００に接続される管理装置などで前記処理の設定のための管理プログラムを動作させて、ユーザや管理者等による設定を行う。本設定のためのハードウェア及びソフトウェア構成は、前記実施の形態に示した構成と同様である。管理者等の設定者は、重要データ指定情報８１の設定に関し、管理装置上で、左側に示すテーブル選択画面を表示する。テーブル選択画面で、属性テーブル名称とその設定状況の一覧が表示される。例えば、属性テーブル名称「ＴＢＬ０３」に対応して処理名称「バックアップ０１」の処理特に内部自動処理が設定されている。設定者は、一覧から設定対象の属性テーブルを選択して詳細ボタンを押すと、テーブル設定画面が表示される。設定者は、テーブル設定画面で、対象となる重要データの属性を設定入力する。例えば、「バックアップ０１」の処理対象となるファイルの設定において、設定項目として、フォルダ名、ファイル名、拡張子、作成ユーザ、アクセス回数／期間、リードオンリー設定などが有り、設定者は項目を選択して設定を行う。設定例として、ファイル名“ＣＭＰ＊”の指定と、当該ファイルに対する自動圧縮／伸張処理のオンが設定されている。この設定によりファイル名“ＣＭＰ＊”（「＊」は任意値を表わす）となるファイルが重要データとして指定され、ディスクアレイ装置１００での自動バックアップ処理と圧縮／伸張処理の対象となる。前記アクセス回数／期間の設定は、この設定回数や期間に該当するデータが処理対象となる。また前記リードオンリーの設定は、データアクセスのパーミッションがリードオンリーの場合に自動で処理対象となる。リスト表示ボタンを選択すると、その属性テーブルの設定で該当するファイルやデータについての情報の一覧が表示される。設定者は、画面で設定入力を行ってから追加ボタンを押して登録を行う。
【０１７８】
図２２は、重要データ指定情報８１についての設定手順の例を示す。管理者は、管理装置上で、管理プログラムの処理により前記テーブル選択画面を表示する（Ｓ８０１）。管理者は、テーブル選択画面で、重要データ指定のための属性テーブルの名称を入力して属性テーブルを作成する（Ｓ８０２）。そして、作成した属性テーブルの詳細ボタンを選択し、テーブル設定画面を表示する（Ｓ８０３）。例えば属性テーブル「ＴＢＬ０３」を「バックアップ０１」の処理に対応して作成する。管理者は、テーブル設定画面で、処理対象としたい重要データの属性を選択・入力する（Ｓ８０４）。例えばファイル名の項目を選択してファイル名を入力する。そして、管理者は、当該指定の属性のデータについて他に適用する処理を選択する。例えば自動圧縮／伸張処理の項目をオンにする（Ｓ８０５）。管理者は必要な設定を入力したら追加ボタンを実行する（Ｓ８０６）。これにより、当該属性テーブル８０の設定が有効になる。コントローラ１０は、設定された属性テーブル８０の設定情報をメモリ上に格納して保持する（Ｓ８０７）。
【０１７９】
前記重要データ指定に限らず、本バックアップ方式に係わる各種の設定を管理装置等における設定処理を通じて行う。各種処理についての設定に対応した属性テーブル８０を作成してコントローラ１０で保持する。コントローラ１０は、ＨＤＤ３０に対するデータアクセスの際に属性テーブル８０を参照し、アクセス対象データが指定処理対象かどうかを判断して、指定属性に該当するデータの場合は当該データに対して自動バックアップ処理等の指定処理を実行する。
【０１８０】
実施の形態４では、ユーザすなわち情報処理装置３００側が指定した特定のデータを重要データとして、前記自動バックアップ処理等を含む各種処理をディスクアレイ装置１００側で行わせることができ、データ信頼性の確保に関して更に自由度が高い。
【０１８１】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
【産業上の利用可能性】
【０１８２】
本発明は、記憶装置のグループに対してデータを記憶するコンピュータシステムに利用可能である。
【図面の簡単な説明】
【０１８３】
【図１】（ａ），（ｂ）は、本発明の実施の形態１のディスクアレイ装置のハードウェア構成においてその外観構成を示す図である。
【図２】本発明の実施の形態１のディスクアレイ装置におけるバックアップ方式に係わるシステム構成を示す機能ブロック図である。
【図３】本発明の実施の形態１のディスクアレイ装置におけるバックアップ方式で、コントローラが領域管理のために保持する情報である配列変数（領域管理テーブル）を示す図である。
【図４】本発明の実施の形態１のディスクアレイ装置におけるバックアップ方式で、第１のバックアップモードと第２のバックアップモードについて示す説明図である。
【図５】本発明の実施の形態１のディスクアレイ装置で、ＨＤＤに対するデータライト時の処理を示すフロー図である。
【図６】本発明の実施の形態１のディスクアレイ装置で、ＨＤＤに対するデータリード時の処理、特に、ＨＤＤに障害が無い通常時の処理を示すフロー図である。
【図７】本発明の実施の形態１のディスクアレイ装置で、ＨＤＤに対するデータリード時の処理、特に、ＨＤＤに障害が有る時の処理を示すフロー図である。
【図８】（ａ）〜（ｃ）は、本発明の実施の形態１のディスクアレイ装置で、ＨＤＤ障害時にデータ回復を行う場合の処理モデルを示す説明図である。
【図９】本発明の実施の形態１のディスクアレイ装置で、図８（ｃ）に対応して、障害状態からデータ回復を行う場合の処理を示すフロー図である。
【図１０】本発明の実施の形態１のディスクアレイ装置でのバックアップ方式に関する設定画面例及び設定例を示す図である。
【図１１】本発明の実施の形態１のディスクアレイ装置で、図１０に示す設定例に対応した内部動作の例について示す説明図である。
【図１２】（ａ）は、一般的な故障率曲線と、ディスクアレイ装置でのデータ蓄積率（容量使用率）の関係について示すグラフであり、（ｂ）は、ＲＡＩＤ方式と装置稼動期間に応じたデータ信頼性を示す表である。
【図１３】本発明の実施の形態２におけるディスクアレイ装置でのバックアップ方式の概要について示す説明図である。
【図１４】本発明の実施の形態２のディスクアレイ装置で、あるＬＵと他ＬＵとでデータ領域とバックアップ領域を交差する処理を行う場合の設定画面の例を示す図である。
【図１５】本発明の実施の形態２のディスクアレイ装置で、ペアのＬＵで領域を交差する処理のための設定手順、特にバックアップＬＵの設定手順を示すフロー図である。
【図１６】本発明の実施の形態３におけるディスクアレイ装置でのバックアップ方式の概要について示す説明図である。
【図１７】本発明の実施の形態３のディスクアレイ装置でのバックアップ方式に対応した処理を示すフロー図である。
【図１８】（ａ）〜（ｄ）は、本発明の実施の形態３のディスクアレイ装置で、ＨＤＤ二重障害が発生した場合のデータ回復手順及び内部処理の概念を示す説明図である。
【図１９】本発明の実施の形態３のディスクアレイ装置で、図１８に対応して、ＲＡＩＤグループで２台のＨＤＤで障害が発生した場合の処理手順を示すフロー図である。
【図２０】本発明の実施の形態４におけるディスクアレイ装置の機能ブロック構成を示す図である。
【図２１】本発明の実施の形態４におけるディスクアレイ装置で、重要データ選択画面の例を示す図である。
【図２２】本発明の実施の形態４におけるディスクアレイ装置で、重要データ指定情報についての設定手順の例を示す図である。
【符号の説明】
【０１８４】
１０…コントローラ、１１…ＣＰＵ、１２…メモリ、１３…チャネル制御部、１４…データコントローラ、１５…キャッシュメモリ、１６…ディスク制御部、３０…ＨＤＤ、５６…電源コントローラボード、５９…コントローラボード、８０…属性テーブル、８１…重要データ指定情報、８２…圧縮／伸張指定情報、８３…世代管理データ指定情報、８４…ウィルスチェック指定情報、９１，９２…通信ケーブル、１００…ディスクアレイ装置、１１１…ラックフレーム、１１２…マウントフレーム、１２０…基本筐体、１３０…増設筐体、３００…情報処理装置。
【図１】
2006113648.tif 000003
【図２】
2006113648.tif 000004
【図３】
2006113648.tif 000005
【図４】
2006113648.tif 000006
【図５】
2006113648.tif 000007
【図６】
2006113648.tif 000008
【図７】
2006113648.tif 000009
【図８】
2006113648.tif 000010
【図９】
2006113648.tif 000011
【図１０】
2006113648.tif 000012
【図１１】
2006113648.tif 000013
【図１２】
2006113648.tif 000014
【図１３】
2006113648.tif 000015
【図１４】
2006113648.tif 000016
【図１５】
2006113648.tif 000017
【図１６】
2006113648.tif 000018
【図１７】
2006113648.tif 000019
【図１８】
2006113648.tif 000020
【図１９】
2006113648.tif 000021
【図２０】
2006113648.tif 000022
【図２１】
2006113648.tif 000023
【図２２】
2006113648.tif 000024