HDFS使用appendToFile报错WARN hdfs.DFSClient: DataStreamer Exception java.io.IOException: Failed
发布日期:2021-06-30 15:41:17 浏览次数:3 分类:技术文章

本文共 666 字,大约阅读时间需要 2 分钟。

 

报错提示说原文件已经被视为bad datanode了,具体不知道怎么被视作的。参考hadoop错误解决方案:

先看看文件是否有写权限。

 

往空文件中追加就相当于直接写文件,所以能追加进去,而往有内容的文件中追加不进去是因为datanode节点数不够三个,其他虚拟机没有开无法进行文件备份。

解决方法1:

至少打开三个节点。

解决方法2:

修改hdfs-site.xml文件,添加或者修改如下两项:
< property>
< name>
dfs.client.block.write.replace-datanode-on-failure.enable
</ name>
< value>true</ value>
</ property>
< property>
< name>
dfs.client.block.write.replace-datanode-on-failure.policy
</ name>
< value>never</ value>
</ property>
添加或修改完成后,重试即可。

解决方法3:

在客户端的代码里面加入:

     conf = new Configuration();

    
 
    conf.set("dfs.client.block.write.replace-datanode-on-failure.policy",
                "NEVER"
        ); 

conf.set("dfs.client.block.write.replace-datanode-on-failure.enable",

                "true"
        ); 

转载地址:https://jxnuxwt.blog.csdn.net/article/details/108864159 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:hdfs dfs -ls命令显示No such file or directory
下一篇:数据预处理归一化详细解释

发表评论

最新留言

很好
[***.229.124.182]2024年04月16日 18时35分17秒