JPH10111767A - 大容量記憶装置 - Google Patents

大容量記憶装置

Info

Publication number
JPH10111767A
JPH10111767A JP9256862A JP25686297A JPH10111767A JP H10111767 A JPH10111767 A JP H10111767A JP 9256862 A JP9256862 A JP 9256862A JP 25686297 A JP25686297 A JP 25686297A JP H10111767 A JPH10111767 A JP H10111767A
Authority
JP
Japan
Prior art keywords
data
parity
disk drive
drive
disk
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
Application number
JP9256862A
Other languages
English (en)
Other versions
JP3742494B2 (ja
Inventor
Hae-Seung Lee
海承 李
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JPH10111767A publication Critical patent/JPH10111767A/ja
Application granted granted Critical
Publication of JP3742494B2 publication Critical patent/JP3742494B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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
    • 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

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)

Abstract

(57)【要約】 (修正有) 【課題】 装置を有効に活用し、RAIDサブシステム
の全体的な性能向上を実現する方法の提供。 【解決手段】 RAIDサブシステムのようにデータを
分散記録した多数のデータディスクドライブS1〜S
4、PR、SPからなるディスクアレイを持つ大容量記
憶装置において、データディスクドライブの故障時用の
予備ディスクドライブSPと、パリティデータ記録用の
パリティディスクドライブPRと、を備える。ディスク
アレイ内のディスクドライブS1〜S4、PR、SPは
初期化時に、中間シリンダから上位ブロック50A、5
2A、54A、56A、58A、60Aと下位ブロック
50B、52B、54B、56B、58B、60Bに分
けられ、予備ディスクドライブSP以外のディスクドラ
イブが2つの小パリティグループ30、40に分けられ
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は大容量記録装置シス
テムに関するものである。
【0002】
【従来の技術】コンピュータシステムの性能は中央処理
装置( CPU)と入出力サブシステムによって左右され
る。近年、LSI技術の発展でCPUの処理速度が大き
く向上しているにもかかわらず、入出力サブシステムの
性能改善が遅れているために、全システムの実行時間の
中で入出力にかかる時間の比率が増大している。また、
入出力サブシステムの誤り発生時のデータ復旧費用が増
加していることからも、優れた性能と信頼性を備えた入
出力サブシステムの必要性が増してきている。
【0003】このために研究中のシステムの一つがRA
ID(Redundant Arrays of Inexpensive Disks) サブシ
ステムである。通常の入出力サブシステムは一つのディ
スクドライブに順次アクセスするが、RAIDサブシス
テムは多数のディスクドライブで構成されたディスクア
レイにデータを分散させて入出力を並列に行うことによ
り、入出力を速く処理する。また、簡単なパリティ情報
を用いて誤り発生時にデータ復元を可能にして信頼性を
向上させる。現在RAID関連技術は商用化段階にあ
り、大学ではRAIDアルゴリズムに関する研究とシミ
ュレーションを用いた実験を通じて活発な理論的研究を
続けており、一方、企業では多様な性能確認試験を通じ
て改善点を見つけることにより、入出力性能改善及び信
頼性向上のための努力を続けている。ディスクアレイ構
造自体は以前からハードディスクの入出力性能向上のた
めの方法としてスーパーコンピュータ等で用いられてき
たが、RAIDの概念は1988年にカリフォルニア大
学バークレー校の3人のコンピュータ学者により確立さ
れた。
【0004】図1は、通常のRAIDサブシステムの構
成図である。同図によると、RAIDサブシステムはデ
ィスクアレイコントローラ4と多数のディスクドライブ
6-0〜6- nで構成されたディスクアレイ6とからな
る。ディスクアレイコントローラ4はホストシステム2
とディスクアレイ6との間に位置し、ホストシステム2
からのデータ読出/書込命令に基づいてディスクアレイ
6のディスクドライブ6- 0〜6- nからデータの読出
/書込を行う。このとき、ディスクアレイコントローラ
4はディスクアレイ6の各ディスクドライブにデータを
分散記録し、入出力を並列処理し、簡単なパリティ情報
を用いて誤り発生時にデータ復元を可能なように制御す
る。
【0005】図2は、図1に示したディスクアレイコン
ローラ4のブロック図である。ディスクアレイコントロ
ーラ4はホストインタフェースコントローラ10、プロ
セッサ12、メモリ14、バッファメモリ16、及びア
レイコントローラ18で構成される。ホストインタフェ
ースコントローラ10はホストシステム2とプロセッサ
12のインタフェースを制御する。プロセッサ12はデ
ィスクアレイサブシステムの全般的な動作制御を行う。
メモリ14はプロセッサ12とホストインタフェースコ
ントローラ10に接続され、プロセッサ12の制御プロ
グラムが記録されたROM及び制御動作時に発生するデ
ータを一時記録するためのRAMを含んでいる。バッフ
ァメモリ16は、プロセッサ12の制御下にホストシス
テム2とディスクアレイ6との間で送受信されるデータ
及びデータ記録/再生命令を一時保管する。アレイコン
トローラ18はプロセッサ12とディスクアレイ6との
間に送受信される各種のデータの制御とインタフェース
整合をとる。
【0006】このような構成のRAIDサブシステム
は、ディスクドライブにデータを分散またはストリッピ
ング(Striping)、重複データをもつディスクミラーリン
グ(mirroring) などのディスクアレイ方法で記録し、入
出力デバイスの性能向上、容量拡張、及び信頼性の向上
を図っている。RAID理論は入出力装置のうち、カー
トリッジテープのような順次アクセス装置にも適用可能
であるが、主な対象はハードディスク装置である。
【0007】RAIDレベルは各種のデータ記録装置や
信頼性の問題に対する解決策を提供しており、その特性
によって6種類のRAIDレベル(レベル0〜5)に分
けられている。6種類のRAIDレベルは使用環境や目
的により長短所をもち、様々な応用分野に用いられる。
以下に、各RAIDレベルの構造に関する内容を簡単に
説明する。
【0008】RAIDレベル0:データの信頼性より速
度に重点を置き、ディスクアレイ上の全てのディスクド
ライブにデータを分散記録する。ディスクドライブはそ
れぞれ異なるコントローラを使用する。このために入出
力速度を向上できる長所があるが、信頼性は低い。
【0009】RAIDレベル1:ミラーリングによりデ
ータを記録する。ミラーリングはよく用いられる信頼性
向上のための方法であるが、ディスク内容の全てが複写
ディスクに記録されるために多くのディスク領域が必要
となり、データの記録に最大でも全ディスク容量の50
%しか使用できないという欠点がある。しかし、同じデ
ータが複写ディスクに存在するので、信頼性の点では一
番良い方法である。
【0010】RAIDレベル2:RAIDレベル1の欠
点である、信頼性確保のために使われる多くのディスク
領域を削減するために、データをバイト単位で各ディス
クアレイに分散記録する。そして、誤り認識と誤り訂正
のためにハミングコードを使用しており、データディス
ク以外に幾つかの検査ディスクを持つ。
【0011】RAIDレベル3:入出力が一度要求され
ると、データが並列にディスクドライブに入出力され、
パリティデータは別のディスクドライブに記録される。
尚、ディスク駆動用スピンドルモータは全てのディスク
ドライブが同時にデータを入出力し得るように同期化さ
れている。従って、入出力は処理速度が遅くても高い並
列入出力化によって速いデータ伝送が可能である。ま
た、一つのドライブがエラーを起こしても、他のドライ
ブとパリティドライブを使用することにより、全体のデ
ータレートは落ちるがエラーしたデータは復元される。
RAIDレベル3は、非常に速いデータ伝送速度を要求
するアプリケーション、即ちスーパーコンピュータ、イ
メージ操作プロセッサなどに用いられる。つまり、ロン
グデータブロック(Long Data Block) の伝送には高い能
力を発揮するが、速い入出力が要求されるショートデー
タブロック(Short Data Block)の伝送には向いていな
い。尚、RAIDレベル3は重複のために、シングルド
ライバをデータドライバと共用することにより、RAI
Dレベル1より少ないドライバで済むが、コントローラ
は高性能のものが要求され複雑になる。
【0012】RAIDレベル4:RAIDレベル4のデ
ータはディスクアレイを構成する多数のディスクドライ
ブにストリップトアクロス(striped across)され、デー
タが用いられて計算されたパリティデータはディスクア
レイ内に別に設けられたディスクドライブに記録され
る。ここで、ストリップトアクロスとは、ディスクドラ
イブの記録領域がブロック単位のストリッピングサイズ
で多数に分けられ、データがディスクドライブに記録さ
れる時にはストリッピングサイズだけのデータがそれぞ
れのディスクドライブに交差するように記録されること
を意味する。RAIDレベル4はデータのフェイル時に
復元可能であり、読出し性能はRAIDレベル1と同様
である。しかし書込み性能は、パリティ情報を特別に設
けられたディスクドライブに供給しなければならないた
め、ボトルネック現象が発生してシングルディスクドラ
イブに比べて著しく低下する。
【0013】RAIDレベル5:RAIDレベル4の書
込み性能改善を目的にRAIDレベル5は設定された。
RAIDレベル5におけるデータはディスクアレイ内の
各ディスクドライブにストリップトアクロスされ、パリ
ティデータも書込み時にボトルネック現象を無くすため
に全てのドライブに分散記録される。RAIDレベル5
ではデータ書込み時にパリティを再び計算するために全
ドライブから書込まれたデータを読出さなければならな
いので、速度は依然としてRAIDレベル4並みに遅
い。しかし、データ同時入出力伝送処理が可能であり、
フェイルが発生したディスクドライブのデータを復元す
ることができる。また、ロングデータ記録に効果的であ
り、もしアプリケーションプログラムをデータ読出しに
多くの比重を置くようにするか、或いはアレイデザイン
(array design)を書込み性能向上のために改善すれば、
ショートデータの書込みにも高い性能を得ることができ
る。尚、RAIDレベル5はノンアレイデバイスに比べ
て価格面で非常に効果的である。
【0014】RAIDレベル5の構造は、ディスクアレ
イを構成している一つのディスクドライブにフェイルが
生じてもデータの損失をもたらさないようになっている
が、ドライブの故障時に、すぐに復元作業が行われない
場合にはフェイルが誘発される恐れがあり、それにより
データが損失されることがある。従って、RAIDレベ
ル5の構造ではデータの損失を防止するために、オンラ
イン予備ディスクドライブ(on-line spare disk drive,
or hot-spare disk drive)も設けられている。
【0015】図3は、RAIDレベル5のディスクアレ
イの一例を示す。このRAIDレベル5のディスクアレ
イは、データを記録する5つのディスクドライブ(以
下、“データドライブ”とする)S1〜S5と一つの予
備ディスクドライブ(以下、“予備ドライブ”とする)
SPで構成されている。各ドライブは、記録領域がn個
のブロックBLK0〜BLKn−1に分割されており、
各ブロックの大きさはストリッピングサイズと呼ばれ、
通常512バイトである。データはデータドライブS1
〜S5の1番目のブロックBLK0に順次記録され、1
番目のブロックBLK0に全て記録されると、2番目の
ブロックBLK1に順次記録される。つまり、次のよう
に記録領域を使う。ドライブS1のブロックBLK0→
ドライブS2のブロックBLK0 → … → ドライ
ブS5のブロックBLK0→ドライブS1のブロックB
LK1→ドライブS2のブロックBLK1 → … →
ドライブS5のブロックBLKn−1。
【0016】データがデータドライブS1〜S5に記録
される時には、パリティデータも各データドライブに分
散して記録される。図3において、データドライブの一
番目のブロックBLK0で丸印の付けられたデータがパ
リティデータである。図3に示すパリティデータにおい
て、第1データドライブS1では1番目のビット、第2
データドライブS2では2番目のビット、第3データド
ライブS3では3番目のビット、…と順に分散記録され
る。
【0017】各データドライブS1〜S5に分散記録さ
れたパリティデータをk番目に入れるとすると、そのパ
リティデータは記録されたドライブ以外のドライブのk
番目のデータの排他的論理和(XOR)によって生成さ
れる。図4を用いて説明すると、1番目のビットデータ
のうち、パリティデータ“1”は第1データドライブS
1にあり、第1データドライブS1以外のデータドライ
ブS2〜S5の1番目のビットデータのXORによって
求められる。2番目のビットデータのうち、パリティデ
ータ“0”は第2データドライブS2にあり、第2デー
タドライブS2以外のデータドライブS1、S3〜S5
の2番目のビットデータのXORによって求められる。
3、4、5番目のパリティデータも同様にして生成、配
置される。数式で表すと以下の式になる。
【数1】S1のパリティデータ=S2XOR S3XOR S4
XOR S5=1XOR 0XOR 1XOR1=1 S2のパリティデータ=S1XOR S3XOR S4XOR S5
=1XOR 0XOR 1XOR0=0 S3のパリティデータ=S1XOR S2XOR S4XOR S5
=0XOR 1XOR 0XOR1=0 S4のパリティデータ=S1XOR S2XOR S3XOR S5
=1XOR 1XOR 1XOR0=1 S5のパリティデータ=S1XOR S2XOR S3XOR S4
=0XOR 0XOR 0XOR1=1
【0018】予備ドライブSPは正常動作時は待機して
おり、データドライブが故障すると、故障したデータド
ライブの代わりに用いられる。もしデータドライブS1
が故障すると、ディスクアレイコントローラは残りのデ
ータドライブS2〜S5のデータをXORしてデータド
ライブS1のデータを復元し、復元されたデータを予備
ドライブSPに記録する。予備ドライブSPはディスク
アレイが正常動作時には用いられずに待機しているだけ
なので、装置の効率的な利用が出来ない。これは、RA
IDサブシステムの性能を低下させる要因となる。
【0019】
【発明が解決しようとする課題】本発明の目的は、装置
を有効に活用し、RAIDサブシステムの全体的な性能
向上を実現する方法の提供にある。
【0020】
【課題を解決するための手段】このような目的を達成す
るために本発明では、RAIDサブシステムのようにデ
ータを分散記録した多数のデータディスクドライブから
なるディスクアレイを持つ大容量記憶装置において、デ
ータディスクドライブの故障時用の予備ディスクドライ
ブと、パリティデータ記録用のパリティディスクドライ
ブと、を備えることを特徴とする。
【0021】この装置の初期化には、ディスクアレイ内
のディスクドライブを中間シリンダから上位ブロックと
下位ブロックに分け、予備ディスクドライブ以外のディ
スクドライブを2つの小パリティグループに分ける第1
過程と、データディスクドライブのデータからパリティ
データを演算して、上位ブロックのパリティデータはパ
リティディスクドライブの上位ブロックへ、データディ
スクドライブの下位ブロックのパリティデータは予備デ
ィスクドライブの上位ブロックへ、それぞれ記録する第
2過程と、パリティディスクドライブを含む側の小パリ
ティグループは、該小パリティグループ内のデータディ
スクドライブのデータからパリティデータを演算し、上
位ブロックのパリティデータを予備ディスクドライブの
下位ブロックへ、下位ブロックのパリティデータをパリ
ティディスクドライブの下位ブロックへ、それぞれ記録
する第3過程と、が遂行される。
【0022】書込み動作時には、書込まれたデータディ
スクドライブ以外のデータディスクドライブのデータと
パリティデータを演算し、その演算結果と新しく書込ま
れたデータを演算して新しいパリティデータを算出し
て、上位ブロックパリティデータならパリティディスク
ドライブの上位ブロックへ、下位ブロックのパリティデ
ータなら予備ディスクドライブの上位ブロックへ、それ
ぞれ記録する。また、パリティディスクドライブを含む
小パリティグループのデータディスクドライブに対し書
込み動作を行うときは、小パリティグループ内の書込ま
れたデータディスクドライブ以外のデータディスクドラ
イブのデータとパリティデータを演算し、その演算結果
と新しく書込まれたデータを演算して新しいパリティデ
ータを算出して、上位ブロックのパリティデータを予備
ディスクドライブの下位ブロックへ、下位ブロックのパ
リティデータをパリティディスクドライブの下位ブロッ
クへ、それぞれ記録する。
【0023】パリティデータ算出のための演算は排他的
論理和を行う。
【0024】1つのデータディスクドライブにフェイル
が発生した時、予備ディスクドライブにフェイルしたデ
ータを復元する第1過程と、予備ディスクドライブをフ
ェイルしたデータディスクドライブの代わりにデータデ
ィスクドライブに設定し、フェイルしたデータディスク
ドライブを予備ディスクドライブに設定する第2過程
と、によりデータを復元する。各小パリティグループ当
たり1つのデータディスクにフェイルが発生した時、パ
リティディスクドライブを含む小パリティグループ内の
フェイルしたデータディスクドライブを予備ディスクド
ライブへ復元する第1過程と、フェイルの発生していな
い全てのドライブを用いて残りのフェイルしたデータデ
ィスクドライブをパリティディスクドライブへ復元する
第2過程と、予備ディスクドライブとパリティディスク
ドライブをデータディスクドライブに設定し、フェイル
したデータディスクドライブをそれぞれ予備ディスクド
ライブとパリティディスクドライブに設定する第3過程
と、によりデータを復元する。パリティディスクドライ
ブと予備ディスクドライブのどちらか1つにフェイルが
発生した時、データディスクドライブのデータからパリ
ティデータを再演算して復元する。パリティディスクド
ライブを含む小パリティグループ内の1つのデータディ
スクドライブと予備ディスクドライブにそれぞれフェイ
ルが発生した時、フェイルしていない他の全てのディス
クドライブからフェイルしたデータディスクドライブの
データを復元してパリティディスクドライブの上位ブロ
ックに書込む第1過程と、パリティディスクドライブを
含む小パリティグループ内のフェイルしていなデータデ
ィスクドライブとパリティディスクドライブから予備デ
ィスクドライブのデータを復元する第2過程と、パリテ
ィディスクドライブをデータディスクドライブに設定
し、フェイルしたデータディスクドライブをパリティデ
ィスクドライブに設定する第3過程と、によりデータを
復元する。
【0025】
【発明の実施の形態】以下、本発明の実施形態を添付の
図面を参照して詳細に説明する。本発明の実施形態で
は、多数のディスクドライブから構成されるディスクア
レイをRAIDレベル4とRAIDレベル5の構造を合
わせた構造とする。即ち、RAIDレベル4の構造で使
用するパリティドライブとRAIDレベル5の構造で使
用する予備ドライブを多数のデータドライブと共に使用
する。
【0026】図5は、本発明のRAIDサブシステムの
ブロック構成図である。同図を参照すると、ディスクア
レイコントローラ4はホストシステム2と、ディスクア
レイ6の間に接続される。ディスクアレイコントローラ
4はディスクアレイ6の各ディスクドライブにデータを
分散記録し、入出力を並列処理し、パリティデータを用
いて誤り発生時のデータ復元を制御する。特に本発明の
ディスクアレイコントローラ4の主要な動作は、分割パ
リティ予備ディスクの制御を行うものである。分割パリ
ティ予備ディスク制御は詳細に後述するが、初期化制御
モード部分、正常制御モード部分、そしてドライブフェ
イル時にデータを復元するデータ復元制御モード部分に
分けられる。ディスクアレイ6は、4つのデータドライ
ブS1〜S4と、1個のパリティドライブPRと、予備
ディスクドライブSPで構成される。ディスクアレイ6
のディスクドライブS1〜S4、PR、SPは該当の記
録領域がストリッピングサイズ(例えば、512バイ
ト)のブロックに分けられている。
【0027】次に、初期化制御モード、正常動作モー
ド、及びデータ復元制御モードに対する動作を詳細に説
明する。
【0028】初期化制御モードでは、各ディスクドライ
ブS1〜S4、PR、SPはディスクアレイコントロー
ラ4の初期化制御時に小パリティグループに分けられ、
該当の記録領域が上位ブロックと下位ブロックに分けら
れる。これらの動作を、図6のフローチャート、図7の
ディスクアレイ6の状態図、図8のディスクドライブの
フォーマット図を用いて説明する。
【0029】図6によると初期化制御動作は、100段
階でディスクアレイコントローラ4はホストシステム2
からシステム初期化命令を受けると102段階に進む。
ディスクアレイコントローラ4は102段階で初期化制
御機能をイネーブルし、分割オンフラグSOFをセット
し、104段階に進む。104段階では、ディスクアレ
イ6を構成するディスクドライブの中間シリンダ値を求
めて上位ブロックと下位ブロックに分ける。図7、8を
参照すると、参照番号50A、52A、54A、56
A、58A、60Aが該当ディスクドライブの上位ブロ
ックであり、参照番号50B、52B、54B、56
B、58B、60Bが該当ディスクドライブの下位ブロ
ックを表している。図8のデータドライブS1〜S4を
みれば、上位、下位ブロックがそれぞれブロック単位
(1BLK)に分けられており、そのブロックデータU
BD_0、UBD_1、… 、UBD_m及びLBD_
0、LDB1、…、LBD_mがストリップトアクロス
されている。ここで、ブロックデータとは単位ブロック
(例えば、512バイトサイズ)に記録されたデータを
総称する言葉である。
【0030】図6に戻りフローを説明すると、ディスク
アレイコントローラ4は104段階後に106段階に進
み、ディスクアレイ6内の予備ドライブSPの状態をチ
ェックして108段階に進む。チェック結果に異常があ
れば108段階で検出して110段階に進んでホストシ
ステム2へエラー通報をし、異常が無ければ112段階
に進む。112段階では、パリティドライブPRの下位
ブロック58Bに記録されている下位ブロックパリティ
データLPRを予備ドライブSPの上位ブロック60A
にコピーする。パリティドライブPRに記録されたパリ
ティデータはデータドライブS1〜S4のデータをXO
Rして算出した値である。
【0031】図7では、ドライブS1〜S4の上位ブロ
ックデータUBD(▲で表示)をXORして上位ブロッ
クパリティデータUPR(▲で表示)を生成し、パリテ
ィドライブPRの上位ブロック58Aに記録している。
又、ドライブS1〜S4の下位ブロックデータLBD
(■で表示)をXORして下位ブロックパリティデータ
LPR(■で表示)を生成し、パリティドライブPRの
下位ブロック58Bに記録している。この下位ブロック
パリティデータLPRは、112段階で予備ドライブS
Pの上位ブロック60Aにコピーする。
【0032】ディスクアレイコントローラ4は114段
階で移動完了を判断し、完了したら116段階に進む。
116段階では予備ドライブSPを除いた残りのドライ
ブを2つの小パリティグループに分ける。図7では、デ
ータドライブS1、S2を第1パリティグループ30、
データドライブS3、S4及びパリティドライブPRを
第2パリティグループ40としている。
【0033】ディスクアレイコントローラ4は118段
階に進んで、パリティドライブPRを含む小パリティグ
ループ、即ち第2パリティグループ40のディスクドラ
イブS3、S4、PRの上位ブロックデータUBD、U
PR(○で表示)を用いて小グループ上位ブロックパリ
ティデータGUPRを生成し、120段階で予備ドライ
ブSPの下位ブロック60Bに書込む。その後、ディス
クアレイコントローラ4は122段階で書込みが完了し
たかを判断し、完了した場合は124段階に進む。
【0034】ディスクアレイコントローラ4は124段
階で第2パリティグループ40のディスクドライブS
3、S4、PRの下位ブロックデータLBD、LPR
(×で表示)を用いて小グループ下位ブロックパリティ
データGLPRを生成する。そして、126段階でパリ
ティドライブPRの下位ブロック58Bに小グループ下
位ブロックパリティデータGLPRを書込み、128段
階で書込みが完了したかを判断し、完了した場合は13
0段階に進む。
【0035】130段階で、ディスクアレイコントロー
ラ4は初期化制御の開始時にセットした分割オンフラグ
SOFをリセットし、パリティ分割が完了したことを知
らせる分割パリティ予備フラグ(SPSF)をセットし
た後、132段階で正常動作モードに転換する。
【0036】初期化制御が完了した後のディスクアレイ
6は図7、8に示すように、パリティドライブPRの上
位ブロック58Aには上位ブロックパリティデータUP
R、下位ブロック58Bには小グループ下位ブロックパ
リティデータGLPRが記録されており、予備ドライブ
SPの上位ブロック60Aには下位ブロックパリティデ
ータLPR、下位ブロック60Bには小グループ上位ブ
ロックパリティデータGUPRが記録されている。次
に、初期化制御モード終了後の正常な状態での動作制御
を詳細に説明する。
【0037】本発明の正常動作モードとの比較のため
に、既存のRAIDレベル4における正常動作を図9
A、Bを参照して説明する。RAIDレベル4において
ディスクアレイコントローラはデータの読出し動作で、
図9Aに示すように該当のデータドライブS2からデー
タODを読出す。書込み動作では図9Bに示すように、
まず、新しいデータNDを該当のデータドライブS2に
書込む。その後、新しいデータNDに対するパリティデ
ータを生成するためにデータドライブS2を除いた残り
のディスクドライブ内の新しいデータNDの記録位置と
対応する記録位置からデータOD、OPを読出してXO
RしてデータEXを生成し、データEXを新しいデータ
NDとXORして新しいパリティデータNPを生成しパ
リティドライブPRに書込む。
【0038】これに対し、本発明の正常動作モードを図
10A、B、11A、Bを参照して説明する。
【0039】図10A、Bは、第1パリティグループ3
0にあるデータドライブS1、S2に対して行うデータ
読出/書込動作の説明図である。ディスクアレイコント
ローラ4はデータの読出し動作時、図10Aに示すよう
に、従来の方式と同様に該当のデータドライブS2から
データODを読出す。読出し動作では第2パリティグル
ープ40に対しても同様の動作になる。
【0040】書込み動作では図10Bに示すように、ま
ず新しいデータNDを該当のデータドライブ、例えばS
2に書込む。その後、新しいデータNDに対するパリテ
ィデータを生成するためにデータドライブS2を除いた
データドライブの、新しいデータNDの記録位置に対応
する記録位置のデータODを読出す。もし読出されたデ
ータODの記録位置が上位ブロックであれば、データが
上位ブロックデータUBDなので、ディスクアレイコン
トローラ4は読出した上位ブロックデータUBDを、パ
リティドライブPRの上位ブロック58Aから読出した
上位ブロックパリティデータO_UPRとXORしてデ
ータEX1を生成する。その後、データEX1をデータ
NDとXORして新しい上位ブロックパリティデータN
_UPRを生成し、パリティドライブPRの上位ブロッ
ク58Aに書込む。
【0041】一方、データドライブS1、S3、S4か
ら読出したデータODの記録位置が下位ブロックであれ
ば、データが下位ブロックデータLBDなので、ディス
クアレイコントローラ4は読出した下位ブロックデータ
LBDを予備ドライブSPの上位ブロック60Aから読
出した下位ブロックパリティデータO_LPRとXOR
してデータEX2を生成する。その後、データEX2を
データNDとXORして新しい下位ブロックパリティデ
ータN_LPRを生成し、予備ドライブSPの上位ブロ
ック60Aに書込む。
【0042】もし書込み動作で新しいデータNDが第2
パリティグループ40のデータドライブS3、S4のい
ずれかに書込まれると、図11A、Bに示すように動作
する。ここでは、データドライブS3に新しいデータN
Dが書込まれる場合の動作を示している。図11Aは図
10Bと同様の動作を行い、パリティドライブPR及び
予備ドライブSPの上位ブロックにそれぞれ書込まれて
いた上位ブロック(または下位ブロック)パリティデー
タを新しい上位ブロック(または下位ブロック)パリテ
ィデータN_UPR(またはN_LPR)に変更する。
更に、パリティドライブPR及び予備ドライブSPの下
位ブロックにそれぞれ書込まれている小グループ下位ブ
ロックパリティデータGLPR及び小グループ上位ブロ
ックパリティデータGUPRを新しい小グループ下位ブ
ロックパリティデータN_GLPR及び小グループ上位
ブロックパリティデータN_GUPRに変更する。
【0043】次に、小グループ上位ブロック(または下
位ブロック)パリティデータGUPR(GLPR)の変
更動作を図11Bを参照して説明する。データドライブ
S3に記録された新しいデータNDに対するパリティデ
ータを生成するために、新しいデータNDとデータドラ
イブS4内のデータNDの記録位置に対応する記録位置
にあるデータODをXORして、変更されたデータGE
Xを生成する。
【0044】ND及びODの記録位置が上位ブロックで
あれば、変更されたデータGEXが上位ブロックデータ
GUBDなので、ディスクアレイコントローラ4は変更
された上位ブロックデータGUBDを、パリティドライ
ブPRの上位ブロック58Aから読出した上位ブロック
パリティデータO_GUPRとXORして新しい小グル
ープ上位ブロックパリティデータN_GUPRを生成し
て、予備ドライブSPの下位ブロックGOBに書込む。
【0045】データND及びODの記録位置が下位ブロ
ックであれば、変更されたデータGEXは下位ブロック
データGLBDである。下位ブロックデータGLBDは
新しい小グループ下位ブロックパリティデータN_GL
PRを意味するので、ディスクアレイコントローラ4は
生成された小グループ下位ブロックパリティデータN_
GLPRをパリティドライブPRの下位ブロック58B
に書込む。
【0046】次に、ディスクアレイ6内の所定のディス
クドライブにフェイルが発生した場合のデータ復元モー
ド制御について説明する。RAIDサブシステムの動作
中にディスクアレイ6内のディスクドライブに、データ
ドライブS1〜S4内の一つのデータドライブにフェイ
ルが発生した場合、各小パリティグループ当たり一つの
データドライブにフェイルが発生した場合、パリティド
ライブPRと予備ドライブSPのいずれか一つにフェイ
ルが発生した場合、第2パリティグループ40内の一つ
のデータドライブと予備ドライブSPにそれぞれフェイ
ルが発生した場合、にはデータの復元が可能である。
【0047】データドライブS1〜S4内の一つのデー
タドライブにフェイルが発生した場合の復元過程を、デ
ィスクアレイ6内のデータドライブS1にフェイルが発
生した場合について説明する。データドライブS1にフ
ェイルが発生した時、データドライブS1のデータを記
録し得るように予備ドライブSPを設け、フェイルの発
生したS1のデータを復元して予備ドライブSPに記録
させる。図12のフローチャートにより詳細に説明する
と以下のようになる。
【0048】ディスクアレイコントローラ4は200段
階でフェイルが発生したデータドライブS1を検出する
と、202段階で復元フラグRCVFをセットし、20
4段階に進む。204段階で、ディスクアレイコントロ
ーラ4は予備ドライブSPの上位ブロック60Aに記録
された下位ブロックパリティデータLPRをパリティド
ライブPRの下位ブロック58Bにコピーする。これに
より、予備ドライブSPにはデータドライブS1のデー
タを記録し得る記録領域が設けられる。
【0049】その後、ディスクアレイコントローラ4は
206段階に進んでフェイルが発生していないデータド
ライブS2、S3、S4とパリティドライブPRのデー
タをXORして、フェイルが発生したデータドライブS
1のデータを復元する。その後、208段階で復元した
データを予備ドライブSPに書込む。210段階では書
込み完了を判断し、完了したなら212段階に進む。
【0050】ディスクアレイコントローラ4は212段
階でデータドライブS1と予備ドライブSPを交換する
ようにドライブテーブルを再び構成する。その後、21
4段階、216段階で分割パリティ予備フラグSPSF
と復元フラグRCVFをリセットする。分割パリティ予
備フラグSPSFがリセットされるので、以後予備ドラ
イブSPを用いたパリティチェックは遂行しない。
【0051】次に、各小パリティグループ当たり一つの
データドライブにフェイルが発生した場合のデータ復元
動作を、第1パリティグループ30内のデータドライブ
S1と第2パリティグループ40内のデータドライブS
3にフェイルが発生した場合で説明する。データドライ
ブS1、S3にフェイルが発生した時、データドライブ
S3のデータを記録し得るように予備ドライブSPを設
け、第2パリティグループ40内のフェイルが発生して
いない残りのドライブと予備ドライブSPを用いてS3
のデータを復元して予備ドライブSPに記録し、次に、
フェイルが発生していない残りの全てのドライブ、即ち
データドライブS2、S4、パリティドライブPR及び
復元されたS3のデータを記録している予備ドライブS
Pを用いてフェイルが発生したS1のデータを復元して
パリティドライブPRに記録する。図13のフローチャ
ートにより詳細に説明すると以下のようになる。
【0052】ディスクアレイコントローラ4は、300
段階で各パリティグループでフェイルが発生したデータ
ドライブS1及びS3を検出し、302段階と304段
階でで復元フラグRCVFと交替パリティフラグRPP
Fをセットする。306段階でディスクアレイコントロ
ーラ4は、予備ドライブSPの上位ブロック60Aに記
録された下位ブロックパリティデータLPRと、パリテ
ィドライブPRの下位ブロック58Bに記録された小グ
ループ下位ブロックパリティデータGLPRを交換す
る。その結果、パリティドライブPRの下位ブロック5
8Bには下位ブロックパリティデータLPRが記録さ
れ、予備ドライブSPの上位ブロック60Aには小グル
ープ下位ブロックパリティデータGLPRが記録され
る。その後、308段階で交替パリティフラグRPPF
をリセットする。
【0053】ディスクアレイコントローラ4は、310
段階で第2パリティグループ40の中でフェイルが発生
していないデータドライブS4とパリティドライブP
R、及び予備ドライブSPのデータを用いて、データド
ライブS3のデータを復元する。つまり、データドライ
ブS4の上位ブロックデータUBD、パリティドライブ
PRの上位ブロックパリティデータUPR、及び予備ド
ライブSPの下位ブロック60Bに記録された小グルー
プ上位ブロックパリティデータGUPRをXORして、
フェイルが発生したデータドライブS3の上位ブロック
データを復元する。そして、データドライブS4の下位
ブロックデータLBD、予備ドライブSPの上位ブロッ
ク60Aに記録された小グループ下位ブロックパリティ
データGLPRをXORして、フェイルが発生したデー
タドライブS3の下位ブロックデータを復元する。その
後、ディスクアレイコントローラ4は312段階に進ん
で、復元されたデータを予備ドライブSPに書込む。3
14段階では書込みが完了したかどうかを判断し、書込
みが完了した場合は316段階に進む。
【0054】316段階で、ディスクアレイコントロー
ラ4は、フェイルが発生していないデータドライブS
2、S4と、復元されたデータを記録している予備ドラ
イブSP及びパリティドライブPRのデータを用いて、
データドライブS1のデータを復元する。具体的には、
データドライブS2、S4の上位ブロックデータUB
D、パリティドライブPRの上位ブロックパリティデー
タUPR、及び予備ドライブSPの上位ブロック60A
に記録された復元したデータドライブS3の上位ブロッ
クデータをXORして、データドライブS1の上位ブロ
ックデータを復元する。そして、データドライブS2、
S4の下位ブロックデータLBD、パリティドライブP
Rの下位ブロックパリティデータLPR、及び予備ドラ
イブSPの下位ブロック60Bに記録された復元したデ
ータドライブS3の下位ブロックデータをXORして、
データドライブS1の下位ブロックデータを復元する。
その後、ディスクアレイコントローラ4は318段階に
進んで、復元されたデータをパリティドライブPRに書
込む。320段階では書込みが完了したかを判断し、完
了した場合は322段階に進む。
【0055】322段階でディスクアレイコントローラ
4は、データドライブS1とパリティドライブPRを、
データドライブS3と予備ドライブSPを交換するよう
にドライブテーブルを再構成する。その後、324段
階、326段階で分割パリティ予備フラグSPSFと復
元フラグRCVFをリセットする。分割パリティ予備フ
ラグSPSFがリセットされるので、以後はパリティド
ライブPR及び予備ドライブSPを用いたパリティチェ
ックは遂行されない。
【0056】次に、パリティドライブPRと予備ドライ
ブSPのいずれか一つにフェイルが発生した場合のデー
タ復元動作について説明する。まず、パリティドライブ
PRにフェイルが発生した場合には、既に予備ドライブ
SPの上位ブロック60Aには下位ブロックパリティデ
ータLPRが記録されているので、データドライブS
1、S2、S3、S4の上位ブロックデータUBDを用
いてフェイルが発生した上位ブロックパリティデータU
PRを復元し、予備ドライブSPに記録する。次に、予
備ドライブSPにフェイルが発生した時は、フェイルの
ある予備ドライブSPに記録された下位ブロックパリテ
ィデータLPRだけフェイルが発生しているので、デー
タドライブS1、S2、S3、S4の下位ブロックデー
タLBDを用いてフェイルが発生した下位ブロックパリ
ティデータLPRを復元し、パリティドライブPRに記
録させる。以下に図14を用いて詳細に説明する。
【0057】ディスクアレイコントローラ4は400段
階で各パリティグループからフェイルが発生したドライ
ブ(パリティドライブPRまたは予備ドライブSP)を
検出すると、402段階で復元フラグRCVFをセット
し、404段階でパリティドライブPRにフェイルが発
生したか予備ドライブSPにフェイルが発生したかを判
断する。パリティドライブPRにフェイルが発生したと
きは、ディスクアレイコントローラ4は406段階〜4
14段階に進み、予備ドライブSPにフェイルが発生し
たなら、416段階〜422段階に進む。
【0058】パリティドライブPRのフェイル時にディ
スクアレイコントローラ4は、406段階で予備ドライ
ブSPの上位ブロック60Aに記録された下位ブロック
パリティデータLPRを下位ブロック60Bへ移動す
る。その後、408段階でディスクアレイ6内の全ての
データドライブS1、S2、S3、S4の上位ブロック
データUBDをXORし、パリティドライブPRの上位
ブロックパリティデータUPRを復元する。そして、4
10段階では復元された上位ブロックパリティデータU
PRを予備ドライブSPの上位ブロック60Aに書込
む。412段階では書込み完了を判断し、完了したとき
は414段階に進む。414段階で、ディスクアレイコ
ントローラ4はパリティドライブPRを予備ドライブS
Pに再構成する。
【0059】一方、予備ドライブSPのフェイル時にデ
ィスクアレイコントローラ4は、416段階でディスク
アレイ6内の全てのデータドライブS1、S2、S3、
S4内の下位ブロックデータLBDをXORして、予備
ドライブSPのフェイル時に消えた下位ブロックパリテ
ィデータLPRを復元する。そして、418段階では復
元された下位ブロックパリティデータLPRをパリティ
ドライブPRの下位ブロック58Bに書込む。420段
階では書込みが完了したかどうかを判断し、完了した場
合は422段階に進む。422段階で、ディスクアレイ
コントローラ4は予備ドライブSPが使用されないよう
にドライブテーブルを再構成する。その後、ディスクア
レイコントローラ4は、424段階、426段階でで分
割パリティ予備フラグSPSFと復元フラグRCVFを
リセットする。
【0060】最後に、第2パリティグループ40内の一
つのデータドライブと予備ドライブSPにフェイルが発
生した場合のデータ復元動作を説明する。下記の説明で
は、第2パリティグループ40内でフェイルが発生した
データドライブをS3に仮定する。データドライブS3
及び予備ドライブSPにフェイルが発生した時、ディス
クアレイ6内のフェイルが発生していない全てのデータ
ドライブS1、S2、S4とパリティドライブPRの上
位ブロックデータUBD、UPRを用いてフェイルが発
生したデータドライブS3の上位ブロックデータを復元
して、パリティドライブPRの上位ブロック58Aに書
込み、第2パリティグループ40内のフェイルが発生し
ていないデータドライブS4の下位ブロックデータLB
DとパリティドライブPRの下位ブロック58Bに記録
された小グループ下位ブロックパリティデータGLPR
を用いてフェイルが発生したデータドライブS3の下位
ブロックデータを復元して、パリティドライブPRの下
位ブロック58Bに書込む。
【0061】図15のフローチャートにより詳細に説明
すると、ディスクアレイコントローラ4は、500段階
でフェイルが発生したデータドライブS3及びパリティ
ドライブPRを検出する。そして、502段階で復元フ
ラグRCVFをセットし、504段階に進む。504段
階でディスクアレイコントローラ4は、ディスクアレイ
6内のフェイルが発生していない全てのデータドライブ
S1、S2、S4とパリティドライブPRの上位ブロッ
クデータUBD、UPRをXORして、データドライブ
S3の上位ブロックデータを復元する。その後、506
段階に進んで復元されたデータドライブS3の上位ブロ
ックデータをパリティドライブPRの上位ブロック58
Aに書込む。ディスクアレイコントローラ4は508段
階で書込みが完了したかどうかを判断し、完了したとき
は510段階に進む。
【0062】510段階でディスクアレイコントローラ
4は、第2パリティグループ40内のフェイルが発生し
ていないデータドライブS4の下位ブロックデータLB
DとパリティドライブPRの下位ブロック58Bに記録
された小グループ下位ブロックパリティデータGLPR
をXORして、データドライブS3の下位ブロックデー
タを復元し、512段階に進んで復元されたデータをパ
リティドライブPRの下位ブロック58Bに書込む。デ
ィスクアレイコントローラ4は514段階で書込みが完
了したかどうかを判断し、完了したときは516段階に
進む。
【0063】516段階でディスクアレイコントローラ
4はデータドライブS3とパリティドライブPRを交換
するようにドライブテーブルを再構成する。その後、5
18段階、520段階で分割パリティ予備フラグSPS
Fと復元フラグRCVFをリセットする。分割パリティ
予備フラグSPSFがリセットされるので、以後はパリ
ティドライブPR及び予備ドライブSPを用いたパリテ
ィチェックは遂行しない。
【0064】
【発明の効果】以上のような本発明のRAIDシステム
の大容量記憶装置により、資源の効率的な活用が可能に
なり、既存のパリティディスクドライブの作業負荷を減
らしてシステムの全体的な性能が向上する。また、色々
なフェイルが発生してもデータの復元を可能にする。
【図面の簡単な説明】
【図1】RAIDサブシステムの構成図。
【図2】図1のディスクアレイコントローラのブロック
構成図。
【図3】RAIDレベル5のディスクドライブのフォー
マット図。
【図4】RAIDレベル5のパリティデータの生成及び
配置方法の説明図。
【図5】本発明の実施形態のブロック構成図。
【図6】本発明の実施形態の初期化制御のフローチャー
ト。
【図7】図6の初期化制御によるディスクアレイ状態
図。
【図8】図6の初期化制御による各ディスクドライブの
フォーマット図。
【図9】既存のRAIDレベル4の正常動作モードでの
分図Aは読出し、分図Bは書込み動作の説明図。
【図10】本発明の実施形態の第1パリティグループの
正常動作モードでの分図Aは読出し、分図Bは書込み動
作の説明図。
【図11】本発明の実施形態の第2パリティグループの
正常動作モードでの分図Aは書込み動作、分図Bは小パ
リティグループパリティデータ生成動作の説明図。
【図12】本発明の実施形態のデータ復元のフローチャ
ート。
【図13】本発明の実施形態のデータ復元のフローチャ
ート。
【図14】本発明の実施形態のデータ復元のフローチャ
ート。
【図15】本発明の実施形態のデータ復元のフローチャ
ート。

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 データを分散記録した多数のデータディ
    スクドライブから構成されるディスクアレイを持つ大容
    量記憶装置において、 データディスクドライブの故障時用の予備ディスクドラ
    イブと、パリティデータ記録用のパリティディスクドラ
    イブと、を備えることを特徴とする大容量記憶装置。
  2. 【請求項2】 ディスクアレイ内のディスクドライブを
    中間シリンダから上位ブロックと下位ブロックに分け、
    予備ディスクドライブ以外のディスクドライブを2つの
    小パリティグループに分ける第1過程と、データディス
    クドライブのデータからパリティデータを演算して、上
    位ブロックのパリティデータはパリティディスクドライ
    ブの上位ブロックへ、データディスクドライブの下位ブ
    ロックのパリティデータは予備ディスクドライブの上位
    ブロックへ、それぞれ記録する第2過程と、パリティデ
    ィスクドライブを含む側の小パリティグループは、該小
    パリティグループ内のデータディスクドライブのデータ
    からパリティデータを演算し、上位ブロックのパリティ
    データを予備ディスクドライブの下位ブロックへ、下位
    ブロックのパリティデータをパリティディスクドライブ
    の下位ブロックへ、それぞれ記録する第3過程と、から
    初期化過程が遂行される請求項1記載の大容量記憶装
    置。
  3. 【請求項3】 書込み動作時に、書込まれたデータディ
    スクドライブ以外のデータディスクドライブのデータと
    パリティデータを演算し、その演算結果と新しく書込ま
    れたデータを演算して新しいパリティデータを算出し
    て、上位ブロックパリティデータならパリティディスク
    ドライブの上位ブロックへ、下位ブロックのパリティデ
    ータなら予備ディスクドライブの上位ブロックへ、それ
    ぞれ記録する請求項1又は請求項2に記載の大容量記憶
    装置。
  4. 【請求項4】 パリティディスクドライブを含む小パリ
    ティグループのデータディスクドライブに対し書込み動
    作を行うときは、小パリティグループ内の書込まれたデ
    ータディスクドライブ以外のデータディスクドライブの
    データとパリティデータを演算し、その演算結果と新し
    く書込まれたデータを演算して新しいパリティデータを
    算出して、上位ブロックのパリティデータを予備ディス
    クドライブの下位ブロックへ、下位ブロックのパリティ
    データをパリティディスクドライブの下位ブロックへ、
    それぞれ記録する請求項1〜3のいずれか1項に記載の
    大容量記憶装置。
  5. 【請求項5】 パリティデータ算出のための演算は排他
    的論理和を行う請求項1〜4のいずれか1項に記載の大
    容量記憶装置。
  6. 【請求項6】 1つのデータディスクドライブにフェイ
    ルが発生した時、予備ディスクドライブにフェイルした
    データを復元する第1過程と、予備ディスクドライブを
    フェイルしたデータディスクドライブの代わりにデータ
    ディスクドライブに設定し、フェイルしたデータディス
    クドライブを予備ディスクドライブに設定する第2過程
    と、によりデータを復元する請求項1〜5のいずれか1
    項に記載の大容量記憶装置。
  7. 【請求項7】 各小パリティグループ当たり1つのデー
    タディスクにフェイルが発生した時、パリティディスク
    ドライブを含む小パリティグループ内のフェイルしたデ
    ータディスクドライブを予備ディスクドライブへ復元す
    る第1過程と、フェイルの発生していない全てのドライ
    ブを用いて残りのフェイルしたデータディスクドライブ
    をパリティディスクドライブへ復元する第2過程と、予
    備ディスクドライブとパリティディスクドライブをデー
    タディスクドライブに設定し、フェイルしたデータディ
    スクドライブをそれぞれ予備ディスクドライブとパリテ
    ィディスクドライブに設定する第3過程と、によりデー
    タを復元する請求項1〜6のいずれか1項に記載の大容
    量記憶装置。
  8. 【請求項8】 パリティディスクドライブと予備ディス
    クドライブのどちらか1つにフェイルが発生した時、デ
    ータディスクドライブのデータからパリティデータを再
    演算して復元する請求項1〜7のいずれか1項に記載の
    大容量記憶装置。
  9. 【請求項9】 パリティディスクドライブを含む小パリ
    ティグループ内の1つのデータディスクドライブと予備
    ディスクドライブにそれぞれフェイルが発生した時、フ
    ェイルしていない他の全てのディスクドライブからフェ
    イルしたデータディスクドライブのデータを復元してパ
    リティディスクドライブの上位ブロックに書込む第1過
    程と、パリティディスクドライブを含む小パリティグル
    ープ内のフェイルしていなデータディスクドライブとパ
    リティディスクドライブから予備ディスクドライブのデ
    ータを復元する第2過程と、パリティディスクドライブ
    をデータディスクドライブに設定し、フェイルしたデー
    タディスクドライブをパリティディスクドライブに設定
    する第3過程と、によりデータを復元する請求項1〜8
    のいずれか1項に記載の大容量記憶装置。
JP25686297A 1996-09-21 1997-09-22 大容量記憶装置 Expired - Lifetime JP3742494B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1996P41479 1996-09-21
KR1019960041479A KR100275900B1 (ko) 1996-09-21 1996-09-21 알에이아이디 서브시스템에 있어서 분할패러티 예비 디스크 구현방법

Publications (2)

Publication Number Publication Date
JPH10111767A true JPH10111767A (ja) 1998-04-28
JP3742494B2 JP3742494B2 (ja) 2006-02-01

Family

ID=19474748

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25686297A Expired - Lifetime JP3742494B2 (ja) 1996-09-21 1997-09-22 大容量記憶装置

Country Status (4)

Country Link
US (1) US6070249A (ja)
JP (1) JP3742494B2 (ja)
KR (1) KR100275900B1 (ja)
DE (1) DE19723909B4 (ja)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6272442B1 (en) * 1999-02-04 2001-08-07 Dell Usa, L.P. Taking in-use computer drives offline for testing
US6058054A (en) * 1999-03-31 2000-05-02 International Business Machines Corporation Method and system for providing an instant backup in a RAID data storage system
US6532548B1 (en) * 1999-09-21 2003-03-11 Storage Technology Corporation System and method for handling temporary errors on a redundant array of independent tapes (RAIT)
US6675318B1 (en) * 2000-07-25 2004-01-06 Sun Microsystems, Inc. Two-dimensional storage array with prompt parity in one dimension and delayed parity in a second dimension
KR100363221B1 (ko) * 2000-11-10 2002-12-05 디스크뱅크(주) 대용량 디스크 저장 장치 및 이를 위한 폴트 톨로런스제공 방법
DE10101805A1 (de) * 2001-01-17 2002-07-18 Siemens Ag Netzwerk mit mehreren Teilnehmern sowie Teilnehmer für ein derartiges Netzwerk
US6990667B2 (en) 2001-01-29 2006-01-24 Adaptec, Inc. Server-independent object positioning for load balancing drives and servers
US7054927B2 (en) * 2001-01-29 2006-05-30 Adaptec, Inc. File system metadata describing server directory information
US20020178162A1 (en) * 2001-01-29 2002-11-28 Ulrich Thomas R. Integrated distributed file system with variable parity groups
US6862692B2 (en) 2001-01-29 2005-03-01 Adaptec, Inc. Dynamic redistribution of parity groups
US20020124137A1 (en) * 2001-01-29 2002-09-05 Ulrich Thomas R. Enhancing disk array performance via variable parity based load balancing
JP2002259062A (ja) * 2001-02-28 2002-09-13 Hitachi Ltd 記憶装置システム及び記憶装置システムにおけるデータの複写方法
US7222257B1 (en) * 2001-06-12 2007-05-22 Emc Corporation Method and system for repairing a redundant array of disk drives
DE60131028D1 (de) * 2001-08-31 2007-11-29 Legend Beijing Ltd Verfahren zum sichern und wiederherstellen von daten in der festplatte eines computers
KR100463841B1 (ko) * 2002-02-25 2004-12-29 한국전자통신연구원 레이드 서브 시스템과 이를 이용한 디스크 에러 모드에서데이터 입출력 및 복구 방법
JP2004326357A (ja) * 2003-04-23 2004-11-18 Internatl Business Mach Corp <Ibm> 冗長化ブロックを有する記憶システム、並びに、当該記憶システムの制御装置、制御方法、プログラム及び記録媒体
US7254754B2 (en) * 2003-07-14 2007-08-07 International Business Machines Corporation Raid 3+3
US7379974B2 (en) * 2003-07-14 2008-05-27 International Business Machines Corporation Multipath data retrieval from redundant array
US7281177B2 (en) * 2003-07-14 2007-10-09 International Business Machines Corporation Autonomic parity exchange
US7533325B2 (en) 2003-07-14 2009-05-12 International Business Machines Corporation Anamorphic codes
US7613945B2 (en) * 2003-08-14 2009-11-03 Compellent Technologies Virtual disk drive system and method
US9489150B2 (en) 2003-08-14 2016-11-08 Dell International L.L.C. System and method for transferring data between different raid data storage types for current data and replay data
JP2005100259A (ja) * 2003-09-26 2005-04-14 Hitachi Ltd ドライブの2重障害を防止するアレイ型ディスク装置、プログラム、及び方法
US7302603B2 (en) * 2003-11-20 2007-11-27 International Business Machines Corporation Host-initiated data reconstruction for improved RAID read operations
JP4634049B2 (ja) 2004-02-04 2011-02-16 株式会社日立製作所 ディスクアレイ装置における異常通知制御
US8601035B2 (en) * 2007-06-22 2013-12-03 Compellent Technologies Data storage space recovery system and method
US20060112219A1 (en) * 2004-11-19 2006-05-25 Gaurav Chawla Functional partitioning method for providing modular data storage systems
US20080091877A1 (en) * 2006-05-24 2008-04-17 Klemm Michael J Data progression disk locality optimization system and method
EP2357552A1 (en) 2006-05-24 2011-08-17 Compellent Technologies System and method for RAID management, reallocation and restriping
WO2009140700A1 (en) * 2008-05-16 2009-11-19 Fusion Multisystems, Inc. Apparatus, system, and method for detecting and replacing failed data storage
US8554996B2 (en) * 2008-07-07 2013-10-08 Hewlett-Packard Development Company, L.P. Dynamically expanding storage capacity of a storage volume
US8307258B2 (en) 2009-05-18 2012-11-06 Fusion-10, Inc Apparatus, system, and method for reconfiguring an array to operate with less storage elements
US8281227B2 (en) 2009-05-18 2012-10-02 Fusion-10, Inc. Apparatus, system, and method to increase data integrity in a redundant storage system
US8468292B2 (en) * 2009-07-13 2013-06-18 Compellent Technologies Solid state drive data storage system and method
US9146851B2 (en) 2012-03-26 2015-09-29 Compellent Technologies Single-level cell and multi-level cell hybrid solid state drive
US20150089328A1 (en) * 2013-09-23 2015-03-26 Futurewei Technologies, Inc. Flex Erasure Coding of Controllers of Primary Hard Disk Drives Controller
CN103810062B (zh) * 2014-03-05 2015-12-30 华为技术有限公司 慢盘检测方法和装置
KR20170099161A (ko) * 2016-02-23 2017-08-31 에스케이텔레콤 주식회사 빠른 데이터 복원을 위한 데이터 읽기 또는 쓰기 방법
US11334434B2 (en) 2020-02-19 2022-05-17 Seagate Technology Llc Multi-level erasure system with cooperative optimization
US11372553B1 (en) 2020-12-31 2022-06-28 Seagate Technology Llc System and method to increase data center availability using rack-to-rack storage link cable

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5130992A (en) * 1990-04-16 1992-07-14 International Business Machines Corporaiton File-based redundant parity protection in a parallel computing system
US5258984A (en) * 1991-06-13 1993-11-02 International Business Machines Corporation Method and means for distributed sparing in DASD arrays
US5331646A (en) * 1992-05-08 1994-07-19 Compaq Computer Corporation Error correcting code technique for improving reliablility of a disk array
DE4392143C1 (de) * 1992-05-21 1996-11-21 Fujitsu Ltd Platten-Array-Vorrichtung
US5388108A (en) * 1992-10-23 1995-02-07 Ncr Corporation Delayed initiation of read-modify-write parity operations in a raid level 5 disk array
JP2912802B2 (ja) * 1993-10-14 1999-06-28 富士通株式会社 ディスクアレイ装置の故障対処方法および装置
US5530948A (en) * 1993-12-30 1996-06-25 International Business Machines Corporation System and method for command queuing on raid levels 4 and 5 parity drives
US5488701A (en) * 1994-11-17 1996-01-30 International Business Machines Corporation In log sparing for log structured arrays
US5533190A (en) * 1994-12-21 1996-07-02 At&T Global Information Solutions Company Method for maintaining parity-data consistency in a disk array

Also Published As

Publication number Publication date
JP3742494B2 (ja) 2006-02-01
KR19980022356A (ko) 1998-07-06
KR100275900B1 (ko) 2000-12-15
DE19723909A1 (de) 1998-04-02
US6070249A (en) 2000-05-30
DE19723909B4 (de) 2004-04-01

Similar Documents

Publication Publication Date Title
JP3742494B2 (ja) 大容量記憶装置
JP3237736B2 (ja) データ記憶装置のマトリックス構造
US5566316A (en) Method and apparatus for hierarchical management of data storage elements in an array storage device
US5379417A (en) System and method for ensuring write data integrity in a redundant array data storage system
JP3269552B2 (ja) ディスクドライブメモリ
JP2831072B2 (ja) ディスクドライブメモリ
TWI391815B (zh) 封閉基礎的raid同位輔助
JPH06202817A (ja) ディスクアレイ装置及びそのデータ更新方法
EP1311951A1 (en) Three interconnected raid disk controller data processing system architecture
JP2006252126A (ja) ディスクアレイ装置及びその再構築方法
JP2010015195A (ja) 記憶制御装置及び記憶制御方法
US6301711B1 (en) System and method for the network support of full motion video using a redundant array of inexpensive disks
KR19980021384A (ko) 데이타 입/출력 성능을 향상시키기 위한 기억장치 시스템 및 그에 따른 데이타 복구정보 캐시구현방법
US20050193273A1 (en) Method, apparatus and program storage device that provide virtual space to handle storage device failures in a storage system
US20030188102A1 (en) Disk subsystem
JPH09269871A (ja) ディスクアレイ装置におけるデータ再冗長化方式
JPH05324579A (ja) 分散ファイルシステム及び記憶装置
JPH07261945A (ja) ディスクアレイ装置およびディスクアレイの区分け方法
JP2005099995A (ja) 磁気ディスク装置のディスク共有方法及びシステム
JP2857288B2 (ja) ディスクアレイ装置
JPH06230903A (ja) ディスクアレイ装置の障害回復方法、およびディスクアレイ装置
US6785788B1 (en) System and method for implementing an enhanced raid disk storage system
JPH07306758A (ja) ディスクアレイ装置及びその制御方法
JP3256329B2 (ja) ディスクアレイ装置及びその制御方法
JP3793544B2 (ja) ディスクアレイ装置及びその制御方法

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20040107

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040406

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20040825

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040827

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050705

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051005

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20051108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051111

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040406

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091118

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101118

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111118

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121118

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131118

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term