(57)【要約】【課題】ディスクアレイを構築した際に、記憶領域サイズの大きいハードディスク装置上に生じる余剰記憶領域を有効活用することである。【解決手段】ＣＰＵ部と、余剰記憶領域管理部と、異常予兆検知部と、データコピー制御部とを具備するディスクアレイコントローラによって解決できる。ＣＰＵ部は、異なる記憶容量を有する記憶装置を含む複数の記憶装置に対して、ディスクアレイを構築する。余剰記憶領域管理部は、複数の記憶装置が全て同一の記憶容量を有していないことから生じる余剰記憶領域を管理する。異常予兆検知部は、複数の記憶装置ごとに、将来的に故障すると予測されるか否かを判断する。データコピー制御部は、異常予兆検知部によって、将来的に故障すると予測された記憶装置があった場合に、予測された記憶装置に格納されているデータを、余剰記憶領域にコピーする。【選択図】図１
2010160623.tif 000002
【特許請求の範囲】
【請求項１】
異なる記憶容量を有する記憶装置を含む複数の記憶装置に対して、ディスクアレイを構築するＣＰＵ部と、
前記複数の記憶装置が全て同一の記憶容量を有していないことから生じる余剰記憶領域を管理する余剰記憶領域管理部と、
前記複数の記憶装置ごとに、将来的に故障すると予測されるか否かを判断する異常予兆検知部と、
前記異常予兆検知部によって、将来的に故障すると予測された記憶装置があった場合に、前記予測された記憶装置に格納されているデータを、前記余剰記憶領域にコピーするデータコピー制御部とを具備する
ディスクアレイコントローラ。
【請求項２】
前記ＣＰＵ部は、
前記予測された記憶装置が故障した場合において、前記予測された記憶装置に対するリード又はライトアクセスがあったときに、前記余剰記憶領域にコピーしたデータにより前記リード又はライトアクセスを実行する
請求項１記載のディスクアレイコントローラ。
【請求項３】
前記余剰記憶領域管理部は、
前記複数の記憶装置の中で、いずれか２つの記憶装置に余剰記憶領域が存在していた場合には、前記２つの記憶装置の余剰記憶領域を管理し、
前記データコピー制御部は、
前記余剰記憶領域管理部によって管理されている前記２つの記憶装置の余剰記憶領域それぞれに対して、前記予測された記憶装置に格納されているデータを重複してコピーする
請求項２記載のディスクアレイコントローラ。
【請求項４】
前記ＣＰＵ部は、
前記予測された記憶装置が故障し、前記予測された記憶装置と冗長構成を組む記憶装置が故障し、かつ、前記２つの記憶装置における一方の記憶装置が故障した場合において、前記予測された記憶装置に対するリード又はライトアクセスがあったときに、前記２つの記憶装置における他方の記憶装置の余剰記憶領域にコピーしたデータにより前記リード又はライトアクセスを実行する
請求項３記載のディスクアレイコントローラ。
【請求項５】
前記ＣＰＵ部は、
前記複数の記憶装置の中で、最も記憶容量が小さい記憶装置の記憶容量を最小記憶容量とした場合に、前記複数の記憶装置全てから、それぞれ前記最小記憶容量を確保して、前記ディスクアレイを構築し、
前記余剰記憶領域管理部は、
前記複数の記憶装置の中で、前記最小記憶容量よりも大きな記憶容量を有する記憶装置の余剰記憶領域を管理する
請求項４記載のディスクアレイコントローラ。
【請求項６】
前記異常予兆検知部は、
リード又はライトアクセスがあったときに発生するエラーの数をカウントし、前記エラーの数に基づいて、前記複数の記憶装置ごとに、将来的に故障すると予測されるか否かを判断する
請求項５記載のディスクアレイコントローラ。
【請求項７】
前記異常予兆検知部は、
更に、前記複数の記憶装置それぞれから通知される異常予兆通知（Ｓ．Ｍ．Ａ．Ｒ．Ｔ．：Ｓｅｌｆ−Ｍｏｎｉｔｏｒｉｎｇ  Ａｎａｌｙｓｉｓ  ａｎｄ  Ｒｅｐｏｒｔｉｎｇ  Ｔｅｃｈｎｏｌｏｇｙ）の数をカウントし、前記通知の数に基づいて、前記複数の記憶装置ごとに、将来的に故障すると予測されるか否かを判断する
請求項６記載のディスクアレイコントローラ。
【請求項８】
異なる記憶容量を有する記憶装置を含む複数の記憶装置を用いて、ディスクアレイを構築することと、
前記複数の記憶装置が全て同一の記憶容量を有していないことから生じる余剰記憶領域を管理することと、
前記複数の記憶装置ごとに、将来的に故障すると予測されるか否かを判断することと、
将来的に故障すると予測された記憶装置があった場合に、前記予測された記憶装置に格納されているデータを、前記余剰記憶領域にコピーすることとを具備する
ディスクアレイの冗長化方法。
【請求項９】
前記管理することにおいては、
前記複数の記憶装置の中で、いずれか２つの記憶装置に余剰記憶領域が存在していた場合には、前記２つの記憶装置の余剰記憶領域を管理することを含み、
前記コピーすることにおいては、
前記２つの記憶装置の余剰記憶領域それぞれに対して、前記予測された記憶装置に格納されているデータを重複してコピーすることを含む
請求項８記載のディスクアレイの冗長化方法。
【請求項１０】
前記予測された記憶装置が故障し、前記予測された記憶装置と冗長構成を組む記憶装置が故障し、かつ、前記２つの記憶装置における一方の記憶装置が故障した場合において、前記予測された記憶装置に対するリード又はライトアクセスがあったときに、前記２つの記憶装置における他方の記憶装置の余剰記憶領域にコピーしたデータにより前記リード又はライトアクセスを実行することを更に含む
請求項９記載のディスクアレイの冗長化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスクアレイコントローラ及びディスクアレイの冗長化方法に関する。
【背景技術】
【０００２】
複数のハードディスク装置を用いてディスクアレイを構築する際、ディスクアレイコントローラは、各ハードディスク装置から、全て同じサイズの記憶領域を確保して、ディスクアレイの構築に割り当てる。記憶領域サイズが異なる複数のハードディスク装置を用いてディスクアレイを構築する場合がある。この場合、通常、ディスクアレイコントローラは、記憶領域サイズが最も小さいハードディスク装置をベースにディスクアレイを構築する。そのため、記憶領域サイズの大きいハードディスク装置上に、構築されたディスクアレイでは使用されない余剰記憶領域が必ず存在してしまう。
【０００３】
この余剰記憶領域に対して、明示的に第二のディスクアレイを構築することで、余剰記憶領域を活用する技術が存在する。しかし、実際のシステム運用の場面においては、余剰記憶領域を持つハードディスク装置は１台であることが多い。１台の場合、明示的に構築できる第二のディスクアレイは、ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ（又はＩｎｄｅｐｅｎｄｅｎｔ）  Ｄｉｓｋｓ）レベル０のディスクアレイとなるので冗長構成が無い。そのため、ハードディスク装置故障によるデータ紛失を避けるユーザは、余剰記憶領域を活用せずにそのまま運用しているケースが多く見受けられる。余剰記憶領域、すなわち、ハードディスク装置上の空き領域を有効に活用できていない。
【０００４】
特開２００６−１７２３２０号公報には、「データ複製制御装置」の発明が記載されている。このデータ複製制御装置は、ＲＡＩＤを構成する記憶装置に記憶されたデータを複製する複製処理の制御をおこなう装置である。情報記憶手段と、複製元装置選択手段とを備える。情報記憶手段は、記憶装置のＲＡＩＤ種別の情報を記憶する。複製元装置選択手段は、情報記憶手段により記憶された情報に基づいて、複製元の記憶装置を選択する。
【０００５】
特開２００８−０７１１８９号公報には、「ディスクアレイ装置」の発明が記載されている。このディスクアレイ装置は、ディスクアレイを構成するディスク装置上の領域の一部でディスクアレイに組み込まれていない余剰領域をディスクアレイとは別の単体のディスク装置の領域として利用可能である。判定手段と、ディスクアレイ構築手段とを具備する。判定手段は、余剰領域が単体のディスク装置の領域として利用されているか否かを判定する。ディスクアレイ構築手段は、新たなディスクアレイを余剰領域を組み込んで構築する際、余剰領域が単体のディスク装置の領域として利用されているか否かを判定手段に判定させる。また、単体のディスク装置の領域として利用されていると判定された場合、当該余剰領域に記録されたデータを当該新たなディスクアレイ上に再配置する。
【０００６】
特開平０８−２４９１３２号公報には、「ディスクアレイ装置」の発明が記載されている。このディスクアレイ装置は、複数の記憶装置と、制御装置とを備える。複数の記憶装置は、上位装置からのデータと該データから生成されたパリティを格納する。制御装置には、該複数の記憶装置が接続される。該複数の記憶装置のうち少なくとも何れか２つの記憶装置は容量が異なる。該複数の記憶装置のうち、最も小さな容量の記憶装置に合わせて一つ以上のパリティグループを構成する。さらに、該パリティグループに含まれない空き領域により一つ以上のパリティグループまたは単体の記憶領域を構成する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００６−１７２３２０号公報
【特許文献２】特開２００８−０７１１８９号公報
【特許文献３】特開平０８−２４９１３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明の課題は、ディスクアレイを構築した際に、記憶領域サイズの大きいハードディスク装置上に生じる余剰記憶領域を有効活用することである。
【課題を解決するための手段】
【０００９】
本発明の一つ目のアスペクトによるディスクアレイコントローラは、ＣＰＵ部と、余剰記憶領域管理部と、異常予兆検知部と、データコピー制御部とを具備する。ＣＰＵ部は、異なる記憶容量を有する記憶装置を含む複数の記憶装置に対して、ディスクアレイを構築する。余剰記憶領域管理部は、複数の記憶装置が全て同一の記憶容量を有していないことから生じる余剰記憶領域を管理する。異常予兆検知部は、複数の記憶装置ごとに、将来的に故障すると予測されるか否かを判断する。データコピー制御部は、異常予兆検知部によって、将来的に故障すると予測された記憶装置があった場合に、予測された記憶装置に格納されているデータを、余剰記憶領域にコピーする。
【００１０】
本発明の二つ目のアスペクトによるディスクアレイの冗長化方法は、構築することと、管理することと、判断することと、コピーすることとを具備する。構築することにおいては、異なる記憶容量を有する記憶装置を含む複数の記憶装置を用いて、ディスクアレイを構築する。管理することにおいては、複数の記憶装置が全て同一の記憶容量を有していないことから生じる余剰記憶領域を管理する。判断することにおいては、複数の記憶装置ごとに、将来的に故障すると予測されるか否かを判断する。コピーすることにおいては、将来的に故障すると予測された記憶装置があった場合に、予測された記憶装置に格納されているデータを、余剰記憶領域にコピーする。
【発明の効果】
【００１１】
本発明によれば、ディスクアレイを構築した際に、記憶領域サイズの大きいハードディスク装置上に生じる余剰記憶領域を有効活用することができる。
【図面の簡単な説明】
【００１２】
【図１】ディスクアレイコントローラの構成説明図
【図２】ディスクアレイコントローラの動作を説明するフローチャート
【図３】動作イメージの説明図
【図４】ハードディスク装置が２台故障した場合の動作説明図
【発明を実施するための形態】
【００１３】
本発明を実施するための形態について、図面を用いて詳細に説明する。図１は、一つの実施の形態におけるディスクアレイコントローラの構成説明図である。図１において、ディスクアレイコントローラ１０は、ＣＰＵ部１２と、異常予兆検知部１３と、ＲＡＩＤ情報管理部１４と、データコピー制御部１５と、余剰記憶領域管理部１６と、アクセス制御部１７とを備えている。図示するように、ディスクアレイコントローラ１０には、３台のハードディスク装置（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）５２，５４，５６が接続されている。
【００１４】
図中、ＣＰＵ部１２は、上位から発行された命令を解読し、リード／ライトアクセスを実行し、また、ディスクアレイの状態監視を行う。異常予兆検知部１３は、アクセス制御部１７でリード／ライト処理の際にエラーが発生したとき、更に、ハードディスク装置から異常予兆通知が発行されたとき、ハードディスク装置５２，５４，５６ごとに、これらのエラー／通知をカウントする。ＲＡＩＤ情報管理部１４は、ＲＡＩＤ情報を管理する。データコピー制御部１５は、ハードディスク装置５２，５４，５６が将来的に故障すると予測されると判断された場合に、ハードディスク装置５２，５４，５６内のデータを余剰記憶領域にコピーする。余剰記憶領域管理部１６は、ハードディスク装置５２，５４，５６の情報を元に得られる余剰記憶領域を管理する。アクセス制御部１７は、ＣＰＵ部１２からの指示により、ハードディスク装置５２，５４，５６への書き込み／読み出し（リード／ライト）処理を行う。
【００１５】
ディスクアレイコントローラ１０の動作概要を説明する。上位からディスクアレイを構築すべき旨の指示があった場合、ＣＰＵ部１２は、アクセス制御部１７に対して、ディスクアレイを構築するように指示すると共に、ＲＡＩＤ情報管理部１４に対し、ディスクアレイに関する情報を管理させる。このとき、各ハードディスク装置５２，５４，５６、及びこれらに存在する余剰記憶領域を余剰記憶領域管理部１６にて管理する。異常予兆検知部１３がエラー回数のカウントを始める。このカウント値が、あるハードディスク装置について、ある一定値を超えると、異常予兆検知部１３は、そのハードディスク装置は将来的に故障が予測されると判断する。そして、その旨を余剰記憶領域管理部１６に通知する。余剰記憶領域管理部１６は、そのハードディスク装置のデータサイズ及びその他のハードディスク装置に存在する余剰記憶領域サイズとを比較するなどし、データのコピー先となる余剰記憶領域を決定し、データコピー制御部１５に通知する。データコピー制御部１５は、将来的に故障が予測されるハードディスク装置のデータを、余剰記憶領域にコピーする。
【００１６】
図２のフローチャートを用いて、ディスクアレイコントローラ１０の詳細動作を説明する。図２において、ＣＰＵ部１２によりディスクアレイは構築済みとする。まず、ディスクアレイコントローラ１０は、上位から発行された命令をＣＰＵ部１２で解読し、書き込み／読み出し（リード／ライト）指示をアクセス制御部１７に与える。アクセス制御部１７は、ディスクアレイに対して、リード／ライトを実施する（ＳＴ１１）。アクセス制御部１７でリード／ライト実施中にエラーの発生を検出したとき、異常予兆検知部１３にて、ハードディスク装置ごとにカウントするエラー回数のカウント値をカウントアップする（ＳＴ１２）。更に、ハードディスク装置自身が持つ異常予兆機能による異常予兆通知（Ｓ．Ｍ．Ａ．Ｒ．Ｔ．：Ｓｅｌｆ−Ｍｏｎｉｔｏｒｉｎｇ  Ａｎａｌｙｓｉｓ  ａｎｄ  Ｒｅｐｏｒｔｉｎｇ  Ｔｅｃｈｎｏｌｏｇｙ）が、いずれかのハードディスク装置から発せられたとき、異常予兆検知部１３にて、その異常予兆通知を１つのエラーとして、エラー回数のカウント値をカウントアップする（ＳＴ１２）。
【００１７】
異常予兆検知部１３は、エラー回数のカウント値に対して、ある一定のしきい値を持っている。異常予兆検知部１３は、ステップＳＴ１２でカウントしたカウント値がそのしきい値を超えていないかを確認する（ＳＴ１３）。エラー回数のカウント値がしきい値を超えていない場合には（ＳＴ１３：ノー）、そのままステップＳＴ１１の状態に戻る。エラー回数のカウント値がしきい値を超えていた場合には（ＳＴ１３：イエス）、異常予兆検知部１３は、そのハードディスク装置が将来的に故障すると予測される状態になっていると判断する。そして、将来的に故障が予測されるハードディスク装置を特定する番号等の情報を、余剰記憶領域管理部１６へ通知する。
【００１８】
余剰記憶領域管理部１６は、自身で保持する余剰記憶領域情報及び故障が予測されるという通知を受けたハーディスク装置のサイズとを比較するなどする。そして、コピー先となり得る余剰記憶領域を決定し、データコピー制御部１５へ通知する（ＳＴ１４）。データコピー制御部１５は、余剰記憶領域管理部１６からの通知に基づいて、データコピー元及びコピー先情報を得る。そして、データのコピーをアクセス制御部１７に指示し、データのコピーを実施する（ＳＴ１５）。このようにして、予測されたハードディスク装置の故障時に備えることが可能になる。
【００１９】
図３は、動作イメージの説明図である。図３において、３台のハードディスク装置５２，５４，５６を用いてディスクアレイ５０が構築されている。図中、１台のハードディスク装置５６は、他の２台のハードディスク装置５２，５４よりも記憶容量が大きい。図示するように、その１台のハードディスク装置５６には、ディスクアレイ５０では使用されない余剰記憶領域２０が存在する。
【００２０】
図３において、ハードディスク装置５２について、エラー回数のカウント値が一定のしきい値を超えたとする。すると、余剰記憶領域管理部１６が、ハードディスク装置５２からハードディスク装置５６の余剰記憶領域２０へ、故障に備えたデータのコピーを指示する。データコピー制御部１５は、データコピー元及びコピー先情報を得ると共に、アクセス制御部１７に指示して、データのコピーを実施する。その後、ハードディスク装置５２が故障したとしても、ハードディスク装置５６の余剰記憶領域２０に保存したデータを利用できるので、冗長構成を維持できる。
【００２１】
本実施の形態によれば、ディスクアレイを構築したときに生じるハードディスク装置の余剰記憶領域を有効活用できるという効果がある。本実施の形態においては、余剰記憶領域を、将来的に故障が予測されるハードディスク装置のデータを事前にコピーしておく領域として活用している。このようにすれば、故障が予測されたハードディスク装置が実際に故障してしまった場合でも、縮退運用とならずに、冗長性を保ったままでのシステム運用が可能となる。
【００２２】
ＲＡＩＤレベル５のディスクアレイにおいては、一般的に、１台のハードディスク装置が故障した場合、縮退運転となるもののシステム運用は継続できる。しかし、２台のハードディスク装置が故障した場合、システムダウンにつながってしまう。一方、本実施の形態によれば、合計２台のハードディスク装置が故障した場合でもシステム運用を継続できる。すなわち、故障が予測された第一のハードディスク装置が実際に故障してしまった後に、さらにその故障した第一のハードディスク装置と冗長構成を組む第二のハードディスク装置が故障してしまった場合でも、システム運用を継続できる。これは、余剰記憶領域を持ちその領域に対して故障すると予測された第一のハードディスク装置のデータがコピーされている第三のハードディスク装置を活用できるためである。
【００２３】
本実施の形態の応用例として、コピー元となるハードディスク装置のデータ領域サイズと比較して十分大きな余剰記憶領域を持つハードディスク装置が２台存在する場合について説明する。応用例では、２台のハードディスク装置の余剰記憶領域それぞれに対して、同一データのコピーを重複して実施する。同じデータを、２台のハードディスク装置の余剰記憶領域それぞれに対してコピーすることにより、２つの余剰記憶領域のみでミラーリングを実現することが可能となる（ＲＡＩＤレベル１）。この場合、コピー元である将来的に故障が予測されるハードディスク装置が故障してしまった場合であっても、ディスクアレイを縮退させることなく運用を継続することが可能である。さらに、ミラーリングを実現した余剰記憶領域を有するハードディスク装置２台のうち、１台が故障してしまったとしても、ディスクアレイを停止させることなく運用を継続することが可能となる。そのため、ＲＡＩＤレベル５のディスクアレイと比較して、非常に高い冗長度を持たせることができる。
【００２４】
具体的な応用例として、ハードディスク装置３台でＲＡＩＤレベル５のディスクアレイを構築した場合について説明する。図４は、ＲＡＩＤレベル５のディスクアレイにおいて、ハードディスク装置が２台故障した場合の動作説明図である。図４において、３台のハードディスク装置（ＰＤ：Ｐｈｉｓｉｃａｌ  Ｄｉｓｋ）６２，６４，６６を用いてディスクアレイ（ＲＡＩＤレベル５）６０が構築されている。３台のハードディスク装置６２，６４，６６において、それぞれのアレイ領域Ａ−１，Ａ−２，Ａ−３は、ディスクアレイ６０で使用される領域である。一方、記憶容量が他の１台のハードディスク装置６２よりも大きい２台のハードディスク装置６４，６６におけるそれぞれの余剰記憶領域Ｍ−１，Ｍ−２は、ディスクアレイ６０では使用されない領域となっている。
【００２５】
仮に、ハードディスク装置６２が将来的に故障すると予測される状態となった場合、ディスクアレイコントローラ１０の余剰記憶領域管理部１６は、ハードディスク装置６２に記憶されたデータのコピー先として、２つの余剰記憶領域Ｍ−１，Ｍ−２を割り当てる。このとき、データコピー制御部１５は、アレイ領域Ａ−１のデータを、余剰記憶領域Ｍ−１にコピーし、かつ、余剰記憶領域Ｍ−２に対しても重複してコピーする。
【００２６】
その後、予測どおりハードディスク装置６２が故障した場合（図中左側の×印）、ディスクアレイコントローラ１０は、アレイ領域Ａ−１に格納されているデータに対してリード／ライトアクセスすることは不可能となる。しかし、ハードディスク装置６４の余剰記憶領域Ｍ−１、及びハードディスク装置６６の余剰記憶領域Ｍ−２にコピーデータが存在する。そのため、ディスクアレイ６０を縮退させることなく運用を継続することが可能である。
【００２７】
さらに、余剰記憶領域Ｍ−１を持つハードディスク装置６４も故障してしまった場合（図中中央の×印）、ディスクアレイコントローラ１０は、ハードディスク装置６２のアレイ領域Ａ−１に格納されたデータ、ハードディスク装置６４のアレイ領域Ａ−２に格納されたデータ、及び、ハードディスク装置６４の余剰記憶領域Ｍ−１に格納されたデータに対してリード／ライトアクセスすることは不可能となる。しかしながら、ハードディスク装置６２のアレイ領域Ａ−１に格納されたデータの代替として、ハードディスク装置６６の余剰記憶領域Ｍ−２に格納されたデータを使用することが可能である。
【００２８】
また、アレイ領域Ａ−１，Ａ−２，Ａ−３でＲＡＩＤレベル５のディスクアレイを構築しているため、２台のハードディスク装置６２，６４が故障した場合であっても，アレイ領域Ａ−２に格納されたデータが必要なときには、アレイ領域Ａ−１の代替であるハードディスク装置６６の余剰記憶領域Ｍ−２に格納されたデータ、及び、ハードディスク装置６２，６４のアレイ領域Ａ−１，Ａ−２と冗長構成を組むハードディスク装置６６のアレイ領域Ａ−３に格納されたデータが利用可能である。
【００２９】
このように、本実施の形態の応用例においては、ディスクアレイを構築するハードディスク装置１台が故障した場合であっても冗長構成を維持し、縮退運用状態となることを回避できる。また、ハードディスク装置２台が故障した場合であっても、システム運用を継続できる。
【符号の説明】
【００３０】
１０  ディスクアレイコントローラ
１２  ＣＰＵ部
１３  異常予兆検知部
１４  ＲＡＩＤ情報管理部
１５  データコピー制御部
１６  余剰記憶領域管理部
１７  アクセス制御部
２０，Ｍ−１，Ｍ−２  余剰記憶領域
５０，６０  ディスクアレイ
５２，５４，５６，６２，６４，６６  ディスク装置
Ａ―１，Ａ−２，Ａ−３  アレイ用記憶領域
【図１】
2010160623.tif 000003
【図２】
2010160623.tif 000004
【図３】
2010160623.tif 000005
【図４】
2010160623.tif 000006