ElasticSearch之Force merge API
1.ElasticSearch之安装2.ElasticSearch之查看集群的参数3.ElasticSearch之健康状态4.ElasticSearch的日志配置5.ElasticSearch之cat aliases API6.ElasticSearch之Health API7.ElasticSearch之Nodes info API8.ElasticSearch之系统关键配置9.ElasticSearch之cat allocation API10.ElasticSearch之cat anomaly detectors API11.ElasticSearch之cat component templates API12.ElasticSearch之配置13.ElasticSearch之cat count API14.ElasticSearch之cat data frame analytics API15.ElasticSearch之禁用交换分区16.ElasticSearch之虚拟内存17.ElasticSearch之文件描述符的数量18.ElasticSearch之线程的数量19.ElasticSearch之cat datafeeds API20.ElasticSearch之cat fielddata API21.ElasticSearch之cat health API22.ElasticSearch之cat indices API23.ElasticSearch之cat master API24.ElasticSearch之cat nodeattrs API25.ElasticSearch之线程池26.ElasticSearch之cat nodes API27.ElasticSearch之cat pending tasks API28.ElasticSearch之cat plugins API29.ElasticSearch之cat recovery API30.ElasticSearch之cat repositories API31.ElasticSearch之cat segments API32.ElasticSearch之cat shards API33.ElasticSearch之cat task management API34.ElasticSearch之cat templates API35.ElasticSearch之cat thread pool API36.ElasticSearch之Search settings37.ElasticSearch之cat trained model API38.ElasticSearch之cat transforms API39.ElasticSearch之Merge
40.ElasticSearch之Force merge API
41.ElasticSearch之Task management API42.ElasticSearch之Slow Log43.ElasticSearch之Analyze index disk usage API44.ElasticSearch之Clear cache API45.ElasticSearch之Create index API46.ElasticSearch之Clone index API47.ElasticSearch之Close index API48.ElasticSearch之Open index API49.ElasticSearch之Delete index API50.ElasticSearch之Exists API51.ElasticSearch之Get index API52.ElasticSearch之Get index settings API53.ElasticSearch之Index stats API54.ElasticSearch之Refresh API55.ElasticSearch之Shard request cache settings56.ElasticSearch之Node query cache settings57.ElasticSearch之Index modules58.ElasticSearch之集群中的节点59.ElasticSearch之网络配置使用本方法,可以触发强制合并操作。
默认情况下,ElasticSearch
会在后台周期性触发合并操作,因此不需要用户刻意使用本方法。
使用强制合并的弊端:
- 可能会产生大于5G的
segment
对象,而ElasticSearch
后台自动触发的合并操作会跳过此类大型segment
对象。 - 假如定期执行强制合并,将导致快照的成本增高,原因是强制合并产生的
segment
的变动,导致无法增量创建快照。
方法参数
max_num_segments
合并操作完成后,创建的segment
对象的数量。
当指定为1
时,表示完全合并。
未指定本参数时,表示仅当符合条件时,才会执行合并操作。
only_expunge_deletes
,默认值为false
。
true
,检查全部segment
对象,对于标记为删除记录的占比超出参数index.merge.policy.expunge_deletes_allowed
的segment
,执行合并操作。false
,不检查删除记录的占比。
wait_for_completion
,默认值为true
。
true
,表示同步调用,需要等待本次强制合并任务结束,调用才会返回。false
,表示异步调用,可以使用返回的任务标识来查询进度,但注意触发的任务不会被取消。假如有多个任务被触发,则会被调度器放在队列中,逐个执行。
注意only_expunge_deletes
和max_num_segments
不能同时使用。
相关参数
index.merge.policy.expunge_deletes_allowed
index
中已被标记为删除状态的记录的比例,百分数,默认值为10
。
当前only_expunge_deletes
取值为true
时使用。
使用样例
创建测试用的index
,命名为testindex_001
,命令样例,如下:
curl -X PUT "https://localhost:9200/testindex_001?pretty" --cacert $ES_HOME/config/certs/http_ca.crt -u "elastic:ohCxPH=QBE+s5=*lo7F9"
执行结果的样例,如下:
{ "acknowledged": true, "shards_acknowledged": true, "index": "testindex_001" }
执行时指定index
的名称testindex_001
,命令样例,如下:
curl -X POST "https://localhost:9200/testindex_001/_forcemerge?pretty" --cacert $ES_HOME/config/certs/http_ca.crt -u "elastic:ohCxPH=QBE+s5=*lo7F9"
执行结果的样例,如下:
{ "_shards" : { "total" : 2, "successful" : 1, "failed" : 0 } }
执行时不指定index
的名称,命令样例,如下:
curl -X POST "https://localhost:9200/_forcemerge?pretty" --cacert $ES_HOME/config/certs/http_ca.crt -u "elastic:ohCxPH=QBE+s5=*lo7F9"
执行结果的样例,如下:
{ "_shards" : { "total" : 2, "successful" : 1, "failed" : 0 } }
执行时不指定index
的名称,异步调用,命令样例,如下:
curl -X POST "https://localhost:9200/_forcemerge?wait_for_completion=false&pretty" --cacert $ES_HOME/config/certs/http_ca.crt -u "elastic:ohCxPH=QBE+s5=*lo7F9"
执行结果的样例,如下:
{ "task" : "aKgBu7LgS9a6iPYH8n2JPw:103209" }
相关资料
本文来自博客园,作者:jackieathome,转载请注明原文链接:https://www.cnblogs.com/jackieathome/p/17868703.html
合集:
ElasticSearch
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南