JP2006277042A - Array controller, disk array control method, and program - Google Patents
Array controller, disk array control method, and program Download PDFInfo
- Publication number
- JP2006277042A JP2006277042A JP2005091999A JP2005091999A JP2006277042A JP 2006277042 A JP2006277042 A JP 2006277042A JP 2005091999 A JP2005091999 A JP 2005091999A JP 2005091999 A JP2005091999 A JP 2005091999A JP 2006277042 A JP2006277042 A JP 2006277042A
- Authority
- JP
- Japan
- Prior art keywords
- data
- write
- disk
- array
- cache memory
- 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
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
本発明は、ライトキャッシュメモリを有する複数のディスクドライブから構成される冗長性を持つ少なくとも1つのディスクアレイを制御するのに好適な、アレイコントローラ、ディスクアレイ制御方法及びプログラムに関する。 The present invention relates to an array controller, a disk array control method, and a program suitable for controlling at least one disk array having redundancy composed of a plurality of disk drives having a write cache memory.
近年のディスクドライブ、例えばハードディスクドライブ(HDD)は、ディスクへのアクセスを制御するコントローラ(ディスクコントローラ)内にキャッシュ(ライトキャッシュメモリ)を有しているのが一般的である(例えば、特許文献1参照)。このキャッシュは、ライトバックモード及びライトスルーモードの中から選択されたモードで用いられる。ライトバックモードとは、ホストシステム(ホストコンピュータ)からHDDのコントローラにデータの書き込みが要求されたときに、当該コントローラが要求されたデータをキャッシュに書き込んだ時点でホストシステムに書き込み完了を通知するモードである。これに対してライトスルーモードとは、要求されたデータをキャッシュに書き込むと共にディスク(ディスク媒体)にも書き込むモードである。ライトスルーモードでは、要求されたデータがディスクに書き込まれた時点で、書き込みが完了する。このため、キャッシュをライトバックモードで使用することにより、ディスクへの書き込みを高速化することができる。キャッシュをライトバックモードで使用することを、ライトバックキャッシュをオンすると呼ぶこともある。 A recent disk drive, for example, a hard disk drive (HDD), generally has a cache (write cache memory) in a controller (disk controller) that controls access to the disk (for example, Patent Document 1). reference). This cache is used in a mode selected from the write back mode and the write through mode. The write back mode is a mode in which when the host system (host computer) requests the HDD controller to write data, the controller notifies the host system of completion of writing when the requested data is written to the cache. It is. On the other hand, the write-through mode is a mode in which requested data is written to a cache as well as to a disk (disk medium). In the write-through mode, the writing is completed when the requested data is written to the disk. For this reason, using the cache in the write-back mode can speed up writing to the disk. Using the cache in write back mode is sometimes called turning on the write back cache.
一方、冗長データを持つことによりデータの信頼性を向上させる技術として、複数のディスクドライブ(HDD)を用いて構成される冗長性を持つディスクアレイ(冗長化ディスクアレイ)、つまりRAID(Redundant Array of Inexpensive Disks、またはRedundant Array of Independent Disks)が知られている。RAIDには幾つかのレベル(RAIDレベル)が定義されており、RAID1(ミラーリング)やRAID5(パリティ付きストライピング)などが知られている。いずれも複数のHDDを用いて構成される冗長化ディスクアレイにデータ及び冗長データを配置することにより、いずれか1台のHDDに障害が発生してもデータの復元を可能にする技術である。 On the other hand, as a technique for improving the reliability of data by having redundant data, a redundant disk array (redundant disk array) configured using a plurality of disk drives (HDDs), that is, a RAID (Redundant Array of) Inexpensive Disks, or Redundant Array of Independent Disks) are known. Several levels (RAID levels) are defined for RAID, and RAID 1 (mirroring), RAID 5 (striping with parity), and the like are known. Both are technologies that enable data to be restored even if a failure occurs in any one HDD by arranging data and redundant data in a redundant disk array configured using a plurality of HDDs.
RAID1レベルで使用されるディスクアレイを構成する複数のHDDは、マスタHDDとスレーブHDDとに分けられる。マスタHDDとスレーブHDDとには同一データが書き込まれる。また、RAID5レベルで使用されるディスクアレイを構成する複数(3台以上の)のHDDは、いずれもデータ並びにパリティデータ(冗長データ)の格納用に用いられ、パリティデータは各HDDに分散して格納される。
A plurality of HDDs constituting a disk array used at the
また最近は、HDDのコストが下がってきたこともあって、データストレージ装置のより一層の信頼性向上のために、当該ストレージ装置が2組のディスクアレイ(論理ユニット)で構成される場合も多くなってきている。ここでは、2組のディスクアレイの一方がマスタディスクアレイ(マスタ論理ユニット)として、他方がバックアップディスクアレイ(バックアップ論理ユニット)としてそれぞれ定義され、マスタディスクアレイに書き込まれたデータがバックアップディスクアレイにコピーされる。
ディスクアレイ内の各HDD(ディスクドライブ)へのデータ書き込みに要する時間は主として、
・HDD内のヘッドシーク時間
・回転待ち時間
・HDDのコントローラにおけるデータ処理時間
・ディスクへのデータ転送時間
で決まる。
The time required to write data to each HDD (disk drive) in the disk array is mainly
・ Head seek time in HDD ・ Rotation waiting time ・ Data processing time in HDD controller ・ Data transfer time to disk
これらの時間のうち、シーク時間と回転待ち時間とは、HDD間でばらつくため、結果的にHDD間の処理完了時間の差として表れる。この処理完了時間の差は、ディスクアレイ全体における処理完了までの遅延を招く。 Of these times, the seek time and the rotation waiting time vary among HDDs, and as a result, appear as a difference in processing completion time between HDDs. This difference in processing completion time causes a delay until the processing is completed in the entire disk array.
最近、HDDのディスクへのデータ書き込み時間は、高速化している。仮にディスクへの転送速度を50MB/sと仮定すると、64kBのデータの書き込み時間は、1.28msとなる。これに対して、HDDの平均シーク時間は4〜5ms、平均回転待ち時間は3ms程度(HDDの回転速度が10,000rpmクラス)である。このため、ディスクアレイを構成する各HDDへのアクセスを高速化するためには、当該HDDのヘッドシーク時間及び回転待ち時間を短くして、HDDの処理完了時間を短縮すると共にHDD間の処理完了時間のばらつきを少なくする必要がある。 Recently, the time for writing data to the disk of the HDD has been increased. Assuming that the transfer rate to the disk is 50 MB / s, the data writing time of 64 kB is 1.28 ms. On the other hand, the average seek time of the HDD is 4 to 5 ms, and the average rotation waiting time is about 3 ms (the HDD rotation speed is 10,000 rpm class). Therefore, in order to speed up access to each HDD constituting the disk array, the head seek time and rotation waiting time of the HDD are shortened to shorten the HDD processing completion time and complete the processing between the HDDs. It is necessary to reduce variations in time.
そこで、各HDDに実装されているキャッシュ(ライトキャッシュメモリ)をライトバックモードで使用することにより、つまりライトバックキャッシュをONすることにより、上記シーク時間、回転待ち時間、及びHDD間の処理完了時間のばらつきの影響を回避して、ディスクアレイ全体に対するデータ書き込み時間を短縮することが考えられる。 Therefore, by using the cache (write cache memory) mounted in each HDD in the write back mode, that is, by turning on the write back cache, the seek time, the rotation waiting time, and the processing completion time between the HDDs. It is conceivable to reduce the data write time for the entire disk array by avoiding the influence of the variation of the disk array.
しかしながら、HDDへのデータ書き込みは当該HDDのキャッシュにデータが書き込まれた時点で完了となる。このため、HDDのディスクへのデータ書き込みが完了する前に電源遮断が発生した場合には、データがHDDへ書き込めていない状態が発生してデータが消失するおそれがある。そこで従来は、このようなデータ消失を招かないように、つまりデータの保全性を確保するために、ディスクアレイを構成するHDDを全てライトスルーモードで使用するのが一般的である。 However, data writing to the HDD is completed when data is written to the cache of the HDD. For this reason, if the power is cut off before the data writing to the HDD disk is completed, there is a possibility that the data is not written to the HDD and the data is lost. Therefore, conventionally, all HDDs constituting a disk array are generally used in the write-through mode so as not to cause such data loss, that is, to ensure data integrity.
本発明は上記事情を考慮してなされたものでその目的は、ディスクアレイのデータの冗長性を利用することで、当該ディスクアレイのデータの保全性を維持しながら、ディスクアレイ全体のデータ書き込みに要する時間を短縮することができるアレイコントローラ、ディスクアレイ制御方法及びプログラムを提供することにある。 The present invention has been made in view of the above circumstances, and its purpose is to write data in the entire disk array while maintaining data integrity of the disk array by utilizing the redundancy of the data in the disk array. An object of the present invention is to provide an array controller, a disk array control method, and a program that can reduce the time required.
本発明の1つの観点によれば、ディスク媒体に書き込むべきライトデータを一時格納するためのライトキャッシュメモリを有する複数のディスクドライブから構成される冗長性を持つ少なくとも1つのディスクアレイを制御するアレイコントローラが提供される。このアレイコントローラは、データ及び当該データの冗長データを上記ディスクアレイの上記複数のディスクドライブに分散して書き込むための制御を行うライト制御手段と、上記複数のディスクドライブのうち冗長データが書き込まれるディスクドライブのみ、上記ライトキャッシュメモリにデータが書き込まれた段階で当該ドライブへの書き込みを完了させるためのライトバックモードに設定するライトキャッシュ制御手段とから構成される。 According to one aspect of the present invention, an array controller that controls at least one disk array having redundancy composed of a plurality of disk drives having a write cache memory for temporarily storing write data to be written to a disk medium Is provided. The array controller includes write control means for performing control for distributing and writing data and redundant data of the data to the plurality of disk drives of the disk array, and a disk to which redundant data is written among the plurality of disk drives. Only the drive is composed of write cache control means for setting the write back mode for completing writing to the drive when data is written to the write cache memory.
このような構成のアレイコントローラにおいては、冗長データが書き込まれるディスクドライブのライトキャッシュメモリのみがライトバックモードで用いられる。つまり、冗長データが書き込まれるディスクドライブでは、冗長データがライトキャッシュメモリに書き込まれた段階で、当該ディスクドライブへの書き込みが完了する。このため、ディスクアレイ全体のデータ書き込み完了時刻は、他のディスクドライブ、つまり非ライトバックモード(ライトスルーモード)でデータが書き込まれる他のディスクドライブにおけるデータ書き込み完了時刻のみに依存する。したがって、ディスクアレイ全体のデータ書き込み完了時刻が、ディスクアレイを構成する全てのディスクドライブにおけるデータ書き込み完了時刻に依存する従来技術に比べて、ディスクアレイ全体のデータ書き込みに要する時間を短縮することが可能となる。ここで、冗長データが書き込まれるディスクドライブでは、冗長データが当該ディスクドライブのライトキャッシュメモリに書き込まれた後、当該ライトキャッシュメモリに書き込まれた冗長データが実際に当該ディスクドライブのディスク媒体に書き込まれるまでの期間に電源遮断が発生した場合、当該ライトキャッシュメモリに書き込まれた冗長データが消失するおそれがある。しかし、この冗長データは、上記ディスクアレイを構成する他のディスクドライブのデータから復元することができる。なお、冗長データが書き込まれるディスクドライブが予め定められるRAID1、或いはRAID3等を適用するディスクアレイの制御では、上記ライトキャッシュ制御手段によるライトバックモードへの設定は、システム立ち上げ時などにおいて予め行うことが可能となる。これに対し、冗長データが書き込まれるディスクドライブが変更されるRAID5等を適用するディスクアレイの制御では、冗長データの書き込みが発生する都度、当該冗長データの書き込み先のディスクドライブを確認して、当該ディスクドライブのみライトバックモードに設定されるようにすると良い。
In the array controller having such a configuration, only the write cache memory of the disk drive into which redundant data is written is used in the write back mode. That is, in a disk drive to which redundant data is written, writing to the disk drive is completed at the stage where the redundant data is written to the write cache memory. For this reason, the data write completion time of the entire disk array depends only on the data write completion time of other disk drives, that is, other disk drives to which data is written in the non-write back mode (write through mode). Therefore, it is possible to reduce the time required for data writing of the entire disk array, compared to the conventional technology in which the data writing completion time of the entire disk array depends on the data writing completion time of all the disk drives constituting the disk array. It becomes. Here, in the disk drive to which redundant data is written, after the redundant data is written to the write cache memory of the disk drive, the redundant data written to the write cache memory is actually written to the disk medium of the disk drive. If the power is shut off during the period up to this point, redundant data written in the write cache memory may be lost. However, this redundant data can be restored from the data of other disk drives constituting the disk array. In the control of the disk array to which
また、上記少なくとも1つのディスクアレイをホストからの書き込み要求で要求されたデータ及び当該データの冗長データが書き込まれるマスタ側ディスクアレイとして、当該マスタ側ディスクアレイのデータを読み出して、ライトキャッシュメモリを有する複数のディスクドライブから構成される冗長性を持つバックアップ側ディスクアレイにコピーするための制御を行うコピー制御手段を追加し、このバックアップ側ディスクアレイの上記複数のディスクドライブの全てが上記ライトバックモードに設定される構成とすると良い。 Further, the master-side disk array is read as the master-side disk array into which the data requested by the write request from the host and the redundant data of the data is written, and has a write cache memory. A copy control means for performing control for copying to a backup side disk array having redundancy composed of a plurality of disk drives is added, and all of the plurality of disk drives of the backup side disk array are set to the write back mode. A configuration that is set is good.
このような構成においては、マスタ側ディスクアレイのデータをバックアップ側ディスクアレイにコピーする処理に要する時間を短縮することが可能となる。ここでは、マスタ側ディスクアレイから読み出されたデータがバックアップ側ディスクアレイの各ディスクドライブのライトキャッシュメモリに書き込まれた後、当該ライトキャッシュメモリに書き込まれたデータが実際に当該ディスクドライブのディスク媒体に書き込まれる前に電源遮断が発生した場合、当該ライトキャッシュメモリに書き込まれたデータが消失するおそれがある。しかし、このデータは、マスタ側ディスクアレイのデータを利用して復元することが可能である。 In such a configuration, it is possible to reduce the time required for the process of copying the data on the master side disk array to the backup side disk array. Here, after the data read from the master disk array is written to the write cache memory of each disk drive of the backup disk array, the data written to the write cache memory is actually the disk medium of the disk drive. If the power is interrupted before the data is written to the memory, the data written in the write cache memory may be lost. However, this data can be restored using the data in the master side disk array.
また、コピー制御手段によってマスタ側ディスクアレイから読み出されたデータを一時格納するためのキャッシュメモリを追加して、バックアップ側ディスクアレイに1回で書き込むことができるデータの最大サイズである1ライトサイズよりも大きいサイズでマスタ側ディスクアレイのデータを上記コピー制御手段がキャッシュメモリに読み込み、当該キャッシュメモリに読み込まれたデータを当該コピー制御手段が複数回に分けてバックアップ側ディスクアレイにコピーする構成とすると良い。 In addition, a cache memory for temporarily storing data read from the master-side disk array by the copy control means is added, and one write size that is the maximum size of data that can be written to the backup-side disk array at one time. The copy control means reads the data of the master side disk array into a cache memory with a larger size, and the copy control means copies the data read into the cache memory to the backup side disk array in a plurality of times. Good.
このようにすると、キャッシュメモリに読み込まれたデータがバックアップ側ディスクアレイにコピーされる期間を利用して、ホストから要求されたマスタ側ディスクアレイへのデータ書き込みまたはマスタ側ディスクアレイからのデータ読み出し、更にはマスタ側ディスクアレイからの次にコピーすべきデータの読み出しが効率的に実行できる。換言すれば、ホストから要求されたマスタ側ディスクアレイへのデータ書き込みまたはマスタ側ディスクアレイからのデータ読み出し、更にはマスタ側ディスクアレイからの次にコピーすべきデータの読み出しの期間を利用して、キャッシュメモリに読み込まれたデータをバックアップ側ディスクアレイに効率的にコピーすることが可能となる。 In this way, using the period during which the data read into the cache memory is copied to the backup side disk array, the data write to the master side disk array requested from the host or the data read from the master side disk array, Furthermore, reading of data to be copied next from the master side disk array can be executed efficiently. In other words, using the period of data writing to the master side disk array requested from the host or data reading from the master side disk array, and further reading of data to be copied next from the master side disk array, Data read into the cache memory can be efficiently copied to the backup-side disk array.
また、上記キャッシュメモリを電源の遮断時にも当該メモリに格納されているデータを保持可能な構成とすると共に、当該キャッシュメモリを有効に利用するために、マスタ側ディスクアレイからキャッシュメモリに読み込まれたデータが、当該データがバックアップ側ディスクアレイの複数のディスクドライブのライトキャッシュメモリから当該ディスクドライブのディスク媒体に実際に書き込まれると予測される時間を待ってコピー制御手段によってクリアされる構成とすると良い。このようにすると、コピー制御手段が上記時間を待っている期間に電源遮断が発生しても、その後電源が復旧した場合に、上記キャッシュメモリを利用して、バックアップ側ディスクアレイの複数のディスクドライブのデータを復元させることが可能となる。 In addition, the cache memory is configured to be able to retain data stored in the memory even when the power is cut off, and is read from the master side disk array into the cache memory in order to effectively use the cache memory. The data may be cleared by the copy control unit after waiting for a time when the data is predicted to be actually written from the write cache memory of the plurality of disk drives of the backup side disk array to the disk medium of the disk drive. . In this way, even if the power cut occurs during the period when the copy control unit waits for the time, when the power is restored after that, the plurality of disk drives of the backup side disk array are utilized using the cache memory. It becomes possible to restore the data.
また、マスタ側ディスクアレイから読み出されたデータと当該データのアドレスとが、一定サイズのデータブロック単位にキャッシュメモリに格納される構成とし、キャッシュメモリに格納されたデータをバックアップ側ディスクアレイの複数のディスクドライブに上記ライトバックモードで書き込んだ後に当該データをキャッシュメモリからクリアし、当該データのアドレスのみ上記予測される時間を待ってクリアするならば、キャッシュメモリの領域をより有効に利用できる。しかも、コピー制御手段が上記時間を待っている期間に電源遮断が発生しても、その後電源が復旧した場合に、キャッシュメモリに格納されているアドレスを利用してマスタ側ディスクアレイ及びバックアップ側ディスクアレイからデータを読み出して比較するならば、両データが一致していない場合、マスタ側ディスクアレイから読み出されたデータでバックアップ側ディスクアレイのデータを復元させることが可能となる。 In addition, the data read from the master side disk array and the address of the data are stored in the cache memory in units of data blocks of a certain size, and the data stored in the cache memory is stored in the backup side disk array. If the data is cleared from the cache memory after writing to the disk drive in the write back mode, and only the address of the data is cleared after waiting for the predicted time, the area of the cache memory can be used more effectively. In addition, even if the power is cut off during the period when the copy control unit waits for the above time, when the power is restored after that, the master side disk array and the backup side disk are used by using the address stored in the cache memory. If data is read from the array and compared, if the two data do not match, the data in the backup side disk array can be restored with the data read from the master side disk array.
本発明によれば、ディスクアレイ内で冗長データが書き込まれるディスクドライブのライトキャッシュメモリのみをライトバックモードで用いることにより、当該ディスクアレイのデータの保全性を維持しながら、当該ディスクアレイ全体のデータ書き込みに要する時間を短縮することができる。 According to the present invention, only the write cache memory of the disk drive into which redundant data is written in the disk array is used in the write back mode, so that the data of the entire disk array is maintained while maintaining the integrity of the data of the disk array. The time required for writing can be shortened.
以下、本発明の実施の形態につき図面を参照して説明する。
[第1の実施形態]
図1は本発明の第1の実施形態に係るコンピュータシステムの構成を示すブロック図である。図1のコンピュータシステムは、ディスクアレイ10と、このディスクアレイ10を制御するアレイコントローラ(ディスクアレイコントローラ)20と、各種アプリケーションを実行するホスト(ホストコンピュータ)30とから構成される。ホスト30は、ディスクアレイ10を外部記憶装置として用いる。
Embodiments of the present invention will be described below with reference to the drawings.
[First Embodiment]
FIG. 1 is a block diagram showing a configuration of a computer system according to the first embodiment of the present invention. The computer system shown in FIG. 1 includes a
ディスクアレイ10は、複数のディスクドライブ、例えば4台のHDD(磁気ディスクドライブ)110(#0),111(#1),112(#3),113(#4)から構成磁気ディスクドライブされるRAIDである。ここでは、ディスクアレイ10は、RAID1レベルのディスクアレイ、いわゆるミラーリングディスクアレイとして用いられる。ディスクアレイ10は、RAID1マスタ11MとRAID1スレーブ11Sとから構成される。RAID1マスタ11Mは、ホスト30から要求されたデータを書き込むのに用いられる。RAID1スレーブ11Sは、ホスト30から要求されたデータと同一のデータを冗長データ(ミラーデータ)として書き込むのに用いられる。つまりRAID1スレーブ11Sは、RAID1マスタ11Mの複製を格納するのに用いられる。図1の例では、RAID1マスタ11MはHDD110(#0),111(#1)から構成され、RAID1スレーブ11SはHDD112(#2),113(#3)から構成される。
The
HDD#0乃至#3は、それぞれ当該HDD#0乃至#3のディスク(ディスク媒体)に書き込むべきデータを一時格納するためのライトキャッシュメモリ(WC)110a乃至113aを有する。
The
アレイコントローラ20は、ライト制御部21とWC制御部(ライトキャッシュ制御部
)22とを含む。ライト制御部21は、ホスト30からの書き込み要求を受けて、要求されたデータ(要求データ)をRAID1マスタ11Mに書き込むと共に、当該要求データに対応する冗長データ(ここでは、要求データと同一の冗長データ)をRAID1スレーブ11Sに書き込むための制御を行う。WC制御部22は、HDD#0乃至#3が有するライトキャッシュメモリ110a乃至113aの各々をライトバックモードで使用するか、或いはライトスルーモードで使用するか、つまりライトバックキャッシュON(WBC−ON)の状態またはライトバックキャッシュOFF(WBC−OFF)の状態のいずれで使用するかを制御する。本実施形態において、ライト制御部21及びWC制御部22は、アレイコントローラ20の図示せぬマイクロプロセッサ(コンピュータ)のプログラムメモリにインストールされた制御プログラムを当該マイクロプロセッサが読み取って実行することにより実現される。このプログラムは、コンピュータで読み取り可能な記憶媒体に予め格納して頒布可能である。また、このプログラムが、ネットワークを介してダウンロード(頒布)されても構わない。
The
次に、図1のシステムにおけるアレイコントローラ20による制御について図2及び図3を参照して説明する。図2はアレイコントローラ20のWC制御部22によるライトキャッシュメモリの制御の手順を示すフローチャート、図3はアレイコントローラ20のライト制御部21による書き込み制御に応じて実行されるHDD#0乃至#3の動作を従来と対比して説明するためのタイミングチャートである。
Next, control by the
まず、WC制御部22は、例えばシステムの立ち上げ時に、RAID1マスタ11M側の各HDD、即ちHDD#0及び#1の各々を、ライトスルーモード(WBC−OFF)に設定する(ステップS1)。またWC制御部22は、RAID1スレーブ11S側の各HDD、即ちHDD#2及び#3の各々を、ライトバックモード(WBC−ON)に設定する(ステップS2)。以後、RAID1マスタ11M側のHDD#0及び#1が有するライトキャッシュメモリ110a及び111aはライトスルーモードで使用され、RAID1スレーブ11S側のHDD#2及び#3が有するライトキャッシュメモリ112a及び113aはライトバックモードで使用される。
First, the
今、ホスト30からアレイコントローラ20に対して、ディスクアレイ10にデータDを書き込むことが要求されたものとする。このデータDは例えばデータD1及びD2に分割される。このデータD1及びD2は、RAID1マスタ11MのそれぞれHDD#0及び#1に分散して書き込まれる。また、このデータD1及びD2は、RAID1スレーブ11SのそれぞれHDD#2及び#3にも書き込まれる。
Now, it is assumed that the
従来は、RAID1マスタ11M及びRAID1スレーブ11Sへのデータ書き込みは、いずれもライトスルーモードで行われている。この場合、RAID1マスタ11MのHDD#0及び#1と、RAID1スレーブ11SのHDD#2及び#3とに対するデータ書き込みに要する時間、即ちHDD#i(i=1,2,3,4)に対するデータ書き込みに要する時間は、図3(a)に示すように、HDD#iにおけるデータ処理時間(ハッチングが施された棒線の部分の期間)と、HDD#iにおけるヘッドシーク時間、回転待ち時間及びデータ転送時間の和(黒で塗りつぶされた棒線の部分の期間)とを加算したものとなる。
Conventionally, data writing to the
データ処理時間とは、アレイコントローラ20(のライト制御部21)からの書き込み要求をHDD#iが受け取って解釈するのに要する時間である。ヘッドシーク時間とは、要求されたデータの書き込みを開始すべきディスク上の先頭トラックにヘッドを移動するのに要する時間である。また回転待ち時間とは、ヘッドが上記先頭トラックに移動された後(つまりシーク完了後)、要求されたデータの書き込みを開始すべき先頭セクタがヘッド位置に到達するまでディスクが回転する時間である。データ転送時間とは、ディスクへのデータ転送に要する時間である。 The data processing time is the time required for the HDD #i to receive and interpret a write request from the array controller 20 (its write control unit 21). The head seek time is the time required to move the head to the first track on the disk where writing of the requested data should be started. The rotation waiting time is the time for which the disk rotates after the head is moved to the head track (that is, after the seek is completed) until the head sector to start writing the requested data reaches the head position. . Data transfer time is the time required to transfer data to the disk.
ここで、データ処理時間及びデータ転送時間はHDD#iに殆ど依存しない。これに対して、シーク時間及び回転待ち時間はHDD#i毎に異なる。このため、図3(a)の例のように、HDD#0乃至#3で時刻t1に同時にデータ書き込み処理が開始されたとしても、データ書き込み処理が完了する時刻はHDD#i毎に異なる。
Here, the data processing time and the data transfer time hardly depend on the HDD #i. On the other hand, the seek time and the rotation waiting time are different for each HDD #i. For this reason, as in the example of FIG. 3A, even if the data writing process is started simultaneously at time t1 in
図3(a)の例では、RAID1マスタ11Mのデータ書き込み処理の完了時刻はHDD#0のデータ書き込み処理の完了時刻で決まり、時刻t11である。これに対し、RAID1スレーブ11Sのデータ書き込み処理の完了時刻はHDD#2のデータ書き込み処理の完了時刻で決まり、時刻t11より時間T1後の時刻t12である。つまり、ディスクアレイ10全体では、データ書き込み処理の完了時刻はRAID1スレーブ11SのHDD#2のデータ書き込み処理の完了時刻で決まり、t12となる。
In the example of FIG. 3A, the completion time of the data writing process of the
ところが本実施形態では、RAID1スレーブ11Sの各HDD#2及び#3のライトキャッシュメモリ112a及び113aは、RAID1マスタ11Mの各HDD#0及び#1のライトキャッシュメモリ110a及び111aとは異なり、ライトバックモードで使用される。このライトバックモードでは、各HDD#2及び#3に書き込むべきデータ(D1及びD2)がライトキャッシュメモリ112a及び113aに書き込まれた段階で、当該HDD#2及び#3への書き込みが完了したものとして、当該HDD#2及び#3からアレイコントローラ20に書き込み完了が通知される。
However, in this embodiment, the
このため本実施形態では、図3(b)に示すように、図3(a)の場合と同様にHDD#0乃至#3で時刻t1に同時にデータ書き込み処理が開始されたものとすると、RAID1スレーブ11SのHDD#2及び#3では、RAID1マスタ11Mの各HDD#0及び#1と比べて、シーク時間+回転待ち時間の分だけ早い時刻t13に書き込みが完了することになる。図3(b)におけるHDD#2及び#3でのデータ書き込み処理に要する時間は、データ処理時間(ハッチングが施された棒線の部分の期間)と、データ転送時間(黒で塗りつぶされた棒線の部分の期間)とを加算したものとなる。この場合、t12−t13で表される時間が、RAID1スレーブ11Sにおいてライトバックモード(WBC−ON)でデータ書き込みを行ったことによる効果である。但し、RAID1マスタ11Mでは、図3(b)に示すように、時刻t11まではデータ書き込みは完了しないことから、実際に短縮される時間はt12−t11=T1である。つまり、ディスクアレイ10全体では、データ書き込み処理の完了時刻はRAID1マスタ11MのHDD#0のデータ書き込み処理の完了時刻で決まり、t11となる。
Therefore, in this embodiment, as shown in FIG. 3B, assuming that the data writing process is started at the time t1 at the same time in
このように本実施形態では、RAID1スレーブ11S側のHDD#2及び#3のライトキャッシュメモリ112a及び113aは、ライトバックモードで用いられる。ライトキャッシュメモリ112a及び113aに書き込まれたデータ(D1及びD2)は、HDD#2及び#3における処理の空き時間等を利用して、当該HDD#2及び#3のディスクに書き込まれる(ライトバックされる)。このため、ディスクアレイ10全体におけるデータ書き込み処理の完了時刻t11以降、HDD#2及び#3のライトキャッシュメモリ112a及び113aのデータが当該HDD#2及び#3のディスクに実際に書き込まれる前に電源遮断が発生すると、ライトキャッシュメモリ112a及び113aのデータは消失するおそれがある。
As described above, in this embodiment, the
しかし本実施形態では、RAID1マスタ11M側のHDD#0及び#1のライトキャッシュメモリ110a及び111aは、ライトスルーモードで用いられる。このため、上記時刻t11の時点では、データ(D1及びD2)はHDD#0及び#1のディスクに書き込まれている。したがって、このHDD#0及び#1のディスクに書き込まれたデータ(D1及びD2)を用いて、RAID1スレーブ11S側のHDD#2及び#3のデータ(冗長データ)を復元できる。
However, in the present embodiment, the
[第2の実施形態]
図4は本発明の第2の実施形態に係るコンピュータシステムの構成を示すブロック図である。図4において、図1と同様の要素には便宜的に同一参照符号を付してある。図4のコンピュータシステムが図1のコンピュータシステムと異なるのは、RAID1を適用するディスクアレイ10に代えて、例えばRAID5を適用するディスクアレイ40が用いられている点にある。ここでは、ディスクアレイ40が3台のHDD41(#0),42(#1),43(#2)から構成されるものとする。HDD41(#0),42(#1),43(#2)は、それぞれライトキャッシュメモリ41a,42a,43aを有する。
[Second Embodiment]
FIG. 4 is a block diagram showing a configuration of a computer system according to the second embodiment of the present invention. In FIG. 4, the same elements as those in FIG. The computer system of FIG. 4 is different from the computer system of FIG. 1 in that, for example, a
RAID5では、冗長データ(パリティデータ)PはHDD41(#0),42(#1),43(#2)に分散して配置(格納)される。この点で、RAID5は、冗長データ(パリティデータ)Pが常に特定のHDDに配置されるRAID3と異なる。
In RAID5, redundant data (parity data) P is distributed (arranged) in HDDs 41 (# 0), 42 (# 1), and 43 (# 2). In this respect, RAID 5 is different from
今、図4のシステムにおいて、ホスト30から要求されたデータ(要求データ)DをデータD1及びD2に分割して、ディスクアレイ40に書き込むものとする。この場合、ライト制御部21はデータD1及びD2のパリティデータPを冗長データPとして生成する。この冗長データPをHDD#0,#1,#2のいずれに書き込むかは、要求データDの格納先アドレスに基づいてライト制御部21によって決定される。このため第2の実施形態では、WC制御部22は第1の実施形態と異なって、HDD#0乃至#2が有するライトキャッシュメモリ41a乃至43aの各々をライトバックモードで使用するか、或いはライトスルーモードで使用するかを、ライト制御部21によるデータ書き込みの都度設定する必要がある。
Now, in the system of FIG. 4, it is assumed that data (request data) D requested from the
そこで、データ書き込み時のWC制御部22によるライトキャッシュメモリの制御について、図5のフローチャートを参照して説明する。まず、WC制御部22は、ライト制御部21によるデータ書き込みに際し、当該ライト制御部21に対して冗長データ(パリティデータ)Pの書き込み先となるHDDを問い合わせる(ステップS11)。するとライト制御部21からWC制御部22に対し、冗長データ書き込み先HDDが通知される。なお、ライト制御部21によるデータ書き込みに際し、当該ライト制御部21からWC制御部22に対して冗長データ書き込み先HDDが自動的に通知される構成とすることも可能である。WC制御部22は、ライト制御部21から通知された冗長データ書き込み先HDDのみライトバックモード(WBC−ON)に設定し、残りのHDDは全てライトスルーモード(WBC−OFF)に設定する(ステップS12)。図4のシステムの状態は、ライト制御部21からWC制御部22に対して、HDD#2が冗長データPの書き込み先HDDとして通知された結果、当該HDD#2がライトバックモードに設定され、残りのHDD#0及び#1がライトスルーモードに設定されている様子を示している。なお、ディスクアレイ40がRAID3を適用するならば、このモード設定を、第1の実施形態と同様に予め(例えばシステムの立ち上げ時に)行うことが可能である。また、ライトバックモード、ライトスルーモードは、HDDへの書き込みコマンド毎に設定することもできる。
Therefore, the control of the write cache memory by the
図4のシステムにおいて、ディスクアレイ40全体におけるデータ書き込み処理の完了時刻以降、HDD#2のライトキャッシュメモリ43aのデータ、つまり冗長データPが当該HDD#2のディスクに実際に書き込まれる前に電源遮断が発生したものとする。このとき、冗長データPに対応するデータD1及びD2は、それぞれHDD#0及びHDD#1のディスクに書き込まれている。したがって、このHDD#0及び#1のディスクに書き込まれたデータD1及びD2を用いて、HDD#2のディスクに書き込むべき冗長データPを復元できる。
In the system shown in FIG. 4, after the completion of the data writing process in the
[第3の実施形態]
図6は本発明の第3の実施形態に係るコンピュータシステムの構成を示すブロック図である。図6において、図1と同様の要素には便宜的に同一参照符号を付してある。図6のコンピュータシステムの特徴は、図1中のディスクアレイ10に相当する2つのディスクアレイを、それぞれマスタ論理ユニット(マスタLU)50及びバックアップ論理ユニット(バックアップLU)51として有している点にある。バックアップLU51は、マスタLU50の内容を例えば定期的にバックアップするのに用いられる。マスタLU50は、図1中のRAID1マスタ11M及びRAID1スレーブ11Sに相当する、それぞれRAID1マスタ500(#0)及びRAID1スレーブ501(#0)から構成される。同様にバックアップLU51は、RAID1マスタ510(#1)及びRAID1スレーブ511(#1)から構成される。
[Third Embodiment]
FIG. 6 is a block diagram showing a configuration of a computer system according to the third embodiment of the present invention. In FIG. 6, the same elements as those in FIG. 1 are denoted by the same reference numerals for the sake of convenience. The computer system of FIG. 6 is characterized in that it has two disk arrays corresponding to the
また図6のコンピュータシステムでは、図1中のアレイコントローラ20に代えてアレイコントローラ200が用いられる。アレイコントローラ200は、ライト制御部21及びWC制御部22に加えてコピー制御部23を有している。コピー制御部23は、マスタLU50のデータのバックアップをバックアップLU51に採取するために、マスタLU50のデータをバックアップLU51にコピーするための制御を行う。このコピー制御機能は、インボックスレプリケーション(IBR)と呼ばれる。アレイコントローラ20は更に、データ復元部24、キャッシュメモリ25及びバックアップ用バッテリ26を有している。但し、データ復元部24、キャッシュメモリ25及びバックアップ用バッテリ26は、後述する変形例で用いられるため、ここでの説明は省略する。1
次に、図6のシステムにおけるアレイコントローラ200による制御について図7及び図8を参照して説明する。図7はアレイコントローラ200のWC制御部22によるライトキャッシュメモリの制御の手順を示すフローチャート、図8はアレイコントローラ20のコピー制御部23によるコピー制御に応じて実行されるRAID1マスタ#0及びRAID1スレーブ#0並びにRAID1マスタ#1及びRAID1スレーブ#1の動作を従来と対比して説明するためのタイミングチャートである。
In the computer system of FIG. 6, an
Next, control by the
まず、ライト制御部21は、例えばシステムの立ち上げ時に、マスタLU50に含まれているRAID1マスタ500(#0)側の各HDDを、ライトスルーモード(WBC−OFF)に設定する(ステップS21)。またWC制御部22は、マスタLU50に含まれているRAID1スレーブ501(#0)側の各HDDと、バックアップLU51に含まれている各HDD、即ちRAID1マスタ510(#1)側の各HDD及びRAID1スレーブ511(#1)側の各HDDを、ライトバックモード(WBC−ON)に設定する(ステップS22)。以後、RAID1マスタ#0側の各HDDが有するライトキャッシュメモリはライトスルーモードで使用され、RAID1スレーブ#0及び#1並びにRAID1マスタ#1側の各HDDが有するライトキャッシュメモリはライトバックモードで使用される。ホスト30からの書き込み要求に対するデータの書き込みは、マスタLU50に対してのみ行われる。この場合、要求されたデータの書き込みは、第1の実施形態から理解されるように、マスタLU50に含まれているRAID1マスタ500へのデータ書き込みが完了した時点で完了する。
First, the
今、ホスト30からアレイコントローラ200に対してマスタLU50のデータのバックアップが要求されたものとする。この場合、アレイコントローラ200のコピー制御部23は、マスタLU50のデータをバックアップLU51にコピーするデータコピー処理を実行する。このデータコピー処理は、マスタLU50に含まれているRAID1マスタ#0及びRAID1スレーブ#0の各HDDのデータを一定サイズ(ここでは、1回のライトサイズ)毎に読み出す処理と、一定サイズ(1ライトサイズ)のデータの読み出し完了後に、その読み出されたデータを、バックアップLU51に含まれているRAID1マスタ#1及びRAID1スレーブ#1の各HDDに書き込む処理とから構成される。
Assume that the
もし、バックアップLU51側のRAID1マスタ#1及びRAID1スレーブ#1の各HDDが、従来と同様にライトスルーモードに設定されている場合、一定サイズのデータの読み出し処理と書き込み処理とは、図8(a)に示すようなタイミングで実行される。図8(a)の例では、マスタLU50側のRAID1マスタ#0及びRAID1スレーブ#0(の各HDD)からのデータ読み出し処理が時刻t20で開始されて時刻t21で完了した様子が示されている。また図8(a)の例では、RAID1マスタ#0及びRAID1スレーブ#0から読み出されたデータをバックアップLU51側のRAID1マスタ#1及びRAID1スレーブ#1に書き込むデータ書き込み処理が時刻t21で開始されて時刻t22で完了した様子が示されている。図8においてハッチングが施された棒線の長さは、図3と同様にデータ処理時間を表す。また、黒で塗りつぶされた棒線の長さは、図3と同様に、ライトスルーモードではヘッドシーク時間と回転待ち時間とデータ転送時間の和を表し、ライトバックモードではデータ転送時間を表す。
If the HDDs of the
ところが本実施形態では、バックアップLU51側のRAID1マスタ#1及びRAID1スレーブ#1の各HDDがライトバックモードに設定されている。このため、上記一定サイズのデータの読み出し処理と書き込み処理とは、図8(b)に示すようなタイミングで実行される。この図8(b)の例では、RAID1マスタ#0及びRAID1スレーブ#0から読み出されたデータをバックアップLU51側のRAID1マスタ#1及びRAID1スレーブ#1に書き込むデータ書き込み処理は、図8(a)の場合と同様に時刻t21で開始されるものの、当該データ書き込み処理が完了する時刻は、図8(a)の場合より時間T2だけ短い時刻t23(t22−t23=T2)となる。つまり、バックアップLU51側のRAID1マスタ#1及びRAID1スレーブ#1の各HDDをライトバックモードに設定することで、一定サイズのデータのコピーに要する時間を、従来よりも時間T2だけ短縮することができる。
However, in this embodiment, the HDDs of the
[第1の変形例]
次に、上記第3の実施形態の第1の変形例について説明する。この第1の変形例では、マスタLU50のデータをバックアップLU51にバックアップ(コピー)する処理の期間にホスト30からデータの書き込み/読み出しが要求された場合に、その要求されたデータ書き込み/読み出しが実行されることを前提としている。第1の変形例の特徴は、この要求されたデータ書き込み/読み出しがマスタLU50(側のRAID1マスタ#0及びRAID1スレーブ#0)のみを対象に行われることに着目し、その期間もバックアップLU51側でのデータコピーのためのデータ書き込みが有効に行われるようにした点にある。
[First Modification]
Next, a first modification of the third embodiment will be described. In the first modification, when data write / read is requested from the
以下、上記第3の実施形態の第1の変形例について図9及び図10を参照して説明する。図9はアレイコントローラ200のコピー制御部23によるコピー制御の手順を示すフローチャート、図10はアレイコントローラ20のコピー制御部23によるコピー制御に応じて実行されるRAID1マスタ#0及びRAID1スレーブ#0でのデータ読み出し処理並びにRAID1マスタ#1及びRAID1スレーブ#1でのデータ書き込み処理と、ライト制御部21による制御に応じて実行されるRAID1マスタ#0及びRAID1スレーブ#0でのデータ書き込み処理とを従来と対比して説明するためのタイミングチャートである。なお、図10の例では、ライト制御部21による制御に応じて実行されるRAID1スレーブ#0でのデータ書き込み処理は、RAID1マスタ#0でのデータ書き込み処理(従来のデータ書き込み処理)と同様にライトスルーモードで行われるものとする。
Hereinafter, a first modification of the third embodiment will be described with reference to FIGS. FIG. 9 is a flowchart showing a copy control procedure performed by the
一般にアレイコントローラ20は、図6に示すようにキャッシュメモリ25を有している。ここでは、キャッシュメモリ25のサイズは、バックアップLU51(側のRAID1マスタ#1及びRAID1スレーブ#1)に1回のライト動作でデータを書き込むことができる最大のサイズ(1回のライトサイズ)より十分大きい(例えば2倍以上)ものとする。コピー制御部23は、マスタLU50側(のRAID1マスタ#0及びRAID1スレーブ#0)から読み出すデータ(バックアップLU51側にコピーすべきデータ)を、バックアップLU51側(のRAID1マスタ#1及びRAID1スレーブ#1)に書き込むデータのサイズ(1回のライトサイズ)より大きいサイズ(2倍以上のサイズ、例えば6倍のサイズ)でアレイコントローラ200内に読み込み、当該アレイコントローラ200内のキャッシュメモリ25に一時格納する(ステップS31)。キャッシュメモリ25には、例えば一定サイズのデータブロック毎に、当該ブロックのデータだけでなく、当該ブロックのデータの書き込み先を示すアドレスが格納される。
In general, the
コピー制御部23は、キャッシュメモリ25に格納されたデータを、1回のライトサイズを単位に取り出して、バックアップLU51側(のRAID1マスタ#1及びRAID1スレーブ#1)に書き込む(ステップS32)。コピー制御部23は、このステップS32を、キャッシュメモリ25に格納されている全データについて繰り返す(ステップS33)。またコピー制御部23は、上記ステップS31を、マスタLU50からバックアップLU51にコピーすべき全データについて繰り返す(ステップS34)。
The
このコピー制御部23の制御により、ホスト30から要求されたデータをマスタLU50側に書き込む(またはマスタLU50側から読み出す)期間を有効に利用できる。もし、マスタLU50からバックアップLU51にコピーすべきデータを1ライトサイズ単位でマスタLU50から読み出した場合、1ライトサイズのデータの読み出し処理と書き込み処理とは、図10(a)に示すようなタイミングで実行される。図10において右斜め上から左斜め下に向かう方向のハッチングが施された棒線の長さは、図3と同様にデータ処理時間を表す。また、左斜め上から右斜め下に向かう方向のハッチングが施された棒線の長さは、ヘッドシーク時間と回転待ち時間との和を表す。また、黒で塗りつぶされた棒線の長さは、データ転送時間を表す。
Under the control of the
図10(a)の例では、マスタLU50側のRAID1マスタ#0及びRAID1スレーブ#0からのデータ読み出し処理が時刻t30で開始されて、それぞれ時刻t31及びt32(t31>t32)で完了した様子が示されている。この場合、マスタLU50全体では、当該マスタLU50からのデータ読み出し処理は時刻t32で完了したことになる。
In the example of FIG. 10A, the data read processing from the
すると、マスタLU50のRAID1マスタ#0及びRAID1スレーブ#0では図10(a)に示すように、それぞれ時刻t32及びt31から、ホスト30により要求されたデータを書き込む処理が開始される。このホスト30により要求されたデータをRAID1マスタ#0及びRAID1スレーブ#0に書き込む処理は、それぞれ時刻t34及びt33(時刻t34>t32)に完了する。この場合、マスタLU50からバックアップLU51にコピーすべき次の1ライトサイズのデータをRAID1マスタ#0及びRAID1スレーブ#0から読み出す処理が、それぞれ時刻t34及びt33から開始される。この処理は、マスタLU50全体では、図10(a)の場合、時刻t35に完了する。
Then, in the
一方、バックアップLU51のRAID1マスタ#1及びRAID1スレーブ#1では、RAID1マスタ#0及びRAID1スレーブ#0から読み出された1ライトサイズのデータを書き込む処理が、図10(a)に示すように時刻t32から開始される。この処理はライトバックモードで実行されることから、短時間で完了する、しかし、次の1ライトサイズのデータを書き込む処理は、時刻t35まで待たないと実行されない。
On the other hand, in the
これに対して第1の変形例では、マスタLU50からバックアップLU51にコピーすべきデータが、時刻t30から開始される読み出し処理で、1回のライトサイズより大きいサイズ(ここでは6倍のサイズ)でアレイコントローラ200のキャッシュメモリ25に読み込まれる。このため、キャッシュメモリ25に読み込まれたデータを、ホスト30から要求されたデータのマスタLU50への書き込み(またはマスタLU50からの読み出し)に必要な時間T11と、次にマスタLU50からバックアップLU51にコピーすべき、1回のライトサイズより大きいサイズのデータの読み出しに必要な期間T12とを利用して、図10(b)に示すように、時刻t37から1回のライトサイズ単位で、順次バックアップLU51に書き込むことが可能となる。ここで、マスタLU50からキャッシュメモリ25に読み込むデータのサイズを、当該データを1ライトサイズ単位に分割してバックアップLU51に書き込むのに要する時間Tが上記時間T11(=t39−t37)とT12(=t40−t39)との和を超えない最大の時間となるサイズとすると良い。
On the other hand, in the first modification, the data to be copied from the
[第2の変形例]
次に、上記第3の実施形態の第2の変形例について説明する。本実施形態において、アレイコントローラ200内のキャッシュメモリ25は、バックアップ用バッテリ26によってバックアップされる。但し、マスタLU50からキャッシュメモリ25に読み出されたバックアップLU51にコピーすべきデータは、次のデータのために速やかにクリアされることが好ましい。そこで、キャッシュメモリ25に読み出されたデータが全てバックアップLU51側のHDDのライトキャッシュメモリにライトバックモードで書き込まれた段階で、当該キャッシュメモリ25のデータをクリアすることが考えられる。しかし、キャッシュメモリ25のデータをクリアした後、バックアップLU51側のHDDのライトキャッシュメモリに書き込まれているデータが当該HDDのディスクに実際に書き込まれる前に電源遮断が発生すると、当該ライトキャッシュメモリのデータは消失するおそれがある。
[Second Modification]
Next, a second modification of the third embodiment will be described. In this embodiment, the
このような不具合を防止するため、第3の実施形態の第2の変形例では、アレイコントローラ200のコピー制御部23によるコピー制御が、図11に示すフローチャートに従って実行される。この図11のフローチャートにおいて、図9のフローチャートと同様の部分には同一参照符号を付してある。
In order to prevent such a problem, in the second modification of the third embodiment, copy control by the
以下、アレイコントローラ200のコピー制御部23によるコピー制御について、図11を参照して、図9のフローチャートと相違する部分について説明する。コピー制御部23は、マスタLU50からアレイコントローラ200のキャッシュメモリ25に読み出された、1ライトサイズより大きいサイズのデータを全てバックアップLU51側のHDDのライトキャッシュメモリに書き込むと(ステップS33)、一定時間を待つ(ステップS33a)。この一定時間は、バックアップLU51側のHDDのライトキャッシュメモリにデータが書き込まれた後、当該データを当該HDDのディスクに実際に書き込むのに必要な時間に設定される。コピー制御部23は、上記一定時間が経過すると、アレイコントローラ20のキャッシュメモリ25に読み出されているデータをクリアする(ステップS33b)。その後、コピー制御部23はステップS34の判定を行う。
Hereinafter, copy control by the
これにより第2の変形例においては、アレイコントローラ20のキャッシュメモリ25に読み出されているデータをクリアした後に、システムの電源遮断が発生しても、その時点には、キャッシュメモリ25から取り出されてバックアップLU51側の各HDDのライトキャッシュメモリに書き込まれれたデータは、当該HDDのディスクに実際に書き込まれている。したがって、データの保全性を確保しながら、アレイコントローラ20のキャッシュメモリ25を有効に利用できる。
As a result, in the second modification, even if the system power is cut off after the data read to the
アレイコントローラ20のデータ復元部24は、コピー制御部23が上記一定時間を待っている期間にシステムの電源遮断が発生した場合、バックアップ用バッテリ26のバックアップによってキャッシュメモリ25に保持されているデータを、電源復旧後にバックアップLU51側の各HDDにライトスルーモードで書き込む。つまりデータ復元部24は、キャッシュメモリ25に保持されているデータを用いて、バックアップLU51のデータを復旧する。
The
前記したようにキャッシュメモリ25には、データブロック毎に当該ブロックのデータの他に書き込み先を示すアドレスが格納される。しかし、キャッシュメモリ25に保持されているデータをバックアップLU51のHDDにライトバックモードで書き込んだ後は、アドレスに比較して大きなメモリサイズを必要とするデータを当該キャッシュメモリ25からクリアして、そのクリアされたキャッシュメモリ25の領域を速やかに開放するようにしても良い。ここでは、コピー制御部23が上記一定時間を待っている期間にシステムの電源遮断が発生した場合、データ復元部24は電源が復旧した後に、キャッシュメモリ25に保持されているアドレスに基づいて、マスタLU50及びバックアップLU51からデータを読み出す必要がある。そしてデータ復元部24は、両データを比較して両データが一致しているかを判定し、一致していない場合、マスタLU50側のデータでバックアップLU51側のデータを復元する。
As described above, the
なお、本発明は、上記実施形態またはその変形例そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態またはその変形例に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態またはその変形例に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態または変形例に亘る構成要素を適宜組み合せてもよい。 In addition, this invention is not limited to the said embodiment or its modification example as it is, A component can be deform | transformed and embodied in the range which does not deviate from the summary in an implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the embodiment or the modification thereof. For example, you may delete a some component from all the components shown by embodiment or its modification. Furthermore, you may combine suitably the component covering different embodiment or a modification.
10,40…ディスクアレイ、 11M,500,510…RAID1マスタ、 11S,501,511…RAID1スレーブ、20,200…アレイコントローラ、21…ライト制御部、22…WC制御部(ライトキャッシュ制御部)、23…コピー制御部、24…データ復元部、25…キャッシュメモリ、26…バックアップ用バッテリ、50…マスタLU(マスタ論理ユニット、マスタ側ディスクアレイ)、51…バックアップLU(バックアップ論理ユニット、バックアップ側ディスクアレイ)、41a,42a,43a,110a,111a,112a,113a…ライトキャッシュメモリ(WC)、41,42,43,110,111,112,113…HDD(磁気ディスクドライブ)
10, 40 ... disk array, 11M, 500, 510 ...
Claims (9)
データ及び当該データの冗長データを前記ディスクアレイの前記複数のディスクドライブに分散して書き込むための制御を行うライト制御手段と、
前記複数のディスクドライブのうち前記冗長データが書き込まれるディスクドライブのみ、前記ライトキャッシュメモリにデータが書き込まれた段階で当該ドライブへの書き込みを完了させるためのライトバックモードに設定するライトキャッシュ制御手段と
を具備することを特徴とするアレイコントローラ。 In an array controller for controlling at least one disk array having redundancy composed of a plurality of disk drives having a write cache memory for temporarily storing write data to be written to a disk medium,
Write control means for performing control to distribute and write data and redundant data of the data to the plurality of disk drives of the disk array;
Write cache control means for setting a write back mode to complete writing to the write cache memory only when the redundant data is written in the plurality of disk drives when the data is written to the write cache memory; An array controller comprising:
前記ライトキャッシュ制御手段は、前記バックアップ側ディスクアレイの前記複数のディスクドライブの全てを前記ライトバックモードに設定する
ことを特徴とする請求項1記載のアレイコントローラ。 As the master side disk array in which the data requested by the write request from the host and the redundant data of the data is written to the at least one disk array, the data of the master side disk array is read out and a plurality of write cache memories are provided. Further comprising copy control means for performing control for copying to a backup side disk array having redundancy composed of disk drives,
The array controller according to claim 1, wherein the write cache control unit sets all of the plurality of disk drives of the backup-side disk array to the write-back mode.
前記コピー制御手段は、前記バックアップ側ディスクアレイに1回で書き込むことができるデータの最大サイズである1ライトサイズよりも大きいサイズで前記マスタ側ディスクアレイのデータを前記キャッシュメモリに読み込み、当該キャッシュメモリに読み込まれたデータを複数回に分けて前記バックアップ側ディスクアレイにコピーする
ことを特徴とする請求項2記載のアレイコントローラ。 A cache memory for temporarily storing data read from the master disk array by the copy control means;
The copy control means reads the data of the master side disk array into the cache memory with a size larger than one write size that is the maximum size of data that can be written to the backup side disk array at one time, and the cache memory The array controller according to claim 2, wherein the data read in is copied into the backup-side disk array in a plurality of times.
前記コピー制御手段は、前記マスタ側ディスクアレイから前記キャッシュメモリに読み込まれたデータを、当該データが前記バックアップ側ディスクアレイの前記複数のディスクドライブの前記ライトキャッシュメモリから当該ディスクドライブのディスク媒体に実際に書き込まれると予測される時間を待ってクリアする
ことを特徴とする請求項3記載のアレイコントローラ。 The cache memory is configured so that data stored in the memory is not lost when the power is turned off.
The copy control means actually reads the data read from the master side disk array into the cache memory from the write cache memory of the plurality of disk drives of the backup side disk array to the disk medium of the disk drive. The array controller according to claim 3, wherein the array controller clears after waiting for a time predicted to be written to.
前記コピー制御手段は、前記マスタ側ディスクアレイから読み出されたデータと当該データのアドレスとを、一定サイズのデータブロック単位に前記キャッシュメモリに格納し、前記キャッシュメモリに格納されたデータを前記バックアップ側ディスクアレイの前記複数のディスクドライブに前記ライトバックモードで書き込んだ後に当該データを前記キャッシュメモリからクリアし、当該データのアドレスのみ前記予測される時間を待ってクリアする
ことを特徴とする請求項3記載のアレイコントローラ。 The cache memory is configured so that data stored in the memory is not lost when the power is turned off.
The copy control means stores the data read from the master side disk array and the address of the data in the cache memory in units of a fixed size data block, and the data stored in the cache memory is stored in the backup memory. The data is cleared from the cache memory after writing to the plurality of disk drives of the side disk array in the write back mode, and only the address of the data is cleared after waiting for the predicted time. 3. The array controller according to 3.
データ及び当該データの冗長データを前記ディスクアレイの前記複数のディスクドライブに分散して書き込むための制御を行うステップと、
前記複数のディスクドライブのうち前記冗長データが書き込まれるディスクドライブのみ、前記ライトキャッシュメモリにデータが書き込まれた段階で当該ドライブへの書き込みを完了させるためのライトバックモードに設定するステップと
を具備することを特徴とするディスクアレイ制御方法。 In a disk array control method for controlling at least one disk array having redundancy composed of a plurality of disk drives having a write cache memory for temporarily storing write data to be written to a disk medium,
Performing control to distribute and write data and redundant data of the data to the plurality of disk drives of the disk array;
Setting only a disk drive to which the redundant data is written among the plurality of disk drives to a write-back mode for completing writing to the drive when data is written to the write cache memory. And a disk array control method.
前記アレイコントローラに、
データ及び当該データの冗長データを前記ディスクアレイの前記複数のディスクドライブに分散して書き込むための制御を行うステップと、
前記複数のディスクドライブのうち前記冗長データが書き込まれるディスクドライブのみ、前記ライトキャッシュメモリにデータが書き込まれた段階で当該ドライブへの書き込みを完了させるためのライトバックモードに設定するステップと
を実行させるためのプログラム。 A program for causing an array controller that controls at least one disk array having redundancy to be configured of a plurality of disk drives having a write cache memory for temporarily storing write data to be written to a disk medium,
In the array controller,
Performing control to distribute and write data and redundant data of the data to the plurality of disk drives of the disk array;
Only the disk drive to which the redundant data is written out of the plurality of disk drives is set to a write back mode for completing the writing to the drive when the data is written to the write cache memory. Program for.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005091999A JP2006277042A (en) | 2005-03-28 | 2005-03-28 | Array controller, disk array control method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005091999A JP2006277042A (en) | 2005-03-28 | 2005-03-28 | Array controller, disk array control method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006277042A true JP2006277042A (en) | 2006-10-12 |
Family
ID=37211778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005091999A Pending JP2006277042A (en) | 2005-03-28 | 2005-03-28 | Array controller, disk array control method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006277042A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013161112A (en) * | 2012-02-01 | 2013-08-19 | Nec Corp | Information processor, controller, and information processing method |
US9189350B2 (en) | 2012-01-06 | 2015-11-17 | Nec Corporation | Disk array control apparatus, disk array apparatus, and disk array control method |
-
2005
- 2005-03-28 JP JP2005091999A patent/JP2006277042A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9189350B2 (en) | 2012-01-06 | 2015-11-17 | Nec Corporation | Disk array control apparatus, disk array apparatus, and disk array control method |
JP2013161112A (en) * | 2012-02-01 | 2013-08-19 | Nec Corp | Information processor, controller, and information processing method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7441081B2 (en) | Write-back caching for disk drives | |
JP3316500B2 (en) | Increase the number of drives in a RAID set while maintaining the integrity of the moved data | |
JP4486348B2 (en) | Disk array that suppresses drive operating time | |
US7721143B2 (en) | Method for reducing rebuild time on a RAID device | |
JP5353887B2 (en) | Disk array device control unit, data transfer device, and power recovery processing method | |
JP4930555B2 (en) | Control device, control method, and storage system | |
JP5409159B2 (en) | Information processing apparatus, information processing apparatus control method, and program | |
JP2009075759A (en) | Storage device, and method for managing data in storage device | |
JP2006268503A (en) | Computer system, disk unit and data update control method | |
JP2004213064A (en) | Raid device and logic device expansion method therefor | |
JP2001166993A (en) | Memory control unit and method for controlling cache memory | |
JP2010211734A (en) | Storage device using nonvolatile memory | |
JP2002259062A (en) | Storage device system and data copying method for data for the same | |
JP2007087263A (en) | Dump method in computer system having mirror memory configuration, dump control mechanism, and dump program | |
US7130973B1 (en) | Method and apparatus to restore data redundancy and utilize spare storage spaces | |
JP2000357059A (en) | Disk array device | |
JP2006099802A (en) | Storage controller, and control method for cache memory | |
JP2004213470A (en) | Disk array device, and data writing method for disk array device | |
JP2002099390A (en) | Disk controller | |
JP4398596B2 (en) | Disk array device | |
JP2006277042A (en) | Array controller, disk array control method, and program | |
JP2005107839A (en) | Array controller and disk array rebuilding method | |
JP2005107675A (en) | Disk array controller and method for duplicating disk drive | |
JP2009252001A (en) | Raid system, and method for restoring error sector | |
JP2007310548A (en) | Disk array device and data management method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080311 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080909 |