gpt4 book ai didi

hadoop - 如何配置 Hadoop,使一个特定节点将所有数据存储在 HDFS 上?

转载 作者:可可西里 更新时间:2023-11-01 16:19:00 31 4
gpt4 key购买 nike

我们有一台非常稳定的机器,我们想将它用作 Namenode。同时,我们还有很多其他高度不稳定的机器,我们希望它们成为数据节点。现在我们要配置 Hadoop,使 Namenode(在本例中也作为 Datanode)在 HDFS 上有一份完整数据的副本,这样集群就可以始终从中恢复数据。谁能帮我解决这个问题?

最佳答案

这不能以直接的方式完成。方法是有的,但很麻烦,问题百出,不值得。

在您的实际数据节点和名称节点上运行数据节点守护进程。在你的拓扑文件中,将所有真实的数据节点作为一个逻辑机架(R1)的一部分,并将 NN+DN 机器作为一个不同的机架(R2)。确保您的 NN+DN 的空间大于 2*(所有 DN 的总磁盘容量)。确保 HDFS 的复制因子配置为 3。

创建 block 时,HDFS 将在一个机架上放置 2 个副本,在另一个机架上放置第三个副本。所以你所有的数据肯定会在 NN+DN 单一主机上。这将对您的集群性能产生什么影响,我不想谈及。

甚至不要考虑在生产环境中这样做。事实上,你的要求是完全有缺陷的。跨数据节点拥有多个副本是 Hadoop 解决数据节点可靠性问题的方式。假设数据节点将继续失败,但数据不应该丢失——这是 Hadoop 设计中的一部分。

关于hadoop - 如何配置 Hadoop,使一个特定节点将所有数据存储在 HDFS 上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12762118/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com