(57)【要約】【課題】  パリティディスクを追加することにより、ディスクアレイ装置の運用中に、ひとつのＲＡＩＤグループを複数のＲＡＩＤグループに分割できるようにすること。【解決手段】  分割対象のＲＡＩＤグループ、及び分割位置を指定し、分割後のＲＡＩＤグループをパリティディスクのない縮退状態として作成する。ＲＡＩＤ再構成制御部２ｄは、分割後のＲＡＩＤグループの再構成を開始し、通常のＲＡＩＤにおけるリコンストラクションの仕組みにより任意のスペアディスクＨＤＤ（ｓ）よりパリティディスクＨＤＤ（ｐ）を選択する。そして、分割されたＲＡＩＤグループのパリティを作成し、パリティディスクＨＤＤ（ｐ）に格納する。ついで、各データディスクから、分割元のＲＡＩＤグループに所属するための識別情報を削除し、元のＲＡＩＤグループを削除する。分割元のＲＡＩＤグループのパリティディスクはスペアディスクとなる。【選択図】          図１
2005332123.tif 000002
【特許請求の範囲】
【請求項１】
パリティデータを格納する１台のパリティディスクと、データを格納するｎ台（ｎは正の整数）のデータディスクと、少なくともｉ（ｉは正の整数、ｉ＜ｎ）台のスペアディスクとからなる複数台のディスクと、ディスク制御部を備え、データを上記ｎ台のデータディスクに分配して書き込むとともに、分配された複数のデータから冗長データを生成して、該冗長データを上記パリティディスクに書き込むディスクアレイ装置であって、
上記ディスク制御部はグループ分割手段を備え、
上記グループ分割手段は、上記ｎ台のデータディスクをｉ（ｉは正の整数、ｉ＜ｎ）群のグループに分割し、分割された各グループに、それぞれ上記スペアディスクを１台ずつ対応させ、
上記グループに分割された１〜ｉ群のデータディスクと上記各スペアディスクとで、１〜ｉ番目のグループを作成し、
上記第１〜ｉ番目のグループを作成後、各データディスクから分割前のグループの識別情報を削除する
ことを特徴とするディスクアレイ装置。
【請求項２】
パリティデータを格納する１台のパリティディスクと、データを格納するｎ台（ｎは正の整数）のデータディスクと、少なくともｉ（ｉは正の整数、ｉ＜ｎ）台のスペアディスクとからなる複数台のディスクとから構成される複数台のディスクを備え、データを上記ｎ台のデータディスクに分配して書き込むとともに、分配された複数のデータから冗長データを生成して、該冗長データを上記パリティディスクに書き込むディスクアレイ装置のグループ分割方法であって、
上記ｎ台のデータディスクをｉ群のグループに分割し、分割された各グループに、それぞれ上記スペアディスクを１台ずつ対応させ、
上記グループに分割された１〜ｉ群のデータディスクと上記各スペアディスクとで、１〜ｉ番目のグループを作成し、
上記第１〜ｉ番目のグループを作成後、各データディスクから分割前のグループの識別情報を削除する
ことを特徴とするディスクアレイ装置におけるグループ分割方法。
【請求項３】
パリティデータを格納する１台のパリティディスクと、データを格納するｎ台（ｎは正の整数）のデータディスク、少なくともｉ（ｉは正の整数、ｉ＜ｎ）台のスペアディスクとからなる複数台のディスクとから構成される複数台のディスクを備え、データを上記ｎ台のデータディスクに分配して書き込むとともに、分配された複数のデータから冗長データを生成して、該冗長データを上記パリティディスクに書き込むディスクアレイ装置のグループ分割プログラムであって、
上記プログラムは、上記ｎ台のデータディスクをｉ（ｉは正の整数、ｉ＜ｎ）群のグループに分割し、分割された各グループに、それぞれ上記スペアディスクを１台ずつ対応させる処理と、
上記グループに分割された１〜ｉ群のデータディスクと上記各スペアディスクとで、１〜ｉ番目のグループを作成する処理と、
上記第１〜ｉ番目のグループを作成後、各データディスクから分割前のグループの識別情報を削除する処理をコンピュータに実行させる
ことを特徴とするディスクアレイ装置におけるグループ分割プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のディスク装置から構成され、ディスク故障時の修復機能を備えたディスクアレイ装置およびディスクアレイ装置におけるグループ分割方法に関する。
【背景技術】
【０００２】
近年、計算機システムの外部記憶装置として、小型ディスク装置を複数台並べ、これらに分散してデータを記録して、並列的にアクセスするディスクアレイ装置が実用化されている。
ディスクアレイ装置は、データの冗長化方法により、ＲＡＩＤ０〜ＲＡＩＤ５までの６段階に分類される（ＲＡＩＤ：Redundant Array of Inexpensive Disks）。
図８にＲＡＩＤ４のシステムの概略構成を示す。
データは同図のＡ０，Ａ２，…に示すように複数に分配され、分配されたデータａ０，ａ２，…はそれぞれデータ用ディスク装置ＨＤＤ（０），ＨＤＤ（１），…に分散して格納され、パリティは一つの専用ディスクＨＤＤ（ｐ）に格納される。
パリティは分配されて異なったディスクに格納されたデータから計算され、ディスクに異常が発生した場合、ディスク上のデータは、残りの同一グループデータとパリティから再生される。
ＲＡＩＤ３のディスクアレイ装置も上記ＲＡＩＤ４の構成と同様であるが、ＲＡＩＤ３では、データの分散をブロック単位ではなく、ビットまたはバイト単位で行なう。
【０００３】
上記ディスクアレイ装置において、予備のディスクを設けディスク故障時に対処したり、ディスクを追加してディスクの構成を変更し、ディスクの記憶容量を拡張する技術が種々提案されている。
例えば、特許文献１には、データディスク故障時用の予備のディスクを設け、データディスクの故障時に上記予備ディスクを利用してデータの復元を図る技術が提案されている。また、特許文献２には、ディスクを追加して、動的に記憶容量を拡張する技術が提案されている。さらに、特許文献３には、ディスクの増設を可能とし、ディスクシステムを停止させることなく、ＲＡＩＤの構成を変更するようにした技術が提案されている。
【特許文献１】特開平１０−１１１７６７号公報
【特許文献２】特開２００３−２２３２８４号公報
【特許文献３】特開平８−３３５１４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、上記ディスクアレイ装置においては、ＲＡＩＤのサイズが大きくなると、冗長度が低くなり、ディスク二本故障によるデータ損失の可能性が高まる。すなわち、ディスク容量を増加させるため、ディスクを追加してディスク容量を増加させると、それに応じて装置の信頼性が低下することになる。
従来においては、上記のようにディスクを追加して、ディスクの記憶容量を拡張することはできるものの、ディスクアレイ装置のＲＡＩＤサイズを単純に縮小させることはできなかった。このため、上記のようにディスクを追加してディスク容量を増加させることにより、システムの信頼性が低下しても、これに対処することは出来なかった。
本発明は上記事情に鑑みなされたものであって、パリティディスクを追加することにより、ディスクアレイ装置の運用中に、ひとつのＲＡＩＤグループを複数のＲＡＩＤグループに分割することが可能なディスクアレイ装置およびディスクアレイ装置におけるディスクグループの分割方法を提供すること目的とする。
【課題を解決するための手段】
【０００５】
本発明は、前記パリティデータを格納する１台のパリティディスクと、データを格納するｎ台（ｎは正の整数）のデータディスクと、少なくともｉ（ｉは正の整数、ｉ＜ｎ）台のスペアディスクとからなる複数台のディスクとから構成される複数台のディスクを備え、データを上記ｎ台のデータディスクに分配して書き込むとともに、分配された複数のデータから冗長データを生成して、該冗長データを上記パリティディスクに書き込むＲＡＩＤ３、ＲＡＩＤ４のディスクアレイ装置において、以下のようにしてＲＡＩＤグループを分割する。
（ａ）上記ｎ台のデータディスクをｉ群のグループに分割し、分割された各グループに、それぞれ上記スペアディスクを１台ずつ対応させる。
（ｂ）上記グループに分割された１〜ｉ群のデータディスクと上記各スペアディスクとで、１〜ｉ番目のグループを作成する。
（ｃ）上記第１〜ｉ番目のグループを作成後、各データディスクから分割前のグループの識別情報を削除する。
本発明では、上記のように（ｎ＋１）本より構成される１つのＲＡＩＤグループを、パリティディスクを追加することにより、動的に２以上のＲＡＩＤグループに分割することができる。
【発明の効果】
【０００６】
本発明においては、上記のように動的に１つのＲＡＩＤグループを複数のＲＡＩＤグループに分割することができるので、ＲＡＩＤサイズを縮小することができ、ディスク二本故障の可能性を低く抑えることができる。  
また、ディスクアレイ装置を運用しながら、ＲＡＩＤグループの分割が可能であり、システムの運用を停止させる必要がない。
【発明を実施するための最良の形態】
【０００７】
以下、本発明をＲＡＩＤ４のディスクアレイ装置に適用する場合について説明するが、本発明はＲＡＩＤ３のディスクアレイ装置にも同様に適用することができる。
図１は本発明の実施例のディスクアレイ装置の機能構成を示すブロック図である。
本実施例のディスクアレイ装置は、上位装置であるホストコンピュータ１に接続されたディスクアレイ制御装置２と、該ディスクアレイ制御装置２により制御されるディスク群３から構成される。ディスク群３は複数のディスクからなり、これらのディスクは、前記図８（ｂ）に示したようにデータを格納するデータディスクＨＤＤ（１）〜ＨＤＤ（ｎ）と、パリティデータを格納するパリティディスクＨＤＤ（ｐ）と、予備ディスクであるスペアディスクＨＤＤ（ｓ）から構成され、データを上記複数台のデータディスクに分配して書き込むとともに、分配された複数のデータから冗長データを生成して、該冗長データを上記パリティディスクに書き込む。
ディスクアレイ制御装置２は、ホストコンピュータ１と接続されたホスト入出力制御部２１と、ＲＡＩＤグループ分割制御部２２と、データ入出力制御部２３と、ＲＡＩＤサブシステム制御部２４と、ディスク入出力制御部２５からなる。
【０００８】
ＲＡＩＤサブシステム制御部２４は、ＲＡＩＤグループ定義部２ａと、ディスク群３へのデータの書き込みを制御するデータ書き込み制御部２ｂと、ディスク群３からデータの読み込みを制御するデータ読み込み制御部２ｃと、上記ＲＡＩＤグループ定義部２ａにより新たにＲＡＩＤグループが定義されたときＲＡＩＤグループを再構成するＲＡＩＤ再構成制御部２ｄと、上記パリティディスクのパリティデータを更新するＲＡＩＤパリティ更新制御部２ｅから構成される。
上記ディスクアレイ制御装置２は、例えばＣＰＵとメモリ等から構成することができ、上記各機能はソフトウェア等により実現することができる。
【０００９】
図２は、本実施例のＲＡＩＤグループ分割処理を示すフローチャートである。また図３はデータディスクＨＤＤ（１）〜ＨＤＤ（ｎ）と、パリティディスクＨＤＤ（ｐ）と、スペアディスクＨＤＤ（ｓ）から構成されるＲＡＩＤグループ１を、２つのＲＡＩＤグループ２，３に分割する場合の分割前のデータおよびパリティの配置と分割後のデータおよびパリティの配置を示す図である。
分割前には、例えば同図（ａ）に示すように、データディスクＨＤＤ（１）〜ＨＤＤ（ｎ）とパリティディスクＨＤＤ（ｐ）とでＲＡＩＤグループ１が構成されている。また、複数台のスペアディスクＨＤＤ（ｓ）が用意されている。
各データディスクＨＤＤ（１）〜ＨＤＤ（ｎ）は、ＲＡＩＤグループに所属するための識別情報を有する。なお、各データディスクＨＤＤ（１）〜ＨＤＤ（ｎ）が複数のＲＡＩＤグループに属している場合、データの更新は対応する複数のパリティディスクの更新を要する。
このＲＡＩＤグループ１に対して、以下に説明する分割処理をすることにより、上記スペアディスクＨＤＤ（ｓ）がパリティディスクとして追加され、例えば同図（ｂ）に示すようにＲＡＩＤ２、ＲＡＩＤ３の２つのＲＡＩＤグループに分割される。
【００１０】
図４〜図７は、図３の例におけるＲＡＩＤグループの分割処理手順を説明する図であり、以下、図４〜図７を参照しながら、図２のフローチャートについて説明する。
図２において、まず、分割対象のＲＡＩＤグループ、及び分割位置を指定する（ステップＳ１）。例えば図４では、ＨＤＤ（１）〜ＨＤＤ（ｍ）とＨＤＤ（ｍ＋１）〜ＨＤＤ（ｎ）の間を分割位置として指定する。
上記のように分割対象のＲＡＩＤグループ、及び分割位置を指定することで、ＲＡＩＤグループ分割制御部２２によりＲＡＩＤグループの分割処理が行われる。
まず、ＲＡＩＤサブシステム制御部２４のＲＡＩＤグループ定義部２ｄに分割後のＲＡＩＤグループが定義される。例えば図５では、ＨＤＤ（ｍ＋１）〜ＨＤＤ（ｎ）がＲＡＩＤグループ２に定義される。
上記のようにＲＡＩＤグループの定義が行われると、分割後のＲＡＩＤグループをパリティディスクのない縮退状態として作成する（ステップＳ２）。
すなわち、図５に示すように、ＲＡＩＤグループ２はＨＤＤ（ｍ＋１），・・・，ＨＤＤ（ｎ）の（ｎ−ｍ）本のデータディスクに対してパリティディスクの無い縮退状態として作成される（ｍは正の整数）。
【００１１】
これにより、ＲＡＩＤ再構成制御部２ｄは、分割後のＲＡＩＤグループの再構成を開始する（ステップＳ３）。  
まず、図５に示すように、パリティディスクＨＤＤ（ｐ２）を１本追加する。ＲＡＩＤグループ２のパリティディスクＨＤＤ（ｐ２）は通常のＲＡＩＤにおける再構成（リコンストラクション）の仕組みにより任意のスペアディスクより選択される。
ＲＡＩＤパリティ更新制御部２ｅは、上記ＲＡＩＤグループ２のパリティを作成し、パリティディスクＨＤＤ（ｐ２）に格納する。
その際、分割後のＲＡＩＤグループのデータを構成するデータディスクの障害が発生すると、ディスク障害が発生したディスクを含む分割後のＲＡＩＤグループを削除してステップ２に戻る（ステップＳ４→ステップＳ５→ステップＳ２）。
【００１２】
次に、図６に示すように、パリティディスクＨＤＤ（ｐ３）を１本追加し、新たにＲＡＩＤグループ３を作成する。
すなわち、前記したようにＲＡＩＤグループ３をＨＤＤ（１）〜ＨＤＤ（ｍ）のｍ本のデータディスクに対してパリティディスクの無い縮退状態として作成し、通常のＲＡＩＤにおけるリコンストラクションの仕組みにより任意のスペアディスクよりパリティディスクＨＤＤ（ｐ３）を選択する。そして、ＲＡＩＤグループ３のパリティを作成し、パリティディスクＨＤＤ（ｐ３）に格納する。
以上のように、分割後のＲＡＩＤグループの再構成を行い、再構成が終了するまで、上記処理を繰り返す（ステップＳ６）。
その間、ＲＡＩＤグループ１はそのまま動作を継続しており、上記分割処理はディスクアレイ装置の運用を継続しながら行うことができる。
【００１３】
ついで、分割元のＲＡＩＤグループを削除する（ステップＳ７）。すなわち、図７に示すように、各データディスクＨＤＤ（１）〜ＨＤＤ（ｎ）からＲＡＩＤグループ１に所属するための識別情報を削除し、ＲＡＩＤグループ１を削除する。ＲＡＩＤグループ１のパリティディスクＰ１はスペアディスクとなる。
これにより、最終的にＲＡＩＤグループ１はＲＡＩＤグループ２とＲＡＩＤグループ３で示す２つのＲＡＩＤグループに分割される。
なお、上記図３〜図７では、ＲＡＩＤグループを２つのＲＡＩＤグループに分割する場合について示したが、同様な手順により、ＲＡＩＤグループを３以上のＲＡＩＤグループ分割することもできる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施例のディスクアレイ装置の構成を示すブロック図である。
【図２】本発明の実施例のＲＡＩＤグループ分割処理を示すフローチャートである。
【図３】ＲＡＩＤグループの分割前と分割後のデータおよびパリティの配置例を示す図である。
【図４】（ｎ＋１）台のディスクより構成されるＲＡＩＤグループの例を示す図である。
【図５】図４のに対しパリティディスクを追加して、新たに（ｎ−ｍ＋１）本より構成されるＲＡＩＤグループ２を作成した例を示す図である。
【図６】図５に対しパリティディスクを追加して、新たに（ｍ＋１）本より構成されるＲＡＩＤグループ３を作成した例を示す図である。
【図７】図６に対しＲＡＩＤグループ１を破壊し、最終的に（ｎ−ｍ＋１）本と（ｍ＋１）本の２つのＲＡＩＤグループに分割された例を示す図である。
【図８】ＲＡＩＤ４の概略構成を示す図である。
【符号の説明】
【００１５】
１    ホストコンピュータ
２    ディスクアレイ制御装置
２１  ホスト入出力制御部
２２  ＲＡＩＤグループ分割制御部
２３  データ入出力制御部
２４  ＲＡＩＤサブシステム制御部
２５  ディスク入出力制御部
２ａ  ＲＡＩＤグループ定義部
２ｂ  データ書き込み制御部
２ｃ  データ読み込み制御部
２ｄ  ＲＡＩＤ再構成制御部
２ｅ  ＲＡＩＤパリティ更新制御部
３    ディスク群
【図１】
2005332123.tif 000003
【図２】
2005332123.tif 000004
【図３】
2005332123.tif 000005
【図４】
2005332123.tif 000006
【図５】
2005332123.tif 000007
【図６】
2005332123.tif 000008
【図７】
2005332123.tif 000009
【図８】
2005332123.tif 000010