一、

1、client

整个HBase集群的访问入口;

使用HBase RPC机制与HMaster和HRegionServer进行通信;

与HMaster进行通信进行管理类操作;

与HRegionServer进行数据读写类操作;

包含访问HBase的接口,并维护cache来加快对HBase的访问

2、zookeeper

保证任何时候,集群中只有一个HMaster;

存贮所有HRegion的寻入口;

实时监控HRegion Server的上线和下线信息,并实时通知给HMaster;

存储HBase的schema和table元数据;

Zookeeper Quorum存储-ROOT-表地址、HMaster地址。

3、master

>HMaster没有单点问题,HBase中可以启动多个HMaster,通过Zookeeper的Master Election机制保证总有一个Master在运行主要负责Table和Region的管理工作。

>管理用户对table的增删改查操作;

>管理HRegionServer的负载均衡,调整Region分布;

>Region Split后,负责新Region的分布;

>在HRegionServer停机后,负责失效HRegionServer上Region迁移工作

4、HRegion Server

维护HRegion,处理对这些HRegion的IO请求,向HDFS文件系统中读写数据;

负责切分在运行过程中变得过大的HRegion。

Client访问hbase上数据的过程并不需要master参与(寻址访问Zookeeper和HRegion Server,数据读写访问HRegione Server),
HMaster仅仅维护者table和Region的元数据信息,负载很低。

5、HBase & zookeeper

◆HBase 依赖ZooKeeper;

◆默认情况下,HBase管理ZooKeeper实例(指hbase自带的zk),比如,启动或者停止ZooKeeper;

◆HMaster与HRegionServers启动时会向ZooKeeper注册;

◆Zookeeper的引入使得HMaster不再是单点故障。

2.7 HBase架构深入剖析的更多相关文章

  1. [转] An In-Depth Look at the HBase Architecture - HBase架构深度剖析

    [From] https://mapr.com/blog/in-depth-look-hbase-architecture/ In this blog post, I’ll give you an i ...

  2. HBASE架构解析(二)

    http://www.blogjava.net/DLevin/archive/2015/08/22/426950.html HBase读的实现 通过前文的描述,我们知道在HBase写时,相同Cell( ...

  3. HBASE架构解析(一)

    http://www.blogjava.net/DLevin/archive/2015/08/22/426877.html 前记 公司内部使用的是MapR版本的Hadoop生态系统,因而从MapR的官 ...

  4. HBase架构深度解析

    原文出处: DLevin(@雪地脚印_) 前记 公司内部使用的是MapR版本的Hadoop生态系统,因而从MapR的官网看到了这篇文文章:An In-Depth Look at the HBase A ...

  5. Hbase架构与原理

    Hbase架构与原理 HBase是一个分布式的.面向列的开源数据库,该技术来源于 Fay Chang所撰写的Google论文"Bigtable:一个结构化数据的分布式存储系统".就 ...

  6. HBase轻松入门之HBase架构图解析

    2018-12-13 2018-12-20 本篇文章旨在针对初学者以我本人现阶段所掌握的知识就HBase的架构图中各模块作一个概念科普.不对文章内容的“绝对.完全正确性”负责. 1.开胃小菜 关于HB ...

  7. 最强Android书 架构大剖析 作者网站

    http://newandroidbook.com/    jonathan levin   (最强Android书 架构大剖析) http://newandroidbook.com/AIvI-M-R ...

  8. 深入了解HBASE架构(转)

    dd by zhj: 最近的工作需要跟HBase打交道,所以花时间把<HBase权威指南>粗略看了一遍,感觉不过瘾,又从网上找了几篇经典文章. 下面这篇就是很经典的文章,对HBase的架构 ...

  9. 深入HBase架构解析(二)【转】

    转自:http://www.blogjava.net/DLevin/archive/2015/08/22/426950.html 前言 这是<深入HBase架构解析(一)>的续,不多废话, ...

随机推荐

  1. 腾讯云centos,nginx安装

  2. TFS 解除独占锁定

    cmd 进入Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE tf workspace /delete 工作区名;创建的用户 / ...

  3. java UUID的解析与应用(转载)

    原文链接:http://www.blogjava.net/feelyou/archive/2008/10/14/234320.html 讨论UUID的定义.分类.应用及生成工具. 什么是UUID? U ...

  4. Html5的placeholder属性(IE兼容)

    HTML5对Web Form做了很多增强,比方input新增的type类型.Form Validation等. Placeholder是HTML5新增的还有一个属性,当input或者textarea设 ...

  5. html的dtd声明

    其实DOCTYPE声明,因为很多时候团队里没有做规范应该用哪个,而且几种不同的编辑工具新建出的html页面标准也不同:这就可能一个jsp页面写了几百行甚至上千行了,然后发现某个样式必须要改DOCTYP ...

  6. EasyPlayer安卓Android流媒体播放器实现直播过程中客户端快照功能

    本文转自:http://blog.csdn.net/jyt0551/article/details/56942795 对于一个裸的RTSP URL,存放在播放列表上略显单调与枯燥.大家可以看到Easy ...

  7. 各种数据库(oracle、mysql、sqlserver等)在Spring中数据源的配置和JDBC驱动包----转

    在开发基于数据库的应用系统时,需要在项目中进行数据源的配置来为数据 库的操作取得数据库连接.配置不同数据库的数据源的方法大体上都是相同的,不同的只是不同数据库的JDBC驱动类和连接URL以及相应的数据 ...

  8. Android笔记之获取应用程序文件目录

    获取应用程序文件目录 ContextWrapper.getFilesDir(),这个函数返回存放应用程序文件的目录的路径 获取应用程序缓存目录 ContextWrapper.getCacheDir() ...

  9. 在Visual Studio 2015中引用DLL的3种方法

    1.把dll文件复制到可执行文件所在目录 2.将工程属性->配置属性->调试->工作目录更改为dll文件所在目录 3.将工程属性->配置属性->调试->环境设置为P ...

  10. docker: Dockerfile命令介绍

    前一章介绍了Dockerfile创建镜像的方法,Dockerfile文件都是一些指令,因此要掌握Dockerfile就必须了解这些指令.这一章就介绍下Dockerfile的指令. From: 功能为指 ...