Java 在Hadoop中,如果mapper或reducer清理方法失败,会发生什么
参照此方法:Java 在Hadoop中,如果mapper或reducer清理方法失败,会发生什么,java,hadoop,Java,Hadoop,参照此方法: 如果mapper/reducer清理方法失败,mapper/reducer任务是否会失败 如果mapper/reducer清理方法失败,Hadoop会重试整个任务吗 谢谢应用程序可以覆盖清理(上下文)方法来执行任何所需的清理 它应称为每映射器任务或还原器任务。应在每个任务结束时调用清理方法。如果有N个映射器在执行,那么相应的清理将被调用N次,如果您在代码中运行M个reducer,那么它将被调用M次 cleanup可用于释放分配的内存或删除临时文件/目录,或根据需要进行其他处理(
- 如果mapper/reducer清理方法失败,mapper/reducer任务是否会失败
- 如果mapper/reducer清理方法失败,Hadoop会重试整个任务吗
谢谢应用程序可以覆盖清理(上下文)方法来执行任何所需的清理 它应称为每映射器任务或还原器任务。应在每个任务结束时调用清理方法。如果有N个映射器在执行,那么相应的清理将被调用N次,如果您在代码中运行M个reducer,那么它将被调用M次 cleanup可用于释放分配的内存或删除临时文件/目录,或根据需要进行其他处理(例如,context.write(key,value)可用于从mapper的cleanup方法中发出一个值,并将其发送到Reducer) 如果mapper/reducer清理方法失败,mapper/reducer 任务失败 如果mapper/reducer清理方法失败,Hadoop会重试该方法吗 整个任务 如果任务无法清理(在异常块中),将使用相同的尝试id启动单独的任务以执行清理
有关更多信息,请参阅此链接:谢谢您的回答。当一个任务的清理失败并且一个单独的任务被启动程序替换时,它是否也会重新处理映射器拆分,还是只会重新运行清理?如果清理需要来自失败的映射程序任务的变量怎么办?@cozos整个映射程序将重新运行。