1

我们有一个由以下配置的 3 个节点组成的弹性搜索集群

 #Cpu Cores     Memory(GB)   Disk(GB)    IO Performance 
    36            244.0        48000        very high

这些机器位于 3 个不同的区域,即 eu-west-1c、eu-west-1a、eu-west-1b。

每个弹性搜索实例都被分配了 30GB 的堆空间。

我们仅将上述集群用于运​​行聚合。集群的复制因子为 1,所有字符串字段都未分析,所有字段的 doc_values 为真。

我们将数据注入到这个集群中,并行运行 6 个 logstash 实例(批量大小为 1000)

当更多的logstash实例一个一个启动时,ElasticSearch集群的节点开始抛出内存不足的错误。

可以进行哪些优化以加快集群上的批量索引速度?= 同一区域中集群节点的存在会增加批量索引吗?在集群中添加更多节点会有帮助吗?

到目前为止采取的几个步骤

将批量队列大小从 50 增加到 1000
将刷新间隔从 1 秒增加到 2 分钟将分段
合并限制更改为无 ( https://www.elastic.co/guide/en/elasticsearch/guide/current/indexing-performance.html )

如果其中一个节点出现故障,我们无法将复制因子设置为 0,因为涉及的不一致。

4

0 回答 0