数据块在数据节点上是按照如下方式存储的。
首先是一个存储的根目录/hadoop/data/dfs/dn,如下图所示:
接着进入current目录,如下图所示:
再进入后续的BP-433072574-192.168.1.224-1440568979639下current目录,如下图所示:
在它下面,有一个版本号文件VERSION和分布式文件系统使用情况文件dfsUsed,然后就是两个文件夹,其中rbw存储的是处于写过程中的数据块,而finalized存储的则是写已完成并提交的数据块。我们看下finalized下的内容,如下图所示:
finalized下有很多子目录,进入subdir4,如下图所示:
又有很多子目录,再进入subdir42,如下图所示:
这就是数据块数据文件及其元文件的真正存储地了,其中blk开头的数据块数据文件,数字表示数据块ID,而.mta结尾的则是数据块元数据问文件。数据块副本的存储路径有一个基础路径,并由众多的子路径保持组成。这几点与我们在《HDFS源码分析之数据块Block、副本Replica》一文中讲到的一样。
时间: 2024-10-25 15:15:06