Подтвердить что ты не робот

Как установить pyspark для использования в автономных скриптах?

Я пытаюсь использовать Spark с Python. Я установил Spark 1.0.2 для бинарного дистрибутива Hadoop 2 на странице downloads. Я могу запустить примеры быстрого запуска в интерактивном режиме Python, но теперь я бы хотел написать автономный Python script, который использует Spark. документация быстрого запуска говорит просто импортировать pyspark, но это не работает, потому что это не на моем PYTHONPATH.

Я могу запустить bin/pyspark и увидеть, что модуль установлен ниже SPARK_DIR/python/pyspark. Я могу вручную добавить это в свою переменную среды PYTHONPATH, но я хотел бы знать предпочтительный автоматический метод.

Каков наилучший способ добавить поддержку pyspark для автономных скриптов? Я не вижу setup.py в любом месте каталога установки Spark. Как создать пакет для Python script, который зависит от Spark?

4b9b3361

Ответ 1

Вы можете установить PYTHONPATH вручную, как вы предлагаете, и это может быть полезно вам при тестировании автономных неинтерактивных сценариев при локальной установке.

Однако, (py) искра все о распределении ваших заданий на узлы на кластерах. Каждый кластер имеет конфигурацию, определяющую менеджера и множество параметров; подробности настройки этого параметра здесь и включают простой локальный кластер (это может быть полезно для тестирования функциональности).

В процессе производства вы будете запускать задачи для искры через spark-submit, которые будут распространять ваш код на узлы кластера и устанавливать контекст для их работы на этих узлах. Тем не менее, вам нужно убедиться, что установки python на узлах имеют все необходимые зависимости (рекомендуемый путь) или что зависимости передаются вместе с вашим кодом (я не знаю, как это работает).

Ответ 2

Далее Spark-2.2.0 использует pip install pyspark для установки pyspark на вашем компьютере.

Для более старых версий см. следующие шаги. Добавить Pyspark lib в пути Python в bashrc

export PYTHONPATH=$SPARK_HOME/python/:$PYTHONPATH

также не забудьте установить SPARK_HOME. PySpark зависит от пакета py4j Python. Поэтому установите это следующим образом

pip install py4j

Подробнее о самостоятельном приложении PySpark см. этот post

Ответ 3

Я устанавливаю pyspark для использования в автономном режиме, следуя guide. Шаги:

export SPARK_HOME="/opt/spark"
export PYTHONPATH=$SPARK_HOME/python/:$PYTHONPATH

Затем вам нужно установить py4j:

pip install py4j

Чтобы попробовать:

./bin/spark-submit --master local[8] <python_file.py>

Ответ 4

Начиная с Spark 2.2, PySpark теперь доступен в PyPI. Спасибо @Evan_Zamir.

pip install pyspark


По состоянию на Spark 2.1 вам просто нужно загрузить Spark и запустить setup.py:

cd my-spark-2.1-directory/python/
python setup.py install  # or pip install -e .

Существует также билет для добавления его в PyPI.

Ответ 5

Не export $SPARK_HOME, do export SPARK_HOME.