2011-12-27 2 views
0

У класса RunningJob есть несколько методов, которые бросают IOException (предположительно, когда соединение с Hadoop не удается?) То, что я сейчас смотрю, это isComplete().Hadoop: обработка исключений из RunningJob.isComplete()

Каков правильный способ обработки такой ошибки? Должен ли я предположить, что работа мертва? Должен ли я ждать и повторять попытку? Просто позволить моему приложению умереть на этом этапе - это не вариант, так как он управляет несколькими заданиями на Hadoop и в других местах, и он должен быть настолько прочным, насколько это возможно.

ответ

1

Мой ответ слишком длинный для комментария, поэтому, извините, я не отвечаю непосредственно на ваш вопрос. Я в основном говорю из опыта моего ответа.

Если исключение попадает на этот уровень, вы можете в значительной степени предположить, что работа умрет. Я обнаружил, что просто попытка повторить попытку или попытку автоматического исправления проблемы в ответ на вызванное исключение является бесполезной. Слишком много, что может пойти не так.

Обычно, когда работа, которая обычно выполняется нормально, терпит неудачу, в системе возникает что-то плохое, которое необходимо устранить. Возможно, NameNode мертв, возможно, коммутатор немой, кто знает. К сожалению, эти проблемы требуют внимания человека.

На мой взгляд, усилия по развитию лучше потратить на создание какой-то инфраструктуры оповещения (обычно электронная почта), которая позволяет вам знать, как только ваша работа потерпит неудачу ... вместо учета тонны угловых дел.

Как только вы обнаружите некоторые общие проблемы с кластером и заданиями, вы можете начать обработку исключений в своих приложениях. Я не думаю, что стоит потратить ваше время, чтобы объяснить все впереди.

+0

Это довольно старая тема, но для записи исключение также может быть вызвано вызовом isComplete() после отправки задания и до его фактического начала выполнения. В таком случае исключение не означает, что задание не удастся. Вам нужно взглянуть на исходный код isComplete(), чтобы увидеть, как они справляются с этим случаем. – PNS

Смежные вопросы