HBase热点问题

HBase表会分成N个region进行存储(相当于分区),每个region都有start-end key。

默认情况下,创建一个HBase表只有一个region,所有的key都往这个region里面写,当写到一定阀值时,进行region分裂(region-split)。

分裂出来的region就有自己的start-end key。

HBase的region分裂是load-balance的结果,而load-balance是很耗时的,所以一般而言,建表的时候最好分配好每个region的范围,同时,插入数据的key要很小心,插入的key最好进行散列等均化操作,否则有可能数据都偏向一部分region。

 


发表评论