【发布时间】:2015-01-21 22:51:26
【问题描述】:
我们使用的是 Titan 0.5.0 而不是 hbase 0.98.6 (cloudera 5.2)。 经过一段时间的使用后,我们发现特定区域中的一列系列大于 HBase 最大文件大小 (hbase.hregion.max.filesize),但无论何时我们拆分区域,它都保持相同大小。
有谁知道这个问题以及我们如何解决它?
【问题讨论】:
我们使用的是 Titan 0.5.0 而不是 hbase 0.98.6 (cloudera 5.2)。 经过一段时间的使用后,我们发现特定区域中的一列系列大于 HBase 最大文件大小 (hbase.hregion.max.filesize),但无论何时我们拆分区域,它都保持相同大小。
有谁知道这个问题以及我们如何解决它?
【问题讨论】:
我们意识到问题出在其中一个索引上。 有一个低基数属性的索引。这使得 hbase 中的单个索引行非常大。我们不能拆分它,因为它只有一行。
【讨论】:
hbase.hregion.max.filesize 从 hbase 0.94+ 起不起作用,因为默认拆分策略已更改。 check this link
你应该在 shell 中改变 split_policy,像这样:{TABLE_ATTRIBUTES => {MAX_FILESIZE => '12884901888', CONFIGURATION => {'hbase.hregion.scan.loadColumnFamiliesOnDemand' => 'true', 'SPLIT_POLICY' => 'org.apache.hadoop.hbase.regionserver.ConstantSizeRegionSplitPolicy'}}
【讨论】: