**已关闭。**此问题为not about programming or software development。目前不接受回答。
此问题似乎与a specific programming problem, a software algorithm, or software tools primarily used by programmers无关。如果您认为此问题与another Stack Exchange site的主题相关,可以发表评论,说明在何处可以回答此问题。
18天前关门了。
Improve this question的
我们有一个复制因子为3的3节点群集。在写入期间,数据将插入到具有一致性级别(CL)仲裁的表中。node 1--11.21.1.26 node 2--11.21.1.27 node 3--11.21.1.28
在上面的配置中,我理解所有节点都有所有数据。
在其中一个维护窗口期间,节点2关闭。
$nodetool status
Datacenter: DC1
=======================**
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID RACK
DN 11.21.1.27 13.43 GiB 256 ? aaaa rack1
UN 11.21.1.26 13.85 GiB 256 ? bbbb rack1
UN 11.21.1.28 13.65 GiB 256 ? cccc rack1
个字符
有谁能解释一下为什么只有node 2(11.21.1.27)关闭了,而其他两个节点都在运行,node 3(11.21.1.28)的查询却失败了?
我希望查询可以从node 3和node 1工作,因为node 1和node 3已经启动。
1条答案
按热度按时间42fyovps1#
所以我读到:
我们有一个复制因子为3的3节点群集。
但错误消息的这一部分与该语句冲突:
字符串
如果RF真的是3,那么QUORUM的
required_replicas
应该是2,而不是1。QUORUM的计算公式是(RF / 2)+ 1。我猜复制因子在keyspace上是1。
RF的配额==1:(1 / 2)== 0; 0 + 1 == 1
当RF为1时,数据行没有任何额外的副本。因此,当一个节点处于down状态时,大约有1/3的数据无法查询。
我会仔细检查键空间定义,因为它似乎没有被设置为RF为3。