JP2003167689A - ディスクアレイ装置及び同装置におけるパリティ処理方法 - Google Patents

ディスクアレイ装置及び同装置におけるパリティ処理方法

Info

Publication number
JP2003167689A
JP2003167689A JP2001367849A JP2001367849A JP2003167689A JP 2003167689 A JP2003167689 A JP 2003167689A JP 2001367849 A JP2001367849 A JP 2001367849A JP 2001367849 A JP2001367849 A JP 2001367849A JP 2003167689 A JP2003167689 A JP 2003167689A
Authority
JP
Japan
Prior art keywords
parity
physical
data
stripe
disk array
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
JP2001367849A
Other languages
English (en)
Other versions
JP3682256B2 (ja
Inventor
Haruo Tomita
治男 冨田
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2001367849A priority Critical patent/JP3682256B2/ja
Priority to US10/231,247 priority patent/US6895469B2/en
Publication of JP2003167689A publication Critical patent/JP2003167689A/ja
Application granted granted Critical
Publication of JP3682256B2 publication Critical patent/JP3682256B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems

Abstract

(57)【要約】 【課題】パリティ整合性の確認やパリティ生成などのパ
リティ処理に要する時間を短縮できるようにする。 【解決手段】制御装置1は、アドレス変換テーブル7を
利用して、ホストコンピュータ10により使用されてい
る有効な論理ブロックの論理アドレスを検索し、その有
効な論理アドレスに対応する物理アドレスの物理ブロッ
クが含まれる物理ストライプのみをディスクアレイ2か
ら読み込んで、そのストライプを対象とするパリティ処
理を行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のディスク装
置から構成されるディスクアレイを備えたディスクアレ
イ装置に係り、特に当該ディスクアレイを構成するディ
スク装置の異常検出のためのパリティ整合性の確認、或
いはパリティ生成等のパリティ処理に好適なディスクア
レイ装置及び同装置におけるパリティ処理方法に関す
る。
【0002】
【従来の技術】従来から、複数のディスク装置から構成
されるRAID(Redundant Array ofInexpensive Disk
s,Redundant Array of Independent Disks)に代表さ
れるディスクアレイを備えたディスクアレイ装置が種々
開発されている。ディスクアレイは、物理ストライプ単
位にアクセスされるのが一般的である。
【0003】ディスクアレイ装置への高速な書き込み方
法として、米国特許第6,219,752号公報または
米国特許第6,233,648号公報(以下、先行技術
文献と称する)に開示されているように、ホストコンピ
ュータからの更新(書き込み)要求に対して本来更新さ
れるべき旧データの領域の内容を書き換えるのではな
く、更新データを溜めておき、ディスクアレイを構成す
る各ディスク装置内の予め用意した別の空き領域にまと
めて書き込む(遅延書き込みを適用した)方法が提案さ
れている。
【0004】一般に、ディスクアレイ装置では、ディス
クアレイを構成する複数のディスク装置のいずれか1つ
に使用不可能となるような故障(障害)が発生しても、
RAID等で知られている冗長化ディスク構成を採用す
ることによって対処が可能である。即ちディスクアレイ
装置では、冗長化ディスク構成の適用により、ディスク
装置単体の故障に対し、その故障ディスク装置に代えて
予備のディスク装置(置換ディスク装置)を用いること
でディスクアレイを再構築できる。
【0005】このように、ディスクアレイ装置ではディ
スク装置単体の故障に対して対処可能であるものの、デ
ィスク装置が使用不可能となるような故障が発生する前
に、ディスク装置の異常を検出することが重要である。
【0006】そこで従来は、ディスクアレイ装置内のデ
ィスク装置の異常を早期に検出するために、当該ディス
クアレイ装置を使用してコンピュータシステムを運用す
る場合に行われるディスク装置の定期点検や故障診断の
中で、ディスクアレイ装置に記録されたデータのパリテ
ィ整合性の確認やパリティ生成を実施している。具体的
には、ディスクアレイに格納されている全ての物理スト
ライプを1ストライプずつ順に読み込み、その都度、そ
の物理ストライプに含まれている論理ブロックの各デー
タからパリティデータを生成する。そして、生成したパ
リティデータと対応する物理ストライプ中のパリティデ
ータとの整合性確認を実施するとか、生成したパリティ
データの書き込みを実施する。
【0007】
【発明が解決しようとする課題】上述した従来技術にお
いては、ディスクアレイに格納されている全ての物理ス
トライプを読み込んで、その読み込んだ物理ストライプ
からパリティデータを生成して、その生成したパリティ
データと物理ストライプ中のパリティデータとの整合性
の確認や、生成したパリティデータの書き込みを実施し
ている。このため従来技術では、ディスクアレイ内のデ
ィスク装置の早期異常検出のためのパリティ整合性の確
認やパリティ生成に多大な時間を要するという問題があ
る。このパリティ整合性の確認やパリティ生成などのパ
リティ処理に要する時間は、ディスクアレイのデータ容
量に依存し、容量が大きくなるほど長くなる。したがっ
て、今後ディスクアレイの大容量化が一層進むことを考
慮すると、上記従来技術は問題である。
【0008】本発明は上記事情を考慮してなされたもの
でその目的は、ディスクアレイを構成するディスク装置
の異常検出のためのパリティ整合性の確認やパリティ生
成などのパリティ処理に要する時間を短縮できるディス
クアレイ装置及び同装置におけるパリティ処理方法を提
供することにある。
【0009】
【課題を解決するための手段】本発明の1つの観点によ
れば、複数のディスク装置から構成される冗長化ディス
ク構成のディスクアレイを備え、ホストコンピュータか
らの書き込み要求の指定するデータをブロック単位に分
割して書き込みバッファに詰めて蓄積し、当該バッファ
に所定のブロック数のデータが蓄積された段階で、その
所定のブロック数のデータ及び当該データのパリティデ
ータを含む1ストライプ分のデータが、上記ディスクア
レイ内の上記複数のディスク装置上の更新されるべきデ
ータを保持している領域とは別の空き領域内の物理的に
連続する領域に書き込まれるディスクアレイ装置が提供
される。このディスクアレイ装置は、上記ホストコンピ
ュータにより使用されている有効な論理ブロックの論理
アドレスを当該論理ブロックが格納されている上記ディ
スクアレイの物理アドレスに変換するためのアドレス変
換情報が設定されたアドレス変換テーブルを記憶してお
くためのアドレス変換テーブル記憶手段と、上記ディス
クアレイを構成する各ディスク装置の異常検出のための
パリティ処理に際し、上記アドレス変換テーブルに従っ
て有効な論理アドレスを検索する手段と、この検索手段
により検索された有効な論理アドレスの示す論理ブロッ
クに対応する物理アドレスの物理ブロックが含まれる物
理ストライプのみを上記ディスクアレイから読み込む手
段と、この読み込み手段により読み込まれた物理ストラ
イプを対象とする所定のパリティ処理を行うパリティ処
理手段とを備えている。
【0010】このような構成のディスクアレイ装置にお
いては、アドレス変換テーブルを利用して、ホストコン
ピュータにより使用されている論理ブロックの論理アド
レス、つまり有効な論理ブロックの論理アドレスが検索
され、その有効な論理アドレスに対応する物理アドレス
の物理ブロックが含まれる物理ストライプのみがパリテ
ィ整合性の確認やパリティ生成などのパリティ処理のた
めに読み込まれて、パリティ処理に供される。
【0011】このように、上記の構成のディスクアレイ
装置によれば、ホストコンピュータにより使用されてい
る有効な論理ブロックの論理アドレスに対応する物理ア
ドレスの物理ブロックを含む物理ストライプ(有効な物
理ストライプ)と、ホストコンピュータにより使用され
ている有効な論理ブロックの論理アドレスに対応する物
理アドレスの物理ブロックを含まない物理ストライプ、
つまり全て無効な論理ブロックの論理アドレスに対応す
る物理アドレスの物理ブロックのみを含む物理ストライ
プ(無効な物理ストライプ)とを区別し、無効な物理ス
トライプについては、パリティ処理のための読み込みの
対象外とすることにより、その無効な物理ストライプの
読み込み処理と、その読み込み処理に伴う無駄なパリテ
ィ処理とが行われるのを防止して、ディスクアレイを構
成する各ディスク装置の異常検出のためのパリティ処理
に要する時間を大幅に短縮することが可能となる。しか
も、パリティ処理の対象となる物理ストライプの選別に
アドレス変換テーブルを使用していることから、OSや
ファイルシステム、ディバイスドライバ等に一切の変更
を加える必要がなく、したがって異なるOS環境下にお
いてもディスクアレイ装置間での互換性を保証できる。
【0012】ここで、上記パリティ処理としてパリティ
整合性の確認処理を行うためには、上記パリティ処理手
段に以下の各手段、即ち、上記読み込み手段により読み
込まれた物理ストライプに含まれている各データブロッ
クからパリティデータを生成する手段と、このパリティ
データ生成手段によって生成されたパリティデータと上
記読み込み手段により読み込まれた物理ストライプに含
まれているパリティデータとを比較することで、パリテ
ィ整合性の確認を行う手段を備えればよい。
【0013】また、上記パリティ処理としてパリティ生
成処理を行うためには、上記パリティ処理手段に以下の
各手段、即ち、上記読み込み手段により読み込まれた物
理ストライプに含まれている各データブロックからパリ
ティデータを生成する手段と、このパリティデータ生成
手段によって生成されたパリティデータを、上記ディス
クアレイ内の複数のディスク装置のうち、上記読み込み
手段により読み込まれた物理ストライプ中のパリティデ
ータ位置が属するディスク装置上の当該パリティデータ
位置に書き込む手段と、上記パリティデータ生成手段に
よって生成されたパリティデータが上記書き込み手段に
よって上記ディスク装置に正しく書き込まれたか否かを
検査する手段とを備えればよい。
【0014】また、パリティ処理の対象となる有効な物
理ストライプの読み込みを効率的に行うために、上記検
索手段により検索された有効な論理アドレスの示す論理
ブロックに対応する物理アドレスの物理ブロックが含ま
れる物理ストライプ(有効な物理ストライプ)を示す情
報が設定されたストライプテーブルを生成する手段を追
加し、上記読み込み手段が当該ストライプテーブルを参
照して上記有効な物理ストライプの情報を順次取得し、
その取得した情報に基づいて対応する物理ストライプを
ディスクアレイから読み込む構成とするとよい。
【0015】なお、以上のディスクアレイ装置に係る本
発明は、ディスクアレイを制御する制御装置(ディスク
アレイコントローラ)に係る発明としても、ディスクア
レイを構成する各ディスク装置の異常検出のために、当
該発明に相当する手順を実行してパリティ処理を行う方
法(パリティ処理方法)に係る発明としても成立する。
【0016】また、本発明は、コンピュータに当該発明
に相当する手順を実行させるための(或いはコンピュー
タを当該発明に相当する各手段として機能させるため
の、或いはコンピュータに当該発明に相当する機能を実
現させるための)プログラムに係る発明としても成立す
る。
【0017】
【発明の実施の形態】以下、本発明の実施の形態につき
図面を参照して説明する。図1は本発明の一実施形態に
係るディスクアレイ装置を備えたコンピュータシステム
の構成を示すブロック図である。
【0018】図1において、ディスクアレイ装置は、制
御装置1と、当該制御装置1に接続されたディスクアレ
イ2と、当該制御装置1に接続された不揮発性メモリ3
とから構成される。
【0019】ディスクアレイ2は、複数のディスク装
置、例えば3台のディスク装置21,22,23から構
成される。ディスクアレイ2は、ディスク装置21,2
2,23のいずれか1台が故障しても、その故障したデ
ィスク装置のデータの復旧(復元)が可能なように、冗
長化ディスク構成を適用している。ここでは、説明を簡
略化するために、ディスクアレイ2がRAID4の冗長
化ディスク構成を適用しており、ディスク装置21〜2
3のうちの特定の1台、例えばディスク装置23がパリ
ティデータを格納するパリティ用ディスク装置として割
り当てられているものとする。
【0020】制御装置1は、ディスクアレイ2を制御す
るコントローラ(ディスクアレイコントローラ)であ
り、ホストコンピュータ10と接続されている。ディス
クアレイ2は、ホストコンピュータ10からは1つの論
理的なディスク装置としてみえる。ホストコンピュータ
10と制御装置1とのインターフェースには、例えばS
CSI(Small Computer System Interface)、或いは
PCIバス(PeripheralComponent Interconnect Bus)
等が適用可能である。
【0021】なお、本実施形態では、図1に示す構成を
中心として説明するが、当該技術分野に属する熟練者に
とって、それらの詳しい細部の説明がなくても、図1に
示す構成から派生する他のコンピュータシステムの構成
であっても、本発明を実施できることは明らかである。
例えば、制御装置1を実現するのに、特開2000−1
0738号公報の第25頁右欄の段落0042〜004
5に記載されたディスクアレイコントローラの実現方法
を適用することも可能である。
【0022】ここで、図1の構成の詳細な説明の前に、
本実施形態の説明で用いる用語について説明する。 a)論理ブロック 論理ブロックとは、ホストコンピュータ10からみたデ
ータブロック、更に詳細に述べるならば、ホストコンピ
ュータ10からみたディスクアレイ2における論理的な
ディスク領域上のデータブロックを示す。 b)物理ブロック 物理ブロックとは、ディスクアレイ2上の物理的なブロ
ック、更に詳細に述べるならば、ディスクアレイ2にお
ける物理的なディスク領域上のデータブロックを示す。
データブロック(論理ブロック、物理ブロック)のサイ
ズは予め定められており、一定である。
【0023】c)論理アドレス 論理アドレスとは、ホストコンピュータ10からみたデ
ィスクアレイ(ディスク装置)2上のデータアドレスを
示す。ここでは、論理アドレスは、ディスクアレイ2に
おける論理的なディスク領域上のデータブロックの位
置、つまり論理ブロックの位置を示す論理ブロックアド
レスとして用いられる。
【0024】d)物理アドレス 物理アドレスとは、ディスクアレイ2上のデータ(デー
タブロック)の物理的位置を示すために使用する。ここ
では、物理アドレスは、ディスクアレイ2(を構成する
ディスク装置)上のデータブロックの物理的位置、つま
り物理ブロックの位置を示す物理ブロックアドレスであ
り、後述する物理ストライプ番号と物理ブロック番号と
から構成される。
【0025】e)論理アドレスタグ 論理アドレスタグとは、各論理ブロックに対する論理ア
ドレスとタイムスタンプからなる情報群を示す。 f)パリティブロック パリティブロックとは、複数の論理ブロックに対応する
冗長データを格納するためのデータブロックを意味す
る。 g)論理アドレスタグブロック 論理アドレスタグブロックとは、論理アドレスタグから
ならデータブロックを意味する。
【0026】h)論理ブロック番号 論理ブロック番号とは、ホストコンピュータからみたデ
ィスクアレイ2上のデータブロックの番号を示す。 i)物理ブロック番号 物理ブロック番号とは、ディスクアレイ2上の物理スト
ライプ内のデータブロックの相対位置を示す番号であ
り、ディスクアレイ2を構成するディスク装置に固有の
番号である。
【0027】制御装置1は、ROM等の記憶装置(図示
せず)に予め格納されている制御プログラムに従ってデ
ィスクアレイ2を制御する他に、書き込みバッファ6及
びアドレス変換テーブル7を管理する。書き込みバッフ
ァ6及びアドレス変換テーブルは、書き換えが可能な不
揮発性メモリ3に配置される。
【0028】ディスクアレイ2を構成する各ディスク装
置21〜23は、それぞれデータブロックのサイズ(ブ
ロックサイズ)の整数倍(ここでは、K倍とする、但し
Kは1以上の整数)である予め決められた単位、つまり
Kブロック単位(以下、ストライプユニットと称する)
で書き込みを行う。このとき、ディスク装置21〜23
の物理的に同じ位置のストライプユニットは、1つの物
理ストライプを構成するストライプユニットとして、同
じタイミングで書き込みが行われる。明らかなように、
ディスクアレイ2を構成するディスク装置が3台である
本実施形態では、1ストライプは3ストライプユニット
から構成される。もし、ディスクアレイ2を構成するデ
ィスク装置がN+1台(Nは2以上の整数であり、図1
の例ではN=2)、1ストライプユニットのサイズがブ
ロックサイズのK倍であるものとすると、1ストライプ
は(N+1)×K個のデータブロック、更に詳細に述べ
るならば、N×K−1個の論理ブロック、1個の論理ア
ドレスタグブロック、及びK個のパリティブロックから
構成される。
【0029】制御装置1は、従来の技術の欄で述べたの
と同様の高速書き込み方法を適用している。即ち制御装
置1は、ホストコンピュータからの更新(書き込み)要
求に対してディスクアレイ2内の対応する旧データの領
域の内容を書き換えるのではなく、更新データを書き込
みバッファ6の空き領域にブロック単位に分割して詰め
て書き込んで蓄積しておく。この書き込みバッファ6
は、1ストライプ−1ストライプユニット分、即ちN×
Kデータブロック分の記憶容量を有している。
【0030】制御装置1は、1ストライプ分に1ストラ
イプユニット+1データブロック少ない数まで、書き込
みバッファ6にデータブロックが蓄積された時点で、論
理アドレスタグとタイムスタンプから構成される論理ア
ドレスタグブロックを生成して当該書き込みバッファ6
上に格納する。そして制御装置1は、生成した論理アド
レスタグブロックが加えられた、書き込みバッファ6上
の1ストライプ−1ストライプユニット分のデータ(N
×K個のデータブロック)から、1ストライプユニット
分のパリティデータ(K個のパリティブロック)を生成
し、その1ストライプ−1ストライプユニット分のデー
タに1ストライプユニット分のパリティデータを加えた
((N+1)×K個のブロックからなる)1ストライプ
分のデータを、ディスクアレイ2のRAIDレベルを構
成するディスク装置の台数(N+1)に応じたストライ
ピングルールに従って、その台数(N+1台)のディス
ク装置(N=2の図1の例では、3台のディスク装置2
1〜23)上の更新されるべきデータを保持している領
域とは別の空き領域の物理的に連続する位置に、一括し
て書き込む動作を開始する。
【0031】この制御装置1により用意された1ストラ
イプ分のデータの例(K=3の場合)と、当該1ストラ
イプ分のデータがディスクアレイ2内のディスク装置2
1〜23に書き込まれる様子を図2に示す。図2の例で
は、論理アドレスL3,L7,L11の論理ブロック
(L3Data,L7Data,L11Data)から
なるストライプユニットと、論理アドレスL100,L
1の論理ブロック(L100Data,L1Data)
及び論理アドレスタグブロック(LA−TAG)からな
るストライプユニットと、論理アドレスL3,L100
の論理ブロックに対するパリティブロックP0、論理ア
ドレスL7,L1の論理ブロックに対するパリティブロ
ックP1及び論理アドレスL11の論理ブロックと論理
アドレスタグブロックに対するパリティブロックP2か
らなるストライプユニットとが、それぞれディスク装置
21,22,23の空き領域に、データD1,D2,P
として一括して書き込まれる様子が示されている。この
例では、パリティブロックP0は論理アドレスL3,L
100の論理ブロックの間の排他的論理和(XOR)演
算により生成され、パリティブロックP1は論理アドレ
スL7,L1の論理ブロックの間の排他的論理和演算に
より生成される。また、パリティブロックP2は論理ア
ドレスL1の論理ブロックと論理アドレスタグブロック
との間の排他的論理和演算により生成される。
【0032】不揮発性メモリ3に配置(格納)されてい
るアドレス変換テーブル7は、ホストコンピュータ10
からみたディスクアレイ(ディスク装置)2上のデータ
アドレス(データブロックアドレス)、つまり論理アド
レス(論理ブロックアドレス)を、ディスクアレイ2に
おける物理的なデータ(データブロック)の位置を示す
アドレス、つまり物理アドレス(物理ブロックアドレ
ス)に変換するのに用いられる変換マップである。
【0033】アドレス変換テーブル7のデータ構造例を
図3に示す。図3の例では、アドレス変換テーブル7の
各エントリは、それぞれ固有の論理アドレスに対応して
いる。ここでは、アドレス変換テーブル7を参照する場
合の効率を考慮して、当該テーブル7のi番目のエント
リを、論理アドレスi(論理ブロックiの論理アドレ
ス)に対応させている。アドレス変換テーブル7のエン
トリ数は、ホストコンピュータ10からみえる全論理ア
ドレスの数に一致する。
【0034】アドレス変換テーブル7の各エントリの情
報(アドレス変換情報)は、論理アドレス(論理ブロッ
クアドレス)と、当該論理アドレス(論理ブロックアド
レス)で示される論理ブロックが割り当てられるディス
クアレイ2(における物理的なディスク領域)上の物理
ブロックを含む物理ストライプを示す物理ストライプ番
号と、その物理ストライプ内の当該物理ブロックの相対
位置を示す物理ブロック番号と、当該論理アドレスのデ
ータブロックがディスクアレイ2に書き込まれた時間的
順序を管理するためのタイムスタンプの各項目(フィー
ルド)から構成される。なお、本実施形態のように、ア
ドレス変換テーブル7のi番目のエントリを論理アドレ
スiに対応させる場合、当該論理アドレスiから対応す
るi番目のエントリを参照可能であることから、当該エ
ントリ中に必ずしも論理アドレスの項目を用意する必要
はない。
【0035】アドレス変換テーブル7が不揮発性メモリ
3上に配置(生成)された初期状態では、当該アドレス
変換テーブル7の各エントリの論理アドレスの項目にだ
け有効なデータ(論理アドレス)が設定され、他の項目
にはNULLが設定されている。この論理アドレス以外
の各項目にNULLが設定されている、アドレス変換テ
ーブル7のエントリに対応する論理アドレス(図3の例
では論理アドレスLi)は、ホストコンピュータ10か
ら使用されていない無効な論理ブロックの論理アドレス
を示す。また、論理アドレス以外の各項目にNULL以
外のデータが設定されている、アドレス変換テーブル7
のエントリに対応する論理アドレス(図3の例では論理
アドレスL0,L1,L2)は、ホストコンピュータ1
0から使用されている有効な論理ブロックの論理アドレ
スを示す。なお以下では、説明の簡略化のために、単に
無効な論理アドレス、有効な論理アドレス、或いは論理
アドレスが有効、論理アドレスが無効であると表現する
こともある。
【0036】制御装置1は、1ストライプ分のデータ
を、ディスクアレイ2を構成するディスク装置21〜2
3上の更新されるべきデータを保持している領域とは別
の空き領域に書き込んだ場合、当該ストライプ中の各論
理ブロックについて、当該論理ブロックに対する論理ア
ドレスと、当該論理ブロックが書き込まれたディスクア
レイ2上の物理的なデータ位置、つまり物理ストライプ
番号と物理ブロック番号とで示される物理アドレスとの
関係を、アドレス変換テーブル7に設定する。具体的に
は、上記ストライプ中の各論理ブロックに対する論理ア
ドレスに対応するアドレス変換テーブル7内のエントリ
における物理ブロック番号と物理ストライプ番号とが、
それぞれ当該論理ブロックが実際に書き込まれた物理ス
トライプ内の物理ブロック位置を示す番号と当該物理ス
トライプの番号とに更新される。
【0037】さて本実施形態では、後述するパリティ整
合性確認(パリティチェック)処理、或いはパリティ生
成処理の開始時に、不揮発性メモリ3上に配置されてい
るアドレス変換テーブル7をもとに、図4に示すように
不揮発性メモリ3上にストライプテーブル8を生成する
ようにしている。このストライプテーブル8は、ホスト
コンピュータ10が使用している有効な論理アドレスの
論理ブロックを含む物理ストライプを管理するのに用い
られる。
【0038】ストライプテーブル8の各エントリの情報
は、図5に示すように、有効な論理アドレスの論理ブロ
ックを含む物理ストライプの番号(物理ストライプ番
号)と、フラグ(フラグ情報)とから構成される。この
フラグにはF0,F1,F2の3種がある。F0は、対
応する物理ストライプ番号の物理ストライプに対してパ
リティ整合性確認処理またはパリティ生成処理を実施し
ていないこと、つまり未処理(未実施)であることを示
す。F1は、対応する物理ストライプ番号の物理ストラ
イプに対してパリティ整合性確認またはパリティ生成の
処理済みで、且つパリティ整合性確認またはパリティ生
成に成功したことを示す。F3は、対応する物理ストラ
イプ番号の物理ストライプに対してパリティ整合性確認
またはパリティ生成の処理済みで、且つパリティ整合性
確認またはパリティ生成に失敗したことを示す。図5の
例では、物理ストライプ番号が0,1の物理ストライプ
(物理ストライプ0,1)はパリティ整合性確認または
パリティ生成の処理済みであり、且つ前者(物理ストラ
イプ0)は成功し、後者(物理ストライプ1)は失敗し
たことを示している。また、物理ストライプ番号100
の物理ストライプ(物理ストライプ100)は、パリテ
ィ整合性確認またはパリティ生成が未実施(未処理)で
あることを示している。
【0039】次に、本実施形態におけるディスクアレイ
装置のパリティ整合性確認処理について、図6のフロー
チャート参照して説明する。なお、パリティ整合性確認
処理は、ホストコンピュータ10からの要求に応じて実
行されるものであっても、ディスクアレイ装置(内の制
御装置1)における例えばパトロール機能により定期的
に実行されるものであっても構わない。
【0040】まず制御装置1は、アドレス変換テーブル
7の各エントリを参照して、有効な論理アドレスに対応
する物理ストライプの番号を検索することにより、有効
な論理アドレスに対応する物理ストライプに関する情報
(ここでは物理ストライプ番号)のみから構成される図
5に示すデータ構造のストライプテーブル8を不揮発性
メモリ3上に生成する(ステップS601)。ここで、
有効な論理アドレスに対応する物理ストライプの番号の
検索は、例えば論理アドレスをインクリメントしながら
(またはアドレス変換テーブル7内のエントリを示すエ
ントリ番号をインクリメントしながら)、その論理アド
レス(エントリ番号)に対応するアドレス変換テーブル
7内エントリを参照し、当該エントリの各項目がNUL
L以外であるか否かを調べることで行われる。なお、ア
ドレス変換テーブル7内エントリに、対応する論理アド
レスが有効であるか或いは無効であるかを示すフラグ
(有効/無効フラグ)を設け、当該フラグを参照するこ
とで、対応する論理アドレスが有効であるか否かを判定
する構成であってもよい。制御装置1は、有効な論理ア
ドレスを検索すると、不揮発性メモリ3上にストライプ
テーブル8のエントリを1つ追加し、その追加したエン
トリに、検索された有効な論理アドレスに対応するアド
レス変換テーブル7内のエントリに設定されている物理
ストライプ番号を読み込み設定する。但しストライプテ
ーブル8上に、検索された有効な論理アドレスに対応す
る物理ストライプ番号が既に設定済みのエントリが存在
する場合、上記したエントリ追加とその追加エントリへ
の物理ストライプ番号の設定は行われない。つまり、1
つの物理ストライプ上に有効な論理ブロックが1つ存在
する場合は勿論、複数存在する場合にも、当該物理スト
ライプの番号が設定されるストライプテーブル8内のエ
ントリは1つとなるように制御される。
【0041】制御装置1は、ホストコンピュータ10が
使用している全ての有効な論理ブロックの論理アドレス
について、対応する物理ストライプの物理ストライプ番
号が設定されたストライプテーブル8を生成し終える
と、当該ストライプテーブル8内のエントリを示すエン
トリ番号iを初期値0に設定する(ステップS60
2)。
【0042】次に制御装置1は、ストライプテーブル8
内のエントリ番号iのエントリ(つまりエントリi)を
参照して、当該エントリiに設定されている物理ストラ
イプ番号を取得し、その物理ストライプ番号の物理スト
ライプをディスクアレイ2から読み込む(ステップS6
03)。
【0043】次に制御装置1は、読み込んだ物理ストラ
イプのデータブロックからパリティデータを生成する
(ステップS604)。具体的には、図2に示す物理ス
トライプを読み込んだ場合を例にとると、ディスク装置
21上のデータ(ストライプユニット)D1を構成する
データブロックL3Data,L7Data,L11D
ataと、ディスク装置22上のデータ(ストライプユ
ニット)D2を構成するデータブロックL100Dat
a,L1Data,LA−TAGとから、パリティブロ
ックP0′,P1′,P2′からなるパリティデータ
P′が生成される。ここで、パリティブロックP0′は
データブロックL3DataとL100Dataとの間
の排他的論理和(XOR)演算により、パリティブロッ
クP1′はデータブロックL7DataとL1Data
との間の排他的論理和演算により、そしてパリティブロ
ックP2′はデータブロックL11DataとLA−T
AGとの間の排他的論理和演算により、それぞれ生成さ
れる。明らかなように、パリティブロックP0′,P
1′,P2′は、それぞれ図2中のパリティブロックP
0,P1,P2に対応する。
【0044】次に制御装置1は、ステップS604で生
成したパリティデータとステップS603で読み込んだ
物理ストライプ中のパリティデータとを例えばブロック
単位で比較し、パリティの整合性が正しいか否かを判定
する(ステップS605,S606)。上記の例であれ
ば、生成したパリティデータP′(を構成するパリティ
ブロックP0′,P1′,P2′)と読み込んだパリテ
ィデータP(を構成するパリティブロックP0,P1,
P2)とが比較され、一致の有無によりパリティの整合
性が確認される。
【0045】もし、パリティの整合性が正しくないと判
定された場合、つまりパリティ整合性の確認に失敗した
場合(ステップS606のNO)、制御装置1はホスト
コンピュータ10に対して、読み込んだ物理ストライプ
のパリティ整合性、即ちホストコンピュータ10が使用
している有効な論理ブロックの論理アドレスに対応する
物理ストライプのパリティ整合性でエラーを検出した旨
を通知する(ステップS607)。そして制御装置1
は、読み込んだ物理ストライプに対応するストライプテ
ーブル8内のエントリ中のフラグを、パリティ整合性確
認処理済みで且つ確認に失敗したことを示すF2に更新
する(ステップS608)。
【0046】これに対し、パリティの整合性が正しいと
判定された場合、つまりパリティ整合性の確認に成功し
た場合(ステップS606のYES)、制御装置1はそ
のままステップS608に進み、読み込んだ物理ストラ
イプに対応するストライプテーブル8内のエントリ中の
フラグをパリティ整合性確認処理済みで且つ確認に成功
したことを示すF1に更新する。
【0047】制御装置1はステップS608を実行する
と、エントリ番号iを1加算し(ステップS609)、
その加算後のi(エントリ番号i)から、ストライプテ
ーブル8の最終エントリのエントリ番号を越えたか否
か、即ちストライプテーブル8内の全エントリについて
処理したか否か、言い換えればストライプテーブル8に
よって示される有効な論理アドレスに対応する全ての物
理ストライプについて処理したか否かを判定する(ステ
ップS610)。もし、加算後のエントリ番号iがスト
ライプテーブル8の最終エントリのエントリ番号を越え
ていないならば、(ステップS610のNO)、制御装
置1は未処理の物理ストライプを示すストライプテーブ
ル8内のエントリが残っているものとして、当該加算後
のエントリ番号iについて、上記ステップS603以降
の処理を行う。
【0048】このようにして制御装置1は、ステップS
603以降の処理を、全ての有効な論理アドレスに対応
する全ての物理ストライプ(つまり有効な物理ストライ
プ)について実行することで、その全ての有効な物理ス
トライプに対するパリティ整合性の確認を実施する。
【0049】以上の説明から明らかなように、本実施形
態におけるパリティ整合性確認処理では、アドレス変換
テーブル7を利用して有効な論理アドレスを検索し、そ
の有効な論理アドレスに対応する物理アドレスの物理ブ
ロックが含まれる物理ストライプのみを読み込んで、そ
の物理ストライプに基づいてパリティ整合性の確認を行
うようにした。このため本実施形態においては、従来技
術のように、有効な論理アドレスと無効な論理アドレス
とを区別せずに、全ての物理ストライプを読み込んで、
その物理ストライプに基づいてパリティ整合性の確認を
行う場合に比べ、無効な論理アドレスに対する物理アド
レスの物理ブロックのみが含まれる物理ストライプ(つ
まり無効な論理アドレスに対する物理アドレスの物理ブ
ロックを含まない)の読み込みと、その物理ストライプ
に基づく不要なパリティ整合性確認に要する時間だけ短
縮できる。
【0050】しかも本実施形態では、有効な論理アドレ
スに対応する物理アドレスの物理ブロックが含まれる物
理ストライプを示すストライプテーブル8が生成され、
そのストライプテーブル8の各エントリ毎に、即ち有効
な論理アドレスに対応する各物理ストライプについて、
パリティ整合性確認処理済みであるか否かと、確認処理
済みの場合にはその確認に成功したか或いは失敗したか
を示すフラグが記録される。このため、例えばパリティ
整合性確認処理の終了時に自動的に、或いはホストコン
ピュータ10からの要求に応じて、ストライプテーブル
8の情報を制御装置1からホストコンピュータ10に転
送することにより、パリティ整合性の確認状況を一括し
て通知することも可能である。この場合、上記ステップ
S608のように逐次パリティ整合性のエラーをホスト
コンピュータ10に通知することは、必ずしも必要とし
ない。また、ストライプテーブル8の各エントリに設定
されているフラグから、当該エントリに設定されている
物理ストライプ番号の物理ストライプについて処理済み
であるか否かが判定できる。したがって、例えばパリテ
ィ整合性確認処理を中断し、その後再開する場合に、ス
トライプテーブル8の各エントリのフラグを参照して処
理済みであるか否かの判定を行うことで、未処理の物理
ストライプについてのみパリティ整合性の確認を行うこ
とができる。
【0051】次に、本実施形態におけるディスクアレイ
装置のパリティ生成処理について、図7のフローチャー
ト参照して説明する。このパリティ生成処理は、上述の
パリティ整合性確認処理で処理の対象となった全ての物
理ストライプについてパリティ整合性の正しいことが確
認できた場合に行われるものとする。なお、パリティ生
成処理は、先に述べたパリティ整合性確認処理と同様
に、ホストコンピュータ10からの要求に応じて実行さ
れるものであっても、ディスクアレイ装置(内の制御装
置1)におけるパトロール機能により定期的に実行され
るものであっても構わない。
【0052】まず制御装置1は、アドレス変換テーブル
7を利用して、図6中のステップS600と同様の手法
で、有効な論理アドレスに対応する物理ストライプに関
する情報(ここでは物理ストライプ番号)のみから構成
される図5に示すデータ構造のストライプテーブル8を
不揮発性メモリ3上に生成する(ステップS701)。
【0053】次に制御装置1は、ストライプテーブル8
内のエントリを示すエントリ番号iを初期値0に設定す
る(ステップS702)。そして制御装置1は、ストラ
イプテーブル8内のエントリ番号iのエントリ(エント
リi)を参照して、当該エントリiに設定されている物
理ストライプ番号を取得し、その物理ストライプ番号の
物理ストライプをディスクアレイ2から読み込む(ステ
ップS703) 次に制御装置1は、図6中のステップS604と同様に
して、読み込んだ物理ストライプのデータブロックから
パリティデータを生成する(ステップS704)。そし
て制御装置1は、生成したパリティデータを、ディスク
アレイ2内のディスク装置21〜23のうち、ステップ
S703での読み込みの対象となった物理ストライプに
含まれているパリティデータが格納されているディスク
装置上のパリティデータ位置(パリティ位置)、つまり
当該物理ストライプ中のパリティデータ位置が属するデ
ィスク装置(図2の例ではディスク装置23)上の当該
パリティデータ位置に書き込む(ステップS705)。
【0054】次に制御装置1は、ステップS705での
パリティデータの書き込みに成功したか否か(つまり失
敗したか)を判定する(ステップS706)。この判定
(検査)は、ステップS705で書き込んだパリティデ
ータを読み出し、その読み出されたパリティデータが元
の書き込んだパリティデータに一致するか否かを調べる
ことで行われる。また、パリティデータの書き込み自体
が正常に行えない場合にも、パリティデータの書き込み
に失敗したと判定される。
【0055】もし、パリティデータの書き込みに失敗し
た場合(ステップS706のNO)、制御装置1はホス
トコンピュータ10に対して、読み込んだ物理ストライ
プのパリティ生成、即ちホストコンピュータ10が使用
している有効な論理ブロックの論理アドレスに対応する
物理ストライプのパリティ生成でエラーを検出した旨を
通知する(ステップS707)。そして制御装置1は、
読み込んだ物理ストライプに対応するストライプテーブ
ル8内のエントリ中のフラグを、パリティ生成処理済み
で且つパリティ生成に失敗したことを示すF2に更新す
る(ステップS708)。
【0056】これに対し、パリティデータの書き込みに
成功した場合、つまりパリティ生成に成功した場合(ス
テップS606のYES)、制御装置1はそのままステ
ップS708に進み、読み込んだ物理ストライプに対応
するストライプテーブル8内のエントリ中のフラグをパ
リティ生成処理済みで且つパリティ生成に成功したこと
を示すF1に更新する。
【0057】制御装置1はステップS708を実行する
と、エントリ番号iを1加算し(ステップS709)、
その加算後のi(エントリ番号i)から、ストライプテ
ーブル8の最終エントリのエントリ番号を越えたか否
か、即ちストライプテーブル8内の全エントリについて
処理したか否かを判定する(ステップS710)。も
し、加算後のエントリ番号iがストライプテーブル8の
最終エントリのエントリ番号を越えていないならば、
(ステップS710のNO)、制御装置1は当該加算後
のエントリ番号iについて、上記ステップS703以降
の処理を行う。
【0058】このようにして制御装置1は、ステップS
703以降の処理を、全ての有効な論理アドレスに対応
する全ての有効な物理ストライプについて実行すること
で、その全ての有効な物理ストライプに対するパリティ
生成を実施する。
【0059】以上の説明から明らかなように、本実施形
態におけるパリティ生成処理では、アドレス変換テーブ
ル7を利用して有効な論理アドレスを検索し、その有効
な論理アドレスに対応する物理アドレスの物理ブロック
が含まれる物理ストライプのみを読み込んで、その物理
ストライプに基づいてパリティ生成を行うようにした。
このため本実施形態においては、従来技術のように、有
効な論理アドレスと無効な論理アドレスとを区別せず
に、全ての物理ストライプを読み込んで、その物理スト
ライプに基づいてパリティ生成を行う場合に比べ、無効
な論理アドレスに対する物理アドレスの物理ブロックの
みが含まれる物理ストライプの読み込みと、その物理ス
トライプに基づく不要なパリティ生成と、生成されたパ
リティの不要な書き込みとに要する時間だけ短縮でき
る。
【0060】しかも本実施形態では、先に述べたパリテ
ィ整合性確認処理の場合と同様にしてストライプテーブ
ル8の情報をホストコンピュータ10に転送することに
より、パリティ生成の状況を一括して通知することも可
能である。また本実施形態では、パリティ生成処理を中
断し、その後再開する場合に、ストライプテーブル8の
各エントリのフラグを参照して処理済みであるか否かの
判定を行うことで、未処理の物理ストライプについての
みパリティ生成を行うことができる。
【0061】なお、ストライプテーブル8内の各エント
リにパリティ整合性確認の状況を表す第1のフラグとパ
リティ生成の状況を表す第2のフラグとの両項目を用意
して、パリティ整合性確認処理→パリティ生成処理の順
に処理を行うならば、パリティ整合性確認処理の開始時
に生成されたストライプテーブル8をそのまま利用して
パリティ生成処理を行うことができる。しかも、パリテ
ィ生成処理では、ストライプテーブル8内の各エントリ
の第1のフラグを参照することで、当該フラグがF1の
エントリの示す有効な物理ストライプ、即ちパリティ整
合性が正しいことが確認できた有効な物理ストライプの
みを対象にパリティ生成を実施できる。
【0062】以上に述べた実施形態及びその変形例で
は、書き込みバッファ6及びアドレス変換テーブル7が
不揮発性メモリ3に配置されるものとして説明したが、
これに限るものではない。例えば、図8に示すように、
揮発性メモリ4と電源オフ時にも当該揮発性メモリ4の
記憶内容が消失するのを防止するための、電池等のメモ
リバックアップ機構5とにより、等価的に不揮発性メモ
リ3に相当する不揮発性メモリ30を実現し、書き込み
バッファ6及びアドレス変換テーブル7が、揮発性メモ
リ4に配置される構成であっても構わない。つまり書き
込みバッファ6及びアドレス変換テーブル7が、揮発性
メモリ4とメモリバックアップ機構5とから構成される
不揮発性メモリ30に配置される構成であっても構わな
い。
【0063】また、以上に述べた実施形態では、ディス
クアレイ2がRAID4の冗長化ディスク構成を適用し
ているものとして説明したが、これに限るものではな
い。本発明は、パリティブロックの格納先ディスク装置
が物理ストライプ単位でサイクリックに切り替わるRA
ID5、或いはRAID50の冗長化ディスク構成な
ど、故障ディスク装置のデータが復旧可能な冗長化ディ
スク構成であれば、どのような種類の冗長化ディスク構
成のディスクアレイであっても、同様に適用できる。
【0064】なお、本発明は、上記実施形態に限定され
るものではなく、実施段階ではその要旨を逸脱しない範
囲で種々に変形することが可能である。更に、上記実施
形態には種々の段階の発明が含まれており、開示される
複数の構成要件における適宜な組み合わせにより種々の
発明が抽出され得る。例えば、実施形態に示される全構
成要件から幾つかの構成要件が削除されても、発明が解
決しようとする課題の欄で述べた課題が解決でき、発明
の効果の欄で述べられている効果が得られる場合には、
この構成要件が削除された構成が発明として抽出され得
る。
【0065】
【発明の効果】以上詳述したように本発明によれば、ア
ドレス変換テーブルを利用してホストコンピュータが使
用している有効な論理アドレスを検索し、その検索され
た論理アドレスに対応する物理アドレスの物理ブロック
が含まれる物理ストライプのみをパリティ整合性の確認
やパリティ生成などのパリティ処理のための読み込みの
対象とするようにしたので、OSやファイルシステム、
ディバイスドライバ等に一切の変更を加えず、異なるO
S環境下においてもディスクアレイ装置間での互換性を
保証しながら、ディスクアレイ内のディスク装置の早期
異常検出に効果のあるパリティ処理に要する時間を短縮
できる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るディスクアレイ装置
を備えたコンピュータシステムの構成を示すブロック
図。
【図2】1ストライプ分のデータの例と、当該1ストラ
イプ分のデータがディスクアレイ2内のディスク装置2
1〜23に書き込まれる様子を示す図。
【図3】図1中のアドレス変換テーブル7のデータ構造
例を示す図。
【図4】同実施形態においてストライプテーブル8がア
ドレス変換テーブル7をもとに生成されることを説明す
るための図。
【図5】図4中のストライプテーブル8のデータ構造例
を示す図。
【図6】同実施形態におけるパリティ整合性確認処理の
手順を説明するためのフローチャート。
【図7】同実施形態におけるパリティ生成処理の手順を
説明するためのフローチャート。
【図8】本発明の他の実施形態に係るディスクアレイ装
置を備えたコンピュータシステムの構成を示すブロック
図。
【符号の説明】
1…制御装置 2…ディスクアレイ 3,30…不揮発性メモリ 4…揮発性メモリ 5…メモリバックアップ機構 6…書き込みバッファ 7…アドレス変換テーブル 8…ストライプテーブル 10…ホストコンピュータ 21〜23…ディスク装置

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 複数のディスク装置から構成される冗長
    化ディスク構成のディスクアレイを備え、ホストコンピ
    ュータからの書き込み要求の指定するデータをブロック
    単位に分割して書き込みバッファに詰めて蓄積し、当該
    バッファに所定のブロック数のデータが蓄積された段階
    で、その所定のブロック数のデータ及び当該データのパ
    リティデータを含む1ストライプ分のデータが、前記デ
    ィスクアレイ内の前記複数のディスク装置上の更新され
    るべきデータを保持している領域とは別の空き領域内の
    物理的に連続する領域に書き込まれるディスクアレイ装
    置において、 前記ホストコンピュータにより使用されている有効な論
    理ブロックの論理アドレスを当該論理ブロックが格納さ
    れている前記ディスクアレイの物理アドレスに変換する
    ためのアドレス変換情報が設定されたアドレス変換テー
    ブルを記憶しておくためのアドレス変換テーブル記憶手
    段と、 前記ディスクアレイを構成する各ディスク装置の異常検
    出のためのパリティ処理に際し、前記アドレス変換テー
    ブルに従って有効な論理アドレスを検索する手段と、 前記検索手段により検索された有効な論理アドレスの示
    す論理ブロックに対応する物理アドレスの物理ブロック
    が含まれる物理ストライプのみを前記ディスクアレイか
    ら読み込む手段と、 前記読み込み手段により読み込まれた物理ストライプを
    対象とする所定のパリティ処理を行うパリティ処理手段
    とを具備することを特徴とするディスクアレイ装置。
  2. 【請求項2】 前記パリティ処理手段は、 前記読み込み手段により読み込まれた物理ストライプに
    含まれている各データブロックからパリティデータを生
    成する手段と、 前記パリティデータ生成手段によって生成されたパリテ
    ィデータと前記読み込み手段により読み込まれた物理ス
    トライプに含まれているパリティデータとを比較するこ
    とで、パリティ整合性の確認を行う手段とを備えている
    ことを特徴とする請求項1記載のディスクアレイ装置。
  3. 【請求項3】 前記パリティ処理手段は、 前記読み込み手段により読み込まれた物理ストライプに
    含まれている各データブロックからパリティデータを生
    成する手段と、 前記パリティデータ生成手段によって生成されたパリテ
    ィデータを、前記ディスクアレイ内の前記複数のディス
    ク装置のうち、前記読み込み手段により読み込まれた物
    理ストライプ中のパリティデータ位置が属するディスク
    装置上の当該パリティデータ位置に書き込む手段と、 前記パリティデータ生成手段によって生成されたパリテ
    ィデータが前記書き込み手段によって前記ディスク装置
    に正しく書き込まれたか否かを検査する手段とを備えて
    いることを特徴とする請求項1記載のディスクアレイ装
    置。
  4. 【請求項4】 前記検索手段により検索された有効な論
    理アドレスの示す論理ブロックに対応する物理アドレス
    の物理ブロックが含まれる物理ストライプを示す情報が
    設定されたストライプテーブルを生成する手段を更に具
    備し、 前記読み込み手段は、前記ストライプテーブルを参照し
    て、前記有効な論理アドレスの示す論理ブロックに対応
    する物理アドレスの物理ブロックが含まれる物理ストラ
    イプの情報を順次取得し、その取得した情報に基づいて
    対応する物理ストライプを前記ディスクアレイから読み
    込むことを特徴とする請求項1記載のディスクアレイ装
    置。
  5. 【請求項5】 前記パリティ処理手段は、前記物理スト
    ライプを対象とする前記パリティ処理の結果を示すフラ
    グ情報を、当該物理ストライプを示す情報が設定されて
    いる前記ストライプテーブルに、当該物理ストライプを
    示す情報に対応させて設定することを特徴とする請求項
    4記載のディスクアレイ装置。
  6. 【請求項6】 前記パリティ処理手段は、前記物理スト
    ライプを対象とする前記パリティ処理を実施する都度、
    処理済みを示すフラグ情報を、当該物理ストライプを示
    す情報が設定されている前記ストライプテーブルに、当
    該物理ストライプを示す情報に対応させて設定すること
    を特徴とする請求項4記載のディスクアレイ装置。
  7. 【請求項7】 複数のディスク装置から構成される冗長
    化ディスク構成のディスクアレイを備え、ホストコンピ
    ュータからの書き込み要求の指定するデータをブロック
    単位に分割して書き込みバッファに詰めて蓄積し、当該
    バッファに所定のブロック数のデータが蓄積された段階
    で、その所定のブロック数のデータ及び当該データのパ
    リティデータを含む1ストライプ分のデータが、前記デ
    ィスクアレイ内の前記複数のディスク装置上の更新され
    るべきデータを保持している領域とは別の空き領域内の
    物理的に連続する領域に書き込まれるディスクアレイ装
    置において、前記ディスクアレイを構成する各ディスク
    装置の異常検出のために実行されるパリティ処理方法で
    あって、 前記ホストコンピュータにより使用されている有効な論
    理ブロックの論理アドレスを当該論理ブロックが格納さ
    れている前記ディスクアレイの物理アドレスに変換する
    ためのアドレス変換情報が設定されたアドレス変換テー
    ブルに従って有効な論理アドレスを検索するステップ
    と、 前記検索ステップで検索された有効な論理アドレスの示
    す論理ブロックに対応する物理アドレスの物理ブロック
    が含まれる物理ストライプのみを前記ディスクアレイか
    ら読み込むステップと、 前記読み込みステップで読み込まれた物理ストライプを
    対象とする所定のパリティ処理を行うステップとを具備
    することを特徴とするパリティ処理方法。
  8. 【請求項8】 前記パリティ処理ステップは、 前記読み込みステップで読み込まれた物理ストライプに
    含まれている各データブロックからパリティデータを生
    成するステップと、 前記パリティデータ生成ステップによって生成されたパ
    リティデータと前記読み込みステップで読み込まれた物
    理ストライプに含まれているパリティデータとを比較す
    ることで、パリティ整合性の確認を行うステップとを含
    んでいることを特徴とする請求項7記載のパリティ処理
    方法。
  9. 【請求項9】 前記パリティ処理ステップは、 前記読み込みステップで読み込まれた物理ストライプに
    含まれている各データブロックからパリティデータを生
    成するステップと、 前記パリティデータ生成ステップによって生成されたパ
    リティデータを、前記ディスクアレイ内の前記複数のデ
    ィスク装置のうち、前記読み込みステップで読み込まれ
    た物理ストライプ中のパリティデータ位置が属するディ
    スク装置上の当該パリティデータ位置に書き込むステッ
    プと、 前記パリティデータ生成ステップで生成されたパリティ
    データが前記書き込みステップで前記ディスク装置に正
    しく書き込まれたか否かを検査するステップとを含んで
    いることを特徴とする請求項7記載のパリティ処理方
    法。
JP2001367849A 2001-11-30 2001-11-30 ディスクアレイ装置及び同装置におけるパリティ処理方法 Expired - Fee Related JP3682256B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001367849A JP3682256B2 (ja) 2001-11-30 2001-11-30 ディスクアレイ装置及び同装置におけるパリティ処理方法
US10/231,247 US6895469B2 (en) 2001-11-30 2002-08-30 Disk array apparatus and parity processing method therein

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001367849A JP3682256B2 (ja) 2001-11-30 2001-11-30 ディスクアレイ装置及び同装置におけるパリティ処理方法

Publications (2)

Publication Number Publication Date
JP2003167689A true JP2003167689A (ja) 2003-06-13
JP3682256B2 JP3682256B2 (ja) 2005-08-10

Family

ID=19177536

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001367849A Expired - Fee Related JP3682256B2 (ja) 2001-11-30 2001-11-30 ディスクアレイ装置及び同装置におけるパリティ処理方法

Country Status (2)

Country Link
US (1) US6895469B2 (ja)
JP (1) JP3682256B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006201953A (ja) * 2005-01-19 2006-08-03 Sharp Corp ファイルシステム
JP2006285807A (ja) * 2005-04-04 2006-10-19 Nec Corp 記憶装置の試験方法及び装置
JP2008077458A (ja) * 2006-09-22 2008-04-03 Fujitsu Ltd 記憶データ処理装置、記憶装置、記憶データ処理プログラム
JP2009301303A (ja) * 2008-06-13 2009-12-24 Fujitsu Ltd 制御方法、ディスクアレイ装置
WO2015107675A1 (ja) * 2014-01-17 2015-07-23 株式会社日立製作所 ストレージ装置および制御方法
WO2015145724A1 (ja) * 2014-03-28 2015-10-01 株式会社日立製作所 ストレージシステム
JP6224186B1 (ja) * 2016-08-01 2017-11-01 株式会社東芝 Raidストレージシステム、ストレージコントローラ及びraidアレイパトロール方法

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7146461B1 (en) * 2003-07-01 2006-12-05 Veritas Operating Corporation Automated recovery from data corruption of data volumes in parity RAID storage systems
US7346733B2 (en) 2004-09-09 2008-03-18 Hitachi, Ltd. Storage apparatus, system and method using a plurality of object-based storage devices
JP4886209B2 (ja) * 2005-04-15 2012-02-29 株式会社東芝 アレイコントローラ、当該アレイコントローラを含む情報処理装置及びディスクアレイ制御方法
US11221917B1 (en) 2005-09-30 2022-01-11 Pure Storage, Inc. Integrity processing in a dispersed storage network
US11620185B2 (en) 2005-09-30 2023-04-04 Pure Storage, Inc. Integrity processing in a dispersed storage network
US10860424B1 (en) 2005-09-30 2020-12-08 Pure Storage, Inc. Background verification processing in a storage network
US8555109B2 (en) 2009-07-30 2013-10-08 Cleversafe, Inc. Method and apparatus for distributed storage integrity processing
JP2008158724A (ja) * 2006-12-22 2008-07-10 Fujitsu Ltd ディスクアレイ装置のステージング方法
US11298252B2 (en) 2008-09-25 2022-04-12 Advanced Bifurcation Systems Inc. Stent alignment during treatment of a bifurcation
EP2344068B1 (en) 2008-09-25 2022-10-19 Advanced Bifurcation Systems Inc. Partially crimped stent
US8769796B2 (en) 2008-09-25 2014-07-08 Advanced Bifurcation Systems, Inc. Selective stent crimping
US8808347B2 (en) 2008-09-25 2014-08-19 Advanced Bifurcation Systems, Inc. Stent alignment during treatment of a bifurcation
JP4399021B1 (ja) * 2008-10-29 2010-01-13 株式会社東芝 ディスクアレイ制御装置および記憶装置
WO2011119884A1 (en) 2010-03-24 2011-09-29 Advanced Bifurcation Systems, Inc System and methods for treating a bifurcation
EP2672932B1 (en) 2011-02-08 2018-09-19 Advanced Bifurcation Systems, Inc. System for treating a bifurcation with a fully crimped stent
WO2012109382A2 (en) 2011-02-08 2012-08-16 Advanced Bifurcation Systems, Inc. Multi-stent and multi-balloon apparatus for treating bifurcations and methods of use
CN103577111B (zh) * 2012-07-23 2017-05-31 上海宝存信息科技有限公司 基于非易失性存储器的动态独立冗余阵列存储系统及方法
US20150089328A1 (en) * 2013-09-23 2015-03-26 Futurewei Technologies, Inc. Flex Erasure Coding of Controllers of Primary Hard Disk Drives Controller
EP2933733A4 (en) * 2013-12-31 2016-05-11 Huawei Tech Co Ltd DATA PROCESSING METHOD AND DEVICE IN A DISTRIBUTED FILE STORAGE SYSTEM
US9766837B2 (en) 2015-06-10 2017-09-19 Micron Technology, Inc. Stripe mapping in memory
CN107102951B (zh) * 2016-02-19 2019-08-06 群联电子股份有限公司 存储器管理方法、存储器控制电路单元与存储器储存装置
CN114253478B (zh) * 2021-12-17 2024-02-09 山东云海国创云计算装备产业创新中心有限公司 一种计算raid校验盘位置的方法和装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5303244A (en) * 1991-03-01 1994-04-12 Teradata Fault tolerant disk drive matrix
JPH0588988A (ja) 1991-09-27 1993-04-09 Fujitsu Ltd デイスクアレイ装置及びデータの復元方法
JPH1153235A (ja) 1997-08-08 1999-02-26 Toshiba Corp ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム
JPH11194899A (ja) 1997-12-26 1999-07-21 Toshiba Corp ディスク記憶システム及び同システムに適用するデータ更新方法
JP2000010738A (ja) 1998-06-17 2000-01-14 Toshiba Corp ディスクアレイシステム、同システムに適用される記憶容量拡張方法および記録媒体
JP2000047832A (ja) 1998-07-27 2000-02-18 Toshiba Corp ディスクアレイ装置、及びそのデータ制御方法
US7266706B2 (en) * 1999-03-03 2007-09-04 Yottayotta, Inc. Methods and systems for implementing shared disk array management functions
JP2001100939A (ja) 1999-09-27 2001-04-13 Alps Electric Co Ltd ディスクアレイ装置およびディスクアレイの制御方法
US6571351B1 (en) * 2000-04-07 2003-05-27 Omneon Video Networks Tightly coupled secondary storage system and file system

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006201953A (ja) * 2005-01-19 2006-08-03 Sharp Corp ファイルシステム
JP4480592B2 (ja) * 2005-01-19 2010-06-16 シャープ株式会社 ファイルシステム
JP2006285807A (ja) * 2005-04-04 2006-10-19 Nec Corp 記憶装置の試験方法及び装置
JP4605374B2 (ja) * 2005-04-04 2011-01-05 日本電気株式会社 記憶装置の試験方法及び装置
JP2008077458A (ja) * 2006-09-22 2008-04-03 Fujitsu Ltd 記憶データ処理装置、記憶装置、記憶データ処理プログラム
JP2009301303A (ja) * 2008-06-13 2009-12-24 Fujitsu Ltd 制御方法、ディスクアレイ装置
WO2015107675A1 (ja) * 2014-01-17 2015-07-23 株式会社日立製作所 ストレージ装置および制御方法
WO2015145724A1 (ja) * 2014-03-28 2015-10-01 株式会社日立製作所 ストレージシステム
US9778986B2 (en) 2014-03-28 2017-10-03 Hitachi, Ltd. Storage system
JP6224186B1 (ja) * 2016-08-01 2017-11-01 株式会社東芝 Raidストレージシステム、ストレージコントローラ及びraidアレイパトロール方法
CN107680622A (zh) * 2016-08-01 2018-02-09 株式会社东芝 Raid存储系统、存储控制器以及raid阵列巡查方法
US10353773B2 (en) 2016-08-01 2019-07-16 Kabushiki Kaisha Toshiba RAID storage system, storage controller and RAID array patrol method
CN107680622B (zh) * 2016-08-01 2020-02-21 株式会社东芝 Raid存储系统、存储控制器以及raid阵列巡查方法

Also Published As

Publication number Publication date
US6895469B2 (en) 2005-05-17
US20030105922A1 (en) 2003-06-05
JP3682256B2 (ja) 2005-08-10

Similar Documents

Publication Publication Date Title
JP3682256B2 (ja) ディスクアレイ装置及び同装置におけるパリティ処理方法
CN104978281B (zh) 数据存储设备中的数据完整性管理
JP3579389B2 (ja) ディスクアレイ装置及び同装置におけるデータ復旧方法
US5404361A (en) Method and apparatus for ensuring data integrity in a dynamically mapped data storage subsystem
JP3526452B2 (ja) ディスクアレイ装置及びデータバックアップ方法
US6901479B2 (en) Disk array apparatus for and method of expanding storage capacity dynamically
US8762661B2 (en) System and method of managing metadata
US6865658B2 (en) Nonvolatile data management system using data segments and link information
US8812901B2 (en) Methods and apparatus for marking writes on a write-protected failed device to avoid reading stale data in a RAID storage system
US7587630B1 (en) Method and system for rapidly recovering data from a “dead” disk in a RAID disk group
US20030115437A1 (en) Disk array apparatus and data update method therein
KR101678868B1 (ko) 플래시 주소 변환 장치 및 그 방법
KR20020009564A (ko) 메모리 시스템
JPH08263227A (ja) ディスクアレイにおけるパリティデータの無矛盾性保持方法
EP0521924A1 (en) Methods and apparatus for assigning signatures to members of a set of mass storage devices
US20200104257A1 (en) Method of operating storage device, storage device performing the same and storage system including the same
US6363457B1 (en) Method and system for non-disruptive addition and deletion of logical devices
JP2002175158A (ja) ディスクアレイ装置におけるデータ修復方法及びディスクアレイコントローラ
US6701452B1 (en) Disk array controller having distributed parity generation function
JP3788961B2 (ja) ディスクアレイ装置及び同装置におけるレイドレベル変更方法
US6854038B2 (en) Global status journaling in NVS
JP3790756B2 (ja) ディスクアレイ装置、ディスク制御装置及びディスクアレイのデータ障害を復旧する方法
JP2000047832A (ja) ディスクアレイ装置、及びそのデータ制御方法
JP2000172570A5 (ja) 情報記録装置並びにこの装置におけるデータの入出力方法及び再構築方法
JP3798773B2 (ja) ディスク制御装置及び冗長化論理ディスクドライブの一貫性回復方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040420

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040621

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: 20050517

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050520

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

Free format text: PAYMENT UNTIL: 20090527

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090527

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100527

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100527

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110527

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110527

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120527

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees