Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
RAID DEVICE, AND ITS CONTROL DEVICE AND CONTROL METHOD
Document Type and Number:
WIPO Patent Application WO/2009/157086
Kind Code:
A1
Abstract:
A RAID device comprises a priority table (24) for setting priority for each of a plurality of logical volumes, a detection section (20) for detecting an abnormality occurrence storage device, a judgment section (22) for, when the detection section (20) detects the abnormality occurrence storage device, judging whether or not a restoration processing is executed on the basis of the priority of each of the logical volumes set to the priority table (24), and an execution section (23) for, when the judgment section (22) judges that the restoration processing is executed, executing the restoration processing. Thereby, the redundancy of highly important data in the RAID device is preferentially ensured to improve the safety and reliability of the RAID device.

Inventors:
DAIKOKUYA HIDEJIROU (JP)
ITO MIKIO (JP)
IKEUCHI KAZUHIKO (JP)
MAEDA CHIKASHI (JP)
Application Number:
PCT/JP2008/061734
Publication Date:
December 30, 2009
Filing Date:
June 27, 2008
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
FUJITSU LTD (JP)
DAIKOKUYA HIDEJIROU (JP)
ITO MIKIO (JP)
IKEUCHI KAZUHIKO (JP)
MAEDA CHIKASHI (JP)
International Classes:
G06F3/06
Foreign References:
JPH09269871A1997-10-14
JP2001147785A2001-05-29
JPH1124850A1999-01-29
JP2006201915A2006-08-03
JP2007241837A2007-09-20
JP2001175423A2001-06-29
Attorney, Agent or Firm:
SANADA, Tamotsu et al. (JP)
Sanada 有 (JP)
Download PDF:
Claims:
 上位装置からアクセスされる複数の論理ボリュームを構成する複数の記憶装置をそなえたRAID(Redundant Array of Inexpensive Disks)装置であって、
 前記複数の記憶装置のうちの異常が発生した異常発生記憶装置に格納されていたデータを復元可能な予備記憶装置と、
 該異常発生記憶装置に格納されていたデータを該予備記憶装置に復元する処理である復元処理を制御する制御部とをそなえ、
 該制御部は、
 前記複数の論理ボリューム毎に優先度を設定する優先度テーブルと、
 該異常発生記憶装置を検出する検出部と、
 該検出部で該異常発生記憶装置を検出すると、該優先度テーブルに設定された前記複数の論理ボリューム毎の優先度に基づいて、該復元処理を実行するか否かを判断する判断部と、
 該判断部で該復元処理を実行すると判断されると、該復元処理を実行する実行部とをそなえることを特徴とする、RAID装置。
 該判断部は、該予備記憶装置が使用中である場合に、該異常発生記憶装置を含む異常発生論理ボリュームに設定されている優先度である第1の優先度と該予備記憶装置を含む使用中論理ボリュームに設定されている優先度である第2の優先度とを比較して、該復元処理を実行するか否かを判断することを特徴とする、請求項1に記載のRAID装置。
 該実行部は、該予備記憶装置が使用中である場合に、該判断部で該復元処理を実行すると判断されると、該予備記憶装置を該使用中論理ボリュームから切り離して該復元処理を実行することを特徴とする、請求項2に記載のRAID装置。
 該予備記憶装置を複数そなえ、
 該制御部は、
 前記複数の予備記憶装置の全てが使用中である場合に、前記複数の予備記憶装置の中から特定予備記憶装置を特定する特定部をそなえ、
 該判断部が、該異常発生記憶装置を含む異常発生論理ボリュームに設定されている優先度である第1の優先度と該特定部で特定された該特定予備記憶装置を含む使用中論理ボリュームに設定されている優先度である第2の優先度とを比較して、該特定予備記憶装置に対して該復元処理を実行するか否かを判断することを特徴とする、請求項1に記載のRAID装置。
 該実行部は、前記複数の予備記憶装置の全てが使用中である場合に、該判断部で該特定予備記憶装置に対して該復元処理を実行すると判断されると、該特定予備記憶装置を該使用中論理ボリュームから切り離して、該特定予備記憶装置に対して該復元処理を実行することを特徴とする、請求項4に記載のRAID装置。
 該特定部は、前記複数の予備記憶装置の中から、最も優先度の低い論理ボリュームに含まれる予備記憶装置を該特定予備記憶装置として特定することを特徴とする、請求項4または請求項5に記載のRAID装置。
 該制御部は、
 冗長性に関する状態情報を前記複数の論理ボリューム毎に記憶する状態テーブルをそなえ、
 該特定部は、該優先度テーブルと該状態テーブルとに基づいて、前記複数の予備記憶装置の中から、冗長性があり且つ最も優先度の低い論理ボリュームに含まれる予備記憶装置を該特定予備記憶装置として特定することを特徴とする、請求項4または請求項5に記載のRAID装置。
 該判断部は、該第1の優先度が該優先度テーブルに設定された優先度の中で最も低い場合には、該復元処理を実行しないと判断することを特徴とする、請求項2~7のいずれか1項に記載のRAID装置。
 該優先度は、該論理ボリュームに含まれるデータの重要度に基づいて該優先度テーブルに設定されることを特徴とする、請求項1~8のいずれか1項に記載のRAID装置。
 該制御部は、
 該優先度に関する優先度情報を受信する受信部と、
 該受信部で受信した該優先度情報を該優先度テーブルに設定する設定部とをそなえることを特徴とする、請求項9に記載のRAID装置。
 上位装置からアクセスされる複数の論理ボリュームを構成する複数の記憶装置と、前記複数の記憶装置のうちの異常が発生した異常発生記憶装置に格納されていたデータを復元可能な予備記憶装置とをそなえたRAID(Redundant Array of Inexpensive Disks)装置に関し、該異常発生記憶装置に格納されていたデータを該予備記憶装置に復元する処理である復元処理を制御するためのRAID装置の制御装置であって、
 前記複数の論理ボリューム毎に優先度を設定する優先度テーブルと、
 該異常発生記憶装置を検出する検出部と、
 該検出部で該異常発生記憶装置を検出すると、該優先度テーブルに設定された前記複数の論理ボリューム毎の優先度に基づいて、該復元処理を実行するか否かを判断する判断部と、
 該判断部で該復元処理を実行すると判断されると、該復元処理を実行する実行部とをそなえることを特徴とする、RAID装置の制御装置。
 該判断部は、該予備記憶装置が使用中である場合に、該異常発生記憶装置を含む異常発生論理ボリュームに設定されている優先度である第1の優先度と該予備記憶装置を含む使用中論理ボリュームに設定されている優先度である第2の優先度とを比較して、該復元処理を実行するか否かを判断することを特徴とする、請求項11に記載のRAID装置の制御装置。
 該判断部は、該第1の優先度が該優先度テーブルに設定された優先度の中で最も低い場合には、該復元処理を実行しないと判断することを特徴とする、請求項12に記載のRAID装置の制御装置。
 該優先度は、該論理ボリュームに含まれるデータの重要度に基づいて該優先度テーブルに設定されることを特徴とする、請求項11~13のいずれか1項に記載のRAID装置の制御装置。
 該優先度に関する優先度情報を受信する受信部と、
 該受信部で受信した該優先度情報を該優先度テーブルに設定する設定部とをそなえることを特徴とする、請求項14に記載のRAID装置の制御装置。
 上位装置からアクセスされる複数の論理ボリュームを構成する複数の記憶装置と、前記複数の記憶装置のうちの異常が発生した異常発生記憶装置に格納されていたデータを復元可能な予備記憶装置とをそなえたRAID(Redundant Array of Inexpensive Disks)装置に関し、該異常発生記憶装置に格納されていたデータを該予備記憶装置に復元する処理である復元処理を制御するためのRAID装置の制御方法であって、
 該異常発生記憶装置を検出する検出ステップと、
 該検出ステップにおいて該異常発生記憶装置を検出すると、前記複数の論理ボリューム毎に優先度を設定する優先度テーブルに基づいて、該復元処理を実行するか否かを判断する判断ステップと、
 該判断ステップにおいて該復元処理を実行すると判断されると、該復元処理を実行する実行ステップとをそなえることを特徴とする、RAID装置の制御方法。
 該判断ステップにおいて、該予備記憶装置が使用中である場合に、該異常発生記憶装置を含む異常発生論理ボリュームに設定されている優先度である第1の優先度と該予備記憶装置を含む使用中論理ボリュームに設定されている優先度である第2の優先度とを比較して、該復元処理を実行するか否かを判断することを特徴とする、請求項16に記載のRAID装置の制御方法。
 該判断ステップにおいて、該第1の優先度が該優先度テーブルに設定された優先度の中で最も低い場合には、該復元処理を実行しないと判断することを特徴とする、請求項17に記載のRAID装置の制御方法。
 該優先度は、該論理ボリュームに含まれるデータの重要度に基づいて該優先度テーブルに設定されることを特徴とする、請求項16~18のいずれか1項に記載のRAID装置の制御方法。
