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各组件职责的更多相关文章

  1. 一起学HBase——简单介绍HBase各种组件

    HBase是谷歌BigTble的开源实现.谷歌的三篇论文拉开了大数据江湖的序幕,铸就了现在以Hadoop为主的大数据技术生态圈.而HBase是开源的大数据数据库,和传统的行式数据库不同的是,HBase ...

  2. Hadoop(hadoop,HBase)组件import到eclipse

    1.简介: 将源代码import到eclipse可以方便的阅读和修改源码. 2.环境说明: mac mvn工具(Apache Maven 3.3.3 ) 3.hadoop(CDH5.4.2) 1.进入 ...

  3. Netty服务端创建流程及组件职责

    public class NettyServer { public static void main(String[] args) throws InterruptedException { NioE ...

  4. HBase功能组件

  5. 从零自学Hadoop(19):HBase介绍及安装

    阅读目录 序 介绍 安装 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 上一篇, ...

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

    来源:http://blog.csdn.net/woshiwanxin102213/article/details/17584043 概述 HBase是一个构建在HDFS上的分布式列存储系统:HBas ...

  7. Hbase原理

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

  8. iOS 组件化 —— 路由设计思路分析

    原文 前言 随着用户的需求越来越多,对App的用户体验也变的要求越来越高.为了更好的应对各种需求,开发人员从软件工程的角度,将App架构由原来简单的MVC变成MVVM,VIPER等复杂架构.更换适合业 ...

  9. hbase 存储结构和原理

    HBase的表结构 建表时要指定的是:表名.列族 建表语句 create 'user_info', 'base_info', 'ext_info' 意思是新建一个表,名称是user_info,包含两个 ...

随机推荐

  1. MathType输入几何符号的技巧

    通过学习几何学的知识,我们发现其中包含的几何符号有很多,比如有表示图形的符号,如三角形,平行四边形,圆,角,圆弧等:还有表示位置关系的符号,如平行,垂直等:还有表示矢量等其他符号,那么MathType ...

  2. 用思维导图软件MindManager整理假期

    今天带大家使用MindManager2020软件构建出2020年的节假日思维导图. 既然是做2020年的节假日思维导图,那么有个MindManager技巧就是,关于这一类思维导图我们都可以选择时间线导 ...

  3. 在FL Studio中通过Key Tracking来改善声音

    FL Studio中的关键点跟踪(Key Tracking),是一种为MIDI添加更多动态效果的便利工具,在FL Studio中通过使用这个插件能力,我们无需担心自动化或手动调整参数等比较麻烦的问题. ...

  4. CSUST 4019 听党指挥(思维+模拟)

    题目链接 题目大意 给你一个长度为n的序列(n为偶数),序列为[1,2,3,....n],操作m次,进行m次操作后输出这个序列 有三种操作 1:每次将最左边的元素移到最右边,重复x次 2:每次将最右边 ...

  5. 蓝桥杯——复数幂 (2018JavaAB组第3题)

    18年Java蓝桥杯A组第3题和B组是一样的. 第三题往往比较难. 复数幂 (18JavaAB3) (A.B两卷第三题一样) 设i为虚数单位.对于任意正整数n,(2+3i)^n 的实部和虚部都是整数. ...

  6. Java基础教程——字符流

    字符流 字节流服务文本文件时,可能出现中文乱码.因为一个中文字符可能占用多个字节. 针对于非英语系的国家和地区,提供了一套方便读写方式--字符流. java.io.Reader java.io.Wri ...

  7. GitHub 上 1.3k Star 的 strman-java 项目有值得学习的地方吗?源码视角

    大家好,我是沉默王二. 很多初学编程的同学,经常给我吐槽,说:"二哥,你在敲代码的时候会不会有这样一种感觉,写着写着看不下去了,觉得自己写出来的代码就好像屎一样?" 这里我必须得说 ...

  8. LeetCode 018 4Sum

    题目描述:4Sum Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c ...

  9. 这 6 个 Spring Boot 项目够经典

    不得不佩服 SpringBoot 的生态如此强大,今天我给大家推荐几款 Gitee 上优秀的后台管理系统,小伙伴们再也不用从头到尾撸一个项目了. SmartAdmin 我们开源一套漂亮的代码和一套整洁 ...

  10. 基于ARM64的Qemu/KVM学习环境搭建

    作者:pengdonglin137@163.com 在没有aarch64架构的开发板的情况下,可以使用Qemu来模拟一个支持KVM的AArch64位的host,然后再在其上运行一个开启KVM加速的Qe ...