JP3122252B2 - Disk array control method - Google Patents

Disk array control method

Info

Publication number
JP3122252B2
JP3122252B2 JP04269824A JP26982492A JP3122252B2 JP 3122252 B2 JP3122252 B2 JP 3122252B2 JP 04269824 A JP04269824 A JP 04269824A JP 26982492 A JP26982492 A JP 26982492A JP 3122252 B2 JP3122252 B2 JP 3122252B2
Authority
JP
Japan
Prior art keywords
data
disk array
cache memory
redundant information
disk
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP04269824A
Other languages
Japanese (ja)
Other versions
JPH06119120A (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 JP04269824A priority Critical patent/JP3122252B2/en
Priority to DE4345320A priority patent/DE4345320B4/en
Priority to PCT/JP1993/000663 priority patent/WO1993023803A1/en
Priority to DE4392143A priority patent/DE4392143C1/en
Publication of JPH06119120A publication Critical patent/JPH06119120A/en
Priority to US08/746,154 priority patent/US5787460A/en
Priority to US09/031,004 priority patent/US5954822A/en
Application granted granted Critical
Publication of JP3122252B2 publication Critical patent/JP3122252B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

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 device for performing data input / output processing by accessing a plurality of disk devices in parallel, and efficiently generating redundant information when updating data stored in the disk devices. The present invention relates to a well-performed disk array device. 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. As meeting these requirements,
Disk array devices have been receiving attention. The disk array device is configured by arranging a plurality of small disk devices, distributing the data therein, recording data, and accessing them 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]図34はデータの冗長性をもたないディ
スクアレイ装置を示したもので、デビット・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. 34 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のディスクアレイ装置は図3
5に示すように、ディクス装置32−1に格納したデー
タA〜CのコピーA´〜C´を格納したミラーディスク
装置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. 3 shows a disk array device of RAID1.
As shown in FIG. 5, a mirror disk device 32-2 stores copies A 'to C' of data A to C 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のディスクアレイ装置は、図
36に示す構成をもつ。即ち、図37に示すように例え
ばデータa,b,cをビットまたはセクタ単位にデータ
a1〜a3,b1〜b3,c1〜c3に分割し、更にデ
ータa1〜a3からパリティP1を計算し、データb1
〜b3からパリティP2を計算し、データc1〜c3か
らパリティP3を計算し、図36のディスク装置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. 37, for example, the data a, b, and c are divided into data a1 to a3, b1 to b3, c1 to c3 in units of bits or sectors, and a parity P1 is calculated from the data a1 to a3. b1
36b, 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のディスクアレイ装置は、図
38に示すように、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. 38, 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のディスクアレイ装置は、パ
リティ用のディスク装置を固定しないことで、並列の読
み書きを可能にしている。即ち、図39に示すように、
セクタごとにパリティの置かれるディスク装置が異なっ
ている。ここでデータ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は、非同期に複数の
ディスク装置にアクセスしてリード/ライトを実行でき
るため、少量データをランダムにアクセスするトランザ
クション処理に向いている。ここでRAID3〜RAI
D5に示したようなディスクアレイ装置において、冗長
な情報の生成に関連するディスク装置の組合わせをラン
クと呼ぶことにする。例えば、データ記録用のk台のデ
ィスク装置と、データに関連した冗長な情報を記録する
m台のディスク装置がある場合、(k+m)台のディス
ク装置をまとめてランクとする。
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. Here, RAID3 to RAI
In the disk array device shown in D5, a combination of disk devices related to generation of redundant information is called a rank. For example, when there are k disk devices for recording data and m disk devices for recording redundant information related to data, (k + m) disk devices are collectively ranked.

【0013】[0013]

【発明が解決しようとする課題】このような従来のRA
ID4およびRAID5に相当するディスクアレイ装置
にあっては、ランク内のディスク装置に格納しているデ
ータの一部あるいは全部を書き替えて更新する場合、更
新するデータに関連する冗長な情報も更新する必要があ
る。この時、新しい冗長情報を得るために、更新前のデ
ータと冗長情報が必要になる。
SUMMARY OF THE INVENTION Such a conventional RA
In a disk array device corresponding to ID4 and RAID5, when part or all of data stored in a disk device in a rank is rewritten and updated, redundant information related to the data to be updated is also updated. There is a need. At this time, in order to obtain new redundant information, data before updating and redundant information are required.

【0014】いま冗長情報としてパリティデータを使用
したとすると、ディスクアレイ装置のランク内の1台の
ディスク装置のデータを更新する時には次の(1)式か
ら新パリティを計算することができる。 旧データ(+)旧パリティ(+)新データ=新パリティ (1) 但し、(+)は排他的論理和を示す。 この(1)式から分かるように、データ更新時には、更
新データの書き込みの前に、更新前データと冗長情報を
それぞれのディスク装置から読み出しておかなければな
らない。このため、更新前のデータおよび冗長情報をデ
ィスク装置から読出す分だけ通常のディスク装置よりデ
ータ更新の処理に時間が多くかかるという問題があっ
た。本発明の目的は、更新時に冗長情報を生成するため
に必要なディスクアクセスを効率良く行うようにしたデ
ィスクアレイ装置を提供する。
Assuming that parity data is used as redundancy information, a new parity can be calculated from the following equation (1) when updating data of one disk device in the rank of the disk array device. Old data (+) old parity (+) new data = new parity (1) where (+) indicates exclusive OR. As can be seen from the equation (1), at the time of data update, before writing the update data, the pre-update data and the redundancy information must be read from the respective disk devices. For this reason, there is a problem that it takes more time to perform the data update process than a normal disk device by reading the data and redundant information before the update from the disk device. An object of the present invention is to provide a disk array device that efficiently performs disk access required for generating redundant information at the time of updating.

【0015】本発明の他の目的は、冗長情報の生成に使
用する更新前のデータをキャッシュメモリに格納してデ
ィスク装置から読出し不要としたディスクアレイ装置を
提供する。本発明の他の目的は、冗長情報の生成に使用
する更新前の冗長情報をキャッシュメモリに格納してデ
ィスク装置から読出し不要としたディスクアレイ装置を
提供する。
Another object of the present invention is to provide a disk array device in which data before updating used for generating redundant information is stored in a cache memory and is not required to be read from a disk device. Another object of the present invention is to provide a disk array device in which redundant information before updating used for generating redundant information is stored in a cache memory and is not required to be read from a disk device.

【0016】本発明の他の目的は、冗長情報の生成に使
用する更新前のデータおよび冗長情報をキャッシュメモ
リに格納してディスク装置から読出し不要としたディス
クアレイ装置を提供する。本発明の他の目的は、更新を
複数回行うまではディスク装置にデータ及び又は冗長情
報を書き戻さないようにして更新処理を効率良く行うよ
うにしたディスクアレイ装置を提供する。
Another object of the present invention is to provide a disk array device in which data before updating and redundant information used for generating redundant information are stored in a cache memory and need not be read from a disk device. Another object of the present invention is to provide a disk array device in which data and / or redundant information is not written back to the disk device until the update is performed a plurality of times so that the updating process is performed efficiently.

【0017】本発明の他の目的は、ディスク装置及びキ
ャッシュメモリの空き領域にダミーデータを格納して更
新時の冗長情報の生成が効率良くできるようにしたディ
スクアレイ装置を提供する。
Another object of the present invention is to provide a disk array device in which dummy data is stored in a free area of a disk device and a cache memory so that redundant information at the time of updating can be efficiently generated.

【0018】[0018]

【課題を解決するための手段】図1は本発明の原理説明
図である。まず本発明で用いるディスクアレイ46は、
データを格納する複数のディスク装置32−1〜32−
4と冗長情報として例えぱパリティデータを格納するデ
ィスク装置32−5を備える。
FIG. 1 is a diagram illustrating the principle of the present invention. First, the disk array 46 used in the present invention includes:
A plurality of disk devices 32-1 to 32 for storing data
4 and a disk device 32-5 for storing parity data as redundant information.

【0019】ここでデータ格納用のディスク装置32−
1とパリティ格納用のディスク装置32−5の組をラン
クと定義し、また各ディスク装置32−1〜32−5に
所定データ長、例えばセクタ単位にデータを分割して書
込むものとする。パリティ格納用のディスク装置は、固
定的に決めてもよいし(RAID−4)、セクタ位置毎
に異ならせるようにしてもよい(RAID−5)。
The data storage disk device 32-
A set of 1 and a disk device 32-5 for storing parity is defined as a rank, and data is divided and written into each of the disk devices 32-1 to 32-5 in a predetermined data length, for example, in sector units. The disk device for storing parity may be fixedly determined (RAID-4) or may be different for each sector position (RAID-5).

【0020】データ処理手段34は、上位装置18から
の更新要求を受けると、新たなデータ、更新前のデータ
および更新前の冗長情報に基づいて新たな冗長情報を生
成すると共に、ディスクアレイ46に格納している更新
前のデータおよび冗長情報を新たなデータおよび冗長情
報に更新する。冗長情報としてパリティデータを用いた
場合、新たなデータ、更新前のデータおよび更新前のパ
リティデータの排他的論理和により新たなパリティデー
タを生成する。即ち、次式で求める。 新パリティ=新データ(+)旧データ(+)旧パリティ さらに本発明は、冗長情報をディスクアレイ46のディ
スク装置をアクセスすることなく生成するため、キャッ
シュメモリ26を設ける。キャッシャメモリ26の記憶
データは次の3つのケースに分かれる。
Upon receiving an update request from the host device 18, the data processing means 34 generates new redundant information based on the new data, the data before the update, and the redundant information before the update. The stored data and redundant information before updating are updated to new data and redundant information. When parity data is used as redundant information, new parity data is generated by exclusive OR of new data, data before update, and parity data before update. That is, it is obtained by the following equation. New parity = new data (+) old data (+) old parity Further, in the present invention, a cache memory 26 is provided to generate redundant information without accessing the disk device of the disk array 46. The data stored in the cashier memory 26 is divided into the following three cases.

【0021】(1)データのみを記憶 (2)冗長情報のみを記憶 (3)データと冗長情報の両方を記憶 キャッシュ制御手段24は、アクセス処理手段34でデ
ィスクアレイ46を更新する前にキャッシュメモリ26
から更新前のデータ及び又は冗長情報を検索してアクセ
ス処理手段34に供給して冗長情報を生成させる。
(1) Storing only data (2) Storing only redundant information (3) Storing both data and redundant information The cache control unit 24 stores the cache memory before the access processing unit 34 updates the disk array 46. 26
The data and / or redundant information before the update is searched from and supplied to the access processing means 34 to generate redundant information.

【0022】またキャッシュ制御手段24は、キャッシ
ュメモリ26の検索でデータ及び又は冗長情報が記憶さ
れていなかったミスの場合には、アクセス処理手段34
に記憶なしを通知してディスクアレイ46からの読出し
に基づく更新後にデータ及び又は冗長情報をキャッシュ
メモリ26に記憶する。さらに本発明は、予め定めた所
定回数だけデータをキャッシュメモリ26上の新たに確
保した領域で更新した後にディスクアレイ46に書き戻
す。
The cache control means 24 provides an access processing means 34 if the data and / or redundant information is not stored in the cache memory 26 search.
And updates the data and / or redundant information in the cache memory 26 after updating based on reading from the disk array 46. Further, according to the present invention, data is written back to the disk array 46 after updating data in a newly secured area on the cache memory 26 a predetermined number of times.

【0023】具体的には、アクセス処理手段34は、更
新回数が所定回数に達するまでは、更新毎に新たな冗長
情報を生成することなくキャッシュメモリ26上でデー
タを更新し、更新回数が所定回数に達した時には、キャ
ッシュメモリ26上でデータを更新した後にディスクア
レイ46から読出した更新前の冗長情報(旧パリティ)
およびキュッシュメモリ26から読出した最新の更新デ
ータと更新前のデータ(旧データ)から新たな冗長情報
を生成し、ディスクアレイ46にデータおよび冗長情報
を書き戻す。
Specifically, the access processing means 34 updates the data in the cache memory 26 without generating new redundant information for each update until the number of updates reaches the predetermined number of times. When the number of times has been reached, the redundant information before updating (old parity) read from the disk array 46 after updating the data in the cache memory 26.
Then, new redundant information is generated from the latest updated data read from the cache memory 26 and the data before the update (old data), and the data and redundant information are written back to the disk array 46.

【0024】この場合の冗長情報の生成は、パリティデ
ータの生成を例にとると次式のようになる。 新パリティ=旧データ(+)旧パリティ(+)最新の更
新データ 更に、ディクスアレイ内34の各ディスク装置及びキャ
ッシュメモリ26の空き領域にダミーデータDdummy
よびダミー冗長情報Pdummy を格納し、アクセス処理手
段34はデータの更新及び削除時に空き領域のダミーデ
ータ及びダミー冗長情報を含めて新たな冗長情報を生成
し、且つダミーデータ及びダミー冗長情報についてはデ
ィスクアレイ46から読出さずに予め設定した値を使用
する。
The generation of redundant information in this case is represented by the following equation, taking the generation of parity data as an example. New parity = old data (+) old parity (+) latest updated data Further, the dummy data D dummy and the dummy redundancy information P dummy are stored in each of the disk devices in the disk array 34 and the empty area of the cache memory 26 and accessed. The processing means 34 generates new redundant information including dummy data and dummy redundant information of a free area when updating and deleting data, and sets the dummy data and dummy redundant information in advance without reading them from the disk array 46. Use values.

【0025】[0025]

【作用】このような構成を備えた本発明のディスクアレ
イ装置によれば、データの更新処理時に、更新処理以前
にアクセスされたデータの一部または全部を記憶してお
くキャッシュメモリを設け、更新処理の際に更新前のデ
ータがキャッシュメモリに記憶されていたならば、キャ
ッシュメモリから読出して使用することで、ディスク装
置から読み出す処理が省くことができ、処理時間を短縮
することが可能となる。
According to the disk array apparatus of the present invention having such a configuration, at the time of data update processing, a cache memory for storing a part or all of data accessed before the update processing is provided. If the data before the update is stored in the cache memory at the time of processing, by reading from the cache memory and using it, the processing of reading from the disk device can be omitted, and the processing time can be reduced. .

【0026】またデータと同時に対応する冗長情報もキ
ャッシュメモリに記憶するれば、更新前の冗長情報もデ
ィスク装置から直接読み出す処理を省略することが可能
となって、一層の処理時間の短縮が可能となる。更に、
更新処理時に、更新されたデータをすぐディスク装置に
書き込まないでキャッシュメモリ上に記憶しておき、そ
のデータが所定回数だけ更新された後にデータ装置に書
き戻す処理を行うことで、更新前データと最新の更新デ
ータをキャッシュメモリから読出して新たな冗長情報を
生成することができ、更新処理毎に更新データと冗長情
報のディスク装置に書き込み処理を不要にできる。
If the corresponding redundant information is stored in the cache memory at the same time as the data, it is possible to omit the process of directly reading out the redundant information before the update from the disk device, further shortening the processing time. Becomes Furthermore,
During the update process, the updated data is stored in the cache memory without being immediately written to the disk device, and after the data has been updated a predetermined number of times, the data is written back to the data device. The latest update data can be read from the cache memory to generate new redundant information, and the write process of the update data and the redundant information to the disk device can be omitted for each update process.

【0027】更にまたディスク装置およびキャッシュメ
モリの空き領域にダミーデータを入れ、ダミーデータを
含めて同一セグメントのいずれかの更新時に冗長情報の
生成を行い、冗長情報を生成するための同一セグメント
の空き領域の管理を不要とする。またダミーデータは決
った固定値であることからディスク装置からの読出しを
必要とせず、ダミーデータを含めても冗長情報の生成は
簡単にできる。
Furthermore, dummy data is inserted into a free area of the disk device and the cache memory, redundant information is generated when any of the same segments including the dummy data is updated, and free space of the same segment for generating redundant information is generated. Eliminates the need for area management. Further, since the dummy data is a fixed value, reading from the disk device is not required, and the generation of the redundant information can be easily performed even if the dummy data is included.

【0028】[0028]

【実施例】【Example】

<目次> 1.本発明のハードウェア構成 2.データのみをキャッシュメモリに記憶する第1実施
例 3.複数回更新後のディクス装置への書き戻し処理 4.冗長情報のみをキャッシュメモリに記憶する第2実
施例 5.データ及び冗長情報の両方をキャッシュメモリに記
憶する第3実施例 6.ダミーデータを空き領域に記憶する第4実施例 1.本発明のハードウェア構成 図2は本発明によるディスクアレイ装置のハードウェア
構成を示した実施例構成図である。
<Table of Contents> 1. Hardware configuration of the present invention 2. First embodiment in which only data is stored in a cache memory 3. Write-back process to disk device after multiple updates 4. Second embodiment in which only redundant information is stored in cache memory 5. Third embodiment in which both data and redundant information are stored in a cache memory Fourth embodiment in which dummy data is stored in a free area FIG. 2 is a block diagram of an embodiment showing a hardware configuration of a disk array device according to the present invention.

【0029】図2において、ディスクアレイ制御装置1
0には制御手段として動作するMPU12が設けられ、
MPU12からの内部バス14に対し、処理プログラム
を格納したROM20、制御記憶等として用いられるR
AM22、キャッシュ制御部24を介して接続したキャ
ッシュメモリ26、データ転送バッファ28が設けられ
る。また、上位装置としてのホストコンピュータ18と
のやり取りを行うため、ホストインタフェース16が設
けられている。
In FIG. 2, the disk array controller 1
0 is provided with an MPU 12 operating as control means,
A ROM 20 storing a processing program, an R used as a control storage, etc.
An AM 22, a cache memory 26 connected via a cache control unit 24, and a data transfer buffer 28 are provided. Further, a host interface 16 is provided to exchange data with a host computer 18 as a host device.

【0030】ディスクアレイ制御装置10の配下には、
この実施例にあってはランク48−1,48−2の2ラ
ンク構成のディスクアレイ46が設けられている。ディ
スクアレイ46の中のランク48−1には5台のディス
ク装置32−1〜32−5が設けられ、ランク48−2
にも同じく5台のディスク装置32−6〜32−10が
設けられる。
Under the control of the disk array control device 10,
In this embodiment, a disk array 46 having a two-rank configuration of ranks 48-1 and 48-2 is provided. In the rank 48-1 in the disk array 46, five disk devices 32-1 to 32-5 are provided.
Similarly, five disk devices 32-6 to 32-10 are provided.

【0031】更に、ランク48−1,48−2のそれぞ
れに対し予備機として待機状態にあるディスク装置32
−11,32−12が設けられる。ランク48−1,4
8−2を構成する5台のディスク装置の内、4台がデー
タ記録用に使用され、残り1台がパリティ記録用に使用
される。但し、パリティ記録用のディスク装置が固定さ
れるのは、図38に示したRAID4のディスクアレイ
の場合であり、図39に示したRAID5のディスクア
レイにあっては、ディスク内への記録単位であるセクタ
位置が異なる毎に、ランク内でのパリティの記録位置が
変更されるようになる。
Further, each of the ranks 48-1 and 48-2 has a disk device 32 in a standby state as a standby device.
-11 and 32-12 are provided. Rank 48-1,4
Of the five disk devices that make up 8-2, four are used for data recording and the remaining one is used for parity recording. However, the disk device for parity recording is fixed in the case of the RAID 4 disk array shown in FIG. 38, and in the RAID 5 disk array shown in FIG. Each time a certain sector position is different, the parity recording position in the rank is changed.

【0032】ランク48−1,48−2を構成するディ
スク装置32−1〜32−10及び予備のディスク装置
32−11,32−12は、ディスクアレイ制御装置1
0に設けたデバイスアダプタ30−1〜30−6を介し
てMPU12の内部バス14に接続される。デバイスア
ダプタ30−1,30−6はランク48−1,48−2
の同一位置のディスク装置、例えばデバイスアダプタ3
0−1にあってはディスク装置32−1,32−6のア
クセスをMPU12の制御のもとに実行する。
The disk units 32-1 to 32-10 and the spare disk units 32-11 and 32-12 which constitute the ranks 48-1 and 48-2 are the disk array control units 1
0 via the device adapters 30-1 to 30-6. The device adapters 30-1 and 30-6 are ranked 48-1 and 48-2.
Disk device at the same position, for example, device adapter 3
In the case of 0-1, access to the disk devices 32-1 and 32-6 is executed under the control of the MPU 12.

【0033】図3は図2のキャッシュ制御部24の構成
を示す。キャッシュ制御部24は、全体を制御するMP
U60、MPU60の制御で使用する制御記憶62、バ
ス14との間でデータやMPU6との指示のやり取りを
制御するバス制御回路64、キャッシュメモリ26との
間でデータの受渡しを行うメモリ制御回路68、バス制
御回路64とメモリ制御回路68の間のデータ受渡しを
行うバッファ回路66を備える。
FIG. 3 shows the configuration of the cache control unit 24 of FIG. The cache control unit 24 controls the MP that controls the entire system.
U60, a control memory 62 used for controlling the MPU 60, a bus control circuit 64 for controlling exchange of data and instructions with the MPU 6 with the bus 14, and a memory control circuit 68 for transferring data with the cache memory 26. , A buffer circuit 66 for transferring data between the bus control circuit 64 and the memory control circuit 68.

【0034】ディスクアレイ制御装置10のMPU12
から送られた指示は、バス14を経由してバス制御回路
64を通り、キャッシュ制御部24のMPU60に渡さ
れる。MPU60は、アクセス対象のメモリアドレスを
メモリ制御回路68に指示する。更にMPU60は、メ
モリ制御回路68、バッファ回路66、バス制御回路6
4へデータ転送に間する指示を行う。キャッシュメモリ
26からの読出しの場合は、指示されたメモリアドレス
の内容が、メモリ制御回路68、バッファ回路66およ
びバス制御回路64を通してバス14に渡される。キャ
ッシュメモリ26への書込みの場合、バス14からバス
制御回路64に渡されたデータは、バッファ回路66経
由でメモリ制御回路68へ渡り、キャッシュメモリ26
の指定アドレスに書込まれる。 2.データのみをキャッシュメモリに記憶する第1実施
例 図4は本発明の第1実施例を示した機能ブロック図であ
り、この第1実施例にあっては、ディスクアレイ制御装
置10に設けたキャッシュメモリ26にディスクアレイ
46の更新に使用したデータのみを記憶するようにした
ことを特徴とする。
The MPU 12 of the disk array controller 10
Is passed to the MPU 60 of the cache control unit 24 via the bus control circuit 64 via the bus 14. The MPU 60 indicates a memory address to be accessed to the memory control circuit 68. Further, the MPU 60 includes a memory control circuit 68, a buffer circuit 66, a bus control circuit 6
4 is instructed to transfer data. In the case of reading from the cache memory 26, the contents of the specified memory address are passed to the bus 14 through the memory control circuit 68, the buffer circuit 66, and the bus control circuit 64. In the case of writing to the cache memory 26, data passed from the bus 14 to the bus control circuit 64 passes to the memory control circuit 68 via the buffer circuit 66, and
Is written to the specified address. 2. First Embodiment in which Only Data is Stored in Cache Memory FIG. 4 is a functional block diagram showing a first embodiment of the present invention. In the first embodiment, a cache provided in a disk array controller 10 is provided. It is characterized in that only data used for updating the disk array 46 is stored in the memory 26.

【0035】図4において、ディスクアレイ制御装置1
0に設けられたアクセス処理部34はMPU12のプロ
グラム制御により実現され、ホストコンピュータ18か
らの入出力要求としてのコマンドに基づいてディスクア
レイ46に対するアクセス処理を実行する。図4にあっ
ては、ディスクアレイ46としてディスク装置32−1
〜32−5の5台を取り出して示した1ランク構成とし
て示している。1つのランクを構成するディスク装置3
2−1〜32−5は、破線で示すように所定のデータ記
録単位、例えばセクタ単位に分けられている。また、デ
ィスク装置32−1〜32−5のそれぞれには物理ID
が予め設定されており、ホストコンピュータ18からの
論理IDをアクセス処理部34に設けたデバイスID管
理テーブルで物理IDに変換して、アクセス対象となる
ディスク装置を指定することができる。
In FIG. 4, the disk array controller 1
The access processing unit 34 provided in the CPU 0 is realized by program control of the MPU 12 and executes access processing to the disk array 46 based on a command as an input / output request from the host computer 18. In FIG. 4, the disk device 32-1 is used as the disk array 46.
It is shown as a one-rank configuration in which five units of 〜32-5 are taken out and shown. Disk device 3 constituting one rank
2-1 to 32-5 are divided into predetermined data recording units, for example, sector units, as indicated by broken lines. Each of the disk devices 32-1 to 32-5 has a physical ID.
Is set in advance, and a logical ID from the host computer 18 can be converted into a physical ID by a device ID management table provided in the access processing unit 34, and a disk device to be accessed can be designated.

【0036】即ち、ホストコンピュータ18間のコマン
ドをアクセス処理部34で解読すると、ディスクIDと
データアドレスが得られ、ディスクIDにより特定のデ
ィスク装置を指定してデータアドレスに対しホストコン
ピュータ18からの要求に基づいたリード処理またはラ
イト処理を実行することになる。ディスクアレイ46の
ディスク装置32−1〜32−5の各セクタ位置に対す
る格納データとして、この実施例にあってはRAID4
において、パリティディスクをディスク装置32−5に
固定した場合を例にとっている。
That is, when a command between the host computers 18 is decoded by the access processing unit 34, a disk ID and a data address are obtained. A specific disk device is designated by the disk ID, and a request from the host computer 18 for the data address is issued. Will be executed based on the read processing or the write processing. In this embodiment, RAID 4 is used as storage data for each sector position of the disk devices 32-1 to 32-5 of the disk array 46.
In the example, the parity disk is fixed to the disk device 32-5.

【0037】例えばディスク装置32−1〜32−4の
各第1セクタ位置での格納データD01〜D04の排他
的論理和として求めたパリティデータP01をディスク
装置32−5の同一セクタ位置に格納している。キャッ
シュ制御部24には図3に示したMPU60でのプログ
ラム制御で実現されるヒット判定部36とキャッシュア
クセス部38が設けられる。
For example, parity data P01 obtained as an exclusive OR of storage data D01 to D04 at each first sector position of each of disk devices 32-1 to 32-4 is stored in the same sector position of disk device 32-5. ing. The cache control unit 24 is provided with a hit determination unit 36 and a cache access unit 38 realized by the program control by the MPU 60 shown in FIG.

【0038】ヒット判定部36はアクセス処理部34で
ホストコンピュータ18からのコマンドを解読して得ら
れたディスクIDとデータアドレスの通知を受け、キャ
ッシュメモリ26の検索を行う。第1実施例において、
キャッシュメモリ26にはディスクアレイ46の中のデ
ータ記録用のディスク装置32−1〜32−4に対し行
った更新データのみが記憶されている。
The hit judging unit 36 receives the notification of the disk ID and the data address obtained by decoding the command from the host computer 18 by the access processing unit 34, and searches the cache memory 26. In the first embodiment,
The cache memory 26 stores only the update data performed on the data recording disk devices 32-1 to 32-4 in the disk array 46.

【0039】ヒット判定部36はアクセス処理部34か
らのデバイスIDとデータアドレスに基づいてキャッシ
ュテーブルを参照し、キャッシュテーブルで該当するデ
ータのキャッシュ登録を、即ちヒットを判定すると、キ
ャッシュメモリ26から対応する更新前の旧データを読
み出してアクセス処理部34に供給する。アクセス処理
部34はディスクアレイ46の指定されたディスク装置
のデータ更新を実行する前に、キャッシュメモリ26か
ら読み出した更新前の旧データ、ディスク装置に格納し
ている旧パリティおよび更新する新データとに基づき、
新パリティを生成し、新パリティの生成後にディスク装
置に新データを書き込んで更新すると共に、パリティ用
のディスク装置32−5の更新セクタと同一位置のセク
タに新パリティを書き込んで、パリティの更新を行う。
The hit judging unit 36 refers to the cache table based on the device ID and the data address from the access processing unit 34, and registers the corresponding data in the cache table in the cache table, that is, when the hit is judged, the cache memory 26 The old data before updating is read and supplied to the access processing unit 34. Before executing the data update of the designated disk device of the disk array 46, the access processing unit 34 stores the old data before update read from the cache memory 26, the old parity stored in the disk device, and the new data to be updated. Based on
A new parity is generated, and after the new parity is generated, new data is written and updated in the disk device, and a new parity is written in a sector at the same position as the updated sector of the parity disk device 32-5 to update the parity. Do.

【0040】ヒット判定部36でキャッシュ管理テーブ
ルを検索しても対象データの登録が得られなかったミス
判定時には、キャッシュメモリ26から読み出さず、通
常通りディスクアレイ46の更新対象となったディスク
装置の対応セクタに格納している更新前の旧データとパ
リティ用のディスク装置32−5の同一セグメントの更
新前の旧パリティを読み出し、更に新データとから新パ
リティを生成した後、ディスク装置に対するデータとパ
リティを更新する。
When the hit judging unit 36 judges that the target data cannot be registered even after searching the cache management table, the hit judging unit 36 does not read out the data from the cache memory 26 and normally updates the disk array 46 to be updated. After reading the old data before update stored in the corresponding sector and the old parity before update of the same segment of the parity disk device 32-5, and generating new parity from the new data, the data for the disk device is read. Update parity.

【0041】図5は図4のキャッシュメモリ26の記憶
内容の一例を示したもので、記憶アドレスはディスクI
D番号とデータアドレスに対応するセクタ番号で特定す
ることができ、ディスクアレイ46のディスク装置32
−1〜32−4と対応関係をもってデータD01,D0
2,D03,・・・を記憶している。図6はセクタ位置
が変わる毎にパリティデータを記憶するディスク装置が
異なるRAID5相当のディスクアレイ46に対応した
キャッシュメモリ26の記憶内容を示したもので、同じ
くディスクID番号とデータアドレスに対応したセクタ
番号で記憶領域を特定することができる。ここで斜線に
より消去したディスクID番号とセクタ番号で指定され
る領域は、パリティデータに対応していることから、第
1実施例のデータのみをキャッシュメモリ26に記憶す
る場合には除外されている。
FIG. 5 shows an example of the contents stored in the cache memory 26 of FIG.
It can be specified by the D number and the sector number corresponding to the data address.
Data D01 and D0 in correspondence with −1 to 32-4
2, D03,... Are stored. FIG. 6 shows the storage contents of the cache memory 26 corresponding to the disk array 46 corresponding to RAID 5 in which the disk device storing the parity data is changed every time the sector position is changed. Similarly, the sector corresponding to the disk ID number and the data address is shown. The storage area can be specified by the number. Here, since the area specified by the disk ID number and the sector number erased by oblique lines corresponds to parity data, the case where only the data of the first embodiment is stored in the cache memory 26 is excluded. .

【0042】図7は図4のディスクアレイ制御装置10
における全体的な処理動作を示したフローチャートであ
る。図7において、まずステップS1でアクセス処理部
34がホストコンピュータ18からのコマンドの受領の
有無をチェックしており、コマンドを受領するとステッ
プS2に進んでコマンド解読処理を行う。解読したコマ
ンド内容について、ステップS3でリードかライトかを
判別し、リードであればステップS4のリード処理に進
み、ライトであればステップS5のライト処理に進む。
FIG. 7 shows the disk array controller 10 of FIG.
5 is a flowchart showing the overall processing operation in FIG. In FIG. 7, first, in step S1, the access processing unit 34 checks whether or not a command has been received from the host computer 18. When the command is received, the process proceeds to step S2 to perform a command decoding process. It is determined in step S3 whether the decoded command is read or write. If the command is read, the process proceeds to step S4, and if the command is write, the process proceeds to step S5.

【0043】ここで、ホストコンピュータ18によるデ
ィスクアレイ46に対する入出力要求としては、 新規データの書込み、 既存データを書き替える更新、 既存データの削除、 があり、各入出力要求の内容に応じたステップS4のリ
ード処理及びまたはステップS5のライト処理が実行さ
れることになる。
The input / output requests from the host computer 18 to the disk array 46 include writing new data, updating existing data, and deleting existing data. The read process in S4 and / or the write process in step S5 are executed.

【0044】図8は図7のステップS4に示したリード
処理の詳細を示したフローチャートである。図8におい
て、まずステップS1でアクセス処理部34がホストコ
マンドの解読結果として得られたディスクIDとデータ
アドレスで決まるセクタ番号をキャッシュ制御部24の
ヒット判定部36に通知する。ヒット判定部36はステ
ップS2でキャッシュ管理テーブルをディスクIDとセ
クタ番号に基づいて検索し、キャッシュメモリ26に対
するリード対象データの登録の有無を判定する。
FIG. 8 is a flowchart showing details of the read processing shown in step S4 of FIG. 8, first, in step S1, the access processing unit 34 notifies the hit determination unit 36 of the cache control unit 24 of a sector number determined by a disk ID and a data address obtained as a result of decoding a host command. The hit determination unit 36 searches the cache management table based on the disk ID and the sector number in step S2, and determines whether or not the read target data is registered in the cache memory 26.

【0045】ステップS2におけるヒット判定の処理結
果、ステップS3で対応データの登録がなく、ミスであ
った場合には、ステップS4に進み、ディスクIDとデ
ータアドレスで指定されるディスク装置のセクタからデ
ータを読み出して、図2に示したデータ転送バッファ2
8に転送し、続いてステップS5でホストコンピュータ
18に転送し、更にキャッシュメモリ26にリードデー
タを記憶する。
If the result of the hit determination in step S2 is that there is no corresponding data registered in step S3 and there is a mistake, the flow advances to step S4 to read data from the sector of the disk device specified by the disk ID and data address. Is read, and the data transfer buffer 2 shown in FIG.
8 and then to the host computer 18 in step S5, and the read data is stored in the cache memory 26.

【0046】ステップS6でキャッシュメモリ26にデ
ータを格納する場合、キャッシュメモリ26に新しいデ
ータを格納する領域が足りなければ、不要と思われるデ
ータをキャッシュメモリ26から追い出し、新たに領域
を確保して新しいデータを記憶する。このキャッシュメ
モリ26の管理としては、最新に使用したデータをキャ
ッシュ管理テーブルで決まるリストの最後に取り付け、
使用していない最も古いデータを追い出すLRU方式を
用いればよい。
When data is stored in the cache memory 26 in step S6, if there is not enough space for storing new data in the cache memory 26, unnecessary data is expelled from the cache memory 26 to secure a new area. Store new data. As the management of the cache memory 26, the latest used data is attached to the end of the list determined by the cache management table,
It is sufficient to use the LRU method for flushing the oldest data that is not used.

【0047】一方、ステップS3でキャッシュ管理テー
ブルに対応するデータ登録が存在してヒット判定が得ら
れると、ステップS3からS7に進み、対応するデータ
をキャッシュメモリ26から読み出してデータ転送バッ
ファ28に転送し、ステップS8でホストコンピュータ
に転送する。この図8のリード処理にあっては、ディス
クアレイからデータを読み出すだけであることから、パ
リティデータの更新は必要としない。
On the other hand, if there is a data registration corresponding to the cache management table in step S3 and a hit determination is obtained, the process proceeds from step S3 to S7, where the corresponding data is read from the cache memory 26 and transferred to the data transfer buffer 28. Then, the data is transferred to the host computer in step S8. In the read processing of FIG. 8, since only data is read from the disk array, it is not necessary to update the parity data.

【0048】図9は図7のステップS5に示したライト
処理の詳細を示したフローチャートである。図9におい
て、まずアクセス処理部34はステップS1でホストコ
マンドの解読結果として得られたディスクIDとデータ
アドレスに対応したセクタ番号をキャッシュ制御部24
のヒット判定部36に通知し、ステップS2でヒット判
定処理が行われる。このヒット判定の結果、ステップS
3でミスが判別されると、キャッシュメモリ26に更新
前の旧データがないことからステップS4に進み、ディ
スクIDとデータアドレスに基づいて対応するデータ記
録用のディスク装置から更新前の旧データを読み出す。
FIG. 9 is a flowchart showing details of the write processing shown in step S5 of FIG. In FIG. 9, first, the access processing unit 34 writes the disk ID and the sector number corresponding to the data address obtained as a result of decoding the host command in step S1 into the cache control unit 24.
Is notified to the hit determination unit 36, and hit determination processing is performed in step S2. As a result of this hit determination, step S
If a miss is determined in step 3, since there is no old data before updating in the cache memory 26, the process proceeds to step S4, where the old data before updating is read from the corresponding data recording disk device based on the disk ID and the data address. read out.

【0049】またパリティ記録用のディスク装置の旧デ
ータと同一位置のセクタから更新前の旧パリティデータ
を読み出して、データ転送バッファ28に転送する。次
にステップS5で、アクセス処理部34がディスク装置
から読み出した旧データDold ,旧パリティPold 及び
新データDnew から新パリティPnew を生成する。即
ち、前述した(1)式に従って旧データ,旧パリティ及
び新データの排他的論理和から新パリティを生成する。
The old parity data before updating is read from the sector at the same position as the old data of the disk device for parity recording, and is transferred to the data transfer buffer 28. Next, in step S5, the access processing unit 34 generates a new parity P new from the old data D old , the old parity P old and the new data D new read from the disk device. That is, a new parity is generated from the exclusive OR of the old data, the old parity, and the new data according to the above equation (1).

【0050】次にステップS6で新データと新パリティ
をそれぞれ対応するディスク装置に書き込んで更新し、
ステップS7でキャッシュメモリ26に新データを記憶
して次のアクセスに備える。一方、ステップS3でヒッ
ト判定の結果がヒットであった場合にはステップ8に進
み、キャッシュメモリ26から更新前の旧データを読み
出し、続いてステップS9でパリティ記録用のディスク
装置の旧データを格納したセクタと同一位置のセクタか
ら更新前の旧パリティを読み出して、データ転送バッフ
ァ28に転送する。
Next, in step S6, the new data and the new parity are written and updated in the corresponding disk devices, respectively.
In step S7, the new data is stored in the cache memory 26 to prepare for the next access. On the other hand, if the result of the hit determination is a hit in step S3, the flow advances to step 8 to read the old data before update from the cache memory 26, and then store the old data of the parity recording disk device in step S9. The old parity before updating is read from the sector at the same position as the sector that has been updated, and is transferred to the data transfer buffer 28.

【0051】以降の処理はミスの場合と同様、ステップ
S5で新パリティを生成し、ステップS6で新データと
新パリティをそれぞれディスク装置に書き込み、更にス
テップS7でキャッシュメモリに更新が済んだ新データ
を記憶して、次のアクセスに備える。 3.複数回更新後のディスク装置への書戻し処理 図10は図7に示したステップS6のライト処理の他の
実施例を示したフローチャートであり、このライト処理
にあっては、キャッシュ制御部24でヒット判定が得ら
れたときに、キャッシュメモリ26上で同じ領域のデー
タを複数回更新した後にディスク装置に書き戻すステッ
プS8の処理を設けたことを特徴とする。
In the subsequent processing, as in the case of a mistake, a new parity is generated in step S5, the new data and the new parity are respectively written in the disk device in step S6, and the new data updated in the cache memory in step S7. Is stored in preparation for the next access. 3. FIG. 10 is a flowchart showing another embodiment of the write process in step S6 shown in FIG. 7, and the cache control unit 24 performs this write process. When a hit determination is obtained, a process of step S8 is provided in which data in the same area on the cache memory 26 is updated a plurality of times and then written back to the disk device.

【0052】即ち、図8のライト処理にあっては、デー
タ更新毎にディスク装置に対する新データ及び新パリテ
ィの書戻しを行っており、データ更新処理に時間がかか
る。これに対し図10の実施例にあっては、複数回のデ
ータ更新に1回だけディスク装置に書き戻す処理を行う
ため、更新処理に要する時間を短縮することができる。
That is, in the write process of FIG. 8, the new data and the new parity are written back to the disk device every time the data is updated, and the data update process takes time. On the other hand, in the embodiment of FIG. 10, since the process of writing back to the disk device is performed only once for a plurality of data updates, the time required for the update process can be reduced.

【0053】ここで、複数回の更新後にディスク装置に
書き戻すパリティデータの生成原理を説明すると次のよ
うになる。図11は説明を簡単にするため、3台のディ
スク装置32−1〜32−3を備えたディスクアレイ4
6を示しており、更新前の状態でディスク装置32−1
にはデータD0が格納され、ディスク装置32−2には
データD1が格納され、更にパリティ用のディスク装置
32−3にはパリティP0が格納される。この状態で、
ディスク装置32−1のデータD0に対し新データD0
1,D02,D03と3回、更新の処理を行ったとす
る。
Here, the principle of generating parity data to be written back to the disk device after updating a plurality of times will be described as follows. FIG. 11 shows a disk array 4 having three disk devices 32-1 to 32-3 for simplicity of description.
6 shows the disk device 32-1 before the update.
Stores data D0, data D1 is stored in the disk device 32-2, and parity P0 is stored in the parity disk device 32-3. In this state,
New data D0 for data D0 of disk device 32-1
It is assumed that the update process is performed three times: 1, D02, and D03.

【0054】この1回目から3回目のディスク装置32
−1に対するデータ更新における新パリティP1〜P3
は、次式に従って求めることができる。 1回目 新データD01(+)旧データD1=新パリティP1 (2) 2回目 新データD02(+)旧データD1=新パリティP2 (3) 3回目 新データD03(+)旧データD1=新パリティP3 (4) ここで、図10のステップS8におけるディスク装置に
書戻しを行うまでの更新回数を3回に設定していたとす
ると、3回目の更新で得られた新パリティP3をディス
ク装置32−3に格納し、また最新の更新データD03
をディスク装置32−1に格納すればよい。
The first to third disk devices 32
New parity P1 to P3 in data update for -1
Can be obtained according to the following equation. First new data D01 (+) Old data D1 = New parity P1 (2) Second new data D02 (+) Old data D1 = New parity P2 (3) Third new data D03 (+) Old data D1 = New parity P3 (4) Here, assuming that the number of updates before writing back to the disk device in step S8 in FIG. 10 is set to three, the new parity P3 obtained by the third update is stored in the disk device 32-. 3 and the latest update data D03
May be stored in the disk device 32-1.

【0055】ここで、3回目の更新結果を示す(4)式
の旧データD1に関しては、更新前の格納状態から 旧データD0(+)旧データD1=旧パリテイP0 (5) の関係がある。この(5)式について、旧データD1を
求めると、 旧データD1=旧データD0(+)旧パリテイP0 (6) となる。従って、(6)式を(4)式に代入すると、3
回目の更新で生成される新パリティP3は 新パリティP3= 旧データD0(+)旧パリティP0(+)最新データD03 (7) で表すことができる。
Here, as for the old data D1 of the formula (4) showing the result of the third update, the old data D0 (+) the old data D1 = the old parity P0 (5) from the storage state before the update. . When the old data D1 is obtained for the equation (5), the old data D1 = the old data D0 (+) the old parity P0 (6). Therefore, substituting equation (6) into equation (4) gives 3
The new parity P3 generated by the second update can be represented by new parity P3 = old data D0 (+) old parity P0 (+) latest data D03 (7).

【0056】図10のステップS8の処理にあっては、
図11に示す1回目から3回目の更新処理をキャッシュ
メモリ26上で行い、3回目の更新が済んだときに
(7)式から新パリティP3を生成し、最新データD0
3と新パリティP3のそれぞれをディスク装置に書き戻
す処理を行う。この(7)式で新パリティP3を生成す
るためには、更新前の旧データD0及び更新前の旧パリ
ティP0が得られればよく、それ以外のデータは不要と
なる。
In the process of step S8 in FIG.
The first to third update processing shown in FIG. 11 is performed in the cache memory 26, and when the third update is completed, a new parity P3 is generated from the equation (7), and the latest data D0 is generated.
3 and the new parity P3 are written back to the disk device. In order to generate the new parity P3 using the equation (7), the old data D0 before the update and the old parity P0 before the update need only be obtained, and other data is unnecessary.

