简称 Dn 全称 datanode
保存Block
启动DN线程的时候会向NN汇报block信息
通过向NN发送心跳保持与其联系(3秒一次),如果NN 10分钟没有收到DN的心跳,则认为其已经lost,并copy其上的block到其它DN
简称Nn 全称 namenode
NameNode主要功能提供名称查询服务,它是一个jetty服务器
NameNode保存metadate信息包括
文件owership和permissions
文件包含哪些块
Block保存在哪个DataNode(由DataNode启动时上报)
NameNode的metadate信息在启动后会加载到内存
metadata存储到磁盘文件名为”fsimage”
Block的位置信息不会保存到fsimage
简称Snn 全称 secondaryname node
不是NN的热备份
可以作为NN的备份
帮助NN合并edits log 减少NN启动时间
Block的副本放置策略
第一个副本:放置在上传文件的DN;如果是集群外提交,则随机挑选一台磁盘不太满,CPU不太忙的节点
第二个副本:放置在于第一个副本不同的机架的节点上
第三个副本:与第二个副本相同集群的节点
更多副本:随机节点
Block
设置一个Block 64MB,如果上传文件小于该值,仍然会占用一个Block的命名空间(NameNode metadata),但是物理存储上不会占用64MB的空间
Block大小和副本数由Client端上传文件到HDFS时设置,其中副本数可以变更,Block是不可以再上传后变更的