【发布时间】:2020-02-05 13:59:20
【问题描述】:
我们有一个 13 个节点的 Cassandra 集群(版本 3.10),RP 为 2,读/写一致性为 1。 这意味着集群不是完全一致的,而是最终一致的。我们选择这种设置是为了提高性能,我们可以容忍几秒钟的不一致。
这些表设置为禁用读取修复的 TWCS,我们不会对它们进行全面修复
但是,我们发现某些数据条目只复制了一次,而不是两次,这意味着当查询未更新的节点时,它无法检索到数据。
我的第一个问题是这怎么会发生? Cassandra 不应该复制所有数据吗?
现在如果我们选择进行修复,它会创建重叠的墓碑,因此它们在时间到时不会被删除。我知道 unchecked_tombstone_compaction 属性忽略了重叠,但我觉得这是一个不好的方法。有什么想法吗?
【问题讨论】:
标签: cassandra