Отправка заданий Spark с использованием Airflow путем отправки пакетного метода POST в Livy и отслеживания заданий - PullRequest
0 голосов
/ 17 января 2019

Я хочу использовать Airflow для согласования заданий, которое включает в себя запуск некоторых сценариев PIG, сценариев оболочки и заданий Spark.

В основном на заданиях Spark, я хочу использовать Apache Livy, но не уверен, стоит ли использовать или запустить spark-submit.

Каков наилучший способ отслеживания заданий Spark с использованием Airflow, даже если я отправил?

1 Ответ

0 голосов
/ 17 января 2019

Я предполагаю, что вы JAR приложение, содержащее Java / Scala код, который вы хотите отправить в удаленный Spark кластер.Livy, возможно, является лучшим вариантом для remote spark-submit, если сравнивать его с другими возможностями:

  • Указание remote master IP : Требуется изменение глобальных конфигураций / переменных среды
  • Использование SSHOperator: SSH соединение может разрыв
  • Использование EmrAddStepsOperator: зависит от EMR

Относительно отслеживание

  • Livy только отчеты state, а не прогресс (% завершения этапов)
  • Если с этим все в порядке, вы можете просто опрос Livy сервера через REST API и продолжайте печатать журналы в консоли, они будут отображаться в журналах задач в WebUI (View Logs)

Другие замечания

  • Livy не поддерживает повторное использование SparkSession для POST/batches запроса
  • Если это необходимо, вам придется написать код приложения в PySpark и использовать POST/session запросов

Ссылки


Полезные ссылки

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