Установите pyspark в Google cloud Dataproc, причина "не удалось найти действительный SPARK_HOME во время поиска ['/ tmp', '/ usr / local / bin']" - PullRequest
0 голосов
/ 28 апреля 2018

Я создаю кластер с Google Cloud Dataproc. Я могу просто отправить работу в кластер, пока не выполню

pip3 установить pyspark

в кластере. После этого каждый раз, когда я пытаюсь отправить работу, я получаю сообщение об ошибке:

Не удалось найти действительный SPARK_HOME при поиске ['/ tmp', '/ USR / местные / бен']
/ usr / local / bin / spark-submit: строка 27: / bin / spark-class: такого файла или каталога нет

Я заметил, что даже до установки pyspark SPARK_HOME не был установлен ни на что. Однако я могу представить работу просто отлично. Интересно, почему установка pyspark вызывает эту проблему и как ее исправить?

1 Ответ

0 голосов
/ 01 мая 2018

Pyspark уже предварительно установлен на Dataproc - вы должны вызывать команду pyspark вместо python. На данный момент попытка установить pyspark с помощью pip или py4j нарушит работу pyspark в Dataproc. Вы также должны быть осторожны, чтобы не устанавливать pip-пакеты, которые зависят от pyspark / py4j. Мы знаем об этой проблеме:)

Если вы просто пытаетесь переключиться на Python 3, в настоящее время самый простой способ сделать это - запустить действие инициализации miniconda при создании кластера: https://github.com/GoogleCloudPlatform/dataproc-initialization-actions/blob/master/conda/. Это действие init удобно также позволяет вам указать дополнительные пакеты pip или conda для установки.

Мы также знаем, что pyspark не включен PYTHONPATH для интерпретатора Python. А пока, если вы хотите запустить код pyspark, используйте команду pyspark. Обратите внимание, что pyspark источник команд /etc/spark/conf/spark-env.sh, что вам придется делать вручную, если вы хотите запустить import pyspark в оболочке python.

Примечание: вместо SSHing в кластер и запуска pyspark, рассмотрите возможность запуска gcloud dataproc jobs submit pyspark ( docs ) с вашей рабочей станции или использования Jupyter notebook .

...