【问题标题】:Cassandra Upgrade limitationsCassandra 升级限制
【发布时间】:2017-06-03 17:25:35
【问题描述】:

我们正在 10 节点 PRODUCTION 集群中从 DSE 4.5 升级到 DSE 4.8.9。 我们的应用程序中每天运行批处理作业,这些作业批量加载集群中的数据,一些作业截断表并加载新数据,以及一些持续插入数据的加载程序作业。

考虑这些场景:

案例 1: 假设我的一个节点安装了 DSE 4.8,但 upgradesstables 正在运行。 此时所有节点都在线并且存在 2 个不同的模式(dse4.5 上的 9 个节点和 dse4.8.9 上的 1 个节点)。 在这种情况下,TRUNCATE 会起作用吗?

案例 2: 我的一个节点已完全升级到 DSE 4.8 ,这使我的集群处于部分升级状态,所有节点都在线,存在 2 个架构(DSE 4.5 上有 9 个节点,DSE 4.8 上有 1 个节点)。

在这种情况下 TRUNCATE 会起作用吗?

请提出建议。

谢谢!

【问题讨论】:

    标签: cassandra datastax cql cassandra-2.0 datastax-enterprise


    【解决方案1】:

    不建议在升级期间发出TRUNCATE 命令,这是here 概述的限制之一

    引用链接:

    不要启用新功能。

    不要运行 nodetool repair。

    在滚动重启期间不要发出这些类型的 CQL 查询:DDL 并截断。

    在升级过程中,不同版本的节点可能会显示一个架构 分歧。

    在需要时未能升级 SSTables 会导致显着 性能影响和增加的磁盘使用率。升级未完成 直到升级 SSTables。

    【讨论】:

      【解决方案2】:

      应该首先在所有节点上升级二进制文件,以便我们在整个集群中拥有一个架构。 在所有节点完成运行“upgradesstables”之前避免使用 TRUNCATE。

      markc 给出的评论也需要注意:

      不要启用新功能。

      不要运行 nodetool repair。

      在滚动重启期间不要发出这些类型的 CQL 查询:DDL 和 TRUNCATE。

      在升级过程中,不同版本的节点可能会出现架构不一致的情况。

      在需要时未能升级 SSTable 会导致显着的性能影响和磁盘使用量增加。在升级 SSTable 之前,升级不会完成。

      【讨论】:

        猜你喜欢
        • 2016-02-12
        • 1970-01-01
        • 2016-02-02
        • 2013-12-01
        • 2011-07-03
        • 2015-08-04
        • 1970-01-01
        • 1970-01-01
        • 2022-08-18
        相关资源
        最近更新 更多