【0057】従って本発明にあっては、キャッシュメモ
リ26上でデータD01,D02,D03を順次更新す
るための領域を新たに確保してデータ更新を行い、3回
目のデータ更新が終了した時点で、既にキャッシュメモ
リに記憶されている更新前の旧データD0を更新が済ん
だ最新のデータD03と共に読み出し、更にディスク装
置32−3から更新前の旧パリティP0を読み出して、
(7)式に従った新パリティP3を生成し、新データD
03及び新パリティP3をそれぞれのディスク装置に書
き戻すようになる。
Therefore, according to the present invention, a new area for sequentially updating the data D01, D02, and D03 is newly secured in the cache memory 26, and the data is updated. When the third data update is completed, The old data D0 before update already stored in the cache memory is read together with the updated latest data D03, and the old parity P0 before update is read from the disk device 32-3.
The new parity P3 according to the equation (7) is generated, and the new data P3 is generated.
03 and the new parity P3 are written back to the respective disk devices.

【0058】図12は図10のステップS8の書戻し処
理の詳細を示したフローチャートである。図12におい
て、まずステップS1で更新回数を設定するカウンタN
を1つインクリメントする。尚、カウンタNは初期状態
でN=0にクリアされている。続いてステップS2で1
回目の更新か否かチェックする。1回目の更新であれば
ステップS3で更新データの領域をキャッシュメモリ2
6上に新たに確保し、ステップS4で、新たに確保した
キャッシュメモリ26上の領域で1回目の新データの更
新を行う。
FIG. 12 is a flowchart showing details of the write-back processing in step S8 in FIG. In FIG. 12, first, a counter N for setting the number of updates in step S1
Is incremented by one. Incidentally, the counter N is cleared to N = 0 in the initial state. Then, at step S2, 1
Check if this is the second update. If it is the first update, the area of the update data is stored in the cache memory 2 in step S3.
In step S4, the first new data is updated in the newly secured area on the cache memory 26.

【0059】次にステップS5で、更新回数を示すカウ
ンタNが設定回数、例えば3回に達したか否か判定し、
3回未満であればステップS6〜S9の処理を飛ばして
図7のメインルーチンのにリターンする。ステップS
5で更新回数を示すカウンタNが設定回数に達するとス
テップS6に進み、パリティ用のディスク装置から更新
データと同一セグメントの更新前の旧パリティを読み出
し、またキャッシュメモリ26から更新前の旧データと
最新の更新済みデータを読み出し、ステップS7で
(7)式に従って新パリティを生成する。
Next, in step S5, it is determined whether or not the counter N indicating the number of updates has reached a set number, for example, three times.
If less than three times, the processing of steps S6 to S9 is skipped and the process returns to the main routine of FIG. Step S
When the counter N indicating the number of updates reaches the set number in step S5, the process proceeds to step S6, where the old parity before the update of the same segment as the update data is read from the disk device for parity, and the old data before the update is The latest updated data is read, and a new parity is generated in step S7 according to equation (7).

【0060】続いてステップS8で新データと新パリテ
ィをそれぞれ対応するディスク装置に書き込んだ後、ス
テップS9でカウンタNをリセットし、図10のステッ
プS7にリターンし、書戻しが済んだ最新の更新データ
をキャッシュメモリ26に記憶して次のアクセスに備え
る。 4.冗長情報のみをキャッシュメモリに記憶する第2実
施例 図13は図4に示した本発明のディスクアレイ制御装置
10のキャッシュメモリ26に冗長情報としてのパリテ
ィデータのみを記憶した場合の記憶内容を示した説明図
である。
Subsequently, in step S8, the new data and the new parity are written to the corresponding disk devices, respectively. In step S9, the counter N is reset, and the process returns to step S7 in FIG. The data is stored in the cache memory 26 to prepare for the next access. 4. Second Embodiment in which Only Redundant Information is Stored in Cache Memory FIG. 13 shows storage contents when only parity data as redundant information is stored in the cache memory 26 of the disk array controller 10 of the present invention shown in FIG. FIG.

【0061】この第2実施例で使用するキャッシュメモ
リ26にはディスクID番号1〜5の論理和と、セクタ
番号で指定される領域にパリティデータP01,P0
2,P03,・・・のみを記憶している。このようにキ
ャッシュメモリ26にパリティデータのみを記憶するよ
うにした場合のディスクアレイ制御装置10における全
体的な処理動作は、図7のフローチャートと同じにな
り、リード処理は図14に示すようになり、またライト
処理は図15に示すようになる。
The cache memory 26 used in the second embodiment stores the logical sum of the disk ID numbers 1 to 5 and the parity data P01 and P0 in the area specified by the sector number.
2, P03,... Are stored. In this way, when only the parity data is stored in the cache memory 26, the overall processing operation in the disk array control device 10 is the same as the flowchart in FIG. 7, and the read processing is as shown in FIG. The write processing is as shown in FIG.

【0062】図14はキャッシュメモリ26にパリティ
データのみを記憶した場合のリード処理の詳細を示した
フローチャートであり、ステップS1でアクセス処理部
34はホストコマンドの解読結果から得られたディスク
IDと、データアドレスを示すセグメント番号を対応す
るデバイスアダプタを経由してディスク装置に通知し、
ステップS2で、指定したディスク装置からデータを読
み出してデータ転送バッファ28に転送し、ステップS
3でホストコンピュータに転送して一連の処理を終了す
る。
FIG. 14 is a flowchart showing the details of the read processing when only the parity data is stored in the cache memory 26. In step S1, the access processing unit 34 sets the disk ID obtained from the result of decoding the host command, Notify the disk unit of the segment number indicating the data address via the corresponding device adapter,
In step S2, data is read from the designated disk device and transferred to the data transfer buffer 28,
In step 3, the data is transferred to the host computer, and a series of processing ends.

【0063】即ち、キャッシュメモリ26にパリティデ
ータのみを記憶している場合には、リード処理における
キャッシュアクセスは行わない。図15はパリティデー
タのみをキャッシュメモリ26に登録した場合のライト
処理の詳細を示したフローチャートである。図15のラ
イト処理にあっては、ステップS1のディスクIDとデ
ータアドレスに対応するセクタ番号の通知を受けて、キ
ャッシュ制御部24のヒット判定部36がステップS2
でヒット判定を行う。即ち、図13に示すようなキャッ
シュメモリ26の登録内容を示すキャッシュ管理テーブ
ルについて、ディスクIDによる区別はないことから、
セクタ番号のみによりキャッシュ登録の有無を判定す
る。
That is, when only the parity data is stored in the cache memory 26, the cache access in the read processing is not performed. FIG. 15 is a flowchart showing details of the write process when only the parity data is registered in the cache memory 26. In the write processing of FIG. 15, upon receiving the notification of the disk ID and the sector number corresponding to the data address in step S1, the hit determination unit 36 of the cache control unit 24 proceeds to step S2.
Perform hit judgment with. That is, the cache management table indicating the registered contents of the cache memory 26 as shown in FIG.
The presence / absence of cache registration is determined only by the sector number.

【0064】ステップS3でミスであった場合には、第
1実施例と同様、ステップS4でディスク装置から更新
前の旧データと旧パリティを読み出してデータ転送バッ
ファ28に転送し、ステップS5で前記(1)式に従っ
て新パリティを生成し、ステップS6で新データと新パ
リティをそれぞれ対応するディスク装置に書き込み、更
にステップS7で新パリティをキャッシュメモリ26に
新たに記憶する。
If a mistake is made in step S3, as in the first embodiment, the old data and the old parity before the update are read from the disk device in step S4 and transferred to the data transfer buffer 28. A new parity is generated according to the equation (1), the new data and the new parity are written to the corresponding disk devices in step S6, and the new parity is newly stored in the cache memory 26 in step S7.

【0065】一方、ステップS2のヒット判定の結果が
ヒットであった場合にはステップS3からS8に進み、
キャッシュメモリ26から対応する旧パリティを読み出
し、ステップS9で対応するディスク装置から旧データ
を読み出してデータ転送バッファ28に転送し、以下同
様に、ステップS5の新パリティの生成、ステップS6
の新データと新パリティのそれぞれのディスク装置に対
する書込み、更にステップS7の新パリティのキャッシ
ュメモリ26に対する記憶を行う。
On the other hand, if the result of the hit determination in step S2 is a hit, the process proceeds from step S3 to S8,
The corresponding old parity is read from the cache memory 26, the old data is read from the corresponding disk device in step S9, and transferred to the data transfer buffer 28. Similarly, the generation of the new parity in step S5 and the step S6
The new data and the new parity are written to the respective disk devices, and the new parity is stored in the cache memory 26 in step S7.

【0066】図16はパリティデータのみをキャッシュ
メモリ26に記憶する場合のライト処理の他の実施例を
示したフローチャートであり、図15に対しステップS
8で複数回のデータ更新後にディスク装置への書込みを
行うようにしたことを特徴とする。このステップS8の
ディスク書戻し処理の詳細は図17に示すようになる。
図17の書戻し処理は図12に示した第1実施例の場合
と基本的に同じであるが、キャッシュメモリ26にパリ
ティデータのみを記憶していることから、更新回数が設
定回数に達した後のステップS6でディスク装置から旧
データを読み出し、キャッシュメモリから旧パリティと
最新の新データを読み出す点が相違しており、他の処理
は第1実施例の場合と同じである。 5.データ及び冗長情報の両方をキャッシュメモリに記
憶する第3実施例 図18は本発明の第3実施例の機能ブロック図を示した
もので、この第3実施例にあってはキャッシュメモリ2
6にデータと冗長情報としてのパリティデータの両方を
記憶するようにしたことを特徴とする。
FIG. 16 is a flowchart showing another embodiment of the write process when only the parity data is stored in the cache memory 26.
8 is characterized in that writing to the disk device is performed after a plurality of data updates. The details of the disk write-back processing in step S8 are as shown in FIG.
The write-back process of FIG. 17 is basically the same as that of the first embodiment shown in FIG. 12, but the update count has reached the set count since only the parity data is stored in the cache memory 26. The difference is that the old data is read from the disk device in the subsequent step S6, and the old parity and the latest new data are read from the cache memory. The other processing is the same as that of the first embodiment. 5. Third Embodiment in which Both Data and Redundant Information are Stored in Cache Memory FIG. 18 is a functional block diagram of a third embodiment of the present invention.
6 stores both data and parity data as redundant information.

【0067】まずキャッシュメモリ26はデータ記憶領
域50とパリティ記憶領域52に分けられている。図1
9はキャッシュメモリ26の記憶内容を示したもので、
ディスクID番号1〜4についてはデータ記憶領域50
に格納され、ディスクID番号5についてはパリティ記
憶領域52に記憶される。勿論、図19はパリティ記憶
用ディスク装置をディスク装置32−5に固定した場合
である。
First, the cache memory 26 is divided into a data storage area 50 and a parity storage area 52. FIG.
9 shows the contents stored in the cache memory 26.
For the disk ID numbers 1 to 4, the data storage area 50
And the disk ID number 5 is stored in the parity storage area 52. Of course, FIG. 19 shows a case where the disk device for parity storage is fixed to the disk device 32-5.

