首页 文章

如何在Couchbase中正确计算存储桶的RAM要求

提问于
浏览
1

我们在拥有6个AWS节点的Couchbase集群设置中拥有大约3400万个项目 . 该存储桶已分配32.1GB RAM(每节点5482MB),目前使用29.1GB . 如果我使用Couchbase文档(http://docs.couchbase.com/admin/admin/Concepts/bp-sizingGuidelines.html)中提供的公式,它应该使用约 . 8.94GB的RAM .

我计算错了吗?以下是包含所有详细信息的Google电子表格链接 . https://docs.google.com/spreadsheets/d/1b9XQn030TBCurUjv3bkhiHJ_aahepaBmFg_lJQj-EzQ/edit?usp=sharing

1 回答

  • 1

    假设你确实有一个0.5%的工作集,正如Kirk在他的评论中指出的那样,奇怪但并非不可能,那么你正在正确计算内存大小调整公式的结果 . 但是,它是一个通用指南,是您开始进行性能测试的良好起点 . 另外,请记住,RAM大小调整并不是决定群集大小的唯一考虑因素,因为您还必须考虑数据安全性,总磁盘写入吞吐量,网络带宽,CPU,单个节点故障对其余部分的影响 . 集群等等 .

    使用RAM大小调整公式的结果作为起点,您现在应该实际测试您的工作假设是否正确 . 这意味着在桶上放置真实(或接近代表性)的负载,并查看缓存未命中率是否足够低并且操作范围是否在您可接受的限制范围内 . 对此没有一般规则,某些应用程序可接受的内容可能对其他应用程序来说太慢 .

    举个例子,如果你看到在负载下你的缓存未命中率是5%而平均读取延迟是3ms,那么前1%的延迟是100ms - 那么你必须考虑每100个读取中有一个是否占用了在您的申请中可以接受更长的时间 . 如果是 - 很好,如果不是 - 你需要开始增加RAM大小,直到它与你的实际工作集匹配 . 同样,您应该密切关注磁盘吞吐量,CPU使用率等 .

相关问题