微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