Description:
RAID装置並びにその制御装置およ び制御方法

 本発明は、複数のディスク装置を組み合 せて管理するRAID(Redundant Array of Inexpensive  Disks)を制御する技術に関し、例えば、RAIDを 成するいずれかのディスク装置が故障した 合に、この故障したディスク装置のデータ 復元させる技術に関する。

 一般に、HDD(Hard Disk Drive)等のようなディス ク装置の故障によるデータ損失を防ぐととも に処理性能を向上するために、複数のディス ク装置を組み合わせて管理するRAID(Redundant Ar ray of Inexpensive Disks)装置が用いられている
 従来のRAID装置においては、信頼性を向上さ せるために、例えば、このRAID装置を構成す いずれかのディスク装置が故障した場合に 代替機器であるホットスペアディスク(Hot Sp are Disk)装置を、故障したディスク装置の代 りに割り当てて、故障したディスク装置の ータを復元させる復元処理を行なわせる手 が知られている(例えば、下記特許文献1~4参 )。

 ここで、復元処理としては、例えば、整合 論理に基づきデータを復元するリビルド(Reb uild)処理が挙げられる。
 また、例えば、RAID装置が1以上のディスク 置を組み合わせてRAIDグループ(RAID Group)を構 成している場合には、故障したディスク装置 を含むRAIDグループに対してホットスペアデ スク装置を割り当てることにより、RAIDグル プ毎にリビルド処理が実行される。

特開平07-110743号公報

特開平09-269871号公報

特開平09-330182号公報

特開2000-357061号公報

 ところで、近年のRAID装置等のディスクアレ イ装置は、以前よりも装置規模が大きくなっ てきている。
 従って、RAID装置を構成するディスク装置の 搭載本数が多くなり、RAID装置内で複数のデ スク装置の故障が同時に発生しやすくなっ いる。又、ディスク装置単体の容量も大き なり、復元処理に要する時間が長時間化し いる。

 しかしながら、上述した従来のRAID装置では 、故障した順番に応じて、先に故障したディ スク装置から順番にホットスペアディスク装 置を割り当てている。
 従って、このように、従来のRAID装置におい ては、RAID装置内で複数のディスク装置の故 が同時に発生した場合や、故障した複数の ィスク装置についての復元処理が実行され 場合には、重要度の高いデータを保持して るディスク装置が後に故障したとしても、 ットスペアディスク装置を割り当てること できず、重要度の高いデータに対して復元 理を実行できないおそれがある。その結果 従来のRAID装置では、重要度の高いデータの 長性を確保できないおそれがあることから 安全性や信頼性を十分に高めることができ かった。

 なお、上述した従来のRAID装置以外の他の 例として、ホットスペア装置を特定のRAIDグ ープの専用として予め割り当てておくRAID装 (以下、他のRAID装置という場合もある)も存 する。つまり、このRAID装置は、特定のRAID ループ内のディスク装置が故障した場合に み使用できる一方で、他のRAIDグループ内の ィスク装置が故障した場合には使用できな ようになっている。

 しかしながら、上述した他のRAID装置では、 重要度の高いデータを保持しているRAIDグル プのディスク装置が故障した場合に、この 障したディスク装置に対して、他のRAIDグル プに予め割り当てられているホットスペア ィスク装置を割り当てることができない。
 本発明は、このような課題に鑑み創案され もので、RAID装置内の重要度の高いデータの 冗長性を優先的に確保し、RAID装置の安全性 信頼性を高めることを目的とする。

 上記の目的を達成するために、開示のRAID 装置は、上位装置からアクセスされる複数の 論理ボリュームを構成する複数の記憶装置を そなえたRAID装置であって、前記複数の記憶 置のうちの異常が発生した異常発生記憶装 に格納されていたデータを復元可能な予備 憶装置と、該異常発生記憶装置に格納され いたデータを該予備記憶装置に復元する処 である復元処理を制御する制御部とをそな 、該制御部は、前記複数の論理ボリューム に優先度を設定する優先度テーブルと、該 常発生記憶装置を検出する検出部と、該検 部で該異常発生記憶装置を検出すると、該 先度テーブルに設定された前記複数の論理 リューム毎の優先度に基づいて、該復元処 を実行するか否かを判断する判断部と、該 断部で該復元処理を実行すると判断される 、該復元処理を実行する実行部とをそなえ いる。

 また、開示のRAID装置の制御装置は、上位 装置からアクセスされる複数の論理ボリュー ムを構成する複数の記憶装置と、前記複数の 記憶装置のうちの異常が発生した異常発生記 憶装置に格納されていたデータを復元可能な 予備記憶装置とをそなえたRAID装置に関し、 異常発生記憶装置に格納されていたデータ 該予備記憶装置に復元する処理である復元 理を制御するためのRAID装置の制御装置であ て、前記複数の論理ボリューム毎に優先度 設定する優先度テーブルと、該異常発生記 装置を検出する検出部と、該検出部で該異 発生記憶装置を検出すると、該優先度テー ルに設定された前記複数の論理ボリューム の優先度に基づいて、該復元処理を実行す か否かを判断する判断部と、該判断部で該 元処理を実行すると判断されると、該復元 理を実行する実行部とをそなえている。

 さらに、開示のRAID装置の制御方法は、上 位装置からアクセスされる複数の論理ボリュ ームを構成する複数の記憶装置と、前記複数 の記憶装置のうちの異常が発生した異常発生 記憶装置に格納されていたデータを復元可能 な予備記憶装置とをそなえたRAID装置に関し 該異常発生記憶装置に格納されていたデー を該予備記憶装置に復元する処理である復 処理を制御するためのRAID装置の制御方法で って、該異常発生記憶装置を検出する検出 テップと、該検出ステップにおいて該異常 生記憶装置を検出すると、前記複数の論理 リューム毎に優先度を設定する優先度テー ルに基づいて、該復元処理を実行するか否 を判断する判断ステップと、該判断ステッ において該復元処理を実行すると判断され と、該復元処理を実行する実行ステップと そなえている。

 開示の技術によれば、論理ボリュームの 先度という概念を取り入れることで、より 要度(再構築優先度順)が高い論理ボリュー のデータの冗長性が優先して確保されるの 、RAID装置内の重要度の高いデータを率先し 保護することができ、RAID装置の安全性や信 頼性を高めることができる。

本発明の一実施形態としてのRAID装置の 構成例を模式的に示す図である。 本発明の一実施形態としてのRAID装置に おけるコントローラモジュールの構成例を模 式的に示す図である。 本発明の一実施形態としてのRAID装置に おける管理情報格納部の構成例を模式的に示 す図である。 本発明の一実施形態としてのRAID装置に おける第1の動作例を模式的に示す図である 本発明の一実施形態としてのRAID装置に おける第2の動作例を模式的に示す図である 本発明の一実施形態としてのRAID装置に おける第3の動作例を模式的に示す図である 本発明の一実施形態としてのRAID装置に おける第4の動作例を模式的に示す図である 本発明の一実施形態としてのRAID装置に おける第5の動作例を模式的に示す図である 本発明の一実施形態としてのRAID装置に おける第6の動作例を模式的に示す図である 本発明の一実施形態としてのRAID装置 おける第7の動作例を模式的に示す図である 本発明の一実施形態としてのRAID装置 おける動作手順を示すフローチャートであ 。 本発明の一実施形態の変形例としての RAID装置の構成例を模式的に示す図である。

符号の説明

10,30 RAID装置
11,11a~11h,31a~31d ホスト(上位装置)
12,12a~12h,32a~32d ドライブエンクロージャ
13,13a~13d,33a,33b コントローラモジュール(制御 部;RAID装置制御装置)
14,14a~14h,34a~34d チャンネルアダプタ
15 ルータ
16,16a-1~16a-5,16b-1~16b-5,16c-1~16c-5,16d-1~16d-5,16e-1~16e -5,16f-1~16f-5,16g-1~16g-5,16h-1~16h-5 ディスク装置( 憶装置;異常発生記憶装置)
16,16a-n,16b-n,16c-n,16d-n,16e-n,16f-n,16g-n,16h-n ディ ク装置(ホットスペア装置;予備記憶装置;特 ホットスペア装置;特定予備記憶装置)
17 管理情報格納部
18 受信部
19 設定部
20 検出部
21 特定部
22 判断部
23 実行部
24 管理テーブル(優先度テーブル;状態テーブ ル)
36a-1~36a-k,36b-1~36b-k,36c-1~36c-k,36d-1~36d-k ディス 装置
d1 RAIDグループ番号
d2 RAIDレベル
d3 RAIDグループ状態
d4 ブロックサイズ
d5 ボリューム
d6 ディスク
d7 再構築優先度
R,R-0~R-4,R1,R2,R-30~R-33 RAIDグループ(論理ボリュ ム)
P,P-0~P-4 優先度
P1 第1の優先度
P2 第2の優先度

 以下、図面を参照しながら本発明の実施の 態について説明する。
 〔1〕本発明の一実施形態の説明
 図1は本発明の一実施形態としてのRAID(Redunda nt Array of Inexpensive Disks)装置10の構成例を模 式的に示す図である。
 本実施形態に係るRAID装置10は、複数(ここで は8個)のホスト(上位装置)11a~11hからアクセス れることにより、データの書き込みおよび み出しを行なうものである。

 このRAID装置10は、例えば、図1に示すよう に、複数(ここでは8個)のドライブエンクロー ジャ(DE;Drive Enclosure)12a~12h,複数(ここでは4個) コントローラモジュール(CM;Controller Module; 御部;制御装置)13a~13d,複数(ここでは8個)のチ ンネルアダプタ(CA;Channel Adapter)14a~14hおよび ルータ(RT;Router)15をそなえて構成されたハイ ンド機である。

 なお、以下、ホストを示す符号としては、 数のホストのうち1つを特定する必要がある ときは符号11a~11hを用いるが、任意のホスト 指すときには符号11を用いる。
 また、以下、ドライブエンクロージャを示 符号としては、複数のドライブエンクロー ャのうち1つを特定する必要があるときは符 号12a~12hを用いるが、任意のドライブエンク ージャを指すときには符号12を用いる。

 さらに、以下、コントローラモジュールを す符号としては、複数のコントローラモジ ールのうち1つを特定する必要があるときは 符号13a~13dを用いるが、任意のコントローラ ジュールを指すときには符号13を用いる。
 また、以下、チャンネルアダプタを示す符 としては、複数のチャンネルアダプタのう 1つを特定する必要があるときは符号14a~14h 用いるが、任意のチャンネルアダプタを指 ときには符号14を用いる。

 ドライブエンクロージャ12は、複数のディ ク装置16をそなえるものである。ここで、デ ィスク装置16は、例えば、HDD(Hard Disk Drive)や 半導体ディスクにより実現される。
 図1に示す例では、ドライブエンクロージャ 12aが、複数(ここではn個;nは自然数)のディス 装置16a-1~16a-nをそなえている。

 以下同様に、ドライブエンクロージャ12b 複数(ここではn個)のディスク装置16b-1~16b-n 、ドライブエンクロージャ12cが複数(ここで n個)のディスク装置16c-1~16c-nを、ドライブエ ンクロージャ12dが複数(ここではn個)のディス ク装置16d-1~16d-nを、それぞれそなえている。 、ドライブエンクロージャ12eが複数(ここで はn個)のディスク装置16e-1~16e-nを、ドライブ ンクロージャ12fが複数(ここではn個)のディ ク装置16f-1~16f-nを、それぞれそなえている。 更に、ドライブエンクロージャ12gが複数(こ ではn個)のディスク装置16g-1~16g-nを、ドライ エンクロージャ12hが複数(ここではn個)のデ スク装置16h-1~16h-nを、それぞれそなえてい 。

 なお、以下、ディスク装置を示す符号と ては、複数のディスク装置のうち1つを特定 する必要があるときは符号16a-1~16a-n,16b-1~16b-n, 16c-1~16c-n,16d-1~16d-n,16e-1~16e-n,16f-1~16f-n,16g-1~16g-n, 16h-1~16h-nを用いるが、任意のディスク装置を すときには符号16を用いる。なお、図1中に ける符号16の図示については便宜上省略す 。又、各ドライブエンクロージャ12にそなえ られるディスク装置16の数については、本実 形態に限定されず、例えば、ドライブエン ロージャ12毎に異なる数のディスク装置16を そなえていてもよい。

 また、ディスク装置16は、例えば、記憶装 またはホットスペア(Hot Spare Disk;HS)装置(予 記憶装置;ホットスペアディスク)として機 するようになっている。
 図1に示す例では、ドライブエンクロージャ 12aにおいて、複数(ここでは5個)のディスク装 置16a-1~16a-5がそれぞれ記憶装置として機能す とともに、少なくともディスク装置16a-nが ットスペア装置として機能するようになっ いる。又、各ドライブエンクロージャ12bに いて、複数(ここでは5個)のディスク装置16b-1 ~16b-5が記憶装置として機能するとともに、少 なくともディスク装置16b-nがホットスペア装 として機能するようになっている。

 以下、各ドライブエンクロージャ12c~12hにお いても、複数(ここでは6×n個)のディスク装置 16c-1~16c-n,16d-1~16d-n,16e-1~16e-n,16f-1~16f-n,16g-1~16g-n, 16h-1~16h-nのそれぞれが、記憶装置またはホッ スペア装置として機能するようになってい 。
 なお、以下の説明においては、記憶装置お びホットスペア装置を示す符号として、デ スク装置と同じ符号(例えば、符号16)を用い るものとする。

 ここで、記憶装置16は、ホスト11からアク セスされるデータの書き込みおよび読み出し を行なうものである。又、ホットスペア装置 16は、複数(図1に示す例では8×n個)のディスク 装置16a-1~16h-nのうちの異常(ディスク故障)が 生した記憶装置(以下、異常発生記憶装置と う場合もある)16に格納されていたデータを 元可能なものである。つまり、ホットスペ 装置16は、記憶装置16の代替機器としての予 備ディスクである。

 さらに、記憶装置16は、当該記憶装置16以外 の他の1以上の記憶装置16との組み合わせによ り、ホスト11からアクセスされるRAIDグループ (RAID Group;論理ボリューム)Rを構成するように なっている。
 具体的には、図1に示すように、複数(ここ は2個)の記憶装置16a-2,16b-2がRAIDグループR-0を 構成している。又、複数(ここでは4個)の記憶 装置16e-2,16f-2,16g-2,16h-2がRAIDグループR-1を構成 している。更に、複数(ここでは8個)の記憶装 置16a-1~16h-1がRAIDグループR-2を構成している。 又、複数(ここでは8個)の記憶装置16a-3~16h-3がR AIDグループR-3を構成している。更に、複数( こでは16個)の記憶装置16a-4~16h-4,16a-5~16h-5がRAI DグループR-4を構成している。

 そして、図1に示すように、RAIDグループR- 0のRAIDレベルはRAID1であり、RAIDグループR-1のR AIDレベルはRAID1+0である。又、RAIDグループR-2 RAIDレベルはRAID5であり、RAIDグループR-3のRAI DレベルはRAID6であり、RAIDグループR-4のRAIDレ ルはRAID6である。

 従って、本実施形態におけるRAID装置10は、 スト13からアクセスされる複数(ここでは5個 )のRAIDグループR-0~R-4を構成するのである。
 なお、以下、RAIDグループを示す符号として は、複数のRAIDグループのうち1つを特定する 要があるときは符号R-0~R-4を用いるが、任意 のRAIDグループを指すときには符号Rを用いる

 コントローラモジュール13は、異常発生 憶装置16に格納されていたデータをホットス ペア装置16に復元するリビルド(Rebuild)処理(復 元処理)を制御するものである。ここで、リ ルド処理とは、整合性論理に基づきデータ 復元する処理を実行するものである。具体 には、例えば、リビルド処理とは、異常発 記憶装置16に格納されていたデータを他の1 上のディスク装置16のデータに基づいてホッ トスペア装置16に復元させることにより、RAID グループRの冗長性を復活させることが可能 ものである。なお、コントローラモジュー 13の機能については後述する。

 このコントローラモジュール13は、チャン ルアダプタ14を介して1以上(図1に示す例では 2個)のホスト11と接続されている。
 図1に示す例では、コントローラモジュール 13aは、チャンネルアダプタ14aを介してホスト 11aと接続されるとともに、チャンネルアダプ タ14bを介してホスト11bと接続されている。以 下、同様に、コントローラモジュール13bは、 チャンネルアダプタ14cを介してホスト11cと接 続されるとともに、チャンネルアダプタ14dを 介してホスト11dと接続されている。又、コン トローラモジュール13cは、チャンネルアダプ タ14eを介してホスト11eと接続されるとともに 、チャンネルアダプタ14fを介してホスト11fと 接続されている。更に、コントローラモジュ ール13dは、チャンネルアダプタ14gを介してホ スト11gと接続されるとともに、チャンネルア ダプタ14hを介してホスト11hと接続されている 。

 ルータ15は、コントローラモジュール13とド ライブエンクロージャ12との間においてデー を中継するものである。図1に示す例では、 ルータ15は、各コントローラモジュール13a~13d に接続されるとともに、各ドライブエンクロ ージャ12a~12hに接続されている。
 以下、コントローラモジュール13の機能に いて詳述する。

 図2は本発明の一実施形態としてのRAID装置10 におけるコントローラモジュール13の構成例 模式的に示す図、図3はその管理情報格納部 17の構成例を模式的に示す図である。
 コントローラモジュール13は、図2に示すよ に、管理情報格納部17,受信部18,設定部19,検 部20,特定部21,判断部22および実行部23をそな えて構成されている。

 管理情報格納部17は、図3に示すような管理 ーブル24を格納するものであり、メモリ等 記憶部(図示省略)により実現される。
 管理テーブル24は、ディスク装置16の制御に 関する管理情報をRAIDグループR-0~R-4毎に保持 るものである。ここで、管理情報は、例え 、図3に示すように、RAIDグループ番号d1,RAID ベルd2,RAIDグループ状態d3,ブロックサイズd4, ボリュームd5,ディスクd6および再構築優先度d 7をそなえている。

 RAIDグループ番号d1は、RAIDグループRのシ アル番号を示すものである。本実施形態に いては、RAIDグループ番号d1は、複数のRAIDグ ープR-0~R-4のシリアル番号、例えば、“R-0” ,“R-1”,“R-2”,“R-3”および“R-4”を並べて 示すようになっている。なお、RAIDグループ 号d1については、本実施形態に限定されず、 他の識別用の情報を用いることができる。

 RAIDレベルd2は、RAIDグループ番号d1で示さ たRAIDグループRのRAIDレベルを示すものであ 。本実施形態においては、RAIDレベルd2は、 RAID0”,“RAID1”,“RAID1+0”,“RAID2”,“RAID3” ,“RAID4”,“RAID5”および“RAID6”のうちいず かのRAIDレベルを選択的に示すようになって いる。なお、RAIDレベルは既知であるので、 の詳細な説明を省略する。

 そして、RAIDレベルd2は、複数のRAIDグループ R-0~R-4のそれぞれのRAIDレベルを、RAIDグループ 番号d1で示された各RAIDグループR-0~R-4のそれ れに対応するように(RAIDグループR-0~R-4毎に) すようになっている。
 図3に示す例では、RAIDレベルd2は、RAIDグル プR-0に対応して“RAID1”を示している。以下 同様に、RAIDレベルd2は、RAIDグループR-1に対 して“RAID1+0”を、RAIDグループR-2に対応して “RAID5”を、RAIDグループR-3に対応して“RAID6 を、RAIDグループR-4に対応して“RAID6”を、 れぞれ示している。

 RAIDグループ状態d3は、RAIDグループ番号d1 示されたRAIDグループRの状態(状態情報)を示 すものである。ここで、RAIDグループRの状態 は、RAIDグループRにおける異常(故障)や冗長 性に関する状態のことである。ここで、冗長 性とは、例えば、複数のディスク装置16に同 データが書き込まれていたりパリティが書 込まれていたりすることをいう。

 本実施形態においては、RAIDグループ状態d3 、RAIDグループRの状態として、“Available”, Exposed”,“Rebuild”,“SpareInUse”,“Copyback” よび“Broken”のいずれかを選択的に示すよ になっている。
 ここで、“Available”は、対応するRAIDグルー プRが全く正常な状態であり、対応するRAIDグ ープRに冗長性がある状態を指す。“Exposed は、ディスク単体故障等により、対応するRA IDグループRを構成するいずれかのディスク装 置16に冗長性がない状態(例えば、冗長度が0 なる数のディスクが故障した状態)を指す。 Rebuild”は、対応するRAIDグループRがリビル 処理中の状態であり、対応するRAIDグループ Rについて部分的にしか冗長性がない状態を す。“SpareInUse”は、対応するRAIDグループR 、ホットスペア装置16に対してリビルド処理 後の状態であり、対応するRAIDグループRに冗 性がある状態を指す。“Copyback”は、対応 るRAIDグループRが、交換したディスク装置16 のコピーバック(Copyback)中の状態であり、対 応するRAIDグループRに冗長性がある状態を指 。“Broken”は、対応するRAIDグループRを構 する複数のディスク装置16において、冗長度 を超えた数のディスクが故障した状態であり 、データを失った状態を指す。

 そして、RAIDグループ状態d3は、複数のRAID グループR-0~R-4のそれぞれの状態を、RAIDグル プ番号d1で示された各RAIDグループR-0~R-4のそ れぞれに対応するように(RAIDグループR-0~R-4毎 に)並べて示すようになっている。即ち、管 テーブル24は、RAIDグループRの冗長性に関す 状態情報を複数のRAIDグループR-0~R-4毎に記 する状態テーブルとして機能するのである( 下、状態テーブル24という場合もある)。

 ブロックサイズd4は、RAIDグループ番号d1 示された各RAIDグループR-0~R-4の容量を示すも のである。ボリュームd5は、RAIDグループ番号 d1で示された各RAIDグループR-0~R-4に設定した ストボリューム(任意個)を示すものである。 ディスクd6は、RAIDグループ番号d1で示された RAIDグループR-0~R-4を構成するディスク(複数 )の種類を示すものである。

 なお、これらのRAIDグループ状態d3,ブロック サイズd4,ボリュームd5およびディスクd6につ ての詳細な図示については、便宜上省略す 。
 再構築優先度d7は、RAIDグループ番号d1で示 れたRAIDグループRの優先度(再構築優先度)Pを 示すものである。ここで、再構築優先度Pと 、RAIDグループRを構成するいずれかの記憶装 置16に異常が発生した場合に冗長性を確保し ければならない優先順位のことである。本 施形態においては、再構築優先度d7は、値 0”を最低の優先度Pとして、値“0”~“4”の 5段階の優先度Pを選択的に示すようになって る。又、本実施形態においては、再構築優 度d7は、後述する設定部19により設定される ようになっている。

 そして、再構築優先度d7は、複数のRAIDグル プR-0~R-4のそれぞれについての優先度P-0~P-4 、RAIDグループ番号d1で示された各RAIDグルー R-0~R-4のそれぞれに対応するように(RAIDグル プR-0~R-4毎に)示すようになっている。
 図3に示す例では、再構築優先度d7は、RAIDグ ループR-0の優先度P-0として値“4”を示して る。以下同様に、再構築優先度d7は、RAIDグ ープR-1の優先度P-1として値“3”を、RAIDグル ープR-2の優先度P-2として値“2”を、RAIDグル プR-3の優先度P-3として値“1”を、RAIDグル プR-4の優先度P-4として値“0”を、それぞれ している。

 即ち、管理テーブル24は、複数のRAIDグルー R-0~R-4毎に優先度P-0~P-4を設定する優先度テ ブルとして機能するのである(以下、優先度 ーブル24という場合もある)。
 なお、以下、優先度を示す符号としては、 数の優先度のうち1つを特定する必要がある ときは符号P-0~P-4を用いるが、任意の優先度 指すときには符号Pを用いる。

 受信部18は、優先度Pに関する優先度情報( 図示省略)を受信するものである。この受信 18は、例えば、ユーザがホスト11やRAID装置10 キーボード等の入力装置(入力部;図示省略) 優先度情報を入力すると、この入力装置か 優先度情報を受信するようになっている。 お、本実施形態においては、ユーザは、RAID グループRに含まれるデータの重要度に基づ て、任意の優先度情報を入力装置に入力す ようになっている。

 設定部19は、受信部18で受信した優先度情報 を管理テーブル24に設定するものであり、CPU( Central Processing Unit)等の処理部(図示省略)に り実現される。従って、優先度情報は、RAID ループRに含まれるデータの重要度に基づい て優先度テーブル24に設定されるといえる。
 検出部20は、異常発生記憶装置16を検出する ものであり、CPU等の処理部(図示省略)により 現される。この検出部20は、既知の種々の 出手法を用いて実現することができる。

 特定部21は、複数のホットスペア装置(例え 、図1に示す符号“16a-n”および“16b-n”参 )のうちいずれかのホットスペア装置16を特 ホットスペア装置(特定予備記憶装置)として 特定するものであり、CPU等の処理部(図示省 )により実現される。
 この特定部21は、複数のホットスペア装置16 の全てが使用中もしくはリビルド処理中であ る場合に、使用中である複数のホットスペア 装置16の中から特定ホットスペア装置を特定 るようになっている。

 なお、特定部21の具体的な動作例について 後述する。
 判断部22は、検出部20で異常発生記憶装置16 検出すると、管理テーブル24に設定された 数のRAIDグループR-0~R-4毎の再構築優先度d7に づいて、リビルド処理を実行するか否かを 断するものであり、CPU等の処理部(図示省略 )により実現される。

 また、判断部22は、ホットスペア装置16が使 用中である場合に、第1の優先度P1と第2の優 度P2とを比較して、特定ホットスペア装置16 対してリビルド処理を実行するか否かを判 するようになっている。
 ここで、第1の優先度P1とは、異常発生記憶 置16を含むRAIDグループ(異常発生論理ボリュ ーム)Rに設定されている優先度Pである。又、 第2の優先度P2とは、特定ホットスペア装置16 含むRAIDグループ(使用中論理ボリューム)Rに 設定されている優先度Pである。

 さらに、判断部22は、第1の優先度P1が優先 テーブル24に設定された優先度Pの中で最も い場合には、リビルド処理を実行しないと 断するようになっている。
 実行部23は、判断部22でリビルド処理を実行 すると判断されると、特定ホットスペア装置 16に対して、異常発生記憶装置16のデータに いてのリビルド処理を実行するものであり CPU等の処理部(図示省略)により実現される。

 また、この実行部23は、複数のホットスペ 装置16の全てが使用中である場合に、判断部 22でリビルド処理を実行すると判断されると 特定ホットスペア装置16を、使用中であるRA IDグループRから切り離して、この切り離した 特定ホットスペア装置16に対してリビルド処 を実行するようになっている。
 以下、本発明の一実施形態としてのRAID装置 10における第1~第7の動作例について説明する

 図4は本発明の一実施形態としてのRAID装 における第1の動作例を模式的に示す図であ 。図5はその第2の動作例を模式的に示す図 図6はその第3の動作例を模式的に示す図、図 7はその第4の動作例を模式的に示す図である 図8はその第5の動作例を模式的に示す図、 9はその第6の動作例を模式的に示す図、図10 その第7の動作例を模式的に示す図である。

 (1)第1の動作例
 以下、図4を参照しながら、本発明の一実施 形態としてのRAID装置10における第1の動作例 ついて説明する。
 図4に示す例では、RAID装置10においては、RAI D装置10内のホットスペア装置16a-n,16b-nが未使 の状態である。

 この状態で、RAIDグループR-2を構成する記憶 装置16c-1に異常が発生すると、検出部20は、 憶装置16c-1を異常発生記憶装置として検出す る(ディスク故障;図4の符号“A1”参照)。
 特定部21は、管理テーブル(優先度テーブル) 24を参照することにより、異常発生記憶装置1 6c-1を含むRAIDグループR-2の優先度P-4の値“2” が、優先度テーブル24に設定された優先度Pの 中で最も低い値“0”ではないと判定する。 して、特定部21は、未使用である複数のホッ トスペア装置16a-n,16b-nの中からホットスペア 置16a-nを特定ホットスペア装置として特定 る。

 判断部22は、特定部21で特定された特定ホッ トスペア装置16a-nが未使用であるので、優先 の比較を行なわずに、特定ホットスペア装 16a-nに対してリビルド処理を実行すると判 する。
 そして、実行部23は、特定ホットスペア装 16a-nに対して、記憶装置16c-1のデータについ のリビルド処理を実行する(HS割り当て;図4 符号“A2”参照)。

 従って、RAID装置10は、異常発生記憶装置16 含むRAIDグループRの優先度Pが優先度テーブ 24に設定された優先度Pの中で最も低い値で なく、未使用のホットスペア装置16が存在す る場合には、優先度の比較を行なわずに、異 常発生記憶装置16を未使用のホットスペア装 16に付け替えるのである。
 (2)第2の動作例
 以下、図5を参照しながら、本発明の一実施 形態としてのRAID装置10における第2の動作例 ついて説明する。

 図5に示す例では、RAID装置10においては、RAI D装置10内の全てのホットスペア装置16が使用 の状態である。
 この状態で、RAIDグループR-1を構成する記憶 装置16g-2に異常が発生すると、検出部20は、 憶装置16g-2を異常発生記憶装置として検出す る(ディスク故障;図5の符号“B1”参照)。

 特定部21は、管理テーブル(優先度テーブ )24を参照することにより、異常発生記憶装 16g-2を含むRAIDグループR-1の優先度P-1の値“3 ”が、優先度テーブル24に設定された優先度P の中で最も低い値“0”ではないと判定する 又、特定部21は、管理テーブル(状態テーブ )24を参照することにより、ホットスペア装 16a-nを使用しているRAIDグループR-2の状態が SpareInUse”であると判定する。更に、特定部2 1は、管理テーブル(状態テーブル)24を参照す ことにより、ホットスペア装置16b-nを使用 ているRAIDグループR-3の状態が“SpareInUse”で あると判定する。そして、特定部21は、使用 である全てのホットスペア装置(図5に示す では、ホットスペア装置16a-n,16b-n)の中から 最も優先度の低いRAIDグループR-3に含まれる ットスペア装置16b-nを特定ホットスペア装 として特定する。

 判断部22は、異常発生記憶装置16g-2を含むRAI DグループR-1に設定されている優先度R-1の値 3”と特定ホットスペア装置16b-nを含むRAIDグ ープR-3に設定されている優先度P-3の値“1” とを比較する。
 比較の結果、判断部22は、優先度P-1の値“3 が優先度P-3の値“1”よりも高いので、特定 ホットスペア装置16b-nに対してリビルド処理 実行すると判断する。

 そして、実行部23は、特定ホットスペア装 16b-nを使用中であるRAIDグループR-3から切り して(HS切り離し;図5の符号“B2”参照)、特定 ホットスペア装置16b-nに対して、記憶装置16g- 2のデータについてのリビルド処理を実行す (HS割り当て;図5の符号“B3”参照)。
 従って、RAID装置10は、ホットスペア装置16 使用中であって、異常発生記憶装置16を含む RAIDグループRの優先度Pが優先度テーブル24に 定された優先度Pの中で最も低い値ではない 場合には、異常発生記憶装置16を、低優先度 あって冗長性を有するRAIDグループRにおい 使用中のホットスペア装置16に付け替えるの である。

 (3)第3の動作例
 以下、図6を参照しながら、本発明の一実施 形態としてのRAID装置10における第3の動作例 ついて説明する。
 図6に示す例では、RAID装置10においては、RAI D装置10内の全てのホットスペア装置16が使用 であり、且つ、ホットスペア装置16b-nが低 先度であるRAIDグループR-3においてリビルド 理中の状態である(リビルド中;図6の符号“C 1”参照)。これにより、管理テーブル(状態テ ーブル)24において、RAIDグループR-3のRAIDグル プ状態d3が“Rebuild”に設定されている。

 この状態で、RAIDグループR-1を構成する記憶 装置16g-2に異常が発生すると、検出部20は、 憶装置16g-2を異常発生記憶装置として検出す る(ディスク故障;図6の符号“C2”参照)。
 特定部21は、管理テーブル(優先度テーブル) 24を参照することにより、異常発生記憶装置1 6g-2を含むRAIDグループR-1の優先度P-1の値“3” が、優先度テーブル24に設定された優先度Pの 中で最も低い値“0”ではないと判定する。 、特定部21は、管理テーブル(状態テーブル)2 4を参照することにより、ホットスペア装置16 a-nを使用しているRAIDグループR-2の状態が“Sp areInUse”であると判定する。更に、特定部21 、管理テーブル(状態テーブル)24を参照する とにより、ホットスペア装置16b-nを使用し いるRAIDグループR-3の状態が“Rebuild”である と判定する。そして、特定部21は、使用中も くはリビルド処理中である全てのホットス ア装置(図6に示す例では、ホットスペア装 16a-n,16b-n)の中から、冗長性があり且つ最も 先度の低いRAIDグループR-3に含まれるホット ペア装置16b-nを特定ホットスペア装置とし 特定する。つまり、特定部21は、管理テーブ ル(優先度テーブルおよび状態テーブル)24に づいて、複数のホットスペア装置16の中から 、冗長性があり且つ最も優先度Pの低いRAIDグ ープRに含まれるホットスペア装置16を特定 ットスペア装置として特定するのである。

 判断部22は、異常発生記憶装置16g-2を含むRAI DグループR-1に設定されている優先度P-1の値 3”と特定ホットスペア装置16b-nを含むRAIDグ ープR-3に設定されている優先度P-3の値“1” とを比較する。
 比較の結果、判断部22は、優先度P-1の値“3 が優先度P-3の値“1”よりも高いので、特定 ホットスペア装置16b-nに対してリビルド処理 実行すると判断する。

 そして、実行部23は、特定ホットスペア装 16b-nをRAIDグループR-3から切り離して(HS切り し;図6の符号“C3”参照)、特定ホットスペア 装置16b-nに対して、記憶装置16g-2のデータに いてのリビルド処理を実行する(HS割り当て; 6の符号“C4”参照)。
 従って、RAID装置10は、ホットスペア装置16 使用中もしくはリビルド処理中であって、 常発生記憶装置16を含むRAIDグループRの優先 Pが優先度テーブル24に設定された優先度Pの 中で最も低い値ではない場合には、異常発生 記憶装置16を、低優先度であるRAIDグループR おいて使用中もしくはリビルド処理中のホ トスペア装置16に付け替えるのである。

 (4)第4の動作例
 以下、図7を参照しながら、本発明の一実施 形態としてのRAID装置10における第4の動作例 ついて説明する。
 図7に示す例では、RAID装置10においては、RAI D装置10内の全てのホットスペア装置16が使用 であり、且つ、記憶装置16h-3の故障により ホットスペア装置16を使用中のRAIDグループR- 0~R-4の中で最も低優先度であるRAIDグループR-3 に冗長性が無い状態である(既にディスクが 障し、冗長性を失っている状態;図7の符号“ D1”参照)。

 この状態で、RAIDグループR-1を構成する記憶 装置16g-2に異常が発生すると、検出部20は、 憶装置16g-2を異常発生記憶装置として検出す る(ディスク故障;図7の符号“D2”参照)。
 特定部21は、管理テーブル(優先度テーブル) 24を参照することにより、異常発生記憶装置1 6g-2を含むRAIDグループR-1の優先度P-1の値“3” が、優先度テーブル24に設定された優先度Pの 中で最も低い値“0”ではないと判定する。 、特定部21は、管理テーブル(状態テーブル)2 4を参照することにより、ホットスペア装置16 a-nを使用しているRAIDグループR-2の状態が“Sp areInUse”であると判定する。更に、特定部21 、管理テーブル(状態テーブル)24を参照する とにより、ホットスペア装置16b-nを使用し いるRAIDグループR-3の状態が“Exposed”である と判定する。そして、特定部21は、使用中も くはリビルド処理中である全てのホットス ア装置(図7に示す例では、ホットスペア装 16a-n,16b-n)の中から、冗長性があり且つ最も 先度の低いRAIDグループR-2に含まれるホット ペア装置16a-nを特定ホットスペア装置とし 特定する。

 判断部22は、異常発生記憶装置16g-2を含むRAI DグループR-1に設定されている優先度P-1の値 3”と特定ホットスペア装置16a-nを含むRAIDグ ープR-2に設定されている優先度P-2の値“2” とを比較する。
 比較の結果、判断部22は、優先度P-1の値“3 が優先度P-2の値“2”よりも高いので、特定 ホットスペア装置16a-nに対してリビルド処理 実行すると判断する。

 そして、実行部23は、特定ホットスペア装 16a-nをRAIDグループR-2から切り離して(HS切り し;図7の符号“D3”参照)、特定ホットスペア 装置16a-nに対して、記憶装置16g-2のデータに いてのリビルド処理を実行する(HS割り当て; 7の符号“D4”参照)。
 従って、RAID装置10は、ホットスペア装置16 使用中であって、異常発生記憶装置16を含む RAIDグループRの優先度Pが優先度テーブル24に 定された優先度Pの中で最も低い値ではなく 、ホットスペア装置16を使用中のRAIDグループ Rの中で最も低優先度であるRAIDグループRに冗 長性が無い場合には、異常発生記憶装置16を ホットスペア装置16を使用中であって冗長 を有するRAIDグループRの中で最も低優先度で あるRAIDグループRにおいて使用中のホットス ア装置16に付け替えるのである。

 (5)第5の動作例
 以下、図8を参照しながら、本発明の一実施 形態としてのRAID装置10における第5の動作例 ついて説明する。
 図8に示す例では、RAID装置10においては、RAI D装置10内の全てのホットスペア装置16がRAIDグ ループR-3において使用中であり、且つ、RAID ループR-3内の1以上の記憶装置(図8に示す例 は、記憶装置16h-3)の故障によりRAIDグループR -3に冗長性が無い状態である(既にディスクが 故障し、冗長性を失っている状態;図8の符号 E1”参照)。

 この状態で、RAIDグループR-1を構成する記憶 装置16g-2に異常が発生すると、検出部20は、 の記憶装置16g-2を異常発生記憶装置として検 出する(ディスク故障;図8の符号“E2”参照)。
 特定部21は、管理テーブル(優先度テーブル) 24を参照することにより、異常発生記憶装置1 6g-2を含むRAIDグループR-1の優先度P-1の値“3” が、優先度テーブル24に設定された優先度Pの 中で最も低い値“0”ではないと判定する。 、特定部21は、管理テーブル(状態テーブル)2 4を参照することにより、ホットスペア装置16 a-nを使用しているRAIDグループR-2の状態が“Ex posed”であると判定する。従って、特定部21 、RAID装置10内の全てのホットスペア装置を 用中のRAIDグループR-3に冗長性が無いので、 定ホットスペア装置を特定しない。

 そして、特定部21が特定ホットスペアを特 しないので、判断部22は、リビルド処理を実 行しないと判断し、実行部23は、記憶装置16g- 2のデータについてのリビルド処理を実行せ に、動作を終了する(HS関する動作無し;図8の 符号“E3”参照)。
 従って、RAID装置10は、全てのホットスペア 置16がRAIDグループRにおいて使用中であり、 且つ、ホットスペア装置16を使用している全 のRAIDグループRに冗長性が無い場合には、 ビルド処理を行なわず、異常発生記憶装置16 が交換されるのを待つのである。

 (6)第6の動作例
 以下、図9を参照しながら、本発明の一実施 形態としてのRAID装置10における第6の動作例 ついて説明する。
 図9に示す例では、RAID装置10においては、RAI D装置10内の全てのホットスペア装置16がRAIDグ ループR-0において使用中の状態である。

 この状態で、RAIDグループR-1を構成する記憶 装置16g-2に異常が発生すると、検出部20は、 の記憶装置16g-2を異常発生記憶装置として検 出する(ディスク故障;図9の符号“F1”参照)。
 特定部21は、管理テーブル(優先度テーブル) 24を参照することにより、異常発生記憶装置1 6g-2を含むRAIDグループR-1の優先度P-1の値“3” が、優先度テーブル24に設定された優先度Pの 中で最も低い値“0”ではないと判定する。 、特定部21は、管理テーブル(状態テーブル)2 4を参照することにより、ホットスペア装置16 a-nを使用しているRAIDグループR-0の状態が“Sp areInUse”であると判定する。そして、特定部2 1は、RAID装置10内の全てのホットスペア装置 RAIDグループR-0において使用中であるので、 も優先度Pの低いRAIDグループR-0に含まれる ットスペア装置16a-nを特定ホットスペア装置 として特定する。

 判断部22は、異常発生記憶装置16g-2を含むRAI DグループR-1に設定されている優先度P-1の値 3”と特定ホットスペア装置16a-nを含むRAIDグ ープR-0に設定されている優先度P-0の値“4” とを比較する。
 比較の結果、判断部22は、優先度P-1の値“3 が優先度P-0の値“4”よりも低いので、特定 ホットスペア装置16a-nに対してリビルド処理 実行しないと判断する。

 そして、判断部22がリビルド処理を実行し いと判断するので、実行部23は、記憶装置16g -2のデータについてのリビルド処理を実行せ に、動作を終了する(HS関する動作無し;図9 符号“F2”参照)。
 従って、RAID装置10は、全てのホットスペア 置が、異常発生記憶装置16を含むRAIDグルー Rよりも高い優先度であるRAIDグループRにお て使用されている場合には、リビルド処理 行なわず、異常発生記憶装置16が交換され のを待つのである。

 (7)第7の動作例
 以下、図10を参照しながら、本発明の一実 形態としてのRAID装置10における第7の動作例 ついて説明する。
 図10に示す例では、RAID装置10においては、RA ID装置10内のホットスペア装置16a-n,16b-nが未使 用の状態である。
 この状態で、RAIDグループR-4を構成する記憶 装置16c-4に異常が発生すると、検出部20は、 憶装置16c-4を異常発生記憶装置として検出す る(ディスク故障;図10の符号“G1”参照)。

 特定部21は、管理テーブル(優先度テーブ )24を参照することにより、異常発生記憶装 16c-4を含むRAIDグループR-4の優先度P-4の値が 優先度テーブル24に設定された優先度Pの中 最も低い値“0”であると判定する。従って 、特定部21は、特定ホットスペア装置を特定 ず、判断部22は、リビルド処理を実行しな と判断する。

 そして、判断部22がリビルド処理を実行し いと判断するので、実行部23は、記憶装置16c -4のデータについてのリビルド処理を実行せ に、動作を終了する(HS関する動作無し;図10 符号“G2”参照)。
 従って、RAID装置10は、異常発生記憶装置16 含むRAIDグループRの優先度Pが最低である場 には、未使用のホットスペア装置16が存在す るか否かに関わらず、リビルド処理を行なわ ず、異常発生記憶装置16が交換されるのを待 のである。

 上述の如く構成された本発明の一実施形態 係るRAID装置10における動作手順を、図11に すフローチャート(ステップS11~S17)に従って 明する。
 なお、図11では、異常が発生した記憶装置16 を含むRAIDグループをR1と示し、そのRAIDグル プR1の優先度である第1の優先度をP1と示して いる。又、特定ホットスペア装置を使用中の RAIDグループをR2と示し、そのRAIDグループR2の 優先度である第2の優先度をP2と示している。

 先ず、RAID装置10を構成するいずれかのRAIDグ ループRでディスク装置16に異常が発生すると 、検出部20は、異常発生記憶装置16を検出す (検出ステップ)。
 そして、特定部21は、第1の優先度P1が優先 テーブル24に設定された優先度Pの中で最低 優先度であるか否かを判断する(ステップS11) 。

 判断の結果、優先度P1が最低の優先度で る場合には(ステップS11の“YES”ルート参照) 、特定部21は、特定ホットスペア装置を特定 ず、判断部22は、リビルド処理を実行しな と判断する。そして、判断部22がリビルド処 理を実行しないと判断するので、実行部23は ディスク装置16のデータについてのリビル 処理を実行せずに、処理を終了する。

 一方、優先度P1が最低の優先度ではない場 には(ステップS11の“NO”ルート参照)、特定 21は、RAID装置10内に未使用のホットスペア 置16が存在するか否かを判断する(ステップS1 2)。
 判断の結果、RAID装置10内に未使用のホット ペア装置16が存在する場合には(ステップS12 “YES”ルート参照)、特定部21は、未使用の ットスペア装置16を特定ホットスペア装置16 として特定する(特定ステップ)。判断部22は 特定部21で特定された特定ホットスペア装置 16が未使用であるので、優先度の比較を行な ずに、特定ホットスペア装置16に対してリ ルド処理を実行すると判断する(判断ステッ )。そして、実行部23は、未使用である特定 ットスペア装置16をRAIDグループR1に割り当 て、異常が発生したディスク装置16のデータ についてのリビルド処理を実行し(ステップS1 3;実行ステップ)、処理を終了する。

 一方、RAID装置10内の全てのホットスペア 置16が使用中である場合には(ステップS12の NO”ルート参照)、特定部21は、ホットスペ 装置16を使用中の状態で冗長性があるRAIDグ ープRと、ホットスペア装置16に対してリビ ド処理中であるRAIDグループRとを管理テーブ ル(状態テーブル)24を用いて検索し、これら 検索された全てのRAIDグループR-0~R-4の中で最 も優先度の低いRAIDグループR2を管理テーブル (優先度テーブル)24を用いて選び出す(ステッ S14;特定ステップ)。

 そして、判断部22は、特定部21で選び出され たRAIDグループR2の優先度である第2の優先度P2 と異常が発生したRAIDグループR1の優先度であ る第1の優先度P1との比較を行なう(ステップS1 5;判断ステップ)。
 比較の結果、第1の優先度P1が第2の優先度P2 りも低いか同じである場合には(ステップS15 の“NO”ルート参照)、実行部23は、リビルド 理を行なわず、処理を終了する。そして、R AID装置10は、故障した記憶装置16が交換され のを待つことになる。

 一方、第1の優先度P1が第2の優先度P2よりも い場合には(ステップS15の“YES”ルート参照 )、実行部23は、RAIDグループR2のホットスペア 装置16を切り離して、当該RAIDグループR2の冗 性を強制的に落とす処理を実行する(ステッ プS16;実行ステップ)。
 そして、実行部23は、切り離したホットス ア装置16を、RAIDグループR1に割り当てて(組 込んで)リビルド処理を開始し(ステップS17; 行ステップ)、処理を終了する。

 これにより、より優先度Pが高いRAIDグルー Rのデータの冗長性が優先的に確保されるの ある。
 このように、本発明の一実施形態としてのR AID装置10によれば、未使用のホットスペア装 16が存在せず、異常発生記憶装置16を含むRAI DグループRの優先度Pが優先度テーブル24にお て最低優先度ではない場合に、ホットスペ 装置16を使用中もしくはリビルド処理中で って冗長性を有するRAIDグループRの中で最も 低優先度であるRAIDグループRにおいて使用中 ホットスペア装置16に対して、リビルド処 を実行すると判断する。一方、RAID装置10は 使用中もしくはリビルド処理中である全て ホットスペア装置16が、異常発生記憶装置16 含むRAIDグループRよりも高い優先度であるRA IDグループRにおいて使用されている場合や、 ホットスペア装置16を使用している全てのRAID グループRに冗長性が無い場合には、リビル 処理を実行しないと判断する。従って、RAID ループRの優先度という概念を取り入れるこ とで、より重要度(再構築優先度順)が高いRAID グループRのデータの冗長性が優先して確保 れる。これにより、RAID装置10内の重要度の いデータを率先して保護することができ、RA ID装置10の安全性や信頼性を高めることがで る。

 また、RAID装置10内の各RAIDグループRが保 しているデータの重要度については考慮し 重要度の高いデータの冗長性を優先的に確 するように管理することで、装置規模が大 くなってきている近年のRAID装置において、R AID装置10内で複数のディスク装置16の故障が 時に発生した場合や、故障した複数のディ ク装置16についてのリビルド処理が実行され た場合であっても、安全性や信頼性を高める ことができる。

 さらに、異常発生記憶装置16を含むRAIDグ ープRの優先度Pが最低である場合には、未 用のホットスペア装置16が存在するか否かに 関わらず、リビルド処理を実行しないと判断 することにより、RAID装置10内の重要度の高い データにのみホットスペア装置16を割り当て ことできるので、重要度の高いデータをよ 確実に保護することができ、RAID装置10の安 性を更に高めることができる。

 〔2〕その他
 なお、本発明は上述した実施形態に限定さ るものではなく、本発明の趣旨を逸脱しな 範囲で種々変形して実施することができる
 例えば、上記実施形態では、実行部23がリ ルド処理を復元処理として実行する場合に いて説明しているが、それに限定されるも ではなく、異常発生記憶装置16に格納されて いたデータをホットスペア装置16に復元する 理を復元処理として実行してもよい。

 また、上記実施形態では、RAIDグループRと 理ボリュームとを1対1に対応付けて、RAIDグ ープR毎に優先度を設定した場合について説 しているが、それに限定されるものではな 、例えば、RAIDグループR内に複数の論理ボ ュームを構成し、これらの複数の論理ボリ ーム毎に優先度を設定してもよい。
 さらに、上記実施形態では、各RAIDグループ R-0~R-4のRAIDレベルを上述の如く特定した場合 ついて説明しているが、それに限定される のではなく、リビルド処理を前提とするRAID レベル、例えば、RAID0以外の各種RAIDレベルに 適用可能である。

 図12は本発明の一実施形態の変形例として RAID装置30の構成例を模式的に示す図である
 上記実施形態では、ハイエンド機として構 されたRAID装置10を用いて説明しているが、 れに限定されるものではなく、例えば、図1 2に示すような、RAID装置10よりも簡素であり 複数(ここでは4個)のホスト31a~31dからアクセ されるエントリー機として構成されるRAID装 置30を用いてもよい。

 このRAID装置30は、例えば、図12に示すよう 、複数(ここでは4個)のドライブエンクロー ャ32a~32d,複数(ここでは2個)のコントローラモ ジュール33a,33bおよび複数(ここでは4個)のチ ンネルアダプタ34a~34dをそなえたエントリー として構成されている。
 そして、ドライブエンクロージャ32aが、複 (ここではk個;kは自然数)のディスク装置36a-1 ~36a-kをそなえている。以下同様に、ドライブ エンクロージャ32bが複数(ここでは各k個)のデ ィスク装置36b-1~36b-kを、ドライブエンクロー ャ32cが複数(ここでは各k個)のディスク装置3 6c-1~36c-kを、ドライブエンクロージャ32dが複 (ここでは各k個)のディスク装置36d-1~36d-kを、 それぞれそなえている。

 また、各ディスク装置36a-1~36a-k,36b-1~36b-k,36c- 1~36c-k,36d-1~36d-kは、上述した一実施形態のデ スク装置16と同様の機能構成をそなえている 。
 従って、本変形例のRAID装置30では、複数(こ こでは4×k個)のディスク装置36a-1~36a-k,36b-1~36b- k,36c-1~36c-k,36d-1~36d-kのそれぞれが、記憶装置 たはホットスペア装置として機能するよう なっている。

 また、本変形例のRAID装置30では、図12に すように、複数(ここでは2個)の記憶装置36a-1 ,36a-2が、RAID1としてのRAIDグループR-30を構成 ている。又、複数(ここでは4個)の記憶装置36 a-4,36a-5,36b-4,36b-5が、RAID1+0としてのRAIDグルー R-31を構成している。更に、複数(ここでは4 )の記憶装置36b-1,36b-2,36c-1,36c-2が、RAID5とし のRAIDグループR-32を構成している。又、複数 (ここでは5個)の記憶装置36d-1~36d-5が、RAID6と てのRAIDグループR-33を構成している。

 従って、本変形例のRAID装置30は、各ホスト3 1a~31dからアクセスされる複数(ここでは4個)の RAIDグループR-30~R-33を構成するのである。
 また、本変形例のRAID装置30では、図12に示 ように、コントローラモジュール33aが、チ ンネルアダプタ34aを介してホスト31aと接続 れるとともに、チャンネルアダプタ34bを介 てホスト31bと接続されている。又、コント ーラモジュール33bが、チャンネルアダプタ34 cを介してホスト31cと接続されるとともに、 ャンネルアダプタ34dを介してホスト31dと接 されている。

 なお、コントローラモジュール33a,33bは、上 述した一実施形態のコントローラモジュール 13と同様の機能構成をそなえているので、そ 詳細な説明については省略する。
 このように、本発明の一実施形態の変形例 してのRAID装置30によっても、上述した一実 形態としてのRAID装置10と同様の作用効果を ることができる。

 なお、本発明の各実施形態が開示されて れば、本発明を当業者によって実施・製造 ることが可能である。

 上位装置からアクセスされる複数の論理 リュームを構成する複数の記憶装置をそな たRAID装置に適用できる。