首先,让我们看一下官方的HDFS架构图,从上面能看到Namenode,Datanode,除此之外还有Secondarynode
主角色:Namenode
Namenode是Hadoop分布式文件系统的核心,架构中的主角色。同时NameNode也要维护和管理文件系统元数据 ,包括名称空间目录树结构、文件和块的位置信息、访问权限等信息。
因为如此,NameNode成为了访问HDFS的唯一入口 。NameNode内部通过内存和磁盘文件两种方式管理元数据。 Namenode的职责: 1.Namenode只能存储HDFS的云数据,文件系统全部文件的目录树,并跟踪集群中的文件,但不存储实际数据。 2.Namenode知道HDFS任何给定文件的块列表和位置。通过使用这个信息,Namdenode知道如何从块中创建文件。 3.Namenode不能持久存储每个文件中各个块所在的datanode的位置信息,这些信息在系统重启时会重新创建。 4.Namenode是HDFS的单点故障,单点故障可通过联邦解决。 5.NameNode所在机器通常会配置有大量内存。 从角色:Datanode Datanode是HDFS的从角色,负责具体是数据块存储。DataNode的数量决定了HDFS集群的整体数据存储能力。通过和NameNode配合维护着数据块。 Datanode的职责: 1.DataNode负责最终数据块block的存储。是集群的从角色。 2.DataNode启动时,会将自己注册到NameNode并汇报自己负责持有的块列表。 3.当某个DataNode关闭时,不会影响数据的可用性。 NameNode将安排由其他DataNode管理的块进行副本复制。 4.DataNode所在机器通常配置有大量的硬盘空间,因为实际数据存储在DataNode中。 主副角色SecondaryNamenode:Secondary NameNode充当NameNode的辅助节点,但不能替代NameNode。 SecondaryNamenode的职责:主要是帮助主角色进行元数据文件的合并动作。 上述资料来自黑马程序员,有兴趣的可以去他的官方网站看看:www.itheima.com标签:HDFS,存储,职责,角色,DataNode,NameNode,Namenode,集群 From: https://www.cnblogs.com/feng-233/p/16770752.html