JP3454183B2 - Disk array device - Google Patents

Disk array device

Info

Publication number
JP3454183B2
JP3454183B2 JP10503099A JP10503099A JP3454183B2 JP 3454183 B2 JP3454183 B2 JP 3454183B2 JP 10503099 A JP10503099 A JP 10503099A JP 10503099 A JP10503099 A JP 10503099A JP 3454183 B2 JP3454183 B2 JP 3454183B2
Authority
JP
Japan
Prior art keywords
disk
real
virtual
devices
disk device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP10503099A
Other languages
Japanese (ja)
Other versions
JP2000298556A (en
Inventor
尚貴 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP10503099A priority Critical patent/JP3454183B2/en
Publication of JP2000298556A publication Critical patent/JP2000298556A/en
Application granted granted Critical
Publication of JP3454183B2 publication Critical patent/JP3454183B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明はディスクアレイ装置
に関し、特に容量の異なるディスク装置を使ってディス
クアレイを構築する技術に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a disk array device, and more particularly to a technique for constructing a disk array using disk devices having different capacities.

【0002】[0002]

【従来の技術】複数のディスク装置にデータを分散させ
て記憶させるディスクアレイ装置は、データをどのよう
に分散して記憶させるかによって、RAID0〜RAI
D5などの構成に分類されるが、何れも、全て同じ容量
のディスク装置を使って構築されるのが一般的であっ
た。異なった容量のディスク装置を使用してディスクア
レイを構成することも可能であるが、その場合には、各
ディスク装置の容量がいくらであっても、ディスクアレ
イを構成するうちの最小容量のディスク装置と同じ容量
としてしか使用されず、ディスク容量の使用効率が著し
く低下していた。
2. Description of the Related Art A disk array device for distributing and storing data in a plurality of disk devices depends on how the data is distributed and stored.
Although it is classified into a configuration such as D5, it is common that all are constructed by using disk devices of the same capacity. Although it is possible to configure a disk array by using disk devices of different capacities, in that case, even if the capacity of each disk device is large, the smallest capacity disk in the disk array is configured. It was used only as the same capacity as the device, and the usage efficiency of the disk capacity was significantly reduced.

【0003】このような事情に鑑み、異なる容量のディ
スク装置を使ってディスクアレイを構築する際に、従来
ディスクアレイとして使用できなかったディスク領域も
ディスクアレイに使用できるようにする技術として、特
開平8−249132号公報に記載される技術がある。
この技術(以下、従来技術と称す)では、各ディスク装
置におけるディスク領域の先頭から最小容量のディスク
装置と同じ容量分のディスク領域までを使って1つのデ
ィスクアレイを構成し、最小容量以外のディスク装置に
おける余ったディスク領域を別のディスクアレイに利用
する。例えば、1Gバイトのディスク装置4台と、50
0Mバイトのディスク装置1台とが存在する場合、1G
バイトのディスク装置の先頭500Mバイトのディスク
領域と500Mバイトのディスク装置の全ディスク領域
とを使って、500M×5=2.5Gバイトのディスク
アレイを構成し、1Gバイトのディスク装置の残り50
0Mバイトのディスク領域を使って、500M×4=2
Gバイトの別のディスクアレイを構成する。同様な技術
は特開平9−120342号公報にも記載されている。
In view of the above circumstances, when a disk array is constructed by using disk devices having different capacities, a technique for enabling a disk area which cannot be used as a conventional disk array to be used for the disk array is disclosed in Japanese Patent Laid-Open No. Hei 10-199903 There is a technique described in JP-A 8-249132.
In this technology (hereinafter referred to as "conventional technology"), one disk array is constructed by using the disk area from the beginning of the disk area in each disk device to the disk area of the same capacity as the minimum capacity disk apparatus, and disks other than the minimum capacity are configured. The extra disk area in the device is used for another disk array. For example, four 1 Gbyte disk devices and 50
If there is one 0 MB disk device, 1G
A disk array of 500 M x 5 = 2.5 Gbytes is configured by using the first 500 Mbytes of the disk unit of the byte disk unit and the entire disk region of the 500 Mbytes of disk unit, and the remaining 50 of the 1 Gbyte disk unit.
500Mx4 = 2 using 0MB disk area
Configure another disk array of G bytes. A similar technique is also described in JP-A-9-120342.

【0004】[0004]

【発明が解決しようとする課題】上述した従来技術によ
れば、ディスクアレイとして従来使用できなかったディ
スク領域もディスクアレイに使用することができ、ディ
スク領域の使用効率を向上させることができる。しかし
ながら、構築可能な1つのディスクアレイの最大容量
は、「最小容量のディスク容量×ディスク装置台数」に
制限されてしまい、ディスクアレイの最大の特徴である
大容量化が実現できない。
According to the above-mentioned conventional technique, the disk area which could not be used conventionally as the disk array can be used for the disk array, and the usage efficiency of the disk area can be improved. However, the maximum capacity of one disk array that can be constructed is limited to “minimum capacity disk capacity × number of disk devices”, and it is not possible to realize the large capacity that is the greatest feature of the disk array.

【0005】そこで本発明の目的は、異なった容量のデ
ィスク装置を使って、全ディスク装置の容量の合計と同
じか、それにほぼ近い容量のディスクアレイを構築でき
るようにすることにある。
Therefore, an object of the present invention is to make it possible to construct a disk array having a capacity which is the same as or approximately the same as the total capacity of all disk devices, by using disk devices having different capacities.

【0006】[0006]

【課題を解決するための手段】本発明は上記の目的を達
成するために、少なくとも何れか2つの実ディスク装置
の容量が異なっている複数の実ディスク装置を同じ容量
のディスク領域に分割したときの個々のディスク領域を
仮想ディスク装置とし、同じ実ディスク装置上に生成さ
れた複数の仮想ディスク装置を含め、同容量の複数の仮
想ディスク装置の1つをパリティ用ディスクに使い、他
の仮想ディスク装置を全てデータ用ディスクに使って、
前記複数の実ディスク装置の容量の合計と同じか、それ
にほぼ近い容量のRAID3に相当する1つのディスク
アレイを構成する。より具体的には、少なくとも何れか
2つの実ディスク装置の容量が異なっている複数の実デ
ィスク装置と、該複数の実ディスク装置に接続された制
御装置とから構成されたディスクアレイ装置において、
前記制御装置は、前記複数の実ディスク装置のディスク
領域を分割するサイズを保持するサイズレジスタと、前
記複数の実ディスク装置を前記サイズで分割した個々の
ディスク領域を仮想ディスク装置とし、各仮想ディスク
装置と前記実ディスク装置との対応関係を示すディスク
構成テーブルを生成する手段と、同じ実ディスク装置上
に生成された複数の仮想ディスク装置を含め、複数の仮
想ディスク装置の1つをパリティ用ディスクに使い、他
の仮想ディスク装置を全てデータ用ディスクに使って、
前記複数の実ディスク装置の容量の合計と同じか、それ
にほぼ近い容量のRAID3に相当する1つのディスク
アレイを構成する手段と、上位装置からのディスクアレ
イに対するリードおよびライト要求時、前記ディスク構
成テーブルを参照して仮想ディスク装置に対するアドレ
スから対応する前記実ディスク装置に対するアドレスに
変換する手段とを備えている。
In order to achieve the above-mentioned object, the present invention is achieved when a plurality of real disk devices in which at least any two real disk devices have different capacities are divided into disk areas of the same capacity. Each virtual disk device is used as a virtual disk device, and one of the virtual disk devices of the same capacity is used as a parity disk, including multiple virtual disk devices created on the same real disk device.
Using all virtual disk devices of
One disk array corresponding to RAID 3 having a capacity that is equal to or close to the total capacity of the plurality of real disk devices is configured. More specifically, in a disk array device composed of a plurality of real disk devices in which at least any two real disk devices have different capacities and a control device connected to the plurality of real disk devices,
The control device has a size register that holds a size for dividing the disk areas of the plurality of real disk devices, and an individual disk area obtained by dividing the plurality of real disk devices by the size as a virtual disk device, and each virtual disk One of the plurality of virtual disk devices including a means for generating a disk configuration table indicating the correspondence between the device and the real disk device, and a plurality of virtual disk devices generated on the same real disk device is a parity disk. Used for
Using all virtual disk devices of
Means for configuring one disk array corresponding to RAID 3 having a capacity that is the same as or approximately the same as the total capacity of the plurality of real disk devices, and the disk configuration table when a read and write request is made from the host device to the disk array And means for converting the address for the virtual disk device into the corresponding address for the real disk device.

【0007】[0007]

【0008】[0008]

【0009】また本発明は、生成された仮想ディスク装
置の数が最小の実ディスク装置における仮想ディスク装
置をパリティ用ディスク、他の実ディスク装置上に生成
された仮想ディスク装置をデータ用ディスクにそれぞれ
使ってRAID3に相当するディスクアレイを構成す
る。
Further, according to the present invention, a virtual disk device in a real disk device having the smallest number of generated virtual disk devices is a parity disk, and a virtual disk device created on another real disk device is a data disk. A disk array corresponding to RAID3 is configured by using the disk array.

【0010】また本発明は、更に、前記複数の実ディス
ク装置の容量の最大公約数を求める手段を備え、該手段
で求められた値を前記サイズレジスタに設定する。
Further, the present invention further comprises means for obtaining the greatest common divisor of the capacities of the plurality of real disk devices, and the value obtained by the means is set in the size register.

【0011】また本発明は、更に、最小サイズを保持す
るサイズ設定レジスタと、前記複数の実ディスク装置の
容量の最大公約数を求める手段とを備え、該手段で求め
られた値が前記最小サイズより小さくなる場合には前記
最小サイズを前記サイズレジスタに設定し、それ以外は
前記求められた値を前記サイズレジスタに設定する。
Further, the present invention further comprises a size setting register for holding a minimum size, and means for obtaining the greatest common divisor of the capacities of the plurality of real disk devices, and the value obtained by the means is the minimum size. If it becomes smaller, the minimum size is set in the size register, and otherwise, the obtained value is set in the size register.

【0012】本発明のディスクアレイ装置にあっては、
複数の実ディスク装置を同じ容量のディスク領域に分割
したときの個々のディスク領域を仮想ディスク装置と
し、同じ実ディスク装置上に生成された複数の仮想ディ
スク装置を含め、同容量の複数の仮想ディスク装置を使
ってディスクアレイを構成するため、全ディスク装置の
容量の合計と同じか、それにほぼ近い容量のRAID3
に相当するディスクアレイを構築することが可能とな
る。
In the disk array device of the present invention,
Multiple virtual disks of the same capacity, including multiple virtual disk devices created on the same real disk device, are the individual disk areas when dividing multiple real disk devices into disk areas of the same capacity. Since a disk array is configured using devices, RAID3 with a capacity that is the same as or close to the total capacity of all disk devices.
It is possible to construct a disk array corresponding to .

【0013】[0013]

【発明の実施の形態】次に本発明の実施の形態の例につ
いて図面を参照して詳細に説明する。
BEST MODE FOR CARRYING OUT THE INVENTION Next, an example of an embodiment of the present invention will be described in detail with reference to the drawings.

【0014】図1は本発明の一実施の形態の原理説明図
である。今、図1(a)に示されるように、容量の異な
る2つの実ディスク装置D1,D2を使ってディスクア
レイを構築する場合を考える。ここで、実ディスク装置
D1の容量は実ディスク装置D2の1.5倍あるものとす
る。従来は、容量の小さい実ディスク装置D2の全ディ
スク領域と、実ディスク装置D1の先頭から実ディスク
装置D2の容量分のディスク領域とで、1つのディスク
アレイを構成しており、実ディスク装置D1の残りのデ
ィスク領域は使用されていなかった。特開平8−249
132号公報では、この使用されていなかった実ディス
ク装置D1の残りのディスク領域を別のディスクアレイ
として活用する。従って、ディスク領域の使用効率は向
上するが、実ディスク装置D2の容量の2倍のディスク
アレイと、実ディスク装置D2の容量の半分のディスク
アレイとの2つのディスクアレイができていた。
FIG. 1 is a diagram for explaining the principle of an embodiment of the present invention. Now, consider a case where a disk array is constructed using two real disk devices D1 and D2 having different capacities as shown in FIG. Here, it is assumed that the capacity of the real disk device D1 is 1.5 times that of the real disk device D2. Conventionally, one disk array is configured by the entire disk area of the real disk device D2 having a small capacity and the disk area corresponding to the capacity of the real disk device D2 from the head of the real disk device D1. The rest of the disk space was unused. JP-A-8-249
In Japanese Patent Laid-Open No. 132, the remaining disk area of the unused real disk device D1 is utilized as another disk array. Therefore, although the use efficiency of the disk area is improved, two disk arrays, that is, a disk array having twice the capacity of the real disk device D2 and a disk array having half the capacity of the real disk device D2 have been formed.

【0015】本発明の場合は、図1(b)に示すよう
に、実ディスク装置D1,D2のディスク領域を、例え
ば各容量の最大公約数のサイズで分割し、その各々の分
割領域を仮想ディスク装置D11〜D13,D21,D
22とし、これらの仮想ディスク装置D11〜D13,
D21,D22の各々を1つの実ディスク装置に見立て
て、1つのディスクアレイを構成する。この結果、ディ
スクアレイの容量は実ディスク装置D1,D2の容量の
合計値に等しくなり、大容量のディスクアレイが構築で
きる。以下、本発明の実施の形態の実施例について説明
する。
In the case of the present invention, as shown in FIG. 1B, the disk areas of the real disk devices D1 and D2 are divided into, for example, the size of the greatest common divisor of each capacity, and each divided area is virtual. Disk devices D11 to D13, D21, D
22 and these virtual disk devices D11 to D13,
Each of D21 and D22 is regarded as one real disk device to form one disk array. As a result, the capacity of the disk array becomes equal to the total value of the capacities of the real disk devices D1 and D2, and a large capacity disk array can be constructed. Hereinafter, examples of the embodiment of the present invention will be described.

【0016】[0016]

【実施例】図2を参照すると、本発明のディスクアレイ
装置の一実施例は、上位装置であるCPU1に接続され
たディスクアレイコントローラ(DAC)10と、この
ディスクアレイコントローラ10にアドレス線12及び
データ線13を通じて接続された複数の実ディスク装置
Disk1〜DiskNとから構成されている。ここ
で、複数の実ディスク装置Disk1〜DiskNのう
ち、少なくとも何れか2つの実ディスク装置は互いに容
量が異なっている。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Referring to FIG. 2, one embodiment of a disk array device of the present invention is a disk array controller (DAC) 10 connected to a CPU 1 which is a host device, an address line 12 and It is composed of a plurality of real disk devices Disk1 to DiskN connected through the data line 13. Here, at least any two of the plurality of real disk devices Disk1 to DiskN have different capacities.

【0017】また、ディスクアレイコントローラ10
は、制御部3と、この制御部3とCPU1との間に接続
されたインターフェース2と、制御部3に接続された仮
想ディスク構成部11とを含んでいる。
Further, the disk array controller 10
Includes a control unit 3, an interface 2 connected between the control unit 3 and the CPU 1, and a virtual disk configuration unit 11 connected to the control unit 3.

【0018】更に、仮想ディスク構成部11は、制御部
3に接続されたアドレス変換部4およびサイズ算出部6
と、アドレス変換部4とサイズ算出部6との間に設けら
れたサイズレジスタ5とを有し、アドレス変換部4はデ
ィスク構成テーブル7を内蔵している。
The virtual disk construction unit 11 further includes an address conversion unit 4 and a size calculation unit 6 connected to the control unit 3.
And a size register 5 provided between the address conversion unit 4 and the size calculation unit 6, and the address conversion unit 4 incorporates a disk configuration table 7.

【0019】図3を参照すると、制御部3の一実施例
は、インターフェース2に接続されたMPU301と、
このMPU301が実行すべきプログラムや各種の情報
を保持するRAM303と、MPU301に接続された
キャッシュ302、セレクタ304、インターフェース
306,307と、セレクタ304と各実ディスク装置
Disk1〜DiskNとの間に設けられたディスクイ
ンターフェース305−1〜305−Nとを有し、アド
レス変換部4とはインターフェース306を介して、ま
たサイズ算出部6とはインターフェース307を介し
て、それぞれ接続されている。
Referring to FIG. 3, one embodiment of the controller 3 includes an MPU 301 connected to the interface 2.
A RAM 303 holding a program to be executed by the MPU 301 and various kinds of information, a cache 302 connected to the MPU 301, a selector 304, interfaces 306 and 307, and a selector 304 and the real disk devices Disk1 to DiskN are provided. Disk interfaces 305-1 to 305-N, and are connected to the address conversion unit 4 via the interface 306 and to the size calculation unit 6 via the interface 307.

【0020】図4は複数の実ディスク装置を使ってディ
スクアレイを構築する手順の一例を示すフローチャート
である。まず、ディスクアレイに使う実ディスク装置を
決定する(ステップS1)。これは、システム管理者が
決定して、CPU1経由でディスクアレイコントローラ
10の制御部3におけるMPU301に通知することで
行う。また、ディスクアレイコントローラ10に実際に
接続されている実ディスク装置すべてをディスクアレイ
に使う場合には、MPU301がセレクタ304,ディ
スクインターフェース305−1〜305−Nを介して
実装されている実ディスク装置を認識することで、自動
的に決定することも可能である。以下では、実ディスク
装置Disk1〜DiskNの全てを使って1つのディ
スクアレイを構築するものとする。
FIG. 4 is a flow chart showing an example of a procedure for constructing a disk array using a plurality of real disk devices. First, the actual disk device used for the disk array is determined (step S1). This is done by the system administrator and by notifying the MPU 301 in the control unit 3 of the disk array controller 10 via the CPU 1. Further, when all the real disk devices actually connected to the disk array controller 10 are used for the disk array, the real disk device in which the MPU 301 is mounted via the selector 304 and the disk interfaces 305-1 to 305-N. It is also possible to automatically determine by recognizing. In the following, it is assumed that one disk array is constructed by using all the real disk devices Disk1 to DiskN.

【0021】次に、ディスクアレイに使う各実ディスク
装置の番号(ID)と容量を取得し、RAM303に一
次的に保存する(ステップS2)。これは、制御部3の
MPU301が各実ディスク装置Disk1〜Disk
Nの番号と容量を取得してRAM303に記憶しても良
く、システム管理者自身がCPU1経由でディスクアレ
イコントローラ10の制御部3内のRAM303に記憶
させるようにしても良い。
Next, the number (ID) and capacity of each real disk device used for the disk array is acquired and temporarily stored in the RAM 303 (step S2). This is because the MPU 301 of the control unit 3 makes each of the real disk devices Disk1 to Disk
The N number and capacity may be acquired and stored in the RAM 303, or may be stored in the RAM 303 in the control unit 3 of the disk array controller 10 via the CPU 1 by the system administrator himself.

【0022】次に、仮想ディスク装置の容量(サイズ)
を決定する(ステップS3)。これは、ディスクアレイ
に使う各実ディスク装置の容量をRAM303から読み
出して、制御部3からインターフェース307を通じて
サイズ算出部6に与えることで、サイズ算出部6で決定
させる。サイズ算出部6は、本実施例の場合、与えられ
た各実ディスク装置の容量の最大公約数を求め、その値
を仮想ディスク装置のサイズに決定し、MPU301に
通知すると共にサイズレジスタ5に記憶させる。
Next, the capacity (size) of the virtual disk device
Is determined (step S3). This is done by reading the capacity of each real disk device used for the disk array from the RAM 303 and giving it from the control section 3 to the size calculation section 6 through the interface 307 so that the size calculation section 6 can determine it. In the case of the present embodiment, the size calculation unit 6 obtains the greatest common divisor of the capacity of each given real disk device, determines the value as the size of the virtual disk device, notifies the MPU 301 and stores it in the size register 5. Let

【0023】次に、制御部3のMPU301は、通知さ
れたサイズで各実ディスク装置Disk1〜DiskN
のディスク領域を分割したときの個々の分割領域を1つ
の仮想ディスク装置とし、仮想ディスク装置と実ディス
ク装置との対応関係を示すディスク構成テーブルを作成
する(ステップS4)。図5にディスク構成テーブルの
例を示す。ディスク構成テーブルでは、各仮想ディスク
装置毎に、それがどの実ディスク装置上に生成されてい
るかを示す実ディスク装置の番号と、その実ディスク装
置の何番目の仮想ディスク装置であるかを示す通し番号
とが記録されている。通し番号は、実ディスク装置のデ
ィスク領域の先頭のものから順に1,2,…と採番され
る。例えば、図6に示すように、或る実ディスク装置の
先頭から(N−1)×サイズよりN×サイズまでのディ
スク領域に対応する仮想ディスク装置DINの場合、通
し番号はNである。以上のようにして作成されたディス
ク構成テーブルは、制御部3のRAM303に記憶され
ると共に、インターフェース306を介してアドレス変
換部4に送られ、ディスク構成テーブル7としてアドレ
ス変換部4に保持される。
Next, the MPU 301 of the control unit 3 uses the notified size for each of the physical disk devices Disk1 to DiskN.
Each of the divided areas obtained by dividing the disk area of 1 is set as one virtual disk device, and a disk configuration table indicating the correspondence relationship between the virtual disk device and the real disk device is created (step S4). FIG. 5 shows an example of the disk configuration table. In the disk configuration table, for each virtual disk device, a real disk device number indicating on which real disk device it is created, and a serial number indicating the number of the virtual disk device of that real disk device. Is recorded. The serial numbers are numbered 1, 2 ... In order from the head of the disk area of the actual disk device. For example, as shown in FIG. 6, in the case of the virtual disk device DIN corresponding to the disk area from the beginning of a certain real disk device to (N−1) × size to N × size, the serial number is N. The disk configuration table created as described above is stored in the RAM 303 of the control unit 3 and is also sent to the address conversion unit 4 via the interface 306 and held in the address conversion unit 4 as the disk configuration table 7. .

【0024】次に、以上のようにして生成された複数の
仮想ディスク装置を使って1つのディスクアレイを構築
すべく、ディスクアレイ構成情報を作成し、RAM30
3に記憶する(ステップS5)。この処理は、実ディス
ク装置によってディスクアレイを構築する際とほぼ同じ
処理であり、ただ、実ディスク装置の代わりに仮想ディ
スク装置を使用する点が異なる。構築できるディスクア
レイは、本実施例の場合、RAID0,RAID1,R
AID3の3種類である。何れを作成するかは、例えば
CPU1を通じてシステム管理者がMPU301に指定
する。勿論、作成するRAIDの種類がRAM303に
記憶された制御パラメータで事前に指定されている場合
には、システム管理者からの指定は不要である。以下、
各RAID毎に具体的なディスクアレイの構成例を説明
する。
Next, in order to construct one disk array using the plurality of virtual disk devices generated as described above, the disk array configuration information is created and the RAM 30 is created.
3 (step S5). This process is almost the same as the process for constructing a disk array by a real disk device, except that a virtual disk device is used instead of the real disk device. In this embodiment, the disk arrays that can be constructed are RAID0, RAID1, and R.
There are three types of AID3. Which is to be created is specified in the MPU 301 by the system administrator through the CPU 1, for example. Of course, when the type of RAID to be created is designated in advance by the control parameter stored in the RAM 303, the designation by the system administrator is unnecessary. Less than,
A specific configuration example of the disk array will be described for each RAID.

【0025】なお、説明の便宜上、ディスクアレイに使
う実ディスク装置はD1,D2,D3の3つであり、容
量は実ディスク装置D3が最も小さく、実ディスク装置
D2は実ディスク装置D3の倍の容量があり、実ディス
ク装置D1は実ディスク装置D2のさらに倍の容量があ
るものとする。また、サイズ算出部6では、最大公約数
として実ディスク装置D3の容量と同じ値を決定し、そ
のため、実ディスク装置D1は4分割されて4つの仮想
ディスク装置D11,D12,D13,D14が生成さ
れ、実ディスク装置D2は2分割されて2つの仮想ディ
スク装置D21,D22が生成され、実ディスク装置D
3は分割されずに1つの仮想ディスク装置D31が生成
されたものとする。
For convenience of explanation, there are three real disk devices D1, D2 and D3 used for the disk array, the real disk device D3 has the smallest capacity, and the real disk device D2 has twice the real disk device D3. It is assumed that the real disk device D1 has a capacity, and the real disk device D1 has a capacity twice that of the real disk device D2. Further, the size calculating unit 6 determines the same value as the capacity of the real disk device D3 as the greatest common divisor, so that the real disk device D1 is divided into four to generate four virtual disk devices D11, D12, D13, D14. Then, the real disk device D2 is divided into two to generate two virtual disk devices D21 and D22.
It is assumed that 3 is not divided and one virtual disk device D31 is generated.

【0026】(1)RAID0 RAID0の場合、図7に示すように、実ディスク装置
D1上の4つの仮想ディスク装置D11〜D14と、実
ディスク装置D2上の2つの仮想ディスク装置D21,
D22と、実ディスク装置D3上の1つの仮想ディスク
装置D31との合計7つの仮想ディスク装置すべてを使
ってディスクアレイを構築する。そして、各仮想ディス
ク装置のディスク領域に対し図7の1からnまでに示さ
れるような論理アドレス付けが行われ、ディスクアレイ
構成情報として、例えば図8に示すように、各論理アド
レス毎に、その論理アドレスが指し示す領域が存在する
仮想ディスク装置の番号と、ディスク内アドレス(先頭
からのオフセットアドレス)とを記録した情報が生成さ
れる。なお、Sは仮想ディスク装置のサイズ、Lは1論
理アドレス当たりのアドレス増分値である。
(1) RAID0 In the case of RAID0, as shown in FIG. 7, four virtual disk devices D11 to D14 on the real disk device D1 and two virtual disk devices D21 on the real disk device D2,
A disk array is constructed using all seven virtual disk devices, that is, D22 and one virtual disk device D31 on the real disk device D3. Then, logical addresses are assigned to the disk area of each virtual disk device as shown in 1 to n of FIG. 7, and as the disk array configuration information, for example, as shown in FIG. 8, for each logical address, Information that records the number of the virtual disk device in which the area pointed to by the logical address exists and the disk address (offset address from the beginning) is generated. Note that S is the size of the virtual disk device, and L is the address increment value per logical address.

【0027】(2)RAID1 RAID1の場合、マスタとなる仮想ディスク装置とス
レーブとなる仮想ディスク装置とをペアにするので、偶
数個の仮想ディスク装置を使用する。また、マスタとな
る仮想ディスク装置とスレーブとなる仮想ディスク装置
とは同じ実ディスク装置上に存在しないようにする。こ
れらの条件を満足する範囲内で、できるだけ多くの仮想
ディスク装置を使ってRAID1に相当するディスクア
レイを構成する。今の例では、図9に示すように、仮想
ディスク装置D14以外の6つの仮想ディスク装置D1
1〜D13,D21,D22,D31を使ってディスク
アレイを構築し、D11とD21,D12とD31,D
13とD22をそれぞれペアとする。そして、各仮想デ
ィスク装置D11〜D13,D21,D22,D31の
ディスク領域に対し図9の1からnまでに示されるよう
な論理アドレス付けが行われ、ディスクアレイ構成情報
として、例えば図10に示すように、各論理アドレス毎
に、マスタとなる仮想ディスク装置の番号と、スレーブ
となる仮想ディスク装置の番号と、ディスク内アドレス
(先頭からのオフセットアドレス)とを記録した情報が
生成される。
(2) RAID1 In the case of RAID1, since a virtual disk device that is a master and a virtual disk device that is a slave are paired, an even number of virtual disk devices are used. The master virtual disk device and the slave virtual disk device do not exist on the same real disk device. A disk array corresponding to RAID 1 is configured by using as many virtual disk devices as possible within the range that satisfies these conditions. In the present example, as shown in FIG. 9, six virtual disk devices D1 other than the virtual disk device D14 are used.
1 to D13, D21, D22, D31 are used to construct a disk array, and D11 and D21, D12 and D31, D
13 and D22 are paired respectively. Then, logical addresses as shown in 1 to n of FIG. 9 are applied to the disk areas of the respective virtual disk devices D11 to D13, D21, D22, D31, and as disk array configuration information, for example, shown in FIG. As described above, for each logical address, the information recording the number of the virtual disk device serving as the master, the number of the virtual disk device serving as the slave, and the in-disk address (offset address from the head) is generated.

【0028】なお、生成された仮想ディスク装置が奇数
個であった場合に、どの1つの仮想ディスク装置を未使
用とするかは、CPU1を通じてシステム管理者がMP
U301に指定しても良く、また、MPU301自身
が、例えば最大数の仮想ディスク装置が生成された実デ
ィスク装置の最後の仮想ディスク装置(ディスク領域の
先頭から最も遠くにあるもの)を未使用にするようにし
ても良い。さらに、ペアにする仮想ディスク装置の指定
はCPU1を通じてシステム管理者がMPU301に指
定しても良く、MPU301自身が、マスタとなる仮想
ディスク装置とスレーブとなる仮想ディスク装置とが同
じ実ディスク装置上に存在しない条件を満足する範囲内
で、できるだけ多くのペアを求める組み合わせ問題を解
くことで決定しても良い。
When the number of generated virtual disk devices is an odd number, the system administrator determines through the CPU 1 which virtual disk device is unused.
It may be specified as U301, or the MPU 301 itself may make the last virtual disk device (the one farthest from the head of the disk area) of the real disk device in which the maximum number of virtual disk devices have been created unused. It may be done. Furthermore, the virtual disk device to be paired may be designated by the system administrator to the MPU 301 through the CPU 1, and the MPU 301 itself may set the master virtual disk device and the slave virtual disk device on the same real disk device. You may decide by solving the combination problem which asks for as many pairs as possible within the range which satisfies the condition which does not exist.

【0029】(3)RAID3 RAID3の場合、MPU301は、生成された仮想デ
ィスク装置の数が最小の実ディスク装置における仮想デ
ィスク装置をパリティ用ディスク、他の実ディスク装置
上に生成された仮想ディスク装置をデータ用ディスクに
それぞれ使ってRAID3に相当するディスクアレイを
構築する。従って、今の例では、図11に示すように、
実ディスク装置D3上の仮想ディスク装置D31がパリ
ティ用ディスク、実ディスク装置D3以外の実ディスク
装置D1,D2上の仮想ディスク装置D11〜D14,
D21,D22がデータ用ディスクとして使ったディス
クアレイが構築される。勿論、CPU1を通じてシステ
ム管理者がパリティ用ディスクとして使用する仮想ディ
スク装置、データ用ディスクとして使用する仮想ディス
ク装置をMPU301に指定するようにしても良い。そ
して、各仮想ディスク装置D11〜D14,D21,D
22,D31のディスク領域に対し図11のA−1から
n−6までに示されるような論理アドレス付けが行わ
れ、ディスクアレイ構成情報として、例えば図12に示
すように、各論理アドレス毎に、データ用仮想ディスク
装置の番号およびそのディスク内アドレス(先頭からの
オフセットアドレス)と、パリティ用仮想ディスク装置
の番号およびそのディスク内アドレス(先頭からのオフ
セット)とを記録した情報が生成される。
(3) RAID3 In the case of RAID3, the MPU 301 uses the parity disk as the virtual disk device in the real disk device having the smallest number of created virtual disk devices, and the virtual disk device created on another real disk device. Is used for each data disk to construct a disk array corresponding to RAID3. Therefore, in the present example, as shown in FIG.
The virtual disk device D31 on the real disk device D3 is a parity disk, and the virtual disk devices D11 to D14 on the real disk devices D1 and D2 other than the real disk device D3.
A disk array in which D21 and D22 are used as data disks is constructed. Of course, the system administrator may specify the virtual disk device used as the parity disk and the virtual disk device used as the data disk to the MPU 301 through the CPU 1. Then, the virtual disk devices D11 to D14, D21, D
Logical addresses are assigned to the disk areas 22 and D31 as shown in A-1 to n-6 of FIG. 11, and as disk array configuration information, for example, as shown in FIG. 12, for each logical address. , The data virtual disk device number and its disk address (offset address from the beginning), and the parity virtual disk device number and its disk address (offset from the beginning) are recorded.

【0030】次に、上述のようにして構築されたディス
クアレイに対するリード,ライト時の動作を説明する。
Next, the read / write operation of the disk array constructed as described above will be described.

【0031】(1)RAID0 CPU1から論理アドレスを指定したリード要求または
ライト要求がインターフェース2を通じて制御部3に与
えられると、制御部3のMPU301は、RAM303
に記憶された図8に示したようなディスクアレイ構成情
報をその論理アドレスで検索し、仮想ディスク装置番号
とディスク内アドレスとを取得する。次に、この取得し
た仮想ディスク装置番号を持つ仮想ディスク装置の先頭
アドレスが、どの実ディスク装置のどの物理アドレスに
相当するかを調べるために、前記取得した仮想ディスク
装置番号をインターフェース306を通じてアドレス変
換部4に送る。
(1) RAID0 When a read request or a write request specifying a logical address is given from the CPU 1 to the control unit 3 through the interface 2, the MPU 301 of the control unit 3 causes the RAM 303 to operate.
The disk array configuration information as shown in FIG. 8 stored in FIG. 8 is searched for by its logical address, and the virtual disk device number and the in-disk address are acquired. Next, in order to find out which physical address of which real disk device the start address of the virtual disk device having the obtained virtual disk device number corresponds to, the obtained virtual disk device number is translated through the interface 306. Send to Part 4.

【0032】アドレス変換部4は、受信した仮想ディス
ク装置番号で図5に示したようなディスク構成テーブル
を検索して実ディスク装置番号と通し番号とを取得し、
この取得した通し番号とサイズレジスタ5に記憶されて
いる仮想ディスク装置のサイズとから、 (通し番号−1)×サイズ を計算し、この計算結果と前記取得した実ディスク装置
番号とをインターフェース306を通じてMPU301
に返却する。
The address conversion unit 4 searches the disk configuration table as shown in FIG. 5 with the received virtual disk device number to obtain the real disk device number and serial number,
From the acquired serial number and the size of the virtual disk device stored in the size register 5, (serial number-1) × size is calculated, and the calculation result and the acquired real disk device number are calculated by the MPU 301 through the interface 306.
To return.

【0033】MPU301は、返却された計算結果に前
記ディスク内アドレスを加算することで、返却された実
ディスク装置番号を持つ実ディスク装置上でのアドレス
を求め、当該実ディスク装置の当該アドレスに対するア
クセス処理を行う。まず、キャッシュ302に、当該実
ディスク装置の当該アドレスのデータのコピーが存在す
るか否かを調べ、存在すれば、リード要求であればキャ
ッシュ302から読み出したデータをインターフェース
2を通じてCPU1に返却し、ライト要求であればCP
U1からライト要求時に渡されたデータをキャッシュ3
02に書き込むと同時にセレクタ304を介して当該実
ディスク装置の当該アドレスにも書き込む。なお、キャ
ッシュ302のみを更新し、実ディスク装置上のデータ
はキャッシュ302の掃き出し時に行うようにしても良
い。
The MPU 301 obtains the address on the real disk device having the returned real disk device number by adding the in-disk address to the returned calculation result, and accesses to the address of the real disk device. Perform processing. First, it is checked whether or not there is a copy of the data of the address of the real disk device in the cache 302. If there is a read request, the data read from the cache 302 is returned to the CPU 1 through the interface 2, CP for write request
Caches the data passed from U1 at the time of write request 3
At the same time as writing to 02, it is also written to the address of the real disk device via the selector 304. Alternatively, only the cache 302 may be updated, and the data on the real disk device may be updated when the cache 302 is flushed.

【0034】他方、キャッシュ302に、当該実ディス
ク装置の当該アドレスのデータのコピーが存在しなけれ
ば、リード要求の場合は、セレクタ304を介して当該
実ディスク装置の当該アドレスからデータを読み出して
CPU1に返却すると共にキャッシュ302にキャッシ
ングする。ライト要求の場合は、セレクタ304を介し
て当該実ディスク装置の当該アドレスにCPU1からラ
イト要求時に渡されたデータを書き込む。
On the other hand, if there is no copy of the data of the address of the real disk device in the cache 302, in the case of a read request, the data is read from the address of the real disk device through the selector 304 and the CPU 1 And the cache 302 is cached. In the case of a write request, the data passed from the CPU 1 at the time of the write request is written to the address of the real disk device via the selector 304.

【0035】(2)RAID1 (A)リード要求 CPU1から論理アドレスを指定したリード要求がイン
ターフェース2を通じて制御部3に与えられると、制御
部3のMPU301は、RAM303に記憶された図1
0に示したようなディスクアレイ構成情報をその論理ア
ドレスで検索し、マスタ側仮想ディスク装置番号とディ
スク内アドレスとを取得する。次に、この取得したマス
タ側仮想ディスク装置番号を持つ仮想ディスク装置の先
頭アドレスが、どの実ディスク装置のどの物理アドレス
に相当するかをRAID0の場合と同様にアドレス変換
部4によって求め、前記マスタ側仮想ディスク装置番号
とディスク内アドレスとに対応する、実ディスク装置番
号および実ディスク装置内アドレスを求める。そして、
当該実ディスク装置の当該アドレスに対するアクセス処
理をRAID0の場合と同様に行う。
(2) RAID1 (A) Read request When a read request specifying a logical address is given from the CPU1 to the control unit 3 through the interface 2, the MPU 301 of the control unit 3 is stored in the RAM 303 and stored in the RAM 303 shown in FIG.
The disk array configuration information as shown in 0 is searched by the logical address, and the master side virtual disk device number and the disk address are acquired. Next, as in the case of RAID 0, the address conversion unit 4 finds out which physical address of which real disk device the start address of the virtual disk device having the acquired master-side virtual disk device number corresponds to. The real disk device number and the real disk device address corresponding to the side virtual disk device number and the disk address are obtained. And
The access processing to the address of the real disk device is performed in the same manner as in the case of RAID0.

【0036】(B)ライト要求 CPU1から論理アドレスを指定したライト要求がイン
ターフェース2を通じて制御部3に与えられると、制御
部3のMPU301は、RAM303に記憶された図1
0に示したようなディスクアレイ構成情報をその論理ア
ドレスで検索し、マスタ側仮想ディスク装置番号とスレ
ーブ側仮想ディスク装置番号とディスク内アドレスとを
取得する。次に、この取得したマスタ側仮想ディスク装
置番号を持つ仮想ディスク装置の先頭アドレスがどの実
ディスク装置のどの物理アドレスに相当するか、およ
び、前記取得したスレーブ側仮想ディスク装置番号を持
つ仮想ディスク装置の先頭アドレスがどの実ディスク装
置のどの物理アドレスに相当するかを、RAID0の場
合と同様にアドレス変換部4によって求め、前記マスタ
側仮想ディスク装置番号とディスク内アドレスとに対応
する実ディスク装置番号および実ディスク装置内アドレ
ス、および、前記スレーブ側仮想ディスク装置番号とデ
ィスク内アドレスとに対応する実ディスク装置番号およ
び実ディスク装置内アドレスを求める。そして、当該実
ディスク装置の当該アドレスに対する2つのアクセス処
理をRAID0の場合と同様に行う。マスタとなる仮想
ディスク装置とスレーブとなる仮想ディスク装置とは異
なる実ディスク装置上に生成されているので、マスタ,
スレーブに対する更新は並行して実施可能である。
(B) Write request When a write request designating a logical address is given from the CPU 1 to the control unit 3 through the interface 2, the MPU 301 of the control unit 3 is stored in the RAM 303.
The disk array configuration information as shown in 0 is searched by its logical address, and the master side virtual disk device number, the slave side virtual disk device number, and the in-disk address are acquired. Next, which physical address of which real disk device the start address of the virtual disk device having the acquired master-side virtual disk device number corresponds to, and the virtual disk device having the acquired slave-side virtual disk device number Of the physical address of which real disk device corresponds to the real disk device number of the master side virtual disk device number and the in-disk address obtained by the address conversion unit 4 as in the case of RAID0. And a real disk device address, and a real disk device number and a real disk device address corresponding to the slave virtual disk device number and the disk address. Then, two access processes to the address of the real disk device are performed in the same manner as in the case of RAID0. The master virtual disk device and the slave virtual disk device are created on different real disk devices.
Updates to slaves can be done in parallel.

【0037】(3)RAID3 (A)リード要求 CPU1から論理アドレスとして、例えばA−1を指定
したリード要求がインターフェース2を通じて制御部3
に与えられると、制御部3のMPU301は、RAM3
03に記憶された図12に示したようなディスクアレイ
構成情報を論理アドレス(A−x)(xは任意の値)で
検索し、論理アドレスA−1〜A−6の各々に対応する
データ用仮想ディスク装置番号とディスク内アドレス、
および、パリティ用仮想ディスク装置番号とディスク内
アドレスとを取得する。
(3) RAID3 (A) Read request A read request that specifies, for example, A-1 as a logical address from the CPU 1 is sent through the interface 2 to the control unit 3
The MPU 301 of the control unit 3, the RAM 3
The data corresponding to each of the logical addresses A-1 to A-6 is searched by searching the disk array configuration information as shown in FIG. 12 stored in 03 with the logical address (A-x) (x is an arbitrary value). Virtual disk device number and disk address,
Also, the virtual disk device number for parity and the in-disk address are acquired.

【0038】次に、この取得したデータ用仮想ディスク
装置番号、パリティ用仮想ディスク装置用番号を持つ仮
想ディスク装置の先頭アドレスが、それぞれどの実ディ
スク装置のどの物理アドレスに相当するかをRAID0
の場合と同様にアドレス変換部4によって求め、前記デ
ータ用仮想ディスク装置番号とディスク内アドレスとに
対応する実ディスク装置番号および実ディスク装置内ア
ドレス、前記パリティ用仮想ディスク装置番号とディス
ク内アドレスとに対応する実ディスク装置番号および実
ディスク装置内アドレスを求める。
Next, it is determined by RAID0 which physical address of which real disk device the head address of the virtual disk device having the acquired data virtual disk device number and parity virtual disk device number corresponds to.
In the same manner as in the case of 1, the real disk device number and the real disk device address corresponding to the data virtual disk device number and the disk internal address, the parity virtual disk device number and the disk internal address are obtained. The real disk device number and the real disk device address corresponding to are obtained.

【0039】そして、当該実ディスク装置の当該アドレ
スに対するリード処理をRAID0の場合と同様に行っ
て、論理アドレスA−1〜A−6に記憶されているデー
タとそのパリティとを取得する。この際、異なる実ディ
スク装置上の仮想ディスク装置に対するアクセスは並行
して実施することができる。次に、パリティチェックを
行い、エラーが無ければ、リード要求された論理アドレ
スA−1に対応するデータをCPU1に返却し、エラー
が有れば、その旨をCPU1に返却する。
Then, the read process for the address of the real disk device is performed in the same manner as in the case of RAID0 to obtain the data stored in the logical addresses A-1 to A-6 and the parity thereof. At this time, access to virtual disk devices on different real disk devices can be performed in parallel. Next, a parity check is performed. If there is no error, the data corresponding to the read-requested logical address A-1 is returned to the CPU 1, and if there is an error, that fact is returned to the CPU 1.

【0040】(B)ライト要求 CPU1から論理アドレスとして、例えばA−1を指定
したライト要求がインターフェース2を通じて制御部3
に与えられると、制御部3のMPU301は、RAM3
03に記憶された図12に示したようなディスクアレイ
構成情報を論理アドレス(A−1)で検索し、論理アド
レスA−1に対応するデータ用仮想ディスク装置番号と
ディスク内アドレス、および、パリティ用仮想ディスク
装置番号とディスク内アドレスを取得する。
(B) Write request A write request specifying, for example, A-1 as a logical address from the CPU 1 is sent through the interface 2 to the control unit 3
The MPU 301 of the control unit 3, the RAM 3
The disk array configuration information as shown in FIG. 12 stored in 03 is searched by the logical address (A-1), and the virtual disk device number for data corresponding to the logical address A-1 and the address in the disk, and the parity. For virtual disk device number and disk address

【0041】次に、この取得したデータ用仮想ディスク
装置番号、パリティ用仮想ディスク装置用番号を持つ仮
想ディスク装置の先頭アドレスが、それぞれどの実ディ
スク装置のどの物理アドレスに相当するかをRAID0
の場合と同様にアドレス変換部4によって求め、前記デ
ータ用仮想ディスク装置番号とディスク内アドレスとに
対応する実ディスク装置番号および実ディスク装置内ア
ドレス、前記パリティ用仮想ディスク装置番号とディス
ク内アドレスとに対応する実ディスク装置番号および実
ディスク装置内アドレスを求める。
Next, RAID 0 is used to determine which physical address of which real disk device the head address of the virtual disk device having the acquired data virtual disk device number and parity virtual disk device number corresponds to.
In the same manner as in the case of 1, the real disk device number and the real disk device address corresponding to the data virtual disk device number and the disk internal address, the parity virtual disk device number and the disk internal address are obtained. The real disk device number and the real disk device address corresponding to are obtained.

【0042】そして、当該実ディスク装置の当該アドレ
スに対するリード処理をRAID0の場合と同様に行っ
て、論理アドレスA−1に記憶されているデータとその
パリティとを取得する。データ用仮想ディスク装置とパ
リティ用仮想ディスク装置とは異なる実ディスク装置上
に生成されているため、並行して処理することが可能で
ある。
Then, the read process for the address of the real disk device is performed in the same manner as in the case of RAID0 to obtain the data stored at the logical address A-1 and its parity. Since the data virtual disk device and the parity virtual disk device are created on different real disk devices, they can be processed in parallel.

【0043】次に、取得した論理アドレスA−1のデー
タと、ライト要求時にCPU1から渡されたデータと、
取得したパリティとから、新たなパリティを生成し、こ
のパリティと、CPU1から渡されたデータとを、RA
ID0の場合と同様にキャッシュ302または実ディス
ク装置の元の場所に書き戻す。このときも並行して処理
することが可能である。
Next, the acquired data of the logical address A-1 and the data passed from the CPU 1 at the time of the write request,
A new parity is generated from the acquired parity, and this parity and the data passed from the CPU 1 are RA
Similar to the case of ID0, it is written back to the original location of the cache 302 or the real disk device. At this time, it is possible to process in parallel.

【0044】図13は本発明のディスクアレイ装置の別
の実施例のブロック図である。この実施例が図2に示し
た実施例と相違するところは、仮想ディスク構成部11
内に、CPU1,インターフェース2,制御部3を通じ
てシステム管理者が任意の値を設定できるサイズ設定レ
ジスタ20を備え、サイズ算出部6は、ディスクアレイ
に使用する複数の実ディスク装置の容量の最大公約数が
サイズ設定レジスタ20に設定された値より小さくなる
場合には、サイズ設定レジスタ20に設定された値を仮
想ディスク装置のサイズに決定し、小さくない場合は、
前記求めた最大公約数を仮想ディスク装置のサイズに決
定するようにした点にある。
FIG. 13 is a block diagram of another embodiment of the disk array device of the present invention. This embodiment differs from the embodiment shown in FIG. 2 in that the virtual disk construction unit 11
A size setting register 20 that allows a system administrator to set an arbitrary value through the CPU 1, the interface 2, and the control unit 3 is provided therein, and the size calculation unit 6 has a maximum commitment of the capacities of a plurality of real disk devices used for the disk array. If the number is smaller than the value set in the size setting register 20, the value set in the size setting register 20 is determined as the size of the virtual disk device.
The obtained greatest common divisor is determined as the size of the virtual disk device.

【0045】例えば、2GBの実ディスク装置と、1.2
GBの実ディスク装置との2つの実ディスク装置がある
場合、図2の実施例では、その最大公約数である400
MBに従って、合計8個の仮想ディスク装置が生成され
るが、サイズ設定レジスタ20に例えば1GBを設定し
ておくと、仮想ディスク装置のサイズは1GBとなり、
1GBの仮想ディスクが3つ生成される。これにより、
0.2GBは未使用となるが、仮想ディスク装置のサイズ
が極端に小さくなる事態を避けることができる。
For example, a 2 GB real disk device and 1.2
When there are two real disk devices, the real disk device of GB and the real disk device of GB, in the embodiment of FIG.
According to the MB, a total of eight virtual disk devices are generated. If, for example, 1 GB is set in the size setting register 20, the size of the virtual disk device will be 1 GB,
Three 1 GB virtual disks are created. This allows
Although 0.2 GB is unused, it is possible to avoid a situation where the size of the virtual disk device becomes extremely small.

【0046】図14は本発明のディスクアレイ装置の更
に別の実施例のブロック図である。この実施例が図2に
示した実施例と相違するところは、サイズ算出部6を取
り除き、システム管理者がCPU1,インターフェース
2および制御部3を通じてサイズレジスタ5に仮想ディ
スク装置のサイズを直接設定できるようにした点にあ
る。仮想ディスク装置のサイズをシステム管理者自身が
決定しなければならないため、システム管理者の作業負
荷が高まるが、仮想ディスク装置のサイズ、仮想ディス
ク装置の合計台数をシステム管理者自身が調整できる利
点がある。
FIG. 14 is a block diagram of still another embodiment of the disk array device of the present invention. The difference of this embodiment from the embodiment shown in FIG. 2 is that the size calculator 6 is removed and the system administrator can directly set the size of the virtual disk device in the size register 5 through the CPU 1, the interface 2 and the controller 3. There is a point in doing so. The system administrator must determine the size of the virtual disk device, which increases the workload of the system administrator, but has the advantage that the system administrator can adjust the size of the virtual disk device and the total number of virtual disk devices. is there.

【0047】[0047]

【発明の効果】以上説明したように、本発明によれば、
同じ実ディスク装置上に生成された複数の仮想ディスク
装置を含め、同容量の複数の仮想ディスク装置を使って
ディスクアレイを構成するため、容量の異なる複数の実
ディスク装置を使って全ディスク装置の容量の合計と同
じか、それにほぼ近い大容量のRAID3に相当する
ィスクアレイを構築することが可能となる。
As described above, according to the present invention,
Because a disk array is configured using multiple virtual disk devices of the same capacity, including multiple virtual disk devices created on the same physical disk device, multiple physical disk devices of different capacities must be used for all disk devices. It is possible to construct a disk array corresponding to a large capacity RAID3 that is equal to or close to the total capacity.

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

【図1】本発明の一実施の形態の原理説明図である。FIG. 1 is a diagram illustrating the principle of an embodiment of the present invention.

【図2】本発明のディスクアレイ装置の一実施例のブロ
ック図である。
FIG. 2 is a block diagram of an embodiment of a disk array device of the present invention.

【図3】制御部の一実施例のブロック図である。FIG. 3 is a block diagram of an embodiment of a control unit.

【図4】複数の実ディスク装置を使ってディスクアレイ
を構築する手順の一例を示すフローチャートである。
FIG. 4 is a flowchart showing an example of a procedure for constructing a disk array using a plurality of real disk devices.

【図5】ディスク構成テーブルの例を示す図である。FIG. 5 is a diagram showing an example of a disk configuration table.

【図6】仮想ディスクと実ディスクとの対応関係を示す
図である。
FIG. 6 is a diagram showing a correspondence relationship between virtual disks and real disks.

【図7】複数の仮想ディスク装置を使って構成されるR
AID0のディスクアレイの構成例を示す図である。
FIG. 7: R configured by using a plurality of virtual disk devices
It is a figure which shows the structural example of the disk array of AID0.

【図8】複数の仮想ディスク装置を使って構成されるR
AID0のディスクアレイ用のディスクアレイ構成情報
の例を示す図である。
FIG. 8 is an R configured by using a plurality of virtual disk devices.
It is a figure which shows the example of the disk array configuration information for the disk array of AID0.

【図9】複数の仮想ディスク装置を使って構成されるR
AID1のディスクアレイの構成例を示す図である。
FIG. 9 is an R configured by using a plurality of virtual disk devices.
It is a figure which shows the structural example of the disk array of AID1.

【図10】複数の仮想ディスク装置を使って構成される
RAID1のディスクアレイ用のディスクアレイ構成情
報の例を示す図である。
FIG. 10 is a diagram showing an example of disk array configuration information for a RAID 1 disk array configured by using a plurality of virtual disk devices.

【図11】複数の仮想ディスク装置を使って構成される
RAID3のディスクアレイの構成例を示す図である。
FIG. 11 is a diagram showing a configuration example of a RAID 3 disk array configured by using a plurality of virtual disk devices.

【図12】複数の仮想ディスク装置を使って構成される
RAID3のディスクアレイ用のディスクアレイ構成情
報の例を示す図である。
FIG. 12 is a diagram showing an example of disk array configuration information for a RAID 3 disk array configured by using a plurality of virtual disk devices.

【図13】本発明のディスクアレイ装置の別の実施例の
ブロック図である。
FIG. 13 is a block diagram of another embodiment of the disk array device of the present invention.

【図14】本発明のディスクアレイ装置の更に別の実施
例のブロック図である。
FIG. 14 is a block diagram of a disk array device according to still another embodiment of the present invention.

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

1…CPU 2…インターフェース 3…制御部 4…アドレス変換部 5…サイズレジスタ 6…サイズ算出部 7…ディスク構成テーブル 10…ディスクアレイコントローラ(DAC) 11…仮想ディスク構成部 20…サイズ設定レジスタ 1 ... CPU 2 ... Interface 3 ... Control unit 4 ... Address converter 5 ... Size register 6 ... Size calculator 7 ... Disk configuration table 10 ... Disk array controller (DAC) 11 ... Virtual disk configuration unit 20 ... Size setting register

Claims (5)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 少なくとも何れか2つの実ディスク装置
の容量が異なっている複数の実ディスク装置を同じ容量
のディスク領域に分割したときの個々のディスク領域を
仮想ディスク装置とし、同じ実ディスク装置上に生成さ
れた複数の仮想ディスク装置を含め、同容量の複数の仮
想ディスク装置の1つをパリティ用ディスクに使い、他
の仮想ディスク装置を全てデータ用ディスクに使って、
前記複数の実ディスク装置の容量の合計と同じか、それ
にほぼ近い容量のRAID3に相当する1つのディスク
アレイを構成したディスクアレイ装置。
1. When a plurality of real disk devices in which at least any two real disk devices have different capacities are divided into disk areas of the same capacity, each disk area is defined as a virtual disk device, and the same real disk device is used. Including the multiple virtual disk devices created in, one of the multiple virtual disk devices of the same capacity is used for the parity disk, and
Using all virtual disk devices of
A disk array device which constitutes one disk array corresponding to RAID 3 having a capacity which is equal to or close to the total capacity of the plurality of real disk devices.
【請求項2】 少なくとも何れか2つの実ディスク装置
の容量が異なっている複数の実ディスク装置と、該複数
の実ディスク装置に接続された制御装置とから構成され
たディスクアレイ装置において、 前記制御装置は、 前記複数の実ディスク装置のディスク領域を分割するサ
イズを保持するサイズレジスタと、 前記複数の実ディスク装置を前記サイズで分割した個々
のディスク領域を仮想ディスク装置とし、各仮想ディス
ク装置と前記実ディスク装置との対応関係を示すディス
ク構成テーブルを生成する手段と、 同じ実ディスク装置上に生成された複数の仮想ディスク
装置を含め、複数の仮想ディスク装置の1つをパリティ
用ディスクに使い、他の仮想ディスク装置を全てデータ
用ディスクに使って、前記複数の実ディスク装置の容量
の合計と同じか、それにほぼ近い容量のRAID3に相
当する1つのディスクアレイを構成する手段と、 上位装置からのディスクアレイに対するリードおよびラ
イト要求時、前記ディスク構成テーブルを参照して仮想
ディスク装置に対するアドレスから対応する前記実ディ
スク装置に対するアドレスに変換する手段とを備えるこ
とを特徴とするディスクアレイ装置。
2. A disk array device comprising a plurality of real disk devices in which at least any two real disk devices have different capacities, and a controller connected to the plurality of real disk devices, The device comprises a size register for holding a size for dividing a disk area of the plurality of real disk devices, and an individual disk area obtained by dividing the plurality of real disk devices by the size as a virtual disk device, and each virtual disk device. One of the plurality of virtual disk devices including the means for generating a disk configuration table showing the correspondence with the real disk device and the plurality of virtual disk devices generated on the same real disk device is parity-checked.
All other virtual disk devices are used for data
Using the use the disc, equal to the sum of the capacities of the plurality of physical disk devices, it means that constitutes one disk array corresponding to RAID3 substantially near capacity, read and write requests to the disk array from the host apparatus And a means for converting an address for the virtual disk device into an address for the corresponding real disk device by referring to the disk configuration table.
【請求項3】 生成された仮想ディスク装置の数が最小
の実ディスク装置における仮想ディスク装置をパリティ
用ディスク、他の実ディスク装置上に生成された仮想デ
ィスク装置をデータ用ディスクにそれぞれ使ってRAI
D3に相当するディスクアレイを構成した請求項2記載
のディスクアレイ装置。
3. An RAI in which a virtual disk device in a real disk device having the smallest number of created virtual disk devices is used as a parity disk, and a virtual disk device created on another real disk device is used as a data disk, respectively.
The disk array device according to claim 2, wherein a disk array corresponding to D3 is configured.
【請求項4】 前記複数の実ディスク装置の容量の最大
公約数を求める手段を備え、該手段で求められた値を前
記サイズレジスタに設定する請求項2または3記載のデ
ィスクアレイ装置。
4. The disk array device according to claim 2, further comprising means for obtaining the greatest common divisor of the capacities of the plurality of real disk devices, and the value obtained by the means is set in the size register.
【請求項5】 最小サイズを保持するサイズ設定レジス
タと、前記複数の実ディスク装置の容量の最大公約数を
求める手段とを備え、該手段で求められた値が前記最小
サイズより小さくなる場合には前記最小サイズを前記サ
イズレジスタに設定し、それ以外は前記求められた値を
前記サイズレジスタに設定する請求項2または3記載の
ディスクアレイ装置。
5. A size setting register for holding a minimum size, and means for obtaining the greatest common divisor of the capacities of the plurality of real disk devices, wherein the value obtained by the means is smaller than the minimum size. 4. The disk array device according to claim 2, wherein the minimum size is set in the size register, and otherwise the obtained value is set in the size register.
JP10503099A 1999-04-13 1999-04-13 Disk array device Expired - Fee Related JP3454183B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10503099A JP3454183B2 (en) 1999-04-13 1999-04-13 Disk array device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10503099A JP3454183B2 (en) 1999-04-13 1999-04-13 Disk array device

Publications (2)

Publication Number Publication Date
JP2000298556A JP2000298556A (en) 2000-10-24
JP3454183B2 true JP3454183B2 (en) 2003-10-06

Family

ID=14396637

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10503099A Expired - Fee Related JP3454183B2 (en) 1999-04-13 1999-04-13 Disk array device

Country Status (1)

Country Link
JP (1) JP3454183B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE557349T1 (en) * 2002-10-31 2012-05-15 Parallel Iron Llc STORAGE SYSTEM AND METHOD FOR A STORAGE SYSTEM
JP4438457B2 (en) 2003-05-28 2010-03-24 株式会社日立製作所 Storage area allocation method, system, and virtualization apparatus
US7617361B2 (en) * 2006-03-29 2009-11-10 International Business Machines Corporation Configureable redundant array of independent disks
US7979771B2 (en) * 2006-04-04 2011-07-12 Permabit Technology Corporation Erasure coding technique for scalable and fault tolerant storage system
JP6497891B2 (en) * 2014-10-31 2019-04-10 株式会社バッファロー Disk control device, disk control method, and program
JP6078180B1 (en) * 2016-01-22 2017-02-08 西日本電信電話株式会社 Data distribution apparatus, data distribution method, and data distribution program
US10783049B2 (en) * 2018-02-26 2020-09-22 International Business Machines Corporation Virtual storage drive management in a data storage system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69533764T2 (en) * 1994-06-22 2005-12-01 Hewlett-Packard Development Co., L.P., Houston A method of using different content storage disks in a single volume of a hierarchical disk array
JP4044160B2 (en) * 1995-08-23 2008-02-06 富士通株式会社 Disk array device

Also Published As

Publication number Publication date
JP2000298556A (en) 2000-10-24

Similar Documents

Publication Publication Date Title
US5619690A (en) Computer system including a computer which requests an access to a logical address in a secondary storage system with specification of a local address in the secondary storage system
EP0801344B1 (en) An apparatus for reallocating logical to physical disk devices using a storage controller and method of the same
JP3201219B2 (en) I / O processing system
US5809224A (en) On-line disk array reconfiguration
US6718436B2 (en) Method for managing logical volume in order to support dynamic online resizing and software raid and to minimize metadata and computer readable medium storing the same
JP3135751B2 (en) Data storage device
US6772310B2 (en) Method and apparatus for zeroing a transfer buffer memory as a background task
EP0785500B1 (en) Storage device and method for data sharing
US5854942A (en) Method and system for automatic storage subsystem configuration
US5996046A (en) Parity generation system for generating new parity using old data in temporary storage without accessing main disk storage of disk drive
EP0485110A2 (en) Logical partitioning of a redundant array storage system
JP2007102760A (en) Automatic allocation of volume in storage area network
US6105118A (en) System and method for selecting which data copy to read in an information handling system
JP4401305B2 (en) Configuration definition setting method of disk array device and disk array device
US7346733B2 (en) Storage apparatus, system and method using a plurality of object-based storage devices
US6912643B2 (en) Method of flexibly mapping a number of storage elements into a virtual storage element
JP2002278707A (en) Disk controller
JP3454183B2 (en) Disk array device
JP4252102B2 (en) Computer system and secondary storage device
JPH0773090A (en) Computer system and secondary storage device
JPH09288547A (en) Array-type storage device
US20030014599A1 (en) Method for providing a configurable primary mirror
JPH07152498A (en) Information processing system
JP2006178926A (en) Storage apparatus, system and method using a plurality of object-based storage devices
US6934803B2 (en) Methods and structure for multi-drive mirroring in a resource constrained raid controller

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees