【问题标题】:Cassandra cluster many small nodes vs fewer large nodesCassandra 集群许多小节点与较少的大节点
【发布时间】:2016-07-04 01:52:27
【问题描述】:

我想知道具有几个大型、强大节点的 Cassandra 集群与具有许多小节点的集群之间会有什么区别。例如,如果我选择在 AWS EC2 上运行 Cassandra,如果我选择一个 m4.4xlarge 节点,或者两个 m4.2xlarge 节点,或者 4 个 m4.xlarge,或者 8 个 m4.large,会有什么区别?根据https://aws.amazon.com/ec2/pricing/,它们应该具有相同的计算能力。但是对于 Cassandra,他们在现实中会有不同的表现吗?假设我们总是将复制因子设置为 1,所以比较是公平的。

【问题讨论】:

    标签: amazon-ec2 cassandra


    【解决方案1】:

    我将根据经验回答这个问题。启动 Cassandra 时,堆至少需要 8 GB。因此,我建议您在至少 8 GB 的 RAM 上运行,如果不是更多的话。

    拥有更多节点显然意味着您拥有更多冗余,但如果节点没有相似的机器类型,有时会浪费额外的资源。例如,如果您有 10 个具有 100 GB 磁盘的节点,那么任何具有超过 200 GB 磁盘的节点都会被浪费掉。这也意味着这些节点必须与每个节点进行更多的通信,从而增加所需的带宽。对于 AWS,VM 越好,网络就越好。

    DataStax 建议仅在生产环境中为 Cassandra 使用至少 16 GB 的 RAM,而对于推荐的规格则在 32-64 GB 之间。

    在尝试了这两种模型之后,我可以告诉您最佳点是 8 个线程/内核、32 GB 的 RAM 和 1 TB 的 SSD。

    如果您可以拥有最少三个这样的节点,那么我认为您没问题。如果您是应该用同样的钱买一个强大的节点还是买三个不那么强大的节点是一个问题,总是选择更多的节点。

    【讨论】:

    • 可能值得一提的是,将节点添加到 3 节点集群会破坏性能,直到集成新节点。老实说,如果您想要扩展,任何 10 个节点以下的集群都会遇到成长的痛苦
    猜你喜欢
    • 1970-01-01
    • 2016-08-14
    • 1970-01-01
    • 2020-04-12
    • 2012-05-02
    • 2019-09-28
    • 2017-10-27
    • 2011-06-14
    • 2017-06-03
    相关资源
    最近更新 更多