Java Hadoop:你能悄悄地放弃失败的映射任务吗?

Java Hadoop:你能悄悄地放弃失败的映射任务吗?,java,hadoop,mapreduce,Java,Hadoop,Mapreduce,我正在使用hadoop MapReduce处理大量数据。问题是,有时,损坏的文件会导致映射任务抛出java堆空间错误或类似的错误 如果可能的话,放弃地图任务正在做的任何事情,杀死它,然后继续工作,更不用说丢失的数据了。我不希望整个M/R工作因此而失败 这在hadoop中是否可能以及如何实现?您可以修改mapreduce.max.map.failures.percent参数。默认值为0。增加此参数将允许一定百分比的映射任务失败,而不会使作业失败 您可以在mapred-site.xml(将应用于所有

我正在使用hadoop MapReduce处理大量数据。问题是,有时,损坏的文件会导致映射任务抛出java堆空间错误或类似的错误

如果可能的话,放弃地图任务正在做的任何事情,杀死它,然后继续工作,更不用说丢失的数据了。我不希望整个M/R工作因此而失败


这在hadoop中是否可能以及如何实现?

您可以修改
mapreduce.max.map.failures.percent
参数。默认值为0。增加此参数将允许一定百分比的映射任务失败,而不会使作业失败


您可以在mapred-site.xml(将应用于所有作业)中设置此参数,也可以逐个作业(可能更安全)。

请注意,
mapred.max.map.failures.percent
现在已被弃用,您应该使用
mapreduce.max.map.failures.percent
代替Hadoop 3.1.2的标题,键是mapreduce.map.failures.maxpercent,据报道,阿列克西并没有像上面所说的那样