Отладка и диагностика приложений Apache Spark с использованием расширенного сервера журналов Apache Spark
В этой статье содержатся рекомендации по использованию расширенного сервера журнала Apache Spark для отладки и диагностики завершенных и запуска приложений Apache Spark.
Получение доступа к серверу журнала Apache Spark
Сервер журнала Apache Spark — это веб-интерфейс для завершения и запуска приложений Spark. Вы можете открыть веб-интерфейс Apache Spark из записной книжки индикатора хода выполнения или страницы сведений о приложении Apache Spark.
Открытие веб-интерфейса Spark из записной книжки индикатора хода выполнения
При активации задания Apache Spark кнопка открытия веб-интерфейса Spark находится внутри параметра "Дополнительно" в индикаторе хода выполнения. Выберите веб-интерфейс Spark и подождите несколько секунд, а затем появится страница пользовательского интерфейса Spark.
Открытие веб-интерфейса Spark на странице сведений о приложении Apache Spark
Веб-интерфейс Spark также можно открыть на странице сведений о приложении Apache Spark. Выберите центр мониторинга слева от страницы и выберите приложение Apache Spark. Откроется страница сведений приложения.
Для приложения Apache Spark, состояние которого выполняется, кнопка отображает пользовательский интерфейс Spark. Откроется пользовательский интерфейс Spark и страница пользовательского интерфейса Spark.
Для приложения Apache Spark, состояние окончания которого завершено, состояние завершения может быть остановлено, сбоем, отменено или завершено. На кнопке показан сервер журнала Spark. Выберите сервер журнала Spark и откроется страница пользовательского интерфейса Spark.
Вкладка «Диаграмма» на сервере журналов Apache Spark
Выберите идентификатор задания, которое требуется просмотреть. Выберите идентификатор задания, а затем в меню инструментов выберите пункт Диаграмма, чтобы открыть визуальное представление задания в виде диаграммы.
Обзор
В созданной диаграмме задания можно просмотреть общие сведения о задании. По умолчанию отображаются все задания. Отфильтровать результаты можно по идентификатору задания.
Отображать
По умолчанию выбрано отображение Ход выполнения. Пользователь может проверить поток данных, выбрав в раскрывающемся списке Отображение пункт Чтение или Запись.
Узел диаграммы отображает цвета, показанные в условных обозначениях тепловой карты.
Воспроизведение
Чтобы воспроизвести задание, выберите "Воспроизведение". Вы можете в любое время нажать кнопку Стоп для остановки повторного воспроизведения. Во время воспроизведения состояния будут отмечены различными цветами:
Цвет | Значение |
---|---|
Зеленый | Успех: задание было завершено успешно. |
Orange | Повтор: экземпляры задач, которые завершили работу, но не влияют на конечный результат задания. Эти задачи имеют дублирующиеся или повторные экземпляры, которые могут быть успешно выполнены позже. |
Синий | Выполняется: задача выполняется. |
Белый | В ожидании или Пропуск: задача ожидает выполнения или этап был пропущен. |
Красный | Сбой: задачу не удалось завершить. |
На следующем рисунке показаны зеленый, оранжевый и синий цвета состояния.
На следующем рисунке показаны зеленые и белые цвета состояния.
На следующем рисунке показаны красные и зеленые цвета состояния.
Примечание.
Сервер журнала Apache Spark разрешает воспроизведение для каждого завершенного задания (но не разрешает воспроизведение неполных заданий).
Масштабирование
Используйте прокрутку мыши, чтобы увеличить или уменьшить диаграмму задания, или выберите Подогнать масштаб для отображения в соответствии с размерами экрана.
Подсказки
Наведите указатель мыши на узел диаграммы, чтобы увидеть подсказку при наличии невыполненных задач, и щелкните на необходимый этап, чтобы открыть страницу данного этапа.
На вкладке диаграммы заданий этапы имеют подсказку и маленький значок, если у них есть задачи, отвечающие следующим условиям:
Условие | Description |
---|---|
Неравномерное распределение данных | Средний размер > данных для чтения данных всех задач на этом этапе * 2 и размер > чтения данных составляет 10 МБ. |
Неравномерное распределение времени | > Среднее время выполнения всех задач на этом этапе * 2 и время > выполнения 2 минуты. |
Описание узла диаграммы
В узле диаграммы задания отображаются следующие сведения о каждом этапе:
- ID
- Имя или описание
- общее количество задач;
- чтение данных: сумма размера входных данных и размер данных чтения в случайном порядке;
- Запись данных: сумма выходных данных и размер операций записи
- время выполнения: время от начала первой попытки до завершения последней попытки;
- Число строк: сумма входных записей, выходных записей, перетасовка записей чтения и перетасовка записей записи
- Ход выполнения
Примечание.
По умолчанию узел диаграммы заданий отображает сведения о последней попытке каждого этапа (за исключением времени выполнения этапа). Однако во время повторного воспроизведения узел диаграммы будет отображать сведения каждой из попыток.
Размер данных чтения и записи составляет 1 МБ = 1000 КБ = 1000 * 1000 байт.
Предоставление отзыва
Чтобы отправить отзыв о проблемах, щелкните Отправить нам отзыв.
Ограничение номера стадии
Для повышения производительности граф по умолчанию доступен только в том случае, если приложение Spark имеет менее 500 этапов. Если существует слишком много этапов, ошибка завершится ошибкой следующим образом:
The number of stages in this application exceeds limit (500), graph page is disabled in this case.
В качестве обходного решения перед запуском приложения Spark примените эту конфигурацию Spark, чтобы увеличить ограничение:
spark.ui.enhancement.maxGraphStages 1000
Но обратите внимание, что это может привести к плохой производительности страницы и API, так как содержимое может быть слишком большим для получения и отрисовки браузера.
Обзор вкладки «Диагностика» на сервере журналов Apache Spark
Чтобы открыть вкладку «Диагностика», выберите идентификатор задания. Затем в меню инструментов выберите пункт Диагностика, чтобы отобразить диагностику задания. На вкладке диагностики доступны вкладки Неравномерное распределение данных, Неравномерное распределение времени и Анализ использования исполнителя.
Выберите вкладку Неравномерное распределение данных, Неравномерное распределение времени или Анализ использования исполнителя, чтобы просмотреть соответствующие сведения.
Неравномерное распределение данных
Выберите вкладку Неравномерное распределение данных. Отобразятся соответствующие задачи с неравномерным распределением на основе указанных параметров.
Укажите параметры — в первом разделе отображаются параметры, которые служат для обнаружения неравномерного распределения данных. Правилом по умолчанию является то, что чтение данных задачи превышает три раза в среднем, а данные задачи считываются более 10 МБ. Если необходимо самостоятельно задать правила для задач с неравномерным распределением, вы сможете сделать это, настроив необходимые параметры. Разделы Этап неравномерного распределения и Таблица неравномерного распределения обновятся соответствующим образом.
Этап с отклонением . Второй раздел отображает этапы, в которых сложены задачи, соответствующие ранее заданным критериям. Если на этапе существует несколько задач с размыкаемой задачей, то в таблице с размыкаемых этапов отображаются только самые сложенные задачи (например, самые большие данные для распределения данных).
Диаграмма с отклонением. При выборе строки в таблице этапов с размыкания диаграмма отображает дополнительные сведения о распределении задач на основе времени чтения и выполнения данных. Задачи с неравномерным распределением отмечены красным цветом, а нормальные задачи — синим. На диаграмме отображается до 100 образцов задач, а сведения о задачах отображаются в правой нижней панели.
Неравномерное распределение времени
На вкладке Неравномерное распределение времени отображаются задачи с неравномерным распределением времени выполнения.
Укажите параметры. В первом разделе отображаются параметры , которые используются для обнаружения отклонений времени. По умолчанию для обнаружения неравномерного распределения времени используется следующий критерий: время выполнения задачи больше среднего времени выполнения, умноженного на три, и превышает 30 секунд. Параметры можно изменить в соответствии с вашими потребностями. На диаграмме "Сложенный этап" и "Диаграмма с отклонением" отображаются соответствующие этапы и задачи, как описано выше на вкладке "Отклонение данных".
Щелкните Неравномерное распределение времени. В разделе Этап неравномерного распределения отобразятся отфильтрованные результаты в соответствии с параметрами, заданными в разделе Укажите параметры. Выберите один элемент в разделе "Этап с отклонением ", затем соответствующая диаграмма создается в разделе 3, а сведения о задаче отображаются на правой нижней панели.
Анализ использования исполнителя
Эта функция устарела в Fabric. Если вы по-прежнему хотите использовать это в качестве обходного решения, обратитесь к странице, явно добавив "/исполнителя" за путь "/diagnostic" в URL-адрес, как показано ниже: