Как мне заставить pyspark работать в Jupyter Notebook в виртуальной среде Windows?

#pyspark #jupyter-notebook

#pyspark #jupyter-notebook

Вопрос:

Я получаю страшную ошибку «Исключение: процесс Java gateway завершен до отправки номера его порта», но я уже выполнил все, что смог найти, и он все еще не работает. Хуже всего, я клянусь, что эта настройка работала на прошлой неделе и почему-то больше не работает.

Я могу отлично запускать pyspark в виртуальной среде из командной строки и вне вирусной среды (я использую Pipenv), поэтому это должно быть как-то связано с Jupyter Notebook. Кто-нибудь решил эту проблему в Windows, кто может мне помочь?

Ответ №1:

Установите переменную среды JAVA_HOME в вашем скрипте python:

os.environ['JAVA_HOME'] = '/path/to/your/java/exe/'

Если это не сработает, попробуйте также задать PATH:

os.environ["PATH"] = os.environ["JAVA_HOME"] "/bin:" os.environ["PATH"]

Комментарии:

1. К сожалению, все мои переменные Java env настроены правильно, поэтому это должно быть что-то другое. Спасибо.

Ответ №2:

Я нашел исправление отсюда. Мои переменные среды JAVA, SPARK_HOME и HADOOP_HOME были настроены правильно, но я добавил

PYSPARK_DRIVER_PYTHON = jupyter PYSPARK_DRIVER_PYTHON_OPTS = notebook

и пока это работает.