[go: up one dir, main page]

JP2001142650A - Method and device for controlling array disk - Google Patents

Method and device for controlling array disk

Info

Publication number
JP2001142650A
JP2001142650A JP32764299A JP32764299A JP2001142650A JP 2001142650 A JP2001142650 A JP 2001142650A JP 32764299 A JP32764299 A JP 32764299A JP 32764299 A JP32764299 A JP 32764299A JP 2001142650 A JP2001142650 A JP 2001142650A
Authority
JP
Japan
Prior art keywords
data
disk
cache memory
physical
failure
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP32764299A
Other languages
Japanese (ja)
Inventor
Akihiro Asano
聡宏 浅野
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP32764299A priority Critical patent/JP2001142650A/en
Publication of JP2001142650A publication Critical patent/JP2001142650A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To find the occurrence of illegal data and a disk failure at an early stage and to reliably store even data that are not read for a long time. SOLUTION: This device is provided with a cache memory 6, a data dividing part 3 which divides data transmitted from a host device 1 in accordance with the number of physical disks and also generates the parity data of the divided division data, a data transferring part 4 which respectively stores the division data and the parity data into physical disks, a data comparing part 8 which reads the data from the physical disk after storing the division data and the parity data in each physical disk and compares the data with corresponding data stored in the cache memory, and a failure deciding part 10 which decides that a failure takes place in the physical disk storing an uncoincidental part when any uncoincidental part exists in the part 8.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、アレイディスク制
御方法及び装置に係り、特に、データに冗長性を持たせ
て複数の物理ディスクにデータを分割して格納するアレ
イディスク制御方法及び装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an array disk control method and apparatus, and more particularly to an array disk control method and apparatus for dividing data into a plurality of physical disks and storing the data with redundancy.

【0002】[0002]

【従来の技術】従来より、上位装置から転送されたデー
タを分割し、さらに分割データのパリティデータを生成
して、これらを別々の物理ディスクに格納することで、
1つの物理ディスクに障害が発生した場合であってもデ
ータを復旧可能な手法が用いられている。このようなデ
ータ分割やパリティデータの生成については、例えばR
AID3,5等にまとめられている。
2. Description of the Related Art Conventionally, data transferred from a host device is divided, parity data of the divided data is generated, and these are stored in separate physical disks.
A technique that can recover data even when a failure occurs in one physical disk is used. For such data division and generation of parity data, for example, R
AID3, 5, etc.

【0003】しかしながら、上記従来例では、物理ディ
スクに障害が発生し、データの読み出しはできるが、デ
ータの内容が不正である場合には、どの物理ディスクに
障害が発生したのかを判定することができない。これに
対し、特開平9―305328号公報記載の手法では、
分割データからパリティデータを生成するのみならず、
巡回冗長検査情報(CRC)を付加している。そして、
再生したデータのパリティが不正であった場合には、1
台を障害ディスクとした場合の複数の組み合わせでデー
タを復元し、複数の復元データの内、CRCに基づいて
正常であると判定された復元データを再生データとして
上位装置に転送する。
However, in the above-mentioned conventional example, a failure has occurred in the physical disk, and data can be read. However, if the data content is incorrect, it is possible to determine which physical disk has failed. Can not. On the other hand, in the method described in JP-A-9-305328,
In addition to generating parity data from the divided data,
Cyclic redundancy check information (CRC) is added. And
If the parity of the reproduced data is incorrect, 1
The data is restored by a plurality of combinations in the case where the unit is a failed disk, and among the plurality of restored data, the restored data determined to be normal based on the CRC is transferred to the host device as reproduction data.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、上記従
来例では、データの読み出し時に不正データのチェック
を行うため、データ書き込み後長時間データを読み取ら
なかった場合に、不正データが発生した原因の解明が困
難で特定できず、すると、データ書き込み後長時間経過
した場合には、同時に複数台の物理ディスクで障害が発
生してしまうことも想定され、すると、データの復旧が
困難となる可能性が高い、という不都合があった。
However, in the above-mentioned conventional example, since the illegal data is checked at the time of reading the data, if the data is not read for a long time after the data is written, the cause of the illegal data is clarified. If it is difficult to identify it, then if a long time has elapsed after data writing, it is assumed that failures will occur on multiple physical disks at the same time, and it is highly likely that data recovery will be difficult , There was an inconvenience.

【0005】[0005]

【発明の目的】本発明は、係る従来例の有する不都合を
改善し、特に、不正データの発生及びディスク障害を早
期に発見して長期間読み出されないデータであっても確
実に保存することのできるアレイディスク制御方法及び
装置を提供することを、その目的とする。
SUMMARY OF THE INVENTION The object of the present invention is to improve the disadvantages of the prior art and, in particular, to detect the occurrence of illegal data and disk failure at an early stage, and to reliably store even data that cannot be read for a long time. An object of the present invention is to provide a method and apparatus for controlling an array disk.

【0006】[0006]

