【问题标题】:Cassandra cluster it taking lot of time When I add new node当我添加新节点时,Cassandra 集群需要很多时间
【发布时间】:2018-08-16 22:11:19
【问题描述】:

我有 5 个节点 Cass 集群,每个节点当前拥有 1 TB 数据。当我尝试添加另一个节点时,几乎需要 15 多个小时才能进入“联合国”状态。

有没有办法让它变快?

Cassandra 版本:3.0.13 环境:AWS,m4.2xlarge 机器。

【问题讨论】:

    标签: cassandra cassandra-3.0


    【解决方案1】:

    1 TB 是每个节点的大量数据。由于您有一个 5 节点集群并且您正在添加一个新节点,该节点将获取 0,833 TB 数据,这些数据必须从所有节点流式传输。这相当于 6,67 Tbit 或 6990507 Mbit。 Cassandra 的 stream_throughput_outbound_megabits_per_sec 的默认值为 200。传输所有数据的时间为 6990507÷200 = 34952,535 秒 = 9,7 小时。由于您可能同时运行其他流量等。这很可能需要 15 个小时。

    解决方案:将所有节点上的 stream_throughput_outbound_megabits_per_sec 更改为更高的值。

    注意:不要忘记在节点加入集群后运行nodetool cleanup

    【讨论】:

    • 谢谢西蒙。非常感谢您的回复。下次我向集群添加新节点时将更改这些参数。
    • @Avis 酷。如果您认为问题已结束,您应该将我的回答标记为已接受,以便其他人知道它很有帮助。
    • 嘿西蒙,运行 nodetool cleanup 的推荐方式是什么?可以并行运行还是应该逐个节点完成?
    • @Avis 我建议按顺序运行 nodetool cleanup,因为它可以根据需要清理的数据量产生高性能影响。该节点的压缩数量将暂时增加,并将使用更多的 cpu / io。如果您确信暂时的性能影响对您来说不是问题,那么您可以并行运行清理。
    猜你喜欢
    • 1970-01-01
    • 2015-09-08
    • 1970-01-01
    • 1970-01-01
    • 2014-05-14
    • 1970-01-01
    • 1970-01-01
    • 2018-09-19
    • 2021-12-09
    相关资源
    最近更新 更多