【0068】ここで、キャッシュメモリ26をデータ記
憶領域50とパリティ記憶領域52に分けている理由
は、第1実施例についてはデータ記憶領域50のみでよ
く、また第2実施例にあってはパリティ記憶領域52の
みでよく、この第1実施例及び第2実施例に対し更にパ
リティ記憶領域52またはデータ記憶領域50を新たに
追加するような場合に、領域を分けておくことが便利で
ある。
Here, the reason why the cache memory 26 is divided into the data storage area 50 and the parity storage area 52 is that only the data storage area 50 is required in the first embodiment, and the parity storage area is in the second embodiment. Only the storage area 52 is sufficient, and when the parity storage area 52 or the data storage area 50 is newly added to the first and second embodiments, it is convenient to divide the areas.

【0069】図20はパリティ記録用のディスク装置が
セクタ位置が変化する毎に相違するディスクアレイを対
象としたキャッシュメモリ26の記憶内容を示した説明
図であり、このようにパリティデータがセグメント毎に
異なったディスク装置に格納されている場合には、図1
8に示したキャッシュメモリ26は特にデータ記憶領域
50とパリティ記憶領域52に分けることなく、全体を
1つの領域としてデータ及びパリティデータを記憶すれ
ばよい。
FIG. 20 is an explanatory view showing the storage contents of the cache memory 26 for a disk array in which the disk device for parity recording changes each time the sector position changes. If the disk is stored in a different disk device,
The cache memory 26 shown in FIG. 8 may store data and parity data as a single area without being divided into a data storage area 50 and a parity storage area 52.

【0070】図18に示した第3実施例のディスクアレ
イ制御装置10の全体的な処理動作及びリード処理の詳
細は図7,図8の第1実施例と同じであるが、ライト処
理の詳細が図21のフローチャートに示すようになる。
図21のライト処理にあっては、ステップS3でミスと
なった場合にステップS7で新データと新パリティの両
方をキャッシュメモリ26に記憶する点が、第1実施例
及び第2実施例と異なる。また、ステップS3でヒット
となった場合にはステップS8でキャッシュメモリ26
から更新前の旧データと旧パリティの両方を読み出すこ
とができ、このため旧データ及び旧パリティを読み出す
ためのディスク装置のアクセスは必要なく、データ更新
を更に高速で行うことができる。
The details of the overall processing operation and read processing of the disk array control device 10 of the third embodiment shown in FIG. 18 are the same as those of the first embodiment of FIGS. Is as shown in the flowchart of FIG.
The write process of FIG. 21 differs from the first and second embodiments in that when a mistake is made in step S3, both the new data and the new parity are stored in the cache memory 26 in step S7. . If a hit is obtained in step S3, the cache memory 26 is determined in step S8.
Both the old data and the old parity before the update can be read from the storage device, and therefore, access to the disk device for reading the old data and the old parity is not required, and the data can be updated at a higher speed.

【0071】図22は第3実施例のライト処理の他の実
施例を示したもので、ステップS8で複数回のデータ更
新後にディスク装置に書き戻すようにしたことを特徴と
し、この書戻し処理の詳細は図23のフローチャートに
示すようになる。図23の書戻し処理にあっては、更新
回数が設定回数に達したときのステップS6において、
キャッシュメモリ26から更新前の旧パリティと旧デー
タ、更に最新の更新データを読み出す点が第1及び第2
実施例と異なる。 6.ダミーデータを空き領域に記憶する第4実施例 図24は本発明の第4実施例の機能ブロック図であり、
この第4実施例にあっては、ディスク制御装置10に新
たにダミーデータ処理部40を設け、ディスクアレイ4
6のディスク装置32−1〜32−5及びキャッシュメ
モリ26の空き領域にDdummy で示すダミーデータ及び
dummy で示すダミーパリティデータを格納するように
したことを特徴とする。
FIG. 22 shows another embodiment of the write processing according to the third embodiment, which is characterized in that the data is written back to the disk device after a plurality of data updates in step S8. Are as shown in the flowchart of FIG. In the write-back processing of FIG. 23, in step S6 when the number of updates reaches the set number of times,
The first and second points are that the old parity and old data before updating and the latest updated data are read from the cache memory 26.
Different from the embodiment. 6. Fourth Embodiment for Storing Dummy Data in Free Space FIG. 24 is a functional block diagram of a fourth embodiment of the present invention.
In the fourth embodiment, a dummy data processing unit 40 is newly provided in the disk control device 10, and the disk array 4
6, dummy data indicated by D dummy and dummy parity data indicated by P dummy are stored in empty areas of the disk devices 32-1 to 32-5 and the cache memory 26.

【0072】このようにディスク装置32−1〜32−
5及びキャッシュメモリ26の未使用領域に固定的に定
めたダミーデータ及びダミーパリティデータを格納して
おくことで、ライト動作時の旧データ及び旧パリティの
リード動作をダミーデータ及びダミーパリティデータに
ついては省略することができる。図25は第4実施例に
おけるディスク装置32−1〜32−5の初期状態を示
した説明図であり、空き領域となる全てのセクタにダミ
ーデータ及びダミーパリティデータを、例えばディスク
アレイ装置の工場出荷等の際に予め格納している。
As described above, the disk devices 32-1 to 32-32
5 and dummy parity data fixedly stored in the unused area of the cache memory 26, the read operation of the old data and the old parity at the time of the write operation is performed for the dummy data and the dummy parity data. Can be omitted. FIG. 25 is an explanatory diagram showing the initial state of the disk devices 32-1 to 32-5 in the fourth embodiment. Dummy data and dummy parity data are stored in all the sectors which are free areas. It is stored in advance at the time of shipment.

【0073】尚、図25のディスク装置32−1〜32
−5は、セクタ位置が変わる毎にパリティデータを記憶
するディスク装置が異なるRAID−5相当の場合を例
にとっている。図26は第4実施例におけるディスク装
置32−1〜32−5における既存データの削除状態を
示したもので、図26に示すような既存データの削除が
行われた場合にも、図27に示すように削除位置にダミ
ーデータを格納する。勿論、削除位置にダミーデータを
格納した場合には、同一セグメントのパリティデータに
ついては新パリティを生成するようになる。
The disk devices 32-1 to 32-32 shown in FIG.
-5 is an example in which a disk device that stores parity data every time the sector position changes corresponds to RAID-5. FIG. 26 shows the state of deletion of existing data in the disk devices 32-1 to 32-5 in the fourth embodiment. Even when the existing data is deleted as shown in FIG. As shown, the dummy data is stored at the deletion position. Of course, when dummy data is stored at the deletion position, a new parity is generated for parity data of the same segment.

【0074】図28は第4実施例におけるディスク装置
32−1〜32−5の他の削除処理を示したもので、図
28に示すようなデータ削除を行った場合には、図29
に示すように、削除した空き領域を上位に詰めるように
データを書き替える整理処理を行い、下位にまとめて空
きセクタ領域を形成してダミーデータ及びダミーパリテ
ィデータを格納する。
FIG. 28 shows another deletion process of the disk devices 32-1 to 32-5 in the fourth embodiment. When data is deleted as shown in FIG.
As shown in (1), an arrangement process for rewriting data is performed so that the deleted free area is packed in the upper position, and a free sector area is collectively formed in the lower area to store the dummy data and the dummy parity data.

【0075】図25〜図29に示すようなダミーデータ
及びダミーパリティデータに関する処理は、キャッシュ
メモリ26側についてはダミーデータ及びダミーパリテ
ィデータを除く有効なデータ及びパリティデータについ
て削除及び整理後の更新を行っておけばよい。図30は
第4実施例において、ホストコンピュータ18より例え
ばディスク装置32−1に格納しているデータD1の削
除命令を受けたときの処理動作を示している。
The processing relating to the dummy data and the dummy parity data as shown in FIGS. 25 to 29 is performed by deleting the effective data and the parity data except the dummy data and the dummy parity data on the cache memory 26 side and updating the data after the deletion. I just need to go. FIG. 30 shows a processing operation when a command to delete the data D1 stored in, for example, the disk device 32-1 is received from the host computer 18 in the fourth embodiment.

【0076】ホストコンピュータ18よりデータD1の
削除命令を受けた場合には、まずパリティ生成部42で
キャッシュメモリ26に記憶している更新前の旧データ
D1と旧パリティP1を読み出し、データD1の削除に
より新データはダミーデータDdummy となることから、
これら3つの排他的論理和により新パリティP1new
生成する。
When a command to delete the data D1 is received from the host computer 18, the parity generation unit 42 first reads the old data D1 before updating and the old parity P1 stored in the cache memory 26, and deletes the data D1. , The new data becomes dummy data D dummy .
A new parity P1 new is generated by these three exclusive ORs.

【0077】続いて図31に示すように、ディスク32
−1の旧データD1をダミーデータDdummy に書き替
え、またディスク装置32−4の旧パリティP1を新た
に生成した新パリティP1new に書き替え、更にキャッ
シュメモリ26に記憶しているデータD1を削除すると
同時に旧パリティP1を新パリティP1new に更新す
る。
Subsequently, as shown in FIG.
-1 is rewritten to the dummy data D dummy , the old parity P1 of the disk device 32-4 is rewritten to the newly generated new parity P1 new , and the data D1 stored in the cache memory 26 is further rewritten. At the same time as the deletion, the old parity P1 is updated to the new parity P1 new .

【0078】図32は第4実施例において、ランク内の
同一セグメントにある複数のダミーデータを更新する場
合の処理を示した説明図である。図32において、今、
データ転送バッファ28に格納されているデータD1を
ディスク装置32−1の空き領域に書き込み、またデー
タD2をディスク装置32−2の同一セクタ位置の空き
領域に書き込むものとする。
FIG. 32 is an explanatory diagram showing a process for updating a plurality of dummy data in the same segment in a rank in the fourth embodiment. In FIG. 32,
It is assumed that the data D1 stored in the data transfer buffer 28 is written to a free area of the disk device 32-1 and the data D2 is written to a free area at the same sector position of the disk device 32-2.

【0079】この場合には、最終的にデータD2の書込
みが終了したときのパリティP1を生成するため、パリ
ティ生成部42に対しデータD1,D2,ダミーデータ
2つ,パリティダミーデータ1つを入力して、これらの
排他的論理和により新パリティP1を生成する。続いて
図33に示すように、データD1をディスク装置32−
1に書き込むと共に、データD2をディスク装置32−
2に書き込み、更にパリティ生成部42で生成した新パ
リティP1をディスク装置32−5に書き込むようにな
る。
In this case, in order to finally generate the parity P1 when the writing of the data D2 is completed, the data D1, D2, two dummy data, and one parity dummy data are input to the parity generation unit 42. Then, a new parity P1 is generated by these exclusive OR. Subsequently, as shown in FIG.
1 and the data D2 is stored in the disk drive 32-
2, the new parity P1 generated by the parity generation unit 42 is written to the disk device 32-5.

