我使用ES 6.0.1,必须对许多索引执行频繁的索引打开/追加/关闭模式,通常是来自不同客户机的并行索引。(是的,我每次都要打开和关闭)
这会导致每个索引的小Lucene段数较多,并且随着时间的推移,上述序列会变慢(有时会慢2-5倍)。默认ES段合并策略显然做得不太好。
当我使用力合并 API对索引中的段进行合并时,对于已处理的索引,my序列的性能恢复到正常状态。但是,由于指数很多,所以我要用很多次来处理所有的指数。当然,我在多个线程(连接)中运行它,但是看起来ES从来没有与此操作并行,不管我提出多少并行请求,合并的速度都是相同的。
我从这里上读过并尝试过一些东西,但这并没有帮助我。
有人能给我建议一下吗?
发布于 2019-04-17 07:14:32
您可以通过elasticsearch文件更改force_merge线程池的大小,例如:
thread_pool.force_merge.size: 5不要忘记在配置更改后重新启动Elasticsearch。
https://stackoverflow.com/questions/55000702
复制相似问题