You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Chengxiang Li (JIRA)" <ji...@apache.org> on 2013/12/04 02:58:35 UTC

[jira] [Created] (HBASE-10075) add a locality-aware balancer

Chengxiang Li created HBASE-10075:
-------------------------------------

             Summary: add a locality-aware balancer
                 Key: HBASE-10075
                 URL: https://issues.apache.org/jira/browse/HBASE-10075
             Project: HBase
          Issue Type: New Feature
          Components: Balancer
    Affects Versions: 0.94.12
            Reporter: Chengxiang Li


basic idea: 
during rebalance. For each region server, iterate regions, give each region a balance score, remove the lowest one until the region number of region server reach avg floor. 
during assignment. match to-be-assigned regions with each active region server as pairs, give each pair a balance score, the highest win this region. 
here is the mark formula: 
(1 – tableRegionNumberOnServer/allTableRegionNumber) * tableBalancerWeight 
+ (1 – regionNumberOnServer/allRegionNumber) * serverBalancerWeight + regionBlockSizeOnServer/regionBlockSize * localityWeight 
+ (previousServer?1:0) * stickinessWeight 
there are 4 factors which would influence the final balance score: 
1. region balance 
2. table region balance 
3. region locality 
4. region stickiness 
through adjust the weight of these 4 factors, we can balance the cluster in different strategy.



--
This message was sent by Atlassian JIRA
(v6.1#6144)