All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.bigdata.quorum.package.html Maven / Gradle / Ivy



Quorums



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).





© 2015 - 2025 Weber Informatics LLC | Privacy Policy