强制合并API允许通过API强制合并一个或多个索引。合并依赖于Lucene索引在每个分片中保存的分段数。强制合并操作允许通过合并分段来减少他们的数量。
此调用会阻塞,直到合并完成。如果http连接丢失,请求将在后台继续,并且任何新的请求都会阻塞,直到前面的强制合并完成。
POST /twitter/_forcemerge
强制合并API接受以下请求参数:
字段 | 描述 |
---|---|
max_num_segments | 要合并的分段数量。要完全合并索引需要设置为1.默认为简单地检查合并是否需要执行,如果需要,则执行。 |
only_expunge_deletes | 合并过程中是否只清除其中被删除的分段。在Lucene中,一个文档不会从分段中删除,只是标记为已删除。在这个分段的合并过程中,会创建没有那些删除文档的新分段。此标志仅允许合并已删除的段,默认为false。请注意,这不会覆盖 index.merge.policy.expunge_deletes_allowed 的阀值。 |
flush | 是否在强制合并后执行flush。默认为true。 |
强制合并API可以通过单个调用应用于多个索引上,甚至可以应用在_all
索引上。
POST /kimchy,elasticsearch/_forcemerge
POST /_forcemerge