如何根据负载计划资源(我怀疑是 elasticsearch 实例):
对于负载,我的意思是 ≈500K 事件/分钟,每个包含 8-10 个字段。
我应该转动哪些配置旋钮?我是这个堆栈的新手。
如何根据负载计划资源(我怀疑是 elasticsearch 实例):
对于负载,我的意思是 ≈500K 事件/分钟,每个包含 8-10 个字段。
我应该转动哪些配置旋钮?我是这个堆栈的新手。
每分钟 500,000 个事件是每秒 8,333 个事件,对于小型集群(3-5 台机器)来说应该很容易处理。
将 7.2 亿份每日文档打开 60 天(43B 份文档)会出现问题。如果这 10 个字段中的每一个都是 32 字节,那就是 13.8TB 的磁盘空间(单个副本接近 28TB)。
作为比较,我最多有 5 个节点(64GB RAM,31GB 堆),1.2B 文档消耗 1.2TB 磁盘空间(副本加倍)。这个集群无法处理每台机器只有 32GB RAM 的负载,但它现在对 64GB 很满意。这对我们来说是 10 天的数据。
粗略地说,您期望的文档数量是我的集群的 40 倍,占用的磁盘空间是我的集群的 10 倍。
我面前没有确切的数字,但我们使用 doc_values 的试点项目为我们节省了 90% 的堆空间。
如果所有这些数学都成立,并且 doc_values 很好,那么就索引的实际字节而言,您可以使用类似的集群。我会就拥有如此多的单个文档的开销征求更多信息。
我们已经完成了一些弹性搜索调整,但可能还有更多的工作要做。
我建议您从少数 64GB 机器开始。您可以根据需要添加更多。折腾几个(较小的)客户端节点作为索引和搜索请求的前端。