CN112905613A - Data bidirectional synchronization method and device for heterogeneous database - Google Patents

Data bidirectional synchronization method and device for heterogeneous database Download PDF

Info

Publication number
CN112905613A
CN112905613A CN202110171172.5A CN202110171172A CN112905613A CN 112905613 A CN112905613 A CN 112905613A CN 202110171172 A CN202110171172 A CN 202110171172A CN 112905613 A CN112905613 A CN 112905613A
Authority
CN
China
Prior art keywords
data
database
synchronized
script
maintenance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110171172.5A
Other languages
Chinese (zh)
Inventor
潘晓
郭海球
罗东晓
韦传荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202110171172.5A priority Critical patent/CN112905613A/en
Publication of CN112905613A publication Critical patent/CN112905613A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention provides a data bidirectional synchronization method and device of a heterogeneous database, which can be used in the financial field or other technical fields. The method comprises the following steps: acquiring a message queue from message middleware, and synchronizing data change records of a first database stored in the message queue to a second database; intercepting a maintenance script of the second database, and synchronizing data of the first database and the second database based on the maintenance script. The device is used for executing the method. The data bidirectional synchronization method and device for the heterogeneous database, provided by the embodiment of the invention, can avoid transaction failure caused by data loss, and improve the reliability of the database.

Description

Data bidirectional synchronization method and device for heterogeneous database
Technical Field
The invention relates to the technical field of databases, in particular to a data bidirectional synchronization method and device of a heterogeneous database.
Background
Conventional databases typically employ a centralized database architecture. With the continuous development of services, the data volume and the service volume are explosively increased, and a centralized database architecture is subject to a bottleneck in the aspect of expansibility, and is not more and more suitable for the requirements of storage and concurrent processing of mass data.
At present, products such as IBM host, DB2 database, DS8000 storage device and the like adopted by the banking industry adopt the traditional centralized architecture, and the demand of the development of banking business can not be met more and more. In the prior art, a safe and controllable distributed architecture is changed from a traditional centralized architecture, and an open-source distributed MySQL database is used for replacing a DB2 database, so that the cost of system expansion and maintenance can be reduced. However, the technology of the MySQL database is still in the pilot and the reliability of the MySQL database cannot be fully guaranteed. The common solution is that the distributed MySQL database and the old DB2 database are deployed and produced in parallel, and if a problem occurs in the MySQL database during the trial process, the database can be switched to the DB2 database to provide external services. In the process of parallel operation of the MySQL database and the DB2 database, the data consistency of the MySQL database and the DB2 database needs to be ensured, so that errors caused by data loss can be avoided in the business transaction process. Therefore, how to realize the bidirectional synchronization of the MySQL database and the DB2 database becomes an important issue to be solved in the field.
Disclosure of Invention
For solving the problems in the prior art, embodiments of the present invention provide a data bidirectional synchronization method for a heterogeneous database, which can at least partially solve the problems in the prior art.
On one hand, the invention provides a data bidirectional synchronization method of a heterogeneous database, which comprises the following steps:
acquiring a message queue from message middleware, and synchronizing data change records of a first database stored in the message queue to a second database;
intercepting a maintenance script of the second database, and synchronizing data of the first database and the second database based on the maintenance script.
In another aspect, the present invention provides a data bidirectional synchronization apparatus for heterogeneous databases, including:
the first synchronization unit is used for acquiring a message queue from message middleware and synchronizing data change records of a first database stored in the message queue to a second database;
and the second synchronization unit is used for intercepting the maintenance script of the second database and carrying out data synchronization of the first database and the second database based on the maintenance script.
In another aspect, the present invention provides an electronic device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, where the processor implements the steps of the bidirectional data synchronization method for heterogeneous databases according to any of the above embodiments when executing the computer program.
In yet another aspect, the present invention provides a computer-readable storage medium, on which a computer program is stored, which when executed by a processor implements the steps of the method for bi-directionally synchronizing data of heterogeneous databases according to any of the embodiments described above.
The method and the device for bidirectionally synchronizing data of the heterogeneous databases, provided by the embodiment of the invention, have the advantages that the message queue is obtained from the message middleware, the data change records of the first database stored in the message queue are synchronized to the second database, the maintenance script of the second database is intercepted, and the data synchronization of the first database and the second database is carried out based on the maintenance script, so that the bidirectional data synchronization of the first database and the second database is realized, the data consistency of the first database and the second database is ensured, the transaction failure caused by data loss is avoided, and the reliability of the databases is improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts. In the drawings:
fig. 1 is a schematic diagram illustrating a data bidirectional synchronization method for heterogeneous databases according to an embodiment of the present invention.
Fig. 2 is a flowchart illustrating a data bidirectional synchronization method for heterogeneous databases according to an embodiment of the present invention.
Fig. 3 is a flowchart illustrating a data bidirectional synchronization method for heterogeneous databases according to another embodiment of the present invention.
Fig. 4 is a flowchart illustrating a bidirectional data synchronization method for heterogeneous databases according to another embodiment of the present invention.
Fig. 5 is a schematic structural diagram of a bidirectional data synchronization system for heterogeneous databases according to an embodiment of the present invention.
Fig. 6 is a flowchart illustrating a data synchronization method for heterogeneous databases according to an embodiment of the present invention.
Fig. 7 is a flowchart illustrating a data synchronization method for heterogeneous databases according to another embodiment of the present invention.
Fig. 8 is a schematic structural diagram of a bidirectional data synchronization apparatus for heterogeneous databases according to an embodiment of the present invention.
Fig. 9 is a schematic structural diagram of a bidirectional data synchronization apparatus for heterogeneous databases according to another embodiment of the present invention.
Fig. 10 is a schematic structural diagram of a bidirectional data synchronization apparatus for heterogeneous databases according to still another embodiment of the present invention.
Fig. 11 is a schematic physical structure diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention more apparent, the embodiments of the present invention are further described in detail below with reference to the accompanying drawings. The exemplary embodiments and descriptions of the present invention are provided to explain the present invention, but not to limit the present invention. It should be noted that the embodiments and features of the embodiments in the present application may be arbitrarily combined with each other without conflict.
Fig. 1 is a schematic diagram illustrating a data bidirectional synchronization method for heterogeneous databases according to an embodiment of the present invention, and as shown in fig. 1, an overall flow of the data bidirectional synchronization method for heterogeneous databases according to an embodiment of the present invention may be divided into two parts, one part is to implement synchronization of transaction data generated by a first database 1 to a second database through a conversion server 3 by using a message middleware 2. The other part is that the conversion server 3 intercepts the maintenance script of the second database, obtains the transaction data needing to be written into the second database 4 from the maintenance script, and writes the transaction data into the first database 1 and the second database 4.
Wherein the first database 1 may be a DB2 database and the second database 4 may be a MySQL database. Message middleware 2 may employ KAFKA message middleware. The conversion server 3 may employ a Mybatis interceptor when intercepting the maintenance script of the second database. The first database 1 and the second database 4 may be deployed on a server or a server cluster, and are set according to actual needs, which is not limited in the embodiment of the present invention. The message middleware 2 may be deployed on a server or a server cluster, and is set according to actual needs, which is not limited in the embodiment of the present invention.
The following describes an implementation process of the data bidirectional synchronization method for heterogeneous databases according to an embodiment of the present invention, taking a conversion server as an execution subject.
Fig. 2 is a schematic flowchart of a data bidirectional synchronization method for a heterogeneous database according to an embodiment of the present invention, and as shown in fig. 2, the data bidirectional synchronization method for a heterogeneous database according to the embodiment of the present invention includes:
s201, obtaining a message queue from a message middleware, and synchronizing a data change record of a first database stored in the message queue to a second database;
specifically, the change of the transaction data of the first database may be copied to a message queue of the message middleware to be a data change record of the first database. And the conversion server pulls the data change record of the first database from the message queue, and then synchronizes the data change record of the first database to the second database, so that the transaction data changed in the first database is synchronized to the second database.
For example, the conversion server screens out first data to be synchronized from the data change records of the first database according to a filtering condition, then assembles an execution statement of a second database corresponding to the first data to be synchronized according to the first data to be synchronized, and then executes the execution statement of the second database corresponding to the first data to be synchronized to synchronize the first data to be synchronized into the second database. Wherein the filtration conditions are preset.
S202, intercepting the maintenance script of the second database, and carrying out data synchronization of the first database and the second database based on the maintenance script.
Specifically, the conversion server may intercept a maintenance script of the second database, obtain transaction data to be changed of the second database from the maintenance script, write the transaction data to be changed to the first database and the second database, and synchronize the transaction data changed in the second database with the first database.
For example, the conversion server obtains a first type of maintenance script from a maintenance script of the second database, obtains second data to be synchronized according to the first type of maintenance script, and records the data state as a to-be-synchronized data, if the second type of maintenance script obtained from the maintenance script is a commit script, a data interface of the first database is called to write the second data to be synchronized into the first database, and after the second data to be synchronized is successfully written into the first database, the second data to be synchronized is written into the second database and the data state of the second data to be synchronized is updated to be synchronized.
The data bidirectional synchronization method for the heterogeneous databases, provided by the embodiment of the invention, comprises the steps of obtaining the message queue from the message middleware, synchronizing the data change record of the first database stored in the message queue to the second database, intercepting the maintenance script of the second database, and carrying out data synchronization of the first database and the second database based on the maintenance script, so that the data bidirectional synchronization of the first database and the second database is realized, the data consistency of the first database and the second database is ensured, the transaction failure caused by data loss is avoided, and the reliability of the databases is improved.
Fig. 3 is a flowchart of a bidirectional data synchronization method for heterogeneous databases according to another embodiment of the present invention, and as shown in fig. 3, based on the foregoing embodiments, further, the synchronizing the data change record of the first database stored in the message queue to the second database includes:
s2011, screening first to-be-synchronized data from the data change records according to filtering conditions; wherein the filtration conditions are pre-set;
specifically, the conversion server performs data screening on data change records of a first database stored in the message queue according to a filtering condition, and takes the data change records meeting the filtering condition as first data to be synchronized. The filtering condition is preset and is set according to actual needs, and the embodiment of the invention is not limited.
For example, the message queue stores a data change record for the first database that may include a data table name, an operation type, pre-change data, and post-change data. The filtering condition may be set as a data table name, and data corresponding to the data table name included in the filtering condition is data that needs to be synchronized. And when the conversion server performs data screening according to the filtering condition, screening out the data change record corresponding to the data table name included in the filtering condition as the first data to be synchronized. The first data to be synchronized can be stored in a data table, and each piece of data to be synchronized in the data table comprises a data table name, an operation type, data before change and data after change. The pre-change data and the post-change data include data fields and corresponding values, and may be data stored in the form of key-values.
S2012, assembling an execution statement of a second database corresponding to the first data to be synchronized according to the first data to be synchronized;
specifically, after obtaining the first data to be synchronized, the conversion server may generate, according to each piece of data included in the first data to be synchronized, an execution statement of a second database corresponding to each piece of data, where the execution statement of the second database corresponding to each piece of data may synchronize the first data to be synchronized to the second database after execution. The execution statements of the second database corresponding to all the data included in the first data to be synchronized form the execution statements of the second database corresponding to the first data to be synchronized.
For example, the second database is a MySQL database, and the standard format of each piece of data in the first data to be synchronized is: the data table name, the operation type, the data before change and the data after change are stored in a key-value form. The operation types comprise insertion (insert), update (update) and deletion (delete), and if the operation type is insert, the data is empty before the change; if the operation type is update, the pre-change data and the post-change data exist at the same time; if the operation type is delete, the changed data is empty.
The conversion server obtains a piece of data a of the first data to be synchronized, obtains the operation type of the data a from the data a, if the operation type of the data a is INSERT, obtains the data table name of the data a and the changed data, assembles the content to be inserted into the data table by taking the key value included in the changed data as the data table field name and the value as the data table field name, and INSERTs the value under the key value of the data table corresponding to the data table name after the INSERT statement is executed. If the operation type of the data a is update, acquiring a data table name, data before change and data after change of the data a, taking the data before change of the data a as query content, and assembling into a SELECT statement according to MySQL statement rules; the key value included in the changed data is used as a data table field name, the value is used as the content to be inserted corresponding to the data table field name, and the content is assembled into an INSERT statement or an UPDATE statement according to the MySQL statement rule; and if the operation type of the data a is DELETE, acquiring the data table name and the data before change of the data a, taking the data before change as a record to be deleted, and assembling into a DELETE statement according to the MySQL statement rule so as to DELETE the data before change of the data a from the data table corresponding to the data table name.
S2013, executing an execution statement of a second database corresponding to the first data to be synchronized to synchronize the first data to be synchronized into the second database.
Specifically, after obtaining the execution statement of the second database corresponding to the first data to be synchronized, the conversion server executes the execution statement of the second database corresponding to the first data to be synchronized, and performs data operation on the relevant data table in the second database, that is, performs at least one of data operations of inserting data, updating data, and deleting data on the relevant data table, so as to synchronize the first data to be synchronized into the second database.
For example, the second database is a MySQL database. And after obtaining the execution statements of the MySQL database corresponding to the first data to be synchronized, the conversion server executes the execution statements one by one, wherein the execution statements include but are not limited to an INSERT statement, a SELECT statement, an UPDATE statement and a DELETE statement. For the INSERT statement and the UPDATE statement, if the execution result returned after the execution is successful, the conversion server may register the relevant message and the execution result in a message middleware consumption log, if the returned execution result is an execution failure, the conversion server may wait for a preset time and then execute again, if the execution result returned again is an execution success, the message middleware consumption log is registered, and if the execution result returned again is still an execution failure, the conversion server may trigger monitoring alarm and register an alarm log. For the DELETE statement, the execution fails or not, and the relevant message and the execution result are directly registered in the message middleware consumption log without retry.
Fig. 4 is a flowchart of a bidirectional data synchronization method for heterogeneous databases according to another embodiment of the present invention, and as shown in fig. 4, on the basis of the foregoing embodiments, the performing data synchronization of the first database and the second database based on the maintenance script further includes:
s2021, obtaining a first type of maintenance script from the maintenance scripts, obtaining second data to be synchronized according to the first type of maintenance script, and recording the data state as data to be synchronized;
specifically, when the transaction data in the second database is changed, the data table in the second database needs to be operated through an execution statement, and the maintenance script records the execution statement. The conversion server can obtain a first type of maintenance script from the maintenance script by filtering the keywords of the maintenance script, then obtain second data to be synchronized from the first type of maintenance script, and record the data state of the second data to be synchronized as the data to be synchronized. The keywords are set according to actual needs, and the embodiment of the invention is not limited.
For example, the second database is a MySQL database, the execution statement of the MySQL database may include an INSERT statement, an UPDATE statement and a DELETE statement, the INSERT statement is used to INSERT data into the data table, the UPDATE statement is used to UPDATE data already existing in the data table, and the DELETE statement is used to DELETE data already existing in the data table. The INSERT, the UPDATE and the DELETE are set as key words of the first maintenance script, the maintenance scripts of the MySQL database are filtered through the key words, and an INSERT statement, an UPDATE statement and a DELETE statement can be obtained from the maintenance scripts.
For an INSERT statement, the conversion server can analyze the INSERT statement to obtain the operation type as insertion and the content needing to be inserted, and the operation type is: and storing the inserted content and the content needing to be inserted into a double-write tracking table, and recording the corresponding data state as to-be-synchronized. For an UPDATE statement, the conversion server may analyze the UPDATE statement to obtain operation types as UPDATE and where conditions, then assemble the operation types as a SELECT statement according to the where conditions and MySQL statement rules, execute the SELECT statement to obtain data before UPDATE, then execute the UPDATE statement to change the data before UPDATE, execute the SELECT statement again to obtain updated data, and use the operation types: and updating, wherein the data before updating and the data after updating are stored in a double-write tracking table, and the corresponding data state is recorded as to-be-synchronized. For a DELETE statement, the conversion server can analyze the DELETE statement to obtain the operation types of deletion and where condition, then assemble the operation types into a SELECT statement according to the where condition and MySQL statement rule, execute the SELECT statement, obtain the data before deletion, and use the operation types: and updating, storing the data before deletion into a double-write tracking table, and recording the corresponding data state as to-be-synchronized. The second data to be synchronized comprises at least one of content to be inserted, data before updating, data after updating and data before deleting, and can be stored in a key-value form.
S2022, if a second type of maintenance script obtained from the maintenance scripts is a submission script, calling a data interface of the first database to write the second data to be synchronized into the first database;
specifically, the conversion server may obtain a second type of maintenance script from the maintenance script by performing keyword filtering on the maintenance script, and if the obtained second type of maintenance script is a COMMIT (COMMIT) script, may call a data interface of the first database, and write the second data to be synchronized into the first database.
For example, the second database is a MySQL database, and the maintenance scripts of the MySQL database may include a COMMIT script, where the COMMIT script is used to submit operations on the second database, that is, execute the first type of maintenance scripts, and perform insertion, update, and deletion operations on data in the MySQL database. Setting the COMMIT as the key word of the second type of maintenance script, and filtering the COMMIT script from the maintenance script through the COMMIT.
The first database is a DB2 database, and the DB2 database provides a WAS + DB2 interface. After obtaining the COMMIT script, the conversion server calls a WAS + DB2 interface to write the data with the data state to be synchronized in the double-write tracking table into a DB2 database. After the data with the data status of being synchronized is written into the DB2 database, a write result is returned, where the write result is a write success or a write failure.
S2023, if the second data to be synchronized is successfully written into the first database, writing the second data to be synchronized into the second database and updating the data status of the second data to be synchronized.
Specifically, if the conversion server receives feedback information that the second data to be synchronized is successfully written into the first database, it determines that the second data to be synchronized is successfully written into the first database, and then writes the second data to be synchronized into the second database and updates the data state of the second data to be synchronized to synchronized.
For example, the second database is a MySQL database, and after the conversion server receives the writing result, if the writing result is successful, it is determined that the second data to be synchronized is successfully written into the first database. The conversion server executes COMMIT operation on the first class of maintenance scripts of the intercepted MySQL database, and second data to be synchronized is written into the second database. The conversion server will update the corresponding data state in the dual write tracking table to be synchronized.
On the basis of the foregoing embodiments, further, the data bidirectional synchronization method for a heterogeneous database provided in the embodiment of the present invention further includes:
and if the second type of maintenance script obtained from the maintenance script is a rollback script, directly rolling back the whole transaction and updating the data state of the second data to be synchronized into a state without synchronization.
Specifically, the conversion server may obtain a second type of maintenance script from the maintenance script by performing keyword filtering on the maintenance script, and if the obtained second type of maintenance script is a ROLLBACK (ROLLBACK) script, may directly ROLLBACK the entire transaction and update the data state of the second data to be synchronized to be non-synchronization.
For example, the second database is a MySQL database, and the maintenance scripts of the MySQL database may include a ROLLBACK script for undoing the operation on the second database, that is, not executing the first type of maintenance script. And setting the ROLLBACK as a keyword of the second type of maintenance script, and filtering the maintenance script through the keyword ROLLBACK to obtain the ROLLBACK script.
And after the conversion server obtains the ROLLBACK script, the intercepted first type maintenance script is not executed, and the corresponding data state in the double-write tracking table is updated to be in a state of not needing synchronization.
On the basis of the foregoing embodiments, further, the data bidirectional synchronization method for a heterogeneous database provided in the embodiment of the present invention further includes:
and if the second data to be synchronized fails to be written into the first database, rolling back the whole transaction and updating the data state of the second data to be synchronized into synchronization failure.
Specifically, if the conversion server receives feedback information of a failure of writing the second data to be synchronized into the first database, it determines that writing of the second data to be synchronized into the first database fails, and in order to ensure consistency of data of the first database and the second database, the conversion server rolls back the whole transaction and updates the data state of the second data to be synchronized into synchronization failure.
For example, the second database is a MySQL database, and after the conversion server receives a writing result of the second data to be synchronized written into the first database, if the writing result is a writing failure, it is determined that the writing of the second data to be synchronized into the first database fails. The conversion server executes rollback operation on the intercepted first type maintenance script of the MySQL database, namely, the intercepted first type maintenance script is not executed, and updates the corresponding data state in the double-write tracking table to be synchronization failure.
On the basis of the foregoing embodiments, further, the acquiring a message queue from message middleware includes:
and acquiring a message queue from the message middleware periodically.
Specifically, the conversion server may periodically obtain a message queue from the message middleware, and synchronize the transaction data changed in the first database to the second database. The period is set according to actual needs, for example, the embodiment of the present invention is not limited.
Fig. 5 is a schematic structural diagram of a bidirectional data synchronization system for heterogeneous databases according to an embodiment of the present invention, and as shown in fig. 5, the bidirectional data synchronization system for heterogeneous databases according to an embodiment of the present invention includes an old platform 51, a middleware server 52, a conversion server 53, and a new platform 54, where:
the old platform 51 is communicatively connected to the middleware server 52 and the conversion server 53 is communicatively connected to the old platform 51, the middleware server 52 and the new platform 54, respectively. Wherein, the old platform 51 configures the DB2 database, the middleware server 52 configures the KAFKA message middleware, the conversion server 53 configures the Mybatis interceptor, and the new platform 54 configures the MySQL database.
The old platform 51 stores the changed transaction data in the DB2 database while copying the changed transaction data to the message queue of the KAFKA message middleware of the middleware server 52. The transformation server 53 periodically pulls the data change record for the first database in the message queue of the KAFKA message middleware from the middleware server 52, synching to the MySQL database of the new platform 54.
Transaction data occurring at the new platform 54 will be stored in the MySQL database by the maintenance script. The conversion server 53 intercepts the maintenance script of the MySQL database through the Mybatis interceptor, obtains second data to be synchronized from the maintenance script, calls the WAS + DB2 interface of the DB2 database to write the second data to be synchronized into the DB2 database, and writes the second data to be synchronized into the MySQL database after the writing is successful.
Fig. 6 is a schematic flowchart of a data synchronization method for a heterogeneous database according to an embodiment of the present invention, and as shown in fig. 6, the data synchronization method for a heterogeneous database according to the embodiment of the present invention is applied to a bidirectional data synchronization system for a heterogeneous database shown in fig. 5, so as to implement data synchronization from a DB2 database to a MySQL database, where the specific flow is as follows:
first, pull data. The old platform 51 stores the changed transaction data in the DB2 database while copying the changed transaction data to the message queue of the KAFKA message middleware of the middleware server 52. The transformation server 53 periodically pulls the data change record for the first database in the message queue of the KAFKA message middleware from the middleware server 52.
And secondly, screening data. The conversion server 53 screens out the first data to be synchronized from the data change records of the first database according to the filtering condition. Wherein the filtration conditions are preset.
And thirdly, judging the operation type. The conversion server 53 can obtain the operation type included in each piece of data from the first data to be synchronized. Each piece of data of the first data to be synchronized includes a data table name, an operation type, pre-change data, and post-change data. If the operation type is DELETE (DELETE), proceeding to the fourth step; if the operation type is UPDATE (UPDATE), proceeding to the sixth step; if the operation type is INSERT (INSERT), then step ten is entered.
And fourthly, assembling the DELETE statement. The conversion server 53 obtains the data table name and the data before change of the piece of data, takes the data before change as a record to be deleted, and assembles the record into a DELETE statement according to the MySQL statement rule.
And fifthly, executing the DELETE statement. The transformation server 53 executes the assembled DELETE statement, obtains the execution result of the DELETE statement, and then proceeds to the sixteenth step.
And sixthly, assembling a SELECT statement. The conversion server 53 obtains the data before change of the piece of data as query content, and assembles the query content into a SELECT statement according to the MySQL statement rule.
And seventhly, judging whether the record is inquired. The transformation server 53 executes the assembled SELECT statement, obtains an execution result of the SELECT statement, and if the execution result is recorded or not recorded, the ninth step is performed; and if the record exists, the step eight is entered.
And eighth, assembling and executing the UPDATE statement. The conversion server 53 assembles the contents to be inserted corresponding to the changed data with the key value of the piece of data as the field name of the data table and the value as the field name of the data table according to the MySQL statement rule into the UPDATE statement, executes the UPDATE statement to obtain the execution result of the UPDATE statement, and then enters the twelfth step.
And step nine, converting into an INSERT statement. The conversion server 53 takes the key value included in the changed data of the piece of data as the field name of the data table, takes the value as the content to be inserted corresponding to the field name of the data table, and assembles the content into the INSERT statement according to the MySQL statement rule.
And step ten, assembling an INSERT statement. The conversion server 53 takes the key value included in the changed data of the piece of data as the field name of the data table, takes the value as the content to be inserted corresponding to the field name of the data table, and assembles the content into the INSERT statement according to the MySQL statement rule.
The tenth step, execute the INSERT statement. The conversion server 53 executes the assembled INSERT statement to obtain an execution result of the INSERT statement.
And step ten, judging whether the execution is normal or not. The conversion server 53 judges whether the execution is normal according to the execution result, if the execution result is that the execution is successful, the execution is normal, and sixteen steps are carried out; if the execution result is that the execution fails, the execution is abnormal, and the thirteenth step is entered.
And step thirteen, re-execution. After waiting for 5 seconds, the conversion server 53 re-executes the INSERT statement or the UPDATE statement corresponding to the execution result that failed to be executed, and obtains the execution result again.
And fourteenth, judging whether the execution is normal or not. The conversion server 53 judges whether the execution is normal according to the retrieved execution result, if the retrieved execution result is that the execution is successful, the execution is normal, and sixteen steps are performed; if the execution result obtained again is the execution failure, the execution is abnormal, and the fifteenth step is entered.
And fifthly, alarming for abnormity. The conversion server 53 performs an abnormality alarm and registers an alarm log.
Sixthly, registering a consumption log. For the execution result of the DELETE statement, whether the execution result is normal or abnormal is faithfully registered in the kafka consumption log. The results of the execution of the INSERT statement and the UPDATE statement are only registered in the kafka consumption log after the execution is successful.
Seventeenth, judging whether the synchronization is finished. The conversion server 53 determines whether there is any unsynchronized data in the first data to be synchronized, and if so, returns to the third step; if there is no unsynchronized data, the data synchronization is finished.
Fig. 7 is a schematic flowchart of a data synchronization method for a heterogeneous database according to another embodiment of the present invention, and as shown in fig. 7, the data synchronization method for a heterogeneous database according to the embodiment of the present invention is applied to the bidirectional data synchronization system for a heterogeneous database shown in fig. 5, so as to implement data synchronization from a MySQL database to a DB2 database, and the specific flow is as follows:
firstly, intercepting a maintenance script. The conversion server 53 intercepts the maintenance script of the MySQL database through the Mybatis interceptor.
And secondly, judging whether a first type of maintenance script exists or not. The conversion server 53 determines whether three keywords, i.e., INSERT, UPDATE, or DELETE, exist in the execution statement of the maintenance script, and if any of the three keywords exists, then the first type of maintenance script exists, and the process proceeds to the third step. If the three keywords do not exist, the first type of maintenance script does not exist, and the step six is entered.
And thirdly, analyzing to obtain second data to be synchronized. The conversion server 53 parses the first type of maintenance script to obtain the second data to be synchronized.
And fourthly, storing the data. The conversion server 53 stores the obtained second data to be synchronized into the double-write tracking table, and records the corresponding data state as data to be synchronized.
And fifthly, loading data to a memory. The conversion server 53 loads the second data to be synchronized, whose data state is to be synchronized, in the dual write tracking table into the memory.
And sixthly, judging whether the script is the second type maintenance script or not. The conversion server 53 determines whether the execution statement of the maintenance script has two keywords, i.e., COMMIT and ROLLBACK, and if so, the second type of maintenance script exists, and the seventh step is proceeded; if the ROLLBACK is the key word, a second type of maintenance script exists, and the twelfth step is carried out; if the two keywords do not exist, then the second type of maintenance script does not exist, and then the thirteenth step is entered.
And seventhly, acquiring second data to be synchronized. The conversion server 53 obtains the second data to be synchronized from the memory in the data state.
And eighthly, writing data. The conversion server 53 calls the WAS + DB2 interface of the DB2 database, writes the second data to be synchronized into the DB2 database, and obtains the write result of the data.
And ninthly, judging whether the writing is successful. The conversion server 53 judges whether the data is successfully written into the DB2 database according to the writing result, and if the writing result is a writing failure, the eleventh step is performed; and if the writing result is that the writing is successful, the tenth step is entered.
Tenth, a COMMIT operation is performed. The transition server 53 performs a COMMIT operation, i.e. performs intercepted maintenance scripts of the first type.
And the eleventh step, rolling back the whole transaction. After the write failure, the conversion server 53 rolls back the whole transaction, i.e. does not execute the intercepted first type of maintenance script, and changes the data state of the second data to be synchronized in the dual write tracking table from to be synchronized to synchronization failure.
Step ten, rolling back the whole transaction. After obtaining the ROLLBACK script, the transformation server 53 rolls back the entire transaction, i.e., does not execute the intercepted first type of maintenance script, and changes the data state of the second data to be synchronized in the double-write tracking table from being synchronized to being not synchronized.
The data bidirectional synchronization method of the heterogeneous databases provided by the embodiment of the invention combines the technologies of data copying by using the message middleware and database synchronization double writing, can perform data bidirectional synchronization on the data of the two heterogeneous databases through data copying or double writing, and ensures the data integrity of service dimensions for transaction accounts in a test point list during test point transaction, thereby providing data consistency guarantee during migration and switching back of new and old systems and avoiding transaction error reporting caused by data loss.
Fig. 8 is a schematic structural diagram of a bidirectional data synchronization apparatus for heterogeneous databases according to an embodiment of the present invention, and as shown in fig. 8, the bidirectional data synchronization apparatus for heterogeneous databases according to an embodiment of the present invention includes a first synchronization unit 801 and a second synchronization unit 802, where:
the first synchronization unit 801 is configured to acquire a message queue from message middleware, and synchronize a data change record of a first database stored in the message queue to a second database; the second synchronization unit 802 is configured to intercept a maintenance script of the second database, and perform data synchronization between the first database and the second database based on the maintenance script.
Specifically, the change of the transaction data of the first database may be copied to a message queue of the message middleware, the first synchronization unit 801, which becomes a data change record of the first database, pulls the data change record of the first database from the message queue, and then synchronizes the data change record of the first database to the second database, so as to synchronize the transaction data of the changed first database to the second database.
The second synchronization unit 802 may intercept the maintenance script of the second database, obtain the transaction data to be changed of the second database from the maintenance script, write the transaction data to be changed to the first database and the second database, and synchronize the transaction data changed of the second database to the first database.
The data bidirectional synchronization device for the heterogeneous databases, provided by the embodiment of the invention, acquires the message queue from the message middleware, synchronizes the data change record of the first database stored in the message queue to the second database, intercepts the maintenance script of the second database, and synchronizes the data of the first database and the second database based on the maintenance script, so that the data bidirectional synchronization of the first database and the second database is realized, the data consistency of the first database and the second database is ensured, the transaction failure caused by data loss is avoided, and the reliability of the databases is improved.
Fig. 9 is a schematic structural diagram of a bidirectional data synchronization apparatus for heterogeneous databases according to another embodiment of the present invention, and as shown in fig. 9, on the basis of the foregoing embodiments, further, the first synchronization unit 801 includes a screening sub-unit 8011, an assembling sub-unit 8012, and an executing sub-unit 8013, where:
the screening subunit 8011 is configured to screen the first data to be synchronized from the data change record according to a filtering condition; wherein the filtration conditions are pre-set; the assembling subunit 8012 is configured to assemble, according to the first data to be synchronized, an execution statement of a second database corresponding to the first data to be synchronized; the execution subunit 8013 is configured to execute an execution statement of the second database corresponding to the first data to be synchronized to synchronize the first data to be synchronized with the second database.
Specifically, the screening subunit 8011 performs data screening on the data change record of the first database stored in the message queue according to the filtering condition, and uses the data change record meeting the filtering condition as the first data to be synchronized. The filtering condition is preset and is set according to actual needs, and the embodiment of the invention is not limited.
After obtaining the first data to be synchronized, the assembling sub-unit 8012 may generate an execution statement of the second database corresponding to each piece of data according to each piece of data included in the first data to be synchronized, where the execution statement of the second database corresponding to each piece of data may synchronize the first data to be synchronized to the second database after execution. The execution statements of the second database corresponding to all the data included in the first data to be synchronized form the execution statements of the second database corresponding to the first data to be synchronized.
After obtaining the execution statement of the second database corresponding to the first data to be synchronized, the execution subunit 8013 may execute the execution statement of the second database corresponding to the first data to be synchronized, and perform data operation on the relevant data table in the second database, that is, perform at least one of data operations of inserting data, updating data, and deleting data on the relevant data table, so as to synchronize the first data to be synchronized into the second database.
Fig. 10 is a schematic structural diagram of a bidirectional data synchronization apparatus for heterogeneous databases according to yet another embodiment of the present invention, as shown in fig. 10, based on the foregoing embodiments, further, the second synchronization unit 802 includes an obtaining subunit 8021, a calling subunit 8022, and a writing subunit 8023, where:
the obtaining subunit 8021 is configured to obtain a first type of maintenance script from the maintenance scripts, obtain second data to be synchronized according to the first type of maintenance script, and record a data state as data to be synchronized; the calling subunit 8022 is configured to, if the second type of maintenance script obtained from the maintenance script is a commit script, call a data interface of the first database to write the second data to be synchronized into the first database; the writing subunit 8023 is configured to, after the second data to be synchronized is successfully written into the first database, write the second data to be synchronized into the second database and update the data state of the second data to be synchronized.
Specifically, the obtaining subunit 8021 performs data screening on the data change record of the first database stored in the message queue according to the filtering condition, and uses the data change record meeting the filtering condition as the first data to be synchronized. The filtering condition is preset and is set according to actual needs, and the embodiment of the invention is not limited.
After obtaining the first data to be synchronized, the calling subunit 8022 may generate, according to each piece of data included in the first data to be synchronized, an execution statement of a second database corresponding to each piece of data, where the execution statement of the second database corresponding to each piece of data may synchronize the first data to be synchronized to the second database after execution. The execution statements of the second database corresponding to all the data included in the first data to be synchronized form the execution statements of the second database corresponding to the first data to be synchronized.
After obtaining the execution statement of the second database corresponding to the first data to be synchronized, the write subunit 8023 executes the execution statement of the second database corresponding to the first data to be synchronized, and performs data operation on the relevant data table in the second database, that is, performs at least one of data operations of inserting data, updating data, and deleting data on the relevant data table, so as to synchronize the first data to be synchronized into the second database.
The embodiment of the apparatus provided in the embodiment of the present invention may be specifically configured to execute the processing flows of the above method embodiments, and the functions of the apparatus are not described herein again, and refer to the detailed description of the above method embodiments.
It should be noted that the method and the apparatus for bidirectional data synchronization of a heterogeneous database provided in the embodiment of the present invention can be used in the financial field, and can also be used in any technical field except the financial field.
Fig. 11 is a schematic physical structure diagram of an electronic device according to an embodiment of the present invention, and as shown in fig. 11, the electronic device may include: a processor (processor)1101, a communication Interface (Communications Interface)1102, a memory (memory)1103 and a communication bus 1104, wherein the processor 1101, the communication Interface 1102 and the memory 1103 are communicated with each other via the communication bus 1104. The processor 1101 may call logic instructions in the memory 1103 to perform the following method: acquiring a message queue from message middleware, and synchronizing data change records of a first database stored in the message queue to a second database; intercepting a maintenance script of the second database, and synchronizing data of the first database and the second database based on the maintenance script.
In addition, the logic instructions in the memory 1103 can be implemented in the form of software functional units and stored in a computer readable storage medium when the logic instructions are sold or used as independent products. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
The present embodiment discloses a computer program product comprising a computer program stored on a non-transitory computer readable storage medium, the computer program comprising program instructions which, when executed by a computer, enable the computer to perform the method provided by the above-mentioned method embodiments, for example, comprising: acquiring a message queue from message middleware, and synchronizing data change records of a first database stored in the message queue to a second database; intercepting a maintenance script of the second database, and synchronizing data of the first database and the second database based on the maintenance script.
The present embodiment provides a computer-readable storage medium, which stores a computer program, where the computer program causes the computer to execute the method provided by the above method embodiments, for example, the method includes: acquiring a message queue from message middleware, and synchronizing data change records of a first database stored in the message queue to a second database; intercepting a maintenance script of the second database, and synchronizing data of the first database and the second database based on the maintenance script.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In the description herein, reference to the description of the terms "one embodiment," "a particular embodiment," "some embodiments," "for example," "an example," "a particular example," or "some examples," etc., means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the invention. In this specification, the schematic representations of the terms used above do not necessarily refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.
The above-mentioned embodiments are intended to illustrate the objects, technical solutions and advantages of the present invention in further detail, and it should be understood that the above-mentioned embodiments are only exemplary embodiments of the present invention, and are not intended to limit the scope of the present invention, and any modifications, equivalent substitutions, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.

Claims (11)

1. A data bidirectional synchronization method for heterogeneous databases is characterized by comprising the following steps:
acquiring a message queue from message middleware, and synchronizing data change records of a first database stored in the message queue to a second database;
and intercepting a maintenance script of the second database, and synchronizing data of the first database and the second database based on the maintenance script.
2. The method of claim 1, wherein synchronizing the data change records of the first database stored by the message queue to the second database comprises:
screening first data to be synchronized from the data change records according to filtering conditions; wherein the filtration conditions are pre-set;
assembling an execution statement of a second database corresponding to the first data to be synchronized according to the first data to be synchronized;
and executing an execution statement of a second database corresponding to the first data to be synchronized to synchronize the first data to be synchronized into the second database.
3. The method of claim 1, wherein the synchronizing data of the first database and the second database based on the maintenance script comprises:
obtaining a first type of maintenance script from the maintenance scripts, obtaining second data to be synchronized according to the first type of maintenance script, and recording the data state as the data to be synchronized;
if the second type of maintenance script obtained from the maintenance scripts is a submission script, calling a data interface of the first database to write the second data to be synchronized into the first database;
and if the second data to be synchronized is successfully written into the first database, writing the second data to be synchronized into the second database and updating the data state of the second data to be synchronized.
4. The method of claim 3, further comprising:
and if the second type of maintenance script obtained from the maintenance script is a rollback script, directly rolling back the whole transaction and updating the data state of the second data to be synchronized into a state without synchronization.
5. The method of claim 3, further comprising:
and if the second data to be synchronized fails to be written into the first database, rolling back the whole transaction and updating the data state of the second data to be synchronized into synchronization failure.
6. The method of any of claims 1 to 5, wherein the obtaining the message queue from the message middleware comprises:
and acquiring a message queue from the message middleware periodically.
7. A data bidirectional synchronization device for heterogeneous databases, comprising:
the first synchronization unit is used for acquiring a message queue from message middleware and synchronizing data change records of a first database stored in the message queue to a second database;
and the second synchronization unit is used for intercepting the maintenance script of the second database and carrying out data synchronization of the first database and the second database based on the maintenance script.
8. The apparatus of claim 7, wherein the first synchronization unit comprises:
the screening subunit is used for screening out first to-be-synchronized data from the data change records according to filtering conditions; wherein the filtration conditions are pre-set;
the assembling subunit is used for assembling an execution statement of a second database corresponding to the first data to be synchronized according to the first data to be synchronized;
and the execution subunit is used for executing an execution statement of a second database corresponding to the first data to be synchronized to synchronize the first data to be synchronized into the second database.
9. The apparatus of claim 7, wherein the second synchronization unit comprises:
the obtaining subunit is used for obtaining a first type of maintenance script from the maintenance scripts, obtaining second data to be synchronized according to the first type of maintenance script and recording the data state as data to be synchronized;
the calling subunit is used for calling a data interface of the first database to write the second data to be synchronized into the first database if the second type of maintenance script obtained from the maintenance script is a submission script;
and the writing subunit is used for writing the second data to be synchronized into the second database and updating the data state of the second data to be synchronized into synchronized after the second data to be synchronized is successfully written into the first database.
10. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the steps of the method of any of claims 1 to 6 are implemented when the computer program is executed by the processor.
11. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the steps of the method of any one of claims 1 to 6.
CN202110171172.5A 2021-02-08 2021-02-08 Data bidirectional synchronization method and device for heterogeneous database Pending CN112905613A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110171172.5A CN112905613A (en) 2021-02-08 2021-02-08 Data bidirectional synchronization method and device for heterogeneous database

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110171172.5A CN112905613A (en) 2021-02-08 2021-02-08 Data bidirectional synchronization method and device for heterogeneous database

Publications (1)

Publication Number Publication Date
CN112905613A true CN112905613A (en) 2021-06-04

Family

ID=76124005

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110171172.5A Pending CN112905613A (en) 2021-02-08 2021-02-08 Data bidirectional synchronization method and device for heterogeneous database

Country Status (1)

Country Link
CN (1) CN112905613A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434502A (en) * 2021-06-25 2021-09-24 北京明略软件系统有限公司 Heterogeneous database consistency implementation method and system, electronic device and storage medium
CN113946628A (en) * 2021-10-27 2022-01-18 中国建设银行股份有限公司 Data synchronization method and device based on interceptor
CN116975159A (en) * 2023-09-25 2023-10-31 云筑信息科技(成都)有限公司 Incremental data synchronization processing method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2891994A1 (en) * 2013-11-04 2015-07-08 Guangdong Electronics Industry Institute Ltd. Method for achieving automatic synchronization of multisource heterogeneous data resources
WO2016101752A1 (en) * 2014-12-22 2016-06-30 北京奇虎科技有限公司 Method and device for data synchronization
CN108647237A (en) * 2018-03-30 2018-10-12 厦门海迈科技股份有限公司 Method of data synchronization between isomeric relationship type database
CN109582731A (en) * 2018-10-18 2019-04-05 恒峰信息技术有限公司 A kind of real time data synchronization method and system
CN110674213A (en) * 2019-08-30 2020-01-10 中国人民财产保险股份有限公司 Data synchronization method and device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2891994A1 (en) * 2013-11-04 2015-07-08 Guangdong Electronics Industry Institute Ltd. Method for achieving automatic synchronization of multisource heterogeneous data resources
WO2016101752A1 (en) * 2014-12-22 2016-06-30 北京奇虎科技有限公司 Method and device for data synchronization
CN108647237A (en) * 2018-03-30 2018-10-12 厦门海迈科技股份有限公司 Method of data synchronization between isomeric relationship type database
CN109582731A (en) * 2018-10-18 2019-04-05 恒峰信息技术有限公司 A kind of real time data synchronization method and system
CN110674213A (en) * 2019-08-30 2020-01-10 中国人民财产保险股份有限公司 Data synchronization method and device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434502A (en) * 2021-06-25 2021-09-24 北京明略软件系统有限公司 Heterogeneous database consistency implementation method and system, electronic device and storage medium
CN113434502B (en) * 2021-06-25 2024-03-01 南京明略科技有限公司 Heterogeneous database consistency implementation method, system, electronic equipment and storage medium
CN113946628A (en) * 2021-10-27 2022-01-18 中国建设银行股份有限公司 Data synchronization method and device based on interceptor
CN116975159A (en) * 2023-09-25 2023-10-31 云筑信息科技(成都)有限公司 Incremental data synchronization processing method
CN116975159B (en) * 2023-09-25 2024-02-23 云筑信息科技(成都)有限公司 Incremental data synchronization processing method

Similar Documents

Publication Publication Date Title
CN112905613A (en) Data bidirectional synchronization method and device for heterogeneous database
US8996466B2 (en) Extend crud to support lifecyle management and business continuity
US9311305B2 (en) Online upgrading of a database environment using transparently-patched seed data tables
CN107402963B (en) Search data construction method, incremental data pushing device and equipment
US7200626B1 (en) System and method for verification of a quiesced database copy
US8825601B2 (en) Logical data backup and rollback using incremental capture in a distributed database
US9798792B2 (en) Replication for on-line hot-standby database
EP1019807B1 (en) Method of migrating to a successive level of a software distribution incorporating local modifications
CN108509462B (en) Method and device for synchronizing activity transaction table
US7792800B1 (en) Data repository upgrade process
CN111753013A (en) Distributed transaction processing method and device
CN112131237A (en) Data synchronization method, device, equipment and computer readable medium
CN110515774A (en) Generation method, device, electronic equipment and the storage medium of memory image
US11537570B2 (en) Systems and/or methods for migrating live database schemas to support zero downtime deployments with zero data losses
CN111061748A (en) Hot account accounting method and device
CN113868028A (en) Method for replaying log on data node, data node and system
JP2020530155A (en) Systems and methods for redundant array data alignment
US20230315713A1 (en) Operation request processing method, apparatus, device, readable storage medium, and system
CN102597995B (en) Synchronizing database and non-database resources
CN109101368A (en) A kind of data processing method and device
CN111240891A (en) Data recovery method and device based on data consistency among multiple tables of database
US7516144B2 (en) Method and system for re-population of data in a database
CN114490570A (en) Production data synchronization method and device, data synchronization system and server
CN114328715A (en) Data synchronization method and device and computer readable storage medium
CN103685350B (en) The synchronous method of storage system and relevant equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination