[ 
https://issues.apache.org/jira/browse/HBASE-26147?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17390039#comment-17390039
 ] 

Bryan Beaudreault commented on HBASE-26147:
-------------------------------------------

I've added the dry_run_balance_rsgroup command and related RSGroupAdmin, etc in 
my latest commit on the PR.

One piece to point out: For both the normal balancer and the rsgroup balancer, 
I'm currently running preBalance coprocessors but _not_ postBalance. The 
thought here is that preBalance is likely to be setup stuff, while postBalance 
expects to be called after regions have moved so might not be safe to call. I 
can see how this might be a little confusing or error prone though, so I'd also 
be open to skipping coprocessors altogether for dry run. I thought about adding 
a dry run argument to the coprocessor call, but that would mean an interface 
change. I could also add dryrun-specific coprocessor methods, but not sure how 
valuable that is.

Thoughts?

> Add dry run mode to hbase balancer
> ----------------------------------
>
>                 Key: HBASE-26147
>                 URL: https://issues.apache.org/jira/browse/HBASE-26147
>             Project: HBase
>          Issue Type: Improvement
>          Components: Balancer, master
>            Reporter: Bryan Beaudreault
>            Assignee: Bryan Beaudreault
>            Priority: Major
>
> It's often rather hard to know how the cost function changes you're making 
> will affect the balance of the cluster, and currently the only way to know is 
> to run it. If the cost decisions are not good, you may have just moved many 
> regions towards a non-ideal balance. Region moves themselves are not free for 
> clients, and the resulting balance may cause a regression.
> We should add a mode to the balancer so that it can be invoked without 
> actually executing any plans. This will allow an administrator to iterate on 
> their cost functions and used the balancer's logging to see how their changes 
> would affect the cluster. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to