【发布时间】:2017-09-11 00:44:45
【问题描述】:
从 cassandra 的文档中,我了解到 cassandra 使用查询时间戳来解决两次写入之间的冲突,因此需要同步集群所有节点上的时钟。在我的用例中,我们只有一个客户端写入集群,多个客户端从集群读取。那么,如果我使用客户端时间戳生成器(我认为它是 version>3 的默认值),我还需要让集群节点时钟彼此同步吗?
【问题讨论】:
从 cassandra 的文档中,我了解到 cassandra 使用查询时间戳来解决两次写入之间的冲突,因此需要同步集群所有节点上的时钟。在我的用例中,我们只有一个客户端写入集群,多个客户端从集群读取。那么,如果我使用客户端时间戳生成器(我认为它是 version>3 的默认值),我还需要让集群节点时钟彼此同步吗?
【问题讨论】:
在与正在存储的数据关联的写入时间戳的上下文中,如果您使用客户端时间戳和单个客户端,则不需要时钟同步。
但是,我仍然不鼓励至少尝试在 Cassandra 集群中保持时钟同步。在某些情况下,时钟偏差会影响 Cassandra 的其他部分。例如,CASSANDRA-11991 显示了时钟偏差影响用于轻量级事务的节点时钟的情况。虽然该特定问题已得到解决,但努力进行同步似乎仍然是个好主意。
【讨论】:
这取决于:
using timestamp [millis] - 很好【讨论】: