Elasticsearch索引性能:节流合并

时间:2017-01-13 13:37:33

标签: elasticsearch lucene

我们将数据导入到弹性搜索集群中的少数指数,每个约10gb左右 与此同时,我们关注现有指数的搜索,其中很少是小~100mb,其中很少是大~10gb。

为了优化索引,我们:
  - 使用bulk api优化批量大小;
  - 将刷新间隔设置为-1;
  - 将复制因子设置为0;

现在,我们正在尝试了解合并限制如何提供帮助。 如果仅针对现有指数进行搜索,搜索和细分合并的关系如何?

根据这个DEV_BROADCAST_VOLUME,我们可以禁用合并限制 - 这是否意味着合并将" eat"磁盘i / o?
- 这是否意味着合并完全没有发生,我们必须在索引完成后手动_forcemerge?在这种情况下应该担心最大打开文件描述符吗?

根据这些articlearticle,我们根本不应该触及合并设置。

非常困惑,任何帮助都非常感谢。

1 个答案:

答案 0 :(得分:0)

根据讨论here

  

自ES 2.x起,IO限制由Lucene自动处理,   意味着它在写入合并的字节时以20 MB /秒的速度开始   分割。然后,当合并落后时,它会增加该速率   否则减少它。这意味着随着时间的推移,合并只会吸收   尽可能多的IO带宽来跟上你的速率   索引。