JP3256329B2 - Disk array device and control method therefor - Google Patents

Disk array device and control method therefor

Info

Publication number
JP3256329B2
JP3256329B2 JP12576693A JP12576693A JP3256329B2 JP 3256329 B2 JP3256329 B2 JP 3256329B2 JP 12576693 A JP12576693 A JP 12576693A JP 12576693 A JP12576693 A JP 12576693A JP 3256329 B2 JP3256329 B2 JP 3256329B2
Authority
JP
Japan
Prior art keywords
data
drive
scsi
parity
address
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 - Lifetime
Application number
JP12576693A
Other languages
Japanese (ja)
Other versions
JPH06332632A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP12576693A priority Critical patent/JP3256329B2/en
Priority to US08/248,452 priority patent/US5579474A/en
Publication of JPH06332632A publication Critical patent/JPH06332632A/en
Priority to US08/626,332 priority patent/US6049890A/en
Priority to US09/444,562 priority patent/US6256749B1/en
Priority to US09/862,608 priority patent/US6557140B2/en
Application granted granted Critical
Publication of JP3256329B2 publication Critical patent/JP3256329B2/en
Priority to US10/388,634 priority patent/US7185265B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Detection And Correction Of Errors (AREA)

Description

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

【0001】[0001]

【産業上の利用分野】本発明はコンピュ−タシステムに
係り、特に高性能な入出力動作を可能とするディスクフ
ァイルシステムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a computer system, and more particularly to a disk file system capable of performing high-performance input / output operations.

【0002】[0002]

【従来の技術】現在のコンピュータシステムにおいて
は、CPU等の上位側が必要とするデ−タは2次記憶装
置に格納され、CPUが必要とする時に応じ2次記憶装
置に対してデ−タの書込み、読みだしを行っている。こ
の2次記憶装置としては一般に不揮発な記憶媒体が使用
され、代表的なものとして磁気ディスク装置(以下ドラ
イブとする)、光ディスクなどがあげられる。
2. Description of the Related Art In a current computer system, data required by a host such as a CPU is stored in a secondary storage device, and the data is stored in the secondary storage device when the CPU requires it. Writing and reading are being performed. A non-volatile storage medium is generally used as the secondary storage device, and typical examples include a magnetic disk device (hereinafter referred to as a drive) and an optical disk.

【0003】近年高度情報化に伴い、コンピュータシス
テムにおいて、2次記憶装置の高性能化が要求されてき
た。その一つの解として、多数の比較的容量の小さなド
ライブにより構成されるディスクアレイが考えられてい
る。
In recent years, with the advancement of information, there has been a demand for higher performance secondary storage devices in computer systems. As one solution, a disk array constituted by a number of drives having a relatively small capacity has been considered.

【0004】「D.Patterson,G.Gibson,and R.H.Kartz;A
Case for Redundant Arrays of Inexpensive Disks(RA
ID),in ACM SIGMOD Conference,Chicago,IL,(June198
8)」において、データを分割して並列に処理を行うディ
スクアレイ(レベル3)とデータを分散して、独立に扱
うディスクアレイ(レベル5)について、その性能およ
び信頼性の検討結果が報告されている。現在この論文に
書かれている方式が最も一般的なディスクアレイと考え
られている。
[0004] "D. Patterson, G. Gibson, and RHKartz; A
Case for Redundant Arrays of Inexpensive Disks (RA
ID), in ACM SIGMOD Conference, Chicago, IL, (June198
8) ”, the results of a study on the performance and reliability of a disk array (level 3) that divides data and processes data in parallel and a disk array (level 5) that distributes data and handles data independently are reported. ing. Currently, the method described in this paper is considered to be the most common disk array.

【0005】以下にデータを分散して、独立に扱うディ
スクアレイ(レベル5)について説明する。レベル5の
ディスクアレイでは個々のデータを分割せずに独立に扱
い、多数の比較的容量の小さなドライブに分散して格納
するものである。現在、一般に使用されている汎用大型
コンピュータシステムの2次記憶装置では、1ドライブ
当りの容量が大きいため、他の読み出し/書込み要求に
当該ドライブが使用されて、そのドライブを使用できず
に待たされることが多く発生した。このタイプのディス
クアレイでは汎用大型コンピュータシステムの2次記憶
装置で使用されている大容量のドライブを、多数の比較
的容量の小さなドライブで構成し、データを分散して格
納してあるため、読み出し/書込み要求が増加してもデ
ィスクアレイの複数のドライブで分散して処理するた
め、読み出し/書込み要求がまたされることが減少す
る。しかし、ディスクアレイは、このように多数のドラ
イブにより構成されるため、部品点数が増加し障害が発
生する確率が高くなる。そこで、信頼性の向上を図る目
的で、パリティを用意する必要がある。
Hereinafter, a disk array (level 5) in which data is distributed and handled independently will be described. In the level 5 disk array, individual data is handled independently without being divided, and is stored in a large number of drives having relatively small capacities. At present, in a secondary storage device of a general-purpose large-sized computer system generally used, since the capacity per drive is large, the drive is used for another read / write request, and the drive cannot be used and waits. Many things happened. In this type of disk array, a large-capacity drive used in a secondary storage device of a general-purpose large-scale computer system is composed of a large number of relatively small-capacity drives, and data is distributed and stored. Even if the number of read / write requests increases, the requests are distributed and processed by a plurality of drives of the disk array, so that the number of read / write requests that are repeated is reduced. However, since the disk array is composed of such a large number of drives, the number of components increases and the probability of occurrence of a failure increases. Therefore, it is necessary to prepare a parity for the purpose of improving reliability.

【0006】このパリティによりデータを格納したドラ
イブに障害が発生した場合、その障害ドライブ内のデー
タを復元することが可能となる。ディスクアレイではデ
ータからパリティを作成しデータと同様にドライブに格
納しておく。この時、パリティは、パリティの作成に関
与したデータとは別のドライブに格納される。
When a failure occurs in a drive storing data due to the parity, data in the failed drive can be restored. In a disk array, parity is created from data and stored in a drive in the same manner as data. At this time, the parity is stored in a drive different from the data involved in creating the parity.

【0007】これらのディスクアレイでは、現在一般に
使用されている汎用大型コンピュータシステムと同様、
2次記憶装置内では、個々のデータの格納場所(アドレ
ス)は予め指定したアドレスに固定され、CPUから当
該データへ読みだしまたは書込みする場合、この固定さ
れたアドレスへアクセスすることになっている。この分
散して格納するディスクアレイ(レベル5)ではストレ
−ジテクノロジコーポレーション(以下STKとする)
から製品発表がされている。米国特許WO 91/20
076では、レベル5の基本アーキテクチャにおいて、
動的に変更可能なアドレスのテーブルを用意することに
より、データ圧縮を行いデータの書込み処理において、
トラック単位で書込み先のアドレスを動的に変換する方
法について開示されている。
[0007] In these disk arrays, similar to general-purpose large-sized computer systems generally used today,
In the secondary storage device, the storage location (address) of each piece of data is fixed to an address designated in advance, and when reading or writing the data from the CPU, the fixed address is accessed. . In the disk array (level 5) for storing data in a distributed manner, Storage Technology Corporation (hereinafter referred to as STK) is used.
Has announced a product. US Patent WO 91/20
076, in the level 5 basic architecture,
By preparing a table of addresses that can be dynamically changed, data compression is performed,
A method of dynamically converting a write destination address in track units is disclosed.

【0008】また、特開平4−230512にはレベル
5において、書き込み時に書き込むデータと、この書き
込みにより更新したパリティを、それぞれ別の場所に書
き込む方法について開示されている。さらに、IBM社
のディスクアレイ(9337)では、レベル5において
WAD(ライト アシスト デバイス)を設けることが
発表されている。
Japanese Patent Application Laid-Open No. Hei 4-230512 discloses a method of writing data to be written at the time of writing and parity updated by the writing at different locations in level 5. Further, in the IBM disk array (9337), it has been announced that a WAD (write assist device) is provided at level 5.

【0009】[0009]

【発明が解決しようとする課題】現在の汎用大型計算機
システム等ではドライブにより構成される2次記憶装置
内では、CPUから転送されてくるデータは個々のデー
タの格納場所(アドレス)が予め指定したアドレスに固
定され、CPUから当該データへ読みだしまたは書込む
場合は、この固定されたアドレスへアクセスすることに
なる。これは、ディスクアレイにおいても同じである。
データを分割して並列に処理を行うディスクアレイ(レ
ベル3)ではこのようにアドレスを固定しても影響は無
いが、データを分散して、独立に扱うディスクアレイ
(レベル5)ではアドレスを固定した場合、書込み時に
大きな処理オーバヘッドが必要になる。以下それについ
て説明する。
In the current general-purpose large-scale computer system and the like, in a secondary storage device constituted by a drive, data transferred from the CPU has a storage location (address) of each data specified in advance. The address is fixed, and when reading or writing the data from the CPU, the fixed address is accessed. This is the same in the disk array.
In a disk array in which data is divided and processed in parallel (level 3), fixing addresses in this way has no effect. However, in a disk array in which data is distributed and handled independently (level 5), addresses are fixed. In such a case, a large processing overhead is required at the time of writing. This will be described below.

【0010】図11は前記公知例でD.Pattersonらが提
案したRAIDに述べられている、データを分散して、
独立に扱うディスクアレイ(レベル5)内部のデータア
ドレスを示している。この各アドレスにあるデータは1
回の読み出し/書込み処理される単位で、個々のデータ
は独立している。また、RAIDで述べられているアー
キテクチャではデータに対するアドレスは固定されてい
る。前述したようにこのようなシステムでは、信頼性を
向上するためパリティを設定することが不可欠である。
本システムでは各ドライブ内の同一アドレスのデータに
よりパリティが作成される。すなわち、ドライブ#1か
ら4までのアドレス(1,1)のデータによりパリティ
が作成され、パリティを格納するドライブの(1,1)
に格納される。本システムでは読み出し/書込み処理は
現在の汎用大型計算機システムと同様に各ドライブに対
し当該データをアクセスする。
[0010] FIG. 11 is a data distribution method described in the RAID proposed by D. Patterson et al.
It shows the data address inside the disk array (level 5) that is handled independently. The data at each address is 1
Each data is independent in the unit of the read / write processing performed each time. In the architecture described in RAID, the address for data is fixed. As described above, in such a system, it is essential to set a parity in order to improve reliability.
In this system, parity is created by data at the same address in each drive. That is, a parity is created by the data of the address (1, 1) from the drives # 1 to # 4, and the (1, 1) of the drive storing the parity is generated.
Is stored in In this system, the read / write process accesses the data to each drive in the same manner as in the current general-purpose large computer system.

【0011】このようなディスクアレイにおいて、例え
ばドライブ#3のアドレス(2,2)のデータを更新す
る場合、まず、更新される前のドライブ#3の(2,
2)のデータとパリティを格納してあるドライブの
(2,2)のパリティを読みだし(1)、これらと更新
する新しいデータとで排他的論理和をとり、新たなパリ
ティを作成たする(2)。パリティの作成完了後、更新
する新しいデータをドライブ#3の(2,2)に、新パ
リティをパリティを格納するドライブの(2,2)に格
納する(3)。
In such a disk array, for example, when updating the data of the address (2, 2) of the drive # 3, first, the (2, 2) of the drive # 3 before being updated is updated.
The parity of (2, 2) of the drive storing the data and the parity of (2) is read (1), and exclusive OR is performed with these and new data to be updated to create a new parity ( 2). After the creation of the parity is completed, the new data to be updated is stored in (2, 2) of the drive # 3, and the new parity is stored in (2, 2) of the drive storing the parity (3).

【0012】図12に示すように、このようなレベル5
のディスクアレイでは、データの格納されているドライ
パリティの格納されているドライブから古いデータ
とパリティを読み出すため、ディスクを平均1/2回転
待ち、それから読み出してパリティを作成する。この新
しく作成したパリティを書き込むため更に一回転必要と
なり、データを書き替える場合最低で1.5回転待たな
ければならない。ドライブにおいては1.5回転ディス
クの回転を待つということは非常に大きなオーバヘッド
となる。このような書込み時のオーバヘッドを削減する
ため、書込み先のアドレスを動的に変換する方法が考え
られ、WO 91/20076に開示されている。
[0012] As shown in FIG. 12, such level 5
In order to read old data and parity from the drive in which data is stored and the drive in which parity is stored, the disk array waits 平均 of the disk on average, and then reads to create parity. One more rotation is required to write the newly created parity, and at least 1.5 rotations must be waited when rewriting data. In a drive, waiting for the rotation of a 1.5 turn disk is a very large overhead. In order to reduce the overhead at the time of writing, a method of dynamically converting the address of the writing destination has been considered, which is disclosed in WO 91/2076.

【0013】また、前記特開平4−230512におい
ても、書き込み時において書き込みデータをそのまま、
書き込みデータが書き込まれるアドレスではなく別のア
ドレスに、書き込むことにより書き込みオーバヘッドを
削減する方法について開示されている。CPU側から書
き込むデータが送られてくるとですぐにパリティの更新
を行ない、更新後のパリティを書き込む。このように、
レベル5のディスクアレイでは、読みだしと比較し書き
込み時ではパリティ生成とこの生成したパリティを書き
込む処理のオーバヘッドが非常に大きいため、CPUか
らの読みだし、書き込み要求が多いときには、この処理
オーバヘッドが性能低下の大きな原因となる。
Also, in the above-mentioned Japanese Patent Application Laid-Open No. 4-230512, at the time of writing,
A method is disclosed in which write overhead is reduced by writing to an address other than the address where the write data is written. As soon as data to be written is sent from the CPU side, the parity is updated, and the updated parity is written. in this way,
In the disk array of level 5, the overhead of parity generation and the processing of writing the generated parity is much larger at the time of writing than at the time of reading. Therefore, when there are many reading and writing requests from the CPU, this processing overhead is performance. A major cause of the decline.

【0014】本発明の目的は、レベル5のディスクアレ
イ装置において、書き込み時における処理のオーバヘッ
ドを減少させて、ディスクアレイ装置の性能向上を図る
ことにある。
An object of the present invention is to improve the performance of a disk array device of level 5 by reducing the processing overhead during writing.

【0015】本発明の他の目的は、障害ドライブ内のデ
ータ復元用スペアドライブを装置の性能向上に利用する
ことによってドライブ資源の有効活用を図ることにあ
る。
It is another object of the present invention to effectively use drive resources by using a data restoration spare drive in a failed drive to improve the performance of the apparatus.

【0016】[0016]

【課題を解決するための手段】本発明ではパリティグル
ープを構成するドライブと二重化領域(スペース領域)
のドライブにより論理グループを構成し、このスペース
領域を有効に活用することにより、高信頼性を保ちなが
ら、しかも、書き込み時のパリティ更新の開始時間を遅
らせ、後のCPUからの読みだしまたは書き込み要求が
少ないときにパリティ生成を行う。
According to the present invention, a drive constituting a parity group and a duplex area (space area) are provided.
A logical group is composed of drives, and by effectively utilizing this space area, the start time of the parity update at the time of writing is delayed while maintaining high reliability, and a read or write request from the CPU can be made later. Is generated when the number is small.

【0017】具体的には、書き込み時に、論理グループ
10を構成するSCSIドライブ12の中で、書き込む
データ(新データ)をとりあえずスペース領域に二重化
して格納する。CPU1に対してはこの時点で書き込み
処理を完了したと報告する。
More specifically, at the time of writing, data to be written (new data) is temporarily stored in the space area in the SCSI drives 12 constituting the logical group 10 in a duplicated manner. At this point, the CPU 1 is notified that the writing process has been completed.

【0018】また、パリティの作成および当該SCSI
ドライブ12へのパリティの書き込みは、新データのS
CSIドライブへの書き込みとは独立のタイミングで、
処理する。具体的には、ADC2のMP1 20が当該
論理グループ10に対するCPU1からの読みだし/書
き込み要求をカウントし、予めユーザまたはシステム管
理者が設定した数より少ない場合で、しかも当該SCS
Iドライブ12に対し読みだしまたは書き込み要求が発
行されていないときにパリティの作成を行い、パリティ
の作成完了後当該SCSIドライブ12に対しパリティ
を書き込む。
In addition, parity generation and the SCSI
Writing the parity to the drive 12 is performed by writing the new data S
At a timing independent of writing to the CSI drive,
To process. Specifically, the MP1 20 of the ADC 2 counts the number of read / write requests from the CPU 1 to the logical group 10 and if the number is smaller than the number set in advance by the user or the system administrator,
When no read or write request has been issued to the I drive 12, parity is created, and after the parity creation is completed, the parity is written to the SCSI drive 12.

【0019】パリティの書き込みの他の方法として、一
定時間毎の割込み処理で行なってもよい。一日の中でC
PUからの読みだしまたは書き込み要求数の少ない時間
帯、あるいは一月の中で少ない日を予測し、スケジュー
ル化しておけばよい。
As another method of writing the parity, the parity may be written by an interrupt process at fixed time intervals. C in the day
A time zone in which the number of read or write requests from the PU is small or a small day in a month may be predicted and scheduled.

【0020】パリティの作成およびそのパリティの当該
SCSIドライブ12へのパリティの書き込みが完了す
る前に、当該論理グループ10において任意の1台のS
CSIドライブに対し障害が発生し、その内部のデータ
が読み出せなくなった場合は、二重化データ以外のデー
タが格納されているSCSIドライブ12に対しては、
前のパリティと、残っているデータから障害が発生した
SCSIドライブ12内のデータを回復することが可能
で、二重化されている新しいデータにおいては、障害が
発生していない方のSCSIドライブ12内の新データ
により回復することが可能である。
Before the creation of the parity and the writing of the parity to the SCSI drive 12 are completed, any one of the S
If a failure occurs in the CSI drive and data inside the CSI drive cannot be read, the SCSI drive 12 storing data other than the duplicated data is
It is possible to recover the data in the failed SCSI drive 12 from the previous parity and the remaining data, and in the duplicated new data, the data in the non-failed SCSI drive 12 can be recovered. It is possible to recover with new data.

【0021】[0021]

【作用】本発明では、上記のようにデータの書き込みと
パリティの作成およびSCSIドライブ12への書き込
みを独立させることにより、ユーザ(CPU)からは書
き込み時のパリティ作成によるオーバヘッドはなくな
る。これは、CPUからの読みだしまたは書き込み要求
数には時間的変動があるため、読みだしまたは書き込み
要求数が多いときには、書き込み処理におけるパリティ
の更新をその都度行わず、データの書き込みが完了した
時点でCPUには終了を報告し、比較的読みだしまたは
書き込み要求の数が少ないときまでパリティの更新を遅
らせる。このパリティの更新はCPU側の関知はなく、
ディスクアレイコントローラ2が独自に行う。
According to the present invention, as described above, the writing of data, the creation of parity, and the writing to the SCSI drive 12 are made independent from each other, so that there is no overhead from the user (CPU) due to parity creation at the time of writing. This is because the number of read or write requests from the CPU fluctuates with time, so when the number of read or write requests is large, the parity is not updated in the write process each time and the data write is completed. Then, the completion is reported to the CPU, and the update of the parity is delayed until the number of read or write requests is relatively small. This parity update is not related to the CPU,
This is performed independently by the disk array controller 2.

【0022】このため、CPU側から見たとき、従来の
ディスクアレイ(RAID方式)では図12に示すよう
に書き込み時に平均1.5回転の回転待ち時間を必要と
したのが、本発明によれば平均0.5回転の回転待ち時
間ですむ。また、信頼性の面から見ても従来のディスク
アレイ(RAID方式)と比較し、同等に向上させるこ
とが可能となる。
For this reason, according to the present invention, when viewed from the CPU side, the conventional disk array (RAID system) requires an average rotation waiting time of 1.5 rotations at the time of writing as shown in FIG. In this case, the average rotation waiting time is 0.5 rotation. Also, from the viewpoint of reliability, it is possible to improve the same as compared with the conventional disk array (RAID system).

【0023】[0023]

【実施例】【Example】

〈実施例1〉以下本発明の一実施例を、図1〜図5及び
図13により説明する。図1において、本実施例はCP
U1、ディスクアレイコントローラ(以下ADC)2,
ディスクアレイユニット(以下ADU)3により構成さ
れる。ADU3は複数の論理グループ10により構成さ
れ,個々の論理グループ10はm台のSCSIドライブ
12と、各々のSCSIドライブ12とADC2を接続
するドライブパス9−1から4により構成される。な
お,このSCSIドライブ12の数は本発明の効果を得
るには、特に制限は無い。この論理グループ10は障害
回復単位で、この論理グループ10内の各SCSIドラ
イブ12内の各データによりパリティを作成する。本実
施例ではm−1台の個々のSCSIドライブ12内のデ
ータから各々のパリティが作成される。
<Embodiment 1> One embodiment of the present invention will be described below with reference to FIGS. 1 to 5 and FIG. In FIG. 1, this embodiment is a CP
U1, disk array controller (ADC) 2,
It comprises a disk array unit (ADU) 3. The ADU 3 is composed of a plurality of logical groups 10, and each logical group 10 is composed of m SCSI drives 12 and drive paths 9-1 to 4 connecting each SCSI drive 12 and the ADC 2. The number of SCSI drives 12 is not particularly limited in order to obtain the effects of the present invention. The logical group 10 is a unit for recovery from failure, and creates a parity using data in each SCSI drive 12 in the logical group 10. In this embodiment, each parity is created from the data in the m-1 individual SCSI drives 12.

【0024】次に、ADC2の内部構造について図1を
用いて説明する。ADC2はチャネルパスディレクタ5
と2個のクラスタ13とバッテリバックアップ等により
不揮発化された半導体メモリであるキャッシュメモリ7
により構成される。このキャッシュメモリ7にはデータ
とアドレス変換用テーブルが格納されている。このキャ
ッシュメモリ7およびその中のアドレス変換用テーブル
はADC2内の全てのクラスタにおいて共有で使用され
る。クラスタ13はADC2内において独立に動作可能
なパスの集合で、各クラスタ13間においては電源、回
路は全く独立となっている。クラスタ13はチャネル、
キャッシュメモリ7間のパスであるチャネルパス6と、
キャッシュメモリ7SCSIドライブ12間のパスで
あるドライブパス8−1から8−4が、それぞれ、2個
ずつで構成されている。それぞれのチャネルパス6−1
から6−4とドライブパス8はキャッシュメモリ7を介
して接続されている。CPU1より発行されたコマンド
は外部インターフェースパス4を通ってADC2のチャ
ネルパスディレクタ5に発行される。ADC2は2個の
クラスタ13により構成され、それぞれのクラスタは2
個のパスで構成されるため、ADC2は合計4個のパス
により構成される。このことから、ADC2ではCPU
1からのコマンドを同時に4個まで受け付けることが可
能である。そこで、CPU1からコマンドが発行された
場合ADC2内のチャネルパスディレクタ5によりコ
マンドの受付が可能かどうか判断する。
Next, the internal structure of the ADC 2 will be described with reference to FIG. ADC 2 is channel path director 5
And two clusters 13 and a cache memory 7 which is a nonvolatile semiconductor memory by battery backup or the like
It consists of. The cache memory 7 stores data and an address conversion table. The cache memory 7 and the address conversion table therein are used in common by all clusters in the ADC 2. The cluster 13 is a set of paths that can operate independently in the ADC 2, and the power supply and the circuit are completely independent between the clusters 13. Cluster 13 is a channel,
A channel path 6, which is a path between the cache memories 7,
Each of the drive paths 8-1 to 8-4 , which are paths between the cache memory 7 and the SCSI drive 12, is composed of two drive paths. Each channel path 6-1
To 6-4 and the drive path 8 are connected via the cache memory 7. The command issued from the CPU 1 is issued to the channel path director 5 of the ADC 2 through the external interface path 4. The ADC 2 is composed of two clusters 13, each of which has 2 clusters.
ADC2 is composed of a total of four paths. From this, ADC2 uses CPU
It is possible to receive up to four commands from 1 at the same time. Therefore, when a command is issued from the CPU 1, it is determined whether or not the command can be accepted by the channel path director 5 in the ADC 2.

【0025】図2は図1のチャネルパスディレクタ5と
1クラスタ13−1内の内部構造を示した図である。図
2に示すように、CPU1からADC2に送られてきた
コマンドはインターフェースアダプタ(以下IF Ad
p)15により取り込まれ、マイクロプロセッサである
MP1 20はクラスタ内の外部インターフェースパス
4の中で使用可能なパスがあるかを調べ、使用可能な外
部インターフェースパス4がある場合はMP1 20は
チャネルパススイッチ16を切り換えてコマンドの受付
け処理を行ない、受け付けられない場合は受付不可の応
答をCPU1へ送る。
FIG. 2 is a diagram showing an internal structure of the channel path director 5 and one cluster 13-1 of FIG. As shown in FIG. 2, a command sent from the CPU 1 to the ADC 2 is an interface adapter (hereinafter, IF Ad).
The microprocessor MP1 20 fetched by p) 15 checks whether there is a usable path among the external interface paths 4 in the cluster, and if there is a usable external interface path 4, the MP1 20 sets the channel path. The switch 16 is switched to perform a command accepting process. If the command is not accepted, a response indicating that the command is not accepted is sent to the CPU 1.

【0026】本実施例ではADU3を構成するSCSI
ドライブ12はSCSIインターフェースのドライブを
使用する。CPU1をIBMシステム9000シリーズ
のような大型汎用計算機とした場合、CPU1からはI
BMオペレーティングシステム(OS)で動作可能なチ
ャネルインターフェースのコマンド体系にのっとってコ
マンドが発行される。そこで、SCSIドライブ12を
SCSIインターフェースのドライブを使用した場合、
CPU1からのコマンドを、SCSIインターフェース
のコマンド体系にのっとったコマンドに変換する必要が
生じる。この変換はコマンドのプロトコル変換と、アド
レス変換に大きく分けられる。以下にアドレス変換につ
いて説明する。
In this embodiment, the SCSI constituting the ADU3
The drive 12 uses a drive of the SCSI interface. When the CPU 1 is a large general-purpose computer such as the IBM System 9000 series, the CPU 1
Commands are issued in accordance with a channel interface command system operable by the BM operating system (OS). Therefore, when a SCSI interface drive is used as the SCSI drive 12,
It is necessary to convert a command from the CPU 1 into a command conforming to the SCSI interface command system. This conversion can be broadly divided into command protocol conversion and address conversion. Hereinafter, the address conversion will be described.

【0027】CPU1から指定されるアドレスは、図1
2に示すように当該データが格納されているトラックが
所属するシリンダの位置と、そのシリンダ内において当
該データが格納されているトラックを決定するヘッドア
ドレスと、そのトラック内のレコードの位置を特定す
る。具体的には要求データが格納されている当該ドライ
ブの番号(CPU指定ドライブ番号)と当該ドライブ内
のシリンダ番号であるシリンダアドレス(CC)とシリ
ンダにおいてトラックを選択するヘッドの番号であるヘ
ッドアドレス(HH)とレコードアドレス(R)からな
るCCHHRである。
The address specified by the CPU 1 is shown in FIG.
As shown in FIG. 2, the position of the cylinder to which the track in which the data is stored belongs, the head address for determining the track in which the data is stored in the cylinder, and the position of the record in the track are specified. . Specifically, the number of the drive in which the requested data is stored (CPU-designated drive number), the cylinder address (CC) that is the cylinder number in the drive, and the head address (the number of the head that selects a track in the cylinder) HH) and a record address (R).

【0028】従来のCKDフォーマット対応の磁気ディ
スクサブシステム(IBM3990−3390)ではこ
のアドレスに従ってドライブへアクセスすれば良い。し
かし、本実施例では複数のSCSIドライブ12により
従来のCKDフォーマット対応の磁気ディスクサブシス
テムを論理的にエミュレートする。つまり、ADC2は
複数のSCSIドライブ12が、従来のCKDフォーマ
ット対応の磁気ディスクサブシステムで使用されている
ドライブ1台に相当するようにCPU1にみせかける。
このため、CPU1から指定してきたアドレス(CCH
HR)をSCSIドライブのアドレスにMP1 20は
変換する。このアドレス変換には以下に示すようなアド
レス変換用のテーブル40(以下アドレステーブルとす
る)が使用される。
In a conventional magnetic disk subsystem (IBM 3990-3390) compatible with the CKD format, the drive may be accessed according to this address. However, in the present embodiment, a plurality of SCSI drives 12 logically emulate a conventional magnetic disk subsystem compatible with the CKD format. That is, the ADC 2 presents the CPU 1 such that the plurality of SCSI drives 12 correspond to one drive used in the conventional magnetic disk subsystem compatible with the CKD format.
For this reason, the address (CCH) specified by the CPU 1
HR) to the address of the SCSI drive. For this address conversion, an address conversion table 40 (hereinafter referred to as an address table) as shown below is used.

【0029】ADC2内のキャッシュメモリ7には、そ
の内部の適当な領域に図3に示すようなアドレステーブ
ル40が格納されている。本実施例では、CPU1が指
定してくるドライブはCKDフォーマット対応の単体ド
ライブである。しかし、本発明ではCPU1は単体と認
識しているドライブが、実際は複数のSCSIドライブ
12により構成されるため、論理的なドライブとして定
義される。このため、ADC2のMP1 20はCPU
1より指定してきたアドレス(CPU指定ドライブ番号
41とCCHHR46)をSCSIドライブ12に対す
るSCSIドライブアドレス42(SCSIドライブ番
号43とそのSCSIドライブ内のアドレス(以下SC
SI内Addrとする)44)に変換する。
The cache memory 7 in the ADC 2 stores an address table 40 as shown in FIG. In this embodiment, the drive designated by the CPU 1 is a single drive compatible with the CKD format. However, in the present invention, the drive recognized as a single unit by the CPU 1 is actually defined as a logical drive because it is constituted by a plurality of SCSI drives 12. Therefore, the MP1 20 of the ADC 2 is connected to the CPU
1 is assigned to the SCSI drive address 42 (the SCSI drive number 43 and the address within the SCSI drive (hereinafter referred to as SC).
(Addr in SI) 44).

【0030】アドレステーブル40はCPU1が指定す
るCPU指定ドライブ番号41とSCSIドライブアド
レス42により構成される。SCSIドライブアドレス
42はSCSIドライブ12のアドレスであるSCSI
ドライブ番号43とそのSCSIドライブ内の実際にデ
ータが格納されているアドレスである、SCSI内Ad
dr44と、論理グループ10内において、そのSCS
I内Addr44により決定されるパリティグループに
おけるパリティが格納されているSCSIドライブ番号
(パリティドライブ番号50)と、二重化領域(スペー
ス領域)が格納されているSCSIドライブ番号(スペ
ースドライブ番号51)により構成されている。このア
ドレステーブル40では、論理アドレス45によりSC
SIドライブ番号43とSCSI内Addr44を決定
する。アドレステーブル40のSCSIドライブアドレ
ス42に登録されているSCSIドライブ番号43のS
CSIドライブ12により論理グループ10は構成され
る。
The address table 40 is composed of a CPU designated drive number 41 designated by the CPU 1 and a SCSI drive address 42. The SCSI drive address 42 is the SCSI drive 12 SCSI address.
The drive number 43 and the address in the SCSI drive where the data is actually stored,
dr44 and its SCS in the logical group 10.
It is composed of a SCSI drive number (parity drive number 50) storing the parity in the parity group determined by the Addr 44 in I, and a SCSI drive number (space drive number 51) storing the duplex area (space area). ing. In this address table 40, the logical address 45
The SI drive number 43 and the SCSI Addr 44 are determined. S of the SCSI drive number 43 registered in the SCSI drive address 42 of the address table 40
The logical group 10 is configured by the CSI drive 12.

【0031】この論理グループ10内の同一SCSI内
Addr44において、パリティが格納されているSC
SIドライブ番号43をパリティドライブ番号50に登
録し、スペース領域が確保されているSCSIドライブ
番号43をスペースドライブ番号51に登録する。スペ
ースドライブ番号51にはスペース領域が確保されてい
るSCSIドライブ番号の他にSDフラグ53により構
成される。SDフラグ53は、スペース領域に格納され
ているデータが有効で、書き込み処理においてスペース
領域として使用できない場合はオン(1)となり、無効
で、スペース領域として使用可能な場合はオフ(0)と
なる。この論理グループ10はデータとこのデータと関
連するパリティにより構成されるパリティグループとス
ペース領域により構成される。
In the Addr 44 within the same SCSI in the logical group 10, the SC in which parity is stored
The SI drive number 43 is registered in the parity drive number 50, and the SCSI drive number 43 in which the space area is secured is registered in the space drive number 51. The space drive number 51 is constituted by an SD flag 53 in addition to the SCSI drive number for which the space area is secured. The SD flag 53 is turned on (1) when the data stored in the space area is valid and cannot be used as the space area in the writing process, and turned off (0) when the data is invalid and can be used as the space area. . The logical group 10 is composed of a parity group and a space area composed of data and a parity associated with the data.

【0032】論理アドレス45にはCPU1から指定さ
れるアドレスである、CPU指定ドライブ番号41とC
CHHRの中でCCHHR46が登録されており、それ
以外にはこの論理アドレス45のデータがキャッシュメ
モリ7内に存在する場合の、そのデータのキャッシュメ
モリ7内のアドレスを格納するキャッシュアドレス47
と、キャッシュメモリ7内にその論理アドレス45のデ
ータを保持している場合オン(1)が登録されるキャッ
シュフラグ48と、その論理アドレス45にはスペース
領域が確保されている場合オン(1)となる無効フラグ
49とキャッシュメモリ7内の書き込みデータがドライ
ブに書き込まれている場合オン(1)となるドライブフ
ラグ52により構成される。
The logical address 45 is an address designated by the CPU 1, ie, the CPU designated drive number 41 and C
If the CCHHR 46 is registered in the CHHR and the data of the logical address 45 exists in the cache memory 7 in addition to the CCHHR 46, the cache address 47 stores the address of the data in the cache memory 7.
And a cache flag 48 in which ON (1) is registered when data of the logical address 45 is held in the cache memory 7, and ON (1) when a space area is secured in the logical address 45. And a drive flag 52 that is turned on (1) when the write data in the cache memory 7 is written to the drive.

【0033】以上のようにアドレステーブル40により
CPU指定ドライブ番号41とCCHHR46を論理ア
ドレス45に変換し、そのデータが実際に格納されてい
るSCSIドライブ番号43とSCSI内Addr44
を決定する。
As described above, the CPU designated drive number 41 and the CCHHR 46 are converted into the logical address 45 by the address table 40, and the SCSI drive number 43 where the data is actually stored and the Addr 44 in the SCSI.
To determine.

【0034】例えば、図3においてCPU1からCPU
指定ドライブ番号41としてDrive#1、CCHH
R46がADR8のデータに対し要求を発行してきた場
合、アドレステーブル40においてCPU指定ドライブ
番号41がDrive#1の領域の各論理アドレス45
内のCCHHR46を調べ、CCHHR46がADR8
の論理アドレス45を探す。図3においては論理アドレ
ス45としてData#23(D#23)がCCHHR
46がADR8となっており、Data#23(D#2
3)が当該論理アドレス45である。
For example, in FIG.
Drive # 1, CCHH as designated drive number 41
When R46 issues a request for the data of ADR8, in the address table 40, the CPU designated drive number 41 is set to the logical address 45 of the area of Drive # 1.
Of CCHHR46 in ADR8
Is searched for a logical address 45. In FIG. 3, Data # 23 (D # 23) is CCHHR as the logical address 45.
46 is ADR8, and Data # 23 (D # 2
3) is the logical address 45.

【0035】このData#23(D#23)はアドレ
ステーブル40からSD#2のSCSIインターフェー
スのSCSIドライブ12内のSCSI内Addr44
としてDADR8に該当することが分かり、物理的なア
ドレスへ変換される。また、このData#23(D#
23)に対応するパリティは、パリティドライブ番号5
0からData#23(D#23)と同一のSCSI内
Addr44のDADR8のSD#4のSCSIドライ
ブ12に格納されており、スペアドライブ番号51か
ら、SDフラグ53がオン(1)のため、SD#4、5
のSCSI内Addr44がDADR8に二重化して格
納されているデータは有効で、この領域は二重化領域
(スペア領域)として使用することは禁止されている。
This Data # 23 (D # 23) is obtained from the address table 40 by using the Addr 44 in the SCSI in the SCSI drive 12 of the SCSI interface of the SD # 2.
, And is converted to a physical address. The data # 23 (D #
The parity corresponding to 23) is parity drive number 5
0 to Data # 23 (D # 23) are stored in the SCSI drive 12 of SD # 4 of DADR8 of Addr44 in the same SCSI as Data # 23 (D # 23), and from the spare drive number 51, the SD flag 53 is on (1). # 4, 5
The data in which the Addr 44 in the SCSI is duplicated and stored in the DADR 8 is valid, and the use of this area as a duplicated area (spare area) is prohibited.

【0036】このように、CPU1から指定されたアド
レスを論理アドレス45に変換し、実際に読みだし/書
き込みを行うSCSIドライブ12の物理的なアドレス
に変換した後、SD#2のSCSIドライブ12のDa
ta#23(D#23)に対し読み出しまたは書込み要
求が発行される。この時アドレステーブル40において
Data#23(D#23)の論理アドレス45ではキ
ャッシュフラグ48がオン(1)のためこのデータはキ
ャッシュメモリ7内のCADR2,1に存在する。も
し、キャッシュフラグ48がオフ(0)であればCAD
R2,4のキャッシュメモリ7内には、当該データは存
在しない。また、このデータは無効フラグ49がオフ
(0)のため、このデータは有効となる。さらにドライ
ブフラグ52がオン(1)のため、このデータはキャッ
シュメモリ7からドライブに既に書き込まれている。
As described above, the address specified by the CPU 1 is converted into the logical address 45, and is converted into the physical address of the SCSI drive 12 which actually performs reading / writing. Da
A read or write request is issued to ta # 23 (D # 23). At this time, the cache flag 48 is turned on (1) at the logical address 45 of Data # 23 (D # 23) in the address table 40, so that this data exists in the CADR2, 1 in the cache memory 7. If the cache flag 48 is off (0), CAD
The data does not exist in the cache memories 7 of R2 and R4. This data is valid because the invalid flag 49 is off (0). Further, since the drive flag 52 is on (1), this data has already been written from the cache memory 7 to the drive.

【0037】この、アドレステーブル40はシステムの
電源をオンした時に、MP1 20により論理グループ
10内のある特定のSCSIドライブ12から、キャッ
シュメモリ7にCPU1は関知せず自動的に読み込まれ
る。一方、電源をオフする時はMP1 20によりキャ
ッシュメモリ7内のアドレステーブル40を、読み込ん
できたSCSIドライブ12内の所定の場所にCPU1
は関知せずに自動的に格納する。
The address table 40 is automatically read into the cache memory 7 from the specific SCSI drive 12 in the logical group 10 by the MP 120 when the power supply of the system is turned on, irrespective of the CPU 1. On the other hand, when the power supply is turned off, the address table 40 in the cache memory 7 is stored in a predetermined location in the SCSI drive 12 by the MP1 20.
Is automatically stored without any knowledge.

【0038】次に、ADC2内での具体的なI/O処理
について図1、図2を用いて説明する。CPU1より発
行されたコマンドはIF Adp15を介してADC2
に取り込まれ、MP1 20により読み出し要求か書込
み要求か解読される。まず、読み出し要求の場合の処理
方法を以下に示す。
Next, specific I / O processing in the ADC 2 will be described with reference to FIGS. The command issued from CPU1 is ADC2 via IF Adp15.
The MP1 20 decodes the read request or the write request. First, a processing method for a read request will be described below.

【0039】MP1 20が読み出し要求のコマンドを
認識すると、MP1 20はCPU1から送られてきた
CPU指定ドライブ番号41とCCHHR46(以下両
方を併せてCPU指定アドレスとする)についてアドレ
ステーブル40を参照し、当該データの論理アドレス4
5への変換を行ない、論理アドレス45に登録されてい
るキャッシュメモリ7内に存在するかどうかキャッシュ
フラグ48を調べ、判定する。
When the MP1 20 recognizes the read request command, the MP1 20 refers to the address table 40 for the CPU-designated drive number 41 and the CCHHR 46 sent from the CPU 1 (both will be referred to as a CPU-designated address). Logical address 4 of the data
5 is checked, and the cache flag 48 is checked to determine whether or not it exists in the cache memory 7 registered at the logical address 45.

【0040】キャッシュフラグ48がオンでキャッシュ
メモリ7内に格納されている場合(キャッシュヒット)
は、MP1 20がキャッシュメモリ7から当該データ
を読みだす制御を開始し,キャッシュメモリ7内に無い
場合(キャッシュミス)は当該ドライブ12へその内部
の当該データを読みだす制御を開始する。
When the cache flag 48 is on and stored in the cache memory 7 (cache hit)
Starts the control for the MP1 20 to read the data from the cache memory 7, and starts the control for reading the data in the drive 12 to the drive 12 when the data is not in the cache memory 7 (cache miss).

【0041】キャッシュヒット時、MP1 20はアド
レステーブル40によりCPU1から指定してきたCP
U指定アドレスから論理アドレス45に変換し、論理ア
ドレス45内のキャッシュアドレス47によりキャッシ
ュメモリ7のアドレスに変換し、キャッシュメモリ7へ
当該データを読み出しに行く。具体的にはMP1 20
の指示の元でキャッシュアダプタ回路(C Adp)2
4によりキャッシュメモリ7から当該データは読み出さ
れる。
At the time of a cache hit, the MP 1 20 specifies the CP designated by the CPU 1 from the address table 40.
The U-designated address is converted to the logical address 45, the cache address 47 in the logical address 45 is converted to the address of the cache memory 7, and the data is read out to the cache memory 7. Specifically, MP1 20
Cache adapter circuit (C Adp) 2 under the instruction of
4 reads the data from the cache memory 7.

【0042】C Adp24はキャッシュメモリ7に対
するデータの読みだし、書き込みをMP1 20の指示
で行う回路で、キャッシュメモリ7の状態の監視、各読
みだし、書き込み要求に対し排他制御を行う回路であ
る。C Adp24により読み出されたデータはデータ
制御回路(DCC)22の制御によりチャネルインター
フェース回路(CH IF)21に転送される。CH
IF21ではCPU1におけるチャネルインターフェー
スのプロトコルに変換し、チャネルインターフェースに
対応する速度に速度調整する。具体的にはCPU1,A
DC2間のチャネルインターフェースを光のインターフ
ェースにした場合、光のインターフェースのプロトコル
をADC2内では電気処理でのプロトコルに変換する。
CH IF21におけるプロトコル変換および速度調整
後は、チャネルパスディレクタ5において、チャネルパ
ススイッチ16が外部インターフェースパス4を選択し
IFAdp15によりCPU1へデータ転送を行なう。
The C Adp 24 is a circuit for reading and writing data to and from the cache memory 7 in accordance with the instructions of the MP 120, and is a circuit for monitoring the state of the cache memory 7 and performing exclusive control on each reading and writing request. The data read by the C Adp 24 is transferred to the channel interface circuit (CH IF) 21 under the control of the data control circuit (DCC) 22. CH
The IF 21 converts the data into the protocol of the channel interface in the CPU 1 and adjusts the speed to a speed corresponding to the channel interface. Specifically, CPU1, A
When the channel interface between the DCs 2 is an optical interface, the protocol of the optical interface is converted into a protocol for electrical processing in the ADC 2.
After the protocol conversion and the speed adjustment in the CH IF 21, in the channel path director 5, the channel path switch 16 selects the external interface path 4 and transfers data to the CPU 1 by the IFAdp 15.

【0043】一方、キャッシュミス時はキャッシュヒッ
ト時と同様にアドレステーブル40により、CPU指定
アドレスを論理アドレス45に変換し、論理アドレス4
5から当該SCSIドライブ番号とそのSCSIドライ
ブ内の実際にデータが格納されているSCSI内Add
r44を認識し、そのアドレスに対し、MP1 20は
Drive IF28に対し、当該ドライブ12への読
み出し要求を発行するように指示する。Drive I
F28ではSCSIの読み出し処理手順に従って、読み
出しコマンドをドライブユニットパス9−1または9−
2を介して発行する。Drive IF28から読み出
しコマンドを発行された当該SCSIドライブ12にお
いては指示されたSCSI内Addr44へシーク、回
転待ちのアクセス処理を行なう。当該SCSIドライブ
12におけるアクセス処理が完了した後、当該SCSI
ドライブ12は当該データを読み出しドライブユニット
パス9を介してDrive IF28へ転送する。
On the other hand, at the time of a cache miss, the CPU-specified address is converted into the logical address 45 by the address table 40 in the same manner as at the time of the cache hit, and the logical address 4
5 to the SCSI drive number and the SCSI Add where the data is actually stored in the SCSI drive.
Recognizing r44, the MP1 20 instructs the Drive IF 28 to issue a read request to the drive 12 to that address. Drive I
In F28, the read command is transmitted to the drive unit path 9-1 or 9- according to the SCSI read processing procedure.
Issued via 2 In the SCSI drive 12 to which the read command has been issued from the drive IF 28, the SCSI drive 12 performs seek access to the specified SCSI Addr 44 and waits for rotation. After the access processing in the SCSI drive 12 is completed,
The drive 12 reads the data and transfers the data to the drive IF 28 via the drive unit path 9.

【0044】Drive IF28では転送されてきた
当該データをSCSIドライブ側のキャッシュアダプタ
回路(C Adp)14に転送し、(C Adp)14
ではキャッシュメモリ7にデータを格納する。この時、
C Adp14はキャッシュメモリ7にデータを格納す
ることをMP1 20に報告し、MP1 20はこの報
告を元にアドレステーブル40のCPUが読みだし要求
を発行したCPU指定アドレスに対応した論理アドレス
45のキャッシュフラグ48をオン(1)にし、キャッ
シュアドレス47にキャッシュメモリ7内のデータを格
納したアドレスを登録する。キャッシュメモリ7にデー
タを格納し、アドレステーブル40のキャッシュフラグ
48をオン(1)にし、キャッシュメモリ7内のアドレ
スを更新した後はキャッシュヒット時と同様な手順でC
PU1へ当該データを転送する。
The drive IF 28 transfers the transferred data to the cache adapter circuit (C Adp) 14 on the SCSI drive side, and the (C Adp) 14
Then, data is stored in the cache memory 7. At this time,
The C Adp 14 reports to the MP 1 20 that the data is to be stored in the cache memory 7, and based on the report, the MP 1 20 caches the logical address 45 corresponding to the CPU designated address from which the CPU of the address table 40 has issued the read request. The flag 48 is turned on (1), and the address at which the data in the cache memory 7 is stored is registered in the cache address 47. After the data is stored in the cache memory 7, the cache flag 48 of the address table 40 is turned on (1), and the address in the cache memory 7 is updated.
The data is transferred to PU1.

【0045】一方書き込み時は以下のように処理され
る。書き込み処理はユーザが書き込み先のアドレス(C
PU指定アドレス)を指定し、その位置にユーザはデー
タを書き込んでいると認識する。つまりユーザは固定の
位置にアドレスを指定していると認識している。
On the other hand, at the time of writing, processing is performed as follows. The write process is performed by the user at the write destination address (C
PU specified address), and recognizes that the user is writing data at that position. That is, the user recognizes that the address is specified at the fixed position.

【0046】CPU1から、指定アドレスすなわち、図
3に示すアドレステーブル40においてCPU指定ドラ
イブ番号41がドライブ#1でCCHHR46がADR
8に対して、書き込み命令が発行されたとする。まず、
ADC2のMP1 20はCPU1からドライブ#1の
CCHHR46がADR8に対し書込み要求のコマンド
を受け取った後、コマンドを受け取ったMP1 20が
所属するクラスタ13内の各チャネルパス6において処
理可能かどうかを調べ、可能な場合は処理可能だという
応答をCPU1へ返す。CPU1では処理可能だという
応答を受け取った後にADC2へデータを転送する。こ
の時、ADC2ではMP1 20の指示によりチャネル
パスディレクタ5において、チャネルパススイッチ16
が当該外部インターフェースパス4とIF Adp15
を当該チャネルパス6と接続しCPU1とADC2間の
接続を確立する。
From the CPU 1, the designated address, ie, the CPU designated drive number 41 is drive # 1 and the CCHHR 46 is ADR in the address table 40 shown in FIG.
It is assumed that a write command has been issued to the CPU 8. First,
After the CCHHR 46 of the drive # 1 receives the write request command to the ADR 8 from the CPU 1, the MP 1 20 of the ADC 2 checks whether or not it can be processed in each channel path 6 in the cluster 13 to which the MP 1 20 that received the command belongs. If possible, a response that processing is possible is returned to the CPU 1. The CPU 1 transfers the data to the ADC 2 after receiving the response indicating that the data can be processed. At this time, in the ADC 2, according to the instruction of MP 1 20, the channel path switch 16
Is the external interface path 4 and IF Adp15
To the channel path 6 to establish a connection between the CPU 1 and the ADC 2.

【0047】CPU1とADC2間の接続を確立後CP
U1からのデータ転送を受け付ける。CPU1から転送
されてきた書き込みデータ(以下新データとする)はM
P120の指示により、CH IF21によりプロトコ
ル変換を行ない、外部インターフェースパス4での転送
速度からADC2内での処理速度に速度調整する。CH
IF21におけるプロトコル変換および速度制御の完
了後、データはDCC22によるデータ転送制御を受
け、C Adp24に転送され、C Adp24により
キャッシュメモリ7内に格納される。
After establishing a connection between the CPU 1 and the ADC 2, the CP
The data transfer from U1 is accepted. The write data (hereinafter referred to as new data) transferred from the CPU 1 is M
According to the instruction of P120, the protocol conversion is performed by the CH IF 21, and the transfer speed in the external interface path 4 is adjusted to the processing speed in the ADC 2. CH
After the completion of the protocol conversion and the speed control in the IF 21, the data is subjected to data transfer control by the DCC 22, transferred to the C Adp 24, and stored in the cache memory 7 by the C Adp 24.

【0048】この時、CPU1から送られてきた情報
が、CPU指定アドレスの場合は、データが転送されて
くる前に必ずCPU指定アドレスがCPU1より転送さ
れているため、読みだしと同様にアドレステーブル40
によりアドレス変換を行い、論理アドレス45に変換す
る。また、CPU1から送られてきた情報がデータの場
合は、キャッシュメモリ7に格納したアドレスを上記ア
ドレス変換により変換した論理アドレス45のキャッシ
ュアドレス47に登録する。この時、書き込みデータを
キャッシュメモリ7内に保持するときは、論理アドレス
45のキャッシュフラグ48をオン(1)とし、保持し
ない場合はキャッシュフラグ48をオフ(0)とする。
At this time, if the information sent from the CPU 1 is a CPU-specified address, the CPU-specified address is always transferred from the CPU 1 before data is transferred. 40
To convert the address into a logical address 45. If the information sent from the CPU 1 is data, the address stored in the cache memory 7 is registered in the cache address 47 of the logical address 45 converted by the address conversion. At this time, when the write data is held in the cache memory 7, the cache flag 48 of the logical address 45 is turned on (1), and when not held, the cache flag 48 is turned off (0).

【0049】なお、キャッシュメモリ7内に保持されて
いる新データに対し、さらに書き込み要求がCPU1か
ら発行された場合は、キャッシュメモリ7内に保持され
ている新データを書き替える。
When a new write request is issued from the CPU 1 to the new data stored in the cache memory 7, the new data stored in the cache memory 7 is rewritten.

【0050】キャッシュメモリ7に格納された新データ
は、この新データにより新しくパリティを更新し(以下
更新されたパリティを新パリティとする)、以下のよう
に論理グループ10内のSCSIドライブ12へ新デー
タと新パリティを格納する。
The new data stored in the cache memory 7 updates the parity with the new data (hereinafter, the updated parity is referred to as a new parity) and transfers the new parity to the SCSI drive 12 in the logical group 10 as follows. Stores data and new parity.

【0051】図3に示すようにスペース領域及びパリテ
ィはデータと同じ様に扱われ、論理グループ10内の各
SCSIドライブ12に分散して格納されている。論理
グループ10を構成する各SCSIドライブ12内のデ
ータについては行方向(同一SCSI内Addr44)
にパリティグループが構成され、このパリティグループ
内のデータにおいてパリティが作成される。つまり、パ
リティグループはデータとパリティにより構成され、論
理グループ10はパリティグループとスペース領域で構
成される。
As shown in FIG. 3, the space area and the parity are handled in the same way as the data, and are distributed and stored in the respective SCSI drives 12 in the logical group 10. The data in each SCSI drive 12 constituting the logical group 10 is row-oriented (Addr 44 in the same SCSI).
A parity group is formed, and parity is created for data in the parity group. That is, the parity group is configured by data and parity, and the logical group 10 is configured by the parity group and the space area.

【0052】図3において具体的な例を示す。SCSI
内Addr44がDADR1については、SD#1のS
CSIドライブ12に格納されているData#1(D
#1)と、SD#2のSCSIドライブ12に格納され
ているData#2(D#2)と、SD#3のSCSI
ドライブ12に格納されているData#3(D#3)
によりパリティが作成される。このパリティがSD#6
のSCSIドライブ12に格納され、これらがパリティ
グループを構成する。また、論理グループ10は、SD
#4のSCSIドライブ12に確保されているスペース
領域(S)と、SD#5のSCSIドライブ12に確保
されているスペース領域(S)と、上記パリティグルー
プにより構成される。
FIG. 3 shows a specific example. SCSI
Of which Addr44 is DADR1, S of SD # 1
Data # 1 (D stored in the CSI drive 12)
# 1), Data # 2 (D # 2) stored in the SCSI drive 12 of SD # 2, and SCSI of SD # 3.
Data # 3 (D # 3) stored in drive 12
Creates a parity. This parity is SD # 6
, And these constitute a parity group. In addition, the logical group 10 has the SD
The space area (S) secured in the SCSI drive 12 of # 4, the space area (S) secured in the SCSI drive 12 of SD # 5, and the parity group.

【0053】MP1 20はアドレステーブル40を参
照し、データ、スペース領域、パリティが格納されてい
るSCSIドライブ12を認識する。具体的には、アド
レステーブル40においてCPU指定アドレスが指定し
たCPU指定ドライブ番号41に対応する領域におい
て、CPU指定アドレスで指定したCCHHR46と一
致しているSCSIドライブアドレス42に登録されて
いる論理アドレス45をMP1 20は探す。MP1
20はCPU指定アドレスから論理アドレス45への変
換後、論理アドレス45からその論理アドレス45が格
納されているSCSIドライブ番号43と、そのSCS
Iドライブ12内の物理的なアドレスであるSCSI内
Addr44に変換する。
The MP1 20 refers to the address table 40 and recognizes the SCSI drive 12 in which data, space area, and parity are stored. Specifically, in the area corresponding to the CPU-designated drive number 41 specified by the CPU-specified address in the address table 40, the logical address 45 registered in the SCSI drive address 42 that matches the CCHHR 46 specified by the CPU-specified address. MP1 20 looks for MP1
Reference numeral 20 denotes a SCSI drive number 43 storing the logical address 45 from the logical address 45 after the conversion from the CPU designated address to the logical address 45, and the SCS
It is converted to SCSI Addr 44 which is a physical address in the I drive 12.

【0054】パリティは、論理グループ10を構成する
各SCSIドライブ12において、各SCSI内Add
r44が同一のデータに対し作成され、そのパリティも
データと同一のSCSI内Addr44に格納される。
このため、アドレステーブル40のパリティドライブ番
号50とスペースドライブ番号51において、パリティ
およびスペース領域はそれぞれが格納されているSCS
Iドライブ番号43のみが登録されている。そこで、M
P1 20ではアドレステーブル40によりパリティド
ライブ番号50とスペースドライブ番号51を決定する
ことが可能となる。つまり、パリティドライブ番号50
とスペースドライブ番号51を決定することにより、パ
リティおよびスペース領域はデータと同一のSCSI内
Addr44に格納されていることから、それらのアド
レスを決定することになる。このように、データ、スペ
ース領域、パリティが格納されているSCSIドライブ
12を認識した後は、Drive IF28に対し、各
々の当該SCSIドライブ12に対し書き込み処理を行
なうように指示する。
The parity is stored in each SCSI drive 12 constituting the logical group 10 in each SCSI Add.
r44 is created for the same data, and its parity is also stored in the same Addr 44 in SCSI as the data.
For this reason, in the parity drive number 50 and the space drive number 51 of the address table 40, the parity and the space area indicate the
Only the I drive number 43 is registered. Then, M
At P 120, the parity drive number 50 and the space drive number 51 can be determined from the address table 40. That is, parity drive number 50
By determining the space drive number 51 and the parity, the parity and the space area are stored in the same Addr 44 in the SCSI as the data, so that their addresses are determined. After recognizing the SCSI drive 12 in which the data, the space area, and the parity are stored as described above, the drive IF 28 is instructed to perform the writing process on each of the SCSI drives 12.

【0055】本発明における書き込み処理とは、論理グ
ループ10において新データをキャッシュメモリ7から
実際にSCSIドライブ12に書き込む処理と、新デー
タの書き込みによりパリティを新たに作り直さなければ
ならないため、この新パリティを作成するための書き込
み前のデータ(以下旧データ)と書き込み前のパリティ
(以下旧パリティとする)を読み出し、新パリティを作
成する処理と、書き込み後の新パリティを実際にSCS
Iドライブ12に書き込む一連の処理をいう。この新デ
ータをキャッシュメモリ7に格納した後の一連の書き込
み処理のフローチャートを図5に示す。
The write processing according to the present invention includes the processing of actually writing new data from the cache memory 7 to the SCSI drive 12 in the logical group 10 and the need to recreate parity by writing new data. A process of reading data before writing (hereinafter, old data) and a parity before writing (hereinafter, referred to as old parity) for creating a new parity and creating a new parity after writing.
This refers to a series of processing for writing to the I drive 12. FIG. 5 shows a flowchart of a series of write processing after storing the new data in the cache memory 7.

