现在假设我们要从Table2里面查询一条RowKey是RK10000的数据。那么我们应该遵循以下步骤:
1. 从.META.表里面查询哪个Region包含这条数据。
2. 获取管理这个Region的RegionServer地址。
3. 连接这个RegionServer, 查到这条数据。

系统如何找到某个row key (或者某个 row key range)所在的region
bigtable 使用三层类似B+树的结构来保存region位置。
第一层: 保存zookeeper里面的文件,它持有root region的位置。
第二层:root region是.META.表的第一个region其中保存了.META.表其它region的位置。通过root region,我们就可以访问.META.表的数据。
第三层: .META.表它是一个特殊的表,保存了hbase中所有数据表的region 位置信息。

说明:
(1) root region永远不会被split,保证了最需要三次跳转,就能定位到任意region 。
(2).META.表每行保存一个region的位置信息,row key 采用表名+表的最后一行编码而成。
(3) 为了加快访问,.META.表的全部region都保存在内存中。
(4) client会将查询过的位置信息保存缓存起来,缓存不会主动失效,因此如果client上的缓存全部失效,则需要进行最多6次网络来回,才能定位到正确的region(其中三次用来发现缓存失效,另外三次用来获取位置信息)。

Region定位流程:
a) 寻找RegionServer
ZooKeeper–> -ROOT-(单Region)–> .META.–> 用户表

b) -ROOT-表
表包含.META.表所在的region列表,该表只会有一个Region;
Zookeeper中记录了-ROOT-表的location。
c) .META.表
表包含所有的用户空间region列表,以及RegionServer的服务器地址

Hbase寻址(1)相关推荐

  1. hbase系统架构图以及各部分的功能作用,物理存储,HBase寻址机制,读写过程,Regin管理,Master工作机制

    1.1 hbase内部原理 1.1.1 系统架构 Client 1 包含访问hbase的接口,client维护着一些cache来加快对hbase的访问,比如regione的位置信息. Zookeepe ...

  2. HBase高级配置跟调整(1)

    搜搜 日榜 周榜 月榜 总榜 HBase高级配置跟调整(1) 2015-03-25 05:52 | 4932人阅读 | 来源 HBase高级配置和调整(1) 在对HBase集群进行调整之前,你需要先知 ...

  3. kylin调优,项目中错误总结,知识点总结,kylin jdbc driver + 数据库连接池druid + Mybatis项目中的整合,shell脚本执行kylin restapi 案例

    关于本篇文章的说明: 本篇文章为笔者辛苦劳作用了一整天总结出来的文档,大家阅读转发的时候请不要吝啬写上笔者:涂作权 和 原文地址. 由于笔者所在环境没有人用过kylin,笔者也是自学官网,阅读书籍 将 ...

  4. kylin调优,项目中错误总结,知识点总结,kylin jdbc driver + 数据库连接池druid + Myba

    首先给大家分享一个巨牛巨牛的人工智能教程,是我无意中发现的.教程不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵段子,像看小说一样,哈哈-我正在学习中,觉得太牛了,所以分享给大家!点这里可以跳转 ...

  5. JAVA_基础部分_综合篇

    JVM (1) 基本概念: JVM是可运行Java代码的假想计算机 ,包括一套字节码指令集.一组寄存器.一个栈.一个垃圾回收,堆 和 一个存储方法域.JVM 是运行在操作系统之上的,它与硬件没有直接的 ...

  6. Hbase原理、基本概念、基本架构

    概述 HBase是一个构建在HDFS上的分布式列存储系统: HBase是基于Google BigTable模型开发的,典型的key/value系统: HBase是Apache Hadoop生态系统中的 ...

  7. 20张图带你到HBase的世界遨游

    1 HBase 浅析 1.1 HBase 是啥 HBase 是一款面向列存储,用于存储处理海量数据的 NoSQL 数据库.它的理论原型是 Google 的 BigTable  论文.你可以认为 HBa ...

  8. hbase 修改表名_HBase学习——2.HBase原理

    1.系统架构 1.1 图解 从HBase的架构图上可以看出,HBase中的组件包括Client.Zookeeper.HMaster.HRegionServer.HRegion.Store.MemSto ...

  9. hbase 客户端_HBase架构与原理详解

    一.概述 HBase是基于列式存储的分布式数据库,底层存储采用的是LSM树,是Hadoop生态下核心技术之一. 1.1 架构图 1.2 组件介绍 HBase由三种类型的服务器以主从模式构成: Regi ...

最新文章

  1. 597个智慧城市相关试点将临大考
  2. java队列研究_辨证论治失眠疗效评价的医生队列研究
  3. Windows内核 基本汇编指令
  4. 你所不知道的mybatis居然也有拦截器
  5. python 螺旋数组_人工智能首选语言是什么 究竟Python有多强大
  6. SWIFT调用C语言
  7. java iqq_Linux开源QQ 2012(iQQ)
  8. mybatis update不生效_08. mybatis一级缓存和二级缓存
  9. Docker的bridge和macvlan两种网络模式
  10. android 热点 连接电脑上网,安卓手机做wifi热点让笔记本上网的方法
  11. 发红包的程序代码java_Java实现微信发红包
  12. VMware vCenter Server“具有外部PSC”架构调整为“具有嵌入式PSC”架构
  13. 市场调研-全球与中国化妆品级抗坏血酸葡糖苷市场现状及未来发展趋势
  14. 我的地盘ol位置服务器拒绝怎么办,微信我的地盘ol等级划分详解 微信我的地盘ol等级怎么分...
  15. 2022.11.05 第六次周报
  16. 使用Keras构建深度图像搜索引擎
  17. 散阅史记_老子韩非列传第三
  18. Java基础编写记事本
  19. lg显示器工厂模式怎么进入_LG液晶显示器进入工厂模式方法.doc
  20. armbian不拔掉TF卡使用usb移动硬盘启动

热门文章

  1. window下配置qemu虚拟机联网
  2. 年度盘点丨2017十大最佳科技创新产品!
  3. DBC文件的编辑方法
  4. 《C++primer》第10章:泛型算法
  5. 嵌入式 linux yum命令详解
  6. 2017-2018-2 20155203《网络对抗技术》Exp9 :Web安全基础
  7. 程序员python表白代码
  8. 英才计划计算机潜质测评试题,2018年“英才计划”综合实践活动通知
  9. java多线程归并排序_并行计算实验-串、并行排序算法
  10. 程序的可维护性和可扩展性