- NameNode 概述
a、 NameNode 是 HDFS 的核心。
b、 NameNode 也称为 Master。
c、 NameNode 仅存储 HDFS 的元数据:文件系统中所有文件的目录树,并跟踪整
个集群中的文件。
d、 NameNode 不存储实际数据或数据集。数据本身实际存储在 DataNodes 中。
e、 NameNode 知道 HDFS 中任何给定文件的块列表及其位置。使用此信息
NameNode 知道如何从块中构建文件。
f、 NameNode 并不持久化存储每个文件中各个块所在的 DataNode 的位置信息,
这些信息会在系统启动时从数据节点重建。
namenode存储在机器的内存当中,在namenode所在的机器因为各种原因关闭 重启后,所有的datanode会向namenode报告自己的存储信息。namenode接收重新存储在内存当中
g、 NameNode 对于 HDFS 至关重要,当 NameNode 关闭时,HDFS / Hadoop 集群无
法访问。
h、 NameNode 是 Hadoop 集群中的单点故障。
i、 NameNode 所在机器通常会配置有大量内存(RAM)
DataNode的概述
DataNode负责将实际数据存储在HDFS中。
DataNode也称为Slave。
NameNode和DataNode会保持不断通信。
DataNode启动时,它将自己发布到NameNode并汇报自己负责持有的块列表。
当某个DataNode关闭时,它不会影响数据或群集的可用性。NameNode将安排由其他DataNode管理的块进行副本复制。
DataNode所在机器通常配置有大量的硬盘空间。因为实际数据存储在DataNode中。
DataNode会定期(dfs.heartbeat.interval配置项配置,默认是3秒)向NameNode发送心跳,如果NameNode长时间没有接受到DataNode发送的心跳, NameNode就会认为该DataNode失效。
block汇报时间间隔取参数dfs.blockreport.intervalMsec,参数未配置的话默认为6小时.
参考自:https://blog.csdn.net/weixin_39228808/article/details/84898322