hadoop错误-所有数据节点正在中止

pxyaymoc  于 2021-06-04  发布在  Hadoop
关注(0)|答案(2)|浏览(317)

我使用的是hadoop2.3.0版本。有时当我执行map reduce作业时,会显示以下错误。

14/08/10 12:14:59 INFO mapreduce.Job: Task Id : attempt_1407694955806_0002_m_000780_0, Status : FAILED
Error: java.io.IOException: All datanodes 192.168.30.2:50010 are bad. Aborting...
    at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.setupPipelineForAppendOrRecovery(DFSOutputStream.java:1023)
    at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.processDatanodeError(DFSOutputStream.java:838)
    at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:483)

当我尝试检查这些失败任务的日志文件时,此任务的日志文件夹将为空。
我无法理解这个错误背后的原因。有人能告诉我怎么解决这个问题吗。谢谢你的帮助。

gpfsuwkq

gpfsuwkq1#

设置 spark.shuffle.service.enabledtrue 为我解决了这个问题。 spark.dynamicAllocation.enabled 允许spark将执行器动态分配给不同的任务。这个 spark.shuffle.service.enabled 当设置为 false 禁用外部洗牌服务,数据仅存储在执行器上。当重新分配执行者时,数据丢失,异常
java.io.ioexception:所有数据节点都不正确。
为数据请求引发。

swvgeqrz

swvgeqrz2#

您似乎达到了用户的打开文件句柄限制。这是一个非常常见的问题,在大多数情况下可以通过增加ulimit值来解决(默认情况下,ulimit值大多为1024,很容易被像您这样的多输出作业耗尽)。
您可以按照以下简短指南来增加:http://blog.cloudera.com/blog/2009/03/configuration-parameters-what-can-you-just-ignore/ [部分“文件描述符限制”]
回答严厉的j-https://groups.google.com/a/cloudera.org/forum/#!主题/cdh用户/KJRUKVXMFWW

相关问题