我印象里应该是有这个机制的,是不是 StripeCompaction 里没考虑这个参数

leojie <leo...@apache.org> 于2023年11月21日周二 11:42写道:
>
> 张老师,
> 您好!
>     请教一个HBase的问题,我们线上有张表,应用了Stripe
> Compaction策略,每个region均值40G,被分成8个Stripe,每个Stripe5g,业务删除大量数据,表整体和单个region手动触发major
> compaction不起作用,挑选不出来合适的文件参与合并。
>
> 看了源码,每个Stripe下面应用的合并策略是,ExploringCompactionPolicy,这个策略有一个关键点,筛选耽搁Stripe的Store
> file列表,候选文件列表中,只要存在一个文件的大小过大,满足条件,fileSize > (totalFileSize - fileSize) *
> (hbase.hstore.compaction.ratio 默认值1.2),就不会筛选出来文件参与major
>     如果支持一个强制合并的机制,是否合理?针对大量删除场景,或bulkload,存在大量数据被标记删除,可以在手动触发major时,
> 显式传入一个foreMajor之类的参数,就是
> 不应用挑选策略,直接选择合并全部文件,目前是否存在这样的功能,或者这样的功能是否合理?除此之外,针对这样的情况,是否有更理想的方案呢?
>     期待张老师的解惑,十分感谢😁😁

Reply via email to