Dic*_*hen 6 amazon-ec2 cassandra
我想知道具有一些大型强大节点的 Cassandra 集群与具有许多小型节点的集群之间有什么区别。例如,如果我选择在 AWS EC2 上运行 Cassandra,选择 1 个 m4.4xlarge 节点、2 个 m4.2xlarge 节点、4 个 m4.xlarge 或 8 个 m4.large 会有什么区别?根据https://aws.amazon.com/ec2/pricing/ ,它们应该具有相同的计算能力。但现实中他们对于Cassandra会有不同的表现吗?假设我们始终将复制因子设置为 1,这样比较是公平的。
我将根据经验来回答这个问题。当您启动 Cassandra 时,它至少需要 8 GB 的堆空间。因此,我建议您至少在 8 GB 内存(如果不是更多)上运行。
拥有更多的节点显然意味着您有更多的冗余,但有时如果节点没有相似的机器类型,额外的资源就会被浪费。例如,如果您有 10 个具有 100 GB 磁盘的节点,那么任何具有超过 200 GB 磁盘的节点都会被浪费。这还意味着这些节点必须彼此进行更多通信,从而增加所需的带宽。对于 AWS,您获得的虚拟机越好,网络就越好。
DataStax 建议仅在生产中为 Cassandra 使用至少 16 GB 的 RAM,对于推荐规格则使用 32-64 GB 的 RAM。
在尝试了这两种模型之后,我可以告诉您,最佳点是 8 个线程/核心、32 GB RAM 和 1 TB SSD。
如果您可以拥有至少三个这样的节点,那么我认为就可以了。如果问题是应该用同样的钱购买一个强大的节点还是三个功能较弱的节点,请始终选择更多的节点。
| 归档时间: |
|
| 查看次数: |
726 次 |
| 最近记录: |