JPH09237165A - Disk array device - Google Patents
Disk array deviceInfo
- Publication number
- JPH09237165A JPH09237165A JP8045141A JP4514196A JPH09237165A JP H09237165 A JPH09237165 A JP H09237165A JP 8045141 A JP8045141 A JP 8045141A JP 4514196 A JP4514196 A JP 4514196A JP H09237165 A JPH09237165 A JP H09237165A
- Authority
- JP
- Japan
- Prior art keywords
- storage
- read
- unit
- data
- magnetic disk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、ディスクアレイ装
置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a disk array device.
【0002】[0002]
【従来の技術】情報機器の取り扱うデータ量は増大し、
大容量の記憶装置が求められている。このような大容量
の記憶装置としては、従来から、単体の磁気ディスク装
置を複数組み合わせたディスクアレイ装置があった。こ
のようなディスクアレイ装置は複数のユーザによって共
有されることが多いことから、耐故障性とメンテナンス
の容易性を高める必要がある。そのため、近年、例えば
RAID(Redundant Arrays of
Inexpensive Disks)に代表される方
式がそのディスクアレイ装置に用いられる様になった。2. Description of the Related Art The amount of data handled by information equipment has increased,
A large capacity storage device is required. As such a large-capacity storage device, there has conventionally been a disk array device in which a plurality of single magnetic disk devices are combined. Since such a disk array device is often shared by a plurality of users, it is necessary to improve fault tolerance and ease of maintenance. Therefore, in recent years, for example, RAID (Redundant Arrays of
A system represented by Inexpensive Disks has come to be used for the disk array device.
【0003】RAIDの概念は、米国カルフォルニア大
学バークレー校の研究チームによって発表された(D.A.
Patterson, et.al,"A Case for Redundant Arrays of I
nexpensive Disks(RAID)",ACM SIGMOG CONFERENCE(198
8))に記されている。それによれば、耐故障性とメンテ
ナンスの容易性で示される可用性、データ転送レート及
び要求レートで示される性能、及びコストの3つの組み
合わせによって、5通りの方式が提案されている。この
うち、RAID5と呼ばれる方式が一般に用いられつつ
ある。この方式は、データブロックの書き込みは、デー
タブロックをディスク装置のセクタ長の大きさの複数の
記憶単位、及びパリティブロックに変換し、それらを複
数のディスク装置に分配させて記憶させている。一方、
データブロックの読み出しは、ディスク装置に記憶され
ている一つのデータブロックに対応する複数の記憶単位
の全てを読み出し、その読出した全ての記憶単位を用い
てデータブロックを生成することにより、データブロッ
クの読み出しを行っている。The concept of RAID was announced by a research team at the University of California, Berkeley, USA (DA
Patterson, et.al, "A Case for Redundant Arrays of I
nexpensive Disks (RAID) ", ACM SIGMOG CONFERENCE (198
8)). According to this, five types of methods have been proposed according to the three combinations of availability indicated by fault tolerance and ease of maintenance, performance indicated by data transfer rate and required rate, and cost. Among them, the method called RAID 5 is generally used. In this method, when writing a data block, the data block is converted into a plurality of storage units each having a sector length of the disk device and a parity block, which are distributed and stored in the plurality of disk devices. on the other hand,
The reading of the data block is performed by reading all of the plurality of storage units corresponding to one data block stored in the disk device and generating the data block by using all the read storage units. It is reading.
【0004】[0004]
【発明が解決しようとする課題】ところで、近年の更な
る技術革新により、動画像などのリアルタイムデータが
他の情報機器で取り扱えるようになり、ディスクアレイ
装置においても更なる性能の向上が求められつつある。
特にVOD(Video On Demand)のような、動画像サー
バ等の用途に対しては、ディスクアレイ装置の読み出し
速度の更なる向上が必要である。By the way, due to recent technical innovation, real-time data such as moving images can be handled by other information devices, and further improvement in performance is demanded even in the disk array device. is there.
Especially for applications such as a moving image server such as VOD (Video On Demand), it is necessary to further improve the read speed of the disk array device.
【0005】しかしながら、従来のディスクアレイ装置
では、以下に示す理由により読み出し速度の向上を図る
点で問題があった。データブロックの読み出し速度に影
響を与える磁気ディスク装置単体のシーク時間や回転待
ち時間は、データブロックの各記憶単位の記憶位置や磁
気ヘッド位置に依存するため、各磁気ディスク装置毎に
異なることが多い。従って、データブロックの各記憶単
位の読み出し時間もまちまちとなることが多い。一方、
ディスクアレイ装置は、データブロックにおける全ての
記憶単位が読み出されるのを待ってからデータブロック
を生成することによりデータブロックの読み出しを行っ
ている。そのため、一つでも記憶単位の読み出しが他の
記憶単位に対して遅れると、その記憶単位の属するデー
タブロックの生成ができずデータブロックの読み出しが
遅れる。However, the conventional disk array device has a problem in improving the read speed for the following reason. Since the seek time and the rotation waiting time of the magnetic disk device alone, which affects the reading speed of the data block, depend on the storage position of each storage unit of the data block and the magnetic head position, and thus are often different for each magnetic disk device. . Therefore, the reading time of each storage unit of the data block often varies. on the other hand,
The disk array device waits until all the storage units in the data block have been read, and then creates the data block to read the data block. Therefore, if the reading of one storage unit is delayed with respect to the other storage units, the data block to which the storage unit belongs cannot be generated, and the reading of the data block is delayed.
【0006】そこで、本願発明は、データブロックの各
記憶単位の読み出し時間がまちまちな場合でも、データ
ブロックの読み出し速度を向上させることができるディ
スクアレイ装置を提供することを目的とする。Therefore, it is an object of the present invention to provide a disk array device capable of improving the read speed of a data block even when the read time of each storage unit of the data block varies.
【0007】[0007]
【課題を解決するための手段】この課題を解決するため
本発明は、読み出し命令発行手段は、データブロックを
読み出す際には、さらに、パリティブロックをも読み出
す読み出し命令を発行し、制御装置は、さらに、複数の
記憶装置から所定数の記憶単位が制御装置に読み出され
たことを判定する第1の判定手段と、前記第1の判定手
段で所定数の記憶単位が読み出されたと判定された場合
で、その記憶単位の中にパリティブロックが含まれてい
るか否かを判定する第2の判定手段と、前記第2の判定
手段でパリティブロックが含まれていると判定されたと
き、読み出されていないデータユニットを、欠落してい
るデータユニットとみなして、復号手段にそのデータユ
ニットを生成させるよう指示する指示手段とを備えたこ
とを特徴とする。In order to solve this problem, the present invention provides a read command issuing means which, when reading a data block, issues a read command which also reads a parity block. Furthermore, it is determined that a predetermined number of storage units have been read from the plurality of storage devices by the control device, and that the first determination unit has read the predetermined number of storage units. In the case where the storage unit includes a parity block, the second determination unit determines whether the storage unit includes a parity block, and when the second determination unit determines that the parity block is included, the reading is performed. The data unit that has not been issued is regarded as a missing data unit, and an instruction unit that instructs the decoding unit to generate the data unit is provided.
【0008】[0008]
【発明の実施の形態】請求項1に記載の発明は、複数の
記憶装置と、これを制御する制御装置とを備え、前記制
御装置は、データブロックを書き込む際に、そのデータ
ブロックを2以上の所定数のデータユニットに分割し、
かつ欠落したデータユニット生成用のパリティブロック
を生成し、さらにその所定数のデータユニット及びパリ
ティブロックのそれぞれを記憶単位として前記複数の記
憶装置に分配して記憶させる符号化処理を行う符号化手
段と、データブロックを読み出す際には、前記複数の記
憶装置に対して前記所定数のデータユニットを読み出す
読み出し命令を発行する読み出し命令発行手段と、前記
読み出し命令に応じて読み出された前記所定数のデータ
ユニットから1つのデータブロックを生成する複号化処
理を行う復号化手段とを備え、前記符号化手段及び復号
化手段は、所定数のデータユニットのうち一のデータユ
ニットが欠落しても、パリティブロックと読み出した他
のデータユニットとを用いて、前記符号化手段が欠落し
たデータユニットを生成することにより完全なデータブ
ロックを生成することができる符号化方式を用いたディ
スクアレイ装置であって、前記読み出し命令発行手段
は、データブロックを読み出す際には、さらに、パリテ
ィブロックをも読み出す読み出し命令を発行し、前記制
御装置は、さらに、前記複数の記憶装置から所定数の記
憶単位が前記制御装置に読み出されたことを判定する第
1の判定手段と、前記第1の判定手段で所定数の記憶単
位が読み出されたと判定された場合で、その記憶単位の
中にパリティブロックが含まれているか否かを判定する
第2の判定手段と、前記第2の判定手段でパリティブロ
ックが含まれていると判定されたとき、読み出されてい
ないデータユニットを、欠落しているデータユニットと
みなして、前記復号手段にそのデータユニットを生成さ
せるよう指示する指示手段とを備えたことを特徴とし、
以下に示す作用をなす。読み出し命令発行手段は、デー
タユニットのみならず、パリティブロックに対しても読
み出し命令を発行する。読み出し命令を受けた記憶装置
は、読み出した記憶単位を制御装置に対して送る。制御
装置の第1の判定手段は、複数の記憶装置に記憶されて
いる所定数に1加えた数の記憶単位のうち、所定数の数
の記憶単位が読み出されたことを判定する。第2の判定
手段は、前記第1の判定手段で所定数の記憶単位が読み
出されたと判定された場合で、その記憶単位の中にパリ
ティブロックが含まれているか否かを判定する。指示手
段は、第2の判定手段でパリティブロックが含まれてい
ると判定されたとき、読み出されていないデータユニッ
トを、欠落しているデータユニットとみなして、前記復
号手段にそのデータユニットを生成させるよう指示す
る。指示を受けた複号手段は、その未読み出しのデータ
ユニットを生成し、その後データブロックを生成し、外
部に出力する。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The invention according to claim 1 is provided with a plurality of storage devices and a control device for controlling the storage devices, and the control device writes two or more data blocks when writing the data blocks. Divided into a predetermined number of data units,
And a coding unit for performing a coding process for generating a missing data unit generation parity block and further distributing and storing each of the predetermined number of data units and parity blocks as a storage unit in the plurality of storage devices. When reading a data block, a read command issuing means for issuing a read command for reading the predetermined number of data units to the plurality of storage devices, and the predetermined number of read units according to the read command. And a decoding means for performing a decoding process for generating one data block from the data unit, wherein the encoding means and the decoding means include one data unit out of a predetermined number of data units, A data unit in which the encoding means is missing by using a parity block and another read data unit. A disk array device using an encoding method capable of generating a complete data block by generating the read command issuing means, when reading the data block, further reading a parity block. The control device further includes a first determination unit that determines that a predetermined number of storage units have been read by the control device from the plurality of storage devices, and a first determination unit. When it is determined that a predetermined number of storage units have been read, a second determination unit that determines whether or not a parity block is included in the storage unit, and the parity block by the second determination unit When it is determined that the data unit that has not been read out is regarded as a missing data unit, the data is read by the decoding means. Characterized by comprising an instruction unit that instructs to generate a knit,
The following actions are performed. The read command issuing means issues a read command not only to the data unit but also to the parity block. The storage device that has received the read command sends the read storage unit to the control device. The first determination means of the control device determines that a predetermined number of storage units have been read out of the storage units of one number added to the predetermined number stored in the plurality of storage devices. The second determining unit determines whether or not a parity block is included in the storage unit when the first determining unit determines that a predetermined number of storage units have been read. When the second determining means determines that the parity block is included, the instructing means regards the data unit that has not been read as a missing data unit, and causes the decoding means to identify the missing data unit. Instruct to generate. The decoding means that has received the instruction generates the unread data unit, then generates the data block, and outputs it to the outside.
【0009】請求項2に記載の発明は、前記記憶装置は
磁気ディスク装置であり、前記符号化手段は、前記複数
の記憶装置に記憶させる一つのデータブロックに対応す
る各記憶単位の記憶位置を、各記憶装置毎に異なる位置
なるように算出する記憶位置算出手段と、前記記憶位置
算出手段で算出された記憶位置に、一つのデータブロッ
クに対応する各記憶単位を記憶させる記憶手段とをを備
えたことを特徴とし、以下に示すの作用をなす。記憶位
置算出手段は、複数の磁気ディスク装置に記憶させる一
つのデータブロックに対応する各記憶単位の記憶位置
を、各磁気ディスク装置毎に異なる位置なるように算出
する。従って、記憶手段は、その算出された記憶位置に
従って、一つのデータブロックに対応する各記憶単位の
記憶位置を各磁気ディスク装置毎に異なるように記憶さ
せる。According to a second aspect of the present invention, the storage device is a magnetic disk device, and the encoding means stores a storage position of each storage unit corresponding to one data block stored in the plurality of storage devices. A storage position calculating unit that calculates a different position for each storage device, and a storage unit that stores each storage unit corresponding to one data block in the storage position calculated by the storage position calculating unit. It is characterized by having the following functions. The storage position calculating means calculates the storage position of each storage unit corresponding to one data block to be stored in the plurality of magnetic disk devices so that the storage position is different for each magnetic disk device. Therefore, the storage means stores the storage position of each storage unit corresponding to one data block differently for each magnetic disk device according to the calculated storage position.
【0010】請求項3に記載の発明は、前記磁気ディス
ク装置は、記憶単位の読み出しに先立ち、磁気ディスク
部から読み出した記憶単位を一時格納するキャッシュメ
モリを備え、前記制御装置は、さらに、記憶単位の読み
出しに先立ち、記憶単位をキャッシュメモリに一時格納
させるキャッシュメモリ読み出し要求を発行するキャシ
ュメモリ読み出し要求発行手段と、前記磁気ディスク装
置のキャッシュメモリに所定数の記憶単位が一時格納さ
れたことを判定するキャッシュメモリ読み出し判定手段
と、前記読み出し命令発行手段は、キャッシュメモリ読
み出し判定手段によって、前記磁気ディスク装置のキャ
ッシュメモリに所定数の記憶単位が一時格納されたと判
定された時点に、前記磁気ディスク装置に対して読み出
し命令を発行することを特徴とし、以下に示す作用をな
す。キャッシュメモリ読み出し要求発行手段は、記憶単
位の読み出しに先立ち、キャッシュメモリ読み出し要求
を発行する。キャッシュメモリ読み出し判定手段は、磁
気ディスク装置のキャッシュメモリに所定数の記憶単位
が一時格納されたことを判定する。読み出し命令発行手
段は、キャッシュメモリ読み出し判定手段によって、磁
気ディスク装置のキャッシュメモリに所定数の記憶単位
が一時格納されたと判定された時点に、磁気ディスク装
置に対して読み出し命令を発行する。According to a third aspect of the present invention, the magnetic disk device includes a cache memory for temporarily storing the storage unit read from the magnetic disk unit before reading the storage unit, and the control device further stores Prior to reading a unit, a cache memory read request issuing means for issuing a cache memory read request for temporarily storing a storage unit in a cache memory, and a predetermined number of storage units temporarily stored in the cache memory of the magnetic disk device. The cache memory read determination means and the read command issuing means determine the magnetic disk at the time when the cache memory read determination means determines that a predetermined number of storage units are temporarily stored in the cache memory of the magnetic disk device. Issue a read command to the device Characterized the door, an action described below. The cache memory read request issuing means issues a cache memory read request prior to reading a storage unit. The cache memory read determination means determines that a predetermined number of storage units have been temporarily stored in the cache memory of the magnetic disk device. The read command issuing means issues a read command to the magnetic disk device when the cache memory read determining means determines that a predetermined number of storage units have been temporarily stored in the cache memory of the magnetic disk device.
【0011】請求項4に記載の発明は、前記制御装置
は、さらに、キャッシュメモリ読み出し判定手段によっ
て前記磁気ディスク装置のキャッシュメモリに所定数の
記憶単位が一時格納されたと判定された時点に前記キャ
ッシュメモリに記憶単位が格納されていない磁気ディス
ク装置に対して、発行されているキャシュメモリ読み出
し要求を取り消すキャシュメモリ読み出し要求取り消し
手段を備えたことを特徴とし、以下に示す作用をなす。
キャッシュメモリ読み出し要求取り消し手段は、キャッ
シュメモリ読み出し判定手段によって磁気ディスク装置
のキャッシュメモリに所定数の記憶単位が一時格納され
たと判定された時点にキャッシュメモリに記憶単位が格
納されていない磁気ディスク装置に対して、発行されて
いるキャシュメモリ読み出し要求を取り消す。According to a fourth aspect of the present invention, the control device further comprises the cache memory read determination means when the cache memory read determination means determines that a predetermined number of storage units have been temporarily stored in the cache memory. The cache memory read request canceling means for canceling the issued cache memory read request for the magnetic disk device in which the memory unit is not stored in the memory is provided, and the following operation is performed.
The cache memory read request canceling unit is provided to the magnetic disk device whose storage unit is not stored in the cache memory when the cache memory read determining unit determines that a predetermined number of storage units are temporarily stored in the cache memory of the magnetic disk device. On the other hand, the issued cache memory read request is canceled.
【0012】請求項5記載の発明は、前記ディスクアレ
イ装置は、データブロックに1対1に対応するID番号
を用いて、読み出し対象のデータブロックを特定するも
のであって、前記記憶位置決定手段は、前記ID番号
と、磁気ディスク装置の記憶領域とに対応し、かつ各磁
気ディスク装置ごとに異なった値をとる擬似乱数を算出
する擬似乱数算出手段と、前記ID番号に基づいて前記
複数の磁気ディスク装置毎に擬似乱数を算出するよう前
記擬似乱数算出手段に指示し、その算出された擬似乱数
をID番号で特定されるデータブロックに対応する各記
憶単位の記憶位置とする記憶位置算出指示手段を備えた
ことを特徴とし、以下に示す作用をなす。擬似乱数算出
手段は、ID番号と、磁気ディスク装置の記憶領域とに
対応し、かつ各磁気ディスク装置ごとに異なった値をと
る擬似乱数を算出する。記憶位置算出指示手段は、ID
番号に基づいて複数の磁気ディスク装置毎に擬似乱数を
算出するよう擬似乱数算出手段に指示し、その算出され
た擬似乱数をID番号で特定されるデータブロックに対
応する各記憶単位の記憶位置とする。According to a fifth aspect of the present invention, the disk array device specifies a data block to be read by using an ID number corresponding to the data block in a one-to-one correspondence. Is a pseudo-random number calculating means for calculating a pseudo-random number corresponding to the ID number and the storage area of the magnetic disk device and having a different value for each magnetic disk device; A storage position calculation instruction that instructs the pseudo random number calculation means to calculate a pseudo random number for each magnetic disk device, and uses the calculated pseudo random number as the storage position of each storage unit corresponding to the data block specified by the ID number. It is characterized by having means, and has the following operation. The pseudo-random number calculating means calculates a pseudo-random number that corresponds to the ID number and the storage area of the magnetic disk device and has a different value for each magnetic disk device. The storage position calculation instruction means is an ID
The pseudo-random number calculation means is instructed to calculate a pseudo-random number for each of the plurality of magnetic disk devices based on the number, and the calculated pseudo-random number is set as a storage position of each storage unit corresponding to the data block specified by the ID number. To do.
【0013】請求項6記載の発明は、前記擬似乱数算出
手段は、ID番号に対応した一つの擬似乱数を算出し、
前記記憶位置算出指示手段は、その一つの擬似乱数の位
相を変えて、ID番号で特定されるデータブロックに対
応する各記憶単位の記憶位置とすることを特徴とし、以
下に示す作用をなす。擬似乱数算出手段は、ID番号に
対応した一つの擬似乱数を算出する。記憶位置算出指示
手段は、その一つの擬似乱数の位相を変えて、ID番号
で特定されるデータブロックに対応する各記憶単位の記
憶位置とする。According to a sixth aspect of the present invention, the pseudo random number calculating means calculates one pseudo random number corresponding to an ID number,
The storage position calculation instructing means is characterized in that the phase of the one pseudo random number is changed to set the storage position of each storage unit corresponding to the data block specified by the ID number, and has the following operation. The pseudo random number calculating means calculates one pseudo random number corresponding to the ID number. The storage position calculation instructing means changes the phase of the one pseudo-random number and sets it as the storage position of each storage unit corresponding to the data block specified by the ID number.
【0014】(実施の形態)図1は、本発明の実施の形
態におけるディスクアレイ装置の構成図である。当該デ
ィスクアレイ装置は、制御装置100と、5つの磁気デ
ィスク装置201、202、・・205とから構成され
ている。制御装置100は、符号化手段101と、記憶
位置算出手段102と、書き込み手段103と、読み出
し手段104と、判定指示手段105と、複号化手段1
06とから構成される。当該制御装置100は、外部か
らのID番号で識別されるデータブロックの書き込み/
読み出し要求に従って、各磁気ディスク装置201、2
02、・・205を制御する。ここでID番号は、例え
ば0から最大値M−1までの連続した整数の値をとる。
当該制御装置100の構成は、一般的なRAID5のデ
ィスクアレイ装置の構成とほぼ同じである。異なってい
るのは、読み出し手段104及び複号化手段106の機
能と、判定指示手段105が新たに設けられている点で
ある。(Embodiment) FIG. 1 is a block diagram of a disk array device according to an embodiment of the present invention. The disk array device is composed of a control device 100 and five magnetic disk devices 201, 202, ... 205. The control device 100 includes an encoding unit 101, a storage position calculating unit 102, a writing unit 103, a reading unit 104, a determination instructing unit 105, and a decoding unit 1.
And 06. The control device 100 writes / writes a data block identified by an ID number from the outside.
According to the read request, each magnetic disk device 201, 2
02, ..., 205 are controlled. Here, the ID number is, for example, a continuous integer value from 0 to the maximum value M-1.
The configuration of the control device 100 is almost the same as the configuration of a general RAID 5 disk array device. The difference is that the functions of the reading means 104 and the decoding means 106 and the determination instruction means 105 are newly provided.
【0015】符号化手段101は、外部から受け取った
ID番号で識別されるデータブロックを4つのデータユ
ニットに分割する。さらに欠落したデータユニットの生
成用のパリティブロックを、分割したデータユニット間
の排他的論理和をビット毎に計算することにより算出す
る。この算出されたパリティブロックの大きさは分割さ
れたデータユニットの大きさと同じである。従って、デ
ータユニットを1記憶単位とすると、データユニットに
パリティブロックを加えた計5つの記憶単位が生成され
ることとなる。パリティブロックは奇数パリティ、偶数
パリティのどちらでも良い。また、外部から書き込み要
求の際に受け取るデータブロックの大きさは常に固定で
あり、データユニット4つ分の大きさである。The encoding means 101 divides the data block identified by the ID number received from the outside into four data units. Further, the parity block for generating the missing data unit is calculated by calculating the exclusive OR between the divided data units bit by bit. The size of the calculated parity block is the same as the size of the divided data unit. Therefore, assuming that the data unit is one storage unit, a total of five storage units are generated by adding the parity block to the data unit. The parity block may be either odd parity or even parity. Further, the size of the data block received at the time of a write request from the outside is always fixed and is the size of four data units.
【0016】記憶位置算出手段102は、符号化手段1
01で求められたデータユニット及びパリティブロック
の計5つの記憶単位を、5つの磁気ディスク装置20
1、202、・・205に分配させて記憶させる各磁気
ディスク装置201における記憶位置を算出する。例え
ば、各磁気ディスク装置における記憶位置は、以下のよ
うに求める。外部から受け取ったデータブロックのID
番号Xから、擬似的な乱数を発生させるための式である
式の値Aをもとめ、その値AをID番号の総数Mで割
り、その余りをその磁気ディスク装置の記憶位置として
算出する。The storage position calculating means 102 is an encoding means 1.
A total of five storage units of the data unit and the parity block obtained in 01 are stored in five magnetic disk devices 20.
The storage position in each magnetic disk device 201 to be distributed and stored in 1, 202, ... 205 is calculated. For example, the storage position in each magnetic disk device is obtained as follows. ID of data block received from outside
From the number X, a value A of an expression for generating a pseudo random number is obtained, the value A is divided by the total number M of ID numbers, and the remainder is calculated as a storage position of the magnetic disk device.
【0017】A=(αX+β)…………… ここで因子α、βは、磁気ディスク装置毎に定められて
いる整数で、少なくとも因子αはID番号の総数Mと互
いに素な関係にあり、各磁気ディスク装置毎に異なる整
数である。書き込み手段103は、符号化手段101で
分割され又は生成された、データユニット及びパリティ
ブロックを、記憶位置算出手段102で算出された記憶
位置に基づいて各磁気ディスク装置201、202、・
・205に書き込ませる。A = (αX + β) ... Here, the factors α and β are integers determined for each magnetic disk device, and at least the factor α has a coprime relationship with the total number M of ID numbers, It is an integer that differs for each magnetic disk device. The writing unit 103 divides the data unit and the parity block divided or generated by the encoding unit 101 into the magnetic disk devices 201, 202, ..., Based on the storage positions calculated by the storage position calculating unit 102.
・ Write to 205.
【0018】読み出し手段104は、外部からのあるI
D番号のデータブロックの読み出し要求に基づいて、そ
のデータブロックを構成するデータユニットのみならず
パリティブロックの読み出し命令をも、磁気ディスク装
置201、202、・・205に対して発行する。当該
読み出し手段104は、外部から受けとったデータブロ
ックのID番号を用い、記憶位置算出手段102に記憶
位置を算出させて読み出し命令を発行する。The reading means 104 is provided with an external I
Based on the read request for the data block of the D number, a read command for not only the data units forming the data block but also the parity block is issued to the magnetic disk devices 201, 202, ... 205. The read means 104 uses the ID number of the data block received from the outside to cause the storage position calculation means 102 to calculate the storage position and issue a read command.
【0019】判定指示手段105は、読み出し命令に基
づいて、磁気ディスク装置201、202、・・205
から5つの記憶単位のうち読み出された記憶単位数が4
つ揃うまで待つ。読み出された記憶単位数が4つ揃った
時点で、その4つの記憶単位がデータユニット3つとパ
リティブロックとであるか、或はデータユニット4つで
あるかを判定する。The judgment instructing means 105 is based on the read command, and the magnetic disk devices 201, 202, ... 205.
Out of the 5 storage units, the number of read storage units is 4
Wait until you get together. When the number of read storage units is four, it is determined whether the four storage units are three data units and a parity block or four data units.
【0020】複号化手段106は、読み出された4つの
記憶単位から元のデータブロックを生成し、外部に出力
する。データブロックの生成は具体的には、以下の通り
である。先ず、読み出された4つの記憶単位が前記判定
指示手段105によりデータユニット3つとパリティブ
ロックとであると判定された場合は、読み出されていな
い1つのデータユニットを、読み出された他の3つのデ
ータユニットとパリティブロックとを用いて生成する。
次にこのようにして生成されたデータユニット1つを含
む4つのデータユニットを用いデータブロックを生成す
る。次に、読み出された4つの記憶単位が判定指示手段
105によりデータユニット4つであると判定された場
合は、そのままその4つのデータユニットを用いてデー
タブロックを生成する。The decoding means 106 generates an original data block from the read four storage units and outputs it to the outside. The data block generation is specifically as follows. First, if the determination instructing means 105 determines that the four read storage units are the three data units and the parity block, one unread data unit is read as another read data unit. It is generated using three data units and a parity block.
Next, a data block is generated using four data units including one data unit thus generated. Next, when the determination instruction unit 105 determines that the four read storage units are four data units, the four data units are used as they are to generate a data block.
【0021】磁気ディスク装置201、202、・・2
05は、符号化手段101で生成されたデータブロック
のデータユニット及びパリティブロックを記憶する。ま
た、読み出し手段104からのデータユニットやパリテ
ィブロックの読み出し命令を受け、データユニットやパ
リティブロックを読み出し制御装置100に送る。以上
のように構成されたディスクアレイ装置について、図2
に示すフローチャートを用いてデータブロックの読み出
しの動作を説明する。Magnetic disk devices 201, 202, ... 2
05 stores the data unit and parity block of the data block generated by the encoding means 101. Further, it receives a read command of the data unit or the parity block from the read means 104 and sends the data unit or the parity block to the read control device 100. FIG. 2 shows the disk array device configured as described above.
The operation of reading a data block will be described with reference to the flowchart shown in FIG.
【0022】先ず、読み出すべきデータブロックのID
番号に基づいて、磁気ディスク装置201、202、・
・・205内に記憶されているデータユニットやパリテ
ィブロックの記憶位置を、記憶位置算出手段102が算
出する(ステップS1)。次に、読み出し手段104
は、その算出された記憶位置に基づいて、各磁気ディス
ク装置201、202、・・205に対して、データユ
ニット又はパリティブロックの読み出し命令を発行する
(ステップS2)。読み出し命令を受けた磁気ディスク
装置201、202、・・205は、読み出し対象のデ
ータユニットやパリティブロックを読み出せた順に、制
御装置100に対して送る。制御装置100の判定指示
手段105は、順次、送られてきたデータユニットが4
つ揃ったか否かを判定する(ステップS3)。データユ
ニットが4つ揃っていない場合は、次に、データユニッ
トの4つのうち何れか3つのデータユニットとパリティ
ブロックとが揃ったか否かを判定する(ステップS
4)。ここで、データユニット3つとパリティブロック
とが揃ったと判定された場合は、複号化手段106は、
読出されていない1つのデータユニットを生成する(ス
テップS5)。具体的には、読み出された3つのデータ
ユニットとパリティブロックとを用いて、未読み出しの
データユニットを生成する。次に、複号化手段106
は、生成したデータユニットを含む4つのデータユニッ
トから、元のデータブロックを生成し(ステップS
6)、そのデータブロックを外部に出力する(ステップ
S7)。First, the ID of the data block to be read
Based on the numbers, the magnetic disk devices 201, 202, ...
.. The storage position calculating unit 102 calculates the storage positions of the data units and parity blocks stored in 205 (step S1). Next, the reading means 104
Issues a read command of a data unit or parity block to each of the magnetic disk devices 201, 202, ... 205 based on the calculated storage position (step S2). The magnetic disk devices 201, 202, ... 205, which have received the read command, send the data units or parity blocks to be read to the control device 100 in the order in which they can be read. The determination instructing means 105 of the control device 100 sequentially receives the data units of 4 units.
It is determined whether all the items have been collected (step S3). If four data units are not available, then it is determined whether or not any three data units out of the four data units and the parity block are available (step S).
4). Here, when it is determined that the three data units and the parity block are aligned, the decoding means 106
One data unit that has not been read is generated (step S5). Specifically, an unread data unit is generated using the read three data units and the parity block. Next, the decoding means 106
Generates an original data block from four data units including the generated data unit (step S
6) The data block is output to the outside (step S7).
【0023】一方、ステップS3にて、データユニット
が4つ揃ったと判定された場合は、従来のRAID5の
ディスクアレイ装置と同様に、複号化手段106は、4
つのデータユニットから、元のデータブロックを生成し
(ステップSS6)、そのデータブロックを外部に出力
する(ステップS7)。以上に示した様に本実施の形態
におけるディスクアレイ装置は、各磁気ディスク装置の
うち、記憶単位の読み出し命令を受けてから実際にデー
タを出力し始めるまでの読み出し遅延時間が最大である
記憶単位を、データブロックの読み出しには必要としな
いので、全体としてディスクアレイ装置の読み出し時間
を高速にすることができる。勿論、ディスクアレイ装置
の本来の機能である、1つの記憶単位を損失した時や1
台の磁気ディスク装置が故障した場合でも動作するとい
う可用性は、本実施の形態でも失われていない。On the other hand, when it is determined in step S3 that four data units have been prepared, the decoding means 106 determines that four data units are available, as in the conventional RAID5 disk array device.
An original data block is generated from one data unit (step SS6), and the data block is output to the outside (step S7). As described above, the disk array device according to the present embodiment is the storage unit having the maximum read delay time from the reception of the storage unit read command to the actual output of data among the magnetic disk devices. Since it is not necessary for reading the data block, the reading time of the disk array device can be shortened as a whole. Of course, when one storage unit is lost, which is the original function of the disk array device,
The availability of operating even if one of the magnetic disk devices fails is not lost in this embodiment.
【0024】また、本実施の形態では、1つのデータブ
ロックに対応する複数の記憶単位は、擬似的な乱数を発
生させる式を用いて、各磁気ディスク装置における記憶
位置が記憶単位毎に異なるように記憶されている。従っ
て、データブロックにおける記憶単位全てが一様に早く
に読み出されたり、記憶単位の全てが一様に遅くに読み
出されることはない。よって、複数のデータブロックを
読み出す場合であっても、データブロックによって極端
に早くに読み出されるものや極端に遅くに読み出される
ものは生じにくく、ほぼ一定の時間となり、複数のデー
タブロックを読み出す際のデータブロック間の読み出し
時間のばらつきを抑えることができる。Further, in the present embodiment, a plurality of storage units corresponding to one data block are made to have different storage positions in each magnetic disk device by using a formula for generating a pseudo random number. Remembered in. Therefore, all storage units in the data block are not uniformly and early read, and all storage units are not uniformly and lately read. Therefore, even when reading a plurality of data blocks, it is unlikely that some of the data blocks will be read extremely quickly or some will be read very slowly, and the time will be almost constant, and when reading a plurality of data blocks. It is possible to suppress variations in read time between data blocks.
【0025】尚、記憶位置算出手段102は、α、βの
値を5通り、つまり各磁気ディスク装置毎に変えて数式
を適用することにより各磁気ディスク装置毎に異なっ
た記憶位置を算出しているが、ある一つの固定的なα、
βの値を用い、位相のみを変えることにより、各磁気デ
ィスク装置毎に異なった記憶位置を算出することとして
もよい。The storage position calculating means 102 calculates different storage positions for each magnetic disk device by applying five different values of α and β, that is, for each magnetic disk device and applying a mathematical formula. There is one fixed α,
By using the value of β and changing only the phase, different storage positions may be calculated for each magnetic disk device.
【0026】また、記憶位置算出手段102は、擬似的
な乱数を発生させるための式を用いて記憶位置を算出
したが、この式に限らず、例えば、0〜M−1の値の
範囲内で擬似乱数を発生させることができる式を用いて
も良い。また、数式を用いず、乱数表を用いて記憶位置
を算出しても良い。また、本実施の形態では、記憶装置
として磁気ディスク装置を用いたが、これに限らず、読
み出し要求に対する応答の遅延時間が固定的ではない記
憶装置であるなら他の種類の記憶装置であってもよい。Further, the storage position calculating means 102 calculates the storage position by using an expression for generating a pseudo random number, but the storage position calculation means 102 is not limited to this expression, and may be, for example, within a value range of 0 to M-1. You may use the formula which can generate | occur | produce a pseudorandom number with. Further, the storage location may be calculated using a random number table instead of using the mathematical formula. Further, although the magnetic disk device is used as the storage device in the present embodiment, the present invention is not limited to this, and if the delay time of the response to the read request is not fixed, it may be another type of storage device. Good.
【0027】(実施の形態の変形例)また、磁気ディス
ク装置がキャッシュメモリを内蔵していてもよい。その
場合における、本実施の形態におけるディスクアレイ装
置の構成を以下に説明する。読み出し手段104は、外
部からのデータブロックの読み出し命令に基づいて、デ
ータユニット及びパリティブロックの第1の読み出し要
求を発行する。この第1の読み出し要求は、各磁気ディ
スク装置に対して、内部に有するキャッシュメモリに記
憶単位を読み出すように指示する要求である。(Modification of Embodiment) Further, the magnetic disk device may have a built-in cache memory. The configuration of the disk array device according to this embodiment in that case will be described below. The read means 104 issues a first read request for the data unit and the parity block based on an external read command for the data block. The first read request is a request for instructing each magnetic disk device to read a storage unit into a cache memory included therein.
【0028】磁気ディスク装置201、202、・・2
05は、第1の読み出し要求を受け、プリフェッチ、即
ち、内部に有するキャッシュメモリに記憶単位を読み出
したら第1の応答を制御装置100に送る。また後述す
る第2の読み出し要求に基づいて、キャッシュメモリに
読み出した記憶単位を制御装置100に送る。さらに、
後述する除去要求を受けた時点で、第1の応答を制御装
置100に送っていない記憶単位に対する第1の読み出
し命令を無視する。Magnetic disk devices 201, 202, ... 2
Upon receiving the first read request, 05 sends a first response to the control device 100 upon prefetching, that is, when the storage unit is read into the internal cache memory. The storage unit read to the cache memory is sent to the control device 100 based on a second read request described later. further,
At the time of receiving a removal request to be described later, the first read command for the storage unit that has not sent the first response to the control device 100 is ignored.
【0029】判定指示手段105は、磁気ディスク装置
201、202、・・205からの第1の応答を4つ受
けたことを判定し、その時点で、磁気ディスク装置20
1、202、・・205に対して、第2の読み出し命令
を発行する。さらに、第1の応答を4つ受けた時点で、
磁気ディスク装置201、202、・・205に対し
て、キャッシュメモリに読み出されてない残りの一つの
記憶単位に対応する除去要求を発行する。The judgment instructing means 105 judges that four first responses from the magnetic disk devices 201, 202, ... 205 have been received, and at that time, the magnetic disk device 20.
The second read command is issued to 1, 202, ... 205. Furthermore, when four first responses are received,
205 is issued to the magnetic disk devices 201, 202, ... 205 corresponding to the remaining one storage unit that has not been read by the cache memory.
【0030】次に図3を用いて、簡単に読み出し動作に
ついて説明する。先ず、読み出すべきデータブロックの
ID番号に基づいて、データユニットやパリティブロッ
クの記憶位置を、記憶位置算出手段102が算出する
(ステップS21)。読み出し手段104は、その算出
された記憶位置に基づいて、各磁気ディスク装置20
1、202、・・205に対して、データユニット又は
パリティブロックの第1の読み出し要求を発行する(ス
テップS22)。第1の読み出し要求を受けた磁気ディ
スク装置201、202、・・205は、読み出し対象
のデータユニットやパリティブロックをキャッシュメモ
リに読み出した順に、制御装置100に対して第1の応
答を送る。制御装置100の判定指示手段105は、順
次、送られてきた第1の応答が4つあるまで待つ(ステ
ップS23)。第1の応答が4つあると判定指示手段1
05が判定したら、磁気ディスク装置201、202、
・・205に対して、残りの一つの記憶単位の除去要求
を発行する(ステップS24)。次に、判定指示手段1
05は、第2の読み出し要求を磁気ディスク装置20
1、202、・・205に対して発行する(ステップS
25)。以降の処理(ステップS26〜ステップS3
0)は、上述の実施の形態と同様である。Next, the read operation will be briefly described with reference to FIG. First, the storage position calculating means 102 calculates the storage position of the data unit or the parity block based on the ID number of the data block to be read (step S21). The reading means 104 determines the magnetic disk device 20 based on the calculated storage position.
A first read request for a data unit or a parity block is issued to 1, 202, ... 205 (step S22). Upon receiving the first read request, the magnetic disk devices 201, 202, ... 205 send a first response to the control device 100 in the order in which the data units and parity blocks to be read are read into the cache memory. The determination instruction means 105 of the control device 100 sequentially waits until there are four first responses sent (step S23). If there are four first responses, the determination instruction means 1
If 05 determines, the magnetic disk devices 201, 202,
.. Issue a removal request for the remaining one storage unit to 205 (step S24). Next, the determination instruction means 1
Reference numeral 05 designates the second read request as the magnetic disk device 20.
Issued to 1, 202, ... 205 (step S
25). Subsequent processing (steps S26 to S3)
0) is the same as the above-mentioned embodiment.
【0031】[0031]
【発明の効果】請求項1の発明によれば、データブロッ
クの各記憶単位の読み出し時間がまちまちな場合に、一
番遅く読み出される記憶単位をその記憶単位が属するデ
ータブロックの読み出しには必要としないので、全体と
してディスクアレイ装置の読み出しを高速にすることが
できる。According to the first aspect of the present invention, when the read time of each storage unit of the data block is different, the storage unit that is read last is required to read the data block to which the storage unit belongs. Therefore, the disk array device can be read at high speed as a whole.
【0032】請求項2の発明によれば、各磁気ディスク
装置には、一つのデータブロックに対応する各記憶単位
の記憶位置が各磁気ディスク装置毎に異なるように各記
憶単位が記憶されている。従って、データブロックにお
ける記憶単位全てが一様に早くに読み出されたり、記憶
単位の全てが一様に遅くに読み出されることは生じにく
く、ほぼ一定の時間となり、複数のデータブロックを読
み出す際のデータブロック間の読み出し時間のばらつき
を抑えることができる。According to the second aspect of the present invention, each magnetic disk device stores each storage unit such that the storage position of each storage unit corresponding to one data block differs for each magnetic disk device. . Therefore, it is unlikely that all the storage units in the data block will be uniformly and quickly read out, or that all of the storage units will be uniformly and slowly read out, and the time will be almost constant, and when reading a plurality of data blocks It is possible to suppress variations in read time between data blocks.
【0033】請求項3の発明によれば、キャッシュメモ
リを有するディスク装置であっても、キャッシュメモリ
読み出し判定手段を設けることにより上記請求項1乃至
請求項3の発明と同等の効果を発揮することができる。
請求項4の発明によれば、キャッシュメモリ読み出し要
求取り消し手段を設けることにより、不要や読み出し要
求を削除することができる。According to the invention of claim 3, even in the disk device having the cache memory, by providing the cache memory read determination means, the same effect as that of the inventions of claims 1 to 3 can be exhibited. You can
According to the invention of claim 4, by providing the cache memory read request canceling means, unnecessary or read requests can be deleted.
【0034】請求項5の発明によれば、ID番号に基づ
いて、擬似乱数を算出し、その擬似乱数を各記憶単位の
記憶位置とするので容易に記憶位置を算出することがで
きる。請求項6の発明によれば、擬似乱数算出手段が一
つの擬似乱数を算出するだけで、記憶位置算出指示手段
が全ての記憶単位の記憶位置を決定することができるの
で、さらに容易に記憶位置を算出することができる。According to the invention of claim 5, the pseudo random number is calculated based on the ID number, and the pseudo random number is used as the storage position of each storage unit, so that the storage position can be easily calculated. According to the invention of claim 6, the storage position calculation instructing means can determine the storage positions of all the storage units only by the pseudo random number calculation means calculating one pseudo random number, so that the storage positions can be more easily stored. Can be calculated.
【図1】本発明の実施の形態におけるディスクアレイ装
置の構成図である。FIG. 1 is a configuration diagram of a disk array device according to an embodiment of the present invention.
【図2】ディスクアレイ装置におけるデータブロックの
読み出しの動作のフローチャートである。FIG. 2 is a flowchart of a data block read operation in the disk array device.
【図3】磁気ディスク装置がキャッシュメモリを有する
場合におけるディスクアレイ装置のデータブロックの読
み出しの動作のフローチャートである。FIG. 3 is a flowchart of a data block read operation of the disk array device when the magnetic disk device has a cache memory.
100 制御装置 101 符号化手段 102 記憶位置算出手段 103 書き込み手段 104 読み出し手段 105 判定指示手段 106 複号化手段 201 磁気ディスク装置 202 磁気ディスク装置 203 磁気ディスク装置 204 磁気ディスク装置 205 磁気ディスク装置 100 Control Device 101 Encoding Means 102 Storage Position Calculating Means 103 Writing Means 104 Reading Means 105 Judgment Instructing Means 106 Decoding Means 201 Magnetic Disk Units 202 Magnetic Disk Units 203 Magnetic Disk Units 204 Magnetic Disk Units 205 Magnetic Disk Units
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G11B 20/18 570 G11B 20/18 570Z 572 572F ─────────────────────────────────────────────────── ─── Continuation of the front page (51) Int.Cl. 6 Identification code Internal reference number FI Technical display location G11B 20/18 570 G11B 20/18 570Z 572 572F
Claims (6)
装置とを備え、前記制御装置は、データブロックを書き
込む際に、そのデータブロックを2以上の所定数のデー
タユニットに分割し、かつ欠落したデータユニット生成
用のパリティブロックを生成し、さらにその所定数のデ
ータユニット及びパリティブロックのそれぞれを記憶単
位として前記複数の記憶装置に分配して記憶させる符号
化処理を行う符号化手段と、データブロックを読み出す
際には前記複数の記憶装置に対して前記所定数のデータ
ユニットを読み出す読み出し命令を発行する読み出し命
令発行手段と、前記読み出し命令に応じて読み出された
前記所定数のデータユニットから1つのデータブロック
を生成する複号化処理を行う復号化手段とを備え、前記
符号化手段及び復号化手段は、所定数のデータユニット
のうち一のデータユニットが欠落しても、パリティブロ
ックと読み出した他のデータユニットとを用いて、欠落
したデータユニットを生成することにより完全なデータ
ブロックを生成することができる符号化方式を用いたデ
ィスクアレイ装置であって、 前記読み出し命令発行手段は、 データブロックを読み出す際には、さらに、パリティブ
ロックをも読み出す読み出し命令を発行し、 前記制御装置は、さらに、 前記複数の記憶装置から所定数の記憶単位が前記制御装
置に読み出されたことを判定する第1の判定手段と、 前記第1の判定手段で所定数の記憶単位が読み出された
と判定された場合で、その記憶単位の中にパリティブロ
ックが含まれているか否かを判定する第2の判定手段
と、 前記第2の判定手段でパリティブロックが含まれている
と判定されたとき、読み出されていないデータユニット
を、欠落しているデータユニットとみなして、前記復号
手段にそのデータユニットを生成させるよう指示する指
示手段とを備えたことを特徴とするディスクアレイ装
置。1. A storage device comprising a plurality of storage devices and a control device for controlling the storage devices, wherein the control device divides the data blocks into a predetermined number of data units of 2 or more when writing the data blocks, and Coding means for generating a missing data unit generating parity block, and further performing a coding process for distributing and storing each of the predetermined number of data units and parity blocks as a storage unit in the plurality of storage devices, When reading a data block, read command issuing means for issuing a read command for reading the predetermined number of data units to the plurality of storage devices, and the predetermined number of data units read in response to the read command And a decoding means for performing a decoding process for generating one data block from the Even if one data unit out of a predetermined number of data units is lost, the data conversion unit uses the parity block and the other data unit that has been read out to generate a missing data unit, thereby generating a complete data block. In the disk array device using an encoding method capable of performing, the read command issuing unit issues a read command that also reads a parity block when reading a data block, and the control device, Further, a first determination unit that determines that a predetermined number of storage units has been read by the control device from the plurality of storage devices; and a predetermined number of storage units that have been read by the first determination unit A second judgment means for judging whether or not a parity block is included in the storage unit when the judgment is made, and the second judgment means. When it is determined that the parity block is included in the means, the data unit that has not been read is regarded as a missing data unit, and an instruction means that instructs the decoding means to generate the data unit. A disk array device comprising:
り、 前記符号化手段は、 前記複数の記憶装置に記憶させる一つのデータブロック
に対応する各記憶単位の記憶位置を、各記憶装置毎に異
なる位置になるように算出する記憶位置算出手段と、 前記記憶位置算出手段で算出された記憶位置に、一つの
データブロックに対応する各記憶単位を記憶させる記憶
手段とを備えたことを特徴とする請求項1記載のディス
クアレイ装置。2. The storage device is a magnetic disk device, and the encoding means changes the storage position of each storage unit corresponding to one data block stored in the plurality of storage devices, for each storage device. And a storage unit for storing each storage unit corresponding to one data block in the storage position calculated by the storage position calculation unit. The disk array device according to claim 1.
み出しに先立ち、磁気ディスク部から読み出した記憶単
位を一時格納するキャッシュメモリを備え、 前記制御装置は、さらに、 記憶単位の読み出しに先立ち、記憶単位をキャッシュメ
モリに一時格納させるキャッシュメモリ読み出し要求を
発行するキャシュメモリ読み出し要求発行手段と、 前記磁気ディスク装置のキャッシュメモリに所定数の記
憶単位が一時格納されたことを判定するキャッシュメモ
リ読み出し判定手段と、 前記読み出し命令発行手段は、 キャッシュメモリ読み出し判定手段によって、前記磁気
ディスク装置のキャッシュメモリに所定数の記憶単位が
一時格納されたと判定された時点に、前記磁気ディスク
装置に対して読み出し命令を発行することを特徴とする
請求項2記載のディスクアレイ装置。3. The magnetic disk device comprises a cache memory for temporarily storing the storage unit read from the magnetic disk unit prior to reading the storage unit, and the control device further stores the storage unit before reading the storage unit. A cache memory read request issuing means for issuing a cache memory read request for temporarily storing a unit in the cache memory, and a cache memory read determining means for determining that a predetermined number of storage units have been temporarily stored in the cache memory of the magnetic disk device. And the read instruction issuing means issues a read instruction to the magnetic disk device at the time when the cache memory read determining means determines that a predetermined number of storage units are temporarily stored in the cache memory of the magnetic disk device. Claims characterized by issuing 2 disk array apparatus according.
ィスク装置のキャッシュメモリに所定数の記憶単位が一
時格納されたと判定された時点に前記キャッシュメモリ
に記憶単位が格納されていない磁気ディスク装置に対し
て、発行されているキャシュメモリ読み出し要求を取り
消すキャシュメモリ読み出し要求取り消し手段を備えた
ことを特徴とする請求項3記載のディスクアレイ装置。4. The control device further stores a storage unit in the cache memory at the time when the cache memory read determination means determines that a predetermined number of storage units have been temporarily stored in the cache memory of the magnetic disk device. 4. The disk array device according to claim 3, further comprising cache memory read request canceling means for canceling an issued cache memory read request for a magnetic disk device that has not been issued.
ックに1対1に対応するID番号を用いて、読み出し対
象のデータブロックを特定するものであって、 前記記憶位置決定手段は、 前記ID番号と、磁気ディスク装置の記憶領域とに対応
し、かつ各磁気ディスク装置ごとに異なった値をとる擬
似乱数を算出する擬似乱数算出手段と、 前記ID番号に基づいて前記複数の磁気ディスク装置毎
に擬似乱数を算出するよう前記擬似乱数算出手段に指示
し、その算出された擬似乱数をID番号で特定されるデ
ータブロックに対応する各記憶単位の記憶位置とする記
憶位置算出指示手段を備えたことを特徴とする請求項2
乃至請求項4何れか記載のディスクアレイ装置。5. The disk array device specifies a data block to be read by using an ID number corresponding to the data block on a one-to-one basis, and the storage location determining unit is configured to identify the data block with the ID number. A pseudo-random number calculating means for calculating a pseudo-random number corresponding to the storage area of the magnetic disk device and having a different value for each magnetic disk device; and a pseudo-random number for each of the plurality of magnetic disk devices based on the ID number. The pseudo random number calculating means is instructed to calculate a random number, and the calculated pseudo random number is provided as a storage position calculation instructing means for setting the storage position of each storage unit corresponding to the data block specified by the ID number. Claim 2 characterized by the above-mentioned.
5. The disk array device according to claim 4.
応した一つの擬似乱数を算出し、 前記記憶位置算出指示手段は、その一つの擬似乱数の位
相を変えて、ID番号で特定されるデータブロックに対
応する各記憶単位の記憶位置とすることを特徴とする請
求項5記載のディスクアレイ装置。6. The pseudo-random number calculation means calculates one pseudo-random number corresponding to an ID number, and the storage location calculation instructing means changes the phase of the one pseudo-random number and is specified by the ID number. 6. The disk array device according to claim 5, wherein a storage position of each storage unit corresponding to a data block is set.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8045141A JPH09237165A (en) | 1996-03-01 | 1996-03-01 | Disk array device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8045141A JPH09237165A (en) | 1996-03-01 | 1996-03-01 | Disk array device |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH09237165A true JPH09237165A (en) | 1997-09-09 |
Family
ID=12711010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8045141A Pending JPH09237165A (en) | 1996-03-01 | 1996-03-01 | Disk array device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH09237165A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2432440A (en) * | 2005-11-21 | 2007-05-23 | Infortrend Technology Inc | Data Access for RAID storage |
-
1996
- 1996-03-01 JP JP8045141A patent/JPH09237165A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2432440A (en) * | 2005-11-21 | 2007-05-23 | Infortrend Technology Inc | Data Access for RAID storage |
GB2432440B (en) * | 2005-11-21 | 2011-03-16 | Infortrend Technology Inc | Generating redundant data when a read in a RAID system is slow to complete |
US9442802B2 (en) | 2005-11-21 | 2016-09-13 | Infortrend Technology, Inc. | Data access methods and storage subsystems thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5883909A (en) | Method and apparatus for reducing data transfers across a memory bus of a disk array controller | |
JP3237736B2 (en) | Matrix structure of data storage device | |
US6918007B2 (en) | Memory controller interface with XOR operations on memory read to accelerate RAID operations | |
JP5958020B2 (en) | Storage system | |
JP3742494B2 (en) | Mass storage device | |
US6581135B2 (en) | Information storage system for redistributing information to information storage devices when a structure of the information storage devices is changed | |
JP3249868B2 (en) | Array type storage system | |
JP5124792B2 (en) | File server for RAID (Redundant Array of Independent Disks) system | |
US20020007438A1 (en) | Memory system for improving data input/output performance and method of caching data recovery information | |
JPH05181611A (en) | Recorder and access system | |
US20020083379A1 (en) | On-line reconstruction processing method and on-line reconstruction processing apparatus | |
US7761659B2 (en) | Wave flushing of cached writeback data to a storage array | |
US6301711B1 (en) | System and method for the network support of full motion video using a redundant array of inexpensive disks | |
US7032086B2 (en) | System and method for adjusting storage device layout with at least one status for the adjusting | |
EP1310875A2 (en) | Disk array subsystem and data generation method therefor | |
EP0832456A1 (en) | Disk array system including a dual-ported staging memory and concurrent redundancy calculation capability | |
JP3736134B2 (en) | Distributed storage method, distributed storage system, and recording medium recording distributed storage program | |
US6513098B2 (en) | Method and apparatus for scalable error correction code generation performance | |
JPH1063576A (en) | Hierarchical disk drive and its control method | |
JP4402711B2 (en) | Disk array device, disk array device control method, disk array device control program, and disk array control device | |
JPH09237165A (en) | Disk array device | |
JP2001043031A (en) | Disk array controller provided with distributed parity generating function | |
JP2006134026A (en) | Disk array device and raid level setting method | |
JPH11184761A (en) | Read modify write control system | |
JP2857289B2 (en) | Disk array device |