cassandra-数据不能跨所有节点复制

pbpqsu0x  于 2021-06-14  发布在  Cassandra
关注(0)|答案(1)|浏览(631)

我正在所有三个节点上运行一个查询。其中一个查询将显示十行,而同一个查询将在另两行上显示两行。
复制因子设置为3:

keyspace_name      | durable_writes | replication
--------------------+----------------+-------------------------------------------------------------------------------------

table name |           True | {'class': 'org.apache.cassandra.locator.SimpleStrategy', 'replication_factor': '3'}

节点工具网络状态:

nodetool netstats
Mode: NORMAL
Not sending any streams.
Read Repair Statistics:
Attempted: 16519
Mismatch (Blocking): 0
Mismatch (Background): 0
Pool Name                    Active   Pending      Completed   Dropped
Large messages                  n/a         1             13         4
Small messages                  n/a         0         320422         4
Gossip messages                 n/a         0       12972040       470

nodetool修复已在所有节点上运行。

rryofs0p

rryofs0p1#

根据您的意见,可以使用一致性级别的quorum或更高级别来防止此问题。需要考虑的一点是,增加一致性可能会对性能和恢复能力产生影响。例如,使用一致性级别all将确保始终具有准确的数据,但是如果集群的某个示例出现问题,查询将失败,因为不满足一致性级别。最佳一致性级别将取决于您的用例和sla。
你多久修理一次( nodetool repair )在你的集群里?修复将解决从每个节点检索到的不同数据的根本原因。

相关问题