`
BlackWing
  • 浏览: 200571 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

HBase的start key和end key疑惑

阅读更多
转载请标明来源:http://blackwing.iteye.com/blog/1791848

之前把一个region人工拆分成多个region,每个region的起始key是具体某个row,但后来发现,hbase是把byte[0]作为一个表的起始key。官方文档这样描述:
http://hbase.apache.org/book.html#arch.catalog
引用
Notes on HRegionInfo: the empty key is used to denote table start and table end. A region with an empty start key is the first region in a table. If region has both an empty start and an empty end key, it's the only region in the table


这样就能解释,为什么获得某个表的其实key时,看到的是第一个region的start key是空,最后一个region的end key也是空了。
Pair<byte[][], byte[][]> keys = table.getStartEndKeys();


这样自己写代码操作region分切时,需要注意。
分享到:
评论

相关推荐

    hbase入门和使用

    HBase入门和使用知识点总结: 1. HBase基本介绍: HBase是建立在Hadoop文件系统(HDFS)之上的一种开源、分布式、可扩展的非关系型数据库。它是一种列式存储系统,模仿Google的Bigtable模型,适用于海量数据的实时...

    HBase技术介绍.docx

    随着数据量的增长,一个表会被划分成多个Region,每个Region由一个范围(start key, end key]表示,并且会被分配到不同的Region Server上进行管理。 - **-ROOT- Table**: 存储.META.表的位置信息。 - **.META. ...

    HBase技术介绍

    随着数据的增长,HBase会将大表分割成多个Region,每个Region由一个(startkey, endkey)范围表示,并分配给RegionServer管理。系统中有两张特殊表,-ROOT-和.META.,它们分别保存了用户表Region信息和.META.表的...

    05.02深入HBase1

    每个Region由HRegionServer负责管理,并有特定的startkey和endkey来标识其负责的范围。HBase的表可以分为两类:User Tables(用户表)和Catalog Tables(系统表)。用户表的信息,包括region的startkey和endkey,都...

    【No0057】HBase源码解析与开发实战.txt

    - 每个 Region 都有一个唯一的起始行键(start key)和一个结束行键(end key)来定义其范围。 - 一个 Region 的大小通常在 1GB 至 10GB 之间。 2. **Row Key** - Row Key 是 HBase 表中的行标识符,是每行数据...

    Hadoop之Hbase从入门到精通.doc

    Table随着记录数不断增加而变大后,会逐渐分裂成多份splits,成为regions,一个region由[startkey,endkey)表示,不同的region会被Master分配给相应的RegionServer进行管理。 HBase中有两张特殊的Table,-ROOT-和....

    Hbase文档总结

    在物理存储层面,表被分割成多个HRegion,每个Region由一个起始键和结束键([startkey, endkey))定义,当Region大小超过预设阈值(如`hbase.hregion.max.filesize`参数设置)时,会进行分裂。HBase利用Zookeeper...

    Hadoop之HBase简介

    Region由[startkey, endkey)范围表示,保证数据的有序性和分布式存储。HBase还依赖两张特殊的表——`-ROOT-`和`.META.`来存储Region信息,实现快速的数据定位和查询。 总的来说,HBase是应对大数据挑战的关键组件,...

    hadoop hbase_shell操作命令

    - 扫描指定范围的行:`scan 'member', {STARTROW =&gt; 'start_row_key', STOPROW =&gt; 'end_row_key'}` 8. **更新记录(Update)**: 在HBase中,更新记录实际上是覆盖原有记录,再次执行`put`命令即可。 9. **其他...

    Hadoop之Hbase从入门到精通 .doc

    当 Table 随着记录数不断增加而变大后,会逐渐分裂成多份 splits,成为 regions,一个 region 由[startkey,endkey)表示,不同的 region 会被 Master 分配给相应的 RegionServer 进行管理。 -ROOT- && .META. Table ...

    HBase编程实践

    scan.setStartRow(Bytes.toBytes("startKey")); scan.setStopRow(Bytes.toBytes("endKey")); ResultScanner scanner = table.getScanner(scan); for (Result result : scanner) { // 处理每一行的结果... } `...

    大数据HBase架构原理.pdf

    每个Region由一个StartKey和EndKey定义,实际上只需要StartKey,因为EndKey是下一个Region的StartKey。Region的大小可以通过配置进行调整,以平衡负载。 4. **Meta Region**:Meta Region存储了所有UserRegion的...

    java操作Hbase之比较过滤器RowFilter的使用源码

    例如,如果我们要筛选出行键在"startKey"和"endKey"之间的所有行,可以这样操作: ```java RowFilter startFilter = RowFilter.create(CompareFilter.CompareOp.GREATER_OR_EQUAL, new BinaryComparator(Bytes.to...

    HBASE schema design

    HBase表由多个区域(regions)组成,每个区域由起始键(startKey)和结束键(endKey)定义,并分布在集群的不同节点上。区域由一系列的HDFS文件和块组成,这些块被Hadoop分布存储并复制以保证数据的可靠性。HBase表...

    Hbase的安装与简单操作

    例如,`scan 'table_name', {COLUMNS =&gt; ['column_family:qualifier'], STARTROW =&gt; 'start_key', ENDROW =&gt; 'end_key'}`。 5. **删除数据**:`delete 'table_name', 'row_key', 'column_family:qualifier'`删除...

    hbase-2.1.0-bin.tar.gz

    - Region:包含一个或多个列族,由startKey和endKey定义范围。 - 列族:逻辑上的数据分类,每个列族可以包含任意数量的列。 4. **安装HBase 2.1.0**: - 解压`hbase-2.1.0-bin.tar.gz`到目标目录,例如`/usr/...

    Hbase从入门到精通

    随着数据的增长,HBase表会分裂成多个Region,每个Region由[startkey, endkey)定义。Region的管理由Master节点负责,被分配给不同的RegionServer。 **特殊表:** - **-ROOT-**:记录.META.表的Region信息,只包含...

Global site tag (gtag.js) - Google Analytics