Hadoop错误-所有数据节点都将中止
我使用的是Hadoop 2.3.0版本。有时,当我执行Map reduce作业时,会显示以下错误Hadoop错误-所有数据节点都将中止,hadoop,mapreduce,hdfs,yarn,hadoop2,Hadoop,Mapreduce,Hdfs,Yarn,Hadoop2,我使用的是Hadoop 2.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.apach
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)
当我尝试检查这些失败任务的日志文件时,此任务的日志文件夹将为空
我无法理解这个错误背后的原因。有人能告诉我如何解决这个问题吗。谢谢您的帮助。您似乎达到了用户的打开文件句柄限制。这 这是一个非常常见的问题,在大多数情况下可以通过 增加ulimit值(默认情况下主要是1024,很容易 像你这样的工作会让你精疲力尽) 您可以按照以下简短指南进行增加: [文件描述符限制”部分]
通过刺耳的J回答-设置
spark.shuffle.service.enabled
到true
为我解决了这个问题
spark.dynamicAllocation.enabled
允许spark将执行者动态分配给不同的任务。spark.shuffle.service.enabled
当设置为false
时,将禁用外部shuffle服务,数据仅存储在执行器上。当重新分配执行者时,数据丢失,异常
java.io.IOException:所有数据节点都不正确
为数据请求而引发。链接无效或不可访问链接无效找到解决方案了吗?