region-hfile关系及客户端读取数据流程图和顺序

 

 

学习hbase时,hfile和region关系看的头晕晕,下面是逻辑关系图,同时也也可以看hbase简介 搭建 编辑

中第五部分的笔记。

 



Data Node
Data Node是指HDFS集群中负责存储数据的服务器,与此相对的是Naming Node,参见:

<noscript></noscript>


region-hfile关系及客户端读取数据流程图和顺序_第1张图片
 

 



Region
Region是表按照RowKey范围划分的不同的部分,相当于DBMS中的分区。同时Region也是表在集群中分布的最小单位,可以被分配到某一个Region Server上。


region-hfile关系及客户端读取数据流程图和顺序_第2张图片
 

 

 

3
Region中又按照Column Famliy分为不同的Store,每个Store由MemStore和StoreFile组成。

 


region-hfile关系及客户端读取数据流程图和顺序_第3张图片
 

 

4
HFile
如上图所示,一个StoreFile对应着一个HFile。而HFile是存储在HDFS之上的。HFile文件格式是基于Google Bigtable中的SSTable,如下图所示


region-hfile关系及客户端读取数据流程图和顺序_第4张图片
 

 

5

整体上看
下面这张图中把DataNode,Region(HRegion)和HFile以及它们之间的关系都表示出来了


region-hfile关系及客户端读取数据流程图和顺序_第5张图片
 

 

说白了, hfile是每个列族的存储数据文件,多个存储列族的hfile在以rowkey为逻辑单位的行关系上逻辑组成了一个个的region,region被分配到多个region server机器上来存储。

最终hfile存储在hdfs文件中。

 

 

 

 

6 客户端读取数据流程图:

 


region-hfile关系及客户端读取数据流程图和顺序_第6张图片
 

 

读取顺序:  客户端--->行健---> 列族---> 列名 ----> 时间戳 ---> 列值

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 



 

你可能感兴趣的:(region-hfile关系及客户端读取数据流程图和顺序)