DataNode 的目录结构
在/export/servers/hadoop2.6.0cdh5.14.0/hadoopDatas/datanodeDatas/current这个目录下查看版本号
[root@node01 current]# cat VERSION
#Thu Mar 14 07:58:46 CST 2019
storageID=DS-47bcc6d5-c9b7-4c88-9cc8-6154b8a2bf39
clusterID=CID-dac2e9fa-65d2-4963-a7b5-bb4d0280d3f4
cTime=0
datanodeUuid=c44514a0-9ed6-4642-b3a8-5af79f03d7a4
storageType=DATA_NODE
layoutVersion=-56
具体解释
(1)storageID:存储id号
(2)clusterID集群id,全局唯一
(3)cTime属性标记了datanode存储系统的创建时间,对于刚刚格式化的存储系统,这个属性为0;但是在文件系统升级之后,该值会更新到新的时间戳。
(4)datanodeUuid:datanode的唯一识别码
(5)storageType:存储类型
(6)layoutVersion是一个负整数。通常只有HDFS增加新特性时才会更新这个版本号。
目录结构
这个例子中“test.txt”有两个数据块。
第一个块“Block0”, 块大小134217728(128M),块ID:1073741853,块池ID:BP-866966434-192.168.100.129-1560531186882,存储在节点node01,node03上。
第二个块“Block0”, 块大小49671168(47.3M) ,块ID: 1073741854,块池ID:BP-866966434-192.168.100.129-1560531186882,存储在节点node01,node03上。 进入node01或node03节点的DataNode存储数据的目录,进入到块池的ID目录/export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/datanodeDatas/current/BP-866966434-192.168.100.129-1560531186882
进入到blk的目录找到块的ID
一次写入,多次读出
HDFS 是设计成适应一次写入,多次读出的场景,且不支持文件的修改。 正因为如此,HDFS 适合用来做大数据分析的底层存储服务,并不适合用来做.网盘等应用,因为,修改不方便,延迟大,网络开销大,成本太高。