我有三个区域服务器。我想基于我已经识别的行键(比如rowkey\u100和rowkey\u200),将一个hbase表平均分布到三个regionservres上。可以从hbase shell使用以下方法完成此操作:
create 'tableName', 'columnFamily', {SPLITS => ['rowkey_100','rowkey_200']}
如果我没弄错的话,这两个分割点将创建3个区域,前100行将转到第一个区域服务器,下100行将在第二个区域服务器,其余行在最后一个区域服务器。我想用scala代码做同样的事情。我如何在scala代码中指定这一点来将表拆分为区域?
2条答案
按热度按时间blmhpbnm1#
下面是用于创建带有拆分的hbase表的scala代码段:
有一些预定义的区域分割策略,但如果要创建自己的方式来设置跨越行键范围的分割点,可以创建如下简单函数:
把这句话注解掉就行了
val splits = ...
管路和更换createTable
的splits
参数autoSplits(2)
或者autoSplits(4, 128)
等等。juzqafwq2#
这个java代码可以帮助