好的,感谢张老师回复,我提个issue,描述下这个问题

张铎(Duo Zhang) <palomino...@gmail.com> 于2023年11月29日周三 14:21写道:

> 果然
>
>
> https://github.com/apache/hbase/blob/4d90b918a3702b4e4ae2f9ee890c14665e821c01/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StripeStoreEngine.java#L84
>
> 这个方法里压根就没用过那个 forceMajor 参数
>
> 可以开个 issue 吧,看看这块怎么改一下,至少得把 forceMajor 这个参数传递下去,在 stripe 内部做 compact
> 的时候需要能拿到这个参数
>
> 张铎(Duo Zhang) <palomino...@gmail.com> 于2023年11月29日周三 14:18写道:
> >
> > 我印象里应该是有这个机制的,是不是 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