我们在Cassandra数据中看到了一个有趣的现象。我们正在运行Apache Cassandra 2.0.10和CQL3。我们只使用CQL。
似乎最近(过去1个月)对表的更改已丢失。我们怀疑这可能与进行一些删除然后重新启动有关。
有没有人见过这个?
答案 0 :(得分:1)
您是否正在运行每周修复(如果使用自定义gc_grace_seconds,在宽限期内至少进行一次修复)?如果一个节点停机3小时,你重新加入后是否进行了修复?您可能会看到僵尸数据。删除创建墓碑,这些墓碑在压缩时收集。你的墓碑可能没有传播到下行节点,如果他们的关闭时间超过了切换时间段,当他们出现时,他们不知道删除发生了什么。因此,他们会获得他们的数据,并将这些数据传播给复制品,这些复制品对此事情一无所知。数据。最后写作获胜,僵尸活着。
确保定期运行维修,如果节点停机时间超过3小时,请在加入后运行修复。