Как настроить Spark для использования панд под управлением анаконды? - PullRequest
0 голосов
/ 14 ноября 2018

Мы обновили версию Spark с 2.2 до 2.3, но администраторы не обновили панд. Таким образом, наши задания не выполняются со следующей ошибкой:

ImportError: Pandas> = 0.19.2 должен быть установлен; однако ваша версия была 0.18.1

Наша команда администраторов предложила создать виртуальную машину, загружающую последнюю версию из anaconda (с помощью команды conda create -n myenv anaconda).

Я сделал это и после активации локальной среды, используя source activate myenv, когда я вошел в pyspark2, то обнаружил, что он выбирает новую версию pandas.

Но когда я отправляю работу с помощью команды spark2-submit, она не работает. Я добавил приведенную ниже конфигурацию в команду spark2-submit

--conf spark.pyspark.virtualenv.enabled=true  
--conf spark.pyspark.virtualenv.type=conda 
--conf spark.pyspark.virtualenv.requirements=/home/<user>/.conda/requirements_conda.txt --conf spark.pyspark.virtualenv.bin.path=/home/<user>/.conda/envs/myenv/bin

Также я заархивировал всю папку python 2.7 и передал ее в опции --py-files вместе с другими файлами .py --py-files /home/<user>/python.zip, но все еще получал ту же проблему с версией для панд.

Я пытался следовать инструкциям, указанным в URL https://community.hortonworks.com/articles/104947/using-virtualenv-with-pyspark.html, но все еще не повезло.

Как это исправить и уметь spark2-submit с нужными пандами?

1 Ответ

0 голосов
/ 20 ноября 2018

Я думаю, вам может понадобиться определить переменные окружения, такие как SPARK_HOME и PYTHONPAH, указывающие на соответствующие местоположения в вашем virtualenv.

export SPARK_HOME=path_to_spark_in_virtualenv
export PYTHONPATH=$SPARK_HOME/python
...