(57)【要約】【課題】ディスクアレイに組み込まれていない余剰領域上のデータを保障しつつ新たなディスクアレイを当該余剰領域を組み込んで構築することを可能とする。【解決手段】例えばＨＤＤ＃０のディスク装置４上に存在する余剰領域を組み込んで（追加された）ＨＤＤ＃１との間で新たなディスクアレイを構築する場合、ＲＡＩＤコントローラ３は、ＨＤＤ＃０のＲＡＩＤ情報を参照して、その余剰領域が有効とされているかどうかを調べ、有効であれば、構築するディスクアレイの種類に応じて、ＨＤＤ＃０の余剰領域に記録されているデータを、ＨＤＤ＃０，＃１に再配置する。そして、この新たなディスクアレイの構築に伴い、ＲＡＩＤコントローラ３は、ＨＤＤ＃０，＃１それぞれのＲＡＩＤ情報を書き換える。【選択図】      図１
2008071189.tif 000002
【特許請求の範囲】
【請求項１】
ディスクアレイを構成するディスク装置上の領域の一部で前記ディスクアレイに組み込まれていない余剰領域を前記ディスクアレイとは別の単体のディスク装置の領域として利用可能なディスクアレイ装置において、
前記余剰領域が単体のディスク装置の領域として利用されているか否かを判定する判定手段と、
新たなディスクアレイを前記余剰領域を組み込んで構築する際、前記余剰領域が単体のディスク装置の領域として利用されているか否かを前記判定手段に判定させ、単体のディスク装置の領域として利用されていると判定された場合、当該余剰領域に記録されたデータを当該新たなディスクアレイ上に再配置するディスクアレイ構築手段と、
を具備することを特徴とするディスクアレイ装置。
【請求項２】
前記判定手段は、ディスクアレイを構成する各ディスク装置上に格納されるディスクアレイの構築状況を示すディスクアレイ情報を参照して、前記余剰領域が単体のディスク装置の領域として利用されているか否かを判定することを特徴とする請求項１記載のディスクアレイ装置。
【請求項３】
前記ディスクアレイ構築手段は、前記新たなディスクアレイがＲＡＩＤ（Redundant Array of Inexpensive Disks）−１である場合、前記余剰領域に記録されたデータを他のディスク装置上の対応領域に複製することを特徴とする請求項１記載のディスクアレイ装置。
【請求項４】
並列に接続される複数のディスク装置を用いてＲＡＩＤを構成するＲＡＩＤコントローラにおいて、
ＲＡＩＤを構成するディスク装置上の領域の一部で前記ＲＡＩＤに組み込まれていない余剰領域を前記ＲＡＩＤとは別の単体のディスク装置の領域として利用可能に管理する管理手段と、
新たなＲＡＩＤを前記余剰領域を組み込んで構築する際、前記余剰領域が単体のディスク装置の領域として管理されている場合、当該余剰領域に記録されたデータを当該新たなＲＡＩＤ上に再配置するＲＡＩＤ構築手段と、
を具備することを特徴とするＲＡＩＤコントローラ。
【請求項５】
前記管理手段は、ＲＡＩＤを構成する各ディスク装置上に格納するＲＡＩＤの構築状況を示すＲＡＩＤ情報として、前記余剰領域を単体のディスク装置の領域として利用するか否かを示す情報を管理することを特徴とする請求項４記載のＲＡＩＤコントローラ。
【請求項６】
前記ディスクアレイ構築手段は、前記新たなＲＡＩＤがＲＡＩＤ−１である場合、前記余剰領域に記録されたデータを他のディスク装置上の対応領域に複製することを特徴とする請求項４記載のＲＡＩＤコントローラ。
【請求項７】
ディスクアレイを構成するディスク装置上の領域の一部で前記ディスクアレイに組み込まれていない余剰領域を前記ディスクアレイとは別の単体のディスク装置の領域として利用可能なディスクアレイ装置のディスクアレイ構築方法であって、
新たなディスクアレイを前記余剰領域を組み込んで構築する際、前記余剰領域が単体のディスク装置の領域として利用されているか否かを判定し、
単体のディスク装置の領域として利用されていると判定した場合、当該余剰領域に記録されたデータを当該新たなディスクアレイ上に再配置する、
ことを特徴とするディスクアレイ装置のディスクアレイ構築方法。
【請求項８】
ディスクアレイを構成する各ディスク装置上に格納されるディスクアレイの構築状況を示すディスクアレイ情報を参照して、前記余剰領域が単体のディスク装置の領域として利用されているか否かを判定することを特徴とする請求項７記載のディスクアレイ装置のディスクアレイ構築方法。
【請求項９】
前記新たなディスクアレイがＲＡＩＤ−１である場合、前記余剰領域に記録されたデータを他のディスク装置上の対応領域に複製することを特徴とする請求項１記載のディスクアレイ装置のディスクアレイ構築方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ディスクアレイを構成するディスク装置上に存在する余剰領域を別途利用可能なディスクアレイ装置に適用して好適なディスクアレイ構築技術に関する。
【背景技術】
【０００２】
近年、バッテリ駆動可能で携行容易なノートブックタイプのパーソナルコンピュータの高機能化が進んでおり、移動中や外出先などでも、オフィス在室時と遜色なく様々な作業が行えるようになってきている。このようなことから、最近では、パーソナルコンピュータに搭載されるデータ記憶装置に対する高応答性や耐障害性などの要求が非常に高まっている。
【０００３】
この要求に応える技術として、複数のディスク装置を並列に接続して、これらをあたかも1台のディスク装置のように連携して動作させるディスクアレイ（ＲＡＩＤ：Redundant Array of Inexpensive Disks）機能が存在する。そのため、ノートブックタイプのパーソナルコンピュータでも、必要に応じて２台目のディスク装置を増設するためのスロットを備えるものが多い。もちろん、増設した２台目のディスク装置は、１台目のディスク装置との間でディスクアレイを構成するほか、単体の２台目のディスク装置として利用することも可能である。
【０００４】
ディスクアレイは、特殊形態のデータ記憶装置であるため、その構築には専門的な知識が要求される。そのため、専門的な知識を持たない一般ユーザがディスクアレイを簡単に構築できるようにするための支援手法の提案がこれまで種々成されている（例えば特許文献１等参照）。
【特許文献１】特開２０００−２０２４５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ディスクアレイは、ＲＡＩＤコントローラと称される制御装置の制御の下、複数のディスク装置を上位システムには１台のディスク装置に見せ掛けるが、ＲＡＩＤコントローラの中には、ディスクアレイを構成する各ディスク装置の領域を、当該ディスクアレイとして利用する領域と、当該ディスクアレイとは別の単体のディスク装置の領域とに分けて管理できる機能を有するものが存在する。これは、例えば１台目のディスク装置のデータ記憶容量と２台目のディスク装置のデータ記憶容量とが異なる場合に、データ記憶容量の大きい方のディスク装置上に発生する余剰領域を有効利用するためである。
【０００６】
また、ＲＡＩＤコントローラの中には、１台のディスク装置が複数のディスクアレイに組み込まれることを可能としているものが多い。例えば同じ組み合わせの２台のディスク装置を使って、ストライピングを行うＲＡＩＤ−０と、ミラーリングを行うＲＡＩＤ−１との２つのディスクアレイを構築すること等を可能としているわけである。
【０００７】
ここで、ディスクアレイを構築する機能を備えているが現在は１台のディスク装置のみが搭載されているパーソナルコンピュータを考える。また、ユーザは、２台目のディスク装置の増設を当初より予定しており、１台のディスク装置の半分の領域を使ってＲＡＩＤ−０を構築し、残りの半分の領域を単体のディスク装置の領域として利用を開始したものと想定する。この時点では、ＲＡＩＤ−０としての効果はないが、２台目のディスク装置の増設時には、ＲＡＩＤコントローラのデータ再配置機能を働かせることができる。
【０００８】
そして、２台目のディスク装置を増設する際、ユーザは、ＲＡＩＤ−０に組み込まれていない余剰領域を使って、さらにＲＡＩＤ−１を構築したいと考えたと想定する。この場合には、単体のディスク装置の領域として利用していた時のデータを構築後のＲＡＩＤ−１に反映させることが好ましい。
【０００９】
しかしながら、これまでは、このような余剰領域を組み込んで新たなディスクアレイを作成する場合、この余剰領域を一旦削除して解放し、改めて新たなディスクアレイに組み込むという手順を取っていた。つまり、この余剰領域の削除時に、余剰領域に記録されていたデータは保障されなくなってしまっていた。
【００１０】
この発明は、このような事情を考慮したものであり、ディスクアレイに組み込まれていない余剰領域上のデータを保障しつつ新たなディスクアレイを当該余剰領域を組み込んで構築することを可能とするディスクアレイ装置、ＲＡＩＤコントローラおよびディスクアレイ装置のディスクアレイ構築方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
前述の目的を達成するために、この発明のディスクアレイ装置は、ディスクアレイを構成するディスク装置上の領域の一部で前記ディスクアレイに組み込まれていない余剰領域を前記ディスクアレイとは別の単体のディスク装置の領域として利用可能なディスクアレイ装置において、前記余剰領域が単体のディスク装置の領域として利用されているか否かを判定する判定手段と、新たなディスクアレイを前記余剰領域を組み込んで構築する際、前記余剰領域が単体のディスク装置の領域として利用されているか否かを前記判定手段に判定させ、単体のディスク装置の領域として利用されていると判定された場合、当該余剰領域に記録されたデータを当該新たなディスクアレイ上に再配置するディスクアレイ構築手段と、を具備することを特徴とする。
【００１２】
また、この発明のＲＡＩＤコントローラは、並列に接続される複数のディスク装置を用いてＲＡＩＤを構成するＲＡＩＤコントローラにおいて、ＲＡＩＤを構成するディスク装置上の領域の一部で前記ＲＡＩＤに組み込まれていない余剰領域を前記ＲＡＩＤとは別の単体のディスク装置の領域として利用可能に管理する管理手段と、新たなＲＡＩＤを前記余剰領域を組み込んで構築する際、前記余剰領域が単体のディスク装置の領域として管理されている場合、当該余剰領域に記録されたデータを当該新たなＲＡＩＤ上に再配置するＲＡＩＤ構築手段と、を具備することを特徴とする。
【００１３】
また、この発明のディスクアレイ装置のディスクアレイ構築方法は、ディスクアレイを構成するディスク装置上の領域の一部で前記ディスクアレイに組み込まれていない余剰領域を前記ディスクアレイとは別の単体のディスク装置の領域として利用可能なディスクアレイ装置のディスクアレイ構築方法であって、新たなディスクアレイを前記余剰領域を組み込んで構築する際、前記余剰領域が単体のディスク装置の領域として利用されているか否かを判定し、単体のディスク装置の領域として利用されていると判定した場合、当該余剰領域に記録されたデータを当該新たなディスクアレイ上に再配置する、ことを特徴とする。
【発明の効果】
【００１４】
この発明によれば、ディスクアレイに組み込まれていない余剰領域上のデータを保障しつつ新たなディスクアレイを当該余剰領域を組み込んで構築することを可能とするディスクアレイ装置、ＲＡＩＤコントローラおよびディスクアレイ装置のディスクアレイ構築方法を提供することができる。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して本発明の一実施形態を説明する。
【００１６】
図１は、本実施形態に係るディスクアレイ装置（ＲＡＩＤ）を適用する情報処理装置の構成例を示す図である。この情報処理装置は、例えばノートブックタイプのパーソナルコンピュータとして実現されており、図１に示すように、ＣＰＵ１、主メモリ２、ＲＡＩＤコントローラ３、複数のディスク装置（ＨＤＤ）４、表示コントローラ５、キーボードコントローラ６等を有している。また、この情報処理装置では、ＲＡＩＤコントローラ３と複数のディスク装置４とでＲＡＩＤ７が構築される。
【００１７】
ＣＰＵ１は、この情報処理装置の動作を制御するプロセッサであり、ディスク装置４から主メモリ２にロードされる、オペレーティングシステムやユーティリティを含む各種プログラムを実行する。
【００１８】
主メモリ２は、この情報処理装置の主記憶として用いられる高速小容量のメモリデバイスであり、一方、ＲＡＩＤコントローラ３の制御下でＲＡＩＤ７を構成する複数のディスク装置４は、この情報処理装置の外部記憶として用いられる（主メモリ２と比較して）低速大容量のメモリデバイスである。
【００１９】
表示コントローラ５は、この情報処理装置が提供するユーザインタフェースのアウトプット側を担うデバイスであり、ＣＰＵ１が作成した表示データを例えばＬＣＤ（liquid crystal display）等に表示する。一方、キーボードコントローラ６は、この情報処理装置が提供するユーザインタフェースのインプット側を担うデバイスであり、ユーザによる例えばキーボードやマウス等の操作を数値化してＣＰＵ１に伝達する。
【００２０】
ＲＡＩＤコントローラ３は、ディスクアレイを作成すると、その種別（ＲＡＩＤ−０，ＲＡＩＤ−１等）や、どのディスク装置４を使って構築されているか等を示すディスクアレイ情報（ＲＡＩＤ情報）を各ディスク装置４の所定領域に格納する。通常、ＲＡＩＤコントローラ３は、各ディスク装置４の最終セクタからその前の数セクタ分の領域を当該ＲＡＩＤ情報を格納するための所定領域として確保する。例えばＨＤＤ＃０およびＨＤＤ＃１の２つのディスク装置４を使ってＲＡＩＤ−０を構築した場合、ＨＤＤ＃０の所定領域には、ＨＤＤ＃１との間でＲＡＩＤ−０が構成されていることを示すＲＡＩＤ情報が格納される。
【００２１】
なお、ＲＡＩＤコントローラ３は、１つのディスク装置４を２つのディスクアレイに組み込むことが可能である。例えばＨＤＤ＃０およびＨＤＤ＃１の２つのディスク装置４を使って（前述のＲＡＩＤ−０に加えて）さらにＲＡＩＤ−１を構築した場合、ＨＤＤ＃０の所定領域に格納されるＲＡＩＤ情報には、ＨＤＤ＃１との間でＲＡＩＤ−１が構成されていることを示す情報が追加されることになる。
【００２２】
また、ＲＡＩＤコントローラ３は、ディスクアレイが構築されているディスク装置４の領域の一部でいずれのディスクアレイにも組み込まれていない領域（ここでは、これを余剰領域という）を有効活用するために、当該余剰領域をディスクアレイとは別の単体のディスク装置としてアクセスするインタフェースを提供する。そのために、ＲＡＩＤコントローラ３は、余剰領域の有効（単体のディスク装置の領域として利用する）／無効（利用しない）を示す情報をＲＡＩＤ情報として管理する。例えばＨＤＤ＃０およびＨＤＤ＃１の２つのディスク装置４を使ってＲＡＩＤ−０を構築した場合であって、ＨＤＤ＃０の余剰領域を有効、ＨＤＤ＃１の余剰領域を無効とした場合、ＣＰＵ１によって実行される上位システムからは、２つのディスク装置（ディスクアレイ，単体ディスク）が存在するように見えることになる。
【００２３】
そして、本実施形態のディスクアレイ装置は、有効利用されている余剰領域に記録されたデータを保障しつつ新たなディスクアレイを当該余剰領域を組み込んで構築することを可能としたものであり、以下、この点について詳述する。
【００２４】
図２には、ＲＡＩＤコントローラ３の機能ブロックが示されている。図示のように、ＲＡＩＤコントローラ３は、ＲＡＩＤ情報管理部１１、ＲＡＩＤ構築部１２およびアクセス制御部１３を有している。
【００２５】
ＲＡＩＤ情報管理部１１は、ディスクアレイが構築された時にその構成要素となっている各ディスク装置４にＲＡＩＤ情報を記録したり、ディスクアレイの構成が変更された時にその変更内容をＲＡＩＤ情報に反映させるものである。ＲＡＩＤ情報管理部１１は、ディスクアレイを構築する各ディスク装置４の余剰領域の有効／無効を示す情報をＲＡＩＤ情報として記録する。
【００２６】
また、ＲＡＩＤ構築部１２は、ＲＡＩＤ用の拡張ＢＩＯＳ（basic input/output system）と協働して、ディスクアレイの構築、構成の変更、故障したディスク装置４の交換時のデータ再配置などを実行するものである。そして、アクセス制御部１３は、例えばＨＤＤ＃０およびＨＤＤ＃１によってＲＡＩＤ−０が構築されている場合、データをこれら２つのディスク装置４に分散させて並列に書き込んだり、データを２つのディスク装置４から並列に読み出すといった入出力制御を実行する。また、アクセス制御部１３は、有効とされている余剰領域への書き込み／読み出しをディスクアレイとは別の単体のディスク装置として実行制御する。
【００２７】
いま、図３に示すように、（Ａ）のＨＤＤ＃０のディスク装置４が１台のみが搭載されていた状態から（Ｂ）のＨＤＤ＃１のディスク装置４を追加して２台搭載された状態へと情報処理装置のシステム構成を変更する場合を考える。既存のＨＤＤ＃０のディスク装置４には、ＲＡＩＤ−０が構成されており、また、余剰領域が存在して有効に設定されているものとする。そして、ＨＤＤ＃１のディスク装置４を追加するにあたって、構築済みのＲＡＩＤ−０にＨＤＤ＃１を組み込むと共に、有効利用中のＨＤＤ＃０の余剰領域を使ってＨＤＤ＃０，＃１で新たにＲＡＩＤ−１を構築する場合を考える。
【００２８】
この指示を受けたＲＡＩＤコントローラ３は、第１に、追加したＨＤＤ＃１のディスク装置４を構築済みのＲＡＩＤ−０に組み入れるための構成変更を行う。ＲＡＩＤ構築部１２は、この構成変更内容を示す情報をＲＡＩＤ情報として記録する。
【００２９】
また、ＲＡＩＤコントローラ３は、第２に、ＨＤＤ＃０の余剰領域と、ＲＡＩＤ−０への組み入れによって生じるＨＤＤ＃１の余剰領域との間でＲＡＩＤ−１を構築する作業を行う。ＲＡＩＤ構築部１２は、まず、ＨＤＤ＃０の余剰領域に対応する領域をＨＤＤ＃１に確保する。次に、ＲＡＩＤ構築部１２は、ＨＤＤ＃０のＲＡＩＤ情報を参照して、ＨＤＤ＃０の余剰領域が有効とされているかどうかを調べる。そして、有効であれば、ＲＡＩＤ構築部１２は、ＨＤＤ＃０の余剰領域を単体のディスク装置から（ＨＤＤ＃１との）ＲＡＩＤ−１へと変更する内容を示す情報をＲＡＩＤ情報として記録する。なお、ＨＤＤ＃０の余剰領域が無効とされていた場合には、ＨＤＤ＃０，＃１からＲＡＩＤ−１を新規に構築することを示す情報をＲＡＩＤ情報として記録する。
【００３０】
以上のようなＲＡＩＤ情報がＲＡＩＤ構築部１２によって記録された後、システムがシャットダウンされて次回ブートされると、ＲＡＩＤ用の拡張ＢＩＯＳによって、ＨＤＤ＃０のみに記録されていたＲＡＩＤ−０上のデータをＨＤＤ＃０，＃１にストライピングすべくデータの再配置が実行され、また、ＨＤＤ＃０の余剰領域に記録されているデータをＨＤＤ＃１へ複製しつつＲＡＩＤ−１の新規構築が実行される。そして、これに伴い、ＲＡＩＤ情報管理部１１によって、ＨＤＤ＃０のＲＡＩＤ情報の書き換えおよびＨＤＤ＃１のＲＡＩＤ情報の書き込みが実行される。
【００３１】
つまり、本実施形態のディスクアレイ装置では、既存のディスク装置４の余剰領域を組み込んで新たなディスクアレイを構築する際、この余剰領域の削除・解放を一律に実行するのではなく、ＲＡＩＤ情報によって当該余剰領域が有効利用されていることが示されている場合、この余剰領域に記録されているデータを保障しつつ当該新たなディスクアレイの構築を実現する。
【００３２】
図４は、本実施形態のディスクアレイ装置が新たなディスクアレイを余剰領域を組み込んで構築する場合の動作手順を示すフローチャートである。
【００３３】
新たなディスクアレイを余剰領域を組み込んで構築する場合、本実施形態のディスクアレイ装置では、余剰領域の削除を行うことなく、まず、ＲＡＩＤ構築部１２が、既存のディスク装置４の余剰領域に対応する領域を、新規のディスク装置４上に確保する（ステップＡ１）。次に、ＲＡＩＤ構築部１２は、既存のディスク装置４のＲＡＩＤ情報を参照して、その余剰領域が有効とされているかどうかを調べ（ステップＡ２）、もし、有効であれば（ステップＡ２のＹＥＳ）、構築するディスクアレイの種類に応じて、既存のディスク装置４の余剰領域に記録されているデータを再配置するための（ＲＡＩＤ情報の記録等の）処理を行う（ステップＡ３）。
【００３４】
そして、この新たなディスクアレイの構築に伴い、ＲＡＩＤ情報管理部１１は、既存のディスク装置４および新規のディスク装置４それぞれのＲＡＩＤ情報を書き換える（ステップＡ４）。
【００３５】
以上のように、本実施形態のディスクアレイ装置によれば、ディスクアレイに組み込まれていない余剰領域上のデータを保障しつつ新たなディスクアレイを当該余剰領域を組み込んで構築することを可能とする。
【００３６】
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００３７】
【図１】この発明の一実施形態に係るディスクアレイ装置（ＲＡＩＤ）を適用する情報処理装置の構成例を示す図
【図２】同実施形態のディスクアレイ装置が備えるＲＡＩＤコントローラの機能ブロックを示す図
【図３】同実施形態のディスクアレイ装置上で実施されるディスクアレイ構成の変更例を説明するための図
【図４】同実施形態のディスクアレイ装置が新たなディスクアレイを余剰領域を組み込んで構築する場合の動作手順を示すフローチャート
【符号の説明】
【００３８】
１…ＣＰＵ、２…主メモリ、３…ＲＡＩＤコントローラ、４…ディスク装置（ＨＤＤ）、５…表示コントローラ、６…キーボードコントローラ、７…ＲＡＩＤ、１１…ＲＡＩＤ情報管理部、１２…ＲＡＩＤ構築部、１３…アクセス制御部。
【図１】
2008071189.tif 000003
【図２】
2008071189.tif 000004
【図３】
2008071189.tif 000005
【図４】
2008071189.tif 000006