为了提高搜索性能。为不再更新的只读索引执行force merge,将Lucene索引合并为单个分段,可以提升查询速度。当一个Lucene索引存在多个分段时,每个分段会单独执行搜索再将结果合并,将只读索引强制合并为一个Lucene分段不仅可以优化搜索过程,对索引恢复速度也有好处。
在kibana操作,命令如下
###查看某个index的forceMerge情况
GET /_cat/segments/order_dev1?v&s=prirep,shard
##查看分段数
GET _cat/segments/order_dev1?v&h=shard,segment,size,size.memory
##分段合并api
POST order_dev1/_forcemerge?max_num_segments=1
##查看各个节点forceMerge的线程数:
GET _cat/thread_pool/force_merge?v&s=name
###查看所有index的segment(段)情况和正在进行merge的文档数:
GET /_cat/indices/?s=segmentsCount:desc&v&h=index,segmentsCount,segmentsMemory,memoryTotal,mergesCurrent,mergesCurrentDocs,storeSize,p,r
###查看forceMerge任务详情
GET _tasks?detailed=true&actions=*forcemerge