Synchronization-replication concurrency using non-shared snapshot query on a history table at read-uncommitted isolation level
First Claim
1. A method for performing a replication of data between a first database server and a second database server concurrently with a synchronization of the data between the second database server and a client, the method comprising:
- the second database server storing and maintaining a history table that includes data values that correspond to a first version of the data and includes data values that correspond with a second version of the data, the first and second versions being stored at the same time in the table;
performing the replication of the data between the first database server and the second database server using the data values in the history table that correspond to the first version of the data; and
performing the synchronization of the data between the second database server and the client using the data values in the history table that correspond to the second version of the data, wherein the synchronization between the second database server and the client is performed concurrently with performing the replication of the data and permits one or more of a row insert, delete, or update to occur to the data during the replication of the data between the first database server and the second database server without affecting data integrity associated with the synchronization of the data between the second database server and the client, and wherein the second version of the data is an earlier version of the data relative to the first version of the data.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for synchronization-replication concurrency maintain a history table for a data table in a mirror, where the history table can include redundant version values that indicate a period in which data values corresponding to the version values are valid. Replication can thus be performed between a source and a mirror for a current version of the data table, while synchronization is simultaneously performed between the mirror and a client for an earlier version of the data table using the history table.
40 Citations
14 Claims
-
1. A method for performing a replication of data between a first database server and a second database server concurrently with a synchronization of the data between the second database server and a client, the method comprising:
-
the second database server storing and maintaining a history table that includes data values that correspond to a first version of the data and includes data values that correspond with a second version of the data, the first and second versions being stored at the same time in the table; performing the replication of the data between the first database server and the second database server using the data values in the history table that correspond to the first version of the data; and performing the synchronization of the data between the second database server and the client using the data values in the history table that correspond to the second version of the data, wherein the synchronization between the second database server and the client is performed concurrently with performing the replication of the data and permits one or more of a row insert, delete, or update to occur to the data during the replication of the data between the first database server and the second database server without affecting data integrity associated with the synchronization of the data between the second database server and the client, and wherein the second version of the data is an earlier version of the data relative to the first version of the data. - View Dependent Claims (2, 3, 9, 10)
-
-
4. A system comprising:
-
a first database server storing data in a data table; a second database server storing a history table that includes data values that correspond to a first version of the data in the data table and includes data values that correspond with a second version of the data in the data table, the first and second versions being stored at the same time in the table; and
,a client in communication with the second database server, wherein replication of data between the first database server and the second database server is performed using the data values in the history table that correspond to the first version of the data, wherein synchronization of the data between the second database server and the client is performed using the data values in the history table that correspond to the second version of the data and permits one or more of a row insert, delete, or update to occur to the data during the replication of the data between the first database server and the second database server without affecting data integrity associated with the synchronization of the data between the second database server and the client, and wherein the second version of the data is an earlier version of the data relative to the first version of the data, and wherein the synchronization of the data between the second database server and the client is performed concurrently with the replication of the data between the first database server and the second database server. - View Dependent Claims (5, 11, 12)
-
-
6. A computer readable medium encoded with a computer program for performing a replication of data between a first database server and a second database server concurrently with a synchronization of the data between the second database server and a client, the computer program comprising computer executable code for:
-
the second database server storing and maintaining a history table that includes data values that correspond to a first version of the data and includes data values that correspond with a second version of the data, the first and second versions being stored at the same time in the table; performing the replication of the data between the first database server and the second database server using the data values in the history table that correspond to the first version of the data; and performing the synchronization of the data between the second database server and the client using the data values in the history table that correspond to the second version of the data, wherein the synchronization between the second database server and the client is performed concurrently with performing the replication of the data and permits one or more of a row insert, delete, or update to occur to the data during the replication of the data between the first database server and the second database server without affecting data integrity associated with the synchronization of the data between the second database server and the client, and wherein the second version of the data is an earlier version of the data relative to the first version of the data. - View Dependent Claims (7, 8, 13, 14)
-
Specification