JP6912105B2 - Disk array system, control method of disk array system, and disk array device - Google Patents
Disk array system, control method of disk array system, and disk array device Download PDFInfo
- Publication number
- JP6912105B2 JP6912105B2 JP2019070012A JP2019070012A JP6912105B2 JP 6912105 B2 JP6912105 B2 JP 6912105B2 JP 2019070012 A JP2019070012 A JP 2019070012A JP 2019070012 A JP2019070012 A JP 2019070012A JP 6912105 B2 JP6912105 B2 JP 6912105B2
- Authority
- JP
- Japan
- Prior art keywords
- update data
- cache
- disk array
- array device
- data
- 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.)
- Active
Links
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Hardware Redundancy (AREA)
Description
後述の実施の形態は、例えば、ディスクアレイシステム、ディスクアレイシステムの制御方法、および、ディスクアレイ装置に関する。 The embodiments described below relate, for example, to a disk array system, a control method for the disk array system, and a disk array device.
一般に、複数のサイトを含むコンピュータシステムにおいては、メインサイト上のデータをリモートサイトにコピーすることがあり得る。メインサイトへのデータにおける処理負荷が高い場合に、リモートサイトを使って負荷分散を図ることもあり得る。あるいは、メインサイトで何らかのトラブルが発生した場合に、リモートサイトのデータを使って業務を継続することもあり得る。 In general, in a computer system containing multiple sites, it is possible to copy the data on the main site to a remote site. When the processing load on the data to the main site is high, it is possible to use a remote site to distribute the load. Alternatively, if some trouble occurs at the main site, the data at the remote site may be used to continue the business.
例えば、特許文献1には、正サイトでの災害発生時に副サイトで業務を継続するなどの開示が見られる(段落0002など)。また、特許文献1によれば、ディスクアレイを利用することもあり得る(段落0026など)。
For example, in
以下は例示である。このため、以下は本願発明の範囲を限定するものではない。 The following is an example. Therefore, the following does not limit the scope of the present invention.
一般に、複数のサイトを有するコンピュータシステムにおいて更新データが発生した場合に、更新データが矛盾なく反映されることが望ましい。例えば、更新データD1、D2、D3が時系列にこの順番で発生した場合、更新データD1、D2、D3がこの順に反映されることが好ましい。 In general, when update data occurs in a computer system having a plurality of sites, it is desirable that the update data is reflected without contradiction. For example, when the update data D1, D2, and D3 occur in this order in chronological order, it is preferable that the update data D1, D2, and D3 are reflected in this order.
一般に、例えば、複数のサイトを含むコンピュータシステムにおいて、メインサイトからリモートサイトへのデータのコピーを行う場合に、上記の例に従うなら、更新データD1、D2、D3の順にコピーすることが好ましい。例えば、更新データの中にディスク上の同じ領域に対するものが複数ある場合、更新データの順通りにコピーが行われないとデータに誤りが発生することとなり得る。 Generally, for example, in a computer system including a plurality of sites, when copying data from a main site to a remote site, it is preferable to copy the updated data D1, D2, and D3 in this order if the above example is followed. For example, when there are a plurality of update data for the same area on the disk, an error may occur in the data if the update data is not copied in the order.
そこで、本発明は、複数のサイトを有するコンピュータシステムにおいて更新データが発生した場合に、更新データが矛盾なく反映することを、目的の一つとし得る。しかし、この点は、本発明の範囲を限定するものではない。 Therefore, one of the objects of the present invention may be to reflect the updated data without contradiction when the updated data is generated in the computer system having a plurality of sites. However, this point does not limit the scope of the present invention.
以下の記載は例示であり、本発明の範囲を限定するものではない。 The following description is an example and does not limit the scope of the present invention.
後述の実施の形態においては、例えば、ディスクアレイシステムが開示されている。このディスクアレイシステムは、例えば、第1のディスクアレイ装置と、第2のディスクアレイ装置とを備えてもよい。第1のディスクアレイ装置は、第1のキャッシュと、外部から更新データを受け取り、更新データに対応するキャッシュIDを生成し、更新データを第1のキャッシュへ書き込む第1のI/O処理部と、キャッシュIDを、更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成する第1の順序保証制御部と、を具備してもよい。所定のタイミングで、第1の順序保証制御部が、更新データと、キャッシュIDによるリンクとを第2のディスクアレイ装置へ送信してもよい。第2のディスクアレイ装置は、第2のキャッシュと、第1のディスクアレイ装置から更新データとキャッシュIDによるリンクとを受け取り、キャッシュIDによるリンクを参照して更新データの受け取り順序に従って、更新データを第2のキャッシュへ書き込む第2のI/O処理部と、所定のタイミングで第2のキャッシュに格納された更新データを、キャッシュIDによるリンクを参照して更新データの受け取り順序に従ってディスクへ書き込む第2の順序保証制御部と、を具備してもよい。 In the embodiments described below, for example, a disk array system is disclosed. This disk array system may include, for example, a first disk array device and a second disk array device. The first disk array device has a first cache and a first I / O processing unit that receives update data from the outside, generates a cache ID corresponding to the update data, and writes the update data to the first cache. , The first order guarantee control unit that links the cache IDs in the order in which the update data is received and generates the link by the cache IDs may be provided. At a predetermined timing, the first order guarantee control unit may transmit the update data and the link by the cache ID to the second disk array device. The second disk array device receives the update data and the link by the cache ID from the second cache and the first disk array device, and refers to the link by the cache ID to receive the update data according to the order in which the update data is received. The second I / O processing unit that writes to the second cache and the update data stored in the second cache at a predetermined timing are written to the disk in the order of receiving the update data by referring to the link by the cache ID. The order guarantee control unit of 2 may be provided.
後述の実施の形態においては、例えば、ディスクアレイシステムの制御方法が開示されている。このディスクアレイシステムの制御方法は、例えば、第1のディスクアレイ装置と、第2のディスクアレイ装置とを備えるディスクアレイシステムにおけるディスクアレイシステムの制御方法であって、第1のディスクアレイ装置が、外部から更新データを受け取るステップと、第1のディスクアレイ装置が、更新データに対応するキャッシュIDを生成し、更新データを第1のキャッシュへ書き込むステップと、第1のディスクアレイ装置が、キャッシュIDを更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成するステップと、第1のディスクアレイ装置が、更新データと、キャッシュIDによるリンクとを第2のディスクアレイ装置へ送信するステップと、第2のディスクアレイ装置が、第1のディスクアレイ装置から更新データと、キャッシュIDによるリンクとを受け取り、キャッシュIDによるリンクを参照して更新データの受け取り順序に従って、第2のキャッシュへ書き込むステップと、第2のディスクアレイ装置が、所定のタイミングで第2のキャッシュに格納された更新データを、キャッシュIDによるリンクを参照して更新データの受け取り順序に従って、ディスクへ書き込むステップと、を具備してもよい。 In the embodiments described below, for example, a control method for a disk array system is disclosed. The control method of this disk array system is, for example, a method of controlling a disk array system in a disk array system including a first disk array device and a second disk array device, and the first disk array device is a control method of the disk array system. A step of receiving update data from the outside, a step of the first disk array device generating a cache ID corresponding to the update data, and a step of writing the update data to the first cache, and a step of the first disk array device performing a cache ID. To generate a link by cache ID by linking in the order in which update data is received, and a step in which the first disk array device transmits the update data and the link by cache ID to the second disk array device. A step in which the second disk array device receives the update data and the link by the cache ID from the first disk array device, refers to the link by the cache ID, and writes the update data to the second cache according to the order in which the update data is received. , The second disk array device includes a step of writing the update data stored in the second cache at a predetermined timing to the disk according to the order of receiving the update data by referring to the link by the cache ID. May be good.
後述の実施の形態においては、例えば、第1のディスクアレイ装置が開示されている。この第1のディスクアレイ装置は、例えば、第1のキャッシュと、外部から更新データを受け取り、更新データに対応するキャッシュIDを生成し、更新データを第1のキャッシュへ書き込む第1のI/O処理部と、キャッシュIDを、更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成する、第1の順序保証制御部と、を具備し、所定のタイミングで、第1の順序保証制御部が、更新データと、キャッシュIDによるリンクとを第2のディスクアレイ装置へ送信して更新データの格納を要求する、第1のディスクアレイ装置であってもよい。 In the embodiments described below, for example, a first disk array device is disclosed. This first disk array device receives, for example, a first cache and update data from the outside, generates a cache ID corresponding to the update data, and writes the update data to the first cache. The processing unit and the first order guarantee control unit that links the cache IDs in the order in which the update data is received to generate the link by the cache ID are provided, and the first order guarantee control unit is provided at a predetermined timing. However, it may be the first disk array device that sends the update data and the link by the cache ID to the second disk array device to request the storage of the update data.
後述の実施の形態によれば、例えば、複数のサイトを有するコンピュータシステムにおいて、更新データが発生した場合に、更新データが矛盾なく反映され得る。例えば、更新データD1、D2、D3が時系列にこの順番で発生した場合、更新データD1、D2、D3がこの順に反映され得る。ただし、これは、本願発明の範囲を限定するものではない。 According to the embodiment described later, for example, when update data is generated in a computer system having a plurality of sites, the update data can be reflected without contradiction. For example, if update data D1, D2, and D3 occur in this order in chronological order, update data D1, D2, and D3 can be reflected in this order. However, this does not limit the scope of the present invention.
以下、図面を参照し、いくつかの実施形態について説明する。なお、以下の開示は例である。本発明の範囲は、以下の開示のみに限定して解釈されるべきではない。 Hereinafter, some embodiments will be described with reference to the drawings. The following disclosure is an example. The scope of the present invention should not be construed as confined to the following disclosures.
第1の実施形態
図1は、第1の実施形態におけるディスクアレイシステムの構成を表す図面である。図1を参照して本実施形態におけるディスクアレイシステムの構成を説明する。
1st Embodiment FIG. 1 is a drawing which shows the structure of the disk array system in 1st Embodiment. The configuration of the disk array system in this embodiment will be described with reference to FIG.
図1において、この実施形態におけるディスクアレイシステムは、メインサイト1と、リモートサイト2とを備える。メインサイト1と、リモートサイト2とは、遠隔回線30で接続され、相互にデータの送受信を行い得る。メインサイト1は、例えば、データをリモートサイト2へ送信し、リモートサイト2は、メインサイト1からデータを受信して格納する。即ち、メインサイト1のデータがリモートサイト2へコピーされ得る。
In FIG. 1, the disk array system in this embodiment includes a
遠隔回線30は、メインサイト1と、リモートサイト2とを接続するネットワークである。
The
メインサイト1は、データ更新ホスト10と、ディスクアレイ装置17とを備える。データ更新ホスト10と、ディスクアレイ装置17は、それぞれ独立した装置であり、ネットワークを介して接続されていてもよい。あるいは、データ更新ホスト10と、ディスクアレイ装置17は、同一の装置であってもよい。
The
ディスクアレイ装置17は、I/O処理部11と、キャッシュ12と、ディスク16と、ディスク制御部15とを備える。また、ディスクアレイ装置17は、例えばメモリなど、図示しない記憶部を有し得る。
The
データ更新ホスト10は、更新データと書き込み先の情報を含む書き込み要求とを送信する。更新データは、例えば、ユーザによってデータ更新ホスト10に入力されるデータであってもよい。あるいは、更新データは、データ更新ホスト10が外部の装置や媒体から受け取るデータであってもよい。書き込み先の情報は、例えば、更新データの書き込み先として、ディスク16に含まれるいずれかのディスクと、そのディスク中の書き込み位置もしくはアドレスと、を示す情報であってもよい。
The
I/O処理部11は、更新データと、書き込み先の情報とをデータ更新ホスト10から入力(あるいは受信)する。I/O処理部11は、キャッシュ12に更新データを出力する。キャッシュ12は、更新データを一時格納するための記憶手段である。
The I /
ディスク16は、更新データを記憶するための記憶手段である。ディスク16は、単一のディスクであってもよい。ディスク16は、複数のディスクから構成されてもよい。あるいは、ディスク16は、ハードディスク、SSD(solid state drive、ソリッド・ステート・ドライブ)などであってもよい。更新データは、ディスク16に既に格納されているデータを更新するためのデータを含んでもよい。更新データは、ディスク16に新たに追加されるデータを含んでもよい。
The
ディスク制御部15は、データをディスク16に書き込むための手段である。ディスク制御部15は、例えば、一定時間(例えば、5秒、60秒、300秒)ごとにキャッシュ12内にディスク16への書き込みが行われていない更新データが存在するか否かをチェックし得る。キャッシュ12内にディスク16への書き込みが行われていない更新データが存在する場合、ディスク制御部15は、キャッシュ12から書き込みが行われていない更新データを読み出し、読み出した更新データをディスク16に書き込んでもよい。
The
順序保証制御部14は、キャッシュ12上の更新データの順番を保証する手段である。送信部13は、リモートサイト2へデータを送信する手段である。
The order
リモートサイト2は、例えば、メインサイト1からデータを受信して格納する。リモートサイト2は、ディスクアレイ装置27を備える。ディスクアレイ装置17とディスクアレイ装置27は遠隔回線30を介して接続されている。ディスクアレイ装置27は、受信部23と、キャッシュ22と、I/O処理部21と、順序保証制御部24と、ディスク26と、ディスク制御部25とを備える。また、ディスクアレイ装置27は、例えばメモリなど、図示しない記憶部を有してもよい。
The
受信部23は、遠隔回線30を介して、メインサイト1からデータを受信して出力する。I/O処理部21は、受信部23が出力したデータを入力する。I/O処理部21は、入力したデータをキャッシュ22に格納する。ディスク制御部25は、キャッシュ22に格納されたデータを、ディスク26に書き込む。順序保証制御部24は、ディスク26に書き込まれるデータの書き込みの順序の保証を行う。
The receiving
図2は、本実施形態におけるディスクアレイシステムの処理の流れを示す図面である。図2を参照してディスクアレイシステムの処理の流れを説明する。ここでは、データ更新ホスト10が3個の更新データをディスクアレイ装置17へ送信する例を示す。
FIG. 2 is a drawing showing a processing flow of the disk array system according to the present embodiment. The processing flow of the disk array system will be described with reference to FIG. Here, an example is shown in which the
最初に、データ更新ホスト10は、更新データD1を送信する。ディスクアレイ装置17のI/O処理部11は、データ更新ホスト10から更新データD1を受信する(図2の丸付き数字1)。
First, the
データ更新ホスト10は、更新データD1を送信する際に、更新データD1を格納するディスク16上の領域に関する書き込み先の情報を含む、書き込み要求を送信してもよい。書き込み先の情報は、例えば、ファイルのパスやファイル名であってもよい。あるいは、書き込み先の情報は、SCSI(small computer system interface、スカジー)コマンドなどであってもよい。I/O処理部11は、更新データD1と、書き込み要求とを受信し得る。
When transmitting the update data D1, the
I/O処理部11は、更新データD1をキャッシュ12へ格納する(図2の丸付き数字1)。また、I/O処理部11は、更新データD1に対応するキャッシュIDを生成する。ここでは、更新データD1に対応するキャッシュIDを、理解が容易なものとなるよう、D1とする。キャッシュIDは、例えば、更新データD1の書き込み先の情報からハッシュ演算などにより計算されてもよい。また、キャッシュIDは、更新データD1のキャッシュ12における格納位置もしくはアドレスを含むものとしてもよい。あるいは、キャッシュIDは、更新データD1のキャッシュ12における格納位置もしくはアドレスと、乱数との組み合わせを含んでもよい。I/O処理部11は、更新データD1のキャッシュ12中の格納位置もしくはアドレスを、ハッシュ演算により計算してもよい。また、I/O処理部11は、更新データD1のキャッシュ12中の格納位置もしくはアドレスを、複数のハッシュ演算により計算し衝突を回避してもよい。あるいは、更新データD1のキャッシュ12における格納位置を乱数を用いてランダムに割り当て、キャッシュIDと、キャッシュ12における格納位置とを必ずしも関連しないものとして決定してもよい。
The I /
I/O処理部11は、書き込み先の情報を参照し、更新データD1を格納するディスクやアドレスを判断し得る。更新データD1を格納するディスクやアドレスは、キャッシュID(および必要に応じてキャッシュ12における更新データD1の格納位置)と対応付けて記憶部に記憶され、後続の処理で参照され得る。I/O処理部11は、書き込み先の情報も、キャッシュIDと対応付けて記憶部に格納し得る。
The I /
I/O処理部11は、キャッシュID(D1)を順序保証制御部14へ出力する。順序保証制御部14は、キャッシュID(D1)を入力する。図3は、キャッシュIDによるリンクを表す。順序保証制御部14は、キャッシュIDをI/O処理部11から入力し、図3の丸付き数字1のようなキャッシュIDによるリンクを作成する(図2の丸付き数字2)。図3の丸付き数字1では、キャッシュIDによるリンクは、3個の要素100、要素200、要素300を含んでいる。要素100は、キャッシュID (D1)を含む。要素200と要素300は、後続の処理で生成され、追加されるので、この段階では要素100のみが存在する。要素100(および要素200と要素300)は、記憶部上に作成されるもので、更新データの入力順にリンクされている。この例は一方向リンクの例であるが、例えば、双方向のリンクなど種々の形式であってもよい。キャッシュIDによるリンクは、例えば、記憶部に格納されてもよい。要素100は、次のリンク先を示す情報を有していてもよい。次のリンク先を示す情報は、この段階では0(リンクの終端を表す)などであり得る。次のリンク先を示す情報は、後続の更新データが追加されると、例えば、要素200の記憶部上のアドレスに更新してもよい。同様に、図3における要素200や要素300も同様で、終端においては、次のリンク先を示す情報は、例えば、0などのリンクの終端を表す所定の値であり得る。
The I /
順序保証制御部14は、キャッシュIDをI/O処理部11から入力したときに、キャッシュIDに対応する更新データの状態を表す状態情報を、記憶部に格納してもよい。例えば、順序保証制御部14は、キャッシュID(D1)をI/O処理部11から入力したときに、キャッシュID(D1)に対応する更新データ(更新データD1)の状態として「未送信」を表す状態情報を、キャッシュID(D1)と対応付けて記憶部に格納してもよい。「未送信」は、対応する更新データがリモートサイト2へ送信されていないことを表す。「未送信」を表す状態情報は、例えば、要素100中に2バイトの領域をあらかじめ設けておき、この領域に所定の値、例えば0を設定してもよい。あるいは、状態情報は、キャッシュIDによるリンク(要素100など)とは別に、記憶部中にテーブルを作成し、これに格納されてもよい。
When the cache ID is input from the I /
また、I/O処理部11は、キャッシュID(D1)を順序保証制御部14へ出力した後に、データ更新ホスト10へ、応答信号を送信する。応答信号は、例えば、更新データD1をキャッシュ12へ格納することが成功した旨を表してもよく(例えば、0)、あるいは、キャッシュ12の領域不足などにより失敗した旨を表してもよい(例えば、-1)。応答信号は、例えば、単純に更新データD1を受信した旨を表すものでもよい(例えば、1)。データ更新ホスト10は、I/O処理部11から応答信号を受信する。データ更新ホスト10は、応答信号に応じた処理を行ってもよい。例えば、データ更新ホスト10は、データ格納成功などのメッセージを図示しない表示部に表示してもよい。例えば、データ更新ホスト10は、再度更新データD1の格納を試みてもよい。
Further, the I /
上記に引き続き、データ更新ホスト10は、更新データD2を送信する(図2の丸付き数字3)場合を想定する。I/O処理部11が、キャッシュIDを順序保証制御部14へ出力するまでの処理は、上記と同様である。更新データD2に対応するキャッシュIDをD2とする。
Continuing from the above, assume that the
I/O処理部11は、キャッシュID(D2)を順序保証制御部14へ出力する。順序保証制御部14は、キャッシュID(D2)を入力する。順序保証制御部14は、図3の丸付き数字1のようなキャッシュIDによるリンクを更新する(図2の丸付き数字4)。図3の丸付き数字1では、キャッシュIDによるリンクは、3個の要素100、要素200、要素300を含んでいる。要素200は、キャッシュID (D2)を含む。要素300は、後続の処理で生成され、追加されるので存在せず、この段階では要素100と200が存在する。要素100および要素200(と要素300)は、記憶部上に作成されるもので、更新データの入力順にリンクされる。この例は一方向リンクの例であるが、例えば、双方向のリンクなど種々の形式であってもよい。キャッシュIDによるリンクは、例えば、記憶部に格納されてもよい。要素100(、200、および300)は、次のリンク先を示す情報を有していてもよい。次のリンク先を示す情報は、要素200のアドレスであり得る。要素200における次のリンク先を示す情報は、この段階では終端を表す、例えば0であってもよい。後続の更新データ(D3)が追加されると、例えば、要素200における次のリンク先を示す情報は、要素300の記憶部上のアドレスに更新されてもよい。
The I /
順序保証制御部14は、キャッシュID(D2)に対応する更新データ(更新データD2)の状態として「未送信」を表す状態情報を、キャッシュID(D2)と対応付けて記憶部に格納してもよい。
The order
また、I/O処理部11は、キャッシュID(D2)を順序保証制御部14へ出力した後に、データ更新ホスト10へ、応答信号を送信する。この処理は更新データD1に関する上記の処理と同様である。
Further, the I /
上記に引き続き、データ更新ホスト10は、更新データD3を送信する(図2の丸付き数字5)場合を想定する。I/O処理部11が、キャッシュIDを順序保証制御部14へ出力するまでの処理は、上記と同様である。更新データD3に対応するキャッシュIDをD3とする。
Continuing from the above, assume that the
順序保証制御部14は、キャッシュID(D3)を入力する。順序保証制御部14は、図3の丸付き数字1のようにキャッシュIDによるリンクを更新する(図2の丸付き数字7)。図3の丸付き数字1では、キャッシュIDによるリンクは、3個の要素100、要素200、要素300を含んでいる。要素300は、キャッシュID (D3)を含む。要素100、要素200および要素300は、記憶部上に作成されるもので、更新データの入力順にリンクされている。この例は一方向リンクの例であるが、例えば、双方向のリンクなど種々の形式であってもよい。要素200は、次のリンク先を示す情報を有していてもよい。次のリンク先を示す情報は、要素300のアドレスであり得る。要素300における次のリンク先を示す情報は、この段階では終端を表す、例えば0であってもよい。後続の更新データが追加されると、要素300における次のリンク先を示す情報は、例えば、更なる要素の記憶部上のアドレスに更新されてもよい。
The order
順序保証制御部14は、キャッシュID(D3)に対応する更新データ(更新データD3)の状態として「未送信」を表す状態情報を、キャッシュID(D3)と対応付けて記憶部に格納してもよい。
The order
また、I/O処理部11は、キャッシュID(D3)を順序保証制御部14へ出力した後に、データ更新ホスト10へ、応答信号を送信する。この処理は更新データD1に関する上記の処理と同様である。
Further, the I /
I/O処理部11は、更新データのキャッシュ12への格納の前、あるいは後に、キャッシュ12の空き領域の大きさをチェックしてもよく、更に、I/O処理部11は、キャッシュ12の空き領域の大きさが所定の閾値より小さい場合に、順序保証制御部14にデータ送信要求を出力してもよい。この閾値は、例えば、キャッシュ12の全容量の20%であってもよい。あるいは、I/O処理部11は、更新データをキャッシュ12への格納した後、所定の時間を経過した場合に、順序保証制御部14にデータ送信要求を出力してもよい。この所定の時間は、例えば、10秒であってもよい。
The I /
順序保証制御部14は、I/O処理部11からデータ送信要求を入力し、キャッシュ12に格納された更新データを読み出す。順序保証制御部14は、更新データと、記憶部に格納されたキャッシュIDによるリンク(図3の丸付き数字1)と、を送信部13へ出力する(図2の丸付き数字8)。
The order
ここで、順序保証制御部14は、例えば、更新データD1乃至D3を、図3の丸付き数字1のキャッシュIDによるリンクを参照して、更新データD1、更新データD2、更新データD3の順につなげてひとまとまりのデータを生成し、送信部13へ出力してもよい。また、順序保証制御部14は、キャッシュIDによるリンクを、D1、D2、D3の順番を維持するように、送信部13へ出力してもよい。例えば、順序保証制御部14は、要素100、要素200、および、要素300を、この順につなげてひとまとまりのデータを生成し、送信部13へ出力してもよい(図2の丸付き数字8)。送信部13は、順序保証制御部14から更新データのひとまとまりのデータと、キャッシュIDによるリンクのひとまとまりのデータと、を入力し、それらを遠隔回線30を介してリモートサイト2へ送信して格納を要求する(図2の丸付き数字9)。
Here, for example, the order
あるいは、順序保証制御部14は、例えば、更新データD1乃至D3を、図3の丸付き数字1のキャッシュIDによるリンクを参照して、更新データD1、更新データD2、更新データD3の順に送信部13へ出力してもよい。また、順序保証制御部14は、キャッシュIDによるリンクを、D1、D2、D3の順番を維持しながら、送信部13へ出力してもよい。例えば、順序保証制御部14は、要素100、要素200、および、要素300を、この順に従って送信部13へ出力してもよい(図2の丸付き数字8)。送信部13は、順序保証制御部14から更新データと、キャッシュIDによるリンクと、を入力し、入力した順番の通りに、それらを遠隔回線30を介してリモートサイト2へ送信する(図2の丸付き数字9)。順序保証制御部14は、更新データD1乃至D3に対応する格納先の情報を記憶部から読み出し、これらも送信部13を介してリモートサイト2へ送信し得る。
Alternatively, the order
リモートサイト2の受信部23は、メインサイト1の送信部13から、更新データD1、更新データD2、更新データD3の順につなげて生成されたひとまとまりのデータと、要素100、要素200、および、要素300の順につなげて生成されたひとまとまりのデータと、更新データD1乃至D3に対応する格納先の情報と、を受信してもよい。受信部23は、それらを、I/O処理部21へ出力する。
The receiving
あるいは、リモートサイト2の受信部23は、更新データを、更新データD1、更新データD2、更新データD3の順に受信し、また、キャッシュIDによるリンクを、要素100、要素200、および、要素300の順に受信し、更新データD1乃至D3に対応する格納先の情報を受信してもよい。受信部23は、それらを、I/O処理部21へ出力する。
Alternatively, the
I/O処理部21は、受信部23が出力したデータを入力する。I/O処理部21は、更新データD1、更新データD2、更新データD3の順につなげて生成されたひとまとまりのデータを入力した場合には、更新データD1、更新データD2、更新データD3を順番を維持しながら復元する。I/O処理部21は、要素100、要素200、および、要素300の順につなげて生成されたひとまとまりのデータを入力した場合には、要素100、要素200、および、要素300を順番を維持しながら復元する。I/O処理部21は、復元された更新データD1、更新データD2、および更新データD3と、要素100、要素200、および、要素300を、リモートサイト2の図示しないメモリなどの記憶部上に保持し得る。I/O処理部21は、記憶部上の更新データD1、更新データD2、更新データD3を、キャッシュ22へ格納する。I/O処理部21は、更新データD1、更新データD2、および更新データD3のキャッシュ22における格納位置を、対応する要素100、要素200、および、要素300中に含めることとしてもよい。I/O処理部21は、要素100、要素200、および、要素300を、これらの順序を維持しつつ、順序保証制御部24へ出力する(図2の丸付き数字9)。I/O処理部21は、更新データD1乃至D3に対応する格納先の情報を記憶部に格納する。
The I /
順序保証制御部24は、要素100、要素200、および、要素300を、これら順序を維持しつつ、I/O処理部21から入力する(図2の丸付き数字9)。順序保証制御部24は、要素100、要素200、および、要素300のリンク関係を復元する。要素100は、次のリンク先を示す情報を有していてもよい。次のリンク先を示す情報は、例えば、要素200の記憶部上のアドレスであり得る。要素200は、次のリンク先を示す情報を有していてもよい。次のリンク先を示す情報は、例えば、記憶部上の要素300のアドレスであり得る。要素300は、次のリンク先を示す情報を有していてもよい。要素300の次のリンク先を示す情報は、例えば、0などのリンクの終端を表す所定の値であり得る。
The order
順序保証制御部24は、要素100乃至300をI/O処理部21から入力したときに、それらに対応する更新データの状態を表す状態情報を、記憶部に格納してもよい。例えば、順序保証制御部24は、要素100をI/O処理部11から入力したときに、要素100に対応する更新データ(更新データD1)の状態として「受信済」を表す状態情報を、記憶部に格納してもよい。この状態情報は、例えば、図3の丸付き数字1における「未送信」の部分が「受信済」で置き換えられた状態の情報でありえる。「受信済」は、対応する更新データのメインサイト1からの受信が完了したことを表す。「受信済」を表す状態情報は、例えば、要素100中に2バイトの領域をあらかじめ設けておき、この領域に所定の値、例えば1を格納してもよい。あるいは、状態情報は、キャッシュIDによるリンクとは別に、記憶部中にテーブルを作成し、これに格納されてもよい。
When the
順序保証制御部24は、I/O処理部21へ、格納完了通知を出力する。I/O処理部21は、順序保証制御部24から格納完了通知を入力する。I/O処理部21は、受信部23へ、格納完了通知を送信する。受信部23は、I/O処理部21から格納完了通知を受信する。受信部23は、メインサイト1の送信部13へ完了レスポンスを送信する(図2の丸付き数字11)。
The order
送信部13は、リモートサイト2の受信部23から完了レスポンスを受信する。送信部13は、順序保証制御部14へ送信済みデータ情報を出力する。送信済みデータ情報は、例えば、送信部13がリモートサイト2へ送信した要素100乃至300、もしくはその一部であるキャッシュID(D1乃至D3)であってもよい。
The
順序保証制御部14は、送信部13から、送信済みデータ情報を入力する(図2の丸付き数字12)。順序保証制御部14は、送信済みデータ情報を参照し、記憶部中の要素100乃至300を見つけ出す。順序保証制御部14は、記憶部中の要素100乃至300の状態情報を、「送信済」へ変更する。図3の丸付き数字2はこの更新処理を表しており、要素100と200の状態情報がすでに「送信済」へ変更されており、要素300の状態情報がこれから「送信済」へ変更されるところである(もしくは、更新データD1と更新データD2のみがリモートサイト2へ送信され、更新データD3が送信されていない状態を表し得る)。
The order
上記の処理により、いずれの更新データがリモートサイト2へ送信されたのか、明らかとなり得る。また、同じ更新データを二重に送信するといった送信処理の誤りを抑止可能となり得る。また、更新データを、入力された順にリモートサイトへ送信することができ得る。このため、更新データの送信順序が前後することを抑止し得る。よって、リモートサイトにおける更新データの矛盾の発生を抑止し得る。
By the above process, it may be clear which update data was sent to the
I/O処理部21は、更新データのキャッシュ22への格納の前、あるいは後に、キャッシュ22の空き領域の大きさをチェックしてもよく、更に、I/O処理部11は、キャッシュ22の空き領域の大きさが所定の閾値より小さい場合に、順序保証制御部24にデータ書き込み要求を出力してもよい。この閾値は、例えば、キャッシュ22の全容量の20%であってもよい。順序保証制御部24は、I/O処理部11からデータ書き込み要求を入力し、記憶部中のキャッシュIDによるリンクと状態情報とを参照し、状態情報が「受信済」であるものについて、キャッシュ22に格納された更新データをキャッシュIDによるリンクの順に従って、I/O処理部11を介して読み出す。順序保証制御部24は、キャッシュIDによるリンクの順に従って、更新データをディスク制御部25へ出力し、また、キャッシュIDを含むディスク26への書き込み要求を出力する。ディスク制御部25は、順序保証制御部24から書き込み要求と更新データとを入力し、記憶部を参照してキャッシュIDに対応する格納先を読み出し、格納先に基づいてディスク26へ更新データを書き込む(もしくは、該当する場合には、既存のデータを更新データで上書きする)。ディスク制御部25は、書き込みが成功した場合には、書き込み成功応答を順序保証制御部24へ出力する。順序保証制御部24は、書き込み成功応答を入力し、書き込みが成功した更新データに対応するキャッシュIDによるリンク中の要素を、取り外す、解放する、もしくは、空きの要素である旨の、例えば、「空き」との情報を状態情報へ書き込む。順序保証制御部24は、I/O処理部11を介して、書き込みが成功した更新データのキャッシュ22中の領域を解放する。更に、順序保証制御部24は、記憶部中のキャッシュIDによるリンクを参照し、ディスク26への書き込みが行われていない更新データ(例えば、状態情報が「受信済」)がキャッシュ22中に存在する場合には、キャッシュIDによるリンクの順に従って更に読み出す。以後、ディスク26への書き込みが行われていない更新データ(例えば、状態情報が「受信済」)がキャッシュ22中に存在する場合には、上述のディスク26への書き込み処理を繰り返す。
The I /
また、ディスク制御部25は、所定の時間間隔で、順序保証制御部24にデータチェック要求を出力してもよい。この所定の時間は、例えば、10秒であってもよい。順序保証制御部24は、ディスク制御部25からデータチェック要求を入力し、記憶部中のキャッシュIDによるリンクと状態情報とを参照し、状態情報が「受信済」であるものについて、キャッシュ22に格納された更新データをキャッシュIDによるリンクの順に従って、I/O処理部11を介して読み出す。順序保証制御部24は、キャッシュIDによるリンクの順に従って、更新データをディスク制御部25へ出力し、また、キャッシュIDを含むディスク26への書き込み要求を出力する。ディスク制御部25は、順序保証制御部24から書き込み要求と更新データとを入力し、記憶部を参照してキャッシュIDに対応する格納先を読み出し、格納先に基づいてディスク26へ更新データを書き込む(もしくは、該当する場合には、既存のデータを更新データで上書きする)。ディスク制御部25は、書き込みが成功した場合には、書き込み成功応答を順序保証制御部24へ出力する。順序保証制御部24は、書き込み成功応答を入力し、書き込みが成功した更新データに対応するキャッシュIDによるリンク中の要素を、取り外す、解放する、もしくは、空きの要素である旨の、例えば、「空き」との情報を状態情報へ書き込む。順序保証制御部24は、I/O処理部11を介して、書き込みが成功した更新データのキャッシュ22中の領域を解放する。更に、順序保証制御部24は、記憶部中のキャッシュIDによるリンクを参照し、ディスク26への書き込みが行われていない更新データ(例えば、状態情報が「受信済」)がキャッシュ22中に存在する場合には、キャッシュIDによるリンクの順に従って更に読み出す。以後、ディスク26への書き込みが行われていない更新データ(例えば、状態情報が「受信済」)がキャッシュ22中に存在する場合には、上述のディスク26への書き込み処理を繰り返す。
Further, the
メインサイト1においても、キャッシュ12の更新データをディスク16へ格納してもよい。例えば、ディスク制御部15は、所定の時間間隔で、順序保証制御部14にデータチェック要求を出力してもよい。この所定の時間は、例えば、10秒であってもよい。順序保証制御部14は、ディスク制御部15からデータチェック要求を入力し、記憶部中のキャッシュIDによるリンクと状態情報を参照し、キャッシュ12中に状態情報が「送信済」である、すなわち、リモートサイト2への送信が完了し、かつ、ディスク16への書き込みがまだ行われていない状態の更新データが存在するか否かをチェックする。順序保証制御部14は、キャッシュ12中に、リモートサイト2への送信が完了し、かつ、ディスク16への書き込みがまだ行われていない更新データが存在すると判断した場合(例えば、状態情報が「送信済」)には、記憶部中のキャッシュIDによるリンクと状態情報を参照し、キャッシュ12に格納された更新データを、キャッシュIDによるリンクの順に従って、I/O処理部11を介して読み出す。順序保証制御部24は、キャッシュIDによるリンクの順に従って、更新データをディスク制御部15へ出力し、また、ディスク16への書き込みを要求する書き込み要求を、更新データと対応するキャッシュIDを含めて出力する。ディスク制御部15は、順序保証制御部14から書き込み要求と更新データとを入力し、記憶部からキャッシュIDに対応する書き込み先の情報を参照し、書き込み先の情報に基づいてディスク16へ更新データを書き込む(もしくは、該当する場合には、既存のデータを更新データで上書きする)。ディスク制御部15は、書き込みが成功した場合には、書き込み成功通知を順序保証制御部14へ出力する。順序保証制御部14は、書き込み成功通知を入力し、書き込みが成功した更新データに対応するキャッシュIDによるリンク中の要素を、取り外す、解放する、もしくは、空きの要素である旨の、例えば、「空き」との情報を状態情報へ書き込む。図3の丸付き数字3では、要素D1に対応する状態情報が空白となっており、更新データD1のディスク16への書き込みが完了した、すなわち、「空き」の状態であることを示している。順序保証制御部14は、I/O処理部11を介して、書き込みが成功した更新データのキャッシュ12中の領域を解放し得る。更に、順序保証制御部14は、記憶部中のキャッシュIDによるリンクを参照し、ディスク16への書き込みが行われていない更新データ(例えば、状態情報が「送信済」)がキャッシュ12中に存在する場合には、キャッシュIDによるリンクの順に従って更に読み出す。以後、ディスク16への書き込みが行われていない更新データ(例えば、状態情報が「送信済」)がキャッシュ12中に存在する場合には、上述のディスク16への書き込み処理を繰り返す。
The update data of the
上記のように、本実施形態では、更新データが更新データの受付順にメインサイト1やリモートサイト2のディスクに書き込まれる。このため、更新データの書き込み順序が維持され、データの書き込み順序が変わることがなく、データの矛盾を回避し得る。
As described above, in the present embodiment, the update data is written to the disks of the
また、上記の実施形態では、I/O処理部11(21)とキャッシュ12(22)との間にバッファを設ける必要が無い。このため、キャッシュ12(22)とバッファとの間のコピー処理を行う必要が無い。従って、メインサイト1やリモートサイト2における処理の負荷を低減し得る。よって、メインサイト1においては、例えば、ホスト10との間の通信やデータのやり取りにプロセッサなどのリソースを多く利用することができ得る。即ち、上記の実施形態によれば、メインサイト1やリモートサイト2の性能を向上させることができ得る。
Further, in the above embodiment, it is not necessary to provide a buffer between the I / O processing unit 11 (21) and the cache 12 (22). Therefore, it is not necessary to perform copy processing between the cache 12 (22) and the buffer. Therefore, the processing load at the
また、上述のように、メインサイト1やリモートサイト2が、例えば、内部の記憶部などに専用のバッファを確保しないため、他の用途に記憶部の空いた部分を利用することができ得る。例えば、メインサイト1やリモートサイト2において、他のアプリケーションプログラムが記憶部の空いた部分を使用することもでき得る。あるいは、メインサイト1やリモートサイト2において記憶部に余裕ができることから、他のアプリケーションプログラムをより安定して実行することができ得る。
Further, as described above, since the
第2の実施形態
次に、図1及び4を参照し、第2の実施形態について説明する。この実施形態は、上記の実施形態に加えて用いられてもよい。この実施の形態において、図1の構成要素は、上記と同様である。この実施の形態では、例として、ホスト10が更新データD1、更新データD2、更新データD3、更新データD2´をこの順に送信し、メインサイト1がそれらを同じ順序で受信する場合を想定する。また、この実施形態では、更新データD2と、更新データD2´とがいずれもディスク16の同じ領域へ書き込みが行う場合を想定する。
Second Embodiment Next, the second embodiment will be described with reference to FIGS. 1 and 4. This embodiment may be used in addition to the above embodiment. In this embodiment, the components of FIG. 1 are similar to those described above. In this embodiment, as an example, it is assumed that the
上記の実施形態と同じように、I/O処理部11は、キャッシュ12へ更新データD1、更新データD2、更新データD3、更新データD2´を順番に格納する。この処理において、更新データD2と更新データD2´とが同じ領域に関する更新データであるので、更新データD2´がキャッシュ12へ格納されるのを更新データD1乃至D3のリモートサイト2への送信(およびディスク16への書き込み)が完了した後としてもよい。この場合、更新データD2のリモートサイト2への送信(およびディスク16への書き込み)が完了するまで、更新データD2´のキャッシュ12への格納を待つ必要があり得る。そこで、このことを考慮し、例えば、更新データD2のリモートサイト2への送信(およびディスク16への書き込み)の前であっても、更新データD2´のキャッシュ12への格納を許してもよい。以下、この処理を説明する。
Similar to the above embodiment, the I /
上述の実施形態と同じように、データ更新ホスト10から、更新データD1と書き込み先の情報を含む書き込み要求とを送信する。ディスクアレイ装置17のI/O処理部11は、データ更新ホスト10から更新データD1と書き込み要求とを受信する(図2の丸付き数字1)。
Similar to the above-described embodiment, the
I/O処理部11は、更新データD1をキャッシュ12へ格納する(図2の丸付き数字1)際に、書き込み先の情報を参照し、更新データD1と同じ領域へ格納する他の更新データがすでにキャッシュ12に存在するか否かを確認する。この段階では、更新データD1と同じ領域へ格納する他の更新データもキャッシュ12に存在しない。キャッシュ12中に、更新データD1と同じ領域への書き込みを行う更新データが存在しない場合、I/O処理部11は、キャッシュ12に更新データD1を格納し、記憶部に書き込み先の情報をキャッシュID(D1)と対応付けて格納し、また、更新データD1に対応するキャッシュID(D1)を生成する。キャッシュ12中に、更新データD1と同じ領域への書き込みを行う更新データが存在する場合の処理は、後述の更新データD2´のケースが該当する。
When the I /
I/O処理部11は、キャッシュID(D1)を順序保証制御部14へ出力する。順序保証制御部14の処理は、上述と同様である。また、I/O処理部11は、データ更新ホスト10へ、応答信号を送信する。
The I /
順序保証制御部14は、キャッシュIDをI/O処理部11から入力したときに、上述のようなキャッシュIDによるリンクの作成/更新を行い、また、キャッシュIDに対応する更新データの属性を表す属性情報を、記憶部に格納してもよい。例えば、順序保証制御部14は、キャッシュID(D1)をI/O処理部11から入力したときに、キャッシュID(D1)に対応する更新データ(更新データD1)の属性として「メイン」を表す属性情報を、記憶部に格納してもよい。「メイン」は、対応する更新データと同じ領域に書き込まれる最後の更新データであることを表す。
When the cache ID is input from the I /
データ更新ホスト10は、更新データD2と書き込み先の情報を含む書き込み要求とを送信する(図2の丸付き数字3)。ディスクアレイ装置17のI/O処理部11は、データ更新ホスト10から更新データD2と書き込み要求を受信する。
The data update
I/O処理部11は、書き込み先の情報を参照して更新データD2と同じ場所へ格納する他の更新データがすでにキャッシュ12に存在するか否かを確認する。記憶部に存在する更新データD1の書き込み先の情報が存在する。I/O処理部11は、更新データD1とD2の書き込み先の情報を参照して、更新データD2と同じ場所へ格納する他の更新データがすでにキャッシュ12に存在するか否かを確認する。キャッシュ12中に、更新データD2と同じ場所への書き込みを行う更新データが存在しない場合、上記と同じように、I/O処理部11は、キャッシュ12に更新データD2を格納し、記憶部に更新データD2の書き込み先の情報をキャッシュID(D2)と対応付けて格納し、また、更新データD2に対応するキャッシュID(D2)を生成する。キャッシュ12中に、更新データD2と同じ場所への書き込みを行う更新データが存在する場合の処理は、後述の更新データD2´のケースが該当する。
The I /
I/O処理部11は、キャッシュID(D2)を順序保証制御部14へ出力する。順序保証制御部14の処理は、上述と同様である。また、I/O処理部11は、データ更新ホスト10へ、応答信号を送信する。応答信号は、例えば、上記と同様のものであってもよい。データ更新ホスト10は、I/O処理部11から応答信号を受信する。データ更新ホスト10は、応答信号に応じた処理を行ってもよい。
The I /
順序保証制御部14は、キャッシュIDをI/O処理部11から入力したときに、上述のようなキャッシュIDによるリンクの作成/更新を行い、また、キャッシュIDに対応する更新データの属性を表す属性情報を、記憶部に格納してもよい。例えば、順序保証制御部14は、キャッシュID(D2)をI/O処理部11から入力したときに、キャッシュID(D2)に対応する更新データ(更新データD1)の属性として「メイン」を表す属性情報を、記憶部に格納してもよい。
When the cache ID is input from the I /
データ更新ホスト10は、更新データD3と書き込み先の情報を含む書き込み要求とを送信する(図2の丸付き数字5)。ディスクアレイ装置17のI/O処理部11は、データ更新ホスト10から更新データD3と書き込み要求を受信する。
The data update
I/O処理部11は、記憶部の更新データD2とD3の書き込み先の情報を参照し、更新データD3と同じ領域へ格納する他の更新データがすでにキャッシュ12に存在するか否かを確認する。キャッシュ12中に、更新データD3と同じ領域への書き込みを行う更新データが存在しない場合、上記と同じように、I/O処理部11は、キャッシュ12に更新データD3を格納し、記憶部に更新データD3の書き込み先の情報をキャッシュID(D3)と対応付けて格納し、更新データD3に対応するキャッシュID(D3)を生成する。キャッシュ12中に、更新データD3と同じ場所への書き込みを行う更新データが存在する場合の処理は、後述の更新データD2´のケースが該当する。
The I /
I/O処理部11は、キャッシュID(D3)を順序保証制御部14へ出力する。また、I/O処理部11は、データ更新ホスト10へ、応答信号を送信する。応答信号は、例えば、上記と同様のものであってもよい。データ更新ホスト10は、I/O処理部11から応答信号を受信する。データ更新ホスト10は、応答信号に応じた処理を行ってもよい。
The I /
順序保証制御部14は、キャッシュIDをI/O処理部11から入力したときに、上述のようなキャッシュIDによるリンクの作成/更新を行い、また、キャッシュIDに対応する更新データの属性を表す属性情報を、記憶部に格納してもよい。例えば、順序保証制御部14は、キャッシュID(D3)をI/O処理部11から入力したときに、キャッシュID(D3)に対応する更新データ(更新データD3)の属性として「メイン」を表す属性情報を、記憶部に格納してもよい。
When the cache ID is input from the I /
データ更新ホスト10は、更新データD2´と書き込み先の情報を含む書き込み要求とを送信する。ディスクアレイ装置17のI/O処理部11は、データ更新ホスト10から更新データD2´と書き込み要求を受信する。
The data update
I/O処理部11は、記憶部の更新データD1、D2、D3の書き込み先の情報を参照し、更新データD3と同じ領域へ格納する他の更新データがすでにキャッシュ12に存在するか否かを確認する。キャッシュ12中に、更新データD2´と同じ領域への書き込みを行う更新データが存在しない場合、上記と同じように、I/O処理部11は、記憶部に更新データD2´の書き込み先の情報をキャッシュID(D2´)と対応付けて格納し、更新データD3に対応するキャッシュID(D3)を生成する。
The I /
キャッシュ12中に、更新データD2´と同じ場所への書き込みを行う更新データ(D2)が存在する場合であっても、I/O処理部11は、更新データ(D2)がキャッシュ12から追い出されるまで更新データD2´のキャッシュ12への格納を待機することはしない。I/O処理部11は、更新データD2´をキャッシュ12へ格納する。この際、I/O処理部11は、例えば、キャッシュ12中に重複する更新データ用の領域を予め割り当てておき、重複する更新データ用の領域に更新データD2´を格納してもよい。I/O処理部11は、更新データD2´に対応するキャッシュIDを生成する。ここでは、更新データD2´に対応するキャッシュIDをD2´とする。
Even if there is update data (D2) in the
I/O処理部11は、更新データD2´と同じ領域に格納される更新データD2のキャッシュID(D2)を記憶部から読み出す。I/O処理部11は、キャッシュID(D2´)と、キャッシュID(D2)とを、順序保証制御部14へ出力する。また、I/O処理部11は、データ更新ホスト10へ、応答信号を送信する。応答信号は、例えば、上記と同様のものであってもよい。データ更新ホスト10は、I/O処理部11から応答信号を受信する。データ更新ホスト10は、応答信号に応じた処理を行ってもよい。
The I /
図4は、キャッシュIDによるリンクを表す。順序保証制御部14は、キャッシュID(D2´)と、キャッシュID(D2)とを、をI/O処理部11から入力し、キャッシュID(D2)に対し、ディスク上の同じ領域を更新するキャッシュID(D2´)に対応するデータを受け付けたことを判断する。順序保証制御部14は、図4の丸付き数字1のようなキャッシュIDによるリンクを作成/更新する。図4の丸付き数字1のように、キャッシュIDによるリンクは、3個の要素100、要素200、要素300を含む。順序保証制御部14は、要素400を追加する。順序保証制御部14は、最も新しく発生した要素400を、要素300キャッシュID(D3)の先にリンクさせる、すなわち、要素300が要素400にリンクされる。
FIG. 4 shows a link by cache ID. The order
順序保証制御部14は、図4の丸付き数字2のように、キャッシュID(D2´)に対応する要素400をキャッシュIDによるリンクに追加する。更に、順序保証制御部14は、例えば、キャッシュID(D2)に対応する更新データの属性を表す属性情報を、「サブ」と変更してもよい。「サブ」は、対応する更新データと同じ領域に書き込まれる更新データが存在することを表す。キャッシュID(D2´)については、属性を「メイン」として属性情報を、記憶部に格納してもよい。
The order
属性情報は、キャッシュIDによるリンクとは別に、記憶部中にテーブルを作成し、これに格納されてもよい。 The attribute information may be stored in a table created in the storage unit separately from the link by the cache ID.
図4の丸付き数字2の状態において、更新データのリモートサイト2への送信の際、メインサイト1は、更新データD2とD2´とを含めた更新データを、リモートサイト2へ送信し得る。即ち、すべての更新データを順序を維持しながらリモートサイト2へ送信し得る。この際、属性情報もリモートサイト2へ送信し得る。これにより、リモートサイト2では、更新データをその順序を維持しながら、ディスク26へ書き込み得る。リモートサイト2では、更新データに対応する属性情報が「メイン」であれ、「サブ」であれ、更新データをその順序を維持しながらディスク26へ書き込み得る。あるいは、リモートサイト2では、更新データに対応する属性情報が「メイン」であるもののみを、更新データをその順序を維持しながらディスク26へ書き込むこととしてもよい。メインサイト1におけるディスク16への書き込みも同様に、更新データをその順序を維持しながら実行し得る。
In the state of the circled
上記のように、本実施形態では、更新データD2´を、更新データD2がリモートサイト2へ送信される(追い出される)のを待つことなく、キャッシュ12へ書き込まれる。このため、メインサイト1の処理が高速となり得る。また、メインサイト1において、更新データD2がリモートサイト2へ送信される(追い出される)のを待って、更新データD2´のキャッシュ12への書き込みを行う必要が無いため、例えば、バッファのような更新データD2´を一時的に格納するための構成要素を省略し得る。
As described above, in the present embodiment, the update data D2'is written to the
ここで、本実施形態において、例えば、図4の丸付き数字2の状態において、ホスト10など外部から、ディスクアレイ装置17にデータの読み出し要求が送信された場合であって、かつ、読み出し要求が図4の丸付き数字2に示す更新データD2´の領域のデータの読み出しを要求するものであった場合を想定する。この場合、I/O処理部11は、(順序保証制御部14を介して)キャッシュIDによるリンクをたどり、属性情報が「サブ」である更新データD2を参照することなく、属性情報が「メイン」である更新データD2´をキャッシュ12から読み出す。このような処理により、ディスクアレイ装置17は、最新の状態のデータを提供し得る。
Here, in the present embodiment, for example, in the state of the circled
また、図4の丸付き数字2に示す更新データD2´のキャッシュ12への格納の後に更新データD2´と同じ領域へ書き込まれる更新データD2″がディスクアレイ装置17によって受信された場合には、更新データD2´の属性情報を「サブ」と変更し、更に、更新データD2″の属性情報を「メイン」としてキャッシュ12へ格納してもよい。これにより、同じ領域に対する複数の更新データを受け付けた場合も、すべてキャッシュへ格納し得る。
Further, when the update data D2 ″ written to the same area as the update data D2 ′ is received by the
上記のように、本実施形態では、同じ領域への更新データが発生しても、更新データを1本のリンクを用いて接続し、更新の順序を保証し得る。これにより、更新の順序の不正を抑止し得る。 As described above, in the present embodiment, even if update data to the same area occurs, the update data can be connected using one link to guarantee the update order. As a result, it is possible to prevent the update order from being incorrect.
また、上記の実施形態では、キャッシュへの書き込みに専用のバッファを用いることを省略し得る。この点、例えば、ディスクアレイ装置間のコピーに専用のバッファを用意することにより、メインサイトでホストから受けた更新データをバッファリングし、バッファへの順序だてた更新データの格納により更新データの順序保証を行い、更に、バッファリングしたデータをまとめてリモートサイトへ送ることにより通信のオーバーヘッドを小さくする方法もあり得る。ここで、ホスト/ディスクアレイの性能向上とともに、大量データの書き込み、あるいは、一時的な負荷の上昇、といった要因によって大きなバッファが求められることがあり得るが、この場合には内部リソースを大きく消費することになり、バッファが枯渇することがあり得、仮にキャッシュに空きがあったとしても次の更新データを受け付けられなくなることもあり得る。更に、ディスクアレイ装置間のコピーに専用のバッファを用意する場合には、キャッシュと専用バッファとの間のコピー処理により、装置内部負荷が高くなることがあり得る。上記の実施形態のようにキャッシュへの書き込みに専用のバッファを用いることを省略し得る場合、キャッシュに空きがあれば次の更新データを受け付けられるものとなり得る。これにより、上記の実施形態では、メインサイトの、そして、ディスクアレイシステム全体の効率を向上するものとなり得る。また、キャッシュと専用バッファとの間のコピー処理が発生しないため、ディスクアレイシステム全体の処理負荷を削減し得る。
また、単純にバッファを用いない同期したディスクアレイ装置間のデータのコピーなどでは、同じ領域への更新データがあると、キャッシュ競合による更新データの書き込み遅延が発生することもあり得る。上記の実施形態では、同じ領域への書き込みを行う更新データを2以上受け付けた場合でも、キャッシュ競合を回避し得るとともに、書き込みの遅延も回避し得る。
Further, in the above embodiment, it may be omitted to use a dedicated buffer for writing to the cache. In this regard, for example, by preparing a dedicated buffer for copying between disk array devices, the update data received from the host at the main site is buffered, and the update data is stored in the buffer in order. There may be a method of guaranteeing and further reducing the communication overhead by sending the buffered data together to the remote site. Here, as the performance of the host / disk array is improved, a large buffer may be required due to factors such as writing a large amount of data or a temporary increase in load, but in this case, a large amount of internal resources are consumed. As a result, the buffer may be exhausted, and even if there is free space in the cache, the next update data may not be accepted. Further, when a dedicated buffer is prepared for copying between disk array devices, the internal load of the device may increase due to the copy process between the cache and the dedicated buffer. When it is possible to omit using a dedicated buffer for writing to the cache as in the above embodiment, the next update data may be accepted if there is free space in the cache. Thereby, in the above embodiment, the efficiency of the main site and the entire disk array system can be improved. Moreover, since copy processing between the cache and the dedicated buffer does not occur, the processing load of the entire disk array system can be reduced.
Further, in the case of simply copying data between synchronized disk array devices that do not use a buffer, if there is update data in the same area, a write delay of the update data may occur due to cache conflict. In the above embodiment, even when two or more update data to be written to the same area are received, cache contention can be avoided and write delay can also be avoided.
また、上記のホスト10、ディスクアレイ装置17、ディスクアレイ装置27は、プロセッサ、メモリ、ハードディスク、SSD(solid state drive、ソリッド・ステート・ドライブ)、光学ドライブ、光磁気ドライブ、送受信機、ディスプレイ、キーボード、マウスなどを適宜必要に応じて備え得る。また、上記の構成要素はソフトウェアで実装されてもよい。
In addition, the
また、上記の実施形態において、ネットワークは、例えば、イーサネット(登録商標)、ファイバーチャネル、無線通信ネットワークであってもよい。ネットワークは、LAN(local area network)、WAN(wide area network)、インターネット、イントラネット、公衆回線などであってもよい。あるいは、ネットワークは、複数種類のネットワークを組み合わせて構成されてもよい。 Further, in the above embodiment, the network may be, for example, Ethernet (registered trademark), Fiber Channel, or a wireless communication network. The network may be a LAN (local area network), a WAN (wide area network), the Internet, an intranet, a public line, or the like. Alternatively, the network may be configured by combining a plurality of types of networks.
他の追加の実施形態
更に、以下、他の追加の実施形態を示す。
Other Additional Embodiments Further, other additional embodiments will be shown below.
第1のディスクアレイ装置と、第2のディスクアレイ装置とを備えるディスクアレイシステムであって、
第1のディスクアレイ装置が、
第1のキャッシュと、
外部から更新データを受け取り、更新データに対応するキャッシュIDを生成し、更新データを第1のキャッシュへ書き込む第1のI/O処理部と、
キャッシュIDを、更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成する、第1の順序保証制御部と、を具備し、
所定のタイミングで、第1の順序保証制御部が、更新データと、キャッシュIDによるリンクとを第2のディスクアレイ装置へ送信し、
第2のディスクアレイ装置が、
第2のキャッシュと、
第1のディスクアレイ装置から更新データと、キャッシュIDによるリンクとを受け取り、キャッシュIDによるリンクを参照して更新データの受け取り順序に従って、第2のキャッシュへ書き込む、第2のI/O処理部と、
所定のタイミングで第2のキャッシュに格納された更新データを、キャッシュIDによるリンクを参照して更新データの受け取り順序に従って、ディスクへ書き込む、第2の順序保証制御部と、を具備する、
ディスクアレイシステム。
A disk array system including a first disk array device and a second disk array device.
The first disk array device is
The first cache and
A first I / O processing unit that receives update data from the outside, generates a cache ID corresponding to the update data, and writes the update data to the first cache.
It is provided with a first order guarantee control unit that links cache IDs in the order in which update data is received and generates a link based on the cache ID.
At a predetermined timing, the first order guarantee control unit transmits the update data and the link by the cache ID to the second disk array device, and then
The second disk array device
The second cache and
With the second I / O processing unit that receives the update data from the first disk array device and the link by the cache ID, refers to the link by the cache ID, and writes it to the second cache according to the order in which the update data is received. ,
It is provided with a second order guarantee control unit that writes the update data stored in the second cache at a predetermined timing to a disk according to the order of receiving the update data by referring to the link by the cache ID.
Disk array system.
第1の順序保証制御部は、キャッシュIDに対応する属性情報を生成し、更新データを第1のキャッシュへ格納するときに、更新データの属性情報を第1の属性に設定し、更に、更新データについてディスクの同じ領域へ書き込まれる既存の更新データが第1のキャッシュに格納されている場合には、既存の更新データの属性情報を第2の属性に設定する、上述のディスクアレイシステム。 The first order guarantee control unit generates the attribute information corresponding to the cache ID, sets the attribute information of the update data to the first attribute when storing the update data in the first cache, and further updates. The above-mentioned disk array system that sets the attribute information of the existing update data to the second attribute when the existing update data written to the same area of the disk for the data is stored in the first cache.
第1のI/O処理部は、更新データが、既存の更新データとディスクの同じ領域に書き込まれる場合、既存の更新データが第1のキャッシュにあっても、既存の更新データが第2のディスクアレイ装置へ送信されるのを待たずに更新データをキャッシュへ書き込む、上述のディスクアレイシステム。 The first I / O processing unit is that when the update data is written to the same area of the disk as the existing update data, the existing update data is in the second cache even if the existing update data is in the first cache. The disk array system described above that writes update data to the cache without waiting for it to be sent to the disk array device.
第1のディスクアレイ装置から第2のディスクアレイ装置へ更新データを送信する場合に、更新データの属性情報も第2のディスクアレイ装置へ送信する、上述のディスクアレイシステム。 The above-mentioned disk array system in which when update data is transmitted from the first disk array device to the second disk array device, the attribute information of the update data is also transmitted to the second disk array device.
ディスク制御部は、更新データの受け取り順序に従い、かつ、属性情報が第1の属性である更新データのみをディスクへ書き込む、上述のディスクアレイシステム。 The disk array system described above, in which the disk control unit writes only the update data whose attribute information is the first attribute to the disk according to the order in which the update data is received.
第1のディスクアレイ装置と、第2のディスクアレイ装置とを備えるディスクアレイシステムにおけるディスクアレイシステムの制御方法であって、
第1のディスクアレイ装置が、外部から更新データを受け取るステップと、
第1のディスクアレイ装置が、更新データに対応するキャッシュIDを生成し、更新データを第1のキャッシュへ書き込むステップと、
第1のディスクアレイ装置が、キャッシュIDを更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成するステップと、
第1のディスクアレイ装置が、更新データと、キャッシュIDによるリンクとを第2のディスクアレイ装置へ送信するステップと、
第2のディスクアレイ装置が、第1のディスクアレイ装置から更新データと、キャッシュIDによるリンクとを受け取り、キャッシュIDによるリンクを参照して更新データの受け取り順序に従って、第2のキャッシュへ書き込むステップと、
第2のディスクアレイ装置が、所定のタイミングで第2のキャッシュに格納された更新データを、キャッシュIDによるリンクを参照して更新データの受け取り順序に従って、ディスクへ書き込むステップと、を具備する、
ディスクアレイシステムの制御方法。
A method for controlling a disk array system in a disk array system including a first disk array device and a second disk array device.
The step that the first disk array device receives the update data from the outside,
A step in which the first disk array device generates a cache ID corresponding to the update data and writes the update data to the first cache.
A step in which the first disk array device links the cache IDs in the order in which the update data is received to generate a link by the cache ID.
The step that the first disk array device sends the update data and the link by the cache ID to the second disk array device,
A step in which the second disk array device receives update data and a link by cache ID from the first disk array device, refers to the link by cache ID, and writes the update data to the second cache according to the order in which the update data is received. ,
The second disk array device includes a step of writing the update data stored in the second cache at a predetermined timing to the disk according to the order of receiving the update data by referring to the link by the cache ID.
How to control a disk array system.
キャッシュIDによるリンクを生成するステップは、キャッシュIDに対応する属性情報を生成するステップを具備し、
更新データを第1のキャッシュへ格納したときに、属性情報を生成するステップにおいて、更新データの属性情報を第1の属性に設定し、更に、更新データについてディスクの同じ領域へ書き込まれる既存の更新データが第1のキャッシュに既に格納されている場合には、既存の更新データの属性情報を第2の属性に設定する、上述のディスクアレイシステムの制御方法。
The step of generating the link by the cache ID includes the step of generating the attribute information corresponding to the cache ID.
When the update data is stored in the first cache, in the step of generating the attribute information, the attribute information of the update data is set to the first attribute, and the existing update is written to the same area of the disk for the update data. The disk array system control method described above, which sets the attribute information of existing update data to the second attribute if the data is already stored in the first cache.
更新データを第1のキャッシュへ書き込むステップにおいて、更新データが既存の更新データとディスクの同じ領域に書き込まれる場合、既存の更新データが第1のキャッシュに既にあっても、既存の更新データが第2のディスクアレイ装置へ送信されるのを待たずに更新データがキャッシュへ書き込まれる、上述のディスクアレイシステムの制御方法。 In the step of writing the update data to the first cache, if the update data is written to the same area of the disk as the existing update data, the existing update data is the first even if the existing update data is already in the first cache. The control method of the disk array system described above, in which update data is written to the cache without waiting for transmission to the disk array device in 2.
更新データの属性情報を第2のディスクアレイ装置へ送信するステップを更に具備する、上述のディスクアレイシステムの制御方法。 The method for controlling a disk array system described above, further comprising a step of transmitting attribute information of update data to a second disk array device.
ディスクへ書き込むステップは、更新データの受け取り順序に従い、かつ、属性情報が第1の属性である更新データのみをディスクへ書き込む、上述のディスクアレイシステムの制御方法。 The step of writing to a disk is the above-mentioned control method of a disk array system in which only the update data whose attribute information is the first attribute is written to the disk according to the order of receiving the update data.
第1のディスクアレイ装置であって、
第1のキャッシュと、
外部から更新データを受け取り、更新データに対応するキャッシュIDを生成し、更新データを第1のキャッシュへ書き込む第1のI/O処理部と、
キャッシュIDを、更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成する、第1の順序保証制御部と、を具備し、
所定のタイミングで、第1の順序保証制御部が、更新データと、キャッシュIDによるリンクとを第2のディスクアレイ装置へ送信して更新データの格納を要求する、
第1のディスクアレイ装置。
The first disk array device,
The first cache and
A first I / O processing unit that receives update data from the outside, generates a cache ID corresponding to the update data, and writes the update data to the first cache.
It is provided with a first order guarantee control unit that links cache IDs in the order in which update data is received and generates a link by cache ID.
At a predetermined timing, the first order guarantee control unit sends the update data and the link by the cache ID to the second disk array device to request the storage of the update data.
First disk array device.
ここで、図5は、上記の実施形態に対応する装置の構成を表す図面である。構成要素については、第1の実施形態を参照。また、図6は、この実施形態における処理の流れを示している。ステップS601において、第1のI/O処理部が、外部から更新データを受け取り、更新データに対応するキャッシュIDを生成し、更新データを第1のキャッシュへ書き込む。ステップS602において、第1の順序保証制御が、キャッシュIDを、更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成する。ステップS603において、第1の順序保証制御部が、所定のタイミングで、更新データと、キャッシュIDによるリンクとを第2のディスクアレイ装置へ送信して更新データの格納を要求する。 Here, FIG. 5 is a drawing showing a configuration of an apparatus corresponding to the above embodiment. See the first embodiment for components. Further, FIG. 6 shows the flow of processing in this embodiment. In step S601, the first I / O processing unit receives the update data from the outside, generates a cache ID corresponding to the update data, and writes the update data to the first cache. In step S602, the first order guarantee control links the cache IDs in the order in which the update data is received to generate a link by the cache ID. In step S603, the first order guarantee control unit transmits the update data and the link by the cache ID to the second disk array device at a predetermined timing to request the storage of the update data.
更に、以下、他の追加の実施形態の説明を続ける。 Further, the description of other additional embodiments will be continued below.
第1の順序保証制御部は、キャッシュIDに対応する属性情報を生成し、更新データを第1のキャッシュへ格納するときに、更新データの属性情報を第1の属性に設定し、更に、更新データについてディスクの同じ領域へ書き込まれる既存の更新データが第1のキャッシュに格納されている場合には、既存の更新データの属性情報を第2の属性に設定する、上述の第1のディスクアレイ装置。 The first order guarantee control unit generates the attribute information corresponding to the cache ID, sets the attribute information of the update data to the first attribute when storing the update data in the first cache, and further updates. The first disk array described above sets the attribute information of the existing update data to the second attribute when the existing update data written to the same area of the disk for the data is stored in the first cache. Device.
第1のI/O処理部は、更新データが、既存の更新データとディスクの同じ領域に書き込まれる場合、既存の更新データが第1のキャッシュにあっても、既存の更新データが第2のディスクアレイ装置へ送信されるのを待たずに更新データを第1のキャッシュへ書き込む、上述の第1のディスクアレイ装置。 The first I / O processing unit is that when the update data is written to the same area of the disk as the existing update data, the existing update data is in the second cache even if the existing update data is in the first cache. The first disk array device described above that writes update data to the first cache without waiting for it to be sent to the disk array device.
第1のディスクアレイ装置から第2のディスクアレイ装置へ更新データを送信する場合に、更新データの属性情報も第2のディスクアレイ装置へ送信する、上述の第1のディスクアレイ装置。 The first disk array device described above, which also transmits the attribute information of the update data to the second disk array device when the update data is transmitted from the first disk array device to the second disk array device.
以上の開示は例である。従って、本発明の範囲は、上記の実施形態などの開示のみに限定して解釈されるべきではない。 The above disclosure is an example. Therefore, the scope of the present invention should not be construed as confined to the disclosure of the above embodiments and the like.
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。 Some or all of the above embodiments may also be described, but not limited to:
(付記1)
第1のディスクアレイ装置と、第2のディスクアレイ装置とを備えるディスクアレイシステムであって、
前記第1のディスクアレイ装置が、
第1のキャッシュと、
外部から更新データを受け取り、前記更新データに対応するキャッシュIDを生成し、前記更新データを前記第1のキャッシュへ書き込む第1のI/O処理部と、
前記キャッシュIDを、前記更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成する、第1の順序保証制御部と、を具備し、
所定のタイミングで、前記第1の順序保証制御部が、前記更新データと、前記キャッシュIDによるリンクとを前記第2のディスクアレイ装置へ送信し、
前記第2のディスクアレイ装置が、
第2のキャッシュと、
前記第1のディスクアレイ装置から前記更新データと、前記キャッシュIDによるリンクとを受け取り、前記キャッシュIDによるリンクを参照して前記更新データの受け取り順序に従って、前記更新データを前記第2のキャッシュへ書き込む、第2のI/O処理部と、
所定のタイミングで前記第2のキャッシュに格納された前記更新データを、前記キャッシュIDによるリンクを参照して前記更新データの受け取り順序に従って、ディスクへ書き込む、第2の順序保証制御部と、を具備する、
ディスクアレイシステム。
(Appendix 1)
A disk array system including a first disk array device and a second disk array device.
The first disk array device
The first cache and
A first I / O processing unit that receives update data from the outside, generates a cache ID corresponding to the update data, and writes the update data to the first cache.
A first order guarantee control unit that links the cache IDs in the order in which the update data is received to generate a link based on the cache IDs is provided.
At a predetermined timing, the first sequence guarantee control unit transmits the update data and the link by the cache ID to the second disk array device.
The second disk array device
The second cache and
The update data and the link by the cache ID are received from the first disk array device, and the update data is written to the second cache according to the order of receiving the update data with reference to the link by the cache ID. , The second I / O processing unit,
A second order guarantee control unit that writes the update data stored in the second cache at a predetermined timing to a disk in accordance with the order of receiving the update data by referring to the link by the cache ID is provided. do,
Disk array system.
(付記2)
前記第1の順序保証制御部は、前記キャッシュIDに対応する属性情報を生成し、前記更新データを前記第1のキャッシュへ格納するときに、前記更新データの属性情報を第1の属性に設定し、更に、前記更新データについて前記ディスクの同じ領域へ書き込まれる既存の更新データが前記第1のキャッシュに格納されている場合には、前記既存の更新データの属性情報を第2の属性に設定する、付記1に記載のディスクアレイシステム。
(Appendix 2)
The first order guarantee control unit generates attribute information corresponding to the cache ID, and when storing the update data in the first cache, sets the attribute information of the update data in the first attribute. Further, when the existing update data written to the same area of the disk for the update data is stored in the first cache, the attribute information of the existing update data is set in the second attribute. The disk array system described in
(付記3)
前記第1のI/O処理部は、前記更新データが、既存の更新データと前記ディスクの同じ領域に書き込まれる場合、前記既存の更新データが前記第1のキャッシュにあっても、前記既存の更新データが前記第2のディスクアレイ装置へ送信されるのを待たずに前記更新データを前記第1のキャッシュへ書き込む、付記1または2に記載のディスクアレイシステム。
(Appendix 3)
When the update data is written to the same area of the disk as the existing update data, the first I / O processing unit may use the existing update data even if the existing update data is in the first cache. The disk array system according to
(付記4)
前記第1のディスクアレイ装置から前記第2のディスクアレイ装置へ前記更新データを送信する場合に、前記更新データの属性情報も前記第2のディスクアレイ装置へ送信する、付記2に記載のディスクアレイシステム。
(Appendix 4)
The disk array according to
(付記5)
前記第2の順序保証制御部は、前記更新データの受け取り順序に従い、かつ、前記属性情報が第1の属性である更新データのみを前記ディスクへ書き込む、付記2または4に記載のディスクアレイシステム。
(Appendix 5)
The disk array system according to
(付記6)
第1のディスクアレイ装置と、第2のディスクアレイ装置とを備えるディスクアレイシステムにおけるディスクアレイシステムの制御方法であって、
前記第1のディスクアレイ装置が、外部から更新データを受け取るステップと、
前記第1のディスクアレイ装置が、前記更新データに対応するキャッシュIDを生成し、前記更新データを第1のキャッシュへ書き込むステップと、
前記第1のディスクアレイ装置が、前記キャッシュIDを前記更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成するステップと、
前記第1のディスクアレイ装置が、前記更新データと、前記キャッシュIDによるリンクとを前記第2のディスクアレイ装置へ送信するステップと、
前記第2のディスクアレイ装置が、前記第1のディスクアレイ装置から前記更新データと、前記キャッシュIDによるリンクとを受け取り、前記キャッシュIDによるリンクを参照して前記更新データの受け取り順序に従って、前記更新データを第2のキャッシュへ書き込むステップと、
前記第2のディスクアレイ装置が、所定のタイミングで前記第2のキャッシュに格納された前記更新データを、前記キャッシュIDによるリンクを参照して前記更新データの受け取り順序に従って、ディスクへ書き込むステップと、を具備する、
ディスクアレイシステムの制御方法。
(Appendix 6)
A method for controlling a disk array system in a disk array system including a first disk array device and a second disk array device.
The step in which the first disk array device receives update data from the outside,
A step in which the first disk array device generates a cache ID corresponding to the update data and writes the update data to the first cache.
A step in which the first disk array device links the cache IDs in the order in which the update data is received to generate a link based on the cache IDs.
A step in which the first disk array device transmits the update data and a link by the cache ID to the second disk array device.
The second disk array device receives the update data and the link by the cache ID from the first disk array device, refers to the link by the cache ID, and updates the update data according to the order of receiving the update data. The step of writing the data to the second cache,
A step in which the second disk array device writes the update data stored in the second cache at a predetermined timing to a disk in accordance with the order of receiving the update data by referring to the link by the cache ID. Equipped with
How to control a disk array system.
(付記7)
前記キャッシュIDによるリンクを生成するステップは、前記キャッシュIDに対応する属性情報を生成するステップを具備し、
前記更新データを前記第1のキャッシュへ格納したときに、前記属性情報を生成するステップにおいて、前記更新データの属性情報を第1の属性に設定し、更に、前記更新データについて前記ディスクの同じ領域へ書き込まれる既存の更新データが前記第1のキャッシュに既に格納されている場合には、前記既存の更新データの属性情報を第2の属性に設定する、付記6に記載のディスクアレイシステムの制御方法。
(Appendix 7)
The step of generating a link by the cache ID includes a step of generating attribute information corresponding to the cache ID.
When the update data is stored in the first cache, in the step of generating the attribute information, the attribute information of the update data is set to the first attribute, and further, the same area of the disk is set for the update data. The control of the disk array system according to Appendix 6, which sets the attribute information of the existing update data in the second attribute when the existing update data to be written to is already stored in the first cache. Method.
(付記8)
前記更新データを前記第1のキャッシュへ書き込むステップにおいて、前記更新データが既存の更新データと前記ディスクの同じ領域に書き込まれる場合、前記既存の更新データが前記第1のキャッシュに既にあっても、前記既存の更新データが前記第2のディスクアレイ装置へ送信されるのを待たずに前記更新データが前記第1のキャッシュへ書き込まれる、付記6または7に記載のディスクアレイシステムの制御方法。
(Appendix 8)
In the step of writing the update data to the first cache, when the update data is written to the same area of the disk as the existing update data, even if the existing update data is already in the first cache, The method for controlling a disk array system according to Appendix 6 or 7, wherein the update data is written to the first cache without waiting for the existing update data to be transmitted to the second disk array device.
(付記9)
前記更新データの属性情報を前記第2のディスクアレイ装置へ送信するステップを更に具備する、付記7に記載のディスクアレイシステムの制御方法。
(Appendix 9)
The control method of a disk array system according to Appendix 7, further comprising a step of transmitting the attribute information of the update data to the second disk array device.
(付記10)
前記ディスクへ書き込むステップは、前記更新データの受け取り順序に従い、かつ、前記属性情報が第1の属性である更新データのみを前記ディスクへ書き込む、付記7または9に記載のディスクアレイシステムの制御方法。
(Appendix 10)
The control method of a disk array system according to
(付記11)
第1のディスクアレイ装置であって、
第1のキャッシュと、
外部から更新データを受け取り、前記更新データに対応するキャッシュIDを生成し、前記更新データを前記第1のキャッシュへ書き込む第1のI/O処理部と、
前記キャッシュIDを、前記更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成する、第1の順序保証制御部と、を具備し、
所定のタイミングで、前記第1の順序保証制御部が、前記更新データと、前記キャッシュIDによるリンクとを第2のディスクアレイ装置へ送信して前記更新データの格納を要求する、
前記第1のディスクアレイ装置。
(Appendix 11)
The first disk array device,
The first cache and
A first I / O processing unit that receives update data from the outside, generates a cache ID corresponding to the update data, and writes the update data to the first cache.
A first order guarantee control unit that links the cache IDs in the order in which the update data is received to generate a link based on the cache IDs is provided.
At a predetermined timing, the first order guarantee control unit transmits the update data and the link by the cache ID to the second disk array device to request the storage of the update data.
The first disk array device.
(付記12)
前記第1の順序保証制御部は、前記キャッシュIDに対応する属性情報を生成し、前記更新データを前記第1のキャッシュへ格納するときに、前記更新データの属性情報を第1の属性に設定し、更に、前記更新データについて前記ディスクの同じ領域へ書き込まれる既存の更新データが前記第1のキャッシュに格納されている場合には、前記既存の更新データの属性情報を第2の属性に設定する、付記11に記載の第1のディスクアレイ装置。
(Appendix 12)
The first order guarantee control unit generates attribute information corresponding to the cache ID, and when storing the update data in the first cache, sets the attribute information of the update data in the first attribute. Further, when the existing update data written to the same area of the disk for the update data is stored in the first cache, the attribute information of the existing update data is set in the second attribute. The first disk array device according to
(付記13)
前記第1のI/O処理部は、前記更新データが、既存の更新データと前記ディスクの同じ領域に書き込まれる場合、前記既存の更新データが前記第1のキャッシュにあっても、前記既存の更新データが前記第2のディスクアレイ装置へ送信されるのを待たずに前記更新データを前記第1のキャッシュへ書き込む、付記11または12に記載の第1のディスクアレイ装置。
(Appendix 13)
When the update data is written to the same area of the disk as the existing update data, the first I / O processing unit may use the existing update data even if the existing update data is in the first cache. The first disk array device according to
(付記14)
前記第1のディスクアレイ装置から前記第2のディスクアレイ装置へ前記更新データを送信する場合に、前記更新データの属性情報も前記第2のディスクアレイ装置へ送信する、付記12に記載の第1のディスクアレイ装置。
(Appendix 14)
The first described in
1 メインサイト
2 リモートサイト
10 データ更新ホスト
11 I/O処理部
12 キャッシュ
13 送信部
14 順序保証制御部
15 ディスク制御部
16 ディスク
17 ディスクアレイ装置
21 I/O処理部
22 キャッシュ
23 受信部
24 順序保証制御部
25 ディスク制御部
26 ディスク
27 ディスクアレイ装置
30 遠隔回線
1
Claims (10)
前記第1のディスクアレイ装置が、
第1のキャッシュと、
外部から更新データを受け取り、前記更新データに対応するキャッシュIDを生成し、前記更新データを前記第1のキャッシュへ書き込む第1のI/O処理部と、
前記キャッシュIDを、前記更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成する、第1の順序保証制御部と、を具備し、
所定のタイミングで、前記第1の順序保証制御部が、前記更新データと、前記キャッシュIDによるリンクとを前記第2のディスクアレイ装置へ送信し、
前記第2のディスクアレイ装置が、
第2のキャッシュと、
前記第1のディスクアレイ装置から前記更新データと、前記キャッシュIDによるリンクとを受け取り、前記キャッシュIDによるリンクを参照して前記更新データの受け取り順序に従って、前記更新データを前記第2のキャッシュへ書き込む、第2のI/O処理部と、
所定のタイミングで前記第2のキャッシュに格納された前記更新データを、前記キャッシュIDによるリンクを参照して前記更新データの受け取り順序に従って、ディスクへ書き込む、第2の順序保証制御部と、を具備する、
ディスクアレイシステム。 A disk array system including a first disk array device and a second disk array device.
The first disk array device
The first cache and
A first I / O processing unit that receives update data from the outside, generates a cache ID corresponding to the update data, and writes the update data to the first cache.
A first order guarantee control unit that links the cache IDs in the order in which the update data is received to generate a link based on the cache IDs is provided.
At a predetermined timing, the first sequence guarantee control unit transmits the update data and the link by the cache ID to the second disk array device.
The second disk array device
The second cache and
The update data and the link by the cache ID are received from the first disk array device, and the update data is written to the second cache according to the order of receiving the update data with reference to the link by the cache ID. , The second I / O processing unit,
A second order guarantee control unit that writes the update data stored in the second cache at a predetermined timing to a disk in accordance with the order of receiving the update data by referring to the link by the cache ID is provided. do,
Disk array system.
前記第1のディスクアレイ装置が、外部から更新データを受け取るステップと、
前記第1のディスクアレイ装置が、前記更新データに対応するキャッシュIDを生成し、前記更新データを第1のキャッシュへ書き込むステップと、
前記第1のディスクアレイ装置が、前記キャッシュIDを前記更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成するステップと、
前記第1のディスクアレイ装置が、前記更新データと、前記キャッシュIDによるリンクとを前記第2のディスクアレイ装置へ送信するステップと、
前記第2のディスクアレイ装置が、前記第1のディスクアレイ装置から前記更新データと、前記キャッシュIDによるリンクとを受け取り、前記キャッシュIDによるリンクを参照して前記更新データの受け取り順序に従って、前記更新データを第2のキャッシュへ書き込むステップと、
前記第2のディスクアレイ装置が、所定のタイミングで前記第2のキャッシュに格納された前記更新データを、前記キャッシュIDによるリンクを参照して前記更新データの受け取り順序に従って、ディスクへ書き込むステップと、を具備する、
ディスクアレイシステムの制御方法。 A method for controlling a disk array system in a disk array system including a first disk array device and a second disk array device.
The step in which the first disk array device receives update data from the outside,
A step in which the first disk array device generates a cache ID corresponding to the update data and writes the update data to the first cache.
A step in which the first disk array device links the cache IDs in the order in which the update data is received to generate a link based on the cache IDs.
A step in which the first disk array device transmits the update data and a link by the cache ID to the second disk array device.
The second disk array device receives the update data and the link by the cache ID from the first disk array device, refers to the link by the cache ID, and updates the update data according to the order of receiving the update data. The step of writing the data to the second cache,
A step in which the second disk array device writes the update data stored in the second cache at a predetermined timing to a disk in accordance with the order of receiving the update data by referring to the link by the cache ID. Equipped with
How to control a disk array system.
第1のキャッシュと、
外部から更新データを受け取り、前記更新データに対応するキャッシュIDを生成し、前記更新データを前記第1のキャッシュへ書き込む第1のI/O処理部と、
前記キャッシュIDを、前記更新データを受け付けた順にリンクさせてキャッシュIDによるリンクを生成する、第1の順序保証制御部と、を具備し、
所定のタイミングで、前記第1の順序保証制御部が、前記更新データと、前記キャッシュIDによるリンクとを第2のディスクアレイ装置へ送信して前記更新データの格納を要求する、
前記第1のディスクアレイ装置。 The first disk array device,
The first cache and
A first I / O processing unit that receives update data from the outside, generates a cache ID corresponding to the update data, and writes the update data to the first cache.
A first order guarantee control unit that links the cache IDs in the order in which the update data is received to generate a link based on the cache IDs is provided.
At a predetermined timing, the first order guarantee control unit transmits the update data and the link by the cache ID to the second disk array device to request the storage of the update data.
The first disk array device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019070012A JP6912105B2 (en) | 2019-04-01 | 2019-04-01 | Disk array system, control method of disk array system, and disk array device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019070012A JP6912105B2 (en) | 2019-04-01 | 2019-04-01 | Disk array system, control method of disk array system, and disk array device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020170253A JP2020170253A (en) | 2020-10-15 |
JP6912105B2 true JP6912105B2 (en) | 2021-07-28 |
Family
ID=72745945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019070012A Active JP6912105B2 (en) | 2019-04-01 | 2019-04-01 | Disk array system, control method of disk array system, and disk array device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6912105B2 (en) |
-
2019
- 2019-04-01 JP JP2019070012A patent/JP6912105B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2020170253A (en) | 2020-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9411685B2 (en) | Parity chunk operating method and data server apparatus for supporting the same in distributed raid system | |
JP4236049B2 (en) | Method, system, and program for providing a mirror copy of data | |
JP4728031B2 (en) | System that performs remote copy pair migration | |
US20030163553A1 (en) | Storage system and method of copying data | |
US8495014B2 (en) | Asynchronous remote copy system and storage control method | |
US8024537B2 (en) | Storage system, remote copy and management method therefor | |
US8266400B2 (en) | Computer system remote copying system and computer system | |
JP4902538B2 (en) | System, method and apparatus for updating a data set via a communication network | |
JP2000132443A (en) | Computer, information sharing system and holding method for identity of replica | |
JPH10198607A (en) | Data multiplexing system | |
US20200104404A1 (en) | Seamless migration of distributed systems | |
JP6931081B2 (en) | Data backup system, relay site storage, data backup method, and relay site storage control program | |
JPWO2008139521A1 (en) | Remote file system, terminal device and server device | |
JP2015052844A (en) | Copy controller, copy control method, and copy control program | |
JP4412722B2 (en) | Remote copy system | |
CN103828331A (en) | System and method for providing reliable storage | |
JP6912105B2 (en) | Disk array system, control method of disk array system, and disk array device | |
JP4997784B2 (en) | Data storage system, data storage method, and data storage program | |
US8850117B2 (en) | Storage apparatus and method maintaining at least an order of writing data | |
CN109992447A (en) | Data copy method, device and storage medium | |
US11010090B2 (en) | Method and distributed computer system for processing data | |
EP1693756A1 (en) | Storage subsystem and storage system | |
CN102902683B (en) | Whole-disk copying method based on ISCSI (Internet Small Computer System Interface) and storage system | |
JP4478000B2 (en) | Data mediation method and data mediation device | |
JP2004272884A (en) | Data synchronization system after remote copy suspension in multiple remote storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200814 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210526 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210608 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210701 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6912105 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |