Separating Hbase areas when they shouldn't be
We have multiple tables configured with DelimitedKeyPrefixRegionSplitPolicy (inherited from IncreasingToUpperBoundRegionSplitPolicy), memstore flush size 128M and MAX_FILESIZE table ~ 20GB.
According to our calculations, we should not receive more than 5 regions per server until the region size reaches 20 GB (4 ^ 3 * 256 M = 16 GB), but we have 7-15 regions per region server.
We pre-combined them to get the correct number, but then they just split again. We are using hbase 0.98.4 and the table description shows {TABLE_ATTRIBUTES => {MAX_FILESIZE => '21474836480' ... The default max max file size is 1GB and many of the regions are larger than that.
We cannot understand why they continue to split despite our best efforts to reduce the number of regions. Any ideas?
source to share