首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HBase预分片

HBase预分片
EN

Stack Overflow用户
提问于 2021-08-12 01:42:07
回答 1查看 47关注 0票数 0

我想要预先拆分的HBase表,例如在5个地区,像这样的hbase(main):001:0> create 'table','info',SPLITS => ['1000','2000','3000','4000']

如果其中一个区域(例如,区域为1000 ~ 2000)满足拆分条件并且已经被拆分(假设拆分之前称为region1,拆分后称为region2)。现在有了写入了rowkey 1001的数据,那么它将被写入哪个区域,region1还是region2?

我知道在没有预拆分的情况下,当发生拆分时,数据将被写入新区域,但是预拆分是否也是这种情况?

我有这个问题的原因是,当完成预拆分,然后发生拆分时,区域会变得额外。我最初只编写了几个预先指定的区域,那么如何处理额外的区域?

EN

回答 1

Stack Overflow用户

发布于 2021-08-13 06:49:59

要在地域拆分后确定哪个地域持有密钥,需要检查地域的起始密钥和结束密钥。属于开始和结束关键字的关键字将从该区域可用。

echo "list_regions 'table'" | hbase shell -n

当一个区域取消拆分时,它将创建2个新区域,并在新区域激活后关闭旧区域。具有新拆分的区域将具有新的区域名称。

代码语言:javascript
复制
echo "split 'table', '500'" | hbase shell -n 
echo "list_regions 'table'" | hbase shell -n 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68750648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档