gpt4 book ai didi

Google Compute Engine 集群上的 hadoop -appendToFile

转载 作者:可可西里 更新时间:2023-11-01 15:14:05 26 4
gpt4 key购买 nike

我在 GCE hadoop 集群上执行 hadoop fs shell 命令 -appendToFile 时遇到问题。我在 GCE 集群上使用其他 hadoop shell 命令(例如, -cat、-put、-mv)取得了成功。此外,我还可以在不同的 hadoop 集群上使用 -appendToFile。但是,我无法在 GCE hadoop 集群上使用 -appendToFile。我试过的语法:

hdfs dfs -appendToFile two.log /tmp/test/one.log

产量:

“appendToFile:无法关闭文件/tmp/test/one.log。租约恢复正在进行中。稍后再试。”其中one.log是hdfs上已有的文件,two.log是本地文件系统上已有的文件。

此外:

hadoop fs -appendToFile two.log /tmp/test/one.log

产生许多以以下内容开头的错误:

java.io.IOException:由于没有更多好的数据节点可供尝试,无法替换现有管道上的错误数据节点。

我不熟悉这些错误,我相信我的语法使用是正确的。我已经确认其他 hadoop 命令正在使用类似的语法。同样的命令也适用于其他集群。任何意见,将不胜感激。谢谢!

最佳答案

如果您碰巧运行默认的 bdutil 或单击部署创建的具有 2 个数据节点的 Hadoop 集群,您可能会遇到一个已知问题,该问题显然会显着影响 append 命令,如果 dfs.replication 仍然是 3 的默认值:HDFS-4600HDFS file append failing in multinode cluster

在最近的 bdutil release 1.1.0 ,默认的 dfs.replication 现在是 2,因为默认设置已经在 Persistent Disk 上; 2 的复制是一种权衡,它允许 Hadoop 在单节点故障时仍然具有更高的可用性,同时底层 Persistent Disk 提供持久性。因此,如果您选择最新的更改和/或手动将 dfs.replication 设置为较低的数字,或者增加数据节点的数量,append 应该开始工作。

关于Google Compute Engine 集群上的 hadoop -appendToFile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28238186/

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