Even when balancing by table the current default balancer does not
take into account region size, request rate, or memory usage.  If you
want those things there's a new balancer in trunk (slated for 0.96)
that gives these things.  However that patch is a little bit more
involved and applying it to the 0.94 trunk would take some work.  It's
do-able just more of an undertaking.

On Thu, Aug 2, 2012 at 10:30 AM, Kevin O'dell <[email protected]> wrote:
>
> Bryan,
>
>   https://issues.apache.org/jira/browse/HBASE-3373 did not make it into CDH4, 
> there is not a real easy way to do this on your own.  I have attached some 
> sample code to get your started with writing your own(a colleague of mine 
> wrote it).
>
>
>
> On Thu, Aug 2, 2012 at 1:20 PM, Bryan Keller <[email protected]> wrote:
>>
>> I'm using 0.92 (Cloudera CDH4). Yes I definitely do not want to balance all 
>> regions across all tables together, as some tables are much more active than 
>> others and thus some regions are barely being used. I was thinking this 
>> might be what the balancer was doing. The regions are balanced in terms of 
>> total regions across all tables.
>>
>> Is there a way to change this behavior in 0.92?
>>
>> On Aug 2, 2012, at 2:54 AM, Anoop Sam John <[email protected]> wrote:
>>
>> > Hi
>> >  Which version you are using?
>> > From 0.94 in the balancer there are 2 ways of balancing. One is by table 
>> > balancing in which balancer will make sure the regions for one table is 
>> > balanced across the RSs. But in the other way of balancing in generic way 
>> > it will consider all the regions across all the tables as one group only 
>> > and will balance all across the RSs.  Seems the 2nd way is happening with 
>> > ur case. Can u check the total number of regions (across all the tables) 
>> > in every RS. Is this balanced now?
>> >
>> > "hbase.master.loadbalance.bytable" config param can select any of the 2 
>> > ways of balancing. This is added in 0.94 version. You might be using some 
>> > older version?
>> >
>> > -Anoop-
>> > ________________________________________
>> > From: Bryan Keller [[email protected]]
>> > Sent: Thursday, August 02, 2012 11:37 AM
>> > To: [email protected]
>> > Subject: Region balancing question
>> >
>> > I have a table on a 4 node test cluster. I also have some other tables on 
>> > the cluster. The table in question has a total of 12 regions. I noticed 
>> > that 1 node has 6 regions, another has zero, and the remaining two nodes 
>> > have the expected 3 regions. I'm a little confused how this can happen.
>> >
>> > The node with zero regions for the table has regions for other tables, so 
>> > the node seems to be functioning properly. I'm not sure how this 
>> > particular table can end up having no regions on this one node. Should the 
>> > balancer distribute the regions evenly across the cluster for a given 
>> > table? If so, is there a way to force it to rebalance?
>>
>
>
>
> --
> Kevin O'Dell
> Customer Operations Engineer, Cloudera

Reply via email to