(57)【特許請求の範囲】
【請求項１】
複数の記憶媒体を有するＲＡＩＤに設定された論理記憶領域にデータを記憶すると共に、ＲＡＩＤに属さない予備用記憶媒体を有するストレージ装置において、
第１のＲＡＩＤに前記予備用記憶媒体を追加すると共に論理記憶領域を追加し、記憶媒体が増設された場合には、前記増設された記憶媒体を有する第２のＲＡＩＤを設定し、前記追加した論理記憶領域を前記設定した第２のＲＡＩＤに移行させると共に、前記第１のＲＡＩＤから前記予備用記憶媒体を除外して前記第１のＲＡＩＤのＲＡＩＤ構成を前記予備用記憶媒体の追加前の状態に戻す構成制御部を有することを特徴とするストレージ装置。
【請求項２】
前記構成制御部は、前記第１のＲＡＩＤから前記追加した論理記憶領域のデータを読み出し、前記第２のＲＡＩＤのＲＡＩＤ構成に応じて前記追加した論理記憶領域のデータと前記データのパリティデータとを有するストライプを再構成し、前記再構成したストライプを前記第２のＲＡＩＤに書き込むことにより、前記追加した論理記憶領域を前記第２のＲＡＩＤに移行させることを特徴とする請求項１記載のストレージ装置。
【請求項３】
前記構成制御部は、前記追加した論理記憶領域のデータを前記第２のＲＡＩＤに移行させる際に、前記追加した論理記憶領域のアドレスの先頭から順に前記第２のＲＡＩＤの論理記憶領域に書き込むことを特徴とする請求項１記載のストレージ装置。
【請求項４】
前記構成制御部は、前記予備用記憶媒体を前記第１のＲＡＩＤから除外する際には、前記予備用記憶媒体の除外前の第１のＲＡＩＤから、前記追加した論理記憶領域が追加される以前から前記第１のＲＡＩＤが有する論理記憶領域のデータを読み出し、前記予備用記憶媒体の除外後の前記第１のＲＡＩＤのＲＡＩＤ構成に応じて前記第１のＲＡＩＤに設定されていた論理記憶領域のデータと前記データのパリティデータとを有するストライプを再構成し、前記再構成したストライプを前記予備用記憶媒体の除外後の第１のＲＡＩＤに書き込むことを特徴とする請求項１記載のストレージ装置。
【請求項５】
前記構成制御部は、前記予備用記憶媒体を前記第１のＲＡＩＤから除外する際には、前記追加した論理記憶領域が追加される以前から前記第１のＲＡＩＤが有する論理記憶領域をアドレスの末尾から順に前記予備用記憶媒体の除外後の第１のＲＡＩＤに書き込むことを特徴とする請求項４記載のストレージ装置。
【請求項６】
複数の記憶媒体を有するＲＡＩＤに設定された論理記憶領域にデータを記憶すると共に、ＲＡＩＤに属さない予備用記憶媒体を有するストレージ装置を制御するストレージ装置制御プログラムにおいて、
コンピュータに、
第１のＲＡＩＤに前記予備用記憶媒体を追加すると共に論理記憶領域を追加し、記憶媒体が増設された場合には、前記増設された記憶媒体を有する第２のＲＡＩＤを設定し、前記追加した論理記憶領域を前記設定した第２のＲＡＩＤに移行させると共に、前記第１のＲＡＩＤから前記予備用記憶媒体を除外して前記第１のＲＡＩＤのＲＡＩＤ構成を前記予備用記憶媒体の追加前の状態に戻す処理を実行させることを特徴とするストレージ装置制御プログラム。
【請求項７】
複数の記憶媒体を有するＲＡＩＤに設定された論理記憶領域にデータを記憶すると共に、ＲＡＩＤに属さない予備用記憶媒体を有するストレージ装置を制御するストレージ装置制御方法において、
第１のＲＡＩＤに前記予備用記憶媒体を追加すると共に論理記憶領域を追加し、
記憶媒体が増設された場合には、前記増設された記憶媒体を有する第２のＲＡＩＤを設定し、前記追加した論理記憶領域を前記設定した第２のＲＡＩＤに移行させると共に、前記第１のＲＡＩＤから前記予備用記憶媒体を除外して前記第１のＲＡＩＤのＲＡＩＤ構成を前記予備用記憶媒体の追加前の状態に戻す、
ことを特徴とするストレージ装置制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、ストレージ装置、ストレージ装置制御プログラムおよびストレージ装置制御方法に関する。
【背景技術】
【０００２】
磁気ディスク、光磁気ディスク、光ディスク等の記憶媒体を利用したストレージ装置では、記憶容量の大容量化が進められている。このストレージ装置の記憶容量の大容量化に関して、ＲＡＩＤ（Redundant Arrays of Inexpensive Disks）という記憶媒体を多重化してストレージ装置を構成する技術が広く用いられている。ＲＡＩＤを用いたストレージ装置の構成の管理および変更に関して、以下の技術が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−３７３０４号公報
【特許文献２】特開２００４−２１３０６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、ストレージ装置は、運用に伴い使用するデータが蓄積されていくことにより、ストレージ装置に要求される記憶容量が次第に増加する場合もある。この場合、運用に基づくストレージ装置の記憶容量の大容量化を図るために、一般的には、ストレージ装置の記憶媒体の増設や、より容量の大きい記憶媒体に交換して対処することになる。しかし、ストレージ装置の記憶媒体の増設や交換を頻繁に行うと、その都度作業の手間や費用が発生し、コストが嵩むことになるという問題点がある。
【０００５】
また、記憶されているデータ量がストレージ装置の記憶容量の上限に近い状態でストレージ装置の運用を続けると、ストレージ装置が性能を十分に発揮できず、処理能力が低下する場合も生じ得るという問題点がある。
【０００６】
また、シンプロビジョニング（Thin Provisioning）を用いれば、ストレージ装置の記憶容量を論理的に増加させることができると共に、物理的な記憶媒体を効率的に使用することができる。しかし、シンプロビジョニングによってもストレージ装置の物理的な記憶容量が増加するわけではない。このため、物理的な記憶容量の余裕が減少した際には、記憶媒体の交換や増設を要することになり、その都度作業の手間や費用が発生するので、コストが嵩むことになるという問題点がある。
【０００７】
本件はこのような点に鑑みてなされたものであり、ストレージ装置に対する記憶媒体の増設や交換の頻度の増加を抑制することが可能なストレージ装置、ストレージ装置制御プログラムおよびストレージ装置制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために以下のようなストレージ装置が提供される。このストレージ装置は、複数の記憶媒体を有するＲＡＩＤに設定された論理記憶領域にデータを記憶すると共に、ＲＡＩＤに属さない予備用記憶媒体を有する。このストレージ装置では、構成制御部は、第１のＲＡＩＤに予備用記憶媒体を追加すると共に論理記憶領域を追加し、記憶媒体が増設された場合には、第１のＲＡＩＤに追加した予備用記憶媒体を除外すると共に増設された記憶媒体を有する第２のＲＡＩＤを設定し、追加した論理記憶領域を設定した第２のＲＡＩＤに移行させる。
【０００９】
また、上記目的を達成するために以下のようなストレージ装置制御プログラムが提供される。このストレージ装置制御プログラムは、複数の記憶媒体を有するＲＡＩＤに設定された論理記憶領域にデータを記憶すると共に、ＲＡＩＤに属さない予備用記憶媒体を有するストレージ装置を制御する。このストレージ装置制御プログラムは、コンピュータを、第１のＲＡＩＤに予備用記憶媒体を追加すると共に論理記憶領域を追加し、記憶媒体が増設された場合には、第１のＲＡＩＤに追加した予備用記憶媒体を除外すると共に増設された記憶媒体を有する第２のＲＡＩＤを設定し、追加した論理記憶領域を設定した第２のＲＡＩＤに移行させる構成制御部として機能させる。
【００１０】
また、上記目的を達成するために以下のようなストレージ装置制御方法が提供される。このストレージ装置制御方法は、複数の記憶媒体を有するＲＡＩＤに設定された論理記憶領域にデータを記憶すると共に、ＲＡＩＤに属さない予備用記憶媒体を有するストレージ装置を制御する。このストレージ装置制御方法は、第１のＲＡＩＤに予備用記憶媒体を追加すると共に論理記憶領域を追加し、記憶媒体が増設された場合には、第１のＲＡＩＤに追加した予備用記憶媒体を除外すると共に増設された記憶媒体を有する第２のＲＡＩＤを設定し、追加した論理記憶領域を設定した第２のＲＡＩＤに移行させる。
【発明の効果】
【００１１】
開示のストレージ装置、ストレージ装置制御プログラムおよびストレージ装置制御方法によれば、ストレージ装置に記憶媒体が増設されるまでの間、予備用記憶媒体を使用して一時的に記憶容量を増加させる。また、ストレージ装置に記憶媒体が増設された場合には、予備用記憶媒体を除外して予備に戻すと共に、予備用記憶媒体の使用により増加された領域に記憶されていたデータを、増設された記憶媒体に移行する。これにより、ストレージ装置に対する記憶媒体の増設や交換の頻度の増加を抑制することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施の形態のストレージ装置を示す図である。
【図２】第２の実施の形態のストレージ装置のハードウェア構成を示す図である。
【図３】第２の実施の形態のストレージ装置の機能を示すブロック図である。
【図４】第２の実施の形態の構成管理テーブルを示す図である。
【図５】第２の実施の形態の通常時のＲＡＩＤの構成を示す図である。
【図６】第２の実施の形態の予備用記憶デバイスの追加を示す図である。
【図７】第２の実施の形態のＲＡＩＤグループの追加を示す図である。
【図８】第２の実施の形態において予備用記憶デバイスが追加されると共にＲＡＩＤグループが追加された状態の構成管理テーブルを示す図である。
【図９】第２の実施の形態の記憶容量一時増加処理の手順を示すフローチャートである。
【図１０】第２の実施の形態の追加したＲＡＩＤグループの増設された記憶デバイスへの移行を示す図である。
【図１１】第２の実施の形態のデータ量が圧迫していたＲＡＩＤグループの記憶デバイスへの再書き込みを示す図である。
【図１２】第２の実施の形態の記憶デバイスの増設後のＲＡＩＤの構成を示す図である。
【図１３】図１３は、第２の実施の形態の記憶デバイスが増設された状態の構成管理テーブルを示す図である。
【図１４】第２の実施の形態の記憶デバイス増設処理の手順を示すフローチャートである。
【図１５】第２の実施の形態の記憶デバイス増設処理の手順を示すフローチャートである。
【図１６】第２の実施の形態の記憶デバイス増設処理の手順を示すフローチャートである。
【図１７】第２の実施の形態の記憶デバイス増設処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、実施の形態を図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態のストレージ装置を示す図である。本実施の形態のストレージ装置１は、構成制御部１ａ、ストレージプール１ｂを有する。また、ストレージプール１ｂは、ＲＡＩＤ１ｂ１、予備用記憶媒体１ｂ１０を有する。ＲＡＩＤ１ｂ１には、ＲＬＵ（RAID Logical Unit）＃１等の論理記憶領域であるＲＡＩＤグループが設定され、設定されたＲＡＩＤグループにデータを記憶する。また、ストレージプール１ｂには、記憶媒体１ｂ２１，１ｂ２２，１ｂ２３，１ｂ２４を増設し、増設した記憶媒体１ｂ２１〜１ｂ２４にＲＡＩＤ１ｂ２を設定することができる。
【００１４】
構成制御部１ａは、例えば、ストレージプール１ｂの記憶容量の空きが最大記憶容量の１０％未満になった場合等、ストレージプール１ｂの記憶容量の余裕が減少した場合には、記憶媒体１ｂ１１，１ｂ１２，１ｂ１３，１ｂ１４を有するＲＡＩＤ１ｂ１に予備用記憶媒体１ｂ１０を追加すると共に新たなＲＡＩＤグループであるＲＬＵ＃２（論理記憶領域）を追加する。
【００１５】
また、構成制御部１ａは、記憶媒体１ｂ２１〜１ｂ２４が増設された場合には、ＲＡＩＤ１ｂ１に追加した予備用記憶媒体１ｂ１０を除外すると共に増設された記憶媒体１ｂ２１〜１ｂ２４を有するＲＡＩＤ１ｂ２を設定し、予備用記憶媒体１ｂ１０の追加時に追加したＲＬＵ＃２を増設された記憶媒体１ｂ２１〜１ｂ２４に設定したＲＡＩＤ１ｂ２に移行させる。これにより、ＲＡＩＤ１ｂ１には、再びＲＬＵ＃１のみが設定されることになる。
【００１６】
ＲＡＩＤ１ｂ１は、記憶媒体１ｂ１１〜１ｂ１４（または記憶媒体１ｂ１１〜１ｂ１４および予備用記憶媒体１ｂ１０）によって構成される。記憶媒体１ｂ１１〜１ｂ１４は、データを記憶可能な記憶領域を有する。ストレージ装置１は、ＲＡＩＤ１ｂ１等に設定される各ＲＡＩＤグループに図示しない他のコンピュータ等から送信されたデータを記憶する。ＲＡＩＤ１ｂ２も同様に、複数の記憶媒体（例えば、記憶媒体１ｂ１１〜１ｂ１４および予備用記憶媒体１ｂ１０または増設された記憶媒体１ｂ２１〜１ｂ２４）によって構成される。なお、ＲＡＩＤ１ｂ１，１ｂ２は、任意の個数の記憶媒体で設定することができる。
【００１７】
予備用記憶媒体１ｂ１０は、予備用の記憶媒体であって、データを記憶可能な記憶領域を有し、通常時はいずれのＲＡＩＤ構成にも属さず電源が投入されたまま待機している。予備用記憶媒体１ｂ１０は、ＲＡＩＤ１ｂ１の記憶媒体やその他のＲＡＩＤの記憶媒体に障害が発生した場合には、障害が発生した記憶媒体の代わりに障害が発生した記憶媒体が属していたＲＡＩＤに組み入れられる。なお、これに限らず、予備用記憶媒体１ｂ１０は、電源が投入されていない状態で待機しており、使用の際に電源が投入されてもよい。
【００１８】
以上のように、本実施の形態では、ストレージ装置１に記憶媒体１ｂ２１〜１ｂ２４が増設されるまでの間、予備用記憶媒体１ｂ１０を使用して一時的に記憶容量を増加させる。また、ストレージ装置１に記憶媒体１ｂ２１〜１ｂ２４が増設された場合には、予備用記憶媒体１ｂ１０をＲＡＩＤ構成から除外して予備に戻すと共に、増設された記憶媒体１ｂ２１〜１ｂ２４でＲＡＩＤを構成し、さらに予備用記憶媒体１ｂ１０の使用により増加していた領域に記憶されていたデータを、増設された記憶媒体１ｂ２１〜１ｂ２４で構成されたＲＡＩＤに移行する。これにより、ストレージ装置１に対する記憶媒体の増設や交換の頻度の増加を抑制することが可能となる。
【００１９】
［第２の実施の形態］
次に、図１に示したストレージ装置１の、予備用記憶媒体を使用して記憶容量を一時的に増加させる機能を、ＲＡＩＤを構成するストレージ群を有するストレージ装置１００に適用した実施の形態を、第２の実施の形態として説明する。
【００２０】
図２は、第２の実施の形態のストレージ装置のハードウェア構成を示す図である。ストレージ装置１００は、装置全体の制御を行う制御部１１０ａ，１１０ｂ、制御部１１０ａ，１１０ｂとホストコンピュータ３００との接続制御を行うチャネルアダプタ１３０ｃ〜１３０ｆ、記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄおよび図示しないその他の複数の記憶デバイスを有するストレージプール１２０を有する。
【００２１】
ストレージ装置１００は、後述するハードディスクドライブ（ＨＤＤ：Hard disk drive）等の複数の記憶デバイスに対するデータの入出力を行う。ストレージ装置１００は、ＲＡＩＤ０〜６等のＲＡＩＤ機能を有し、複数の記憶デバイスをまとめてＲＡＩＤを構成することにより、各ＲＡＩＤをそれぞれ１台の記憶デバイスとして管理する。
【００２２】
ホストコンピュータ３００は、業務処理を実行するコンピュータであり、ファイバチャネル（Fibre Channel）で構成されたＳＡＮ（Storage Area Network）を介してストレージ装置１００とデータ通信可能に接続されている。ホストコンピュータ３００は、業務処理に使用するデータについて、ストレージ装置１００への保存およびストレージ装置１００からの読み出しを行う。
【００２３】
制御部１１０ａは、ＣＰＵ（Central Processing Unit）１１１ａ、キャッシュメモリ１１２ａ、およびデバイスアダプタ１１３ｃ，１１３ｄを有する。
ＣＰＵ１１１ａは、ＯＳ（オペレーティングシステム）などに従って処理を実行し、各種制御を行う。また、制御部１１０ａは、キャッシュメモリ１１２ａ、ストレージプール１２０が有する記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄおよびその他の記憶デバイス、チャネルアダプタ１３０ｃ，１３０ｄなどの資源管理を行う。
【００２４】
キャッシュメモリ１１２ａは、ＣＰＵ１１１ａがストレージ装置１００を制御するために必要な制御データを記憶する。また、キャッシュメモリ１１２ａは、ストレージプール１２０が有する各記憶デバイスに読み書きされる入出力データを一時的に記憶する。
【００２５】
デバイスアダプタ１１３ｃ，１１３ｄは、ストレージプール１２０が有する各記憶デバイスとの接続制御を行う。
また、制御部１１０ａおよび制御部１１０ｂは、バス１４０によって接続されている。このバス１４０を介して、制御部１１０ａおよび制御部１１０ｂの間で、制御情報やデータが通信される。ここで、制御部１１０ｂは、制御部１１０ａと同一の構成であるため、説明を省略する。
【００２６】
ストレージプール１２０は、記憶デバイス１２０１ａ〜１２０１ｄ等の複数の記憶デバイスを有し、これらの記憶デバイスの記憶領域に設定されたＲＡＩＤに設定される論理記憶領域であるＲＡＩＤグループにデータを記憶する。
【００２７】
記憶デバイス１２０１ａ〜１２０１ｄおよびストレージプール１２０が有するその他の記憶デバイスは、ＲＡＩＤを構成可能なハードディスクドライブであり、ホストコンピュータ３００から送信されたシステムの利用者のデータまたはバックアップデータを記憶する。なお、システムの利用者のデータおよびバックアップデータは１つのハードディスクに記憶されている必要はなく、複数のハードディスクに渡って記憶されていてもよい。また、１つのハードディスクに複数の利用者のデータおよびバックアップデータが記憶されていてもよい。また、記憶デバイス１２０１ａ〜１２０１ｄは、例えば、ＳＳＤ（Solid State Drive）等の不揮発性半導体メモリやその他のデータの記憶が可能な記憶媒体を用いてもよい。
【００２８】
チャネルアダプタ１３０ｃ〜１３０ｆは、ホストコンピュータ３００と制御部１１０ａ，１１０ｂとの接続制御を行う。例えば、チャネルアダプタ１３０ｃは、ホストコンピュータ３００からの要求を受け付けて、制御部１１０ａとの接続制御を行う。制御部１１０ａ，１１０ｂは、それぞれ複数個（図ではそれぞれ２個）のチャネルアダプタ１３０ｃ〜１３０ｆに接続可能になっている。すなわち、例えば制御部１１０ａは、冗長構成が実現されるように、２つの異なるチャネルアダプタ１３０ｃ，１３０ｄにそれぞれ接続されている。
【００２９】
なお、チャネルアダプタ１３０ｃ〜１３０ｆとホストコンピュータ３００との間の通信は、ファイバチャネルで構成されたＳＡＮによって接続されているが、ファイバチャネル以外の接続方式によって接続されていてもよい。また、チャネルアダプタ１３０ｃ〜１３０ｆとホストコンピュータ３００との間の通信は、専用線やＶＰＮ（Virtual Private Network）を用いて、ストレージ装置１００をホストコンピュータ３００から遠隔地に設置するように構成してもよい。
【００３０】
なお、図２において、制御部１１０ａ，１１０ｂは、それぞれ２個図示し、デバイスアダプタ１１３ｃ〜１１３ｆおよびチャネルアダプタ１３０ｃ〜１３０ｆは、制御部１１０ａ，１１０ｂそれぞれに対してそれぞれ２個ずつ図示しているが、これらの数はそれぞれ任意である。
【００３１】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
図３は、第２の実施の形態のストレージ装置の機能を示すブロック図である。本実施の形態のストレージ装置１００は、ホストコンピュータ３００とＬＡＮで接続されている。ストレージ装置１００は、構成制御部１０１、構成管理部１０２、ストレージプール１２０、構成管理情報記憶部１５１を有する。また、ストレージプール１２０は、予備用記憶デバイス１２００ｅ，１２００ｆ、ＲＡＩＤグループ１２０１（ＲＬＵ＃１）を有する。ＲＡＩＤグループ１２０１は、当初、記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄで構成されたＲＡＩＤに設定されている。また、ストレージプール１２０には、構成制御部１０１により、ＲＡＩＤグループ１２０４（ＲＬＵ＃４）が、ＲＡＩＤグループ１２０１と同一の記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄで構成されたＲＡＩＤに設定されることにより追加される。
【００３２】
構成制御部１０１は、ストレージプール１２０の記憶容量の空きが所定量（例えば、最大記憶容量の１０％）未満になった場合等、ストレージプール１２０の記憶容量の余裕が減少した場合には、構成管理部１０２に最も記憶容量を圧迫しているＲＡＩＤグループ（例えば、ＲＡＩＤグループ１２０１）の通知を要求する。これにより、構成制御部１０１は、構成管理部１０２に対して、最も記憶容量を圧迫しているＲＡＩＤグループを通知させる。次に、構成制御部１０１は、構成管理部１０２から通知されたＲＡＩＤグループ１２０１が設定されているＲＡＩＤを構成する記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄに予備用記憶デバイス１２００ｅを追加する。次に、構成制御部１０１は、予備用記憶デバイス１２００ｅによる記憶容量の増加分を使用してＲＡＩＤグループ１２０１が設定されているＲＡＩＤを構成する記憶デバイスにＲＡＩＤグループ１２０４を設定することにより、ストレージプール１２０にＲＡＩＤグループ１２０４を追加する。
【００３３】
また、構成制御部１０１は、その後、ストレージプール１２０に記憶デバイスが増設された場合には、構成管理部１０２から通知されたＲＡＩＤグループ１２０１を構成する記憶デバイスに追加された予備用記憶デバイス１２００ｅを、ＲＡＩＤグループ１２０１を構成する記憶デバイスから除外すると共に、増設された記憶デバイスに新たにＲＡＩＤを設定し、予備用記憶デバイス１２００ｅの追加時に追加したグループ１２０４を増設された記憶デバイスに設定したＲＡＩＤに移行させる。
【００３４】
ここで、構成制御部１０１は、構成管理部１０２を介して構成管理情報記憶部１５１に記憶されている構成管理情報を取得し、予備用記憶デバイス１２００ｅの除外前のＲＡＩＤグループ１２０１からストライプ単位でデータを読み出す。ここで、ストライプは、ＲＡＩＤグループにおけるデータブロックの組であって、ＲＡＩＤが有する各記憶デバイスのデータブロックを１つずつ有すると共に、各データブロックから生成したパリティデータを有するように対応付けたものである。次に、構成制御部１０１は、読み出したＲＡＩＤグループ１２０１のストライプを、取得した構成管理情報に基づき、予備用記憶デバイス１２００ｅの除外後においてＲＡＩＤグループ１２０１が新たに設定される記憶デバイスのＲＡＩＤ構成に応じて構成制御部１０１が有するバッファに再構成する。次に、構成制御部１０１は、再構成したストライプを予備用記憶デバイス１２００ｅの除外後のＲＡＩＤグループ１２０１において割り当てられている領域へ書き込む再書き込みを実行する。このとき、構成制御部１０１は、ＲＡＩＤグループ１２０１のストライプを、ＲＡＩＤグループ１２０１の記憶領域のアドレスの末尾から順に予備用記憶デバイス１２００ｅの除外後のＲＡＩＤに設定されているＲＡＩＤグループ１２０１に書き込む。これにより、ＲＡＩＤグループ１２０１のストライプを、ＲＡＩＤグループ１２０１のアドレスの末尾から順に書き込むことにより、未だ再構成が完了していないデータに対して、誤って再書き込みにより上書きしてしまうことが防止される。
【００３５】
また、構成制御部１０１は、ＲＡＩＤグループ１２０４を増設された記憶デバイスが構成するＲＡＩＤに移行させる。ここで、構成制御部１０１は、ＲＡＩＤグループ１２０１と共に設定されていた記憶デバイスからＲＡＩＤグループ１２０４のストライプを読み出し、読み出したＲＡＩＤグループ１２０４のストライプを構成管理部１０２を介して取得した構成管理情報に基づいて、増設された記憶デバイスのＲＡＩＤ構成に応じて再構成し、再構成したストライプを増設された記憶デバイスに書き込むと共に、ＲＡＩＤグループ１２０１を記憶している記憶デバイスに記憶されているＲＡＩＤグループ１２０４のデータを削除することにより、ＲＡＩＤグループ１２０４を増設された記憶デバイスで構成されたＲＡＩＤに移行させる。これにより、ＲＡＩＤグループ１２０１を記憶している記憶デバイスには、再びＲＡＩＤグループ１２０１のみが設定されることになる。
【００３６】
構成管理部１０２は、ストレージプール１２０の記憶デバイスのＲＡＩＤ構成やＲＡＩＤグループの状態を取得して、構成管理情報記憶部１５１に記憶されている構成管理情報を更新する。また、構成管理部１０２は、構成制御部１０１の要求に応じて構成管理情報を構成制御部１０１に通知する。また、構成管理部１０２は、ホストコンピュータ３００にストレージプール１２０の記憶デバイスのＲＡＩＤ構成やＲＡＩＤグループの状態を示す情報を通知する。
【００３７】
また、構成管理部１０２は、構成管理情報記憶部１５１に記憶されている構成管理情報を取得し、取得した構成管理情報に基づき最も記憶容量を圧迫しているＲＡＩＤグループを特定する。次に、構成管理部１０２は、構成制御部１０１に対して特定したＲＡＩＤグループを通知する。
【００３８】
構成管理情報記憶部１５１は、ストレージプール１２０が有する各ＲＡＩＤの構成を示す構成管理情報を記憶する。構成制御部１０１は、構成管理部１０２を介して構成管理情報記憶部１５１に記憶されている構成管理情報記憶を取得し、取得した構成管理情報に基づいてストレージプール１２０のＲＡＩＤの構成を管理する。
【００３９】
ＲＡＩＤグループ１２０１は、記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄで構成されたＲＡＩＤに設定されている論理記憶領域である。記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄは、データを記憶可能な記憶領域を有する。ストレージ装置１００は、ＲＡＩＤグループ１２０１に、ホストコンピュータ３００から送信されたデータを記憶すると共に、ホストコンピュータ３００からの要求に応じて記憶しているデータを送信する。ＲＡＩＤグループ１２０４およびストレージプール１２０が有する他のＲＡＩＤグループも同様に、複数（例えば、４個）の記憶デバイスに設定されている論理記憶領域である。ＲＡＩＤグループ１２０４およびその他のＲＡＩＤグループが設定されているＲＡＩＤの記憶デバイスは、同様にデータを記憶可能な記憶領域を有する。
【００４０】
なお、ＲＡＩＤグループ１２０１，１２０４が設定されているＲＡＩＤは、共に４個の記憶デバイスを有するが、これに限らず、ＲＡＩＤグループ１２０１，１２０４およびその他のストレージプール１２０が有するＲＡＩＤグループが設定されているＲＡＩＤは、任意の個数の記憶デバイスを有してもよい。また、ＲＡＩＤグループ１２０１，１２０４およびその他のストレージプール１２０が有するＲＡＩＤグループが設定されているＲＡＩＤの間で、有する記憶デバイスの個数が異なってもよい。
【００４１】
予備用記憶デバイス１２００ｅ，１２００ｆは、予備用の記憶デバイスであって、データを記憶可能な記憶領域を有し、通常時はいずれのＲＡＩＤにも属さず電源が投入されたまま待機している。予備用記憶デバイス１２００ｅ，１２００ｆは、ＲＡＩＤグループ１２０１のＲＡＩＤの記憶デバイスやその他のＲＡＩＤの記憶デバイスに障害が発生した場合には、障害が発生した記憶デバイスの代わりに障害が発生した記憶デバイスが属していたＲＡＩＤに組み入れられる。なお、これに限らず、予備用記憶デバイス１２００ｅ，１２００ｆは、電源が投入されていない状態で待機しており、使用の際に電源が投入されてもよい。
【００４２】
図４は、第２の実施の形態の構成管理テーブルを示す図である。図４に示す構成管理テーブル１５１ａ１は、ストレージ装置１００が有する構成管理情報記憶部１５１に記憶されており、ストレージ装置１００の構成管理部１０２によって管理される。構成管理テーブル１５１ａ１は、ストレージ装置１００が有するストレージプール１２０のＲＡＩＤの構成を示す構成管理情報を記憶するテーブルである。
【００４３】
構成管理テーブル１５１ａ１には、項目として“ＲＬＵ番号”、“ＬＵＮ”、“ＲＡＩＤ構成”、“構成デバイス”、“物理記憶容量”が設けられている。構成管理テーブル１５１ａ１において、各項目の横方向に並べられた情報同士が構成管理情報として互いに関連付けられている。
【００４４】
ＲＬＵ番号は、ストレージ装置１００に設定されているＲＡＩＤグループを一意に識別するために、各ＲＡＩＤグループに対して割り当てられた番号である。ＲＬＵ番号“１”は、本実施の形態のＲＡＩＤグループ１２０１（ＲＬＵ＃１）を示すものとする。同様に、ＲＬＵ番号“２”，“３”は、それぞれ本実施の形態のＲＡＩＤグループ１２０２（ＲＬＵ＃２）、ＲＡＩＤグループ１２０３（ＲＬＵ＃３）を示すものとする。
【００４５】
ＬＵＮ（Logical Unit Number）は、ＲＡＩＤグループの記憶領域を論理的に分割した一部を一意に識別するために割り当てられた番号である。
ＲＡＩＤ構成は、ＲＡＩＤグループが設定されているＲＡＩＤのＲＡＩＤ構成を示す。本実施の形態のストレージ装置１００では、ＲＡＩＤグループは、ＲＡＩＤ５方式で構成されているＲＡＩＤに設定されている。各ＲＡＩＤグループが設定されているＲＡＩＤは、予備用記憶デバイス１２００ｅ等を用いない通常時には、ＲＡＩＤ５（３＋１）（ＲＡＩＤ５であって、ストライプは３個のデータと１個のパリティデータを有する）で運用され、予備用記憶デバイス１２００ｅ等が追加されると、ＲＡＩＤ５（４＋１）（ＲＡＩＤ５であって、ストライプは４個のデータと１個のパリティデータを有する）で運用される。
【００４６】
なお、ＲＡＩＤグループは、これに限らず、例えばＲＡＩＤ６やＲＡＩＤ１＋０等、任意のＲＡＩＤ方式で構成したＲＡＩＤに設定することができる。また、ＲＡＩＤは、ＲＡＩＤ５（２＋１）やＲＡＩＤ５（７＋１）等、任意のストライプ構成で運用することができる。
【００４７】
構成デバイスは、ＲＡＩＤグループが設定されているＲＡＩＤを構成する記憶デバイスを示す。
物理記憶容量は、ＲＡＩＤグループの物理的な記憶容量を示す。物理記憶容量は、ホストコンピュータ３００から送信されたデータについての記憶可能なデータ量が示されている。ここで、本実施の形態では、各記憶デバイスの記憶容量は、１００ＧＢ（Giga Byte）とする。
【００４８】
図４に示した構成管理テーブル１５１ａ１は、図５において後述する通常時のストレージ装置１００のＲＡＩＤの構成を示している。各ＲＡＩＤグループは、構成管理テーブル１５１ａ１のＲＡＩＤ構成に示すように、３個のデータを記憶する記憶デバイスと１個のパリティデータを記憶する記憶デバイスに設定されている。また、各ＲＡＩＤグループは、構成管理テーブル１５１ａ１の構成デバイスに示すように、異なる４個の記憶デバイスに設定される。また、各ＲＡＩＤグループには、構成管理テーブル１５１ａ１の物理記憶容量に示すように、それぞれ３００ＧＢの物理記憶容量が割り当てられている。
【００４９】
図５は、第２の実施の形態の通常時のＲＡＩＤの構成を示す図である。本実施の形態のストレージ装置１００は、図５に示すようにホストコンピュータ３００と接続されており、ホストコンピュータ３００のデータアクセスを受け付けて、ホストコンピュータ３００から要求されたデータを送信し、ホストコンピュータ３００から送信されたデータを記憶する。また、ストレージ装置１００は、ストレージプール１２０の構成の変化を管理通知によりホストコンピュータ３００に通知する。これにより、ストレージプール１２０の構成に変化があった場合にも、ホストコンピュータ３００との間でデータの読み書きが可能である。
【００５０】
本実施の形態のストレージ装置１００は、図５に示すように、構成制御部１０１、構成管理部１０２、ストレージプール１２０、構成管理情報記憶部１５１を有する。ストレージプール１２０は、ＲＡＩＤグループ１２０１，１２０２，１２０３、予備用記憶デバイス１２００ｅ，１２００ｆを有する。
【００５１】
図５に示した時点では、ストレージ装置１００は、ストレージプール１２０の記憶容量に余裕が十分（例えば、ストレージプール１２０の全記憶容量に対して使用されている記憶容量は９０％未満）あるものとする。この場合、ＲＡＩＤグループ１２０１は、記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄに設定されると共に記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄによってＲＡＩＤ５（３＋１）が構成されている。ＲＡＩＤグループ１２０２，１２０３も同様に、それぞれ４個の記憶デバイスに設定されると共にこれらの記憶デバイスによりＲＡＩＤ５（３＋１）が構成されている。また、予備用記憶デバイス１２００ｅ，１２００ｆは、ホットスワップ（hot swap）として、電源が投入されており、ＲＡＩＤグループに追加され次第使用可能な状態で、記憶デバイスの故障に備えて待機している。
【００５２】
ここで、本実施の形態では、記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄ、ＲＡＩＤグループ１２０２，１２０３が設定されているその他の記憶デバイス、予備用記憶デバイス１２００ｅ，１２００ｆは、すべて１００ＧＢの記憶容量を有するものとする。
【００５３】
また、本実施の形態のストレージ装置１００は、ストレージプール１２０の空き記憶容量が少なくなった場合に、予備用記憶デバイス１２００ｅをＲＡＩＤグループが設定される記憶デバイスに追加することにより、ストレージプール１２０におけるＲＡＩＤグループの物理記憶容量を一時的に増加させることができる。
【００５４】
また、本実施の形態のストレージ装置１００は、構成制御部１０１によってストレージプール１２０のＲＡＩＤグループ１２０１〜１２０２の構成が制御される。また、構成制御部１０１による制御の結果、ＲＡＩＤグループ１２０１〜１２０３の構成が変更された場合には、構成管理部１０２によって構成管理情報記憶部１５１に記憶されている構成管理情報が更新される。
【００５５】
なお、本実施の形態では、記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄ、ＲＡＩＤグループ１２０２，１２０３が設定されているその他の記憶デバイス、予備用記憶デバイス１２００ｅ，１２００ｆは、すべて同一の記憶容量（１００ＧＢ）を有するが、これに限らず、記憶容量が異なる記憶デバイスが混在してもよい。
【００５６】
図６は、第２の実施の形態の予備用記憶デバイスの追加を示す図である。本実施の形態のストレージ装置１００は、ストレージプール１２０に書き込まれているデータが増加し、ストレージプール１２０の空き記憶容量が少なくなった場合に、予備用記憶デバイス１２００ｅを一時的にＲＡＩＤグループ１２０１が設定されているＲＡＩＤの記憶デバイスに追加してＲＡＩＤグループ１２０１を再構成することにより、ストレージプール１２０の稼働している物理的な記憶容量を増加させる。
【００５７】
以下に、図６に従って、本実施の形態のストレージ装置１００が予備用記憶デバイス１２００ｅをＲＡＩＤグループ１２０１が設定されているＲＡＩＤに追加して再構成することによりＲＡＩＤグループ１２０１の記憶容量を増加させる動作について説明する。
【００５８】
構成制御部１０１は、ホストコンピュータ３００によるデータの書き込みの要求を受け付けた場合において、ストレージプール１２０の空き容量が所定量未満となった場合、構成管理部１０２に対してストレージプール１２０に設定されている各ＲＡＩＤグループのデータ量を問い合わせる。構成管理部１０２は、構成制御部１０１による問い合わせに対して構成管理情報記憶部１５１に記憶されている構成管理情報を参照して各ＲＡＩＤグループのデータ量を取得し、構成制御部１０１に対して最も記憶容量を圧迫しているＲＡＩＤグループを通知する。このとき、最も記憶容量を圧迫しているＲＡＩＤグループとして、例えば、ＲＡＩＤグループの物理的な記憶容量に対して使用しているデータ量の比率が最大であるものを選択するとよい。ここでは、ＲＡＩＤグループ１２０１（ＲＬＵ＃１）が、ストレージプール１２０の記憶容量を最も圧迫しているものとする。
【００５９】
構成制御部１０１は、構成管理部１０２から最も記憶容量を圧迫しているＲＡＩＤグループとしてＲＡＩＤグループ１２０１が通知されると、ＲＡＩＤグループ１２０１が設定されているＲＡＩＤに対して予備用記憶デバイス１２００ｅを追加して，ＲＡＩＤ構成を変更する。これにより、ＲＡＩＤグループ１２０１が設定されているＲＡＩＤのＲＡＩＤ構成は、ＲＡＩＤ５（３＋１）からＲＡＩＤ５（４＋１）に変更される。これにより、ＲＡＩＤグループ１２０１の物理記憶容量は、予備用記憶デバイス１２００ｅの追加前の３００ＧＢから、追加後は４００ＧＢに増加し、新たに予備用記憶デバイス１２００ｅ分の１００ＧＢの余裕が発生する。また、これに伴い、ストレージプール１２０全体の記憶容量は、予備用記憶デバイス１２００ｅの追加前の９００ＧＢから、追加後は１０００ＧＢに増加する。
【００６０】
なお、本実施の形態では、最もストレージプール１２０の記憶容量を圧迫しているＲＡＩＤグループ１２０１のＲＡＩＤに予備用記憶デバイス１２００ｅを追加するが、これに限らず、各ＲＡＩＤグループの状況に応じて予備用記憶デバイス１２００ｅを追加するＲＡＩＤグループを選択してもよい。この場合、例えば、各ＲＡＩＤグループの物理的な最大記憶容量に対する記憶されているデータ量の比率を示す使用率が最も高いＲＡＩＤグループを、予備用記憶デバイス１２００ｅを追加するＲＡＩＤグループに選択してもよい。
【００６１】
また、本実施の形態では、ＲＡＩＤグループ１２０１のＲＡＩＤに対して予備用記憶デバイス１２００ｅを一時的に１個追加するが、これに限らず、予備用記憶デバイス１２００ｅ，１２００ｆ等を２個追加してもよく、さらにそれ以上の個数の記憶デバイスを追加してもよい。さらに、このように複数個の記憶デバイスを一時的に追加する場合、複数の異なるＲＡＩＤグループ（例えば、ＲＡＩＤグループ１２０１，１２０２にそれぞれ１個ずつ等）のＲＡＩＤに追加してもよい。この場合、例えば、ストレージプール１２０の記憶容量を圧迫している順に２個のＲＡＩＤグループの記憶容量が増加するように追加する等の、複数のＲＡＩＤグループを選択する基準を設定することにより、予備用記憶デバイス１２００ｅ，１２００ｆ等を追加して記憶容量を増加させるＲＡＩＤグループを選択してもよい。
【００６２】
図７は、第２の実施の形態のＲＡＩＤグループの追加を示す図である。
本実施の形態のストレージ装置１００は、図６において前述した予備用記憶デバイス１２００ｅを追加することにより記憶容量が増加したＲＡＩＤグループ１２０１が設定されている記憶デバイスに対して、新たなＲＡＩＤグループであるＲＬＵ＃４（図１２において後述するＲＡＩＤグループ１２０４）を追加して設定する。
【００６３】
以下に、図７に従って、本実施の形態のストレージ装置１００が、記憶容量が増加したＲＡＩＤグループ１２０１が設定されているＲＡＩＤの記憶デバイスにＲＬＵ＃４を追加する動作について説明する。
【００６４】
前述したようにストレージプール１２０のＲＡＩＤグループ１２０１は、記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄおよび追加された予備用記憶デバイス１２００ｅに設定されている。また、ＲＡＩＤグループ１２０１の構成は、４００ＧＢの記憶容量を有するＲＡＩＤ５（４＋１）となる。
【００６５】
これに対してＲＡＩＤグループ１２０１に設定されているＲＬＵ＃１は、３００ＧＢの記憶容量が設定されているので、ＲＡＩＤグループ１２０１は、１００ＧＢの空き容量を有することになる。
【００６６】
構成制御部１０１は、ＲＡＩＤグループ１２０１が設定されている記憶デバイスの１００ＧＢの空き容量に対して、新たに１００ＧＢの記憶容量を有するＲＬＵ＃４を設定する。すなわち、既存のＲＬＵ＃１が設定されたＲＡＩＤ５（４＋１）の冗長性を有するＲＡＩＤグループ１２０１に対して、新規にＲＬＵ#４が設定される。例えば、予備用記憶デバイス１２００ｅのみにＲＬＵ＃４が設定された場合において、予備用記憶デバイス１２００ｅが故障したときには、ＲＬＵ＃４のデータが破壊される可能性がある。これに対して、本実施の形態ではＲＡＩＤ５（４＋１）の冗長性を有するＲＡＩＤグループ１２０１に対して新規のＲＬＵ#４が設定されるので、ＲＬＵ＃４のデータの破壊を防止できる。
【００６７】
構成管理部１０２は、構成制御部１０１によるストレージプール１２０に対するＲＬＵ＃４の追加に基づいて、構成管理情報記憶部１５１に記憶されている構成管理情報を更新する。これにより、図８において後述するように、ストレージプール１２０の物理記憶容量の合計が、９００ＧＢから１０００ＧＢに変更される。
【００６８】
また、ストレージ装置１００は、ホストコンピュータ３００に対してＲＬＵ＃４の追加を報告する。これにより、ホストコンピュータ３００は、新たに追加されたＲＬＵ＃４に対してデータを読み書きすることが可能となり、使用可能な記憶容量が増加する。これにより、将来、例えば定期的なメンテナンス時等により記憶デバイスが増設されるまでの間、ストレージプール１２０の記憶容量を一時的に増加させることでストレージ装置１００の記憶容量不足を一時的に補うことができる。
【００６９】
また、予備用記憶デバイス１２００ｅの追加による記憶容量の増加分をＲＬＵ＃４の追加として設定することで、ホストコンピュータ３００が現在使用しているＲＡＩＤグループ（例えば、ＲＡＩＤグループ１２０１等）を変更することなく、新規にＲＡＩＤグループを追加するだけで対処が可能になる。
【００７０】
図８は、第２の実施の形態において予備用記憶デバイスが追加されると共にＲＡＩＤグループが追加された状態の構成管理テーブルを示す図である。図８に示した構成管理テーブル１５１ａ２は、図７において前述したように、ＲＡＩＤグループ１２０１が設定された記憶デバイスに予備用記憶デバイス１２００ｅが追加されると共に、ＲＬＵ＃４が追加された状態のストレージ装置１００のストレージプール１２０を示すように更新されている。このとき、ストレージ装置１００では、構成管理テーブル１５１ａ２のＲＬＵ番号および構成デバイスに示すように、ＲＡＩＤグループ１２０１に対して、ＲＬＵ＃１が設定されている記憶デバイス（構成管理テーブル１５１ａ２の構成デバイスａ，ｂ，ｃ，ｄ，ｅ）に対して、同時にＲＬＵ＃４が設定されている。ここで、構成管理テーブル１５１ａ２の構成デバイスａ，ｂ，ｃ，ｄは、記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄを示すものとする。また、構成管理テーブル１５１ａ２の構成デバイスｅは、予備用記憶デバイス１２００ｅを示すものとする。また、予備用記憶デバイス１２００ｅがＲＬＵ＃１が設定されている記憶デバイスに追加されたことにより、ＲＡＩＤグループ１２０１に記憶されるストライプは、構成管理テーブル１５１ａ２のＲＡＩＤ構成に示すように、４個のデータと１個のパリティデータとを有するように変更される。また、ＲＬＵ＃４には、構成管理テーブル１５１ａ２の物理記憶容量に示すように、ＲＡＩＤグループ１２０１に対する予備用記憶デバイス１２００ｅの追加による増加分である１００ＧＢの物理記憶容量が割り当てられている。
【００７１】
図９は、第２の実施の形態の記憶容量一時増加処理の手順を示すフローチャートである。本実施の形態のストレージ装置１００は、ストレージプール１２０の空き容量が所定量（例えば、ストレージプール１２０の現時点の最大記憶容量の１０％）以下になった場合に、予備用記憶デバイス１２００ｅをＲＡＩＤグループ１２０１に追加する記憶容量一時追加処理を実行する。以下では、図９に示す記憶容量一時増加処理をフローチャートのステップ番号に沿って説明する。
【００７２】
［ステップＳ１１］構成管理部１０２は、構成管理情報記憶部１５１に記憶されている構成管理情報を参照し、最もストレージプール１２０の記憶容量を圧迫しているＲＡＩＤグループを特定する。ここで、最もストレージプール１２０の記憶容量を圧迫しているＲＡＩＤグループは、例えば、最も使用している記憶容量が多いＲＡＩＤグループとすることができる。そして、構成管理部１０２は、特定したＲＡＩＤグループを構成制御部１０１に通知する。
【００７３】
［ステップＳ１２］構成制御部１０１は、ステップＳ１１で通知されたＲＡＩＤグループが設定されている記憶デバイスに予備用記憶デバイスを追加し、ＲＡＩＤを再構成する。
【００７４】
［ステップＳ１３］構成制御部１０１は、ＲＡＩＤを再構成した記憶デバイスに新たなＲＡＩＤグループを追加して設定する。ここで、新たに追加したＲＡＩＤグループにフォーマットが行われ、追加したＲＡＩＤグループにデータの読み書きが可能になる。これにより、ストレージプール１２０の物理的な記憶容量が増加する。このとき、ＲＡＩＤの再構成には、例えば、ＬＤＥ（Logical Device Expansion）を用いることができる。
【００７５】
［ステップＳ１４］構成管理部１０２は、ステップＳ１２およびステップＳ１３の処理に基づいて、構成管理情報記憶部１５１に記憶されている構成管理情報を更新する。これにより、ステップＳ１２による新たに追加したＲＡＩＤグループの追加および追加されたＲＡＩＤグループの状態、ストレージプール１２０の記憶容量の増加が構成管理情報に反映される。
【００７６】
なお、本実施の形態の記憶容量一時増加処理では、ステップＳ１２の処理およびステップＳ１３の処理が完了してからステップＳ１４でこれらの処理の結果に基づいて構成管理情報を更新するが、これに限らず、ステップＳ１２の処理およびステップＳ１３の処理のそれぞれが完了する都度、構成管理情報を更新してもよい。
【００７７】
図１０は、第２の実施の形態の追加したＲＡＩＤグループの増設された記憶デバイスへの移行を示す図である。本実施の形態では、図７において前述したＲＬＵ＃４をストレージプール１２０に追加したが、これによってはあくまでも追加された予備用記憶デバイス１２００ｅの記憶容量しか増加しないことから、ストレージ装置１００の記憶容量不足の根本的な解決には至らない場合もある。しかも、この間は本来予備である予備用記憶デバイス１２００ｅをＲＬＵ＃１（ＲＡＩＤグループ１２０１）およびＲＬＵ＃４に使用しているため、なるべく速やかに予備用記憶デバイス１２００ｅをＲＡＩＤから除外して、再びストレージプール１２０における記憶デバイスの冗長性を確保することが望ましい。
【００７８】
本実施の形態のストレージ装置１００は、図７において前述したＲＬＵ＃４を追加した後、記憶デバイスが増設された場合に、ＲＬＵ＃４を増設された記憶デバイスで構成されたＲＡＩＤに移行すると共に、予備用記憶デバイス１２００ｅをＲＡＩＤグループ１２０１が設定されている記憶デバイスから除外し、ＲＡＩＤグループ１２０１が設定されている記憶デバイスを再構成する。ここで、増設された記憶デバイスのＲＡＩＤ構成は、ＲＡＩＤ５（３＋１）であるものとする。
【００７９】
以下に、図１０に従って、本実施の形態のストレージ装置１００が、ＲＬＵ＃１と同一の記憶デバイスのＲＡＩＤに設定されているＲＬＵ＃４を増設された記憶デバイスに設定されているＲＡＩＤに移行する動作について説明する。
【００８０】
構成制御部１０１は、構成管理部１０２に構成管理情報記憶部１５１に記憶されている構成管理情報の問い合せを行い、ＲＬＵ＃１，＃４のデータの移行先および移行元の論理ブロックアドレス、物理アドレス、記憶デバイス構成等の、ＲＬＵ＃４の移行および図１１において後述するＲＬＵ＃１の再書き込みに使用する情報を取得する。
【００８１】
次に、構成制御部１０１は、問い合わせで得られた情報に基づいて、ＲＬＵ＃４のＲＬＵ＃４データ１０１４ａを先頭の論理ブロックアドレスから順に、ＲＬＵ＃４が設定されている５台の記憶デバイスから読み出し、読み出したＲＬＵ＃４データ１０１４ａを構成制御部１０１が有するバッファに記憶する。なお、読み出したデータのパリティデータは不要なので読み出さない。
【００８２】
ここで、予備用記憶デバイス１２００ｅが追加されているＲＬＵ＃１の構成はＲＡＩＤ５（４＋１）であり、ストライプは４個のデータを有する。一方、増設された記憶デバイスのＲＡＩＤの構成はＲＡＩＤ５（３＋１）であり、ストライプは３個のデータを有する。このように、ＲＡＩＤ＃４を記憶している移行元の記憶デバイスのＲＡＩＤと、移行先の記憶デバイスのＲＡＩＤとでＲＡＩＤの構成が異なる場合も生じ得る。本実施の形態では、このような場合に移行先のＲＡＩＤの構成に合わせて移行するＲＬＵ＃４のデータを再構成する。図１０の例では、１ストライプのデータが、移行元のＲＡＩＤにおける４個から移行先のＲＡＩＤにおける３個に変換される。
【００８３】
図１０では、説明の便宜上、３ストライプ分のデータの移行を行うものとするが、本実施の形態では、移行するデータのストライプ数は、２ストライプ以下であってもよく、３ストライプ以上であってもよい。
【００８４】
また、ＲＬＵ＃４データ１０１４ａの各ブロックは横方向同士で１ストライプのデータを示すものとする。ＲＬＵ＃４データ１０１４ａのＤ１〜Ｄ１２は、ＲＬＵ＃４データ１０１４ａが有するデータブロックであるものとする。また、ＲＬＵ＃４データ１０１４ａの各ブロックは縦方向同士で同一の記憶デバイスに記憶されるものとする。また、ＲＬＵ＃４データ１０１４ｂ，１０１４ｃも同様とする。図１０に示すように、ＲＬＵ＃４データ１０１４ａは、１ストライプにつき４個のデータを有する。
【００８５】
次に、構成制御部１０１は、ＲＬＵ＃４データ１０１４ａのＤ１〜Ｄ１２を、ＲＬＵ＃４データ１０１４ｂのように、各ストライプが３個のデータを有するように再区分する。このとき、３ストライプであったＲＬＵ＃４データ１０１４ａは、再区分によりＲＬＵ＃４データ１０１４ｂのように４ストライプとなる。
【００８６】
次に、構成制御部１０１は、ＲＬＵ＃４データ１０１４ｂの各ストライプについてパリティデータＰ１〜Ｐ４を生成し、生成したパリティデータＰ１〜Ｐ４のそれぞれを対応する各ストライプに含めることで、ＲＬＵ＃４データ１０１４ｃのように、１ストライプにつき３個のデータと１個のパリティデータを有する。このとき、パリティデータが１個の記憶デバイスに偏らないように、ストライプにおいて分散して配置されることにより、ストライプが再構成される。
【００８７】
次に、構成制御部１０１は、ＲＬＵ＃４データ１０１４ｃをストレージプール１２０に増設された記憶デバイスに書き込む。また、構成制御部１０１は、ＲＬＵ＃４のすべてのデータの移行が完了するまで上記の処理を繰り返す。
【００８８】
次に、構成制御部１０１は、増設された記憶デバイスに空き領域が有る場合、残りの空き領域についてフォーマットを行う。
図１１は、第２の実施の形態のデータ量が圧迫していたＲＡＩＤグループの記憶デバイスへの再書き込みを示す図である。本実施の形態のストレージ装置１００は、図１０において前述したＲＬＵ＃４を増設された記憶デバイスに移行した後、予備用記憶デバイス１２００ｅをＲＬＵ＃１（ＲＡＩＤグループ１２０１）が設定されている記憶デバイスから除外する。これにより、ＲＲＬＵ＃１が設定された記憶デバイスの構成は、ＲＡＩＤ５（４＋１）からＲＡＩＤ５（３＋１）に復元される。このとき、ストレージ装置１００は、ＲＬＵ＃１のストライプを、ＲＡＩＤ５（４＋１）のストライプから、ＲＡＩＤ５（３＋１）のストライプに再構成する。
【００８９】
以下に、図１１に従って、本実施の形態のストレージ装置１００が、ＲＡＩＤの構成が変更される記憶デバイスに設定されているＲＬＵ＃１のストライプを再構成するために、ＲＬＵ＃１のデータを一旦記憶デバイスから読み出し、読み出したデータについて再書き込みする動作について説明する。
【００９０】
構成制御部１０１は、図１０で前述した問い合わせで得られた情報に基づいて、ＲＬＵ＃１のＲＬＵ＃１データ１０１１ａを末尾の論理ブロックアドレスから順に、ＲＬＵ＃１が設定されている５台の記憶デバイス（記憶デバイス１２０１ａ〜１２０１ｄ、予備用記憶デバイス１２００ｅ）から読み出す。ＲＬＵ＃１データ１０１１ａを末尾の論理ブロックアドレスから順に読み出すのは、同一の記憶デバイスについて読み書きを行うので、未読み込みの記憶領域に対して再書き込みのデータを上書きしてしまうことによるデータの破壊を防止するためである。次に構成制御部１０１は、読み出したＲＬＵ＃１データ１０１１ａを構成制御部１０１が有するバッファに記憶する。なお、読み出したデータのパリティデータは不要なので読み出さない。
【００９１】
ここで、予備用記憶デバイス１２００ｅが追加されているＲＬＵ＃１が設定されている記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄおよび予備用記憶デバイス１２００ｅのＲＡＩＤ構成はＲＡＩＤ５（４＋１）であり、ストライプは４個のデータを有する。一方、予備用記憶デバイス１２００ｅが除外された後のＲＬＵ＃１が設定されている記憶デバイス１２０１ａ，１２０１ｂ，１２０１ｃ，１２０１ｄのＲＡＩＤ構成はＲＡＩＤ５（３＋１）であり、ストライプは３個のデータを有する。このように、再書き込み前と、再書き込み後とでＲＬＵ＃１が設定されている記憶デバイスのＲＡＩＤ構成が異なる。本実施の形態では、再書き込み前のＲＬＵ＃１のデータを、再書き込み後のＲＡＩＤ構成に合わせて再構成する。図１１の例では、１ストライプのデータが、再書き込み前における４個から再書き込み後における３個に変換される。
【００９２】
図１１では、図１０と同様、説明の便宜上、３ストライプ分のデータの再書き込みを行うものとするが、本実施の形態では、再書き込みするデータのストライプ数は、２ストライプ以下であってもよく、３ストライプ以上であってもよい。
【００９３】
また、ＲＬＵ＃１データ１０１１ａの各ブロックは横方向同士で１ストライプのデータを示すものとする。ＲＬＵ＃１データ１０１１ａのＤ２１〜Ｄ３２は、ＲＬＵ＃１データ１０１１ａが有するデータブロックであるものとする。また、ＲＬＵ＃１データ１０１１ａの各ブロックは縦方向同士で同一の記憶デバイスに記憶されるものとする。また、ＲＬＵ＃４データ１０１１ｂ，１０１１ｃも同様とする。図１１に示すように、ＲＬＵ＃４データ１０１１ａは、１ストライプにつき４個のデータを有する。
【００９４】
次に、構成制御部１０１は、ＲＬＵ＃１データ１０１１ａのＤ２１〜Ｄ３２を、ＲＬＵ＃１データ１０１１ｂのように、各ストライプが３個のデータを有するように再区分する。このとき、３ストライプであったＲＬＵ＃１データ１０１１ａは、再区分によりＲＬＵ＃１データ１０１１ｂのように４ストライプとなる。
【００９５】
次に、構成制御部１０１は、ＲＬＵ＃１データ１０１１ｂの各ストライプについてパリティデータＰ２１〜Ｐ２４を生成し、生成したパリティデータＰ２１〜Ｐ２４のそれぞれを対応する各ストライプに含めることで、ＲＬＵ＃１データ１０１１ｃのように、１ストライプにつき３個のデータと１個のパリティデータを有する。このとき、パリティデータが１個の記憶デバイスに偏らないように、ストライプにおいて分散して配置されることにより、ストライプが再構成される。
【００９６】
次に、構成制御部１０１は、ＲＬＵ＃１データ１０１１ｃを、再構成後のＲＬＵ＃１が設定される記憶デバイス１２０１ａ〜１２０１ｄに書き込む。また、構成制御部１０１は、ＲＬＵ＃１のすべてのデータの移行が完了するまで上記の処理を繰り返す。構成制御部１０１は、ＲＬＵ＃１の再書き込みが完了した場合、予備用記憶デバイス１２００ｅをＲＡＩＤから除外して待機させ、構成管理部１０２に対して、ＲＬＵ＃４の移行、ＲＬＵ＃１の再書き込みおよび予備用記憶デバイス１２００ｅの除外の完了を通知する。
【００９７】
次に、構成管理部１０２は、構成制御部１０１からの通知を受け取ると、通知に基づいて構成管理情報記憶部１５１に記憶されている構成管理情報を更新する。
図１２は、第２の実施の形態の記憶デバイスの増設後のＲＡＩＤの構成を示す図である。本実施の形態のストレージ装置１００は、図１２に示すように、構成制御部１０１、構成管理部１０２、ストレージプール１２０、構成管理情報記憶部１５１を有する。ストレージプール１２０は、ＲＡＩＤグループ１２０１，１２０２，１２０３、予備用記憶デバイス１２００ｅ，１２００ｆを有する。ＲＡＩＤグループ１２０１（ＲＬＵ＃１）は、記憶デバイス１２０１ａ〜１２０１ｄに設定されている。また、図１２では、ストレージプール１２０には、ＲＡＩＤグループ１２０４（ＲＬＵ＃４）が追加されている。ＲＡＩＤグループ１２０４は、記憶デバイス１２０４ｗ〜１２０４ｚに設定されている。
【００９８】
図１２に示すように、ストレージ装置１００において、ＲＡＩＤグループ１２０１〜１２０４が設定された記憶デバイスのＲＡＩＤ構成は、すべてＲＡＩＤ５（３＋１）である。また、予備用記憶デバイス１２００ｅ，１２００ｆは、図５と同様、ホットスワップとして、電源が投入されており、ＲＡＩＤグループが設定されているＲＡＩＤに追加され次第使用可能な状態で、記憶デバイスの故障に備えて待機している。このように、記憶デバイス１２０４ｗ，１２０４ｘ，１２０４ｙ，１２０４ｚの増設後は、予備用記憶デバイス１２００ｅ，１２００ｆの２台によってストレージ装置１００の冗長性が確保される。
【００９９】
ここで、データの再書き込みが行われたＲＡＩＤグループ１２０１のＲＡＩＤは、予備用記憶デバイス１２００ｅが除外され、記憶デバイスのＲＡＩＤ構成が図５と同一の状態に復元されている。
【０１００】
また、ストレージプール１２０に増設された記憶デバイス１２０４ｗ〜１２０４ｚには、ＲＡＩＤグループ１２０４が設定されている。また、ＲＡＩＤグループ１２０４では、記憶デバイス１２０４ｗ〜１２０４ｚの増設時に増加した記憶容量分が、初期化された空き領域であると共に、ＲＡＩＤグループ１２０４の論理的な空き領域となっている。
【０１０１】
なお、本実施の形態では、ＲＬＵ＃４の移行元の記憶デバイス１２０１ａ〜１２０１ｄおよび予備用記憶デバイス１２００ｅのＲＡＩＤ構成はＲＡＩＤ５（４＋１）であり、移行先の記憶デバイス１２０４ｗ〜１２０４ｚのＲＡＩＤ構成はＲＡＩＤ５（３＋１）であるが、これに限らず、移行元および移行先共に、任意のＲＡＩＤ構成とすることができる。
【０１０２】
図１３は、第２の実施の形態の記憶デバイスが増設された状態の構成管理テーブルを示す図である。図１３に示した構成管理テーブル１５１ａ３は、図１２において前述した記憶デバイス１２０４ｗ〜１２０４ｚが増設された状態のストレージ装置１００のＲＡＩＤの構成を示すように更新されている。このとき、ストレージ装置１００では、構成管理テーブル１５１ａ３のＲＬＵ番号およびＬＵＮに示すように、新たに増設された記憶デバイス１２０４ｗ，１２０４ｘ，１２０４ｙ，１２０４ｚ（それぞれ、構成管理テーブル１５１ａ３の構成デバイスｗ，ｘ，ｙ，ｚ）に対して、ＲＬＵ＃４が設定されている。また、ＲＬＵ＃１が設定されている記憶デバイスが、予備用記憶デバイス１２００ｅが除外された構成に復元されたことにより、構成管理テーブル１５１ａ３のＲＡＩＤ構成および構成デバイスに示すように、ＲＬＵ＃１のストライプは、３個のデータと１個のパリティデータとを有する。また、構成管理テーブル１５１ａ３のＲＡＩＤ構成および構成デバイスに示すように、ＲＬＵ＃４のストライプは、３個のデータと１個のパリティデータとを有する。また、ＲＬＵ＃４には、構成管理テーブル１５１ａ３の物理記憶容量に示すように、増設された記憶デバイス１２０４ｗ，１２０４ｘ，１２０４ｙ，１２０４ｚで構成されるＲＡＩＤ５（３＋１）の物理的な記憶容量である３００ＧＢの物理記憶容量が割り当てられている。これにより、ストレージプール１２０の物理記憶容量が増加する。
【０１０３】
図１４から図１７は、第２の実施の形態の記憶デバイス増設処理の手順を示すフローチャートである。本実施の形態のストレージ装置１００は、ストレージプール１２０に新たなＲＡＩＤを構成可能な記憶デバイスが増設された場合に、ＲＡＩＤグループ１２０１を再構成すると共に、ＲＡＩＤグループ１２０４を、増設された記憶デバイスで構成されたＲＡＩＤに移行する記憶デバイス増設処理を実行する。以下では、図１４から図１７に示す記憶デバイス増設処理をフローチャートのステップ番号に沿って説明する。
【０１０４】
［ステップＳ２１］構成管理部１０２は、構成管理情報記憶部１５１に記憶されている構成管理情報を取得する。
［ステップＳ２２］構成制御部１０１は、ステップＳ２１で取得した構成管理情報に基づいて、記憶容量一時増加処理で追加されたＲＡＩＤグループ１２０４のデータを、ＲＡＩＤグループ１２０１から読み出す。
【０１０５】
［ステップＳ２３］構成制御部１０１は、ストレージプール１２０に増設された記憶デバイス１２０４ｗ〜１２０４ｚで構成されるＲＡＩＤ構成（例えば、ＲＡＩＤ５（３＋１）：４台の記憶デバイスを有する。記憶されるストライプは、３個のデータと１個のパリティデータを有する）に応じて、ステップＳ２２で読み出したＲＡＩＤグループ１２０４のデータを１ストライプ分（例えば、３個）毎に再区分する。
【０１０６】
［ステップＳ２４］構成制御部１０１は、ステップＳ２３で再区分したＲＡＩＤグループ１２０４のデータについてパリティデータを生成する。
［ステップＳ２５］構成制御部１０１は、ステップＳ２３で再区分したデータおよびステップＳ２４で生成したパリティデータから、増設された記憶デバイス１２０４ｗ〜１２０４ｚに書き込むＲＡＩＤグループ１２０４のストライプのデータを再構成する。
【０１０７】
［ステップＳ２６］構成制御部１０１は、ステップＳ２５で再構成したＲＡＩＤグループ１２０４のストライプのデータを、記憶デバイス１２０４ｗ〜１２０４ｚで構成されたＲＡＩＤに移行する。このとき構成制御部１０１は、ＲＡＩＤグループ１２０４のストライプのデータを記憶デバイス１２０４ｗ〜１２０４ｚで構成されたＲＡＩＤの記憶領域の先頭のアドレスから順に書き込むと共に、記憶デバイス１２０１ａ〜１２０１ｄおよび予備用記憶デバイス１２００ｅから読み出したＲＡＩＤグループ１２０４のストライプのデータを削除する。
【０１０８】
［ステップＳ２７］構成制御部１０１は、ＲＡＩＤグループ１２０４のすべてのデータの記憶デバイス１２０４ｗ〜１２０４ｚで構成されたＲＡＩＤへの移行が完了したか否かについて判定する。すべてのデータの移行が完了していれば（ステップＳ２７  ＹＥＳ）、処理はステップＳ３１（図１５）に進められる。一方、すべてのデータの移行が完了していなければ（ステップＳ２７  ＮＯ）、処理はステップＳ２２に進められる。
【０１０９】
［ステップＳ３１］構成制御部１０１は、増設された記憶デバイス１２０４ｗ〜１２０４ｚで構成されたＲＡＩＤの残りの領域をフォーマットし、ＬＵＮを設定する。その後、処理はステップＳ４１（図１６）に進められる。これにより、記憶デバイス１２０４ｗ〜１２０４ｚで構成されたＲＡＩＤにおいて、ＲＡＩＤグループ１２０４で使用される領域以外の領域についてもデータの読み書きが可能になる。
【０１１０】
［ステップＳ４１］構成制御部１０１は、ステップＳ２１で取得した構成管理情報に基づいて、記憶容量一時増加処理でストレージプール１２０の記憶容量を圧迫しているとされたＲＡＩＤグループ１２０１のデータを読み出す。
【０１１１】
［ステップＳ４２］構成制御部１０１は、予備用記憶デバイス１２００ｅを除外して構成を復元する記憶デバイス（記憶デバイス１２０１ａ〜１２０１ｄ）のＲＡＩＤ構成に応じて、ステップＳ４１で読み出したＲＡＩＤグループ１２０１のデータを１ストライプ分毎に再区分する。
【０１１２】
［ステップＳ４３］構成制御部１０１は、ステップＳ４２で再区分したＲＡＩＤグループ１２０１のデータについてパリティデータを生成する。
［ステップＳ４４］構成制御部１０１は、ステップＳ４２で再区分したデータおよびステップＳ４３で生成したパリティデータから、ＲＡＩＤ構成を復元する記憶デバイスに書き込むＲＡＩＤグループ１２０１のストライプのデータを再構成する。
【０１１３】
［ステップＳ４５］構成制御部１０１は、ステップＳ４４で再構成したＲＡＩＤグループ１２０１のストライプのデータを、ＲＡＩＤ構成を復元する記憶デバイスに再び書き込む再書き込みを行う。このとき構成制御部１０１は、ＲＡＩＤグループ１２０１のストライプのデータを、ＲＡＩＤ構成を復元する記憶デバイスの末尾のアドレスから順に書き込む。
【０１１４】
［ステップＳ４６］構成制御部１０１は、ＲＡＩＤグループ１２０１のすべてのデータの再書き込みが完了したか否かについて判定する。すべてのデータの再書き込みが完了していれば（ステップＳ４６  ＹＥＳ）、処理はステップＳ５１（図１７）に進められる。一方、すべてのデータの再書き込みが完了していなければ（ステップＳ４６  ＮＯ）、処理はステップＳ４１に進められる。
【０１１５】
［ステップＳ５１］構成制御部１０１は、ＲＡＩＤグループ１２０１に設定されている予備用記憶デバイス１２００ｅを除外して、ＲＡＩＤグループ１２０１に設定されている記憶デバイス（記憶デバイス１２０１ａ〜１２０１ｄ）のＲＡＩＤ構成をＲＡＩＤ５（３＋１）に復元する。
【０１１６】
［ステップＳ５２］構成制御部１０１は、ステップＳ５１で除外した予備用記憶デバイス１２００ｅを予備に設定する。
［ステップＳ５３］構成管理部１０２は、構成管理情報記憶部１５１に記憶されている構成管理情報を更新する。その後、処理は終了する。これにより、記憶デバイス増設処理の実行に伴うＲＡＩＤグループ１２０１，１２０４のＬＵＮ、ＲＡＩＤ構成、ＲＡＩＤを構成する記憶デバイス、物理記憶容量の変化が構成管理情報に反映される。
【０１１７】
なお、本実施の形態の記憶デバイス増加処理では、ステップＳ２２〜Ｓ２７の処理、ステップＳ３１の処理およびステップＳ４１〜Ｓ５２の処理が完了してからステップＳ５３でこれらの処理の結果に基づいて構成管理情報を更新するが、これに限らず、ステップＳ２２〜Ｓ２７の処理、ステップＳ３１の処理およびステップＳ４１〜Ｓ５２の処理のそれぞれが完了する都度、構成管理情報を更新してもよい。
【０１１８】
ここで、一般的に、ＲＡＩＤグループが設定されている記憶デバイスに障害が発生していない場合には、ＲＡＩＤ５（３＋１）よりもＲＡＩＤ５（４＋１）の方が、ストライプの構成が１台分多いため、記憶デバイス１台当たりの記憶容量が多い。しかし、ＲＡＩＤ５（４＋１）よりもＲＡＩＤ５（３＋１）の方が、パリティデータに対するＲＡＩＤグループに設定されている記憶デバイスの数が少ないため、信頼性が高い。
【０１１９】
また、ＲＡＩＤグループが設定されている記憶デバイスの障害の発生時にパリティデータを使用してデータを復元するリビルド処理中には、ストレージ装置１００の処理速度が低下する場合がある。これに対して、ＲＡＩＤ５（４＋１）よりもＲＡＩＤ５（３＋１）の方が、一般的にリビルド処理の負荷が少ないので、リビルド処理の時間が比較的短くなり、ストレージ装置１００の処理速度が低下する時間も短い場合がある。また、予備用記憶デバイスをＲＡＩＤグループの設定に追加してデータの読み書きに使用している場合に比較して、予備用記憶デバイスをＲＡＩＤグループに設定せず除外されている場合の方が、予備用記憶デバイスの台数が多いのでストレージプール１２０の冗長性が高く、ストレージ装置１００の信頼性が向上する。
【０１２０】
これらにより、本実施の形態では、リビルド性能・安全性の観点からも、新しい記憶デバイスが交換・増設された後、速やかにＲＡＩＤグループ１２０１が設定されているＲＡＩＤ構成の復元を実行するとよい。
【０１２１】
このように、第２の実施の形態のストレージ装置１００では、ストレージプール１２０の記憶容量の余裕が減少してきた場合に、ストレージ装置１００に記憶デバイスが増設されるまでの間、予備用記憶デバイス１２００ｅを使用して一時的にストレージプール１２０の記憶容量を増加させる。また、ストレージプール１２０に記憶デバイスが増設されたときには、予備用記憶デバイス１２００ｅをＲＡＩＤグループ１２０１から除外して予備に戻すと共に、予備用記憶デバイス１２００ｅの使用により増加していた記憶領域に記憶されていたＲＡＩＤグループ１２０４のデータを、増設された記憶デバイスで構成されたＲＡＩＤに移行する。これにより、ストレージ装置１００に対する記憶デバイスの増設や交換の頻度の増加を抑制することが可能となる。
【０１２２】
また、本実施の形態では、予備用記憶デバイス１２００ｅをストレージプール１２０に追加して使用可能である。これにより、ストレージプール１２０の記憶容量の余裕が少なくなり、かつ、早期に記憶デバイスの増設や交換ができない場合にも、ストレージプール１２０に記憶デバイスの増設や大容量の記憶デバイスへの交換を行うまでの間、一時的にストレージプール１２０の記憶容量を増加させることが可能となる。
【０１２３】
また、ストレージプール１２０に記憶デバイスが増設または交換され、新たな記憶デバイスにＲＡＩＤグループ１２０４が設定された後は、予備用記憶デバイス１２００ｅをＲＡＩＤグループ１２０１から除外し、予備に戻して待機させる。これにより、ストレージプール１２０の記憶デバイスの冗長性が確保されるので、予備用記憶デバイス１２００ｅを使用している状態に比較してストレージ装置１００の信頼性が向上する。
【０１２４】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、ストレージ装置１００が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリ等がある。磁気記録装置には、ハードディスク装置、フレキシブルディスク（ＦＤ）、磁気テープ（ＭＴ）等がある。光ディスクには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc − Read Only Memory）、ＣＤ−Ｒ（Recordable）、ＣＤ−ＲＷ（ReWritable）等がある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）等がある。
【０１２５】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１２６】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１２７】
また、上記の処理機能の少なくとも一部を、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＰＬＤ（Programmable Logic Device）などの電子回路で実現することもできる。
【０１２８】
以上説明した第１の実施の形態、第２の実施の形態に関し、さらに以下の付記を開示する。
（付記１）  複数の記憶媒体を有するＲＡＩＤに設定された論理記憶領域にデータを記憶すると共に、ＲＡＩＤに属さない予備用記憶媒体を有するストレージ装置において、
第１のＲＡＩＤに前記予備用記憶媒体を追加すると共に論理記憶領域を追加し、記憶媒体が増設された場合には、前記第１のＲＡＩＤに追加した予備用記憶媒体を除外すると共に前記増設された記憶媒体を有する第２のＲＡＩＤを設定し、前記追加した論理記憶領域を前記設定した第２のＲＡＩＤに移行させる構成制御部を有することを特徴とするストレージ装置。
【０１２９】
（付記２）  前記構成制御部は、前記第１のＲＡＩＤから前記追加した論理記憶領域のデータを読み出し、前記第２のＲＡＩＤのＲＡＩＤ構成に応じて前記追加した論理記憶領域のデータと前記データのパリティデータとを有するストライプを再構成し、前記再構成したストライプを前記第２のＲＡＩＤに書き込むことにより、前記追加した論理記憶領域を前記第２のＲＡＩＤに移行させることを特徴とする付記１記載のストレージ装置。
【０１３０】
（付記３）  前記構成制御部は、前記追加した論理記憶領域のデータを前記第２のＲＡＩＤに移行させる際に、前記追加した論理記憶領域のアドレスの先頭から順に前記第２のＲＡＩＤの論理記憶領域に書き込むことを特徴とする付記１記載のストレージ装置。
【０１３１】
（付記４）  前記構成制御部は、前記予備用記憶媒体を前記第１のＲＡＩＤから除外する際には、前記予備用記憶媒体の除外前の第１のＲＡＩＤから、前記追加した論理記憶領域が追加される以前から前記第１のＲＡＩＤが有する論理記憶領域のデータを読み出し、前記予備用記憶媒体の除外後の前記第１のＲＡＩＤのＲＡＩＤ構成に応じて前記第１のＲＡＩＤに設定されていた論理記憶領域のデータと前記データのパリティデータとを有するストライプを再構成し、前記再構成したストライプを前記予備用記憶媒体の除外後の第１のＲＡＩＤに書き込むことを特徴とする付記１記載のストレージ装置。
【０１３２】
（付記５）  前記構成制御部は、前記予備用記憶媒体を前記第１のＲＡＩＤから除外する際には、前記追加した論理記憶領域が追加される以前から前記第１のＲＡＩＤが有する論理記憶領域をアドレスの末尾から順に前記予備用記憶媒体の除外後の第１のＲＡＩＤに書き込むことを特徴とする付記４記載のストレージ装置。
【０１３３】
（付記６）  前記構成制御部は、空き記憶容量が所定量未満となった場合に、前記予備用記憶媒体を前記第１のＲＡＩＤに追加することを特徴とする付記１記載のストレージ装置。
【０１３４】
（付記７）  複数の記憶媒体を有するＲＡＩＤを複数有し、各ＲＡＩＤに設定された論理記憶領域にデータを記憶すると共に、いずれのＲＡＩＤにも属さない予備用記憶媒体を有するストレージ装置において、
各論理記憶領域の記憶容量を示す構成管理情報を記憶する構成管理情報記憶部と、
要求に応じて前記構成管理情報記憶部に記憶されている前記構成管理情報を取得し、取得した前記構成管理情報に基づき最も記憶容量を圧迫している論理記憶領域を特定し、前記特定した論理記憶領域を通知する構成管理部と、
前記構成管理部に要求を行い、前記最も記憶容量を圧迫している論理記憶領域の通知を受けると、前記通知された論理記憶領域が設定されている第１のＲＡＩＤに前記予備用記憶媒体を追加すると共に論理記憶領域を追加し、記憶媒体が増設された場合には、前記通知された論理記憶領域が設定されている第１のＲＡＩＤに追加した予備用記憶媒体を除外すると共に前記追加した論理記憶領域を前記増設された記憶媒体に設定された第２のＲＡＩＤに移行させる構成制御部と、
を有することを特徴とするストレージ装置。
【０１３５】
（付記８）  複数の記憶媒体を有するＲＡＩＤに設定された論理記憶領域にデータを記憶すると共に、ＲＡＩＤに属さない予備用記憶媒体を有するストレージ装置を制御するストレージ装置制御プログラムにおいて、
コンピュータを、
第１のＲＡＩＤに前記予備用記憶媒体を追加すると共に論理記憶領域を追加し、記憶媒体が増設された場合には、前記第１のＲＡＩＤに追加した予備用記憶媒体を除外すると共に前記増設された記憶媒体を有する第２のＲＡＩＤを設定し、前記追加した論理記憶領域を前記設定した第２のＲＡＩＤに移行させる構成制御部として機能させることを特徴とするストレージ装置制御プログラム。
【０１３６】
（付記９）  複数の記憶媒体を有するＲＡＩＤに設定された論理記憶領域にデータを記憶すると共に、ＲＡＩＤに属さない予備用記憶媒体を有するストレージ装置を制御するストレージ装置制御方法において、
第１のＲＡＩＤに前記予備用記憶媒体を追加すると共に論理記憶領域を追加し、
記憶媒体が増設された場合には、前記第１のＲＡＩＤに追加した予備用記憶媒体を除外すると共に前記増設された記憶媒体を有する第２のＲＡＩＤを設定し、前記追加した論理記憶領域を前記設定した第２のＲＡＩＤに移行させる、
ことを特徴とするストレージ装置制御方法。
【符号の説明】
【０１３７】
１  ストレージ装置
１ａ  構成制御部
１ｂ  ストレージプール
１ｂ１，１ｂ２  ＲＡＩＤ
１ｂ１０  予備用記憶媒体
１ｂ１１，１ｂ１２，１ｂ１３，１ｂ１４  記憶媒体
【図１】
0005640463.tif 000002
【図２】
0005640463.tif 000003
【図３】
0005640463.tif 000004
【図４】
0005640463.tif 000005
【図５】
0005640463.tif 000006
【図６】
0005640463.tif 000007
【図７】
0005640463.tif 000008
【図８】
0005640463.tif 000009
【図９】
0005640463.tif 000010
【図１０】
0005640463.tif 000011
【図１１】
0005640463.tif 000012
【図１２】
0005640463.tif 000013
【図１３】
0005640463.tif 000014
【図１４】
0005640463.tif 000015
【図１５】
0005640463.tif 000016
【図１６】
0005640463.tif 000017
【図１７】
0005640463.tif 000018