HBASE详细架构

HBASE详细架构_第1张图片
Master:
Master 是所有Region Server 的管理者,其实现类为HMaster,主要作用如下:
1、对于表的操作:create, delete, alter
2、对于RegionServer 的操作:分配regions 到每个RegionServer,监控每个RegionServer的状态,负载均衡和故障转移。
Region Server
Region Server 为 Region 的管理者,其实现类为HRegionServer,主要作用如下:
1、对于数据的操作:get, put, delete;
2、对于Region 的操作:splitRegion、compactRegion。
Zookeeper
HBase 通过Zookeeper实现Master的高可用、RegionServer的监控、元数据的入口以及集群配置的维护等工作。
HDFS
HDFS 为HBase 提供最终的底层数据存储服务,同时为HBase 提供高可用的支持。
StoreFile
保存实际数据的物理文件,StoreFile 以HFile的形式存储在HDFS 上。每个Store 会有一个或多个StoreFile(HFile),数据在每个StoreFile 中都是有序的。
MemStore
写缓存,由于HFile 中的数据要求是有序的,所以数据是先存储在MemStore中,排好序后,等到达刷写时机才会刷写到HFile,每次刷写都会形成一个新的HFile。
WAL
由于数据要经MemStore 排序后才能刷写到HFile,但把数据保存在内存中会有很高的概率导致数据丢失,为了解决这个问题,数据会先写在一个叫做Write-Ahead logfile 的文件中,然后再写入MemStore中。所以在系统出现故障的时候,数据可以通过这个日志文件重建。
region和region Server的关系如下图:
HBASE详细架构_第2张图片

你可能感兴趣的:(hbase,大数据开发,hbase,大数据)