JPH10198602A - ディスクキャッシュの制御方法 - Google Patents
ディスクキャッシュの制御方法Info
- Publication number
- JPH10198602A JPH10198602A JP9011815A JP1181597A JPH10198602A JP H10198602 A JPH10198602 A JP H10198602A JP 9011815 A JP9011815 A JP 9011815A JP 1181597 A JP1181597 A JP 1181597A JP H10198602 A JPH10198602 A JP H10198602A
- Authority
- JP
- Japan
- Prior art keywords
- module
- data
- backup
- memory
- remainder
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 99
- 230000015654 memory Effects 0.000 claims abstract description 272
- 238000012545 processing Methods 0.000 claims abstract description 89
- 238000013500 data storage Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 9
- 238000003672 processing method Methods 0.000 description 8
- 238000011084 recovery Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 4
- 238000013523 data management Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1666—Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Debugging And Monitoring (AREA)
Abstract
も二重書きを継続しFAST WRITE処理を継続す
る。 【解決手段】 メモリモジュールMM#1が故障した場
合には、メモリモジュールMM#2上に格納されている
メモリモジュールMM#1のダーティデータ111のバ
ックアップデータ122を用いてダーティデータ111
の処理を継続するとともに、メモリモジュールMM#2
上に格納されているメモリモジュールMM#1のダーテ
ィデータ111のバックアップデータ122をメモリモ
ジュールMM#3上にコピーしてダーティデータ111
のバックアップデータ111’を作成し、メモリモジュ
ールMM#1上に格納していたメモリモジュールMM#
3のダーティデータ131のバックアップデータ11
2’をメモリモジュールMM#3のダーティデータ13
1をメモリモジュールMM#2上にコピーして生成す
る。
Description
の制御方法に関し、特にキャッシュメモリの故障時にデ
ータを消失することなく処理の復旧および継続を行うた
めのディスクキャッシュの制御方法に関する。
という)へのアクセス速度を高速化するための手法とし
て、ディスクキャッシュが使用されることは一般的にな
っている。
き込み処理を高速化するためにディスクキャッシュへの
データの格納が終了した時点で上位装置に終了報告を行
い、ディスク上のデータの更新は後に行うFAST W
RITE処理もよく行われるようになっている。FAS
T WRITE処理を行う場合、上位装置から送られた
書き込みデータはディスクキャッシュにデータが格納さ
れた時点で終了報告がされるため、実際にディスクに書
き込む以前に障害により未更新データを消失することの
ないように同時にバックアップ用のデータを持ち二重化
することがある。ディスクキャッシュを二重化したシス
テムの場合、片系が故障したときには残りの系だけの縮
退構成で処理を継続するか、あるいは、信頼性確保のた
めFAST WRITE処理を中止するかのいずれかに
よって処理を継続するようになっていた。
リモジュールMM#1,MM#2を使用してディスクキ
ャッシュのデータを二重化する従来のディスクキャッシ
ュの制御方法を模式的に示す図である。図11(a)
は、上位装置からのFASTWRITE指示によりメモ
リモジュール上に書き込まれた未更新データ(以下、ダ
ーティデータという)111および121と、他のメモ
リモジュールに書き込まれた未更新データのバックアッ
プ用のデータ(以下、バックアップデータという)11
2および122と、ディスク上に記録されたデータと一
致したデータ(以下、クリーンデータという)113お
よび123とが格納されている。この場合、上位装置か
らのFAST WRITE指示が出されると、いずれか
一方のメモリモジュールにダーティデータとして書き込
まれると同時に、他方のメモリモジュールに同じデータ
がバックアップデータとして格納される。ディスクから
の読み出しの場合は、いずれか一方のメモリモジュール
にクリーンデータとして格納される。このデータは二重
化はしない。一方のメモリモジュールが障害により使用
できなくなった場合には、他方のメモリモジュールに格
納されていたダーティデータとバックアップデータとを
全てダーティデータとして扱うことにより、未更新デー
タを全て保証する。障害により使用できなくなったメモ
リモジュールに格納されていたクリーンデータは失われ
るが、このクリーンデータを上位装置が読み出そうとし
た場合には、あらためてディスクからデータを読み出し
クリーンデータとして使用可能なメモリモジュールに格
納するだけである。この方法は、メモリモジュールの障
害でデータは失われることはないが、1つのメモリモジ
ュールの障害により未更新データに対する冗長性がなく
なる。
に二重化してしまう従来のディスクキャッシュの制御方
法を示す図である。上位装置からのFAST WRIT
E指示が出されると、いずれか一方のメモリモジュール
にダーティデータとして書き込まれると同時に、他方の
メモリモジュールに同じデータをバックアップデータと
して格納する。この動作は、ディスクからの読み出しの
場合も同じで、クリーンデータも二重化される。この方
法の場合は、1つのメモリモジュールに障害が発生した
ときには使用可能なメモリモジュールだけを使用して処
理を継続するようになる。この場合は、正常時でも搭載
しているメモリ容量の半分だけしか使用できない。
クキャッシュの制御方法の第1の問題点は、キャッシュ
メモリを完全に二重化したシステムの場合、常に使用さ
れるキャッシュメモリの2倍のメモリを必要とするた
め、コストが上昇するということである。
化して冗長性を持たせていても、1つのキャッシュメモ
リの故障によって冗長性を失い、新たな障害が発生した
場合にはデータの消失を招きかねない不安定な状態にな
るということである。そのため、障害により冗長性を失
った場合には、性能を重視して新たな障害の発生時には
データが消失する可能性があることを前提に使用する
か、あるいは信頼性を重視してFAST WRITE処
理を中止するかのいずれかを選択することになる。
せるRAID(RedundantArrays of
Independent Disks)が多く用いら
れるようになり、ライトペナルティという欠点を持つR
AID5形式を用いたシステムでは信頼性確保のため
に、FAST WRITE処理を中止しディスクへのデ
ータの書き込みが終了するまで上位装置への書き込みの
終了を報告しないようにした場合、その性能低下が大き
な問題となる。
は1つのディスクに見えているが、実際には複数のディ
スクにデータを分散させて冗長データを付加して記憶し
ているディスクシステムのことである。RAIDには、
いくつかのレベルが定義されており、RAID5形式と
は、セクタストライピングによってディスクにデータを
記憶する形式である。
512バイトのディスク4台で構成されるRAIDに、
上位装置から2048バイトのデータが送られた場合に
は、ディスクのセクタ長512バイトの整数倍に分割さ
れ、別々のディスクに分散してパリティデータとともに
書き込まれる。この例では、3台のディスクに分散して
データA,B,Cが書き込まれ、冗長データとして図の
横並びの部分のパリティA−Cを1台のディスクに書き
込む。パリティデータは常に横並びのデータのパリティ
を保持するように書き込まれることが必要である。その
ため、この例では、データDが書き込まれることによっ
てパリティD−fは整合性を維持するために、以下のい
ずれかの方法によって内容を更新する必要がある。
し、データDとの3つのデータからパリティデータを計
算し、パリティD−fを書き込む。
リティd−fとを読み出し、データd,パリティd−
f,(データdとパリティd−f),データDを排他的
論理和することによって、パリティD−fを求めて書き
込む。
込むためにはパリティ補正のために、ディスク上のデー
タを読み込む→新しいデータを使用してパリティを再生
成する→書き込む、の各ステップを踏む必要がある。し
たがって、横並びの一列に満たない大きさのデータを書
き込むためには、書き込む以前に一度ディスクからデー
タを読み出す必要があり、そのために単にディスクに書
き込む場合の2倍以上の処理時間がかかる。これをライ
トペナルティといい、RAID5形式に付きまとう問題
である。この問題を解決するのが、FAST WRIT
E処理で、キャッシュメモリにデータDが格納された時
点で終了報告を行い、時間のかかるディスクアクセスは
ホストI/Oとは非同期に実行するものである。ただ
し、FAST WRITE処理は、実際にはディスクに
データを書き込む以前に上位装置に終了報告を行うた
め、実際にディスクに書き込む以前にメモリ障害などが
発生するとデータが失われるという問題がある。
による縮退動作中でも二重書きを継続し信頼性を確保し
ながらFAST WRITE処理を継続することによっ
て性能低下を回避できるようにしたディスクキャッシュ
の制御方法を提供することにある。
シュの制御方法は、3系統以上の物理的に独立したメモ
リモジュールで構成されたディスクキャッシュにおい
て、各系統にデータを分散して格納するように制御さ
れ、各系統のメモリモジュールにはそれぞれディスク上
のデータと一致したクリーンデータと、未更新データで
あるダーティデータと、他の1系統に関する未更新デー
タのバックアップデータとを格納することを特徴とす
る。
方法は、請求項1記載のディスクキャッシュの制御方法
において、第1のメモリモジュールが故障し、第1のメ
モリモジュールに格納されていたデータが失われた場合
には、第2のメモリモジュール上に格納されている第1
のメモリモジュールの未更新データのバックアップデー
タを用いて失われた第1のメモリモジュールの未更新デ
ータの処理を継続するとともに、第2のメモリモジュー
ル上に格納されている第1のメモリモジュールの未更新
データのバックアップデータを第3のメモリモジュール
上にコピーして前記失われた第1のメモリモジュールの
未更新データのバックアップデータを作成し、さらに、
前記故障した第1のメモリモジュール上に格納していた
第3のメモリモジュールの未更新データのバックアップ
データを第3のメモリモジュールの未更新データを第2
のメモリモジュール上にコピーして生成することを特徴
とする。
御方法は、3系統の物理的に独立したメモリモジュール
で構成されたディスクキャッシュにおいて、上位装置か
らI/Oの出された論理ディスク番号を特定し、論理デ
ィスク番号/3の剰余を格納モジュール番号とし、格納
モジュールが故障中かどうかを判断し、故障中であれ
ば、(論理ディスク番号+1)/3の剰余を格納モジュ
ール番号とし、格納モジュールを選択し、FAST W
RITE処理であるかいなかに基づいてバックアップ作
成の必要性を判断し、FAST WRITE処理であれ
ば、(格納モジュール番号+1)/3の剰余をバックア
ップモジュール番号とし、バックアップモジュールを格
納モジュールと同時に選択し、キャッシュディレクトリ
情報より格納位置を決定することを特徴とする。
の制御方法は、請求項3記載のディスクキャッシュの制
御方法において、障害の発生したメモリモジュールの番
号を特定し、(障害モジュール番号+1)/3の剰余が
示すメモリモジュールのバックアップデータをダーティ
データとして扱うようにディレクトリを変更し、(障害
モジュール番号+2)/3の剰余が示すメモリモジュー
ルにダーティデータと同容量の空き領域を確保し、(障
害モジュール番号+2)/3の剰余が示すメモリモジュ
ールにダーティデータをコピーしてバックアップデータ
を作成し、(障害モジュール番号+1)/3の剰余が示
すメモリモジュールにダーティデータと同容量の空き領
域を確保し、(障害モジュール番号+1)/3の剰余が
示すメモリモジュールにダーティデータをコピーしてバ
ックアップデータを作成することを特徴とする。
方法は、4系統の物理的に独立したメモリモジュールで
構成されたディスクキャッシュにおいて、上位装置から
I/Oの出された論理ディスク番号を特定し、論理ディ
スク番号/4の剰余を格納モジュール番号とし、格納モ
ジュールが故障中かどうかを判断し、故障中であれば
(論理ディスク番号+2)/4の剰余を格納モジュール
番号とし、格納モジュールを選択し、FAST WRI
TE処理であるかいなかに基づいてバックアップ作成の
必要性を判断し、FAST WRITE処理であれば、
(格納モジュール番号+1)/4の剰余をバックアップ
モジュール番号とし、バックアップモジュールが故障中
であるかどうかを判断し、バックアップモジュールが故
障中であれば(格納モジュール番号+3)/4の剰余を
バックアップモジュール番号とし、バックアップモジュ
ールを格納モジュールと同時に選択し、キャッシュディ
レクトリ情報より格納位置を決定することを特徴とす
る。
御方法は、請求項5記載のディスクキャッシュの制御方
法において、障害の発生したメモリモジュールの番号を
特定し、(障害モジュール番号+2)/4の剰余が示す
メモリモジュールのバックアップデータをダーティデー
タとして扱うようにディレクトリを変更し、(障害モジ
ュール番号+3)/4の剰余が示すメモリモジュールを
選択し、選択モジュールが故障中かどうかを判定し、選
択モジュールが故障中でなければ(障害モジュール番号
+3)/4の剰余が示すメモリモジュールをバックアッ
プモジュールとして設定し、選択モジュールが故障中で
あれば(障害モジュール番号+5)/4の剰余が示すメ
モリモジュールをバックアップモジュールとして設定
し、設定されたバックアップモジュールに(障害モジュ
ール番号+2)/4の剰余が示すメモリモジュール内の
ダーティデータと同容量の空き領域を確保し、設定され
たバックアップモジュールに(障害モジュール番号+
2)/4の剰余が示すメモリモジュール内のダーティデ
ータをコピーしてバックアップデータを作成し、設定さ
れたバックアップモジュールに(障害モジュール番号+
2)/4の剰余が示すメモリモジュールにダーティデー
タと同容量の空き領域を確保し、設定されたバックアッ
プモジュールに(障害モジュール番号+2)/4の剰余
が示すメモリモジュール内のダーティデータをコピーし
てバックアップデータを作成し、当該メモリモジュール
以外で故障していて復旧の行われていないメモリモジュ
ールを調査し、故障中で未復旧のメモリモジュールがあ
るかどうかを判定し、故障中で未復旧のメモリモジュー
ルがあれば、制御を最初に戻して処理を繰り返すことを
特徴とする。
方法は、3系統の物理的に独立したメモリモジュールで
構成されたディスクキャッシュにおいて、上位装置から
I/Oの出された論理ディスク番号とセクタ番号とから
所定サイズ単位のアクセス領域を算出し、アクセス領域
/3の剰余を格納モジュール番号とし、格納モジュール
が故障中かどうかを判断し、故障中であれば、(アクセ
ス領域+1)/3の剰余を格納モジュール番号とし、格
納モジュールを選択し、FAST WRITE処理であ
るかいなかに基づいてバックアップ作成の必要性を判断
し、FASTWRITE処理であれば、(格納モジュー
ル番号+1)/3の剰余をバックアップモジュール番号
とし、バックアップモジュールを格納モジュールと同時
に選択し、キャッシュディレクトリ情報より格納位置を
決定することを特徴する。
御方法は、4系統の物理的に独立したメモリモジュール
で構成されたディスクキャッシュにおいて、上位装置か
らI/Oの出された論理ディスク番号とセクタ番号とか
ら所定サイズ単位のアクセス領域を算出し、アクセス領
域/4の剰余を格納モジュール番号とし、格納モジュー
ルが故障中かどうかを判断し、故障中であれば、(アク
セス領域+2)/4の剰余を格納モジュール番号とし、
格納モジュールを選択し、FAST WRITE処理で
あるかいなかに基づいてバックアップ作成の必要性を判
断し、FASTWRITE処理であれば、(格納モジュ
ール番号+1)/4の剰余をバックアップモジュール番
号とし、バックアップモジュールが故障中であるかどう
かを判断し、バックアップモジュールが故障中であれ
ば、(格納モジュール番号+3)/4の剰余をバックア
ップモジュール番号とし、バックアップモジュールを格
納モジュールと同時に選択し、キャッシュディレクトリ
情報より格納位置を決定することを特徴とする。
て図面を参照して説明する。
の実施の形態に係るディスクキャッシュの制御方法によ
るデータ管理の仕組みを模式的に示す図である。本実施
の形態は、物理的に独立した3つのメモリモジュールM
M#1,MM#2,MM#3として3枚の独立したキャ
ッシュメモリを搭載した論理回路基板を想定している。
独立したメモリモジュールMM#1,MM#2,MM#
3に、上位装置からFAST WRITE処理で格納さ
れ未だディスク上に書き込まれていないダーティデータ
と、他のメモリモジュールに書き込まれた未だディスク
上に書き込まれていないダーティデータのバックアップ
データと、ディスク上に書き込まれたデータと一致して
いるクリーンデータとをそれぞれ独立に管理している。
あらかじめ、ディスクのアドレス(論理ディスク番
号),記録領域のアドレス(セクタ番号)などによりデ
ータを格納すべきメモリモジュールは決められている。
モリモジュールMM#1,MM#2,MM#3が正常に
使用可能なときの動作を説明する。
でデータを格納する場合には、事前に決められたルール
に従って格納すべきメモリモジュール(以下、格納モジ
ュールという)を決定し、決定されたメモリモジュール
にダーティデータとして格納すると同時に、このメモリ
モジュールのバックアップデータを格納するメモリモジ
ュール(以下、バックアップモジュールという)を決定
し、このメモリモジュールに同じデータをバックアップ
データとして格納する。
は、格納すべきメモリモジュールを決定し、ここに格納
する。
きメモリ空間が存在しない場合には、クリーンデータが
格納されている領域からLRU(Least Rece
ntly Used)アルゴリズムなどによりもっとも
優先順位の低いデータをキャッシュメモリから掃き出
し、そこに格納する。
込み処理が行われ、ディスクへの書き込みが完了する
と、当該メモリ空間はクリーンデータに組み込まれると
同時に、これに対応する他のメモリモジュールに格納さ
れているバックアップデータの格納されているメモリ空
間は解放される。
1つのメモリモジュールが使用できなくなったときの動
作について説明する。ここでは、第1メモリモジュール
MM#1が故障した場合を想定する。
M#1の故障によって変更されたデータの格納状態が示
されている。
り使用できなくなった場合は、第1メモリモジュールM
M#1に格納されていたダーティデータ111は失われ
ているため、第2メモリモジュールMM#2に格納され
ているバックアップデータ122を失われたダーティデ
ータ111の代わりに使用する。
タ122は冗長性を持たないため、これが格納されてい
る第2メモリモジュールMM#2とは独立した第3メモ
リモジュールMM#3にデータをコピーし、新たなバッ
クアップデータ111’として格納する。
111’を格納するためのメモリ空間を確保するため
に、必要ならば第3メモリモジュールMM#3のクリー
ンデータ133の中から優先順位の低いデータを掃き出
してメモリ空間を確保する。
障害により第3メモリモジュールMM#3に格納されて
いたダーティデータ131はバックアップデータ112
を失っており冗長性がなくなっているため、ダーティデ
ータ131の内容を第3メモリモジュールMM#3とは
独立した第2メモリモジュールMM#2にコピーし、新
たなバックアップデータ112’として格納する。
したときと同様に、新たなバックアップデータ112’
を格納するためのメモリ空間を確保するために、必要な
らば第2メモリモジュールMM#2のクリーンデータ1
23の中から優先順位の低いデータを掃き出してメモリ
空間を確保する。
ータの冗長性が回復される。
害が回復するまでの間、第1メモリモジュールMM#1
に格納されるべきデータは全て第2メモリモジュールM
M#2に格納するように扱われ処理が継続される。
クキャッシュの制御方法によれば、第1メモリモジュー
ルMM#1が障害によって使用できなくなってもこれに
よって失われたディスクへの書き込みが完了していない
ダーティデータは第2メモリモジュールMM#2に格納
されているバックアップデータで復旧可能である。
格納されていた他の系統のメモリモジュールのバックア
ップデータも失われるが、これはバックアップであるた
め元のデータが格納されているメモリモジュールがデー
タを保持しており、未更新データが失われることはな
い。
M#1にはディスクの内容と一致したデータも含まれて
いるかもしれないが、これはディスクから再度読み出す
ことにより復旧可能でありデータの消失にはつながらな
い。
害が発生しても全てのデータが保証され、一部のデータ
が冗長性を失うだけである。
障害によって冗長性を失った第1メモリモジュールMM
#1内のダーティデータ111は、第2メモリモジュー
ルMM#2に格納されていたバックアップデータ122
を第3メモリモジュールMM#3にコピーすることによ
り、第2メモリモジュールMM#2および第3メモリモ
ジュールMM#3にそれぞれ格納されることになり冗長
性を回復することができる。
障害によって冗長性を失った第3メモリモジュールMM
#3内のダーティデータ131は、それ自身を第2メモ
リモジュールMM#2にコピーすることにより、第2メ
モリモジュールMM#2および第3メモリモジュールM
M#3に格納されることになり冗長性を回復することが
できる。
の実施の形態に係るディスクキャッシュ制御方法による
データ管理の仕組みを、4つのメモリモジュールMM#
1〜MM#4で実施した例で模式的に示した図である。
通常、独立した2つのメモリモジュールが同時に故障す
る確率は非常に低い。しかし、メモリモジュール以外の
外部故障に起因する障害では複数のメモリモジュールに
障害が波及することがあり得る。例えば、図2(a)お
よび(b)に示すように、4つのメモリモジュールMM
#1〜MM#4で構成されていても、これらメモリモジ
ュールMM#1〜MM#4に電源を供給している部分が
独立していなければ電源部の障害により複数のメモリモ
ジュールが同時に使用できなくなることがあり得る。
モリモジュールMM#1および第2メモリモジュールM
M#2と第3メモリモジュールMM#3および第4メモ
リモジュールMM#4とは、それぞれ共通の電源部から
電源を供給されているものとする。この場合、1つの電
源部の障害で2つのメモリモジュールが使用できなくな
る可能性がある。
部などのメモリモジュールMM#1〜MM#4以外の障
害によリ2つのメモリモジュールが同時に使用できなく
なる場合について説明する。
スクのアドレス,記録領域のアドレスなどによりデータ
を格納すべきメモリモジュールは決められており、その
動作は3つのメモリモジュールMM#1〜MM#3で実
現された第1の実施の形態に係るディスクキャッシュの
制御方法の場合と同じである。ただし、第2の実施の形
態に係るディスクキャッシュの制御方法では、図2
(a)に示すように、電源などの共通部の故障を想定し
て第1メモリモジュールMM#1および第2メモリモジ
ュールMM#2に格納されるダーティデータのバックア
ップデータは異なる電源部から電力供給を受けている第
3メモリモジュールMM#3および第4メモリモジュー
ルMM#4に格納するように設定されている。
ュールMM#1および第2メモリモジュールMM#2が
同時に使用できなくなった場合には、ダーティデータ1
11および121が失われる。したがって、第3メモリ
モジュールMM#3および第4メモリモジュールMM#
4に格納されているバックアップデータ132および1
42を失われたダーティデータの代わりに使用すること
で処理を継続できるようにする。
るために、第3メモリモジュールMM#3に格納されて
いるダーティデータ131および132を独立した第4
メモリモジュールMM#4にコピーし、ダーティデータ
131および132のバックアップデータ112’およ
び111’を生成する。
格納されているダーティデータ141および142を独
立した第3メモリモジュールMM#3にコピーし、ダー
ティデータ141および142のバックアップデータ1
22’および121’を生成し、冗長性を回復させる。
てさらに詳細に説明する。
クキャッシュの制御方法が適用されるディスクシステム
の構成を例示するブロック図である。このディスクシス
テムは、ホストコンピュータ2にディスク制御装置1を
介して多数のディスク3が4系統をなすように接続され
て構成されており、ディスク制御装置1は、ホストイン
タフェース(I/F)制御部11と、マイクロプログラ
ム処理部12と、第1モジュールセレクタ13と、第2
モジュールセレクタ14と、3つのメモリモジュールM
M#1〜MM#3と、アレイ制御部15と、4つのディ
スクI/F制御部16とから構成されている。また、デ
ィスク3は、物理的には4台毎に、ホストコンピュータ
2から1台のディスクとして扱われる論理ディスクLD
#1,LD#2,…を構成している。ここでは、1つの
論理ディスクLDが4台の物理ディスク3で構成される
RAID5形式のディスクシステムを想定している。な
お、ディスク制御装置1では、ホストコンピュータ2と
ディスク3との間でデータを直接転送することはせず、
一旦ディスクキャッシュに格納してからデータを転送す
る構成になっている。
ュータ2とのインタフェースの制御用回路で構成され、
動作制御はマイクロプログラム処理部12の指示によっ
て制御される。
ク制御装置1の各機能ブロックの動作を制御する部分で
ある。
/F制御部11とメモリモジュールMM#1〜MM#3
との間のデータ転送を行う際に、どのメモリモジュール
を選択するかを決定するメモリモジュールの選択手段で
ある。
御部15とメモリモジュールMM#1〜MM#3との間
のデータ転送を行う際に、どのメモリモジュールを選択
するかを決定するメモリモジュールの選択手段である。
リモジュールMM#2および第3メモリモジュールMM
#3は、ディスクキャッシュのためのメモリで構成され
る。各メモリモジュール上には、データ格納のためのデ
ータ部と、LRUテーブルなどの制御情報を格納するデ
ィレクトリ部とから構成される。各メモリモジュールの
データ部に関する制御情報は、全て同一メモリモジュー
ルのディレクトリ部に格納される。
1から見える論理ディスクLD#1,LD#2,…上の
アドレスと実際にディスク3上の格納されるべきアドレ
スとの対応の決定,ディスク3とのインタフェースの制
御などを行う。
されたディスク3とのインタフェース接続回路で構成さ
れる。
スクキャッシュの制御方法をそれぞれ示すフローチャー
トである。
ルMM#1〜MM#3で構成されるディスク制御装置1
での格納モジュールの決定方法は、論理ディスク番号特
定ステップS101と、格納モジュール番号決定ステッ
プS102と、格納モジュール故障中判定ステップS1
03と、格納モジュール番号変更ステップS104と、
格納モジュール選択ステップS105と、FAST W
RITE処理判定ステップS106と、バックアップモ
ジュール番号決定ステップS107と、バックアップモ
ジュール選択ステップS108と、格納位置決定ステッ
プS109とからなる。
ルMM#1〜MM#3で構成されるディスク制御装置1
において1つのメモリモジュールで障害が発生した場合
の復旧処理方法は、障害発生メモリモジュール番号特定
ステップS201と、ディレクトリ変更ステップS20
2と、空き領域確保ステップS203と、バックアップ
データ作成ステップS204と、空き領域確保ステップ
S205と、バックアップデータ作成ステップS206
とからなる。
クキャッシュの制御方法の手順について説明する。
M#1〜MM#3で構成されるディスク制御装置1での
格納モジュールの決定方法について説明する。
コンピュータ2からI/O(入出力)の出された論理デ
ィスク番号を特定し(ステップS101)、論理ディス
ク番号/3の剰余を格納モジュール番号とする(ステッ
プS102)。次に、マイクロプログラム処理部12
は、格納モジュールが故障中かどうかを判断し(ステッ
プS103)、故障中であれば、(論理ディスク番号+
1)/3の剰余を格納モジュール番号とする(ステップ
S104)。続いて、マイクロプログラム処理部12
は、第1モジュールセレクタ13に対して格納モジュー
ルを選択し(ステップS105)、FAST WRIT
E処理であるかいなかに基づいてバックアップ作成の必
要性を判断する(ステップS106)。FAST WR
ITE処理であれば、マイクロプログラム処理部12
は、(格納モジュール番号+1)/3の剰余をバックア
ップモジュール番号とし(ステップS107)、第1モ
ジュールセレクタ13に対してバックアップモジュール
を格納モジュールと同時に選択する(ステップS10
8)。最後に、マイクロプログラム処理部12は、キャ
ッシュディレクトリ情報より格納位置を決定する(ステ
ップS109)。
M#1〜MM#3で構成されるディスク制御装置1にお
いて1つのメモリモジュールで障害が発生した場合の復
旧処理方法について説明する。
発生したメモリモジュールの番号を特定し(ステップS
201)、(障害モジュール番号+1)/3の剰余が示
すメモリモジュールのバックアップデータ122をダー
ティデータ122として扱うようにディレクトリを変更
する(ステップS202)。次に、マイクロプログラム
処理部12は、必要ならばクリーンデータ133を掃き
出して(障害モジュール番号+2)/3の剰余が示すメ
モリモジュールにダーティデータ122と同容量の空き
領域を確保し(ステップS203)、(障害モジュール
番号+2)/3の剰余が示すメモリモジュールにダーテ
ィデータ122をコピーしてバックアップデータ11
1’を作成する(ステップS204)。続いて、マイク
ロプログラム処理部12は、必要ならばクリーンデータ
123を掃き出して(障害モジュール番号+1)/3の
剰余が示すメモリモジュールにダーティデータ131と
同容量の空き領域を確保し(ステップS205)、(障
害モジュール番号+1)/3の剰余が示すメモリモジュ
ールにダーティデータ131をコピーしてバックアップ
データ112’を作成する(ステップS206)。
ュの制御方法について説明する。
御方法が適用されるディスクシステムは、図3に示した
ディスクシステムにおいて、第4メモリモジュールMM
#4がさらに追加されただけのものであるので、その図
示を省略し、図3に示した名称,符号等をそのまま流用
して説明する。
ルMM#1〜MM#4で構成されるディスク制御装置1
での格納モジュールの決定方法は、論理ディスク番号特
定ステップS301と、格納モジュール番号決定ステッ
プS302と、格納モジュール故障中判定ステップS3
03と、格納モジュール番号変更ステップS304と、
格納モジュール選択ステップS305と、FAST W
RITE処理判定ステップS306と、バックアップモ
ジュール番号決定ステップS307と、バックアップモ
ジュール故障中判定ステップS308と、バックアップ
モジュール番号変更ステップS309と、バックアップ
モジュール選択ステップS310と、格納位置決定ステ
ップS311とからなる。
リモジュールMM#1〜MM#4で構成されるディスク
制御装置1において2つのメモリモジュールで同時に障
害が発生した場合の復旧処理方法は、障害発生メモリモ
ジュール番号特定ステップS401と、ディレクトリ変
更ステップS402と、メモリモジュール選択ステップ
S403と、選択モジュール故障中判定ステップS40
4と、バックアップモジュール設定ステップS405
と、バックアップモジュール設定ステップS406と、
空き領域確保ステップS407と、バックアップデータ
作成ステップS408と、空き領域確保ステップS40
9と、バックアップデータ作成ステップS410と、故
障中未復旧モジュール調査ステップS411と、故障中
未復旧モジュール有無判定ステップS412とからな
る。
クキャッシュの制御方法の手順について説明する。
M#1〜MM#4で構成されるディスク制御装置1での
格納モジュールの決定方法について説明する。
コンピュータ2からI/Oの出された論理ディスク番号
を特定し(ステップS301)、論理ディスク番号/4
の剰余を格納モジュール番号とする(ステップS30
2)。次に、マイクロプログラム処理部12は、格納モ
ジュールが故障中かどうかを判断し(ステップS30
3)、故障中であれば、(論理ディスク番号+2)/4
の剰余を格納モジュール番号とする(ステップS30
4)。続いて、マイクロプログラム処理部12は、第1
モジュールセレクタ13に対して格納モジュールを選択
し(ステップS305)、FAST WRITE処理で
あるかいなかに基づいてバックアップ作成の必要性を判
断する(ステップS306)。FAST WRITE処
理であれば、マイクロプログラム処理部12は、(格納
モジュール番号+1)/4の剰余をバックアップモジュ
ール番号とし(ステップS307)、バックアップモジ
ュールが故障中であるかどうかを判断する(ステップS
308)。バックアップモジュールが故障中であれば、
マイクロプログラム処理部12は、(格納モジュール番
号+3)/4の剰余をバックアップモジュール番号とす
る(ステップS309)。次に、マイクロプログラム処
理部12は、第1モジュールセレクタ13に対してバッ
クアップモジュールを格納モジュールと同時に選択する
(ステップS310)。最後に、マイクロプログラム処
理部12は、キャッシュディレクトリ情報より格納位置
を決定する(ステップS311)。
M#1〜MM#4で構成されるディスク制御装置1にお
いて2つのメモリモジュールMM#1,MM#2で同時
に障害が発生した場合の復旧処理方法について説明す
る。
発生したメモリモジュールの番号を特定し(ステップS
401)、(障害モジュール番号+2)/4の剰余が示
すメモリモジュールのバックアップデータ132(14
2)をダーティデータ132(142)として扱うよう
にディレクトリを変更する(ステップS402)。続い
て、マイクロプログラム処理部12は、(障害モジュー
ル番号+3)/4の剰余が示すメモリモジュールを選択
し(ステップS403)、選択モジュールが故障中かど
うかを判定する(ステップS404)。選択モジュール
が故障中でなければ、マイクロプログラム処理部12
は、(障害モジュール番号+3)/4の剰余が示すメモ
リモジュールをバックアップモジュールとして設定し
(ステップS405)、選択モジュールが故障中であれ
ば、(障害モジュール番号+5)/4の剰余が示すメモ
リモジュールをバックアップモジュールとして設定する
(ステップS406)。次に、マイクロプログラム処理
部12は、必要ならばクリーンデータ143(クリーン
データ133)を掃き出して、設定されたバックアップ
モジュールに(障害モジュール番号+2)/4の剰余が
示すメモリモジュール内のダーティデータ132(14
2)と同容量の空き領域を確保し(ステップS40
7)、設定されたバックアップモジュールに(障害モジ
ュール番号+2)/4の剰余が示すメモリモジュール内
のダーティデータ132(142)をコピーしてバック
アップデータ111’(121’)を作成する(ステッ
プS408)。続いて、マイクロプログラム処理部12
は、必要ならばクリーンデータ143(クリーンデータ
133)を掃き出して、設定されたバックアップモジュ
ールに(障害モジュール番号+2)/4の剰余が示すメ
モリモジュール内のダーティデータ131(141)と
同容量の空き領域を確保し(ステップS409)、設定
されたバックアップモジュールに(障害モジュール番号
+2)/4の剰余が示すメモリモジュール内のダーティ
データ131(141)をコピーしてバックアップデー
タ112’(122’)を作成する(ステップS41
0)。次に、マイクロプログラム処理部12は、当該メ
モリモジュールの以外で故障していて復旧の行われてい
ないメモリモジュールを調査し(ステップS411)、
故障中で未復旧のメモリモジュールがあるかどうかを判
定する(ステップS412)。故障中で未復旧のメモリ
モジュールがあれば、マイクロプログラム処理部12
は、ステップS401に制御を戻し、なければ処理を終
了する。
ュの制御方法について説明する。
御方法は、第1実施例に係るディスクキャッシュの制御
方法が3つのメモリモジュールMM#1〜MM#3で構
成されるディスク制御装置1において論理ディスク単位
に格納モジュールを決定していたのに対して、論理ディ
スクの所定サイズ単位(例えば、1Gバイト単位)に格
納モジュールを決定するようにしたものである。したが
って、第3実施例に係るディスクキャッシュの制御方法
が適用されるディスクシステムは、図3に示したディス
クシステムと同様のものであるので、その図示を省略
し、図3に示した名称,符号等をそのまま流用して説明
する。また、3つのメモリモジュールMM#1〜MM#
3で構成されるディスク制御装置1において1つのメモ
リモジュールで障害が発生した場合の復旧処理方法は、
図5に示した第1実施例の場合と同様であるので、その
詳しい説明を省略する。
ルMM#1〜MM#3で構成されるディスク制御装置1
での格納モジュールの決定方法は、アクセス領域算出ス
テップS501と、格納モジュール番号決定ステップS
502と、格納モジュール故障中判定ステップS503
と、格納モジュール番号変更ステップS504と、格納
モジュール選択ステップS505と、FAST WRI
TE処理判定ステップS506と、バックアップモジュ
ール番号決定ステップS507と、バックアップモジュ
ール選択ステップS508と、格納位置決定ステップS
509とからなる。
クキャッシュの制御方法の手順について説明する。ここ
では、3つのメモリモジュールMM#1〜MM#3で構
成されるディスク制御装置1での格納モジュールの決定
方法について説明する。
コンピュータ2からI/Oの出された論理ディスク番号
LD#nとセクタ番号SEC#とから、アクセス領域=
{Σ(論理ディスク番号LD#iの記憶容量)+(セク
タ番号SEC#−1)×セクタサイズ}÷230(ただ
し、Σはi=0〜n−1での和)を算出し(ステップS
501)、アクセス領域/3の剰余を格納モジュール番
号とする(ステップS502)。次に、マイクロプログ
ラム処理部12は、格納モジュールが故障中かどうかを
判断し(ステップS503)、故障中であれば、(アク
セス領域+1)/3の剰余を格納モジュール番号とする
(ステップS504)。続いて、マイクロプログラム処
理部12は、第1モジュールセレクタ13に対して格納
モジュールを選択し(ステップS505)、FAST
WRITE処理であるかいなかに基づいてバックアップ
作成の必要性を判断する(ステップS506)。FAS
TWRITE処理であれば、マイクロプログラム処理部
12は、(格納モジュール番号+1)/3の剰余をバッ
クアップモジュール番号とし(ステップS507)、第
1モジュールセレクタ13に対してバックアップモジュ
ールを格納モジュールと同時に選択する(ステップS5
08)。最後に、マイクロプログラム処理部12は、キ
ャッシュディレクトリ情報より格納位置を決定する(ス
テップS509)。
ュの制御方法について説明する。
御方法は、第2実施例に係るディスクキャッシュの制御
方法が4つのメモリモジュールMM#1〜MM#4で構
成されるディスク制御装置1において論理ディスク単位
に格納モジュールを決定していたのに対して、論理ディ
スクの所定サイズ単位(例えば、1Gバイト単位)に格
納モジュールを決定するようにしたものである。したが
って、第4実施例に係るディスクキャッシュの制御方法
が適用されるディスクシステムは、図3に示したディス
クシステムにおいて、第4メモリモジュールMM#4が
さらに追加されただけのものであるので、その図示を省
略し、図3に示した名称,符号等をそのまま流用して説
明する。また、4つのメモリモジュールMM#1〜MM
#4で構成されるディスク制御装置1において2つのメ
モリモジュールで障害が発生した場合の復旧処理方法
は、図7および図8に示した第2実施例の場合と同様で
あるので、その詳しい説明を省略する。
ールMM#1〜MM#4で構成されるディスク制御装置
1での格納モジュールの決定方法は、アクセス領域算出
ステップS601と、格納モジュール番号決定ステップ
S602と、格納モジュール故障中判定ステップS60
3と、格納モジュール番号変更ステップS604と、格
納モジュール選択ステップS605と、FAST WR
ITE処理判定ステップS606と、バックアップモジ
ュール番号決定ステップS607と、バックアップモジ
ュール故障中判定ステップS608と、バックアップモ
ジュール番号変更ステップS609と、バックアップモ
ジュール選択ステップS610と、格納位置決定ステッ
プS611とからなる。
クキャッシュの制御方法の手順について説明する。ここ
では、4つのメモリモジュールMM#1〜MM#4で構
成されるディスク制御装置1での格納モジュールの決定
方法について説明する。
コンピュータ2からI/Oの出された論理ディスク番号
LD#nとセクタ番号SEC#とから、アクセス領域=
{Σ(論理ディスク番号LD#iの記憶容量)+(セク
タ番号SEC#−1)×セクタサイズ}÷230(ただ
し、i=0〜n−1)を算出し(ステップS601)、
アクセス領域/4の剰余を格納モジュール番号とする
(ステップS602)。次に、マイクロプログラム処理
部12は、格納モジュールが故障中かどうかを判断し
(ステップS603)、故障中であれば、(アクセス領
域+2)/4の剰余を格納モジュール番号とする(ステ
ップS604)。続いて、マイクロプログラム処理部1
2は、第1モジュールセレクタ13に対して格納モジュ
ールを選択し(ステップS605)、FAST WRI
TE処理であるかいなかに基づいてバックアップ作成の
必要性を判断する(ステップS606)。FAST W
RITE処理であれば、マイクロプログラム処理部12
は、(格納モジュール番号+1)/4の剰余をバックア
ップモジュール番号とし(ステップS607)、バック
アップモジュールが故障中であるかどうかを判断する
(ステップS608)。バックアップモジュールが故障
中であれば、マイクロプログラム処理部12は、(格納
モジュール番号+3)/4の剰余をバックアップモジュ
ール番号とする(ステップS609)。次に、マイクロ
プログラム処理部12は、第1モジュールセレクタ13
に対してバックアップモジュールを格納モジュールと同
時に選択する(ステップS610)。最後に、マイクロ
プログラム処理部12は、キャッシュディレクトリ情報
より格納位置を決定する(ステップS611)。
ャッシュの制御方法の第1の効果は、メモリモジュール
の障害によって一部のメモリモジュールが使用できなく
なっても未更新データの二重化を継続できることであ
る。一部のメモリモジュールが使用できなくなっても未
更新データの二重化を継続することができるため、信頼
性確保のためにFAST WRITE処理を中断した
り、あるいはさらに障害が発生した場合にはデータの消
失が起こり得る冗長性のない状態での運用を行う必要が
なくなる。すなわち、障害によりキャッシュメモリの一
部が使用できなくなっても、高い性能と高い信頼性とを
同時に得ることができる。
よっても未更新データの二重化を継続することができる
ようにしても、障害のない状態では搭載されているメモ
リ空間を有効に使用できることである。すなわち、冗長
性を維持させるためにコストの上昇を招かないことであ
る。
態に係るディスクキャッシュの制御方法によるデータ管
理の仕組みを示す図である。
態に係るディスクキャッシュの制御方法によるデータ管
理の仕組みを示す図である。
の制御方法が適用されるディスクシステムの構成を例示
するブロック図である。
の制御方法が適用された3つのメモリモジュールで構成
されるディスク制御装置での格納モジュールの決定方法
を示すフローチャートである。
の制御方法が適用された3つのメモリモジュールで構成
されるディスク制御装置において1つのメモリモジュー
ルに障害が発生した場合の復旧処理方法を示すフローチ
ャートである。
の制御方法が適用された4つのメモリモジュールで構成
されるディスク制御装置での格納モジュールの決定方法
を示すフローチャートである。
の制御方法が適用された4つのメモリモジュールで構成
されるディスク制御装置において2つのメモリモジュー
ルに同時に障害が発生した場合の復旧処理方法の前半部
を示すフローチャートである。
の制御方法が適用された4つのメモリモジュールで構成
されるディスク制御装置において2つのメモリモジュー
ルに同時に障害が発生した場合の復旧処理方法の後半部
を示すフローチャートである。
の制御方法が適用された3つのメモリモジュールで構成
されるディスク制御装置での格納モジュールの決定方法
を示すフローチャートである。
ュの制御方法が適用された4つのメモリモジュールで構
成されるディスク制御装置での格納モジュールの決定方
法を示すフローチャートである。
シュの制御方法における二重化による未更新データの管
理の仕組みを示す図である。
プデータ 112,122,132,142 バックアップデータ 113,123,133,143 クリーンデータ LD#1,LD#2,… 論理ディスク MM#1,MM#2,MM#3,MM#4 メモリモジ
ュール S101 論理ディスク番号特定ステップ S102 格納モジュール番号決定ステップ S103 格納モジュール故障中判定ステップ S104 格納モジュール番号変更ステップ S105 格納モジュール選択ステップ S106 FAST WRITE処理判定ステップ S107 バックアップモジュール番号決定ステップ S108 バックアップモジュール選択ステップ S109 格納位置決定ステップ S201 障害発生メモリモジュール番号特定ステップ S202 ディレクトリ変更ステップ S203 空き領域確保ステップ S204 バックアップデータ作成ステップ S205 空き領域確保ステップ S206 バックアップデータ作成ステップ S301 論理ディスク番号特定ステップ S302 格納モジュール番号決定ステップ S303 格納モジュール故障中判定ステップ S304 格納モジュール番号変更ステップ S305 格納モジュール選択ステップ S306 FAST WRITE処理判定ステップ S307 バックアップモジュール番号決定ステップ S308 バックアップモジュール故障中判定ステップ S309 バックアップモジュール番号変更ステップ S310 バックアップモジュール選択ステップ S311 格納位置決定ステップ S401 障害発生メモリモジュール番号特定ステップ S402 ディレクトリ変更ステップ S403 メモリモジュール選択ステップ S404 選択モジュール故障中判定ステップ S405 バックアップモジュール設定ステップ S406 バックアップモジュール設定ステップ S407 空き領域確保ステップ S408 バックアップデータ作成ステップ S409 空き領域確保ステップ S410 バックアップデータ作成ステップ S411 故障中未復旧モジュール調査ステップ S412 故障中未復旧モジュール有無判定ステップ S501 アクセス領域算出ステップ S502 格納モジュール番号決定ステップ S503 格納モジュール故障中判定ステップ S504 格納モジュール番号変更ステップ S505 格納モジュール選択ステップ S506 FAST WRITE処理判定ステップ S507 バックアップモジュール番号決定ステップ S508 バックアップモジュール選択ステップ S509 格納位置決定ステップ S601 アクセス領域算出ステップ S602 格納モジュール番号決定ステップ S603 格納モジュール故障中判定ステップ S604 格納モジュール番号変更ステップ S605 格納モジュール選択ステップ S606 FAST WRITE処理判定ステップ S607 バックアップモジュール番号決定ステップ S608 バックアップモジュール故障中判定ステップ S609 バックアップモジュール番号変更ステップ S610 バックアップモジュール選択ステップ S611 格納位置決定ステップ
Claims (8)
- 【請求項1】 3系統以上の物理的に独立したメモリモ
ジュールで構成されたディスクキャッシュにおいて、 各系統にデータを分散して格納するように制御され、各
系統のメモリモジュールにはそれぞれディスク上のデー
タと一致したクリーンデータと、未更新データであるダ
ーティデータと、他の1系統に関する未更新データのバ
ックアップデータとを格納することを特徴とするディス
クキャッシュの制御方法。 - 【請求項2】 請求項1記載のディスクキャッシュの制
御方法において、 第1のメモリモジュールが故障し、第1のメモリモジュ
ールに格納されていたデータが失われた場合には、第2
のメモリモジュール上に格納されている第1のメモリモ
ジュールの未更新データのバックアップデータを用いて
失われた第1のメモリモジュールの未更新データの処理
を継続するとともに、第2のメモリモジュール上に格納
されている第1のメモリモジュールの未更新データのバ
ックアップデータを第3のメモリモジュール上にコピー
して前記失われた第1のメモリモジュールの未更新デー
タのバックアップデータを作成し、 さらに、前記故障した第1のメモリモジュール上に格納
していた第3のメモリモジュールの未更新データのバッ
クアップデータを第3のメモリモジュールの未更新デー
タを第2のメモリモジュール上にコピーして生成するこ
とを特徴とするディスクキャッシュの制御方法。 - 【請求項3】 3系統の物理的に独立したメモリモジュ
ールで構成されたディスクキャッシュにおいて、 上位装置からI/Oの出された論理ディスク番号を特定
し、論理ディスク番号/3の剰余を格納モジュール番号
とし、格納モジュールが故障中かどうかを判断し、故障
中であれば、(論理ディスク番号+1)/3の剰余を格
納モジュール番号とし、格納モジュールを選択し、FA
ST WRITE処理であるかいなかに基づいてバック
アップ作成の必要性を判断し、FAST WRITE処
理であれば、(格納モジュール番号+1)/3の剰余を
バックアップモジュール番号とし、バックアップモジュ
ールを格納モジュールと同時に選択し、キャッシュディ
レクトリ情報より格納位置を決定することを特徴とする
ディスクキャッシュの制御方法。 - 【請求項4】 請求項3記載のディスクキャッシュの制
御方法において、 障害の発生したメモリモジュールの番号を特定し、(障
害モジュール番号+1)/3の剰余が示すメモリモジュ
ールのバックアップデータをダーティデータとして扱う
ようにディレクトリを変更し、(障害モジュール番号+
2)/3の剰余が示すメモリモジュールにダーティデー
タと同容量の空き領域を確保し、(障害モジュール番号
+2)/3の剰余が示すメモリモジュールにダーティデ
ータをコピーしてバックアップデータを作成し、(障害
モジュール番号+1)/3の剰余が示すメモリモジュー
ルにダーティデータと同容量の空き領域を確保し、(障
害モジュール番号+1)/3の剰余が示すメモリモジュ
ールにダーティデータをコピーしてバックアップデータ
を作成することを特徴とするディスクキャッシュの制御
方法。 - 【請求項5】 4系統の物理的に独立したメモリモジュ
ールで構成されたディスクキャッシュにおいて、 上位装置からI/Oの出された論理ディスク番号を特定
し、論理ディスク番号/4の剰余を格納モジュール番号
とし、格納モジュールが故障中かどうかを判断し、故障
中であれば(論理ディスク番号+2)/4の剰余を格納
モジュール番号とし、格納モジュールを選択し、FAS
T WRITE処理であるかいなかに基づいてバックア
ップ作成の必要性を判断し、FAST WRITE処理
であれば、(格納モジュール番号+1)/4の剰余をバ
ックアップモジュール番号とし、バックアップモジュー
ルが故障中であるかどうかを判断し、バックアップモジ
ュールが故障中であれば(格納モジュール番号+3)/
4の剰余をバックアップモジュール番号とし、バックア
ップモジュールを格納モジュールと同時に選択し、キャ
ッシュディレクトリ情報より格納位置を決定することを
特徴とするディスクキャッシュの制御方法。 - 【請求項6】 請求項5記載のディスクキャッシュの制
御方法において、 障害の発生したメモリモジュールの番号を特定し、(障
害モジュール番号+2)/4の剰余が示すメモリモジュ
ールのバックアップデータをダーティデータとして扱う
ようにディレクトリを変更し、(障害モジュール番号+
3)/4の剰余が示すメモリモジュールを選択し、選択
モジュールが故障中かどうかを判定し、選択モジュール
が故障中でなければ(障害モジュール番号+3)/4の
剰余が示すメモリモジュールをバックアップモジュール
として設定し、選択モジュールが故障中であれば(障害
モジュール番号+5)/4の剰余が示すメモリモジュー
ルをバックアップモジュールとして設定し、設定された
バックアップモジュールに(障害モジュール番号+2)
/4の剰余が示すメモリモジュール内のダーティデータ
と同容量の空き領域を確保し、設定されたバックアップ
モジュールに(障害モジュール番号+2)/4の剰余が
示すメモリモジュール内のダーティデータをコピーして
バックアップデータを作成し、設定されたバックアップ
モジュールに(障害モジュール番号+2)/4の剰余が
示すメモリモジュールにダーティデータと同容量の空き
領域を確保し、設定されたバックアップモジュールに
(障害モジュール番号+2)/4の剰余が示すメモリモ
ジュール内のダーティデータをコピーしてバックアップ
データを作成し、当該メモリモジュール以外で故障して
いて復旧の行われていないメモリモジュールを調査し、
故障中で未復旧のメモリモジュールがあるかどうかを判
定し、故障中で未復旧のメモリモジュールがあれば、制
御を最初に戻して処理を繰り返すことを特徴とするディ
スクキャッシュの制御方法。 - 【請求項7】 3系統の物理的に独立したメモリモジュ
ールで構成されたディスクキャッシュにおいて、 上位装置からI/Oの出された論理ディスク番号とセク
タ番号とから所定サイズ単位のアクセス領域を算出し、
アクセス領域/3の剰余を格納モジュール番号とし、格
納モジュールが故障中かどうかを判断し、故障中であれ
ば、(アクセス領域+1)/3の剰余を格納モジュール
番号とし、格納モジュールを選択し、FAST WRI
TE処理であるかいなかに基づいてバックアップ作成の
必要性を判断し、FAST WRITE処理であれば、
(格納モジュール番号+1)/3の剰余をバックアップ
モジュール番号とし、バックアップモジュールを格納モ
ジュールと同時に選択し、キャッシュディレクトリ情報
より格納位置を決定するディスクキャッシュの制御方
法。 - 【請求項8】 4系統の物理的に独立したメモリモジュ
ールで構成されたディスクキャッシュにおいて、 上位装置からI/Oの出された論理ディスク番号とセク
タ番号とから所定サイズ単位のアクセス領域を算出し、
アクセス領域/4の剰余を格納モジュール番号とし、格
納モジュールが故障中かどうかを判断し、故障中であれ
ば、(アクセス領域+2)/4の剰余を格納モジュール
番号とし、格納モジュールを選択し、FAST WRI
TE処理であるかいなかに基づいてバックアップ作成の
必要性を判断し、FAST WRITE処理であれば、
(格納モジュール番号+1)/4の剰余をバックアップ
モジュール番号とし、バックアップモジュールが故障中
であるかどうかを判断し、バックアップモジュールが故
障中であれば、(格納モジュール番号+3)/4の剰余
をバックアップモジュール番号とし、バックアップモジ
ュールを格納モジュールと同時に選択し、キャッシュデ
ィレクトリ情報より格納位置を決定するディスクキャッ
シュの制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP01181597A JP3204143B2 (ja) | 1997-01-06 | 1997-01-06 | ディスクキャッシュの制御方法 |
US08/996,813 US6105116A (en) | 1997-01-06 | 1997-12-23 | Method and apparatus of controlling a disk cache during a degenerated mode of operation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP01181597A JP3204143B2 (ja) | 1997-01-06 | 1997-01-06 | ディスクキャッシュの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10198602A true JPH10198602A (ja) | 1998-07-31 |
JP3204143B2 JP3204143B2 (ja) | 2001-09-04 |
Family
ID=11788310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP01181597A Expired - Fee Related JP3204143B2 (ja) | 1997-01-06 | 1997-01-06 | ディスクキャッシュの制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6105116A (ja) |
JP (1) | JP3204143B2 (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006259945A (ja) * | 2005-03-16 | 2006-09-28 | Nec Corp | 冗長システム及びその構成制御方法並びにプログラム |
US7240139B2 (en) | 1998-09-18 | 2007-07-03 | Hitachi, Ltd. | Disk array control device with two different internal connection systems |
JP2007265271A (ja) * | 2006-03-29 | 2007-10-11 | Nec Corp | ストレージ装置、データ配置方法およびプログラム |
JP2008112469A (ja) * | 2008-01-24 | 2008-05-15 | Hitachi Ltd | ディスクアレイ制御装置及びディスクアレイシステム |
JP2010092318A (ja) * | 2008-10-09 | 2010-04-22 | Nec Corp | ディスクアレイサブシステム、ディスクアレイサブシステムのキャッシュ制御方法、及びプログラム |
US7814270B2 (en) | 2004-03-12 | 2010-10-12 | Hitachi, Ltd. | Storage systems and methods of controlling cache memory of storage systems |
US8234467B2 (en) | 2007-12-05 | 2012-07-31 | Fujitsu Limited | Storage management device, storage system control device, storage medium storing storage management program, and storage system |
JP2017091025A (ja) * | 2015-11-05 | 2017-05-25 | 富士通株式会社 | ストレージシステムおよび監視装置 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3573032B2 (ja) * | 1999-11-09 | 2004-10-06 | 日本電気株式会社 | ディスクアレイ装置 |
US6775791B2 (en) | 2001-01-26 | 2004-08-10 | Dell Products L.P. | Replaceable memory modules with parity-based data recovery |
US6530003B2 (en) * | 2001-07-26 | 2003-03-04 | International Business Machines Corporation | Method and system for maintaining data coherency in a dual input/output adapter utilizing clustered adapters |
JP3610574B2 (ja) * | 2001-08-15 | 2005-01-12 | 日本電気株式会社 | ディスクアレイ装置 |
US6775738B2 (en) | 2001-08-17 | 2004-08-10 | International Business Machines Corporation | Method, system, and program for caching data in a storage controller |
JP4209108B2 (ja) * | 2001-12-20 | 2009-01-14 | 株式会社日立製作所 | 記憶装置の制御方法およびこの方法に用いる記憶装置、ディスクアレイ装置、及びディスクコントローラ |
JP4307777B2 (ja) * | 2002-01-28 | 2009-08-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データ処理方法、データ処理システムおよびプログラム |
US7210061B2 (en) * | 2003-04-17 | 2007-04-24 | Hewlett-Packard Development, L.P. | Data redundancy for writes using remote storage system cache memory |
US7657781B1 (en) * | 2003-07-25 | 2010-02-02 | Cisco Technology, Inc. | System and method for providing redundant data load sharing in a distributed network |
US7107411B2 (en) * | 2003-12-16 | 2006-09-12 | International Business Machines Corporation | Apparatus method and system for fault tolerant virtual memory management |
JP4147198B2 (ja) * | 2004-03-23 | 2008-09-10 | 株式会社日立製作所 | ストレージシステム |
EP1990727A4 (en) * | 2006-02-27 | 2009-08-05 | Fujitsu Ltd | CACHE CONTROL DEVICE AND CACHE CONTROL PROGRAM |
US8843783B2 (en) * | 2006-03-31 | 2014-09-23 | Emc Corporation | Failover to backup site in connection with triangular asynchronous replication |
JP4893214B2 (ja) * | 2006-10-06 | 2012-03-07 | 富士通株式会社 | 記憶制御装置、記憶制御方法および記憶制御プログラム |
US20100174676A1 (en) * | 2009-01-06 | 2010-07-08 | International Business Machines Corporation | Determining modified data in cache for use during a recovery operation |
KR102697287B1 (ko) | 2016-12-26 | 2024-08-23 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이의 동작 방법 |
US11138120B2 (en) * | 2015-10-16 | 2021-10-05 | SK Hynix Inc. | Memory system |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6357601A (ja) * | 1986-08-29 | 1988-03-12 | Hitachi Ltd | 三次元架橋化高分子物質及びその製造方法 |
JPS6411056A (en) * | 1987-07-01 | 1989-01-13 | Furukawa Electric Co Ltd | Rotary ring for continuous casting |
JPS6450624A (en) * | 1987-08-20 | 1989-02-27 | Mitsubishi Electric Corp | Analog/digital converter using diode |
JPH01318219A (ja) * | 1988-06-20 | 1989-12-22 | Seiko Epson Corp | 希土類−鉄系永久磁石の製造方法 |
US4965815A (en) * | 1988-07-21 | 1990-10-23 | U.S. Philips Corporation | Phase detection circuit for stepwise measurement of a phase relation |
JP2706099B2 (ja) * | 1988-09-06 | 1998-01-28 | 富士通株式会社 | 半導体装置の製造方法 |
JP2830218B2 (ja) * | 1989-11-22 | 1998-12-02 | 株式会社日立製作所 | キャッシュ付ディスク制御装置の障害処理方法 |
JPH03285995A (ja) * | 1990-03-31 | 1991-12-17 | Nissei Kagaku Kogyo Kk | 界面活性剤の製造方法 |
JPH04195032A (ja) * | 1990-11-28 | 1992-07-15 | Minolta Camera Co Ltd | マイクロカメラおよびマイクロフィルム |
US5274799A (en) * | 1991-01-04 | 1993-12-28 | Array Technology Corporation | Storage device array architecture with copyback cache |
JP2930743B2 (ja) * | 1991-01-07 | 1999-08-03 | 三井金属鉱業株式会社 | 温度センサの製造方法 |
JP3451099B2 (ja) * | 1991-12-06 | 2003-09-29 | 株式会社日立製作所 | 外部記憶サブシステム |
JPH05256216A (ja) * | 1992-03-16 | 1993-10-05 | Hitachi Ltd | 内燃機関のエアクリーナ |
JPH05304939A (ja) * | 1992-04-30 | 1993-11-19 | Mitsubishi Agricult Mach Co Ltd | 製麹における出麹前処理方法 |
US5337414A (en) * | 1992-09-22 | 1994-08-09 | Unisys Corporation | Mass data storage and retrieval system |
DE4238915A1 (de) * | 1992-11-19 | 1994-05-26 | Solvay Fluor & Derivate | Verfahren zur Wiedergewinnung von Jod |
US5553263A (en) * | 1993-07-16 | 1996-09-03 | Unisys Corporation | Cache memory system with fault tolerance having concurrently operational cache controllers processing disjoint groups of memory |
US5548711A (en) * | 1993-08-26 | 1996-08-20 | Emc Corporation | Method and apparatus for fault tolerant fast writes through buffer dumping |
JP3188071B2 (ja) * | 1993-10-14 | 2001-07-16 | 富士通株式会社 | ディスクキャッシュ装置 |
JPH08328758A (ja) * | 1995-06-02 | 1996-12-13 | Hitachi Ltd | ディスクアレイ装置 |
-
1997
- 1997-01-06 JP JP01181597A patent/JP3204143B2/ja not_active Expired - Fee Related
- 1997-12-23 US US08/996,813 patent/US6105116A/en not_active Expired - Lifetime
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7240139B2 (en) | 1998-09-18 | 2007-07-03 | Hitachi, Ltd. | Disk array control device with two different internal connection systems |
US7814270B2 (en) | 2004-03-12 | 2010-10-12 | Hitachi, Ltd. | Storage systems and methods of controlling cache memory of storage systems |
JP2006259945A (ja) * | 2005-03-16 | 2006-09-28 | Nec Corp | 冗長システム及びその構成制御方法並びにプログラム |
JP2007265271A (ja) * | 2006-03-29 | 2007-10-11 | Nec Corp | ストレージ装置、データ配置方法およびプログラム |
US8234467B2 (en) | 2007-12-05 | 2012-07-31 | Fujitsu Limited | Storage management device, storage system control device, storage medium storing storage management program, and storage system |
JP2008112469A (ja) * | 2008-01-24 | 2008-05-15 | Hitachi Ltd | ディスクアレイ制御装置及びディスクアレイシステム |
JP2010092318A (ja) * | 2008-10-09 | 2010-04-22 | Nec Corp | ディスクアレイサブシステム、ディスクアレイサブシステムのキャッシュ制御方法、及びプログラム |
JP2017091025A (ja) * | 2015-11-05 | 2017-05-25 | 富士通株式会社 | ストレージシステムおよび監視装置 |
Also Published As
Publication number | Publication date |
---|---|
JP3204143B2 (ja) | 2001-09-04 |
US6105116A (en) | 2000-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3204143B2 (ja) | ディスクキャッシュの制御方法 | |
JP4815825B2 (ja) | ディスクアレイ装置及びその再構築方法 | |
KR960001748B1 (ko) | 컴퓨터 시스템 동작방법과 컴퓨터 시스템용의 기억 장치 및 기억제어장치 | |
JP3316500B2 (ja) | 移動されたデータの完全性を維持しながらraidセットにおけるドライブ数の拡張 | |
CA2063897C (en) | Method and means for distributed sparing in dasd arrays | |
US6625748B1 (en) | Data reconstruction method and system wherein timing of data reconstruction is controlled in accordance with conditions when a failure occurs | |
US7249278B2 (en) | Disk array apparatus and method for expanding storage capacity | |
US7721143B2 (en) | Method for reducing rebuild time on a RAID device | |
EP0869436A2 (en) | Method of storing data in a redundant array of disks and redundant array of disks | |
US5600783A (en) | Disc array system having disc storage devices dispersed on plural boards and accessible at withdrawal of part of the boards | |
US20090327803A1 (en) | Storage control device and storage control method | |
JPWO2006123416A1 (ja) | ディスク故障復旧方法及びディスクアレイ装置 | |
JP3573032B2 (ja) | ディスクアレイ装置 | |
JP2005099995A (ja) | 磁気ディスク装置のディスク共有方法及びシステム | |
US6701452B1 (en) | Disk array controller having distributed parity generation function | |
EP0303856B1 (en) | Method and apparatus for maintaining duplex-paired devices by means of a dual copy function | |
JP3213799B2 (ja) | 記憶制御装置 | |
JP2009151681A (ja) | ディスクアレイ装置 | |
JP4398596B2 (ja) | ディスクアレイ装置 | |
JPH09218754A (ja) | データ記憶システム | |
JPH07306758A (ja) | ディスクアレイ装置及びその制御方法 | |
JPH06119125A (ja) | ディスクアレイ装置 | |
JPH08286844A (ja) | パリティ生成制御方法およびディスク制御装置 | |
JPH06266508A (ja) | ディスクアレイ制御方法 | |
JP3067558B2 (ja) | ディスクアレイ装置の拡張構成方法およびディスクアレイ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080629 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090629 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100629 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100629 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110629 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110629 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120629 Year of fee payment: 11 |
|
LAPS | Cancellation because of no payment of annual fees |