标签: database cassandra nosql cassandra-2.2
我在一个数据中心运行一个包含3个节点的Cassandra 2.2.8群集。复制因子是3。
我必须从旧备份中恢复其中一个节点。恢复备份后,我运行了一个完整的修复来同步最新的数据,但似乎恢复的节点的数据少于其他节点:
如何强制数据同步?
答案 0 :(得分:0)
一个想法可能是在进行全面修复时检查system.log。在那里修理有什么错误吗?如果是这样,请调试错误并修复它们。
否则,一个预先检查是在恢复的节点上运行nodetool verify,看看即使在修复之后是否还有任何损坏的sstable?
如果没有错,那就有很多可能性,如果没有更多关于群集的知识,很难调试。 Cassandra也没有直接了解所有数据是否一致。
也许你知道你已经放置的对象的数量,你可以运行cqlsh命令来计算所有数据表,看看它们是否匹配,看看你是否真的丢失了任何数据?