DataNode 保存文件
DataNode 将文件存储到 /program/hadoop-3.0.3/data/tmp/dfs/data/current/BP-1322061706-192.168.58.101-1636593385602/current/finalized/subdir0/subdir0/
目录下
有2类文件:
blk_xxx
:block块文件,即:数据文件blk_xxx_xxx.meta
:块信息文件,存储blk_xxx
文件的长度、校验和、时间戳等信息
工作机制
DataNode启动后向NameNode注册
返回注册结果
注册成功后,向 NameNode 发送所有的块信息(长度、校验和、时间戳)。之后每间隔 6小时 发送一次
提示:只有 DN 启动、发送信息后,NN才知道哪些DN有 块信息(NN不会存储这些块信息)每3秒发一次心跳,返回结果中,有 NameNode 发给该DataNode的命令,如:复制块数据到另一台机器,或删除某个数据块。
提示: 集群运行中,可以加入和退出DN
NN 踢出 DN
NameNode 如果超过 10分钟+30秒
没有收到某个DataNode的心跳,则认为不可用