Hbase各组件职责
Hbase各组件职责
Client职责
1、HBase有两张特殊表: .META.:记录了用户所有表拆分出来的的Region映射信息,.META.可以有多个Regoin -ROOT-:记录了.META.表的Region信息,-ROOT-只有一个Region,无论如何不会分裂
2、Client访问用户数据前需要首先访问ZooKeeper,找到-ROOT-表的Region所在的服务器位置,然后访 问-ROOT-表,接着访问.META.表,最后才能找到用户数据的服务器位置去访问,中间需要多次网络操作,不 过client端会做cache缓存。
ZooKeeper**职责
1、ZooKeeper为HBase提供Failover机制,选举Master,避免单点Master单点故障问题
2、存储所有Region的寻址入口:-ROOT-表在哪台服务器上。-ROOT-这张表的位置信息
3、实时监控RegionServer的状态,将RegionServer的上线和下线信息实时通知给Master
4、存储HBase的Schema,包括有哪些Table,每个Table有哪些Column Family
Master职责
1、为RegionServer分配Region
2、负责RegionServer的负载均衡
3、发现失效的RegionServer并重新分配其上的Region master是管理者,一个hbase系统会有很多表,每个表又有很多region,那么这些region到底交给那 些region来管理就是由 master来决定
4、HDFS上的垃圾文件(HBase)回收 region会compact也会split,必然会有失效的数据
5、处理Schema更新请求(表的创建,删除,修改,列簇的增加等等) 这些关于schema的数据都是存储在ZOOKEeper,但是是master是负责更新的 如果涉及到表的创建,修改,删除等操作,master宕机了就没法做,但是数据的插入和查询还是可以继续做
RegionServer职责
1、RegionServer维护Master分配给它的Region,处理对这些Region的IO请求 2、负责和底层的文件系统HDFS的交互,存储数据到HDFS 每个regionserver内部都有一个客户端(datnaode的代理)。 负责把数据写入到HDFS 3、负责Store中的HFile的合并Compact工作 + split工作 4、RegionServer负责Split在运行过程中变得过大的Region,负责Compact操作 SplitPolicy 分割策略:有三个默认的策略!
如果master宕机了,那些事情不能做:
1、创建,修改,删除,表
2、负责均衡不能做
3、split不能做了。
那些操作能继续做呢?
1、读数据 2、写数据
Hbase各组件职责的更多相关文章
- 一起学HBase——简单介绍HBase各种组件
HBase是谷歌BigTble的开源实现.谷歌的三篇论文拉开了大数据江湖的序幕,铸就了现在以Hadoop为主的大数据技术生态圈.而HBase是开源的大数据数据库,和传统的行式数据库不同的是,HBase ...
- Hadoop(hadoop,HBase)组件import到eclipse
1.简介: 将源代码import到eclipse可以方便的阅读和修改源码. 2.环境说明: mac mvn工具(Apache Maven 3.3.3 ) 3.hadoop(CDH5.4.2) 1.进入 ...
- Netty服务端创建流程及组件职责
public class NettyServer { public static void main(String[] args) throws InterruptedException { NioE ...
- HBase功能组件
- 从零自学Hadoop(19):HBase介绍及安装
阅读目录 序 介绍 安装 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 上一篇, ...
- Hbase原理、基本概念、基本架构
来源:http://blog.csdn.net/woshiwanxin102213/article/details/17584043 概述 HBase是一个构建在HDFS上的分布式列存储系统:HBas ...
- Hbase原理
Hbase原理 概述 HBase是一个构建在HDFS上的分布式列存储系统:HBase是基于Google BigTable模型开发的,典型的key/value系统:HBase是Apache Hadoop ...
- iOS 组件化 —— 路由设计思路分析
原文 前言 随着用户的需求越来越多,对App的用户体验也变的要求越来越高.为了更好的应对各种需求,开发人员从软件工程的角度,将App架构由原来简单的MVC变成MVVM,VIPER等复杂架构.更换适合业 ...
- hbase 存储结构和原理
HBase的表结构 建表时要指定的是:表名.列族 建表语句 create 'user_info', 'base_info', 'ext_info' 意思是新建一个表,名称是user_info,包含两个 ...
随机推荐
- 面试大厂,90%会被问到的Java面试题(附答案)
面向对象的三个特征 封装,继承,多态 多态的好处,代码中如何实现多态,虚拟机中如何实现多态 允许不同类对象对同一消息作出相应,好处如下: 可替换性:多态对已存在的代码具有可替换性 可扩充性:增加新的子 ...
- 使用Sidechain EQ优化FLStudio的贝斯和底鼓
混音的目标之一是平衡各个声音的音量.当两个声音占据相同的频率范围时,有时就比较难处理.这是贝司和底鼓之间经常会碰到的情况.很多时候我们会使用压缩(compression)来降低他们的音量. 然而,有 ...
- distinct关键字
对于distinct关键字,distinct关键字应用于所有列而不仅是前置它的列,如果给出多个列,将会比较两个列. 这是完整表, 首先是select distinct username from us ...
- 从执行上下文角度重新理解.NET(Core)的多线程编程[2]:同步上下文
一般情况下,我们可以将某项操作分发给任意线程来执行,但有的操作确实对于执行的线程是有要求的,最为典型的场景就是:GUI针对UI元素的操作必须在UI主线程中执行.将指定的操作分发给指定线程进行执行的需求 ...
- python升级版本
前言 目前大部分使用的3.6或者3.7以及更低版本存在不少问题,随着python的更新很多问题得到修复并且具有更多新的功能. 更新 3.y.x版本升级到3.y.z 下载需要升级的exe安装包点击upg ...
- LeetCode双周赛#33 题解
5480. 可以到达所有点的最少点数目 #贪心 题目链接 题意 给定有向无环图,编号从0到n-1,一个边集数组edges(表示从某个顶点到另一顶点的有向边),现要找到最小的顶点集合,使得从这些点出发, ...
- 【Makefile】5-Makefile变量的基础
目录 前言 概念 Chapter 5:变量的基础 5.1 变量的基础 * 空格的定义 ** 一些赋值 一些特殊的符号 5.2 变量中的变量 * 5.3 变量高级用法 变量值替换 把变量的值再当成变量 ...
- [题解] 洛谷 P3393 逃离僵尸岛
题目TP门 很明显是一个最短路,但是如何建图才是关键. 对于每一个不可遍历到的点,可以向外扩散,找到危险城市. 若是对于每一个这样的城市进行搜索,时间复杂度就为\(O(n^2)\),显然过不了.不妨把 ...
- MFC二进制文件读取
1.mfc Document-vew doc类中读取 doc类中读取,在Vew类中可直接使用. 在菜单栏NewFile/OpenFile 后,系统自动调用Serialize()函数 if :写入文件 ...
- UPX使用教程
UPX是一个通用可执行文件压缩器,由于其具有: 压缩率高:压缩效果优于zip/gzip: 解压速度快:在奔腾133上即可达到大约10MB/秒: 压缩的可执行文件没有额外的内存开销: 安全:可以列表,检 ...