Apache Spark: как использовать pyspark с Python 3


93

Я собрал Spark 1.4 из мастера разработки GH, и сборка прошла нормально. Но когда я делаю это, bin/pysparkя получаю версию Python 2.7.9. Как я могу это изменить?


7
Для тех, кто хочет узнать, как это сделать: PYSPARK_DRIVER_PYTHON=ipython3 PYSPARK_DRIVER_PYTHON_OPTS="notebook" ./bin/pysparkв этом случае он запускает ноутбук IPython 3.
tchakravarty

Ответы:


144

Просто установите переменную окружения:

export PYSPARK_PYTHON=python3

если вы хотите, чтобы это было постоянное изменение, добавьте эту строку в скрипт pyspark.


Переменные среды можно редактировать в / etc / profile. Не забудьте запустить "source / etc / profile" после сохранения профиля, чтобы изменения вступили в силу немедленно.
Phyticist 05

1
Очевидно, используйте export PYSPARK_PYTHON=python3.5Python 3.5
Phyticist

4
Лучше добавить это, $SPARK_HOME/conf/spark-env.shчтобы spark-submitиспользовать тот же интерпретатор.
flow2k

@flow2k, это лучшая идея. Tnx
Mohammad RaoofNia

32
PYSPARK_PYTHON=python3 
./bin/pyspark

Если вы хотите запустить IPython Notebook, напишите:

PYSPARK_PYTHON=python3 
PYSPARK_DRIVER_PYTHON=ipython 
PYSPARK_DRIVER_PYTHON_OPTS="notebook" 
./bin/pyspark

Если python3недоступен, вам нужно вместо этого указать путь к нему.

Имейте в виду, что текущая документация (начиная с версии 1.4.1) содержит устаревшие инструкции. К счастью, он был исправлен .


1
Я думаю, что ваша команда для IPython Notebook неверна. Должно быть так: PYSPARK_PYTHON = python3 PYSPARK_DRIVER_PYTHON = ipython3 PYSPARK_DRIVER_PYTHON_OPTS = "notebook" ./bin/pyspark
SpiderRico

@ChrisNielsen В терминале.
Петр Мигдал

@ChrisNielsen В Linux или OS X это терминал / консоль. Понятия не имею, как это работает под Windows (в Windows я использовал Spark только в контейнере Docker).
Петр Мигдал

@SpiderRico Похоже, они не работают на моем Mac. Чтобы Jupyter Notebook работал с Spark, используйте следующее. PYSPARK_PYTHON = python3 PYSPARK_DRIVER_PYTHON = jupyter PYSPARK_DRIVER_PYTHON_OPTS = "блокнот" ./bin/pyspark
Хэнк Чан

9

1, отредактируйте профиль:vim ~/.profile

2, добавьте код в файл: export PYSPARK_PYTHON=python3

3, выполните команду: source ~/.profile

4, ./bin/pyspark


4

Загляните в файл. Строка shebang, вероятно, указывает на двоичный файл env, который ищет путь к первому совместимому исполняемому файлу.

Вы можете изменить python на python3. Измените env, чтобы напрямую использовать жестко запрограммированный двоичный файл python3. Или выполните двоичный файл напрямую с помощью python3 и опустите строку shebang.


1
Да, просмотр файла помог. Требуется для установки PYSPARK_PYTHONпеременной окружения.
tchakravarty

4

Для Jupyter Notebook отредактируйте spark-env.shфайл, как показано ниже, из командной строки.

$ vi $SPARK_HOME/conf/spark-env.sh

Перейдите в конец файла и скопируйте и вставьте эти строки

export PYSPARK_PYTHON=python3
export PYSPARK_DRIVER_PYTHON=jupyter
export PYSPARK_DRIVER_PYTHON_OPTS="notebook"

Затем просто запустите следующую команду, чтобы запустить pyspark в записной книжке

$ pyspark
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.