分享

求教:hbase scan 源码分析,客户端和服务端,都有哪些处理过程

这几天在看hbase源码,看scan的调用流程,但是一直没有理清楚
网上资料也都不明不白的,求大神解读,万分感谢

已有(2)人评论

跳转到指定楼层
goldtimes 发表于 2016-3-26 19:36:36
下面整理了下,楼主有不同的想法,可多交流:
下面是从代码角度:

scan调用,先是StoreScanner-》StoreFileScanner-》HFileScanner

在HBase中,一张表可以有多个Column Family,在一次Scan的流程中,每个Column Family的数据读取由一个StoreScanner对象负责。每个Store【Column Family】的数据由一个内存中的MemStore和磁盘上的HFile文件组成,相对应的,StoreScanner对象雇佣一个MemStoreScanner和N个StoreFileScanner来进行实际的数据读取。


其实上面是根据HBase的表数据来分的
HRegion->HStore->[HFile,HFile,...,MemStore]

##################################

从原理角度

首先会扫描region,扫完一个,在扫另一个。
单独扫region的流程,这里借用一张图


region.jpg




整个过程:

region2.jpg



回复

使用道具 举报

IT_雪夜归人 发表于 2016-3-27 10:40:18
goldtimes 发表于 2016-3-26 19:36
下面整理了下,楼主有不同的想法,可多交流:
下面是从代码角度:

非常感谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条