JP2857289B2 - Disk array device - Google Patents

Disk array device

Info

Publication number
JP2857289B2
JP2857289B2 JP4269825A JP26982592A JP2857289B2 JP 2857289 B2 JP2857289 B2 JP 2857289B2 JP 4269825 A JP4269825 A JP 4269825A JP 26982592 A JP26982592 A JP 26982592A JP 2857289 B2 JP2857289 B2 JP 2857289B2
Authority
JP
Japan
Prior art keywords
data
disk
writing
disk array
parity
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.)
Expired - Fee Related
Application number
JP4269825A
Other languages
Japanese (ja)
Other versions
JPH06119121A (en
Inventor
実希夫 伊藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP4269825A priority Critical patent/JP2857289B2/en
Priority to US08/133,441 priority patent/US5666511A/en
Publication of JPH06119121A publication Critical patent/JPH06119121A/en
Priority to US08/582,721 priority patent/US5848229A/en
Priority to US08/633,090 priority patent/US5696933A/en
Application granted granted Critical
Publication of JP2857289B2 publication Critical patent/JP2857289B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、複数のディスク装置を
並列的にアクセスしてデータ入出力処理を行うようにし
たディスクアレイ装置に関し、特に書込み処理における
処理性能の向上を狙ったディスクアレイ装置に関する。
計算機システムの外部記憶装置として、記録の不揮発
性、大容量性、データ転送の高速性等の特長を持つ磁気
ディスク装置、光ディスク装置等のディスク装置が広く
用いられている。ディスク装置に対する要求は、高速デ
ータ転送、高信頼性、大容量性、低価格である。これら
の要求を満たすものとして、ディスクアレイ装置が注目
されてきている。ディスクアレイ装置とは、小型ディス
ク装置を数題から数十台並べ、複数のディスク装置に分
散してデータを記録して、並列的にアクセスする装置で
ある。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a disk array apparatus for performing data input / output processing by accessing a plurality of disk apparatuses in parallel, and more particularly, to a disk array apparatus aimed at improving processing performance in write processing. About.
2. Description of the Related Art As an external storage device of a computer system, disk devices such as a magnetic disk device and an optical disk device having features such as non-volatility of recording, large capacity, and high speed of data transfer are widely used. Demands for disk devices are high-speed data transfer, high reliability, large capacity, and low price. Disk array devices have been attracting attention as satisfying these requirements. A disk array device is a device in which several to several tens of small disk devices are arranged, data is recorded in a plurality of disk devices, and data is accessed in parallel.

【0002】ディスクアレイ装置で並列的に複数のディ
スク装置にデータ転送を行えば、一台のディスク装置の
場合と比べて、ディスクの台数倍の高速データ転送が可
能になる。また、データに加えて、パリティデータなど
の冗長な情報を付け加えて記録しておくことで、ディス
ク装置の故障等を原因とするデータエラーの検出と訂正
が可能となり、ディスク装置の内容を二重化して記録す
る方法と同程度の高信頼性を、二重化より低価格で実現
することができる。
When data is transferred to a plurality of disk devices in parallel by a disk array device, high-speed data transfer can be performed twice as many as the number of disks as compared with a single disk device. In addition, by recording redundant information such as parity data in addition to the data, it is possible to detect and correct data errors caused by failure of the disk device, and to duplicate the contents of the disk device. The same high reliability as that of the method of recording data can be realized at a lower price than duplication.

【0003】[0003]

【従来の技術】従来、カルフォルニア大学バークレイ校
のデビット・A・パターソン(David A. Pa
tterson)らは、高速に大量のデータを多くのデ
ィスクにアクセスし、ディスク故障時におけるデータの
冗長性を実現するディスクアレイ装置について、レベル
1からレベル5までに分類付けを行って評価した論文を
発表している(ACM SIGMOD Conferance, Chicago, Illi
nois, June 1-3, 1988P109-P116)。
2. Description of the Related Art Conventionally, David A. Patterson of the University of California, Berkeley.
et al. disclose a paper that evaluates a disk array device that accesses a large amount of data to many disks at high speed and realizes data redundancy at the time of disk failure by classifying the disk array device from level 1 to level 5. (ACM SIGMOD Conferance, Chicago, Illi
nois, June 1-3, 1988P109-P116).

【0004】このデビット・A・パターソンらが提案し
たディスクアレイ装置を分類するレベル1〜5は、RA
ID(Redundant Arrays of In
expensive Disks)1〜5と略称され
る。RAID1〜5を簡単に説明すると次のようにな
る。 [RAID0]図14はデータの冗長性をもたないディ
スクアレイ装置を示したもので、デビット・A・パター
ソンらの分類には含まれていないが、これを仮にRAI
D0と呼ぶ。
The levels 1 to 5 for classifying the disk array devices proposed by David A. Patterson et al.
ID (Redundant Arrays of In)
expansive Disks) 1-5. The RAIDs 1 to 5 will be briefly described as follows. [RAID0] FIG. 14 shows a disk array device having no data redundancy, which is not included in the classification of David A. Patterson et al.
Called D0.

【0005】RAID0のディスクアレイ装置は、デー
タA〜Iに示すように、ディスクアレイ制御装置10は
ホストコンピュータ18からの入出力要求に基づきデー
タをディスク装置32−1〜32−3のそれぞれに分散
させているだけであり、ディスク故障時におけるデータ
の冗長性はない。 [RAID1]RAID1のディスクアレイ装置は図1
5に示すように、ディクス装置32−1に格納したデー
タA〜DのコピーA´〜D´を格納したミラーディスク
装置32−2を備える。RAID1はディスク装置の利
用効率が低いが冗長性をもっており、簡単な制御で実現
できるため、広く普及している。 [RAID2]RAID2のディスクアレイ装置はデー
タをビットやバイト単位でストライピング(分割)し、
それぞれのディスク装置に並列に読み書きを行う。スト
ライピングしたデータは全てのディスク装置で物理的に
同じセクタに記録する。エラー訂正コードとしてはデー
タから生成したハミングコードを使用する。データ用デ
ィスク装置の他にハミングコードを記録するためのディ
スク装置を持ち、ハミングコードから故障したディスク
装置を特定して、データを復元する。
In the RAID 0 disk array device, as shown in data A to I, the disk array control device 10 distributes data to each of the disk devices 32-1 to 32-3 based on an input / output request from the host computer 18. Data redundancy in the event of a disk failure. [RAID1] FIG. 1 shows a RAID1 disk array device.
As shown in FIG. 5, a mirror disk device 32-2 stores copies A 'to D' of data A to D stored in the disk device 32-1. RAID 1 is widely used because it has low utilization efficiency of disk devices but has redundancy and can be realized by simple control. [RAID2] A RAID2 disk array device strips (divides) data in units of bits or bytes.
Reading / writing is performed in parallel to each disk device. The striped data is physically recorded in the same sector in all disk devices. A Hamming code generated from data is used as the error correction code. It has a disk device for recording a Hamming code in addition to the data disk device, identifies a failed disk device from the Hamming code, and restores the data.

【0006】このようにハミングコードによる冗長性を
備えることでディスク装置が故障しても正しいデータを
確保できるが、ディスク装置の利用効率が悪いために実
用化されていない。 [RAID3]RAID3のディスクアレイ装置は、図
16に示す構成をもつ。即ち、図17に示すように例え
ばデータa,b,cをビットまたはセクタ単位にデータ
a1〜a3,b1〜b3,c1〜c3に分割し、更にデ
ータa1〜a3からパリティP1を計算し、データb1
〜b3からパリティP2を計算し、データc1〜c3か
らパリティP3を計算し、図16のディスク装置32−
1〜32−4を同時並列的にアクセスして書き込む。
[0006] By providing redundancy by the Hamming code in this way, correct data can be secured even if a disk device fails, but it has not been put to practical use due to poor utilization efficiency of the disk device. [RAID3] The RAID3 disk array device has the configuration shown in FIG. That is, as shown in FIG. 17, for example, data a, b, and c are divided into data a1 to a3, b1 to b3, and c1 to c3 in units of bits or sectors, and a parity P1 is calculated from the data a1 to a3. b1
Bb3, the parity P2 is calculated from the data c1 to c3, and the parity P3 is calculated from the data c1 to c3.
1 to 32-4 are simultaneously accessed and written in parallel.

【0007】RAID3では、データの冗長性はパリテ
ィにより保持される。また分割したデータの並列処理に
よりデータの書込み時間は短縮できる。しかし、1回の
書込み又は読出しのアクセスで、全てのディスク装置3
2−1〜32−4の並列的なシーク動作を必要とする。
このため大量のデータを連続して扱う場合には有効であ
るが、少量のデータをランダムにアクセスするトランザ
クション処理のような場合には、データ転送の高速性が
生かせず、効率が低下する。 [RAID4]RAID4のディスクアレイ装置は、図
18に示すように、1つのデータをセクタ単位に分割し
て同じディスク装置に書込む。例えばディスク装置32
−1をみると、データaをセクタデータa1〜a4に分
割して書き込んでいる。パリティは固定的に決めたディ
スク装置32−4に格納している。ここでデータa1,
b1,c1からパリティP1が計算され、データa2,
b2,c2からパリティP2が計算され、データa3,
b3,c3からパリティP3が計算され、データa4,
b4,c4からパリティP4が計算されている。
In RAID 3, data redundancy is maintained by parity. Further, the data writing time can be reduced by the parallel processing of the divided data. However, with one write or read access, all disk devices 3
2-1 to 32-4 parallel seek operations are required.
For this reason, it is effective when a large amount of data is handled continuously, but in the case of a transaction process in which a small amount of data is accessed at random, the high speed of data transfer cannot be utilized and the efficiency is reduced. [RAID4] As shown in FIG. 18, the RAID4 disk array device divides one data into sector units and writes the data into the same disk device. For example, the disk device 32
Looking at -1, data a is divided into sector data a1 to a4 and written. The parity is stored in a fixedly determined disk device 32-4. Here, data a1,
Parity P1 is calculated from b1 and c1, and data a2 and
Parity P2 is calculated from b2 and c2, and data a3
Parity P3 is calculated from b3 and c3, and data a4
Parity P4 is calculated from b4 and c4.

【0008】データ読出しは、ディスク装置32−1〜
32−3に対して並列して読み出しできる。データa〜
bの読出しは、データaを例にとると、ディスク装置3
2−1のセクタ0〜3をアクセスしてセクタデータa1
〜a4を順次読出して合成する。データ書込みは、書き
込み前のデータとパリティを読み出してから新パリティ
を計算して書き込むため、1度の書き込みにについて、
合計4回のアクセスが必要になる。例えば、ディスク装
置32−1のセクタデータa1を更新(書き替え)する
場合には、更新場所の旧データ(a1)old 及び対応す
るディスク装置32−4の旧パリテイ(P1)old を読
出し、新データ(a1)new と整合性のとれた新パリテ
ィ(P1)new を求めて書込む動作を、更新のためのデ
ータ書込み以外にも必要とする。
Data is read out from the disk devices 32-1 to 32-1.
32-3 can be read in parallel. Data a ~
The reading of data b is performed by taking the data a as an example.
2-1 access sectors 0 to 3 to access sector data a1
To a4 are sequentially read and synthesized. In data writing, since the new parity is calculated and written after reading the data and parity before writing, for one writing,
A total of four accesses are required. For example, when updating (rewriting) the sector data a1 of the disk device 32-1, the old data (a1) old of the update location and the old parity (P1) old of the corresponding disk device 32-4 are read, and the new data is read. An operation of writing a new parity (P1) new that is consistent with the data (a1) new is required in addition to the data writing for updating.

【0009】また書込みの際に必ずパリティ用のディス
ク装置32−4へのアクセスが起きるため、複数のディ
スク装置の書き込みを同時に実行できない。例えばディ
スク装置32−1のデータa1の書込みとディスク装置
32−2のデータb2の同時書き込みを行なおうとして
も、同じディスク装置32−4からパリティP1,P2
を読出して計算後に書込む必要があるため、同時に書込
みはできない。
In addition, since writing always accesses the disk device 32-4 for parity, writing to a plurality of disk devices cannot be executed simultaneously. For example, even if the simultaneous writing of the data a1 of the disk device 32-1 and the simultaneous writing of the data b2 of the disk device 32-2 are performed, the parity P1, P2
Must be read and written after calculation, and therefore cannot be written at the same time.

【0010】このようにRAID4の定義は行われてい
るが、メリットが少ないため現在のところ実用化の動き
は少ない。 [RAID5]RAID5のディスクアレイ装置は、パ
リティ用のディスク装置を固定しないことで、並列の読
み書きを可能にしている。即ち、図19に示すように、
セクタごとにパリティの置かれるディスク装置が異なっ
ている。ここでデータa1,b1,c1からパリティP
1が計算され、データa2,b2,d2からパリティP
2が計算され、データa3,c3,d3からパリティP
3が計算され、データb4,c4,d4からパリティP
4が計算されている。
Although the definition of RAID4 has been made in this way, there is little merit and there is little movement for practical use at present. [RAID5] The disk array device of RAID5 enables parallel reading and writing by not fixing the disk device for parity. That is, as shown in FIG.
The disk device on which parity is placed differs for each sector. Here, the parity P is calculated from the data a1, b1, and c1.
1 is calculated, and parity P is calculated from the data a2, b2, and d2.
2 is calculated, and parity P is calculated from data a3, c3, and d3.
3 is calculated, and parity P is calculated from data b4, c4, and d4.
4 has been calculated.

【0011】並列の読み書きは、例えばディスク装置3
2−1のセクタ0のデータa1とディスク装置32−2
のセクタ1のデータb2は、パリティP1,P2が異な
るディスク装置32−4,32−3に置かれているため
重複せず、同時に読み書きができる。尚、書込み時に合
計4回のアクセスを必要とするオーバーヘッドはRAI
D4と同じである。
The parallel reading and writing is performed by, for example, the disk drive 3
2-1 data a1 of sector 0 and disk device 32-2
The data b2 of the sector 1 can be read and written simultaneously without duplication because the parities P1 and P2 are located in different disk devices 32-4 and 32-3. Note that the overhead that requires a total of four accesses at the time of writing is RAI
Same as D4.

【0012】このようにRAID5は、非同期に複数の
ディスク装置にアクセスしてリード/ライトを実行でき
るため、少量データをランダムにアクセスするトランザ
クション処理に向いている。ここでRAID4およびR
AID5のデータ書込みにおけるパリティデータの生成
を説明すると次のようになる。
As described above, RAID5 can access a plurality of disk devices asynchronously to execute read / write, and is therefore suitable for transaction processing in which a small amount of data is randomly accessed. Where RAID4 and R
The generation of parity data in writing AID5 data will be described as follows.

【0013】まず冗長情報を格納したディスクアレイ装
置では、次の(1)式により複数のディスク装置におけ
る同一記憶位置のデータの排他的論理和を取ってパリテ
ィとし、パリティ用のディスク装置に保持している。 データa(+)データb(+)・・・=パリティP (1) 但し、(+)は排他的論理和記号 データとパリティの格納場所は、RAID4では図17
のように特定のディスク装置32−4に固定している。
これに対しRAID5では、図18のようにパリティを
ディスク装置32−1〜32−4に分散させて、パリテ
ィ読み書き動作による特定のディスク装置へのアクセス
の集中を解消している。
First, in the disk array device storing the redundant information, the exclusive OR of the data at the same storage location in a plurality of disk devices is set as parity by the following equation (1) and stored in the disk device for parity. ing. Data a (+) data b (+)... = Parity P (1) where (+) is an exclusive-OR symbol.
And fixed to a specific disk device 32-4.
On the other hand, in RAID5, as shown in FIG. 18, the parity is distributed to the disk devices 32-1 to 32-4 to eliminate the concentration of accesses to a specific disk device by the parity read / write operation.

【0014】これらのRAID4およびRAID5のデ
ータ読出し時は、ディスク装置32−1〜32−4内の
データが書き換えられないので、パリティの整合性は保
持されるが、書込み時にはパリティもデータに合わせて
変更する必要がある。例えばディスク装置32−1内の
1つの旧データ(a1)old を新データ(a1)new
書き換えたとき、パリティP1の整合性を取るには次の
(2)式のような計算を行い、パリティを更新すること
でディスク装置のデータ全体のパリティの整合性を保つ
ことができる。 旧データ(+)旧パリティ(+)新データ=新パリティ (2)
At the time of reading these RAID4 and RAID5 data, the data in the disk devices 32-1 to 32-4 is not rewritten, so that the parity consistency is maintained. Need to change. For example, when one old data (a1) old in the disk device 32-1 is rewritten to the new data (a1) new , to obtain the consistency of the parity P1, the following equation (2) is calculated. By updating the parity, the consistency of the parity of the entire data of the disk device can be maintained. Old data (+) Old parity (+) New data = New parity (2)

【0015】[0015]

【発明が解決しようとする課題】しかしながら、従来の
RAID4およびRAID5に分類されるディスクアレ
イ装置にあっては、(2)式から分かるように、データ
書込み処理では、データ書込対象となるディスク装置内
から旧データを読出すと共にパリティ格納用のディスク
装置の書込予定位置と同一位置のパリティを先ず読出し
て新パリティを計算する必要があり、その後に新データ
と新パリティをそれぞれのディスク装置に書込むことに
なる。
However, in the conventional disk array devices classified into RAID4 and RAID5, as can be seen from equation (2), in the data writing process, the disk device to which data is to be written is used. It is necessary to read the old data from within the disk drive, and first read the parity at the same position as the write-scheduled position of the disk device for storing the parity and calculate the new parity, and then transfer the new data and the new parity to each disk device. Will write.

【0016】このため1度の書込みにおいて2回ずつの
読出しと書込み、即ち4回のアクセスが必要となり、処
理時間が長くなってディスクアレイ装置としての性能向
上が十分に期待できないという問題があった。一方、図
17に示したRAID3に分類されるディスクアレイ装
置にあっては、ディスク装置の並び方向にデータを分割
して並列的に書込むことから、ディスク装置から旧デー
タや旧パリティを読出す必要はなく、分割データから新
パリティを計算することができ、RAID4やRAID
5に比べると書込みの処理時間は短くできる。
Therefore, two readings and two writings, that is, four accesses are required in one writing, so that there is a problem that the processing time is long and the performance of the disk array device cannot be sufficiently improved. . On the other hand, in the disk array device classified as RAID3 shown in FIG. 17, data is divided in the direction in which the disk devices are arranged and written in parallel, so that old data and old parity are read from the disk devices. There is no need to calculate a new parity from the divided data.
5, the writing processing time can be shortened.

【0017】しかし、書込み時には全てのディスク装置
に対する並列的なアクセスを必要とし、ディスク装置の
個々の読み書きが要求される大量のトランザクション処
理には不向きである。本発明の目的は、上位装置からの
データ量に応じて最適なアクセス形式を選んで書込み処
理を行うようにしたディスクアレイ装置を提供する。
However, at the time of writing, parallel access to all disk devices is required, which is not suitable for a large amount of transaction processing that requires reading and writing of each disk device. SUMMARY OF THE INVENTION An object of the present invention is to provide a disk array device in which an optimum access format is selected according to the amount of data from a host device to perform a write process.

【0018】本発明の他の目的は、上位装置からのデー
タ量が少ないときには複数のディスク装置の個別的にア
クセスするモードを選んで、書込み後のアクセス効率を
向上させるディスクアレイ装置を提供する。本発明の他
の目的は、上位装置からのデータ量が多いときには複数
のディスク装置の並列的にアクセスするモードを選んで
処理時間を短縮するようにしたディスクアレイ装置を提
供する。
Another object of the present invention is to provide a disk array device which improves the access efficiency after writing by selecting a mode for individually accessing a plurality of disk devices when the amount of data from the host device is small. Another object of the present invention is to provide a disk array device in which, when the amount of data from a host device is large, a mode for accessing a plurality of disk devices in parallel is selected to reduce the processing time.

【0019】本発明の他の目的は、上位装置からのデー
タ量が多いときには全てのディスク装置がアクセス可能
状態にあることを条件に並列的にアクセスするモードを
選んで処理時間を短縮するようにしたディスクアレイ装
置を提供する。本発明の他の目的は、データ量が多いと
きに並列的にアクセスするモードで書込んだ後に読出し
て個別的にアクセスするモードに書き替えてるようにし
たディスクアレイ装置を提供する。
Another object of the present invention is to reduce the processing time by selecting a parallel access mode on condition that all disk devices are accessible when the amount of data from the host device is large. A disk array device is provided. Another object of the present invention is to provide a disk array device in which, when the amount of data is large, data is written in a mode of accessing in parallel and then read and rewritten in a mode of accessing individually.

【0020】[0020]

【課題を解決するための手段】図1は本発明の原理説明
図である。本発明は、データ格納用とパリティ格納用の
複数のディスク装置32−1〜32−5を備えたディス
クアレイ46を有し、上位装置18から指示された書込
データ量が少ないときは、第1書込手段34により、複
数のディスク装置32−1〜32−5を個別的にアクセ
スして所定長、例えばセクタ単位に分割したデータを書
込む。また上位装置18から指示された書込みのデータ
量が多いときは、第2書込手段36により、複数のディ
スク装置を並列的にアクセスしてセクタ単位に分割した
データを書込む。
FIG. 1 is a diagram illustrating the principle of the present invention. The present invention has a disk array 46 provided with a plurality of disk devices 32-1 to 32-5 for storing data and storing parity. A plurality of disk devices 32-1 to 32-5 are individually accessed by one writing unit 34 to write data of a predetermined length, for example, divided into sectors. When the write data amount specified by the host device 18 is large, a plurality of disk devices are accessed in parallel by the second writing means 36 to write the data divided in sector units.

【0021】ここで第1書込手段34は、図1(b)の
個別的アクセスモードによる書込みを行う。この個別的
書込モードは、まずデータの書込に先立ち、書込み対象
のディスク装置の書込予定位置のデータおよび他のディ
スク装置に格納している書込予定位置と同一位置の冗長
情報としてのパリティを読出して新たな冗長情報を排他
的論理和により生成する。次に新たなセクタデータとパ
リティをデータ格納用とパリティ格納用のディスク装置
のそれぞれを個別的にアクセスして非同期に書込む。
Here, the first writing means 34 performs writing in the individual access mode shown in FIG. In the individual write mode, first, prior to data writing, data of a write target position of a disk device to be written and redundant information at the same position as a write target position stored in another disk device are stored. The parity is read and new redundant information is generated by exclusive OR. Next, new sector data and parity are asynchronously written by individually accessing the data storage and parity storage disk devices.

【0022】また第2書込手段36は、図1(c)の並
列的アクセスモードによる書込みを行う。即ち、ディス
ク並び方向に並列的に格納する複数のセクタデータの排
他的論理和から新たな冗長情報してのパリティを生成す
る。次に複数のセクタデータとパリティを複数のディス
ク装置を並列的にアクセスして非同期に書込む。また第
2書込手段36は、データ量が多い場合、直ちに並列的
アクセスモードによる書込みを行わず、全てのディスク
装置がアクセス可能かどうかチェックしてから処理を行
う。
The second writing means 36 performs writing in the parallel access mode shown in FIG. That is, a parity as new redundant information is generated from an exclusive OR of a plurality of sector data stored in parallel in the disk arrangement direction. Next, a plurality of sector data and parity are asynchronously written by accessing a plurality of disk devices in parallel. When the amount of data is large, the second writing unit 36 does not immediately perform writing in the parallel access mode, but performs processing after checking whether all disk devices can be accessed.

【0023】この場合、複数のディスク装置の全てがア
クセス可能状態でなかった場合には、個別的アクセスモ
ードのデータ格納形式につき並列的アクセスモードに従
ってパリティを生成し、その後にディスク装置を個別的
にアクセスしてセクタデータおよびパリティを書込む。
また複数のディスク装置が全てアクセス可能状態であっ
た場合には、並列的アクセスモードでパリティを生成し
た後に複数のディスク装置に並列的に書込む。
In this case, if all of the plurality of disk devices are not in an accessible state, a parity is generated according to the parallel access mode for the data storage format of the individual access mode, and thereafter the disk devices are individually accessed. Access to write sector data and parity.
If all of the plurality of disk devices are accessible, the parity is generated in the parallel access mode, and then the data is written to the plurality of disk devices in parallel.

【0024】さらに個別的アクセスモードにおけるパリ
ティの格納位置は、ディスク装置に分散させてもよい
し、特定のディスク装置に固定してもよい。
Further, the storage positions of the parity in the individual access mode may be distributed to the disk devices or may be fixed to specific disk devices.

【0025】[0025]

【作用】このような構成を備えた本発明のディスクアレ
イ装置によれば、上位装置から書込みを指示されたデー
タ量をチェックし、基本的に、データ量が少ない場合
は、1回の書込みに時間はかかるが書込み後のトランザ
クション処理が効率よくできる個別的アクセスモードを
選択し、一方、データ量が多い場合には、トランザクシ
ョン処理には1回の書込み時間が短い並列的アクセスモ
ードを選択する。
According to the disk array device of the present invention having such a configuration, the amount of data instructed to be written by the host device is checked. An individual access mode that takes time but allows efficient transaction processing after writing is selected. On the other hand, when the data amount is large, a parallel access mode in which one writing time is short is selected for transaction processing.

【0026】ここで、個別的アクセスモードはRAID
5(RAID4でもよい)に対応し、また並列的アクセ
スモードはRAID3に対応していることから、本発明
は、データ量に応じてRAID5(又はRAID4)と
RAID3の利点を生かした効率の良いデータ書込みを
行うことになる。更に、RAID3に相当する並列的ア
クセスモードで大量のデータを書込んだ後は、ディスク
アレイ装置の空き時間等を利用し、並列的アクセスモー
ドに従って格納しているデータを読出して個別アクセス
モードにより書き替え、トランザクション処理の際のデ
ィスク装置の個別的な読み書きに対処できるようにす
る。
Here, the individual access mode is RAID
5 (or may be RAID 4) and the parallel access mode corresponds to RAID 3. Therefore, the present invention provides efficient data utilizing the advantages of RAID 5 (or RAID 4) and RAID 3 according to the data amount. Writing will be performed. Further, after a large amount of data is written in the parallel access mode corresponding to RAID3, the data stored in the parallel access mode is read out using the idle time of the disk array device and written in the individual access mode. In other words, it is possible to deal with individual reading and writing of the disk device at the time of transaction processing.

【0027】このように、上位装置からの入出力要求で
指定されたデータ量に対してディクスアレイ制御装置側
でデータ量を判断し、ディスクアクセスの動作モードの
切換えを行うことにより、アクセス効率を向上し、処理
時間の短縮とデータ転送速度を向上させることができ、
入出力要求に対する性能向上が図れる。
As described above, the disk array controller determines the data amount for the data amount specified by the input / output request from the higher-level device, and switches the operation mode of the disk access, thereby improving the access efficiency. To improve processing time and data transfer speed,
Performance can be improved for input / output requests.

【0028】[0028]

【実施例】図2は本発明のディスクアレイ装置のハード
ウェア構成を示した実施例構成図である。図2におい
て、ディスクアレイ制御装置10には制御手段としてM
PU12が設けられ、MPU12の内部バスに上位装置
としてのホストコンピュータ18からの入出力要求を受
けるホストインタフェース16、制御プログラム等を固
定的に記憶したROM20、制御記憶として一時的なデ
ータ記憶に使用されるRAM22、キャッシュ制御部2
4を介して接続されたキャッシュメモリ26、データ転
送バッファ28が設けられる。
FIG. 2 is a block diagram of an embodiment showing a hardware configuration of a disk array device according to the present invention. In FIG. 2, the disk array controller 10 has M
A PU 12 is provided, a host interface 16 for receiving an input / output request from a host computer 18 as an upper device on an internal bus of the MPU 12, a ROM 20 for fixedly storing a control program and the like, and a temporary storage of data as control storage. RAM 22, cache control unit 2
4, a cache memory 26 and a data transfer buffer 28 are provided.

【0029】このディスクアレイ制御装置10に対して
は、ディスクアレイ46が設けられる。ディスクアレイ
46は、この実施例にあってはディスク装置32−1〜
32−12の12台を備えており、5台のディスク装置
32−1〜32−5によりランク48−1を構成し、ま
た同じく5台のディスク装置32−6〜32−10でラ
ンク48−2を構成し、ディスク装置32−11,32
−12の2台は予備機として設けられている。
A disk array 46 is provided for the disk array controller 10. In this embodiment, the disk array 46 includes disk devices 32-1 to 32-1.
32-12 are provided, and a rank 48-1 is configured by five disk devices 32-1 to 32-5, and a rank 48- is similarly configured by five disk devices 32-6 to 32-10. 2 and the disk devices 32-11 and 32
-12 are provided as spare machines.

【0030】ランク48−1,48−2に設けられたデ
ィスク装置はディスク並び方向の同一位置を組としてデ
ィスクアレイ装置10より共通にアクセスを受けるよう
にしている。即ち、ディスクアレイ制御装置10にはデ
バイスアダプタ30−1〜30−6が設けられ、例えば
デバイスアダプタ30−1にランク48−1の最初のデ
ィスク装置32−1を接続し、またランク48−2の最
初のディスク装置32−6を接続している。
The disk devices provided in the ranks 48-1 and 48-2 are commonly accessed from the disk array device 10 with the same position in the disk arrangement direction as a set. That is, the disk array control device 10 is provided with device adapters 30-1 to 30-6. For example, the first disk device 32-1 of rank 48-1 is connected to the device adapter 30-1 and the device adapter 30-1 is connected to rank 48-2. Is connected to the first disk device 32-6.

【0031】図3は図2のハードウェア構成を対象に本
発明によるアクセス機能を示した機能ブロック図であ
る。図3において、ディスクアレイ制御装置10にはコ
マンド解読部38、第1書込部34、第2書込部36、
書込モード管理テーブル40、読出部42およびディス
クアクセス部44が設けられる。ここでコマンド解読部
38、第1書込部34、第2書込部36、読出部42お
よびディスクアクセス部44の機能は図2に示したMP
U12によるプログラム制御で実現され、また書込モー
ド管理テーブル40は制御記憶としてのRAM22上に
展開される。
FIG. 3 is a functional block diagram showing an access function according to the present invention for the hardware configuration of FIG. 3, the disk array control device 10 includes a command decoding unit 38, a first writing unit 34, a second writing unit 36,
A write mode management table 40, a read unit 42, and a disk access unit 44 are provided. Here, the functions of the command decoding unit 38, the first writing unit 34, the second writing unit 36, the reading unit 42, and the disk access unit 44 are the same as those of the MP shown in FIG.
This is realized by program control by U12, and the write mode management table 40 is developed on the RAM 22 as control storage.

【0032】コマンド解読部38はホストコンピュータ
18からの入出力要求に伴うコマンドを解読し、コマン
ドが書込コマンドであった場合には書込データのデータ
量に応じて第1書込部34または第2書込部34を選択
して、ディスクアクセス部40を介してディスクアレイ
46に対する書込処理を実行する。ここで、第1書込部
34は書込データ量が少ないときに起動し、例えばラン
ク48−1のディスク装置32−1〜32−5を例にと
ると、各ディスク装置32−1〜32−5を個別的にア
クセスしてセクタ単位に分割したデータを書き込む個別
的アクセスモードによる書込処理を実行する。この個別
的書込モードは、図19に示したRAID5の動作モー
ドに相当する。
The command decoding unit 38 decodes a command accompanying an input / output request from the host computer 18, and if the command is a write command, the first writing unit 34 or The second writing unit 34 is selected, and a writing process is performed on the disk array 46 via the disk access unit 40. Here, the first writing unit 34 is activated when the amount of write data is small. For example, in the case of the disk devices 32-1 to 32-5 of rank 48-1, for example, each of the disk devices 32-1 to 32 is used. -5 is individually accessed to execute a write process in an individual access mode for writing data divided in sector units. This individual write mode corresponds to the operation mode of RAID5 shown in FIG.

【0033】一方、第2書込部36は書込データ量が多
いときに起動し、例えばランク48−1のディスク装置
32−1〜32−4を並列的にアクセスして、セクタ単
位に分割したデータを書き込む並列的アクセスモードに
従った書込処理を実行する。この第2書込部36による
並列的アクセスモードによる書込処理は、図16に示し
たRAID3の動作モードに相当する。
On the other hand, the second writing unit 36 is activated when the amount of write data is large, and accesses the disk devices 32-1 to 32-4 of rank 48-1, for example, in parallel and divides them into sector units. Write processing according to the parallel access mode for writing the written data. The writing process in the parallel access mode by the second writing unit 36 corresponds to the RAID3 operation mode shown in FIG.

【0034】更に、第2書込部36にあっては、データ
量が多いときに直ちに並列的アクセスモードによる書込
処理を実行するのではなく、書込みに先立ってアクセス
対象とする、例えば48−1のディスク装置32−1〜
32−5の全てがアクセス可能状態にあるか否かチェッ
クし、可能状態にあれば並列的アクセスモードによるデ
ータ書込みを実行する。
Further, in the second writing section 36, instead of immediately executing the writing process in the parallel access mode when the data amount is large, the second writing section 36 sets an access target prior to writing, for example, 48-bit. 1 disk device 32-1
It is checked whether or not all of 32-5 are in an accessible state, and if so, data writing is performed in a parallel access mode.

【0035】これに対し、全てのディスク装置32−1
〜32−5がアクセス可能状態になかった場合には、第
1書込部34で行う個別的アクセスモードに従ったデー
タ格納形式となる書込みを行うが、冗長情報としてのパ
リティの生成については、第2書込部36固有の並列的
アクセスモードに従ってディスク装置からパリティ及び
データを読み出すことなくパリティを生成できるように
している。
On the other hand, all the disk devices 32-1
In the case where .about.32-5 are not in the accessible state, writing in a data storage format according to the individual access mode performed by the first writing unit 34 is performed. The parity can be generated without reading the parity and data from the disk device according to the parallel access mode unique to the second writing unit 36.

【0036】書込モード管理テーブル40には第1書込
部34と第2書込部36による書込モードを示す情報が
セクタ単位で登録される。読出部42はコマンド回読部
38で読出コマンド解読したさいに起動され、読出しが
指示されたセクタアドレスにより書込モード管理テーブ
ル40を参照し、個別的書込モードまたは並列的書込モ
ードに従った読出をディスクアクセス部44を介して実
行する。この場合の読出しは、いずれのモードにあって
も、複数のディスク装置から並列した読出しができる。
In the write mode management table 40, information indicating the write mode by the first write unit 34 and the second write unit 36 is registered for each sector. The read unit 42 is activated when the command read unit 38 decodes the read command, refers to the write mode management table 40 by the sector address instructed to read, and follows the individual write mode or the parallel write mode. Reading is executed via the disk access unit 44. In this case, in any mode, reading can be performed in parallel from a plurality of disk devices.

【0037】図4は本発明における書込データのセクタ
単位への分割を示した説明図である。図4において、
今、ホストコンピュータ18より書込みのためのデータ
a,b,c,dが転送されてきたとすると、第1書込部
34または第2書込部36によるディスクアレイ46に
対する書込処理のため、各データa〜dをセクタ単位に
分割する。例えば、データaについては、セクタデータ
a1〜a4の4つに分割する。他のデータb〜dについ
ても同様に、4つのセクタデータに分割する。
FIG. 4 is an explanatory diagram showing division of write data into sector units in the present invention. In FIG.
Now, assuming that data a, b, c, and d for writing are transferred from the host computer 18, each of the data is written to the disk array 46 by the first writing unit 34 or the second writing unit 36. Data a to d are divided into sector units. For example, data a is divided into four pieces of sector data a1 to a4. The other data b to d are similarly divided into four sector data.

【0038】図5は図3の第1書込部34による個別的
アクセスモードの説明図である。この個別的アクセスモ
ードはRAID5の動作モードに相当する。図5におい
て、個別的アクセスモードにおけるパリティの生成形式
は、ディスク装置の書込対象セクタから旧データを読み
出すと共に旧データと同一位置のパリティ用ディスク装
置から旧パリティを読み出し、このようにしてディスク
装置側から読み出した旧データと旧パリティ、更に新た
に書き込むセクタデータ即ち新データとの排他的論理和
をとって新パリティを生成する。
FIG. 5 is an explanatory diagram of the individual access mode by the first writing section 34 of FIG. This individual access mode corresponds to the operation mode of RAID5. In FIG. 5, the format of parity generation in the individual access mode is such that old data is read from the write target sector of the disk device and old parity is read from the parity disk device at the same position as the old data. The new parity is generated by taking the exclusive OR of the old data read from the side, the old parity, and the sector data to be newly written, that is, the new data.

【0039】また、個別的アクセスモードのデータ格納
形式は分割前のデータ単位に各ディスク装置を個別に割
り当てることを基本としており、例えばディスク装置3
2−1〜32−5の第1セクタには、図4に示したデー
タa〜dの中の最初のセクタデータa1,b1,c1,
d1、更にパリティP1が格納される。これらのディス
ク装置32−1〜32−5に対する書込みは、各ディス
ク装置を個別的にアクセスして書き込むようになる。
The data storage format of the individual access mode is based on the fact that each disk device is individually allocated to a data unit before division.
In the first sectors 2-1 to 32-5, the first sector data a1, b1, c1, among the data a to d shown in FIG.
d1 and the parity P1 are stored. When writing to these disk devices 32-1 to 32-5, each disk device is individually accessed for writing.

【0040】図6は図3の第2書込部36が行う並列的
アクセスモードの説明図であり、RAID3の動作モー
ドに相当する。図6において、並列的アクセスモードに
おけるパリティの生成形式は、図4に示すようにセクタ
単位に分割したデータをディスク装置32−1〜32−
5の並び方向に格納することから、データa〜dの各セ
クタデータの排他的論理和によって各パリティP1〜P
4を生成することができる。このため、パリティの生成
にはディスク装置からの旧データ及び旧パリティの読出
しは必要とせず、データ書込みの処理時間を短くでき
る。
FIG. 6 is an explanatory diagram of the parallel access mode performed by the second writing unit 36 of FIG. 3, and corresponds to the operation mode of RAID3. In FIG. 6, the parity generation format in the parallel access mode is such that the data divided in sector units as shown in FIG.
5 are stored in the arrangement direction of the data P. Therefore, each parity P1 to P
4 can be generated. Therefore, generation of parity does not require reading of old data and old parity from the disk device, and the processing time for data writing can be shortened.

【0041】図7は図3の第2書込部36においてパリ
ティは並列的アクセスモードで生成し、データの格納は
個別的アクセスモードとした組合せの説明図である。図
7において、図4に示すように書込データの分割により
得られたセクタデータについては、図5に示した個別的
アクセスモードに従ったデータ格納形式となることか
ら、この格納形式を想定したセクタデータの並びを生成
し、同一セクタ位置にある例えばセクタデータa1,b
1,c1,d1の排他的論理和からパリティP1を生成
する。残りのセクタデータについても同様である。
FIG. 7 is an explanatory diagram of a combination in which the parity is generated in the parallel access mode in the second writing unit 36 in FIG. 3 and the data storage is in the individual access mode. In FIG. 7, since the sector data obtained by dividing the write data as shown in FIG. 4 has a data storage format according to the individual access mode shown in FIG. 5, this storage format is assumed. A sequence of sector data is generated and, for example, sector data a1, b at the same sector position
Parity P1 is generated from the exclusive OR of 1, 1, and 1. The same applies to the remaining sector data.

【0042】このため、データ格納形式は個別的アクセ
スモードに従っていてもパリティの生成は並列的アクセ
スモードによることから、ディスク装置32−1〜32
−5からの旧データ及び旧パリティの読出しが不要とな
り、図6に示した純粋な並列的アクセスモードに比べ書
込処理時間を短縮できる。尚、ディスク装置32−1〜
32−5に対するデータ書込みは図5の個別的アクセス
モードと同様、ディスク装置32−1〜32−5を個別
的にアクセスして非同期に書き込むことから、図6の並
列的アクセスモードによる並列書込みに比べると処理時
間はかかることになる。従って、図6の組合せ方式は図
5の個別的アクセスモードと図6の並列的アクセスモー
ドの、ちょうど中間的な書込モードといえる。
For this reason, even if the data storage format is in accordance with the individual access mode, the parity generation is in accordance with the parallel access mode.
Reading of old data and old parity from −5 becomes unnecessary, and the write processing time can be reduced as compared with the pure parallel access mode shown in FIG. The disk devices 32-1 to 32-1
As in the individual access mode of FIG. 5, the data writing to the disk drive 32-5 is performed by accessing the disk devices 32-1 to 32-5 individually and asynchronously writing the data. Processing time will be longer in comparison. Accordingly, it can be said that the combination method of FIG. 6 is a write mode just intermediate between the individual access mode of FIG. 5 and the parallel access mode of FIG.

【0043】図8は図6に示した並列的アクセスモード
でディスク装置に書込みを行った後の個別的アクセスモ
ードによる書替えを示した説明図である。図8におい
て、データ量が多く、且つ全てのディスク装置がアクセ
ス可能状態で行う並列的アクセスモードによるデータ書
込みは、本来、書き込むべきディスク装置がランク48
−1に属するディスク装置32−1〜32−5であった
場合、書込み後の書替えを可能とするため、別のランク
48−2に属するディスク装置32−6〜32−10に
対し行う。
FIG. 8 is an explanatory diagram showing rewriting in the individual access mode after writing to the disk device in the parallel access mode shown in FIG. In FIG. 8, in the data write in the parallel access mode performed in a state where the data amount is large and all the disk devices are accessible, the disk device to which the data is to be originally written has rank 48.
In the case of the disk devices 32-1 to 32-5 belonging to -1, the operation is performed for the disk devices 32-6 to 32-10 belonging to another rank 48-2 to enable rewriting after writing.

【0044】このように、別のランク48−2のディス
ク装置32−6〜32−10に対し、並列的アクセスモ
ードでデータ書込みが済んだならば、ディスクアレイ制
御装置10に示すように、まずランク48−2のディス
ク装置32−6〜32−10からセクタデータ及びパリ
ティデータを読み出し、並列的アクセスモードに従った
本来のランク48−1に属するディスク装置32−1〜
32−5に対するデータ格納形式を想定してパリティを
生成する。
As described above, when data has been written to the disk devices 32-6 to 32-10 of another rank 48-2 in the parallel access mode, first, as shown in the disk array controller 10, Sector data and parity data are read from the disk devices 32-6 to 32-10 of rank 48-2, and the disk devices 32-1 belonging to the original rank 48-1 according to the parallel access mode.
Parity is generated assuming a data storage format for 32-5.

【0045】例えば、ランク48−2のディスク装置3
2−6からセクタデータa1,b1,c1,d1を読み
出した場合には、全てのセクタデータの排他的論理和か
ら新たなパリティP10を生成し、ランク48−1のデ
ィスク装置32−1〜32−5のディスク並び方向の同
一セクタ位置に図示のようにセクタデータa1,b1,
c1,d1及びパリティデータP10を書き込む。
For example, a disk device 3 of rank 48-2
When the sector data a1, b1, c1, and d1 are read from 2-6, a new parity P10 is generated from the exclusive OR of all the sector data, and the disk devices 32-1 to 32 of rank 48-1 are generated. As shown in the figure, sector data a1, b1,
Write c1, d1 and parity data P10.

【0046】以下同様に、ディスク装置32−7〜32
−9について個別的アクセスモードのデータ格納形式へ
の書替えを行う。図9は本発明の全体的な処理動作を示
したフローチャートであり、まずステップS1でホスト
コンピュータ18からのホストコマンドの受領の有無を
チェックしており、ホストコンピュータからの入出力要
求に基づくホストコマンドを受領すると、ステップS2
でコマンドを解読する。コマンドの解読結果から、ライ
ト要求であればステップS3からステップS4に進み、
ライト処理を実行する。
Similarly, the disk units 32-7 to 32
For -9, the individual access mode is rewritten to the data storage format. FIG. 9 is a flowchart showing the overall processing operation of the present invention. First, in step S1, it is checked whether or not a host command has been received from the host computer 18, and the host command based on an input / output request from the host computer is checked. Is received, step S2
To decode the command. If it is a write request from the command decoding result, the process proceeds from step S3 to step S4,
Execute write processing.

【0047】一方、リード要求であればステップS5に
進み、リード処理を実行する。図10はリード処理の詳
細を示したフローチャートであり、ステップS1でまず
書込モード管理テーブル40を参照し、ステップS2で
個別的アクセスモードによる書込みか否かチェックす
る。本発明にあっては、個別的アクセスモードに従った
ディスク装置のデータ格納形式を前提としているが、書
替えが済んでない並列的アクセスモードの格納形式が残
っている場合もあることから、ステップS2で個別的ア
クセスモードによる書込みか否かチェックする。
On the other hand, if it is a read request, the flow advances to step S5 to execute a read process. FIG. 10 is a flowchart showing details of the read process. In step S1, the write mode management table 40 is first referred to, and in step S2, it is checked whether or not the write is in the individual access mode. In the present invention, the data storage format of the disk device according to the individual access mode is premised. However, the storage format of the parallel access mode that has not been rewritten may remain. Check whether the writing is in the individual access mode.

【0048】個別的アクセスモードの書込みデータを対
象とした読出しであれば、ステップS3で対応した読出
しを実行する。即ち、上位装置からのコマンドで指定さ
れたディスクIDとデータアドレスにより対応するディ
スク装置を個別的にアクセスしてセクタデータを読み出
し、図2に示したディスクアレイ制御装置10内のデー
タ転送バッファ28に一旦格納した後、ホストインタフ
ェース16を介してホストコンピュータ18に転送す
る。
If the reading is directed to the write data in the individual access mode, the corresponding reading is executed in step S3. That is, the corresponding disk device is individually accessed by the disk ID and the data address specified by the command from the higher-level device to read the sector data, and the data is transferred to the data transfer buffer 28 in the disk array control device 10 shown in FIG. Once stored, it is transferred to the host computer 18 via the host interface 16.

【0049】また並列的アクセスモードの書込みデータ
を対象とした読出しであれば、ステップS4で上位装置
からのコマンドで指定されたディスクIDとデータアド
レスにより対応するディスク装置を個別的又は並列的に
アクセスしてセクタデータを読み出し、データ転送バッ
ファ28に一旦格納した後、ホストインタフェース16
を介してホストコンピュータ18に転送する。
If the read operation is directed to the write data in the parallel access mode, the corresponding disk devices are individually or in parallel accessed in step S4 according to the disk ID and the data address specified by the command from the higher-level device. After reading the sector data and temporarily storing it in the data transfer buffer 28, the host interface 16
Is transferred to the host computer 18 via.

【0050】図11は図9のステップS4に示したライ
ト処理の詳細を示したフローチャートである。この図1
1のフローチャートに従った処理が図3に示したコマン
ド解読部38,第1書込部34,第2書込部36及びデ
ィスクアクセス部40の機能により実現される。
FIG. 11 is a flowchart showing details of the write processing shown in step S4 of FIG. This figure 1
1 is implemented by the functions of the command decoding unit 38, the first writing unit 34, the second writing unit 36, and the disk access unit 40 shown in FIG.

【0051】図11において、まずステップS1でパリ
ティ生成形式及びデータ格納形式を個別的アクセスモー
ドに設定する。続いてステップS2で、ホストコンピュ
ータから送られてきた書込データ量βが、予め定めたデ
ータ量αより大きいか否かチェックする。ここで、書込
データ量βが規定データ量αより少なかった場合にはス
テップS3に進み、ステップS1で設定した個別的アク
セスモードに従ってパリティデータを生成した後、ディ
スク装置に書き込むようになる。
In FIG. 11, first, in step S1, the parity generation format and the data storage format are set to the individual access mode. Subsequently, in step S2, it is checked whether the write data amount β sent from the host computer is larger than a predetermined data amount α. If the write data amount β is smaller than the specified data amount α, the process proceeds to step S3, where parity data is generated according to the individual access mode set in step S1, and then written to the disk device.

【0052】このステップS3の個別的アクセスモード
によるディスク装置への書込みにあっては、パリティの
生成にディスク装置からの旧データと旧パリティの読出
しを必要とすることから1回の書込みの処理時間が長く
なるが、書込データ量βが少ないことから全体としての
アクセス時間そのものは、それ程、長くはならない。一
方、ステップS2で書込データ量βが規定データ量αよ
り多かった場合にはステップS4以降の処理に進む。こ
のステップS4以降の処理が図3に示した第2書込部3
6の処理となる。
In the writing to the disk device in the individual access mode in step S3, since the generation of parity requires reading of the old data and the old parity from the disk device, the processing time for one write is required. However, since the write data amount β is small, the access time itself as a whole does not become so long. On the other hand, if the write data amount β is larger than the specified data amount α in step S2, the process proceeds to step S4 and subsequent steps. The processing after step S4 is performed by the second writing unit 3 shown in FIG.
6 is performed.

【0053】まずステップS4でパリティ生成形式をス
テップS1で設定した個別的アクセスモードから並列的
アクセスモードに変更する。この結果、パリティ生成に
ついては並列的アクセスモードが設定され、一方、デー
タ格納形式については個別的アクセスモードが設定され
たことになる。続いてステップS5で書込対象となるラ
ンクに属する全ディスク装置がアクセス可能か否かチェ
ックする。書込対象とするランクに属するディスク装置
の内、1台でもビジィ状態にあるとステップS6に進
み、ステップS4の設定結果に基づき、並列的アクセス
モードでパリティを生成し、次に個別的アクセスモード
に従ってディスク装置にデータを書き込む。
First, in step S4, the parity generation format is changed from the individual access mode set in step S1 to the parallel access mode. As a result, the parallel access mode is set for parity generation, while the individual access mode is set for data storage format. Subsequently, in step S5, it is checked whether all the disk devices belonging to the rank to be written are accessible. If at least one of the disk devices belonging to the rank to be written is busy, the process proceeds to step S6, where parity is generated in the parallel access mode based on the setting result in step S4, and then the individual access mode is set. Write data to the disk device in accordance with.

【0054】この並列的アクセスモードによるパリティ
の生成と個別的アクセスモードによるデータ格納の組合
せは図7に示した通りである。ステップS5でアクセス
対象とするランクの全ディスク装置がアクセス可能であ
った場合にはステップS7に進み、データ格納形式につ
いても並列的アクセスモードに変更する。これによりパ
リティ生成形式及びデータ格納形式の両方について並列
的アクセスモードが設定されたことになる。続いてステ
ップS8で並列的アクセスモードに従ってディスクアレ
イ制御装置10側でパリティを生成し、書込対象とは異
なる別ランクのディスク装置に対し並列的アクセスモー
ドに従ったデータ書込みを実行する。
The combination of parity generation in the parallel access mode and data storage in the individual access mode is as shown in FIG. If all the disk devices of the rank to be accessed are accessible in step S5, the process proceeds to step S7, and the data storage format is also changed to the parallel access mode. As a result, the parallel access mode is set for both the parity generation format and the data storage format. Subsequently, in step S8, parity is generated on the side of the disk array controller 10 in accordance with the parallel access mode, and data is written to a disk device of another rank different from the write target according to the parallel access mode.

【0055】この並列的アクセスモードによるデータ書
込みは、図6に示したようにパリティの生成にディスク
装置の読出しを必要とせず、且つ全てのディスク装置を
並列的にアクセスして非同期に書き込むことができるた
め、データ量が多くても高速のデータ書込みを行うこと
ができる。続いてステップS9に進み、図8に示したよ
うに別ランクのディスク装置に並列的アクセスモードで
書き込んだデータをディスク単位に読み出して個別的ア
クセスモードにより対象ランクのディスク装置への書替
えを行い、個別的アクセスモードに従ったデータ格納形
式に書き替える。
In the data writing in this parallel access mode, as shown in FIG. 6, it is not necessary to read out the disk units for parity generation, and all the disk units are accessed in parallel and written asynchronously. Therefore, high-speed data writing can be performed even if the data amount is large. Subsequently, the process proceeds to step S9, as shown in FIG. 8, the data written to the disk device of another rank in the parallel access mode is read out in disk units, and rewritten to the disk device of the target rank in the individual access mode. Rewrite to the data storage format according to the individual access mode.

【0056】このステップS9における個別的アクセス
モードに従ったデータ格納形式への書替えはホストコン
ピュータからの入出力要求を妨げないため、もし入出力
要求があった場合には一旦、書替処理を中断し、入出力
要求の完了後に再開するようにすることが望ましい。図
12は本発明における他の個別的アクセスモードの説明
図であり、図5に示した個別的アクセスモードにあって
は、パリティの格納位置をディスク装置毎に分散させて
いるが、図12の個別的アクセスモードでは、例えばデ
ィスク装置32−5に固定するようにしたことを特徴と
する。この個別的アクセスモードはRAID4に相当す
る。尚、パリティ生成形式については図5の場合と同様
である。
The rewriting to the data storage format in accordance with the individual access mode in step S9 does not hinder an input / output request from the host computer, so if there is an input / output request, the rewriting process is temporarily interrupted. However, it is desirable to restart after the completion of the input / output request. FIG. 12 is an explanatory diagram of another individual access mode according to the present invention. In the individual access mode shown in FIG. 5, the storage locations of the parity are distributed for each disk device. In the individual access mode, for example, it is fixed to the disk device 32-5. This individual access mode corresponds to RAID4. The parity generation format is the same as in FIG.

【0057】図13は図9のステップS4に示したライ
ト処理の他の実施例を示したフローチャートであり、図
11のライト処理にあっては、書込データ量βが規定デ
ータ量αより多かった場合に全ディスク装置がアクセス
可能か否かで異なるアクセスモードとしているが、図1
3の実施例にあっては、ステップS4でパリティ生成形
式を並列的アクセスモードに変更した後、ステップS5
で並列的アクセスモードでパリティを生成し、個別的ア
クセスモードでディスク装置に書込みを行うようにして
おり、全ディスク装置のアクセス可能か否かに関わら
ず、図7に示した並列的アクセスモードによるパリティ
生成と個別的アクセスモードによるデータ格納とを組み
合わせた動作モードとしている。
FIG. 13 is a flow chart showing another embodiment of the write process shown in step S4 of FIG. 9. In the write process of FIG. 11, the write data amount β is larger than the specified data amount α. In this case, the access mode differs depending on whether all the disk devices are accessible or not.
In the third embodiment, after the parity generation format is changed to the parallel access mode in step S4, step S5
, A parity is generated in the parallel access mode, and writing is performed in the disk device in the individual access mode. Regardless of whether all the disk devices are accessible or not, the parity access mode shown in FIG. The operation mode is a combination of parity generation and data storage in the individual access mode.

【0058】また、図13の実施例にあっては、並列的
アクセスモードのみによるデータ書込みを行っていない
ことから、図8に示すような個別的アクセスモードのデ
ータ格納形式への書戻しは必要ない。尚、図2のハード
ウェア構成に示したように、上記の実施例にあっては1
つのランクにデータ格納用のディスク装置を5台、パリ
ティ格納用のディスク装置を1台設けた場合を例にとる
ものであったが、データ記録用及びパリティ記録用のデ
ィスク装置の台数は必要に応じて任意の数とすることが
できる。この点はランク数についても同様である。
In the embodiment shown in FIG. 13, since data is not written only in the parallel access mode, it is necessary to write back to the data storage format of the individual access mode as shown in FIG. Absent. Note that, as shown in the hardware configuration of FIG.
In this example, five data storage disk devices and one parity storage disk device are provided for one rank. However, the number of disk devices for data recording and parity recording is not necessary. Any number can be used accordingly. This is the same for the number of ranks.

【0059】[0059]

【発明の効果】以上説明してきたように本発明によれ
ば、上位装置からの入出力要求で指定された書込データ
量に応じて並列的アクセスモードと個別的アクセスモー
ドを適切に選択することで、それぞれの動作モードを生
かしたデータ書込みを行うことができ、結果としてディ
スクアレイ装置のアクセス性能を向上することができ
る。
As described above, according to the present invention, the parallel access mode and the individual access mode are appropriately selected according to the write data amount specified by the input / output request from the host device. Thus, data can be written utilizing each operation mode, and as a result, the access performance of the disk array device can be improved.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の原理説明図FIG. 1 is a diagram illustrating the principle of the present invention.

【図2】本発明のハードウェア構成を示した実施例構成
FIG. 2 is a configuration diagram of an embodiment showing a hardware configuration of the present invention.

【図3】本発明によるアクセス機能を示したブロック図FIG. 3 is a block diagram showing an access function according to the present invention.

【図4】本発明における書込データをセクタ単位に分割
した説明図
FIG. 4 is an explanatory diagram in which write data in the present invention is divided into sector units.

【図5】本発明における個別的アクセスモードの説明図FIG. 5 is an explanatory diagram of an individual access mode in the present invention.

【図6】本発明における並列的アクセスモードの説明図FIG. 6 is an explanatory diagram of a parallel access mode according to the present invention.

【図7】本発明における並列的アクセスモードのパリテ
ィ生成形式と個別的アクセスモードのデータ格納形式の
組合せを示した説明図
FIG. 7 is an explanatory diagram showing a combination of a parity generation format in a parallel access mode and a data storage format in an individual access mode according to the present invention.

【図8】本発明で並列的アクセスモードで書込んだ後の
個別的アクセスモードによる書き替えを示した説明図
FIG. 8 is an explanatory diagram showing rewriting in an individual access mode after writing in a parallel access mode in the present invention;

【図9】本発明の全体的な処理動作を示したフローチャ
ート
FIG. 9 is a flowchart showing the overall processing operation of the present invention.

【図10】図4のリード処理の詳細を示したフローチャ
ート
FIG. 10 is a flowchart showing details of a read process in FIG. 4;

【図11】図4のライト処理の詳細を示したフローチャ
ート
FIG. 11 is a flowchart showing details of a write process in FIG. 4;

【図12】本発明における他の個別的アクセスモードの
説明図
FIG. 12 is an explanatory diagram of another individual access mode according to the present invention.

【図13】図4のライト処理の他の実施例を示したフロ
ーチャート
FIG. 13 is a flowchart showing another embodiment of the write processing in FIG. 4;

【図14】RAID0によるディスクアレイ装置の説明
FIG. 14 is an explanatory diagram of a disk array device using RAID0.

【図15】RAID1によるディスクアレイ装置の説明
FIG. 15 is an explanatory diagram of a disk array device using RAID1.

【図16】RAID3によるディスクアレイ装置の説明
FIG. 16 is an explanatory diagram of a disk array device using RAID3.

【図17】RAID3におけるデータ分割の説明図FIG. 17 is an explanatory diagram of data division in RAID3.

【図18】RAID4によるディスクアレイ装置の説明
FIG. 18 is an explanatory diagram of a disk array device using RAID4.

【図19】RAID5によるディスクアレイ装置の説明
FIG. 19 is an explanatory diagram of a disk array device using RAID5.

【符号の説明】[Explanation of symbols]

10:ディスクアレイ制御装置 12:MPU 14:内部バス 16:ホストインタフェース 18:ホストコンピュータ(上位装置) 20:ROM 22:揮発性メモリ(RAM) 24:キャッシュ制御部 26:キャッシュメモリ 28:データ転送バッファ 30−1〜30−n:デバイスアダプタ 32−1〜32−n:ディスク装置 34:第1書込手段(第1書込部) 36:第2書込手段(第2書込部) 38:コマンド解読部 40:書込モード管理テーブル 42:読出部 44:ディスクアクセス部 46:ディスクアレイ 48−1,48−2:ランク 10: Disk array controller 12: MPU 14: Internal bus 16: Host interface 18: Host computer (upper device) 20: ROM 22: Volatile memory (RAM) 24: Cache controller 26: Cache memory 28: Data transfer buffer 30-1 to 30-n: Device adapter 32-1 to 32-n: Disk device 34: First writing unit (first writing unit) 36: Second writing unit (second writing unit) 38: Command decoding unit 40: write mode management table 42: read unit 44: disk access unit 46: disk array 48-1, 48-2: rank

───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 3/06 301 G06F 3/06 302 G06F 3/06 540──────────────────────────────────────────────────続 き Continued on the front page (58) Field surveyed (Int.Cl. 6 , DB name) G06F 3/06 301 G06F 3/06 302 G06F 3/06 540

Claims (9)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】データ格納用とパリティ格納用の複数のデ
ィスク装置(32−1〜32−5)を備えたディスクア
レイ(46)と、 上位装置(18)から指示された書込データ量が少ない
ときは、前記複数のディスク装置(32−1〜32−
5)を個別的にアクセスして所定長に分割したデータを
書込む第1書込手段(34)と、 上位装置(18)から指示された書込みのデータ量が多
いときは、前記複数のディスク装置を並列的にアクセス
して所定長に分割したデータを書込む第2書込手段(3
6)と、を備えたことを特徴とするディスクアレイ装
置。
A disk array (46) having a plurality of disk devices (32-1 to 32-5) for data storage and parity storage, and a write data amount specified by a higher-level device (18). When the number is small, the plurality of disk devices (32-1 to 32-32)
(5) a first writing means (34) for individually accessing and writing data divided into a predetermined length; and when the amount of write data specified by the host device (18) is large, the plurality of disks Second writing means (3) for accessing the apparatus in parallel and writing data divided into predetermined lengths;
6) A disk array device comprising:
【請求項2】請求項1記載のディスクアレイ装置に於い
て、前記第1書込手段(34)は、所定長単位に分割し
たデータの書込みに先立ち、書込み対象のディスク装置
の書込予定位置のデータおよび他のディスク装置に格納
している書込予定位置と同一位置の冗長情報を読出して
新たな冗長情報を生成し、次に新たな分割データと冗長
情報を前記ディスク装置のそれぞれに個別的に書込むこ
とを特徴とするディスクアレイ装置。
2. The disk array device according to claim 1, wherein said first writing means (34) pre-writes a write target position of a disk device to be written before writing data divided into predetermined length units. Data and the redundant information stored in another disk device at the same position as the write-scheduled position are read to generate new redundant information, and then the new divided data and redundant information are individually stored in each of the disk devices. A disk array device characterized in that writing is performed selectively.
【請求項3】請求項1記載のディスクアレイ装置に於い
て、前記第2書込手段(36)は、所定長単位に分割し
たディスク並び方向に並列的に格納する複数のデータか
ら新たな冗長情報を生成し、次に新たな分割データと冗
長情報を前記複数のディスク装置に並列的に書込むこと
を特徴とするディスクアレイ装置。
3. The disk array device according to claim 1, wherein said second writing means (36) newly generates a redundant data from a plurality of data stored in parallel in a disk arrangement direction divided into predetermined length units. A disk array device for generating information, and then writing new divided data and redundant information to the plurality of disk devices in parallel.
【請求項4】請求項1記載のディスクアレイ装置に於い
て、前記第2書込手段(36)は、前記複数のディスク
装置の全てがアクセス可能状態でなかった場合には、前
記複数のディスク装置に個別的にデータを書込む際のデ
ィスク並び方向の分割データから冗長情報を生成し、次
にディスク装置を個別的にアクセスして各分割データお
よび新たな冗長情報を書込むことを特徴とするディスク
アレイ装置。
4. The disk array device according to claim 1, wherein said second writing means (36) is configured to output said plurality of disks when all of said plurality of disk devices are not accessible. It is characterized in that redundant information is generated from the divided data in the disk arrangement direction when writing data individually to the device, and then the disk device is individually accessed to write each divided data and new redundant information. Disk array device.
【請求項5】請求項1記載のディスクアレイ装置に於い
て、前記第2書込手段(36)は、前記複数のディスク
装置が全てアクセス可能状態であった場合には、所定長
単位に分割したディスク並び方向の分割から新たな冗長
情報を生成し、次に分割データと冗長情報を前記複数の
ディスク装置に並列的に書込むことを特徴とするディス
クアレイ装置。
5. The disk array device according to claim 1, wherein said second writing means (36) divides the data into predetermined length units when all of said plurality of disk devices are accessible. A new redundant information is generated from the divided disk array direction, and then the divided data and the redundant information are written in parallel to the plurality of disk devices.
【請求項6】請求項5記載のディスクアレイ装置に於い
て、前記第2書込手段(36)は、分割データと冗長情
報を別に設けた複数のディスク装置に並列的に書込み、
該書込後に読出して前記第1書込手段(34)により本
来のディスク装置を個別的にアクセスして書き替えるこ
とを特徴とするディスクアレイ装置。
6. The disk array device according to claim 5, wherein said second writing means (36) writes divided data and redundant information in parallel to a plurality of disk devices provided separately.
A disk array device wherein the original disk device is individually accessed and rewritten by the first writing means (34) and read out after the writing.
【請求項7】請求項1乃至6記載のディスクアレイ装置
に於いて、前記第1書込手段(34)および第2書込手
段(36)による複数のディスク装置への書込み時に、
冗長情報を書込むディスク装置を分散させることを特徴
とするディスクアレイ装置。
7. The disk array device according to claim 1, wherein said first writing means (34) and said second writing means (36) write data to a plurality of disk devices.
A disk array device in which disk devices for writing redundant information are dispersed.
【請求項8】請求項1乃至6記載のディスクアレイ装置
に於いて、前記第1書込手段(34)および第2書込手
段(36)による複数のディスク装置への書込み時に、
冗長情報を書込むディスク装置を固定させることを特徴
とするディスクアレイ装置。
8. The disk array device according to claim 1, wherein said first writing means (34) and said second writing means (36) write data to a plurality of disk devices.
A disk array device wherein a disk device for writing redundant information is fixed.
【請求項9】請求項1乃至8記載のディスクアレイ装置
に於いて、前記冗長情報としてパリティデータを使用
し、前記第1書込手段(34)はディスク装置から読出
したデータとパリティデータおよび新たに書込むデータ
の排他的論理和から新たなパリティを生成し、前記第2
書込手段(36)はディスク並び方向に並列的に書込む
複数データの排他的論理和から新たなパリティを生成す
ることを特徴とするディスクアレイ装置。
9. The disk array device according to claim 1, wherein parity data is used as said redundant information, and said first writing means (34) reads data read from the disk device, parity data, and new data. A new parity is generated from the exclusive OR of the data to be written into
A disk array device wherein the writing means (36) generates a new parity from an exclusive OR of a plurality of data written in parallel in the disk arrangement direction.
JP4269825A 1992-10-08 1992-10-08 Disk array device Expired - Fee Related JP2857289B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP4269825A JP2857289B2 (en) 1992-10-08 1992-10-08 Disk array device
US08/133,441 US5666511A (en) 1992-10-08 1993-10-06 Deadlock suppressing schemes in a raid system
US08/582,721 US5848229A (en) 1992-10-08 1996-01-04 Fault tolerant disk array system for allocating auxillary disks in place of faulty disks
US08/633,090 US5696933A (en) 1992-10-08 1996-04-16 Apparatus for controlling data writing into a disk array system including a data length detecting unit and a writing mode selector

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4269825A JP2857289B2 (en) 1992-10-08 1992-10-08 Disk array device

Publications (2)

Publication Number Publication Date
JPH06119121A JPH06119121A (en) 1994-04-28
JP2857289B2 true JP2857289B2 (en) 1999-02-17

Family

ID=17477704

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4269825A Expired - Fee Related JP2857289B2 (en) 1992-10-08 1992-10-08 Disk array device

Country Status (1)

Country Link
JP (1) JP2857289B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4491273B2 (en) * 2004-05-10 2010-06-30 株式会社日立製作所 Storage system, file access control program, and file access control method
CN112988074B (en) * 2021-04-07 2023-08-29 深圳市优服信息技术有限公司 Storage system management software adaptation method and device

Also Published As

Publication number Publication date
JPH06119121A (en) 1994-04-28

Similar Documents

Publication Publication Date Title
JP3742494B2 (en) Mass storage device
US5566316A (en) Method and apparatus for hierarchical management of data storage elements in an array storage device
US5488701A (en) In log sparing for log structured arrays
JP3129732B2 (en) Storage array with copy-back cache
US5720027A (en) Redundant disc computer having targeted data broadcast
JP3304115B2 (en) Configurable redundant array storage
US5077736A (en) Disk drive memory
US5258984A (en) Method and means for distributed sparing in DASD arrays
US5617425A (en) Disc array having array supporting controllers and interface
JP3181398B2 (en) Array type recording device
US5613088A (en) Raid system including first and second read/write heads for each disk drive
JPH06208476A (en) Redundancy array parity cashing system
JPH06332623A (en) Array type recorder and recorder
JPH05143471A (en) Online reconstituting method for failed memory device in redundant array of memory device
US20020007438A1 (en) Memory system for improving data input/output performance and method of caching data recovery information
US5875460A (en) Disk array subsystem and data generation method therefor
US6343343B1 (en) Disk arrays using non-standard sector sizes
US5787463A (en) Disk array system including a dual-ported staging memory and concurrent redundancy calculation capability
JP2857288B2 (en) Disk array device
JPH07261946A (en) Array type storage device
JP2857289B2 (en) Disk array device
US5659677A (en) Data storage apparatus for disk array
JP3122252B2 (en) Disk array control method
JPH06119125A (en) Disk array device
JP2570614B2 (en) Disk array device

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19981110

LAPS Cancellation because of no payment of annual fees