Выяснение Yarn application_id для операторов вставки через JDBC - PullRequest
0 голосов
/ 02 января 2019

Я выполняю запрос вставки через клиент Hive JDBC.Метод, который я выполняю: boolean execute(String sql) throws SQLException [this] .Это блокирующий вызов.Я понимаю, что после некоторых прыжков в кластере Hadoop будет запущено задание Map-Reduce.

Проблема: Теперь, согласно моему требованию, мне нужно убить задание MR, если оно не выполнено в течениеоговоренный срок.В настоящее время единственный известный мне способ убить работу MR - это Yarn, yarn application -kill application_1428487296152_25597 OR hadoop job -kill $jobId.Но в приведенном выше случае, поскольку я выполняю через JDBC, я не получаю ни идентификатор приложения Yarn, ни идентификатор задания Hadoop.Как мне это сделать?

PS: у меня есть серия MR-приложений, работающих в одном рабочем процессе.Спецификация тайм-аута.находится на уровне рабочего процесса.Следовательно, может потребоваться уничтожение потоков по требованию.

PPS: я использую версию 1.2.1 клиента Hive-JDBC.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...