2015-07-21 1 views
0

У меня есть программа драйвера, которая запускает задание MapReduce с org.apache.hadoop.mapreduce.Job.waitForCompletion (boolean) на Hadoop 2.4.0. Проблема в том, что если программа драйвера сработает в середине задания, работа будет продолжена. Есть ли способ убить запущенную работу MapReduce, если программа драйвера сработает? Независимо от того, сбой программы драйвера не является чем-то под моим контролем. Я предполагаю, что это потребует, чтобы клиент и работа периодически опросили друг друга. Есть ли в API для этого параметр или метод?Убить MapReduce, если сбой программы драйвера

+0

Попробуйте выполнить jobClient.run (conf). Это вызовет исключение, если что-то пойдет не так. –

ответ

1

Вы можете найти свое приложениеId (jobId), указанное в веб-интерфейсе пряжи, или вы можете ввести yarn application -list в узле менеджера ресурсов пряжи кластера. Вы можете убить это приложение, используя команду kill как: yarn application -kill <applicationId>. Думаю, это решит вашу проблему.