2017-04-14 19 views
2

从cassandra的文档中我知道cassandra使用查询的时间戳来解决两次写入之间的冲突,因此集群中所有节点上的时钟都需要同步。在我的用例中,我们只有一个客户端正在写入群集,多个客户端正在从群集中读取数据。因此,如果我使用客户端时间戳生成器(我认为这是默认版本> 3),是否仍需要使群集节点时钟彼此同步?如果只有一个客户端写入群集,是否需要cassandra的时钟同步?

回答

4

在与存储数据关联的写入时间戳的情况下,如果使用客户端时间戳和单个客户端,则不需要时钟同步。

但是,我仍然不打算至少试图保持卡桑德拉群集中的时钟同步。有时钟偏移会影响Cassandra的其他部分。例如,CASSANDRA-11991显示时钟偏斜影响用于轻量级事务的节点时钟的情况。虽然已经解决了这个特定问题,但仍然努力实现同步仍然是一个好主意。

2

这取决于:

  1. 插入与using timestamp [millis] - 精细
  2. 插入与在主键列客户端生成的时间戳信息 - 罚款
  3. 经常插入,而不在主键客户端设置的时间 - 可能是一个保持时钟同步的好主意
相关问题