Для того что бы запустить приложение на спарке, нужно проверить установлены ли переменные окружения SPARK_HOME и PYSPARK_PYTHON.
- SPARK_HOME Эта переменная указывает на корневую директорию установки Apache Spark.
- PYSPARK_PYTHON Путь к вашему интерпретатору Python на машинках кластера.
Если они отсутствуют то мы не сможем работать со спарком и при создании спарк-сессии будем получать ошибку. Как мы видим переменные окружения отсутствуют, для их установки можно использовать модуль findspark.
Модуль findspark помогает Python найти установку спарка, даже если она находится в нестандартном каталоге
и установить необходимые пути в переменных окружения(По сути findspark просто устанавливает переменные окружения).
Это позволяет pySpark правильно импортировать и использовать спарк внутри скриптов.
Так как в кластере присутствуют две версии спарка в методе init я указываю нужную мне версию.