gpt4 book ai didi

cassandra - 没有足够的副本可用于一致性 ONE 查询(需要 1 个,但只有 0 个活着)

转载 作者:行者123 更新时间:2023-12-03 10:40:38 24 4
gpt4 key购买 nike

我有一个包含三个节点的 Cassandra 集群,其中两个已启动。他们都在同一个DC。当我的 Java 应用程序写入集群时,我的应用程序出现错误,这似乎是由 Cassandra 的某些问题引起的:

引起:com.datastax.driver.core.exceptions.UnavailableException:没有足够的副本可用于一致性 ONE 查询(需要 1 但只有 0 个事件)
在 com.datastax.driver.core.exceptions.UnavailableException.copy(UnavailableException.java:79)

没有意义的部分是“需要 1 但只有 0 活着”语句。有两个节点向上,这意味着其中一个节点应该“存活”以进行复制。

还是我误解了错误信息?

谢谢。

最佳答案

您可能会收到此错误,因为您查询的表所属的键空间的复制因子的复制因子为 1,对吗?

如果您正在读取/更新的分区没有足够的可用副本(具有该数据的节点)来满足一致性级别,您将收到此错误。

如果您希望能够处理 1 个以上的节点不可用,您可以查看 altering your keyspace设置更高的复制因子,在这种情况下最好是三个,然后运行 ​​nodetool repair在每个节点上获取所有节点上的所有数据。通过此更改,您将能够在丢失 2 个节点的情况下以 1 的一致性级别进行读取。

This cassandra parameters calculator是理解节点数、复制因子和一致性级别的考虑因素的很好引用。

关于cassandra - 没有足够的副本可用于一致性 ONE 查询(需要 1 个,但只有 0 个活着),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27974911/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com