分布式文件系统HDFS
HDFS是Hadoop的数据储存部分,主要由NameNode,DataNode,SecondNameNode组成
NameNode
- NameNode主要功能:接受客户端的读写服务
- NameNode保存metadata信息包括:
- 文件ownership和permission
- 文件包含哪些块
- Block保存在哪个DataNode(由DataNode启动时上报)
- NameNode的metadata信息在启动后会加载到内存
- metadata储存到磁盘文件名为“fsimage”(它是在NameNode启动时对整个文件系统的快照)
- Block的位置信息不会保存到fsimage
- edits log(它是在NameNode启动后,对文件系统的改动序列)对metadata的操作日志
SecondNameNode(SNN)
- SecondNameNode主要功能: 它不是NN的备份(但可以做部分备份),它的主要工作是帮助NN合并edits log,减少NN启动时间
- SNN执行合并实际
- 根据配置文件设置的时间间隔fs.checkpoint.period默认3600秒
- 根据配置文件设置edits log大小fs.checkpoint.size贵的edits文件的最大值默认是64MB
DataNode(DN)
- 储存数据(Block)
- 启动DN线程的时候回向NN回报block信息
- 通过向NN发送心跳保持与其保持联系(3秒一次),如果NN 10分钟没有收到DN的心跳,则认为其已经lost,并copy其上的block到其它的DN