JP3176157B2 - ディスクアレイ装置及びそのデータ更新方法 - Google Patents

ディスクアレイ装置及びそのデータ更新方法

Info

Publication number
JP3176157B2
JP3176157B2 JP34830192A JP34830192A JP3176157B2 JP 3176157 B2 JP3176157 B2 JP 3176157B2 JP 34830192 A JP34830192 A JP 34830192A JP 34830192 A JP34830192 A JP 34830192A JP 3176157 B2 JP3176157 B2 JP 3176157B2
Authority
JP
Japan
Prior art keywords
data
parity
drive
group
stored
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.)
Expired - Fee Related
Application number
JP34830192A
Other languages
English (en)
Other versions
JPH06202817A (ja
Inventor
仁 角田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP34830192A priority Critical patent/JP3176157B2/ja
Priority to US08/173,557 priority patent/US5621882A/en
Priority to US08/248,452 priority patent/US5579474A/en
Publication of JPH06202817A publication Critical patent/JPH06202817A/ja
Priority to US08/626,332 priority patent/US6049890A/en
Priority to US09/444,562 priority patent/US6256749B1/en
Priority to US09/862,608 priority patent/US6557140B2/en
Application granted granted Critical
Publication of JP3176157B2 publication Critical patent/JP3176157B2/ja
Priority to US10/388,634 priority patent/US7185265B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/74Masking faults in memories by using spares or by reconfiguring using duplex memories, i.e. using dual copies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1019Fast writes, i.e. signaling the host that a write is done before data is written to disk

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はディスクアレイ装置に関
するものである。
【0002】
【従来の技術】近年高度情報化に伴い、コンピュータシ
ステムにおいて、2次記憶装置の高性能化が要求されて
きた。その一つの解として、多数の比較的容量の小さな
ディスク装置(以下ドライブ)により構成されるディス
クアレイが考えられている。例えば、次の論文にそのよ
うな例が開示されている。
【0003】「D.Patterson,G.Gibson,and R.H.K
artz;A Case for Redundant Arrays of Inexpensive D
isks(RAID),in ACM SIGMOD Conference,Chicago,I
L,(June1988)」 上記論文において、データを分割して並列に処理を行う
ディスクアレイ(レベル3)とデータを分散して、独立
に扱うディスクアレイ(レベル5)について、その性能
および信頼性の検討結果が報告されている。
【0004】以下にデータを分散して、独立に扱うディ
スクアレイ(レベル5)について説明する。レベル5の
ディスクアレイでは個々のデータを分割せずに独立に扱
い、多数の比較的容量の小さなドライブに分散して格納
するものである。現在、一般に使用されている汎用大型
コンピュータシステムの2次記憶装置では、1ドライブ
当りの容量が大きいため、他の読み出し/書込み要求に
当該ドライブが使用されて、そのドライブを使用できず
に待たされることが多く発生した。このタイプのディス
クアレイでは汎用大型コンピュータシステムの2次記憶
装置で使用されている大容量のドライブを、多数の比較
的容量の小さなドライブで構成し、データを分散して格
納してあるため、読み出し/書込み要求が増加してもデ
ィスクアレイの複数のドライブで分散して処理するた
め、読み出し/書込み要求がまたされることが減少す
る。しかし、ディスクアレイは、このように多数のドラ
イブにより構成されるため、部品点数が増加し障害が発
生する確率が高くなる。そこで、信頼性の向上を図る目
的で、パリティが使用されている。
【0005】図21は前記論文において D.Patterson
らが提案したRAIDに述べられている、データを分散
して、独立に扱うディスクアレイ(レベル5)内部のデ
ータアドレスを示している。この各アドレスにあるデー
タは、1回の読み出し/書込みで処理される単位であ
り、個々のデータは独立している。また、RAIDで述
べられているアーキテクチャでは、データに対するアド
レスは固定されている。前述したようにこのようなシス
テムでは、信頼性を向上するためパリティを設定するこ
とが不可欠である。本システムでは、各ドライブ内の同
一アドレスのデータによりパリティが作成される。すな
わち、ドライブ#1から4までのアドレス(1,1)の
データによりパリティが作成され、パリティを格納する
ドライブの(1,1)に格納される。本システムでは読
み出し/書込み処理は、現在の汎用大型計算機システム
と同様に、各ドライブに対し当該データをアクセスす
る。すなわち、図22に示すように、当該データが格納
されているトラックが所属するシリンダの位置とそのシ
リンダ内において当該データが格納されているトラック
を決定するヘッドアドレスHHと、そのトラック内のレ
コードの位置を特定する。具体的には要求データが格納
されている当該ドライブ12の番号(ドライブ番号)と
当該ドライブ内のシリンダ番号であるシリンダアドレス
(CC)とシリンダにおいてトラックを選択するヘッド
140の番号であるヘッドアドレス(HH)とレコード
アドレス(R)からなるCCHHRである。
【0006】このようなディスクアレイにおいて、例え
ば図21のドライブ#3のアドレス(2,2)のデータ
を更新する場合、まず、更新される前のドライブ#3の
(2,2)のデータとパリティを格納してあるドライブ
の(2,2)のパリティを読み出し(ステップ1)、こ
れらと更新する新しいデータとで排他的論理和をとり、
新たなパリティを作成する(ステップ2)。パリティの
作成完了後、更新する新しいデータをドライブ#3の
(2,2)に、新パリティをパリティを格納するドライ
ブの(2,2)に格納する(ステップ3)。
【0007】このように、ディスクアレイではデータか
らパリティを作成しデータと同様にドライブに格納して
おく。この時、パリティは、パリティの作成に関与した
データとは別のドライブに格納される。この結果、デー
タを格納したドライブに障害が発生した場合、その障害
ドライブ内のデータを復元することが可能となる。
【0008】これらのディスクアレイでは、現在一般に
使用されている汎用大型コンピュータシステムと同様、
2次記憶装置内では、個々のデータの格納場所(アドレ
ス)は予め指定したアドレスに固定され、CPUから当
該データへ読み出しまたは書込みする場合、この固定さ
れたアドレスへアクセスすることになっている。
【0009】このようなレベル5のディスクアレイで
は、図23に示すように、データの格納されているドラ
イブ、パリティの格納されているドライブから古いデー
タとパリティを読み出すため、ディスクを平均1/2回
転待ち、それから読みだしてパリティを作成する。この
新しく作成したパリティを書き込むため更に一回転必要
となり、データを書き替える場合最低で1.5回転待た
なければならない。ドライブにおいては1.5回転ディ
スクの回転を待つということは非常に大きなオーバヘッ
ドとなる。
【0010】このような書込み時のオーバヘッドを削減
するため、更新後のパリティグループの書込み先のアド
レスを動的に変換する方法がSTK社から出願されてい
る国際出願公開公報WO 91/20076に開示され
ている。
【0011】一方、特開平4−230512号公報に
は、DASDアレイのための更新記録方法及び装置が開
示されている。この方法によれば、各パリティ・グルー
プのデータ・ブロックとパリティ・ブロックが、障害に
ついて関連性のない形式でDASDアレイに分散され、
かつ各ドライブに複数の論理グループに共通に、未使用
スペースが予約される。第1サイクルの間、古いデータ
・ブロック及び古いパリティ・ブロックが読み出され
る。これらのデータと更新用の新しいデータから新しい
パリティが計算され、古いデータや古いパリティが保持
されていた未使用スペースに、その新しいデータ及び新
しいパリティ・ブロックがそれぞれシャドー・ライトさ
れる。
【0012】
【発明が解決しようとする課題】前記国際出願公開公報
WO 91/20076に開示された動的アドレス変換
を行なう場合以下のような問題が生じる。 (1)動的アドレス変換を行なうと、更新前のパリティ
グループを保持していた領域がそのままドライブ内に無
駄な領域として残され、動的にアドレス変換を行なおう
としても、新たな格納領域を確保できなくなる危険性が
ある。 (2)アドレス情報をテーブル上に管理するとテーブル
の容量が増大しメモリのコストが増加し、また、アドレ
ス制御が複雑となるため、処理オーバヘッドが大きくな
る。
【0013】一方、前記特開平4−230512号公報
に記載された未使用スペースを用いる方法によれば、上
記(1)の問題はないと考えられる。しかし、上記
(2)のアドレス制御に関しては、その方法が明瞭には
開示されていない。さらに、増設時や障害発生時にどの
ように対処するかについても言及されていない。
【0014】本発明の目的は、動的アドレス変換を行う
場合に、新たな格納領域の確保が容易な、データ書き込
み方式を提供することにある。
【0015】本発明の他の目的は、動的アドレス変換が
可能で、かつアドレス制御が簡単であり、増設時や障害
回復時にも柔軟に対処できる、データ書き込み方式を提
供することにある。
【0016】
【課題を解決するための手段】本発明によれば、複数の
データと少なくとも1つの誤り訂正コード(例えばパリ
ティコード)を含むパリティグループを構成するドライ
ブ群と、複数の予備の書き込み領域のデータ(ダミーデ
ータ)のドライブ群とにより、1つの論理グループを構
成する。この論理グループを構成するドライブ群は、複
数のデータとパリティとダミーデータとを各々独立して
格納するように構成されている。本発明では、書き込み
前と書き込み後では論理グループを構成するドライブ群
が異なる点が特徴の1つである。
【0017】すなわち、書き込み後のデータを書き込む
ドライブと、書き込み後の新たなパリティを書き込むド
ライブとを、複数のダミーデータを保有するドライブの
中から、書き込み処理全体を見て最も回転待ち時間が少
なく、効率的に処理できるように選定する。
【0018】新しいパリティと新しいデータを格納する
ドライブを決定した後は、新しいデータを格納するドラ
イブへの書込みが可能になり次第、新しいデータを書込
み、旧ドライブ群から書き込み前のデータとパリティを
読み出し、書き込む新しいデータとで書き込み後の新し
いパリティを作成し、決定済のドライブに書き込み後の
新しいデータと新しいパリティを格納する。新しいデー
タと新しいパリティを格納した後、更新される前のデー
タが格納されていたドライブと旧パリティが格納されて
いたドライブとが、各々新しくダミーデータの格納され
るドライブとなる。
【0019】本発明の他の特徴によれば、各論理グルー
プにおいて回転位置情報または回転待ち時間の情報に基
づいて書込みデータ(新データ)を格納するドライブを
決定する。すなわち、ダミーデータの格納されている複
数のドライブ群の中で、どのドライブ内のダミーデータ
の物理的なアドレスに格納するかを判定する。
【0020】本発明の他の特徴によれば、論理グループ
内のあるドライブに障害が発生した場合、正常な残りの
ドライブ群内のデータとパリティから、障害が発生した
ドライブ内のデータまたはパリティを回復処理により復
元し、この復元したデータまたはパリティを、予備の書
き込み領域に書き込む制御を行う。
【0021】
【作用】本発明では、1つのパリティグループを構成す
る複数のデータやパリティ及び複数のダミーデータを、
各々独立したドライブに格納する。
【0022】そのため、書き込みデータ及び書き込み後
の新しいパリティを、ダミーデータが格納されていたド
ライブ群に書き込むことが可能となり、書き込み後のパ
リティを最小の回転待ち時間で処理できるので、書き込
み処理を効率良く処理できる。従来のアレイディスクで
は書き込み時に平均1.5回転の回転待ち時間を必要と
したのが、平均1回転の回転待ち時間ですむようにな
る。
【0023】また、常に複数の予備領域が別々のドライ
ブに確保される構成であるので、ドライブの増設時のア
ドレス制御や、障害発生時の回復処理も簡単になる。
【0024】
【実施例】
〔実施例1〕以下本発明の一実施例を図1により説明す
る。本実施例はCPU1、アレイディスクコントローラ
(以下ADC)2,アレイディスクユニット(以下AD
U)3により構成される。ADU3は複数の論理グルー
プ10により構成され,個々の論理グループ10はm台
の磁気記録媒体を用いたSCSI (Small Computer Sys
tem Interface)ドライブ12と、各々のSCSIドライ
ブ12とADC2を接続する4つのドライブパス9によ
り構成される。なお、このSCSIドライブ12の数は
本発明の効果を得るには、特に制限は無い。
【0025】この論理グループ10は障害回復単位で、
同一の論理グループ内のいずれかのドライブが障害が発
生したとき、そのグループ内の他のドライブ内のデータ
を利用して障害が発生したドライ部内のデータを回復す
るようになっている。
【0026】従来のレベル5のディスクアレイでは、各
論理グループは、複数のデータを分散して書き込むため
のドライブと、それらのデータから生成したパリティを
格納するためのドライブからなる。そそれらのデータと
パリティとの組はパリティグループと呼ばれる。従っ
て、各論理グループは、分散して書き込むデータの数
(これをNとする)プラス1のドライブからなる。
【0027】各ドライブは、データ格納用かパリティ格
納用ドライブかが定められていた。しかし、本実施例で
は、各論理グループは少なくともN+3のドライブから
なる。したがって、m=N+3である。2つのドライブ
は、同一のパリティグループ内のデータのその後の更新
時に使用する予備の領域(ダミーデータ領域)を提供す
るのに使用されるのが特徴である。
【0028】例えば、図3(a)に例示するように、S
CSIドライブ#1〜#6により1つの論理グループが
構成されているとき、データ1〜3とパリティP1から
なる第1のパリティグループは、ドライブ#1〜3、#
5に書き込まれると共に、このパリティグループに対し
て、予備スペースがドライブ#4、6に確保される。本
実施例では、これらのダミー領域を用いてデータの更新
時のドライブの回転待ち時間を減少させるのが特徴であ
る。すなわち、後に詳述するように、このパリティグル
ープ内のデータ例えば、データ1を更新するとき、こと
のデータ1とパリティP1を読み出し、これらと更新用
のデータとから新パリティを生成し、この新パリティと
更新用データとをドライブ#4、#6という旧データ1
と旧パリティP1を格納していたドライブと異なるドラ
イブ上のダミー領域に書き込む。
【0029】旧データ1と旧パリティP1を保持してい
た2つの領域は、新たなこのパリティグループのための
新たなダミー領域として使用されることになる。以下、
実施例の詳細を説明する。
【0030】なお、以下の実施例では、パリティコード
を用いた例を説明するが、パリティコードに代えて他の
ハミングコードないしは誤り訂正コードを用いてもよい
ことは言うまでもない。
【0031】次にADC2の内部構造について図1を用
いて説明する。ADC2はチャネルパスディレクタ5と
2個のクラスタ13とバッテリバックアップ等により不
揮発化された半導体メモリであるキャッシュメモリ7に
より構成される。チャネルパスディレクタ5は、CPU
1から発行されたコマンドを取り込む。このキャッシュ
メモリ7にはドライブ12に書き込まれ又はそこから読
み出されたデータと後述するアドレス変換用テーブル4
0(図3)が格納されている。このキャッシュメモリ7
およびその中のアドレス変換用テーブルはADC2内の
全てのクラスタにおいて共有で使用される。クラスタ1
3はADC2内において独立に動作可能なパスの集合
で、各クラスタ13間においては電源、回路は全く独立
となっている。各クラスタ13にはチャネルパスディレ
クタ5とキャッシュメモリ7間のパスとして2つのチャ
ネルパス6が設けられ、キャッシュメモリ7と、SCS
Iドライブ12間のパスとして2つのドライブパス6
が、それぞれ2個ずつで構成されている。
【0032】それぞれのチャネルパス6とドライブパス
8はキャッシュメモリ7を介して接続されている。CP
U1より発行されたコマンドは外部インターフェースパ
ス4を通ってADC2のチャネルパスディレクタ5に発
行される。本実施例では、ADC2は2個のクラスタ1
3により構成され、それぞれのクラスタは2個のパスで
構成されるため、ADC2は合計4個のパスにより構成
される。このことから、ADC2ではCPU1からのコ
マンドを同時に4個まで受け付けることが可能である。
【0033】図2は図1のチャネルパスディレクタ5と
1つのクラスタ13の内部構造を示した図である。図2
に示すように、CPU1から外部インターフェースパス
4を介してADC2に送られてきたコマンドは、チャネ
ルパスディレクタ5内のインターフェースアダプタ(以
下IF Adp)15の1つにより取り込まれる。各チ
ャネルパス6内のマイクロプロセッサ(以下MP20)
は外部インターフェースパス4の中でコマンドを取り込
んでいるパスがあるかを調べ、そのような外部インター
フェースパス4がある場合は、MP20はチャネルパス
スイッチ16を切り換えてそのパスに取り込まれたコマ
ンドの受付け処理を行なう。もしそのコマンドが受け付
けられない場合は受付不可の応答をCPU1へ送る。1
7は信号線、18はデータパスである。
【0034】24はキャッシュアダプタ回路(C Ad
p)であり、キャッシュメモリ7に対するデータの読み
出し、書き込みをMP20の指示で行う回路で、キャッ
シュメモリ7の状態の監視、各読み出し、書き込み要求
に対し排他制御を行う回路である。C Adp24によ
り読み出されたデータは、データ制御回路(DCC)2
2の制御によりチャネルインターフェース回路(CH
IF)21に転送される。CH IF21ではCPU1
におけるチャネルインターフェースのプロトコルに変換
し、チャネルインターフェースに対応する速度に速度調
整する。27は、データの圧縮回路である。28は、D
rive IFであり、SCSIの読み出し処理手順に
従って、読み出しコマンドをドライブユニットパス9を
介して発行する。 Drive IF28では転送され
てきた当該データをSCSIドライブ側のキャッシュア
ダプタ回路(C Adp)14に転送し、(C Adp)
14ではキャッシュメモリ7にデータを格納する。35
はデータパスである。36は、パリティ生成回路であ
り、キャッシュメモリ7のデータからパリティを生成
し、キャッシュメモリに格納する。127は、回転位置
検出回路である。
【0035】本実施例では、レベル5のディスクアレイ
を実現するので、CPU1からの複数のI/Oコマンド
で指定されるデータをまとめて、1つのパリティグルー
プに属するデータを作成し、これらをいずれかのMP2
0の制御下で、同一の論理グループに書き込む。以下で
は、説明を簡明にするために、これらのI/Oコマンド
で指定されるドライブ番号は同一とする。この際、これ
らのデータに対するパリティもMP20により生成し、
そのパリティグループに属するパリティとして同じ論理
グループに属する他のドライブに書き込む。
【0036】図3は、1つの論理グループが6つのつド
ライブからなる場合について、パリティグループに属す
るデータがどのように書き込まれるかを示すものであ
る。ここでは、同一のパリティグループに属するデータ
は3つからなり、これらのデータとこれらのデータから
生成されたパリティとが1つのパリティグループを形成
する。さらに、このグループに対して2つのダミー領域
が確保される。これらはいずれも異なるドライブに属す
る。すなわち、論理グループは、パリティグループとダ
ミーデータ用に使用されるドライブからなる。
【0037】このパリティグループのデータ書き込みが
最初に行われるときに、MP20はいくつかの論理グル
ープ内での同一のドライブ内アドレスを有する空領域を
サーチし、そこにこれらの3つのデータとパリテイと2
つのダミーデータ用の領域を別々のドライブに確保す
る。この際、確保された領域のアドレスに関する情報は
後に詳述されるアドレス変換テーブル40に書き込まれ
る。
【0038】以上の書き込み動作において従来と異なる
のは、あるパリティグループを最初に論理ドライブに書
き込むときに、そのパリティグループ用の少なくとも2
つの予備領域を確保することにある。
【0039】本実施例では、ADU3を構成するSCS
Iドライブ12は、SCSIインターフェースのドライ
ブを使用する。CPU1をIBMシステム9000シリ
ーズのような大型汎用計算機とした場合、CPU1から
はIBMオペレーティングシステム(OS)で動作可能
なチャネルインターフェースのコマンド体系にのっとっ
てコマンドが発行される。そこで、SCSIドライブ1
2をSCSIインターフェースのドライブを使用した場
合、CPU1からのコマンドを、SCSIインターフェ
ースのコマンド体系にのっとったコマンドに変換する必
要が生じる。この変換はコマンドのプロトコル変換と、
アドレス変換に大きく分けられる。以下にアドレス変換
について説明する。
【0040】CPU1から指定されるアドレスは、図2
2に示したように、要求データが格納されている当該ド
ライブ12の番号(ドライブ番号)と、当該ドライブ内
のシリンダ番号であるシリンダアドレス(CC)と、シ
リンダにおいてトラックを選択するヘッド140の番号
であるヘッドアドレス(HH)と、レコードアドレス
(R)からなる、CCHHRである。
【0041】従来のCKDフォーマット対応の磁気ディ
スクサブシステム(例えばIBM3990−3390)
ではこのアドレスに従ってドライブへアクセスすれば良
い。
【0042】しかし、本実施例では、複数のSCSIド
ライブ12により従来のCKDフォーマット対応の磁気
ディスクサブシステムを論理的にエミュレートする。つ
まり、ADC2は複数のSCSIドライブ12が、従来
のCKDフォーマット対応の磁気ディスクサブシステム
で使用されているドライブ1台に相当するようにCPU
1にみせかける。このため、CPU1から指定してきた
アドレス(CCHHR)をSCSIドライブのアドレス
にMP20は変換する。
【0043】このアドレス変換には図3の(b)に示す
ようなアドレス変換テーブル40(以下アドレステーブ
ルとする)が使用される。ADC2内のキャッシュメモ
リ7には、その内部の適当な領域に、アドレステーブル
40が格納されている。本実施例では、CPU1が指定
してくるドライブは、CKDフォーマット対応の単体ド
ライブである。しかし、本発明ではCPU1は単体と認
識しているドライブが、実際は複数のSCSIドライブ
により構成されるため、論理的なドライブ群として定義
される。このため、ADC2のMP20はCPU1より
指定してきたアドレス(CPU指定ドライブ番号41と
CCHHR46)を1組の論理グループを構成する。S
CSIドライブ12の各々に対するSCSIドライブ番
号とそのSCSIドライブ内のアドレス(以下SCSI
内Addrとする)に変換する。図1に示したように、
本実施例では、複数の論理グループを実現できる。アド
レステーブル40は各論理グループに対応して生成され
る。図3(b)には、図3(a)に示したように2つの
論理グループがSCASIドライブ#1〜#6からなる
と仮定し、その論理グループに対応するアドレステーブ
ルを示す。
【0044】アドレステーブル40はCPU指定ドライ
ブ番号カラム41とSCSIドライブアドレスカラム4
2とSCASIドライブ情報カラム43により構成され
る。これらのカラムの同一行には、同一のパリティグル
ープに属する情報が確保される。SCSIドライブアド
レスカラム42はSCSIドライブ内の実際にデータま
たはパリティが格納されているアドレスである、SCS
I内Addrを格納するカラム44と、パリティが格納
されているSCSIドライブ番号(パリティドライブ番
号)を格納するカラム50と、ダミーデータが格納され
ているSCSIドライブ番号(ダミードライブ番号)を
格納するカラム51により構成されている。
【0045】SCASIドライブ情報カラム43は、同
一の論理グループに属するSCASIドライブの各々に
対応したカラムからなり、それぞれのカラムには、その
ドライブに保持されているデータに関連した情報とし
て、CPU1から指定された、ドライブ内アドレスCC
HHR6と、そのSCASIドライブ内のデータがキャ
ッシュメモリ7内にも存在する場合の、そのデータのキ
ャッシュメモリ7内のアドレス47と、キャッシュメモ
リ7がそのデータを保持している場合オン(1)が登録
されるキャッシュフラグ48と、そのドライブにダミー
データが格納されている場合オン(1)となる無効フラ
グ49により構成される。なお、図3ではカラム43内
の各カラムには、図3と対比可能なように、それぞれの
カラムのそれぞれのエントリがどのデータ及びパリティ
に関する情報を持つかをそれらのデータまたはパリティ
で表示してある。
【0046】このテーブル40に保持された情報のう
ち、パリティドライブカラム50、ダミードライブカラ
ム51に格納されていないドライブはデータ用のドライ
ブであることがわかる。このテーブル40の各行のデー
タは、対応するパリティグループが最初に論理グループ
に書き込まれたときに、MP20により書き込まれる。
その後、いずれかのパリティグループ内のデータを更新
するI/Oコマンドが実行されたとき、このテーブルの
そのパリテイグループに対する行に属する情報がMP2
0により更新される。
【0047】このテーブル40のうち、本実施例で特徴
的なのはダミードライブ番号が保持されていることであ
る。これは後述する、データの更新時に利用される。こ
のように作成されたテーブル40は、CPU1から論理
ドライブ内のデータをアクセスするごとにMP20によ
り利用される。
【0048】例えば図3の例において、CPU1からC
PU指定ドライブ番号が”Drive#1”、CCHH
Rが”ADR8”のデータに対し要求を発行してきた場
合、アドレステーブル40でCPU指定ドライブ番号が
Drive#1に等しい行に属するSCASIドライブ
情報カラム43内エントリを調べ、CCHHRが”AD
R8”に等しいエントリを探す。図3の例においては、
Data#23に対するCCHHRが”ADR8”とな
っており、Data#23が要求されたデータであるこ
とがわかる。このData#23の物理的アドレスはア
ドレステーブル40の同じ行からSCSIドライブ#2
内のSCSI内Addr”DADR8”であることがわ
かる。こうして物理的なアドレスへの変換がこのテーブ
ル42よりなされることがわかる。
【0049】このアドレス変換の後、MP20によりS
D#2のSCSIドライブ12のデータ#23に対し読
み出しまたは書込み要求が発行される。この時アドレス
テーブル40においてData#23はキャッシュフラ
グ48がオフ(0)のため、このデータはキャッシュメ
モリ7内のCADR2,1に存在しない。もし、キャッ
シュフラグ48がオン(1)であればキャッシュメモリ
7内には、当該データが存在するので、ドライブ12か
らの上記読み出しまたは書き込みは行わず、キャッシュ
メモリ内のそのデータに対して行われる。また、このデ
ータは無効フラグ49がオフ(0)のため、このデータ
はダミーデータでないことがわかる。
【0050】次に、ADC2内での具体的なI/O処理
について図1、図2を用いて説明する。CPU1より発
行されたコマンドはIF Adp15を介してADC2
に取り込まれ、MP1 20により読み出し要求か書込
み要求か解読される。
【0051】まず、書き込み時は以下のように処理され
る。但し、以下ではすでにデータが書き込まれた後に行
われるデータ更新のためのデータ書き込みについて述べ
る。
【0052】CPU1からCPU指定ドライブ番号とし
てドライブ#1でCCHHRとして”ADR8”を指定
するデータ更新コマンドが発行されたとする。まず、A
DC2のMP20は、CPU1からこのコマンドを受け
取った後、コマンドを受け取ったMP20が所属するク
ラスタ13内の各チャネルパス6において処理可能かど
うかを調べ、可能な場合は処理可能だという応答をCP
U1へ返す。CPU1では処理可能だという応答を受け
取った後にADC2へ書き込みデータを転送する。この
転送に先立ち、ADC2ではMP20の指示により、チ
ャネルパスディレクタ5において、チャネルパススイッ
チ16がこのコマンドが転送された外部インターフェー
スパス4とIF Adp15をチャネルパス6に接続し
CPU1とADC2間の接続を確立する。
【0053】CPU1から転送されてきた書き込みデー
タ(以下新データまたはNew Dataとする)はM
P20の指示により、CH IF21によりプロトコル
変換を行ない、外部インターフェースパス4での転送速
度からADC2内での処理速度に速度調整する。CH
IF21におけるプロトコル変換および速度制御の完了
後、データはDCC22によるデータ転送制御を受け、
C Adp24に転送され、C Adp24によりキャッ
シュメモリ7内に格納される。この時、CPU1から送
られてきた情報が、CPU指定アドレスの場合は、読み
だしと同様にアドレステーブル70によりアドレス変換
を行い、物理アドレスに変換する。また、CPU1から
送られてきた情報がデータの場合は、キャッシュメモリ
7に格納したアドレスを上記アドレス変換により変換し
た物理アドレスをキャッシュメモリ7に登録する。この
時、対応するキャッシュフラグ48をオン(1)とす
る。
【0054】この様にキャッシュメモリ7に新データを
格納したのをMP20が確認したら、MP20は書込み
処理の完了報告をCPU1に対し報告する。
【0055】なお、キャッシュメモリ7内に保持されて
いる新データに対し、さらに書き込み要求がCPU1か
ら発行された場合は、キャッシュメモリ7内に保持され
ている新データを書き替える。
【0056】キャッシュメモリ7に新データが格納され
た後は、以下のようにして新しくパリティを更新し、論
理グループ10内のSCSIドライブ12へ新データと
新パリティが格納される。
【0057】図2に戻って、MP20はアドレステーブ
ル40を参照したときに、データ、ダミーデータ、パリ
ティが格納されているSCSIドライブ番号を認識す
る。
【0058】MP20は、Drive IF28に対
し、該当するドライブ12に対する書き込み処理を行な
うように指示する。
【0059】ここでの書き込み処理は、論理グループ1
0において新データを実際に書き込む処理と、新データ
の書き込みによりパリティを新たに作り直す(以下新パ
リティ、New Parityとする)ための処理すな
わち、このパリティを作成するための書き込み前のデー
タ(以下旧データ、Old Dataとする)と書き込
み前のパリティ(以下旧パリティとする)を読み出し、
新パリティを作成する処理と、新データと新パリティを
書き込む一連の処理からなる。
【0060】図4に示すようにCPU1からSD#1の
SCSIドライブ12のデータ#1に書き込み要求が発
行された場合、MP20は、SD#1ドライブが所属す
る論理グループ10において、ドライブSD#1とダミ
ーデータが格納されているドライブSD#4,6とパリ
ティが格納されているドライブSD#5に対し、使用権
の獲得を行なう。
【0061】その後は、図5のフローチャートに示すよ
うな処理を行なっていく。まず、MP20は回転位置検
出回路(RPC)127によりドライブSD#1、4、
5、6における回転位置を検出する(ステップ50
2)。RPC127により回転位置を検出した後にMP
20は各SCSIドライブの回転待ち時間を算出する
(504)。
【0062】図6に示すように、論理グループ10を構
成する各ドライブSD#1〜SD#6には旧データ(D
ata#1〜#3)及びダミーデータ(Dummy)、
旧パリティ(Parity#1)が格納されている。こ
の論理グループ10内のデータ100は、ディスク13
0上では図6の下段に示すようになっており、各ドライ
ブSD#1〜SD#6によって当該データ100がヘッ
ド140の下に来るまでのディスク130の回転を待つ
時間が異なっている。このディスク130の回転を待つ
時間のことを回転待ち時間(TW)という。
【0063】回転待ち時間TWを算出した後に、以下の
ように新パリティと新データを格納するSCSIドライ
ブを決定する。図5のフローチャートに示すように、ま
ず、MP20は旧データ(Old Data)が格納さ
れているSCSIドライブと、旧パリティ(Old P
arity)が格納されているSCSIドライブのう
ち、回転待ち時間TWの大きい方を判定する(506〜
512)。
【0064】図7の(a)の例では、旧データ(Old
Data)が格納されているドライブSD#1の回転
待ち時間がTW1、旧パリティ(Old Parit
y)が格納されているドライブSD#5の回転待ち時間
TW5より大きい。そこで、MP20はドライブSD#
1のを基準に新データ(New Data)と新パリテ
ィ(New Parity)を書き込むドライブを決定
する。具体的にはMP20はRPC127からの情報に
よりダミーデータが格納されているドライブSD#4,
6において、ドライブSD#1から書き込み前の旧デー
タ(Old Data)を読み出し(506)、新パリ
ティ(New Parity)の作成後に早く書き込む
ことが可能な方のドライブを判定し、このドライブに新
パリティ(New Parity)を格納することに決
定する(512)。一方新データ(New Data)
は残りのダミーデータが格納されているドライブに格納
することに決定する(514)。このようにして、新デ
ータ(New Data)と新パリティ(New Par
ity)を格納するSCSIドライブ12を決定する。
【0065】図7(a)の例では、ドライブSD#1か
ら書き込み前の旧データを読み出した後は、ドライブS
D#6の方がドライブSD#4よりも早く書き込める。
(SD#4のSCSIドライブに書き込むためには、1
回転待たなければならない。)そのため、ドライブSD
#6を書き込み後の新パリティ(New Parit
y)を格納するドライブとし、ドライブSD#4は、書
き込む新データ(NewData)を格納するドライブ
とする。
【0066】また、図7(b)の例では、ドライブSD
#1から書き込み前の旧データ(Old Data)を
読み出した後、ドライブSD#4の方がドライブSD#
6よりも早く書き込めるため、ドライブSD#4を書き
込み後の新パリティ(NewParity)を格納する
ドライブとし、ドライブSD#6は書き込む新データ
(New Data)を格納するドライブとする。
【0067】書き込み後の新データ(New Dat
a)および新パリティ(New Parity)を格納
するドライブを決定した後は、図5のフローチャートに
従って以下のように処理する。以下の書き込み処理の説
明は、図7の(a)を例に行なう。
【0068】MP20はDrive IF28に新デー
タ(New Data)をドライブSD#4に書き込む
よう指示する。Drive IF28ではSCSIの書
込み手順にしたがってドライブユニットパス9の中の1
本を介してドライブSD#4に書込みコマンドを発行す
る。
【0069】同時にMP20はドライブSD#1に対し
て旧データ(Old Data)の読み出しと、ドライ
ブSD#5に対して旧パリティ(Old Parit
y)の読み出しとドライブSD#6への新パリティ(N
ew Parity)の書込み要求を発行するようにD
rive IF28に指示する。
【0070】Drive IF28から読み出しまたは
書込みコマンドを発行されたこれらのドライブでは、D
rive IF28から送られてきたSCSI内Add
r44へシーク、回転待ちのアクセス処理を行なう。ド
ライブSD#4においてアクセス処理が完了し書込みが
可能になり次第、C Adp14はキャッシュメモリ7
から書き込む新データ(New Data)を読み出し
てDrive IF28へ転送し、Drive IF28
では転送されてきた新データ(New Data)をド
ライブユニットパス9の中の1本を介してSD#4のド
ライブへ転送する。新データ(New Data)のド
ライブSD#4への書込みが完了すると(510)、ド
ライブSD#4はDrive IF28に完了報告を行
ない、Drive IF28がこの完了報告を受け取っ
たことを、MP20に報告する(516)。
【0071】SD#4のドライブに対する新データ(N
ew Data)の格納は完了しても、キャッシュメモ
リ7内には新データ(New Data)が存在してお
り、パリティの更新はキャッシュメモリ7内に格納され
ている新データ(New Data)で行なう。
【0072】ドライブSD#1,5においてもアクセス
処理が完了し旧データ(Old Data)および旧パ
リティ(Old Parity)の読み出しが可能にな
り次第、旧データ(Old Data)および旧パリテ
ィ(Old Parity)を読み出し、キャッシュメ
モリ7に格納する(512)。ドライブSD#1から旧
データ(Old Data)を、ドライブSD#5から
旧パリティ(Old Parity)を読み出し、それ
ぞれをキャッシュメモリ7に格納した後、MP20はキ
ャッシュメモリ7内に格納されている書き込む新データ
(New Data)とで排他的論理和により、更新後
の新パリティ(New Parity)を作成するよう
にパリテイ生成回路(PG)36に指示を出し、PG3
6において新パリティ(New Parity)を作成
しキャッシュメモリ7に格納する(518)。
【0073】新パリティ(New Parity)をキ
ャッシュメモリ7に格納した後、MP1 20では新パ
リティ(New Parity)の作成が完了したこと
を認識し、ドライブSD#6に、更新後の新パリティ
(New Parity)を書き込むようにDrive
IF28に対し指示する。ドライブSD#6への更新後
の新パリティ(New Parity)の書込み方法
は、先に述べた書き込む新データ(New Data)
をドライブSD#4に書き込んだ方法と同じである。
【0074】ドライブSD#6では既に、Drive
IF28から書込みコマンドが発行されており、指示S
CSI内Addr44へシーク、回転待ちのアクセス処
理を行なっている(520)。新パリティ(New P
arity)は既に作成されキャッシュメモリ7に格納
されており、ドライブSD#6におけるアクセス処理が
完了した場合、C Adp14はキャッシュメモリ7か
ら新パリティ(NewParity)を読み出してDr
ive IF28へ転送する。Drive IF28では
転送されてきた新パリティ(New Parity)を
ドライブユニットパス9の中の1本を介してドライブS
D#6へ転送する(522)。
【0075】新データ(New Data)及び新パリ
ティ(New Parity)の当該ドライブSD#
4,6への書込みが完了すると、当該ドライブはDri
ve IF28に完了報告を行ない、Drive IF2
8がこの完了報告を受け取ったことを、MP20に報告
する。
【0076】この時、MP20は、この新データ(Ne
w Data)をキャッシュメモリ7上に残さない場合
は、この報告を元にアドレステーブル40のキャッシュ
フラグ48をオフ(0)にする。さらに、アドレステー
ブル40において、書き込み前の旧データ(Old D
ata)の論理アドレス45の無効フラグをオン(1)
とし、書き込み前の論理アドレス45内のCCHHR4
6のアドレスを、書き込み後の論理アドレス45のCC
HHR46に登録し、無効フラグをオフ(0)とする。
【0077】また、キャッシュメモリ7内に書き込む新
データ(New Data)を保持する場合は、書き込
み後のデータに対応するエントリ内のキャッシュアドレ
ス47に、キャッシュメモリ7内の新データ(New
Data)が格納されているアドレスを登録し、キャッ
シュフラグ48をオン(1)とする。さらに、書き込み
を行った論理グループ10内のSCSI内Addr44
に対し、パリティドライブ番号50とダミードライブ番
号51を書き込み後のSCSIドライブ番号43に変更
する。
【0078】図7の(b)の例についても同様に処理す
ることが可能である。
【0079】以上述べたようにして書込み処理を行なう
が、その時の回転位置検出方法について以下に詳しく説
明する。
【0080】回転待ち時間の算出方法は、図8に示すよ
うにディスク130の面上をインデックスを基準として
扇型に等分割する。本実施例では図8に示すように16
分割した。なお、この分割数に制限が無いことは明らか
である。この等分割した各領域には番号(1〜16)が
付けられており、各領域の開始地点にその番号が記録さ
れている。回転待ち時間TWの算出は、各SCSIドラ
イブ12において現在ヘッド140の下にある領域の番
号をRPC127に送り、RPC27では当該データの
格納されている領域100(アドレスでも可)との差か
ら回転待ち時間TWを計算する。図8を例に計算方法を
示す。ヘッド140は領域13の開始地点に位置してい
る。要求データは領域2、3に存在している。要求デー
タの開始領域は領域2である。そこで、ディスク130
が一回転する時間を16.6(ms)とすると回転待ち
時間TWは以下のように求められる。
【0081】(1)(ヘッドの位置する領域番号−要求
データの開始領域番号)>0なら 回転待ち時間=(総分割数−(ヘッドの位置する領域番
号−要求データの開始領域番号))/総分割数×一回転
時間=(16−(13−2))/16×16.6(m
s) また、要求データの開始領域を領域15とした場合は、 (2)(ヘッドの位置する領域番号−要求データの開始
領域番号)≦0、 回転待ち時間=(要求データの開始領域番号−ヘッド位
置領域番号)/総分割数×一回転時間=(15−13)
/16×16.6(ms) となる。
【0082】なお、回転待ち時間を時間ではなく、ディ
スク面上におけるヘッドの位置する領域である回転位置
情報そのものから要求データの開始領域までの領域数で
考えても問題は無い。
【0083】図9は、図7の(a)の場合での書き込み
前の旧データ(Old Data)と旧パリティ(Ol
d Parity)、書き込み後の新データと新パリテ
ィのデータの流れを示している。書込み処理を行なった
結果、書き込み前に図10の(A)に示すように、旧デ
ータ(Old Data)が格納されていたSD#1の
SCSIドライブ12と旧パリティ(Old Pari
ty)が格納されていたSD#5のSCSIドライブ1
2は、図10の(B)に示すように、書き込み後はダミ
ーデータが格納されているSCSIドライブ12とな
る。この時、SD#1のSCSIドライブ12には書き
込み前の旧データ(Old Data)が格納されてお
り、SD#5のSCSIドライブ12には書き込み前の
旧パリティ(Old Parity)が格納されている
が、これらは、意味の無いデータまたはパリティでダミ
ーデータとし、書き込み前と書き込み後では論理グルー
プ10においてパリティを作成するパリティグループを
構成するSCSIドライブ12が異なる。
【0084】書き込み処理においては、新パリティ(N
ew Parity)を書き込む処理により書き込み処
理全体の処理時間が左右される。このように、書き込み
後の新データ(New Data)及び新パリティ(N
ew Parity)を、書き込み前の旧データ(Ol
d Data)及び旧パリティ(Old Parity)
が格納されているSCSIドライブ12ではなくダミー
データが格納されているSCSIドライブ12に書き込
むことにより、データの書き込みにより必要となるパリ
ティの変更を行なった後に、最も早く書き込めるSCS
Iドライブ12に書き込むことが可能となり、従来のア
レイディスクでは図23に示すように書き込み時に平均
1.5回転の回転待ち時間が必要としたのが、平均1回
転の回転待ち時間で済むため書き込み処理全体の処理時
間を短縮できる。
【0085】次に読み出し要求の場合の処理方法を以下
に示す。
【0086】MP20が読み出し要求のコマンドを認識
すると、MP20はCPU1から送られてきたCPU指
定ドライブ番号とCCHHR(以下両方を併せてCPU
指定アドレスとする)によりアドレステーブル40を参
照し、要求されたデータに対する物理アドレスへの変換
を行ない、それとともにそのデータがキャッシュメモリ
7内に存在するかどうかをキャッシュフラグ48で判定
する。キャッシュフラグ48がオンでキャッシュメモリ
7内に格納されている場合(キャッシュヒット)は、M
P20がキャッシュメモリ7から当該データを読みだす
制御を開始し,キャッシュメモリ7内に無い場合(キャ
ッシュミス)は当該ドライブ12へその内部の当該デー
タを読みだす制御を開始する。
【0087】キャッシュヒット時、MP20はアドレス
テーブル40によりCPU1から指定してきたCPU指
定アドレスをキャッシュメモリ7のアドレスに変換しキ
ャッシュメモリ7へ当該データを読み出しに行く。具体
的にはMP20の指示の下で、キャッシュアダプタ回路
(C Adp)24によりキャッシュメモリ7から当該
データが読み出される。C Adp24はキャッシュメ
モリ7に対するデータの読み出し、書き込みをMP20
の指示で行う回路で、キャッシュメモリ7の状態の監
視、各読み出し、書き込み要求に対し排他制御を行う回
路である。
【0088】C Adp24により読み出されたデータ
は、データ制御回路(DCC)22の制御によりチャネ
ルインターフェース回路(CH IF)21に転送され
る。CH IF21ではCPU1におけるチャネルイン
ターフェースのプロトコルに変換し、チャネルインター
フェースに対応する速度に速度調整する。CH IF2
1におけるプロトコル変換および速度調整の後は、チャ
ネルパスディレクタ5において、チャネルパススイッチ
16が外部インターフェースパス4を選択し、IF A
dp15によりCPU1へデータ転送を行なう。
【0089】一方、キャッシュミス時、MP20はアド
レス変換テーブル40を用いて、読み出すべきデータが
属するドライブとその中のアドレスを判別し、Driv
eIF28に対し、当該ドライブ12への読み出し要求
を発行するように指示する。Drive IF28では
SCSIの読み出し処理手順に従って、読み出しコマン
ドをドライブユニットパス9を介して発行する。Dri
ve IF28から読み出しコマンドを発行された当該
SCSIドライブ12においては、指示されたSCSI
内Addr44へシーク、回転待ちのアクセス処理を行
なう。当該SCSIドライブ12におけるアクセス処理
が完了した後、当該SCSIドライブ12は当該データ
を読み出しドライブユニットパス9を介してDrive
IF28へ転送する。
【0090】Drive IF28では転送されてきた
当該データをSCSIドライブ側のキャッシュアダプタ
回路(C Adp)14に転送し、(C Adp)14で
はキャッシュメモリ7にデータを格納する。この時、C
Adp14はキャッシュメモリ7にデータを格納する
ことをMP20に報告する。MP20はこの報告を元に
アドレステーブル40内の、CPUが読み出し要求を発
行したCPU指定アドレスに対応したエントリ45のキ
ャッシュフラグ48をオン(1)にし、さらにキャッシ
ュアドレス47にキャッシュメモリ7内のデータを格納
したアドレスを登録する。キャッシュメモリ7にデータ
を格納し、アドレステーブル40のこのデータに対応す
るエントリ45のキャッシュフラグ48をオンにし、キ
ャッシュメモリ7内アドレス47を更新した後は、キャ
ッシュヒット時と同様な手順でCPU1へ当該データを
転送する。
【0091】本実施例では、パリティは論理グループ1
0を構成する各SCSIドライブ12において、各SC
SI内Addrが同一のデータに対して作成され、その
パリティもデータと同一のSCSI内Addr44に格
納されるとして説明してきた。この方法によれば、ドラ
イブ番号のみでアドレス管理できる利点がある。
【0092】しかし、図10に示すように、パリティ・
データが同一SCSI内Addr44ではなく、アドレ
スが1ずつずれていても同様に実現できる。この場合、
各データについて、ドライブ番号のみならずドライブ内
アドレスの管理も必要となってくる。システム全体の管
理の難易度を考慮して、このずらす量を選定すればよ
い。
【0093】〔実施例2〕本発明の第2の実施例を図1
1、図12を用いて説明する。本実施例では、実施例1
で示したシステムにおいてSCSIドライブ12に障害
が発生した時に、その障害が発生したSCSIドライブ
12内のデータを回復し、それを格納するための領域に
ダミーデータの領域を使用する例を示す。論理グループ
10内の各SCSIドライブ12では、その内部の各々
対応する同一SCSI内Addr44のデータによりパ
リティグループを構成する。具体的には図11に示すよ
うに、ドライブSD#1,2,3内のデータ#1、2、
3でパリティ生成回路PG36によりパリティ#1が作
られ、ドライブSD#5内に格納される。本実施例では
パリティは奇数パリティとし、各々対応するビットにつ
いて1の数を数え、奇数であれば0、偶数であれば1と
する(排他的論理和)。
【0094】もし、ドライブSD#1に障害が発生した
とする。この時、データ#1は読み出せなくなる。
【0095】そこで、図12に示すように、残りのデー
タ#2、3とパリティ#1をキャッシュメモリ7に転送
し、MP20はPG36に対しデータ#1を復元する回
復処理を早急に行なうように指示する(1202)。こ
の回復処理を行ないデータ#1を復元した後(1206
〜1208)、MP1 20は、アドレステーブル40
により、論理グループ内の同一SCSI内Addr44
(DADR1)におけるダミーデータの格納されてダミ
ードライブ番号51(SD#4,6)を認識し、このデ
ータ#1をSD#4または6のどちらかのダミーデータ
のアドレスに格納する(1210〜1212)。
【0096】本実施例では、ダミーデータの領域に回復
処理により復元されたデータ#1を格納する。これによ
り、ダミーデータ領域を実施例1で示したような、書き
込み処理時の回転待ち時間を短縮させるためだけではな
く、SCSIドライブ12に障害が発生したときに、復
元したデータを格納するためのスペアー領域としても活
用する。
【0097】この様に、MP1 20がダミーデータ領
域に回復したデータ#1を格納した後は、キャッシュメ
モリ7にある図3に示すアドレステーブル40におい
て、ダミードライブ番号51の中で、回復データを格納
した方のダミードライブ番号を削除し、この削除したド
ライブ番号に対するエントリ45に、回復したデータ#
1の元のエントリ45の内容を複写する(1214)。
【0098】図11に示すように、ドライブSD#1に
は、データ#1の他にダミーデータ、パリティ、データ
#13、16、19、22が格納されている。ダミーデ
ータについては回復処理を行ない復元する必要は無い。
パリティ#3はドライブSD#3,4,5からデータ#
7、8、9を読み出して新たに作成しドライブSD#2
か6のダミーデータ領域に格納する。データ#13はド
ライブSD#3,5,6からパリティ、データ#14、
15を読み出して、回復処理を行ない復元し、ドライブ
SD#2または4のダミーデータ領域に格納する。以下
同様に他のデータについても回復処理を行ない論理グル
ープ10内のダミーデータ領域に格納していく。
【0099】なお、ドライブSD#2,3,4,5,6
のダミーデータ領域に、ドライブSD#1の回復データ
を全て格納した後は、ダミーデータが論理グループ10
において一つしかないため、実施例1で述べたような書
き込み時の回転待ちを短くすることは出来ないため、従
来のアレイディスクであるRAIDのレベル5の処理と
なる。また、ドライブSD#1の回復データを全て格納
した後は、ドライブSD#2,3,4,5,6の中で更
にもう一台のドライブに障害が発生した場合、同様にそ
の障害が発生したドライブ内のデータについて回復処理
を行ない、残りのダミーデータ領域に格納し、処理を行
なえる。
【0100】この様にして、論理グループ10内のダミ
ーデータ領域を全て使いきってしまった場合は、障害S
CSIドライブ12を正常のSCSIドライブ12に交
換し、この交換した正常なSCSIドライブ12は全て
ダミーデータ領域として論理グループを再構成する。障
害SCSIドライブ12を正常のSCSIドライブ12
に交換した直後は、ダミーデータ領域が特定SCSIド
ライブ12に集中した形になっているため、このSCS
Iドライブ12が使用出来ずにまたされることが多くな
りネックとなるため、実施例1で示した回転待ち時間を
短縮する効果が、効率的に発揮出来ない。
【0101】しかし、時間が立つにつれて、ダミーデー
タが分散されて、SCSIドライブ障害前の状態に戻っ
ていき、次第に解消されていく。もし、この時間が問題
となる場合は、SCSIドライブに障害が発生したこと
を感知した場合、正常なSCSIドライブに交換して、
この交換した正常なSCSIドライブに障害が発生した
SCSIドライブ内のデータとパリティをユーザが復元
することも可能とする。なお、この時ダミーデータに関
しては復元せずにダミーデータ領域として空けておく。
【0102】本実施例ではこの回復処理と、ダミーデー
タ領域へ復元したデータを書き込む処理をMP20が自
動的に行なう。この様に自動的に行なうことによりSC
SIドライブに障害が発生した場合、障害が発生したS
CSIドライブを正常なSCSIドライブに交換し回復
したデータを書き込むのと比較し、本発明ではシステム
を使用するユーザがSCSIドライブに障害が発生する
とすぐに正常なSCSIドライブと交換する必要が無い
ため、ユーザの負担が軽くなる。
【0103】〔実施例3〕本発明の第3の実施例を図1
3〜図15により説明する。本実施例では、実施例1、
2において示したディスクアレイシステムの論理グルー
プ10において、要求性能に合わせてダミーデータの数
を増やすことを可能とする。ここでいう要求性能とは読
み出し/書込み処理を高速に行ない処理時間を短縮させ
るアクセス性能と、障害発生時に対処する信頼性能の両
方をいう。ダミーデータの数を増加させる方法は、図1
3のように全てがダミーデータにより構成されている拡
張ドライブを増設する。
【0104】一例として図14に示すように、論理グル
ープ10内においてダミーデータの数を3個にした場合
を示す。この例では、SD#1、2、3のSCSIドラ
イブ12にデータが格納されており、SD#4,6及び
SD#7(拡張ドライブ)のSCSIドライブ12には
ダミーデータが格納されており、SD#5のSCSIド
ライブ12にはパリティが格納されている。
【0105】本実施例でのデータの更新時の処理は、実
施例1に比べて、ダミードライブの数が多い点が異な
る。つまり新パリティを書き込むドライブを選択すると
き、3つのダミードライブから実施例1の方法で選択す
る。新データの書き込みは残りの2つのダミードライブ
のうち、より早く書き込めるドライブを選択する。図1
4はそのときの動作の一例である。
【0106】本実施例のようにダミーデータを増加させ
ることにより、書き込み処理における選択対象のドライ
ブが増え、書込み時のオーバヘッド(回転待ち)を減少
させることが可能となる。また、障害が発生した場合、
実施例2のようにその障害が発生したデータを回復し
て、この回復したデータを格納することが可能であり、
この回復したデータ格納する領域を増加させることによ
り信頼性の向上を図ることが可能となる。高性能な処理
を要求するデータはこの様にダミーデータを多く持つよ
うにする。また、一つの論理グループ10内においてダ
ミーデータの数が違うグループ混在させることも可能で
ある。
【0107】MP20は当該論理グループ10内におい
て、どのデータ、ダミーデータ、パリティがどの様に構
成されているか、キャッシュメモリ7内のアドレステー
ブル40により認識することが可能である。このため、
CPU1から読み出しまたは書込み要求が発行されてき
た場合、当該データが格納されている論理グループ10
の構成を、アドレステーブル40を調べることで認識
し、実施例1のように処理するか、実施例3のように処
理するかを、MP20が判断し、処理を行なう。
【0108】なお、本実施例では実施例2の効果を実現
することが可能であることは明らかである。また、本実
施例ではダミーデータ数を3としたが、この数は本発明
を制約しない。
【0109】本実施例では、図13に示すように、拡張
ドライブにはダミーデータのみが格納されているとし
て、論理グループ10における同一SCSI内Addr
44でダミーデータ数を増加した。
【0110】このように、ダミーデータ数を増加させた
後、容量または、性能の向上を図るため、ダミーデータ
の一部に、新規にデータを格納する方法を図15で説明
する。図15は、ダミーデータの追加処理(A)と、容
量増設に伴う新規データの書き込み処理(B)とからな
っている。ダミーデータの追加処理(A)では、図13
に示したように、6台のSCSIドライブ12により構
成されていた論理グループ内に、1台のSCSIドライ
ブ12を増設し、これを拡張ドライブとした場合、先に
述べたように、この拡張ドライブは、ダミーデータによ
り構成されているとし、論理グループ10における同一
SCSI内Addr44でダミーデータ数を増加させ
る。この時、アドレステーブル40のSCSIドライブ
番号43に拡張ドライブのSCSIドライブ番号を追加
し、ダミードライブ番号51に拡張ドライブのSCSI
ドライブ番号を追加する。また、追加したSCSIドラ
イブ番号の各SCSI内Addr44に対応する全論理
アドレス45において無効フラグ49をオン(1)とし
て全てをダミーデータとする(1502)。
【0111】次に新規データの書き込み処理(B)を説
明する。もし、ユーザから容量の増設要求がADC2の
MP1 20に発行され、新規データを書き込む場合、
MP1 20はアドレステーブル40により論理グルー
プ10における同一SCSI内Addr44の3個のダ
ミーデータのアドレスを認識し、現在、他の読み出し/
書き込み処理を行っていないSCSIドライブ12に格
納されてダミーデータを1個選択する(1504)。M
P1 20によるダミーデータの選択が完了したら、M
P1 20は、新規データをこの選択したダミーデータ
のアドレスに通常の書き込み処理と同様に書き込む(1
506)。なお、この時、パリティの更新は、旧データ
はダミーデータが全て0として、旧データの読み出しは
不要である。また、新パリティの書き込みについては、
新規データを書き込んだダミーデータ以外の残りの2個
のダミーデータの中で、どちらか早く書き込める方に書
き込んでもかまわない。
【0112】以上のように、ダミーデータに新規データ
を書き込んだ後、MP1 20はアドレステーブル40
において、新規データが書き込まれたダミーデータの論
理アドレス45を新規データに変更し、ダミードライブ
番号カラム51から新規データが書き込まれたダミーデ
ータのSCS1ドライブ番号を削除する(1508)。
以下同様に新規データを次々に書き込み、容量の増設を
図る。
【0113】このように、論理グループ10に分散され
ているダミーデータに新規データを分散して書き込むた
め、拡張したドライブに対する新規データの書き込み
が、集中しないため、効率良く処理することが可能とな
る。
【0114】〔実施例4〕本発明の第4の実施例を図1
6で説明する。本実施例では複数の論理グループ10間
に渡ってダミーデータを共有することを可能にする。デ
ィスクアレイサブシステムは、図16に示すように複数
の論理グループ10により構成される。本実施例では実
施例3で述べたような、高性能を要求するデータについ
てダミーデータを増加させるのを、論理グループ10内
のSCSIドライブ12の数を増加させるのではなく、
論理グループ10間のSCSIドライブ12の割り当て
方を可変とすることで実現する。本実施例では、サブ論
理グループはパリティグループと、このパリティグルー
プに対応するダミーデータにより構成されるグループと
定義し、論理グループ10はこのサブ論理グループによ
り構成されるとする。
【0115】図16においてサブ論理グループ#1とサ
ブ論理グループ#2においてSD#7のSCSIドライ
ブ12のダミーデータを共有する場合を以下に示す。サ
ブ論理グループ#1においてはドライブSD#1のデー
タ#1、ドライブSD#2のデータ#2、SD#3のデ
ータ#3とSD#4,6のダミーデータとSD#5のパ
リティにより構成されている。サブ論理グループ#1に
ついてはドライブSD#7のダミーデータをサブ論理グ
ループ#2と共有し拡大論理グループ#1とする。
【0116】拡大論理グループ#1ではダミーデータが
3個あり、サブ論理グループ#2ではダミーデータは2
個である。一方、サブ論理グループ#2においてはドラ
イブSD#8のデータ#4、SD#10のデータ#5、
SD#11のデータ#6、SD#7,9のダミーデータ
と、SD#12のパリティ#2により構成されている。
【0117】拡大論理グループ#1では実施例2、3で
の制御が行なわれ、サブ論理グループ#2では実施例
1、2の制御が行なわれる。MP20は当該サブ論理グ
ループが、どのSCSIドライブ12内のどのデータと
パリティとダミーデータにより構成されているか、キャ
ッシュメモリ7内のアドレステーブル40により認識す
ることが可能である。アドレステーブル40にはCPU
1が指定してきたCPU指定アドレスが、どのサブ論理
グループに属するものなのかのテーブルを持っている。
このため、CPU1から読み出しまたは書込み要求が発
行されてきた場合、アドレステーブル40により当該デ
ータが、どのサブ論理グループに所属するか、MP20
が認識することが可能である。
【0118】以上のように本実施例ではサブ論理グルー
プ間においてダミーデータを共有し拡大論理グループを
構成することが可能となる。拡大論理グループにおい
て、どのサブ論理グループがダミーデータを共有するか
はユーザは自由に指定可能である。この時、サブ論理グ
ループ間において、CPU1からの読み出しまたは書込
み要求が競合しないような論理グループ10でダミーデ
ータを共有するようにする方が良い。
【0119】なお、各パリティグループごとに予備領域
を持つことは、管理を単純化する効果があるが、用途に
よっては、パリティグループごとに対応させる必要はな
い。
【0120】すなわち、各パリティグループ対応の予備
領域でなくて、複数のパリティグループに使用可能な予
備領域を各ドライブに設けておき、新データ、新パリテ
ィを書き込むときに修正前のパリティグループが属する
ドライブ以外の2つのドライブにある2つの予備領域に
新データと新パリティを書き込んでもよい。旧データ、
旧パリティは新たに予備領域とする。この方法によれ
ば、予備領域の絶対量が少なくて済むという効果があ
る。
【0121】〔実施例5〕本発明の第5の実施例を図1
7〜図20により説明する。本実施例では図17、18
に示すように、論理グループ10単位にサブDKC11
を設ける。そして、その内部に図19に示すように、実
施例1、2、3、4において示したキャッシュメモリ7
内のアドレステーブル40と、PG36、サブキャッシ
ュ32とそれらを制御するマイクロプロセッサMP3
29を持たせたものである。本実施例におけるデータの
処理手順は実施例1及び2で示したものと同様である。
以下には実施例1、2、3、4で示した処理手順と異な
る部分のみを説明する。
【0122】本実施例では図19に示すように実施例
1、2、3、4で示したキャッシュメモリ7内のアドレ
ステーブル40を、サブDKC11内のデータアドレス
テーブル(DAT)30に格納する。DAT30は格納
されているテーブルの形式や機能は実施例1、2、3、
4のテーブル40と同様であるが、異なるのはデータを
格納するSCSIドライブアドレスが論理グループ10
に属するものに限られている点と、書き込み、読み出し
データは保持しない専用メモリ上に構成されていること
である。このため、以下では図3(b)のテーブル40
をDAT30の代りに適宜引用する。ADC2内のGA
T23はCPU1から指示されたCPU指定アドレスか
ら、そのCPU指定アドレスが指示する場所がADU3
内のどの論理グループ10かを判定するのみである。
【0123】キャッシュメモリ7内には、その特別な領
域に図20に示すような論理グループテーブル(LG
T)60が格納されている。LGT60は図20に示す
ようにCPU1から指定されるCPU指定ドライブ番号
41とCCHHR46に対応して、論理グループアドレ
ス61が決定できるテーブルとなっている。また、LG
T60にはCPU指定アドレスに対応するデータがキャ
ッシュメモリ7内に存在する場合、そのデータのキャッ
シュメモリ7内のアドレスをキャッシュアドレス47に
登録でき、また、キャッシュメモリ7内にデータが存在
する場合オン(1)とし、キャッシュメモリ7内に存在
しない場合オフ(0)とするキャッシュフラグ48が用
意されている。ユーザは初期設定する際に自分の使用可
能な容量に対する領域を確保するが、その際にADC2
のMP1 20が、LGT60により論理グループ10
を割当てる。
【0124】この時、MP20はLGT60にユーザが
確保するために指定したCPU指定アドレスに対応する
領域を登録する。そこで、実際の読みだし、書き込み処
理においては、GAT23はLGT60によりCPU1
から指定してきたCPU指定アドレスに対応した論理グ
ループ10を認識することが可能となる。
【0125】読み出し時はGAT23がLGCにより論
理グループ10を確定し、その確定した結果をMP20
に報告し、MP20はこの当該論理グループ10に対し
読み出し要求を発行するようにDrive IF28に
指示する。MP20から指示を受けたDrive IF
28は当該論理グループ10のサブDKC11に対し読
み出し要求とCPU1が指定するCPU指定アドレスを
発行する。サブDKC11ではマイクロプロセッサ(M
P)29がこの読み出し要求のコマンドとCPU指定ア
ドレスを受け付け、実施例1と同様Drive IF2
8から送られてきたCPU指定アドレスをDAT30を
参照し、当該データが格納されている論理グループ10
内の物理アドレスに変換し、この物理アドレスから当該
SCSIドライブアドレス(SCSIドライブ番号とそ
の中のSCSI内Addr)を確定する。このアドレス
の確定後MP29は当該SCSIドライブ12に対し、
読み出し要求を発行する。
【0126】MP29から読み出し要求を発行されたS
CSIドライブ12ではそのSCSI内Addrへシー
ク、回転待ちを行ない、当該データの読み出しが可能に
なり次第、該当データをドライブアダプタ回路(Dri
ve Adp)34に転送し、Drive Adp34は
サブキャッシュメモリ32に格納する。サブキャッシュ
メモリ32に当該データの格納が完了した後、Driv
e Adp34はMP3 29に格納報告を行ない、MP
29はDAT30の当該データの当該論理アドレス45
内の当該キャッシュフラグ48をオン(1)とする。後
に当該キャッシュフラグ48がオン(1)のデータに対
し読み出しまたは書込み要求が発行された場合は、サブ
キャッシュ32内で処理を行なう。
【0127】実施例1と同様にMP29によるDAT3
0の更新が終了すると、MP29はADC2内のDri
ve IF28に対しデータ転送可能という応答を行な
い、Drive IF28はこの応答を受け取ると、M
P20に対し報告する。MP20はこの報告を受け取る
と、キャッシュメモリ7への格納が可能なら、Driv
e IF28に対しサブDKC11からデータを転送す
るように指示する。Drive IF28ではMP20
からの指示を受けるとサブDKC11のMP29に対し
読み出し要求を発行する。この読み出し要求を受けたM
P29はサブキャッシュアダプタ回路(SCA)31に
対しサブキャッシュ32から当該データを読みだすよう
に指示し、SCA31は実際にデータを読み出してDr
iveIF28にデータを転送する。Drive IF
28がデータを受け取った後は、実施例1、2で示した
処理を行なう。
【0128】一方、書込み時は読み出し時と同様に当該
論理グループ10を確定し、MP20はDrive I
F28に対し当該論理グループ10のMP29に対し書
込み要求を発行するように指示する。当該論理グループ
10内のMP3 29は、書込み要求を受け付け、書込
みデータをサブキャッシュ32に格納した後は、図5の
フローチャートに従って、実施例1、2、3、4と同様
にサブDKC11内で当該SCSIドライブ12群にお
いて回転位置の検出を行なう。MP3 29は回転位置
の検出を行なった後は書込みSCSIドライブ12を確
定する。MP29により書込みSCSIドライブ12を
確定した後は実施例1、2、3、4と同様に処理する。
本実施例では実施例1、2、3、4と同様の効果を実現
することが可能である。
【0129】以上述べた各実施例においては、磁気ディ
スク装置を用いたシステムを例に説明したが、本発明は
光ディスク装置を用いた記憶システムのような他の回転
型の記録媒体に用いても同様な効果を発揮することが可
能である。
【0130】
【発明の効果】本発明によれば、データの更新時におけ
る回転待ち時間を短縮できるため、書き込み処理を高速
に行え、これにより単位時間当りのI/O処理件数を増
加させることが可能となる。また、SCSIドライブに
障害が発生した場合、すぐに正常なSCSIドライブと
交換する必要が無いため、システムを使用するユーザの
負担が軽くなる。また、アドレス管理が簡単なため、ド
ライブの拡張も容易である。さらに、通常は使用しない
スペアのSCSIドライブを、回転待ち時間の短縮とい
う、性能向上のために使用でき、SCSIドライブ資源
の有効活用が図れる。
【図面の簡単な説明】
【図1】本発明の第1の実施例の全体構成図。
【図2】第1の実施例のクラスタ内構成図。
【図3】アドレス変換テーブルの説明図。
【図4】更新処理時のデータ移動説明図。
【図5】更新処理フローチャート。
【図6】パリティグループを構成する各データのディス
ク上での位置説明図。
【図7】更新処理タイミングチャート。
【図8】ディスクの回転位置検出方法説明図。
【図9】更新前後におけるパリティグループ内データの
詳細説明図。
【図10】第1の実施例の変形例になる論理グループの
アドレス構成図。
【図11】第2の実施例におけるデータ回復処理説明
図。
【図12】図11の例の障害回復処理のフローチャー
ト。
【図13】第3の実施例におけるドライブ拡張例の構成
図。
【図14】図13の例における更新処理タイミングチャ
ート。
【図15】ドライブ拡張時のデータ書き込み処理フロー
チャート。
【図16】第4の実施例の論理グループの説明図。
【図17】第5の実施例のシステム構成図。
【図18】第5の実施例のクラスタ内構成図。
【図19】第5の実施例のサブDKC内構成図。
【図20】第5の実施例の論理グループテーブル説明
図。
【図21】従来の汎用大型計算機とRAID Leve
l5における更新処理説明図。
【図22】図21の例におけるドライブ内アドレス説明
図。
【図23】図21のRAID5における書き込み処理タ
イミングチャート。
【符号の説明】
1…CPU、2…アレイディスクコントローラ(AD
C)、3…アレイディスクユニット(ADU)、4…外
部インターフェースパス、5…チャネルパスディレク
タ、6…チャネルパス、7…キャッシュメモリ、8…ド
ライブパス、9…アレイディスクユニットパス、10…
論理グループ、12…SCSIドライブ、13…クラス
タ、14…ドライブ側キャッシュアダプタ(C Ad
p)、15…インターフェースアダプタ、16…チャネ
ルパススイッチ、17…制御信号線、18…データ線、
19…パス、20…マイクロプロセッサ1(MP1)、
21…チャネルインターフェース(CH IF)回路、
22…データ制御回路(DCC)、23…グループアド
レス変換回路(GAT)、24…チャネル側キャッシュ
アダプタ(C Adp)、28…ドライブインターフェ
ース回路(Drive IF)、29…マイクロプロセ
ッサ3(MP3)、30…データアドレステーブル4
0、31…サブキャッシュアダプタ、34…ドライブア
ダプタ(Drive Adp)、35…ドライブパス、
36…パリティ生成回路、40…アドレス変換用テーブ
ル(アドレステーブル)、47…キャッシュアドレス、
48…キャッシュフラグ、49…無効フラグ、60…論
理グループテーブル、61…論理グループアドレス

Claims (34)

    (57)【特許請求の範囲】
  1. 【請求項1】それぞれ複数のデータと、該複数のデータ
    から生成された少なくとも1つの誤り訂正符号を含む複
    数のデータグループを生成し、各データグループを構成
    する複数のデータ及び誤り訂正符号が複数のドライブ内
    に分散されるようにして保持する記憶装置におけるデー
    タの更新方法であって、 いずれかのデータグループを構成する複数のデータの1
    つを新たなデータで書き換えるときに、その一つのデー
    タを新たなデータで更新した後の、該データグループに
    対する新たな誤り訂正符号を新たに生成し、 該新データと該新誤り訂正符号とを、前記記憶装置に含
    まれた各データグループを分散して書き込むに必要なド
    ライブの数より多いドライブの各々に設けられた予備領
    域の内、該更新すべきデータグループに対するデータと
    誤り訂正符号がそれぞれ記憶されているドライブとは異
    なるドライブに、分散して保持することを特徴とする記
    憶装置におけるデータの更新方法。
  2. 【請求項2】前記書きかえられるべきデータと、該デー
    タの属するデーグループの旧誤り訂正符号とを保持して
    いたドライブの領域を新たな予備領域として確保するこ
    とを特徴とする請求項1記載の記憶装置におけるデータ
    の更新方法。
  3. 【請求項3】それぞれ複数のデータと、該複数のデータ
    から生成された少なくとも1つの誤り訂正符号を含む複
    数のデータグループを生成し、各データグループを構成
    する複数のデータ及び誤り訂正符号が複数のドライブ内
    に分散されるようにして保持する記憶装置におけるデー
    タの更新方法であって、 それぞれのデータグループの書き込み時に、それぞれの
    データグループに対して、該データグループ内の各デー
    タと誤り訂正符号を書き込むドライブと異なるドライブ
    に、少なくとも2個の予備領域を確保し、 いずれかのデータグループに属するデータの一つを新た
    なデータで更新するときに、該データグループに対して
    確保された前記少なくとも二つの予備領域の一つに該新
    たなデータを書き込み、 該新たなデータて更新された後の該データグループに対
    する新たな誤り訂正符号を生成し、 前記新たな誤り訂正符号を前記少なくとも二つの予備領
    域の他の1つに書き込み、 前記書き換え前のデータ及び誤り訂正符号がそれぞれ書
    き込まれていた二つの記憶領域を、上記データグループ
    のための新たな予備領域として保持する、 ことを特徴とする記憶装置におけるデータの更新方法。
  4. 【請求項4】前記データグループ内において、前記誤り
    訂正符号を生成する各データは、別々のドライブの同一
    の物理的なアドレスに格納し、前記誤り訂正符号も同様
    に別のドライブの、該誤り訂正符号の生成に関与したデ
    ータと同一の物理的なアドレスに格納し、 前記予備領域は前記データおよび誤り訂正符号と同様
    に、前記データ及び誤り訂正符号が格納されているドラ
    イブとは別のドライブの同一の物理的なアドレスに各々
    格納することを特徴とする請求項1または3記載の記憶
    装置におけるデータの更新方法。
  5. 【請求項5】データを格納する複数のドライブ群を有す
    るディスク装置と、外部からのデ−タの入出力要求に対
    応して該ディスク装置のデータ格納を管理する制御装置
    からなるディスクアレイシステムにおけるデータの更新
    方法であって、該格納されているデータから複数のデー
    タを選択してパリティを生成し、該パリティとその生成
    に関与したデータの集合をパリティグループの単位と
    し、各パリティグループのパリティとデータを前記ドラ
    イブ群に格納するものにおいて、 外部から1回に読み出しまたは書き込みする単位で転送
    されてきたデ−タを前記ドライブ群の各格納領域に分散
    して格納し、 該分散して格納されているデータから複数のデータを選
    択してパリティを生成し、該パリティとその生成に関与
    したデータの集合をパリティグループの単位とし、前記
    各パリティグループに複数のダミーデータを付与し、 前記各パリティグループにおける、前記複数のダミーデ
    ータを、前記パリティとその生成に関与するデータとが
    格納されているドライブ群とは別のドライブ群に、各々
    独立して保持することを特徴とするディスクアレイシス
    テムにおけるデータ更新方法。
  6. 【請求項6】デ−タを格納する複数のドライブ群を備え
    たディスク装置と、上位装置からのデ−タの入出力要求
    に対応して当該ディスク装置を管理する制御装置からな
    るディスクアレイシステムにおけるデータ更新方法にお
    いて、 上記上位装置から1回に読み出しまたは書込みする単位
    で転送されてきたデ−タを複数のドライブ群に別々に分
    散して格納し、 該別々のドライブに格納されているデータから複数のデ
    ータを選択し、これらの選択されたデータからパリティ
    を生成し、 この生成したパリティと生成に関与したデータの集合を
    パリティグループとし、同一のパリティグループにおい
    ては、パリティもデータと同様に、このパリティを生成
    するのに関与したデータが格納されているのとは別々の
    ドライブに各々格納すると共に、 各パリティグループに対する複数の予備の書込み領域
    を、パリティを生成するデータと、それらのデータによ
    り生成したパリティが格納されているドライブに各々分
    散して保持することを特徴とするディスクアレイシステ
    ムにおけるデータ更新方法。
  7. 【請求項7】予備の書き込み領域を1パリティグループ
    に対し少なくとも2個所以上対応させ、この予備の書き
    込み領域において、特定のパリティグループに対応した
    予備の書き込み領域をダミーデータとし、 前記パリティグループにおいてパリティの生成に関与す
    るデータと、それらのデータより生成したパリティとが
    格納されているドライブとは別のドライブに、前記それ
    ぞれのダミーデータを格納することを特徴とする請求項
    5または6記載のディスクアレイシステムにおけるデー
    タ更新方法。
  8. 【請求項8】パリティを生成するデータと生成したパリ
    ティにより構成されるパリティグループと、予備の書き
    込み領域が、それぞれ別のドライブに格納されており、
    これらのドライブの集合を論理グループとし、 該論理グループ内において、パリティを生成する各デー
    タは、別々のドライブの同一の物理的なアドレスに格納
    し、パリティも同様に別のドライブの、パリティの生成
    に関与したデータと同一の物理的なアドレスに格納し、
    ダミーデータはデータおよびパリティと同様に、デー
    タ、パリティが格納されているドライブとは別のドライ
    ブの同一の物理的なアドレスにもつことを特徴とする請
    求項5または6記載のディスクアレイシステムにおける
    データ更新方法。
  9. 【請求項9】パリティを生成するデータと生成したパリ
    ティにより構成されるパリティグループと、予備の書き
    込み領域が、それぞれ別のドライブに格納されており、
    これらのドライブの集合を論理グループとし、 前記ディスク装置を制御する制御装置は、上位装置から
    の書込み要求に対し、論理グループ内において、上位装
    置が書き込み先として指定してきたデータのアドレスを
    前記ダミーデータの物理的なアドレスに変換して書き込
    むことを特徴とする請求項5または6記載のディスクア
    レイシステムにおけるデータ更新方法。
  10. 【請求項10】パリティを生成するデータと生成したパ
    リティにより構成されるパリティグループと、予備の書
    き込み領域が、それぞれ別のドライブに格納されてお
    り、これらのドライブの集合を論理グループとし、 前記ディスク装置を制御する制御装置は、上位装置から
    書込み要求が発行された場合、 上位装置が書込み先に指定したアドレスに対応する物理
    的なアドレスに書き込まれている旧データが格納されて
    いるドライブが属する論理グループにおいて、その論理
    グループ内の旧データおよび更新される旧パリティおよ
    びダミーデータが格納されている各ドライブに対して、
    各々の回転位置を検出し、 該検出された回転位置の情報から、回転待ち時間を算出
    し、 該回転位置または回転待ち時間の情報から、ダミーデー
    タの格納されている複数のドライブ群の中で、どのドラ
    イブ内のダミーデータの物理的なアドレスに論理グルー
    プの新たなデータを格納するかを判定することを特徴と
    する請求項5または6記載のディスクアレイシステムに
    おけるデータ更新方法。
  11. 【請求項11】前記ディスク装置がキャッシュメモリを
    備えており、パリティを生成するデータと生成したパリ
    ティにより構成されるパリティグループと予備の書き込
    み領域がそれぞれ別のドライブに格納されており、これ
    らのドライブの集合を論理グループとし、 前記論理グループにおいてダミーデータの格納されてい
    る複数のドライブ群の中から、実際に新データを格納す
    るドライブを判定した後、そのドライブに対し先行して
    書込み要求を発行して新データを書き込み、同時に前記
    キャッシュメモリ内に新データのコピーを残し、 該キャッシュメモリ内の新データのコピーにより、新パ
    リティの作成を行い、該新パリティの作成完了後、この
    新パリティを新データを格納したのとは別のダミーデー
    タの物理的なアドレスに書き込むことを特徴とする請求
    項5または6記載のディスクアレイシステムにおけるデ
    ータ更新方法。
  12. 【請求項12】パリティを生成するデータと生成したパ
    リティにより構成されるパリティグループと、予備の書
    き込み領域が、それぞれ別のドライブに格納されてお
    り、これらのドライブの集合を論理グループとし、 前記論理グループ内のあるドライブに障害が発生したと
    き、該障害が発生したドライブ内のデータまたはパリテ
    ィを回復処理により復元し、この復元したデータまたは
    パリティを予備の書き込み領域に書き込み、 前記障害が発生したドライブを正常なドライブに交換
    し、 前記交換後、この交換した正常なドライブは全てダミー
    データにより構成される予備の書き込み領域により構成
    されているとして論理グループを再構成して処理を再開
    することを特徴とする請求項5または6記載のディスク
    アレイシステムにおけるデータ更新方法。
  13. 【請求項13】パリティを生成するデータと生成したパ
    リティにより構成されるパリティグループと、予備の書
    き込み領域が、それぞれ別のドライブに格納されてお
    り、これらのドライブの集合を論理グループとし、 前記論理グループ内のあるドライブに障害が発生したこ
    とを感知した場合、障害が発生したドライブを正常なド
    ライブに交換し、 前記障害が発生したドライブ内のデータまたはパリティ
    を回復処理により復元し、 この復元したデータまたはパリティと、障害が発生した
    ドライブ内にあったダミーデータを、交換した正常なド
    ライブに書き込んで論理グループを再構成して処理を再
    開することを特徴とする請求項5または6記載のディス
    クアレイシステムにおけるデータ更新方法。
  14. 【請求項14】パリティを生成するデータと生成したパ
    リティにより構成されるパリティグループと、予備の書
    き込み領域が、それぞれ別のドライブに格納されてお
    り、これらのドライブの集合を論理グループとし、 前記論理グループ内のダミーデータの数を、書込み処理
    時間の要求にあわせて変更可能としたことを特徴とする
    請求項5または6記載のディスクアレイシステムにおけ
    るデータ更新方法。
  15. 【請求項15】パリティを生成するデータと生成したパ
    リティにより構成されるパリティグループと、予備の書
    き込み領域が、それぞれ別のドライブに格納されてお
    り、これらのドライブの集合を論理グループとし、 前記論理グループ内のダミーデータの数を、障害発生時
    に対する信頼性の要求にあわせて変更可能としたことを
    特徴とする請求項5または6記載のディスクアレイシス
    テムにおけるデータ更新方法。
  16. 【請求項16】同一パリティグループに対してて、ダミ
    ーデータ数の異なるグループを混在させることを特徴と
    する請求項5または6記載のディスクアレイシステムに
    おけるデータ更新方法。
  17. 【請求項17】前記パリティグループにおけるデータと
    パリティとダミーデータの構成を、テーブルにより管理
    することを特徴とする請求項5または6記載のディスク
    アレイシステムにおけるデータ更新方法。
  18. 【請求項18】複数パリティグループ間で、予備領域を
    共有することを特徴とする請求項5記載の記憶装置にお
    けるデータ更新方法。
  19. 【請求項19】パリティを作成するデータの集合と作成
    されたパリティにより構成されるパリティグループと、
    ダミーデータでサブ論理グループを構成し、各論理グル
    ープをこのサブ論理グループにより構成し、 前記複数の論理グループ間でダミーデータを共有する場
    合、サブ論理グループのデータとパリティとダミーデー
    タの割り当て方を変えることにより実現することを特徴
    とする請求項5または6記載のディスクアレイシステム
    におけるデータ更新方法。
  20. 【請求項20】前記サブ論理グループを構成するデータ
    とパリティとダミーデータの割り当てを、テーブルによ
    り管理することを特徴とする請求項19記載のディスク
    アレイシステムにおけるデータ更新方法。
  21. 【請求項21】前記サブ論理グループを構成するデータ
    とパリティとダミーデータの割り当てを、ユーザが自由
    に設定することを可能とすることを特徴とする請求項1
    9記載のディスクアレイシステムにおけるデータ更新方
    法。
  22. 【請求項22】前記サブ論理グループを構成するデータ
    とパリティとダミーデータの割り当てを、上位装置から
    の読み出し要求または書込み要求が、競合しないような
    論理グループにおいて構成することを特徴とする請求項
    19記載のディスクアレイシステムにおけるデータ更新
    方法。
  23. 【請求項23】書き込むべき複数のデータから少なくと
    も1つの誤り訂正符号を含む1つのデタループを生成
    し、該データグループを構成する複数のデータ及び誤り
    訂正符号を複数のドライブ群内に格納する制御装置を有
    する記憶装置であって、該制御装置が、 前記データグループを構成する複数のデータの1つを新
    たなデータに書き換える更新要求に応答して、該更新デ
    ータと新たな誤り訂正符号とを含む1つのデータグルー
    プを新たに生成する手段と、 前記データグループの更新データと誤り訂正符号とを、
    前記書き換え前のデータおよび誤り訂正符号が格納され
    ていたドライブとは異なるドライブにそれぞれ格納する
    手段とを備えたことを特徴とする記憶装置。
  24. 【請求項24】書き込むべき複数のデータから少なくと
    も1つの誤り訂正符号を含む1つのデータグループを生
    成し、該データグループを構成する複数のデータ及び誤
    り訂正符号を複数のドライブ群内に格納する制御装置を
    有する記憶装置であって、該制御装置が、 データの書き込み要求に応答して、前記データグループ
    に対して、該データグループ内の各データと誤り訂正符
    号及び少なくとも2個の予備領域からなる複数の記憶領
    域を前記記憶装置の互いに異なるドライブ内に各々確保
    する手段と、 前記確保された複数の記憶領域に前記データグループ内
    の各データと誤り訂正符号を各々書き込み、残りの少な
    くとも二つの記憶領域を前記予備領域として保持する手
    段と、 記憶された前記データの一つを新たなデータで更新する
    要求に応答して、前記少なくとも二つの予備領域の一つ
    に該新たなデータを書き込む手段と、 前記新たなデータに更新された後の複数のデータに対す
    る新たな誤り訂正符号を含む新たなデータグループを生
    成する手段と、 前記新たな誤り訂正符号を前記少なくとも二つの予備領
    域の他の1つに書き込み、前記複数の記憶領域のうち、
    書き換えられた前記複数のデータ及び誤り訂正符号が書
    き込まれていた少なくとも二つの記憶領域を上記更新さ
    れたデータグループのための新たな予備領域として保持
    する手段、 とを備えたことを特徴とする記憶装置。
  25. 【請求項25】データを格納する複数のドライブ群を有
    するディスク装置と、外部からのデ−タの入出力要求に
    対応して該ディスク装置のデータ格納を管理する制御装
    置からなり、該制御装置が、前記格納されているデータ
    から複数のデータを選択してパリティを生成し、該パリ
    ティとその生成に関与したデータの集合をパリティグル
    ープの単位とし、各パリティグループのパリティとデー
    タを前記ドライブ群に格納するディスクアレイシステム
    において、 前記制御装置が、 外部から1回に読み出しまたは書き込みする単位で転送
    されてきたデ−タを前記ドライブ群の各格納領域に分散
    して格納する手段と、 該分散して格納されているデータから複数のデータを選
    択してパリティを生成し、該パリティとその生成に関与
    したデータの集合をパリティグループの単位とし、前記
    各パリティグループに複数のダミーデータを付与する手
    段と、 前記各パリティグループにおける、前記複数のダミーデ
    ータを、前記パリティとその生成に関与するデータとが
    格納されているドライブ群とは別のドライブ群に、各々
    独立して格納する手段とを備えたことを特徴とするディ
    スクアレイシステム。
  26. 【請求項26】デ−タを格納する複数のドライブ群を備
    えたディスク装置と、上位装置からのデ−タの入出力要
    求に対応して当該ディスク装置を管理する制御装置から
    なるディスクアレイシステムにおいて、前記制御装置
    が、 上記上位装置から1回に読み出しまたは書込みする単位
    で転送されてきたデ−タを複数のドライブ群に別々に分
    散して格納する手段と、 該別々のドライブに格納されているデータから複数のデ
    ータを選択し、これらの選択されたデータからパリティ
    を生成するパリティ生成回路と、 この生成したパリティと生成に関与したデータの集合を
    パリティグループとし、同一のパリティグループにおい
    ては、パリティもデータと同様に、このパリティを生成
    するのに関与したデータが格納されているのとは別々の
    ドライブに各々格納すると共に、各パリティグループに
    対する複数の予備の書込み領域を、パリティを生成する
    データと、それらのデータにより生成したパリティが格
    納されているドライブに各々分散して確保する手段とを
    備えたことを特徴とするディスクアレイシステム。
  27. 【請求項27】前記制御装置は、上位装置からの書込み
    要求に対し、パリティグループ内において、上位装置が
    書き込み先として指定してきたデータのアドレスを前記
    ダミーデータの物理的なアドレスに変換して書き込むア
    ドレス変換用のテーブルを備えていることを特徴とする
    請求項25または26記載のディスクアレイシステム。
  28. 【請求項28】前記制御装置は、上位装置から書込み要
    求が発行された場合、上位装置が書込み先に指定したア
    ドレスに対応する物理的なアドレスに書き込まれている
    当該旧データが格納されているドライブが属する論理グ
    ループにおいて、その論理グループ内の当該旧データお
    よび更新される当該旧パリティ及びダミーデータが格納
    されている各当該ドライブに対して、各々の回転位置を
    検出する回転位置検出回路と、 該検出された回転位置の情報から、回転待ち時間を算出
    する手段と、 該回転位置または回転待ち時間の情報から、ダミーデー
    タの格納されている複数のドライブ群の中で、どのドラ
    イブ内のダミーデータの物理的なアドレスに論理グルー
    プの新たなデータを格納するかを判定する手段とを備え
    ていることを特徴とする請求項25または26記載のデ
    ィスクアレイシステム。
  29. 【請求項29】前記制御装置は、上位装置から書込み要
    求が発行された場合、パリティグループにおいて当該旧
    データと当該旧パリティの格納されているドライブ群の
    中で、回転待ち時間の大きい方のドライブを基準にし、
    その、基準のドライブから当該旧データまたは当該旧パ
    リティを読み出して、更新する新しいパリティを作成す
    ると共に、ダミーデータの格納されている複数のドライ
    ブ群の中で、一番早くその新パリティを書き込めるドラ
    イブを判定する手段とを備えていることを特徴とする請
    求項25または26記載のディスクアレイシステム。
  30. 【請求項30】前記制御装置は、前記パリティグループ
    のドライブが属する論理グループ内のあるドライブに障
    害が発生したとき、該障害が発生したドライブ内のデー
    タまたはパリティを回復処理により復元する手段と、 該復元データまたはパリティを前記予備の書き込み領域
    に書き込む手段と、 前記障害が発生したドライブを正常なドライブに交換
    し、該交換した正常なドライブ群は全てダミーデータに
    より構成される予備の書き込み領域により構成されてい
    るとして論理グループを再構成して処理を再開する手段
    とを備えていることを特徴とする請求項25または26
    記載のディスクアレイシステム。
  31. 【請求項31】前記制御装置は、前記パリティグループ
    のドライブが属する論理グループ内において、データと
    パリティとダミーデータの構成を管理するテーブルを備
    えていることを特徴とする請求項25または26記載の
    ディスクアレイシステム。
  32. 【請求項32】前記制御装置は、サブ論理グループを構
    成するデータとパリティとダミーデータの割り当てを管
    理するテーブルを備えていることを特徴とする請求項3
    1記載のディスクアレイシステム。
  33. 【請求項33】前記制御装置は、前記パリティグループ
    のドライブが属する論理グループ内のあるドライブに障
    害が発生した場合、正常な残りのドライブ内のデータと
    パリティから、障害が発生したドライブ内のデータまた
    はパリティを回復処理により復元すると共に、この復元
    したデータまたはパリティを予備の書き込み領域に書き
    込む制御を行うプロセッサ持つことを特徴とする請求項
    25または26記載のディスクアレイシステム。
  34. 【請求項34】前記制御装置は、前記パリティグループ
    のドライブが属する論理グループ単位に、その内部にア
    ドレス変換用のテーブルと、回転位置検出回路と、パリ
    ティ生成回路と、キャッシュメモリと、それらを制御す
    るマイクロプロセッサを持つことを特徴とする請求項2
    5または26記載のディスクアレイシステム。
JP34830192A 1992-12-28 1992-12-28 ディスクアレイ装置及びそのデータ更新方法 Expired - Fee Related JP3176157B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP34830192A JP3176157B2 (ja) 1992-12-28 1992-12-28 ディスクアレイ装置及びそのデータ更新方法
US08/173,557 US5621882A (en) 1992-12-28 1993-12-22 Disk array system and method of renewing data thereof
US08/248,452 US5579474A (en) 1992-12-28 1994-05-24 Disk array system and its control method
US08/626,332 US6049890A (en) 1992-12-28 1996-04-02 Disk array system and its control method
US09/444,562 US6256749B1 (en) 1992-12-28 1999-11-19 Disk array system and its control method
US09/862,608 US6557140B2 (en) 1992-12-28 2001-05-23 Disk array system and its control method
US10/388,634 US7185265B2 (en) 1992-12-28 2003-03-17 Disk array system and its control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34830192A JP3176157B2 (ja) 1992-12-28 1992-12-28 ディスクアレイ装置及びそのデータ更新方法

Publications (2)

Publication Number Publication Date
JPH06202817A JPH06202817A (ja) 1994-07-22
JP3176157B2 true JP3176157B2 (ja) 2001-06-11

Family

ID=18396115

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34830192A Expired - Fee Related JP3176157B2 (ja) 1992-12-28 1992-12-28 ディスクアレイ装置及びそのデータ更新方法

Country Status (2)

Country Link
US (1) US5621882A (ja)
JP (1) JP3176157B2 (ja)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3065481B2 (ja) * 1994-04-22 2000-07-17 インターナショナル・ビジネス・マシーンズ・コーポレ−ション ディスク・アレイ装置およびデータの格納方法
WO1997011426A1 (en) 1995-09-18 1997-03-27 Cyberstorage Systems, Inc. Universal storage management system
US5790774A (en) * 1996-05-21 1998-08-04 Storage Computer Corporation Data storage system with dedicated allocation of parity storage and parity reads and writes only on operations requiring parity information
US6092170A (en) * 1996-11-29 2000-07-18 Mitsubishi Denki Kabushiki Kaisha Data transfer apparatus between devices
US6079028A (en) * 1997-04-23 2000-06-20 Lucent Technologies Inc. Fault tolerant architectures for continuous media servers
US5951691A (en) * 1997-05-16 1999-09-14 International Business Machines Corporation Method and system for detection and reconstruction of corrupted data in a data storage subsystem
US6467023B1 (en) * 1999-03-23 2002-10-15 Lsi Logic Corporation Method for logical unit creation with immediate availability in a raid storage environment
JP2004171437A (ja) 2002-11-22 2004-06-17 Fujitsu Ltd ストレージ制御装置及びその制御方法
US7428691B2 (en) * 2003-11-12 2008-09-23 Norman Ken Ouchi Data recovery from multiple failed data blocks and storage units
US7676502B2 (en) * 2006-05-22 2010-03-09 Inmage Systems, Inc. Recovery point data view shift through a direction-agnostic roll algorithm
US7698401B2 (en) * 2004-06-01 2010-04-13 Inmage Systems, Inc Secondary data storage and recovery system
US7979656B2 (en) 2004-06-01 2011-07-12 Inmage Systems, Inc. Minimizing configuration changes in a fabric-based data protection solution
US8868858B2 (en) * 2006-05-19 2014-10-21 Inmage Systems, Inc. Method and apparatus of continuous data backup and access using virtual machines
US8055745B2 (en) * 2004-06-01 2011-11-08 Inmage Systems, Inc. Methods and apparatus for accessing data from a primary data storage system for secondary storage
US8224786B2 (en) * 2004-06-01 2012-07-17 Inmage Systems, Inc. Acquisition and write validation of data of a networked host node to perform secondary storage
US9209989B2 (en) * 2004-06-01 2015-12-08 Inmage Systems, Inc. Causation of a data read operation against a first storage system by a server associated with a second storage system according to a host generated instruction
US8949395B2 (en) 2004-06-01 2015-02-03 Inmage Systems, Inc. Systems and methods of event driven recovery management
US20060047714A1 (en) * 2004-08-30 2006-03-02 Mendocino Software, Inc. Systems and methods for rapid presentation of historical views of stored data
US7664983B2 (en) * 2004-08-30 2010-02-16 Symantec Corporation Systems and methods for event driven recovery management
US8601225B2 (en) * 2005-09-16 2013-12-03 Inmage Systems, Inc. Time ordered view of backup data on behalf of a host
US8683144B2 (en) * 2005-09-16 2014-03-25 Inmage Systems, Inc. Causation of a data read against a first storage system to optionally store a data write to preserve the version to allow viewing and recovery
US7475277B1 (en) * 2005-11-10 2009-01-06 Storage Technology Corporation Automated repair of damaged objects
US8554727B2 (en) * 2006-05-19 2013-10-08 Inmage Systems, Inc. Method and system of tiered quiescing
US8838528B2 (en) * 2006-05-22 2014-09-16 Inmage Systems, Inc. Coalescing and capturing data between events prior to and after a temporal window
US8527470B2 (en) * 2006-05-22 2013-09-03 Rajeev Atluri Recovery point data view formation with generation of a recovery view and a coalesce policy
US8527721B2 (en) * 2008-12-26 2013-09-03 Rajeev Atluri Generating a recovery snapshot and creating a virtual view of the recovery snapshot
US7634507B2 (en) * 2006-08-30 2009-12-15 Inmage Systems, Inc. Ensuring data persistence and consistency in enterprise storage backup systems
US8028194B2 (en) * 2008-07-25 2011-09-27 Inmage Systems, Inc Sequencing technique to account for a clock error in a backup system
US8069227B2 (en) * 2008-12-26 2011-11-29 Inmage Systems, Inc. Configuring hosts of a secondary data storage and recovery system
US9558078B2 (en) 2014-10-28 2017-01-31 Microsoft Technology Licensing, Llc Point in time database restore from storage snapshots
US9766978B2 (en) 2014-12-09 2017-09-19 Marvell Israel (M.I.S.L) Ltd. System and method for performing simultaneous read and write operations in a memory
US11099746B2 (en) 2015-04-29 2021-08-24 Marvell Israel (M.I.S.L) Ltd. Multi-bank memory with one read port and one or more write ports per cycle
US11403173B2 (en) 2015-04-30 2022-08-02 Marvell Israel (M.I.S.L) Ltd. Multiple read and write port memory
US10387322B2 (en) 2015-04-30 2019-08-20 Marvell Israel (M.I.S.L.) Ltd. Multiple read and write port memory
US10089018B2 (en) 2015-05-07 2018-10-02 Marvell Israel (M.I.S.L) Ltd. Multi-bank memory with multiple read ports and multiple write ports per cycle

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3568153A (en) * 1968-09-16 1971-03-02 Ibm Memory with error correction
US4761785B1 (en) * 1986-06-12 1996-03-12 Ibm Parity spreading to enhance storage access
US5247638A (en) * 1990-06-18 1993-09-21 Storage Technology Corporation Apparatus for compressing data in a dynamically mapped virtual data storage subsystem
US5375128A (en) * 1990-10-18 1994-12-20 Ibm Corporation (International Business Machines Corporation) Fast updating of DASD arrays using selective shadow writing of parity and data blocks, tracks, or cylinders
US5309451A (en) * 1992-08-12 1994-05-03 Digital Equipment Corporation Data and parity prefetching for redundant arrays of disk drives

Also Published As

Publication number Publication date
US5621882A (en) 1997-04-15
JPH06202817A (ja) 1994-07-22

Similar Documents

Publication Publication Date Title
JP3176157B2 (ja) ディスクアレイ装置及びそのデータ更新方法
US5579474A (en) Disk array system and its control method
US5210866A (en) Incremental disk backup system for a dynamically mapped data storage subsystem
JP3431972B2 (ja) 仮想ディスクシステム
US5459857A (en) Fault tolerant disk array data storage subsystem
JP3944449B2 (ja) 計算機システム、磁気ディスク装置、および、ディスクキャッシュ制御方法
US7600152B2 (en) Configuring cache memory from a storage controller
JP3129732B2 (ja) コピーバックキャッシュを有する記憶装置アレイ
US5572660A (en) System and method for selective write-back caching within a disk array subsystem
JP3302688B2 (ja) 並列ディスク駆動機構アレイ式データ記憶サブシステム用の論理トラック書込みスケジューリングのシステム
US6886075B2 (en) Memory device system and method for copying data in memory device system
JP3713788B2 (ja) 記憶装置および記憶装置システム
US20050193273A1 (en) Method, apparatus and program storage device that provide virtual space to handle storage device failures in a storage system
JP3270959B2 (ja) ディスクアレイ装置におけるパリティ格納方法およびディスクアレイ装置
JPH06230903A (ja) ディスクアレイ装置の障害回復方法、およびディスクアレイ装置
JP3793544B2 (ja) ディスクアレイ装置及びその制御方法
JP3256329B2 (ja) ディスクアレイ装置及びその制御方法
JPH1031563A (ja) 記憶装置
JP3542577B2 (ja) ディスクアレイ装置及びその制御方法
JP3718506B2 (ja) ディスクアレイ装置及びその制御方法
JP3234211B2 (ja) ディスクアレイシステム
CN115480909A (zh) 存储***和数据处理方法
JPH10269695A (ja) コンピュータシステムにおける記憶装置の制御方式
JP2007334913A (ja) 記憶装置システム及び記憶装置システムにおけるデータの複写方法
JP2000311112A (ja) 情報システム

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees