JP2014106580A - Information processing device - Google Patents

Information processing device Download PDF

Info

Publication number
JP2014106580A
JP2014106580A JP2012257172A JP2012257172A JP2014106580A JP 2014106580 A JP2014106580 A JP 2014106580A JP 2012257172 A JP2012257172 A JP 2012257172A JP 2012257172 A JP2012257172 A JP 2012257172A JP 2014106580 A JP2014106580 A JP 2014106580A
Authority
JP
Japan
Prior art keywords
update
update information
database
information
unit
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
JP2012257172A
Other languages
Japanese (ja)
Other versions
JP6319784B2 (en
Inventor
Shohei Yumura
昇平 湯村
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 JP2012257172A priority Critical patent/JP6319784B2/en
Publication of JP2014106580A publication Critical patent/JP2014106580A/en
Application granted granted Critical
Publication of JP6319784B2 publication Critical patent/JP6319784B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To solve the problem of being unable to combine reduction of load and assurance of consistency of transaction processing.SOLUTION: An information processing device includes: update means for performing predetermined update processing on a master database to update a database stored in the master database; update information extraction means for extracting update information based on the database updated by the update means; and update information transfer means for including a plurality of update information extracted by the update information extraction means into one update information group and transferring the update information group at a time to a replica database in which replicated data of a database stored in the master database is stored. The update information transfer means includes updated a plurality of update information updated by the same transaction processing that manages a plurality of related update processes as a sequence of processing into one update information group and transfers the update information group to the replica database at a time.

Description

本発明は、情報処理装置にかかり、特に、データを更新したときの更新情報を他の記憶装置へ転送する情報処理装置に関する。   The present invention relates to an information processing apparatus, and more particularly to an information processing apparatus that transfers update information when data is updated to another storage device.

データベースに冗長性を持たせるために、データを格納するマスタデータベースと、マスタデータベースの複製データを格納するレプリカデータベースと、を備えるレプリケーションシステムが知られている(例えば特許文献1参照)。レプリケーションシステムでは、マスタデータベースが更新された場合に、更新に伴う更新情報を抽出し、抽出した更新情報をレプリカデータベースへ転送することで、データベースのレプリケーションを実現する。   In order to provide redundancy to a database, a replication system including a master database that stores data and a replica database that stores replica data of the master database is known (see, for example, Patent Document 1). In a replication system, when a master database is updated, update information associated with the update is extracted, and the extracted update information is transferred to a replica database, thereby realizing database replication.

特開2002−318718号公報JP 2002-318718 A

ここで、関連する複数の処理を一連の処理として管理するトランザクション処理によりマスタデータベースを更新することがある。上述したレプリケーションシステムでは、トランザクション処理毎に更新情報を逐一レプリカデータベースへ転送することで、マスタデータベースとレプリカデータベースとの間の整合性を保証することができる。しかしながら、トランザクション処理毎に更新情報を転送する場合には、マスタデータベースへの更新回数が多くなるほど更新情報の転送回数が増加し、マスタデータベース側の処理と、レプリカデータベース側の処理と、ネットワークと、のそれぞれの負荷が増加してしまうという問題があった。   Here, the master database may be updated by a transaction process that manages a plurality of related processes as a series of processes. In the replication system described above, consistency between the master database and the replica database can be ensured by transferring update information to the replica database one by one for each transaction process. However, in the case of transferring update information for each transaction process, the update information transfer count increases as the number of updates to the master database increases, the master database side process, the replica database side process, the network, There was a problem that the load of each increased.

また、上述したレプリケーションシステムにおいて、負荷を抑制するために、マスタデータベースの更新により抽出した更新情報の数が一定件数になった時に更新情報を転送する処理が知られている。しかしながら、更新情報の数が一定件数になった時に更新情報を転送する場合には、同一のトランザクション処理に基づく更新情報の全てが一度のタイミングで転送されないことがあった。この結果、マスタデータベースとレプリカデータベースとの間において、一時的に整合性が取れず、マスタデータベースに対して行われた更新のトランザクション処理の一貫性をレプリカデータベースにおいて保障することができないという問題があった。   In the replication system described above, a process for transferring update information when the number of update information extracted by updating the master database reaches a fixed number is known in order to suppress the load. However, when the update information is transferred when the number of update information reaches a certain number, all of the update information based on the same transaction processing may not be transferred at a single timing. As a result, there is a problem in that consistency between the master database and the replica database cannot be temporarily achieved, and the consistency of transaction processing of updates performed on the master database cannot be guaranteed in the replica database. It was.

このため、本発明の目的は、負荷を抑制することと、トランザクション処理の一貫性を保証することと、を両立することができないという問題を解決することができる情報処理装置を提供させることにある。   Therefore, an object of the present invention is to provide an information processing apparatus that can solve the problem that it is impossible to achieve both the suppression of load and the guarantee of transaction processing consistency. .

上記目的を達成すべく、本発明の一形態である情報処理装置は、
マスタデータベースに対して所定の更新処理を行い、前記マスタデータベースに記憶されたデータベースを更新する更新手段と、
前記更新手段にて更新した前記データベースに基づいて更新情報を抽出する更新情報抽出手段と、
前記更新情報抽出手段にて抽出した複数の前記更新情報である更新情報群を、前記マスタデータベースに記憶された前記データベースの複製データを記憶するレプリカデータベースへ、一度のタイミングで転送する更新情報転送手段と、
を備え、
前記更新情報転送手段は、関連する複数の更新処理を一連の処理として管理する、同一のトランザクション処理によって更新された前記データベースに基づいて抽出した前記更新情報を、前記更新情報群に含む、
という構成を取る。
In order to achieve the above object, an information processing apparatus according to an aspect of the present invention provides:
Updating means for performing a predetermined update process on the master database and updating the database stored in the master database;
Update information extraction means for extracting update information based on the database updated by the update means;
Update information transfer means for transferring update information groups, which are a plurality of update information extracted by the update information extraction means, to a replica database that stores duplicate data of the database stored in the master database at a single timing When,
With
The update information transfer means manages a plurality of related update processes as a series of processes, and includes the update information extracted based on the database updated by the same transaction process in the update information group.
Take the configuration.

また、本発明の他の形態であるプログラムは、
情報処理装置に、
マスタデータベースに対して所定の更新処理を行い、前記マスタデータベースに記憶されたデータベースを更新する更新手段と、
前記更新手段にて更新した前記データベースに基づいて更新情報を抽出する更新情報抽出手段と、
前記更新情報抽出手段にて抽出した複数の前記更新情報である更新情報群を、前記マスタデータベースに記憶された前記データベースの複製データを記憶するレプリカデータベースへ、一度のタイミングで転送する更新情報転送手段と、
を実現させるとともに、
前記更新情報転送手段は、関連する複数の更新処理を一連の処理として管理する、同一のトランザクション処理によって更新された前記データベースに基づいて抽出した前記更新情報を、前記更新情報群に含む、
ことを実現させるためのプログラムである。
Moreover, the program which is the other form of this invention is:
In the information processing device,
Updating means for performing a predetermined update process on the master database and updating the database stored in the master database;
Update information extraction means for extracting update information based on the database updated by the update means;
Update information transfer means for transferring update information groups, which are a plurality of update information extracted by the update information extraction means, to a replica database that stores duplicate data of the database stored in the master database at a single timing When,
And realize
The update information transfer means manages a plurality of related update processes as a series of processes, and includes the update information extracted based on the database updated by the same transaction process in the update information group.
It is a program for realizing this.

また、本発明の他の形態である情報処理方法は、
マスタデータベースに対して所定の更新処理を行い、前記マスタデータベースに記憶されたデータベースを更新し、
更新した前記データベースに基づいて更新情報を抽出し、
関連する複数の更新処理を一連の処理として管理する、同一のトランザクション処理によって更新された前記データベースに基づいて抽出した前記更新情報を含む前記更新情報群を、前記マスタデータベースに記憶された前記データベースの複製データを記憶するレプリカデータベースへ、一度のタイミングで転送する、
という構成を取る。
In addition, an information processing method according to another aspect of the present invention includes:
Perform a predetermined update process on the master database, update the database stored in the master database,
Extract update information based on the updated database,
The update information group including the update information extracted based on the database updated by the same transaction process, which manages a plurality of related update processes as a series of processes, of the database stored in the master database Transfer to the replica database that stores the replicated data once
Take the configuration.

本発明は、以上のように構成されることにより、負荷を低減しつつ、マスタデータベースに対して行われた更新のトランザクション処理の一貫性をレプリカデータベースにおいて保証することができるという優れた効果を有する。   By configuring as described above, the present invention has an excellent effect that consistency of transaction processing of updates performed on the master database can be guaranteed in the replica database while reducing the load. .

本発明における情報処理システムの構成の概略を示すブロック図である。It is a block diagram which shows the outline of a structure of the information processing system in this invention. マスターサーバの構成を示すブロック図である。It is a block diagram which shows the structure of a master server. スレーブサーバの構成を示すブロック図である。It is a block diagram which shows the structure of a slave server. 本発明の第1実施形態における情報処理システムの構成を示す機能ブロック図である。It is a functional block diagram which shows the structure of the information processing system in 1st Embodiment of this invention. 更新ログ中間テーブルの例を説明するための図である。It is a figure for demonstrating the example of an update log intermediate | middle table. 更新処理を説明するためのフローチャートである。It is a flowchart for demonstrating an update process. 更新情報抽出処理を説明するためのフローチャートである。It is a flowchart for demonstrating update information extraction processing. 更新情報制御処理を説明するためのフローチャートである。It is a flowchart for demonstrating update information control processing. 更新情報転送処理を説明するためのフローチャートである。It is a flowchart for demonstrating update information transfer processing. 反映処理を説明するためのフローチャートである。It is a flowchart for demonstrating a reflection process. 一括反映処理を説明するためのフローチャートである。It is a flowchart for demonstrating a batch reflection process. 本発明の第2実施形態におけるマスターサーバの構成を示す機能ブロック図である。It is a functional block diagram which shows the structure of the master server in 2nd Embodiment of this invention.

<第1実施形態>
本発明の第1実施形態を、図1乃至図11を参照して説明する。図1乃至図5は、情報処理システムの構成を説明するための図である。図6乃至図11は、情報処理システムの動作を説明するための図である。
<First Embodiment>
A first embodiment of the present invention will be described with reference to FIGS. 1 to 5 are diagrams for explaining the configuration of the information processing system. 6 to 11 are diagrams for explaining the operation of the information processing system.

[構成]
最初に、情報処理システム1の構成について説明する。図1に示すように、本実施形態における情報処理システム1は、マスターサーバ11と、スレーブサーバ12と、通信網13と、を備えている。そして、マスターサーバ11(情報処理装置)は、マスターデータを記憶(格納)するマスタDB(データベース)21を備えている。また、スレーブサーバ12は、マスタDB21に記憶されたマスターデータの複製データを記憶するレプリカDB22を備えている。さらに、マスターサーバ11とスレーブサーバ12とは、有線または無線による通信網13を介して接続される。
[Constitution]
First, the configuration of the information processing system 1 will be described. As shown in FIG. 1, the information processing system 1 in this embodiment includes a master server 11, a slave server 12, and a communication network 13. The master server 11 (information processing apparatus) includes a master DB (database) 21 that stores (stores) master data. Further, the slave server 12 includes a replica DB 22 that stores duplicate data of the master data stored in the master DB 21. Furthermore, the master server 11 and the slave server 12 are connected via a wired or wireless communication network 13.

情報処理システム1は、マスタDB21に記憶されたマスターデータの内容と、レプリカDB22に記憶された複製データの内容と、を常に同期するように制御する。これにより、マスターサーバ11に障害等が発生した場合に、スレーブサーバ12がマスターサーバ11の代わりに機能するので、情報処理システム1全体の機能を維持することができる。なお、図1の情報処理システム1には、1台のスレーブサーバ12が記載されているが、情報処理システム1は、2台以上の複数のスレーブサーバ12を備えてもよい。   The information processing system 1 controls so that the contents of the master data stored in the master DB 21 and the contents of the replicated data stored in the replica DB 22 are always synchronized. Thereby, when a failure or the like occurs in the master server 11, the slave server 12 functions in place of the master server 11, so that the functions of the entire information processing system 1 can be maintained. In addition, although one slave server 12 is described in the information processing system 1 in FIG. 1, the information processing system 1 may include two or more slave servers 12.

次に、マスターサーバ11とスレーブサーバ12との構成について説明する。まず、図2を参照して、マスターサーバ11の構成について説明する。図2は、マスターサーバ11の構成例を示すブロック図である。図2に示すように、マスターサーバ11は、演算部41と、記憶部42と、入出力部43と、通信部44と、を備えている。   Next, the configuration of the master server 11 and the slave server 12 will be described. First, the configuration of the master server 11 will be described with reference to FIG. FIG. 2 is a block diagram illustrating a configuration example of the master server 11. As shown in FIG. 2, the master server 11 includes a calculation unit 41, a storage unit 42, an input / output unit 43, and a communication unit 44.

演算部41は、例えば、CPU(Central Processing Unit)により構成される。演算部41は、記憶部42に格納されたプログラムを読み込み、プログラムを実行することにより、マスターサーバ11を制御するための各種機能を実行する。演算部41の機能的構成については、図4を参照して後述する。   The computing unit 41 is configured by, for example, a CPU (Central Processing Unit). The calculation unit 41 reads various programs stored in the storage unit 42 and executes the programs to execute various functions for controlling the master server 11. The functional configuration of the calculation unit 41 will be described later with reference to FIG.

記憶部42は、マスターデータを記憶するマスタDB21を有している。マスターデータは、例えば、銀行口座を管理するデータベースや、商品の受注や配送を管理するデータベース等である。特に、本実施形態では、マスターデータは、関連する複数の更新処理を一連の処理として管理するトランザクション処理により更新される。   The storage unit 42 has a master DB 21 that stores master data. The master data is, for example, a database that manages bank accounts, a database that manages product orders and delivery, and the like. In particular, in the present embodiment, the master data is updated by a transaction process that manages a plurality of related update processes as a series of processes.

入出力部43は、マスタDB21を更新するためのデータベース反映情報の入力を受け付ける。入出力部43がデータベース反映情報の入力を受け付けた場合、後述する更新部71は、入出力部43にて入力を受け付けたデータベース反映情報に基づいてマスタDB21を更新する。続いて、後述する更新ログ抽出部72は、マスタDB21の更新に基づく更新情報(更新ログ)を抽出する。そして、通信部44は、通信網13を介して、生成された更新情報をスレーブサーバ12へ転送する。   The input / output unit 43 receives input of database reflection information for updating the master DB 21. When the input / output unit 43 receives an input of database reflection information, the update unit 71 described later updates the master DB 21 based on the database reflection information received by the input / output unit 43. Subsequently, the update log extraction unit 72 described later extracts update information (update log) based on the update of the master DB 21. Then, the communication unit 44 transfers the generated update information to the slave server 12 via the communication network 13.

次に、図3を参照して、スレーブサーバ12の構成について説明する。図3は、スレーブサーバ12の構成例を示すブロック図である。図3に示すように、スレーブサーバ12は、演算部51と、記憶部52と、通信部53と、を備えている。なお、スレーブサーバ12の演算部51と、記憶部52と、通信部53と、の構成は、マスターサーバ11の演算部41と、記憶部42と、通信部44と、同様の構成を有しているので、マスターサーバ11と相違する点について説明する。   Next, the configuration of the slave server 12 will be described with reference to FIG. FIG. 3 is a block diagram illustrating a configuration example of the slave server 12. As shown in FIG. 3, the slave server 12 includes a calculation unit 51, a storage unit 52, and a communication unit 53. In addition, the calculation unit 51, the storage unit 52, and the communication unit 53 of the slave server 12 have the same configuration as the calculation unit 41, the storage unit 42, and the communication unit 44 of the master server 11. Therefore, differences from the master server 11 will be described.

記憶部52は、マスタDB21に記憶されたマスターデータの複製データを記憶するレプリカDB22を有している。通信部53は、マスターサーバ11から転送された更新情報を受信する。通信部53が更新情報を受信すると、後述する更新ログ反映部91が、受信した更新情報をレプリカDB22へ反映し、レプリカDB22を更新する。このように、マスタDB21に記憶された内容を、レプリカDB22に記憶された内容に反映させるので、情報処理システム1においてレプリケーション機能を実現し、情報処理システム1全体の機能を維持することができる。   The storage unit 52 includes a replica DB 22 that stores duplicate data of master data stored in the master DB 21. The communication unit 53 receives the update information transferred from the master server 11. When the communication unit 53 receives the update information, an update log reflection unit 91 described later reflects the received update information on the replica DB 22 and updates the replica DB 22. Thus, since the content stored in the master DB 21 is reflected in the content stored in the replica DB 22, a replication function can be realized in the information processing system 1 and the entire function of the information processing system 1 can be maintained.

次に、図4を参照して、マスターサーバ11とスレーブサーバ12の各構成の詳細について説明する。図4は、マスターサーバ11とスレーブサーバ12の機能的構成例を示すブロック図である。   Next, with reference to FIG. 4, the detail of each structure of the master server 11 and the slave server 12 is demonstrated. FIG. 4 is a block diagram illustrating a functional configuration example of the master server 11 and the slave server 12.

マスターサーバ11の演算部41は、プログラムを実行することにより、更新部71(更新手段)と、更新ログ抽出部72(更新情報抽出手段)と、更新ログ制御部73(更新情報制御手段)と、更新ログ転送部74(更新情報転送手段)と、テーブル取得部75(データベース転送制御手段)と、を有する。また、マスターサーバ11の記憶部42は、マスタDB21と、更新ログ中間テーブルA81を有する。更新ログ中間テーブルA81については、図5を参照して後述する。   The calculation unit 41 of the master server 11 executes a program to update the unit 71 (update unit), the update log extraction unit 72 (update information extraction unit), and the update log control unit 73 (update information control unit). , An update log transfer unit 74 (update information transfer unit) and a table acquisition unit 75 (database transfer control unit). The storage unit 42 of the master server 11 includes a master DB 21 and an update log intermediate table A81. The update log intermediate table A81 will be described later with reference to FIG.

また、スレーブサーバ12の演算部51は、プログラムを実行することにより、更新ログ反映部91と、一括反映制御部92と、一括反映実行部93と、を有する。さらに、スレーブサーバ12の記憶部52は、レプリカDB22と、更新ログ中間テーブルB101を有する。なお、スレーブサーバ12の更新ログ中間テーブルB101は、マスターサーバ11の更新ログ中間テーブルA81と同様の構成である。以下にマスターサーバ11とスレーブサーバ12との具体的な処理について説明する。   Further, the calculation unit 51 of the slave server 12 includes an update log reflection unit 91, a batch reflection control unit 92, and a batch reflection execution unit 93 by executing a program. Furthermore, the storage unit 52 of the slave server 12 includes a replica DB 22 and an update log intermediate table B101. The update log intermediate table B101 of the slave server 12 has the same configuration as the update log intermediate table A81 of the master server 11. Hereinafter, specific processing of the master server 11 and the slave server 12 will be described.

最初に、マスターサーバ11が、マスタDB21のマスターデータを更新する処理について説明する。更新部71は、マスタDB21に対して所定の更新処理を行い、マスタDB21に記憶されたデータベースを更新する。具体的には、まず、更新部71は、トランザクション処理を開始する。すなわち、更新部71は、トランザクションの開始を宣言し、更新処理を開始する。続いて、更新部71は、入出力部43を介して、マスタDB21を更新するためのデータベース反映情報を取得する。データベース反映情報は、例えば、ユーザが銀行口座にお金を振り込む操作を実行することにより生成される。   First, a process in which the master server 11 updates the master data in the master DB 21 will be described. The update unit 71 performs a predetermined update process on the master DB 21 to update the database stored in the master DB 21. Specifically, first, the update unit 71 starts transaction processing. That is, the update unit 71 declares the start of a transaction and starts update processing. Subsequently, the update unit 71 acquires database reflection information for updating the master DB 21 via the input / output unit 43. The database reflection information is generated, for example, when the user performs an operation of transferring money to a bank account.

そして、更新部71は、取得したデータベース反映情報に基づいて、マスタDB21に記憶されたマスターデータの更新を開始する。またこの時、更新部71は、更新ログ抽出部72へトリガを発行する。このトリガは、更新ログ抽出部72に抽出処理を開始させるための情報であり、更新処理毎に発行される。具体的には、更新部71は、データベース反映情報に基づいて、マスターデータに含まれる所定のデータを更新する度にトリガを発行する。例えば、aさんの銀行口座からbさんの銀行口座へ、所定の金額(例えば10万円)を移動する場合、aさんの銀行口座の金額から10万円を引く処理(更新処理)を開始した時に、更新部71はトリガを発行する。そして、bさんの銀行口座の金額に10万円を加える処理を開始した時に、更新部71は再びトリガを発行する。   And the update part 71 starts the update of the master data memorize | stored in master DB21 based on the acquired database reflection information. At this time, the update unit 71 issues a trigger to the update log extraction unit 72. This trigger is information for causing the update log extraction unit 72 to start the extraction process, and is issued for each update process. Specifically, the update unit 71 issues a trigger every time predetermined data included in the master data is updated based on the database reflection information. For example, when moving a predetermined amount (for example, 100,000 yen) from Mr. a's bank account to Mr. b's bank account, processing (update processing) for subtracting 100,000 yen from the amount of Mr. a's bank account has started. Sometimes the update unit 71 issues a trigger. And when the process which adds 100,000 yen to the amount of a bank account of b is started, the update part 71 will issue a trigger again.

続いて、更新ログ抽出部72は、更新部71が発行したトリガを受信することにより、更新部71が更新したデータベースに基づく更新情報の抽出処理を開始する。そして、更新ログ抽出部72は、トリガを受信する度に、マスタDB21に記憶された更新前のマスターデータと、更新情報に基づいて更新された更新後のマスターデータと、に基づいて、更新情報(更新ログ)を抽出し、抽出した更新情報を更新ログ中間テーブルA81に記憶する。ここで、図5を参照して、更新ログ中間テーブルA81の詳細について説明する。   Subsequently, the update log extraction unit 72 starts the update information extraction process based on the database updated by the update unit 71 by receiving the trigger issued by the update unit 71. Then, each time the update log extraction unit 72 receives a trigger, the update log extraction unit 72 updates the update information based on the master data before update stored in the master DB 21 and the updated master data updated based on the update information. (Update log) is extracted, and the extracted update information is stored in the update log intermediate table A81. Here, the details of the update log intermediate table A81 will be described with reference to FIG.

図5は、更新ログ中間テーブルA81の詳細を説明するための図である。図5に示すように、更新ログ中間テーブルA81は、データベース反映情報をマスタDB21に反映させる更新処理が行われるごとに、トリガID(Identification)と、時刻と、トランザクションIDと、反映IDと、更新情報と、を有する1つのレコードを登録する。トリガIDは、更新部71により発行された個々のトリガに設定され、更新情報を識別するための情報である。例えば、更新ログ抽出部72は、トリガを受け付ける度に1だけインクリメントしたトリガIDを生成する。時刻は、トリガが発行された時刻(すなわち更新が開始された時刻)を表す情報であり、更新ログ抽出部72により取得される。トランザクションIDは、トランザクション処理を識別するための情報である。更新ログ抽出部72は、同一のトランザクション処理にて生成した更新情報に同一のトランザクションIDを設定する。例えば、更新ログ抽出部72は、トランザクションが切り替わる度に1だけインクリメントしたトランザクションIDを生成する。反映IDは、スレーブサーバ12へ一度のタイミングで転送し、レプリカDB22へ一度のタイミングで反映させる更新情報群を識別するための情報である。反映IDは、後述する更新ログ制御部73が設定する情報であり、更新ログ抽出部72が更新情報を記憶する際には空欄(またはNULL)になる。更新情報は、更新前のデータと更新後のデータとを含む情報である。   FIG. 5 is a diagram for explaining the details of the update log intermediate table A81. As illustrated in FIG. 5, the update log intermediate table A81 includes a trigger ID (Identification), a time, a transaction ID, a reflection ID, and an update each time an update process for reflecting the database reflection information in the master DB 21 is performed. One record having information is registered. The trigger ID is information for identifying update information that is set for each trigger issued by the update unit 71. For example, the update log extraction unit 72 generates a trigger ID incremented by 1 each time a trigger is received. The time is information indicating the time when the trigger is issued (that is, the time when the update is started), and is acquired by the update log extraction unit 72. The transaction ID is information for identifying transaction processing. The update log extraction unit 72 sets the same transaction ID in the update information generated by the same transaction process. For example, the update log extraction unit 72 generates a transaction ID incremented by 1 each time a transaction is switched. The reflection ID is information for identifying an update information group that is transferred to the slave server 12 at a single timing and reflected to the replica DB 22 at a single timing. The reflection ID is information set by an update log control unit 73, which will be described later, and is blank (or NULL) when the update log extraction unit 72 stores update information. The update information is information including data before update and data after update.

例えば、aさんの銀行口座からbさんの銀行口座へ10万円を移動する処理の場合、aさんの銀行口座の金額から10万円を引く処理と、bさんの銀行口座の金額に10万円を加える処理と、のそれぞれに基づいて抽出された各更新情報には、同じトランザクションIDが設定される。そして、更新ログ抽出部72は、更新ログ中間テーブルA81に2つのレコードを登録する。   For example, in the process of moving 100,000 yen from Mr. a's bank account to Mr. b's bank account, the process of subtracting 100,000 yen from the amount of Mr. a's bank account, and the amount of Mr. b's bank account to 100,000 The same transaction ID is set for each update information extracted based on each of the process of adding a circle. Then, the update log extraction unit 72 registers two records in the update log intermediate table A81.

また、図5に示すように、更新情報は、対象テーブルと、格納行数と、X(Xは自然数)行目の更新情報からY(Yは自然数(X<Y))行目の更新情報と、を有している。対象テーブルは、マスタDB21に格納されたテーブル(データベース)のうち、更新部71が更新したテーブルを特定するための情報である。格納行数は、対象テーブルに格納されたレコード(行)の数を表す情報である。   Also, as shown in FIG. 5, the update information includes the target table, the number of stored rows, and the update information on the Y (Y is a natural number (X <Y)) row from the update information on the X (X is a natural number) row. And have. The target table is information for specifying a table updated by the update unit 71 among the tables (databases) stored in the master DB 21. The number of stored rows is information indicating the number of records (rows) stored in the target table.

そして、X行目の更新情報は、対象行主キーと、格納列数と、M(Mは自然数)列目の更新前データからN(Nは自然数(M<N))列目の更新前データと、M列目の更新後データからN列目の更新後データと、を有している。対象行主キーは、対象テーブルの更新された1つの行を特定するための情報である。格納列数は、対象テーブルに格納された列の数を表す情報である。そして、M列目の更新前データは、更新前データが格納された位置を表すM列列位置と、更新前データのサイズを表すM列列長と、更新前のデータを表す更新前データと、を有している。同様に、M列目の更新後データは、更新後データが格納された位置を表すM列列位置と、更新後データのサイズを表すM列列長と、更新後のデータを表す更新後データと、を有している。   The update information of the X-th row includes the target row primary key, the number of storage columns, and the pre-update data of the N (N is a natural number (M <N)) column from the pre-update data of the M (M is a natural number) column. Data and updated data in the Nth column from updated data in the Mth column. The target row primary key is information for specifying one updated row of the target table. The number of stored columns is information indicating the number of columns stored in the target table. The M-column pre-update data includes an M-column position indicating the position where the pre-update data is stored, an M-column length indicating the size of the pre-update data, and pre-update data indicating the data before the update. ,have. Similarly, the updated data in the Mth column includes the M column position indicating the position where the updated data is stored, the M column length indicating the size of the updated data, and the updated data indicating the updated data. And have.

ここで図4の説明に戻る。図4の更新部71による更新が完了し、更新ログ抽出部72がデータベース反映情報に基づく更新情報を全て更新ログ中間テーブルA81に記憶した場合、更新部71は、トランザクション処理の成功を出力する。すなわち、更新部71による更新処理が確定される。これにより、マスタDB21の更新に基づく更新情報を抽出し、更新ログ中間テーブルA81に記憶することができる。   Returning to the description of FIG. When the update by the update unit 71 of FIG. 4 is completed and the update log extraction unit 72 stores all update information based on the database reflection information in the update log intermediate table A81, the update unit 71 outputs a success of transaction processing. That is, the update process by the update unit 71 is confirmed. Thereby, the update information based on the update of the master DB 21 can be extracted and stored in the update log intermediate table A81.

次に、マスターサーバ11が、更新ログ中間テーブルA81に記憶された更新情報に反映IDを設定する処理について説明する。まず、更新ログ制御部73は、更新ログ中間テーブルA81を参照して、反映IDが未設定(例えば空欄またはNULL)の更新情報を読み出す。続いて、更新ログ制御部73は、予め設定された転送条件に基づいて、レプリカDB22へ一度のタイミングで転送し、レプリカDB22へ反映させる複数の更新情報(更新情報群)を決定する。例えば、更新ログ制御部73は、転送条件として予め件数設定がされている場合、設定された件数まで反映IDを設定し、同じ反映IDを設定した複数の更新情報を更新情報群として決定する。   Next, a process in which the master server 11 sets a reflection ID in the update information stored in the update log intermediate table A81 will be described. First, the update log control unit 73 refers to the update log intermediate table A81 and reads update information for which the reflection ID is not set (for example, blank or NULL). Subsequently, the update log control unit 73 determines a plurality of update information (update information group) to be transferred to the replica DB 22 at a single timing and reflected to the replica DB 22 based on a preset transfer condition. For example, when the number of cases is set in advance as the transfer condition, the update log control unit 73 sets the reflection IDs up to the set number, and determines a plurality of pieces of update information set with the same reflection ID as an update information group.

具体的には、更新ログ制御部73は、設定された件数が100件ならば、100件以内かつトランザクションIDが切り替わる前の更新情報までに(すなわち同じトランザクションIDが設定された全ての更新情報に)同じ反映IDを設定する。更新ログ制御部73は、例えば、1から順番に反映IDを発行する。例えば、90〜98件目(トリガID「90」〜「98」)の更新情報のトランザクションIDが「10」であり、99〜104件目の更新情報のトランザクションIDが「11」である場合、更新ログ制御部73は、1〜98件目の更新情報に同じ反映ID(例えば「1」)を設定し、反映ID「1」を設定した1〜98件目の更新情報を1つの更新情報群として決定する。また、99件目以降(199件目未満)の更新情報に、次の反映ID(例えば「2」)を設定し、反映ID「2」を設定した複数の更新情報を次の更新情報群として決定する。このように、更新ログ制御部73は、更新情報の件数単位に基づいて、更新ログ中間テーブルA81の各更新情報に反映IDを割り当てる。   Specifically, if the set number of cases is 100, the update log control unit 73 determines that the update information is within 100 cases and before the transaction ID is switched (that is, all the update information with the same transaction ID set). ) Set the same reflection ID. For example, the update log control unit 73 issues reflection IDs in order from 1. For example, when the transaction ID of the update information of the 90th to 98th items (trigger ID “90” to “98”) is “10” and the transaction ID of the update information of the 99th to 104th items is “11”, The update log control unit 73 sets the same reflection ID (for example, “1”) for the update information of the first to 98th items, and sets the update information of the first to 98th items for which the reflection ID “1” is set as one update information. Determine as a group. In addition, the next reflection ID (for example, “2”) is set in the update information after the 99th (less than the 199th), and a plurality of pieces of update information with the reflection ID “2” are set as the next update information group. decide. In this way, the update log control unit 73 assigns a reflection ID to each update information in the update log intermediate table A81 based on the unit number of update information.

つまり、aさんの銀行口座からbさんの銀行口座へ10万円を移動する処理の場合、aさんの銀行口座の金額から10万円を引く処理と、bさんの銀行口座の金額に10万円を加える処理と、のそれぞれに基づいて抽出された各更新情報には、同じトランザクションIDが設定されるとともに、同じ反映IDが設定される。   That is, in the process of moving 100,000 yen from Mr. a's bank account to Mr. b's bank account, the process of subtracting 100,000 yen from the amount of Mr. a's bank account and the amount of Mr. b's bank account to 100,000 The same transaction ID and the same reflection ID are set for each update information extracted based on the process of adding a circle.

また、更新ログ制御部73は、予め件数設定がされていない場合、転送条件として予め設定された時間まで同じ反映IDを設定する(ステップS44)。例えば、更新ログ制御部73は、予め設定された時間が「1秒」である場合に、更新ログ中間テーブルA81の時刻を参照して、1秒以内かつトランザクションIDが切り替わる前の更新情報までに同じ反映IDを設定する。このように、更新ログ制御部73は、時間インターバル単位に基づいて、更新ログ中間テーブルA81の各更新情報に反映IDを割り当てることもできる。   In addition, when the number of cases is not set in advance, the update log control unit 73 sets the same reflection ID until a time set in advance as a transfer condition (step S44). For example, when the preset time is “1 second”, the update log control unit 73 refers to the time in the update log intermediate table A81 until the update information within 1 second and before the transaction ID is switched. Set the same reflection ID. In this way, the update log control unit 73 can also assign a reflection ID to each update information in the update log intermediate table A81 based on the time interval unit.

次に、マスターサーバ11が、更新ログ中間テーブルA81に記憶された更新情報をスレーブサーバ12へ転送する処理について説明する。更新ログ転送部74は、更新ログ抽出部72が抽出し、更新ログ制御部73が決定した更新情報群を、レプリカDB22へ、一度のタイミングで転送する処理を行う。   Next, a process in which the master server 11 transfers update information stored in the update log intermediate table A81 to the slave server 12 will be described. The update log transfer unit 74 performs a process of transferring the update information group extracted by the update log extraction unit 72 and determined by the update log control unit 73 to the replica DB 22 at a single timing.

まず、更新ログ転送部74は、更新ログ中間テーブルA81を参照する。件数設定がされている場合には、更新ログ転送部74は、設定された件数未満(または以上)かつ反映IDが切り替わる前までの更新情報を取得する。設定された件数が100件ならば、更新ログ転送部74は、例えば1〜98件目の更新情報を取得する。なお、更新ログ制御部73が読み出す予め設定された件数(例えば上述した100件)と、更新ログ転送部74が読み出す予め設定された件数とは異なる値(例えば1000件)でもよい。なお、更新ログ転送部74は、件数設定がされていない場合には、更新ログ中間テーブルA81に格納された全ての更新情報を取得する。   First, the update log transfer unit 74 refers to the update log intermediate table A81. When the number of cases is set, the update log transfer unit 74 acquires update information that is less than the set number (or more) and before the reflection ID is switched. If the set number is 100, the update log transfer unit 74 acquires update information of the 1st to 98th cases, for example. Note that the preset number of records read by the update log control unit 73 (for example, 100 cases described above) and the preset number of cases read by the update log transfer unit 74 may be different values (for example, 1000). The update log transfer unit 74 acquires all the update information stored in the update log intermediate table A81 when the number of cases is not set.

そして、更新ログ転送部74は、通信部44と通信網13とを介して、スレーブサーバ12へ、取得した更新情報を転送する。スレーブサーバ12は、通信部53を介して、更新情報を受信すると、記憶部52の更新ログ中間テーブルB101に更新情報を記憶する。なお、更新ログ中間テーブルB101は、更新ログ中間テーブルA81と同じ構成である。続いて、マスターサーバ11の更新ログ転送部74は、更新ログ反映部91へ反映処理を指示する。さらに、更新ログ転送部74は、転送した更新情報(を含むレコード)を更新ログ中間テーブルA81から削除する。   Then, the update log transfer unit 74 transfers the acquired update information to the slave server 12 via the communication unit 44 and the communication network 13. When the slave server 12 receives the update information via the communication unit 53, the slave server 12 stores the update information in the update log intermediate table B101 of the storage unit 52. The update log intermediate table B101 has the same configuration as the update log intermediate table A81. Subsequently, the update log transfer unit 74 of the master server 11 instructs the update log reflection unit 91 to perform reflection processing. Further, the update log transfer unit 74 deletes the transferred update information (including the record) from the update log intermediate table A81.

このように、同じ反映IDが設定された更新情報(すなわち同じトランザクションIDが設定された更新情報)を一度のタイミングで転送するので、マスタDB21に対して行った更新のトランザクション処理の一貫性を保証したまま、更新情報をスレーブサーバ12へ転送することができる。   In this way, update information set with the same reflection ID (that is, update information set with the same transaction ID) is transferred at a single timing, so that consistency of update transaction processing performed on the master DB 21 is guaranteed. As it is, the update information can be transferred to the slave server 12.

次に、スレーブサーバ12が、更新ログ中間テーブルB101に記憶された更新情報をレプリカDB22へ反映する処理について説明する。   Next, a process in which the slave server 12 reflects the update information stored in the update log intermediate table B101 to the replica DB 22 will be described.

マスターサーバ11の更新ログ転送部74により反映処理が指示されると、更新ログ反映部91は、まず反映処理がロックされているか否かを判定する。反映処理は、後述する一括反映処理を行う場合にロックされる。反映処理がロックされている場合には、更新ログ転送部74は、反映処理のロックが解除されるまで待機する。反映処理がロックされていないと判定した場合、更新ログ反映部91は、更新ログ中間テーブルB101を参照し、更新情報が記憶されている場合には、トランザクション処理を開始する。そして、更新ログ反映部91は、更新ログ中間テーブルB101に記憶された更新情報をレプリカDB22へ反映する。具体的には、更新ログ反映部91は、同じトランザクションIDが設定された更新情報を一度に取得し、レプリカDB22に記憶された複製データを更新する。例えば、aさんの銀行口座からbさんの銀行口座へ10万円を移動する処理の場合、aさんの銀行口座の金額から10万円を引く処理と、bさんの銀行口座の金額に10万円を加える処理と、のそれぞれに基づいて抽出された各更新情報は一度のタイミングで取得され、レプリカDB22が更新される。   When the reflection process is instructed by the update log transfer unit 74 of the master server 11, the update log reflection unit 91 first determines whether or not the reflection process is locked. The reflection process is locked when performing a batch reflection process described later. If the reflection process is locked, the update log transfer unit 74 waits until the lock of the reflection process is released. When it is determined that the reflection process is not locked, the update log reflection unit 91 refers to the update log intermediate table B101, and starts update transaction processing when update information is stored. Then, the update log reflecting unit 91 reflects the update information stored in the update log intermediate table B101 to the replica DB 22. Specifically, the update log reflection unit 91 acquires update information in which the same transaction ID is set at one time, and updates the replicated data stored in the replica DB 22. For example, in the process of moving 100,000 yen from Mr. a's bank account to Mr. b's bank account, the process of subtracting 100,000 yen from the amount of Mr. a's bank account, and the amount of Mr. b's bank account to 100,000 Each update information extracted based on each of the process of adding a circle is acquired at a single timing, and the replica DB 22 is updated.

更新ログ反映部91は、レプリカDB22に対する更新情報の反映に成功した場合に、トランザクション処理の成功を出力する。これにより、レプリカDB22に対する更新のトランザクション処理の一貫性を保証することができる。   The update log reflection unit 91 outputs the success of the transaction process when the update information is successfully reflected on the replica DB 22. As a result, it is possible to guarantee the consistency of the update transaction processing for the replica DB 22.

一方、更新ログ反映部91は、レプリカDB22に対する更新情報の反映に失敗した場合に、ロールバックを行う。例えば、スレーブサーバ12の負荷が増加することにより、更新情報の反映に失敗することがある。このように更新情報の反映に失敗した場合には、更新ログ反映部91は、再度レプリカDB22に対して更新情報を反映する処理を行う。ロールバックを繰り返しても(例えば予め設定された回数以上ロールバックを行っても)レプリカDB22に対する更新情報の反映に成功しなかった場合、更新ログ反映部91は、トランザクション処理の失敗を出力する。そして、更新ログ反映部91は、一括反映実行部93へ一括反映処理を指示する。   On the other hand, the update log reflection unit 91 performs rollback when the update information is not reflected on the replica DB 22. For example, when the load on the slave server 12 increases, reflection of update information may fail. When the update information reflection fails in this way, the update log reflection unit 91 performs the process of reflecting the update information to the replica DB 22 again. If the update information is not successfully reflected on the replica DB 22 even if the rollback is repeated (for example, the rollback is performed more than a preset number of times), the update log reflection unit 91 outputs a transaction processing failure. Then, the update log reflection unit 91 instructs the batch reflection execution unit 93 to perform batch reflection processing.

ここで、スレーブサーバ12が、レプリカDB22に対して更新情報を一括反映させる場合の処理について説明する。まず、一括反映制御部92は、予め設定されたタイミングで(例えば定期的に)、スレーブサーバ12のCPU等の負荷を取得し、取得した負荷の値が予め設定された閾値未満である場合に、一括反映処理を開始する。なお、一括反映制御部92は、更新ログ中間テーブルB101に記憶された更新情報(レコード)の数が予め設定された閾値未満である場合に、一括反映処理を開始することもできる。   Here, processing when the slave server 12 reflects update information to the replica DB 22 in a batch will be described. First, the batch reflection control unit 92 acquires the load of the CPU of the slave server 12 at a preset timing (for example, periodically), and the acquired load value is less than a preset threshold value. , Start the batch reflection process. The batch reflection control unit 92 can also start batch reflection processing when the number of update information (records) stored in the update log intermediate table B101 is less than a preset threshold.

一括反映処理を開始する場合、一括反映制御部92は、上述した反映処理をロックする。なお、一括反映制御部92は、反映処理が実行中の場合には、反映処理が終了するまで待機し、反映処理が終了した時にロックする。反映処理をロックした後、一括反映制御部92は、更新ログ反映部91により反映に失敗した更新情報に基づいて、一括反映するテーブル情報を取得する。例えば、一括反映制御部92は、更新情報の更新元となるデータベース自体の情報を取得する。このテーブル情報は、更新ログ中間テーブルB101に記憶された更新情報に含まる「対象テーブル」により特定することができる。そして、一括反映制御部92は、一括反映実行部93に反映処理の実行を指示する。   When starting the batch reflection process, the batch reflection control unit 92 locks the reflection process described above. If the reflection process is being executed, the batch reflection control unit 92 waits until the reflection process is completed, and locks when the reflection process is completed. After locking the reflection process, the batch reflection control unit 92 acquires table information to be batch reflected based on the update information that failed to be reflected by the update log reflection unit 91. For example, the batch reflection control unit 92 acquires information on the database itself that is the update source of the update information. This table information can be specified by the “target table” included in the update information stored in the update log intermediate table B101. Then, the batch reflection control unit 92 instructs the batch reflection execution unit 93 to execute the reflection process.

続いて、一括反映実行部93は、一括反映制御部92が取得した一括反映するテーブル情報を、通信部53と通信網13とを介して、マスターサーバ11のテーブル取得部75へ送信する。なお、スレーブサーバ12からテーブル情報を送信することで、レプリカDB22に対する更新情報の反映に失敗したことがマスターサーバ11へ通知される。そして、テーブル取得部75は、受信したテーブル情報にて示されるテーブル(データベース)自体(全体)をマスタDB21から取得する。例えば、aさんの銀行口座からbさんの銀行口座へ10万円を移動する処理の場合、テーブル取得部75は、aさんの銀行口座の情報を含むデータベースと、bさんの銀行口座の情報を含むデータベースとのそれぞれを取得する。続いて、テーブル取得部75は、取得したテーブルそのものを、通信部44と通信網13とを介して、スレーブサーバ12の一括反映実行部93へ転送する。そして、一括反映実行部93は、受信したテーブルをレプリカDB22に反映する。すなわち、一括反映実行部93は、レプリカDB22に記憶されたテーブル全体を、受信したテーブルに置き換える。これにより、スレーブサーバ12に対する負荷が大きく、更新情報の反映処理に失敗した場合でも、スレーブサーバ12に対する負荷が小さくなった時に、一括して更新情報の反映処理を行うので、確実にレプリケーション処理を実行することができる。   Subsequently, the batch reflection execution unit 93 transmits the table information to be batch reflected acquired by the batch reflection control unit 92 to the table acquisition unit 75 of the master server 11 via the communication unit 53 and the communication network 13. In addition, by transmitting table information from the slave server 12, the master server 11 is notified that the update information has not been reflected in the replica DB 22. And the table acquisition part 75 acquires table (database) itself (whole) shown with the received table information from master DB21. For example, in the process of moving 100,000 yen from Mr. a's bank account to Mr. b's bank account, the table acquisition unit 75 stores a database including information on Mr. a's bank account and information on Mr. b's bank account. Get each with the containing database. Subsequently, the table acquisition unit 75 transfers the acquired table itself to the batch reflection execution unit 93 of the slave server 12 via the communication unit 44 and the communication network 13. Then, the batch reflection execution unit 93 reflects the received table on the replica DB 22. That is, the batch reflection execution unit 93 replaces the entire table stored in the replica DB 22 with the received table. As a result, even if the load on the slave server 12 is large and the update information reflection process fails, the update information reflection process is performed collectively when the load on the slave server 12 becomes small. Can be executed.

また、一括反映実行部93は、一括反映を開始する開始時刻を記録しておき、一括反映処理が終了した場合に、更新ログ中間テーブルB101から開始時刻より前の時刻が設定された、一括反映したテーブルに含まれる更新情報を削除する。これにより、一括反映処理は終了するので、一括反映制御部92は、更新ログ反映部91へ反映処理のロックの解除を通知する。そして、更新ログ反映部91は、反映処理のロックの解除が通知されると、再び反映処理を実行する。   Further, the batch reflection execution unit 93 records the start time for starting batch reflection, and when the batch reflection processing ends, the batch reflection in which the time before the start time is set from the update log intermediate table B101. Delete the update information contained in the updated table. As a result, the batch reflection process ends, and the batch reflection control unit 92 notifies the update log reflection unit 91 of the release of the lock of the reflection process. Then, when the update log reflection unit 91 is notified of the lock release of the reflection process, the update log reflection unit 91 executes the reflection process again.

このように、更新ログ制御部73の反映IDの設定と、更新ログ転送部74の転送タイミングの設定と、により更新情報を転送するタイミングを細かく任意に調節した運用が可能である。また、一括反映制御部92は、更新ログ反映部91による反映が失敗した場合、スレーブサーバ12の負荷が比較的小さい時に、更新情報を一括して反映するので、データベースの整合性の保証をとることができる。従って、マスタDB21に対して行われた更新のトランザクション処理の一貫性をレプリカDB22において保証することができる。   As described above, the operation of finely and arbitrarily adjusting the timing of transferring update information by setting the reflection ID of the update log control unit 73 and the transfer timing of the update log transfer unit 74 is possible. In addition, when the reflection by the update log reflection unit 91 fails, the batch reflection control unit 92 reflects the update information at a time when the load on the slave server 12 is relatively small, so that the consistency of the database is guaranteed. be able to. Therefore, the consistency of the update transaction processing performed on the master DB 21 can be guaranteed in the replica DB 22.

[動作]
次に、図6乃至図11を参照して、上述した情報処理システム1の動作について詳細に説明する。図6は、更新処理を説明するためのフローチャートである。図7は、更新ログ抽出処理を説明するためのフローチャートである。図8は、更新情報制御処理を説明するためのフローチャートである。図9は、更新情報転送処理を説明するためのフローチャートである。図10は、反映処理を説明するためのフローチャートである。図11は、一括反映処理を説明するためのフローチャートである。
[Operation]
Next, the operation of the above-described information processing system 1 will be described in detail with reference to FIGS. FIG. 6 is a flowchart for explaining the update process. FIG. 7 is a flowchart for explaining the update log extraction processing. FIG. 8 is a flowchart for explaining the update information control process. FIG. 9 is a flowchart for explaining the update information transfer process. FIG. 10 is a flowchart for explaining the reflection process. FIG. 11 is a flowchart for explaining the batch reflection process.

最初に、図6と図7を参照して、更新部71の更新処理と、更新ログ抽出部72の更新ログ抽出処理について説明する。まず、図6の更新処理では、更新部71が、トランザクション処理を開始する(ステップS1)。続いて、更新部71は、データベース反映情報を取得する(ステップS2)。そして、更新部71は、マスタDB21に記憶されたマスターデータの更新を開始する(ステップS3)。   First, the update process of the update unit 71 and the update log extraction process of the update log extraction unit 72 will be described with reference to FIGS. First, in the update process of FIG. 6, the update unit 71 starts a transaction process (step S1). Subsequently, the update unit 71 acquires database reflection information (step S2). And the update part 71 starts the update of the master data memorize | stored in master DB21 (step S3).

続いて、更新部71は、更新ログ抽出部72へトリガを発行する(ステップS4)。
更新部71が発行したトリガを受信することにより、更新ログ抽出部72は、図7の更新ログ抽出処理を開始する。次に、更新部71は、更新が完了したか否かを判定する(ステップS5)。更新が完了していないと判定した場合(ステップS5:No)、すなわち、まだデータベース反映情報が存在する場合、処理はステップS2に戻り、それ以降の処理が繰り返される。一方、更新が完了したと判定した場合(ステップS5:Yes)、更新部71は、更新完了を更新ログ抽出部72へ通知する(ステップS6)。
Subsequently, the update unit 71 issues a trigger to the update log extraction unit 72 (step S4).
Upon receiving the trigger issued by the update unit 71, the update log extraction unit 72 starts the update log extraction process of FIG. Next, the update unit 71 determines whether or not the update is completed (step S5). When it is determined that the update has not been completed (step S5: No), that is, when the database reflection information still exists, the process returns to step S2, and the subsequent processes are repeated. On the other hand, when it is determined that the update has been completed (step S5: Yes), the update unit 71 notifies the update log extraction unit 72 of the completion of the update (step S6).

ここで、図7を参照して、更新ログ抽出部72の更新ログ抽出処理について説明する。図7の更新ログ抽出処理では、まず、更新ログ抽出部72が、図6のステップS4の処理にて発行されたトリガを受け付ける(ステップS21)。続いて、更新ログ抽出部72は、マスタDB21に記憶された更新前のマスターデータと、更新情報に基づいて更新された更新後のマスターデータと、に基づいて、更新情報(更新ログ)を生成(抽出)する(ステップS22)。   Here, the update log extraction processing of the update log extraction unit 72 will be described with reference to FIG. In the update log extraction process of FIG. 7, first, the update log extraction unit 72 receives the trigger issued in the process of step S4 of FIG. 6 (step S21). Subsequently, the update log extraction unit 72 generates update information (update log) based on the master data before update stored in the master DB 21 and the updated master data updated based on the update information. (Extract) (Step S22).

そして、更新ログ抽出部72は、ステップS22の処理にて生成した更新情報を更新ログ中間テーブルA81に記憶する(ステップS23)。次に、更新ログ抽出部72は、図6のステップS6の処理にて更新部71から出力される更新完了通知を受信したか否かを判定する(ステップS24)。更新完了通知を受信していないと判定した場合(ステップS24:No)、処理はステップS21に戻り、それ以降の処理を繰り返す。   Then, the update log extraction unit 72 stores the update information generated in the process of step S22 in the update log intermediate table A81 (step S23). Next, the update log extraction unit 72 determines whether or not an update completion notification output from the update unit 71 has been received in the process of step S6 of FIG. 6 (step S24). If it is determined that the update completion notification has not been received (step S24: No), the process returns to step S21 and the subsequent processes are repeated.

一方、更新完了通知を受信したと判定した場合(ステップS24:Yes)、更新ログ抽出部72は、全ての更新情報を記憶したか否かを判定する(ステップS25)。全ての更新情報を記憶していないと判定した場合(ステップS25:No)、処理はステップS21に戻り、それ以降の処理を繰り返す。   On the other hand, if it is determined that an update completion notification has been received (step S24: Yes), the update log extraction unit 72 determines whether all update information has been stored (step S25). If it is determined that not all update information is stored (step S25: No), the process returns to step S21 and the subsequent processes are repeated.

一方、全ての更新情報を記憶したと判定した場合(ステップS25:Yes)、すなわち、同一のトランザクション内で生成した更新情報全てを更新ログ中間テーブルA81へ記憶した場合、更新ログ抽出部72は、記憶完了を更新部71へ通知する(ステップS26)。ステップS26の処理の後、更新ログ抽出処理は終了する。これにより、トランザクション処理によりマスタDB21を更新するとともに、マスタDB21の更新情報を抽出することができる。   On the other hand, when it is determined that all the update information has been stored (step S25: Yes), that is, when all the update information generated within the same transaction is stored in the update log intermediate table A81, the update log extraction unit 72 The storage completion is notified to the update unit 71 (step S26). After the process of step S26, the update log extraction process ends. Thereby, while updating master DB21 by transaction processing, update information of master DB21 can be extracted.

次に、図6のステップS7において、更新部71は、図7のステップS26の処理にて通知された記憶完了を受信する(ステップS7)。そして、更新部71は、トランザクション処理の成功を出力する(ステップS8)。ステップS8の処理の後、更新処理は終了する。   Next, in step S7 of FIG. 6, the updating unit 71 receives the storage completion notified in the process of step S26 of FIG. 7 (step S7). Then, the update unit 71 outputs the success of the transaction process (Step S8). After the process of step S8, the update process ends.

次に、図8を参照して、更新ログ制御部73の更新ログ制御処理について説明する。更新ログ制御処理は、更新部71の動作とは独立して動作する。   Next, the update log control process of the update log control unit 73 will be described with reference to FIG. The update log control process operates independently of the operation of the update unit 71.

まず、更新ログ制御部73は、更新ログ中間テーブルA81を参照して、反映IDが未設定の更新情報が存在するか否かを判定する(ステップS41)。反映IDが未設定の更新情報が存在しないと判定した場合(ステップS41:No)、処理はステップS41に戻り、同様の処理が繰り返される。一方、反映IDが未設定の更新情報が存在すると判定した場合(ステップS41:Yes)、更新ログ制御部73は、件数設定がされているか否かを判定する(ステップS42)。   First, the update log control unit 73 refers to the update log intermediate table A81 to determine whether there is update information for which no reflection ID is set (step S41). If it is determined that there is no update information for which no reflection ID is set (step S41: No), the process returns to step S41, and the same process is repeated. On the other hand, when it is determined that there is update information for which the reflection ID is not set (step S41: Yes), the update log control unit 73 determines whether or not the number of cases is set (step S42).

件数設定がされていると判定された場合(ステップS42:Yes)、更新ログ制御部73は、設定された件数まで反映IDを設定する(ステップS43)。具体的には、更新ログ制御部73は、設定された件数が100件ならば、100件以内かつトランザクションIDが切り替わる前の更新情報までに同じ反映IDを設定する。更新ログ制御部73は、例えば、1から順番に反映IDを発行する。また、トランザクションIDが同じ更新情報には、同じ反映IDを設定する。例えば、90〜98件目の更新情報のトランザクションIDが「10」であり、99〜104件目の更新情報のトランザクションIDが「11」である場合、更新ログ制御部73は、1〜98件目の更新情報に同じ反映IDを設定する。   When it is determined that the number of cases has been set (step S42: Yes), the update log control unit 73 sets the reflection ID up to the set number (step S43). Specifically, if the number of set cases is 100, the update log control unit 73 sets the same reflection ID within 100 cases and the update information before the transaction ID is switched. For example, the update log control unit 73 issues reflection IDs in order from 1. Also, the same reflection ID is set for update information having the same transaction ID. For example, when the transaction ID of the 90th to 98th update information is “10” and the transaction ID of the 99th to 104th update information is “11”, the update log control unit 73 sets 1 to 98 cases. The same reflection ID is set for the update information of the eye.

一方、件数設定がされていないと判定された場合(ステップS42:No)、更新ログ制御部73は、予め設定された時間まで反映IDを設定する(ステップS44)。例えば、更新ログ制御部73は、予め設定された時間が「1秒」である場合に、更新ログ中間テーブルA81の時刻を参照して、1秒以内かつトランザクションIDが切り替わる前の更新情報までに同じ反映IDを設定する。   On the other hand, when it is determined that the number of cases has not been set (step S42: No), the update log control unit 73 sets the reflection ID until a preset time (step S44). For example, when the preset time is “1 second”, the update log control unit 73 refers to the time in the update log intermediate table A81 until the update information within 1 second and before the transaction ID is switched. Set the same reflection ID.

ステップS43,S44の処理の後、処理はステップS41に戻り、それ以降の処理が繰り返される。このように、更新ログ制御部73は、更新情報の件数単位、または、時間インターバル単位に基づいて、更新ログ中間テーブルA81の各更新情報に反映IDを割り当てる。   After the processes in steps S43 and S44, the process returns to step S41, and the subsequent processes are repeated. In this manner, the update log control unit 73 assigns a reflection ID to each update information in the update log intermediate table A81 based on the number of update information items or the time interval unit.

次に、図9を参照して、更新ログ転送部74の更新ログ転送処理について説明する。更新ログ転送処理は、予め設定されたタイミング(例えば定期的)に開始する。   Next, the update log transfer process of the update log transfer unit 74 will be described with reference to FIG. The update log transfer process starts at a preset timing (for example, periodically).

まず、更新ログ転送部74は、更新ログ中間テーブルA81を参照して、更新情報が存在するか否かを判定する(ステップS61)。更新情報が存在すると判定した場合(ステップS61:Yes)、更新ログ転送部74は、件数設定がされているか否かを判定する(ステップS62)。件数設定がされていると判定した場合(ステップS62:Yes)、更新ログ転送部74は、設定された件数以上の更新情報が存在するか否かを判定する(ステップS63)。   First, the update log transfer unit 74 refers to the update log intermediate table A81 and determines whether update information exists (step S61). When it is determined that update information exists (step S61: Yes), the update log transfer unit 74 determines whether or not the number of cases is set (step S62). When it is determined that the number of cases is set (step S62: Yes), the update log transfer unit 74 determines whether there is update information equal to or more than the set number (step S63).

ステップS62の処理にて件数設定がされていないと判定した場合(ステップS62:No)、および、ステップS63の処理にて設定された件数以上の更新情報が存在しないと判定した場合(ステップS63:No)、更新ログ転送部74は、更新ログ中間テーブルA81に格納された全ての更新情報を取得する(ステップS64)。一方、ステップS63の処理にて設定された件数以上の更新情報が存在すると判定した場合(ステップS63:Yes)、転送する更新情報を取得する(ステップS65)。具体的には、更新ログ転送部74は、設定された件数以上(または未満)かつ反映IDが切り替わる前までの更新情報を取得する。   When it is determined that the number of cases is not set in the process of step S62 (step S62: No), and when it is determined that there is no update information greater than the number of cases set in the process of step S63 (step S63: No), the update log transfer unit 74 acquires all the update information stored in the update log intermediate table A81 (step S64). On the other hand, if it is determined that there are more update information than the number set in the process of step S63 (step S63: Yes), the update information to be transferred is acquired (step S65). Specifically, the update log transfer unit 74 acquires update information that is greater than or equal to the set number (or less) and before the reflection ID is switched.

そして、更新ログ転送部74は、ステップS64,S65の処理にて取得した更新情報を更新ログ中間テーブルB101へ転送する(ステップS66)。なお、更新ログ中間テーブルB101は、更新ログ中間テーブルA81と同じ構成であり、図5に示すものと同一である。続いて、更新ログ転送部74は、更新ログ反映部91へ反映処理を指示する(ステップS67)。反映処理については図10を参照して後述する。次に、更新ログ転送部74は、転送した更新情報(を含むレコード)を更新ログ中間テーブルA81から削除する(ステップS68)。   Then, the update log transfer unit 74 transfers the update information acquired in the processes of steps S64 and S65 to the update log intermediate table B101 (step S66). The update log intermediate table B101 has the same configuration as the update log intermediate table A81 and is the same as that shown in FIG. Subsequently, the update log transfer unit 74 instructs the update log reflection unit 91 to perform reflection processing (step S67). The reflection process will be described later with reference to FIG. Next, the update log transfer unit 74 deletes the transferred update information (including records) from the update log intermediate table A81 (step S68).

そして、更新ログ転送部74は、予め設定された時間待機し(ステップS69)、その後、ステップS61以降の処理を繰り返す。また、ステップS61の処理にて更新情報が存在しないと判定した場合(ステップS61:No)にも、更新ログ転送部74は、予め設定された時間待機する(ステップS69)。   Then, the update log transfer unit 74 waits for a preset time (step S69), and then repeats the processing after step S61. Even when it is determined in the process of step S61 that there is no update information (step S61: No), the update log transfer unit 74 waits for a preset time (step S69).

次に、図10を参照して、更新ログ反映部91の反映処理について説明する。反映処理は、更新ログ転送部74により反映処理が指示されたとき(例えば図9のステップS67)に開始する。   Next, the reflection process of the update log reflection unit 91 will be described with reference to FIG. The reflection process starts when the update log transfer unit 74 instructs the reflection process (for example, step S67 in FIG. 9).

まず、更新ログ反映部91は、反映処理がロックされているか否かを判定する(ステップS81)。反映処理は、後述する一括反映処理を行う場合にロックされる。一括反映処理については図11を参照して後述する。反映処理がロックされていないと判定した場合(ステップS81:No)、更新ログ反映部91は、更新ログ中間テーブルB101に更新情報が存在するか否かを判定する(ステップS82)。   First, the update log reflection unit 91 determines whether the reflection process is locked (step S81). The reflection process is locked when performing a batch reflection process described later. The batch reflection process will be described later with reference to FIG. When it is determined that the reflection process is not locked (step S81: No), the update log reflection unit 91 determines whether update information exists in the update log intermediate table B101 (step S82).

更新情報が存在すると判定した場合(ステップS82:Yes)、更新ログ反映部91は、トランザクション処理を開始する(ステップS83)。そして、更新ログ反映部91は、更新ログ中間テーブルB101に記憶された更新情報をレプリカDB22へ反映する(ステップS84)。具体的には、更新ログ反映部91は、同じトランザクションIDが設定された更新情報をレプリカDB22へ反映し、レプリカDB22に記憶された複製データを更新する。   If it is determined that update information exists (step S82: Yes), the update log reflection unit 91 starts transaction processing (step S83). Then, the update log reflecting unit 91 reflects the update information stored in the update log intermediate table B101 to the replica DB 22 (Step S84). Specifically, the update log reflecting unit 91 reflects the update information in which the same transaction ID is set in the replica DB 22 and updates the replicated data stored in the replica DB 22.

続いて、更新ログ反映部91は、反映に成功したか否かを判定する(ステップS85)。反映に成功したと判定した場合(ステップS85:Yes)、更新ログ反映部91は、トランザクション処理の成功を出力する(ステップS86)。これにより、レプリカDB22に対する更新情報の反映を確定することができる。そして、更新ログ反映部91は、更新ログ中間テーブルB101から、反映した更新情報(を含むレコード)を削除する(ステップS87)。ステップS87の処理の後、処理はステップS81に戻り、それ以降の処理が繰り返される。   Subsequently, the update log reflection unit 91 determines whether the reflection is successful (step S85). When it is determined that the reflection is successful (step S85: Yes), the update log reflection unit 91 outputs the success of the transaction process (step S86). Thereby, reflection of the update information with respect to the replica DB 22 can be confirmed. Then, the update log reflection unit 91 deletes the reflected update information (including the record) from the update log intermediate table B101 (step S87). After the process of step S87, the process returns to step S81, and the subsequent processes are repeated.

一方、ステップS85の処理にて反映に成功していないと判定した場合(ステップS85:No)、更新ログ反映部91は、ロールバック回数が予め設定された閾値以上であるか否かを判定する(ステップS88)。ロールバック回数が閾値以上でないと判定した場合(ステップS88:No)、更新ログ反映部91は、ロールバックを行う(ステップS89)。そして、ステップS89の処理の後、処理はステップS84に戻り、再度更新情報の反映を行う。   On the other hand, when it is determined in the process of step S85 that the reflection is not successful (step S85: No), the update log reflection unit 91 determines whether or not the number of rollbacks is equal to or greater than a preset threshold value. (Step S88). When it is determined that the number of rollbacks is not equal to or greater than the threshold (step S88: No), the update log reflecting unit 91 performs rollback (step S89). Then, after the process of step S89, the process returns to step S84 and the update information is reflected again.

一方、ステップS88においてロールバック回数が閾値以上であると判定した場合(ステップS88:Yes)、更新ログ反映部91は、トランザクション処理の失敗を出力する(ステップS90)。そして、更新ログ反映部91は、一括反映実行部93へ一括反映処理を指示する(ステップS91)。一括反映処理については図11を参照して説明する。ステップS91の処理の後、処理はステップS81に戻り、それ以降の処理が繰り返される。   On the other hand, when it is determined in step S88 that the number of rollbacks is equal to or greater than the threshold (step S88: Yes), the update log reflection unit 91 outputs a transaction processing failure (step S90). Then, the update log reflection unit 91 instructs the batch reflection execution unit 93 to perform batch reflection processing (step S91). The batch reflection process will be described with reference to FIG. After the process of step S91, the process returns to step S81, and the subsequent processes are repeated.

また、ステップS81の処理にて反映処理がロックされていると判定した場合(ステップS81:Yes)、および、ステップS82の処理にて更新情報が存在しないと判定した場合(ステップS82:No)には、図10の反映処理は終了する。   Further, when it is determined that the reflection process is locked in the process of step S81 (step S81: Yes), and when it is determined that the update information does not exist in the process of step S82 (step S82: No). The reflection process in FIG. 10 ends.

次に、図11を参照して、一括反映処理について説明する。まず、一括反映制御部92は、予め設定されたタイミングで(例えば定期的に)、スレーブサーバ12のCPUの負荷を表す負荷情報を取得する(ステップS111)。続いて、一括反映制御部92は、取得した負荷が予め設定された閾値未満であるか否かを判定する(ステップS112)。取得した負荷が予め設定された閾値未満でない(閾値以上である)と判定した場合(ステップS112:No)、処理はステップS111に戻り、それ以降の処理が繰り返される。   Next, the batch reflection process will be described with reference to FIG. First, the batch reflection control unit 92 acquires load information indicating the CPU load of the slave server 12 at a preset timing (for example, periodically) (step S111). Subsequently, the batch reflection control unit 92 determines whether or not the acquired load is less than a preset threshold value (step S112). If it is determined that the acquired load is not less than a preset threshold value (greater than or equal to the threshold value) (step S112: No), the process returns to step S111, and the subsequent processes are repeated.

一方、ステップS112において、取得した負荷が予め設定された閾値未満である場合(ステップS112:Yes)、一括反映制御部92は、反映処理をロックする(ステップS113)。反映処理をロックした後、更新ログ反映部91により反映に失敗した更新情報に基づいて、一括反映するテーブル情報を取得する(ステップS114)。   On the other hand, when the acquired load is less than the preset threshold value in step S112 (step S112: Yes), the collective reflection control unit 92 locks the reflection process (step S113). After locking the reflection process, the update log reflection unit 91 acquires table information to be collectively reflected based on the update information that failed to be reflected (step S114).

続いて、一括反映実行部93は、一括反映制御部92が取得した一括反映するテーブル情報を、通信部53と通信網13とを介して、マスターサーバ11のテーブル取得部75へ送信する(ステップS115)。マスターサーバ11のテーブル取得部75は、受信したテーブル情報にて示されるテーブル(データベース)自体をマスタDB21から取得する。続いて、テーブル取得部75は、取得したテーブル自体を、通信部44と通信網13とを介して、スレーブサーバ12の一括反映実行部93へ転送する。   Subsequently, the batch reflection execution unit 93 transmits the table information to be batch reflected acquired by the batch reflection control unit 92 to the table acquisition unit 75 of the master server 11 via the communication unit 53 and the communication network 13 (Step S1). S115). The table acquisition unit 75 of the master server 11 acquires the table (database) itself indicated by the received table information from the master DB 21. Subsequently, the table acquisition unit 75 transfers the acquired table itself to the batch reflection execution unit 93 of the slave server 12 via the communication unit 44 and the communication network 13.

そして、一括反映実行部93は、転送されたテーブルを受信し(ステップS116)、レプリカDB22を更新する(ステップS117)。すなわち、一括反映実行部93は、レプリカDB22に記憶されたテーブル全体を、受信したテーブルに置き換える。これにより、スレーブサーバ12に対する負荷が大きく、更新情報の反映処理に失敗した場合でも、スレーブサーバ12に対する負荷が小さくなった時に、一括して更新情報の反映処理を行うので、確実にレプリケーション処理を実行することができる。   Then, the batch reflection execution unit 93 receives the transferred table (step S116), and updates the replica DB 22 (step S117). That is, the batch reflection execution unit 93 replaces the entire table stored in the replica DB 22 with the received table. As a result, even if the load on the slave server 12 is large and the update information reflection process fails, the update information reflection process is performed collectively when the load on the slave server 12 becomes small. Can be executed.

次に、一括反映実行部93は、更新ログ中間テーブルB101(および更新ログ中間テーブルA81)に記憶された更新情報を削除する(ステップS118)。具体的には、一括反映実行部93は、一括反映を開始する開始時刻を記録しておき、一括反映処理が終了した場合に、更新ログ中間テーブルB101から開始時刻より前の時刻が設定された更新情報を削除する。最後に、一括反映制御部92は、更新ログ反映部91へ反映処理のロックを解除する(ステップS119)。ステップS119の処理の後、一括反映処理は終了する。そして、更新ログ反映部91は、反映処理のロックの解除が通知されると、再び反映処理を実行する。   Next, the batch reflection execution unit 93 deletes the update information stored in the update log intermediate table B101 (and the update log intermediate table A81) (step S118). Specifically, the batch reflection execution unit 93 records the start time for starting batch reflection, and when the batch reflection processing is completed, a time before the start time is set from the update log intermediate table B101. Delete update information. Finally, the batch reflection control unit 92 unlocks the reflection process to the update log reflection unit 91 (step S119). After the process of step S119, the batch reflection process ends. Then, when the update log reflection unit 91 is notified of the lock release of the reflection process, the update log reflection unit 91 executes the reflection process again.

なお、本実施形態において、レプリカDB22(スレーブサーバ12)が複数ある場合、マスターサーバ11の更新ログ中間テーブルA81をレプリカDB22の数だけ複数用意する。そして、更新ログ抽出部72は、更新部71によりトリガが発行された時に、複数の更新ログ中間テーブルのそれぞれへ同時に書き込みを行う。そして、更新ログ転送部74は、それぞれのレプリカDB22単位で更新情報を転送する。このように、レプリカDB22を複数台用意し遠隔地に分ける場合などには、転送のタイミングを独立させることができる。   In this embodiment, when there are a plurality of replica DBs 22 (slave servers 12), a plurality of update log intermediate tables A81 of the master server 11 are prepared as many as the number of replica DBs 22. Then, the update log extraction unit 72 simultaneously writes to each of the plurality of update log intermediate tables when a trigger is issued by the update unit 71. Then, the update log transfer unit 74 transfers the update information for each replica DB 22 unit. As described above, when a plurality of replica DBs 22 are prepared and divided into remote locations, the transfer timing can be made independent.

<第2実施形態>
次に、本発明の第2実施形態に係るマスターサーバについて図12を参照して説明する。
第2実施形態に係るマスターサーバ201(情報処理装置)は、
マスタデータベース(マスタDB)211に対して所定の更新処理を行い、マスタDB211に記憶されたデータベースを更新する更新部212(更新手段)と、
更新部212にて更新したデータベースに基づいて更新情報を抽出する更新ログ抽出部213(更新情報抽出手段)と、
更新ログ抽出部213にて抽出した複数の更新情報を1つの更新情報群に含めて、当該更新情報群を、マスタDB211に記憶されたデータベースの複製データを記憶するレプリカデータベースへ、一度のタイミングで転送する更新ログ転送部214(更新情報転送手段)と、
を備え、
更新ログ転送部214は、関連する複数の更新処理を一連の処理として管理する、同一のトランザクション処理によって更新された複数の更新情報を1つの更新情報群に含めて、当該更新情報群をレプリカデータベースへ、一度のタイミングで転送する。
Second Embodiment
Next, a master server according to the second embodiment of the present invention will be described with reference to FIG.
The master server 201 (information processing apparatus) according to the second embodiment
An update unit 212 (update means) that performs a predetermined update process on the master database (master DB) 211 and updates the database stored in the master DB 211;
An update log extraction unit 213 (update information extraction means) that extracts update information based on the database updated by the update unit 212;
A plurality of update information extracted by the update log extraction unit 213 is included in one update information group, and the update information group is transferred to a replica database that stores replica data of the database stored in the master DB 211 at a single timing. An update log transfer unit 214 (update information transfer means) to transfer,
With
The update log transfer unit 214 manages a plurality of related update processes as a series of processes, includes a plurality of update information updated by the same transaction process in one update information group, and includes the update information group in the replica database. And transfer at once.

上記構成により、更新部212がトランザクション処理によってデータベースを更新した場合に、更新ログ抽出部213は、複数の更新情報を1つの更新情報群に含める。そして、更新ログ転送部214は、更新情報群をレプリカデータベースへ、一度のタイミングで転送する。従って、マスターサーバ201やレプリカデータベース側の装置への負荷を抑制しつつ、マスタDB211に対して行われたトランザクション処理の一貫性をレプリカデータベースにおいて保障することができる。   With the above configuration, when the update unit 212 updates the database by transaction processing, the update log extraction unit 213 includes a plurality of update information in one update information group. Then, the update log transfer unit 214 transfers the update information group to the replica database at a single timing. Therefore, consistency of transaction processing performed on the master DB 211 can be ensured in the replica database while suppressing a load on the master server 201 and the replica database side device.

以上、上記実施形態を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成及び詳細に、本願発明の範囲内において当業者が理解し得る様々な変更をすることができる。   Although the present invention has been described with reference to the above embodiment, the present invention is not limited to the above-described embodiment. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.

<付記>
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における情報処理装置等の構成の概略を説明する。但し、本発明は、以下の構成に限定されない。
<Appendix>
Part or all of the above-described embodiment can be described as in the following supplementary notes. The outline of the configuration of the information processing apparatus and the like in the present invention will be described below. However, the present invention is not limited to the following configuration.

(付記1)
マスタデータベースに対して所定の更新処理を行い、前記マスタデータベースに記憶されたデータベースを更新する更新手段と、
前記更新手段にて更新した前記データベースに基づいて更新情報を抽出する更新情報抽出手段と、
前記更新情報抽出手段にて抽出した複数の前記更新情報を1つの更新情報群に含めて、当該更新情報群を、前記マスタデータベースに記憶された前記データベースの複製データを記憶するレプリカデータベースへ、一度のタイミングで転送する更新情報転送手段と、
を備え、
前記更新情報転送手段は、関連する複数の更新処理を一連の処理として管理する、同一のトランザクション処理によって更新された複数の前記更新情報を1つの前記更新情報群に含めて、当該更新情報群を前記レプリカデータベースへ、一度のタイミングで転送する、
情報処理装置。
(Appendix 1)
Updating means for performing a predetermined update process on the master database and updating the database stored in the master database;
Update information extraction means for extracting update information based on the database updated by the update means;
A plurality of the update information extracted by the update information extraction unit is included in one update information group, and the update information group is once stored in a replica database storing replica data of the database stored in the master database. Update information transfer means for transferring at the timing of
With
The update information transfer means manages a plurality of related update processes as a series of processes, includes a plurality of update information updated by the same transaction process in one update information group, and includes the update information group. Transfer to the replica database at a single timing,
Information processing device.

これによれば、トランザクション処理によってデータベースを更新した場合に、複数の更新情報を1つの更新情報群に含めて、当該更新情報群をレプリカデータベースへ、一度のタイミングで転送するので、情報処理装置やレプリカデータベース側の装置への負荷を抑制しつつ、マスタデータベースに対して行われたトランザクション処理の一貫性をレプリカデータベースにおいて保障することができる。   According to this, when the database is updated by transaction processing, a plurality of update information is included in one update information group, and the update information group is transferred to the replica database at a single timing. It is possible to guarantee the consistency of transaction processing performed on the master database in the replica database while suppressing the load on the replica database side device.

(付記2)
付記1に記載の情報処理装置であって、
予め設定された転送条件に基づいて、同一の前記トランザクション処理によって更新された前記データベースに基づいて抽出した複数の前記更新情報を1つの前記更新情報群に含めるように、当該更新情報群を決定する更新情報制御手段をさらに備え、
前記更新情報転送手段は、前記更新情報制御手段にて決定した1つの前記更新情報群を、前記レプリカデータベースへ、一度のタイミングで転送する、
情報処理装置。
(Appendix 2)
An information processing apparatus according to attachment 1, wherein
Based on a preset transfer condition, the update information group is determined so that the plurality of update information extracted based on the database updated by the same transaction process is included in one update information group. Further comprising update information control means,
The update information transfer means transfers one update information group determined by the update information control means to the replica database at a single timing.
Information processing device.

これによれば、予め設定された転送条件に基づいて、同一のトランザクション処理によって更新されたデータベースに基づいて抽出した複数の更新情報を1つの更新情報群に含めるように、当該更新情報群を決定し、決定した1つの更新情報群を、レプリカデータベースへ、一度のタイミングで転送するので、マスタデータベースに対して行われた更新のトランザクション処理の一貫性を保証した更新情報群を決定し、レプリカデータベースへ転送することができる。従って、更新のトランザクション処理の一貫性をレプリカデータベースにおいて保障することができる。   According to this, based on a preset transfer condition, the update information group is determined so that a plurality of update information extracted based on the database updated by the same transaction process is included in one update information group. Since the determined update information group is transferred to the replica database at a single timing, the update information group that guarantees the consistency of the transaction processing of the update performed on the master database is determined, and the replica database is determined. Can be transferred to. Therefore, the consistency of update transaction processing can be ensured in the replica database.

(付記3)
付記2に記載の情報処理装置であって、
前記更新情報抽出手段は、同一の前記トランザクション処理によって更新された前記データベースに基づいて抽出した複数の前記更新情報のそれぞれに、同じトランザクション識別情報を設定し、
前記更新情報制御手段は、前記更新情報抽出手段にて同じ前記トランザクション識別情報が設定された全ての前記更新情報を含む1つの前記更新情報群を決定する、
情報処理装置。
(Appendix 3)
An information processing apparatus according to appendix 2, wherein
The update information extraction means sets the same transaction identification information to each of the plurality of update information extracted based on the database updated by the same transaction processing,
The update information control means determines one update information group including all the update information in which the same transaction identification information is set by the update information extraction means.
Information processing device.

これによれば、同一のトランザクション処理によって更新されたデータベースに基づいて抽出した複数の更新情報のそれぞれに、同じトランザクション識別情報を設定し、同じトランザクション識別情報が設定された全ての更新情報を含む1つの更新情報群を決定するので、同一のトランザクション処理に基づく更新情報のそれぞれを容易に管理することができ、より確実に更新のトランザクション処理の一貫性をレプリカデータベースにおいて保障することができる。   According to this, the same transaction identification information is set in each of a plurality of update information extracted based on the database updated by the same transaction processing, and all update information in which the same transaction identification information is set is included. Since one update information group is determined, each update information based on the same transaction process can be easily managed, and the consistency of the update transaction process can be more reliably ensured in the replica database.

(付記4)
付記3に記載の情報処理装置であって、
前記更新情報制御手段は、前記更新情報抽出手段にて同じ前記トランザクション識別情報が設定された全ての前記更新情報を含む複数の前記更新情報のそれぞれに同じ転送識別情報を設定し、同じ転送識別情報が設定された複数の前記更新情報を前記更新情報群として決定する、
情報処理装置。
(Appendix 4)
An information processing apparatus according to attachment 3, wherein
The update information control means sets the same transfer identification information to each of the plurality of update information including all the update information for which the same transaction identification information is set by the update information extraction means, and the same transfer identification information A plurality of the update information set as is determined as the update information group,
Information processing device.

これによれば、同じトランザクション識別情報が設定された全ての更新情報を含む複数の更新情報のそれぞれに転送識別情報を設定し、同じ転送識別情報が設定された複数の更新情報を更新情報群として決定するので、レプリカデータベースへ一度のタイミングで転送する更新情報群を容易に管理することができ、より確実に更新のトランザクション処理の一貫性をレプリカデータベースにおいて保障することができる。   According to this, transfer identification information is set for each of a plurality of update information including all update information set with the same transaction identification information, and the plurality of update information set with the same transfer identification information is set as an update information group. Therefore, the update information group transferred to the replica database at a single timing can be easily managed, and the consistency of update transaction processing can be more reliably ensured in the replica database.

(付記5)
付記4に記載の情報処理装置であって、
前記更新情報制御手段は、予め設定された数以下の前記更新情報、または、予め設定された時間内に前記更新情報抽出手段にて抽出した前記更新情報であり、かつ、同じ前記トランザクション識別情報が設定された全ての前記更新情報に同じ前記転送識別情報を設定する、
情報処理装置。
(Appendix 5)
An information processing apparatus according to appendix 4, wherein
The update information control means is the update information equal to or less than a preset number, or the update information extracted by the update information extraction means within a preset time, and the same transaction identification information Set the same transfer identification information for all the set update information,
Information processing device.

これによれば、レプリカデータベースへ一度のタイミングで転送する更新情報の数を制限することができるので、レプリカデータベースを備える他の情報処理装置に対する負荷を抑制することができる。   According to this, since the number of update information transferred to the replica database at a single timing can be limited, it is possible to suppress a load on other information processing apparatuses including the replica database.

(付記6)
付記1乃至5のいずれかに記載の情報処理装置であって、
前記レプリカデータベースを備える他の情報処理装置から、前記レプリカデータベースに対する前記更新情報の反映に失敗したことが通知された場合に、当該更新情報の更新元となる前記データベース自体を前記マスタデータベースから取得し、取得した前記データベース自体を前記レプリカデータベースへ転送するデータベース転送制御手段、
をさらに備える情報処理装置。
(Appendix 6)
An information processing apparatus according to any one of appendices 1 to 5,
When another information processing apparatus including the replica database is notified that the update information is not reflected on the replica database, the database itself that is the update source of the update information is acquired from the master database. Database transfer control means for transferring the acquired database itself to the replica database;
An information processing apparatus further comprising:

これによれば、他の情報処理装置がレプリカデータベースに対する更新情報の反映に失敗した場合に、当該更新情報の更新元となるデータベース自体を取得し、レプリカデータベースへ転送する。従って、他の情報処理装置は、レプリカデータベースに記憶されたデータベースを、転送されたデータベースに置き換えて更新することができるので、簡単な処理によりレプリカデータベースに対する更新漏れを防止し、確実にレプリカデータベースを更新することができる。   According to this, when another information processing apparatus fails to reflect the update information to the replica database, the database itself as the update source of the update information is acquired and transferred to the replica database. Therefore, the other information processing apparatus can replace the database stored in the replica database with the transferred database and update it. Therefore, it is possible to prevent the update of the replica database by a simple process, and to reliably replace the replica database. Can be updated.

(付記7)
情報処理装置に、
マスタデータベースに対して所定の更新処理を行い、前記マスタデータベースに記憶されたデータベースを更新する更新手段と、
前記更新手段にて更新した前記データベースに基づいて更新情報を抽出する更新情報抽出手段と、
前記更新情報抽出手段にて抽出した複数の前記更新情報を1つの更新情報群に含めて、当該更新情報群を、前記マスタデータベースに記憶された前記データベースの複製データを記憶するレプリカデータベースへ、一度のタイミングで転送する更新情報転送手段と、
を実現させるとともに、
前記更新情報転送手段は、関連する複数の更新処理を一連の処理として管理する、同一のトランザクション処理によって更新された複数の前記更新情報を1つの前記更新情報群に含めて、当該更新情報群を前記レプリカデータベースへ、一度のタイミングで転送する、
ことを実現させるためのプログラム。
(Appendix 7)
In the information processing device,
Updating means for performing a predetermined update process on the master database and updating the database stored in the master database;
Update information extraction means for extracting update information based on the database updated by the update means;
A plurality of the update information extracted by the update information extraction unit is included in one update information group, and the update information group is once stored in a replica database storing replica data of the database stored in the master database. Update information transfer means for transferring at the timing of
And realize
The update information transfer means manages a plurality of related update processes as a series of processes, includes a plurality of update information updated by the same transaction process in one update information group, and includes the update information group. Transfer to the replica database at a single timing,
A program to make things happen.

(付記8)
付記7に記載のプログラムであって、
予め設定された転送条件に基づいて、同一の前記トランザクション処理によって更新された前記データベースに基づいて抽出した複数の前記更新情報を1つの前記更新情報群に含めるように、当該更新情報群を決定する更新情報制御手段をさらに備え、
前記更新情報転送手段は、前記更新情報制御手段にて決定した1つの前記更新情報群を、前記レプリカデータベースへ、一度のタイミングで転送する、
プログラム。
(Appendix 8)
The program according to appendix 7,
Based on a preset transfer condition, the update information group is determined so that the plurality of update information extracted based on the database updated by the same transaction process is included in one update information group. Further comprising update information control means,
The update information transfer means transfers one update information group determined by the update information control means to the replica database at a single timing.
program.

(付記9)
マスタデータベースに対して所定の更新処理を行い、前記マスタデータベースに記憶されたデータベースを更新し、
更新した前記データベースに基づいて更新情報を抽出し、
関連する複数の更新処理を一連の処理として管理する、同一のトランザクション処理によって更新された前記データベースに基づいて抽出した複数の前記更新情報を1つの前記更新情報群に含めて、当該更新情報群を、前記マスタデータベースに記憶された前記データベースの複製データを記憶するレプリカデータベースへ、一度のタイミングで転送する、
情報処理方法。
(Appendix 9)
Perform a predetermined update process on the master database, update the database stored in the master database,
Extract update information based on the updated database,
Managing a plurality of related update processes as a series of processes, including a plurality of update information extracted based on the database updated by the same transaction process in one update information group, , Transferred to the replica database storing the replicated data of the database stored in the master database at a single timing,
Information processing method.

(付記10)
付記9に記載の情報処理方法であって、
予め設定された転送条件に基づいて、同一の前記トランザクション処理によって更新された前記データベースに基づいて抽出した複数の前記更新情報を1つの前記更新情報群に含めるように、当該更新情報群を決定し、
決定した1つの前記更新情報群を、前記レプリカデータベースへ、一度のタイミングで転送する、
情報処理方法。
(Appendix 10)
An information processing method according to attachment 9, wherein
Based on a preset transfer condition, the update information group is determined so that the plurality of update information extracted based on the database updated by the same transaction process is included in one update information group. ,
Transferring the determined one update information group to the replica database at a single timing;
Information processing method.

1 情報処理システム
11 マスターサーバ
12 スレーブサーバ
13 通信網
21 マスタDB
22 レプリカDB
41 演算部
42 記憶部
43 入出力部
44 通信部
51 演算部
52 記憶部
53 通信部
71 更新部
72 更新ログ抽出部
73 更新ログ制御部
74 更新ログ転送部
75 テーブル取得部
81 更新ログ中間テーブルA
91 更新ログ反映部
92 一括反映制御部
93 一括反映実行部
101 更新ログ中間テーブルB
201 マスターサーバ
211 マスタDB
212 更新部
213 更新ログ抽出部
214 更新ログ転送部
1 Information processing system 11 Master server 12 Slave server 13 Communication network 21 Master DB
22 Replica DB
41 calculation unit 42 storage unit 43 input / output unit 44 communication unit 51 calculation unit 52 storage unit 53 communication unit 71 update unit 72 update log extraction unit 73 update log control unit 74 update log transfer unit 75 table acquisition unit 81 update log intermediate table A
91 Update log reflection unit 92 Batch reflection control unit 93 Batch reflection execution unit 101 Update log intermediate table B
201 Master server 211 Master DB
212 Update Unit 213 Update Log Extraction Unit 214 Update Log Transfer Unit

Claims (10)

