CN109189608B - A kind of method guaranteeing duplication transaction consistency and corresponding reproducing unit - Google Patents

A kind of method guaranteeing duplication transaction consistency and corresponding reproducing unit Download PDF

Info

Publication number
CN109189608B
CN109189608B CN201810917819.2A CN201810917819A CN109189608B CN 109189608 B CN109189608 B CN 109189608B CN 201810917819 A CN201810917819 A CN 201810917819A CN 109189608 B CN109189608 B CN 109189608B
Authority
CN
China
Prior art keywords
transaction
log
sequence number
origin
range check
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810917819.2A
Other languages
Chinese (zh)
Other versions
CN109189608A (en
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.)
Wuhan Dream Database Co ltd
Original Assignee
Wuhan Dameng Database Co Ltd
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 Wuhan Dameng Database Co Ltd filed Critical Wuhan Dameng Database Co Ltd
Priority to CN201910604048.6A priority Critical patent/CN110262929B/en
Priority to CN201810917819.2A priority patent/CN109189608B/en
Publication of CN109189608A publication Critical patent/CN109189608A/en
Application granted granted Critical
Publication of CN109189608B publication Critical patent/CN109189608B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • 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

Abstract

The present invention provides a kind of method for guaranteeing duplication transaction consistency and corresponding reproducing units, it include: the origin log sequence number for obtaining the active transaction that source database occurs earliest, by the origin log sequence number of the active transaction occurred earliest labeled as recovery starting point;The origin log sequence number of the two neighboring active transaction of source database is obtained, and when the difference of the origin log sequence number of two neighboring active transaction is greater than preset threshold, the origin log sequence number of two neighboring active transaction is labeled as range check point;Source database transaction journal is obtained, deletes and submits log serial number no more than the transaction journal for restoring starting point and the transaction journal for submitting log serial number to fall into range check point;According to recovery starting point, range check point and have been filed on transaction journal progress data recovery.The present invention, to submitting transaction table to be compressed, can effectively reduce the scale for submitting transaction table using range check point mechanism.

Description

A kind of method guaranteeing duplication transaction consistency and corresponding reproducing unit
[technical field]
The present invention relates to database synchronization technical field, more particularly to a kind of method for guaranteeing duplication transaction consistency with And corresponding reproducing unit.
[background technique]
Database data real-time synchronization is to improve information system availability, guarantees a kind of technical solution of business continuance. By real time data synchronization, the business datum of target database and source database keeps realtime uniform, when event occurs in source database After barrier interrupts service, application system can be rapidly switched to target database, guarantee the requirement of business continuance.
The real-time reproduction technology of database data based on log analysis has performance and data pattern shadow to source database Ring it is small, support heterogeneous operating system and database platform, the features such as data replication performance is high, emergency calamity is standby, multi-service center, It is used widely in the fields such as heterogeneous resource integration, Data Migration.This technology captures process by the log of source and captures source The online log of database or archive log, then analyze database INSERT (insertion), UPDATE (update) and DELETE (deletion) operates the message package for being converted to internal specific format, then message package is passed through TCP/IP (Transmission Control Protocol/Internet Protocol, writes a Chinese character in simplified form TCP/IP) network is sent to the target side of dubbing system, target After end receives message package, processing of unpacking is carried out, the transaction information of source is reverted into corresponding SQL (Structured Query Language writes a Chinese character in simplified form SQL) sentence, duplication in real time is executed in target database by local data bank interface, to realize database Data are synchronous.
For the data consistency for guaranteeing source database and target database, the database data based on log analysis replicates skill Art is usually minimum replicator with the affairs of source database, and it is multiple to carry out real time data in strict accordance with source database affairs sequence System ensures the integrality and consistency of the affairs of target database and source database, it is ensured that target database meets source database The affair logic.Therefore, in the database data reproduction technology based on log analysis, key problem in technology is how to ensure source The transaction consistency of database and target database, especially after dubbing system failure, target database can be according to The requirement of transactional integrity and consistency is correctly restored.
Currently, the integrality and consistency of the duplication affairs in order to guarantee target database and source database, general to use Method it is as follows: create a submissions transaction table in target database and record completed submission transaction information, and using examining Mechanism is made an inventory of to submitting transaction table to safeguard, record restores start point information.The technical characteristics of the checkpointing mechanism are, The minimum log serial number of active transaction in source database is taken out first;Then it is deleted in the submission transaction table of target database Less than or equal to all submission transaction informations of the minimum log serial number;The minimum log serial number is finally inserted into submission thing It is engaged in being used as a check point record in table.When dubbing system failure is restored, from the minimum log sequence of check point record Row number starts to restore, and ensures the transaction consistency after fault recovery with this.
But there are one for the above-mentioned method that the transaction consistency after dubbing system fault recovery is ensured based on checkpointing mechanism Fixed deficiency: it when there is the Long routine that do not submit for a long time in source database, is write by the origin log sequence number of the Long routine Enter after submitting transaction table, dubbing system may have been carried out a large amount of transaction operation before failure generation.Because of Long routine one It does not submit directly, causes the corresponding log serial number in checkpoint that cannot promote, expired transaction information cannot be timely in submission transaction table It deletes, causes to submit transaction table scale excessive.In fault recovery, target side duplicating process, which needs to load, submits transaction table letter Breath, for judging whether the affairs after recovery starting point need to reform.Submit excessive will cause of transaction table that transaction information is submitted to add Load takes long time, and increases dubbing system recovery time, while also increasing the consumption of dubbing system memory source.
In consideration of it, overcoming defect present in the prior art is the art urgent problem to be solved.
[summary of the invention]
Cause to submit in transaction table the technical problem to be solved by the present invention is to the presence due to Long routine and is stored with largely mistake Phase transaction information causes to submit transaction table memory excessive, occupies resource.Meanwhile dubbing system breaks down when being restored, and mentions It hands over excessive will cause of transaction table that transaction information load is submitted to take long time, increases dubbing system recovery time, while also increasing multiple System memory resource consumption processed.
The embodiment of the present invention adopts the following technical scheme that
In a first aspect, the present invention provides a kind of method for guaranteeing duplication transaction consistency, the guarantee replicates consistent affairs The method of property includes:
The origin log sequence number for obtaining the active transaction that source database occurs earliest, by the activity thing occurred earliest The origin log sequence number of business is labeled as recovery starting point;
The origin log sequence number of the two neighboring active transaction of source database is obtained, and in the two neighboring active transaction Origin log sequence number difference be greater than preset threshold when, by the origin log sequence number mark of the two neighboring active transaction It is denoted as range check point;
Source database transaction journal is obtained, deletes and submits log serial number no more than the transaction journal for restoring starting point And log serial number is submitted to fall into the transaction journal of range check point to obtain having been filed on transaction journal;
In fault recovery, according to the recovery starting point, range check point and described transaction journal is had been filed on Data recovery is carried out, to guarantee the transaction consistency of source database and target database.
Preferably, the origin log sequence number for obtaining the active transaction that source database occurs earliest, will be described earliest The origin log sequence number of the active transaction of generation is labeled as restoring starting point
Using the origin log sequence number for the active transaction that timer timing acquisition source database occurs earliest;
Judge the origin log sequence number for the active transaction for determining that current time source database occurs earliest relative to upper one Whether the origin log sequence number for the active transaction that moment source database occurs earliest changes;
Origin log sequence number weight if changing, according to the active transaction that current time source database occurs earliest New setting restores starting point.
Preferably, the origin log sequence number for obtaining the two neighboring active transaction of source database, and described adjacent When the difference of the origin log sequence number of two active transactions is greater than preset threshold, by the starting of the two neighboring active transaction Log serial number is labeled as range check point
Successively obtain the origin log sequence number of the two neighboring active transaction of source database;
Judge to determine whether the difference of the origin log sequence number of the two neighboring active transaction is greater than preset threshold;
If the difference of the origin log sequence number of the two neighboring active transaction is greater than preset threshold, will be described adjacent The origin log sequence number of two active transactions is labeled as a range check point;
Range check point is stored in the form of two-dimensional array, wherein a line of two-dimensional array corresponds to one of model Enclose checkpoint.
Preferably, in fault recovery, according to the recovery starting point, range check point and described thing is had been filed on Business record carries out data recovery
The recovery starting point is sent to the source database and receives operation log transmitted by the source database, Wherein, the log serial number of the operation log is greater than the corresponding log serial number of the recovery starting point;
Parsing is carried out to the operation log and obtains the submission log serial number of the corresponding affairs of the operation log, and is sentenced It is disconnected to determine whether the submission log serial number falls into the range check point;
If the submission log serial number is fallen into the range check point, the corresponding affairs of the operation log therefore Barrier has been loaded into target database before occurring, and ignores the operation log.
Preferably, the method for guaranteeing duplication transaction consistency further include:
If the submission log serial number is not fallen in the range check point, the corresponding affairs of the operation log exist Failure is not loaded onto target database before occurring, the operation log needs synchronous in target database.
Preferably, if the submission log serial number is not fallen in the range check point, the operation log Corresponding affairs are not loaded onto target database before failure occurs, and the operation log is needed in target database synchronous package It includes:
When receiving the submission log of the corresponding affairs of the operation log, by the operation log corresponding affairs day Will has been filed on transaction journal described in being added to;
It is synchronous that data are carried out to target database according to the operation log corresponding transaction journal.
Preferably, the method for guaranteeing duplication transaction consistency further include:
Parsing is carried out to the operation log and obtains the corresponding Transaction Identifier code of the operation log;
Judgement determines that the Transaction Identifier code whether there is in having been filed in transaction journal;
If it exists, then the corresponding affairs of the operation log have been loaded into target database before failure occurs, and ignore The operation log;
If it does not exist, then it executes and the submission that parsing obtains the corresponding affairs of the operation log is carried out to the operation log Log serial number, and judge to determine whether the submission log serial number falls into the range check point.
Preferably, described that the submission log that parsing obtains the corresponding affairs of the operation log is carried out to the operation log Sequence number, and judge that determining whether the submission log serial number falls into the range check point includes:
The submission log serial number that parsing obtains the corresponding affairs of the operation log is carried out to the operation log;
It is positioned, is judged described in determination in the two-dimensional array comprising multiple range check points using binary chop algorithm Submit whether log serial number falls into range check point.
Preferably, the origin log sequence number for obtaining the active transaction that source database occurs earliest, will be described earliest Before the origin log sequence number of the active transaction of generation is labeled as recovery starting point further include:
Creation submits transaction table and does not submit transaction table, and the submission transaction table is used for recovery of stomge starting point, range Checkpoint and transaction journal is had been filed on, it is described not submit transaction table for storing the transaction journal for not submitting affairs.
Second aspect, the present invention provide a kind of reproducing unit, including at least one processor;And with described at least one The memory of a processor communication connection;Wherein, the memory is stored with the finger that can be executed by least one described processor It enables, the method that described instruction is arranged to carry out guarantee duplication transaction consistency described in first aspect by program.
The third aspect, the present invention also provides a kind of nonvolatile computer storage media, the computer storage medium Computer executable instructions are stored with, which is executed by one or more processors, for completing first The method of guarantee duplication transaction consistency described in aspect.
Compared with prior art, the beneficial effect of the embodiment of the present invention is: model is arranged according to preset threshold value in the present invention Checkpoint is enclosed, and the transaction journal for submitting log serial number to fall into range check point is deleted, using range check point mechanism mark Remember the affairs that have been filed on, that is, usage log sequence number range indicates affairs that batch has been filed on, even if there is length in database The Long routine that time does not submit also can be deleted effectively and timely and have expired submission transaction information, carry out to submission transaction table Compression can effectively reduce the scale for submitting transaction table.Meanwhile when dubbing system breaks down and restores, range can be based on Whether checkpoint determines respective transaction synchronized mistake, can effectively shorten dubbing system recovery time and memory source disappears Consumption.
[Detailed description of the invention]
In order to illustrate the technical solution of the embodiments of the present invention more clearly, will make below to required in the embodiment of the present invention Attached drawing is briefly described.It should be evident that drawings described below is only some embodiments of the present invention, for For those of ordinary skill in the art, without creative efforts, it can also be obtained according to these attached drawings other Attached drawing.
Fig. 1 is a kind of structural schematic diagram of dubbing system provided in an embodiment of the present invention;
Fig. 2 is a kind of flow diagram of method for guaranteeing duplication transaction consistency provided in an embodiment of the present invention;
Fig. 3 a is that the embodiment of the present invention provides a kind of data structure schematic diagram for submitting transaction table;
Fig. 3 b is the two-dimensional array data structure schematic diagram that the embodiment of the present invention includes multiple range check points;
Fig. 3 c is the data structure schematic diagram that one kind provided in an embodiment of the present invention does not submit transaction table;
Fig. 4 is the idiographic flow schematic diagram of step 204 in Fig. 2;
Fig. 5 is a kind of structural schematic diagram of reproducing unit provided in an embodiment of the present invention.
[specific embodiment]
In order to make the objectives, technical solutions, and advantages of the present invention clearer, with reference to the accompanying drawings and embodiments, right The present invention is further elaborated.It should be appreciated that the specific embodiments described herein are merely illustrative of the present invention, and It is not used in the restriction present invention.
Embodiment 1:
Refering to fig. 1, in the present embodiment, dubbing system includes source database 1, reproducing unit and target database 2, is answered Device processed is connect with source database 1 and target database 2 respectively, to guarantee source by the Data Replication Technology in Mobile based on log analysis The affairs of database 1 and target database 2 are consistent, and then realize that data are synchronous.
Specifically, reproducing unit includes source Replication Tools 31 and target side Replication Tools 32.Wherein, source replicates Tool 31 is connect with source database 1, and source Replication Tools 31 access source database 1 by source duplicating process;Target side replicates work Tool 32 is connect with target database 2, and target side Replication Tools 32 pass through target duplicating process access target database 2;Source duplication The data of source database 1 are copied to target database 2, to realize source database 1 by process and the interaction of target duplicating process The function synchronous with 2 data of target database.
Wherein, source database 1 and target database 2 can be isomorphism database, or heterogeneous database, Ke Yiyi It is designed according to concrete condition, here, being not specifically limited.Wherein, source database 1 and target database 2 can respectively correspond for SQLSERVER database, MYSQL database, DB2 database, DM6 database, DM7 database, POSTGRESQL database or Any one of ORACLE database.
In practical application scene, when the starting of target side Replication Tools 32, first by target duplicating process in target It searches whether to exist in database 2 and submits transaction table, if it does not exist, then transaction table is submitted in the triggering creation of target database 2.Its In, target database 2 carries out corresponding operation to the corresponding object of the affairs according to the transaction journal submitted in transaction table, with reality Existing data are synchronous.Wherein, transaction table is submitted to have been filed on transaction journal for storing, restore starting point and check point range.It mentions Transaction table is handed over to can be understood as data registration form, for recording synchronized transaction operation.
About submitting the datarams structure of transaction table as shown in Figure 3a, submits in the datarams structure of transaction table and include Three field names TID, SEQID and END_SCN.Wherein, TID is the identification code of affairs, is the unique identification of affairs, SEQID Start to operate for affairs, END_SCN is transaction commit operation.There are three types of different records to believe in the submission transaction table of the present embodiment Breath, specific as follows based on different recording information data internal storage structures difference:
The first record information: the first record information restores the corresponding log serial number of starting point, TID for recording Field contents are 0, SEQID field to restore the corresponding log serial number of starting point, and END_SCN value is 0.In other embodiments In, TID may be other spcial characters, and it is to restore starting point that record information can be distinguished according to the spcial character.Together Sample, END_SCN may be other numerical value.
Second of record information: second of record information is to have mentioned for recording the affairs having been filed on, TID field content The identification code of the affairs of friendship, identification code are the unique identifications of affairs, are extracted from the log recording of source database 1, be one just Integer;SEQID is the origin log sequence number for the affairs having been filed on, and is extracted from the log recording of source database 1, the log sequence Row number is constantly incremented by with database manipulation;END_SCN is the submission log serial number for having been filed on affairs, from source database 1 It is extracted in log recording, which is constantly incremented by with database manipulation.
The third record information: the third record information is used for the corresponding log serial number in recording interval checkpoint.Its TID Field contents are the starting sequence number LSN1, END_ that -1, SEQID is the active transaction more early occurred in two neighboring active transaction SCN is the starting sequence number LSN2 of the active transaction of later generation in two neighboring active transaction, wherein LSN1 and LSN2 meets Following condition: LSN2-LSN1 > RANGE, wherein RANGE is preset threshold.It wherein, can depending on preset threshold foundation actual conditions Think 400,500,1000 or other numerical value.In other embodiments, TID may be other spcial characters, being capable of foundation It is range check point that the spcial character, which distinguishes record information,.
Target duplicating process needs that above-mentioned three kinds of records information in transaction table will be submitted to be loaded onto number of targets on startup In memory data structure according to library 2.Target side Replication Tools 32 using following query statement first will submit transaction table information from It is checked out in target database 2: SELECT SEQID, TID, END_SCN FROM " submitting transaction table " ORDER BY SEQID.Then, the first record, second of record are loaded onto memory hash data structure by search key of TID field, The third record is stored in the form of two-dimensional array.The datarams structure of two-dimensional array is specifically such as Fig. 3 b, the two-dimemsional number Group includes two column, depending on line number is according to the number of range check point, the corresponding range check point of every a line of two-dimensional array. Wherein, LSNAAnd LSNBForm a range check point, LSNCAnd LSNDForm a range check point, LSNEAnd LSNFComposition one A range check point, LSNXAnd LSNYA range check point is formed, and so on.Wherein, the log serial number that the left side one arranges Value corresponds to the value for the element that array index is [0], and it is [1] that the value for the log serial number that the right one arranges, which corresponds to array index, The value of element.By this way, by two log serial numbers of the condition that meets be correspondingly arranged for range check point maximum value and Minimum value, to form range check point section.
Meanwhile target side Replication Tools 32 create in its memory and do not submit transaction table.Wherein, transaction table is not submitted to be used for Store the transaction journal of active transaction (affairs that do not submit).Wherein, transaction journal includes the startup operation log (of the affairs One operation log), at least one intermediary operation log and submit operation log (the last one operation log).When receiving When submitting operation log, the corresponding transaction journal of the affairs is stored to submission transaction table.About the number for not submitting transaction table According to internal storage structure such as Fig. 3 c, not submitting includes two field names TID and SEQID in the datarams structure of transaction table.Wherein, TID is the identification code of affairs, and SEQID is the origin log sequence number for the affairs that do not submit, from the log recording of source database 1 It extracts, which is constantly incremented by with database manipulation.
After creating submission transaction table and not submitting transaction table, reproducing unit obtains recovery according to actual conditions in real time Starting point and range check point are to update submission transaction table and not submit the data stored in transaction table, in order to dubbing system event When barrier, according to submit transaction table in recovery starting point, range check point and have been filed on transaction journal carry out data recovery.
In practical application scene, dubbing system may break down, when in order to guarantee failure reduction, source database 1 With the consistency of 2 affairs of target database, while in order to guarantee that dubbing system can accurately and efficiently be restored, this implementation Example provides a kind of method for guaranteeing duplication transaction consistency, referring specifically to Fig. 2.
Step 201: the origin log sequence number for the active transaction that source database occurs earliest is obtained, by the earliest generation Active transaction origin log sequence number labeled as restore starting point.
Wherein, log serial number is used to represent the physics affairs generated inside Database Systems, and log serial number exists There is global uniqueness, and log serial number is gradually incremented by with the operation of database in the journal file of Database Systems, with Distinguish different physics affairs.Currently, most of data base management systems use LSN (Log sequence number, abbreviation LSN the physics affairs generated inside Database Systems) are represented, for example, the number such as SQLSERVER, MYSQL, DB2, DM6, DM7 According to base management system.
Wherein, active transaction refers to the affairs that do not submit.It is just changed to have been filed on affairs after active transaction is submitted, it should The corresponding operation of affairs will be updated in database.
In the present embodiment, during source database is synchronous with targeted database data, source database may be always There is transaction operation executing, is submitted etc. for example, generating a new affairs or some active transaction.That is, with The object that is referred to of the active transaction that occurs earliest of passage of time can change, then correspondingly, the work occurred earliest The dynamic corresponding origin log sequence number of affairs can also change.
Therefore, in order to guarantee to get most accurate recovery starting point (before failure occurs and when occurring closest to failure The corresponding recovery starting point of punctum is most accurately to restore starting point), in a preferred embodiment, using timer timing acquisition The origin log sequence number for the active transaction that source database occurs earliest, and judge to determine that current time source database occurs earliest Active transaction the origin log of active transaction that occurs earliest relative to last moment source database of origin log sequence number Whether sequence number changes;Starting if changing, according to the active transaction that current time source database occurs earliest Log serial number resets recovery starting point.And the recovery starting point reset is updated into submission transaction table.
Specifically, judging the origin log sequence number for the active transaction for determining that current time source database occurs earliest is The origin log sequence number of the no active transaction occurred earliest greater than last moment source database;If more than, then according to it is current when It carves the origin log sequence number of active transaction that source database occurs earliest and resets recovery starting point, and will reset Restore starting point to update into submission transaction table.
In practical application scene, it is assumed that the origin log sequence for the active transaction that current time source database occurs earliest Number be LSN0, the origin log Serial No. LSN for the active transaction that last moment source database occurs earliest, when LSN0 is greater than When LSN, the record of all records of the END_SCN less than or equal to the LSN0 and TID equal to 0, tool are deleted in submitting transaction table Following sentence can be performed in body:
BEGIN
DELET FROM " submitting transaction table " WHERE END_SCN≤LSN0OR TID=0;
INSERT INTO " submitting transaction table " VALUES (0, LSN0-1,0);
END
It is understood that log serial number can will be submitted to set again no more than this after resetting starting recovery point The transaction journal for the starting recovery point set is deleted from submission transaction table.
Step 202: obtaining the origin log sequence number of the two neighboring active transaction of source database, and described two neighboring When the difference of the origin log sequence number of active transaction is greater than preset threshold, by the origin log of the two neighboring active transaction Sequence number is labeled as range check point.
In the present embodiment, the origin log sequence number of the two neighboring active transaction of source database is successively obtained, judgement is true Whether the difference of the origin log sequence number of the fixed two neighboring active transaction is greater than preset threshold, if the two neighboring work The difference of the origin log sequence number of dynamic affairs is greater than preset threshold, then by the origin log sequence of the two neighboring active transaction Row number is labeled as a range check point, multiple range check points is stored in the form of two-dimensional array, wherein two-dimensional array A line correspond to one of range check point.
For example, not submitting in transaction table has n active transaction, the origin log Serial No. of first active transaction LSN1, the origin log Serial No. LSN2 of second active transaction, third active transaction origin log Serial No. The origin log Serial No. LSNn of n-th of active transaction of LSN3 ....First, it is determined that determine LSN2-LSN1 difference whether Greater than preset threshold value, if it is greater than preset threshold value, then by the origin log Serial No. LSN1 of first active transaction and The origin log Serial No. LSN2 of second active transaction is labeled as first range check point, and following SQL specifically can be performed Sentence:
BEGIN
DELETE FROM " submitting transaction table " WHERE SEQID>LSN1AND SEQID<LSN2AND END_SCN< LSN2AND TID>0;
INSERT INTO " submitting transaction table " VALUES (- 1, LSN1, LSN2);
END
Then, judge to determine whether the difference of LSN3-LSN2 is greater than preset threshold value, if it is greater than preset threshold value, then By the origin log Serial No. LSN3 of the origin log Serial No. LSN2 of second active transaction and third active transaction Labeled as second range check point, and so on, obtain all range check points.
In the present embodiment, aforementioned all range check points are stored in the form of two-dimensional array, wherein two dimension A line of array corresponds to one of range check point.Array index is that the element of [0] records lesser origin log sequence number, Array index is that the element of [1] records biggish origin log sequence number.By mode above-mentioned, range check point is set, then according to Whether it has been submitted according to range check point label affairs, can have effectively reduced and submit the occupied memory of transaction table.
Step 203: obtaining source database transaction journal, delete and log serial number is submitted to be less than the thing for restoring starting point Business log and submission log serial number fall into the transaction journal of range check point to obtain having been filed on transaction journal.
In the present embodiment, source Replication Tools implement access source database to obtain source database transaction journal, and will The transaction journal got is sent to target side Replication Tools, and target side Replication Tools submit the logged sequence of log according to affairs Number size execute corresponding operation.
Log serial number is submitted to be less than the affairs day for restoring starting point specifically, target side Replication Tools are deleted first Then will, then deletes and log serial number is submitted to fall into the transaction journal of range check point, while by respective range point corresponding two A origin log sequence number, which is inserted into, to be submitted in transaction table.In this way, recording information using a line range check point, batch is indicated Transaction information is submitted, to submitting transaction table to be compressed, Long routine is avoided to lead to the situation for submitting transaction table scale excessive Occur.
It should be noted that when there is the log serial number of at least one transaction journal to fall into some range check point When, which is inserted into and is submitted in transaction table, indicates the submission transaction information of batch.When no any transaction journal Log serial number when falling into some range check point, then the range check point is submitted in transaction table without being recorded in.
Step 204: in fault recovery, according to the recovery starting point, range check point and described having been filed on Transaction journal carries out data recovery, to guarantee the transaction consistency of source database and target database.
In the present embodiment, in dubbing system fault recovery, target side Replication Tools load first submits transaction table letter Breath into internal storage structure, range check point is stored in the form of two-dimensional array, dubbing system by from submit transaction table The recovery starting point of middle acquisition is restored.
Referring specifically to Fig. 3, step 204: in fault recovery, according to the recovery starting point, range check point And it is described have been filed on transaction journal and carry out data recovery, to guarantee that the transaction consistency of source database and target database includes Following steps:
Step 2041: the recovery starting point being sent to the source database and is received transmitted by the source database Operation log, wherein the log serial number of the operation log is greater than the corresponding log serial number of the recovery starting point.
In the present embodiment, for dubbing system when carrying out fault recovery, source database must obtain recovery starting point, foundation Restore starting point and sends transaction journal to target database.Wherein, restoring starting point is that source database is sent out earliest when failure occurs The origin log sequence number of raw active transaction.
Specifically, source Replication Tools start source duplicating process, and extensive to target side Replication Tools transmission request The command messages of multiple starting point, to obtain the origin log sequence number of log analysis.It is multiple that target side Replication Tools receive source After the request instruction of tool processed, following inquiry: SELECT SEQID FROM " submitting transaction table " WHERE TID=0 is executed, into And restore the corresponding log serial number of starting point from submitting to obtain in transaction table.The recovery that target side Replication Tools will acquire rises The corresponding log serial number of initial point is sent to source Replication Tools, and source Replication Tools, which receive, restores the corresponding log of starting point After sequence number, point location log analysis point is originated according to the recovery in source database.That is, source Replication Tools are from source database The operation log that log serial number is greater than the corresponding log serial number of the recovery starting point is obtained, and operation log is sent to Target side Replication Tools.
Step 2042: parsing being carried out to the operation log and obtains the corresponding Transaction Identifier code of the operation log.
In the present embodiment, target side Replication Tools carry out parsing to operation log and obtain the corresponding affairs mark of operation log Know code.
Step 2043: judgement determines that the Transaction Identifier code whether there is in having been filed in transaction journal, and if it exists, then holds Row step 2044;If it does not exist, 2045 are thened follow the steps.
In the present embodiment, after the submission log for receiving affairs, existed first using the identification code of affairs as search key Transaction table content is submitted to scan for, to judge to determine that Transaction Identifier code whether there is in having been filed in transaction journal.If it exists, Then follow the steps 2044;If it does not exist, 2045 are thened follow the steps.
Step 2044: then the corresponding affairs of the operation log have been loaded into target database before failure occurs, suddenly The slightly described operation log.
It is had been filed in transaction journal if the Transaction Identifier code is present in, illustrates the corresponding affairs of the operation log in failure It has been loaded into target database before occurring, has ignored the operation log.
Step 2045: the submission log sequence that parsing obtains the corresponding affairs of the operation log is carried out to the operation log Row number, and judge to determine whether the submission log serial number falls into the range check point.
If the Transaction Identifier code is not present in having been filed in transaction journal, parsing is carried out to operation log and obtains operation day The submission log serial number of the corresponding affairs of will, and judge to determine and submit whether log serial number falls into range check point.For The accuracy of judgement is improved, in a preferred embodiment, if the Transaction Identifier code is not present in having been filed in transaction journal, The submission log serial number and origin log sequence number that parsing obtains the corresponding affairs of operation log are carried out to operation log, and Judge to determine and submits whether log serial number and origin log sequence number fall into range check point.If submitting log serial number And origin log sequence number is each fallen in range check point, then the corresponding affairs of operation log have loaded before failure occurs To target database, ignore operation log.
In a preferred embodiment, due to submitting, there may be multiple range check points in transaction table, search to improve Speed, can be positioned in the two-dimensional array comprising multiple range check points using binary chop algorithm, judge to determine Whether the submission log serial number falls into range check point.
Step 2046: if the submission log serial number is fallen into the range check point, the operation log is corresponding Affairs failure occur before be loaded into target database, ignore the operation log.
In this embodiment, if log serial number is submitted to fall into range check point, the corresponding affairs of operation log are in event Barrier has been loaded into target database before occurring, and ignores operation log.
For example, it is assumed that the submission log Serial No. LSN_COMMIT of the submission affairs.In some range check point compared with Small log serial number is LSN_C, and biggish log serial number is LSN_D.
If LSN_C < LSN_COMMIT < LSN_D, log serial number LSN_COMMIT is submitted to fall into range check point It is interior, show that the submission affairs have been loaded into target database before failure occurs, ignores the operation log.
To improve the accuracy judged, in another embodiment, if submitting log serial number and origin log sequence It number each falls in range check point, then the corresponding affairs of operation log have been loaded into target database before failure occurs, suddenly Slightly operation log.
For example, it is assumed that the origin log Serial No. LSN_START of the submission affairs, the submission log sequence of the submission affairs Row number is LSN_COMMIT.Lesser log serial number is LSN_C in some range check point, and biggish log serial number is LSN_D。
If LSN_C < LSN_START < LSN_D, LSN_C < LSN_COMMIT < LSN_D, then origin log Serial No. LSN_START and submission log serial number LSN_COMMIT, which is each fallen in range check point, then shows that the submission affairs are sent out in failure It has been loaded into target database before death, has ignored the operation log.
Step 2047: if the submission log serial number is not fallen in the range check point, the operation log pair The affairs answered are not loaded onto target database before failure occurs, and the operation log needs are synchronized in target database.
If log serial number is submitted not fall in range check point, the corresponding affairs of operation log are preceding not in failure generation It is loaded onto target database, operation log is synchronized in target database.Specifically, to receive operation log corresponding When the submission log of affairs, first determines whether to determine and submit whether log serial number falls into range check point, if not falling within range In checkpoint, then the corresponding transaction journal of operation log is added to and has been filed on transaction journal, it is then, corresponding according to operation log Transaction journal to carry out data to target database synchronous.
It is different from the prior art, range check point is arranged according to preset threshold value in the present invention, and will submit log serial number The transaction journal for falling into range check point is deleted, and the affairs having been filed on is marked using range check point mechanism, that is, usage log sequence Row number range indicates the affairs that have been filed on of batch, even if there is the Long routine that do not submit for a long time in database, also can be effective It timely deletes and has expired submission transaction information, to submitting transaction table to be compressed, submission transaction table can be effectively reduced Scale.Meanwhile when dubbing system breaks down and restores, it can determine respective transaction whether together based on range check point Walked, can effectively shorten dubbing system recovery time and memory source consumption.
Embodiment 2:
Referring to Fig. 5, Fig. 5 reproducing unit is a kind of structural schematic diagram of reproducing unit provided in an embodiment of the present invention.This The reproducing unit of embodiment includes one or more processors 51 and memory 52.Wherein, it is with a processor 51 in Fig. 5 Example.
Processor 51 can be connected with memory 52 by bus or other modes, to be connected as by bus in Fig. 5 Example.
Memory 52 can be used for storing non-as a kind of non-volatile computer readable storage medium storing program for executing synchronous based on data Volatibility software program, non-volatile computer executable program and module, as the guarantee in embodiment 1 replicates consistent affairs The method of property and corresponding program instruction.The non-volatile software journey that processor 51 is stored in memory 52 by operation Sequence, instruction and module, it is real thereby executing the various function application and data processing of the method for guaranteeing duplication transaction consistency The function of the method for the guarantee duplication transaction consistency of current embodiment 1.
Wherein, memory 52 may include high-speed random access memory, can also include nonvolatile memory, such as At least one disk memory, flush memory device or other non-volatile solid state memory parts.In some embodiments, it stores Optional device 52 includes the memory remotely located relative to processor 51, these remote memories can pass through network connection to place Manage device 51.The example of above-mentioned network includes but is not limited to internet, intranet, local area network, mobile radio communication and combinations thereof.
Method about guarantee duplication transaction consistency please refers to FIG. 1 to FIG. 4 and relevant verbal description here, no longer superfluous It states.
It is worth noting that in information exchange, implementation procedure between module, unit in above-mentioned apparatus and system etc. Hold, due to being based on same design with processing method embodiment of the invention, particular content be can be found in embodiment of the present invention method Narration, details are not described herein again.
Those of ordinary skill in the art will appreciate that all or part of the steps in the various methods of embodiment is can to lead to Program is crossed to instruct relevant hardware and complete, which can be stored in a computer readable storage medium, storage medium It may include: read-only memory (Read Only Memory, be abbreviated as ROM), random access memory (Random Access Memory is abbreviated as RAM), disk or CD etc..
The foregoing is merely illustrative of the preferred embodiments of the present invention, is not intended to limit the invention, all in essence of the invention Made any modifications, equivalent replacements, and improvements etc., should all be included in the protection scope of the present invention within mind and principle.

Claims (9)

1. a kind of method for guaranteeing duplication transaction consistency, which is characterized in that the method packet for guaranteeing duplication transaction consistency It includes:
The origin log sequence number for obtaining the active transaction that source database occurs earliest, by the active transaction occurred earliest Origin log sequence number is labeled as recovery starting point;
Obtain the origin log sequence number of the two neighboring active transaction of source database, and rising in the two neighboring active transaction When the difference of beginning log serial number is greater than preset threshold, the origin log sequence number of the two neighboring active transaction is labeled as Range check point;
Obtain source database transaction journal, delete submit log serial number no more than it is described restore starting point transaction journal and Log serial number is submitted to fall into the transaction journal of range check point to obtain having been filed on transaction journal;
In fault recovery, according to the recovery starting point, range check point and it is described have been filed on transaction journal carry out Data are restored, to guarantee the transaction consistency of source database and target database;
Wherein, in fault recovery, remember according to the recovery starting point, range check point and the affairs that have been filed on Record carries out data recovery
The recovery starting point is sent to the source database and receives operation log transmitted by the source database, In, the log serial number of the operation log is greater than the corresponding log serial number of the recovery starting point;
The submission log serial number that parsing obtains the corresponding affairs of the operation log is carried out to the operation log, and is judged true Whether the fixed submission log serial number falls into the range check point;
If the submission log serial number is fallen into the range check point, the corresponding affairs of the operation log are sent out in failure It has been loaded into target database before death, has ignored the operation log.
2. the method according to claim 1 for guaranteeing duplication transaction consistency, which is characterized in that the acquisition source database The origin log sequence number of the active transaction occurred earliest, by the origin log sequence number mark of the active transaction occurred earliest Being denoted as recovery starting point includes:
Using the origin log sequence number for the active transaction that timer timing acquisition source database occurs earliest;
Judge the origin log sequence number for the active transaction for determining that current time source database occurs earliest relative to last moment Whether the origin log sequence number for the active transaction that source database occurs earliest changes;
If changing, the origin log sequence number for the active transaction that foundation current time source database occurs earliest is set again Set recovery starting point.
3. the method according to claim 1 for guaranteeing duplication transaction consistency, which is characterized in that the acquisition source database The origin log sequence number of two neighboring active transaction, and the difference of the origin log sequence number in the two neighboring active transaction When value is greater than preset threshold, include: labeled as range check point by the origin log sequence number of the two neighboring active transaction
Successively obtain the origin log sequence number of the two neighboring active transaction of source database;
Judge to determine whether the difference of the origin log sequence number of the two neighboring active transaction is greater than preset threshold;
If the difference of the origin log sequence number of the two neighboring active transaction is greater than preset threshold, will be described two neighboring The origin log sequence number of active transaction is labeled as a range check point;
Range check point is stored in the form of two-dimensional array, wherein a line of two-dimensional array corresponds to one of range inspection It makes an inventory of.
4. the method according to claim 1 for guaranteeing duplication transaction consistency, which is characterized in that the guarantee replicates affairs The method of consistency further include:
If the submission log serial number is not fallen in the range check point, the corresponding affairs of the operation log are in failure It is not loaded onto target database before occurring, the operation log is added to and does not submit transaction table.
5. the method according to claim 4 for guaranteeing duplication transaction consistency, which is characterized in that the guarantee replicates affairs The method of consistency further include:
When receiving the submission log of the corresponding affairs of the operation log, the corresponding transaction journal of the operation log is added Transaction journal is had been filed on described in being added to;
It is synchronous that data are carried out to target database according to the operation log corresponding transaction journal.
6. the according to claim 1, method of guarantee duplication transaction consistency described in 4 or 5, which is characterized in that described to guarantee again The method of transaction consistency processed further include:
Parsing is carried out to the operation log and obtains the corresponding Transaction Identifier code of the operation log;
Judgement determines that the Transaction Identifier code whether there is in having been filed in transaction journal;
If it exists, then the corresponding affairs of the operation log have been loaded into target database before failure occurs, and ignore described Operation log;
If it does not exist, then it executes and the submission log that parsing obtains the corresponding affairs of the operation log is carried out to the operation log Sequence number, and judge to determine whether the submission log serial number falls into the range check point.
7. the according to claim 1, method of guarantee duplication transaction consistency described in 4 or 5, which is characterized in that described to described Operation log carries out parsing and obtains the submission log serial number of the corresponding affairs of the operation log, and judges to determine the submission Whether log serial number falls into the range check point
The submission log serial number that parsing obtains the corresponding affairs of the operation log is carried out to the operation log;
It is positioned in the two-dimensional array comprising multiple range check points using binary chop algorithm, judges to determine the submission Whether log serial number falls into range check point.
8. the method according to claim 1 for guaranteeing duplication transaction consistency, which is characterized in that the acquisition source database The origin log sequence number of the active transaction occurred earliest, by the origin log sequence number mark of the active transaction occurred earliest It is denoted as before restoring starting point further include:
Creation submits transaction table and does not submit transaction table, and the submission transaction table is used for recovery of stomge starting point, range check Transaction journal is put and has been filed on, it is described not submit transaction table for storing the transaction journal for not submitting affairs.
9. a kind of reproducing unit, which is characterized in that including at least one processor;And it is logical at least one described processor Believe the memory of connection;Wherein, the memory is stored with the instruction that can be executed by least one described processor, described instruction It is arranged to carry out by program and guarantees the method for replicating transaction consistency as claim 1 ~ 8 is described in any item.
CN201810917819.2A 2018-08-13 2018-08-13 A kind of method guaranteeing duplication transaction consistency and corresponding reproducing unit Active CN109189608B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910604048.6A CN110262929B (en) 2018-08-13 2018-08-13 Method for ensuring consistency of copying affairs and corresponding copying device
CN201810917819.2A CN109189608B (en) 2018-08-13 2018-08-13 A kind of method guaranteeing duplication transaction consistency and corresponding reproducing unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810917819.2A CN109189608B (en) 2018-08-13 2018-08-13 A kind of method guaranteeing duplication transaction consistency and corresponding reproducing unit

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201910604048.6A Division CN110262929B (en) 2018-08-13 2018-08-13 Method for ensuring consistency of copying affairs and corresponding copying device

Publications (2)

Publication Number Publication Date
CN109189608A CN109189608A (en) 2019-01-11
CN109189608B true CN109189608B (en) 2019-07-26

Family

ID=64921140

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201810917819.2A Active CN109189608B (en) 2018-08-13 2018-08-13 A kind of method guaranteeing duplication transaction consistency and corresponding reproducing unit
CN201910604048.6A Active CN110262929B (en) 2018-08-13 2018-08-13 Method for ensuring consistency of copying affairs and corresponding copying device

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201910604048.6A Active CN110262929B (en) 2018-08-13 2018-08-13 Method for ensuring consistency of copying affairs and corresponding copying device

Country Status (1)

Country Link
CN (2) CN109189608B (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110222009B (en) * 2019-05-28 2021-08-06 咪咕文化科技有限公司 Method and device for automatically processing Hive warehousing abnormal file
CN110457284B (en) * 2019-06-05 2022-11-29 黄疆 Multi-time point data recovery method and system based on SQLServer database
CN110347746B (en) * 2019-06-13 2020-06-26 武汉达梦数据库有限公司 Heterogeneous database synchronous data consistency checking method and device
CN110413693B (en) * 2019-07-31 2020-04-03 上海英方软件股份有限公司 Method and device for checking data consistency of database real-time synchronization system
CN113326315A (en) * 2020-02-28 2021-08-31 华为技术有限公司 Database replication system, method, source end equipment and destination end equipment
CN111694800B (en) * 2020-04-30 2023-03-24 武汉达梦数据库股份有限公司 Method for improving data synchronization performance and data synchronization system
CN111930693B (en) * 2020-05-28 2024-02-06 武汉达梦数据库股份有限公司 Transaction merging execution method and device based on log analysis synchronization
CN111858502A (en) * 2020-06-02 2020-10-30 武汉达梦数据库有限公司 Log reading method and log reading synchronization system based on log analysis synchronization
CN112307118B (en) * 2020-09-30 2024-03-22 武汉达梦数据库股份有限公司 Method for guaranteeing data consistency based on log analysis synchronization and synchronization system
US11669518B1 (en) * 2021-12-14 2023-06-06 Huawei Technologies Co., Ltd. Method and system for processing database transactions in a distributed online transaction processing (OLTP) database
CN114510495B (en) * 2022-04-21 2022-07-08 北京安华金和科技有限公司 Database service data consistency processing method and system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6079030A (en) * 1995-06-19 2000-06-20 Kabushiki Kaisha Toshiba Memory state recovering apparatus
CN104346454A (en) * 2014-10-30 2015-02-11 上海新炬网络技术有限公司 Data consistency verification method based on Oracle database
CN105574187A (en) * 2015-12-23 2016-05-11 武汉达梦数据库有限公司 Duplication transaction consistency guaranteeing method and system for heterogeneous databases
CN106844694A (en) * 2017-01-24 2017-06-13 恒生电子股份有限公司 For the method and apparatus of synchrodata
EP1789879B1 (en) * 2004-08-24 2017-11-15 Symantec Operating Corporation Recovering from storage transaction failures using checkpoints

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9672237B2 (en) * 2013-03-15 2017-06-06 Amazon Technologies, Inc. System-wide checkpoint avoidance for distributed database systems

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6079030A (en) * 1995-06-19 2000-06-20 Kabushiki Kaisha Toshiba Memory state recovering apparatus
EP1789879B1 (en) * 2004-08-24 2017-11-15 Symantec Operating Corporation Recovering from storage transaction failures using checkpoints
CN104346454A (en) * 2014-10-30 2015-02-11 上海新炬网络技术有限公司 Data consistency verification method based on Oracle database
CN105574187A (en) * 2015-12-23 2016-05-11 武汉达梦数据库有限公司 Duplication transaction consistency guaranteeing method and system for heterogeneous databases
CN106844694A (en) * 2017-01-24 2017-06-13 恒生电子股份有限公司 For the method and apparatus of synchrodata

Also Published As

Publication number Publication date
CN109189608A (en) 2019-01-11
CN110262929B (en) 2020-01-07
CN110262929A (en) 2019-09-20

Similar Documents

Publication Publication Date Title
CN109189608B (en) A kind of method guaranteeing duplication transaction consistency and corresponding reproducing unit
CN101809558B (en) System and method for remote asynchronous data replication
US20150213100A1 (en) Data synchronization method and system
US11256715B2 (en) Data backup method and apparatus
CN107515874B (en) Method and equipment for synchronizing incremental data in distributed non-relational database
CA2933790C (en) Apparatus and method for creating a real time database replica
US7801846B2 (en) Generating log sequence identifiers to apply a transaction to a storage system
US20060095478A1 (en) Consistent reintegration a failed primary instance
CN105574187B (en) A kind of Heterogeneous Database Replication transaction consistency support method and system
JP2006525599A (en) Flashback database
CN105824846B (en) Data migration method and device
CN111078667B (en) Data migration method and related device
JP2022013854A (en) Method and device for updating database by using two-phase commit distributed transaction
JP2006221628A (en) Method, system and product for replicating and restoring metadata
CN111797172B (en) Data migration method, device, equipment, distributed system and storage medium
US11748215B2 (en) Log management method, server, and database system
CN110457157B (en) Distributed transaction exception handling method and device, computer equipment and storage medium
EP4276651A1 (en) Log execution method and apparatus, and computer device and storage medium
JP2013222373A (en) Storage system, cache control program, and cache control method
CN102708166B (en) Data replication method, data recovery method and data recovery device
US20230315713A1 (en) Operation request processing method, apparatus, device, readable storage medium, and system
CN114741449A (en) Object storage method and device based on distributed database
CN109947592A (en) A kind of method of data synchronization, device and relevant device
CN110121712A (en) A kind of blog management method, server and Database Systems
CN108874592B (en) Data cold standby method and system for Log-structured storage engine

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
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: 430000 High-tech Avenue 999, Donghu New Technology Development Zone, Wuhan City, Hubei Province

Patentee after: Wuhan dream database Co.,Ltd.

Address before: 430000 High-tech Avenue 999, Donghu New Technology Development Zone, Wuhan City, Hubei Province

Patentee before: WUHAN DAMENG DATABASE Co.,Ltd.

CP01 Change in the name or title of a patent holder
TR01 Transfer of patent right

Effective date of registration: 20220908

Address after: 430073 16-19 / F, building C3, future science and technology building, 999 Gaoxin Avenue, Donghu New Technology Development Zone, Wuhan City, Hubei Province

Patentee after: Wuhan dream database Co.,Ltd.

Patentee after: HUAZHONG University OF SCIENCE AND TECHNOLOGY

Address before: 430000 16-19 / F, building C3, future technology building, 999 Gaoxin Avenue, Donghu New Technology Development Zone, Wuhan, Hubei Province

Patentee before: Wuhan dream database Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230801

Address after: 16-19/F, Building C3, Future Science and Technology Building, No. 999 Gaoxin Avenue, Donghu New Technology Development Zone, Wuhan City, Hubei Province, 430206

Patentee after: Wuhan dream database Co.,Ltd.

Address before: 430073 16-19 / F, building C3, future science and technology building, 999 Gaoxin Avenue, Donghu New Technology Development Zone, Wuhan City, Hubei Province

Patentee before: Wuhan dream database Co.,Ltd.

Patentee before: HUAZHONG University OF SCIENCE AND TECHNOLOGY

TR01 Transfer of patent right