索引一直会有写入删除操作,但是集群压力较大,需要手动 force merge 减轻压力。
当进行一次 froce merge 后,索引再有数据写入删除等操作,就会导致 segments 大小的极度不均和,如图所示,再进行 force merge 也无法解决这个问题。
以下 merge 参数是否只适用于 es 自行 merge 的操作,force merge 并不会受其限制,有没有办法利用 max_merged_segment 参数限制 大 segment 不参与 force merge ?
当进行一次 froce merge 后,索引再有数据写入删除等操作,就会导致 segments 大小的极度不均和,如图所示,再进行 force merge 也无法解决这个问题。
以下 merge 参数是否只适用于 es 自行 merge 的操作,force merge 并不会受其限制,有没有办法利用 max_merged_segment 参数限制 大 segment 不参与 force merge ?
"merge" : {
"scheduler" : {
"max_thread_count" : "4",
"auto_throttle" : "true",
"max_merge_count" : "9"
},
"policy" : {
"reclaim_deletes_weight" : "2.0",
"floor_segment" : "2mb",
"max_merge_at_once_explicit" : "30",
"max_merge_at_once" : "10",
"max_merged_segment" : "5gb",
"expunge_deletes_allowed" : "10.0",
"segments_per_tier" : "10.0",
"deletes_pct_allowed" : "33.0"
}
},
4 个回复
pzw9696
赞同来自: caster_QL 、FFFrp
ElasticsearchMergePolicy(包装的最顶层还是TieredMergePolicy) 所以以上参数还是适用于force_merge,我记得 TieredMergePolicy
有个maxMergedSegmentBytes 默认是(5GB/2) 和 deletesPctAllowed 默认33% 这两个参数会限制大段合并,对应这里应该是 max_merged_segment 和 deletes_pct_allowed 你可以自己研究下。
Charele - Cisco4321
赞同来自: caster_QL
max_merged_segment只针对系统自己的merge有效,对手工的force merge操作无效。
我不知倒你系统是啥方面的压力,需要“需要手动 force merge 减轻压力”?
还得要“segments 均衡”?
flyingpot
赞同来自:
flyingpot
赞同来自: