💥Python-библиотека для отправки PySpark-скриптов в кластер Spark через REST API Livy
Разработчики Spark-приложений знают, что есть два подхода к программной отправке заданий в кластер Apache Spark, и каждый из них имеет некоторые ограничения для достижения взаимодействия в реальном времени: spark-submit и spark-shell.
Однако, на практике бывают случаи, что надо отправлять Spark-задания в интерактивном режиме из веб- или мобильного приложения. При этом кластер Apache Spark размещен в локальной инфраструктуре, а нужно, чтобы много пользователей одновременно потребляли и выполняли тяжелые агрегации с источниками данных со своих мобильных телефонов, веб- или десктопных приложений. В этом случае поможет сервисный подход, Spark-as-a-Service, включая предоставление доступа к источникам данных JDBC/ODBC через резервный сервер Spark или использование Apache Livy - службы, которая позволяет легко взаимодействовать с кластером Apache Spark через REST API.
Для Livy пригодится Python-пакет livyc – он хорошо работает для динамической и асинхронной отправки PySpark-скриптов на сервер Apache Livy, прозрачно взаимодействуя с кластером Apache Spark. https://github.com/Wittline/livyc
Post #290
1.11K