一:整体架构

1.体系结构

  

2.物理模型

  

  

  

  

3.存储体系

   regionserver—>region->多个store(列簇)->一个memstore和多个storefile 

4.HDFS上的目录结构

  namespace—》table-》region-》列簇-》storefile

  

5.整体结构

  

6.HBASE的存储结构

  

7.写入流程

  

二:各个模块的功能

1.client  

  整个HBase集群的访问入口;
  使用HBase RPC机制与HMaster和HRegionServer进行通信;
  与HMaster进行通信进行管理类操作;
  与HRegionServer进行数据读写类操作;
  包含访问HBase的接口,并维护cache来加快对HBase的访问

2.Zookeeper

  保证任何时候,集群中只有一个HMaster;
  存贮所有HRegion的寻址入口;
  实时监控HRegion Server的上线和下线信息,并实时通知给HMaster;
  存储HBase的schema和table元数据;

3.HMaster

  HMaster没有单点问题,HBase中可以启动多个HMaster,通过Zookeeper的Master Election机制保证总有一个Master在运行,主负责Table和Region的管理工作。
  管理用户对table的增删改查操作;
  管理HRegionServer的负载均衡,调整Region分布;
  Region Split后,负责新Region的分布;
  在HRegionServer停机后,负责失效HRegionServer上Region迁移工作。

4.HRegionserver  

  维护HRegion,处理对这些HRegion的IO请求,向HDFS文件系统中读写数据;
  负责切分在运行过程中变得过大的HRegion。
  Client访问hbase上数据的过程并不需要master参与(寻址访问Zookeeper和HRegion Server,数据读写访问HRegione Server),HMaster仅仅维护这table和      Region的元数据信息,负载很低。

5.HBase与Zookeeper

  

072 HBase的架构以及各个模块的功能的更多相关文章

  1. HBase的架构以及各个模块的功能

    一:整体架构 1.体系结构 2.物理模型 3.存储体系 regionserver->region->多个store(列簇)->一个memstore和多个storefile 4.HDF ...

  2. Hbase系统架构

    HBase 系统架构 HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase是一个开源的,分布式的,多版本的,面向列 ...

  3. HBase 系统架构

    HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase是一个开源的,分布式的,多版本的,面向列的存储模型.它存储的是 ...

  4. 列式存储hbase系统架构学习

    一.Hbase简介 HBase是一个开源的非关系型分布式数据库(NoSQL),它参考了谷歌的BigTable建模,实现的编程语言为 Java.它是Apache软件基金会的Hadoop项目的一部分,运行 ...

  5. Hbase的架构原理、核心概念

    Hbase的架构原理.核心概念 1.Hbase的表.行.列.列族 2.核心组件: Table和region Table在行的方向上分割为多个HRegion, 一个region由[startkey,en ...

  6. HBase体系架构和集群安装

    大家好,今天分享的是HBase体系架构和HBase集群安装.承接上两篇文章<HBase简介>和<HBase数据模型>,点击回顾这2篇文章,有助于更好地理解本文. 一.HBase ...

  7. HBase系统架构及数据结构(转)

    原文链接:Hbase系统架构及数据结构 HBase中的表一般有这样的特点: 1 大:一个表可以有上亿行,上百万列 2 面向列:面向列(族)的存储和权限控制,列(族)独立检索. 3 稀疏:对于为空(nu ...

  8. Hbase系统架构简述

    由于最近要开始深入的学习一下hbase,所以,先大概了解了hbase的基本架构,在此简单的记录一下. Hbase的逻辑视图 Hbase的物理存储 HRegion Table中所有行都按照row key ...

  9. HBase 系统架构及数据结构

    一.基本概念     2.1 Row Key (行键)     2.2 Column Family(列族)     2.3 Column Qualifier (列限定符)     2.4 Column ...

随机推荐

  1. python技巧 一等函数

    函数在python中作为一等函数,具有以下特点: 1.可以作为参数传递给其他函数 2.作为其他函数的值返回 3.能赋值给变量或数据结构中的元素 4.在运行的时候创建 In [1]: def add(x ...

  2. D - Searching the String (AC自动机)

    题目链接:https://cn.vjudge.net/contest/281961#problem/D 题目大意:给你一个模式串,然后给你多个匹配串,匹配串的类型是包括可以覆盖的以及不可覆盖的. 具体 ...

  3. mysql 案例 ~ pt-xtrabackup 使用

    一 简介:学习innobackup工具使用 二 功能: 备份全库/单库/单表 三 常用命令  一 全库  目的 每天日常备份  备份 innobackupex --defaults-file=/etc ...

  4. Redis实现聊天功能

    在学习了Redis做为消息队列之后研究 了redis聊天的功能. 其实用关系型数据库也可以实现消息功能,自己就曾经用mysql写过一个简单的消息的功能.RDB中思路如下: ** 在实际中可以完全借助m ...

  5. Netty通信原理

    Netty是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端,它极大的简化了TCP和UDP套接字服务器等网络编程. BIO(Blocking IO):每一个请求,一个S ...

  6. numpy中 array数组的shape属性

    numpy.array 的shape属性理解 在码最邻近算法(K-Nearest Neighbor)的过程中,发现示例使用了numpy的array数组管理,其中关于array数组的shape(状态)属 ...

  7. vux安装中遇到的坑

    1.输入 npm install vux --save 2.输入 npm install vux-loader --save-dev(没安装的时候,会一直报错) 3.build/webpack.bas ...

  8. nodejs前端开发环境安装

    1.       nodejs安装 要求:node版本6.2.0及以上,npm版本3.8.9及以上 Nodejs安装包地址: 2.    在rTools上下载并安装git 3.    在rTools上 ...

  9. lnmp使用socket方式连接nginx优化php-fpm性能

    lnmp使用socket方式连接nginx优化php-fpm性能 Nginx连接fastcgi的方式有2种:TCP和unix domain socket 什么是Unix domain socket?- ...

  10. centos6.5环境基于corosync+cman+rgmanager实现RHCS及iscsi+gfs2+clvm的文件系统集群

    centos6.5环境基于corosync+cman+rgmanager实现RHCS及iscsi+gfs2+clvm文件系统集群 一.环境准备 服务器列表: ansible server : 192. ...