JP2013210919A - Replication device, replication method, and program - Google Patents

Replication device, replication method, and program Download PDF

Info

Publication number
JP2013210919A
JP2013210919A JP2012081713A JP2012081713A JP2013210919A JP 2013210919 A JP2013210919 A JP 2013210919A JP 2012081713 A JP2012081713 A JP 2012081713A JP 2012081713 A JP2012081713 A JP 2012081713A JP 2013210919 A JP2013210919 A JP 2013210919A
Authority
JP
Japan
Prior art keywords
journal
replication
block
roll forward
blocks
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.)
Granted
Application number
JP2012081713A
Other languages
Japanese (ja)
Other versions
JP6183876B2 (en
Inventor
Tomoyuki Iwagami
智之 岩上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2012081713A priority Critical patent/JP6183876B2/en
Publication of JP2013210919A publication Critical patent/JP2013210919A/en
Application granted granted Critical
Publication of JP6183876B2 publication Critical patent/JP6183876B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a replication device, a replication method, and a program, capable of executing roll forward without waiting until transfer of a journal is completed.SOLUTION: A replication device 110 includes: replication information reception means 118 for receiving a journal block; a journal volume 120 including a storage area for storing a fixed number of journal blocks; and roll forward means 111 for updating a duplicate volume by reading out a journal block from the storage area. A storage area has a circulation structure in which when the number of the journal blocks exceeds a predetermined number, stored journal blocks are overwritten, in chronological order from the oldest one, by a new journal block, and the journal block includes a circulation number indicative of the number of rounds of the overwriting. The roll forward means 111 discriminates, when a journal block is read out, a latest journal block on the basis of the number of circulation to stop the roll forward.

Description

本発明は、レプリケーション装置、レプリケーション方法及びプログラムに関し、例えばジャーナルの転送完了を待ち合わせることなくロールフォワードを実施できるレプリケーション技術に関する。   The present invention relates to a replication apparatus, a replication method, and a program. For example, the present invention relates to a replication technique capable of performing roll forward without waiting for completion of journal transfer.

BCP(Business Continuity Plan:事業継続計画)対策の一つとして、メインサイトと同じデータを持つリモートサイトを予め準備しておき、災害等の発生時にリモートサイトを利用して事業を継続する手法が知られている。メインサイトに生じたデータの変更をリモートサイトに反映する方法の一つとして、レプリケーションという技術が多く利用されている(例として特許文献1参照)。   As one of measures against BCP (Business Continuity Plan), a method is known in which a remote site having the same data as the main site is prepared in advance, and the business is continued using the remote site when a disaster occurs. ing. As one of the methods for reflecting data changes occurring at the main site to the remote site, a technique called replication is often used (see Patent Document 1 as an example).

レプリケーションとは、メインサイトのマスタボリューム(以降、MVという)から、リモートサイトの複製ボリューム(以降、RVという)に対し、MVの更新データを転送し、リモートサイトがその更新データに基づいて複製ボリュームを更新する技術である。レプリケーション方式の一つに、MVにおけるデータ書き込み順序を保持したままRVにおいてもデータを書き込む、順序型レプリケーションがある。   Replication refers to the transfer of MV update data from the master volume at the main site (hereinafter referred to as MV) to the replication volume at the remote site (hereinafter referred to as RV), and the remote site transfers the replication volume based on the update data. It is a technology to update. One replication method is sequential replication in which data is written in RV while maintaining the data write order in MV.

順序型レプリケーションの特長は、RPO(Recovery Point Objective)が短くリモートサイトでの業務を早期に再開できることである。   A feature of sequential replication is that RPO (Recovery Point Objective) is short and operations at a remote site can be resumed early.

また、順序型レプリケーションとともに用いられる方式の一つとして、メインサイトのストレージ装置が、MVの更新ログ(以降、ジャーナルという)のみをリモートサイトに転送し、リモートサイトのストレージ装置が、その更新ログに基づいてロールフォワード処理を行い、RVを更新する方式がある。   As one of the methods used with sequential replication, the storage device at the main site transfers only the MV update log (hereinafter referred to as journal) to the remote site, and the storage device at the remote site is based on the update log. There is a method for performing roll forward processing and updating RV.

この方式は、転送対象をジャーナルに絞ることで転送量を減らすことが出来るという利点がある。   This method has an advantage that the transfer amount can be reduced by narrowing the transfer target to a journal.

特許第4731975号公報Japanese Patent No. 4731975

一方、上述の方式では、ジャーナルの転送がストレージ装置間で行われる。そのため、メインサイトおよびリモートサイトにおいてデータベース(以降、DBという)更新処理を担当するホスト装置においては、ジャーナルの転送の進行中、ジャーナルの転送がどこまで完了したかを把握することができない。そのため、リモートサイト側において、受信したジャーナルの記憶領域への書き込みと、ロールフォワードのためのジャーナルの読み込みとが衝突すると、ロールフォワード実行側において書き込み途中のジャーナルを読み込んでしまい、その結果、DBの不正反映が発生してしまうことがあった。   On the other hand, in the above-described method, journal transfer is performed between storage apparatuses. For this reason, the host device in charge of database (hereinafter referred to as DB) update processing at the main site and the remote site cannot grasp how far the journal transfer has been completed while the journal transfer is in progress. For this reason, when writing to the storage area of the received journal and reading of the journal for roll forward collide on the remote site side, the journal in the middle of writing is read on the roll forward execution side. Incorrect reflection sometimes occurred.

よって、ロールフォワードを実施する際は、ジャーナルの転送の完了を待ち合わせる必要があり、このことがRTO(Recovery Time Objective)の増大を招いていた。   Therefore, when performing roll forward, it is necessary to wait for the completion of journal transfer, which causes an increase in RTO (Recovery Time Objective).

本発明は、このような問題点を解決するためになされたものであり、ジャーナルの転送完了を待ち合わせることなく、高速かつ整合性を保った状態でロールフォワードを実施できるレプリケーション装置、レプリケーション方法及びプログラムを提供することを目的とする。   The present invention has been made to solve such problems, and a replication apparatus, a replication method, and a program capable of performing roll forward at high speed and maintaining consistency without waiting for completion of journal transfer The purpose is to provide.

本発明に係るレプリケーション装置は、複製元ボリュームの更新情報を含むジャーナルブロックを受信するレプリケーション情報受信手段と、前記ジャーナルブロックを、受信した順に一定数格納する格納領域を含むジャーナルボリュームと、前記格納領域から前記ジャーナルブロックを順に読出し、読出した前記ジャーナルブロックに基づいて複製ボリュームを更新するロールフォワードを実行するロールフォワード手段とを有し、前記格納領域は、格納済みの前記ジャーナルブロックが前記一定数を超えた場合、格納済みの前記ジャーナルブロックが、古いものから順に、新たな前記ジャーナルブロックによって上書きされる循環構造であり、前記ジャーナルブロックはそれぞれ、前記循環構造において前記上書きが一巡した回数を示す循環回数を含んでおり、前記ロールフォワード手段は、前記格納された前記ジャーナルブロックを読出した際、前記循環回数に基づいて最新の前記ジャーナルブロックを判別し、前記最新の前記ジャーナルブロックを以て前記ロールフォワードを停止するものである。   The replication apparatus according to the present invention includes a replication information receiving means for receiving a journal block including update information of a replication source volume, a journal volume including a storage area for storing a fixed number of the journal blocks in the order received, and the storage area Roll journal means for sequentially reading the journal blocks from each other and executing roll forward for updating the replication volume based on the read journal blocks, and the storage area has the fixed number of the journal blocks stored therein. If it exceeds, the stored journal block is a circular structure overwritten by the new journal block in order from the oldest one, and each journal block indicates the number of times the overwriting has made one round in the circular structure. The roll forward means, when reading the stored journal block, determines the latest journal block based on the circulation count, and uses the latest journal block to roll the roll forward. Is to stop.

本発明に係るレプリケーション方法は、複製元ボリュームの更新情報を含むジャーナルブロックを受信するレプリケーション情報受信ステップと、前記ジャーナルブロックを、受信した順にジャーナルボリュームの格納領域に一定数格納する格納ステップと、前記格納領域から前記ジャーナルブロックを順に読出し、読出した前記ジャーナルブロックに基づいて複製ボリュームを更新するロールフォワードを実行するロールフォワードステップとを有し、前記格納領域は、格納済みの前記ジャーナルブロックが前記一定数を超えた場合、格納済みの前記ジャーナルブロックが、古いものから順に、新たな前記ジャーナルブロックによって上書きされる循環構造であり、前記ジャーナルブロックはそれぞれ、前記循環構造において前記上書きが一巡した回数を示す循環回数を含んでおり、前記ロールフォワードステップにおいては、前記格納された前記ジャーナルブロックを読出した際、前記循環回数に基づいて最新の前記ジャーナルブロックを判別し、前記最新の前記ジャーナルブロックを以て前記ロールフォワードを停止するものである。   The replication method according to the present invention includes a replication information reception step of receiving a journal block including update information of a replication source volume, a storage step of storing a fixed number of the journal blocks in the storage area of the journal volume in the order received, A roll-forward step of sequentially reading the journal blocks from the storage area and executing a roll-forward for updating the replication volume based on the read journal blocks, wherein the stored journal blocks are the fixed If the number exceeds the number, the stored journal blocks are overwritten by new journal blocks in order from the oldest, and each of the journal blocks is overwritten in the circular structure. In the roll forward step, when reading the stored journal block, the latest journal block is determined based on the circulation number, and the latest The roll forward is stopped with a journal block.

本発明に係るプログラムは、コンピュータに、複製元ボリュームの更新情報を含むジャーナルブロックを受信するレプリケーション情報受信ステップと、前記ジャーナルブロックを、受信した順にジャーナルボリュームの格納領域に一定数格納する格納ステップと、前記格納領域から前記ジャーナルブロックを順に読出し、読出した前記ジャーナルブロックに基づいて複製ボリュームを更新するロールフォワードを実行するロールフォワードステップとを実行させるためのプログラムであって、前記格納領域は、格納済みの前記ジャーナルブロックが前記一定数を超えた場合、格納済みの前記ジャーナルブロックが、古いものから順に、新たな前記ジャーナルブロックによって上書きされる循環構造であり、前記ジャーナルブロックはそれぞれ、前記循環構造において前記上書きが一巡した回数を示す循環回数を含んでおり、前記ロールフォワードステップにおいては、前記格納された前記ジャーナルブロックを読出した際、前記循環回数に基づいて最新の前記ジャーナルブロックを判別し、前記最新の前記ジャーナルブロックを以て前記ロールフォワードを停止するものである。   A program according to the present invention includes a replication information receiving step for receiving a journal block including update information of a replication source volume in a computer, and a storage step for storing a fixed number of the journal blocks in the storage area of the journal volume in the order received. And a roll forward step of executing a roll forward step of executing a roll forward for updating a replication volume based on the read journal block, and sequentially reading the journal blocks from the storage area. When the number of journal blocks that have been exceeded exceeds the certain number, the stored journal blocks are overwritten by new journal blocks in order from the oldest one, and each journal block is , Including a circulation number indicating the number of times the overwriting has been completed in the circulation structure. In the roll forward step, when the stored journal block is read, the latest journal block is based on the circulation number. And the roll forward is stopped with the latest journal block.

本発明により、ジャーナルの転送完了を待ち合わせることなく、高速かつ整合性を保った状態でロールフォワードを実施できるレプリケーション装置、レプリケーション方法及びプログラムを提供することができる。   According to the present invention, it is possible to provide a replication apparatus, a replication method, and a program capable of performing roll forward at a high speed and maintaining consistency without waiting for completion of journal transfer.

本発明の実施の形態の構成を示す図である。It is a figure which shows the structure of embodiment of this invention. 本発明の実施の形態の構成を示す図である。It is a figure which shows the structure of embodiment of this invention. 本発明の実施の形態の構成を示す図である。It is a figure which shows the structure of embodiment of this invention. 本発明の実施の形態の構成を示す図である。It is a figure which shows the structure of embodiment of this invention. 本発明の実施の形態の構成を示す図である。It is a figure which shows the structure of embodiment of this invention. 本発明の実施の形態の構成を示す図である。It is a figure which shows the structure of embodiment of this invention. 本発明の実施の形態の処理を示す図である。It is a figure which shows the process of embodiment of this invention. 本発明の実施の形態の処理を示す図である。It is a figure which shows the process of embodiment of this invention. 本発明の実施の形態の処理を示す図である。It is a figure which shows the process of embodiment of this invention. 本発明の実施の形態の処理を示す図である。It is a figure which shows the process of embodiment of this invention. 本発明の実施の形態の処理を示す図である。It is a figure which shows the process of embodiment of this invention. 本発明の実施の形態の処理を示す図である。It is a figure which shows the process of embodiment of this invention.

以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。   Hereinafter, specific embodiments to which the present invention is applied will be described in detail with reference to the drawings.

まず、図1を用いて、本発明の実施の形態にかかるレプリケーション装置110の構成について説明する。   First, the configuration of the replication apparatus 110 according to the embodiment of the present invention will be described with reference to FIG.

レプリケーション装置110は、図示しないメインサイトにおけるMVの更新を反映する、リモートサイトを構成する装置である。レプリケーション装置110は、典型的にはサーバコンピュータ等により構成され、中央演算処理装置(CPU)、揮発性メモリ、不揮発性メモリ、通信装置及び入出力装置等のハードウェアを含む。CPUは、揮発性メモリ又は不揮発性メモリに格納された制御プログラム(ソフトウェア)に基づいて後述する各種処理を実行する。レプリケーション装置110は、物理的に単一の装置である必要はなく、複数の装置により後述の機能が分散的に実現される構成であってもよい。   The replication device 110 is a device that configures a remote site that reflects MV updates at a main site (not shown). The replication apparatus 110 is typically configured by a server computer or the like, and includes hardware such as a central processing unit (CPU), a volatile memory, a nonvolatile memory, a communication device, and an input / output device. The CPU executes various processes described later based on a control program (software) stored in a volatile memory or a nonvolatile memory. The replication apparatus 110 does not have to be a physically single apparatus, and may have a configuration in which functions described below are realized in a distributed manner by a plurality of apparatuses.

また、レプリケーション装置110は、典型的にはホスト及びストレージ装置を含む。ストレージ装置は、主にジャーナルの管理を行う装置であり、レプリケーション情報受信手段118及びジャーナルボリューム120を含む。ホストは、主にRVの更新処理を実行する装置であり、ロールフォワード手段111を含む。   The replication apparatus 110 typically includes a host and a storage apparatus. The storage device is a device that mainly manages journals, and includes a replication information receiving unit 118 and a journal volume 120. The host is a device that mainly executes RV update processing, and includes roll-forward means 111.

レプリケーション情報受信手段118は、複製元ボリュームすなわちMVを有するメインサイトと通信可能に接続されており、MVの更新ログであるジャーナルを逐次受信する。ここで、ジャーナルは、複数の更新ログ(ジャーナルレコード)を含むジャーナルブロックの形で送受信されるものとする。   The replication information receiving unit 118 is communicably connected to a replication source volume, that is, a main site having an MV, and sequentially receives a journal that is an MV update log. Here, the journal is transmitted / received in the form of a journal block including a plurality of update logs (journal records).

ジャーナルボリューム120は、レプリケーション情報受信手段118が受信したジャーナルブロックを格納するための複数の格納領域を有する。ジャーナルブロックは、受信されたものから順次これらの格納領域に格納される。なお、ジャーナルブロックの受信時点において、既に全ての格納領域が利用済みである場合は、最も古い、すなわち最も早い時刻に受信したジャーナルブロックが格納されている格納領域に、受信したジャーナルブロックが格納されていくものとする。これを、以降、循環書き込みという。   The journal volume 120 has a plurality of storage areas for storing journal blocks received by the replication information receiving means 118. Journal blocks are stored in these storage areas sequentially from the received one. If all the storage areas are already used at the time of receiving the journal block, the received journal block is stored in the storage area where the oldest, that is, the journal block received at the earliest time is stored. Shall be. This is hereinafter referred to as circular writing.

ここで、ある格納領域においてこの循環書込みがなされた累積回数、換言すれば世代を管理するために、本実施の形態では、ジャーナルブロックに、この循環書込みの累積回数を示す循環回数を記録するためのセクターを設ける。   Here, in order to manage the cumulative number of times this circular writing has been performed in a certain storage area, in other words, the generation, in this embodiment, in order to record the number of circulations indicating the cumulative number of this circular writing in the journal block. A sector is established.

ロールフォワード手段111は、ジャーナルボリューム120からジャーナルブロックを順次読出し、読出した前記ジャーナルブロックに基づいて複製ボリュームすなわちRVを更新する処理、すなわちロールフォワードを実行する。   The roll forward unit 111 sequentially reads journal blocks from the journal volume 120 and executes a process of updating the replication volume, that is, RV based on the read journal block, that is, roll forward.

ここで、ロールフォワード手段111は、ジャーナルボリューム120からジャーナルブロックを順次読出した際、ジャーナルブロックに記録された循環回数に基づいて、ジャーナルボリューム120における最新のジャーナルブロックがどのジャーナルブロックであるかを判別する。ロールフォワード手段111は、最新のジャーナルブロックが判別できたならば、そのジャーナルブロックをRVに反映した後、ロールフォワードを停止する。   Here, the roll forward unit 111 determines which journal block is the latest journal block in the journal volume 120 based on the number of circulations recorded in the journal block when sequentially reading the journal blocks from the journal volume 120. To do. If the latest journal block can be determined, the roll forward unit 111 reflects the journal block in the RV and then stops the roll forward.

なお、上記ホスト、ストレージ装置及び各種手段等は、いずれも必ずしも物理的に独立した装置である必要はなく、レプリケーション装置110が有する上述のハードウェアとソフトウェアとの協働により論理的に実現されるものであって良い。   Note that the host, storage device, various means, and the like are not necessarily physically independent devices, and are logically realized by the cooperation of the hardware and software included in the replication device 110 described above. It can be a thing.

図2乃至図6を用いて、レプリケーション装置110のより具体的な実装例について説明する。   A more specific implementation example of the replication apparatus 110 will be described with reference to FIGS.

リモートサイトとしてのレプリケーション装置110は、メインサイト100と通信手段117及び105を介して接続される。   The replication apparatus 110 as a remote site is connected to the main site 100 via communication means 117 and 105.

メインサイト100は、複製元ボリュームとしてのDB(MV)109と、ホスト及びストレージ装置を含む。ホストは、DB(MV)109に対する更新処理を行うDB更新手段101を含む。ストレージ装置は、DB(MV)109の更新ログすなわちジャーナルを格納するジャーナルボリューム(MV)108と、ジャーナルをリモートサイトとしてのレプリケーション装置110に送信するレプリケーション情報送信手段104とを含む。   The main site 100 includes a DB (MV) 109 as a replication source volume, a host, and a storage device. The host includes DB update means 101 that performs update processing on the DB (MV) 109. The storage apparatus includes an update log of the DB (MV) 109, that is, a journal volume (MV) 108 that stores a journal, and a replication information transmission unit 104 that transmits the journal to the replication apparatus 110 as a remote site.

リモートサイトとしてのレプリケーション装置110は、複製ボリュームとしてのDB(RV)121と、ホスト及びストレージ装置を含む。ホストは、メインサイト100から受信するジャーナルに基づいてDB(RV)121のロールフォワード処理を行うロールフォワード手段111を含む。ストレージ装置は、メインサイト100からジャーナルを受信するレプリケーション情報受信手段119と、ジャーナルを格納するジャーナルボリューム(RV)120と、ジャーナルボリューム(RV)120に対するアクセスの排他制御を行う排他手段114とを含む。   The replication device 110 as a remote site includes a DB (RV) 121 as a replication volume, a host, and a storage device. The host includes roll forward means 111 that performs roll forward processing of the DB (RV) 121 based on a journal received from the main site 100. The storage apparatus includes a replication information receiving unit 119 that receives a journal from the main site 100, a journal volume (RV) 120 that stores a journal, and an exclusive unit 114 that performs exclusive control of access to the journal volume (RV) 120.

以下に、これらの構成要素及び本実施の形態で用いられるデータ構造について詳細に説明する。   Hereinafter, these components and the data structure used in this embodiment will be described in detail.

<ジャーナルブロック>
ジャーナルブロックは、DB更新手段101が、DB(MV)109の更新内容を記したログ、すなわちジャーナルレコードを、ジャーナルボリューム(MV)108へ書き込むときに用いるデータ構造である。
<Journal block>
The journal block is a data structure that is used when the DB update unit 101 writes a log describing the update contents of the DB (MV) 109, that is, a journal record, to the journal volume (MV) 108.

まず、図3を用いて、ジャーナルブロックの出力機序について説明する。   First, the output mechanism of the journal block will be described with reference to FIG.

図3に、ジャーナルボリューム(MV)108及びジャーナルボリューム(RV)120を模式化した、ジャーナルボリューム201を示す。ジャーナルブロック203乃至207は、ジャーナルボリューム201に事前に確保されたアドレス領域202(以降、ジャーナル領域202という)に出力される。この構造は、ジャーナルボリューム(MV)108及びジャーナルボリューム(RV)120に共通である。   FIG. 3 shows a journal volume 201 in which the journal volume (MV) 108 and the journal volume (RV) 120 are schematically shown. The journal blocks 203 to 207 are output to an address area 202 (hereinafter referred to as journal area 202) reserved in advance in the journal volume 201. This structure is common to the journal volume (MV) 108 and the journal volume (RV) 120.

ジャーナルブロックが大量に出力され、格納を要求される事態に対処するため、ジャーナル領域202は循環使用される。すなわち、ジャーナル領域202に、ジャーナルブロック203、204・・207が順に格納されてゆき、次のジャーナルブロックを格納するに足る領域が無くなった場合、次のジャーナルブロックは、これらのジャーナルブロックのうち最も古い、すなわち最も早く格納されたジャーナルブロック203に上書きされる形で格納される。   In order to cope with a situation in which a large number of journal blocks are output and storage is required, the journal area 202 is cyclically used. That is, when the journal blocks 203, 204,... 207 are sequentially stored in the journal area 202 and there is no longer enough area to store the next journal block, the next journal block is the largest of these journal blocks. The old, that is, the earliest stored journal block 203 is overwritten.

本実施の形態では、ジャーナルブロックは固定長とする。すなわち、ジャーナルブロック203乃至207は全て同じサイズとする。これにより、ジャーナル領域202を循環使用した場合でも、ジャーナルブロックの格納位置は一意に定まる。すなわち、循環する度にジャーナル領域202におけるジャーナルブロックの格納位置が変動することが無い。これにより、メインサイト100及びレプリケーション装置110は、ジャーナルブロックを書き込み及び読み出すべきアドレスを容易かつ高速に特定することができる。   In this embodiment, the journal block has a fixed length. That is, the journal blocks 203 to 207 are all the same size. Thereby, even when the journal area 202 is used cyclically, the storage position of the journal block is uniquely determined. In other words, the storage position of the journal block in the journal area 202 does not change every time it circulates. As a result, the main site 100 and the replication apparatus 110 can easily and quickly specify the address at which the journal block is to be written and read.

つぎに、図4を用いて、ジャーナルブロックの内部構造について説明する。   Next, the internal structure of the journal block will be described with reference to FIG.

ジャーナルブロックは、ジャーナルブロックの出力がジャーナル領域を何回循環したか(循環回数)を示す1個の数値、すなわち循環通番と、DB(MV)109の更新内容を記録した1以上のジャーナルレコードとを含む。図4の例では、ジャーナルブロックは、先頭の循環通番301に続き、ジャーナルレコード302乃至305を含んでいる。ここで、ジャーナルレコード302乃至305は可変長であって良い。但し、ジャーナルレコードは1個のジャーナルブロック内に収めること、すなわち複数のジャーナルブロックにまたがって出力しないこととする。よって、ジャーナルブロックの終端には未使用領域306が追加される場合がある。   The journal block has one numerical value indicating how many times the output of the journal block has circulated in the journal area (the number of circulations), that is, a circulation serial number, and one or more journal records in which the update contents of the DB (MV) 109 are recorded. including. In the example of FIG. 4, the journal block includes journal records 302 to 305 following the first circulation serial number 301. Here, the journal records 302 to 305 may have a variable length. However, it is assumed that the journal record is stored in one journal block, that is, is not output across a plurality of journal blocks. Therefore, an unused area 306 may be added at the end of the journal block.

循環通番301は、ジャーナルブロックが所定数出力されてジャーナル領域の終端(以降、領域終端という)に達し、新たなジャーナルブロックの出力アドレスがジャーナル領域の先頭に戻るときに加算される。循環通番301は、ジャーナル領域がこのように循環使用される場合において、最新の、すなわち最後に出力されたジャーナルブロック(以降、ジャーナル終端という)を特定するために用いられる。   The circulation sequence number 301 is added when a predetermined number of journal blocks are output, reach the end of the journal area (hereinafter referred to as the end of the area), and the output address of the new journal block returns to the beginning of the journal area. The circulation serial number 301 is used to specify the latest, that is, the most recently output journal block (hereinafter referred to as the journal end) when the journal area is cyclically used in this way.

ジャーナルレコードには、DBの更新内容を含むジャーナル(以降、更新ジャーナルレコードという)のほかに、トランザクションの開始を示すジャーナルレコード(以降、開始ジャーナルレコードという)、トランザクションの終了を示すジャーナルレコード(以降、終了ジャーナルレコードという)がある。開始ジャーナルレコード、0個以上の更新ジャーナルレコード、及び終了ジャーナルレコードの組によって、1つのトランザクションが表される。開始ジャーナルレコードに対応する終了ジャーナルレコードが無いことは、その開始ジャーナルレコードにかかるトランザクションは完了していないことを意味する。よって、このトランザクションにかかるジャーナルレコードは、ロールフォワード時にDBへ反映してはならないものである。なお、開始ジャーナルレコードと終了ジャーナルレコードとは、異なるジャーナルブロックに含まれても良い。   The journal record includes a journal containing the DB update contents (hereinafter referred to as an update journal record), a journal record indicating the start of a transaction (hereinafter referred to as a start journal record), and a journal record indicating the end of a transaction (hereinafter referred to as a journal record). Called end journal record). One transaction is represented by a set of a start journal record, zero or more update journal records, and an end journal record. The absence of an end journal record corresponding to the start journal record means that the transaction related to the start journal record has not been completed. Therefore, the journal record related to this transaction should not be reflected in the DB at the time of roll forward. Note that the start journal record and the end journal record may be included in different journal blocks.

ジャーナルブロックにこのような構造を持たせることにより、リモートサイト110側においては容易にジャーナル終端を特定でき、ロールフォワードを適切に制御することができる。すなわち、本実施の形態によれば、ジャーナルブロックのみの転送で、リモートサイト110側のDB(RV)121を容易に最新の状態に保つことが可能である。   By giving such a structure to the journal block, the end of the journal can be easily identified on the remote site 110 side, and roll forward can be controlled appropriately. That is, according to the present embodiment, it is possible to easily keep the DB (RV) 121 on the remote site 110 side in the latest state by transferring only the journal block.

<ストレージコントローラ103及び113>
ストレージコントローラ103及び113は、メインサイト100又はリモートサイト110のストレージ装置102又は112が有する手段である。ストレージコントローラ103又は113は、DB更新手段101による書き込み要求又はロールフォワード手段111による読み込み要求を受け付け、ストレージ装置103又は113が有するジャーナルボリューム(MV)108又はジャーナルボリューム(RV)120へのアクセスを制御する機能を有する。
<Storage controllers 103 and 113>
The storage controllers 103 and 113 are means that the storage device 102 or 112 of the main site 100 or the remote site 110 has. The storage controller 103 or 113 receives a write request from the DB update unit 101 or a read request from the rollforward unit 111 and controls access to the journal volume (MV) 108 or journal volume (RV) 120 included in the storage apparatus 103 or 113. It has the function to do.

メインサイト100のストレージコントローラ103は、レプリケーション状態の管理機能及びジャーナルの送信機能を有するレプリケーション情報送信手段104を含む。リモートサイト110のストレージコントローラ113は、レプリケーション状態及びレプリケーション速度の管理機能、並びにジャーナルの受信機能を有するレプリケーション情報受信手段118を含む。また、リモートサイト110のストレージコントローラ113は、さらにジャーナルボリューム(RV)120に対するアクセスの排他制御を行う排他手段114を含む。   The storage controller 103 of the main site 100 includes replication information transmission means 104 having a replication state management function and a journal transmission function. The storage controller 113 of the remote site 110 includes replication information receiving means 118 having a replication status and replication speed management function and a journal reception function. The storage controller 113 of the remote site 110 further includes an exclusive unit 114 that performs exclusive control of access to the journal volume (RV) 120.

図6を用いて、ストレージコントローラ103及び113が、DB更新手段101による書き込み要求又はロールフォワード手段111による読み込み要求に基づいて行う、ジャーナルボリューム(MV)108又はジャーナルボリューム(RV)120へのアクセス制御の機序を説明する。   With reference to FIG. 6, the access control to the journal volume (MV) 108 or the journal volume (RV) 120 performed by the storage controllers 103 and 113 based on a write request by the DB update unit 101 or a read request by the roll forward unit 111. Explain the mechanism.

DB更新手段101による書き込み要求は、書きこみ先ボリューム501、書きこみ始点アドレス502、書きこみ終点アドレス503、および、書きこみイメージ504にて構成するものとする。書き込みイメージ504は、ジャーナルブロックを1個以上含む。また、ロールフォワード手段111による読み込み要求は、読み込み先ボリューム508、読み込み始点アドレス509、読み込み終点アドレス510にて構成するものとする。なお、ここでいうアドレスとは、ボリューム上の位置を一意に特定する情報である。例えば、目的のジャーナルブロックが、先頭のジャーナルブロックから見て何個先のジャーナルブロックであるかを示す数を、この格納領域における相対的なアドレスとして用いることができる。   The write request by the DB update unit 101 is composed of a write destination volume 501, a write start point address 502, a write end point address 503, and a write image 504. The write image 504 includes one or more journal blocks. The read request by the roll forward unit 111 is composed of a read destination volume 508, a read start point address 509, and a read end point address 510. The address here is information for uniquely specifying the position on the volume. For example, a number indicating how many journal blocks the target journal block is when viewed from the head journal block can be used as a relative address in this storage area.

<レプリケーション情報送信手段104>
レプリケーション情報送信手段104は、メインサイト100のストレージコントローラ103が有する手段である。レプリケーション情報送信手段104は、ストレージコントローラ103がホストから受け取ったジャーナルボリューム(MV)108へのジャーナルブロックの書き込み要求を、リモートサイト110へ転送する機能を有する。
<Replication information transmission means 104>
The replication information transmission unit 104 is a unit included in the storage controller 103 of the main site 100. The replication information transmission unit 104 has a function of transferring a journal block write request to the journal volume (MV) 108 received from the host by the storage controller 103 to the remote site 110.

<レプリケーション情報受信手段118>
レプリケーション情報受信手段118は、リモートサイト110のストレージコントローラ113が有する手段である。レプリケーション情報受信手段118は、メインサイト100のレプリケーション情報送信手段104から転送されてきた書き込み要求を受け取り、ストレージコントローラ113の機能を用いて、ジャーナルボリューム(RV)120へジャーナルブロックを書き込む機能を有する。
<Replication information receiving means 118>
The replication information receiving unit 118 is a unit that the storage controller 113 of the remote site 110 has. The replication information receiving unit 118 has a function of receiving a write request transferred from the replication information transmitting unit 104 of the main site 100 and writing a journal block to the journal volume (RV) 120 using the function of the storage controller 113.

レプリケーション情報受信手段118は、ジャーナルボリューム(RV)120へ書き込んでいる途中のジャーナルブロックを、後述するロールフォワード手段111が読み込まないよう、後述する排他手段114を用いて書き込みの排他を取得する。排他の単位は、ホスト側による書き込み単位であるジャーナルブロックとする。   The replication information receiving unit 118 obtains write exclusion using the exclusion unit 114 described later so that the later-described roll forward unit 111 does not read the journal block being written to the journal volume (RV) 120. The exclusive unit is a journal block which is a write unit by the host side.

また、レプリケーション情報受信手段118と、上述のレプリケーション情報送信手段104とは、順序を保障されないレプリケーションによるDBの不正更新を防ぐために、現在のレプリケーション状態を、レプリケーション状態情報119として保持する。レプリケーション状態情報119は、順序型レプリケーションが実施されている状態(以降、SYNC状態という)と、レプリケーションは動作しているがメインホストでの書き込み順序がわからず順序型レプリケーションが実施できない状態(以降、REPLICATE状態という)の2つの状態を判別可能なデータを含むものとする。   In addition, the replication information receiving unit 118 and the above-described replication information transmitting unit 104 hold the current replication state as replication state information 119 in order to prevent unauthorized update of the DB by replication whose order is not guaranteed. The replication status information 119 includes a state in which sequential replication is being performed (hereinafter referred to as a SYNC state), a state in which replication is being performed but the write order on the main host is not known and sequential replication cannot be performed (hereinafter, It is assumed that data that can distinguish two states (referred to as REPLICATE states) is included.

レプリケーション情報受信手段118は、このレプリケーション状態情報119を参照し、これがREPLICATE状態である場合、書き込み順序が不明なジャーナルブロックをロールフォワードすることによってDBの不正更新が発生しないよう、後述する排他手段114によってジャーナルボリューム(RV)120のジャーナル領域全体を排他し、ロールフォワードの進行を抑止する。   The replication information receiving means 118 refers to this replication status information 119, and when it is in the REPLICATE status, the exclusion means 114 described later is used to prevent unauthorized update of the DB by rolling forward journal blocks whose writing order is unknown. Thus, the entire journal area of the journal volume (RV) 120 is excluded, and the progress of roll forward is suppressed.

さらに、レプリケーション情報受信手段118は、メインサイト100とのレプリケーション速度、すなわちジャーナルの転送速度を示す情報を、レプリケーション速度情報126として保持する。レプリケーション情報受信手段118は、レプリケーション速度情報126を、排他手段116に要求する排他制御の範囲を決定する情報として利用する。レプリケーション情報受信手段118とロールフォワード手段111とは、レプリケーション速度情報126に応じ、出来るだけ多くのジャーナルブロックを一度に排他する。これにより、排他手段114の使用頻度を削減することが可能となる。具体的には、現在のレプリケーション速度が過去のレプリケーション速度より向上している場合、多くのジャーナルブロックを一度に読み書きすることが出来るため、一度に排他するジャーナルブロックの数を増加させる。一方、現在のレプリケーション速度が過去のレプリケーション速度より低下している場合、ロールフォワード手段111が排他待ちによってロールフォワードを進行できなくなることを防ぐために、一度に排他するジャーナルブロックの数を減らす。   Further, the replication information receiving means 118 holds information indicating the replication speed with the main site 100, that is, information indicating the journal transfer speed, as replication speed information 126. The replication information receiving unit 118 uses the replication speed information 126 as information for determining the range of exclusive control requested to the exclusive unit 116. The replication information receiving unit 118 and the roll forward unit 111 exclude as many journal blocks as possible in accordance with the replication rate information 126 at a time. Thereby, it is possible to reduce the frequency of use of the exclusion unit 114. Specifically, when the current replication speed is higher than the past replication speed, since many journal blocks can be read and written at a time, the number of journal blocks to be exclusive at a time is increased. On the other hand, when the current replication rate is lower than the past replication rate, the number of journal blocks to be excluded at a time is reduced in order to prevent the roll forward unit 111 from proceeding with roll forward due to exclusion waiting.

<排他手段114>
排他手段114は、リモートサイト110のストレージコントローラ114が有する手段である。排他手段114は、レプリケーション情報受信手段118による、ジャーナルボリューム(RV)120へのジャーナルブロックの書き込みと、ロールフォワード手段111による、ジャーナルボリューム(RV)120からのジャーナルブロックの読み込みとが衝突しないよう、ジャーナルブロック単位で排他制御を行う機能を有する。
<Exclusion means 114>
The exclusion unit 114 is a unit included in the storage controller 114 of the remote site 110. The exclusion unit 114 prevents the collision between the writing of the journal block to the journal volume (RV) 120 by the replication information receiving unit 118 and the reading of the journal block from the journal volume (RV) 120 by the roll forward unit 111. It has a function to perform exclusive control in journal block units.

排他手段114は、レプリケーション情報受信手段118から排他要求を受け取る際、同時に排他範囲を示す情報として書き込みボリューム、書き込み始点アドレス及び書き込み終点アドレスを受け取り、これらの情報を排他情報116に登録する。   When the exclusion unit 114 receives an exclusion request from the replication information reception unit 118, it simultaneously receives the write volume, the write start point address, and the write end point address as information indicating the exclusion range, and registers these information in the exclusion information 116.

また、排他手段114は、ロールフォワード手段111からの排他要求を受け取る際、同時に排他範囲を示す情報として読み込みボリューム、読み込み始点アドレス及び読み込み終点アドレスを受け取り、これらの情報が排他情報116に登録されている書きこみボリューム、書き込み始点アドレス及び書き込み終点アドレスと重なる部分があるかどうか、つまり競合の有無を確認し、競合が無ければ読み込みの許可を、競合があれば読み込みの拒否をロールフォワード手段111に通知する。   Further, when the exclusion unit 114 receives the exclusion request from the roll forward unit 111, it simultaneously receives the reading volume, the reading start point address and the reading end point address as information indicating the exclusion range, and these pieces of information are registered in the exclusion information 116. The roll-forward means 111 confirms whether there is an overlap with the write volume, the write start point address and the write end point address, that is, whether there is a conflict. Notice.

<通信手段105及び117>
通信手段105及び117は、メインサイト100又はリモートサイト110のストレージ装置102又は112が有する手段である。通信手段105及び117は、ストレージ装置102及び112を接続し、レプリケーションに関する各種データを送受信する。
<Communication means 105 and 117>
The communication means 105 and 117 are means that the storage device 102 or 112 of the main site 100 or the remote site 110 has. The communication units 105 and 117 connect the storage apparatuses 102 and 112 and transmit / receive various data related to replication.

<DB更新手段101>
メインサイト100のホストが、DB(MV)109を更新するために用いる手段である。DB更新手段101は、DB更新する際、その更新内容を記したジャーナルレコードをジャーナルブロックに格納して、ジャーナルボリューム(MV)108へ出力する。DB更新手段101は、上述したジャーナルブロックのデータ構造に対応して、ジャーナルブロックをジャーナル領域内で循環出力する機能を有する。
<DB update unit 101>
This is a means used by the host of the main site 100 to update the DB (MV) 109. When updating the DB, the DB update unit 101 stores a journal record describing the update contents in a journal block and outputs it to the journal volume (MV) 108. The DB update unit 101 has a function of circulating and outputting journal blocks within the journal area in accordance with the data structure of the journal block described above.

図5を用いて、DB更新手段101がジャーナルブロックを循環出力する動作について説明する。   The operation in which the DB update unit 101 circulates and outputs journal blocks will be described with reference to FIG.

図5は、例としてジャーナルブロック5個分のアドレス領域を有するジャーナル領域を示している。   FIG. 5 shows a journal area having an address area for five journal blocks as an example.

時刻tにおいて、ジャーナルブロック402乃至406の循環通番が、順に「2」「2」「2」「1」「1」であるとする。この場合、ジャーナルブロック404が、時刻tの時点で最後に出力されたジャーナルブロックであり、ジャーナル終端はジャーナルブロック404と405の間となる。   It is assumed that the circulation sequence numbers of the journal blocks 402 to 406 are “2”, “2”, “2”, “1”, and “1” in order at time t. In this case, the journal block 404 is the journal block output last at the time t, and the journal end is between the journal blocks 404 and 405.

DB更新手段は、時刻tにおいて、ジャーナル終端の次の位置、つまりジャーナルブロック405の位置に最新のジャーナルブロックを出力する。   The DB update means outputs the latest journal block at the position next to the end of the journal, that is, the position of the journal block 405 at time t.

時刻(t+1)は、時刻tの後、DB更新手段101がジャーナルブロック404及び405に新たなジャーナルブロックを出力し、さらに新たなジャーナルブロックを出力しようとしている状態を示している。しかし、このときジャーナル終端は領域終端に達しているため、DB更新手段101は、上述した循環使用のルールに従って、新たなジャーナルブロックの循環通番を「2」から「3」に加算した上、新たなジャーナルブロックの出力位置をジャーナル領域の先頭にあるジャーナルブロック402と決定する。   Time (t + 1) shows a state in which the DB update unit 101 outputs a new journal block to the journal blocks 404 and 405 and outputs a new journal block after time t. However, since the journal end has reached the end of the area at this time, the DB update unit 101 adds the circulation serial number of the new journal block from “2” to “3” in accordance with the above-described circulation use rule, The output position of the correct journal block is determined as the journal block 402 at the head of the journal area.

時刻(t+2)は、ジャーナル領域の先頭に位置するジャーナルブロック402に、新たなジャーナルブロックを書き込んだ状態である。   At time (t + 2), a new journal block is written in the journal block 402 located at the head of the journal area.

ここで、DB更新手段101は、ジャーナルブロックの最後の出力位置を、ジャーナルブロック最終書込位置122として保持するものとする。   Here, it is assumed that the DB update unit 101 holds the last output position of the journal block as the journal block final write position 122.

<ロールフォワード手段111>
ロールフォワード手段111は、リモートサイト110のホストが有する手段である。ロールフォワード手段111は、ジャーナルボリューム(RV)120からジャーナルブロックを読み出し、DB(RV)121へ反映することにより、DB(RV)121をDB(MV)109とレプリケートされた最新の状態に保つ。ロールフォワード手段111は、上述したジャーナルブロックのデータ構造に対応して、ジャーナルブロックをジャーナル領域内から循環入力する機能を有する。
<Roll forward means 111>
The roll-forward means 111 is a means possessed by the remote site 110 host. The roll-forward means 111 reads the journal block from the journal volume (RV) 120 and reflects it in the DB (RV) 121, thereby keeping the DB (RV) 121 in the latest state replicated with the DB (MV) 109. The roll-forward means 111 has a function of circularly inputting journal blocks from the journal area corresponding to the journal block data structure described above.

図5を用いて、ロールフォワード手段111がジャーナルブロックを循環入力する動作について説明する。   With reference to FIG. 5, an operation in which the roll-forward unit 111 circularly inputs journal blocks will be described.

時刻tにおいて、ロールフォワード手段111は、ジャーナル終端であるジャーナルブロック404までをDB(RV)121へ反映する。一方、その次のジャーナルブロック405の循環通番「1」は、ジャーナルブロック404の持つ循環通番「2」より小さい。このとき、ロールフォワード手段111は、ジャーナル終端を越えたと判断し、ジャーナルブロックのDB(RV)121への反映を停止する。   At time t, the roll forward unit 111 reflects to the DB (RV) 121 up to the journal block 404 that is the end of the journal. On the other hand, the circulation sequence number “1” of the next journal block 405 is smaller than the circulation sequence number “2” of the journal block 404. At this time, the roll forward unit 111 determines that the journal end has been exceeded and stops reflecting the journal block in the DB (RV) 121.

時刻が(t+1)へ進み、ジャーナルブロック405及び406に新たなジャーナルブロックが書き込まれ、ジャーナル終端が移動すると、ロールフォワード手段111は、ジャーナルブロックの読み込みと、DB(RV)121への反映とを再開する。   When the time advances to (t + 1), a new journal block is written in the journal blocks 405 and 406, and the end of the journal is moved, the roll forward unit 111 reads the journal block and reflects it in the DB (RV) 121. Resume.

時刻(t+2)において、ロールフォワード手段111は、ジャーナルブロックを読み進めた結果、領域終端に達すると、DB更新手段101と同様に、循環通番を「3」に加算した上、ジャーナル領域先頭のジャーナルブロック402からジャーナルブロックの読み込みを開始する。ロールフォワード手段111は、これ以降のジャーナル終端の検出は、この加算された循環通番に基づいて実施する。   At time (t + 2), when the roll-forward unit 111 reaches the end of the area as a result of reading the journal block, it adds the circulation serial number to “3” and the journal at the head of the journal area, as with the DB update unit 101. Reading of the journal block is started from block 402. The roll forward means 111 performs subsequent detection of the journal end based on the added circulation serial number.

ここで、ロールフォワード手段111は、ロールフォワードの進行を管理するための情報として、ジャーナルブロック最終読込位置123、未反映ジャーナルレコード位置情報124、ロールフォワード対象循環通番125を保持するものとする。   Here, it is assumed that the roll forward unit 111 holds the journal block last read position 123, the unreflected journal record position information 124, and the roll forward target circulation serial number 125 as information for managing the progress of the roll forward.

ジャーナルブロック最終読込位置123は、ロールフォワード手段111の前回の動作時に読み込んだジャーナルブロックの最終位置を示す情報である。未反映ジャーナルレコード位置情報124は、最も古い未反映ジャーナルレコードのあるジャーナルブロックの位置を示す情報である。ロールフォワード対象循環通番125は、最も古い未反映ジャーナルレコードを含むジャーナルブロックが持つ循環通番を示す情報である。   The journal block final read position 123 is information indicating the final position of the journal block read during the previous operation of the roll forward unit 111. The unreflected journal record position information 124 is information indicating the position of the journal block having the oldest unreflected journal record. The roll forward target circulation sequence number 125 is information indicating the circulation sequence number of the journal block including the oldest unreflected journal record.

ジャーナル領域401においては、ロールフォワード手段111による読み込みほかに、レプリケーション情報受信手段118による書き込みが行われている。そのため、双方の読み書きが衝突する可能性がある。この読み書きの衝突を防ぐため、ロールフォワード手段111は、読み込み実施前に排他手段114を用い、読み込み対象のジャーナルブロックの排他制御を行う。ここで、読み込み対象のジャーナルブロックが、レプリケーション情報受信手段118により排他されている場合は、レプリケーション情報受信手段118がその排他を開放するまで、ロールフォワード手段111はジャーナルブロックの読み込みを待ち合わせる。   In the journal area 401, in addition to reading by the roll forward unit 111, writing by the replication information receiving unit 118 is performed. Therefore, there is a possibility that both reading and writing collide. In order to prevent this read / write collision, the roll-forward means 111 uses the exclusion means 114 before performing the read and performs exclusive control of the journal block to be read. If the journal block to be read is exclusive by the replication information receiving means 118, the roll-forward means 111 waits for the journal block to be read until the replication information receiving means 118 releases the exclusion.

なお、ロールフォワード手段111が未だ読み込んでいないジャーナルブロックを、レプリケーション情報受信手段118が新たなジャーナルブロックによって上書きし、ロールフォワード手段111がロールフォワードを正常に実施できない状態とならないために、本実施の形態では、ロールフォワード手段111は、レプリケーション情報受信手段118より十分に速く動作し、ロールフォワード手段111がレプリケーション情報受信手段118を常に「後追い」する状態であることを前提とする。この前提は、サイト間のやりとりが必要なレプリケーション手段118と、リモートサイト110内で全ての処理が完結するロールフォワード手段111の処理内容を比較すると、十分現実的である。   The journal block that has not yet been read by the roll forward unit 111 is overwritten by the new journal block by the replication information receiving unit 118, and the roll forward unit 111 is not in a state where the roll forward cannot be normally performed. In the embodiment, it is assumed that the roll forward unit 111 operates sufficiently faster than the replication information receiving unit 118 and the roll forward unit 111 is always in a state of “following up” the replication information receiving unit 118. This assumption is sufficiently realistic when comparing the processing contents of the replication means 118 that requires exchange between sites and the roll forward means 111 that completes all the processes in the remote site 110.

<DB(MV)109>
メインサイト100で使用されるDBのボリュームである。本実施の形態では、DB(MV)109自体はレプリケーションの対象でないため、図示しない任意のストレージ装置に配置することができる。
<DB (MV) 109>
This is a DB volume used in the main site 100. In this embodiment, since the DB (MV) 109 itself is not a replication target, it can be placed in any storage device (not shown).

<ジャーナルボリューム(MV)108>
DB(MV)109のジャーナルが記録されるボリュームであり、レプリケーション機能を持つストレージ装置102内に配置する必要がある。<ジャーナルブロック>の項において述べたとおり、ボリューム内にはジャーナルを出力する領域が予め確保されている。ジャーナルボリューム(MV)108に対する書き込みは、一連のレプリケーション処理によって、ジャーナルボリューム(RV)120へ転送、反映される。
<Journal volume (MV) 108>
This is a volume in which the journal of the DB (MV) 109 is recorded, and needs to be arranged in the storage apparatus 102 having a replication function. As described in the section <Journal block>, an area for outputting a journal is secured in advance in the volume. Writing to the journal volume (MV) 108 is transferred and reflected to the journal volume (RV) 120 by a series of replication processes.

<DB(RV)121>
リモートサイト110で使用されるDBのボリュームである。例えば災害等の発生時に、リモートサイト110を利用して業務を行う場合は、DB(MV)109に代わってDB(RV)121が用いられる。DB(RV)121は、DB(MV)109同様、レプリケーションの対象でないため、図示しない任意のストレージ装置に配置することができる。DB(RV)121は、ロールフォワード手段111により、ジャーナルボリューム(RV)120に格納されるジャーナルを用いて最新の状態に保たれる。
<DB (RV) 121>
This is a DB volume used at the remote site 110. For example, when a business operation is performed using the remote site 110 when a disaster or the like occurs, the DB (RV) 121 is used instead of the DB (MV) 109. Like the DB (MV) 109, the DB (RV) 121 is not a replication target, and can be placed in an arbitrary storage device (not shown). The DB (RV) 121 is kept in the latest state by using the journal stored in the journal volume (RV) 120 by the roll forward unit 111.

<ジャーナルボリューム(RV)120>
DB(RV)121を最新の状態に保つためのジャーナルが保存されているボリュームである。ジャーナルボリューム(RV)120は、ジャーナルボリューム(MV)108を含むストレージ装置102との間でレプリケーション処理が実施できる、ストレージ装置112内に配置する必要がある。
<Journal volume (RV) 120>
This is a volume in which a journal for keeping the DB (RV) 121 in the latest state is stored. The journal volume (RV) 120 needs to be arranged in the storage apparatus 112 that can perform replication processing with the storage apparatus 102 including the journal volume (MV) 108.

つづいて、図2、及び図7乃至図12を用いて、本実施の形態の動作について説明する。   Next, the operation of this embodiment will be described with reference to FIGS. 2 and 7 to 12.

まず、図2及び図7を用いて、DB更新手段101がDB(MV)109を更新する際、ジャーナルボリューム(MV)108に対するジャーナルブロックを出力する動作について説明する。   First, the operation of outputting a journal block to the journal volume (MV) 108 when the DB update unit 101 updates the DB (MV) 109 will be described with reference to FIGS.

DB更新手段101は、はじめに、ジャーナルブロックの出力位置を決定するために、前回のジャーナルブロックの最終書き込み位置を取得する(ステップ601)。DB更新手段101が起動直後の場合は、<ジャーナルブロック>の項において述べたジャーナル終端を特定する方法によってこれを決定する。一方、DB更新手段101が既に動作しており、ジャーナルブロックを出力している場合には、ジャーナルブロック最終書き込み位置122よりこれを取得する。   First, the DB update unit 101 acquires the last write position of the previous journal block in order to determine the output position of the journal block (step 601). When the DB update unit 101 is immediately after startup, this is determined by the method for specifying the journal end point described in the section <Journal block>. On the other hand, if the DB update unit 101 is already operating and outputting a journal block, this is acquired from the journal block last write position 122.

ステップ601にて取得した前回のジャーナルブロックの出力位置が領域終端に達している場合、DB更新手段101は、出力位置を領域の先頭へ戻した(ステップ602)上、循環通番を加算する(ステップ603)。一方、ジャーナルブロックの出力位置が領域終端に達していない場合は、DB更新手段101は、出力位置を前回のジャーナルブロックの最終書き込み位置の次のジャーナルブロックとする(ステップ605)。   When the output position of the previous journal block acquired in step 601 has reached the end of the area, the DB update unit 101 returns the output position to the beginning of the area (step 602) and adds the circulation sequence number (step) 603). On the other hand, if the output position of the journal block has not reached the end of the area, the DB update unit 101 sets the output position to the journal block next to the last write position of the previous journal block (step 605).

DB更新手段101は、ジャーナルブロックの出力位置を決定したならば、ジャーナルボリューム(MV)109の出力位置へジャーナルブロックの書きこみを行い(ステップ606)、その出力位置をジャーナルブロック最終書込位置122へ保存し(ステップ607)、次回動作時のステップ601にて取得できるようにする。   When the DB block 101 determines the output position of the journal block, the DB update unit 101 writes the journal block to the output position of the journal volume (MV) 109 (step 606), and uses the output position as the journal block final write position 122. (Step 607) so that it can be acquired in step 601 at the next operation.

ここで、ステップ606におけるジャーナルボリューム(MV)109への書きこみについて、メインホストのストレージ装置102の動作について、図2と図8を用いて詳細に説明する。   Here, with respect to writing to the journal volume (MV) 109 in step 606, the operation of the storage apparatus 102 of the main host will be described in detail with reference to FIGS.

ストレージ装置102が有するストレージコントローラ103は、DB更新手段101からジャーナルブロックの書き込み要求(図6参照)を受領し(ステップ701)、その受領した書き込み要求をそのままレプリケーション情報送信手段104を用いてリモートホストへ転送する(ステップ702)。その後、ジャーナルボリューム(MV)108へジャーナルブロックの書きこみを行い(ステップ703)、DB更新手段101へ書き込み要求に対する応答を返却する(ステップ704)。   The storage controller 103 included in the storage apparatus 102 receives a journal block write request (see FIG. 6) from the DB update unit 101 (step 701), and directly uses the received write request as a remote host using the replication information transmission unit 104. (Step 702). Thereafter, the journal block is written into the journal volume (MV) 108 (step 703), and a response to the write request is returned to the DB update unit 101 (step 704).

以上の動作により、DB更新手段101が出力したジャーナルが、リモートサイト110へ転送される。   Through the above operation, the journal output by the DB update unit 101 is transferred to the remote site 110.

つづいて、図2及び図9を用いて、レプリケーション情報受信手段118が、メインサイト100から転送されたジャーナルブロックをジャーナルボリューム(RV)120に書き込む動作について説明する。   Next, an operation in which the replication information receiving unit 118 writes the journal block transferred from the main site 100 to the journal volume (RV) 120 will be described with reference to FIGS.

レプリケーション情報受信手段118は、はじめに、メインサイト100から転送されてきた書き込み要求を受信する(ステップ801)と、レプリケーション状態情報119として保持されている現在のレプリケーション状態を確認する(ステップ802)。<レプリケーション情報受信手段>の項において述べたとおり、レプリケーション状態には、順序型レプリケーションが動作しているSYNC状態と、順序型レプリケーションが動作していないREPLICATE状態とがあり、REPLICATE状態下にて書き込まれたジャーナルブロックでロールフォワードを実施すると、DB(RV)121が不正な状態となってしまう。これを防ぐため、レプリケーション情報受信手段118は、REPLICATE状態の時には、排他手段114を利用してジャーナル領域の全体(ジャーナル領域の先頭に位置するジャーナルブロックのアドレスから、ジャーナル領域の終端に位置するジャーナルブロックのアドレスまで)を排他した(ステップ811)後、ストレージコントローラ113の機能を用いて、ジャーナルボリューム(RV)120へジャーナルブロックの書き込みを行う(ステップ812)。これにより、ロールフォワード手段111によるジャーナルボリューム(RV)120の読み込みが抑止され、DB(RV)121へのジャーナル不正反映を防ぐことが出来る。   First, when receiving a write request transferred from the main site 100 (step 801), the replication information receiving means 118 checks the current replication status held as the replication status information 119 (step 802). As described in the section of <Replication Information Receiving Unit>, the replication status includes a SYNC status in which sequential replication is operating and a REPLICATE status in which sequential replication is not operating, and writing is performed under the REPLICATE status. When roll forward is performed with the journal block thus obtained, the DB (RV) 121 becomes in an illegal state. In order to prevent this, the replication information receiving unit 118 uses the exclusion unit 114 in the REPLICATE state to determine the entire journal area (from the address of the journal block located at the head of the journal area to the journal located at the end of the journal area). After the block address is excluded (step 811), the journal block is written to the journal volume (RV) 120 using the function of the storage controller 113 (step 812). As a result, reading of the journal volume (RV) 120 by the roll forward unit 111 is suppressed, and illegal reflection of the journal to the DB (RV) 121 can be prevented.

一方、レプリケーション状態がSYNC状態である場合、レプリケーション情報受信手段118は、レプリケーション速度情報126を取得し(ステップ803)、現在のレプリケーション速度と、図示しないメモリ等に保存しておいた前回のレプリケーション速度との比較を実施する(ステップ804)。この比較の結果、現在のレプリケーション速度が以前に取得したレプリケーション速度より上昇していた場合、レプリケーション情報受信手段118は、一度に排他するジャーナルの個数を増やす(ステップ805)。一方、現在のレプリケーション速度が以前のレプリケーション速度より低下していた場合、レプリケーション情報受信手段118は、一度に排他するジャーナルブロックの個数を減らす(ステップ806)。<ジャーナルブロック>の項において述べたとおり、ジャーナルブロックの位置は一意、すなわち固定されているので、排他するジャーナルブロック数の増減は、排他手段114へ要求する書き込み終点アドレスを増減することで実現できる。ステップ803にて取得したレプリケーション速度は、次回のレプリケーション速度比較のために図示しないメモリ等に保存しておく(ステップ807)。   On the other hand, when the replication state is the SYNC state, the replication information receiving unit 118 acquires the replication speed information 126 (step 803), and the current replication speed and the previous replication speed stored in a memory (not shown) or the like. (Step 804). As a result of this comparison, if the current replication speed is higher than the previously acquired replication speed, the replication information receiving means 118 increases the number of journals to be excluded at one time (step 805). On the other hand, if the current replication speed is lower than the previous replication speed, the replication information receiving unit 118 reduces the number of journal blocks to be excluded at one time (step 806). As described in the section <Journal block>, since the position of the journal block is unique, that is, fixed, the number of exclusive journal blocks can be increased or decreased by increasing or decreasing the write end point address requested to the exclusion means 114. . The replication speed acquired in step 803 is stored in a memory or the like (not shown) for the next replication speed comparison (step 807).

レプリケーション情報受信手段118は、排他するジャーナルブロックの個数が決定したならばら、排他手段114に、排他の範囲として書き込み先ボリューム、書き込み始点アドレス及び書き込み終点アドレスを与え、ジャーナルブロックの排他制御を要求する(ステップ808)。なお、ステップ811によってジャーナル領域の全体が排他されている場合は、今回排他する範囲を残し、他の範囲の排他を開放する。   When the number of journal blocks to be excluded is determined, the replication information receiving unit 118 gives the exclusion unit 114 a write destination volume, a write start point address, and a write end point address as exclusion ranges, and requests exclusive control of the journal block. (Step 808). If the entire journal area is excluded in step 811, the exclusion range is left and the exclusion of other ranges is released.

排他手段114の詳細な動作については後述するが、排他手段114は、ステップ808にて要求された排他の範囲を排他情報116として記録する。そして、排他手段114は、ロールフォワード手段111による排他要求時に、排他情報116が既に登録されていないか、つまり、レプリケーション情報受信手段118が排他を取得中でないかを確認し、確認結果に応じてロールフォワード手段111へ読み込みの許可又は拒否を返答する。排他手段114は、これらの動作により、レプリケーション情報受信手段118によるジャーナルブロックの書き込みと、ロールフォワード手段111によるジャーナルブロックの読み込みが衝突しないよう制御する。   Although the detailed operation of the exclusion unit 114 will be described later, the exclusion unit 114 records the exclusion range requested in step 808 as the exclusion information 116. Then, the exclusion unit 114 checks whether the exclusion information 116 has already been registered at the time of the exclusion request by the roll forward unit 111, that is, whether the replication information reception unit 118 is acquiring the exclusion, and according to the confirmation result A read permission or rejection is returned to the roll forward means 111. With these operations, the exclusion unit 114 controls the writing of the journal block by the replication information receiving unit 118 and the reading of the journal block by the roll-forward unit 111 so as not to collide with each other.

ステップ808による排他が完了したならば、レプリケーション情報受信手段118は、ストレージコントローラ113の機能を用いて書き込み命令を発行し、ジャーナルボリューム(RV)120にジャーナルブロックを書き込み(ステップ809)、排他手段114に対し排他の開放を要求する(ステップ810)。
なお、レプリケーション情報受信手段118によるジャーナルブロック書き込みと、ロールフォワード手段111によるジャーナルブロック読み込みが衝突していた場合、ロールフォワード手段111は、このステップ809の終了をもって、排他を要求しているジャーナルブロックへのアクセスが許可されることとなる。
以上の動作により、メインサイト100から転送されてきたジャーナルブロックの書き込み要求が、ジャーナルボリューム(RV)120へ反映される。
When the exclusion in step 808 is completed, the replication information receiving unit 118 issues a write command using the function of the storage controller 113, writes a journal block to the journal volume (RV) 120 (step 809), and the exclusion unit 114. Is requested to release the exclusive (step 810).
If the journal block writing by the replication information receiving means 118 and the journal block reading by the roll forward means 111 collide, the roll forward means 111 moves to the journal block requesting exclusion at the end of this step 809. Will be allowed access.
Through the above operation, the journal block write request transferred from the main site 100 is reflected in the journal volume (RV) 120.

つぎに、図2及び図10を用いて、ロールフォワード手段111がジャーナルボリューム(RV)120からジャーナルブロックを読み込み、DB(RV)121へ反映する手段について詳細に説明する。   Next, using FIG. 2 and FIG. 10, the means by which the roll forward unit 111 reads a journal block from the journal volume (RV) 120 and reflects it in the DB (RV) 121 will be described in detail.

ロールフォワード手段111は、はじめに、ジャーナルレコードの読み込み位置を特定するために、ロールフォワード手段111の前回の動作時の情報を取得する(ステップ901)。ここで取得する情報は、前回読み込んだジャーナルブロックの終端位置、未反映トランザクションの開始ジャーナルレコードの位置(どこのジャーナルブロックの何番目のレコードか)、未反映ジャーナルレコードのあるジャーナルブロックが持つ循環通番である。これらの情報は、ロールフォワード手段111の起動時においては、ディスク等に保存された情報から取得し、ロールフォワード手段111が既に動作している場合にあっては、ジャーナルブロック最終読込位置123、未反映ジャーナルレコード位置情報124、ロールフォワード対象循環通番125より取得することができる。   The roll forward unit 111 first acquires information at the time of the previous operation of the roll forward unit 111 in order to specify the reading position of the journal record (step 901). The information acquired here includes the end position of the last read journal block, the position of the start journal record of the unreflected transaction (the number of the record in which journal block), and the cyclic serial number of the journal block with the unreflected journal record It is. These pieces of information are acquired from information stored on a disk or the like when the roll forward unit 111 is activated. If the roll forward unit 111 is already operating, the journal block final read position 123, unread It can be acquired from the reflection journal record position information 124 and the roll forward target circulation serial number 125.

ロールフォワード手段111は、つぎに、レプリケーション速度情報126を取得し(ステップ902)、現在のレプリケーションの速度と前回のレプリケーション速度とを比較して、レプリケーション速度が上昇していれば一度に排他するジャーナルの個数を増やし(ステップ904)、レプリケーション速度が低下していれば一度に排他するジャーナルの個数を減らす(ステップ905)。そして、次回の比較のためにステップ902で取得したレプリケーション速度を図示しないメモリ等に保存する(ステップ906)。   Next, the roll-forward means 111 acquires the replication speed information 126 (step 902), compares the current replication speed with the previous replication speed, and if the replication speed has increased, journals that are exclusive at once. Is increased (step 904), and if the replication speed is reduced, the number of journals to be excluded at a time is decreased (step 905). Then, the replication speed acquired in step 902 for the next comparison is stored in a memory or the like (not shown) (step 906).

ロールフォワード手段111は、つづいて、レプリケーション情報受信手段118によるジャーナルブロック書き込みとの衝突を防ぐために、ストレージコントローラ113が持つ排他手段114に対し、排他の範囲として読み込み先ボリューム読み込み始点アドレス及び読み込み終点アドレスを与え、排他を要求する(ステップ907)。排他手段114に要求する読み込み始点アドレスは、ステップ901にて取得した未反映ジャーナルレコードがあるジャーナルブロックのアドレスである。また、読み込み終点アドレスは、読み込み始点アドレスから見て、ステップ904と905で決定された排他するジャーナルブロックの個数分進んだアドレスとなる。ここで、読み込み終点アドレスが領域終端を越える場合は、読み込み終点アドレスを領域終端にそろえ、ジャーナル領域の先頭に位置するジャーナルブロックのアドレスから残りのジャーナルブロックの個数分を排他する要求を行えばよい。   The roll-forward means 111 continues with the exclusion means 114 included in the storage controller 113 as an exclusion range in order to prevent collision with the journal block write by the replication information reception means 118 as a read destination volume read start address and read end address. And request exclusion (step 907). The read start point address requested to the exclusion unit 114 is the address of the journal block in which there is an unreflected journal record acquired in step 901. Further, the read end point address is an address advanced by the number of exclusive journal blocks determined in steps 904 and 905 as seen from the read start point address. Here, if the read end address exceeds the end of the area, the read end address is aligned with the end of the area, and a request to exclude the remaining number of journal blocks from the address of the journal block located at the head of the journal area may be made. .

ステップ907での排他要求に対し、排他手段114が排他要求を拒否した場合、すなわち排他の取得に失敗した場合は、読み込もうとしたジャーナルブロックはレプリケーション情報受信手段118による書き込み中であるため、ロールフォワード手段111は、待ち合わせを行った(ステップ908)後、再度ステップ907による排他要求を行う。ステップ908における待ち合わせは、ロールフォワード手段111が一定時間スリープ状態になる方法や、レプリケーション情報受信手段118が排他の開放を排他手段114に要求したことを、排他手段114から通知してもらう方法などが考えられる。本実施の形態では、ロールフォワード手段111が一定時間スリープ状態になる方法を採用している。   When the exclusion unit 114 rejects the exclusion request with respect to the exclusion request in step 907, that is, when the acquisition of the exclusion fails, the journal block to be read is being written by the replication information receiving unit 118, so roll forward The means 111 waits (step 908) and then makes an exclusive request again at step 907. Waiting in step 908 includes a method in which the roll forward unit 111 is in a sleep state for a certain period of time, a method in which the exclusion unit 114 notifies the exclusion unit 114 that the replication information reception unit 118 has requested the exclusion unit 114 to release the exclusion. Conceivable. In the present embodiment, a method is adopted in which the roll-forward means 111 is in a sleep state for a certain time.

一方、排他手段114が排他要求を許可した場合、ロールフォワード手段111は、ジャーナルブロックを一つ読み込み(ステップ909)、ステップ901にて取得したロールフォワード対象の循環通番との比較によるジャーナル終端の判断を行う(ステップ910)。もし、循環通番の数が減少したこと、すなわちジャーナル終端を越えた事を検出したならば、最後に読み込んだジャーナルブロックはDB(RV)121へ反映してはいけないものである上、これ以上ジャーナルブロックを読み込んでもロールフォワードは進行できないので、最後に読み込んだジャーナルブロックの位置をジャーナルブロック最終読込位置123へ保存し(ステップ918)、処理を終了する。   On the other hand, when the exclusion unit 114 permits the exclusion request, the roll forward unit 111 reads one journal block (step 909) and determines the end of the journal by comparison with the circulation serial number acquired in step 901. (Step 910). If it is detected that the number of circulating serial numbers has decreased, that is, the journal end has been exceeded, the last read journal block should not be reflected in the DB (RV) 121, and no more journals Since the roll forward cannot proceed even if the block is read, the position of the last read journal block is stored in the journal block last read position 123 (step 918), and the process is terminated.

他方、ステップ910においてジャーナル終端を越えていなかった場合、ロールフォワード手段111は、ジャーナルブロックに含まれるジャーナルレコードをDB(RV)121へ反映できるかどうかを判断する(ステップ911)。   On the other hand, if the journal end is not exceeded in step 910, the roll forward unit 111 determines whether the journal record included in the journal block can be reflected in the DB (RV) 121 (step 911).

このステップ911の判断について、図11を用いて詳細に説明する。   The determination in step 911 will be described in detail with reference to FIG.

図11は、ロールフォワード手段111が前回の動作時に読み込んだジャーナルブロック1000と、今回の動作で読み込んだジャーナルブロック1010を示している。   FIG. 11 shows the journal block 1000 read by the roll forward unit 111 during the previous operation and the journal block 1010 read during the current operation.

ジャーナルブロック1000においては、ジャーナルレコード1002で開始するトランザクション2(TR2)は、終了ジャーナルレコード1004をもって終了する。よって、ロールフォワード手段111はTR2にかかるジャーナルレコード1002、1003及び1004をDB(RV)121へ反映する(ステップ912)。   In journal block 1000, transaction 2 (TR 2) starting with journal record 1002 ends with end journal record 1004. Therefore, the roll forward unit 111 reflects the journal records 1002, 1003, and 1004 related to TR2 in the DB (RV) 121 (step 912).

一方、ジャーナルレコード1001で開始するトランザクション1(TR1)、及びジャーナルレコード1005で開始するトランザクション3(TR3)は、ジャーナルブロック1000内においては終了していない。よって、ロールフォワード手段111はTR1にかかるジャーナルレコード1001、及びTR3にかかるジャーナルレコード1105をDB(RV)121へ反映することができない。したがって、ロールフォワード手段111は、次回の動作時にジャーナルブロック1000を再度読み込む必要がある。後述するように、ロールフォワード手段111は、ステップ913において、次回の動作のために、DB(RV)121へ反映できなかったトランザクショの開始ジャーナルレコードの位置を保存し、ステップ918において、管理していたジャーナルレコードのうち最も前に位置するジャーナルレコードの位置を未反映ジャーナルレコード位置情報124へ、そのジャーナルレコードの属するジャーナルブロックの循環通番をロールフォワード対象循環通番125へ保存する。図11に示す例の場合、ロールフォワード手段111は、ジャーナルレコード1001の位置を未反映ジャーナルレコード位置情報124へ、ジャーナルブロック1000が持つ循環通番をロールフォワード対象循環通番125へ保存することとなる。   On the other hand, the transaction 1 (TR1) starting from the journal record 1001 and the transaction 3 (TR3) starting from the journal record 1005 are not completed in the journal block 1000. Therefore, the roll forward means 111 cannot reflect the journal record 1001 related to TR1 and the journal record 1105 related to TR3 to the DB (RV) 121. Therefore, the roll forward unit 111 needs to read the journal block 1000 again at the next operation. As will be described later, the roll forward unit 111 stores the position of the start journal record of the transaction that could not be reflected in the DB (RV) 121 for the next operation in step 913, and manages it in step 918. The position of the most recent journal record among the recorded journal records is stored in the unreflected journal record position information 124, and the circulation sequence number of the journal block to which the journal record belongs is stored in the roll-forward target circulation sequence number 125. In the case of the example shown in FIG. 11, the roll forward unit 111 stores the position of the journal record 1001 in the unreflected journal record position information 124 and the circulation sequence number of the journal block 1000 in the roll forward target circulation sequence number 125.

ロールフォワード手段111は、次回の動作の際、未反映ジャーナルレコード位置124を参照し、前回未反映のジャーナルレコード1001の位置を取得し(ステップ901)、ジャーナルブロック1000を再度読み込む(ステップ909)。このとき、ロールフォワード手段111は、ジャーナルレコード1002、1003及び1004も再度読み込んでしまうこととなるが、これらのジャーナルレコードは、この前回読み込んだジャーナルブロック内で完結しているトランザクションにかかるものであるため、既にDB(RV)121に反映済みと判断できる。よって、これらのジャーナルレコード1002、1003及び1004については、ロールフォワード手段111はDB(RV)121への反映は行わない。   In the next operation, the roll-forward unit 111 refers to the unreflected journal record position 124, acquires the position of the previously unreflected journal record 1001 (step 901), and rereads the journal block 1000 (step 909). At this time, the roll forward unit 111 also reads the journal records 1002, 1003, and 1004 again, but these journal records are related to the transaction completed in the previously read journal block. Therefore, it can be determined that the data has already been reflected in the DB (RV) 121. Therefore, for these journal records 1002, 1003, and 1004, the roll forward unit 111 does not reflect in the DB (RV) 121.

ついで、ロールフォワード手段111は、次のジャーナルブロック1010を読み込む。ここで、ロールフォワード手段111は、TR1の終了を示すジャーナルレコード1014を発見したならば、TR1にかかるジャーナルレコード1001、1011及び1014をDB(RV)121に反映する(ステップ912)。また、ロールフォワード手段111は、未反映ジャーナルレコード位置情報124から開始ジャーナル1001の位置を削除する(ステップ913)。   Next, the roll forward unit 111 reads the next journal block 1010. Here, when the roll forward means 111 finds the journal record 1014 indicating the end of TR1, the roll forward means 111 reflects the journal records 1001, 1011 and 1014 related to TR1 in the DB (RV) 121 (step 912). Further, the roll forward unit 111 deletes the position of the start journal 1001 from the unreflected journal record position information 124 (step 913).

同様にして、ロールフォワード手段111がジャーナルブロック1010の持つジャーナルレコードを全て処理すると、未反映ジャーナルレコード位置情報124が管理する開始ジャーナルレコードの位置は、TR3の開始ジャーナルレコード1005の位置となる。ロールフォワード手段111は、さらに次回のロールフォワード手段の動作に備えて、このジャーナルレコード1005の位置を未反映ジャーナルレコード位置124に保持する(ステップ918)。   Similarly, when the roll forward unit 111 processes all journal records of the journal block 1010, the position of the start journal record managed by the unreflected journal record position information 124 becomes the position of the start journal record 1005 of TR3. The roll forward unit 111 further holds the position of the journal record 1005 at the unreflected journal record position 124 in preparation for the next operation of the roll forward unit (step 918).

ステップ912が終了したならば、ロールフォワード手段111は、未反映ジャーナルレコード位置情報124を更新する(ステップ913)。上述したとおり、ステップ909にて読み込んだ現在のジャーナルブロック中に、対応するトランザクション終了ジャーナルのないトランザクション開始ジャーナルが存在すれば、その位置(どのジャーナルブロック何番目か)を記憶し、トランザクション終了ジャーナルがあれば、記憶済のトランザクション開始ジャーナルの中から対応するものを探し、そのトランザクション開始ジャーナルの位置情報を削除する。   When step 912 is completed, the roll forward unit 111 updates the unreflected journal record position information 124 (step 913). As described above, if there is a transaction start journal that does not have a corresponding transaction end journal in the current journal block read in step 909, the position (which journal block number) is stored. If there is, the corresponding transaction start journal is searched for, and the position information of the transaction start journal is deleted.

ステップ909において読み込んだジャーナルブロックの処理が終了したならば、ロールフォワード手段111は、ステップ907において排他を要求した範囲のジャーナルブロックを全て処理したかを確認する(ステップ914)。排他した範囲の全ジャーナルブロックの処理が完了しているならば、ロールフォワード手段111は、今回の動作にかかる情報、すなわち今回読み込んだジャーナルブロックの終端であるジャーナルブロック最終読込位置123、未反映ジャーナルレコード位置124、及びそのジャーナルレコードが属するジャーナルブロックの循環通番であるロールフォワード対象循環通番125を保存して処理を終了する(ステップ918)。   When the processing of the journal block read in step 909 is completed, the roll forward unit 111 confirms whether all journal blocks in the range for which exclusion is requested in step 907 have been processed (step 914). If the processing of all journal blocks in the exclusive range has been completed, the roll-forward unit 111 determines the information related to the current operation, that is, the journal block last read position 123 which is the end of the journal block read this time, the unreflected journal The record position 124 and the roll forward target circulation sequence number 125, which is the circulation sequence number of the journal block to which the journal record belongs, are saved, and the process ends (step 918).

一方、排他範囲の全ジャーナルブロックが処理されていない場合は、ロールフォワード手段111は、ジャーナルブロックの読み込み位置を先に進め(ステップ915)、読み込み位置が領域終端に達していないか確認する(ステップ916)。領域終端に達していた場合は、次の読み込み位置をジャーナル領域の先頭に位置するジャーナルブロックの位置まで戻した上、循環通番を1増やし、ステップ909から処理を再開する。   On the other hand, if all the journal blocks in the exclusive range have not been processed, the roll forward unit 111 advances the reading position of the journal block first (step 915), and checks whether the reading position has reached the end of the area (step 915). 916). If the end of the area has been reached, the next reading position is returned to the position of the journal block located at the head of the journal area, the circulation sequence number is incremented by 1, and the processing is restarted from step 909.

最後に、図2及び図12を用いて、排他手段114の動作について説明する。   Finally, the operation of the exclusion unit 114 will be described with reference to FIGS.

排他手段114は、まず、レプリケーション情報受信手段118又はロールフォワード手段111から排他要求を受け取ると(ステップ1101)、どちらの手段からの要求であるかを判別する(ステップ1102)。レプリケーション情報受信手段118による要求である場合、排他手段114はその要求種別を判別し(ステップ1103)、書き込みのための排他取得である場合は、レプリケーション情報受信手段118が通知してきた書き込みボリューム、書き込み始点アドレス及び書き込み終点アドレスを、排他情報116として登録する(ステップ1104)。このとき、前述のステップ811によりジャーナル領域全体が排他されていた場合は、ジャーナル領域全体にかかる排他情報を、レプリケーション情報受信手段118から要求された内容で更新する。また、要求種別が書き込み完了後の排他開放であった場合は、排他情報116に登録されている中から一致する情報を削除する(ステップ1105)。   When the exclusion unit 114 first receives an exclusion request from the replication information reception unit 118 or the roll-forward unit 111 (step 1101), the exclusion unit 114 determines which unit the request is from (step 1102). If it is a request by the replication information receiving means 118, the exclusion means 114 determines the request type (step 1103), and if it is exclusive acquisition for writing, the write volume and write notified by the replication information receiving means 118 The start point address and the write end point address are registered as exclusive information 116 (step 1104). At this time, if the entire journal area is exclusive in step 811 described above, the exclusive information for the entire journal area is updated with the content requested by the replication information receiving means 118. If the request type is exclusive release after completion of writing, the matching information is deleted from those registered in the exclusive information 116 (step 1105).

一方、排他要求がロールフォワード手段111によるものであった場合、排他手段114は、要求対象の読み込み先ボリューム、読み込み始点アドレス及び読み込み終点アドレスと、レプリケーション情報受信手段118の排他要求に基づいて排他情報116に登録されている書き込み先ボリューム、書き込み始点アドレス及び書き込み終点アドレスとの照合を行う(ステップ1106)。ここで双方の排他要求領域に重複部分がある場合、排他手段114は、ロールフォワード手段111に対してアクセス拒否を通知する(ステップ1107)。他方、重複部分が無い場合は、ロールフォワード手段111に対しアクセス許可を通知する(ステップ1108)。   On the other hand, if the exclusion request is from the roll forward unit 111, the exclusion unit 114 determines the exclusion information based on the requested read destination volume, the read start point address and the read end point address, and the exclusion request from the replication information receiving unit 118. The write destination volume, write start point address, and write end point address registered in 116 are collated (step 1106). If there is an overlapping part in both exclusion request areas, the exclusion unit 114 notifies the roll forward unit 111 of access refusal (step 1107). On the other hand, if there is no overlapping part, the access permission is notified to the roll forward means 111 (step 1108).

本実施の形態においては、ジャーナルボリューム(RV)120が、レプリケーション情報受信手段118により書き込まれた最新のジャーナルブロックの位置を、ロールフォワード手段111が速やかに特定できる循環型のジャーナル構造を採用している。これにより、ロールフォワード手段111は、レプリケーションがどこまで終了したかを速やかに判別し、最新のジャーナルブロック以降のジャーナルブロックがDB(RV)121に不正に反映されることを防ぎ、常に最新のジャーナルをDBに反映できる。   In the present embodiment, the journal volume (RV) 120 adopts a circular journal structure in which the roll forward unit 111 can quickly identify the position of the latest journal block written by the replication information receiving unit 118. Yes. As a result, the roll forward unit 111 promptly determines how far replication has been completed, prevents the journal blocks after the latest journal block from being illegally reflected in the DB (RV) 121, and always keeps the latest journal. Can be reflected in DB.

また、本実施の形態においては、排他手段114が、ジャーナルブロック単位でアクセス排他制御を行う。これにより、レプリケーション情報受信手段118が書き込み途中のジャーナルを、ロールフォワード手段111が読み込む事を防止し、両者のアクセス衝突によるDB(RV)121の不正反映を防ぎ、整合性を維持することができる。   In the present embodiment, the exclusion unit 114 performs access exclusion control in units of journal blocks. Thereby, it is possible to prevent the roll-forward unit 111 from reading the journal that is being written by the replication information receiving unit 118, to prevent illegal reflection of the DB (RV) 121 due to access collision between the two, and to maintain consistency. .

また、本実施の形態においては、レプリケーション情報受信手段118にレプリケーション速度を管理する機能を持たせ、レプリケーション情報受信手段118及びロールフォワード手段111が、レプリケーション速度に応じて一度に排他するジャーナルブロックの個数を変更できるようにした。これにより、レプリケーション速度が速い場合は、排他制御によるオーバヘッドを最小限に抑え、高速なレプリケーションを実現することができる。一方、レプリケーション速度が低下した場合、レプリケーション情報受信手段118及びロールフォワード手段111が、一度に排他するジャーナルの個数を減らす。これにより、ロールフォワード手段111は、最新のジャーナルブロックの直近までレプリケーションを進行できる。したがって、排他待ちによりロールフォワードが進行せず、RPOが伸びてしまうという事態を回避することができる。   In this embodiment, the replication information receiving unit 118 has a function of managing the replication speed, and the replication information receiving unit 118 and the rollforward unit 111 exclude the number of journal blocks that are exclusive at a time according to the replication rate. Can be changed. As a result, when the replication speed is high, overhead due to exclusive control can be minimized and high-speed replication can be realized. On the other hand, when the replication speed decreases, the replication information receiving unit 118 and the roll forward unit 111 reduce the number of journals that are exclusive at a time. As a result, the roll forward unit 111 can proceed with replication up to the latest journal block. Therefore, it is possible to avoid a situation in which roll forward does not proceed due to exclusion waiting and RPO is extended.

また、本実施の形態においては、レプリケーション情報受信手段118に順序型レプリケーションの動作状態を管理する機能を持たせ、順序型レプリケーションが動作していないときは、レプリケーション情報受信手段118がジャーナルブロック(RV)120全体に排他をかけることで、ロールフォワード手段111によるジャーナル読み込みを抑止する。これにより、レプリケーション開始時や回線障害時などレプリケーションが順序型とならない状態においては、書き込み順序が不明のジャーナルによるDB(RV)121の不正反映を防ぎ、整合性を維持することができる。また、このときロールフォワード手段111は、レプリケーション状態に関係なく稼動させたままにしておいても、DB(RV)121に悪影響を及ぼすことが無いため、リモートサイト110の運用の簡易化を実現できる。   In this embodiment, the replication information receiving means 118 is provided with a function for managing the operation state of sequential replication. When the sequential replication is not operating, the replication information receiving means 118 has a journal block (RV). ) By reading the entire 120, journal reading by the roll forward unit 111 is suppressed. As a result, in a state where the replication is not sequential, such as at the start of replication or a line failure, illegal reflection of the DB (RV) 121 by a journal whose writing order is unknown can be prevented and consistency can be maintained. At this time, even if the roll-forward means 111 is kept operating regardless of the replication status, it does not adversely affect the DB (RV) 121, so that the operation of the remote site 110 can be simplified. .

さらに、本実施の形態は、現在のストレージ装置のストレージコントローラが持つプログラム(ファームウェア)を置換し、その機能を変更することによって容易に実装することができる。   Furthermore, the present embodiment can be easily implemented by replacing a program (firmware) possessed by the storage controller of the current storage apparatus and changing its function.

すなわち、本発明により、ジャーナルのみをストレージ装置間で転送しレプリケーションを行う方式において、RPOの短縮と低ランニングコストとを両立することができる。   That is, according to the present invention, in a method of performing replication by transferring only journals between storage apparatuses, it is possible to achieve both reduction in RPO and low running cost.

なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。   It should be noted that the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the present invention.

例えば、上述の実施の形態では、本発明を主にハードウェアにより構成されるものとして説明したが、これに限定されるものではなく、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより論理的に実現することも可能である。この場合、コンピュータプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non−transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。   For example, in the above-described embodiment, the present invention has been described as being mainly configured by hardware. However, the present invention is not limited to this, and any processing can be performed on a CPU (Central Processing Unit) with a computer program. It can also be realized logically by executing. In this case, the computer program can be stored and provided to the computer using various types of non-transitory computer readable media. Non-transitory computer readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (for example, flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (for example, magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / W, semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (Random Access Memory)). The program may also be supplied to the computer by various types of transitory computer readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves. The temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.

100 メインサイト
101 DB更新手段
102 ストレージ装置
103 ストレージコントローラ
104 レプリケーション情報送信手段
105 通信手段
106 レプリケーション状態情報
107 ジャーナルブロック
108 ジャーナルボリューム(MV)
109 DB(MV)
110 リモートサイト
111 ロールフォワード手段
112 ストレージ装置
113 ストレージコントローラ
114 排他手段
116 排他情報
118 レプリケーション情報受信手段
119 レプリケーション状態情報
120 ジャーナルボリューム(RV)
121 DB(RV)
123 ジャーナルブロック最終読込位置
124 未反映ジャーナルレコード位置
125 ロールフォワード対象循環通番
126 レプリケーション速度情報
DESCRIPTION OF SYMBOLS 100 Main site 101 DB update means 102 Storage apparatus 103 Storage controller 104 Replication information transmission means 105 Communication means 106 Replication status information 107 Journal block 108 Journal volume (MV)
109 DB (MV)
110 Remote site 111 Roll forward means 112 Storage device 113 Storage controller 114 Exclusive means 116 Exclusive information 118 Replication information receiving means 119 Replication status information 120 Journal volume (RV)
121 DB (RV)
123 Journal block last read position 124 Unreflected journal record position 125 Circulation number for roll-forward target 126 Replication speed information

Claims (10)

複製元ボリュームの更新情報を含むジャーナルブロックを受信するレプリケーション情報受信手段と、
前記ジャーナルブロックを、受信した順に一定数格納する格納領域を含むジャーナルボリュームと、
前記格納領域から前記ジャーナルブロックを順に読出し、読出した前記ジャーナルブロックに基づいて複製ボリュームを更新するロールフォワードを実行するロールフォワード手段とを有し、
前記格納領域は、格納済みの前記ジャーナルブロックが前記一定数を超えた場合、格納済みの前記ジャーナルブロックが、古いものから順に、新たな前記ジャーナルブロックによって上書きされる循環構造であり、
前記ジャーナルブロックはそれぞれ、前記循環構造において前記上書きが一巡した回数を示す循環回数を含んでおり、
前記ロールフォワード手段は、前記格納された前記ジャーナルブロックを読出した際、前記循環回数に基づいて最新の前記ジャーナルブロックを判別し、前記最新の前記ジャーナルブロックを以て前記ロールフォワードを停止する
レプリケーション装置。
Replication information receiving means for receiving a journal block including update information of the replication source volume;
A journal volume including a storage area for storing a fixed number of the journal blocks in the order received;
Roll forward means for sequentially reading the journal blocks from the storage area and executing roll forward for updating the replication volume based on the read journal blocks;
The storage area is a circular structure in which, when the number of stored journal blocks exceeds the certain number, the stored journal blocks are overwritten by new journal blocks in order from the oldest,
Each of the journal blocks includes a circulation number indicating the number of times the overwriting has made a round in the circulation structure;
The roll forward means, when reading the stored journal block, determines the latest journal block based on the circulation count, and stops the roll forward with the latest journal block.
前記ジャーナルボリュームに前記ジャーナルブロックが格納される際、前記ジャーナルブロックに対する排他制御を行う排他手段をさらに有する
請求項1記載のレプリケーション装置。
The replication apparatus according to claim 1, further comprising an exclusive unit that performs exclusive control on the journal block when the journal block is stored in the journal volume.
前記排他手段はさらに、前記ロールフォワード手段が前記ジャーナルブロックを読出す際、前記ジャーナルブロックに対する排他制御を行う
請求項2記載のレプリケーション装置。
The replication apparatus according to claim 2, wherein the exclusion unit further performs exclusion control on the journal block when the roll forward unit reads the journal block.
前記ロールフォワード手段は、前記ジャーナルブロックの前記受信速度に応じ、一度に前記排他制御を実行する前記ジャーナルブロックの数を変化させる
請求項1乃至3いずれか1項記載のレプリケーション装置。
4. The replication apparatus according to claim 1, wherein the roll forward unit changes the number of the journal blocks that execute the exclusive control at a time according to the reception speed of the journal blocks. 5.
前記レプリケーション情報受信手段は、前記ジャーナルブロックの前記受信状態が、レプリケーション順序が保証されない状態である場合、前記ジャーナルボリューム全体に対する排他制御を行う
請求項1乃至4いずれか1項記載のレプリケーション装置。
5. The replication apparatus according to claim 1, wherein the replication information receiving unit performs exclusive control on the entire journal volume when the reception state of the journal block is in a state in which a replication order is not guaranteed.
複製元ボリュームの更新情報を含むジャーナルブロックを受信するレプリケーション情報受信ステップと、
前記ジャーナルブロックを、受信した順にジャーナルボリュームの格納領域に一定数格納する格納ステップと、
前記格納領域から前記ジャーナルブロックを順に読出し、読出した前記ジャーナルブロックに基づいて複製ボリュームを更新するロールフォワードを実行するロールフォワードステップとを有し、
前記格納領域は、格納済みの前記ジャーナルブロックが前記一定数を超えた場合、格納済みの前記ジャーナルブロックが、古いものから順に、新たな前記ジャーナルブロックによって上書きされる循環構造であり、
前記ジャーナルブロックはそれぞれ、前記循環構造において前記上書きが一巡した回数を示す循環回数を含んでおり、
前記ロールフォワードステップにおいては、前記格納された前記ジャーナルブロックを読出した際、前記循環回数に基づいて最新の前記ジャーナルブロックを判別し、前記最新の前記ジャーナルブロックを以て前記ロールフォワードを停止する
レプリケーション装置。
A replication information receiving step for receiving a journal block including update information of the replication source volume;
A storage step of storing a fixed number of the journal blocks in the storage area of the journal volume in the order received;
A roll forward step of sequentially reading the journal blocks from the storage area and executing a roll forward for updating a replication volume based on the read journal blocks;
The storage area is a circular structure in which, when the number of stored journal blocks exceeds the certain number, the stored journal blocks are overwritten by new journal blocks in order from the oldest,
Each of the journal blocks includes a circulation number indicating the number of times the overwriting has made a round in the circulation structure;
In the roll forward step, when the stored journal block is read, the latest journal block is determined based on the circulation count, and the roll forward is stopped using the latest journal block.
前記ジャーナルボリュームに前記ジャーナルブロックが格納される際、前記ジャーナルブロックに対する排他制御を行う第1の排他ステップをさらに有する
請求項6記載のレプリケーション方法。
The replication method according to claim 6, further comprising a first exclusive step of performing exclusive control on the journal block when the journal block is stored in the journal volume.
前記ロールフォワードステップにおいて前記ジャーナルブロックを読出す際、前記ジャーナルブロックに対する排他制御を行う第2の排他ステップをさらに有する
請求項7記載のレプリケーション方法。
The replication method according to claim 7, further comprising a second exclusive step of performing exclusive control on the journal block when reading the journal block in the roll forward step.
前記ロールフォワードステップにおいては、前記ジャーナルブロックの前記受信速度に応じ、一度に前記排他制御を実行する前記ジャーナルブロックの数を変化させる
請求項6乃至8いずれか1項記載のレプリケーション方法。
The replication method according to any one of claims 6 to 8, wherein, in the roll forward step, the number of the journal blocks that execute the exclusive control at a time is changed according to the reception speed of the journal blocks.
コンピュータに、
複製元ボリュームの更新情報を含むジャーナルブロックを受信するレプリケーション情報受信ステップと、
前記ジャーナルブロックを、受信した順にジャーナルボリュームの格納領域に一定数格納する格納ステップと、
前記格納領域から前記ジャーナルブロックを順に読出し、読出した前記ジャーナルブロックに基づいて複製ボリュームを更新するロールフォワードを実行するロールフォワードステップとを実行させるためのプログラムであって、
前記格納領域は、格納済みの前記ジャーナルブロックが前記一定数を超えた場合、格納済みの前記ジャーナルブロックが、古いものから順に、新たな前記ジャーナルブロックによって上書きされる循環構造であり、
前記ジャーナルブロックはそれぞれ、前記循環構造において前記上書きが一巡した回数を示す循環回数を含んでおり、
前記ロールフォワードステップにおいては、前記格納された前記ジャーナルブロックを読出した際、前記循環回数に基づいて最新の前記ジャーナルブロックを判別し、前記最新の前記ジャーナルブロックを以て前記ロールフォワードを停止する
プログラム。
On the computer,
A replication information receiving step for receiving a journal block including update information of the replication source volume;
A storage step of storing a fixed number of the journal blocks in the storage area of the journal volume in the order received;
A roll forward step for reading the journal blocks from the storage area in order and executing a roll forward for updating a replication volume based on the read journal blocks,
The storage area is a circular structure in which, when the number of stored journal blocks exceeds the certain number, the stored journal blocks are overwritten by new journal blocks in order from the oldest,
Each of the journal blocks includes a circulation number indicating the number of times the overwriting has made a round in the circulation structure;
In the roll forward step, when the stored journal block is read, the latest journal block is determined based on the number of circulations, and the roll forward is stopped with the latest journal block.
JP2012081713A 2012-03-30 2012-03-30 Replication apparatus, replication method, and program Active JP6183876B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012081713A JP6183876B2 (en) 2012-03-30 2012-03-30 Replication apparatus, replication method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012081713A JP6183876B2 (en) 2012-03-30 2012-03-30 Replication apparatus, replication method, and program

Publications (2)

Publication Number Publication Date
JP2013210919A true JP2013210919A (en) 2013-10-10
JP6183876B2 JP6183876B2 (en) 2017-08-23

Family

ID=49528666

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012081713A Active JP6183876B2 (en) 2012-03-30 2012-03-30 Replication apparatus, replication method, and program

Country Status (1)

Country Link
JP (1) JP6183876B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018041506A (en) * 2013-07-26 2018-03-15 ▲ホア▼▲ウェイ▼技術有限公司Huawei Technologies Co.,Ltd. Data transmission method, data reception method, and storage device
US20200320001A1 (en) * 2015-06-30 2020-10-08 Samsung Electronics Co., Ltd. Storage device and garbage collection method thereof

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62285148A (en) * 1986-06-03 1987-12-11 Nec Corp Control system for stored file
JPH08339341A (en) * 1995-06-12 1996-12-24 Hitachi Ltd Selection method for main storage page
JP2004013367A (en) * 2002-06-05 2004-01-15 Hitachi Ltd Data storage subsystem
JP2004295563A (en) * 2003-03-27 2004-10-21 Fujitsu Ltd Highly reliable data management method for maintaining consistency of data
JP2006011848A (en) * 2004-06-25 2006-01-12 Nec Corp Replication system, apparatus, method, and program
JP2007058611A (en) * 2005-08-25 2007-03-08 Hitachi Ltd Storage system and method for managing storage system
JP2007079728A (en) * 2005-09-12 2007-03-29 Sony Corp Recording method, recorder and file switch recording program
JP2008077264A (en) * 2006-09-20 2008-04-03 Hitachi Ltd Recovery method using cdp
JP2009064178A (en) * 2007-09-05 2009-03-26 Hitachi Ltd Storage device and data management method

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62285148A (en) * 1986-06-03 1987-12-11 Nec Corp Control system for stored file
JPH08339341A (en) * 1995-06-12 1996-12-24 Hitachi Ltd Selection method for main storage page
JP2004013367A (en) * 2002-06-05 2004-01-15 Hitachi Ltd Data storage subsystem
JP2004295563A (en) * 2003-03-27 2004-10-21 Fujitsu Ltd Highly reliable data management method for maintaining consistency of data
JP2006011848A (en) * 2004-06-25 2006-01-12 Nec Corp Replication system, apparatus, method, and program
JP2007058611A (en) * 2005-08-25 2007-03-08 Hitachi Ltd Storage system and method for managing storage system
JP2007079728A (en) * 2005-09-12 2007-03-29 Sony Corp Recording method, recorder and file switch recording program
JP2008077264A (en) * 2006-09-20 2008-04-03 Hitachi Ltd Recovery method using cdp
JP2009064178A (en) * 2007-09-05 2009-03-26 Hitachi Ltd Storage device and data management method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
上田高徳、平手勇宇、山名早人: "アクセスパターンマイニングによるOSレベルでの動的なI/O最適化", 情報処理学会 研究報告, vol. 2008, no. 88, JPN6015046227, 14 September 2008 (2008-09-14), pages 73 - 78, ISSN: 0003197703 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018041506A (en) * 2013-07-26 2018-03-15 ▲ホア▼▲ウェイ▼技術有限公司Huawei Technologies Co.,Ltd. Data transmission method, data reception method, and storage device
US20200320001A1 (en) * 2015-06-30 2020-10-08 Samsung Electronics Co., Ltd. Storage device and garbage collection method thereof
US11645199B2 (en) * 2015-06-30 2023-05-09 Samsung Electronics Co., Ltd. Storage device and garbage collection method thereof

Also Published As

Publication number Publication date
JP6183876B2 (en) 2017-08-23

Similar Documents

Publication Publication Date Title
JP4728031B2 (en) System that performs remote copy pair migration
JP4412989B2 (en) Data processing system having a plurality of storage systems
CN103827843B (en) A kind of data writing method, device and system
US20180322024A1 (en) Storage apparatus, storage system, and control method of storage system
US9535617B2 (en) Marking a flashcopy backup for collapse without breaking a flashcopy chain
US10884926B2 (en) Method and system for distributed storage using client-side global persistent cache
US8024537B2 (en) Storage system, remote copy and management method therefor
US8255649B2 (en) Remote copy control method and system in storage cluster environment
US9817719B2 (en) Efficient Flashcopy backup and mount, clone, or restore collision avoidance using dynamic volume allocation with reuse and from a shared resource pool
US20130086346A1 (en) Data storage apparatus
CN108595119B (en) Data synchronization method and distributed system
WO2018076633A1 (en) Remote data replication method, storage device and storage system
JP2013222373A (en) Storage system, cache control program, and cache control method
US9513996B2 (en) Information processing apparatus, computer-readable recording medium having stored program for controlling information processing apparatus, and method for controlling information processing apparatus
US9542106B2 (en) Efficient repository ingest of a target volume without breaking a flashcopy chain
JP2002132554A (en) Access method for database
US7114046B2 (en) Storage system, backup system, and backup method
US8595430B2 (en) Managing a virtual tape library domain and providing ownership of scratch erased volumes to VTL nodes
JP6183876B2 (en) Replication apparatus, replication method, and program
CN111158955A (en) High-availability system based on volume replication and multi-server data synchronization method
US20140122433A1 (en) Storage device and data backup method
US9003129B1 (en) Techniques for inter-storage-processor cache communication using tokens
US9823852B2 (en) Memory system with nonvolatile memory
CN106844234B (en) Data writing method and device and double-active system
JP4489500B2 (en) Backup method, backup system, disk controller, and backup program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160114

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160916

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20160926

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20161111

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170720

R150 Certificate of patent or registration of utility model

Ref document number: 6183876

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150