If you can afford downtime for your table, there are ways to do it. You can:
- Merge regions (requires table to be disabled atleast in some older versions and probably in newer ones too)
- Go brute force by doing an export, truncate, import (this is a little more manageable when you have a large number of regions). This however is way more resource intensive and will take longer.
If you can't afford downtime, I would suggest create another table which mirrors this one and then switch to the new one
From: Upender Nimbekar <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
Sent: Tuesday, 14 January 2014 10:21 AM
Subject: Rebuild HBASE Table to reduce Regions per RS
Does anyone have any experience rebuidling the HBASE table to reduce the
number of regions. I am currently dealing with a situation where the no. of
regions per RS have gone up quite significantly (500 per RS) and thereby
causing some performance issues. This is how I am thinking of bringing it
increase the hbase.hregion.max.filesize from 500 MB to 2 GB
And the rebuild the HBASE table. I am assuming if after table rebuild, I
should see the no. of regions come down to more than half. I would
basically like to stay within HBASE suggested no. of regions per RS which
is about 50-200.
Please suggest if someone has any experience doing it.