【问题标题】:Do I need clock synchronisation for cassandra if only one client writes to cluster?如果只有一个客户端写入集群,我是否需要 cassandra 的时钟同步?
【发布时间】:2017-09-11 00:44:45
【问题描述】:

从 cassandra 的文档中,我了解到 cassandra 使用查询时间戳来解决两次写入之间的冲突,因此需要同步集群所有节点上的时钟。在我的用例中,我们只有一个客户端写入集群,多个客户端从集群读取。那么,如果我使用客户端时间戳生成器(我认为它是 version>3 的默认值),我还需要让集群节点时钟彼此同步吗?

【问题讨论】:

    标签: cassandra cassandra-3.0


    【解决方案1】:

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

    但是,我仍然不鼓励至少尝试在 Cassandra 集群中保持时钟同步。在某些情况下,时钟偏差会影响 Cassandra 的其他部分。例如,CASSANDRA-11991 显示了时钟偏差影响用于轻量级事务的节点时钟的情况。虽然该特定问题已得到解决,但努力进行同步似乎仍然是个好主意。

    【讨论】:

      【解决方案2】:

      这取决于:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-06-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-01-11
        相关资源
        最近更新 更多