Hbase底层原理

本文详细介绍了HBase的架构,包括Memstore与storefile、HLog(WAL日志)、读写请求过程以及Region管理和Master工作机制。重点讨论了flush、compact和split三个重要机制,确保数据的安全性和高效性。在数据写入时,先写入Memstore,达到阈值后写入storefile并可能触发Region分裂;读请求则通过Meta表定位数据。此外,HLog用于记录所有变更,提供灾难恢复保障。
摘要由CSDN通过智能技术生成

HBASE架构

Memstore与storefile

一个region由多个store组成,每个store包含一个列族的所有数据,store包括位于内存的memstore和位于硬盘的storefile

写操作先写入memstore,当memstore中的数据量达到某个阈值,Hregionserver启动flashcache进程写入storefile,每次写入形成单独一个storefile,当storefile大小超过一定阈值后,会把当前的region分割成两个,并由Hmaster分配给相应的region服务器,实现负载均衡。客户端检索数据时,先在memstore找,找不到再找storefile。

HLog(WAL log)

WAL为Write ahead log,用来做灾难恢复时用,Hlog记录数据的所有变更,一旦数据修改,就可以从log中进行恢复。

每个Region Server维护一个Hlog,而不是每个Region一个。这样不同region(来自不同table)的日志会混在一起,这样做的目的是不断追加单个文件相对于同时写多个文件而言,可以减少磁盘寻址次数,因此可以提高对table的写性能。带来的麻烦是,如果一台region server下线,为了恢复其上的region,需要将region server上的log进行拆分,然后分发到其它region server上进行恢复。

Hbase读请求过程

1>HRegionServer保存着meta表以及表数据,要访问表数据,首先Client先去访问zookeeper,从zookeeper里面获取meta表所在的位置信息,即找到这个meta表在哪个

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值