HBase存储概念的一些理解

HBase架构与原理
本文介绍了HBase作为分布式NoSQL数据库的架构特点及其工作原理。HBase基于Hadoop平台采用Master-slave架构,通过HMaster处理Table管理任务,并实现Region的负载均衡与分裂。HRegionServer负责数据存储,每个Region包含连续的数据片段。文章还详细解释了数据写入流程及一致性保障机制。

首先,HBase是分布式NoSQL数据库。

构建在Hadoop平台上的一个应用。

 

与Hadoop类似,属于Master-slave架构。

其中,存在一个运行的HMaster,和若干个HMaster备用,通过Zookeeper协调进行HA。

HMaster主要是处理Table的增删改查,HRegion的负载均衡,Region Split 和 新Region的重新分配。

存在一个或多个HRegion 的slave架构,用于实际数据的存储。

           [HMaster]

            /          \

[HRegion]....[HRegion]

 

HRegion Server是一个存储数据的服务。

对于一张表而言,一张表被拆开成多块,每一块就是一个Region。

每个Region会保存一个表里面某段连续的数据。

 

通过RDBMS的基本存储架构来思考。

      数据库的Block  --> 就是Region

      操作系统的Block-->就是HDFS BLOCK

 

HRegion Server中的Region由多个HStore组成。

每个HStore对应Table中的一个Column Family 。

所以经常一起使用的数据就要放到Column Family里面去。

 

数据写入到Region的时候,先会写入到内存中的MemStore对象里。

然后当MemStore到大一定大小的时候,就会Flush到HStore里面。

 

为了保证一致性,HBase有一个HLog对象,会在写入MemStore之前,先记录操作。

HLog其物理上是一个Hadoop Sequence File。

 

当HStore 文件不断变大到一定阀值的时候,就会进行Split Region的请求,由HMaster进行重新分配。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值