documentation for Cassandra consistency levels说明了EACH_QUORUM
一致性级别:
必须将写入写入提交日志并在所有数据中心的法定数量的副本节点上进行记忆。用于多个数据中心集群......
只有一个数据中心时,EACH_QUORUM
一致性级别的语义是什么?我可以想到两种可能性:
EACH_QUORUM
要求将写入写入唯一数据中心的法定数量的节点。QUORUM
。答案 0 :(得分:2)
经过一些实验,使用Cassandra 2.1.5和Datastax Java驱动程序2.1.5,我发现实现(如果不是预期的语义)就是只有当您拥有多个数据中心时,EACH_QUORUM
一致性级别才有效。当只有一个数据中心时,Java驱动程序失败EACH_QUORUM
写入,抛出UnavailableException
,抱怨0个节点可用。使用QUORUM
写入工作正常。
因此,如果您只有一个数据中心,请不要使用EACH_QUORUM
一致性级别。请改用QUORUM
。