I would suggest you could write a custom load balancer and then have your hashing algo to determine how the load balancing should happen. Hope this helps.
Regards Ram On Fri, Jun 28, 2013 at 5:32 AM, Joarder KAMAL <joard...@gmail.com> wrote: > Thanks St.Ack for mentioning about the load-balancer. > > But my question was two folded: > Case-1. If a new RS is added, then the load-balancer will do it's job > considering no new region has been created in the meanwhile. // As you've > already answered. > > Case-2. Whether a new RS is added or not, an existing region is splitted > into two, then how the new writes will to the new region? Because, lets say > initially the hash function was calculated with *N* Regions and now there > are *N+1* Regions in the cluster. > > In that case, do I need to change the Hash function and reshuffle all the > existing data within the cluster !! Or, HBase has some mechanism to handle > this? > > > Many thanks again for helping me out... > > > > Regards, > Joarder Kamal > > On 28 June 2013 02:26, Stack <st...@duboce.net> wrote: > > > On Wed, Jun 26, 2013 at 4:24 PM, Joarder KAMAL <joard...@gmail.com> > wrote: > > > > > May be a simple question to answer for the experienced HBase users and > > > developers: > > > > > > If I use hash partitioning to evenly distribute write workloads into my > > > region servers and later add a new region server to scale or split an > > > existing region, then do I need to change my hash function and > re-shuffle > > > all the existing data in between all the region servers (old and new)? > > Or, > > > is there any better solution for this? Any guidance would be very much > > > helpful. > > > > > > > You do not need to change your hash function. > > > > When you add a new regionserver, the balancer will move some of the > > existing regions to the new host. > > > > St.Ack > > >