CN112905613A - Data bidirectional synchronization method and device for heterogeneous database - Google Patents
Data bidirectional synchronization method and device for heterogeneous database Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000002457 bidirectional effect Effects 0.000 title claims abstract description 45
- 238000013515 script Methods 0.000 claims abstract description 128
- 238000012423 maintenance Methods 0.000 claims abstract description 111
- 230000008859 change Effects 0.000 claims abstract description 58
- 230000001360 synchronised effect Effects 0.000 claims description 138
- 238000001914 filtration Methods 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 18
- 238000012216 screening Methods 0.000 claims description 13
- 238000003860 storage Methods 0.000 claims description 12
- 238000005096 rolling process Methods 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 description 61
- 238000010586 diagram Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000012217 deletion Methods 0.000 description 5
- 230000037430 deletion Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000009977 dual effect Effects 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, 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
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.
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)
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)
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 |
-
2021
- 2021-02-08 CN CN202110171172.5A patent/CN112905613A/en active Pending
Patent Citations (5)
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)
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 |