Package com.bigdata.quorum

This package defines interfaces and implementations for a quorum of highly available services.

See: Description

Package com.bigdata.quorum Description

This package defines interfaces and implementations for a quorum of highly available services. Each quorum has a replication factor k, which must be an odd integer. A quorum with k := 1 is a singleton quorum and is not highly available. Highly available quorums have k := 3 or greater.

Persistent bigdata® services have a lastCommitTime in each root block. For the purpose of a highly available service, this timestamp provides a summary of the persistent state of the quorum. When (k+1)/2 services in the quorum vote for the same lastCommitTime, a simple majority exists and the quorum can meet. The quorum will elect a leader, which will assign a quorum token, and followers. Each quorum token is distinct. Applications can read and write on a quorum while it is met (all writes must be directed to the quorum leader). If the quorum breaks, then the token is cleared and operations will fail.

A quorum is inherently robust. Writes are replicated from the leader to the followers using a write pipeline so each service in the quorum has the same persistent state. If a service in a highly available quorum fails, the quorum will not break (unless the leader fails, in which case the quorum will meet again with the remaining services).

Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.