合并
编辑合并
编辑Elasticsearch 中的分片是一个 Lucene 索引,而 Lucene 索引又被分解为段。段是索引中存储索引数据的内部存储元素,且是不可变的。较小的段会定期合并为较大的段,以保持索引大小并清除删除。
合并过程使用自动节流来平衡合并和其他活动(如搜索)之间的硬件资源使用。
合并调度
编辑合并调度器(ConcurrentMergeScheduler)在需要时控制合并操作的执行。合并在单独的线程中运行,当达到最大线程数时,后续的合并将等待直到有合并线程可用。
合并调度器支持以下动态设置:
-
index.merge.scheduler.max_thread_count
- 单个分片上可以同时进行合并的最大线程数。默认为
Math.max(1, Math.min(4, <<node.processors, node.processors>> / 2))
,这对于良好的固态硬盘 (SSD) 来说效果很好。如果您的索引位于旋转盘驱动器上,请将此值减少到 1。