Что такое «активные задания» в разделе «Работа Spark UI Spark UI» - PullRequest
0 голосов
/ 01 сентября 2018

Я пытаюсь понять компоненты сервера Spark History. Я знаю, что на сервере истории отображаются завершенные приложения Spark.

Тем не менее, я вижу, что «Активные задания» установлены в 1 для завершенного приложения Spark. Я пытаюсь понять, что означает «Активные вакансии» в разделе «Работа». Кроме того, приложение было завершено в течение 30 минут, но когда я открыл History Server через 8 часов, «Duration» показывает 8.0h. Пожалуйста, смотрите скриншот.

enter image description here

Не могли бы вы помочь мне разобраться с пунктами "Активные задания", "Продолжительность" и "Этапы: успешно / всего" на изображении выше?

Ответы [ 2 ]

0 голосов
/ 04 сентября 2018

Наконец, после некоторых исследований, нашел ответ на мой вопрос.

Приложение Spark состоит из драйвера и одного или нескольких исполнителей. Программа драйвера создает экземпляр SparkContext, который координирует исполнителей для запуска приложения Spark. Эта информация отображается в веб-интерфейсе Spark History Server « Активные задания ».

Исполнители запускают задачи, назначенные драйвером.

Когда приложение Spark работает на YARN, оно имеет собственную реализацию клиента Yarn и мастера приложения Yarn. В приложении YARN есть клиент Yarn, мастер приложения Yarn и список контейнеров, запущенных на менеджерах узлов.

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

Это запущенное задание можно отслеживать на странице приложений YARN в консоли администратора Cloudera Manager, когда оно работает .

Если приложение выполнено успешно, сервер истории отобразит список разделов ' Завершенные задания ', а также раздел * Активные задания ', которые будут удалены .

Если приложение завершается с ошибкой на уровне контейнеров, и YARN передает эту информацию драйверу, сервер истории отобразит список разделов ' Failed Jobs ', а также раздел Active Jobs '. удален .

Тем не менее, если приложение завершается сбоем на уровне контейнеров и YARN не может сообщить об этом драйверу, то заданное экземпляром Driver задание переходит в состояние забытия. Он думает, что задание все еще выполняется, и продолжает ждать ответа от мастера приложений YARN о состоянии задания. Следовательно, в History Server он по-прежнему отображается в ' Активных заданиях ' как , работающий .

Итак, мой вывод от этого: Чтобы проверить состояние запущенного задания, перейдите на страницу приложений YARN в консоли администратора Cloudera Manager или используйте команду YARN CLI. После завершения / сбоя задания откройте Spark History Server, чтобы получить более подробную информацию об использовании ресурсов, DAG и информации о сроках выполнения.

0 голосов
/ 01 сентября 2018

Вызов действия (в вашем случае - это действие) в приложении Spark запускает задание для его выполнения. Spark проверяет набор данных, от которого зависит это действие, и формулирует план выполнения. План выполнения собирает преобразования набора данных в этапы.

A stage - это физическая единица плана выполнения. В шортах Stage - это набор параллельных задач , т.е. одно задание на раздел . По сути, каждая работа, которая разделена на меньшие наборы задач, является этапом. Хотя это полностью зависит друг от друга. Тем не менее, это несколько так же, как карта и уменьшить этапы в MapReduce.

каждый тип Стадий Искры в деталях:

а. ShuffleMapStage в Spark ShuffleMapStage рассматривается как промежуточный этап Spark в физическом выполнении DAG. В основном, это производит данные для другой стадии (стадий). Рассмотрим ShuffleMapStage в Spark как входные данные для других следующих этапов Spark в DAG этапов. Тем не менее, возможно, что в ShuffleMapStage существует несколько операций с конвейером. как карта и фильтр, перед работой в случайном порядке. Кроме того, мы можем совместно использовать один ShuffleMapStage для разных заданий.

б. ResultStage in Spark При запуске функции на этапе RDD в режиме искры, которая выполняет действие Spark в пользовательской программе, это ResultStage. Он считается завершающим этапом в программе Spark. ResultStage подразумевает последний этап задания, который применяет функцию к одному или нескольким разделам целевого RDD в Spark и помогает вычислить результат действия.

Возвращаясь к вопросу об активных работах по истории, оставьте некоторые заметки в официальных документах. как сервер истории . Также существует проблема jira [SPARK-7889] относительно той же ссылки. для более подробной информации перейдите по ссылке источник-1

...