elasticsearch - elasticsearch需要多少堆内存?
问题描述
我在每个数据节点中有 8 个节点集群(3Master+3Data+2Coordinate)堆大小为 10gb,磁盘空间为 441gb,每天总计 1.2TB 我每天有 32.73GB 数据为 11 个索引创建 26 个分片。所以让假设保留期为 30 天。在第 30 天,集群上的数据为 982GB,总分片为 780,每个节点得到 260 个分片。所以平均分片大小为 260mb(大约)。我阅读 了这个文档,一个节点30gb 的堆大小可以处理 600 个分片。所以问题是 10gb 的堆大小可以处理 260 个分片吗?.
解决方案
您阅读的这篇文章可以被认为是一个很好的一般性建议,但有多种因素会影响它,如索引大小、分片大小、文档大小、磁盘类型、系统上的当前负载等等,在在同一个文档中,您会注意到建议的分片大小在 10 到 50 GB 之间,而您的分片大小非常小(您提到的 260 MB),因此基于此,我可以说 10GB 堆可以轻松处理您的情况下的 260 个分片,尽管您应该对集群进行基准测试并阅读更多关于 ES 如何在内部存储数据并搜索它们的信息,以便您轻松对其进行微调。
推荐阅读
- java - Jackson:如何动态设置属性的别名
- android - 构建一个在片段之间有不同测验q的应用程序,我用什么来保持运行分数?
- tcl - 反斜杠的模式匹配问题
- javascript - 是否可以获得像这种格式的 http 引用标头,例如:http://example.com
- swift - UITabBar isTranslucent 增加了一个额外的UITabBar?
- javascript - 更改 addEventListener 内部的变量
- javascript - 如何在reveal.js中插入标题页的背景图片
- php - 如何显示每行前 50 个字符的 Laravel 数组
- swift - 锁定按钮直到第二天
- node.js - 在模态中传递变量?