(57)【特許請求の範囲】
【請求項１】
データを蓄積するディスク部と、該ディスク部に対してデータの書き込み又は読み出し動作を行う際前記データを一旦蓄える第１乃至第４のメモリモジュールと、前記書き込み又は読み出し動作を制御するディレクタモジュール部とを有し、
前記第１のメモリモジュールと前記第２のメモリモジュールとは、第１のペアを組んでおり、
前記第３のメモリモジュールと前記第４のメモリモジュールとは、第２のペアを組んでおり、
前記第１乃至前記第４のメモリモジュールのいずれか一つに故障が発生すると、前記ディレクタモジュール部は、前記第１及び第２のペアのうち故障したメモリモジュールを含まないペアにファストライトデータを書き込み、
前記第１及び第２のペアのうち故障したメモリモジュールを含むペアの、故障していないメモリモジュールをリードキャッシュとして使用し、
前記第１乃至第４のメモリモジュールのうち故障していない三つのメモリモジュールの二つに、前記第１乃至第４のメモリモジュール全体の主及び副のキャッシュ管理領域をそれぞれ設定するようにしたことを特徴とするディスクアレイ装置。
【請求項２】
請求項１に記載されたディスクアレイ装置において、前記１及び前記第３のメモリモジュールには主データ領域が設定され、前記第２及び前記第４のメモリモジュールには副データ領域が設定されていることを特徴とするディスクアレイ装置。
【請求項３】
請求項２に記載されたディスクアレイ装置において、前記第１のメモリモジュールにはキャッシュ管理領域として主管理領域が設定され、前記第２のメモリモジュールにはキャッシュ管理領域として副管理領域が設定されており、前記第３及び前記第４のメモリモジュールにはそれぞれキャッシュ管理領域として予備管理領域が設定されていることを特徴とするディスクアレイ装置。
【請求項４】
請求項３に記載されたディスクアレイ装置において、前記第１のメモリモジュールに故障が発生すると、前記ディレクタモジュール部は、前記第２のメモリモジュールの副管理領域を主管理領域とし、前記第３のメモリモジュールの予備管理領域を副管理領域とするとともに前記第２のメモリモジュール１２の副データ領域を主データ領域とするようにしたことを特徴とするディスクアレイ装置。
【請求項５】
請求項４に記載されたディスクアレイ装置において、前記第２のメモリモジュールに故障が発生すると、前記ディレクタモジュール部は、前記第３のメモリモジュール１３の副管理領域を主管理領域とするようにしたことを特徴とするディスクアレイ装置。
【請求項６】
請求項５に記載されたディスクアレイ装置において、前記ディレクタモジュール部は、さらに、ホストからのＩ／Ｏを禁止して前記メモリモジュール上のファストライトデータをすべて前記ディスク部に読み出すようにしたことを特徴とするディスクアレイ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はディスクアレイ装置に関し、特に、ディスクキャッシュを備えるディスクアレイ装置に関する。
【０００２】
【従来の技術】
一般に、ディスクアレイ装置では、アクセス速度を高速化するため、ディスクキャッシュ（キャッシュメモリ）を備えており、ディスクアレイ装置への書き込み処理（ＷＲＩＴＥ処理）の際には、書き込みデータ（ＷＲＩＴＥデータ）をディスクキャッシュに書き込んだ段階で、ホスト（上位装置）に対して書き込み処理の終了報告を行うファストライト処理（ＦＡＳＴ  ＷＲＩＴＥ処理）が行われている。
【０００３】
ファストライト処理では、ホストから送られた書き込みデータがディスクキャッシュ（メモリモジュール）に格納された時点で、上位装置に対して終了報告が行われるため、実際にディスクに書き込む以前に障害等によって未更新データが消失することがないように、バックアップ用のデータを準備してデータを二重化する必要がある。つまり、メモリモジュールの故障によるデータ損失を防ぐため、メモリモジュールを二つ実装してデータを二重化することが行われている。
【０００４】
【発明が解決しようとする課題】
ところで、メモリモジュールを二重化して、冗長性を持たせたとしても、一つのメモリモジュールが故障してメモリモジュールが縮退運転中には冗長性が失われてしまい、この状態でファストライト処理を行うと、もう一つのメモリモジュールが故障した場合には、データが損失してしまうという危険性がある。一方、縮退運転中においては、ファストライト処理を中止するようにすれば、もう一つのメモリモジュールが故障しても、データ損失が避けられるけれども、書き込み処理を高速化できないという問題点がある。つまり、大幅な性能低下となってしまう。
【０００５】
ディスクアレイ装置にとって、性能の確保とデータ損失の回避はともに重要な要素であるので、縮退運転中でもデータ損失の危険を回避するととともにファストライト処理を行えるようすることが望ましい。
【０００６】
本発明の目的は高速にデータ書き込み処理が行えるとともにデータ損失を回避することのできるディスクアレイ装置を提供することにある。
【０００７】
【課題を解決するための手段】
データを蓄積するディスク部と、該ディスク部に対してデータの書き込み又は読み出し動作を行う際前記データを一旦蓄える第１乃至第４のメモリモジュールと、前記書き込み又は読み出し動作を制御するディレクタモジュール部とを有し、前記第１のメモリモジュールと前記第２のメモリモジュールとは、第１のペアを組んでおり、前記第３のメモリモジュールと前記第４のメモリモジュールとは、第２のペアを組んでおり、前記第１乃至前記第４のメモリモジュールのいずれか一つに故障が発生すると、前記ディレクタモジュール部は、前記第１及び第２のペアのうち故障したメモリモジュールを含まないペアにファストライトデータを書き込み、前記第１及び第２のペアのうち故障したメモリモジュールを含むペアの、故障していないメモリモジュールをリードキャッシュとして使用し、前記第１乃至第４のメモリモジュールのうち故障していない三つのメモリモジュールの二つに、前記第１乃至第４のメモリモジュール全体の主及び副のキャッシュ管理領域をそれぞれ設定するようにしたことを特徴とするディスクアレイ装置が得られる。
【０００８】
【発明の実施の形態】
以下本発明について図面を参照して説明する。
【０００９】
図１を参照して、図示のディスクアレイ装置は、第１乃至第４のメモリモジュール１１乃至１４を備えており、これら第１乃至第４のメモリモジュール１１乃至１４はディスクキャッシュとして機能する。さらに、ディスクアレイ装置は、ディレクタモジュール群１５、ディスクモジュール群１６、及びホストインターフェース１７を備えており、ディスクアレイ装置は、ホスト（図示せず）からホストインターフェース１７を介してＩ／Ｏコマンドを受けると、このＩ／Ｏコマンドをディレクタモジュール群１５において解析する。そして、この解析結果に基づいて、ディレクタモジュール群１５はＩ／Ｏオペレーションを行う。つまり、Ｉ／Ｏコマンドが入力コマンドであると、ディレクタモジュール群１５はホストから与えられるデータをメモリモジュール１１、１２、１３、及び１４を介してディスクモジュール群１６に転送する。一方、Ｉ／Ｏコマンドが出力コマンドであると、ディレクタモジュール群１５はディスクモジュール群１６上のデータをメモリモジュール１１、１２、１３、及び１４を介してホストに転送する。
【００１０】
ここで、図２も参照して、メモリモジュール冗長動作中のデータ配置について説明する。
【００１１】
図示の例では、メモリモジュール１１に主管理領域２１および主データ領域２２が設定されており、同様にして、メモリモジュール１２に副管理領域２３および副データ領域２４が設定されている。また、メモリモジュール１３には予備管理領域２５および主データ領域２６が設定され、メモリモジュール１４には予備管理領域２７および副データ領域２８が設定されている。
【００１２】
まず、メモリモジュール群全体の管理情報は、主管理領域２１に格納される。副管理領域２３には、主管理領域２１と同一のデータが常に保存される。予備管理領域２５および２７は、未使用である。二つの主データ領域２２および２６は、ディスクキャッシュとして用いる領域であり、ここにはディスク（図示せず）からの読み出しデータ又はホストからの書き込みデータが格納される。主データ領域２２および２６の各々のデータは、副データ領域２４および２８に格納されて二重化される。主データ領域２２、副データ領域２４、主データ領域２６、および副データ領域２８は、リードキャッシュおよびライトキャッシュの両方の用途で使用できる。
【００１３】
いま、一番目のメモリモジュール１１に故障が発生して、主管理領域２１及び主データ領域２２の情報が失われても、後述するように、二重化されているためデータ損失となることはない。
【００１４】
図３も参照して、いま、メモリモジュール１１に故障が発生して、主管理領域２１および主データ領域２２の情報が失われると、つまり、図３に示すように、主管理領域２１および主データ領域２２がそれぞれ使用不能領域３１および３２となると、ディレクタモジュール群１５は、メモリモジュール１２にて、これまで副管理領域２３だった領域を主管理領域３３とすると共に、メモリモジュール１３にて、予備管理領域２５を用いて新しく副管理領域３５を構成する。さらに、ディレクタモジュール群１５は、メモリモジュール１２において、副データ領域２４だった領域を主データ領域３４とするが、この際、主データ領域３４に対応する副データ領域は存在しない（尚、図３においては、主データ領域２６および副データ領域２８をそれぞ主データ領域３６および３８で表し、予備管理領域２７を予備管理領域３７で表している）。この状態において、主データ領域３４はリードキャッシュのみに使用され、ライトキャッシュとしては主データ領域３６および副データ領域３８が用いられる。
【００１５】
通常の場合、縮退動作中に故障したメモリモジュールを交換して、冗長性を回復することになる。ところで、故障したメモリモジュールを交換する前にもう一枚のメモリモジュールが故障すると、例えば、メモリモジュール１２が故障したとすると、図３に示す主データ領域３４上のデータは失われてしまうことになるが、主データ領域３４はリードキャッシュのみに使用している状態であるので、データ損失とはならない。
【００１６】
図４を参照して、上述の状態においては、ディレクタモジュール群１５によって、図４に示すように、主管理領域３３および主データ領域３４はそれぞれ使用不能領域４３および４４とされる（なお、図４においては、図３に示す使用不能領域３１および３２が使用不能領域４１および４２で示されている）。
また、ディレクタモジュール群１５は、メモリモジュール１３において、これまで副管理領域３５だった領域を主管理領域４５とする（尚、図４において、図３に示す主データ領域３５、予備管理領域３７、および副データ領域３８がそれぞれ主データ領域４５、予備管理領域４７、および副データ領域４８で示されている）。
この状態においては、ディレクタモジュール群１５は、ホストからのＩ／Ｏを禁止して、メモリモジュールの使用を禁止する。この際、ディレクタモジュール群１５は、短時間のうちにキャッシュ上のファストライトデータを全てディスクに読み出して、データを保証する。その後、メモリモジュールを交換すれば再び通常の動作を行うことができる。
【００１７】
【発明の効果】
以上説明したように、本発明では、４つのメモリモジュールを備えて、この内の一つのメモリモジュールに故障が発生した際に、縮退運転を行い、さらに、縮退運転中にもう一つのメモリモジュールに故障が発生しても、データ損失となることはなく、縮退運転中のファストライトを継続することができる。その結果、縮退運転中の性能および信頼性を同時に確保することができるという効果がある。
【図面の簡単な説明】
【図１】本発明によるディスクアレイ装置の一例を示すブロック図である。
【図２】図１に示すディスクアレイ装置において通常運転の際の管理領域及びデータ領域を説明するための図である。
【図３】図１に示すディスクアレイ装置において一つのメモリモジュールに故障が発生した際の管理領域及びデータ領域を説明するための図である。
【図４】図３に示す状態においてさらに一つのメモリモジュールに故障が発生した際の管理領域及びデータ領域を説明するための図である。
【符号の説明】
１１〜１４  メモリモジュール
１５  ディレクタモジュール群
１６  ディスクモジュール群
１７  ホストインターフェース
２１，３３，４５  主管理領域
２２，２６，３４，４６  主データ領域
２３，３５  副管理領域
２４，２８，３８，４８  副データ領域
２５，２７，３７，４７  予備管理領域
３１，３２，４１，４２，４３，４４  使用不能領域
【図１】
0003573032.tif 000002
【図２】
0003573032.tif 000003
【図３】
0003573032.tif 000004
【図４】
0003573032.tif 000005