【发布时间】:2014-06-11 00:17:05
【问题描述】:
假设我们有一个 MapReduce 作业,并且我们希望终止/终止该作业以融入到我们的 Java MapReduce 中——比如在特定的时间范围之后,我该怎么做?
例如,在指定时间后终止作业
【问题讨论】:
标签: java hadoop mapreduce kill-process
假设我们有一个 MapReduce 作业,并且我们希望终止/终止该作业以融入到我们的 Java MapReduce 中——比如在特定的时间范围之后,我该怎么做?
例如,在指定时间后终止作业
【问题讨论】:
标签: java hadoop mapreduce kill-process
您可以使用作业 ID 获取 Job,然后使用 Job.killJob()
【讨论】:
java.lang.Exception: java.lang.IllegalStateException: Job in state DEFINE instead of RUNNING 当我使用 job.killJob() 时,我的日志上打印了此错误消息。你知道为什么会这样吗?
RUNNING 状态才能被杀死。在 DEFINE 状态期间,作业开始运行(即识别要处理的块以及处理作业所需的元数据处理所花费的时间)
您可以使用Thread.sleep() 设置一个简单的计时器,然后使用Job.killJob() 终止该作业。
【讨论】: