《HBase权威指南》读书笔记 第八章:架构,HFile格式

时间:2021-11-16 17:53:28

HFile文件格式

《HBase权威指南》读书笔记 第八章:架构,HFile格式

文件结构如上图。主要有以下部分:

  • Data-block:数据块,每个块中存放多个KeyValue对象。默认每个块64KB。但不是严格意义上的64KB,大致维持在64KB左右。
  • Meta-block:储存元数据信息
  • File Info:储存HFile文件信息
  • Trailer:包含指向其他块的指针。Trailer写完了才能算一个完整的HFile文件。

通过以下工具可以手动解析HFile文件:

bin/hbase org.apache.hadoop.hbase.io.hfile.HFile -f 文件全路径 -v -m -p

KeyValue格式如下:

《HBase权威指南》读书笔记 第八章:架构,HFile格式

可以看到Key中包含列族名、列名,这种重复数据会浪费内存。储存的时候如果用了压缩,这些重复数据可以消除掉。

参考资料:http://blog.csdn.net/javaman_chen/article/details/47833715