EACH_QUORUM requires a majority of replicas in every datacenter to acknowledge an operation. It is designed for multi-datacenter deployments where each datacenter must stay synchronized. section 8.2.2
Use EACH_QUORUM when:
- Multiple datacenters can each serve user traffic and writes must be reflected across all of them. section 8.2.2
- You prefer stronger cross-datacenter consistency even though consistency-level choices require balancing consistency against availability. section 8.2.2
- You operate a single-datacenter cluster, where EACH_QUORUM behaves identically to the other quorum variants. section 8.2.2
Choosing between datacenter strategies
If one datacenter serves user-facing traffic and another handles analytics, LOCAL_QUORUM can keep the primary datacenter current while allowing eventual consistency elsewhere. If both datacenters serve users, EACH_QUORUM keeps writes synchronized in both. section 8.2.2 section 8.5
Table 8.1 Scylla supports many consistency-level choices for your queries to balance consistency and availability.
|
Consistency level
|
Required nodes to respond
|
|---|---|
|
ANY
|
Any node in the cluster can respond, even if it’s not a replica
|
|
ONE
|
A single replica
|
|
LOCAL_ONE
|
A single replica in the same datacenter
|
|
TWO
|
Two replicas
|
|
THREE
|
Three replicas
|
|
QUORUM
|
A majority of replicas
|
|
LOCAL_QUORUM
|
A majority of replicas in the same datacenter
|
|
EACH_QUORUM
|
A majority of replicas in every datacenter
|
|
SERIAL (used to get the latest data via Paxos)
|
A majority of replicas
|
|
LOCAL_SERIAL
|
A majority of replicas in the same datacenter
|
|
ALL
|
Every replica in the cluster
|
Compare EACH_QUORUM with ONE, LOCAL_QUORUM, QUORUM, and ALL by the replicas required to respond. section 8.2.2