【課題を解決するための手段】そこで、本発明では、論
理ディスクを構成する複数台の物理ディスクと、上位装
置から送信されたデータを一時的に記憶するキャッシュ
メモリと、前記上位装置から送信されたデータを前記物
理ディスクの台数に応じて分割すると共に当該分割した
分割データのパリティデータを生成するデータ分割部
と、このデータ分割部によって生成された分割データ及
びパリティデータを前記各物理ディスクにそれぞれ格納
するデータ転送部とを備えたディスクアレイ装置を使用
して上位装置から送信されたデータを格納するディスク
アレイ制御方法であって、分割データ及びパリティデー
タの前記各物理ディスクへの格納処理に前後して前記上
位装置に格納完了報告コマンドを送信する格納完了報告
工程と、この格納完了報告工程の後前記キャッシュメモ
リから当該格納完了報告を行ったデータが削除されるま
での間に、前記各物理ディスクから当該データを読み出
して前記キャッシュメモリに格納された対応するデータ
と比較するデータ比較工程と、このデータ比較工程で一
致しない部分がある場合には当該一致しない部分を記憶
した物理ディスクに障害が発生したと判定する障害判定
工程とを備えた、という構成を採っている。これにより
前述した目的を達成しようとするものである。
Therefore, according to the present invention, there are provided a plurality of physical disks constituting a logical disk, a cache memory for temporarily storing data transmitted from a higher-level device, and a cache memory for storing data transmitted from the higher-level device. A data division unit that divides the divided data according to the number of the physical disks and generates parity data of the divided data, and stores the divided data and parity data generated by the data division unit in each of the physical disks. A disk array control method for storing data transmitted from a higher-level device using a disk array device having a data transfer unit for storing data before and after storing divided data and parity data in each of the physical disks. And transmitting a storage completion report command to the host device. A data comparison that reads the data from each of the physical disks and compares the read data with the corresponding data stored in the cache memory until the data for which the storage completion report has been made is deleted from the cache memory after the reporting step. And a failure determination step of determining that a failure has occurred in the physical disk that stores the mismatched portion if there is a mismatched portion in the data comparison process. This aims to achieve the above-mentioned object.

【0007】本発明では、上位装置から送信されたデー
タをまずキャッシュメモリに格納する。キャッシュメモ
リに当該データを格納すると、上位装置に格納完了報告
コマンドを送信する。そして、キャッシュメモリに格納
されたデータを分割すると共に、パリティデータを生成
し、それぞれ複数の物理ディスクに格納する。上位装置
への格納完了報告は、この分割データ及びパリティデー
タの物理ディスクへの格納が完了した時に行うようにし
てもよい。
In the present invention, data transmitted from a host device is first stored in a cache memory. When the data is stored in the cache memory, a storage completion report command is transmitted to the host device. Then, while dividing the data stored in the cache memory, parity data is generated and stored in a plurality of physical disks. The storage completion report to the host device may be made when the storage of the divided data and the parity data on the physical disk is completed.

【0008】続いて、上位装置から他のI/O要求があ
る場合にはそのI/O要求を処理する。そして、上記各
物理ディスクに格納したデータと同一のデータをキャッ
シュメモリから削除する前までに、当該物理ディスクへ
のデータの格納が正常に完了したか否かの判定を行う。
すなわち、データ比較工程では、各物理ディスクから当
該データを読み出して前記キャッシュメモリに格納され
た対応するデータと比較する。そして、障害判定工程で
は、データ比較工程で一致しない部分がある場合には当
該一致しない部分を記憶した物理ディスクに障害が発生
したと判定する。このように、キャッシュメモリに格納
されたデータと各物理ディスクに格納されたデータとを
直接比較することにより、各物理ディスク毎に不正デー
タの発生の有無を確認する。
Subsequently, when there is another I / O request from the host device, the I / O request is processed. Then, before deleting the same data as the data stored in each of the physical disks from the cache memory, it is determined whether the storage of the data in the physical disks has been completed normally.
That is, in the data comparison step, the data is read from each physical disk and compared with the corresponding data stored in the cache memory. Then, in the failure determination step, when there is a part that does not match in the data comparison step, it is determined that a failure has occurred in the physical disk storing the part that does not match. As described above, by directly comparing the data stored in the cache memory with the data stored in each physical disk, it is confirmed whether or not illegal data has occurred for each physical disk.

【0009】[0009]

【発明の実施の形態】以下、本発明の実施の形態を図面
を参照して説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0010】図1は本発明によるアレイディスク制御装
置の実施形態の構成を示すブロック図である。図1に示
すように、アレイディスク制御装置2は、上位装置1か
ら送信されたデータを一時的に記憶するキャッシュメモ
リ6と、前記上位装置1から送信されたデータを前記物
理ディスクの台数に応じて分割すると共に当該分割した
分割データのパリティデータを生成するデータ分割部3
と、このデータ分割部によって生成された分割データ及
びパリティデータを前記各物理ディスクにそれぞれ格納
するデータ転送部4とを備えている。データ分割部3
は、データ転送部3に併設せず、データ転送部4の一機
能としてもよい。
FIG. 1 is a block diagram showing the configuration of an embodiment of an array disk control device according to the present invention. As shown in FIG. 1, the array disk control device 2 includes a cache memory 6 for temporarily storing data transmitted from the higher-level device 1, and stores the data transmitted from the higher-level device 1 in accordance with the number of the physical disks. Data dividing unit 3 that divides the divided data and generates parity data of the divided data.
And a data transfer unit 4 for storing the divided data and parity data generated by the data dividing unit in each of the physical disks. Data division unit 3
May be a function of the data transfer unit 4 without being provided in the data transfer unit 3.

【0011】アレイディスク制御装置2はさらに、分割
データ及びパリティデータとを各物理ディスクに格納し
た後、当該前記各物理ディスクから当該データを読み出
して前記キャッシュメモリに格納された対応するデータ
と比較するデータ比較部8と、このデータ比較部8で一
致しない部分がある場合には当該一致しない部分を記憶
した物理ディスクに障害が発生したと判定する障害判定
部10とを備えている。
After storing the divided data and the parity data in each physical disk, the array disk controller 2 reads the data from each of the physical disks and compares it with the corresponding data stored in the cache memory. The data comparison unit 8 includes a failure determination unit 10 that determines that a failure has occurred in a physical disk that stores the mismatched portion when there is a mismatched portion in the data comparison unit 8.

【0012】アレイディスク制御装置は、データ転送部
4を介して、上位装置1と論理ディスク20を構成する
各物理ディスク21,22,23と接続されている。こ
こでは、物理ディスクは、物理ディスク1から物理ディ
スクNまでのN個設けられている。
The array disk control device is connected to the host device 1 and each of the physical disks 21, 22, 23 constituting the logical disk 20 via the data transfer unit 4. Here, N physical disks from physical disk 1 to physical disk N are provided.

【0013】ディスク転送部4は、上位装置1とのデー
タの転送を行い、キャッシュメモリ6へのデータの読み
取り/書き込み及び論理ディスク20へのデータの転送
を行う。キャッシュメモリは、物理ディスクよりアクセ
スが速い例えばRAM等の記憶媒体を使用する。
The disk transfer unit 4 transfers data to and from the host device 1, reads / writes data to / from the cache memory 6, and transfers data to the logical disk 20. The cache memory uses a storage medium, such as a RAM, which is faster to access than a physical disk.

【0014】データ比較部8は、上位装置から受け取っ
た書き込みデータがキャッシュメモリ6に格納されてい
る状態で、各物理ディスクに格納したデータを読み出し
てキャッシュメモリ6に格納されているデータと比較す
る。このとき、不一致部分があれば、正常に書き込まれ
ていないこととなる。そして、正常に書き込まれなかっ
た部分のデータが、どの物理ディスクに書き込まれたデ
ータであるかは、データ分割部3による分割ルールに基
づいて判明する。このため、比較したデータに不一致部
分があれば、不一致を生じさせた不正データがどの物理
ディスクに格納されていたかが判明する。
The data comparing section 8 reads the data stored in each physical disk in a state where the write data received from the host device is stored in the cache memory 6 and compares the data with the data stored in the cache memory 6. . At this time, if there is a mismatched portion, it means that writing has not been performed normally. Then, it is determined based on the division rule by the data division unit 3 which physical disk the data of the part that has not been normally written is the data that has been written. For this reason, if there is a mismatch in the compared data, it can be determined on which physical disk the incorrect data that caused the mismatch was stored.

【0015】従って、障害判定部10は、データ比較部
8で一致しない部分がある場合には当該一致しない部分
を記憶した物理ディスクに障害が発生したと判定する。
これにより、データの読み出しは可能ではあるが、正常
に書き込みが行われないような障害が発生した物理ディ
スクを特定し、復旧処理を行うことができる。すると、
長期に渡って読み出されないデータであっても、データ
の格納時に正確に格納されたか否かを確認するため、例
えば複数台の物理ディスクが同時に障害を有しデータの
復旧ができなくなる事態を防止することができる。ま
た、データの格納時に正常に書き込みができなかった物
理ディスクが特定されるため、当該物理ディスクの装置
番号等を上位装置に書き込み障害情報として通知するこ
とで、不正データが生じた環境を維持したまま不正デー
タが生じた原因を解明することができ、従って、長期に
渡った後に不正データが生じた場合と比較して、障害の
原因解明が容易となる。
Accordingly, when there is a part that does not match in the data comparing unit 8, the failure determining unit 10 determines that a failure has occurred in the physical disk storing the part that does not match.
As a result, it is possible to specify a physical disk in which a failure has occurred such that data can be read but writing cannot be performed normally, and recovery processing can be performed. Then
Even if data is not read for a long period of time, it is possible to check whether the data was stored correctly or not, for example, to prevent a situation in which multiple physical disks failed at the same time and the data could not be recovered can do. Also, since the physical disk that could not be written normally during data storage is specified, the environment in which illegal data has occurred is maintained by notifying the host device of the physical disk device number and the like as write failure information. The cause of the occurrence of the incorrect data can be clarified as it is, and therefore, the cause of the failure can be more easily clarified as compared with the case where the incorrect data occurs after a long period of time.

【0016】復旧処理部12は、障害判定部10によっ
て障害が発生した物理ディスクが特定されると、例え
ば、キャッシュメモリ6から不正データ部分を含む分割
データを読み出して、再書き込み処理を1回又は数回繰
り返し、再度キャッシュメモリに格納したデータと比較
することで不正データが生じたか否かを判定する。この
とき、当該不正データを生じさせた物理ディスクの異な
るセクタへ書き込みを行うようにしても良い。このよう
な再書き込みを行っても不正データが生じる場合には、
当該不正データを生じさせた物理ディスクを縮退させ
る。縮退処理は、他のデータ全ての復元を行った後、当
該物理ディスクを切り離す等の処理となる。
When the failure determining unit 10 identifies the failed physical disk, the recovery processing unit 12 reads the divided data including the invalid data portion from the cache memory 6 and performs the rewriting process once or It is repeated several times, and it is again compared with the data stored in the cache memory to determine whether or not illegal data has occurred. At this time, writing may be performed to a different sector of the physical disk in which the illegal data has occurred. If illegal data still occurs after such rewriting,
Degenerate the physical disk that caused the illegal data. The degeneration process is a process of restoring all other data and then disconnecting the physical disk.

【0017】図2は、上位装置(ホストプロセッサ)か
ら書き込みデータとして送信されるデータの分割の例を
示す説明図である。キャッシュメモリ6には、図2
(A)に示すようなホストプロセッサから受け取ったデ
ータをそのまま格納する。一方論理ディスクに記録する
データは、ホストプロセッデータから受け取ったデータ
をデータ分割部3で分割して各物理ディスク1(符号2
1)、物理ディスク2(符号22)、物理ディスクN
(符号23)に記録する。N台の物理ディスクで構成さ
れる論理ディスク20にデータを記録する場合、図2
(B)に示すように、データをN-1個に分割して分割デ
ータ1(符号31)、分割データ2(符号32)から分
割データN―2(符号33)、分割データN―1(符号
34)を生成する。そして、分割したデータのパリティ
データ35を生成する。図2(C)に示すように、各物
理ディスク1乃至Nには分割されたデータ1乃至N―1
と、生成したパリティデータ35が書き込まれる。デー
タを読みとる場合、分割したデータ1乃至N―1とパリ
ティデータ35を全て読みとり、パリティチェックを行
ってデータの妥当性を確認し、パリティデータ35を除
いたものをホストプロセッサ1に転送する。
FIG. 2 is an explanatory diagram showing an example of division of data transmitted as write data from a host device (host processor). In the cache memory 6, FIG.
The data received from the host processor as shown in FIG. On the other hand, the data to be recorded on the logical disk is obtained by dividing the data received from the host processor data by the data dividing unit 3 and rewriting each physical disk 1 (reference numeral 2).
1), physical disk 2 (reference numeral 22), physical disk N
(Reference numeral 23). When data is recorded on a logical disk 20 composed of N physical disks, FIG.
As shown in (B), the data is divided into N-1 pieces and divided data 1 (code 31), divided data 2 (code 32) to divided data N-2 (code 33), and divided data N-1 (code 31). Reference numeral 34) is generated. Then, parity data 35 of the divided data is generated. As shown in FIG. 2C, each of the physical disks 1 to N has divided data 1 to N-1.
Then, the generated parity data 35 is written. When reading the data, all the divided data 1 to N-1 and the parity data 35 are read, a parity check is performed to confirm the validity of the data, and the data excluding the parity data 35 is transferred to the host processor 1.

【0018】次に、図3を参照して図1に示したアレイ
ディスク制御装置を使用してアレイディスクを制御する
動作例を説明する。図3は本実施形態の動作例を示すフ
ローチャートである。まず、データ転送部4が、上位装
置(ホストプロセッサ)1から書き込みデータを受け取
り(ステップS1)、キャッシュメモリ6へ当該データ
を格納する(ステップS2)。さらに、データ分割部3
は、当該データを分割してパリティデータ35を生成す
る(ステップS3)。データ転送部4は、この分割デー
タ31乃至34及びパリティデータ35を各物理ディス
ク21乃至23へ格納する(ステップS4)。続いて、
データ転送部4は、ホストプロセッサ1へ格納完了報告
を行う(ステップS5,格納完了報告工程)。具体的に
は、格納完了報告を示すコマンドを上位装置の入出力イ
ンタフェースへ送信する。この上位装置への格納完了報
告は、実際に各物理ディスクにデータを格納した直後で
はなく、ステップS2のキャッシュメモリ6への格納が
完了した直後に行うようにしても良い。
Next, an example of an operation of controlling an array disk using the array disk control device shown in FIG. 1 will be described with reference to FIG. FIG. 3 is a flowchart illustrating an operation example of the present embodiment. First, the data transfer unit 4 receives write data from the host device (host processor) 1 (step S1), and stores the data in the cache memory 6 (step S2). Further, the data dividing unit 3
Generates the parity data 35 by dividing the data (step S3). The data transfer unit 4 stores the divided data 31 to 34 and the parity data 35 in each of the physical disks 21 to 23 (Step S4). continue,
The data transfer unit 4 reports the storage completion to the host processor 1 (step S5, storage completion reporting step). Specifically, a command indicating a storage completion report is transmitted to the input / output interface of the higher-level device. The storage completion report to the host device may be made immediately after the storage in the cache memory 6 in step S2 is completed, not immediately after the data is actually stored in each physical disk.

【0019】図3に示す例では、格納完了報告S5に続
いて、すなわち、上位装置を切り離した後、物理ディス
クに格納したデータとキャッシュメモリ6に格納されて
いるデータとの比較を行う(データ比較工程S6乃至S
8)。データ転送部4は、物理ディスクへ格納したデー
タを読み出す(ステップS7)。一方、データ比較部8
は、キャッシュメモリ6から同一データであったデータ
を読み出し、パリティデータを生成する(ステップS
8)。そして、データ比較部8は、この物理ディスクか
ら読み出したデータとキャッシュメモリ6に格納された
データとを比較する(ステップS9)。図3に示す例で
は、データ比較工程が、キャッシュメモリから読み出し
たデータのパリティデータを生成する工程を備えてい
る。これにより、パリティデータを格納したデータの不
正の有無を判定することができる。
In the example shown in FIG. 3, following the storage completion report S5, that is, after disconnecting the host device, the data stored in the physical disk is compared with the data stored in the cache memory 6 (data Comparison steps S6 to S
8). The data transfer unit 4 reads the data stored in the physical disk (Step S7). On the other hand, the data comparison unit 8
Reads the same data from the cache memory 6 and generates parity data (step S
8). Then, the data comparing unit 8 compares the data read from the physical disk with the data stored in the cache memory 6 (Step S9). In the example shown in FIG. 3, the data comparison step includes a step of generating parity data of data read from the cache memory. This makes it possible to determine whether or not the data storing the parity data is invalid.

【0020】両データの比較の結果、一致していれば書
き込みは正常に行われているため、データの書き込み処
理を終了し、一方、両データに相違点がある場合には、
当該一致しない部分を記憶した物理ディスクに障害が発
生したと判定する(ステップS10,障害判定工程)。
そして、一方、両データに相違点がある場合には、復旧
処理部12を起動して復旧処理を行う(ステップS1
1,復旧処理工程)。
As a result of comparison between the two data, if they match, the writing has been performed normally, so the data writing process is terminated. On the other hand, if there is a difference between the two data,
It is determined that a failure has occurred in the physical disk storing the inconsistent portion (step S10, failure determination step).
On the other hand, when there is a difference between the two data, the recovery processing unit 12 is activated to perform the recovery processing (step S1).
1, restoration processing step).

【0021】復旧処理工程S11は、当該障害と判定さ
れた物理ディスクに前記ディスクキャッシュに格納され
たデータを再書き込みする再書き込み工程や、当該障害
と判定された物理ディスクを縮退させて当該物理ディス
クの使用を不可とする縮退工程を備えると良い。
The recovery processing step S11 includes a rewriting step of rewriting data stored in the disk cache to the physical disk determined to be the failure, and a degeneration of the physical disk determined to be the failure and the physical disk It is preferable to provide a degeneration step for disabling the use of.

【0022】図3に示す例では、上位装置1への格納完
了報告S5が完了した直後に、物理ディスクへのデータ
の格納の直後にデータ比較工程を位置づけている。上位
装置1からのデータの書き込み要求及び再生要求(I/
O要求)が連続的であれば、図3に示すようにデータの
書き込みの直後にデータ比較工程を実施することが好ま
しい。一方、上位装置のI/O要求が間欠的であれば、
I/O要求を優先実行し、I/O要求の待機時間内を活
用してデータ比較工程を実施するようにしても良い。こ
の場合、本実施例ではキャッシュメモリ6に格納された
データを利用するため、このキャッシュメモリ6に格納
したデータを削除する前までには、データの比較を完了
させなければならない。
In the example shown in FIG. 3, the data comparison step is positioned immediately after the storage completion report S5 to the host device 1 is completed and immediately after the data is stored in the physical disk. A data write request and a data reproduction request (I /
If (O request) is continuous, it is preferable to execute the data comparison step immediately after writing the data as shown in FIG. On the other hand, if the I / O request of the host device is intermittent,
The I / O request may be preferentially executed, and the data comparison step may be performed using the waiting time of the I / O request. In this case, in this embodiment, since the data stored in the cache memory 6 is used, the comparison of the data must be completed before the data stored in the cache memory 6 is deleted.

【0023】図4は、キャッシュメモリ6からデータを
削除する直前までにデータ比較を行う処理例を示すフロ
ーチャートである。図4に示す例では、格納完了報告工
程S5に続いて、前記キャッシュメモリに格納されたデ
ータのうち上位装置からのアクセス頻度の低いデータを
選択する削除対象データ選択工程S24と、この削除対
象データ選択工程S24で選択されたデータについて前
記データ比較工程S9を実行させると共に前記障害判定
工程S10によって障害がないと判定された場合に当該
データを前記キャッシュメモリから削除する削除前比較
工程S27とを備えている。
FIG. 4 is a flowchart showing an example of processing for comparing data immediately before data is deleted from the cache memory 6. In the example shown in FIG. 4, following the storage completion reporting step S5, a deletion target data selection step S24 for selecting data with a low access frequency from the host device among the data stored in the cache memory, A pre-deletion comparison step S27 for executing the data comparison step S9 on the data selected in the selection step S24 and deleting the data from the cache memory when the failure determination step S10 determines that there is no failure. ing.

【0024】具体的には、まず、上位装置からのI/O
要求の有無を確認する(ステップS21)。I/O要求
が書き込みである場合、キャッシュメモリ6に十分な容
量が無ければ実行できなくなるため、キャッシュの容量
が十分であるか否かを確認する(ステップS22)。キ
ャッシュ容量が十分であれば、I/O処理を実行する
(ステップS23)。すなわち、データの書き込みが要
求されれば、図3に示すステップS1乃至S5を実行
し、データの読み出しを要求された場合には、キャッシ
ュメモリ6に該当するデータがあれば当該データを上位
装置に送信し、一方キャッシュメモリ6に該当するデー
タが無ければ物理ディスクからデータを読み出して復元
の上、上位装置に転送する。データ読み出し要求時に、
キャッシュメモリ6に当該データが格納されていた場合
には、当該データのアクセス頻度を示す値を増加させる
ようにすると良い。
Specifically, first, the I / O from the host device
The presence or absence of the request is confirmed (step S21). If the I / O request is a write, execution is not possible unless the cache memory 6 has a sufficient capacity, so it is confirmed whether or not the cache capacity is sufficient (step S22). If the cache capacity is sufficient, an I / O process is executed (step S23). That is, if data writing is requested, steps S1 to S5 shown in FIG. 3 are executed, and if data reading is requested, if there is corresponding data in the cache memory 6, the data is sent to the host device. On the other hand, if there is no corresponding data in the cache memory 6, the data is read from the physical disk, restored, and transferred to the host device. At the time of data read request,
When the data is stored in the cache memory 6, it is preferable to increase the value indicating the access frequency of the data.

【0025】上位装置からのI/O要求を待機している
場合や、キャッシュ容量が不十分である場合には、ま
ず、キャッシュメモリ6に格納されたデータの内、アク
セス頻度の低いデータを検索する(ステップS24)。
このデータの検索・特定は、削除すべきデータの特定で
あるため、アクセス頻度の他、一定時間経過したデータ
を選択するなど、アレイディスクの分野で一般的な他の
手法を採用することができる。
When waiting for an I / O request from a higher-level device or when the cache capacity is insufficient, first, the data stored in the cache memory 6 is searched for data having a low access frequency. (Step S24).
Since this data search / identification is the identification of data to be deleted, other methods common in the field of array disks, such as selecting data after a certain period of time, can be adopted in addition to access frequency. .

【0026】削除候補となるデータが特定されると、当
該データについて各ディスクに格納されたデータと比較
する(ステップS25)。すなわち、図3に示すステッ
プS6乃至S9を実行する。そして、両データが一致し
ていれば、当該データは正常に格納されているため、当
該キャッシュメモリに格納されたキャッシュデータを削
除する(ステップS27)。キャッシュメモリに十分な
空き容量がある場合には、削除可能であることを当該キ
ャッシュメモリを管理する図示しないキャッシュメモリ
管理部へ通知するようにしても良い。
When data to be deleted is specified, the data is compared with the data stored in each disk (step S25). That is, steps S6 to S9 shown in FIG. 3 are executed. If the two data match, the data is stored normally, and the cache data stored in the cache memory is deleted (step S27). If there is a sufficient free space in the cache memory, the fact that the cache memory can be deleted may be notified to a cache memory management unit (not shown) that manages the cache memory.

【0027】一方、データが一致しない場合には、図3
に復旧処理S11を実行する。
On the other hand, if the data does not match,
The recovery process S11 is executed.

【0028】上述したように本実施形態によると、キャ
ッシュ上のデータとディスクに書き込まれたデータを比
較することにより、上位装置からの書込データが複数の
物理ディスクすべてに正しく書き込まれたか否かを判定
することがき、すると、分割したデータの書き抜けを未
然に防ぐ事ができるようになる。
As described above, according to the present embodiment, by comparing the data on the cache with the data written on the disk, it is determined whether or not the write data from the host device has been correctly written on all of the plurality of physical disks. Then, it becomes possible to prevent write-through of the divided data beforehand.

【0029】[0029]

【発明の効果】本発明は以上のように構成され機能する
ので、これによると、障害判定工程が、データ比較工程
で一致しない部分がある場合には当該一致しない部分を
記憶した物理ディスクに障害が発生したと判定するた
め、各物理ディスク毎に不正データの発生の有無をデー
タの書き込み直後に確認することができ、すると、物理
ディスクの障害発生原因の解明が容易で且つ当該データ
を長期に渡って確実に保存することができ、しかも、キ
ャッシュメモリに格納されたデータと物理ディスクに格
納されたデータとを直接比較することで不正データを特
定するため、不正データが格納されていた物理ディスク
がどの物理ディスクであるかを即座に特定することがで
き、このため、障害復旧処理の選択肢が増え、例えば、
複数回再書き込みを行った後にデータの不正が解消しな
い場合に当該物理ディスクについて縮退処理を行うな
ど、物理ディスクの障害の早期発見及び早期復旧を図る
ことができる、という従来にない優れたアレイディスク
制御方法を提供することができる。
Since the present invention is constructed and functions as described above, according to this, when a failure determination step includes a part that does not match in the data comparison step, a failure occurs in the physical disk storing the mismatched part. Is determined, the presence or absence of occurrence of illegal data can be confirmed for each physical disk immediately after the data is written. Then, the cause of the physical disk failure can be easily clarified and the data can be transmitted for a long time. The physical disk on which the illegal data was stored because the illegal data was identified by directly comparing the data stored in the cache memory with the data stored on the physical disk. Can be immediately identified which physical disk is, which increases the options for disaster recovery processing, for example,
An unprecedented superior array disk that enables early detection and recovery of a physical disk failure, such as performing degeneration processing on the physical disk if data corruption still persists after multiple rewrites. A control method can be provided.

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

【図1】本発明の第一の実施形態の構成を示すブロック
図である。
FIG. 1 is a block diagram showing a configuration of a first embodiment of the present invention.

【図2】図1に示した各構成要素が扱うデータの構造を
示す説明図であり、図2(A)は上位装置から転送され
るデータの構造を示す図で、図2(B)はディスク分割
部によって生成されるデータの構造を示す図で、図2
(C)は各物理ディスクに格納されるデータの構造を示
す図である。
2A and 2B are explanatory diagrams showing the structure of data handled by each component shown in FIG. 1. FIG. 2A is a diagram showing the structure of data transferred from a higher-level device, and FIG. FIG. 2 is a diagram showing a structure of data generated by a disk dividing unit;
(C) is a diagram showing a structure of data stored in each physical disk.

【図3】図1に示した構成でのデータ書き込み処理の一
例を示すフローチャートである。
FIG. 3 is a flowchart illustrating an example of a data write process in the configuration illustrated in FIG. 1;

【図4】図1に示した構成での他のデータ書き込み処理
の例を示すフローチャートである。
FIG. 4 is a flowchart illustrating an example of another data writing process in the configuration illustrated in FIG. 1;

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

1 上位装置(ホストプロセッサ) 2 アレイディスク制御装置 3 データ分割部 4 データ転送部 6 キャッシュメモリ 8 データ比較部 10 障害判定部 12 復旧処理部 20 論理ディスク 21,22,23 論理ディスクを構成する物理ディス
DESCRIPTION OF SYMBOLS 1 High-order apparatus (host processor) 2 Array disk control apparatus 3 Data division part 4 Data transfer part 6 Cache memory 8 Data comparison part 10 Failure judgment part 12 Recovery processing part 20 Logical disk 21, 22, 23 Physical disk which comprises a logical disk

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G11B 20/18 501 G11B 20/18 501B 522 522Z 570 570Z 572 572B 572F ──────────────────────────────────────────────────続 き Continued on the front page (51) Int.Cl. 7 Identification symbol FI Theme coat ゛ (Reference) G11B 20/18 501 G11B 20/18 501B 522 522Z 570 570Z 572 572B 572F

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 論理ディスクを構成する複数台の物理デ
ィスクと、上位装置から送信されたデータを一時的に記
憶するキャッシュメモリと、前記上位装置から送信され
たデータを前記物理ディスクの台数に応じて分割すると
共に当該分割した分割データのパリティデータを生成す
るデータ分割部と、このデータ分割部によって生成され
た分割データ及びパリティデータを前記各物理ディスク
にそれぞれ格納するデータ転送部とを備えたディスクア
レイ装置を使用して上位装置から送信されたデータを格
納するディスクアレイ制御方法であって、 前記分割データ及びパリティデータの前記各物理ディス
クへの格納処理に前後して前記上位装置に格納完了報告
コマンドを送信する格納完了報告工程と、この格納完了
報告工程の後前記キャッシュメモリから当該格納完了報
告を行ったデータが削除されるまでの間に、前記各物理
ディスクから当該データを読み出して前記キャッシュメ
モリに格納された対応するデータと比較するデータ比較
工程と、このデータ比較工程で一致しない部分がある場
合には当該一致しない部分を記憶した物理ディスクに障
害が発生したと判定する障害判定工程とを備えたことを
特徴とするアレイディスク制御方法。
1. A plurality of physical disks constituting a logical disk, a cache memory for temporarily storing data transmitted from a higher-level device, and data transmitted from the higher-level device according to the number of the physical disks. A data dividing unit for generating parity data of the divided data, and a data transfer unit for storing the divided data and parity data generated by the data dividing unit in each of the physical disks. A disk array control method for storing data transmitted from a higher-level device using an array device, comprising: a storage completion report to the higher-level device before and after a process of storing the divided data and parity data in each of the physical disks A storage completion reporting step of transmitting a command, and after the storage completion reporting step, the cache A data comparing step of reading the data from each of the physical disks and comparing the data with the corresponding data stored in the cache memory until the data for which the storage completion report has been made is deleted from the storage device; A failure determination step of determining that a failure has occurred in a physical disk that stores the mismatched portion when there is a mismatched portion in the process.
【請求項2】 前記障害判定工程に続いて、当該障害と
判定された物理ディスクに前記ディスクキャッシュに格
納されたデータを再書き込みする再書き込み工程を備え
たことを特徴とする請求項1記載のアレイディスク制御
方法。
2. The method according to claim 1, further comprising a rewriting step of rewriting data stored in the disk cache to the physical disk determined to be the failure, following the failure determination step. Array disk control method.
【請求項3】 前記障害判定工程に続いて、当該障害と
判定された物理ディスクを縮退させて当該物理ディスク
の使用を不可とする縮退工程を備えたことを特徴とする
請求項1又は2記載のアレイディスク制御方法。
3. A degrading step following the failure judging step, wherein the physical disk determined to be the fault is degraded to disable use of the physical disk. Array disk control method.
【請求項4】 前記格納完了報告工程に続いて、前記キ
ャッシュメモリに格納されたデータのうち上位装置から
のアクセス頻度の低いデータを選択する削除対象データ
選択工程と、この削除対象データ選択工程で選択された
データについて前記データ比較工程を実行させると共に
前記障害判定工程によって障害がないと判定された場合
に当該データを前記キャッシュメモリから削除する削除
前比較工程とを備えたことを特徴とする請求項1記載の
アレイディスク制御方法。
4. A deletion target data selection step of selecting data with a low access frequency from a host device among the data stored in the cache memory following the storage completion report step, and a deletion target data selection step. And a pre-deletion comparison step of causing the data comparison step to be performed on the selected data and deleting the data from the cache memory when the failure determination step determines that there is no failure. Item 2. An array disk control method according to Item 1.
【請求項5】 上位装置から送信されたデータを一時的
に記憶するキャッシュメモリと、前記上位装置から送信
されたデータを物理ディスクの台数に応じて分割すると
共に当該分割した分割データのパリティデータを生成す
るデータ分割部と、このデータ分割部によって生成され
た分割データ及びパリティデータを前記各物理ディスク
にそれぞれ格納するデータ転送部とを備えると共に、 前記分割データ及びパリティデータとを各物理ディスク
に格納した後、当該前記各物理ディスクから当該データ
を読み出して前記キャッシュメモリに格納された対応す
るデータと比較するデータ比較部と、このデータ比較工
程で一致しない部分がある場合には当該一致しない部分
を記憶した物理ディスクに障害が発生したと判定する障
害判定部とを備えたことを特徴とするアレイディスク制
御装置。
5. A cache memory for temporarily storing data transmitted from a higher-level device, a cache memory for dividing data transmitted from the higher-level device in accordance with the number of physical disks, and parity data of the divided data. And a data transfer unit that stores the divided data and parity data generated by the data dividing unit in each of the physical disks, and stores the divided data and parity data in each of the physical disks. After that, a data comparison unit that reads the data from each of the physical disks and compares the read data with the corresponding data stored in the cache memory. A failure determination unit that determines that a failure has occurred in the stored physical disk Array disk control apparatus according to claim and.
JP32764299A 1999-11-18 1999-11-18 Method and device for controlling array disk Pending JP2001142650A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32764299A JP2001142650A (en) 1999-11-18 1999-11-18 Method and device for controlling array disk

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32764299A JP2001142650A (en) 1999-11-18 1999-11-18 Method and device for controlling array disk

Publications (1)

Publication Number Publication Date
JP2001142650A true JP2001142650A (en) 2001-05-25

Family

ID=18201344

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32764299A Pending JP2001142650A (en) 1999-11-18 1999-11-18 Method and device for controlling array disk

Country Status (1)

Country Link
JP (1) JP2001142650A (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7057981B2 (en) 2003-11-28 2006-06-06 Hitachi, Ltd. Disk array system and method for controlling disk array system
US7080201B2 (en) 2003-05-22 2006-07-18 Hitachi, Ltd. Disk array apparatus and method for controlling the same
JP2006221623A (en) * 2005-02-07 2006-08-24 Internatl Business Mach Corp <Ibm> Detection and recovery of lost writes in storage
US7373456B2 (en) 2004-01-16 2008-05-13 Hitachi, Ltd. Disk array apparatus and disk array apparatus controlling method
US7423354B2 (en) 2003-12-25 2008-09-09 Hitachi, Ltd. Storage system
US7457981B2 (en) 2004-02-04 2008-11-25 Hitachi, Ltd. Anomaly notification control in disk array
US7480765B2 (en) 2003-05-22 2009-01-20 Hitachi, Ltd. Storage unit and circuit for shaping communication signal
JP2009223367A (en) * 2008-03-13 2009-10-01 Fujitsu Ltd Control method and disk array device
EP2208914A2 (en) 2001-05-14 2010-07-21 Nissan Motor Co., Ltd. Auxiliary Transmission
CN112053652A (en) * 2019-06-05 2020-12-08 联咏科技股份有限公司 Timing controller device and data reading and writing method

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2208914A2 (en) 2001-05-14 2010-07-21 Nissan Motor Co., Ltd. Auxiliary Transmission
US7461203B2 (en) 2003-05-22 2008-12-02 Hitachi, Ltd. Disk array apparatus and method for controlling the same
US7080201B2 (en) 2003-05-22 2006-07-18 Hitachi, Ltd. Disk array apparatus and method for controlling the same
US8429342B2 (en) 2003-05-22 2013-04-23 Hitachi, Ltd. Drive apparatus and method for controlling the same
US8200898B2 (en) 2003-05-22 2012-06-12 Hitachi, Ltd. Storage apparatus and method for controlling the same
US8151046B2 (en) 2003-05-22 2012-04-03 Hitachi, Ltd. Disk array apparatus and method for controlling the same
US7685362B2 (en) 2003-05-22 2010-03-23 Hitachi, Ltd. Storage unit and circuit for shaping communication signal
US7587548B2 (en) 2003-05-22 2009-09-08 Hitachi, Ltd. Disk array apparatus and method for controlling the same
US7523258B2 (en) 2003-05-22 2009-04-21 Hitachi, Ltd. Disk array apparatus and method for controlling the same
US7480765B2 (en) 2003-05-22 2009-01-20 Hitachi, Ltd. Storage unit and circuit for shaping communication signal
US7447121B2 (en) 2003-11-28 2008-11-04 Hitachi, Ltd. Disk array system
US7203135B2 (en) 2003-11-28 2007-04-10 Hitachi, Ltd. Disk array system and method for controlling disk array system
US8468300B2 (en) 2003-11-28 2013-06-18 Hitachi, Ltd. Storage system having plural controllers and an expansion housing with drive units
US7453774B2 (en) 2003-11-28 2008-11-18 Hitachi, Ltd. Disk array system
US7057981B2 (en) 2003-11-28 2006-06-06 Hitachi, Ltd. Disk array system and method for controlling disk array system
US7200074B2 (en) 2003-11-28 2007-04-03 Hitachi, Ltd. Disk array system and method for controlling disk array system
US7865665B2 (en) 2003-11-28 2011-01-04 Hitachi, Ltd. Storage system for checking data coincidence between a cache memory and a disk drive
US7671485B2 (en) 2003-12-25 2010-03-02 Hitachi, Ltd. Storage system
US7423354B2 (en) 2003-12-25 2008-09-09 Hitachi, Ltd. Storage system
US8402211B2 (en) 2004-01-16 2013-03-19 Hitachi, Ltd. Disk array apparatus and disk array apparatus controlling method
US7373456B2 (en) 2004-01-16 2008-05-13 Hitachi, Ltd. Disk array apparatus and disk array apparatus controlling method
US7823010B2 (en) 2004-02-04 2010-10-26 Hitachi, Ltd. Anomaly notification control in disk array
US8015442B2 (en) 2004-02-04 2011-09-06 Hitachi, Ltd. Anomaly notification control in disk array
US7475283B2 (en) 2004-02-04 2009-01-06 Hitachi, Ltd. Anomaly notification control in disk array
US8365013B2 (en) 2004-02-04 2013-01-29 Hitachi, Ltd. Anomaly notification control in disk array
US7457981B2 (en) 2004-02-04 2008-11-25 Hitachi, Ltd. Anomaly notification control in disk array
US8108613B2 (en) 2005-02-07 2012-01-31 International Business Machines Corporation Detection and recovery of dropped writes in storage devices
JP2006221623A (en) * 2005-02-07 2006-08-24 Internatl Business Mach Corp <Ibm> Detection and recovery of lost writes in storage
JP2009223367A (en) * 2008-03-13 2009-10-01 Fujitsu Ltd Control method and disk array device
CN112053652A (en) * 2019-06-05 2020-12-08 联咏科技股份有限公司 Timing controller device and data reading and writing method

Similar Documents

Publication Publication Date Title
US6859888B2 (en) Data storage array apparatus storing error information without delay in data access, and method, program recording medium, and program for the same
US7143308B2 (en) Apparatus, system, and method for differential rebuilding of a reactivated offline RAID member disk
US7107486B2 (en) Restore method for backup
JP3348417B2 (en) Data recovery method in storage system
JP3316500B2 (en) Increase the number of drives in a RAID set while maintaining the integrity of the moved data
JP3458804B2 (en) Information recording apparatus and control method thereof
US20130254457A1 (en) Methods and structure for rapid offloading of cached data in a volatile cache memory of a storage controller to a nonvolatile memory
CN100495313C (en) Method for realizing disk redundant array reconstruction and disk redundant array
JP2001228980A (en) Controller for disk array
GB2414592A (en) Decreasing failed disk reconstruction time in a RAID data storage system
WO2020103512A1 (en) Data reconstruction method and device in storage system
JP2009187049A (en) apparatus
JP2001142650A (en) Method and device for controlling array disk
JP4454204B2 (en) Disk array control device and method, and disk array control program
US10664346B2 (en) Parity log with by-pass
US20150347224A1 (en) Storage control apparatus and method therefor
JP4939180B2 (en) Run initialization code to configure connected devices
US7577804B2 (en) Detecting data integrity
CN101828189A (en) Data storage method, apparatus and system for interrupted write recovery
JP3288724B2 (en) Method of tracking incomplete writes in a disk array, and disk storage system performing such a method
CN117744086A (en) Write vulnerability processing method, electronic equipment and storage medium
JP3845239B2 (en) Disk array device and failure recovery method in disk array device
JP2005149248A (en) Metadata restoration system, method thereof, storage device and program therefor
JPH10254634A (en) Storage device and storage device recovery means
JP2002123372A (en) Disk array device with cache memory, its error- controlling method and recording medium with its control program recorded thereon

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20021008