Please download the dossier by clicking on the dossier button x
×

System and method for augmenting consensus election in a distributed database

  • US 10,713,275 B2
  • Filed: 07/01/2016
  • Issued: 07/14/2020
  • Est. Priority Date: 07/02/2015
  • Status: Active Grant
First Claim
Patent Images

1. A computer implemented method for managing a distributed database, the method comprising:

  • establishing at least one primary node within a plurality of nodes, wherein the plurality of nodes comprise a distributed database system and the distributed database system provides responses to database requests from database clients;

    establishing at least one secondary node configured to host a replica of data of the at least one primary node from the plurality of nodes and update the replica responsive to received replicated operations from the at least one primary node;

    establishing at least one arbiter node configured to host an operation log of operations executed by the at least one primary node, wherein the at least one arbiter node does not host a replica of the data; and

    electing a new primary node responsive to detecting a failure of the at least one primary node, wherein electing the new primary node includes;

    executing a consensus protocol to elect one of the at least one secondary node as the new primary node, wherein the consensus protocol includes participation of the at least one secondary node and the at least one arbiter node associated with the failed at least one primary node;

    evaluating election criteria at the at least one secondary node during an election period;

    communicating by a respective one of the at least one secondary node i) a self-vote responsive to determining that the respective one of the at least one secondary node meets the election criteria, or ii) a confirmation of a received vote of another secondary node responsive to determining that the another secondary node is more suitable to be elected as the new primary node based on the election criteria; and

    evaluating by the respective one of the at least one secondary node the operation log of the at least one arbiter node as part of the acts of determining.

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