我无法理解辅助名称节点和备用名称节点与备份名称节点之间的区别。我正在寻找对这些术语的深入理解。请帮我解决这个问题。
答案 0 :(得分:7)
辅助namenode只是Namenode的帮助器。
它定期从namenode获取编辑日志,并应用于fsimage。
一旦有新的fsimage,它就会复制回namenode。
Namenode将使用此fsimage进行下次重启,这将缩短启动时间。
Secondary Namenode的主要目的是在HDFS中设置一个检查点。它只是namenode的辅助节点。这就是为什么它也被称为检查点节点。
但是,它无法取代namenode上的namenode失败。
因此,Namenode仍然是单点故障。
要克服这个问题; STANDBY-NAMENODE
出现了。{/ p>
它做了三件事:
接收文件系统元数据的在线更新,将它们应用到其内存状态,并将它们保存在磁盘上,就像名称节点一样。
Thus at any time the Backup node contains an up-to-date image of the namespace both in memory and on local disk(s).
答案 1 :(得分:2)
备用节点:如果发生意外事件(例如机器崩溃),则在操作员重新启动NameNode之前,群集将不可用.NameNode计算机上的计划维护事件(例如软件或硬件升级)可能导致整个群集停机。因此,备用节点开始运行,它不过是名称节点的备份。
Secondary NameNode:它是hadoop生态系统中命名最差的部分之一,通常初学者会混淆地将其视为备份。hadoop中的Secondary NameNode是HDFS集群中的一个专用节点,其主要功能是获取节点的检查点。名称节点上存在文件系统元数据。它不是备份名称节点。它只是检查点namenode的文件系统名称空间。次要NameNode是主要NameNode的助手,但不能代替主要Namenode。
答案 2 :(得分:1)
然而,上面解释的答案是令人满意的,但我想补充一点。 关于 Standby-Namenode 活动和备用Namenode都使用 共享目录 和备用Namenode通过该目录同步进行同步,因此如果活动Namenode关闭,则必须没有延迟激活它。 但主要因素是块报告,块报告不是写在编辑日志中,而是存储在本地磁盘空间中。因此,与共享目录同步是不够的。 为了避免这种冲突,数据节点具有两个名称节点的地址, 并且他们将阻止报告发送给他们两个,但他们只遵循来自活动Namenode的阻止命令。
希望这是有帮助的