performance - 为什么不通过在 elasticsearch 中设置刷新间隔来提高性能

标签 performance indexing elasticsearch bulkinsert

我看了关于提高索引性能的网站备忘录。 这是网站 link

此链接指导我如何提高性能。但是,当我使用 elasticsearch-py 批量 python api 时,它并没有提高 elasticsearch 中的索引速度。

即使所有配置更改也不会影响批量索引性能。

我使用了并行进程或线程。每秒最大平均 30000 个索引。

我做错了什么?

主节点:1 数据节点:5包括主节点 中央处理器:英特尔(R) 至强(R) CPU E5645 @ 2.40GHz 内存:32G

ES_HEAPSIZE:10G

谢谢

最佳答案

它实际上显着提高了性能(我这边超过 50%)。您只需要禁用 refresh_interval(当您完成索引数据时再次启用它)

curl -XPUT "http://localhost:9200/$INDEX_NAME/_settings" -d '{ "index" : { "refresh_interval" : "-1"  }}'

#index data......

curl -XPUT "http://localhost:9200/$INDEX_NAME/_settings" -d '{ "index" : { "refresh_interval" : "1s"  }}'

关于performance - 为什么不通过在 elasticsearch 中设置刷新间隔来提高性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19486348/

相关文章:

c - Linux下的硬件读写函数

python - pandas,分割或划分(减去)数据框

linux - Elasticsearch:更改旧文件夹索引的权限以使用 yum 安装的 elasticsearch

performance - 如何根据条件重复向量中的某些元素?

C# 一次绘制对象而不是使用循环

c++ - 从 XML 中提取特定数字属性的有效方法

javascript - 以编程方式在 JavaScript 中获取和设置 jssor 的索引

sql-server-2005 - SQL Server : how to write an alter index statement to add a column to the unique index?

elasticsearch - ElasticSearch获取字段,即使它们为空或为空

php - Yii2(或独立)中用于ElasticSearch查询DSL的构建器