首页  

hbase读写流程     所属分类 hbase 浏览量 236
读数据流程

Client先访问zookeeper,获取 meta表 所在的region信息 meta-region-server
读取meta表数信息,meta中存储region信息
根据namespace 表名和rowkey在meta表中找到对应的region信息
找到这个region对应的regionserver
查找对应的region
先读MemStore ,如果没有,再读BlockCache
BlockCache 没读到,读StoreFile 
StoreFile读到数据,先写入BlockCache,再返回 

写流程
Client向HregionServer发送写请求
HregionServer  写HLog(write ahead log) 
HregionServer  写内存(MemStore)
反馈Client写成功


数据flush过程
MemStore数据达到阈值(默认128M,老版本64M),刷硬盘,将内存中的数据删除,同时删除HLog中的历史数据
并将数据存储到HDFS中
在HLog中做标记点

数据合并过程
数据块达到4块,Hmaster触发合并操作,Region将数据块加载到本地,进行合并
当合并的数据超过256M,进行拆分,将拆分后的Region分配给不同的HregionServer管理
当HregionServer宕机后,将HregionServer上的hlog拆分,然后分配给不同的HregionServer加载,修改.META
注意 HLog会同步到HDFS

上一篇     下一篇
Akka 与 微服务

class 和 case class 及 构造器参数

scala :=>Unit 与 :()=>Unit 区别

主数据简介

数据仓库名词解释

sparkSQL和presto比较