Method and system for efficient data synchronization

US9727576B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9727576-B2
Application numberUS-201414570837-A
CountryUS
Kind codeB2
Filing dateDec 15, 2014
Priority dateDec 10, 2008
Publication dateAug 8, 2017
Grant dateAug 8, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Data synchronization includes establishing a plurality of target data tables based on a source data table in which data to be synchronized is stored, determining a current target data table from the plurality of target data tables, synchronizing the source data table and the current target data table, and directing an application server to access the current target data table upon successful completion of synchronization.

First claim

Opening claim text (preview).

What is claimed is: 1. A data synchronization method, comprising: establishing a plurality of target data tables based on a source data table in which data to be synchronized is stored, the plurality of target data tables including a first target data table and a second target data table; determining a current target data table from the plurality of target data tables, comprising: determining respective numbers of data records in the first target data table and the second target data table; in the event that a number of data records in one of the first target data table and the second target data table is zero, selecting the one target data table having a zero number of data records as the current target data table; and in the event that the respective numbers of data records in the first target data table and the second target data table are non-zero, determining that an abnormality has occurred; synchronizing the source data table and the current target data table, comprising: deleting a previous target data table; creating a new target data table as current target data table; determining a plurality of storage extents occupied by data that is to be synchronized in the source data table; determining storage address information of the data that is occupying the plurality of storage extends and that is to be synchronized in the source data table; and synchronizing the data to be synchronized in the respective storage extents into the newly created current target data table using the storage address information, comprising: dividing the storage extents into N groups; initiating N corresponding data synchronization processes; and synchronizing sequentially in each of the data synchronization processes the data in the respective storage extents in the corresponding one of the groups into the current target data table in accordance with the storage address information; and directing an application server to access the current target data table upon successful completion of synchronization. 2. The method of claim 1 , wherein the application server is directed to access the current target table via an upper view that has been previously updated to point to the current target table. 3. The method of claim 1 , wherein determining the current target data table from the plurality of target data tables comprises: selecting one of the target data tables with the number of data records being zero as the current target data table. 4. The method of claim 1 , wherein synchronizing the source data table and the current target data table comprises copying data directly from the source data table into the current target data table. 5. The method of claim 1 , wherein synchronizing the data to be synchronized in the respective storage extents into the current target data table using the storage address information comprises synchronizing sequentially the data in the respective storage extents into the current target data table in one data synchronization process in accordance with the storage address information. 6. The method of claim 1 , further comprising: reinitiating synchronizing the data in the respective storage extents into the current target data table in the event that the synchronizing failed; and terminating synchronizing the data in the storage extent when number of times of being reinitiated exceeds a preset threshold. 7. The method of claim 1 , further comprising: clearing a target data table that is other than the current target data table upon successful completion of synchronizing the source data table and the current target data table. 8. The method of claim 1 , further comprising: clearing a target data table that is other than the current target data table upon successful completion of synchronizing the source data table and the current target data table, wherein the clearing of the target data table deletes each record in the target data table so that the target data table has zero records. 9. A data synchronization system, comprising: one or more processors configured to: establish a plurality of target data tables based on a source data table in which data to be synchronized is stored, the plurality of target data tables including a first target data table and a second target data table; determine a current target data table from the plurality of target data tables, comprising to: determine respective numbers of data records in the first target data table and the second target data table; in the event that a number of data records in one of the first target data table and the second target data table is zero, select the one target data table having a zero number of data records as the current target data table; and in the event that the respective numbers of data records in the first target data table and the second target data table are non-zero, determine that an abnormality has occurred; synchronize the source data table and the current target data table, comprising: delete a previous target data table; create a new target data table as current target data table; determine a plurality of storage extents occupied by data that is to be synchronized in the source data table; determine storage address information of the data that is occupying the plurality of storage extends and that is to be synchronized in the source data table; and synchronize the data to be synchronized in the respective storage extents into the newly created current target data table using the storage address information, comprising to: divide the storage extents into N groups; initiate N corresponding data synchronization processes; and synchronize sequentially in each of the data synchronization processes the data in the respective storage extents in the corresponding one of the groups into the current target data table in accordance with the storage address information; and direct an application server to access the current target data table upon successful completion of synchronization; and a memory coupled to the one or more processors, configured to provide the one or more processors with instructions. 10. The system of claim 9 , wherein the application server is directed to access the current target table through an upper view that has been previously updated to point to the current target table. 11. The system of claim 9 , wherein determining the current target data table from the plurality of target data tables comprises: selecting one of the target data tables with the number of data records being zero as the current target data table. 12. The system of claim 9 , wherein synchronizing the source data table and the current target data table comprises copying data directly from the source data table into the current target data table. 13. The system of claim 9 , wherein synchronizing the data to be synchronized in the respective storage extents into the current target data table using the storage address information comprises synchronizing sequentially the data in the respective storage extents into the current target data table in one data synchronization process in accordance with the storage address information. 14. The system of claim 9 , wherein the one or more processors are further configured to: reinitiate synchronizing the data in the respective storage extents into the current target data table in the event that the synchronizing failed; and terminate synchronizing the data in the storage extent when number of times of being reinitiated exceeds a preset threshold. 15. The system of claim 9 , wherein the one or more processors are further configured to: clear a

Assignees

Inventors

Classifications

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9727576B2 cover?
Data synchronization includes establishing a plurality of target data tables based on a source data table in which data to be synchronized is stored, determining a current target data table from the plurality of target data tables, synchronizing the source data table and the current target data table, and directing an application server to access the current target data table upon successful co…
Who is the assignee on this patent?
Alibaba Group Holding Ltd
What technology area does this patent fall under?
Primary CPC classification G06F17/30174. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 08 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).