JP2000259359A - Raid装置および記録媒体 - Google Patents
Raid装置および記録媒体Info
- Publication number
- JP2000259359A JP2000259359A JP11056883A JP5688399A JP2000259359A JP 2000259359 A JP2000259359 A JP 2000259359A JP 11056883 A JP11056883 A JP 11056883A JP 5688399 A JP5688399 A JP 5688399A JP 2000259359 A JP2000259359 A JP 2000259359A
- Authority
- JP
- Japan
- Prior art keywords
- data
- parity
- disk
- disks
- raid
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1057—Parity-multiple bits-RAID6, i.e. RAID 6 implementations
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
(57)【要約】
【課題】 データディスクに冗長するパリティの算
出およびディスク障害時のデータ復元を行うことにあ
る。 【解決手段】 データを複数のデータ用ディスク2a〜
2cに分散保存し、これらデータに冗長するパリティ用
ディスク3a,3bを付加する冗長手段と、データおよ
びパリティ保存領域をビット単位に任意整数にブロック
分けするブロック分割手段と、2の拡大ガロア体GF
(2n)を用いて、全ディスクのグループ単位ごとに前
記データ用ディスクに付加するパリティ用ディスクのパ
リティを算出するパリティ算出手段および任意のデータ
用ディスク障害時、障害発生ディスクのデータを未知デ
ータとし、前記拡大ガロア体GF(2n)で定める規則
に従って連立合同式を作成し、この連立合同式から前記
未知データを復元するデータ復元手段を有するRAID
制御装置4とを設けたRAID装置である。
出およびディスク障害時のデータ復元を行うことにあ
る。 【解決手段】 データを複数のデータ用ディスク2a〜
2cに分散保存し、これらデータに冗長するパリティ用
ディスク3a,3bを付加する冗長手段と、データおよ
びパリティ保存領域をビット単位に任意整数にブロック
分けするブロック分割手段と、2の拡大ガロア体GF
(2n)を用いて、全ディスクのグループ単位ごとに前
記データ用ディスクに付加するパリティ用ディスクのパ
リティを算出するパリティ算出手段および任意のデータ
用ディスク障害時、障害発生ディスクのデータを未知デ
ータとし、前記拡大ガロア体GF(2n)で定める規則
に従って連立合同式を作成し、この連立合同式から前記
未知データを復元するデータ復元手段を有するRAID
制御装置4とを設けたRAID装置である。
Description
【0001】
【発明の属する技術分野】本発明は、ディスクの障害に
よって失われるデータを復元するRAID(Redundant
Arrays of Inexpensive Disks)装置および記録媒
体に関する。
よって失われるデータを復元するRAID(Redundant
Arrays of Inexpensive Disks)装置および記録媒
体に関する。
【0002】
【従来の技術】RAID装置は、各種のデータを複数の
安価なディスクに分散し保存することにより、高性能デ
ィスクと同等の性能を得る装置である。
安価なディスクに分散し保存することにより、高性能デ
ィスクと同等の性能を得る装置である。
【0003】しかし、小型のディスクを多数使用すれ
ば、ディスクの故障が増加し、それだけデータが消失す
る危険性も高くなるので、単にディスクの数を増やすだ
けでなく、余分なディスクを用意し、冗長性をもたせる
ことにより、安定性および高性能化を図っている。
ば、ディスクの故障が増加し、それだけデータが消失す
る危険性も高くなるので、単にディスクの数を増やすだ
けでなく、余分なディスクを用意し、冗長性をもたせる
ことにより、安定性および高性能化を図っている。
【0004】RAID装置は、データ用ディスクの他
に、冗長性をもたせるためのパリティ用ディスクが設け
られ、データ用ディスクに障害が発生したとき、冗長性
をもったパリティデータを用いて、障害によって失われ
たデータを復元することが行われている。
に、冗長性をもたせるためのパリティ用ディスクが設け
られ、データ用ディスクに障害が発生したとき、冗長性
をもったパリティデータを用いて、障害によって失われ
たデータを復元することが行われている。
【0005】ところで、この種のRAID装置は、ディ
スクの組み合わせないし負荷分散の観点から、大まかに
は6つのレベルRAID1〜RAID6に分類され、デ
ィスク障害時のデータの復元化を図っている。
スクの組み合わせないし負荷分散の観点から、大まかに
は6つのレベルRAID1〜RAID6に分類され、デ
ィスク障害時のデータの復元化を図っている。
【0006】RAID1は、ミラーリング(mirrorin
g)とも呼ばれる方式であって、この方式は、データ用
ディスクが2つのグループに分けられ、同一のデータを
2つのグループデータディスクに保存する二重化データ
保存方式である。データの書込みは両グループ同時に行
い、データの読み出しは何れかのデータ用ディスクから
行う。その結果、一方のグループデータ用ディスクの障
害時、別のグループに切替えるだけで消失データを簡単
に復元できる。
g)とも呼ばれる方式であって、この方式は、データ用
ディスクが2つのグループに分けられ、同一のデータを
2つのグループデータディスクに保存する二重化データ
保存方式である。データの書込みは両グループ同時に行
い、データの読み出しは何れかのデータ用ディスクから
行う。その結果、一方のグループデータ用ディスクの障
害時、別のグループに切替えるだけで消失データを簡単
に復元できる。
【0007】RAID2は、データを複数のディスクに
ビット単位で分散記録する一方、コンピュータのメモリ
で利用されているエラー訂正コード(ECC)を付加
し、データ用ディスクの障害により失われたデータにつ
いて、エラー訂正コードを用いて復元し信頼性を高める
方式である。
ビット単位で分散記録する一方、コンピュータのメモリ
で利用されているエラー訂正コード(ECC)を付加
し、データ用ディスクの障害により失われたデータにつ
いて、エラー訂正コードを用いて復元し信頼性を高める
方式である。
【0008】RAID3は、ディスクごとに障害を検知
する仕組みがあることを前提とし、ECCを使わずにデ
ータをビット単位で複数のディスクに分散させ、パリテ
ィ用ディスク1台を追加し、データ用ディスクの障害に
より失われたデータについて、ビット単位の排他的論理
和によって障害データ用ディスク1台を復元する方式で
ある。
する仕組みがあることを前提とし、ECCを使わずにデ
ータをビット単位で複数のディスクに分散させ、パリテ
ィ用ディスク1台を追加し、データ用ディスクの障害に
より失われたデータについて、ビット単位の排他的論理
和によって障害データ用ディスク1台を復元する方式で
ある。
【0009】RAID4は、ディスクごとに障害を検知
する仕組みがあることを前提とし、RAID3がデータ
をビット単位で分散させたのに対し、データをブロック
単位で複数のデータ用ディスクに分散させ、パリティ用
ディスク1台を追加し、障害により失われたデータにつ
いて、ブロック単位の排他的論理和によって障害データ
用ディスク1台を復元する方式である。
する仕組みがあることを前提とし、RAID3がデータ
をビット単位で分散させたのに対し、データをブロック
単位で複数のデータ用ディスクに分散させ、パリティ用
ディスク1台を追加し、障害により失われたデータにつ
いて、ブロック単位の排他的論理和によって障害データ
用ディスク1台を復元する方式である。
【0010】RAID5は、同じくディスクごとに障害
を検知する仕組みがあることを前提とし、パリティをブ
ロック単位に全てのディスクに分散保持させ、障害によ
り失われたデータは、ブロック単位の排他的論理和によ
って障害データ用ディスク1台を復元する方式である。
を検知する仕組みがあることを前提とし、パリティをブ
ロック単位に全てのディスクに分散保持させ、障害によ
り失われたデータは、ブロック単位の排他的論理和によ
って障害データ用ディスク1台を復元する方式である。
【0011】RAID6は、RAID5が障害対策に単
一パリティを用いたのに対し、パリティを2次元に拡張
したり、Reed−Solomonコードを用いてエラー訂正機能
を強化することにより、複数台のデータ用ディスク障害
を復元し、信頼性を高める方式である。
一パリティを用いたのに対し、パリティを2次元に拡張
したり、Reed−Solomonコードを用いてエラー訂正機能
を強化することにより、複数台のデータ用ディスク障害
を復元し、信頼性を高める方式である。
【0012】
【発明が解決しようとする課題】従って、以上のような
RAID装置は、RAID1〜RAID6に分類分け
し、それぞれデータ用ディスク障害時のデータ復元を図
っているが、各RAIDにはそれぞれ以下のような問題
が指摘されている。
RAID装置は、RAID1〜RAID6に分類分け
し、それぞれデータ用ディスク障害時のデータ復元を図
っているが、各RAIDにはそれぞれ以下のような問題
が指摘されている。
【0013】先ず、RAID1は必要な記憶容量の2倍
のディスクを用意する必要があること、また当該RAI
D1を含めてECCを使用するRAID2やパリティを
2次元的に拡張し設定するRAID6は、データ用ディ
スクとパリティ用ディスクとの台数比率が各方式ごとに
固定となり、自由なデータ用ディスクとパリティ用ディ
スク台数設定ができないばかりか、一般的にはデータ用
ディスクに対してパリティ用ディスクの占める割合が大
きくなる問題があり、また少ない量のデータ変更がある
場合であっても、多くのパリティを変更しなければなら
ない問題がある。
のディスクを用意する必要があること、また当該RAI
D1を含めてECCを使用するRAID2やパリティを
2次元的に拡張し設定するRAID6は、データ用ディ
スクとパリティ用ディスクとの台数比率が各方式ごとに
固定となり、自由なデータ用ディスクとパリティ用ディ
スク台数設定ができないばかりか、一般的にはデータ用
ディスクに対してパリティ用ディスクの占める割合が大
きくなる問題があり、また少ない量のデータ変更がある
場合であっても、多くのパリティを変更しなければなら
ない問題がある。
【0014】さらに、RAID3〜RAID5は、デー
タ容量を増やすためにデータ用ディスクを追加すること
があるが、データ用ディスク追加にも拘わらず、パリテ
ィを排他的論理和にて計算する方式のものでは、1台の
データ用ディスク容量分である1つのパリティしか設定
できない。
タ容量を増やすためにデータ用ディスクを追加すること
があるが、データ用ディスク追加にも拘わらず、パリテ
ィを排他的論理和にて計算する方式のものでは、1台の
データ用ディスク容量分である1つのパリティしか設定
できない。
【0015】その結果、データ用ディスクが増えたと
き、同時に2台以上のデータ用ディスクの故障が発生す
る確率が高くなるばかりでなく、同時に2台以上のディ
スクが故障したとき、データが復元できなくなり、RA
ID装置の信頼性を損なう問題がある。
き、同時に2台以上のデータ用ディスクの故障が発生す
る確率が高くなるばかりでなく、同時に2台以上のディ
スクが故障したとき、データが復元できなくなり、RA
ID装置の信頼性を損なう問題がある。
【0016】さらに、データ用ディスクを追加してデー
タ消失時のデータの復元を図る手段として、複数台単位
ごとにグループ化し、各グループごとに1つのパリティ
を付け、信頼性を高めることが考えられる。
タ消失時のデータの復元を図る手段として、複数台単位
ごとにグループ化し、各グループごとに1つのパリティ
を付け、信頼性を高めることが考えられる。
【0017】しかし、このような場合でも、同時に2台
以上のデータ用ディスクが故障したとき、グループ内の
故障ディスクが1台であれば復元可能であるが、同一グ
ループ内において2台以上のデータ用ディスクに障害が
発生したとき、失われたデータを復元できない問題があ
る。
以上のデータ用ディスクが故障したとき、グループ内の
故障ディスクが1台であれば復元可能であるが、同一グ
ループ内において2台以上のデータ用ディスクに障害が
発生したとき、失われたデータを復元できない問題があ
る。
【0018】本発明は上記事情にかんがみてなされたも
ので、データディスクに冗長するパリティを容易に算出
し、また同時に複数台のディスクが故障した場合でも、
そのディスク内容を復元可能なRAID装置を提供する
ことにある。
ので、データディスクに冗長するパリティを容易に算出
し、また同時に複数台のディスクが故障した場合でも、
そのディスク内容を復元可能なRAID装置を提供する
ことにある。
【0019】また、本発明の他の目的は、用途等に応じ
て冗長するパリティの個数を容易に変更可能なRAID
装置を提供することにある。
て冗長するパリティの個数を容易に変更可能なRAID
装置を提供することにある。
【0020】さらに、本発明の他の目的は、データ誤り
ディスクを特定し、そのデータの修復を可能とするRA
ID装置を提供することにある。
ディスクを特定し、そのデータの修復を可能とするRA
ID装置を提供することにある。
【0021】本発明の他の目的は、データディスクに冗
長するパリティを算出し、また同時に複数台のディスク
に故障が発生した場合でも、そのディスク内容を復元可
能なプログラムを記録した記録媒体を提供することにあ
る。
長するパリティを算出し、また同時に複数台のディスク
に故障が発生した場合でも、そのディスク内容を復元可
能なプログラムを記録した記録媒体を提供することにあ
る。
【0022】
【課題を解決するための手段】上記課題を解決するため
に、本発明は、複数のデータ用ディスクに複数台のパリ
ティ用ディスクを冗長する冗長手段と、前記データ用デ
ィスクのデータ保存領域およびパリティ用ディスクのパ
リティ保存領域をビット単位に任意整数にブロック分け
するブロック分割手段と、拡大ガロア体GF(2n)
(nは整数)を用いて、前記全ディスクの所定ブロック
どうしで連なるグループ単位ごとに前記データ用ディス
クに付加するパリティ用ディスクのパリティを算出する
パリティ算出手段および前記任意のデータ用ディスク障
害時、障害発生ディスクのデータを未知データとし、前
記拡大ガロア体GF(2n)で定める規則に従って連立
合同式を作成し、この連立合同式から前記未知データを
復元するデータ復元手段を有するRAID制御装置とを
設けたRAID装置である。
に、本発明は、複数のデータ用ディスクに複数台のパリ
ティ用ディスクを冗長する冗長手段と、前記データ用デ
ィスクのデータ保存領域およびパリティ用ディスクのパ
リティ保存領域をビット単位に任意整数にブロック分け
するブロック分割手段と、拡大ガロア体GF(2n)
(nは整数)を用いて、前記全ディスクの所定ブロック
どうしで連なるグループ単位ごとに前記データ用ディス
クに付加するパリティ用ディスクのパリティを算出する
パリティ算出手段および前記任意のデータ用ディスク障
害時、障害発生ディスクのデータを未知データとし、前
記拡大ガロア体GF(2n)で定める規則に従って連立
合同式を作成し、この連立合同式から前記未知データを
復元するデータ復元手段を有するRAID制御装置とを
設けたRAID装置である。
【0023】なお、上記構成においては、パリティを特
定のディスクに固定したが、グループ単位ごとに任意の
ディスクにパリティを分散する構成でもよい。
定のディスクに固定したが、グループ単位ごとに任意の
ディスクにパリティを分散する構成でもよい。
【0024】本発明は、以上のような手段を講じたこと
により、複数のデータ用ディスクにデータが格納された
後、パリティ算出手段にて、これら格納されたデータに
基づき、拡大ガロア体GF(2n)(nは整数)を用い
て、正確にパリティを算出しパリティ用ディスクに設定
できる。
により、複数のデータ用ディスクにデータが格納された
後、パリティ算出手段にて、これら格納されたデータに
基づき、拡大ガロア体GF(2n)(nは整数)を用い
て、正確にパリティを算出しパリティ用ディスクに設定
できる。
【0025】また、データ復元手段においては、データ
用ディスク障害時、2の拡大ガロア体GF(2n)で定
める規則に従い、正常ディスクデータ,パリティと障害
発生ディスクのデータを未知データとして連立合同式を
組み立て、この連立合同式から未知データを復元するの
で、複数台のデータディスクに障害が発生しても、迅
速、かつ、確実に障害ディスクのデータを復元できる。
用ディスク障害時、2の拡大ガロア体GF(2n)で定
める規則に従い、正常ディスクデータ,パリティと障害
発生ディスクのデータを未知データとして連立合同式を
組み立て、この連立合同式から未知データを復元するの
で、複数台のデータディスクに障害が発生しても、迅
速、かつ、確実に障害ディスクのデータを復元できる。
【0026】また、別の発明は、上位機器または自身の
ハードウエアスイッチからRAID制御装置に対して、
冗長するパリティ算出の任意個数を決定し入力するよう
にすれば、用途、目的に応じて、冗長するパリティの個
数を容易に変更可能であり、信頼性の向上およびユーザ
の要望に応じて柔軟に対処できる。
ハードウエアスイッチからRAID制御装置に対して、
冗長するパリティ算出の任意個数を決定し入力するよう
にすれば、用途、目的に応じて、冗長するパリティの個
数を容易に変更可能であり、信頼性の向上およびユーザ
の要望に応じて柔軟に対処できる。
【0027】さらに、別の発明においては、それぞれ複
数のディスクを管理する複数のRAID制御装置を連携
させ、これらRAID制御装置管理下の全ディスクの所
定ブロックをグループ化し、各グループごとにパリティ
を設定するようにすれば、パリティ用ディスクの台数を
減らすことができ、RAID装置全体として冗長するパ
リティの低減化およびコストの削減に大きく貢献する。
数のディスクを管理する複数のRAID制御装置を連携
させ、これらRAID制御装置管理下の全ディスクの所
定ブロックをグループ化し、各グループごとにパリティ
を設定するようにすれば、パリティ用ディスクの台数を
減らすことができ、RAID装置全体として冗長するパ
リティの低減化およびコストの削減に大きく貢献する。
【0028】さらに、別の発明は、複数個のパリティを
算出する場合、2個目以降のパリティについて、既に算
出されたパリティをデータの一部とみなしてパリティを
計算することにより、この計算結果のデータ誤りから容
易に障害ディスクを特定しデータ修復することができ
る。
算出する場合、2個目以降のパリティについて、既に算
出されたパリティをデータの一部とみなしてパリティを
計算することにより、この計算結果のデータ誤りから容
易に障害ディスクを特定しデータ修復することができ
る。
【0029】
【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照して説明する。
て図面を参照して説明する。
【0030】図1は本発明に係わるRAID装置の一実
施の形態を説明する構成図である。
施の形態を説明する構成図である。
【0031】同図において1は例えば3台のデータ用デ
ィスク2a,2b,2cおよび2台のパリティ用ディス
ク3a,3bを備えたRAID装置であって、これは伝
送ライン5を介して上位コンピュータ6と接続されてい
る。
ィスク2a,2b,2cおよび2台のパリティ用ディス
ク3a,3bを備えたRAID装置であって、これは伝
送ライン5を介して上位コンピュータ6と接続されてい
る。
【0032】このコンピュータ6は、例えばRAID装
置1においてデータ処理上必要なプログラムなどを当該
RAID装置1にダウンロードしたり、さらには当該R
AID装置1に必要な指示,命令を与える機能をもって
いる。
置1においてデータ処理上必要なプログラムなどを当該
RAID装置1にダウンロードしたり、さらには当該R
AID装置1に必要な指示,命令を与える機能をもって
いる。
【0033】前記RAID装置1は、上述したデータ用
ディスク2a,2b,2cおよびパリティ用ディスク3
a,3bの他、RAID制御装置4が設けられている。
ディスク2a,2b,2cおよびパリティ用ディスク3
a,3bの他、RAID制御装置4が設けられている。
【0034】前記各ディスク2a〜2c,3a,3b
は、4ビット単位でブロック分割され、かつ、1ディス
ク当たり6ブロックからなっている。
は、4ビット単位でブロック分割され、かつ、1ディス
ク当たり6ブロックからなっている。
【0035】これらディスク2a〜2c,3a,3bの
各ブロックのうち、先頭(上位)ブロックどうしの5ブ
ロックd11,d12,d13,p14,p15を1番
目グループ、上位から2つ目のブロックどうしの5ブロ
ックd21,d22,d23,p24,p25を2番目
グループ、…と順次下位ブロックに対してグループ名が
付けられている。
各ブロックのうち、先頭(上位)ブロックどうしの5ブ
ロックd11,d12,d13,p14,p15を1番
目グループ、上位から2つ目のブロックどうしの5ブロ
ックd21,d22,d23,p24,p25を2番目
グループ、…と順次下位ブロックに対してグループ名が
付けられている。
【0036】また、各ディスク2a〜2c,3a,3b
は4ビット単位で分割されて1ブロックとしているの
で、各ブロック内のデータは0〜15までの16種類の
データが格納される。
は4ビット単位で分割されて1ブロックとしているの
で、各ブロック内のデータは0〜15までの16種類の
データが格納される。
【0037】前記RAID装置4は、外部から直接読み
取り或いはコンピュータ6からダウンロードされたプロ
グラムに従って、次のような手段を実行する。
取り或いはコンピュータ6からダウンロードされたプロ
グラムに従って、次のような手段を実行する。
【0038】すなわち、このRAID装置4は、2の拡
大ガロア体GF(2n)を用いて、データ用ディスク2
a〜2cに付加されるパリティ用ディスク3a,3bの
ブロック単位に保存すべきパリティを算出するパリティ
算出手段と、任意のディスク障害時、その障害発生ディ
スクのデータを未知データ(未知数)として2の拡大ガ
ロア体GF(2n)の規則に従って連立合同式を組み立
て、この組み立てられた連立合同式を解くことにより、
障害発生ディスクのデータを復元するデータ復元手段を
有するものである。
大ガロア体GF(2n)を用いて、データ用ディスク2
a〜2cに付加されるパリティ用ディスク3a,3bの
ブロック単位に保存すべきパリティを算出するパリティ
算出手段と、任意のディスク障害時、その障害発生ディ
スクのデータを未知データ(未知数)として2の拡大ガ
ロア体GF(2n)の規則に従って連立合同式を組み立
て、この組み立てられた連立合同式を解くことにより、
障害発生ディスクのデータを復元するデータ復元手段を
有するものである。
【0039】先ず、 RAID装置4によるパリティの
算出例について説明する。
算出例について説明する。
【0040】各ディスクは4ビット単位でブロック分割
されているので、各ブロックには0〜15までの16種
類のデータが格納可能である。
されているので、各ブロックには0〜15までの16種
類のデータが格納可能である。
【0041】そこで、パリティの算出は、16種類のデ
ータを扱える拡大ガロア体GF(extension Galois fi
eld)(24)を用いて計算する。この拡大ガロア体は、定
義された種類のデータ内で加算(減算)、乗算および除算
を行うことができる。加算(減算)は排他的論理和を用
いて計算し、乗算は図2に示す拡大ガロア体GF(24)の
乗算結果図を用いて計算する。なお、除算は図2の乗算
結果図を逆引きすることにより引用する。
ータを扱える拡大ガロア体GF(extension Galois fi
eld)(24)を用いて計算する。この拡大ガロア体は、定
義された種類のデータ内で加算(減算)、乗算および除算
を行うことができる。加算(減算)は排他的論理和を用
いて計算し、乗算は図2に示す拡大ガロア体GF(24)の
乗算結果図を用いて計算する。なお、除算は図2の乗算
結果図を逆引きすることにより引用する。
【0042】この図2の乗算結果を表す図は、GF
(2)上の4次の規約多項式であるX4+X+1を用い
てGF(24)を計算した表である。
(2)上の4次の規約多項式であるX4+X+1を用い
てGF(24)を計算した表である。
【0043】次に、簡単な拡大ガロア体の説明および図
2の乗算結果を表す図の作成例について説明する。
2の乗算結果を表す図の作成例について説明する。
【0044】ガロア体GF(2)は、0と1の2種類が
元であり、その間で加減乗除を行うことができる。これ
に対し、GF(2m)では2m個の元があり、その間で自
由に加減乗除を行うことができる。2mは、2のm乗を
表している。
元であり、その間で加減乗除を行うことができる。これ
に対し、GF(2m)では2m個の元があり、その間で自
由に加減乗除を行うことができる。2mは、2のm乗を
表している。
【0045】ところで、拡大ガロア体における4次の乗
算について定義する。
算について定義する。
【0046】GF(2)の体となる0,1の2種類の元
において、図2の乗算結果であるGF(2)上の4次の
規約多項式 X4+X+1=0 の根を考えると、0,1の何れの元を代入しても根が存
在しない。そこで、このような規約多項式の根の一つを
αと定義し体を拡大してみる。
において、図2の乗算結果であるGF(2)上の4次の
規約多項式 X4+X+1=0 の根を考えると、0,1の何れの元を代入しても根が存
在しない。そこで、このような規約多項式の根の一つを
αと定義し体を拡大してみる。
【0047】その結果、αは、α4+α+1=0を満た
すので、 α4=α+1 の関係式が得られ、αで表わされる4次以上の関係式は
全て4次以下に置換することができる。
すので、 α4=α+1 の関係式が得られ、αで表わされる4次以上の関係式は
全て4次以下に置換することができる。
【0048】そこで、16種類のデータをαのn次で考
えると、以下に示すような関係式で表すことができ、1
5種類の関係式以外には現れない。
えると、以下に示すような関係式で表すことができ、1
5種類の関係式以外には現れない。
【0049】 1 α 2 α2 3 α3 4 α4=α+1 5 α5=α2+α 6 α6=α3+α2 7 α7=α4+α3=α3+α+1 8 α8=α4+α2+α=α2+1 9 α9=α3+α 10 α10=α4+α2=α2+α+1 11 α11=α3+α2+α 12 α12=α4+α3+α2=α3+α2+α+1 13 α13=α4+α3+α2+α=α3+α2+1 14 α14=α4+α3+α=α3+1 15 α15=α4+α+1 16 α16=α 以上の関係式から、当然αのn次どうしを乗算しても、
15種類の何れかの関係式の中に納まることになる。例
えば、 α7+α14=α21=α6=α3+α2 となり、15種類の中の式α6に納まる。この関係式か
らデータの種類「1」〜「15」で一巡するので、α
16=αとなり、「1」にもどる。
15種類の何れかの関係式の中に納まることになる。例
えば、 α7+α14=α21=α6=α3+α2 となり、15種類の中の式α6に納まる。この関係式か
らデータの種類「1」〜「15」で一巡するので、α
16=αとなり、「1」にもどる。
【0050】ここで、上記する15種類の関係式につ
き、1〜15に対応させることにより、図2に示す乗算
結果図を作成できる。この図2はαの指数を2進数の桁
に対応させて数値化する。
き、1〜15に対応させることにより、図2に示す乗算
結果図を作成できる。この図2はαの指数を2進数の桁
に対応させて数値化する。
【0051】因みに、上記例におけるαのn次の乗算
は、以下のような計算として扱える。
は、以下のような計算として扱える。
【0052】11×9=12 但し、本文中においては、通常の計算と区別する意味か
ら、 11※9≡12 のような記号で表す。なお、図2は、1〜15に加えて
0を含め、0〜15の乗算結果を表す図となっている。
ら、 11※9≡12 のような記号で表す。なお、図2は、1〜15に加えて
0を含め、0〜15の乗算結果を表す図となっている。
【0053】従って、図2は、GF(2)上の4次の規
約多項式X4+X+1を用いて、GF(24)による乗
算結果であるが、以下に述べる合同式についても、特に
ことわりがない限り、全てGF(24)で計算している
ものとする。
約多項式X4+X+1を用いて、GF(24)による乗
算結果であるが、以下に述べる合同式についても、特に
ことわりがない限り、全てGF(24)で計算している
ものとする。
【0054】そこで、各ディスクd11,d12,d1
3の1番目グループに記録するデータに関し、1つ目の
パリティp14の計算は、各データに1の係数を乗算し
た後に加算することにより求める。係数を1とするパリ
ティの算出は従来のRAIDにおけるパリティ計算の場
合と同じである。具体的には、 となる。上式において記号⊥は排他的論理和で計算する
ことを意味し、記号※は図2の乗算結果を用いた乗算を
意味し、記号≡は合同を意味する。
3の1番目グループに記録するデータに関し、1つ目の
パリティp14の計算は、各データに1の係数を乗算し
た後に加算することにより求める。係数を1とするパリ
ティの算出は従来のRAIDにおけるパリティ計算の場
合と同じである。具体的には、 となる。上式において記号⊥は排他的論理和で計算する
ことを意味し、記号※は図2の乗算結果を用いた乗算を
意味し、記号≡は合同を意味する。
【0055】次に、各ディスクd11,d12,d13
の1番目グループに記録するデータに関し、2つ目のパ
リティp15の計算は各データに任意の異なる係数を乗
算し、この乗算により得られる値を加算することにより
求める。
の1番目グループに記録するデータに関し、2つ目のパ
リティp15の計算は各データに任意の異なる係数を乗
算し、この乗算により得られる値を加算することにより
求める。
【0056】 2※d11⊥3※d12⊥4※d13≡p15 今、具体例として、例えば各データd11,d12,d
13が次のような値と仮定することにより、パリティを
算出し、パリティブロックに設定する。
13が次のような値と仮定することにより、パリティを
算出し、パリティブロックに設定する。
【0057】 以下、同様にして2番目グループ以降についても同様に
パリティを算出し、パリティブロックに設定する。
パリティを算出し、パリティブロックに設定する。
【0058】次に、RAID制御装置によるデータ復元
処理例について説明する。
処理例について説明する。
【0059】今、全てのデータ用ディスク2a〜2cが
故障していない場合、またはパリティ用ディスク3a,
3bが故障している場合、単にデータ用ディスクのデー
タを読み出すことにより、記録したデータを知ることが
できる。また、1台のみのデータ用ディスクが故障した
場合には、従来のRAID方式と同じ排他的論理和によ
り容易に障害ディスクのデータが分かる。
故障していない場合、またはパリティ用ディスク3a,
3bが故障している場合、単にデータ用ディスクのデー
タを読み出すことにより、記録したデータを知ることが
できる。また、1台のみのデータ用ディスクが故障した
場合には、従来のRAID方式と同じ排他的論理和によ
り容易に障害ディスクのデータが分かる。
【0060】そこで、以降,2台同時期にデータ用ディ
スクが故障した場合のデータ復元例について説明する。
スクが故障した場合のデータ復元例について説明する。
【0061】今、5台のディスク中2番目と3番目のデ
ィスクが同時期に故障し、1番目グループのデータd1
2,d13が失われたとする。この状態において1番目
グループのパリティを含むd11,p14,p15は、
ディスク2a,3a,3bが故障していないので、デー
タの読み出しは可能である。
ィスクが同時期に故障し、1番目グループのデータd1
2,d13が失われたとする。この状態において1番目
グループのパリティを含むd11,p14,p15は、
ディスク2a,3a,3bが故障していないので、デー
タの読み出しは可能である。
【0062】そこで、失われたデータd12,d13を
未知データとして合同式の左辺に置き、読み出し可能な
正常なデータを右辺に置き、合同式を作成すれば次の2
つの合同式を作成することができる。
未知データとして合同式の左辺に置き、読み出し可能な
正常なデータを右辺に置き、合同式を作成すれば次の2
つの合同式を作成することができる。
【0063】 このようにして得られる2つの合同式に対し、ディスク
から正常なデータd11,p14,p15を読み出して
式に代入し後、これら2つの連立合同式から未知データ
d12,d13を求める。この未知データを求める手順
は、一般の連立方程式の解法と全く同様の手順で行う。
そこで、各式に式番号( )を付加して説明を進めるこ
ととする。
から正常なデータd11,p14,p15を読み出して
式に代入し後、これら2つの連立合同式から未知データ
d12,d13を求める。この未知データを求める手順
は、一般の連立方程式の解法と全く同様の手順で行う。
そこで、各式に式番号( )を付加して説明を進めるこ
ととする。
【0064】 d12⊥ d13≡ 4⊥ 5≡1 ……(1) 3※d12⊥4※d13≡ 15⊥2※5≡5 ……(2) ここで、4※(1)式を計算し、下記する(3)式を得
る。
る。
【0065】 4※d12⊥4※d13≡4※1 4※d12⊥4※d13≡4 ……(3) そこで、(3)式⊥(2)式を計算し、未知データd1
3を消去することにより、(4)式を作成する。
3を消去することにより、(4)式を作成する。
【0066】 4※d12⊥3※d12⊥4※d13⊥4※d13≡4⊥5 (4⊥3)※d12⊥ (4⊥4)※d13≡4⊥5 7※d12⊥ ≡1 ……(4) ここで、図2の乗算結果から、 7※6≡1 となることが分かるので、6※(4)式を計算し、未知
データd12の係数を1とすることにより、d12の値
を求める。
データd12の係数を1とすることにより、d12の値
を求める。
【0067】 6※7※d12≡6※1 d12≡6 ……(5) さらに、前記(5)式を(1)式或いは(2)式に設定
して同様に未知データd13を求める。ここでの説明
は、(2)式に(5)式を代入する方法により下記する
(6)式を作成し、未知データd13を求める。
して同様に未知データd13を求める。ここでの説明
は、(2)式に(5)式を代入する方法により下記する
(6)式を作成し、未知データd13を求める。
【0068】 3※d12⊥4※d13≡ 5 ……(2) 3※6 ⊥4※d13≡ 5 10⊥4※d13≡ 5 4※d13≡ 5⊥10 4※d13≡15 ……(6) ここで、図2に示す乗算結果から、4※13≡1が分か
るので、13※(6)式を計算し、未知データd13の
係数を1とすることにより、d13の値を求めることが
できる。
るので、13※(6)式を計算し、未知データd13の
係数を1とすることにより、d13の値を求めることが
できる。
【0069】 13※4※d13≡13※15 d13≡7 ……(7) 以上のような解法手順を踏むことにより、(5)式、
(7)式によりそれぞれ未知データd12=6、d13
=7が求まり、始めに設定した仮定値と一致するので、
未知データが正しく求められていることが分かり、障害
ディスクのデータを復元されたことが分かる。
(7)式によりそれぞれ未知データd12=6、d13
=7が求まり、始めに設定した仮定値と一致するので、
未知データが正しく求められていることが分かり、障害
ディスクのデータを復元されたことが分かる。
【0070】そこで、以下、前述と同様な手順に従っ
て、2番目以降の全てのグループにおける障害ディスク
のデータを復元化する。
て、2番目以降の全てのグループにおける障害ディスク
のデータを復元化する。
【0071】なお、以上述べた具体例は、冗長するパリ
ティの個数が2個の場合を例に上げたが、例えば冗長す
るパリティの個数がk個の場合、k個の合同式を組み立
てることができるので、k個まで未知データを求めるこ
とができるので、k個のデータが消失しても復元するこ
とができる。
ティの個数が2個の場合を例に上げたが、例えば冗長す
るパリティの個数がk個の場合、k個の合同式を組み立
てることができるので、k個まで未知データを求めるこ
とができるので、k個のデータが消失しても復元するこ
とができる。
【0072】さらに、上記実施の形態では、拡大ガロア
体GF(2n)のnを4として取り扱ったために、合同
式のデータに付加する係数が1〜15までの15個まで
しか扱えなかったので、最大1グループ内のデータ数
は、15以内であった。しかし、nをより大きな値とす
ることにより、より大きな値の係数まで扱うことがで
き、非常に大きなデータ数を扱うことができる。
体GF(2n)のnを4として取り扱ったために、合同
式のデータに付加する係数が1〜15までの15個まで
しか扱えなかったので、最大1グループ内のデータ数
は、15以内であった。しかし、nをより大きな値とす
ることにより、より大きな値の係数まで扱うことがで
き、非常に大きなデータ数を扱うことができる。
【0073】さらに、RAID制御装置4としては、ハ
ードウエアにより構成することもできる。すなわち、拡
大ガロア体GF(2n)を用いて前述する要領によりデ
ータ用ディスクの各グループごとに付加するパリティデ
ータを算出する論理回路要素(ハードウエア)からなる
パリティ算出手段と、任意のディスク障害時、その障害
発生ディスクのデータを未知数として拡大ガロア体GF
(2n)の規則に従って連立合同式を組み立て、この組
み立てられた連立合同式を解くことにより、障害発生デ
ィスクのデータを復元する論理回路要素(ハードウエ
ア)からなるデータ復元手段とにより構成すれば、パリ
ティ算出およびデータ復元の計算を高速度で行うことが
できる。
ードウエアにより構成することもできる。すなわち、拡
大ガロア体GF(2n)を用いて前述する要領によりデ
ータ用ディスクの各グループごとに付加するパリティデ
ータを算出する論理回路要素(ハードウエア)からなる
パリティ算出手段と、任意のディスク障害時、その障害
発生ディスクのデータを未知数として拡大ガロア体GF
(2n)の規則に従って連立合同式を組み立て、この組
み立てられた連立合同式を解くことにより、障害発生デ
ィスクのデータを復元する論理回路要素(ハードウエ
ア)からなるデータ復元手段とにより構成すれば、パリ
ティ算出およびデータ復元の計算を高速度で行うことが
できる。
【0074】(その他の実施の形態) (1) 図1に示す実施の形態では、データを記録する
データ用ディスクとは別に特定のパリティ用ディスクを
設けた構成としたが、図3に示すように例えば5台のデ
ィスク7a〜7eをそれぞれ6ブロックに分割し、各デ
ィスク7a〜7eの上位ブロックを1番目グループ、次
のブロックを2番目グループ、以下,順次下位のブロッ
クに対してグループ名を付けていく。その他の構成は図
1と同様であるので省略する この実施の形態において特に異なるところは、5台のデ
ィスク7a〜7eの各グループごとにそれぞれ任意の2
つのブロックをパリティブロックとして設定することに
ある。
データ用ディスクとは別に特定のパリティ用ディスクを
設けた構成としたが、図3に示すように例えば5台のデ
ィスク7a〜7eをそれぞれ6ブロックに分割し、各デ
ィスク7a〜7eの上位ブロックを1番目グループ、次
のブロックを2番目グループ、以下,順次下位のブロッ
クに対してグループ名を付けていく。その他の構成は図
1と同様であるので省略する この実施の形態において特に異なるところは、5台のデ
ィスク7a〜7eの各グループごとにそれぞれ任意の2
つのブロックをパリティブロックとして設定することに
ある。
【0075】因みに、図3に示すディスク7a〜7eの
1番目グループではディスク7d,7eのブロックにパ
リティp14,p15を設定し、2番目グループではデ
ィスク7c,7dのブロックにパリティp24,p25
を設定する。その他のグループでも同様にパリティを設
定する。
1番目グループではディスク7d,7eのブロックにパ
リティp14,p15を設定し、2番目グループではデ
ィスク7c,7dのブロックにパリティp24,p25
を設定する。その他のグループでも同様にパリティを設
定する。
【0076】その結果、1番目グループのデータd11
の一部書き換えたとき、それに伴ってパリティp14,
p15を変更する必要がある。以下、2番目以降グルー
プのデータの一部を変更した場合でも、同様にパリティ
を変更することになる。
の一部書き換えたとき、それに伴ってパリティp14,
p15を変更する必要がある。以下、2番目以降グルー
プのデータの一部を変更した場合でも、同様にパリティ
を変更することになる。
【0077】しかし、各グループごとに個別に異なるデ
ィスクにパリティを設定する構成とすれば、次のような
メリットがある。一般に、データの一部を変更した場
合、幾つかのグループに対してまとめてパリティを変更
しなければならない場合が多いが、各グループのパリテ
ィの格納位置が図3に示すごとく異なるディスクに格納
する構成となっていれば、通常,パリティ書き換えのた
めにディスク要求が集中してディスク要求待ちとなる
が、本実施の形態ではディスク要求が集中することがな
くなり、ディスク要求待ちを解消できるメリットがあ
る。
ィスクにパリティを設定する構成とすれば、次のような
メリットがある。一般に、データの一部を変更した場
合、幾つかのグループに対してまとめてパリティを変更
しなければならない場合が多いが、各グループのパリテ
ィの格納位置が図3に示すごとく異なるディスクに格納
する構成となっていれば、通常,パリティ書き換えのた
めにディスク要求が集中してディスク要求待ちとなる
が、本実施の形態ではディスク要求が集中することがな
くなり、ディスク要求待ちを解消できるメリットがあ
る。
【0078】(2) 次に、本発明に係わる記録媒体の
発明について説明する。
発明について説明する。
【0079】図4は記録媒体をもったRAID装置の全
体構成を示す図である。
体構成を示す図である。
【0080】このRAID装置は、キーボード,マウス
などの入力装置11と、表示装置12と、後記するパリ
ティ算出用およびデータ復元用プログラムを記録する記
録媒体13と、この記録媒体13に記録されるパリティ
算出用プログラムおよびデータ復元用プログラムの何れ
かを読み出して所定の機能を実現するCPUで構成され
たデータ処理部14と、プログラムデータ,処理途中デ
ータ、処理結果のデータその他プログラム処理上必要な
データを一時記憶するデータバッファ15と、データ処
理部14から導出されるバスラインに接続される複数の
ディスク161〜16nとによって構成されている。
などの入力装置11と、表示装置12と、後記するパリ
ティ算出用およびデータ復元用プログラムを記録する記
録媒体13と、この記録媒体13に記録されるパリティ
算出用プログラムおよびデータ復元用プログラムの何れ
かを読み出して所定の機能を実現するCPUで構成され
たデータ処理部14と、プログラムデータ,処理途中デ
ータ、処理結果のデータその他プログラム処理上必要な
データを一時記憶するデータバッファ15と、データ処
理部14から導出されるバスラインに接続される複数の
ディスク161〜16nとによって構成されている。
【0081】なお、記録媒体としては、一般的には磁気
ディスクが用いられるが、それ以外にも例えば磁気テー
プ、CD−ROM、DVD−ROM、フロッピーディス
ク、MO、CD−R、メモリカードなどを用いてもよ
い。
ディスクが用いられるが、それ以外にも例えば磁気テー
プ、CD−ROM、DVD−ROM、フロッピーディス
ク、MO、CD−R、メモリカードなどを用いてもよ
い。
【0082】前記データ処理部14は、パリティ算出お
よびデータ復元に際し、次のような機能を実現する。
よびデータ復元に際し、次のような機能を実現する。
【0083】先ず、パリティ算出処理にあっては、各デ
ータ用ディスクのグループ内データを順次読み出すデー
タ読み出し機能と、当該グループ内の各ブロックのデー
タに対し、拡大ガロア体GF(2n)に従って所定の係
数を乗算するとともに、これら乗算値を加算するパリテ
ィ取得機能と、このパリティ取得機能によって取得した
パリティを該当グループ内の該当ブロックに設定するパ
リティ設定機能と、上記一連の機能を、パリティ格納用
ブロックおよび全グループについて繰り返し実行する機
能とを実現するものである。
ータ用ディスクのグループ内データを順次読み出すデー
タ読み出し機能と、当該グループ内の各ブロックのデー
タに対し、拡大ガロア体GF(2n)に従って所定の係
数を乗算するとともに、これら乗算値を加算するパリテ
ィ取得機能と、このパリティ取得機能によって取得した
パリティを該当グループ内の該当ブロックに設定するパ
リティ設定機能と、上記一連の機能を、パリティ格納用
ブロックおよび全グループについて繰り返し実行する機
能とを実現するものである。
【0084】一方、データ復元処理にあっては、ディス
ク故障時に正常なデータ用およびパリティ用ディスクの
データおよびパリティを読み出すデータ読み出し機能
と、これら読み出したデータおよびパリティを用いてデ
ィスク故障台数に応じた連立合同式を作成し未知データ
を求めるデータ復元機能と、これら一連の機能について
データ用ディスクのブロックおよび全グループについて
繰り返してデータを復元する機能とを実現するものであ
る。
ク故障時に正常なデータ用およびパリティ用ディスクの
データおよびパリティを読み出すデータ読み出し機能
と、これら読み出したデータおよびパリティを用いてデ
ィスク故障台数に応じた連立合同式を作成し未知データ
を求めるデータ復元機能と、これら一連の機能について
データ用ディスクのブロックおよび全グループについて
繰り返してデータを復元する機能とを実現するものであ
る。
【0085】次に、記録媒体13に記録されたプログラ
ムの処理例について、パリティ算出処理およびデータ復
元処理を参照して説明する。
ムの処理例について、パリティ算出処理およびデータ復
元処理を参照して説明する。
【0086】(a) パリティ算出処理例について(図
5参照)。
5参照)。
【0087】データ処理部14は、データディスクの各
グループまたは全グループの各ブロックにデータを格納
した後、例えば入力装置11からパリティ算出の指示を
入力すると、記録媒体13からパリティ算出用プログラ
ムを読み出し、以下のような処理を実行する。
グループまたは全グループの各ブロックにデータを格納
した後、例えば入力装置11からパリティ算出の指示を
入力すると、記録媒体13からパリティ算出用プログラ
ムを読み出し、以下のような処理を実行する。
【0088】すなわち、データ処理部14は、データバ
ッファ15などの不要データを消去する初期化処理を行
った後、データバッファ15内カウンタメモリにディス
クの1番目グループに相当するデータ「i=1」をセッ
トする。しかる後、各データ用ディスクの1番目グルー
プに属する各ブロックのデータ読み出してデータバッフ
ァ15に記憶する(S1〜S3,データ読み出し機
能)。
ッファ15などの不要データを消去する初期化処理を行
った後、データバッファ15内カウンタメモリにディス
クの1番目グループに相当するデータ「i=1」をセッ
トする。しかる後、各データ用ディスクの1番目グルー
プに属する各ブロックのデータ読み出してデータバッフ
ァ15に記憶する(S1〜S3,データ読み出し機
能)。
【0089】さらに、データ処理部14は、拡大ガロア
体GF(2n)に従い、読み出した1番目グループ内の
各データに予め定める係数を乗算し、各データごとの乗
算値データを求める。そして、これら各乗算値を加算す
ることによりパリティを求める(S4,S5,パリティ
取得機能)。
体GF(2n)に従い、読み出した1番目グループ内の
各データに予め定める係数を乗算し、各データごとの乗
算値データを求める。そして、これら各乗算値を加算す
ることによりパリティを求める(S4,S5,パリティ
取得機能)。
【0090】以上のようにしてパリティを求めたなら
ば、パリティディスクの予め定める1つのブロックに設
定する(S6,パリティ設定機能)。
ば、パリティディスクの予め定める1つのブロックに設
定する(S6,パリティ設定機能)。
【0091】しかる後、1番目グループ内の全パリティ
ブロックへのパリティ設定完了かを判断し、未完了の場
合にはステップS3に戻って同様の処理を実行する。一
方、1番目グループ内のパリティ設定完了の場合には、
全グループへのパリティ設定完了かを判断し(S8)、
未だ完了していない場合にはカウンタメモリに+1をイ
ンクリメントし(S9)、ステップS3に戻り、同様の
処理を繰り返し実行する。
ブロックへのパリティ設定完了かを判断し、未完了の場
合にはステップS3に戻って同様の処理を実行する。一
方、1番目グループ内のパリティ設定完了の場合には、
全グループへのパリティ設定完了かを判断し(S8)、
未だ完了していない場合にはカウンタメモリに+1をイ
ンクリメントし(S9)、ステップS3に戻り、同様の
処理を繰り返し実行する。
【0092】(b) データ復元処理例について(図6
参照)。
参照)。
【0093】データ処理部14は、入力装置11からの
データ復元指示またはディスク故障時に自動的に立ち上
がって記録媒体13からデータ復元用プログラムを読み
取り、次のような処理を実行する。
データ復元指示またはディスク故障時に自動的に立ち上
がって記録媒体13からデータ復元用プログラムを読み
取り、次のような処理を実行する。
【0094】すなわち、データ処理部14は、データバ
ッファ15などの不要データを消去する初期化処理を行
った後、データディスク故障を確認した後、データバッ
ファ15内カウンタメモリにディスクの1番目グループ
に相当するデータ「i=1」をセットする。しかる後、
各データ用ディスクの1番目グループに属する各ブロッ
クのデータ読み出してデータバッファ15に記憶する
(S11〜S14,データ読み出し機能)。
ッファ15などの不要データを消去する初期化処理を行
った後、データディスク故障を確認した後、データバッ
ファ15内カウンタメモリにディスクの1番目グループ
に相当するデータ「i=1」をセットする。しかる後、
各データ用ディスクの1番目グループに属する各ブロッ
クのデータ読み出してデータバッファ15に記憶する
(S11〜S14,データ読み出し機能)。
【0095】しかる後、データ処理部14は、失われた
データを未知データと正常なデータとを用いて、拡大ガ
ロア体GF(2n)の規則に従い、未知データを左辺に
置き、正常なデータを右辺に置き、データディスク故障
台数に応じた連立合同式を作成し、この連立合同式を解
くことにより未知データを求め、データバッファ15に
格納する(S15、データ復元機能)。
データを未知データと正常なデータとを用いて、拡大ガ
ロア体GF(2n)の規則に従い、未知データを左辺に
置き、正常なデータを右辺に置き、データディスク故障
台数に応じた連立合同式を作成し、この連立合同式を解
くことにより未知データを求め、データバッファ15に
格納する(S15、データ復元機能)。
【0096】さらに、1番目グループ内の故障データデ
ィスクのデータ全部復元かを判断し(S16)、当該グ
ループの故障データ全部復元でないとき、既に求めた未
知データを連立合同式に代入し、他の未知データを求め
る(S15,S16)。
ィスクのデータ全部復元かを判断し(S16)、当該グ
ループの故障データ全部復元でないとき、既に求めた未
知データを連立合同式に代入し、他の未知データを求め
る(S15,S16)。
【0097】さらに、ステップS16において当該グル
ープ内故障データを全部復元したと判断したとき、全グ
ループデータ復元完了かを判断し(S17)、未グルー
プがあれば、カウンタメモリに+1をインクリメントし
た後(S18)、ステップS12に戻り、同様の処理を
繰り返し実行し、全部の消失データを復元する。
ープ内故障データを全部復元したと判断したとき、全グ
ループデータ復元完了かを判断し(S17)、未グルー
プがあれば、カウンタメモリに+1をインクリメントし
た後(S18)、ステップS12に戻り、同様の処理を
繰り返し実行し、全部の消失データを復元する。
【0098】従って、以上のような実施の形態によれ
ば、データ処理部14は、記録媒体13に記録される図
5のパリティ算出用プログラム、図6に示すデータ復元
用プログラムを読み取って実行すれば、各ディスクにデ
ータを格納後に容易、かつ、自動的にパリティを算出し
て設定でき、また複数台のデータディスクの故障時に失
われたデータを迅速に復元させることができる。
ば、データ処理部14は、記録媒体13に記録される図
5のパリティ算出用プログラム、図6に示すデータ復元
用プログラムを読み取って実行すれば、各ディスクにデ
ータを格納後に容易、かつ、自動的にパリティを算出し
て設定でき、また複数台のデータディスクの故障時に失
われたデータを迅速に復元させることができる。
【0099】なお、図4に示す記録媒体13のプログラ
ムはアプリケーションソフトとして考えているが、OS
の一部として使用してもよい。この場合には、記録媒体
13に記録されるプログラムはデータ処理部14または
上位コンピュータ6により読み出し可能とするものであ
る。
ムはアプリケーションソフトとして考えているが、OS
の一部として使用してもよい。この場合には、記録媒体
13に記録されるプログラムはデータ処理部14または
上位コンピュータ6により読み出し可能とするものであ
る。
【0100】(3) さらに、上記実施の形態では、冗
長するパリティ算出の個数は各グループごとに2つのブ
ロックと固定されていたが、この冗長するパリティ算出
の個数をソフトウエアまたはハードウエア的に決定して
もよい。
長するパリティ算出の個数は各グループごとに2つのブ
ロックと固定されていたが、この冗長するパリティ算出
の個数をソフトウエアまたはハードウエア的に決定して
もよい。
【0101】図7はかかる実施の形態例を示す構成図で
ある。
ある。
【0102】このRAIDシステムは、伝送ライン20
上にコンピュータを含むコントローラ21およびRAI
D装置22が接続されている。
上にコンピュータを含むコントローラ21およびRAI
D装置22が接続されている。
【0103】このコンピュータを含むコントローラ21
は、データ処理上必要なプログラムをRAID装置22
にダウンロードしたり、当該RAID装置22に必要な
指示,命令を与える機能をもっている。
は、データ処理上必要なプログラムをRAID装置22
にダウンロードしたり、当該RAID装置22に必要な
指示,命令を与える機能をもっている。
【0104】前記RAID装置22は、図1や図3と同
様なデータ配列構成をもつパリティを格納する複数のデ
ィスク231〜23nと、プログラム処理開始,プログ
ラム処理上必要な指示、さらには設定情報を入力するキ
ーボードその他一般的に使用されている入力機器を含む
ハードウエアスイッチ24と、拡大ガロア体GF
(2 n)を用いて前述する要領によりデータ用ディスク
の各グループごとに付加するパリティデータを算出する
ソフトウエア的またはハードウエア的に構成されるパリ
ティ算出手段および任意のディスク障害時、その障害発
生ディスクのデータを未知数として拡大ガロア体GF
(2n)の規則に従って連立合同式を組み立て、この組
み立てられた連立合同式を解くことにより、障害発生デ
ィスクのデータを復元するソフトウエア的またはハード
ウエア的に構成されるデータ復元手段をもつRAID制
御装置25とが設けられている。
様なデータ配列構成をもつパリティを格納する複数のデ
ィスク231〜23nと、プログラム処理開始,プログ
ラム処理上必要な指示、さらには設定情報を入力するキ
ーボードその他一般的に使用されている入力機器を含む
ハードウエアスイッチ24と、拡大ガロア体GF
(2 n)を用いて前述する要領によりデータ用ディスク
の各グループごとに付加するパリティデータを算出する
ソフトウエア的またはハードウエア的に構成されるパリ
ティ算出手段および任意のディスク障害時、その障害発
生ディスクのデータを未知数として拡大ガロア体GF
(2n)の規則に従って連立合同式を組み立て、この組
み立てられた連立合同式を解くことにより、障害発生デ
ィスクのデータを復元するソフトウエア的またはハード
ウエア的に構成されるデータ復元手段をもつRAID制
御装置25とが設けられている。
【0105】ところで、以上のようなシステムにおい
て、オペレータがコンピュータを含むコントローラ21
側から冗長するパリティ算出の個数を入力し、RAID
装置22にダウンロードするか、或いはオペレータがR
AID装置22側のハードウエアスイッチ24からスイ
ッチ操作によって冗長するパリティ算出の個数を入力す
る。
て、オペレータがコンピュータを含むコントローラ21
側から冗長するパリティ算出の個数を入力し、RAID
装置22にダウンロードするか、或いはオペレータがR
AID装置22側のハードウエアスイッチ24からスイ
ッチ操作によって冗長するパリティ算出の個数を入力す
る。
【0106】RAID制御装置25は、これら各グルー
プごと或いは全グループに対して入力されたパリティ算
出個数に従ってパリティを算出する。
プごと或いは全グループに対して入力されたパリティ算
出個数に従ってパリティを算出する。
【0107】従って、以上のような実施の形態によれ
ば、オペレータがコントローラ21またはハードウエア
スイッチ24から冗長するパリティ算出の個数を入力す
るようにすれば、用途、目的に応じて自在に冗長するパ
リティの個数を容易に変更でき、信頼性の向上および柔
軟性を確保できる。
ば、オペレータがコントローラ21またはハードウエア
スイッチ24から冗長するパリティ算出の個数を入力す
るようにすれば、用途、目的に応じて自在に冗長するパ
リティの個数を容易に変更でき、信頼性の向上および柔
軟性を確保できる。
【0108】(4) 前述する実施の形態は、1台のR
AID制御装置6,25が複数のディスク(2a〜2
c,3a,3b)、(7a〜7e)または(231〜2
3n)を管理し、パリティ算出および失われたデータの
復元化を実施する構成としたが、例えば図8に示すよう
に複数のRAID制御装置25a,25b,25cがそ
れぞれ個別にディスクを管理する場合、例えばRAID
制御装置25aがディスク23a1,23a2、RAI
D制御装置25bがディスク23b1〜23b3、RA
ID制御装置25cがディスク23c1〜23c3を管
理するような構成のものがある。
AID制御装置6,25が複数のディスク(2a〜2
c,3a,3b)、(7a〜7e)または(231〜2
3n)を管理し、パリティ算出および失われたデータの
復元化を実施する構成としたが、例えば図8に示すよう
に複数のRAID制御装置25a,25b,25cがそ
れぞれ個別にディスクを管理する場合、例えばRAID
制御装置25aがディスク23a1,23a2、RAI
D制御装置25bがディスク23b1〜23b3、RA
ID制御装置25cがディスク23c1〜23c3を管
理するような構成のものがある。
【0109】このようなRAID装置22においては、
複数のRAID制御装置25a〜25c相互にデータ授
受可能に連携させ、これらRAID制御装置25a〜2
5c管理下のディスク23a1,23a2,23b1〜
23b3,23c1〜23c3全体について、上位ブロ
ックから順次ブロック26化し、これらグループ単位で
データdの書込みおよび読み出しの他、冗長するパリテ
ィpの算出やディスク故障により失われたデータの復元
化処理を行うものである。
複数のRAID制御装置25a〜25c相互にデータ授
受可能に連携させ、これらRAID制御装置25a〜2
5c管理下のディスク23a1,23a2,23b1〜
23b3,23c1〜23c3全体について、上位ブロ
ックから順次ブロック26化し、これらグループ単位で
データdの書込みおよび読み出しの他、冗長するパリテ
ィpの算出やディスク故障により失われたデータの復元
化処理を行うものである。
【0110】なお、パリティの算出およびデータの復元
化は前述した通りである。
化は前述した通りである。
【0111】このような実施の形態によれば、各RAI
D制御装置ごとに必ずしも冗長するパリティのために1
台分以上のパリティディスクを設置しなければならない
制限がなくなり、RAID装置全体として冗長するパリ
ティを低減化できる。
D制御装置ごとに必ずしも冗長するパリティのために1
台分以上のパリティディスクを設置しなければならない
制限がなくなり、RAID装置全体として冗長するパリ
ティを低減化できる。
【0112】(5) 図1に示すRAID装置において
は、各ディスクのデータ例えばd11,d12,d13
を用いて、それぞれパリティp14,p15を個別に算
出したが、例えば以下のような手段によりパリティを算
出することにより、障害ディスク位置を把握し、データ
を修復するようにしてもよい。
は、各ディスクのデータ例えばd11,d12,d13
を用いて、それぞれパリティp14,p15を個別に算
出したが、例えば以下のような手段によりパリティを算
出することにより、障害ディスク位置を把握し、データ
を修復するようにしてもよい。
【0113】具体的には、パリティp14,p15の算
出するに際し、パリティp14を算出した後、パリティ
p15の算出に当たっては既に算出済みのパリティp1
4もデータの一部とみなして各データに異なる係数をか
けて以下のように算出する。
出するに際し、パリティp14を算出した後、パリティ
p15の算出に当たっては既に算出済みのパリティp1
4もデータの一部とみなして各データに異なる係数をか
けて以下のように算出する。
【0114】 d11⊥ d12⊥ d13 ≡p14 d11⊥ d12⊥ d13⊥ p14≡0 ……(8) 2※d11⊥3※d12⊥4※d13⊥5※p14≡p15 ……(9) ここで、d11,d12,d13,p14,p15の何
れか1つの情報に誤りe1が発生したとすると、p15
に誤りが発生した場合を除き、前記(8)式の右辺に誤
りe1が検出される。
れか1つの情報に誤りe1が発生したとすると、p15
に誤りが発生した場合を除き、前記(8)式の右辺に誤
りe1が検出される。
【0115】さらに、前記(9)式においてパリティを
計算すると、p15を除いて各データの係数に応じた誤
りが検出されるので、データの係数を計算することによ
りd11,d12,d13,p14の何れかのディスク
に誤りが発生している可能性があることを特定できる。
計算すると、p15を除いて各データの係数に応じた誤
りが検出されるので、データの係数を計算することによ
りd11,d12,d13,p14の何れかのディスク
に誤りが発生している可能性があることを特定できる。
【0116】今、例えば各データd11,d12,d1
3,p14が以下の値のとき、データd13に誤りe1
が発生したと想定して計算してみる。
3,p14が以下の値のとき、データd13に誤りe1
が発生したと想定して計算してみる。
【0117】d11≡11 d12≡12 d13≡13 e1 ≡ 8 mは各データに付けた異なる係数値とする。
【0118】パリティp14,p15の算出は、 11⊥ 12⊥ 13 ≡p14≡10 2※11⊥3※12⊥4※13⊥5※10 ≡p15≡ 7 ここで、d13にe1≡8のエラーが発生し、d13の
値が13から5に変化したとする。
値が13から5に変化したとする。
【0119】 11⊥ 12⊥ 5⊥ 10≡8≡ e1……(10) 2※11⊥3※12⊥4※5⊥5※10≡1≡m※e1⊥p15 5⊥ 7⊥ 7⊥ 4≡1≡m※e1⊥ 7…(11) この(10)式の両辺は、データに誤りが発生しなけれ
ば、前記(8)式で設定したように0とならなければな
らないが、誤りが発生した場合には0とならない。前記
(11)式はデータに誤りがなければ、前記(9)式で
設定したパリティp15と一致しなければならないが、
誤りが発生した場合には各データの係数mに応じたm※
e1の誤りが含まれた状態で出てくる。
ば、前記(8)式で設定したように0とならなければな
らないが、誤りが発生した場合には0とならない。前記
(11)式はデータに誤りがなければ、前記(9)式で
設定したパリティp15と一致しなければならないが、
誤りが発生した場合には各データの係数mに応じたm※
e1の誤りが含まれた状態で出てくる。
【0120】前記(10)式および(11)式により、
mを計算し特定することにより、どのデータに誤りがあ
ったかを把握でき、さらに障害を起こしたディスクを特
定することができる。
mを計算し特定することにより、どのデータに誤りがあ
ったかを把握でき、さらに障害を起こしたディスクを特
定することができる。
【0121】 8≡ e1 ……(10′) 1≡m※e1⊥ 7 ……(11′) この(10′)式を(11′)式に代入し整理すると、 8※m≡ 7⊥ 1≡ 6 ……(12) となる。図2の乗算結果図から、 8※15≡ 1 となるように、(12)式の両辺に係数15を乗算する
とともに、このmの係数を1とし、mの値を求める。
とともに、このmの係数を1とし、mの値を求める。
【0122】15※8※m≡15※6 m≡4 となり、d13の係数であることが分かる。ここで、さ
らに検算のために、4※(8)式⊥(9)式を用いて、
データd13の要因を排除したところの下記(13)式
を作成し検証する。
らに検算のために、4※(8)式⊥(9)式を用いて、
データd13の要因を排除したところの下記(13)式
を作成し検証する。
【0123】 4※d11 ⊥ 4※d12 ⊥ 4※d13 ⊥ 4※p14≡ 0 2※d11 ⊥ 3※d12 ⊥ 4※d13 ⊥ 5※p14≡p15 6※d11 ⊥ 7※d12 ⊥ 1※p14≡p15 ……(13) 6※11 ⊥ 7※12 ⊥ 1※ 10≡7 15 ⊥ 2 ⊥ 10≡7 7≡7 前記(13)式において両辺の値が一致しないとき、始
めに想定された1個所の誤りが否定されたこととなり、
複数箇所のデータに誤りがあることを判断できる。同様
の理由により、d13以外のd11,d12,p14に
ついても、誤り箇所を特定できることが分かる。
めに想定された1個所の誤りが否定されたこととなり、
複数箇所のデータに誤りがあることを判断できる。同様
の理由により、d13以外のd11,d12,p14に
ついても、誤り箇所を特定できることが分かる。
【0124】また、パリティp15に1個所誤りが発生
した場合、前記(13)式で作成されたデータd13の
要因を排除した方法で各データそれぞれの要因を排除
し、誤りがどのデータの要因を排除しても誤りが一定と
なる場合には、パリティp15自身に誤りがあると判断
でき、一方、異なる誤りが算出された場合には2個所以
上に誤りがあると判断できる。
した場合、前記(13)式で作成されたデータd13の
要因を排除した方法で各データそれぞれの要因を排除
し、誤りがどのデータの要因を排除しても誤りが一定と
なる場合には、パリティp15自身に誤りがあると判断
でき、一方、異なる誤りが算出された場合には2個所以
上に誤りがあると判断できる。
【0125】誤り箇所が1箇所に特定できた場合、図1
で説明した手順により容易に誤り箇所のデータを復元で
きる。
で説明した手順により容易に誤り箇所のデータを復元で
きる。
【0126】以上のようにして、冗長するパリティの個
数が2つの場合、1個所のデータの復元が可能となる。
一般に、冗長するパリティの個数が1つ増える毎にデー
タに付加されたと考えられる誤り要因を1つずつ排除で
きるので、 冗長するパリティ個数−1 のデータ訂正が可能なソフトウエアのRAID装置を提
供できる。
数が2つの場合、1個所のデータの復元が可能となる。
一般に、冗長するパリティの個数が1つ増える毎にデー
タに付加されたと考えられる誤り要因を1つずつ排除で
きるので、 冗長するパリティ個数−1 のデータ訂正が可能なソフトウエアのRAID装置を提
供できる。
【0127】従って、以上のような実施の形態によれ
ば、ディスクに誤り検出機能がない場合でも容易に利用
できる他、かかる誤り検出機能をもつことにより、より
信頼性の高い装置を実現できる。
ば、ディスクに誤り検出機能がない場合でも容易に利用
できる他、かかる誤り検出機能をもつことにより、より
信頼性の高い装置を実現できる。
【0128】その他、本発明は、その要旨を逸脱しない
範囲で、種々変形して実施することが可能である。
範囲で、種々変形して実施することが可能である。
【0129】
【発明の効果】以上説明したように本発明によれば、拡
大ガロア体GF(2n)を用いて、複数のディスクにデ
ータを格納した後に迅速にパリティを算出でき、また同
時に複数台のディスクが故障した場合でも、そのディス
ク内容を容易に復元することができる。
大ガロア体GF(2n)を用いて、複数のディスクにデ
ータを格納した後に迅速にパリティを算出でき、また同
時に複数台のディスクが故障した場合でも、そのディス
ク内容を容易に復元することができる。
【0130】また、用途,目的に応じて、冗長するパリ
ティの個数を任意に変更可能であり、信頼性の向上およ
び柔軟性に富んだ装置を実現できる。
ティの個数を任意に変更可能であり、信頼性の向上およ
び柔軟性に富んだ装置を実現できる。
【0131】さらに、複数のRAID制御装置管理下に
ある各ディスク全体をグループ化し、各グループごとに
冗長するパリティを設定するので、必ずしも冗長するパ
リティのために1台分以上のパリティディスクを設置し
なければならない制限がなくなり、RAID装置全体と
して冗長するパリティを低減化できる。
ある各ディスク全体をグループ化し、各グループごとに
冗長するパリティを設定するので、必ずしも冗長するパ
リティのために1台分以上のパリティディスクを設置し
なければならない制限がなくなり、RAID装置全体と
して冗長するパリティを低減化できる。
【0132】さらに、パリティの算出から障害ディスク
を容易に見つけ出し、データの修復を行うことができ
る。
を容易に見つけ出し、データの修復を行うことができ
る。
【0133】さらに、本発明の記録媒体においては、パ
リティの算出および同時に複数台のディスク故障時にそ
のディスク内容を正確に復元可能なプログラムを記録し
た記録媒体を提供できる。
リティの算出および同時に複数台のディスク故障時にそ
のディスク内容を正確に復元可能なプログラムを記録し
た記録媒体を提供できる。
【図1】 本発明に係わるRAID装置の一実施の形態
を示す構成図。
を示す構成図。
【図2】 拡大ガロア体GF(2n)による乗算結果を
説明する図。
説明する図。
【図3】 本発明に係わるRAID装置の他の実施の形
態を説明するものであって、グループ単位ごとに任意の
ブロックにパリティを設定する図。
態を説明するものであって、グループ単位ごとに任意の
ブロックにパリティを設定する図。
【図4】 本発明に係わる記録媒体を説明するコンピュ
ータシステムの構成図。
ータシステムの構成図。
【図5】 図4に示す記録媒体に記録されるプログラム
の処理例を説明するフローチャート。
の処理例を説明するフローチャート。
【図6】 図4に示す記録媒体に記録されるプログラム
の他の処理例を説明するフローチャート。
の他の処理例を説明するフローチャート。
【図7】 本発明に係わるRAID装置の他の実施の形
態を示す構成図。
態を示す構成図。
【図8】 本発明に係わるRAID装置のさらに他の実
施の形態を示す構成図。
施の形態を示す構成図。
1,22…RAID装置 2a,2b,2c…データ用ディスク 3a,3b…パリティ用ディスク 4,25a,25b,25c…RAID制御装置 6…上位コンピュータ 7a〜7e、161〜16n,23a1,23a2、2
3b1〜23b3、23c1〜23c3…ディスク 13…記録媒体 21…コンピュータを含むコントローラ 22…記録媒体 26…グループ
3b1〜23b3、23c1〜23c3…ディスク 13…記録媒体 21…コンピュータを含むコントローラ 22…記録媒体 26…グループ
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G11B 19/04 501 G11B 19/04 501G 501D 20/18 570 20/18 570Z
Claims (7)
- 【請求項1】 データを複数のデータ用ディスクに分散
保存するRAID装置において、 前記複数のデータ用ディスクに複数台のパリティ用ディ
スクを冗長する冗長手段と、 前記データ用ディスクのデータ保存領域およびパリティ
用ディスクのパリティ保存領域をビット単位に任意整数
にブロック分けするブロック分割手段と、 拡大ガロア体GF(2n)(nは整数)を用いて、前記
全ディスクの所定ブロックどうしで連なるグループ単位
ごとに前記データ用ディスクに付加するパリティ用ディ
スクのパリティを算出するパリティ算出手段および前記
任意のデータ用ディスク障害時、障害発生ディスクのデ
ータを未知データとし、前記拡大ガロア体GF(2n)
で定める規則に従って連立合同式を作成し、この連立合
同式から前記未知データを復元するデータ復元手段を有
するRAID制御装置とを備えたことを特徴とするRA
ID装置。 - 【請求項2】 請求項1に記載するRAID装置におい
て、 前記パリティを特定のディスクに固定せずに、前記グル
ープ単位ごとに任意のディスクに分散するパリティ分散
手段を設けたことを特徴とするRAID装置。 - 【請求項3】 複数のデータ用ディスクのデータを冗長
するパリティを算出するパリティ算出用プログラムを記
録する記録媒体であって、コンピュータに、 各データ用ディスクのグループ単位ごとのデータを読み
出すデータ読み出し機能と、このグループ単位ごとのデ
ータに対し、拡大ガロア体GF(2n)に従って所定の
係数を乗算するとともに、これら乗算値を加算してパリ
ティを算出するパリティ算出機能と、このパリティ算出
機能によって算出されるパリティを該当グループ内の所
定のブロックに設定するパリティ設定機能と、上記一連
の機能を、全グループについて繰り返し実行する機能と
を実現させるためにパリティ算出用プログラムを記録し
たコンピュータ読み取り可能な記録媒体。 - 【請求項4】 データ用ディスク障害時にデータを復元
するデータ復元用プログラムを記録する記録媒体であっ
て、コンピュータに、 ディスク故障時に正常なデータ用ディスクのデータおよ
びパリティ用ディスクのパリティを読み出すデータ読み
出し機能と、これら読み出したデータおよびパリティを
用いて、拡大ガロア体GF(2n)の規則に基づいてデ
ィスク故障台数に応じた連立合同式を作成し未知データ
を求めるデータ復元機能と、これら一連の機能について
全グループについて繰り返してデータを復元する機能と
を実現させるためにデータ復元用プログラムを記録した
コンピュータ読み取り可能な記録媒体。 - 【請求項5】 請求項1または請求項2に記載するRA
ID装置において、 上位機器または自身のハードウエアスイッチから前記R
AID制御装置に対して、冗長するパリティ算出の任意
個数を決定し入力する手段を設けたことを特徴とするR
AID装置。 - 【請求項6】 請求項1,請求項2および請求項5の何
れか1つに記載のRAID装置において、 それぞれ複数のディスクを管理する複数のRAID制御
装置を連携させ、これらRAID制御装置管理下の全デ
ィスクの所定ブロックをグループ化し、各グループごと
にパリティを設定する手段を設けたことを特徴とするR
AID装置。 - 【請求項7】 請求項1,請求項2,請求項5および請
求項6の何れか1つに記載のRAID装置において、 複数個のパリティを算出する場合、2個目以降のパリテ
ィについて、既に算出されたパリティをデータの一部と
みなしてパリティを計算し、この計算結果のデータ誤り
から障害ディスクを特定し、データを修復する手段を設
けたことを特徴とするRAID装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11056883A JP2000259359A (ja) | 1999-03-04 | 1999-03-04 | Raid装置および記録媒体 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11056883A JP2000259359A (ja) | 1999-03-04 | 1999-03-04 | Raid装置および記録媒体 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2000259359A true JP2000259359A (ja) | 2000-09-22 |
Family
ID=13039830
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP11056883A Pending JP2000259359A (ja) | 1999-03-04 | 1999-03-04 | Raid装置および記録媒体 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2000259359A (ja) |
Cited By (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100447267B1 (ko) * | 2001-11-30 | 2004-09-07 | 한국전자통신연구원 | 레이드 시스템의 분산 제어장치 |
| JP2005149224A (ja) * | 2003-11-17 | 2005-06-09 | Nec Corp | ディスクアレイ装置,raid用パリティデータ生成回路およびガロア体乗算回路 |
| WO2006062269A1 (en) * | 2004-12-06 | 2006-06-15 | Electronics And Telecommunications Research Institute | Data placement method using distributed parity in divided block disk array, and method for controlling block read/write function in divided block distributed parity disk array |
| KR100701563B1 (ko) | 2005-03-15 | 2007-03-30 | 후지쯔 가부시끼가이샤 | 스토리지 제어 장치 및 방법 |
| KR100703016B1 (ko) | 2004-12-14 | 2007-04-06 | 후지쯔 가부시끼가이샤 | 스토리지 제어 장치 및 방법 |
| WO2008027734A1 (en) * | 2006-08-31 | 2008-03-06 | Intel Corporation | Apparatus and method for generating a galois-field syndrome |
| JP2008118623A (ja) * | 2006-09-05 | 2008-05-22 | Thomson Licensing | 分散記憶装置へのマルチメディアデータの割当て方法 |
| WO2008079624A1 (en) * | 2006-12-19 | 2008-07-03 | Intel Corporation | High performance raid-6 system architecture with pattern matching |
| US7398459B2 (en) | 2003-01-20 | 2008-07-08 | Samsung Electronics Co., Ltd. | Parity storing method and error block recovering method in external storage subsystem |
| EP1947771A1 (en) | 2007-01-19 | 2008-07-23 | Fujitsu Limited | Raid system and galois field product computation method |
| EP1953920A2 (en) | 2007-01-31 | 2008-08-06 | Fujitsu Ltd. | Raid system and data recovery apparatus using galois field |
| US7738657B2 (en) | 2006-08-31 | 2010-06-15 | Intel Corporation | System and method for multi-precision division |
| US7797612B2 (en) | 2006-12-29 | 2010-09-14 | Intel Corporation | Storage accelerator |
| US8195978B2 (en) | 2008-05-16 | 2012-06-05 | Fusion-IO. Inc. | Apparatus, system, and method for detecting and replacing failed data storage |
| US8281227B2 (en) | 2009-05-18 | 2012-10-02 | Fusion-10, Inc. | Apparatus, system, and method to increase data integrity in a redundant storage system |
| 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 |
| JP2013077062A (ja) * | 2011-09-29 | 2013-04-25 | Nec Corp | ディスクアレイ装置およびディスクアレイ制御用プログラム |
| US8775733B2 (en) | 2011-08-30 | 2014-07-08 | Hitachi, Ltd. | Distribution design for fast raid rebuild architecture based on load to limit number of redundant storage devices |
-
1999
- 1999-03-04 JP JP11056883A patent/JP2000259359A/ja active Pending
Cited By (32)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100447267B1 (ko) * | 2001-11-30 | 2004-09-07 | 한국전자통신연구원 | 레이드 시스템의 분산 제어장치 |
| US7398459B2 (en) | 2003-01-20 | 2008-07-08 | Samsung Electronics Co., Ltd. | Parity storing method and error block recovering method in external storage subsystem |
| JP2005149224A (ja) * | 2003-11-17 | 2005-06-09 | Nec Corp | ディスクアレイ装置,raid用パリティデータ生成回路およびガロア体乗算回路 |
| US7681111B2 (en) | 2003-11-17 | 2010-03-16 | Nec Corporation | Disk array device, parity data generating circuit for RAID and Galois field multiplying circuit |
| WO2006062269A1 (en) * | 2004-12-06 | 2006-06-15 | Electronics And Telecommunications Research Institute | Data placement method using distributed parity in divided block disk array, and method for controlling block read/write function in divided block distributed parity disk array |
| US7433999B2 (en) | 2004-12-14 | 2008-10-07 | Fujitsu Limited | Storage controller and method for storage control with non-contiguous stored parities |
| KR100703016B1 (ko) | 2004-12-14 | 2007-04-06 | 후지쯔 가부시끼가이샤 | 스토리지 제어 장치 및 방법 |
| KR100701563B1 (ko) | 2005-03-15 | 2007-03-30 | 후지쯔 가부시끼가이샤 | 스토리지 제어 장치 및 방법 |
| US7809979B2 (en) | 2005-03-15 | 2010-10-05 | Fujitsu Limited | Storage control apparatus and method |
| US7738657B2 (en) | 2006-08-31 | 2010-06-15 | Intel Corporation | System and method for multi-precision division |
| WO2008027734A1 (en) * | 2006-08-31 | 2008-03-06 | Intel Corporation | Apparatus and method for generating a galois-field syndrome |
| US7607068B2 (en) | 2006-08-31 | 2009-10-20 | Intel Corporation | Apparatus and method for generating a Galois-field syndrome |
| JP2008118623A (ja) * | 2006-09-05 | 2008-05-22 | Thomson Licensing | 分散記憶装置へのマルチメディアデータの割当て方法 |
| US7664915B2 (en) | 2006-12-19 | 2010-02-16 | Intel Corporation | High performance raid-6 system architecture with pattern matching |
| WO2008079624A1 (en) * | 2006-12-19 | 2008-07-03 | Intel Corporation | High performance raid-6 system architecture with pattern matching |
| US7797612B2 (en) | 2006-12-29 | 2010-09-14 | Intel Corporation | Storage accelerator |
| US8131794B2 (en) | 2007-01-19 | 2012-03-06 | Fujitsu Limited | RAID system and Galois field product computation method |
| EP1947771A1 (en) | 2007-01-19 | 2008-07-23 | Fujitsu Limited | Raid system and galois field product computation method |
| JP2008186400A (ja) * | 2007-01-31 | 2008-08-14 | Fujitsu Ltd | Raid装置及びガロア体を用いたデータ復元装置 |
| US7984361B2 (en) | 2007-01-31 | 2011-07-19 | Fujitsu Limited | Raid system and data recovery apparatus using galois field |
| EP1953920A2 (en) | 2007-01-31 | 2008-08-06 | Fujitsu Ltd. | Raid system and data recovery apparatus using galois field |
| US8195978B2 (en) | 2008-05-16 | 2012-06-05 | Fusion-IO. Inc. | Apparatus, system, and method for detecting and replacing failed data storage |
| US8412978B2 (en) | 2008-05-16 | 2013-04-02 | Fusion-Io, Inc. | Apparatus, system, and method for managing data storage |
| 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 |
| US8495460B2 (en) | 2009-05-18 | 2013-07-23 | Fusion-Io, Inc. | Apparatus, system, and method for reconfiguring an array of storage elements |
| US8738991B2 (en) | 2009-05-18 | 2014-05-27 | Fusion-Io, Inc. | Apparatus, system, and method for reconfiguring an array of storage elements |
| US8832528B2 (en) | 2009-05-18 | 2014-09-09 | Fusion-Io, Inc. | Apparatus, system, and method to increase data integrity in a redundant storage system |
| US9306599B2 (en) | 2009-05-18 | 2016-04-05 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for reconfiguring an array of storage elements |
| US8775733B2 (en) | 2011-08-30 | 2014-07-08 | Hitachi, Ltd. | Distribution design for fast raid rebuild architecture based on load to limit number of redundant storage devices |
| JP2013077062A (ja) * | 2011-09-29 | 2013-04-25 | Nec Corp | ディスクアレイ装置およびディスクアレイ制御用プログラム |
| US9081738B2 (en) | 2011-09-29 | 2015-07-14 | Nec Corporation | Disk array device, disk array control method, and recording medium |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2000259359A (ja) | Raid装置および記録媒体 | |
| CN109388515B (zh) | 用于存储数据的系统及方法 | |
| CN100388221C (zh) | 磁盘阵列从奇偶校验更新操作中断中恢复的方法和系统 | |
| CN100385405C (zh) | 利用磁盘阵列奇偶校验的增强错误标识系统和方法 | |
| US7529970B2 (en) | System and method for improving the performance of operations requiring parity reads in a storage array system | |
| CN102483686B (zh) | 数据存储系统和用于操作数据存储系统的方法 | |
| JP5923964B2 (ja) | ディスクアレイ装置、制御装置、およびプログラム | |
| JP4668970B2 (ja) | フォールトトレラントデータストレージシステムにおけるブロックレベルのデータ破損の検出および訂正 | |
| US8839028B1 (en) | Managing data availability in storage systems | |
| JP4905161B2 (ja) | Raid装置及びガロア体を用いたデータ復元装置 | |
| US8001352B1 (en) | Networked raid in a virtualized cluster | |
| US20090055682A1 (en) | Data storage systems and methods having block group error correction for repairing unrecoverable read errors | |
| US9405623B2 (en) | Method of, and apparatus for, layout rectification of erasure encoded storage systems | |
| US9606866B2 (en) | Method of, and apparatus for, improved data recovery in a storage system | |
| CN101059751B (zh) | 磁盘阵列恢复数据时增加磁盘访问并行性的方法和系统 | |
| JP2009514056A (ja) | データ・ストレージ・アレイ | |
| KR20120086695A (ko) | Raid 그룹의 여러 스트라이핑을 갖는 메모리 및 그 수행방법 | |
| CN100390746C (zh) | 提高磁盘阵列奇偶校验更新的缓冲器利用率的方法和系统 | |
| US7577866B1 (en) | Techniques for fault tolerant data storage | |
| JP2013506191A (ja) | 最大n個までの記憶装置故障からの復旧を可能にするnウェイパリティ技術 | |
| US7934120B2 (en) | Storing data redundantly | |
| US6766480B2 (en) | Using task description blocks to maintain information regarding operations | |
| CN114996047A (zh) | 一种数据存储方法、系统、设备以及介质 | |
| US20050278476A1 (en) | Method, apparatus and program storage device for keeping track of writes in progress on multiple controllers during resynchronization of RAID stripes on failover | |
| US8489976B2 (en) | Storage controlling device and storage controlling method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20040119 |
|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20040119 |