如果只有一个客户写入集群,我是否需要Cassandra的时钟同步



从卡桑德拉的文档中,我知道卡桑德拉使用查询时间戳来解决两个写入之间的冲突,因此需要同步集群的所有节点上的时钟。在我的用例中,我们只有一个客户写作集群,并从集群中读取多个客户端。因此,如果我使用客户端时间戳发电机(我相信版本> 3(是否仍然需要使群集节点时钟相互同步?

在与正在存储的数据相关的写入时间戳的上下文中,如果您使用客户端时间戳和单个客户端,则不需要时钟同步。

但是,我仍然会劝阻至少不要试图将时钟保持在卡桑德拉群集中。在某些情况下,时钟偏斜会影响卡桑德拉的其他部分。例如,Cassandra-11991显示了一种情况,即时钟偏向于轻重量交易的节点时钟。尽管解决了这个特定问题,但努力进行同步似乎仍然是一个好主意。

它取决于:

  1. using timestamp [millis]插入-Fine
  2. 插入客户端在主键列中生成的时间戳信息-Fine
  3. 常规插入物没有客户端在主键中设置时间 - 可能是一个好主意,可以使时钟保持同步

最新更新