JP2000259359A - Raid device and recording medium - Google Patents
Raid device and recording mediumInfo
- 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; CALCULATING OR 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
Description
【0001】[0001]
【発明の属する技術分野】本発明は、ディスクの障害に
よって失われるデータを復元するRAID(Redundant
Arrays of Inexpensive Disks)装置および記録媒
体に関する。The present invention relates to a RAID (Redundant) for restoring data lost due to a disk failure.
Arrays of Inexpensive Disks) device and recording medium.
【0002】[0002]
【従来の技術】RAID装置は、各種のデータを複数の
安価なディスクに分散し保存することにより、高性能デ
ィスクと同等の性能を得る装置である。2. Description of the Related Art A RAID device is a device that obtains the same performance as a high-performance disk by dispersing and storing various data on a plurality of inexpensive disks.
【0003】しかし、小型のディスクを多数使用すれ
ば、ディスクの故障が増加し、それだけデータが消失す
る危険性も高くなるので、単にディスクの数を増やすだ
けでなく、余分なディスクを用意し、冗長性をもたせる
ことにより、安定性および高性能化を図っている。However, if a large number of small disks are used, the number of disk failures increases and the risk of data loss increases accordingly. Therefore, it is not only necessary to increase the number of disks, but also to prepare extra disks. By providing redundancy, stability and high performance are achieved.
【0004】RAID装置は、データ用ディスクの他
に、冗長性をもたせるためのパリティ用ディスクが設け
られ、データ用ディスクに障害が発生したとき、冗長性
をもったパリティデータを用いて、障害によって失われ
たデータを復元することが行われている。A RAID device is provided with a parity disk for providing redundancy in addition to a data disk. When a failure occurs in a data disk, the RAID device uses the parity data having redundancy to cause a failure. Restoring lost data has been done.
【0005】ところで、この種のRAID装置は、ディ
スクの組み合わせないし負荷分散の観点から、大まかに
は6つのレベルRAID1〜RAID6に分類され、デ
ィスク障害時のデータの復元化を図っている。By the way, this type of RAID device is roughly classified into six levels RAID1 to RAID6 from the viewpoint of disk combination or load distribution, and attempts to restore data in the event of a disk failure.
【0006】RAID1は、ミラーリング(mirrorin
g)とも呼ばれる方式であって、この方式は、データ用
ディスクが2つのグループに分けられ、同一のデータを
2つのグループデータディスクに保存する二重化データ
保存方式である。データの書込みは両グループ同時に行
い、データの読み出しは何れかのデータ用ディスクから
行う。その結果、一方のグループデータ用ディスクの障
害時、別のグループに切替えるだけで消失データを簡単
に復元できる。RAID 1 is a mirroring (mirrorin)
g), which is a dual data storage method in which a data disk is divided into two groups and the same data is stored in two group data disks. Data writing is performed simultaneously for both groups, and data reading is performed from any data disk. As a result, when one group data disk fails, the lost data can be easily restored simply by switching to another group.
【0007】RAID2は、データを複数のディスクに
ビット単位で分散記録する一方、コンピュータのメモリ
で利用されているエラー訂正コード(ECC)を付加
し、データ用ディスクの障害により失われたデータにつ
いて、エラー訂正コードを用いて復元し信頼性を高める
方式である。[0007] In RAID 2, data is distributed and recorded on a plurality of disks in units of bits, while an error correction code (ECC) used in a memory of a computer is added, and data lost due to a failure of a data disk is removed. This is a method for improving reliability by restoring using an error correction code.
【0008】RAID3は、ディスクごとに障害を検知
する仕組みがあることを前提とし、ECCを使わずにデ
ータをビット単位で複数のディスクに分散させ、パリテ
ィ用ディスク1台を追加し、データ用ディスクの障害に
より失われたデータについて、ビット単位の排他的論理
和によって障害データ用ディスク1台を復元する方式で
ある。RAID 3 is based on the premise that there is a mechanism for detecting a failure for each disk, disperses data to a plurality of disks in bit units without using ECC, adds one parity disk, and Is a method of restoring one failed data disk by exclusive OR in bit units for data lost due to the failure.
【0009】RAID4は、ディスクごとに障害を検知
する仕組みがあることを前提とし、RAID3がデータ
をビット単位で分散させたのに対し、データをブロック
単位で複数のデータ用ディスクに分散させ、パリティ用
ディスク1台を追加し、障害により失われたデータにつ
いて、ブロック単位の排他的論理和によって障害データ
用ディスク1台を復元する方式である。RAID 4 is based on the premise that there is a mechanism for detecting a failure for each disk. RAID 3 distributes data in units of bits, whereas RAID 4 distributes data in units of blocks and distributes data to a plurality of data disks. In this method, one disk for failure data is added, and for data lost due to a failure, one disk for failure data is restored by exclusive OR in block units.
【0010】RAID5は、同じくディスクごとに障害
を検知する仕組みがあることを前提とし、パリティをブ
ロック単位に全てのディスクに分散保持させ、障害によ
り失われたデータは、ブロック単位の排他的論理和によ
って障害データ用ディスク1台を復元する方式である。RAID5 is based on the premise that there is also a mechanism for detecting a failure for each disk, and parity is distributed and held in all disks in block units, and data lost due to the failure is subjected to exclusive OR operation in block units. Restores one failed data disk.
【0011】RAID6は、RAID5が障害対策に単
一パリティを用いたのに対し、パリティを2次元に拡張
したり、Reed−Solomonコードを用いてエラー訂正機能
を強化することにより、複数台のデータ用ディスク障害
を復元し、信頼性を高める方式である。[0011] RAID6 uses a single parity for failure countermeasures, whereas RAID5 uses a two-dimensional parity and enhances the error correction function using a Reed-Solomon code, so that a plurality of data sets can be used. This is a method for restoring disk failures for use and improving reliability.
【0012】[0012]
【発明が解決しようとする課題】従って、以上のような
RAID装置は、RAID1〜RAID6に分類分け
し、それぞれデータ用ディスク障害時のデータ復元を図
っているが、各RAIDにはそれぞれ以下のような問題
が指摘されている。Accordingly, the above-described RAID apparatuses are classified into RAID1 to RAID6 and data restoration is performed in the event of a data disk failure. Problems have been pointed out.
【0013】先ず、RAID1は必要な記憶容量の2倍
のディスクを用意する必要があること、また当該RAI
D1を含めてECCを使用するRAID2やパリティを
2次元的に拡張し設定するRAID6は、データ用ディ
スクとパリティ用ディスクとの台数比率が各方式ごとに
固定となり、自由なデータ用ディスクとパリティ用ディ
スク台数設定ができないばかりか、一般的にはデータ用
ディスクに対してパリティ用ディスクの占める割合が大
きくなる問題があり、また少ない量のデータ変更がある
場合であっても、多くのパリティを変更しなければなら
ない問題がある。First, it is necessary to prepare a disk twice as large as the required storage capacity for RAID1.
RAID2, which uses ECC including D1, and RAID6, which expands and sets parity two-dimensionally, have a fixed ratio of the number of data disks and parity disks for each system, and allow free data disks and parity disks. Not only the number of disks cannot be set, but also the parity disk occupies a larger percentage of the data disk, and many parities are changed even when there is a small amount of data change. There are issues that must be addressed.
【0014】さらに、RAID3〜RAID5は、デー
タ容量を増やすためにデータ用ディスクを追加すること
があるが、データ用ディスク追加にも拘わらず、パリテ
ィを排他的論理和にて計算する方式のものでは、1台の
データ用ディスク容量分である1つのパリティしか設定
できない。In RAID3 to RAID5, a data disk may be added in order to increase the data capacity. However, despite the addition of the data disk, a method of calculating parity by exclusive OR is used. Only one parity, which is the capacity of one data disk, can be set.
【0015】その結果、データ用ディスクが増えたと
き、同時に2台以上のデータ用ディスクの故障が発生す
る確率が高くなるばかりでなく、同時に2台以上のディ
スクが故障したとき、データが復元できなくなり、RA
ID装置の信頼性を損なう問題がある。As a result, when the number of data disks increases, the probability that two or more data disks fail at the same time increases, and when two or more disks fail simultaneously, data can be restored. Gone, RA
There is a problem that the reliability of the ID device is impaired.
【0016】さらに、データ用ディスクを追加してデー
タ消失時のデータの復元を図る手段として、複数台単位
ごとにグループ化し、各グループごとに1つのパリティ
を付け、信頼性を高めることが考えられる。Further, as a means for restoring data in the event of data loss by adding a data disk, it is conceivable to group the data into a plurality of units and attach one parity to each group to improve reliability. .
【0017】しかし、このような場合でも、同時に2台
以上のデータ用ディスクが故障したとき、グループ内の
故障ディスクが1台であれば復元可能であるが、同一グ
ループ内において2台以上のデータ用ディスクに障害が
発生したとき、失われたデータを復元できない問題があ
る。However, even in such a case, when two or more data disks fail at the same time, if one failed disk in the group can be restored, the data can be restored. There is a problem that the lost data cannot be restored when a failure occurs in the storage disk.
【0018】本発明は上記事情にかんがみてなされたも
ので、データディスクに冗長するパリティを容易に算出
し、また同時に複数台のディスクが故障した場合でも、
そのディスク内容を復元可能なRAID装置を提供する
ことにある。The present invention has been made in view of the above circumstances, and can easily calculate a redundant parity for a data disk. Even when a plurality of disks fail simultaneously,
An object of the present invention is to provide a RAID device capable of restoring the contents of the disk.
【0019】また、本発明の他の目的は、用途等に応じ
て冗長するパリティの個数を容易に変更可能なRAID
装置を提供することにある。Another object of the present invention is to provide a RAID capable of easily changing the number of redundant parities in accordance with a use or the like.
It is to provide a device.
【0020】さらに、本発明の他の目的は、データ誤り
ディスクを特定し、そのデータの修復を可能とするRA
ID装置を提供することにある。Still another object of the present invention is to specify a data erroneous disk and to restore the data from the RA.
An ID device is provided.
【0021】本発明の他の目的は、データディスクに冗
長するパリティを算出し、また同時に複数台のディスク
に故障が発生した場合でも、そのディスク内容を復元可
能なプログラムを記録した記録媒体を提供することにあ
る。Another object of the present invention is to provide a recording medium on which a program capable of calculating parity redundant to a data disk and restoring the contents of the disks even when a failure occurs in a plurality of disks at the same time is provided. Is to do.
【0022】[0022]
【課題を解決するための手段】上記課題を解決するため
に、本発明は、複数のデータ用ディスクに複数台のパリ
ティ用ディスクを冗長する冗長手段と、前記データ用デ
ィスクのデータ保存領域およびパリティ用ディスクのパ
リティ保存領域をビット単位に任意整数にブロック分け
するブロック分割手段と、拡大ガロア体GF(2n)
(nは整数)を用いて、前記全ディスクの所定ブロック
どうしで連なるグループ単位ごとに前記データ用ディス
クに付加するパリティ用ディスクのパリティを算出する
パリティ算出手段および前記任意のデータ用ディスク障
害時、障害発生ディスクのデータを未知データとし、前
記拡大ガロア体GF(2n)で定める規則に従って連立
合同式を作成し、この連立合同式から前記未知データを
復元するデータ復元手段を有するRAID制御装置とを
設けたRAID装置である。SUMMARY OF THE INVENTION In order to solve the above-mentioned problems, the present invention provides a redundant means for making a plurality of parity disks redundant with a plurality of data disks, a data storage area and a parity of the data disks. Dividing means for dividing the parity storage area of the disk for use into arbitrary integers in bit units, and an enlarged Galois field GF (2 n )
(N is an integer) using a parity calculating means for calculating parity of a parity disk to be added to the data disk for each group unit connected by predetermined blocks of all the disks, and at the time of failure of the arbitrary data disk, A RAID control device having data restoration means for creating a simultaneous congruence equation according to the rule defined by the extended Galois field GF (2 n ) and for restoring the unknown data from the simultaneous congruence expression, Is a RAID device provided with.
【0023】なお、上記構成においては、パリティを特
定のディスクに固定したが、グループ単位ごとに任意の
ディスクにパリティを分散する構成でもよい。In the above configuration, the parity is fixed to a specific disk. However, the configuration may be such that the parity is distributed to an arbitrary disk for each group.
【0024】本発明は、以上のような手段を講じたこと
により、複数のデータ用ディスクにデータが格納された
後、パリティ算出手段にて、これら格納されたデータに
基づき、拡大ガロア体GF(2n)(nは整数)を用い
て、正確にパリティを算出しパリティ用ディスクに設定
できる。According to the present invention, by taking the above-described means, after data is stored in a plurality of data disks, the parity calculation means uses the expanded Galois field GF (GF) based on the stored data. 2 n ) (where n is an integer), the parity can be accurately calculated and set on the parity disk.
【0025】また、データ復元手段においては、データ
用ディスク障害時、2の拡大ガロア体GF(2n)で定
める規則に従い、正常ディスクデータ,パリティと障害
発生ディスクのデータを未知データとして連立合同式を
組み立て、この連立合同式から未知データを復元するの
で、複数台のデータディスクに障害が発生しても、迅
速、かつ、確実に障害ディスクのデータを復元できる。In the data restoration means, in the event of a data disk failure, normal disk data, parity and data of the failed disk are combined as unknown data in accordance with a rule defined by 2 extended Galois field GF (2 n ). And recovers unknown data from this simultaneous congruential formula. Therefore, even if a failure occurs in a plurality of data disks, the data on the failed disk can be quickly and reliably restored.
【0026】また、別の発明は、上位機器または自身の
ハードウエアスイッチからRAID制御装置に対して、
冗長するパリティ算出の任意個数を決定し入力するよう
にすれば、用途、目的に応じて、冗長するパリティの個
数を容易に変更可能であり、信頼性の向上およびユーザ
の要望に応じて柔軟に対処できる。Further, another invention provides a method in which a higher-level device or its own hardware switch transmits a command to a RAID controller.
By determining and inputting an arbitrary number of redundant parity calculations, the number of redundant parities can be easily changed according to the application and purpose, and the reliability can be improved and the flexibility can be flexibly adjusted according to the demands of the user. I can deal with it.
【0027】さらに、別の発明においては、それぞれ複
数のディスクを管理する複数のRAID制御装置を連携
させ、これらRAID制御装置管理下の全ディスクの所
定ブロックをグループ化し、各グループごとにパリティ
を設定するようにすれば、パリティ用ディスクの台数を
減らすことができ、RAID装置全体として冗長するパ
リティの低減化およびコストの削減に大きく貢献する。Further, in another invention, a plurality of RAID controllers which respectively manage a plurality of disks are linked, predetermined blocks of all the disks managed by the RAID controllers are grouped, and parity is set for each group. By doing so, the number of parity disks can be reduced, which greatly contributes to the reduction of redundant parity and the cost of the entire RAID device.
【0028】さらに、別の発明は、複数個のパリティを
算出する場合、2個目以降のパリティについて、既に算
出されたパリティをデータの一部とみなしてパリティを
計算することにより、この計算結果のデータ誤りから容
易に障害ディスクを特定しデータ修復することができ
る。Still another invention is that, when calculating a plurality of parities, for the second and subsequent parities, the already calculated parities are regarded as a part of the data and the parities are calculated. The failed disk can be easily identified from the data error and the data can be repaired.
【0029】[0029]
【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照して説明する。Embodiments of the present invention will be described below with reference to the drawings.
【0030】図1は本発明に係わるRAID装置の一実
施の形態を説明する構成図である。FIG. 1 is a block diagram for explaining an embodiment of a RAID apparatus according to the present invention.
【0031】同図において1は例えば3台のデータ用デ
ィスク2a,2b,2cおよび2台のパリティ用ディス
ク3a,3bを備えたRAID装置であって、これは伝
送ライン5を介して上位コンピュータ6と接続されてい
る。Referring to FIG. 1, reference numeral 1 denotes a RAID device provided with, for example, three data disks 2a, 2b, 2c and two parity disks 3a, 3b. Is connected to
【0032】このコンピュータ6は、例えばRAID装
置1においてデータ処理上必要なプログラムなどを当該
RAID装置1にダウンロードしたり、さらには当該R
AID装置1に必要な指示,命令を与える機能をもって
いる。The computer 6 downloads, for example, a program required for data processing in the RAID device 1 to the RAID device 1,
It has a function of giving necessary instructions and commands to the AID device 1.
【0033】前記RAID装置1は、上述したデータ用
ディスク2a,2b,2cおよびパリティ用ディスク3
a,3bの他、RAID制御装置4が設けられている。The RAID device 1 includes the data disks 2a, 2b, 2c and the parity disk 3 described above.
In addition to a and 3b, a RAID controller 4 is provided.
【0034】前記各ディスク2a〜2c,3a,3b
は、4ビット単位でブロック分割され、かつ、1ディス
ク当たり6ブロックからなっている。Each of the disks 2a to 2c, 3a, 3b
Is divided into blocks in units of 4 bits, and is composed of 6 blocks per disk.
【0035】これらディスク2a〜2c,3a,3bの
各ブロックのうち、先頭(上位)ブロックどうしの5ブ
ロックd11,d12,d13,p14,p15を1番
目グループ、上位から2つ目のブロックどうしの5ブロ
ックd21,d22,d23,p24,p25を2番目
グループ、…と順次下位ブロックに対してグループ名が
付けられている。Of the blocks of the disks 2a to 2c, 3a, and 3b, five blocks d11, d12, d13, p14, and p15 of the first (upper) block are the first group, and the second block from the upper one are the first group. The five blocks d21, d22, d23, p24, and p25 are the second group,...
【0036】また、各ディスク2a〜2c,3a,3b
は4ビット単位で分割されて1ブロックとしているの
で、各ブロック内のデータは0〜15までの16種類の
データが格納される。Each of the disks 2a to 2c, 3a, 3b
Is divided into 4-bit units to form one block, so that 16 types of data from 0 to 15 are stored in each block.
【0037】前記RAID装置4は、外部から直接読み
取り或いはコンピュータ6からダウンロードされたプロ
グラムに従って、次のような手段を実行する。The RAID device 4 executes the following means according to a program read directly from the outside or downloaded from the computer 6.
【0038】すなわち、このRAID装置4は、2の拡
大ガロア体GF(2n)を用いて、データ用ディスク2
a〜2cに付加されるパリティ用ディスク3a,3bの
ブロック単位に保存すべきパリティを算出するパリティ
算出手段と、任意のディスク障害時、その障害発生ディ
スクのデータを未知データ(未知数)として2の拡大ガ
ロア体GF(2n)の規則に従って連立合同式を組み立
て、この組み立てられた連立合同式を解くことにより、
障害発生ディスクのデータを復元するデータ復元手段を
有するものである。That is, the RAID device 4 uses the two extended Galois fields GF (2 n ) to
a parity calculating means for calculating parity to be stored in units of blocks of the parity disks 3a and 3b added to a to 2c, and when an arbitrary disk failure occurs, the data of the failed disk is regarded as unknown data (unknown number). By constructing a simultaneous congruence equation according to the rules of the extended Galois field GF (2 n ), and solving this assembled congruence congruence equation,
It has data restoration means for restoring data of the failed disk.
【0039】先ず、 RAID装置4によるパリティの
算出例について説明する。First, an example of parity calculation by the RAID device 4 will be described.
【0040】各ディスクは4ビット単位でブロック分割
されているので、各ブロックには0〜15までの16種
類のデータが格納可能である。Since each disk is divided into blocks in units of 4 bits, 16 types of data from 0 to 15 can be stored in each block.
【0041】そこで、パリティの算出は、16種類のデ
ータを扱える拡大ガロア体GF(extension Galois fi
eld)(24)を用いて計算する。この拡大ガロア体は、定
義された種類のデータ内で加算(減算)、乗算および除算
を行うことができる。加算(減算)は排他的論理和を用
いて計算し、乗算は図2に示す拡大ガロア体GF(24)の
乗算結果図を用いて計算する。なお、除算は図2の乗算
結果図を逆引きすることにより引用する。Therefore, the parity is calculated by an extended Galois field GF (extension Galois fi
eld) Calculate using (2 4 ). The extended Galois field can perform addition (subtraction), multiplication, and division within defined types of data. The addition (subtraction) is calculated using exclusive OR, and the multiplication is calculated using the multiplication result diagram of the enlarged Galois field GF (2 4 ) shown in FIG. Note that the division is quoted by reversing the multiplication result diagram of FIG.
【0042】この図2の乗算結果を表す図は、GF
(2)上の4次の規約多項式であるX4+X+1を用い
てGF(24)を計算した表である。FIG. 2 shows the result of multiplication in FIG.
(2) A table in which GF (2 4 ) is calculated using X 4 + X + 1, which is the above fourth-order rule polynomial.
【0043】次に、簡単な拡大ガロア体の説明および図
2の乗算結果を表す図の作成例について説明する。Next, a description will be given of a simple enlarged Galois field and a creation example of a diagram showing the multiplication result of FIG.
【0044】ガロア体GF(2)は、0と1の2種類が
元であり、その間で加減乗除を行うことができる。これ
に対し、GF(2m)では2m個の元があり、その間で自
由に加減乗除を行うことができる。2mは、2のm乗を
表している。The Galois field GF (2) is based on two types, 0 and 1, between which addition, subtraction, multiplication, and division can be performed. On the other hand, in GF (2 m ), there are 2 m elements, and the addition, subtraction, multiplication, and division can be performed freely between them. 2 m represents 2 to the power of m.
【0045】ところで、拡大ガロア体における4次の乗
算について定義する。By the way, the fourth-order multiplication in the extended Galois field is defined.
【0046】GF(2)の体となる0,1の2種類の元
において、図2の乗算結果であるGF(2)上の4次の
規約多項式 X4+X+1=0 の根を考えると、0,1の何れの元を代入しても根が存
在しない。そこで、このような規約多項式の根の一つを
αと定義し体を拡大してみる。Under the two kinds of elements 0 and 1 which are the fields of GF (2), considering the root of the fourth order rule polynomial X 4 + X + 1 = 0 on GF (2) which is the multiplication result of FIG. No root exists when any element of 0 or 1 is substituted. Therefore, one of the roots of such a rule polynomial is defined as α and the field is expanded.
【0047】その結果、αは、α4+α+1=0を満た
すので、 α4=α+1 の関係式が得られ、αで表わされる4次以上の関係式は
全て4次以下に置換することができる。As a result, since α satisfies α 4 + α + 1 = 0, the relational expression of α 4 = α + 1 is obtained, and all the relational expressions of the fourth or higher order represented by α can be replaced with the fourth or lower order. .
【0048】そこで、16種類のデータをαのn次で考
えると、以下に示すような関係式で表すことができ、1
5種類の関係式以外には現れない。Therefore, when 16 types of data are considered by the n-th order of α, it can be expressed by the following relational expression.
It does not appear except for the five relational expressions.
【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」にもどる。[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 = α From the above relational expression, naturally α Multiplying the nth order by
It will fit in any of the 15 types of relational expressions. For example, fits into α 7 + α 14 = α 21 = α 6 = α 3 + α 2 , and the 15 kinds of the formula α6 in. From this relational expression, one cycle is performed for data types “1” to “15”, so α
16 = α, and returns to “1”.
【0050】ここで、上記する15種類の関係式につ
き、1〜15に対応させることにより、図2に示す乗算
結果図を作成できる。この図2はαの指数を2進数の桁
に対応させて数値化する。The multiplication result diagram shown in FIG. 2 can be created by associating the above 15 relational expressions with 1 to 15. In FIG. 2, the exponent of α is converted into a numerical value corresponding to a binary digit.
【0051】因みに、上記例におけるαのn次の乗算
は、以下のような計算として扱える。Incidentally, the n-th multiplication of α in the above example can be handled as the following calculation.
【0052】11×9=12 但し、本文中においては、通常の計算と区別する意味か
ら、 11※9≡12 のような記号で表す。なお、図2は、1〜15に加えて
0を含め、0〜15の乗算結果を表す図となっている。11 × 9 = 12 However, in the text, it is represented by a symbol such as 11 * 9≡12 in order to distinguish it from ordinary calculation. FIG. 2 is a diagram showing the multiplication result of 0 to 15 including 0 in addition to 1 to 15.
【0053】従って、図2は、GF(2)上の4次の規
約多項式X4+X+1を用いて、GF(24)による乗
算結果であるが、以下に述べる合同式についても、特に
ことわりがない限り、全てGF(24)で計算している
ものとする。Accordingly, FIG. 2 shows the result of multiplication by GF (2 4 ) using the fourth order polynomial X 4 + X + 1 on GF (2). Unless otherwise, it is assumed that all calculations are performed using GF (2 4 ).
【0054】そこで、各ディスクd11,d12,d1
3の1番目グループに記録するデータに関し、1つ目の
パリティp14の計算は、各データに1の係数を乗算し
た後に加算することにより求める。係数を1とするパリ
ティの算出は従来のRAIDにおけるパリティ計算の場
合と同じである。具体的には、 となる。上式において記号⊥は排他的論理和で計算する
ことを意味し、記号※は図2の乗算結果を用いた乗算を
意味し、記号≡は合同を意味する。Therefore, each of the disks d11, d12, d1
For the data to be recorded in the first group of No. 3, the first parity p14 is calculated by multiplying each data by a coefficient of 1 and then adding. The calculation of the parity with a coefficient of 1 is the same as the parity calculation in the conventional RAID. In particular, Becomes In the above equation, the symbol ⊥ means that calculation is performed by exclusive OR, the symbol * means multiplication using the multiplication result in FIG. 2, and the symbol ≡ means congruence.
【0055】次に、各ディスクd11,d12,d13
の1番目グループに記録するデータに関し、2つ目のパ
リティp15の計算は各データに任意の異なる係数を乗
算し、この乗算により得られる値を加算することにより
求める。Next, each of the disks d11, d12, d13
For the data to be recorded in the first group, the second parity p15 is calculated by multiplying each data by an arbitrary different coefficient and adding a value obtained by the multiplication.
【0056】 2※d11⊥3※d12⊥4※d13≡p15 今、具体例として、例えば各データd11,d12,d
13が次のような値と仮定することにより、パリティを
算出し、パリティブロックに設定する。2 * d11⊥3 * d12⊥4 * d13≡p15 Now, as a specific example, for example, each data d11, d12, d
Assuming that the value 13 is as follows, the parity is calculated and set in the parity block.
【0057】 以下、同様にして2番目グループ以降についても同様に
パリティを算出し、パリティブロックに設定する。[0057] Hereinafter, the parity is similarly calculated for the second and subsequent groups in the same manner, and set to the parity block.
【0058】次に、RAID制御装置によるデータ復元
処理例について説明する。Next, an example of data restoration processing by the RAID controller will be described.
【0059】今、全てのデータ用ディスク2a〜2cが
故障していない場合、またはパリティ用ディスク3a,
3bが故障している場合、単にデータ用ディスクのデー
タを読み出すことにより、記録したデータを知ることが
できる。また、1台のみのデータ用ディスクが故障した
場合には、従来のRAID方式と同じ排他的論理和によ
り容易に障害ディスクのデータが分かる。Now, if all the data disks 2a to 2c have not failed, or if the parity disks 3a,
If 3b is out of order, the recorded data can be known by simply reading the data from the data disk. Further, when only one data disk fails, the data of the failed disk can be easily identified by the same exclusive OR as in the conventional RAID system.
【0060】そこで、以降,2台同時期にデータ用ディ
スクが故障した場合のデータ復元例について説明する。A description will now be given of an example of data restoration when two data disks fail at the same time.
【0061】今、5台のディスク中2番目と3番目のデ
ィスクが同時期に故障し、1番目グループのデータd1
2,d13が失われたとする。この状態において1番目
グループのパリティを含むd11,p14,p15は、
ディスク2a,3a,3bが故障していないので、デー
タの読み出しは可能である。Now, the second and third disks of the five disks fail at the same time, and the data d1 of the first group
2, d13 is lost. In this state, d11, p14, and p15 including the parity of the first group are:
Since the disks 2a, 3a, 3b have not failed, data can be read.
【0062】そこで、失われたデータd12,d13を
未知データとして合同式の左辺に置き、読み出し可能な
正常なデータを右辺に置き、合同式を作成すれば次の2
つの合同式を作成することができる。Therefore, the lost data d12 and d13 are placed as unknown data on the left side of the congruence equation, and the readable normal data is placed on the right side.
Two congruences can be created.
【0063】 このようにして得られる2つの合同式に対し、ディスク
から正常なデータd11,p14,p15を読み出して
式に代入し後、これら2つの連立合同式から未知データ
d12,d13を求める。この未知データを求める手順
は、一般の連立方程式の解法と全く同様の手順で行う。
そこで、各式に式番号( )を付加して説明を進めるこ
ととする。[0063] After the normal data d11, p14, and p15 are read from the disk for the two congruent expressions obtained in this way and substituted into the expressions, unknown data d12 and d13 are obtained from these two simultaneous congruent expressions. The procedure for obtaining the unknown data is performed in exactly the same manner as the method for solving a general simultaneous equation.
Therefore, the description will be given with the expression number () added to each expression.
【0064】 d12⊥ d13≡ 4⊥ 5≡1 ……(1) 3※d12⊥4※d13≡ 15⊥2※5≡5 ……(2) ここで、4※(1)式を計算し、下記する(3)式を得
る。D12⊥ d13≡ 4⊥ 5≡1 (1) 3 * d12⊥4 * d13≡ 15⊥2 * 5≡5 (2) Here, equation 4 * (1) is calculated, The following equation (3) is obtained.
【0065】 4※d12⊥4※d13≡4※1 4※d12⊥4※d13≡4 ……(3) そこで、(3)式⊥(2)式を計算し、未知データd1
3を消去することにより、(4)式を作成する。4 * d12⊥4 * d13≡4 * 1 4 * d12⊥4 * d13≡4 (3) Then, the equation (3) is calculated and the unknown data d1 is calculated.
Equation (4) is created by deleting 3.
【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の値
を求める。4 * d12⊥3 * d12⊥4 * d13⊥4 * d13≡4⊥5 (4⊥3) * d12⊥ (4⊥4) * d13≡4⊥5 7 * d12⊥⊥1 ... 4) Here, it can be seen from the multiplication result of FIG. 2 that 7 * 6≡1. Therefore, the expression 6 * (4) is calculated, and the coefficient of the unknown data d12 is set to 1. Ask.
【0067】 6※7※d12≡6※1 d12≡6 ……(5) さらに、前記(5)式を(1)式或いは(2)式に設定
して同様に未知データd13を求める。ここでの説明
は、(2)式に(5)式を代入する方法により下記する
(6)式を作成し、未知データd13を求める。6 * 7 * d12≡6 * 1 d12≡6 (5) Further, the above equation (5) is set to the equation (1) or the equation (2), and the unknown data d13 is similarly obtained. Here, the following equation (6) is created by a method of substituting the equation (5) into the equation (2), and the unknown data d13 is obtained.
【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の値を求めることが
できる。3 * d12⊥4 * d13≡5 ... (2) 3 * 6⊥4 * d13≡5 10⊥4 * d13≡54 * d13≡5⊥104 * d13≡15 ... (6) Here, since 4 * 13≡1 is known from the multiplication result shown in FIG. 2, the value of d13 can be obtained by calculating the expression 13 * (6) and setting the coefficient of the unknown data d13 to 1. .
【0069】 13※4※d13≡13※15 d13≡7 ……(7) 以上のような解法手順を踏むことにより、(5)式、
(7)式によりそれぞれ未知データd12=6、d13
=7が求まり、始めに設定した仮定値と一致するので、
未知データが正しく求められていることが分かり、障害
ディスクのデータを復元されたことが分かる。13 * 4 * d13≡13 * 15 d13≡7 (7) By following the above solution procedure, the following equation (5) is obtained.
According to the equation (7), the unknown data d12 = 6 and d13, respectively.
= 7 is obtained, which matches the assumed value set at the beginning.
It can be seen that the unknown data is correctly obtained, and that the data of the failed disk has been restored.
【0070】そこで、以下、前述と同様な手順に従っ
て、2番目以降の全てのグループにおける障害ディスク
のデータを復元化する。Therefore, the data of the failed disk in all the second and subsequent groups are restored according to the same procedure as described above.
【0071】なお、以上述べた具体例は、冗長するパリ
ティの個数が2個の場合を例に上げたが、例えば冗長す
るパリティの個数がk個の場合、k個の合同式を組み立
てることができるので、k個まで未知データを求めるこ
とができるので、k個のデータが消失しても復元するこ
とができる。In the specific example described above, the case where the number of redundant parities is 2 has been described as an example. For example, when the number of redundant parities is k, k congruence equations can be assembled. Since up to k pieces of unknown data can be obtained, even if k pieces of data are lost, the data can be restored.
【0072】さらに、上記実施の形態では、拡大ガロア
体GF(2n)のnを4として取り扱ったために、合同
式のデータに付加する係数が1〜15までの15個まで
しか扱えなかったので、最大1グループ内のデータ数
は、15以内であった。しかし、nをより大きな値とす
ることにより、より大きな値の係数まで扱うことがで
き、非常に大きなデータ数を扱うことができる。Further, in the above embodiment, since n of the expanded Galois field GF (2 n ) is treated as 4, only up to 15 coefficients 1 to 15 can be added to the data of the congruential expression. The maximum number of data in one group was 15 or less. However, by setting n to a larger value, a coefficient having a larger value can be handled, and a very large number of data can be handled.
【0073】さらに、RAID制御装置4としては、ハ
ードウエアにより構成することもできる。すなわち、拡
大ガロア体GF(2n)を用いて前述する要領によりデ
ータ用ディスクの各グループごとに付加するパリティデ
ータを算出する論理回路要素(ハードウエア)からなる
パリティ算出手段と、任意のディスク障害時、その障害
発生ディスクのデータを未知数として拡大ガロア体GF
(2n)の規則に従って連立合同式を組み立て、この組
み立てられた連立合同式を解くことにより、障害発生デ
ィスクのデータを復元する論理回路要素(ハードウエ
ア)からなるデータ復元手段とにより構成すれば、パリ
ティ算出およびデータ復元の計算を高速度で行うことが
できる。Further, the RAID control device 4 can be constituted by hardware. That is, a parity calculating means including a logic circuit element (hardware) for calculating parity data to be added to each data disk group using the enlarged Galois field GF (2 n ) in the manner described above, and an arbitrary disk fault When the data of the failed disk is unknown, the expanded Galois field GF
By constructing a simultaneous congruence equation according to the rule of (2 n ) and solving the congruent congruence equation, the data can be constituted by data restoring means composed of logic circuit elements (hardware) for restoring data of the failed disk. , Parity calculation and data restoration calculation can be performed at high speed.
【0074】(その他の実施の形態) (1) 図1に示す実施の形態では、データを記録する
データ用ディスクとは別に特定のパリティ用ディスクを
設けた構成としたが、図3に示すように例えば5台のデ
ィスク7a〜7eをそれぞれ6ブロックに分割し、各デ
ィスク7a〜7eの上位ブロックを1番目グループ、次
のブロックを2番目グループ、以下,順次下位のブロッ
クに対してグループ名を付けていく。その他の構成は図
1と同様であるので省略する この実施の形態において特に異なるところは、5台のデ
ィスク7a〜7eの各グループごとにそれぞれ任意の2
つのブロックをパリティブロックとして設定することに
ある。(Other Embodiments) (1) In the embodiment shown in FIG. 1, a specific parity disk is provided separately from a data disk for recording data, but as shown in FIG. For example, each of the five disks 7a to 7e is divided into six blocks, and the upper block of each disk 7a to 7e is the first group, the next block is the second group, and the group names are sequentially assigned to the lower blocks. I will attach it. The other configuration is the same as that of FIG. 1 and therefore will not be described below. This embodiment is particularly different from the first embodiment in that each group of five disks 7a to 7e has an arbitrary 2 disks.
One block is set as a parity block.
【0075】因みに、図3に示すディスク7a〜7eの
1番目グループではディスク7d,7eのブロックにパ
リティp14,p15を設定し、2番目グループではデ
ィスク7c,7dのブロックにパリティp24,p25
を設定する。その他のグループでも同様にパリティを設
定する。By the way, in the first group of the disks 7a to 7e shown in FIG. 3, the parity p14 and p15 are set in the blocks of the disks 7d and 7e, and in the second group the parity p24 and p25 are set in the blocks of the disks 7c and 7d.
Set. Parities are set in other groups in the same manner.
【0076】その結果、1番目グループのデータd11
の一部書き換えたとき、それに伴ってパリティp14,
p15を変更する必要がある。以下、2番目以降グルー
プのデータの一部を変更した場合でも、同様にパリティ
を変更することになる。As a result, the first group of data d11
Is partially rewritten, the parity p14,
p15 needs to be changed. Hereinafter, even when a part of the data of the second and subsequent groups is changed, the parity is similarly changed.
【0077】しかし、各グループごとに個別に異なるデ
ィスクにパリティを設定する構成とすれば、次のような
メリットがある。一般に、データの一部を変更した場
合、幾つかのグループに対してまとめてパリティを変更
しなければならない場合が多いが、各グループのパリテ
ィの格納位置が図3に示すごとく異なるディスクに格納
する構成となっていれば、通常,パリティ書き換えのた
めにディスク要求が集中してディスク要求待ちとなる
が、本実施の形態ではディスク要求が集中することがな
くなり、ディスク要求待ちを解消できるメリットがあ
る。However, if the configuration is such that the parity is set to a different disk for each group, the following advantages can be obtained. Generally, when a part of data is changed, it is often necessary to change the parity for some groups at once. However, the parity storage position of each group is stored on a different disk as shown in FIG. With this configuration, usually, disk requests concentrate for parity rewriting and wait for disk requests. However, in the present embodiment, disk requests do not concentrate and there is an advantage that disk request waiting can be eliminated. .
【0078】(2) 次に、本発明に係わる記録媒体の
発明について説明する。(2) Next, the invention of the recording medium according to the present invention will be described.
【0079】図4は記録媒体をもったRAID装置の全
体構成を示す図である。FIG. 4 is a diagram showing the overall configuration of a RAID device having a recording medium.
【0080】このRAID装置は、キーボード,マウス
などの入力装置11と、表示装置12と、後記するパリ
ティ算出用およびデータ復元用プログラムを記録する記
録媒体13と、この記録媒体13に記録されるパリティ
算出用プログラムおよびデータ復元用プログラムの何れ
かを読み出して所定の機能を実現するCPUで構成され
たデータ処理部14と、プログラムデータ,処理途中デ
ータ、処理結果のデータその他プログラム処理上必要な
データを一時記憶するデータバッファ15と、データ処
理部14から導出されるバスラインに接続される複数の
ディスク161〜16nとによって構成されている。The RAID device includes an input device 11 such as a keyboard and a mouse, a display device 12, a recording medium 13 for recording a parity calculation and data restoration program described later, and a parity recorded on the recording medium 13. A data processing unit 14 composed of a CPU that reads out one of a calculation program and a data restoration program to realize a predetermined function, and stores program data, data during processing, data of a processing result, and other data necessary for program processing. It comprises a data buffer 15 for temporary storage and a plurality of disks 16 1 to 16 n connected to a bus line derived from the data processing unit 14.
【0081】なお、記録媒体としては、一般的には磁気
ディスクが用いられるが、それ以外にも例えば磁気テー
プ、CD−ROM、DVD−ROM、フロッピーディス
ク、MO、CD−R、メモリカードなどを用いてもよ
い。As a recording medium, a magnetic disk is generally used, but other than that, for example, a magnetic tape, CD-ROM, DVD-ROM, floppy disk, MO, CD-R, memory card, etc. May be used.
【0082】前記データ処理部14は、パリティ算出お
よびデータ復元に際し、次のような機能を実現する。The data processing section 14 realizes the following functions when calculating parity and restoring data.
【0083】先ず、パリティ算出処理にあっては、各デ
ータ用ディスクのグループ内データを順次読み出すデー
タ読み出し機能と、当該グループ内の各ブロックのデー
タに対し、拡大ガロア体GF(2n)に従って所定の係
数を乗算するとともに、これら乗算値を加算するパリテ
ィ取得機能と、このパリティ取得機能によって取得した
パリティを該当グループ内の該当ブロックに設定するパ
リティ設定機能と、上記一連の機能を、パリティ格納用
ブロックおよび全グループについて繰り返し実行する機
能とを実現するものである。First, in the parity calculation processing, a data read function for sequentially reading data in a group of each data disk, and a predetermined function for each block of data in the group according to the expanded Galois field GF (2 n ). The parity acquisition function of multiplying the coefficient of the above and adding the multiplied values, the parity setting function of setting the parity acquired by the parity acquisition function to the corresponding block in the group, and the above series of functions for storing the parity And a function to be repeatedly executed for blocks and all groups.
【0084】一方、データ復元処理にあっては、ディス
ク故障時に正常なデータ用およびパリティ用ディスクの
データおよびパリティを読み出すデータ読み出し機能
と、これら読み出したデータおよびパリティを用いてデ
ィスク故障台数に応じた連立合同式を作成し未知データ
を求めるデータ復元機能と、これら一連の機能について
データ用ディスクのブロックおよび全グループについて
繰り返してデータを復元する機能とを実現するものであ
る。On the other hand, in the data restoration process, a data read function for reading data and parity of a normal data disk and parity disk when a disk failure occurs, and the read data and parity are used in accordance with the number of disk failures. The present invention realizes a data restoration function of creating a simultaneous equation and obtaining unknown data, and a function of repeatedly restoring data for blocks and all groups of a data disk for a series of these functions.
【0085】次に、記録媒体13に記録されたプログラ
ムの処理例について、パリティ算出処理およびデータ復
元処理を参照して説明する。Next, an example of processing of a program recorded on the recording medium 13 will be described with reference to parity calculation processing and data restoration processing.
【0086】(a) パリティ算出処理例について(図
5参照)。(A) Example of parity calculation processing (see FIG. 5).
【0087】データ処理部14は、データディスクの各
グループまたは全グループの各ブロックにデータを格納
した後、例えば入力装置11からパリティ算出の指示を
入力すると、記録媒体13からパリティ算出用プログラ
ムを読み出し、以下のような処理を実行する。After storing data in each group of the data disk or each block of all groups, the data processing unit 14 reads a parity calculation program from the recording medium 13 when, for example, inputs a parity calculation instruction from the input device 11. The following processing is executed.
【0088】すなわち、データ処理部14は、データバ
ッファ15などの不要データを消去する初期化処理を行
った後、データバッファ15内カウンタメモリにディス
クの1番目グループに相当するデータ「i=1」をセッ
トする。しかる後、各データ用ディスクの1番目グルー
プに属する各ブロックのデータ読み出してデータバッフ
ァ15に記憶する(S1〜S3,データ読み出し機
能)。That is, after performing initialization processing for erasing unnecessary data in the data buffer 15 and the like, the data processing unit 14 stores data “i = 1” corresponding to the first group of the disk in the counter memory in the data buffer 15. Is set. Thereafter, data of each block belonging to the first group of each data disk is read and stored in the data buffer 15 (S1 to S3, data read function).
【0089】さらに、データ処理部14は、拡大ガロア
体GF(2n)に従い、読み出した1番目グループ内の
各データに予め定める係数を乗算し、各データごとの乗
算値データを求める。そして、これら各乗算値を加算す
ることによりパリティを求める(S4,S5,パリティ
取得機能)。Further, the data processing section 14 multiplies each read data in the first group by a predetermined coefficient in accordance with the expanded Galois field GF (2 n ) to obtain multiplied value data for each data. Then, a parity is obtained by adding these multiplication values (S4, S5, parity acquisition function).
【0090】以上のようにしてパリティを求めたなら
ば、パリティディスクの予め定める1つのブロックに設
定する(S6,パリティ設定機能)。When the parity is obtained as described above, the parity is set to one predetermined block of the parity disk (S6, parity setting function).
【0091】しかる後、1番目グループ内の全パリティ
ブロックへのパリティ設定完了かを判断し、未完了の場
合にはステップS3に戻って同様の処理を実行する。一
方、1番目グループ内のパリティ設定完了の場合には、
全グループへのパリティ設定完了かを判断し(S8)、
未だ完了していない場合にはカウンタメモリに+1をイ
ンクリメントし(S9)、ステップS3に戻り、同様の
処理を繰り返し実行する。Thereafter, it is determined whether the parity setting for all the parity blocks in the first group is completed. If the parity setting is not completed, the process returns to step S3 to execute the same processing. On the other hand, when the parity setting in the first group is completed,
It is determined whether parity setting for all groups is completed (S8),
If it has not been completed yet, +1 is incremented in the counter memory (S9), the process returns to step S3, and the same processing is repeatedly executed.
【0092】(b) データ復元処理例について(図6
参照)。(B) Example of data restoration processing (FIG. 6
reference).
【0093】データ処理部14は、入力装置11からの
データ復元指示またはディスク故障時に自動的に立ち上
がって記録媒体13からデータ復元用プログラムを読み
取り、次のような処理を実行する。The data processing unit 14 automatically starts up when a data restoration instruction is issued from the input device 11 or when a disk failure occurs, reads a data restoration program from the recording medium 13, and executes the following processing.
【0094】すなわち、データ処理部14は、データバ
ッファ15などの不要データを消去する初期化処理を行
った後、データディスク故障を確認した後、データバッ
ファ15内カウンタメモリにディスクの1番目グループ
に相当するデータ「i=1」をセットする。しかる後、
各データ用ディスクの1番目グループに属する各ブロッ
クのデータ読み出してデータバッファ15に記憶する
(S11〜S14,データ読み出し機能)。That is, the data processing unit 14 performs initialization processing for erasing unnecessary data in the data buffer 15 and the like, confirms a data disk failure, and stores the data in the counter memory in the data buffer 15 in the first group of the disk. The corresponding data "i = 1" is set. After a while
Data of each block belonging to the first group of each data disk is read and stored in the data buffer 15 (S11 to S14, data read function).
【0095】しかる後、データ処理部14は、失われた
データを未知データと正常なデータとを用いて、拡大ガ
ロア体GF(2n)の規則に従い、未知データを左辺に
置き、正常なデータを右辺に置き、データディスク故障
台数に応じた連立合同式を作成し、この連立合同式を解
くことにより未知データを求め、データバッファ15に
格納する(S15、データ復元機能)。Thereafter, the data processing unit 14 places the unknown data on the left side according to the rules of the extended Galois field GF (2 n ) using the unknown data and the normal data as the lost data. Is placed on the right side, a simultaneous congruence formula is created according to the number of data disk failures, unknown data is obtained by solving this congruence congruence formula, and stored in the data buffer 15 (S15, data restoration function).
【0096】さらに、1番目グループ内の故障データデ
ィスクのデータ全部復元かを判断し(S16)、当該グ
ループの故障データ全部復元でないとき、既に求めた未
知データを連立合同式に代入し、他の未知データを求め
る(S15,S16)。Further, it is determined whether or not all data of the failed data disk in the first group is to be restored (S16). If not all of the failed data of the group is to be restored, the previously obtained unknown data is substituted into the simultaneous congruence equation. Unknown data is obtained (S15, S16).
【0097】さらに、ステップS16において当該グル
ープ内故障データを全部復元したと判断したとき、全グ
ループデータ復元完了かを判断し(S17)、未グルー
プがあれば、カウンタメモリに+1をインクリメントし
た後(S18)、ステップS12に戻り、同様の処理を
繰り返し実行し、全部の消失データを復元する。Further, when it is determined in step S16 that all the in-group failure data has been restored, it is determined whether the restoration of all group data has been completed (S17). If there is any ungrouped data, the counter memory is incremented by +1 (step S17). S18) Returning to step S12, the same processing is repeatedly executed to restore all the lost data.
【0098】従って、以上のような実施の形態によれ
ば、データ処理部14は、記録媒体13に記録される図
5のパリティ算出用プログラム、図6に示すデータ復元
用プログラムを読み取って実行すれば、各ディスクにデ
ータを格納後に容易、かつ、自動的にパリティを算出し
て設定でき、また複数台のデータディスクの故障時に失
われたデータを迅速に復元させることができる。Therefore, according to the above embodiment, the data processing unit 14 reads and executes the parity calculation program shown in FIG. 5 and the data restoration program shown in FIG. For example, after storing data in each disk, parity can be calculated and set easily and automatically, and data lost when a plurality of data disks fail can be quickly restored.
【0099】なお、図4に示す記録媒体13のプログラ
ムはアプリケーションソフトとして考えているが、OS
の一部として使用してもよい。この場合には、記録媒体
13に記録されるプログラムはデータ処理部14または
上位コンピュータ6により読み出し可能とするものであ
る。The program on the recording medium 13 shown in FIG. 4 is considered as application software.
May be used as part of In this case, the program recorded on the recording medium 13 can be read by the data processing unit 14 or the host computer 6.
【0100】(3) さらに、上記実施の形態では、冗
長するパリティ算出の個数は各グループごとに2つのブ
ロックと固定されていたが、この冗長するパリティ算出
の個数をソフトウエアまたはハードウエア的に決定して
もよい。(3) In the above embodiment, the number of redundant parity calculations is fixed to two blocks for each group. However, the number of redundant parity calculations is determined by software or hardware. You may decide.
【0101】図7はかかる実施の形態例を示す構成図で
ある。FIG. 7 is a block diagram showing such an embodiment.
【0102】このRAIDシステムは、伝送ライン20
上にコンピュータを含むコントローラ21およびRAI
D装置22が接続されている。This RAID system uses the transmission line 20
Controller 21 including computer on top and RAI
The D device 22 is connected.
【0103】このコンピュータを含むコントローラ21
は、データ処理上必要なプログラムをRAID装置22
にダウンロードしたり、当該RAID装置22に必要な
指示,命令を与える機能をもっている。Controller 21 including this computer
Transmits a program necessary for data processing to the RAID device 22.
The RAID device 22 is provided with a function to download necessary commands and instructions to the RAID device 22.
【0104】前記RAID装置22は、図1や図3と同
様なデータ配列構成をもつパリティを格納する複数のデ
ィスク231〜23nと、プログラム処理開始,プログ
ラム処理上必要な指示、さらには設定情報を入力するキ
ーボードその他一般的に使用されている入力機器を含む
ハードウエアスイッチ24と、拡大ガロア体GF
(2 n)を用いて前述する要領によりデータ用ディスク
の各グループごとに付加するパリティデータを算出する
ソフトウエア的またはハードウエア的に構成されるパリ
ティ算出手段および任意のディスク障害時、その障害発
生ディスクのデータを未知数として拡大ガロア体GF
(2n)の規則に従って連立合同式を組み立て、この組
み立てられた連立合同式を解くことにより、障害発生デ
ィスクのデータを復元するソフトウエア的またはハード
ウエア的に構成されるデータ復元手段をもつRAID制
御装置25とが設けられている。The RAID device 22 is the same as in FIG. 1 and FIG.
Multiple data storing parity with various data array configurations
Disk 231~ 23n, program processing start, program
Keys for inputting instructions necessary for program processing and setting information
-Includes board and other commonly used input devices
Hardware switch 24 and enlarged Galois field GF
(2 n) And the data disk as described above.
Calculate parity data to be added to each group
Paris composed of software or hardware
Error calculation means and any disk failure,
Expanded Galois field GF with raw disk data as unknown
(2n), And assemble the simultaneous congruence formula,
By solving the simultaneous congruence equation, the fault occurrence data
Software or hardware to restore disk data
RAID system with hardware-based data restoration means
A control device 25 is provided.
【0105】ところで、以上のようなシステムにおい
て、オペレータがコンピュータを含むコントローラ21
側から冗長するパリティ算出の個数を入力し、RAID
装置22にダウンロードするか、或いはオペレータがR
AID装置22側のハードウエアスイッチ24からスイ
ッチ操作によって冗長するパリティ算出の個数を入力す
る。In the above system, an operator operates the controller 21 including a computer.
Enter the number of redundant parity calculations from the
To the device 22 or if the operator
The number of redundant parity calculations is input from the hardware switch 24 of the AID device 22 by operating the switch.
【0106】RAID制御装置25は、これら各グルー
プごと或いは全グループに対して入力されたパリティ算
出個数に従ってパリティを算出する。The RAID control device 25 calculates the parity according to the number of parity calculations input for each group or for all groups.
【0107】従って、以上のような実施の形態によれ
ば、オペレータがコントローラ21またはハードウエア
スイッチ24から冗長するパリティ算出の個数を入力す
るようにすれば、用途、目的に応じて自在に冗長するパ
リティの個数を容易に変更でき、信頼性の向上および柔
軟性を確保できる。Therefore, according to the above-described embodiment, if the operator inputs the number of redundant parity calculations from the controller 21 or the hardware switch 24, redundancy is freely performed according to the application and purpose. The number of parities can be easily changed, and the reliability and flexibility can be secured.
【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を管
理するような構成のものがある。(4) In the embodiment described above, one R
The AID control devices 6 and 25 use a plurality of disks (2a to 2a).
c, 3a, 3b), ( 7a~7e) or (23 21 to
3n), the parity is calculated and the lost data is restored. For example, as shown in FIG. 8, a plurality of RAID controllers 25a, 25b, and 25c individually manage disks. , For example, RAID
The control device 25a determines that the disks 23a1, 23a2, RAI
The D control device 25b determines that the disks 23b1 to 23b3
There is a configuration in which the ID control device 25c manages the disks 23c1 to 23c3.
【0109】このようなRAID装置22においては、
複数のRAID制御装置25a〜25c相互にデータ授
受可能に連携させ、これらRAID制御装置25a〜2
5c管理下のディスク23a1,23a2,23b1〜
23b3,23c1〜23c3全体について、上位ブロ
ックから順次ブロック26化し、これらグループ単位で
データdの書込みおよび読み出しの他、冗長するパリテ
ィpの算出やディスク故障により失われたデータの復元
化処理を行うものである。In such a RAID device 22,
The plurality of RAID controllers 25a to 25c are linked to each other so that data can be exchanged, and these RAID controllers 25a to 25c
5c managed disks 23a1, 23a2, 23b1
23b3, 23c1 to 23c3 are formed into blocks 26 sequentially from the upper block, and in addition to writing and reading of data d in units of these groups, calculation of redundant parity p and restoration processing of data lost due to disk failure are performed. It is.
【0110】なお、パリティの算出およびデータの復元
化は前述した通りである。The calculation of the parity and the restoration of the data are as described above.
【0111】このような実施の形態によれば、各RAI
D制御装置ごとに必ずしも冗長するパリティのために1
台分以上のパリティディスクを設置しなければならない
制限がなくなり、RAID装置全体として冗長するパリ
ティを低減化できる。According to such an embodiment, each RAI
1 for each D controller due to redundant parity
This eliminates the restriction of installing more parity disks than the number of parity disks, and reduces redundant parity in the entire RAID device.
【0112】(5) 図1に示すRAID装置において
は、各ディスクのデータ例えばd11,d12,d13
を用いて、それぞれパリティp14,p15を個別に算
出したが、例えば以下のような手段によりパリティを算
出することにより、障害ディスク位置を把握し、データ
を修復するようにしてもよい。(5) In the RAID device shown in FIG. 1, the data of each disk, for example, d11, d12, d13
Are used to calculate the parities p14 and p15 individually, but the parity may be calculated by, for example, the following means to determine the location of the failed disk and restore the data.
【0113】具体的には、パリティp14,p15の算
出するに際し、パリティp14を算出した後、パリティ
p15の算出に当たっては既に算出済みのパリティp1
4もデータの一部とみなして各データに異なる係数をか
けて以下のように算出する。More specifically, when calculating the parities p14 and p15, after calculating the parity p14, the calculation of the parity p15 is followed by the calculation of the parity p1 already calculated.
4 is also regarded as a part of the data and is calculated as follows by multiplying each data by a different coefficient.
【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が検出される。D11⊥d12⊥d13≡p14 d11⊥d12⊥d13⊥p14≡0 (8) 2 * d11⊥3 * d12⊥4 * d13⊥5 * p14≡p15 (9) where d11 , D12, d13, p14, and p15, if an error e1 occurs, p15
, An error e1 is detected on the right side of the equation (8).
【0115】さらに、前記(9)式においてパリティを
計算すると、p15を除いて各データの係数に応じた誤
りが検出されるので、データの係数を計算することによ
りd11,d12,d13,p14の何れかのディスク
に誤りが発生している可能性があることを特定できる。Further, when the parity is calculated in the above equation (9), an error corresponding to the coefficient of each data is detected except for p15. Therefore, by calculating the coefficient of the data, d11, d12, d13 and p14 are calculated. It is possible to specify that there is a possibility that an error has occurred in any of the disks.
【0116】今、例えば各データd11,d12,d1
3,p14が以下の値のとき、データd13に誤りe1
が発生したと想定して計算してみる。Now, for example, each data d11, d12, d1
3, when p14 has the following value, error d1
Let's calculate it assuming that has occurred.
【0117】d11≡11 d12≡12 d13≡13 e1 ≡ 8 mは各データに付けた異なる係数値とする。D11≡11 d12≡12 d13≡13 e1≡8 m is a different coefficient value assigned to each data.
【0118】パリティp14,p15の算出は、 11⊥ 12⊥ 13 ≡p14≡10 2※11⊥3※12⊥4※13⊥5※10 ≡p15≡ 7 ここで、d13にe1≡8のエラーが発生し、d13の
値が13から5に変化したとする。The calculation of the parities p14 and p15 is as follows. 11⊥12⊥13≡p14≡10 2 * 11⊥3 * 12⊥4 * 13⊥5 * 10≡p15≡7 Here, the error of e1≡8 is found in d13. Suppose that the value of d13 has changed from 13 to 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の誤りが含まれた状態で出てくる。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) Both sides of the equation (10) must be 0 as set in the equation (8) if no error occurs in the data, but an error occurs. If it does, it does not become zero. Equation (11) must match the parity p15 set in equation (9) if there is no error in the data.
If an error occurs, m according to the coefficient m of each data *
It comes out with the error of e1 included.
【0120】前記(10)式および(11)式により、
mを計算し特定することにより、どのデータに誤りがあ
ったかを把握でき、さらに障害を起こしたディスクを特
定することができる。From the above equations (10) and (11),
By calculating and specifying m, it is possible to grasp which data has an error, and to specify a failed disk.
【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の値を求める。8≡e1 (10 ′) 1≡m * e1⊥7 (11 ′) By substituting this equation (10 ′) into equation (11 ′) and rearranging, 8 * m≡7⊥1 ≡ 6 (12) From the multiplication result diagram of FIG. 2, both sides of the equation (12) are multiplied by a coefficient 15 so that 8 * 15≡1, and the coefficient of m is set to 1 to obtain the value of m.
【0122】15※8※m≡15※6 m≡4 となり、d13の係数であることが分かる。ここで、さ
らに検算のために、4※(8)式⊥(9)式を用いて、
データd13の要因を排除したところの下記(13)式
を作成し検証する。15 * 8 * m≡15 * 6 m≡4, which indicates that the coefficient is d13. Here, for further checking, using equation 4 * (8) ⊥⊥ (9),
The following equation (13), which excludes the factor of the data d13, is created and verified.
【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に
ついても、誤り箇所を特定できることが分かる。4 * d11 4 4 * d12 4 4 * d13 4 4 * p14≡ 0 2 * d11 33 * d12 44 * d13 5 5 * p14≡p15 6 * d11 77 * d12 11 * p14≡p15 …… (13) 6 * 11 7 7 * 12 1 1 * 10≡715 15 ⊥2⊥10≡7 7≡7 When the values on both sides do not match in the above equation (13), one of the first assumed The error was denied,
It can be determined that there is an error in data at a plurality of locations. For the same reason, it can be seen that an error location can be specified for d11, d12, and p14 other than d13.
【0124】また、パリティp15に1個所誤りが発生
した場合、前記(13)式で作成されたデータd13の
要因を排除した方法で各データそれぞれの要因を排除
し、誤りがどのデータの要因を排除しても誤りが一定と
なる場合には、パリティp15自身に誤りがあると判断
でき、一方、異なる誤りが算出された場合には2個所以
上に誤りがあると判断できる。When one error occurs in the parity p15, the factor of each data is eliminated by a method excluding the factor of the data d13 created by the above equation (13), and the factor of the data which error is determined. If the error remains constant even after exclusion, it can be determined that there is an error in the parity p15 itself, while if a different error is calculated, it can be determined that there are errors in two or more locations.
【0125】誤り箇所が1箇所に特定できた場合、図1
で説明した手順により容易に誤り箇所のデータを復元で
きる。If the error location can be identified at one location,
The data at the erroneous part can be easily restored by the procedure described in (1).
【0126】以上のようにして、冗長するパリティの個
数が2つの場合、1個所のデータの復元が可能となる。
一般に、冗長するパリティの個数が1つ増える毎にデー
タに付加されたと考えられる誤り要因を1つずつ排除で
きるので、 冗長するパリティ個数−1 のデータ訂正が可能なソフトウエアのRAID装置を提
供できる。As described above, when the number of redundant parities is two, one data can be restored.
Generally, every time the number of redundant parities increases by one, an error factor considered to be added to data can be eliminated one by one, so that it is possible to provide a software RAID device capable of correcting data of redundant number of parities minus one. .
【0127】従って、以上のような実施の形態によれ
ば、ディスクに誤り検出機能がない場合でも容易に利用
できる他、かかる誤り検出機能をもつことにより、より
信頼性の高い装置を実現できる。Therefore, according to the above-described embodiment, even if the disk does not have an error detecting function, it can be easily used, and by having such an error detecting function, a more reliable device can be realized.
【0128】その他、本発明は、その要旨を逸脱しない
範囲で、種々変形して実施することが可能である。In addition, the present invention can be variously modified and implemented without departing from the gist thereof.
【0129】[0129]
【発明の効果】以上説明したように本発明によれば、拡
大ガロア体GF(2n)を用いて、複数のディスクにデ
ータを格納した後に迅速にパリティを算出でき、また同
時に複数台のディスクが故障した場合でも、そのディス
ク内容を容易に復元することができる。As described above, according to the present invention, parity can be calculated quickly after data is stored in a plurality of disks by using the enlarged Galois field GF (2 n ), and a plurality of disks can be simultaneously calculated. Even if the disk fails, the contents of the disk can be easily restored.
【0130】また、用途,目的に応じて、冗長するパリ
ティの個数を任意に変更可能であり、信頼性の向上およ
び柔軟性に富んだ装置を実現できる。Further, the number of redundant parities can be arbitrarily changed according to the application and purpose, and a device with improved reliability and flexibility can be realized.
【0131】さらに、複数のRAID制御装置管理下に
ある各ディスク全体をグループ化し、各グループごとに
冗長するパリティを設定するので、必ずしも冗長するパ
リティのために1台分以上のパリティディスクを設置し
なければならない制限がなくなり、RAID装置全体と
して冗長するパリティを低減化できる。Further, since the entire disks under the management of a plurality of RAID controllers are grouped and redundant parity is set for each group, one or more parity disks are necessarily installed for redundant parity. This eliminates the restriction that must be made, and reduces the parity that is redundant in the entire RAID device.
【0132】さらに、パリティの算出から障害ディスク
を容易に見つけ出し、データの修復を行うことができ
る。Further, a failed disk can be easily found from the parity calculation, and the data can be restored.
【0133】さらに、本発明の記録媒体においては、パ
リティの算出および同時に複数台のディスク故障時にそ
のディスク内容を正確に復元可能なプログラムを記録し
た記録媒体を提供できる。Further, according to the recording medium of the present invention, it is possible to provide a recording medium in which a program capable of calculating parity and simultaneously restoring the contents of a plurality of disks accurately when a plurality of disks fail is recorded.
【図1】 本発明に係わるRAID装置の一実施の形態
を示す構成図。FIG. 1 is a configuration diagram showing an embodiment of a RAID device according to the present invention.
【図2】 拡大ガロア体GF(2n)による乗算結果を
説明する図。FIG. 2 is a diagram illustrating a result of multiplication by an enlarged Galois field GF (2 n ).
【図3】 本発明に係わるRAID装置の他の実施の形
態を説明するものであって、グループ単位ごとに任意の
ブロックにパリティを設定する図。FIG. 3 is a diagram for explaining another embodiment of the RAID device according to the present invention, and is a diagram in which parity is set to an arbitrary block for each group unit.
【図4】 本発明に係わる記録媒体を説明するコンピュ
ータシステムの構成図。FIG. 4 is a configuration diagram of a computer system explaining a recording medium according to the present invention.
【図5】 図4に示す記録媒体に記録されるプログラム
の処理例を説明するフローチャート。FIG. 5 is a flowchart for explaining a processing example of a program recorded on the recording medium shown in FIG. 4;
【図6】 図4に示す記録媒体に記録されるプログラム
の他の処理例を説明するフローチャート。FIG. 6 is a flowchart illustrating another processing example of the program recorded on the recording medium illustrated in FIG. 4;
【図7】 本発明に係わるRAID装置の他の実施の形
態を示す構成図。FIG. 7 is a configuration diagram showing another embodiment of the RAID device according to the present invention.
【図8】 本発明に係わるRAID装置のさらに他の実
施の形態を示す構成図。FIG. 8 is a configuration diagram showing still another embodiment of the RAID device according to the present invention.
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…グループ1, 22 ... RAID devices 2a, 2b, 2c ... data disks 3a, 3b ... parity disks 4, 25a, 25b, 25c ... RAID control devices 6 ... host computers 7a to 7e, 161 to 16n, 23a1, 23a2, 2
3b1 to 23b3, 23c1 to 23c3 ... Disk 13 ... Recording medium 21 ... Controller including computer 22 ... Recording medium 26 ... Group
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G11B 19/04 501 G11B 19/04 501G 501D 20/18 570 20/18 570Z ──────────────────────────────────────────────────続 き Continued on the front page (51) Int.Cl. 7 Identification symbol FI Theme coat ゛ (Reference) G11B 19/04 501 G11B 19/04 501G 501D 20/18 570 20/18 570Z
Claims (7)
保存するRAID装置において、 前記複数のデータ用ディスクに複数台のパリティ用ディ
スクを冗長する冗長手段と、 前記データ用ディスクのデータ保存領域およびパリティ
用ディスクのパリティ保存領域をビット単位に任意整数
にブロック分けするブロック分割手段と、 拡大ガロア体GF(2n)(nは整数)を用いて、前記
全ディスクの所定ブロックどうしで連なるグループ単位
ごとに前記データ用ディスクに付加するパリティ用ディ
スクのパリティを算出するパリティ算出手段および前記
任意のデータ用ディスク障害時、障害発生ディスクのデ
ータを未知データとし、前記拡大ガロア体GF(2n)
で定める規則に従って連立合同式を作成し、この連立合
同式から前記未知データを復元するデータ復元手段を有
するRAID制御装置とを備えたことを特徴とするRA
ID装置。1. A RAID apparatus for distributing and storing data on a plurality of data disks, a redundancy means for making a plurality of parity disks redundant on the plurality of data disks, a data storage area and a parity of the data disk. Division means for dividing the parity storage area of the disk for use into arbitrary integers in bit units, and an extended Galois field GF (2 n ) (n is an integer), for each group unit connected by predetermined blocks of all the disks Parity calculating means for calculating the parity of the parity disk to be added to the data disk, and in the event of a failure of the arbitrary data disk, the data of the failed disk is regarded as unknown data, and the expanded Galois field GF (2 n )
And a RAID control device having a data restoration means for restoring the unknown data from the simultaneous equation according to the rules defined in (1).
ID device.
て、 前記パリティを特定のディスクに固定せずに、前記グル
ープ単位ごとに任意のディスクに分散するパリティ分散
手段を設けたことを特徴とするRAID装置。2. The RAID device according to claim 1, further comprising a parity distribution unit that distributes the parity to an arbitrary disk for each group without fixing the parity to a specific disk. apparatus.
するパリティを算出するパリティ算出用プログラムを記
録する記録媒体であって、コンピュータに、 各データ用ディスクのグループ単位ごとのデータを読み
出すデータ読み出し機能と、このグループ単位ごとのデ
ータに対し、拡大ガロア体GF(2n)に従って所定の
係数を乗算するとともに、これら乗算値を加算してパリ
ティを算出するパリティ算出機能と、このパリティ算出
機能によって算出されるパリティを該当グループ内の所
定のブロックに設定するパリティ設定機能と、上記一連
の機能を、全グループについて繰り返し実行する機能と
を実現させるためにパリティ算出用プログラムを記録し
たコンピュータ読み取り可能な記録媒体。3. A recording medium for recording a parity calculation program for calculating a parity for redundancy of data of a plurality of data disks, wherein the data read function reads data for each data disk group unit. And a parity calculating function of multiplying the data for each group unit by a predetermined coefficient in accordance with the expanded Galois field GF (2 n ) and adding the multiplied values to calculate a parity; Computer-readable recording in which a parity calculation program is recorded in order to realize a parity setting function of setting a parity to be set to a predetermined block in the corresponding group and a function of repeatedly executing the above series of functions for all groups. Medium.
するデータ復元用プログラムを記録する記録媒体であっ
て、コンピュータに、 ディスク故障時に正常なデータ用ディスクのデータおよ
びパリティ用ディスクのパリティを読み出すデータ読み
出し機能と、これら読み出したデータおよびパリティを
用いて、拡大ガロア体GF(2n)の規則に基づいてデ
ィスク故障台数に応じた連立合同式を作成し未知データ
を求めるデータ復元機能と、これら一連の機能について
全グループについて繰り返してデータを復元する機能と
を実現させるためにデータ復元用プログラムを記録した
コンピュータ読み取り可能な記録媒体。4. A recording medium for recording a data restoration program for restoring data in the event of a data disk failure, wherein said computer reads out data of a normal data disk and parity of a parity disk when a disk failure occurs. Using the function, the read data and the parity, a simultaneous congruence formula according to the number of disk failures is created based on the rule of the extended Galois field GF (2 n ), and a data restoration function for finding unknown data. A computer-readable recording medium in which a data restoration program is recorded to realize a function of repeatedly restoring data for all groups.
ID装置において、 上位機器または自身のハードウエアスイッチから前記R
AID制御装置に対して、冗長するパリティ算出の任意
個数を決定し入力する手段を設けたことを特徴とするR
AID装置。5. The RA according to claim 1 or 2,
In the ID device, the host device or the hardware switch of the device
A means for determining and inputting an arbitrary number of redundant parity calculations to the AID control device.
AID device.
れか1つに記載のRAID装置において、 それぞれ複数のディスクを管理する複数のRAID制御
装置を連携させ、これらRAID制御装置管理下の全デ
ィスクの所定ブロックをグループ化し、各グループごと
にパリティを設定する手段を設けたことを特徴とするR
AID装置。6. The RAID device according to claim 1, wherein a plurality of RAID controllers for managing a plurality of disks are linked to each other, and the RAID controllers are managed by the RAID controllers. Characterized in that a means for grouping predetermined blocks of all disks of each group and setting parity for each group is provided.
AID device.
求項6の何れか1つに記載のRAID装置において、 複数個のパリティを算出する場合、2個目以降のパリテ
ィについて、既に算出されたパリティをデータの一部と
みなしてパリティを計算し、この計算結果のデータ誤り
から障害ディスクを特定し、データを修復する手段を設
けたことを特徴とするRAID装置。7. The RAID device according to claim 1, wherein when calculating a plurality of parities, the second and subsequent parities are already calculated. A RAID apparatus characterized in that the calculated parity is regarded as a part of data, the parity is calculated, a failed disk is specified from a data error in the calculation result, and data is restored.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11056883A JP2000259359A (en) | 1999-03-04 | 1999-03-04 | Raid device and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11056883A JP2000259359A (en) | 1999-03-04 | 1999-03-04 | Raid device and recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2000259359A true JP2000259359A (en) | 2000-09-22 |
Family
ID=13039830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11056883A Pending JP2000259359A (en) | 1999-03-04 | 1999-03-04 | Raid device and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2000259359A (en) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100447267B1 (en) * | 2001-11-30 | 2004-09-07 | 한국전자통신연구원 | A distributed controlling apparatus of a RAID system |
JP2005149224A (en) * | 2003-11-17 | 2005-06-09 | Nec Corp | Disk array apparatus, raid parity data generation circuit, 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 |
KR100701563B1 (en) | 2005-03-15 | 2007-03-30 | 후지쯔 가부시끼가이샤 | Storage control apparatus and method |
KR100703016B1 (en) | 2004-12-14 | 2007-04-06 | 후지쯔 가부시끼가이샤 | Storage controller and method for storage control |
WO2008027734A1 (en) * | 2006-08-31 | 2008-03-06 | Intel Corporation | Apparatus and method for generating a galois-field syndrome |
JP2008118623A (en) * | 2006-09-05 | 2008-05-22 | Thomson Licensing | Method for allocating multimedia data to distributed storage device |
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 (en) * | 2011-09-29 | 2013-04-25 | Nec Corp | Disk array device and program for disk array control |
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/en active Pending
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100447267B1 (en) * | 2001-11-30 | 2004-09-07 | 한국전자통신연구원 | A distributed controlling apparatus of a RAID system |
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 (en) * | 2003-11-17 | 2005-06-09 | Nec Corp | Disk array apparatus, raid parity data generation circuit, and galois field multiplying circuit |
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 (en) | 2004-12-14 | 2007-04-06 | 후지쯔 가부시끼가이샤 | Storage controller and method for storage control |
KR100701563B1 (en) | 2005-03-15 | 2007-03-30 | 후지쯔 가부시끼가이샤 | Storage control apparatus and method |
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 (en) * | 2006-09-05 | 2008-05-22 | Thomson Licensing | Method for allocating multimedia data to distributed storage device |
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 (en) * | 2007-01-31 | 2008-08-14 | Fujitsu Ltd | Raid system and data recovery apparatus using galois field |
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 (en) * | 2011-09-29 | 2013-04-25 | Nec Corp | Disk array device and program for disk array control |
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 (en) | Raid device and recording medium | |
CN100388221C (en) | Method and system for recovering from abnormal interruption of a parity update operation in a disk array system | |
CN100385405C (en) | Method and system for enhanced error identification with disk array parity checking | |
CN101059751B (en) | Method and system for increasing parallelism of disk accesses when restoring data in a disk array system | |
Corbett et al. | Row-diagonal parity for double disk failure correction | |
US7529970B2 (en) | System and method for improving the performance of operations requiring parity reads in a storage array system | |
US6748488B2 (en) | Storage array having multiple erasure correction and sub-stripe writing | |
JP5923964B2 (en) | Disk array device, control device, and program | |
US8839028B1 (en) | Managing data availability in storage systems | |
JP4668970B2 (en) | Block level data corruption detection and correction in fault tolerant data storage systems | |
CN100390746C (en) | Method and system for improved buffer utilization for disk array parity updating | |
JP4905161B2 (en) | RAID device and data restoration device using Galois field | |
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 | |
US7934120B2 (en) | Storing data redundantly | |
US9405623B2 (en) | Method of, and apparatus for, layout rectification of erasure encoded storage systems | |
US7752389B1 (en) | Techniques for determining physical data layout of RAID devices | |
US9606866B2 (en) | Method of, and apparatus for, improved data recovery in a storage system | |
JP5518201B2 (en) | N-way parity technology that enables recovery from up to N storage device failures | |
US6332177B1 (en) | N-way raid 1 on M drives block mapping | |
TW201911041A (en) | System and method for storing data | |
JPH05158624A (en) | Method for controlling access of direct access memory device array in operation in decreased function mode | |
KR20120086695A (en) | Memory system with multiple striping of raid groups and method for performing the same | |
CN114281270B (en) | Data storage method, system, equipment and medium | |
US6766480B2 (en) | Using task description blocks to maintain information regarding operations |
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 |