JPH08137627A - ディスクアレイ装置 - Google Patents

ディスクアレイ装置

Info

Publication number
JPH08137627A
JPH08137627A JP6272187A JP27218794A JPH08137627A JP H08137627 A JPH08137627 A JP H08137627A JP 6272187 A JP6272187 A JP 6272187A JP 27218794 A JP27218794 A JP 27218794A JP H08137627 A JPH08137627 A JP H08137627A
Authority
JP
Japan
Prior art keywords
data
disk
parity
restored
area
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.)
Pending
Application number
JP6272187A
Other languages
English (en)
Inventor
Hirofumi Morita
浩文 森田
Satoyuki Suganuma
智行 菅沼
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP6272187A priority Critical patent/JPH08137627A/ja
Publication of JPH08137627A publication Critical patent/JPH08137627A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 ディスクアレイ装置におけるデータ修復処理
の効率性及びデータ修復処理によるシステムの性能低下
防止を目的とする。 【構成】 データDとパリティPとを複数台のディスク
装置0〜3に格納するディスクアレイ装置において、1
台のディスク装置が故障した場合、他の正常なディスク
装置のデータを一定量毎読み出し、復元したデータをパ
リティ領域に格納する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、情報処理システムの外
部記憶装置(サブシステム)であるディスクアレイ装置
に関する。
【0002】
【従来の技術】情報処理システムの外部記憶装置とし
て、記録の不揮発性、大容量性、データ転送の高速性等
の特長をもつ磁気ディスク装置が広く用いられている。
しかし、情報処理システムのデータ処理能力の向上に対
して、磁気ディスク装置の容量は増大する一方で、デー
タ転送速度はあまり増加していない。このような、情報
処理システムの磁気ディスク装置間のボトルネックを解
消する手段として、並列的に動作する複数台の磁気ディ
スク装置に、データの並列転送を行って、データ転送速
度を一台の磁気ディスクの転送速度に並列動作する台数
分を掛け合わせたものにするディスクアレイが使用され
ている。
【0003】ディスクアレイでは、並列動作する磁気デ
ィスク装置に冗長性を持たせて、ある磁気ディスク装置
の故障によるデータ転送の中断防止、故障した装置の置
き換え等を行って、ディスクアレイシステム全体の信頼
性向上を図ることが多い。
【0004】このような冗長性を持たせたディスクアレ
イ方式としてRAID(Redundant Arra
y of Independent Disks:19
87年のカルフォルニア大学バークレイ校のデビット・
A・パターソンらの論文に由来する呼び方)1〜5迄の
レベルに分類され、レベル3から5には、ディスクの故
障時にデータを回復するための冗長情報として誤り検出
符号(以下、「パリティ」という)を保持する。
【0005】RAIDレベル3は、1つのデータを全て
のディスクに対して、ビットあるいはバイトなどの小さ
な単位で分割(ストライピング)して、それらのストラ
イピングしたデータを並列処理によりディスクに同時に
格納する方式である。
【0006】RAIDレベル4は、データをアクセス単
位であるブロック(例えば1又は数セクタ)に分け、こ
れらのブロック単位のデータを各ディスクに分散して格
納する方式であり、パリティ格納のため専用に設けられ
たディスクを用いるものである。
【0007】RAIDレベル5は、パリティを格納する
ディスクを固定しないことで、複数の同時書き込みを可
能としており、多量のトランザクション処理において効
果を発揮する。
【0008】図14は、従来例の説明図であり、RAI
Dレベル5のデータ、パリティ格納場所の説明である。
図14において、ディスクaにはデータa−1〜a−3
とパリティ4、ディスクbにはデータb−1、b−2、
b−4、とパリティ3、ディスクcにはデータc−1、
c−3、c−4とパリティ2、ディスクdにはパリティ
1とデータd−2〜d−4がそれぞれ設けてある。
【0009】各パリティ1〜4は、各ディスク内の同一
パリティグループ内の排他的論理和EORを求めてディ
スクに保持するものである。例えば、パリティ1は次の
式で求める。
【0010】パリティ1=(データa−1)EOR(デ
ータb−1)EOR(データc−1) このような従来のRAIDレベル5を適用可能なディス
クアレイ装置で予備のディスクを持たない、又は予備の
ディスクが何らかの理由で使用できない場合において、
ディスクアレイ中の1台のディスクが故障した場合、デ
ータを復元して書き込む処理を行わず上位装置からの要
求に対してのみ故障ディスクと同一のパリティグループ
内の正常なディスクを使用して対処している。
【0011】例えば、ディスクbが故障し、このディス
クbに上位装置からの要求がデータb−1のリード要求
の場合、同一パリティグループ内の正常なディスクから
それぞれデータa−1、データc−1、パリティ1を読
み出し、これらの排他的論理和をとり、データb−1を
復元し上位装置へ転送する(リードリコンストラクショ
ン)。
【0012】また、ディスクbが故障し、上位装置から
の要求がライト要求である場合その処理は次の2つに分
かれる。 (1)故障ディスクb内のデータb−1に対してライト
要求がされた場合は、リード時と同様に更新前のデータ
b−1を復元し、更新前のパリティ1と排他的論理和E
ORをとり、さらにライト要求のあった新データb−1
との排他的論理和EORをとり、パリティ1の更新を行
う。この場合新データb−1の書き込みは行わない。
【0013】(2)ライト要求が出されたデータ(例え
ば、データa−3)があった場合、パリティ3が故障デ
ィスクb内に存在しているので、パリティ3の更新は行
わずデータ(データa−3)の更新だけを行う。
【0014】
【発明が解決しようとする課題】上記従来のものにおい
ては次のような課題があった。ディスクアレイ中の1台
のディスクが故障し、そのディスクにアクセスがあった
場合、システムの信頼性が低下したことに加え多数のデ
ィスクを使ったデータの復元、パリティの更新が必要と
なり著しい処理性能の低下が起こっていた。
【0015】本発明は、ディスクアレイ装置におけるデ
ータ修復処理の効率性、及びデータ修復処理によるシス
テムの性能低下防止を目的とする。
【0016】
【課題を解決するための手段】図1は本発明の原理説明
図であり、ディスクアレイを用いたサブシステムを示
す。図1中、0〜3はディスク装置、4〜7はディスク
制御装置、8はコモンバス、9はホストインターフェー
ス回路、10はプロセッサ(以下、MPUという)、各
ディスク装置の左側の001〜012は論理ブロックア
ドレス(以下単に、アドレスという)、右側の000〜
003、100〜103、200〜203、300〜3
03は物理アドレス、各ディスク内のPはパリティ領
域、Dはデータ領域を示す。
【0017】図1において、ディスク装置0〜3は、デ
ィスク制御装置4〜7に接続され、このディスク制御装
置4〜7は、サブシステム内のモジュールを接続するコ
モンバス8に接続されている。また、上位装置(図示せ
ず)とサブシステムをつなぐホストインターフェース回
路9と、このサブシステムを制御するMPU10とがコ
モンバス8に接続されている。
【0018】このようなディスクアレイ装置において、
本発明は次のように構成した。データDとパリティPと
を複数台のディスク装置0〜3に格納し、1台のディス
ク装置が故障した場合、他の正常なディスク装置のデー
タを一定量毎に読み出し、復元したデータをパリティ領
域に格納する。
【0019】また、MPU10がディスク装置の故障を
認識したことを契機として、他の正常なディスクのデー
タを一定量毎(例えばストライピング毎)に順次読み出
し、復元されたデータをパリティ領域に格納する。
【0020】さらに、復元されたデータがパリティ領域
に書き込まれたことを示すテーブルをMPU10に設け
る。また、復元されたデータが故障したディスクに代わ
って装着されたディスクに書き込まれたことを示すテー
ブルをMPU10に設ける。
【0021】さらに、上位装置から故障ディスク内のデ
ータへのリード要求に対して、他の正常なディスクのデ
ータから復元したデータを上位装置へ転送と同時にアク
セス対象のデータと同一パリティグループのパリティ領
域に前記復元したデータを書き込む。
【0022】また、上位装置からの故障ディスク内のデ
ータへのライト要求に対して、上位装置側から送られて
くるデータをアクセス対象のデータと同一パリティグル
ープのパリティ領域に書き込む。
【0023】さらに、パリティ領域に復元されたデータ
に上位装置からリード要求があった場合、復元されたデ
ータがパリティ領域に書き込まれたことを示すテーブル
を参照し、パリティ領域より復元されたデータを上位装
置に転送する。
【0024】また、故障したディスクに代わって装着さ
れたディスクにデータを復元する処理において、復元さ
れたデータがパリティ領域に書き込まれたことを示すテ
ーブルを参照することにより、パリティ領域に復元され
ているデータを故障したディスクに代わって装着された
ディスクに書き戻すようにする。
【0025】
【作用】本発明の作用を説明する。ディスクアレイ装置
の1台のディスク装置が故障した場合、データを復元
し、復元したデータをパリティ領域に格納するため、格
納したデータについては、従来見られるような上位装置
からのアクセス要求毎に複数のディスクを使用してデー
タを復元するといった処理が不要になり、システムの性
能の低下を防止できる。
【0026】また、MPU10がディスク装置の故障を
認識したことを契機としてデータを復元するので、復元
処理後は性能低下を抑えることができる。さらに、復元
されたデータがパリティ領域に書き込まれたことを示す
テーブル及び復元されたデータが故障したディスクに代
わって装着されたディスクに書き込まれたことを示すテ
ーブルを設けたので、復元処理の管理が容易となる。
【0027】また、上位装置から故障ディスクへのリー
ド要求に対して、復元したデータを上位装置へ転送と同
時にパリティ領域に書き込むため、その領域については
その後行われるシステム内部の復元処理において複数の
ディスクを使用せず、データ転送のみが行われるので、
従来より復元処理の効率が上がる。
【0028】さらに、上位装置から故障ディスク内のデ
ータへのライト要求に対して、上位装置側から送られて
くるデータをパリティ領域に書き込むため、その後の同
一データへのアクセスに対してはパリティ領域のデータ
を使用し、従来の複数のディスクを使用した復元処理が
不要になるのでその後の処理性能の低下を抑えることが
できる。
【0029】また、上位装置からリード要求があった場
合、復元されたデータがパリティ領域に書き込まれたこ
とを示すテーブルを参照して、パリティ領域より復元さ
れたデータを上位装置に転送するため、従来の複数のデ
ィスクを使用した復元処理が不要になるので、リード要
求に対する性能の低下を抑えることができる。
【0030】さらに、復元されたデータがパリティ領域
に書き込まれたことを示すテーブルを参照することによ
り、パリティ領域に復元されているデータを、故障した
ディスクに代わって装着されたディスクに書き戻すとい
ったデータ転送のみで復元処理が行えるので、従来の複
数のディスクを使用した復元処理が不要になり、復元処
理の性能が向上する。
【0031】このように、RAIDレベル5が適用可能
なディスクアレイ装置において、アレイ中の1台が故障
した場合、故障ディスクへのアクセス要求に対し、最初
のアクセスのみ性能低下が起こり、同一データに対する
2回目以降のアクセスにおいては、その性能低下を抑制
することができる。
【0032】
【実施例】以下、本発明の実施例を図2〜図13に基づ
いて説明する。図2〜図13中、図1と同じものは同じ
符号で示してある。
【0033】§1:故障時の説明 a)故障検出時の説明 図2、図3に基づいて、ディスク装置が故障時のデータ
復元を説明する。図2は、故障時のデータ復元の説明図
(1)、図3は、故障時のデータ復元の説明図(2)で
あり、図3(a)は復元処理管理テーブル、図3(b)
は、データ復元の処理フローチャートを示す。
【0034】MPU10がディスクアレイ装置中の1台
が故障したことを検出すると、これを契機としてデータ
の復元を行うものである。以下、例えばディスク装置1
が故障した場合を図2の処理〜に従って説明する。
【0035】MPU10が、ディスク装置1が故障し
たことを検出する。 MPU10は、ディスク装置0、2、3に同一パリテ
ィグループ内のデータ及びパリティをある単位ごと(例
えばストライピング単位)にパリティディスクのディス
ク制御装置(図2の例では、ディスク制御装置4)に転
送し、ディスク装置1のデータを復元し、パリティP領
域に書き込むように命令を出す。
【0036】パリティPのあるディスク制御装置に同
一パリティグループ内のデータ、パリティを転送してデ
ータの復元処理を行う。図2の例では、ディスク制御装
置4に、物理アドレス200と300のデータD、物理
アドレス000のパリティPを転送して、これらのデー
タDとパリティPの排他的論理和EORをとり物理アド
レス100のデータDを復元する。
【0037】ディスク制御装置は、復元したデータを
パリティ領域に書き込む。図2の例ではディスク制御装
置4が、復元した物理アドレス100のデータDを物理
アドレス000のパリティ領域に書き込む。
【0038】また、MPU10内にデータ復元の終了ア
ドレスを記録するテーブルを設ける。図3(a)はこの
復元処理管理テーブルの例であり、この復元処理管理テ
ーブルには、パリティアドレス(物理アドレス)とパリ
ティ領域へのデータ復元終了の記録部である復元終了
(パリティ領域)とディスクを交換した場合の復元終了
の記録部である復元終了(交換ディスク)を設けてあ
る。そして、この復元処理管理テーブルに単位当たりの
データ復元終了後そのアドレスを記録する。
【0039】もし、データ復元処理中に上位装置からの
アクセスがあった場合、単位当たりのデータは復元し、
この復元アドレスを復元処理管理テーブルに記録後、前
記アクセスを実行する。そして、上位装置からのアクセ
ス終了後、復元処理管理テーブルのアドレスをもとに、
次の復元処理を再開する。
【0040】例として、ディスク装置0の物理アドレス
000の領域にディスク装置1の物理アドレス100の
領域のデータを復元した場合、図3(a)のように復元
処理管理テーブルの復元終了(パリティ領域)のパリテ
ィアドレス000に「1」を記録する。
【0041】図3(b)はデータ復元の処理フローチャ
ートである。以下、この処理を処理番号S1〜S5に従
って説明する。 S1:MPU10がディスクアレイ中の1台が故障した
ことを検出すると、MPU10は故障のない各ディスク
装置にパリティ及びデータ転送命令を出し処理番号S2
に移る。
【0042】S2:パリティが存在するディスクのディ
スク制御装置へパリティ、データを転送し、処理番号S
3に移る。 S3:ディスク制御装置は、パリティとデータの排他的
論理和EORをとりデータを復元し、復元したデータを
パリティ領域に書き込み、処理番号S4へ移る。
【0043】S4:ディスク制御装置は、復元処理管理
テーブル更新のため、データ復元終了をMPUに通知す
る。 S5:MPUは、復元終了アドレスを復元処理管理テー
ブルに記録する。
【0044】b)故障ディスクに対してリード要求のあ
った場合の説明 図4、図5に基づいて、故障ディスクに対してリード要
求があった場合の説明をする。図4は故障ディスクにリ
ード要求があった場合の説明図(1)、図5は故障ディ
スクにリード要求があった場合の説明図(2)であり、
図5(a)は復元処理管理テーブル、図5(b)は故障
ディスクにリード要求があった場合の処理フローチャー
トを示す。
【0045】MPU10がディスクアレイ装置中の1台
が故障したことを検出し、データの復元処理中に上位装
置よりMPU10へ例えば故障ディスク装置1の物理ア
ドレス103のデータに対するリード要求があった場合
を図4の処理〜に従って説明する。
【0046】MPU10が、上位装置より物理アドレ
ス103のデータに対するリード要求を受ける。 MPU10は、ディスク装置1が故障しているので、
パリティ領域へのデータ書き込みを管理している復元処
理管理テーブルを参照して、リード要求のあった物理ア
ドレス103のデータのパリティ領域の物理アドレス3
03はデータが復元されていないことを認識する。そこ
で、MPU10は、故障で失われたデータを復元するた
め他のディスク装置0、2、3の同一パリティグループ
である物理アドレス003、203、303のデータ及
びパリティをリードし、排他的論理和EORをとりデー
タを復元し、その後上位装置とパリティの領域である物
理アドレス303へこの復元したデータを転送する命令
を出す。
【0047】ディスク制御装置5は、リードしたデー
タ及びパリティの排他的論理和EORをとりデータを復
元する。 ディスク制御装置5から復元したデータを上位装置と
パリティの領域である物理アドレス303に転送する。
【0048】また、MPU10は、データの書き込み
(物理アドレス303)が終了した通知を受けると、復
元処理管理テーブル内に、物理アドレス103のデータ
が物理アドレス303に書かれたことを記録する。
【0049】図5(a)は、復元処理管理テーブルの例
であり、データ復元処理が終了した復元終了(パリティ
領域)のパリティアドレス000と303に「1」が記
録される。
【0050】図5(b)は、故障ディスクにリード要求
があった場合の処理フローチャートである。以下、この
処理を処理番号S11〜S17を参照して説明する。 S11:MPU10は、上位装置からリードコマンドを
受けると、このリードが故障ディスクが対象かどうか判
断する。この判断で故障ディスクが対象の場合(Y)、
処理番号S12に移り、もし故障ディスクが対象でない
場合(N)、処理番号S16に移り通常のリード処理を
行う。
【0051】S12:MPU10は、復元処理管理テー
ブルを参照して、パリティ領域にデータが復元済である
かどうか判断する。この判断でデータが復元済であれば
(Y)、処理番号S17に移り、復元済のパリティ領域
から上位装置にデータを転送し、もしデータが復元済で
なければ(N)、処理番号S13に移る。
【0052】S13:MPU10は、故障で失われたデ
ータを復元するため他のディスク装置の同一パリティグ
ループのデータ及びパリティをリードし、排他的論理和
をとり、データ復元の命令を出し(リードリコンストラ
クション)、処理番号S14に移る。
【0053】S14:MPU10の命令によりディスク
制御装置は、復元したデータを上位装置側へ転送し、同
時にパリティ領域へも書き込み、処理番号S15に移
る。 S15:MPU10は、復元データの書き込みが終了し
た通知をディスク制御装置から受け、復元処理管理テー
ブルの更新を行う。
【0054】このように、上位装置からリード要求があ
ったアドレスのデータの復元を優先して行うので、リー
ド要求に対する処理を早く行うことができ、また、デー
タ復元後は処理性能を向上することができる。
【0055】また、この復元処理は、上位装置からリー
ド要求があったアドレスのデータのみ復元を行うように
すれば、最初のリードアクセスのみ性能低下が起こり、
2回目以降のアクセスにおいてはその性能低下を抑制す
ることができる。
【0056】c)故障ディスクに対してライト要求があ
った場合の説明 図6、図7に基づいて、故障ディスクに対してライト要
求があった場合の説明をする。図6は故障ディスクにラ
イト要求があった場合の説明図(1)、図7は故障ディ
スクにライト要求があった場合の説明図(2)であり、
図7(a)は復元処理管理テーブル、図7(b)は故障
ディスクにライト要求があった場合の処理フローチャー
トを示す。
【0057】MPU10は、ディスクアレイ装置中の1
台、例えばディスク装置1が故障したことを検出し、上
位装置より故障ディスク装置1の物理アドレス103の
データに対するライト要求があった場合を図6の処理
〜に従って説明する。
【0058】MPU10が上位装置より物理アドレス
103のデータに対するライト要求を受ける。 MPU10は、ディスク装置1が故障しているので、
物理アドレス103のパリティ領域である物理アドレス
303にライトデータを書き込む命令を出す。
【0059】ディスク制御装置7は、ライトデータを
物理アドレス303の領域に書き込み、パリティ領域の
データを更新する。また、MPU10は、ライトデータ
の書き込みが終了した通知を受けると、復元処理管理テ
ーブル内に物理アドレス103のデータが物理アドレス
303に書かれたことを記録する。
【0060】図7(a)は、復元処理管理テーブルの例
であり、復元終了(パリティ領域)のパリティアドレス
000と303に「1」が記録されており、故障ディス
ク装置1の物理アドレス100と103に書かれるデー
タが物理アドレス000と303に書かれていることを
示す。
【0061】図7(b)は、故障ディスクにライト要求
があった場合の処理フローチャートである。以下、この
処理を処理番号S21〜S26を参照して説明する。 S21:MPU10は、上位装置からライトコマンドを
受けると、このライト要求が故障ディスクが対象かどう
か判断する。この判断で故障ディスクが対象の場合
(Y)、処理番号S22に移り、もし故障ディスクが対
象でない場合(N)、処理番号S24に移る。
【0062】S22:MPU10は、ライトデータのパ
リティ領域に、ライト要求のあったデータを書き込む命
令をディスク制御装置に出し、ライトデータを書き込
む。 S23:MPU10は、ライトデータの書き込み終了し
た通知を受けとると、復元処理管理テーブルの復元終了
(パリティ領域)にデータが書かれたことを記録する。
【0063】S24:処理番号S21でライトコマンド
が故障ディスクが対象でない場合(N)、MPU10
は、パリティ領域が故障ディスクにあるかどうか判断す
る。この判断でパリティ領域が故障ディスクにある場合
(Y)、処理番号S25に移り、もし、パリティ領域が
故障ディスクにない場合(N)、処理番号S26に移
り、通常のライト処理を行う。
【0064】S25:MPU10は、データディスクの
書き込みのみを行う命令を出し、パリティは作成しな
い。このように、故障ディスクに対するライトデータを
パリティ領域に書き込むため、処理性能の低下を抑える
ことができる。
【0065】§2:ディスク交換後の説明 a)データ復元処理の説明 図8、図9に基づいて、ディスク交換後のデータ復元処
理の説明をする。図8はディスク交換後のデータ復元処
理の説明図(1)、図9はディスク交換後のデータ復元
処理の説明図(2)であり、図9(a)は復元処理管理
テーブル、図9(b)はデータ復元処理フローチャート
を示す。
【0066】新しいディスクが組み込まれると、それが
MPU10へ伝えられ、その後MPUはデータをある単
位(例えばストライピングサイズ)毎に修復し、書き込
む処理を開始する。この修復処理を図8の処理〜に
従って説明する。
【0067】新しいディスクが組み込まれたことをM
PU10へ通知する。 MPU10は、まず、データ復元の終了を記録する復
元処理管理テーブルを参照し、復元対象データがパリテ
ィ領域に書かれているか判断する。この判断でパリティ
領域にデータが書かれていればそのデータを交換ディス
クに書き込み、さらにパリティを生成しパリティ領域に
書き込む。もし前記判断でパリティ領域にデータが書か
れていなければ、全ディスクからデータを読み出しデー
タを復元して交換されたディスクに書き込む。
【0068】この図8の例の場合、物理アドレス100
のデータのパリティ領域(物理アドレス000)にデー
タが書かれた記録が復元処理管理テーブルにあるので、
MPU10は、この物理アドレス000のデータを交換
されたディスク1の物理アドレス100に書き込む命令
を出す。同時に他のディスクの同一パリティグループの
データをパリティディスクのディスク制御装置4に転送
し、排他的論理和EORをとりパリティを生成し、物理
アドレス000の領域に書き込む命令を出す。
【0069】ディスク制御装置4は、物理アドレス0
00のデータを物理アドレス100の領域に書き込む。 ディスク制御装置4は、他のディスクから転送された
同一パリティグループのデータの排他的論理和EORを
とりパリティを生成する。
【0070】ディスク制御装置4は、生成したパリテ
ィを物理アドレス000の領域に書き込む。また、MP
U10は、データ、パリティの書き込み終了後、復元処
理管理テーブルに、復元終了を記録し、パリティ領域に
書き込まれたデータの記録を消去する。
【0071】図9(a)は復元処理管理テーブルの例で
あり、この図の復元終了(交換ディスク)のパリティア
ドレス000に「1」が記録され、交換ディスクの復元
処理が終わった領域(物理アドレス100)を示す。な
お、復元終了(パリティ領域)のパリティアドレス30
3の「1」は、復元されたデータがパリティアドレス3
03の領域に書かれていることを示す。
【0072】図9(b)は交換ディスクのデータ復元処
理フローチャートである。以下、この処理を処理番号S
41〜S46に従って説明する。 S41:MPU10が、ディスクの交換終了を認識する
と、MPU10は、データ復元処理を開始し、処理番号
S42に移る。
【0073】S42:MPU10は、復元処理管理テー
ブルを参照し、復元対象データが復元されパリティ領域
に書かれているかどうか判断する。この判断でパリティ
領域にデータが書かれていれば(Y)、処理番号S43
に移り、もしパリティ領域にデータが書かれていなけれ
ば(N)、処理番号S46に移る。
【0074】S43:MPU10は、パリティ領域のデ
ータを交換ディスクに書き込む命令を出し、ディスク制
御装置で書き込みを行い、処理番号S44に移る。 S44:MPU10は、パリティディスクのディスク制
御装置に、同一パリティグループのデータを転送し、排
他的論理和をとり、パリティを生成して書き込む命令を
出し、ディスク制御装置は生成したパリティをパリティ
領域に書き込む。
【0075】S45:MPU10は、データ、パリティ
の書き込み終了の通知を受けとると復元処理管理テーブ
ルを更新する。 S46:処理番号S42の判断でパリティ領域にデータ
が書かれていなければ(N)、同一パリティグループの
各データ及びパリティからデータを復元する通常の復元
処理を行う。
【0076】b)復元処理中に交換されたディスクに対
してリード要求があった場合の説明図10、図11に基
づいて、ディスク交換後データ復元処理中に上位装置よ
りリード要求があった場合の説明をする。図10は交換
ディスクにリード要求があった場合の説明図(1)、図
11は交換ディスクにリード要求があった場合の説明図
(2)であり、図11(a)は復元処理管理テーブル、
図11(b)はリード要求があった場合の処理フローチ
ャートを示す。
【0077】ディスク交換後データ復元処理中に上位装
置よりMPUへリード要求があった場合で、それが交換
ディスクに対するものであったとき、MPUはデータ復
元の終了を記録する復元処理管理テーブルを参照し、対
象データがパリティ領域に書かれているかを判断する。
【0078】この判断で、パリティ領域にデータが書か
れていればそのデータを上位装置側へ転送し、同時に交
換ディスクに書き込み、更にパリティを生成しパリティ
領域に書き込む。もしこの判断でパリティ領域にデータ
が書かれていなければ全ディスクからデータを読み出し
復元して上位装置側へ転送し、同時に交換ディスクに書
き込む。
【0079】図10の例の処理〜に従って説明す
る。 交換されたディスク装置1の物理アドレス103のデ
ータに対するリード要求を上位装置よりMPU10が受
ける。
【0080】MPU10は、まずデータ復元の終了を
記録する復元処理管理テーブルを参照する。この場合、
交換ディスク装置1の物理アドレス103のデータは、
パリティ領域であるディスク装置3の物理アドレス30
3に書かれていることが示されている。このためMPU
10は物理アドレス303のデータを上位装置側へ転送
し、同時に交換ディスク装置1の物理アドレス103に
書き込む命令を出す。次に、MPU10は、他のディス
クの同一パリティグループのデータをディスク装置3の
ディスク制御装置7に転送し、排他的論理和をとりパリ
ティを生成し、物理アドレス303の領域に書き込む命
令を出す。
【0081】命令を受けたディスク制御装置は、上位
装置へ物理アドレス303のデータの転送、交換ディス
クへの物理アドレス303のデータの書き込みを行う。 ディスク制御装置7は、同一パリティグループのデー
タの排他的論理和をとりパリティを生成する。
【0082】ディスク制御装置7は、生成したパリテ
ィを物理アドレス303の領域に書き込む。また、MP
U10は、データ、パリティの書き込み終了後、データ
復元の終了を記録する復元処理管理テーブル内のこの領
域に関して復元終了を記録し、パリティ領域に書かれた
記録を消去する。
【0083】図11(a)は復元処理管理テーブルの例
であり、復元終了(交換ディスク)のパリティアドレス
303に「1」が記録され、復元終了(パリティ領域)
のパリティアドレス303を「0」とする。これによ
り、交換ディスクの復元処理が終わった領域を示す。
【0084】図11(b)はリード要求があった場合の
処理フローチャートである。以下、この処理を処理番号
S51〜S59に従って説明する。 S51:MPU10は、上位装置からリードコマンドを
受け、そのリード要求が交換ディスクが対象かどうか判
断する。この判断で交換ディスクが対象の場合(Y)、
処理番号S52に移り、もし交換ディスクが対象でない
場合(N)、処理番号S57に移る。
【0085】S52:MPU10は、復元処理管理テー
ブルを参照し、データは交換ディスクに復元済かどうか
判断する。この判断で交換ディスクに復元済であれば
(Y)、処理番号S57の処理に移り、もし交換ディス
クに復元済でなければ(N)、処理番号S53に移る。
【0086】S53:MPU10は、復元処理管理テー
ブルを参照し、データはパリティ領域に復元済かどうか
判断する。この判断でパリティ領域に復元済の場合
(Y)、処理番号S54に移り、もしパリティ領域に復
元済でなければ(N)、処理番号S58に移る。
【0087】S54:MPU10は、パリティ領域から
上位装置側へデータを転送し、同時に交換されたディス
クにもデータを転送する命令を出し、上位装置へデータ
転送と同時に交換ディスクへデータを書き込み、処理番
号S55に移る。
【0088】S55:MPU10は、他のディスクから
同一パリティグループのデータをパリティディスクのデ
ィスク制御装置に転送し、パリティを生成し、パリティ
領域に書き込む命令を出し、命令を受けたディスク制御
装置は、パリティを生成し、パリティ領域に書き込み、
処理番号S56に移る。
【0089】S56:MPU10は、データ、パリティ
の書き込み終了の通知を受けとると、データ復元の終了
を記録する復元処理管理テーブルの更新を行う。 S57:処理番号S51の判断でリード要求が交換ディ
スクが対象でない場合(N)、及び、処理番号S52の
判断で交換ディスクにデータが復元済である場合
(Y)、リード要求があったディスクからデータを読み
出す通常のリード処理を行う。
【0090】S58:処理番号S53の判断でデータが
パリティ領域に復元済でない場合(N)、リードリコン
ストラクションでデータを上位装置側へ転送と同時に、
交換ディスクにも転送し、処理番号S59に移る。
【0091】S59:MPU10は、データ書き込み終
了の通知を受け、復元処理管理テーブルを更新する。こ
のように、復元処理中に交換されたディスクに対しリー
ド要求があった場合、復元データを上位装置へ転送する
のと同時に復元データを交換ディスクに書き込むこと
で、その後の性能の低下を抑えることができる。
【0092】c)復元処理中に交換されたディスクに対
してライト要求があった場合の説明図12、図13に基
づいて、ディスク交換後、データ復元処理中に上位装置
よりライト要求があった場合の説明をする。図12は交
換ディスクにライト要求があった場合の説明図(1)、
図13は交換ディスクにライト要求があった場合の説明
図(2)であり、図13(a)は復元処理管理テーブ
ル、図13(b)はライト要求があった場合の処理フロ
ーチャートを示す。
【0093】ディスク交換後データ復元処理中に上位装
置よりMPUへライト要求があった場合で、このライト
要求が交換ディスクに対するものであったとき、MPU
はデータ復元の終了を記録する復元処理管理テーブルを
参照し、対象データ復元処理が終了している領域につい
ては通常のライトが行われる。
【0094】前記参照で対象データ復元処理が終了して
いない領域についてはライトデータは交換ディスクに書
き込まれる。又これと同時にパリティディスクのディス
ク制御装置にもライトデータは転送され、さらに他のデ
ィスクの同一パリティグループのデータもパリティディ
スクのディスク制御装置に転送され、排他的論理和をと
り、パリティが生成され、書き込みが行われる。
【0095】図12の例の処理〜に従って説明す
る。 交換されたディスク装置1の物理アドレス103のデ
ータに対するライト要求を上位装置よりMPU10が受
ける。
【0096】MPU10は、まずデータ復元の終了を
記録する復元処理管理テーブルを参照する。この参照
で、ディスク装置1の物理アドレス103のデータはパ
リティの領域であるディスク装置3の物理アドレス30
3に書かれていることが示されている。このため、MP
U10はライトデータをディスク制御装置7に転送し、
同時に交換ディスク装置1の物理アドレス103に書き
込む命令を出す。
【0097】次にMPU10は、他のディスクの同一パ
リティグループのデータをディスク制御装置7に転送
し、排他的論理和をとり、パリティを生成し、これを物
理アドレス303の領域に書き込む命令を出す。
【0098】命令を受けたディスク制御装置5はライ
トデータを物理アドレス103の領域に書き込み、また
ディスク制御装置7はライトデータを受けとる。 ディスク制御装置7は、同一パリティグループのデー
タの排他的論理和をとりパリティを生成する。
【0099】ディスク制御装置7は、生成したパリテ
ィを物理アドレス303の領域に書き込む。また、MP
U10は、これらのデータ、パリティ書き込み終了後、
データ復元の終了を記録する復元処理管理テーブル内の
この領域に関して復元終了を記録し、パリティ領域に書
かれた記録を消去する。
【0100】図13(a)は復元処理管理テーブルの例
であり、復元終了(交換ディスク)のパリティアドレス
303に「1」が記録され、復元終了(パリティ領域)
のパリティアドレス303を「0」とする。この「1」
により交換ディスクの復元処理が終わった領域を示す。
【0101】図13(b)はライト要求があった場合の
処理フローチャートである。以下、この処理番号S61
〜S68に従って説明する。 S61:MPU10は、上位装置からライトコマンドを
受け、そのライト要求が交換ディスクが対象かどうか判
断する。この判断で交換ディスクが対象の場合(Y)、
処理番号S62に移り、もし交換ディスクが対象でない
場合(N)、処理番号S65に移る。
【0102】S62:MPU10の命令により、上位装
置側より交換ディスクへライトデータを転送と同時に、
パリティディスクのディスク制御装置にもライトデータ
を転送し、処理番号S63に移る。
【0103】S63:MPU10の命令により、他のデ
ィスクから同一パリティグループのデータをパリティデ
ィスクのディスク制御装置へ転送し、排他的論理和をと
り、パリティを生成しパリティ領域に書き込み、処理番
号S64に移る。
【0104】S64:MPU10は、データ、パリティ
の書き込み終了の通知を受け、復元処理管理テーブルを
更新する。 S65:処理番号S61の判断でライト要求が交換ディ
スクが対象でない場合(N)、MPU10は、交換され
たディスクがパリティ領域になっているかどうか判断す
る。この判断で交換されたディスクがパリティ領域にな
る場合(Y)、処理番号S66に移り、もし交換された
ディスクがパリティ領域にならない場合(N)、処理番
号S68に移る。
【0105】S66:MPU10の命令により、上位装
置側よりライト要求のあったライトデータをデータディ
スクへ転送と同時に、交換されたディスクのディスク制
御装置へもライトデータを転送し、処理番号S67に移
る。
【0106】S67:MPU10の命令により、他のデ
ィスクから同一パリティグループのデータを交換された
ディスクのディスク制御装置へ転送し、排他的論理和を
とり、パリティを生成し、交換したディスクのパリティ
領域に書き込み、処理番号S64に移る。
【0107】S68:処理番号S65の判断で、交換さ
れたディスクがパリティ領域にならない場合(N)は、
通常のライト処理を行う。
【0108】
【発明の効果】以上説明したように、本発明によれば次
のような効果がある。 (1) ディスクアレイ中の1台のディスク装置が故障した
場合、復元したデータをパリティ領域に格納するため、
処理性能の低下を抑えることができる。
【0109】(2) MPU10が、ディスク装置の故障を
認識したことを契機としてデータを復元し、パリティ領
域に格納したので、復元後は処理性能の低下を抑えるこ
とができる。
【0110】(3) 復元されたデータがパリティ領域に書
き込まれたことを示すテーブルと、復元されたデータが
故障したディスクに代わって装着されたディスクに書き
込まれたことを示すテーブルである復元処理管理テーブ
ルを設けたので、復元処理の管理を容易に行うことがで
きる。
【0111】(4) 上位装置から故障ディスクへのリード
要求に対して復元したデータを上位装置へ転送と同時に
パリティ領域に書き込むため、効率のよい復元処理が行
え、また同一データに対する2回目以降のアクセスにお
いて、その処理性能の低下を抑制することができる。
【0112】(5) 故障ディスク内のデータへのライト要
求に対して、上位装置側から送られてくるデータをパリ
ティ領域に書き込むため、その後の処理性能の低下を抑
えることができる。
【0113】(6) 上位装置からリード要求があった場
合、復元処理管理テーブルを参照して、パリティ領域に
復元されたデータを上位装置に転送するため処理性能の
低下を抑制できる。
【0114】(7) 復元処理管理テーブルを参照して、パ
リティ領域に復元されているデータを故障したディスク
に代わって装着されたディスク( 交換ディスク) に書き
戻すため、復元処理性能を向上することができる。
【図面の簡単な説明】
【図1】本発明の原理説明図である。
【図2】実施例における故障時のデータ復元の説明図
(1)である。
【図3】実施例における故障時のデータ復元の説明図
(2)である。
【図4】実施例における故障ディスクにリード要求があ
った場合の説明図(1)である。
【図5】実施例における故障ディスクにリード要求があ
った場合の説明図(2)である。
【図6】実施例における故障ディスクにライト要求があ
った場合の説明図(1)である。
【図7】実施例における故障ディスクにライト要求があ
った場合の説明図(2)である。
【図8】実施例におけるディスク交換後のデータ復元処
理の説明図(1)である。
【図9】実施例におけるディスク交換後のデータ復元処
理の説明図(2)である。
【図10】実施例における交換ディスクにリード要求が
あった場合の説明図(1)である。
【図11】実施例における交換ディスクにリード要求が
あった場合の説明図(2)である。
【図12】実施例における交換ディスクにライト要求が
あった場合の説明図(1)である。
【図13】実施例における交換ディスクにライト要求が
あった場合の説明図(2)である。
【図14】従来例の説明図である。
【符号の説明】
0、1、2、3 ディスク装置 4、5、6、7 ディスク制御装置 8 コモンバス 9 ホストインターフェース回路 10 プロセッサ(MPU) D データ P パリティ

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 データと、パリティとを複数台のディス
    ク装置に格納するディスクアレイ装置において、 1台のディスク装置が故障した場合、 他の正常なディスク装置のデータを読み出し、復元した
    データをパリティ領域に格納することを特徴としたディ
    スクアレイ装置。
  2. 【請求項2】 プロセッサがディスク装置の故障を認識
    したことを契機として、他の正常なディスクのデータを
    順次読み出し、復元されたデータをパリティ領域に格納
    することを特徴とした請求項1記載のディスクアレイ装
    置。
  3. 【請求項3】 復元されたデータがパリティ領域に書き
    込まれたことを示すテーブルをプロセッサ内に設けるこ
    とを特徴とした請求項1記載のディスクアレイ装置。
  4. 【請求項4】 復元されたデータが故障したディスクに
    代わって装着されたディスクに書き込まれたことを示す
    テーブルをプロセッサに設けることを特徴とした請求項
    1記載のディスクアレイ装置。
  5. 【請求項5】 上位装置から故障ディスク内のデータへ
    のリード要求に対して、 他の正常なディスクのデータから復元したデータを上位
    装置への転送と同時にアクセス対象のデータと同一パリ
    ティグループのパリティ領域に前記復元したデータを書
    き込むことを特徴とした請求項1記載のディスクアレイ
    装置。
  6. 【請求項6】 上位装置からの故障ディスク内のデータ
    へのライト要求に対して、 上位装置側から送られてくるデータをアクセス対象のデ
    ータと同一パリティグループのパリティ領域に書き込む
    ことを特徴とした請求項1記載のディスクアレイ装置。
  7. 【請求項7】 パリティ領域に復元されたデータに上位
    装置よりリード要求があった場合、 復元されたデータがパリティ領域に書き込まれたことを
    示すテーブルを参照し、パリティ領域より復元されたデ
    ータを上位装置へ転送することを特徴とした請求項5又
    は6記載のディスクアレイ装置。
  8. 【請求項8】 故障したディスクに代わって装着された
    ディスクにデータを復元する処理において、 復元されたデータがパリティ領域に書き込まれたことを
    示すテーブルを参照することにより、 パリティ領域に復元されているデータを故障したディス
    クに代わって装着されたディスクに書き戻すことを特徴
    とした請求項1記載のディスクアレイ装置。
JP6272187A 1994-11-07 1994-11-07 ディスクアレイ装置 Pending JPH08137627A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6272187A JPH08137627A (ja) 1994-11-07 1994-11-07 ディスクアレイ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6272187A JPH08137627A (ja) 1994-11-07 1994-11-07 ディスクアレイ装置

Publications (1)

Publication Number Publication Date
JPH08137627A true JPH08137627A (ja) 1996-05-31

Family

ID=17510306

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6272187A Pending JPH08137627A (ja) 1994-11-07 1994-11-07 ディスクアレイ装置

Country Status (1)

Country Link
JP (1) JPH08137627A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009211349A (ja) * 2008-03-04 2009-09-17 Nec Corp ディスクアレイ制御装置
JP2012518231A (ja) * 2009-02-18 2012-08-09 マーベル ワールド トレード リミテッド 複数のディスクアレイのi/o動作を実行する方法及びシステム
JP2013539132A (ja) * 2010-09-28 2013-10-17 ピュア・ストレージ・インコーポレイテッド Ssd環境のための適応的raid

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009211349A (ja) * 2008-03-04 2009-09-17 Nec Corp ディスクアレイ制御装置
JP2012518231A (ja) * 2009-02-18 2012-08-09 マーベル ワールド トレード リミテッド 複数のディスクアレイのi/o動作を実行する方法及びシステム
JP2013539132A (ja) * 2010-09-28 2013-10-17 ピュア・ストレージ・インコーポレイテッド Ssd環境のための適応的raid

Similar Documents

Publication Publication Date Title
US5596709A (en) Method and apparatus for recovering parity protected data
JP4815825B2 (ja) ディスクアレイ装置及びその再構築方法
US5566316A (en) Method and apparatus for hierarchical management of data storage elements in an array storage device
JP2008204041A (ja) ストレージ装置及びデータ配置制御方法
JP2010015195A (ja) 記憶制御装置及び記憶制御方法
JP3681766B2 (ja) ディスクアレイ装置
JP2007334593A (ja) Raidコントローラおよびraid装置
JP2005301419A (ja) ディスクアレイ装置およびそのデータ処理方法
JP2002175158A (ja) ディスクアレイ装置におけるデータ修復方法及びディスクアレイコントローラ
JPH05324579A (ja) 分散ファイルシステム及び記憶装置
US6701452B1 (en) Disk array controller having distributed parity generation function
JP2005099995A (ja) 磁気ディスク装置のディスク共有方法及びシステム
JP2004213470A (ja) ディスクアレイ装置及びディスクアレイ装置におけるデータ書き込み方法
JPH1195933A (ja) ディスクアレイ装置
US7925919B2 (en) Disk management method, disk management device and storage system
JP3155836B2 (ja) ディスクアレイ装置
JP5505329B2 (ja) ディスクアレイ装置及びその制御方法
JPH08137627A (ja) ディスクアレイ装置
JPH08286844A (ja) パリティ生成制御方法およびディスク制御装置
JPH09218754A (ja) データ記憶システム
JP2002373059A (ja) ディスクアレイのエラー回復方法、ディスクアレイ制御装置及びディスクアレイ装置
JP3845239B2 (ja) ディスクアレイ装置及びディスクアレイ装置における障害復旧方法
JP2570614B2 (ja) デイスクアレイ装置
JP3793544B2 (ja) ディスクアレイ装置及びその制御方法
JP2000047832A (ja) ディスクアレイ装置、及びそのデータ制御方法

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20010925