gpt4 book ai didi

hadoop - 如何中止映射器(或 reducer )内的 MR 作业

转载 作者:可可西里 更新时间:2023-11-01 14:34:14 26 4
gpt4 key购买 nike

我试图在 map 方法中抛出 IOExceptions,但 MR 作业没有停止。在抛出大量 IOException 后,作业将停止。有没有办法通过抛出异常或一些简单的调用来停止整个工作?谢谢。

最佳答案

这不是 Hadoop 的理想用例,也不是好的做法,但您可以直接从代码内部扼杀您的工作。因此,每当您达到希望工作停止的状态时,记录需要的内容并终止您的工作。

这可以使用旧的 mapred API 或使用 Job.killJob() 来完成 RunningJob.killjob()。您应该分别在 configure()setup() 中获取对 RunningJobJob 对象的引用。然后在需要时调用 kill 作业,新 API 的伪代码如下所示:

Class Map extends mapper<K1,V1,K2,V2>{
Job myJob;
@Override
setup(){
// Get the JObID
// Get the Job object
}

map(){
...
if(condition-to-stop){
myJob.killJob();
...
}
}
}

关于hadoop - 如何中止映射器(或 reducer )内的 MR 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18998470/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com