Transactional replication
First Claim
Patent Images
1. A method of writing data in a distributed database having a plurality of nodes, including:
- receiving a write request at a first member node having a first version of a database, wherein the write request comprises a semantically expressed request to modify the database without sending changed data;
applying the received original write request to both the first version of the database and a journal queue in a single atomic transaction, wherein applying the received write request to the journal queue includes placing the received write request in the journal queue, wherein the journal queue is associated with the first member node and is configured to store write requests that have not yet been reconciled with a master version of the database on a master node, wherein reconciling a write request with a master version of the database includes a determination of whether there is a conflict between the first version of the database with the write request applied and the master version of the database; and
determining that the first version of the database is in a high availability pair, wherein the high availability pair includes a second version of the database in a second member node, and applying the received original write request to both the first version of the database and to the second version of the database in the second member node;
wherein the write request includes one or more selected from the group consisting of commands, operations and instructions.
8 Assignments
0 Petitions
Accused Products
Abstract
Writing data in a distributed database having a plurality of nodes is disclosed. Writing includes receiving a write request at a node, wherein the write request is associated with one or more operations to define an atomic transaction and performing the atomic transaction based on the request. The atomic transaction includes writing to a first version of the database in the node and writing to an entity representative of a state of the first version of the database.
-
Citations
15 Claims
-
1. A method of writing data in a distributed database having a plurality of nodes, including:
-
receiving a write request at a first member node having a first version of a database, wherein the write request comprises a semantically expressed request to modify the database without sending changed data; applying the received original write request to both the first version of the database and a journal queue in a single atomic transaction, wherein applying the received write request to the journal queue includes placing the received write request in the journal queue, wherein the journal queue is associated with the first member node and is configured to store write requests that have not yet been reconciled with a master version of the database on a master node, wherein reconciling a write request with a master version of the database includes a determination of whether there is a conflict between the first version of the database with the write request applied and the master version of the database; and determining that the first version of the database is in a high availability pair, wherein the high availability pair includes a second version of the database in a second member node, and applying the received original write request to both the first version of the database and to the second version of the database in the second member node; wherein the write request includes one or more selected from the group consisting of commands, operations and instructions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer program product for writing data in a distributed database having a plurality of nodes, the computer program product being embodied in a computer readable storage medium and comprising computer instructions for:
-
receiving a write request at a first member node having a first version of a database, wherein the write request comprises a semantically expressed request to modify the database without sending changed data; applying the received original write request to both the first version of the database and a journal queue in a single atomic transaction, wherein applying the write request to the journal queue includes placing the write request in the journal queue, wherein the journal queue is associated with the first member node and is configured to store write requests that have not yet been reconciled with a master version of the database on a master node, wherein reconciling a write request with a master version of the database includes a determination of whether there is a conflict between the first version of the database with the write request applied and the master version of the database; and determining that the first version of the database is in a high availability pair, wherein the high availability pair includes a second version of the database in a second member node, and applying the received original write request to both the first version of the database and to the second version of the database in the second member node; wherein the write request includes one or more selected from the group consisting of commands, operations and instructions. - View Dependent Claims (11, 12)
-
-
13. A system for writing data in a distributed database having a plurality of nodes, including:
-
a processor configured to; receive a write request at a first member node having a first version of a database, wherein the write request comprises a semantically expressed request to modify the database without sending changed data; apply the received original write request to both the first version of the database and a journal queue in a single atomic transaction, wherein applying the write request to the journal queue includes placing the write request in the journal queue, wherein the journal queue is associated with the first member node and is configured to store write requests that have not yet been reconciled with a master version of the database on a master node, wherein reconciling a write request with a master version of the database includes a determination of whether there is a conflict between the first version of the database with the write request applied and the master version of the database; and determining that the first version of the database is in a high availability pair, wherein the high availability pair includes a second version of the database in a second member node, and apply the received original write request to both the first version of the database and to the second version of the database in the second member node; wherein the write request includes one or more selected from the group consisting of commands, operations and instructions. - View Dependent Claims (14, 15)
-
Specification