
正文
hbase如何进行预分区,hbase预分区的弊端
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
hbase预分区与region切割的关系
1、默认,HBase 在创建表的时候,会自动为表分配一个 Region,正处于混沌时期,start-end key 无边界,所有 RowKey 都往这个 Region里分配。
2、HBase表的列族在创建之初只有一个Region,随着插入数据的增多Region变得越来越大。
3、整个region切分是一个比较复杂的过程,涉及子步骤,因此必须保证整个 Split 过程的事务性,即要么完全成功,要么完全未开始,在任何情况下也不能出现 Split 只完成一半的情况。
相关问答
Q1: hbase中的数据以什么形式存储
由于在HBase中数据存储是Key-Value形式,若向HBase中同一张表插入相同RowKey的数据,则原先存在的数据会被新的数据覆盖。设计的RowKey应均匀的分布在各个HBase节点上,避免数据热点现象。
HBase是介于MapEntry(key&value)和DBRow之间的一种数据存储方式。hbase使用的是jdk提供的ConcurrentSkipListMap,并对其进行了的封装,Map结构是KeyValue,KeyValue的形式。Concurrent表示线程安全。
HBase是一个列式存储的分布式数据库,它支持的数据格式包括以下几种:字符串类型(String):HBase中的字符串类型是最常见的一种数据类型,可以存储任何字符串,不论是ASCII字符还是Unicode字符。
Q2: 什么是hbase中的散列和预分区
1、所以,HBase 提供了预分区功能,让用户可以在创建表的时候对表按照一定的规则分区。
2、首先我们应该考虑的是rowkey的设置,第一:散列或者反转,保证数据会随机分布到不同的region当中。
3、像这样预先创建hbase表分区的方式,称之为预分区。hash(主键) + 年月日时(2019062315)这里只取hash(主键)的前6位,使得行键的长度正好是16,也就是8的整数倍,在64位计算机中,效果最好。
4、那么依照这个原则,我们可以将数据所要投放的分区提前大致的规划好,以提高Hbase性能。
关于hbase如何进行预分区和hbase预分区的弊端的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






