[
https://issues.apache.org/jira/browse/HBASE-22285?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17111488#comment-17111488
]
Nick Dimiduk commented on HBASE-22285:
--------------------------------------
Hi [~mnpoonia], can you tell me why you need a new {{Normalizer}}
implementation? I'm reviewing the code and I don't see the reason. Since this
has not release on any branch yet, I would like to revert the change and
instead apply some of your improvements to the existing
{{SimpleRegionNormalizer}}. The main reason for this is that by adding a new
class, we're making our public API bigger. Instead, I would like to make the
API we have more usable in more situations.
The big features I see here are:
# allows for an operator to have the normalizer just run merge (no splits). As
[~apurtell] proposed in initial discussion, I think we can add configuration
that allows an operator to explicitly disable either the split or the merge
{{Normalizer}} actions.
# specify a minimum region age as a prerequisite for it participating in a
merge action. I think this is a nice feature that the
{{SimpleRegionNormalizer}} should also share.
Please let me know if I missed any other functionality in my review. I'd like
to tackle this before 2.3.0, so that we don't have to go through a deprecation
cycle later on.
Thanks boss.
> A normalizer which merges very small size regions with adjacent
> regions.(MergeToNormalize)
> ------------------------------------------------------------------------------------------
>
> Key: HBASE-22285
> URL: https://issues.apache.org/jira/browse/HBASE-22285
> Project: HBase
> Issue Type: New Feature
> Components: master
> Reporter: Aman Poonia
> Assignee: Aman Poonia
> Priority: Minor
> Fix For: 3.0.0-alpha-1, 2.3.0
>
>
> There are scenarios where we have seen around 5% of total regions with a size
> of 0 bytes and another 5-6 % regions with size in a few bytes. These kinds of
> regions increase with time considering we have TTL over the rows.
> After exploring the option of RegionNormalizer and doing some quick runs we
> found that that is not suitable considering it also splits the regions and
> merges to normalize. What we really want is to split as per Split policy and
> merge very small regions with adjacent regions to make sure we reduce 0-byte
> regions.
> We can plugin this normalizer using the property
> "hbase.master.normalizer.class"
--
This message was sent by Atlassian Jira
(v8.3.4#803005)