(57)【要約】【課題】キャッシュモジュールが故障した場合でも冗長状態を維持し、かつ、キャッシュモジュールが故障した際の書き込み処理の性能低下を防ぐこと。【解決手段】Ｃａｃｈｅ０とＣａｃｈｅ１がディスクへの未書き込みデータを二重化している場合に、Ｃａｃｈｅ０が故障したとき、ディスク未書き込みデータを他のキャッシュメモリモジュールと二重化していないＣａｃｈｅ４のディスク未書き込みデータであってディスクと同期しているデータに上書きコピーする。【選択図】図１
2007265271.tif 000002
【特許請求の範囲】
【請求項１】
第１のキャッシュメモリモジュールと第２のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化している場合に、
前記第１のキャッシュメモリモジュールと前記第２のキャッシュメモリモジュールのいずれかが故障したとき、前記故障したキャッシュメモリモジュールのディスク未書き込みデータを
他のキャッシュメモリモジュールと二重化していない第３のキャッシュメモリモジュールのディスク未書き込みデータであってディスクと同期しているデータに上書きコピーすることを特徴とするストレージ装置。
【請求項２】
第１のキャッシュメモリモジュールと第２のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化し、かつ、第３のキャッシュメモリモジュールと第４のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化している場合に、
前記第１のキャッシュメモリモジュールと前記第２のキャッシュメモリモジュールのいずれかが故障したとき、前記故障したキャッシュメモリモジュールの複数のディスク未書き込みデータについて
前記複数のディスク未書き込みデータのうち少なくとも１つ以上を前記第３のキャッシュメモリモジュールのディスクへの書き込み済みデータに上書きコピーし、
前記複数のディスク未書き込みデータのうち少なくとも１つ以上を前記第４のキャッシュメモリモジュールのディスクへの書き込み済みデータに上書きコピーすることを特徴とするストレージ装置。
【請求項３】
第１のキャッシュメモリモジュールと第２のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化している場合に、
前記第１のキャッシュメモリモジュールと前記第２のキャッシュメモリモジュールのいずれかが故障したとき、前記故障したキャッシュメモリモジュールのディスク未書き込みデータを
他のキャッシュメモリモジュールと二重化していない第３のキャッシュメモリモジュールのディスク未書き込みデータであってディスクと同期しているデータに上書きコピーすることを特徴とするデータ配置方法。
【請求項４】
第１のキャッシュメモリモジュールと第２のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化し、かつ、第３のキャッシュメモリモジュールと第４のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化している場合に、
前記第１のキャッシュメモリモジュールと前記第２のキャッシュメモリモジュールのいずれかが故障したとき、前記故障したキャッシュメモリモジュールの複数のディスク未書き込みデータについて
前記複数のディスク未書き込みデータのうち少なくとも１つ以上を前記第３のキャッシュメモリモジュールのディスクへの書き込み済みデータに上書きコピーし、
前記複数のディスク未書き込みデータのうち少なくとも１つ以上を前記第４のキャッシュメモリモジュールのディスクへの書き込み済みデータに上書きコピーすることを特徴とするデータ配置方法。
【請求項５】
第１のキャッシュメモリモジュールと第２のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化しているコンピュータに、
前記第１のキャッシュメモリモジュールと前記第２のキャッシュメモリモジュールのいずれかが故障したとき、前記故障したキャッシュメモリモジュールのディスク未書き込みデータを
他のキャッシュメモリモジュールと二重化していない第３のキャッシュメモリモジュールのディスク未書き込みデータであってディスクと同期しているデータに上書きコピーする機能を実現させることを特徴とするプログラム。
【請求項６】
第１のキャッシュメモリモジュールと第２のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化し、かつ、第３のキャッシュメモリモジュールと第４のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化しているコンピュータに、
前記第１のキャッシュメモリモジュールと前記第２のキャッシュメモリモジュールのいずれかが故障したとき、前記故障したキャッシュメモリモジュールの複数のディスク未書き込みデータについて
前記複数のディスク未書き込みデータのうち少なくとも１つ以上を前記第３のキャッシュメモリモジュールのディスクへの書き込み済みデータに上書きコピーし、
前記複数のディスク未書き込みデータのうち少なくとも１つ以上を前記第４のキャッシュメモリモジュールのディスクへの書き込み済みデータに上書きコピーする機能を実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のキャッシュメモリモジュールを持つストレージ装置において、冗長性の喪失と書き込み処理の性能低下を防止する技術に関する。
【背景技術】
【０００２】
従来のストレージ装置において、キャッシュモジュールについて完全ミラーリング方式により冗長性を担保する方法があった。
【０００３】
ここで、ディスクアレイ装置は、データを蓄積するディスクモジュール群、ディスクモジュール群に対してデータの書き込み又は読み出し動作を行う際データを一旦蓄える複数のメモリモジュール、書き込み又は読み出し動作を制御するディレクタモジュール群を備え、第１及び第３のメモリモジュールと第２及び第４のメモリモジュールは互いにペアを組んでおり、第１乃至第４のメモリモジュールのいずれ一つに故障が発生すると、ディレクタモジュール群は残りのメモリモジュールのうちペアを組んでいるメモリモジュールにファストライトデータを書き込み、さらに、残りのメモリモジュールのうち二つのメモリモジュールにキャッシュ管理領域を設定することで、ディスクアレイ装置において、高速にデータ書き込み処理を行うとともにデータ損失を回避することができる技術が提案されている（例えば、特許文献１参照）。
【特許文献１】特開２００１−１３４４８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、従来の方法では、１つのキャッシュモジュールが故障すると冗長性が失われ、また、性能が大きく低下するなどの課題があった。
【０００５】
すなわち、図３において、Ｃａｃｈｅ０が故障した際はＣａｃｈｅ１内のＣａｃｈｅＤａｔａ０が非冗長となる。次に、Ｃａｃｈｅ１が故障した際にＣａｃｈｅＤａｔａ０が失われることを防ぐために、ＣａｃｈｅＤａｔａ０をディスクに書き出した後にＣａｃｈｅ１の使用も停止していた。
【０００６】
その結果、使用するキャッシュはＣａｃｈｅ２とＣａｃｈｅ３のみとなるため、Ｒｅａｄ性能・Ｗｒｉｔｅ性能共に大きく低下することとなっていた。
【０００７】
本発明は、以上説明した事情に鑑みてなされたものであり、その目的は、キャッシュデータを冗長の必要なデータと不要なデータに分け、データの配置方法を工夫することによりキャッシュモジュールが故障した場合でも冗長状態を維持し、かつ、キャッシュモジュールが故障した際の書き込み処理の性能低下を防ぐことである。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明は、第１のキャッシュメモリモジュールと第２のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化している場合に、
前記第１のキャッシュメモリモジュールと前記第２のキャッシュメモリモジュールのいずれかが故障したとき、前記故障したキャッシュメモリモジュールのディスク未書き込みデータを
他のキャッシュメモリモジュールと二重化していない第３のキャッシュメモリモジュールのディスク未書き込みデータであってディスクと同期しているデータに上書きコピーするストレージ装置を提供する。
【０００９】
また、本発明は、第１のキャッシュメモリモジュールと第２のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化し、かつ、第３のキャッシュメモリモジュールと第４のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化している場合に、
前記第１のキャッシュメモリモジュールと前記第２のキャッシュメモリモジュールのいずれかが故障したとき、前記故障したキャッシュメモリモジュールの複数のディスク未書き込みデータについて
前記複数のディスク未書き込みデータのうち少なくとも１つ以上を前記第３のキャッシュメモリモジュールのディスクへの書き込み済みデータに上書きコピーし、
前記複数のディスク未書き込みデータのうち少なくとも１つ以上を前記第４のキャッシュメモリモジュールのディスクへの書き込み済みデータに上書きコピーするストレージ装置を提供する。
【００１０】
また、本発明は、第１のキャッシュメモリモジュールと第２のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化している場合に、
前記第１のキャッシュメモリモジュールと前記第２のキャッシュメモリモジュールのいずれかが故障したとき、前記故障したキャッシュメモリモジュールのディスク未書き込みデータを
他のキャッシュメモリモジュールと二重化していない第３のキャッシュメモリモジュールのディスク未書き込みデータであってディスクと同期しているデータに上書きコピーするデータ配置方法を提供する。
【００１１】
また、本発明は、第１のキャッシュメモリモジュールと第２のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化し、かつ、第３のキャッシュメモリモジュールと第４のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化している場合に、
前記第１のキャッシュメモリモジュールと前記第２のキャッシュメモリモジュールのいずれかが故障したとき、前記故障したキャッシュメモリモジュールの複数のディスク未書き込みデータについて
前記複数のディスク未書き込みデータのうち少なくとも１つ以上を前記第３のキャッシュメモリモジュールのディスクへの書き込み済みデータに上書きコピーし、
前記複数のディスク未書き込みデータのうち少なくとも１つ以上を前記第４のキャッシュメモリモジュールのディスクへの書き込み済みデータに上書きコピーするデータ配置方法を提供する。
【００１２】
また、本発明は、第１のキャッシュメモリモジュールと第２のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化しているコンピュータに、
前記第１のキャッシュメモリモジュールと前記第２のキャッシュメモリモジュールのいずれかが故障したとき、前記故障したキャッシュメモリモジュールのディスク未書き込みデータを
他のキャッシュメモリモジュールと二重化していない第３のキャッシュメモリモジュールのディスク未書き込みデータであってディスクと同期しているデータに上書きコピーする機能を実現させるプログラムを提供する。
【００１３】
また、本発明は、第１のキャッシュメモリモジュールと第２のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化し、かつ、第３のキャッシュメモリモジュールと第４のキャッシュメモリモジュールがディスクへの未書き込みデータを二重化しているコンピュータに、
前記第１のキャッシュメモリモジュールと前記第２のキャッシュメモリモジュールのいずれかが故障したとき、前記故障したキャッシュメモリモジュールの複数のディスク未書き込みデータについて
前記複数のディスク未書き込みデータのうち少なくとも１つ以上を前記第３のキャッシュメモリモジュールのディスクへの書き込み済みデータに上書きコピーし、
前記複数のディスク未書き込みデータのうち少なくとも１つ以上を前記第４のキャッシュメモリモジュールのディスクへの書き込み済みデータに上書きコピーする機能を実現させるプログラムを提供する。
【発明の効果】
【００１４】
本発明によれば、キャッシュモジュールが故障した場合でも冗長状態を維持し、かつ、キャッシュモジュールが故障した際の書き込み処理の性能低下を防ぐことができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の第１の実施の形態について図面を参照して詳細に説明する。
【００１６】
まず、一般にキャッシュメモリモジュールは、書き込みを高速にするため、キャッシュメモリモジュールにのみ書き込み、ディスクへ書き込まない処理を行う。この処理では、キャッシュメモリモジュール上に、ディスクへの未書き込みデータとして存在させるが、故障などによりデータがなくならないように二重化している。
【００１７】
本実施の形態の複数のキャッシュメモリモジュールを持つストレージ装置は、図１のように、５枚のキャッシュメモリモジュールで構成し、Ｃａｃｈｅ０とＣａｃｈｅ１がディスクへの未書き込みデータ(Ｗｒｉｔｅ０,Ｗｒｉｔｅ１)を二重化し、Ｃａｃｈｅ２とＣａｃｈｅ３も同様に(Ｗｒｉｔｅ２,Ｗｒｉｔｅ３)を二重化している。
【００１８】
Ｃａｃｈｅ４は、他のキャッシュメモリモジュールと二重化していない。図中のＲｅａｄは、ディスクと同期しているデータを表し、キャッシュメモリモジュール故障で喪失してもディスクから復旧可能なため、二重化していない。
【００１９】
Ｗｏｒｋは、ＲＡＩＤ構成されたディスクの読み書き時のパリティ計算用に一度だけ用いる一時データであり、キャッシュメモリモジュール故障で喪失してもディスクから復旧可能であるため、二重化していない。
【００２０】
次に、本実施の形態における動作について説明する。
【００２１】
ここでは、Ｃａｃｈｅ０の故障の場合について説明する。Ｃａｃｈｅ０上のＷｒｉｔｅ０,Ｗｒｉｔｅ１の未書き込みデータは、故障の直後、冗長性を失うが、Ｃａｃｈｅ１のＷｒｉｔｅ０,Ｗｒｉｔｅ１をＣａｃｈｅ４へコピーし冗長性を確保する。このとき、Ｃａｃｈｅ４のＲｅａｄ４、Ｒｅａｄ９は上書きされ、データはなくなるが、ディスクに書かれているため喪失しても問題はない。それにより、Ｃａｃｈｅ１とＣａｃｈｅ４をディスクへの未書き込みデータ(Ｗｒｉｔｅ０,Ｗｒｉｔｅ１)を二重化することによって冗長性が維持できる。
【００２２】
本発明の手法を採用しない場合、二重化されていないデータは、ディスクに書き込む必要があり、その処理と、未書き込み領域の低下により、書き込み処理の性能低下を招いていた。
【００２３】
本実施の形態では、キャッシュメモリモジュールの高速なコピーと、未書き込み領域の容量維持をすることで、書き込み処理の性能低下を防止する。
【００２４】
また、正常状態からＣａｃｈｅ１,Ｃａｃｈｅ２,Ｃａｃｈｅ３が故障した場合も同様である。
【００２５】
なお、Ｃａｃｈｅ４の故障の場合、Ｃａｃｈｅ４には冗長の不要なＲｅａｄデータしかないため、冗長性に影響はなく書き込み処理の性能低下も発生しない。
【００２６】
次に、本発明の第２の実施の形態について図面を参照して詳細に説明する。
【００２７】
ここでは、キャッシュモジュール部が４枚で構成されている場合を前提とする。図２において、Ｃａｃｈｅ０が故障した際、Ｃａｃｈｅ０上のＷｒｉｔｅ０、Ｗｒｉｔｅ１の未書き込みデータは故障直後冗長性を失うが、Ｃａｃｈｅ１のＷｒｉｔｅ０をＣａｃｈｅ２へ、Ｃａｃｈｅ１のＷｒｉｔｅ１をＣａｃｈｅ３へコピーし、冗長性を確保する。この時、Ｃａｃｈｅ２上のＲｅａｄ２とＣａｃｈｅ３上のＲｅａｄ３は上書きされるが、ディスクに書かれているため喪失しても問題はない。
【００２８】
これにより、Ｃａｃｈｅ１上のディスク未書き込みのＷｒｉｔｅ０、Ｗｒｉｔｅ１データの冗長性を維持できる。
【００２９】
本発明の手法を採用しない場合、Ｃａｃｈｅ１上の冗長性が失われたＷｒｉｔｅ０・Ｗｒｉｔｅ１データはディスクに書き出す必要があり、それに伴う処理と未書き込みデータに使える領域の縮小により、書き込み処理の低下を招いた。
【００３０】
本実施の形態では、キャッシュメモリモジュールの高速なコピーと、未書き込み領域の容量維持をすることで、書き込み処理の性能低下を防止する。
【００３１】
なお、正常状態からＣａｃｈｅ１,Ｃａｃｈｅ２,Ｃａｃｈｅ３が故障した場合も同様である。
【００３２】
上述する各実施の形態は、本発明の好適な実施の形態であり、本発明の要旨を逸脱しない範囲内において種々変更実施が可能である。例えば、上記の各実施の形態におけるストレージ装置の機能を実現するためのプログラムを本装置に読込ませて実行することにより本装置の機能を実現する処理を行ってもよい。さらに、そのプログラムは、コンピュータ読み取り可能な記録媒体であるＣＤ−ＲＯＭまたは光磁気ディスクなどを介して、または伝送媒体であるインターネット、電話回線などを介して伝送波により他のコンピュータシステムに伝送されてもよい。
【図面の簡単な説明】
【００３３】
【図１】本発明の第１の実施形態におけるストレージ装置のデータ配置構成を示す図である。
【図２】本発明の第２の実施形態におけるストレージ装置のデータ配置構成を示す図である。
【図３】従来のストレージ装置のデータ配置構成を示す図である。
【図１】
2007265271.tif 000003
【図２】
2007265271.tif 000004
【図３】
2007265271.tif 000005