
HBase整个架构与大数据学习生态圈一样以hadoop的HDFS文件系统为基底,通过zookeeper集群的协调建立.而集群又有自己的HMaster和HRegionServer.通过三个框架协调架构运行.
1.Region Server
Region Server为 Region的管理者,主要作用如下: 对于数据的操作(DML):get, put, delete;对于Region的操作:splitRegion、compactRegion。
2.Master
Master是所有Region Server的管理者,主要作用如下: 对于表的作(DDL):create, delete, alter 对于RegionServer的操作:分配regions到每个RegionServer,监控每个RegionServer
的状态,负载均衡和故障转移。
3.HLog
HLog(WAL log):WAL意为write ahead log,用来做灾难恢复使用,HLog记录数据的所有变更,由于数据要经 MemStore 排序后才能刷写到 HFile,但把数据保存在内存中会有很高的概率导致数据丢失.一旦region server 宕机,就可以从log中进行恢复。(类似于hadoop集群中的Edits文件,将所有变更操作写到一个文件中,当前节点宕机后,可从文件中恢复)
4.HRegion
意义相当于关系型数据库中的表概念.而hbase表定义适用于字段变更的场景
5.Mem store
写缓存,由于 HFile 中的数据要求是有序的,所以数据是先存储在 MemStore 中,排好序后,等到达刷写时机才会刷写到 HFile,每次刷写都会形成一个新的 HFile
6.StoreFile
保存实际数据的物理文件,StoreFile 以 HFile 的形式存储在 HDFS 上。每个 Store 会有一个或多个 StoreFile(HFile),数据在每个 StoreFile 中都是有序的。
7.Hfile
StoreFile 的文件类型,例如.log,.txt类型的文件
8.hadoop Datanode
存储region server所管理的真实的数据,如果是虚拟机集群,则真实存在集群磁盘里面.所有的hbase数据都存在hdfs中.而hadoop的NameNode维护了物理数据块的metadata
9.zookeeper集群
作为分布式协调框架,zookeeper分担了hbase给他的任务来一起维护hbase状态
当HMaster宕机后,负责HMaster的选举工作
zookeeper保存了meta table(存储的row key的位置信息,region位于哪个regionserver上)的信息
471

被折叠的 条评论
为什么被折叠?



