HadoopNameNode

HadoopNameNodeNameNode 是一个通常在 HDFS 实例中的单独机器上运行的软件

它负责管理文件系统名称空间和控制外部客户机的访问

NameNode 决定是否将文件映射到 DataNode 上的复制块上

对于最常见的 3 个复制块,第一个复制块存储在同一机架的不同节点上,最后一个复制块存储在不同机架的某个节点上 

实际的 I/O事务并没有经过 NameNode,只有表示 DataNode 和块的文件映射的元数据经过 NameNode

当外部客户机发送请求要求创建文件时,NameNode 会以块标识和该块的第一个副本的 DataNode IP 地址作为响应

这个 NameNode 还会通知其他将要接收该块的副本的 DataNode 

NameNode 在一个称为 FsImage 的文件中存储所有关于文件系统名称空间的信息

这个文件和一个包含所有事务的记录文件(这里是 EditLog)将存储在 NameNode 的本地文件系统上

FsImage 和 EditLog 文件也需要复制副本,以防文件损坏或 NameNode 系统丢失 

NameNode本身不可避免地具有SPOF(Single Point Of Failure)单点失效的风险,主备模式并不能解决这个问题,通过Hadoop Non-stop namenode才能实现100% uptime可用时间 

以上内容由大学时代综合整理自互联网,实际情况请以官方资料为准。

相关