Transactional and parallel log replay for asynchronous table replication
First Claim
1. A computer implemented method for replicating a database transaction to a replica table, comprising:
- receiving, by at least one processor, a replication log entry and an associated transaction commit log entry, the replication log entry and the associated transaction commit log entry together representing a database transaction to be replayed to a row at a replica table, the row at the replica table having a row-ID value and the replication log entry having a row-ID value that identifies a data state of the row at the replica table;
dispatching, by the at least one processor, the replication log entry to a parallel log replayer and the associated transaction commit log entry to a transaction commit log replayer;
comparing, by the at least one processor, the row-ID value of the replication log entry to the row-ID value of the row at the replica table;
replaying, by the at least one processor, the replication log entry at the parallel log replayer based on the comparison; and
committing, by the at least one processor, the database transaction to the replica table by replaying the associated transaction commit log entry at the transaction log replayer;
wherein at least one of the receiving, dispatching, comparing, replaying, and committing are performed by one or more computers.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed herein are system, method, and computer program product embodiments for replicating a database transaction to a replica table. An embodiment operates by receiving a replication log entry and an associated transaction commit log entry for a database transaction to be replayed to a row at a replica table. A row-ID value of the replication log entry is compared to a row-ID column value of the row at the replica table. The replication log entry is then replayed at a parallel log replayer based on the comparison. The database transaction is then committed to the replica table by replaying the associated transaction commit log entry at a transaction log replayer.
-
Citations
22 Claims
-
1. A computer implemented method for replicating a database transaction to a replica table, comprising:
-
receiving, by at least one processor, a replication log entry and an associated transaction commit log entry, the replication log entry and the associated transaction commit log entry together representing a database transaction to be replayed to a row at a replica table, the row at the replica table having a row-ID value and the replication log entry having a row-ID value that identifies a data state of the row at the replica table; dispatching, by the at least one processor, the replication log entry to a parallel log replayer and the associated transaction commit log entry to a transaction commit log replayer; comparing, by the at least one processor, the row-ID value of the replication log entry to the row-ID value of the row at the replica table; replaying, by the at least one processor, the replication log entry at the parallel log replayer based on the comparison; and committing, by the at least one processor, the database transaction to the replica table by replaying the associated transaction commit log entry at the transaction log replayer; wherein at least one of the receiving, dispatching, comparing, replaying, and committing are performed by one or more computers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system, comprising:
-
a memory; and at least one processor coupled to the memory and configured to; receive a replication log entry and an associated transaction commit log entry, the replication log entry and the associated transaction commit log entry together representing a database transaction to be replayed to a row at a replica table, the row at the replica table having a row-ID value and the replication log entry having a row-ID value that identifies a data state of the row at the replica table; dispatch the replication log entry to a parallel log replayer and the associated transaction commit log entry to a transaction commit log replayer; compare the row-ID value of the replication log entry to the row-ID value of the row at the replica table; replay the replication log entry at the parallel log replayer based on the comparison; and commit the database transaction to the replica table by replaying the associated transaction commit log entry at the transaction log replayer. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A tangible computer-readable device having instructions stored thereon that, when executed by at least one computing device, causes the at least one computing device to perform operations comprising:
-
receiving a replication log entry and an associated transaction commit log entry, the replication log entry and the associated transaction commit log entry together representing a database transaction to be replayed to a row at a replica table, the row at the replica table having a row-ID value and the replication log entry having a row-ID value that identifies a data state of the row at the replica table; dispatching the replication log entry to a parallel log replayer and the associated transaction commit log entry to a transaction commit log replayer; comparing the row-ID value of the replication log entry to the row-ID value of the row at the replica table; replaying the replication log entry at the parallel log replayer based on the comparison; and committing the database transaction to the replica table by replaying the associated transaction commit log entry at the transaction log replayer. - View Dependent Claims (18, 19, 20, 21, 22)
-
Specification