【0056】図4に示すようにCPU1からSD#1の
SCSIドライブ12のData#1(D#1)の論理
アドレスに対し、ND#1のデータの書き込み要求が発
行された場合、先に示したように、CPU1からキャッ
シュメモリ7に新データは一旦格納される。新データの
キャッシュメモリ7への格納後、書き込み処理は次の手
順で行っていく。キャッシュメモリ7に新データ(ND
#1)が格納された後、MP1 20は書き込み処理に
入り、アドレステーブル40によりSD#1のSCSI
ドライブ12が所属する論理グループ10で、Data
#1(D#1)のSCSI内Addr44であるDAD
R1に対し、スペース領域が確保されているSD#4,
5のSCSIドライブ12に対し、使用権の獲得を行な
う。
As shown in FIG. 4, when the CPU 1 issues a request to write ND # 1 data to the logical address of Data # 1 (D # 1) of the SCSI drive 12 of SD # 1, As described above, new data is temporarily stored in the cache memory 7 from the CPU 1. After storing the new data in the cache memory 7, the writing process is performed in the following procedure. New data (ND
After the # 1) is stored, the MP1 20 enters a write process, and the SCSI of the SD # 1 is determined by the address table 40.
In the logical group 10 to which the drive 12 belongs, Data
DAD which is Addr44 in SCSI of # 1 (D # 1)
SD # 4 for which a space area is reserved for R1
5, the right to use is acquired for the SCSI drive 12.

【0057】SD#4、5のSCSIドライブ12の使
用権を獲得した後は図5のフローチャートに示すように
書き込み処理500を行なっていく。まず、MP1 2
0はアドレステーブル40のスペースドライブ番号51
のSDフラグ53をチェックし、SDフラグ53がオフ
(0)の場合、スペース領域として使用でき、オン
(1)の場合は使用できないと判断する(502)。M
P1 20は、このSDフラグ53によりSD#4,5
のSCSIドライブ12にスペース領域が確保されてい
るかを判断する。そして、SDフラグ53がオフ(0)
の場合、キャッシュメモリ7に格納されているND#1
をこのSD#4,5に二重化して書き込み(504)、
MP1 20はCPU1へ書き込み完了の報告を行う
(508)。
After obtaining the right to use the SCSI drives 12 of SD # 4 and SD # 5, the write processing 500 is performed as shown in the flowchart of FIG. First, MP12
0 is the space drive number 51 in the address table 40
The SD flag 53 is determined to be usable as a space area when the SD flag 53 is off (0), and cannot be used when it is on (1) (502). M
P1 20 determines that SD # 4, 5
It is determined whether the SCSI drive 12 has a space area. Then, the SD flag 53 is turned off (0).
, ND # 1 stored in the cache memory 7
Is written to SD # 4, 5 in duplicate (504),
MP1 20 reports the completion of writing to CPU1 (508).

【0058】一方、ステップ502のチェックにより、
SDフラグ53がオン(1)の場合は、図13に示すよ
うに、書き込む新データ(ND#1)をキャッシュメモ
リ7に書き込んだ後、MP1 20は優先的に前の書き
込み処理におけるパリティの作成を指示し、このパリテ
ィを当該SCSIドライブ12に書き込む(131
0)。前の書き込み処理におけるパリティの作成が完了
し、当該SCSIドライブへの書き込みが完了するとM
P1 20は、アドレステーブル40においてスペース
ドライブ番号51にSDフラグ53をオフ(0)とし
(1308)、キャッシュメモリ7に格納されているN
D#1を二重化して書き込み(1316)、MP1 2
0はCPU1へ書き込み完了の報告を行う(132
0)。
On the other hand, by checking at step 502,
When the SD flag 53 is ON (1), as shown in FIG. 13, after writing new data (ND # 1) to be written to the cache memory 7, the MP1 20 preferentially creates a parity in the previous write processing. Is written to the SCSI drive 12 (131).
0). When parity creation in the previous write process is completed and writing to the SCSI drive is completed, M
P1 20 turns off (0) the SD flag 53 for the space drive number 51 in the address table 40 (1308), and stores the N stored in the cache memory 7.
D # 1 is duplicated and written (1316), MP1 2
0 reports write completion to the CPU 1 (132
0).

【0059】そこで、次にSCSIドライブ12への新
データ(ND#1)の書き込み方法を示す。MP1 2
0はアドレステーブル40のSDフラグ53がオフ
(0)になっているのを確認後、Drive IF28
に書き込むデータである新データ(ND#1)をスペー
ス領域が確保されているSD#4とSD#5のSCSI
ドライブ12に書き込むよう指示する。Drive I
F28ではSCSIの書込み手順にしたがってドライブ
ユニットパス9−1から4の中の2本を介してSD#4
とSD#5のSCSIドライブ12に書込みコマンドを
発行する。
Next, a method of writing new data (ND # 1) to the SCSI drive 12 will be described. MP1 2
0 indicates that the SD flag 53 of the address table 40 is off (0), and then the Drive IF 28
New data (ND # 1) which is the data to be written to the SCSI of SD # 4 and SD # 5 in which a space area is secured
Instructs the drive 12 to write. Drive I
In F28, according to the SCSI writing procedure, SD # 4 is transmitted via two of the drive unit paths 9-1 to 4-1.
Then, a write command is issued to the SCSI drive 12 of SD # 5.

【0060】Drive IF28から書込みコマンド
を発行された当該SCSIドライブ12では、Driv
e IF28から送られてきたCPU1が書き込み先の
アドレスとして指定したCPU指定アドレスを論理アド
レス45に変換し、論理アドレス45であるData#
1に対応するSCSI内Addr44のDADR1へシ
ーク、回転待ちのアクセス処理を行なう。SD#4、5
のSCSIドライブ12においてアクセス処理が完了し
書込みが可能になり次第、C Adp14はキャッシュ
メモリ7から書き込む新データ(ND#1)を読み出し
てDriveIF28へ転送し、Drive IF28
では転送されてきた新データ(ND#1)をドライブユ
ニットパス9−1から4の中の2本を介してSD#4,
5のSCSIドライブ12へ転送する。新データ(ND
#1)のSD#4,5のSCSIドライブ12への書込
みが完了すると、SD#4,5のSCSIドライブ12
はDrive IF28に完了報告を行ない、Driv
e IF28がこの完了報告を受け取ったことを、MP
1 20に報告する。
In the SCSI drive 12 to which the write command has been issued from the Drive IF 28,
e The CPU 1 sent from the IF 28 converts the CPU-specified address specified as the write destination address into the logical address 45, and converts the logical address 45, Data #
The access to the DRDR1 of the Addr 44 in the SCSI corresponding to No. 1 is performed for the seek and rotation wait. SD # 4,5
As soon as the access processing is completed in the SCSI drive 12 and writing becomes possible, the C Adp 14 reads the new data (ND # 1) to be written from the cache memory 7 and transfers it to the Drive IF 28, whereupon the drive IF 28
Then, the transferred new data (ND # 1) is transferred to SD # 4 and SD # 4 via two of the drive unit paths 9-1 to 4-1.
5 to the SCSI drive 12. New data (ND
When writing to the SCSI drives 12 of SD # 4 and SD # 5 in # 1) is completed, the SCSI drives 12 of SD # 4 and SD # 5 are completed.
Reports completion to Drive IF 28, and
e IF 28 receives this completion report,
Report to 120.

【0061】この時、アドレステーブル40において、
書き込み前の旧データの論理アドレス45(Data#
1,D#1)の無効フラグをオン(1)とし、書き込み
前の論理アドレス45(Data#1,D#1)内のC
CHHR46のアドレスを、新データ(ND#1)を二
重化して書き込んだスペース領域の2つの論理アドレス
45のCCHHR46に登録し、無効フラグをオフ
(0)とし、ドライブフラグ52をオン(1)とする。
また、キャッシュメモリ7内に書き込む新データ(ND
#1)を保持する場合は、書き込み後の2つの論理アド
レス45内のキャッシュアドレス47に、キャッシュメ
モリ7内の新データ(ND#1)が格納されているアド
レスを登録し、キャッシュフラグ48をオン(1)とす
る。この新データ(ND#1)をキャッシュメモリ7上
に残さない場合、MP1 20はこの報告を元にアドレ
ステーブル40のキャッシュフラグ48をオフ(0)に
する。さらに、書き込みを行った論理グループ10内の
SCSI内Addr44に対し、スペースドライブ番号
51のSDフラグをオン(1)とする。
At this time, in the address table 40,
Logical address 45 (Data #) of old data before writing
, D # 1) is turned on (1), and the C in the logical address 45 (Data # 1, D # 1) before writing is set.
The address of the CHHR 46 is registered in the CCHHR 46 of the two logical addresses 45 in the space area where the new data (ND # 1) is duplicated and written, the invalid flag is turned off (0), and the drive flag 52 is turned on (1). I do.
Further, new data (ND
When holding the # 1), the address where the new data (ND # 1) in the cache memory 7 is stored is registered in the cache address 47 in the two logical addresses 45 after writing, and the cache flag 48 is set. Turn on (1). If the new data (ND # 1) is not left in the cache memory 7, the MP1 20 turns off (0) the cache flag 48 of the address table 40 based on this report. Further, the SD flag of the space drive number 51 is turned on (1) for the Addr 44 in SCSI in the logical group 10 in which the writing has been performed.

【0062】上記のようにアドレステーブル40の更新
が完了し、MP1 20はSD#4とSD#5の両方の
SCSIドライブ12からの完了報告を受け取った後、
CPU1に対し擬似的に書き込み処理の終了報告を行
う。SD#4,5のSCSIドライブ12に対する新デ
ータ(ND#1)の格納は完了しても、キャッシュメモ
リ7内には新データ(ND#1)が存在しており、パリ
ティの更新はキャッシュメモリ7内に格納されている新
データ(ND#1)で行なう。
After the updating of the address table 40 is completed as described above, the MP 120 receives the completion reports from the SCSI drives 12 of both SD # 4 and SD # 5.
A write process completion report is sent to the CPU 1 in a pseudo manner. Even when the storage of the new data (ND # 1) in the SCSI drives 12 of SD # 4 and SD # 5 is completed, the new data (ND # 1) exists in the cache memory 7 and the parity is updated in the cache memory 12. 7 is performed with the new data (ND # 1) stored in the memory.

【0063】以上のようにMP1 20がCPU1に対
し擬似的に終了報告を行った後は、CPU1は書き込み
処理を終了したと認識しているが、MP1 20は新し
いパリティを作成して、当該SCSIドライブ12書き
込んでいないため、まだ書き込み処理は終了していな
い。そこで、MP1 20がCPU1に対し終了報告を
行った後に、MP1 20が独自に新しいパリティを作
成し、当該SCSIドライブ12に書き込む。この方法
について以下に説明する。
After the MP1 20 simulates the end report to the CPU 1 as described above, the CPU 1 recognizes that the write processing has been completed. However, the MP1 20 creates a new parity and generates the new SCSI. Since the drive 12 has not been written, the writing process has not been completed yet. Then, after the MP1 20 reports the completion to the CPU 1, the MP1 20 independently creates a new parity and writes it into the SCSI drive 12. This method will be described below.

【0064】MP1 20はCPU1に対し書き込み処
理の終了報告を行った後、図5に示すようにCPU1か
らの読みだし、書き込み要求の状況(IO状況)を監視
する(510)。具体的には、MP1 20が当該論理
グループ10に対するCPU1からの読みだし、書き込
み要求の単位時間当りの回数を数える。当該論理グルー
プ10に対するこの回数が予めユーザまたはシステム管
理者により設定された数より少なく、パリティの作成お
よびこの作成したパリティを書き込むSCSIドライブ
12が所属する論理グループ10に対し、読みだし、書
き込み要求がCPU1より発行されていない場合、パリ
ティの作成およびパリティの当該SCSIドライブ12
への書き込み処理を開始する。
After notifying the CPU 1 of the end of the write process, the MP 120 monitors the status of read and write requests (IO status) from the CPU 1 as shown in FIG. 5 (510). Specifically, the MP 1 20 counts the number of read / write requests per unit time from the CPU 1 for the logical group 10. This number of times for the logical group 10 is smaller than the number set in advance by the user or the system administrator, and a read and write request is issued to the logical group 10 to which the SCSI drive 12 to which parity is created and the created parity is written belongs. If not issued by the CPU 1, the parity is created and the parity of the corresponding SCSI drive 12
Start the writing process to the.

【0065】新しくパリティを作成する場合、CPU1
から書き込み先に指定されたアドレスに書き込まれてい
るデータ(旧データ)と、更新するパリティ(旧パリテ
ィ)を読みだし、新しく作成したパリティ(新パリテ
ィ)をSCSIドライブ12に書き込む。この時、旧デ
ータと旧パリティを読みだすSCSIドライブ12と新
パリティを書き込む当該SCSIドライブ12に対し、
MP1 20はCPU1からの読みだし、書き込み要求
と同様な擬似的な読みだし、書き込み要求を発行する。
この、擬似的な読みだし、書き込み要求が発行されてい
るSCSIドライブ12に対しCPU1から読みだしま
たは書き込み要求が発行された場合は、MP1 20は
CPU1からの読みだし、書き込み要求を受付、処理の
待ち行列とする。
When creating a new parity, the CPU 1
, The data (old data) written to the address specified as the write destination and the parity to be updated (old parity) are read, and the newly created parity (new parity) is written to the SCSI drive 12. At this time, the SCSI drive 12 for reading the old data and the old parity and the SCSI drive 12 for writing the new parity are
The MP1 20 issues a pseudo read and write request similar to the read and write request from the CPU 1.
When a read or write request is issued from the CPU 1 to the SCSI drive 12 to which the pseudo read or write request has been issued, the MP 120 reads out from the CPU 1, accepts the write request, and executes the processing. Make it a queue.

【0066】次に新パリティの作成および当該SCSI
ドライブ12への作成したパリティの書き込み方法を具
体的に示す。MP1 20はSD#1のSCSIドライ
ブ12に対して旧データの読み出しと、SD#6のSC
SIドライブ#12に対して旧パリティの読み出し要求
を発行するようにDrive IF28に指示する(5
14)。
Next, creation of a new parity and the corresponding SCSI
A method of writing the created parity to the drive 12 will be specifically described. The MP1 20 reads the old data from the SCSI drive 12 of the SD # 1 and reads the old data from the SCSI drive 12 of the SD # 6.
The drive IF 28 is instructed to issue an old parity read request to the SI drive # 12 (5
14).

【0067】Drive IF28から読み出しコマン
ドを発行された当該SCSIドライブ12ではDriv
e IF28から送られてきたSCSI内Addr44
へシーク、回転待ちのアクセス処理を行なう。キャッシ
ュメモリ7内には新データ(ND#1)が存在してお
り、パリティの更新はキャッシュメモリ7内に格納され
ている新データ(ND#1)で行なう。
The SCSI drive 12 to which the read command has been issued from the Drive IF 28
e Addr44 in SCSI sent from IF28
Seek and rotation waiting access processing. The new data (ND # 1) exists in the cache memory 7, and the parity is updated with the new data (ND # 1) stored in the cache memory 7.

【0068】もし、キャッシュメモリ7に新データ(N
D#1)が存在していない場合はスペース領域に二重化
して書き込まれているデータをキャッシュメモリ7に読
みだす。
If the new data (N
If D # 1) does not exist, the data written in duplicate in the space area is read out to the cache memory 7.

【0069】SD#1,6のSCSIドライブ12にお
いてシーク、回転待ちのアクセス処理が完了し旧データ
(D#1)および旧パリティ(P#1)の読み出しが可
能になり次第、旧データ(D#1)および旧パリティ
(P#1)を読み出し、キャッシュメモリ7に格納す
る。SD#1のSCSIドライブ12から旧データ(D
#1)を、SD#6のSCSIドライブ12から旧パリ
ティ(P#1)を読み出し、それぞれをキャッシュメモ
リ7に格納した後、MP1 20はキャッシュメモリ7
内に格納されている書き込む新データ(ND#1)とで
排他的論理和により、更新後の新パリティ(NP#1)
を作成するようにPG36に指示を出し、PG36にお
いて新パリティ(NP#1)を作成しキャッシュメモリ
7に格納する(516)。
As soon as the seek processing and the rotation waiting access processing are completed in the SCSI drives 12 of SD # 1 and SD6 and the old data (D # 1) and the old parity (P # 1) can be read out, the old data (D # 1) and the old parity (P # 1) are read and stored in the cache memory 7. The old data (D
# 1), the old parity (P # 1) is read from the SCSI drive 12 of SD # 6, and each of them is stored in the cache memory 7.
The new parity (NP # 1) after the update is obtained by performing an exclusive OR operation with the new data (ND # 1) to be written stored in the
Is issued to the PG 36 to create a new parity (NP # 1) in the PG 36 and store it in the cache memory 7 (516).

【0070】新パリティ(NP#1)をキャッシュメモ
リ7に格納した後、MP1 20では新パリティ(NP
#1)を格納する論理アドレス45のキャッシュアドレ
ス47にキャッシュメモリ7内の新パリティ(NP#
1)を格納したアドレスを登録し、キャッシュフラグ4
8をオン(1)とし、無効フラグ49とドライブフラグ
52をオフ(0)とする(518)。新パリティ(NP
#1)の作成が完了したことを認識し、SD#6のSC
SIドライブ12にIO要求が発行されていない時に、
更新後の新パリティ(NP#1)を書き込むようにDr
ive IF28に対し指示する。
After the new parity (NP # 1) is stored in the cache memory 7, the new parity (NP # 1) is
The new parity (NP #) in the cache memory 7 is stored in the cache address 47 of the logical address 45 for storing # 1).
Register the address storing 1), and set the cache flag 4
8 is turned on (1), and the invalid flag 49 and the drive flag 52 are turned off (0) (518). New parity (NP
Recognizing that the creation of # 1) has been completed, the SD # 6 SC
When no IO request has been issued to the SI drive 12,
Dr so that the new parity (NP # 1) after the update is written
instructs the IF IF28.

【0071】SD#6のSCSIドライブ12への更新
後の新パリティ(NP#1)の書込み方法(520)
は、先に述べた書き込む新データ(ND#1)をSD#
4,5のSCSIドライブ12に書き込んだ方法と同じ
である。新パリティ(NP#1)の作成が完了したらM
P1 20はDrive IF28にSD#6のSCS
Iドライブ12に対し、書込みコマンドを発行するよう
に指示し、当該SCSIドライブ12では指示SCSI
内Addr44へシーク、回転待ちのアクセス処理を行
う。新パリティ(NP#1)は既に作成されキャッシュ
メモリ7に格納されており、SD#6のSCSIドライ
ブ12におけるアクセス処理が完了した場合、C Ad
p14はキャッシュメモリ7から新パリティ(NP#
1)を読み出してDrive IF28へ転送する。D
rive IF28では転送されてきた新パリティ(N
P#1)をドライブユニットパス9−1から4の中の1
本を介してSD#6のSCSIドライブ12へ転送する
(522)。
Writing method of new parity (NP # 1) after update to SCSI drive 12 of SD # 6 (520)
Converts the new data (ND # 1) to be written into SD #
This is the same as the method written in the SCSI drive 12 of 4,5. When the creation of the new parity (NP # 1) is completed,
P1 20 is SD # 6 SCS to Drive IF28.
The I drive 12 is instructed to issue a write command.
An access process for seeking and rotation waiting is performed to the internal Addr 44. The new parity (NP # 1) is already created and stored in the cache memory 7, and when the access processing in the SCSI drive 12 of SD # 6 is completed, C Ad
p14 is the new parity (NP #) from the cache memory 7.
1) is read and transferred to the Drive IF 28. D
The live IF 28 transfers the new parity (N
P # 1) is set to one of the drive unit paths 9-1 to 4
The data is transferred to the SCSI drive 12 of SD # 6 via the book (522).

【0072】新パリティ(NP#1)のSD#6のSC
SIドライブ12への書込みが完了すると、SD#6の
SCSIドライブ12はDrive IF28に完了報
告を行ない、Drive IF28がこの完了報告を受
け取ったことを、MP1 20に報告する。この時、M
P1 20は、この新データ(ND#1)をキャッシュ
メモリ7上に残さない場合は、この報告を元にアドレス
テーブル40のキャッシュフラグ48をオフ(0)に
し、キャッシュメモリ7上に残す場合はオン(1)とす
る。さらに、アドレステーブル40において、書き込み
後の新パリティ(NP#1)の論理アドレス45の無効
フラグをオフ(0)とし、ドライブフラグ52をオン
(1)とする(524)。
SC of SD # 6 of new parity (NP # 1)
When the writing to the SI drive 12 is completed, the SCSI drive 12 of SD # 6 sends a completion report to the Drive IF 28, and reports to the MP 120 that the Drive IF 28 has received this completion report. At this time, M
If the new data (ND # 1) is not to be left in the cache memory 7, the P1 20 turns off (0) the cache flag 48 of the address table 40 based on this report. Turn on (1). Further, in the address table 40, the invalid flag of the logical address 45 of the new parity (NP # 1) after writing is turned off (0), and the drive flag 52 is turned on (1) (524).

【0073】このような、新しく作成した新パリティ
(NP#1)を当該SCSIドライブ12に書き込んだ
後は、旧データ(D#1)が格納されていたSD#1の
SCSIドライブ12の旧データ(D#1)と二重化さ
れている新データ(ND#1)が格納されているSD#
4,5のSCSIドライブ12の中でSCSIドライブ
番号の小さいSD#4のSCSIドライブ12に格納さ
れている新データ(ND#1)をスペース領域として解
放し、次の書き込み処理用にスペース領域として登録す
る。この登録の方法は、MP1 20がアドレステーブ
ル40においてSD#1とSD#4のSCSI内Add
r44がD ADR1の旧データ(D#1)と、二重化
されていた新データ(ND#1)の一方が格納されてい
る論理アドレス45において、無効フラグをオン(1)
とし、さらにスペースドライブ番号51にSD#1とS
D#4を登録し、SDフラグをオフ(0)にする(52
6)。
After the newly created new parity (NP # 1) is written to the SCSI drive 12, the old data of the SCSI drive 12 of SD # 1 in which the old data (D # 1) is stored is stored. (D # 1) and SD # in which new data (ND # 1) duplicated is stored.
New data (ND # 1) stored in the SCSI drive 12 of SD # 4 having the smaller SCSI drive number among the SCSI drives 12 of 4,5 is released as a space area, and is used as a space area for the next write processing. register. This registration method is performed in such a manner that the MP1 20 uses the address table 40 in the SCSI Add of SD # 1 and SD # 4.
r44 turns on the invalid flag at the logical address 45 in which one of the old data of D ADR1 (D # 1) and the duplicated new data (ND # 1) is stored (1).
SD # 1 and S are added to the space drive number 51.
D # 4 is registered, and the SD flag is turned off (0) (52
6).

【0074】以上のように書き込み処理時に書き込む新
データ(ND#1)を一旦二重化して論理グループ10
内に格納しておき、後で比較的CPU1からの読みだ
し、書き込み要求が少ないときに、新パリティ(NP#
1)を作成し、SCSIドライブ12に格納すること
で、書き込み処理時の応答時間が短縮され、従来のよう
に新パリティ(NP#1)の作成により他の読みだし、
書き込み処理がまたされることが減少する。
As described above, the new data (ND # 1) to be written at the time of the write processing is temporarily duplicated to
When the number of read and write requests from the CPU 1 is relatively small, the new parity (NP #
1) is created and stored in the SCSI drive 12, thereby shortening the response time at the time of the writing process, and creating another parity (NP # 1) as in the related art to read other data.
The writing process is reduced again.

【0075】もし、新パリティ(NP#1)を当該SC
SIドライブ12への書き込み前に論理グループ10内
のSCSIドライブ12に障害が発生した場合は図14
に示すように回復処理を行う。図4(a)に示すように
SD#6のSCSIドライブ12に対し新パリティ(N
P#1)を書き込む前に(1402)、SD#1,2,
3の内のどれか1台のSCSIドライブ12に障害が発
生した場合(1406)、障害が発生していないSCS
Iドライブ12からのデータと、旧パリティから障害が
発生したSCSIドライブ12内のデータは回復するこ
とが可能となる(1410)。例えばSD#1のSCS
Iドライブ12に障害が発生した場合、SD#2,3の
D#2,D#3とSD#6のSCSIドライブ1からの
旧パリティ(P#1)からSD#1のSCSIドライブ
12内のデータであるD#1を回復することが可能とな
る。また、新データ(ND#1)が二重化して格納され
ているSD#4,5のどちらか一方に障害が発生した場
合は、二重化データの一方のデータにより回復すること
が可能となる(1412)。
If the new parity (NP # 1) is
FIG. 14 shows a case where a failure occurs in the SCSI drive 12 in the logical group 10 before writing to the SI drive 12.
The recovery process is performed as shown in FIG. As shown in FIG. 4A, the new parity (N
Before writing P # 1) (1402), SD # 1, SD # 2,
In the case where a failure occurs in one of the SCSI drives 12 among the SCSI drives 3 (1406), an SCS having no failure has occurred.
The data from the I drive 12 and the data in the SCSI drive 12 in which a failure has occurred from the old parity can be recovered (1410). For example, SCS of SD # 1
When a failure occurs in the I drive 12, the old parity (P # 1) from the D # 2, D # 3 of the SD # 2, 3 and the SCSI drive 1 of the SD # 6 is replaced with the old parity (P # 1) in the SCSI drive 12 of the SD # 1. Data D # 1 can be recovered. Further, when a failure occurs in one of SD # 4 and SD # 5 in which the new data (ND # 1) is stored in duplicate, it is possible to recover by one of the duplicated data (1412). ).

【0076】図4(b)に示すようにSD#6のSCS
Iドライブ12に対し新パリティ(NP#1)を書き込
んだ後はSD#2,3,5のSCSIドライブ12内の
データ(D#2,3,ND#1)に対し新パリティ(N
P#1)が作成されてSD#6のSCSIドライブ12
に格納されており、SD#2,3,5のSCSIドライ
ブ12の中の1台のSCSIドライブ12に障害が発生
した場合、残りの正常なSCSIドライブ12内のデー
タとSD#6のSCSIドライブ12内のパリティによ
り、障害が発生したSCSIドライブ12内のデータは
回復される。
As shown in FIG. 4B, the SCS of SD # 6
After writing the new parity (NP # 1) to the I drive 12, the new parity (N #) for the data (D # 2,3, ND # 1) in the SCSI drive 12 of SD # 2,3,5.
P # 1) is created and the SCSI drive 12 of SD # 6 is created.
When one SCSI drive 12 among the SCSI drives 12 of SD # 2, 3, and 5 fails, the data in the remaining normal SCSI drive 12 and the SCSI drive of SD # 6 are stored. The data in the failed SCSI drive 12 is recovered by the parity in the HDD 12.

【0077】例えばSD#2のSCSIドライブ12に
障害が発生した場合、SD#2のSCSIドライブ12
内のデータ(D#2)は、SD#3のSCSIドライブ
12内のデータ(D#3)とSD#4のSCSIドライ
ブ12内のデータ(ND#1)と、SD#6のSCSI
ドライブ12内のパリティ(NP#1)から障害が発生
したSD#2のSCSIドライブ12内のデータ(D#
2)は回復される。
For example, when a failure occurs in the SCSI drive 12 of SD # 2, the SCSI drive 12 of SD # 2
(D # 2) in the SCSI drive 12 of SD # 3, data (ND # 1) in the SCSI drive 12 of SD # 4, and the SCSI (SD # 6) of SD # 6.
From the parity (NP # 1) in the drive 12, the data (D #
2) is recovered.

【0078】本発明のように書き込み処理においてスペ
ース領域に書き込みデータ(新データ)をとりあえず二
重化して格納し、この段階でCPU1に対し書き込み処
理の終了報告を行うことにより、CPU1にとってはこ
の二重化してSCSIドライブ12に書き込む時間が書
き込み処理時間になる。従来のアレイディスクでは図1
2に示すように書き込み時に平均1.5回転の回転待ち
時間が必要としたのが、もし、論理グループ10を構成
するSCSIドライブ12の回転を同期させた場合は、
回転待ちは平均0.5回転となる。また、新パリティを
SCSIドライブ12に書き込む前に論理グループ10
を構成するSCSIドライブ12に障害が発生しても、
先に述べたように旧パリティと二重化された新データに
より従来のアレイディスクと同様に、障害回復を行うこ
とが可能となる。
As in the present invention, the write data (new data) is temporarily duplicated and stored in the space area in the write processing, and the completion of the write processing is reported to the CPU 1 at this stage. Thus, the time for writing to the SCSI drive 12 becomes the write processing time. Figure 1 shows a conventional array disk.
As shown in FIG. 2, the writing required a rotation waiting time of 1.5 rotations on average, but if the rotations of the SCSI drives 12 configuring the logical group 10 were synchronized,
The rotation wait is 0.5 rotations on average. Before writing the new parity to the SCSI drive 12, the logical group 10
Even if a failure occurs in the SCSI drive 12
As described above, the old parity and the duplicated new data enable recovery from a failure in the same manner as the conventional array disk.

【0079】本実施例ではパリティおよびパリティの作
成に関与したデータとスペース領域は、論理グループ1
0を構成する各SCSIドライブ12において、各SC
SI内Addr44を同一とした。しかし、アドレステ
ーブル40の各論理アドレス45とパリティドライブ番
号50、スペースドライブ番号51において、論理グル
ープ10のアドレスを付加することにより、論理グルー
プ10を構成する各SCSIドライブ12においてSC
SI内Addr44を任意とすることが可能となる。
In this embodiment, the parity and the data and space area involved in the creation of the parity are logical group 1
0 in each SCSI drive 12 constituting each SC drive.
Addr44 in SI was the same. However, by adding the address of the logical group 10 to each logical address 45, the parity drive number 50, and the space drive number 51 of the address table 40, the SCSI drive 12 constituting the logical group 10
Addr 44 in SI can be made arbitrary.

【0080】本実施例では書き込み時の回転待ち時間を
減少させる目的で、書き込みデータを一旦二重化してS
CSIドライブ12に書き込み、後の適当なタイミング
でパリティを更新し、パリティの更新後は二重化した書
き込みデータの一方を開放する方法について説明した。
本発明は、上記のような性能向上の観点とは別に、以下
に示すような応用例も考えられる。
In this embodiment, in order to reduce the rotation waiting time at the time of writing, write data is temporarily duplicated to
The method of writing data to the CSI drive 12, updating the parity at an appropriate timing later, and releasing one of the duplicated write data after updating the parity has been described.
The present invention can be applied to the following application examples separately from the viewpoint of the performance improvement as described above.

【0081】パリティによる信頼性と、二重化による信
頼性では、二重化による信頼性の方が信頼性向上のため
に必要とする容量は大きいが、信頼性は高くなる。この
特徴を活かし、本発明の応用として、最新に書き込まれ
たデータまたは、頻繁に書き込み要求が発行されるデー
タについては、二重化されているため、高信頼とし、あ
まり書き込み要求が発行されないデータについては、二
重化ほど高信頼ではないが、信頼性向上のために必要と
する容量が二重化と比較して少なくてすむ、パリティに
より信頼性を確保する。つまり、あまり書き込み要求が
発行されないデータに対しては、信頼性は二重化ほど高
くないが、パリティを付けるだけですむ、パリティで信
頼性を確保し、最新に書き込まれたデータまたは、頻繁
に書き込み要求が発行されるデータについては、パリテ
ィと比較し信頼性向上のために容量を多く必要とする
が、高信頼である二重化で高信頼とする、二段階の信頼
性のレベルを設定することも可能である。
As for the reliability based on parity and the reliability based on duplexing, the reliability based on duplexing requires a larger capacity for improving the reliability, but the reliability is higher. Taking advantage of this feature, as an application of the present invention, the most recently written data or the data to which a write request is frequently issued are duplicated, so that the reliability is high, and the data to which a write request is not frequently issued is provided. Although the reliability is not as high as that of the duplexing, the capacity required for improving the reliability is smaller than that of the duplexing, and the reliability is ensured by the parity. In other words, the reliability of data for which few write requests are issued is not as high as that of duplexing, but it is only necessary to attach parity, the reliability is secured by parity, and the most recently written data or frequent write requests For data issued, more capacity is required to improve reliability compared to parity, but it is possible to set two levels of reliability, which is highly reliable with high reliability and redundancy It is.

【0082】〈実施例2〉本発明の他の実施例を図6を
中心にして説明する。本実施例では実施例1で示したシ
ステムにおいて、SCSIドライブ12に障害が発生し
た時に、その障害が発生したSCSIドライブ12内の
データを回復し、それを格納するための領域にスペース
領域を使用する例を示す。
<Embodiment 2> Another embodiment of the present invention will be described with reference to FIG. In this embodiment, in the system shown in the first embodiment, when a failure occurs in the SCSI drive 12, data in the failed SCSI drive 12 is recovered, and a space area is used as an area for storing the data. An example is shown below.

【0083】本発明では図3に示すように、論理グルー
プ10内の各SCSIドライブ12では、その内部の各
々対応する同一SCSI内Addr44のデータにより
パリティグループを構成する。具体的にはSD#1,
2,3のSCSIドライブ12内のData#1、2、
3(D#1,2,3)でPG36によりパリティ#1
(P#1)が作られSD#6のSCSIドライブ12内
に格納される。本実施例ではパリティは奇数パリティと
し、Data#1,2,3(D#1,2,3)の各デー
タにおける各々対応するビットについて1の数を数え、
奇数であれば0、偶数であれば1とする(排他的論理
和)。もし、SD#1のSCSIドライブ12に障害が
発生したとする。この時、Data#1(D#1)は読
み出せなくなる。
In the present invention, as shown in FIG. 3, in each SCSI drive 12 in the logical group 10, a parity group is formed by the data of the Addr 44 in the same SCSI corresponding to each SCSI drive. Specifically, SD # 1,
Data # 1, 2, and 3 in the SCSI drive 12 of a few
3 (D # 1, 2, 3), parity # 1 by PG36
(P # 1) is created and stored in the SCSI drive 12 of SD # 6. In this embodiment, the parity is an odd parity, and the number of 1s is counted for each corresponding bit in each data of Data # 1, 2, 3 (D # 1, 2, 3).
It is 0 for odd numbers and 1 for even numbers (exclusive OR). It is assumed that a failure has occurred in the SCSI drive 12 of SD # 1. At this time, Data # 1 (D # 1) cannot be read.

【0084】本実施例ではパリティグループ当りにパリ
ティを1個しか持っていないため、1台のSCSIドラ
イブ12の障害はデータを復元できるが、データの復元
が完了する前に更にもう一台のSCSIドライブ12に
障害が発生した場合復元出来ない。そこで、この様な場
合、2台目のSCSIドライブ12障害が発生する前
に、残りのData#2、3(D#2,3)とパリティ
#1(P#1)をキャッシュメモリ7に転送し、MP1
20はPG36に対しData#1(D#1)を復元
する回復処理を早急に行なうように指示する。この回復
処理を行ないData#1(D#1)を復元した後は、
MP1 20はこのData#1(D#1)をSD#4
または6のどちらかのスペース領域に格納する。
In this embodiment, since only one parity is provided per parity group, data can be restored when one SCSI drive 12 fails. However, another SCSI drive can be restored before data restoration is completed. If a failure occurs in the drive 12, it cannot be restored. Therefore, in such a case, the remaining Data # 2, 3 (D # 2, 3) and parity # 1 (P # 1) are transferred to the cache memory 7 before the failure of the second SCSI drive 12 occurs. And MP1
20 instructs the PG 36 to immediately perform a recovery process for restoring Data # 1 (D # 1). After performing this recovery process and restoring Data # 1 (D # 1),
MP1 20 converts this Data # 1 (D # 1) to SD # 4.
Or, it is stored in either space area of 6.

【0085】これにより、スペース領域を実施例1で示
したような、書き込み処理時の回転待ち時間を短縮させ
るためだけではなく、SCSIドライブ12に障害が発
生したときに、復元したデータを格納するためのスペア
ー領域としても活用する。この様に、MP1 20がス
ペース領域に回復したData#1(D#1)を格納し
た後は、キャッシュメモリ7にある図3に示すアドレス
テーブル40において、スペースドライブ番号51の中
で、回復データを格納した方のスペースドライブ番号5
1を削除し、この削除したドライブ番号に対する論理ア
ドレス45に、回復したData#1(D#1)の論理
アドレス45の内容を複写する。
As a result, the space area is not only used to reduce the rotation waiting time during the writing process as described in the first embodiment, but also when the SCSI drive 12 fails, the restored data is stored. Also used as a spare area. As described above, after the MP1 20 stores the recovered Data # 1 (D # 1) in the space area, in the address table 40 of the cache memory 7 shown in FIG. Space drive number 5 where is stored
1 is deleted, and the contents of the recovered logical address 45 of Data # 1 (D # 1) are copied to the logical address 45 corresponding to the deleted drive number.

【0086】図6に示すようにSD#1のSCSIドラ
イブ12にはData#1(D#1)の他にスペース領
域、パリティ、Data#13、16、19、22(D
#13,16,19,22)が格納されている。スペー
ス領域については回復処理を行ない復元する必要は無
い。パリティ#3(P#3)はSD#3,4,5のSC
SIドライブ12からData#7、8、9(D#7,
8,9)を読み出して新たに作成しSD#2か6のSC
SIドライブ12のスペース領域に格納する。Data
#13(D#13)はSD#3,5,6のSCSIドラ
イブ12からパリティ#5(P#5)、Data#1
4、15(D#14,15)を読み出して、回復処理を
行ない復元し、SD#2または4のSCSIドライブ1
2のスペース領域に格納する。Data#16(D#1
6)はSD#2,4,6のSCSIドライブ12からD
ata#17(D#17)、パリティ#6(P#6)、
Data#18(D#18)を読み出して、回復処理を
行ない復元し、SD#3または5のSCSIドライブ1
2のスペース領域に格納する。以下同様にData#1
9、22(D#19,22)と回復処理を行ない論理グ
ループ10内のスペース領域に格納していく。
As shown in FIG. 6, in the SCSI drive 12 of SD # 1, in addition to Data # 1 (D # 1), a space area, parity, Data # 13, 16, 19, 22 (D
# 13, 16, 19, and 22) are stored. There is no need to perform restoration processing for the space area to restore it. Parity # 3 (P # 3) is the SC of SD # 3,4,5
Data # 7, 8, 9 (D # 7,
8, 9) is read out and newly created, and SD # 2 or 6 SC
The data is stored in the space area of the SI drive 12. Data
# 13 (D # 13) is the parity # 5 (P # 5), Data # 1 from the SCSI drive 12 of SD # 3,5,6.
4, 15 (D # 14, 15) are read out and restored by performing recovery processing, and the SCSI drive 1 of SD # 2 or 4 is read.
2 in the space area. Data # 16 (D # 1
6) D from the SCSI drive 12 of SD # 2,4,6
data # 17 (D # 17), parity # 6 (P # 6),
Data # 18 (D # 18) is read out and restored by performing recovery processing, and the SCSI drive 1 of SD # 3 or 5 is read.
2 in the space area. Similarly, Data # 1
Recovery processing is performed on the logical groups 9 and 22 (D # 19 and 22) and stored in the space area within the logical group 10.

【0087】この様に、SD#2,3,4,5,6のS
CSIドライブ12内のスペース領域に、SD#1のS
CSIドライブ12の回復データを全て格納した後は、
スペース領域が論理グループ10において一つしかない
ため、実施例1で述べたような書き込み時の回転待ちを
短くすることは出来ないため、従来のアレイディスクで
あるRAIDのレベル5の処理となる。また、SD#1
のSCSIドライブ12の回復データを全て格納した後
は、SD#2,3,4,5,6のSCSIドライブ12
の中で更にもう一台SCSIドライブ12に障害が発生
した場合、同様にその障害が発生したSCSIドライブ
12内のデータについて回復処理を行ない、残りのスペ
ース領域に格納し、処理を行なえる。
As described above, S # of SD # 2, 3, 4, 5, 6
In the space area in the CSI drive 12, the SD # 1 S
After storing all the recovery data of the CSI drive 12,
Since there is only one space area in the logical group 10, the rotation wait during writing as described in the first embodiment cannot be shortened, so that the processing is performed at RAID level 5, which is a conventional array disk. Also, SD # 1
After storing all the recovery data of the SCSI drive 12 of the SCSI drive 12, the SCSI drive 12 of SD # 2, 3, 4, 5, 6
In the case where another SCSI drive 12 fails, the data in the failed SCSI drive 12 is similarly subjected to recovery processing, stored in the remaining space area, and processed.

【0088】この様にして、論理グループ10内のスペ
ース領域を全て使いきってしまった場合は、障害SCS
Iドライブ12を正常のSCSIドライブ12に交換
し、この交換した正常なSCSIドライブ12は全てス
ペース領域として論理グループを再構成する。
As described above, when all the space areas in the logical group 10 have been used up, the failure SCS
The I drive 12 is replaced with a normal SCSI drive 12, and all the replaced normal SCSI drives 12 reconfigure the logical group as a space area.

【0089】障害SCSIドライブ12を正常のSCS
Iドライブ12に交換した直後は、スペース領域が特定
SCSIドライブ12に集中した形になっているため、
このSCSIドライブ12が使用出来ずにまたされるこ
とが多くなりネックとなるため、実施例1で示した回転
待ち時間を短縮する効果が、効率的に発揮出来ない。し
かし、時間が立つにつれて、スペース領域が分散されて
SCSIドライブ12障害前の状態に戻っていき、次第
に解消されていく。もし、この時間が問題となる場合
は、SCSIドライブ12に障害が発生したことを感知
した場合、正常なSCSIドライブ12に交換して、こ
の交換した正常なSCSIドライブ12に障害が発生し
たSCSIドライブ12内のデータとパリティをユーザ
が復元することも可能とする。なお、この時スペース領
域に関しては復元せずにスペース領域として空けてお
く。
The failed SCSI drive 12 is replaced with a normal SCS
Immediately after replacing with the I drive 12, the space area is concentrated on the specific SCSI drive 12,
Since the SCSI drive 12 cannot be used again and often becomes a bottleneck, the effect of reducing the rotation waiting time shown in the first embodiment cannot be efficiently exhibited. However, as time elapses, the space area is dispersed and returns to the state before the failure of the SCSI drive 12, and is gradually resolved. If this time is a problem, if it is detected that a failure has occurred in the SCSI drive 12, it is replaced with a normal SCSI drive 12, and the failed SCSI drive in the replaced normal SCSI drive 12 is replaced. It is also possible for the user to restore the data and parity in 12. At this time, the space area is left as a space area without being restored.

【0090】本実施例ではこの回復処理と、スペース領
域へ復元したデータを書き込む処理をMP1 20が独
自に行なう。この様に独自に行なうことによりSCSI
ドライブ12に障害が発生した場合、障害が発生したS
CSIドライブ12を正常なSCSIドライブ12に交
換し回復したデータを書き込むのと比較し、本発明では
システムを使用するユーザがSCSIドライブ12に障
害が発生するとすぐに正常なSCSIドライブ12と交
換する必要が無いため、ユーザの負担が軽くなる。
In this embodiment, the MP120 performs this recovery process and the process of writing the restored data to the space area independently. By doing so independently, SCSI
When the drive 12 fails, the failed S
Compared to replacing the CSI drive 12 with a normal SCSI drive 12 and writing the recovered data, the present invention requires that a user using the system replace the normal SCSI drive 12 as soon as the SCSI drive 12 fails. Since there is no data, the burden on the user is reduced.

【0091】〈実施例3〉本発明の第三の実施例を図7
〜図11により説明する。本実施例では図7、8に示す
ように論理グループ10単位にサブDKC11を設け、
その内部に図9に示すように実施例1、2において示し
たキャッシュメモリ7内のアドレステーブル40とRP
C27、PG36、サブキャッシュ32とそれらを制御
するマイクロプロセッサMP3 29を持たせたものを
示す。本実施例におけるデータの処理手順は実施例1お
よび2で示したものと同様である。以下には実施例1、
2で示した処理手順と異なる部分のみを図10および図
11を用いて示す。本実施例では図9に示すように実施
例1、2で示したキャッシュメモリ7内のアドレステー
ブル40をサブDKC11内のデータアドレステーブル
(DAT)30に格納する。DAT30は格納されてい
るテーブルの形式や機能は実施例1、2と同様である
が、異なるのはデータを格納するSCSIドライブアド
レス42が論理グループ10に限られている点と、メモ
リがアドレステーブル40を格納するデータを格納する
のとは別の専用メモリである。ADC2内のGAT23
はCPU1から指示されたCPU指定アドレスから、そ
のCPU指定アドレスが指示する場所がADU3内のど
の論理グループ10かを判定するのみである。キャッシ
ュメモリ7内には、その特別な領域に図10に示すよう
な論理グループテーブル(LGT)60が格納されてい
る。
<Embodiment 3> A third embodiment of the present invention is shown in FIG.
This will be described with reference to FIG. In this embodiment, as shown in FIGS. 7 and 8, a sub DKC 11 is provided for each logical group 10 unit.
As shown in FIG. 9, the address table 40 in the cache memory 7 and the RP
This figure shows a configuration having a C27, a PG 36, a sub-cache 32 and a microprocessor MP3 29 for controlling them. The data processing procedure in this embodiment is the same as that shown in the first and second embodiments. Example 1 is described below.
Only the parts different from the processing procedure shown in FIG. 2 are shown using FIGS. 10 and 11. In this embodiment, the address table 40 in the cache memory 7 shown in the first and second embodiments is stored in the data address table (DAT) 30 in the sub DKC 11 as shown in FIG. The format and function of the table stored in the DAT 30 are the same as those in the first and second embodiments. This is a dedicated memory different from that for storing data for storing the data 40. GAT23 in ADC2
Only determines which logical group 10 in the ADU 3 indicates the location specified by the CPU specified address from the CPU specified address specified by the CPU 1. In the cache memory 7, a logical group table (LGT) 60 as shown in FIG.

【0092】LGT60は図10に示すようにCPU1
から指定されるCPU指定ドライブ番号41とCCHH
R46に対応して、論理グループアドレス61が決定で
きるテーブルとなっている。また、LGT60にはCP
U指定アドレスに対応するデータがキャッシュメモリ7
内に存在する場合、そのデータのキャッシュメモリ7内
のアドレスをキャッシュアドレス47に登録でき、ま
た、キャッシュメモリ7内にデータが存在する場合オン
(1)とし、キャッシュメモリ7内に存在しない場合オ
フ(0)とするキャッシュフラグ48が用意されてい
る。ユーザは初期設定する際に自分の使用可能な容量に
対する領域を確保するが、その際にADC2のMP1
20が、LGT60により論理グループ10を割当て
る。この時、MP1 20はLGT60にユーザが確保
するために指定したCPU指定アドレスに対応する領域
を登録する。
The LGT 60 has a CPU 1 as shown in FIG.
Drive number 41 and CCHH specified from
The table is such that the logical group address 61 can be determined corresponding to R46. The LGT 60 has a CP
The data corresponding to the U designated address is stored in the cache memory 7
If the data exists in the cache memory 7, the address of the data in the cache memory 7 can be registered in the cache address 47. If the data exists in the cache memory 7, it is turned on (1). A cache flag 48 for (0) is prepared. The user reserves an area for his / her available capacity at the time of initial setting.
20 assigns the logical group 10 by the LGT 60. At this time, the MP1 20 registers an area corresponding to the CPU-specified address specified by the user in the LGT 60.

【0093】そこで、実際の読みだし、書き込み処理に
おいては、GAT23はLGT60によりCPU1から
指定してきたCPU指定アドレスに対応した論理グルー
プ10を認識することが可能となる。読み出し時はGA
T23がLGCにより論理グループ10を確定し、その
確定した結果をMP1 20に報告し、MP1 20は
この当該論理グループ10に対し読み出し要求を発行す
るようにDriveIF28に指示する。MP1 20
から指示を受けたDrive IF28は当該論理グル
ープ10のサブDKC11に対し読み出し要求とCPU
1が指定するCPU指定アドレスを発行する。サブDK
C11ではマイクロプロセッサであるMP3 29がこ
の読み出し要求のコマンドとCPU指定アドレスを受け
付け、実施例1と同様に、Drive IF28から送
られてきたCPU指定アドレスをDAT30を参照し、
当該データが格納されている論理グループ10内の論理
アドレス45に変換し、この論理アドレス45から当該
SCSIドライブアドレス42(SCSIドライブ番号
43とその中のSCSI内Addr44)を確定する。
Therefore, in the actual read / write processing, the GAT 23 can recognize the logical group 10 corresponding to the CPU specified address specified by the CPU 1 by the LGT 60. GA for reading
T23 determines the logical group 10 by LGC, and reports the determined result to the MP1 20. The MP1 20 instructs the DriveIF 28 to issue a read request to the logical group 10. MP1 20
The Drive IF 28 that has received the instruction from the sub-DKC 11 of the logical group 10 issues a read request and the CPU
1 issues a CPU-specified address. Sub DK
In C11, the microprocessor MP3 29 receives the read request command and the CPU-specified address, and refers to the DAT 30 for the CPU-specified address sent from the Drive IF 28, as in the first embodiment.
The logical address 45 is converted into the logical address 45 in the logical group 10 in which the data is stored, and the SCSI drive address 42 (the SCSI drive number 43 and the SCSI Addr 44 therein) is determined from the logical address 45.

【0094】このアドレスの確定後MP3 29は当該
SCSIドライブ12に対し、読み出し要求を発行す
る。MP3 29から読み出し要求を発行されたSCS
Iドライブ12ではSCSI内Addr44へシーク、
回転待ちを行ない、当該データの読み出しが可能になり
次第、当該データをドライブアダプタ回路(Drive
Adp)34に転送し、Drive Adp34はサブ
キャッシュメモリ32に格納する。サブキャッシュメモ
リ32に当該データの格納が完了した後、Drive
Adp34はMP3 29に格納報告を行ない、MP3
29はDAT30の当該データの当該論理アドレス4
5内の当該キャッシュフラグ48をオン(1)とする。
後に当該キャッシュフラグ48がオン(1)のデータに
対し読み出しまたは書込み要求が発行された場合は、サ
ブキャッシュ32内で処理を行なう。実施例1と同様に
MP3 29によるDAT30の更新が終了すると、M
P3 29はADC2内のDrive IF28に対し
データ転送可能という応答を行ない、Drive IF
28はこの応答を受け取ると、MP1 20に対し報告
する。
After the address is determined, the MP 329 issues a read request to the SCSI drive 12. SCS issued read request from MP3 29
In the I drive 12, seek to Addr44 in SCSI,
After waiting for rotation and reading the data, the data is transferred to the drive adapter circuit (Drive).
AdP) 34, and the Drive Adp 34 stores the data in the sub-cache memory 32. After the storage of the data in the sub-cache memory 32 is completed, Drive
The Adp34 reports the storage to the MP3 29, and the MP3 29
29 is the logical address 4 of the data of the DAT 30
The relevant cache flag 48 in 5 is turned on (1).
If a read or write request is issued for the data whose cache flag 48 is on (1) later, the process is performed in the sub-cache 32. When the update of the DAT 30 by the MP3 29 ends as in the first embodiment, M
The P3 29 responds to the Drive IF 28 in the ADC 2 that data transfer is possible, and the Drive IF 28
28, upon receiving this response, reports to MP1 20.

【0095】MP1 20はこの報告を受け取ると、キ
ャッシュメモリ7への格納が可能なら、Drive I
F28に対しサブDKC11からデータを転送するよう
に指示する。Drive IF28ではMP1 20か
らの指示を受けるとサブDKC11のMP3 29に対
し読み出し要求を発行する。この読み出し要求を受けた
MP3 29はサブキャッシュアダプタ回路(SCA)
31に対しサブキャッシュ32から当該データを読みだ
すように指示し、SCA31は実際にデータを読み出し
てDrive IF28にデータを転送する。Driv
e IF 28がデータを受け取った後は、実施例1、
2で示した処理を行なう。
When MP1 20 receives this report, if it is possible to store it in cache memory 7, Drive 1
Instruct F28 to transfer data from sub DKC11. When receiving an instruction from the MP 1 20, the Drive IF 28 issues a read request to the MP 3 29 of the sub DKC 11. The MP3 29 which has received the read request is a sub-cache adapter circuit (SCA)
The SCA 31 instructs the sub-cache 31 to read the data, and the SCA 31 actually reads the data and transfers the data to the drive IF 28. Drive
e IF 28 receives the data, Example 1,
The processing shown in 2 is performed.

【0096】一方書込み時は読み出し時と同様に当該論
理グループ10を確定し、MP120はDrive I
F28に対し当該論理グループ10のMP3 29に対
し書込み要求を発行するように指示する。当該論理グル
ープ10内のMP3 29は、書込み要求を受け付け、
書込みデータをサブキャッシュ32に格納した後は、図
5のフローチャートに従って、実施例1、2と同様に処
理を行う。本実施例では実施例1、2の効果を実現する
ことが可能である。
On the other hand, at the time of writing, the relevant logical group 10 is determined in the same manner as at the time of reading.
Instruct F28 to issue a write request to MP3 29 of the logical group 10. The MP3 29 in the logical group 10 receives the write request,
After the write data is stored in the sub-cache 32, the same processing as in the first and second embodiments is performed according to the flowchart of FIG. In this embodiment, the effects of the first and second embodiments can be realized.

【0097】以上、磁気ディスク装置を用いたシステム
を実施例として説明したが、本発明は光ディスク装置を
用いたシステムにおいても同様な効果を発揮することが
可能である。
Although the system using the magnetic disk device has been described as an embodiment, the present invention can exert the same effect in a system using an optical disk device.

【0098】[0098]

【発明の効果】本発明によれば、データの書き込み時に
おけるパリティの更新処理をCPUからの読みだしまた
は書き込み要求が少ない時まで遅らせることが可能とな
る。これにより、CPUにとっては読みだしまたは書き
込み処理要求が多い時は書き込み処理を高速に行え、こ
れにより単位時間当りのI/O処理件数を増加させるこ
とが可能となる。さらに、通常は使用しないスペアのS
CSIドライブを、回転待ち時間の短縮という、性能向
上のために使用でき、SCSIドライブ資源の有効活用
が図れる。
According to the present invention, it is possible to delay the updating of the parity at the time of data writing until a reading or writing request from the CPU is small. As a result, when there are many read or write processing requests for the CPU, the write processing can be performed at high speed, whereby the number of I / O processing per unit time can be increased. In addition, spare S which is not normally used
The CSI drive can be used to improve the performance by reducing the rotation waiting time, and the SCSI drive resources can be effectively used.

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

【図1】第1の実施例の全体構成図。FIG. 1 is an overall configuration diagram of a first embodiment.

【図2】第1の実施例のクラスタ内構成図。FIG. 2 is a configuration diagram in a cluster according to the first embodiment;

【図3】アドレス変換テーブルの説明図。FIG. 3 is an explanatory diagram of an address conversion table.

【図4】書き込み処理時のデータ移動説明図。FIG. 4 is an explanatory diagram of data movement during a writing process.

【図5】書き込み処理フローチャート(1)。FIG. 5 is a write processing flowchart (1).

【図6】データ回復処理説明図、パリティグループを構
成する各データのディスク上での位置説明図。
FIG. 6 is an explanatory view of a data recovery process, and an explanatory view of a position on a disk of each data constituting a parity group.

【図7】第3の実施例の全体構成図。FIG. 7 is an overall configuration diagram of a third embodiment.

【図8】第3の実施例のクラスタ内構成図。FIG. 8 is a configuration diagram in a cluster according to the third embodiment.

【図9】第3の実施例のサブDKC内構成図。FIG. 9 is a configuration diagram in a sub-DKC of a third embodiment.

【図10】論理グループテーブル説明図。FIG. 10 is an explanatory diagram of a logical group table.

【図11】RAID Level5における更新処理説
明図。
FIG. 11 is an explanatory diagram of an update process in RAID Level5.

【図12】RAID5における書き込み処理タイミング
チャート。
FIG. 12 is a write processing timing chart in RAID5.

【図13】書き込み処理フローチャート(2)。FIG. 13 is a flowchart (2) of a writing process.

【図14】パリティ作成処理フローチャート。FIG. 14 is a flowchart of a parity creation process.

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

1…CPU、2…アレイディスクコントローラ(AD
C)、3…アレイディスクユニット(ADU)、4…外
部インターフェースパス、5…チャネルパスディレク
タ、6…チャネルパス、7…キャッシュメモリ、8…ド
ライブパス、9…アレイディスクユニットパス、10…
論理グループ、12…SCSIドライブ、13…クラス
タ、14…ドライブ側キャッシュアダプタ(C Ad
p)、15…インターフェースアダプタ、16…チャネ
ルパススイッチ、17…制御信号線、18…データ線、
19…パス、20…マイクロプロセッサ1(MP1)、
21…チャネルインターフェース(CH IF)回路、
22…データ制御回路(DCC)、23…グループアド
レス変換回路(GAT)、24…チャネル側キャッシュ
アダプタ(C Adp)、28…ドライブインターフェ
ース回路(Drive IF)、29…マイクロプロセ
ッサ3(MP3)、30…データアドレステーブル4
0、31…サブキャッシュアダプタ、34…ドライブア
ダプタ(Drive Adp)、35…ドライブパス、
36…パリティ生成回路、40…アドレス変換用テーブ
ル(アドレステーブル)、41…CPU指定ドライブ番
号、42…SCSIドライブアドレス、43…SCSI
ドライブ番号、44…SCSI内Addr、45…論理
アドレス、46…CCHHR、47…キャッシュアドレ
ス、48…キャッシュフラグ、49…無効フラグ、50
…パリティドライブ番号、51…スペースドライブ番
号、52…ドライブフラグ、53…SDフラグ、60…
論理グループテーブル、61…論理グループアドレス
1. CPU, 2. Array disk controller (AD
C), 3 ... array disk unit (ADU), 4 ... external interface path, 5 ... channel path director, 6 ... channel path, 7 ... cache memory, 8 ... drive path, 9 ... array disk unit path, 10 ...
Logical group, 12: SCSI drive, 13: Cluster, 14: Drive side cache adapter (C Ad
p), 15: interface adapter, 16: channel path switch, 17: control signal line, 18: data line,
19: path, 20: microprocessor 1 (MP1),
21 channel interface (CH IF) circuit,
22: Data control circuit (DCC), 23: Group address conversion circuit (GAT), 24: Channel side cache adapter (C Adp), 28: Drive interface circuit (Drive IF), 29: Microprocessor 3 (MP3), 30 ... Data address table 4
0, 31: sub-cache adapter, 34: drive adapter (Drive Adp), 35: drive path,
36: parity generation circuit, 40: address conversion table (address table), 41: CPU designated drive number, 42: SCSI drive address, 43: SCSI
Drive number, 44: Addr in SCSI, 45: Logical address, 46: CCHHR, 47: Cache address, 48: Cache flag, 49: Invalid flag, 50
... Parity drive number, 51 ... Space drive number, 52 ... Drive flag, 53 ... SD flag, 60 ...
Logical group table, 61 ... logical group address

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平4−312146(JP,A) 特開 平4−230512(JP,A) 特開 平5−35413(JP,A) 国際公開92/12482(WO,A1) (58)調査した分野(Int.Cl.7,DB名) G06F 3/06 ──────────────────────────────────────────────────続 き Continuation of front page (56) References JP-A-4-312146 (JP, A) JP-A-4-230512 (JP, A) JP-A-5-35413 (JP, A) International Publication No. 92/12482 (WO, A1) (58) Field surveyed (Int. Cl. 7 , DB name) G06F 3/06

Claims (6)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】外部装置から入力されたデータを記憶装置
に書き込む方法であって、 入力データを第1の冗長レベルの形式で上記記憶装置に
書き込むステップと、 上記記憶装置に第1の冗長レベルの形式で書き込まれた
データを冗長データ配置形式が異なる第2の冗長レベル
の形式に書き換えるステップとを有することを特徴とす
るデータ書き込み方法。
1. A storage device for storing data input from an external device.
The input data to the storage device in the form of a first redundancy level.
Writing, and writing to the storage device in a first redundancy level format
A second redundancy level in which data has a different redundancy data arrangement format
Rewriting to the form of
Data writing method.
【請求項2】前記外部装置との間でのデータの入力また
は出力の頻度を検出するステップを有し、 上記検出結果に応じて判断された所定のタイミングで、
前記第1の冗長レベルの形式で書き込まれたデータを第
2の冗長レベルの形式に書き換えることを特徴とする請
求項1に記載のデータ書き込み方法
2. An apparatus for inputting data to and from the external device.
Has a step of detecting the frequency of output, at a predetermined timing determined according to the detection result,
The data written in the format of the first redundancy level is
2. A system for rewriting data in a redundant level 2 format
The data writing method according to claim 1 .
【請求項3】前記第1の冗長レベルの形式がデータの二
重化を利用するものであり、前記第2の冗長レベルの形
式がパリティを利用するものであることを特徴とする請
求項1または請求項2に記載のデータ書き込み方法
3. The method of claim 1, wherein the format of the first redundancy level is data
Utilizing redundancy, wherein the form of the second level of redundancy is
The contract is characterized in that the expression uses parity.
3. The data writing method according to claim 1 or claim 2 .
【請求項4】外部装置と接続可能であって、上記外部装
置からの入力データを書き込み、内部に記録されている
データを上記外部装置に読み出す記憶装置であって、 上記外部装置からの入力データを第1の冗長レベルの形
式で書き込む手段と、 上記第1の冗長レベルの形式で書き込まれたデータを冗
長データ配置形式が異なる第2の冗長レベルの形式に書
き換える手段とを有することを特徴とする記憶装置。
4. The external device is connectable to an external device.
Input data from the device is written and stored internally
A storage device for reading data to said external device, wherein input data from said external device is stored in a first redundancy level.
Means for writing in a formula, and data written in the format of the first redundancy level
Write to the second redundancy level format with a different long data layout format
A storage device, comprising: a switching unit.
【請求項5】前記外部装置と前記記憶装置との間のデー
タの入力または出力の頻度を検出する手段を有し、 前記書き換え手段が、上記検出手段によって検出された
頻度に応じて、前記第1の冗長レベルの形式で書き込ま
れたデータを第2の冗長レベルの形式に書き換 えること
を特徴とする請求項4に記載の記憶装置
5. The data transfer between the external device and the storage device.
Means for detecting the frequency of input or output of the data, wherein said rewriting means is detected by said detecting means
Write in the form of the first redundancy level according to frequency
Possible to obtain write conversion to a data format of a second redundancy level
The storage device according to claim 4, wherein:
【請求項6】前記第1の冗長レベルの形式がデータの二
重化を利用するものであり、前記第2の冗長レベルの形
式がパリティを利用するものであることを特徴とする請
求項4または請求項5に記載の記憶装置。
6. The method of claim 1, wherein the format of the first redundancy level is
Utilizing redundancy, wherein the form of the second level of redundancy is
The contract is characterized in that the expression uses parity.
The storage device according to claim 4 or claim 5.
JP12576693A 1992-12-28 1993-05-27 Disk array device and control method therefor Expired - Lifetime JP3256329B2 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP12576693A JP3256329B2 (en) 1993-05-27 1993-05-27 Disk array device and control method therefor
US08/248,452 US5579474A (en) 1992-12-28 1994-05-24 Disk array system and its control method
US08/626,332 US6049890A (en) 1992-12-28 1996-04-02 Disk array system and its control method
US09/444,562 US6256749B1 (en) 1992-12-28 1999-11-19 Disk array system and its control method
US09/862,608 US6557140B2 (en) 1992-12-28 2001-05-23 Disk array system and its control method
US10/388,634 US7185265B2 (en) 1992-12-28 2003-03-17 Disk array system and its control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12576693A JP3256329B2 (en) 1993-05-27 1993-05-27 Disk array device and control method therefor

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP2000118555A Division JP3234211B2 (en) 1993-05-27 2000-04-14 Disk array system
JP2001330516A Division JP3542577B2 (en) 2001-10-29 2001-10-29 Disk array device and control method therefor

Publications (2)

Publication Number Publication Date
JPH06332632A JPH06332632A (en) 1994-12-02
JP3256329B2 true JP3256329B2 (en) 2002-02-12

Family

ID=14918304

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12576693A Expired - Lifetime JP3256329B2 (en) 1992-12-28 1993-05-27 Disk array device and control method therefor

Country Status (1)

Country Link
JP (1) JP3256329B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6611897B2 (en) 1999-03-22 2003-08-26 Hitachi, Ltd. Method and apparatus for implementing redundancy on data stored in a disk array subsystem based on use frequency or importance of the data
JP2001167040A (en) 1999-12-14 2001-06-22 Hitachi Ltd Memory subsystem and memory control unit
JP2004326357A (en) 2003-04-23 2004-11-18 Internatl Business Mach Corp <Ibm> Storage system with redundant block, as well as control device, control method, program and recording medium for the storage system
JP5169993B2 (en) * 2009-05-27 2013-03-27 日本電気株式会社 Data storage system and data area management method

Also Published As

Publication number Publication date
JPH06332632A (en) 1994-12-02

Similar Documents

Publication Publication Date Title
US6049890A (en) Disk array system and its control method
JP3176157B2 (en) Disk array device and data updating method thereof
JP3129732B2 (en) Storage array with copy-back cache
US6061750A (en) Failover system for a DASD storage controller reconfiguring a first processor, a bridge, a second host adaptor, and a second device adaptor upon a second processor failure
US6006342A (en) Failover and failback system for a direct access storage device
US5586291A (en) Disk controller with volatile and non-volatile cache memories
US5572660A (en) System and method for selective write-back caching within a disk array subsystem
JP3606881B2 (en) High-performance data path that performs Xor operations during operation
US6604171B1 (en) Managing a cache memory
US6058489A (en) On-line disk array reconfiguration
US7600152B2 (en) Configuring cache memory from a storage controller
US6591335B1 (en) Fault tolerant dual cache system
US8078906B2 (en) Grid storage system and method of operating thereof
US20220137835A1 (en) Systems and methods for parity-based failure protection for storage devices
JPH10111767A (en) Large capacity storage device
JPH08194586A (en) Method,system and apparatus for data processing
JP3270959B2 (en) Parity storage method in disk array device and disk array device
JP3256329B2 (en) Disk array device and control method therefor
JP2004213470A (en) Disk array device, and data writing method for disk array device
JP2857288B2 (en) Disk array device
JPH06230903A (en) Fault recovery method for disk array device and disk array device
JP3793544B2 (en) Disk array device and control method thereof
JP3542577B2 (en) Disk array device and control method therefor
JP3234211B2 (en) Disk array system
JP3718506B2 (en) Disk array device and control method thereof

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071130

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20081130

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20081130

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20091130

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20101130

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20101130

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20111130

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20111130

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20121130

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20121130

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20131130

Year of fee payment: 12

EXPY Cancellation because of completion of term