×

Executing distributed globally-ordered transactional workloads in replicated state machines

  • US 9,465,649 B2
  • Filed: 04/15/2013
  • Issued: 10/11/2016
  • Est. Priority Date: 04/15/2013
  • Status: Active Grant
First Claim
Patent Images

1. A method of transaction replication, comprising:

  • transmitting at least one transaction received during an epoch, by a local datastore node, to at least one remote datastore node of a plurality of remote datastore nodes upon an end of the epoch, wherein the epoch corresponds to a predefined time period having a fixed length, and the local datastore node and the plurality of remote datastore nodes are part of a domain of 2N+1 datastore nodes, wherein N is an integer greater than or equal to 1;

    logging a receipt of the at least one transaction, by the at least one remote datastore node, upon receiving the at least one transaction at the at least one remote datastore node;

    notifying the local datastore node of the receipt of the at least one transaction, by the at least one remote datastore node, upon receiving the at least one transaction at the at least one remote datastore node;

    transmitting the at least one transaction to all datastore nodes in the domain other than the local datastore node and the at least one remote datastore node, by the at least one remote datastore node, upon receiving the at least one transaction at the at least one remote datastore node; and

    adding the at least one transaction to an execution queue at each of the datastore nodes of the domain, wherein each datastore node does not add the at least one transaction to its execution queue until at least N+1 copies of the at least one transaction have been received at that datastore node,wherein the at least one transaction is transmitted from the local datastore node to the at least one remote datastore node, and from the at least one remote datastore node to all datastore nodes other than the local datastore node and the at least one remote datastore node, without being transmitted to a centralized sequencer.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×