美文网首页我爱编程
HBase (三) 架构设计

HBase (三) 架构设计

作者: 半夕蝶梦 | 来源:发表于2018-03-23 09:50 被阅读40次

Hbase物理模型

image.png

HBase主要有三个进程。 HMaster, HRegionServer, Zookeeper(进程名为HQuorumPeer). 独立模式下运行的时候用jps查看只能看到一个进程HMaster, 运行在一起.
下图是一个分布式的部署模式:


image.png

此集群拥有主备Master(只有一个Master能工作,需要通过zookeeper选举), 多个zookeeper和多个regionServer。

HMaster主服务器:

  1. 只有一个工作中
  2. 为RegionServer分配region
  3. 负载均衡
  4. RegionServer 的failover
  5. GFS上垃圾文件回收
  6. 处理schema更新请求

Region和Region服务器:

  1. 表在行方向上按行健范围划分的是Region
  2. 一个表处世只有region, 记录数增加到某个阈值时才开始分裂
  3. Region是分布式存储和负载均衡的最小单元。 注意: Region里还有按Column Family划分存储
  4. 一个节点一个HRegionServer
  5. 一个RegionServer管理多个Region实例
  6. 一个Region包含HLog和存放数据的Store

HLog:
用于灾难恢复,WAL log表示wirite ahead log, 写之前先记录操作,然后才会写数据

Store:

  1. Store是Region里按列簇划分的存储单元。分为内存的memstore和硬盘上的HFile.
  2. 写操作先写入memstore, 到阈值写入StoreFile(HFile)
  3. HFile文件数量正常到阈值会触发region分裂,由HMaster分配到相应的region服务器上
  4. 客户端检索数据,先查内存,再查文件

Hbase访问流程

image.png

客户端读写访问流程

  1. HBase client通过访问zookeeper上保存的hbase:meta表的位置确定需要访问的region.
  2. client直接访问RegionServer做读写,不需要经过HMaster
  3. HMaster会为fail的regionServer的上的region做重新分配,也会做region的load balance.
image.png

客户端如果访问管理类的操作,需要与HMaster进行通信。

再回顾总结下各个进程的主要功能:

  • HMaster:

    • 分配region到Region server
    • Region server的负载均衡
    • Region Server 的failover
    • HDFS的垃圾回收
    • 处理schema更新请求
  • HRegionServer:

    • 维护region, 处理对该region请求
    • 切分region
  • Zookeeper:

    • Master选举
    • 存储region元数据
    • 存储region server状态, 维护和region server的心跳
    • 存储HBase的schema和table

相关文章

  • Hbase架构和设计

    Hbase架构和设计

  • HBase

    简述 1 HBase的应用场景 2 HBase的概念与定位 3 HBase架构体系与设计模型 HBase架构体系 ...

  • HBase学习笔记(二)HBase架构

    HBase Architectural Components(HBase架构组件) HBase架构也是主从架构,由...

  • HBase (三) 架构设计

    Hbase物理模型 HBase主要有三个进程。 HMaster, HRegionServer, Zookeeper...

  • Hbase学习资料

    HBase数据模型解析和基本的表设计分析 Hbase原理、基本概念、基本架构 HBase 超详细介绍 Apache...

  • 《Hbase企业应用开发实战》笔记-第8章 广告统计实例

    一、需求 二、架构设计 三、HBase表结构设计 四、统计逻辑设计 总结: 统计维度组合做成Key 统计值用HTa...

  • Hbase整理

    架构设计 hbase是基于hdfs的列式存储引擎,主要包含以下三个组件: HMaster 管理用户对Table表的...

  • 深入探索HBase架构

    HBase架构的组成 HBase大体上按照master-slave架构可以分解成三种类型的服务。Region se...

  • Hbase运行机制

    本文思路 Hbase是什么 Hbase的优劣 Hbase架构 Hbase容错 Hbase使用总结 HBase是什么...

  • hbase读写请求流程详解

    要理解读写流程,先要清除hbase的架构图。以0.96版本以下的三层架构为例: hbase是主从架构,主节点是HM...

网友评论

    本文标题:HBase (三) 架构设计

    本文链接:https://www.haomeiwen.com/subject/yxuwqftx.html