我正在阅读Hadoop - 汤姆怀特的权威指南,第4版,他写道,
“然而,块池存储未分区,因此datanode注册 与集群中的每个namenode一起存储来自多个块的块 池“。
有人可以澄清吗?具体来说,如果......
NameNodeA: blockpool for DataNode1 and DataNode2
NameNodeB: blockpool for DataNode3 and DataNode4
... NameNodeB存储NodeNameA的blockpool吗?这似乎是浪费,因为作者以前写道“名字节点不能彼此通信。”
更新:在此处查看评论并重新阅读后,它似乎是这样工作的:您可以将命名空间划分为联合名称节点,管理分区(例如/ user)但仍然< strong>包含整个命名空间(例如,/ user / foo / bar)。
答案 0 :(得分:0)
This link explains the architecture in more detail. It was created by one of the Hadoop committers at Yahoo. I mistakenly thought there was 1 namespace, but in fact, you can have multiple namespaces.