【0080】勿論、図示しないキャッシュメモリ26に
対しても、新たにデータD1,D2及びパリティP1を
記憶して次のアクセスに備えるようになる。尚、上記の
各実施例で使用するキャッシュメモリとしては、何等か
の原因による電源ダウンに対処できるようにするため、
バックアップ電源を備えた不揮発性メモリとしてもよ
い。このようにキャッシュメモリに不揮発性メモリを使
用すれば、電源ダウンがあってもキャッシュデータが消
去されず、電源ダウンによりキャッシュメモリを用いた
アクセス性能が初期状態に低下してしまうことが防止で
きる。
Of course, the data D1, D2 and the parity P1 are newly stored in the cache memory 26 (not shown) to prepare for the next access. The cache memory used in each of the above embodiments is designed to be able to cope with a power down due to any cause.
It may be a non-volatile memory provided with a backup power supply. If a nonvolatile memory is used as the cache memory in this way, cache data is not erased even when the power is turned off, and it is possible to prevent the access performance using the cache memory from being reduced to the initial state due to the power down.

【0081】また、キャッシュメモリ全体を不揮発性メ
モリとすることはコスト的に高価になることから、例え
ばキャッシュメモリの一部を不揮発性メモリとしてもよ
い。
Since it is costly to make the entire cache memory a non-volatile memory, for example, a part of the cache memory may be a non-volatile memory.

【0082】[0082]

【発明の効果】以上説明してきたように本発明によれ
ば、ディスクアレイに対する書込処理の際に、新たな冗
長情報を生成するために必要なデータをキャッシュメモ
リに格納していくことで、ディスク装置からの読出処理
を省くことができ、冗長情報をディスク装置に格納して
いても書込処理の実行時間を短縮し、より高速の処理を
実現することができる。
As described above, according to the present invention, data necessary for generating new redundant information is stored in the cache memory at the time of writing processing to the disk array. The reading process from the disk device can be omitted, and even when redundant information is stored in the disk device, the execution time of the writing process can be reduced, and higher-speed processing can be realized.

【図面の簡単な説明】[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】図2のキャッシュ制御部の実施例構成図FIG. 3 is a configuration diagram of an embodiment of a cache control unit in FIG. 2;

【図4】本発明の第1実施例を示した機能ブロック図FIG. 4 is a functional block diagram showing a first embodiment of the present invention.

【図5】第1実施例のキャッシュメモリの内容を示した
説明図
FIG. 5 is an explanatory diagram showing the contents of a cache memory according to the first embodiment;

【図6】第1実施例のキャッシュメモリの他の内容を示
した説明図
FIG. 6 is an explanatory diagram showing another content of the cache memory according to the first embodiment;

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

【図8】第1実施例のリード処理の詳細を示したフロー
チャート
FIG. 8 is a flowchart showing details of a read process according to the first embodiment;

【図9】第1実施例のライト処理の詳細を示したフロー
チャート
FIG. 9 is a flowchart illustrating details of a write process according to the first embodiment;

【図10】第1実施例の他のライト処理の詳細を示した
フローチャート
FIG. 10 is a flowchart showing details of another write process of the first embodiment;

【図11】複数回更新したときのディスクアレイの格納
状態の変化を示した説明図
FIG. 11 is an explanatory diagram showing a change in the storage state of a disk array when updating is performed a plurality of times;

【図12】図10の書戻し処理の詳細を示したフローチ
ャート
FIG. 12 is a flowchart showing details of the write-back processing of FIG. 10;

【図13】第2実施例のキャッシュメモリの内容を示し
た説明図
FIG. 13 is an explanatory diagram showing the contents of a cache memory according to the second embodiment.

【図14】第2実施例のリード処理の詳細を示したフロ
ーチャート
FIG. 14 is a flowchart illustrating details of a read process according to the second embodiment;

【図15】第2実施例のライト処理の詳細を示したフロ
ーチャート
FIG. 15 is a flowchart illustrating details of a write process according to the second embodiment;

【図16】第2実施例の他のライト処理の詳細を示した
フローチャート
FIG. 16 is a flowchart showing details of another write process according to the second embodiment;

【図17】図16の書戻し処理の詳細を示したフローチ
ャート
FIG. 17 is a flowchart showing details of the write-back processing of FIG. 16;

【図18】本発明の第3実施例を示した機能ブロック図FIG. 18 is a functional block diagram showing a third embodiment of the present invention.

【図19】第3実施例のキャッシュメモリの内容を示し
た説明図
FIG. 19 is an explanatory diagram showing the contents of a cache memory according to the third embodiment;

【図20】第3実施例のキャッシュメモリの他の内容を
示した説明図
FIG. 20 is an explanatory diagram showing another content of the cache memory according to the third embodiment;

【図21】第3実施例のライト処理の詳細を示したフロ
ーチャート
FIG. 21 is a flowchart illustrating details of a write process according to the third embodiment;

【図22】第3実施例の他のライト処理の詳細を示した
フローチャート
FIG. 22 is a flowchart showing details of another write process according to the third embodiment;

【図23】図22の書戻し処理の詳細を示したフローチ
ャート
FIG. 23 is a flowchart showing details of the write-back processing of FIG. 22;

【図24】本発明の第4実施例を示した機能ブロック図FIG. 24 is a functional block diagram showing a fourth embodiment of the present invention.

【図25】第4実施例のディスクアレイおけるダミー記
憶初期状態を示した説明図
FIG. 25 is an explanatory diagram showing an initial state of dummy storage in the disk array according to the fourth embodiment;

【図26】第4実施例のディスクアレイの削除処理を示
した説明図
FIG. 26 is an explanatory diagram showing a disk array deletion process according to the fourth embodiment;

【図27】図26の削除処理後のディスクアレイの状態
を示した説明図
FIG. 27 is an explanatory diagram showing the state of the disk array after the deletion processing of FIG. 26;

【図28】ディスクアレイの削除処理を示した説明図FIG. 28 is an explanatory diagram showing a disk array deletion process.

【図29】図28の削除処理後のディスクアレイの整理
状態を示した説明図
FIG. 29 is an explanatory diagram showing an arrangement state of the disk array after the deletion processing of FIG. 28;

【図30】第4実施例のキャッシュメモリの削除処理を
示した機能ブロック図
FIG. 30 is a functional block diagram illustrating a cache memory deletion process according to a fourth embodiment;

【図31】図30によるキャッシュメモリの削除終了状
態の機能ブロック図
FIG. 31 is a functional block diagram showing a state where the deletion of the cache memory is completed according to FIG. 30;

【図32】第4実施例でランク内の同一セグメントの複
数データを更新する処理を示した機能ブロック図
FIG. 32 is a functional block diagram showing a process of updating a plurality of data of the same segment in a rank in the fourth embodiment.

【図33】図32の更新処理を終了した状態の機能ブロ
ック図
FIG. 33 is a functional block diagram showing a state in which the update process of FIG. 32 has been completed

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

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

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

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

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

【図39】RAID5によるディスクアレイ装置の説明
FIG. 39 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:アクセス処理手段(アクセス処理部) 36:ヒット判定部 38:キャッシュアクセス部 40:ダミーデータ処理部 42:パリティ生成部 46:ディスクアレイ 48−1,48−2:ランク 50:データ記憶領域 52:パリティ記憶領域 60:MPU(キャッシュ制御用) 62:制御記憶 64:バス制御回路 66:バッファ回路 68:メモリ制御回路 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: Access processing means (access processing unit) 36: Hit determination unit 38: Cache access unit 40: Dummy data processing unit 42: Parity generation Unit 46: disk array 48-1, 48-2: rank 50: data storage area 52: parity storage area 60: MPU (for cache control) 62: control storage 64: bus control circuit 66: buffer circuit 68: memory control circuit

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

Claims (14)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】データ格納用と冗長情報格納用のディスク
装置を複数備えたディスクアレイ(46)と、 上位装置(18)からの更新要求に基づき、新たなデー
タ、更新前のデータおよび更新前の冗長情報に基づいて
新たな冗長情報を生成して前記ディスクアレイ(46)
のデータおよび冗長情報を更新するアクセス処理手段
(34)と、 該アクセス処理手段(34)による1回の更新処理の際
に取扱う複数のデータの中の少なくとも1つ記憶するキ
ャッシュメモリ(26)と、 前記アクセス処理手段(34)でディスクアレイ(4
6)を更新する前に前記キャッシュメモリ(26)から
更新前のデータを検索して前記アクセス処理手段(3
4)に供給して新たな冗長情報を生成させるキャッシュ
制御手段(24)とを備え、 前記アクセス処理手段(34)は、予め定めた所定回数
だけデータをキャッシュメモリ(26)上の新たに確保
した領域で更新した後にディスクアレイ(46)に書き
戻すこ とを特徴とするディスクアレイ装置。
A disk array (46) having a plurality of disk devices for data storage and redundant information storage, and new data, data before update and data before update based on an update request from a host device (18). Generating new redundant information based on the redundant information of the disk array,
Access processing means (34) for updating the data and redundant information of the cache memory (26) for storing at least one of a plurality of data handled in one update processing by the access processing means (34); The access processing means (34) uses the disk array (4).
Before updating 6), the cache memory (26) is searched for data before updating, and the access processing means (3) is searched.
Is supplied to the 4) and a cache control means (24) for generating new redundant information, said access processing means (34) is given a predetermined number of times
Only data is newly secured in the cache memory (26)
After writing in the disk array (46)
The disk array device comprising a Modosuko.
【請求項2】請求項1記載のディスクアレイ装置に於い
て、前記キャッシュメモリ(26)に前記アクセス処理
手段(34)による更新されたデータのみを記憶するこ
とを特徴とするディスクアレイ装置。
2. The disk array device according to claim 1, wherein only the data updated by said access processing means (34) is stored in said cache memory (26).
【請求項3】請求項2記載のディスクアレイ装置に於い
て、前記キャッシュ制御手段(24)は、前記アクセス
手段(34)によるディスクアレイ(46)の更新に先
立つ前記キャッシュメモリ(26)の検索でデータが記
憶されていなかった場合には、前記アクセス処理手段
(34)に記憶なしを通知して前記ディスクアレイ(4
6)からの読出しを行わせ、前記アクセス処理手段(3
4)による前記ディスクアレイ(46)の更新後にデー
タを前記キャッシュメモリ(26)に記憶することを特
徴とするディスクアレイ装置。
3. The disk array device according to claim 2, wherein said cache control means (24) searches said cache memory (26) prior to updating said disk array (46) by said access means (34). If the data is not stored in the disk array (4), the access processing means (34) is notified of the absence of the data and the disk array (4) is notified.
6), the access processing means (3)
A disk array device, characterized in that data is stored in the cache memory (26) after the updating of the disk array (46) according to 4).
【請求項4】請求項記載のディスクアレイ装置に於い
て、前記アクセス処理手段(34)は、更新回数が所定
回数に達するまでは、更新毎に新たな冗長情報を生成す
ることなく前記キャッシュメモリ(26)上でデータを
更新し、更新回数が所定回数に達した時には、キャッシ
ュメモリ(26)上でデータを更新した後にディスクア
レイ(46)から読出した更新前の冗長情報および前記
キュッシュメモリ(26)から読出した最新の更新デー
タと更新前のデータから新たな冗長情報を生成し、前記
ディスクアレイ(46)にデータおよび冗長情報を書き
戻すことを特徴とするディスクアレイ装置。
4. The disk array device according to claim 3 , wherein the access processing means (34) does not generate new redundant information for each update until the number of updates reaches a predetermined number. When the data is updated on the memory (26) and the number of updates reaches a predetermined number, the redundant information before updating read from the disk array (46) after updating the data on the cache memory (26) and the cache memory A disk array device, wherein new redundant information is generated from the latest update data read from (26) and the data before update, and the data and redundant information are written back to the disk array (46).
【請求項5】請求項1記載のディスクアレイ装置に於い
て、前記キャッシュメモリ(26)に前記アクセス処理
手段(34)により更新された冗長情報のみを記憶する
ことを特徴とするディスクアレイ装置。
5. The disk array device according to claim 1, wherein only the redundant information updated by said access processing means (34) is stored in said cache memory (26).
【請求項6】請求項記載のディスクアレイ装置に於い
て、前記キャッシュ制御手段(24)は、前記アクセス
手段(34)によるディスクアレイ(46)の更新に先
立つ前記キャッシュメモリ(26)の検索で冗長情報が
記憶されていなかった場合には、前記アクセス処理手段
(34)に記憶なしを通知して前記ディスクアレイ(4
6)からの読出しを行わせ、前記アクセス処理手段(3
4)による前記ディスクアレイ(46)の更新後に冗長
情報を前記キャッシュメモリ(26)に記憶することを
特徴とするディスクアレイ装置。
6. The disk array device according to claim 5 , wherein said cache control means (24) searches said cache memory (26) prior to updating said disk array (46) by said access means (34). If no redundant information is stored in the disk array (4), the access processing means (34) is notified of no storage.
6), the access processing means (3)
The disk array device according to (4), wherein the redundancy information is stored in the cache memory (26) after updating the disk array (46).
【請求項7】請求項記載のディスクアレイ装置に於い
て、前記アクセス処理手段(34)は、予め定めた所定
回数だけデータをキャッシュメモリ(26)上の新たに
確保した領域で更新した後にディスクアレイ(46)に
書き戻すことを特徴とするディスクアレイ装置。
7. The disk array device according to claim 6 , wherein said access processing means (34) updates the data in a newly secured area on the cache memory (26) a predetermined number of times. A disk array device for writing back to a disk array (46).
【請求項8】請求項記載のディスクアレイ装置に於い
て、前記アクセス処理手段(34)は、更新回数が所定
回数に達するまでは、更新毎に新たな冗長情報を生成す
ることなく前記キャッシュメモリ(26)上でデータを
更新し、更新回数が所定回数に達した時には、キャッシ
ュメモリ(26)上でデータを更新した後にディスクア
レイ(46)から読出した更新前のデータ、キュッシュ
メモリ(26)から読出した最新の更新データと更新前
の冗長情報とから新たな冗長情報を生成し、前記ディス
クアレイ(46)にデータおよび冗長情報を書き戻すこ
とを特徴とするディスクアレイ装置。
8. The disk array device according to claim 7 , wherein the access processing means (34) does not generate new redundant information for each update until the number of updates reaches a predetermined number. The data is updated on the memory (26), and when the number of updates reaches a predetermined number, the data before updating and the cache memory (26) read from the disk array (46) after updating the data on the cache memory (26). A) generating new redundancy information from the latest update data read from the redundant data and the redundant information before the update, and writing the data and the redundant information back to the disk array (46).
【請求項9】請求項1記載のディスクアレイ装置に於い
て、前記キャッシュメモリ(26)に前記アクセス処理
手段(34)により更新されたデータおよび冗長情報を
記憶することを特徴とするディスクアレイ装置。
9. The disk array device according to claim 1, wherein data and redundant information updated by said access processing means (34) are stored in said cache memory (26). .
【請求項10】請求項記載のディスクアレイ装置に於
いて、前記キャッシュ制御手段(24)は、前記アクセ
ス手段(34)によるディスクアレイ(46)の更新に
先立つ前記キャッシュメモリ(26)の検索でデータお
よび冗長情報が記憶されていなかった場合には、前記ア
クセス処理手段(34)に記憶なしを通知して前記ディ
スクアレイ(46)からの読出しを行わせ、前記アクセ
ス処理手段(34)による前記ディスクアレイ(46)
の更新後にデータおよび冗長情報を前記キャッシュメモ
リ(26)に記憶することを特徴とするディスクアレイ
装置。
10. The disk array device according to claim 9 , wherein said cache control means (24) searches said cache memory (26) prior to updating said disk array (46) by said access means (34). If the data and the redundant information are not stored in the storage device, the access processing means (34) is notified of the absence of the storage and the data is read from the disk array (46). The disk array (46)
A disk array device for storing data and redundant information in the cache memory (26) after updating the data.
【請求項11】請求項記載のディスクアレイ装置に於
いて、前記アクセス処理手段(34)は、予め定めた所
定回数だけデータをキャッシュメモリ(26)上の新た
に確保した領域で更新した後にディスクアレイ(46)
に書き戻すことを特徴とするディスクアレイ装置。
11. The disk array device according to claim 9 , wherein said access processing means (34) updates the data in a newly secured area on the cache memory (26) a predetermined number of times. Disk array (46)
A disk array device for writing back to a disk.
【請求項12】請求項11記載のディスクアレイ装置に
於いて、前記アクセス処理手段(34)は、更新回数が
所定回数に達するまでは、更新毎に新たな冗長情報を生
成することなく前記キャッシュメモリ(26)上でデー
タを更新し、更新回数が所定回数に達した時には、キャ
ッシュメモリ(26)上でデータを更新した後にキャッ
シュメモリ(26)から読出した更新前のデータと冗長
情報および最新の更新データから新たな冗長情報を生成
し、前記ディスクアレイ(46)にデータおよび冗長情
報を書き戻すことを特徴とするディスクアレイ装置。
12. The disk array device according to claim 11 , wherein the access processing means (34) does not generate new redundant information for each update until the number of updates reaches a predetermined number. When the data is updated on the memory (26) and the number of updates reaches a predetermined number, the data before updating and the redundant information and the latest information read from the cache memory (26) after updating the data on the cache memory (26) are updated. A new redundant information is generated from the updated data, and the data and the redundant information are written back to the disk array (46).
【請求項13】請求項1乃至12記載のディスクアレイ
装置に於いて、前記ディクスアレイ(46)内の各ディ
スク装置及びキャッシュメモリの空き領域にダミーデー
タおよびダミー冗長情報を格納し、前記アクセス処理手
段(34)はデータの更新及び削除時に空き領域のダミ
ーデータ及びダミー冗長情報を含めて新たな冗長情報を
生成し、且つダミーデータ及びダミー冗長情報について
はディスクアレイ(46)から読出さずに予め設定した
値を使用するようにしたことを特徴とするディスクアレ
イ装置。
13. A disk array system according to claim 1 to 12, wherein storing the dummy data and dummy redundant information in the free space of the disk devices and the cache memory in the Dikusuarei (46), said access processing The means (34) generates new redundant information including dummy data and dummy redundant information of an empty area when updating and deleting data, and does not read the dummy data and dummy redundant information from the disk array (46). A disk array device wherein a preset value is used.
【請求項14】請求項1乃至13記載のディスクアレイ
装置に於いて、前記冗長情報としてパリティデータを使
用し、前記アクセス処理手段(34)は、更新時に、新
たなデータ、更新前のデータおよび更新前のパリティデ
ータの排他的論理和により新たなパリティデータを生成
することを特徴とするディスクアレイ装置。
14. A disk array system according to claim 1 to 13, wherein, using the parity data as the redundant information, said access processing means (34), when updated, the new data, data before updating and A disk array device for generating new parity data by exclusive OR of parity data before update.
JP04269824A 1992-05-21 1992-10-08 Disk array control method Expired - Fee Related JP3122252B2 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP04269824A JP3122252B2 (en) 1992-10-08 1992-10-08 Disk array control method
DE4345320A DE4345320B4 (en) 1992-05-21 1993-05-20 Disk array device
PCT/JP1993/000663 WO1993023803A1 (en) 1992-05-21 1993-05-20 Disk array apparatus
DE4392143A DE4392143C1 (en) 1992-05-21 1993-05-20 Disk array appts.
US08/746,154 US5787460A (en) 1992-05-21 1996-11-06 Disk array apparatus that only calculates new parity after a predetermined number of write requests
US09/031,004 US5954822A (en) 1992-05-21 1998-02-26 Disk array apparatus that only calculates new parity after a predetermined number of write requests

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04269824A JP3122252B2 (en) 1992-10-08 1992-10-08 Disk array control method

