HBase架构

HBase架构

1 系统架构

在这里插入图片描述

1.1 Client

客户端,例如:发出HBase操作的请求。例如:之前我们编写的Java API代码、以及HBase shell,都是CLient

1.2 Master Server

  • 监控RegionServer

  • 处理RegionServer故障转移

  • 处理元数据的变更

  • 处理region的分配或移除

  • 在空闲时间进行数据的负载均衡

  • 通过Zookeeper发布自己的位置给客户端

1.3 Region Server

  • 处理分配给它的Region

  • 负责存储HBase的实际数据

  • 刷新缓存到HDFS

  • 维护HLog

  • 执行压缩

  • 负责处理Region分片

  • RegionServer中包含了大量丰富的组件,如下:

Write-Ahead logs

HFile(StoreFile)

Store

MemStore

Region

2 逻辑结构模型

在这里插入图片描述

2.1 Region

在HBASE中,表被划分为很多「Region」,并由Region Server提供服务

2.2 Store

Region按列蔟垂直划分为「Store」,存储在HDFS在文件

2.3 MemStore

MemStore与缓存内存类似

当往HBase中写入数据时,首先是写入到MemStore

每个列蔟将有一个MemStore

当MemStore存储快满的时候,整个数据将写入到HDFS中的HFile中

2.4 StoreFile

每当任何数据被写入HBASE时,首先要写入MemStore

当MemStore快满时,整个排序的key-value数据将被写入HDFS中的一个新的HFile中

写入HFile的操作是连续的,速度非常快

物理上存储的是HFile

2.5 WAL

WAL全称为Write Ahead Log,它最大的作用就是 故障恢复

WAL是HBase中提供的一种高并发、持久化的日志保存与回放机制

每个业务数据的写入操作(PUT/DELETE/INCR),都会保存在WAL中

一旦服务器崩溃,通过回放WAL,就可以实现恢复崩溃之前的数据

物理上存储是Hadoop的Sequence File

相关文章

超详细的记录了HBase 集群搭建的整个过程,以及搭建过程出现...
头歌 HBase(相关的五个实验)
1.创建一个学生信息表,用来存储学生的姓名(姓名作为行键,...
大数据课程综合实验案例1 案例简介1.1 案例目的1.2 适用对象...
HBase从浅入深,(初级)什么是HBase,模型,NOSQL,架构,n...
Hadoop之Hbase安装和配置