Cassandra Read Repair如何知道最新的数据?

时间:2018-10-27 03:03:51

标签: cassandra distributed-computing

比方说,协调器接收到读取查询,并且读取Quorom为2。一个副本返回0,另一个返回1。那么协调器如何知道哪个值是最新的,以便可以将其写回。我不知道卡桑德拉是怎么做到的。我不认为它使用的是系统时钟,任何人都可以解释它的精确度,而在任何文档中都找不到。

谢谢。

1 个答案:

答案 0 :(得分:2)

每次写入都会创建一个变异,该变异具有时间戳。时间戳默认由客户端设置(它们是幂等的),但如果没有,则可以在协调器上创建。该写入时间基于时钟(微秒单调,因此不会在本地发生冲突),并用于确定冲突的获胜者(最后一次写入获胜)。

相关问题