マスタデータベースに対して所定の更新処理を行い、前記マスタデータベースに記憶されたデータベースを更新する更新手段と、
前記更新手段にて更新した前記データベースに基づいて更新情報を抽出する更新情報抽出手段と、
前記更新情報抽出手段にて抽出した複数の前記更新情報を1つの更新情報群に含めて、当該更新情報群を、前記マスタデータベースに記憶された前記データベースの複製データを記憶するレプリカデータベースへ、一度のタイミングで転送する更新情報転送手段と、
を備え、
前記更新情報転送手段は、関連する複数の更新処理を一連の処理として管理する、同一のトランザクション処理によって更新された複数の前記更新情報を1つの前記更新情報群に含めて、当該更新情報群を前記レプリカデータベースへ、一度のタイミングで転送する、
情報処理装置。
Updating means for performing a predetermined update process on the master database and updating the database stored in the master database;
Update information extraction means for extracting update information based on the database updated by the update means;
A plurality of the update information extracted by the update information extraction unit is included in one update information group, and the update information group is once stored in a replica database storing replica data of the database stored in the master database. Update information transfer means for transferring at the timing of
With
The update information transfer means manages a plurality of related update processes as a series of processes, includes a plurality of update information updated by the same transaction process in one update information group, and includes the update information group. Transfer to the replica database at a single timing,
Information processing device.
請求項1に記載の情報処理装置であって、
予め設定された転送条件に基づいて、同一の前記トランザクション処理によって更新された前記データベースに基づいて抽出した複数の前記更新情報を1つの前記更新情報群に含めるように、当該更新情報群を決定する更新情報制御手段をさらに備え、
前記更新情報転送手段は、前記更新情報制御手段にて決定した1つの前記更新情報群を、前記レプリカデータベースへ、一度のタイミングで転送する、
情報処理装置。
The information processing apparatus according to claim 1,
Based on a preset transfer condition, the update information group is determined so that the plurality of update information extracted based on the database updated by the same transaction process is included in one update information group. Further comprising update information control means,
The update information transfer means transfers one update information group determined by the update information control means to the replica database at a single timing.
Information processing device.
請求項2に記載の情報処理装置であって、
前記更新情報抽出手段は、同一の前記トランザクション処理によって更新された前記データベースに基づいて抽出した複数の前記更新情報のそれぞれに、同じトランザクション識別情報を設定し、
前記更新情報制御手段は、前記更新情報抽出手段にて同じ前記トランザクション識別情報が設定された全ての前記更新情報を含む1つの前記更新情報群を決定する、
情報処理装置。
An information processing apparatus according to claim 2,
The update information extraction means sets the same transaction identification information to each of the plurality of update information extracted based on the database updated by the same transaction processing,
The update information control means determines one update information group including all the update information in which the same transaction identification information is set by the update information extraction means.
Information processing device.
請求項3に記載の情報処理装置であって、
前記更新情報制御手段は、前記更新情報抽出手段にて同じ前記トランザクション識別情報が設定された全ての前記更新情報を含む複数の前記更新情報のそれぞれに同じ転送識別情報を設定し、同じ転送識別情報が設定された複数の前記更新情報を前記更新情報群として決定する、
情報処理装置。
The information processing apparatus according to claim 3,
The update information control means sets the same transfer identification information to each of the plurality of update information including all the update information for which the same transaction identification information is set by the update information extraction means, and the same transfer identification information A plurality of the update information set as is determined as the update information group,
Information processing device.
請求項4に記載の情報処理装置であって、
前記更新情報制御手段は、予め設定された数以下の前記更新情報、または、予め設定された時間内に前記更新情報抽出手段にて抽出した前記更新情報であり、かつ、同じ前記トランザクション識別情報が設定された全ての前記更新情報に同じ前記転送識別情報を設定する、
情報処理装置。
The information processing apparatus according to claim 4,
The update information control means is the update information equal to or less than a preset number, or the update information extracted by the update information extraction means within a preset time, and the same transaction identification information Set the same transfer identification information for all the set update information,
Information processing device.
請求項1乃至5のいずれかに記載の情報処理装置であって、
前記レプリカデータベースを備える他の情報処理装置から、前記レプリカデータベースに対する前記更新情報の反映に失敗したことが通知された場合に、当該更新情報の更新元となる前記データベース自体を前記マスタデータベースから取得し、取得した前記データベース自体を前記レプリカデータベースへ転送するデータベース転送制御手段、
をさらに備える情報処理装置。
An information processing apparatus according to any one of claims 1 to 5,
When it is notified from another information processing apparatus including the replica database that the update information has failed to be reflected in the replica database, the database itself that is the update source of the update information is acquired from the master database. Database transfer control means for transferring the acquired database itself to the replica database;
An information processing apparatus further comprising:
情報処理装置に、
マスタデータベースに対して所定の更新処理を行い、前記マスタデータベースに記憶されたデータベースを更新する更新手段と、
前記更新手段にて更新した前記データベースに基づいて更新情報を抽出する更新情報抽出手段と、
前記更新情報抽出手段にて抽出した複数の前記更新情報を1つの更新情報群に含めて、当該更新情報群を、前記マスタデータベースに記憶された前記データベースの複製データを記憶するレプリカデータベースへ、一度のタイミングで転送する更新情報転送手段と、
を実現させるとともに、
前記更新情報転送手段は、関連する複数の更新処理を一連の処理として管理する、同一のトランザクション処理によって更新された複数の前記更新情報を1つの前記更新情報群に含めて、当該更新情報群を前記レプリカデータベースへ、一度のタイミングで転送する、
ことを実現させるためのプログラム。
In the information processing device,
Updating means for performing a predetermined update process on the master database and updating the database stored in the master database;
Update information extraction means for extracting update information based on the database updated by the update means;
A plurality of the update information extracted by the update information extraction unit is included in one update information group, and the update information group is once stored in a replica database storing replica data of the database stored in the master database. Update information transfer means for transferring at the timing of
And realize
The update information transfer means manages a plurality of related update processes as a series of processes, includes a plurality of update information updated by the same transaction process in one update information group, and includes the update information group. Transfer to the replica database at a single timing,
A program to make things happen.
請求項7に記載のプログラムであって、
予め設定された転送条件に基づいて、同一の前記トランザクション処理によって更新された前記データベースに基づいて抽出した複数の前記更新情報を1つの前記更新情報群に含めるように、当該更新情報群を決定する更新情報制御手段をさらに備え、
前記更新情報転送手段は、前記更新情報制御手段にて決定した1つの前記更新情報群を、前記レプリカデータベースへ、一度のタイミングで転送する、
プログラム。
The program according to claim 7,
Based on a preset transfer condition, the update information group is determined so that the plurality of update information extracted based on the database updated by the same transaction process is included in one update information group. Further comprising update information control means,
The update information transfer means transfers one update information group determined by the update information control means to the replica database at a single timing.
program.
マスタデータベースに対して所定の更新処理を行い、前記マスタデータベースに記憶されたデータベースを更新し、
更新した前記データベースに基づいて更新情報を抽出し、
関連する複数の更新処理を一連の処理として管理する、同一のトランザクション処理によって更新された前記データベースに基づいて抽出した複数の前記更新情報を1つの前記更新情報群に含めて、当該更新情報群を、前記マスタデータベースに記憶された前記データベースの複製データを記憶するレプリカデータベースへ、一度のタイミングで転送する、
情報処理方法。
Perform a predetermined update process on the master database, update the database stored in the master database,
Extract update information based on the updated database,
Managing a plurality of related update processes as a series of processes, including a plurality of update information extracted based on the database updated by the same transaction process in one update information group, , Transferred to the replica database storing the replicated data of the database stored in the master database at a single timing,
Information processing method.
請求項9に記載の情報処理方法であって、
予め設定された転送条件に基づいて、同一の前記トランザクション処理によって更新された前記データベースに基づいて抽出した複数の前記更新情報を1つの前記更新情報群に含めるように、当該更新情報群を決定し、
決定した1つの前記更新情報群を、前記レプリカデータベースへ、一度のタイミングで転送する、
情報処理方法。

An information processing method according to claim 9,
Based on a preset transfer condition, the update information group is determined so that the plurality of update information extracted based on the database updated by the same transaction process is included in one update information group. ,
Transferring the determined one update information group to the replica database at a single timing;
Information processing method.

JP2012257172A 2012-11-26 2012-11-26 Information processing device Active JP6319784B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012257172A JP6319784B2 (en) 2012-11-26 2012-11-26 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012257172A JP6319784B2 (en) 2012-11-26 2012-11-26 Information processing device

Publications (2)

Publication Number Publication Date
JP2014106580A true JP2014106580A (en) 2014-06-09
JP6319784B2 JP6319784B2 (en) 2018-05-09

Family

ID=51028046

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012257172A Active JP6319784B2 (en) 2012-11-26 2012-11-26 Information processing device

Country Status (1)

Country Link
JP (1) JP6319784B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018510430A (en) * 2015-04-01 2018-04-12 アリババ グループ ホウルディング リミテッド Remote data synchronization method and apparatus for database
JP2021099606A (en) * 2019-12-20 2021-07-01 日本電気株式会社 Replicated data control device, replicated data control system, replicated data control method, and replicated data control program
US11532045B2 (en) 2018-12-04 2022-12-20 Fujitsu Limited Securities trading apparatus and securities trading method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002366407A (en) * 2001-06-05 2002-12-20 Nec Corp Data base replication system and data base automatic recovery method
US20050289198A1 (en) * 2004-06-25 2005-12-29 International Business Machines Corporation Methods, apparatus and computer programs for data replication
JP2006092005A (en) * 2004-09-21 2006-04-06 Hitachi Ltd Data processing method, database system, and storage device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002366407A (en) * 2001-06-05 2002-12-20 Nec Corp Data base replication system and data base automatic recovery method
US20050289198A1 (en) * 2004-06-25 2005-12-29 International Business Machines Corporation Methods, apparatus and computer programs for data replication
JP2006092005A (en) * 2004-09-21 2006-04-06 Hitachi Ltd Data processing method, database system, and storage device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018510430A (en) * 2015-04-01 2018-04-12 アリババ グループ ホウルディング リミテッド Remote data synchronization method and apparatus for database
US10877990B2 (en) 2015-04-01 2020-12-29 Advanced New Technologies Co., Ltd. Remote database synchronization
US11532045B2 (en) 2018-12-04 2022-12-20 Fujitsu Limited Securities trading apparatus and securities trading method
JP2021099606A (en) * 2019-12-20 2021-07-01 日本電気株式会社 Replicated data control device, replicated data control system, replicated data control method, and replicated data control program

Also Published As

Publication number Publication date
JP6319784B2 (en) 2018-05-09

Similar Documents

Publication Publication Date Title
KR102437664B1 (en) System and method for transaction recovery in a multitenant application server environment
Mu et al. Consolidating concurrency control and consensus for commits under conflicts
US9286052B1 (en) Upgrading software on a pair of nodes in a clustered environment
US9984140B1 (en) Lease based leader election system
US10061830B2 (en) Reorganization of data under continuous workload
CA2913036C (en) Index update pipeline
US9311199B2 (en) Replaying jobs at a secondary location of a service
US10248709B2 (en) Promoted properties in relational structured data
EP3391244B1 (en) Replication control among redundant data centers
EP3391249B1 (en) Replication of structured data records among partitioned data storage spaces
CN107430603A (en) The system and method for MPP database
US10235406B2 (en) Reminder processing of structured data records among partitioned data storage spaces
JP6319784B2 (en) Information processing device
BE1024939B1 (en) SYSTEM AND DEVICE FOR GUARANTEED EXACTLY PROCESSING OF AN EVENT IN A DIVIDED EVENT-DRIVEN ENVIRONMENT
US10728326B2 (en) Method and system for high availability topology for master-slave data systems with low write traffic
US8862550B1 (en) Reliable in-place bootstrap metadata transformation in a shared data store
JP7111882B2 (en) Distributed recovery of server information
JP7416768B2 (en) Methods, apparatus and systems for non-destructively upgrading distributed coordination engines in distributed computing environments
EP2980707B1 (en) Method for creating a database clone of a distributed database, system for creating a database clone of a distributed database, program and computer program product
EP2980702B1 (en) Method for enhancing the generation of a backup copy of data items of a distributed data structure, computer network for enhancing the generation of a backup copy of data items of a distributed data structure, program and computer program product
CN112069067B (en) Data testing method and device based on block chain and computer readable storage medium
JP5432596B2 (en) Log file management device, log file management system, log file management method and program thereof
Song Redesign Tactilon Agnet database in distributed environment
Carvalho Generic replication of software transactional memory
WO2016148716A1 (en) Post in-doubt transaction to notice unit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160802

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160921

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170508

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20170515

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

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20170609

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180329

R150 Certificate of patent or registration of utility model

Ref document number: 6319784

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150