Publications (2)

Publication Number Publication Date
JPH06119120A JPH06119120A (en) 1994-04-28
JP3122252B2 true JP3122252B2 (en) 2001-01-09

Family

ID=17477690

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04269824A Expired - Fee Related JP3122252B2 (en) 1992-05-21 1992-10-08 Disk array control method

Country Status (1)

Country Link
JP (1) JP3122252B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3065481B2 (en) * 1994-04-22 2000-07-17 インターナショナル・ビジネス・マシーンズ・コーポレ−ション Disk array device and data storage method
JPH11203056A (en) 1998-01-19 1999-07-30 Fujitsu Ltd Input/output controller and array disk device
JP2001034427A (en) 1999-07-23 2001-02-09 Fujitsu Ltd Device controller and its method
MY134095A (en) * 2000-10-23 2007-11-30 Ibm Method and apparatus for performing drive-based updates to disk array controllers

Also Published As

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

Similar Documents

Publication Publication Date Title
US5911779A (en) Storage device array architecture with copyback cache
JP3743841B2 (en) Storage device system and control method
US6058489A (en) On-line disk array reconfiguration
WO1993023803A1 (en) Disk array apparatus
US6052799A (en) System and method for recovering a directory for a log structured array
US6738863B2 (en) Method for rebuilding meta-data in a data storage system and a data storage system
US6898668B2 (en) System and method for reorganizing data in a raid storage system
US6151685A (en) System and method for recovering a segment directory for a log structured array
JP3177242B2 (en) Nonvolatile memory storage of write operation identifiers in data storage
US5315602A (en) Optimized stripe detection for redundant arrays of disk drives
JP3422370B2 (en) Disk cache controller
JPH05143471A (en) Online reconstituting method for failed memory device in redundant array of memory device
US20050102480A1 (en) Memory device system and method for copying data in memory device system
JPH06332623A (en) Array type recorder and recorder
US6343343B1 (en) Disk arrays using non-standard sector sizes
JPH10105344A (en) Data recorder system and data write method therefor
JP2857288B2 (en) Disk array device
JP3122252B2 (en) Disk array control method
JP3260998B2 (en) Disk controller
JP3744504B2 (en) Processor device
JP2857289B2 (en) Disk array device
JP2001051806A (en) Disk array device
JP3256329B2 (en) Disk array device and control method therefor
JP2914181B2 (en) Disk array device
EP0661639A1 (en) Data prefetch in mass data storage systems

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

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

Free format text: PAYMENT UNTIL: 20071020

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20081020

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20081020

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20091020

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20091020

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20101020

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees