Hbase中单行超过Hbase .hregion.max.filesize导致性能问题



在Hbase中,我将hbase.hregion.max.filesize配置为10GB。如果单行超过10GB大小,那么该行将不会分成2个区域,因为Hbase是根据行键

进行分割的。

例如,如果我有一个有1000列的行,每个列的大小在25MB到40mb之间,所以有可能超过定义的区域大小。如果是这种情况,单独使用rowkey或带列限定符的行键读取数据时,它将如何影响性能?

首先Hbase不适合在单行中存储10GB的大数据(这是假设的)。

我希望你没有在一行中保存10GB(只是考虑保存)

会对性能产生不利影响。您可以考虑其他方法,例如在hdfs中以分区结构存储这么多数据。

一般来说,这些是一般适用的批处理客户机(如Mapreduce Hbase作业)的技巧

Scan scan = new Scan();
scan.setCaching(500); //1 is the default in Scan, which will be bad for MapReduce jobs
scan.setCacheBlocks(false);  // don't set to true for MR jobs

可以看看性能

最新更新