Mam ten sam problem na autonomicznej iskrze w systemie Windows . Moja wersja poprawki wygląda następująco: moje zmienne środowiskowe zostały ustawione jak poniżej
PYSPARK_SUBMIT_ARGS="pyspark-shell"
PYSPARK_DRIVER_PYTHON=jupyter
PYSPARK_DRIVER_PYTHON_OPTS='notebook' pyspark
Z tym ustawieniem wykonałem akcję na pyspark i otrzymałem następujący wyjątek:
Python in worker has different version 3.6 than that in driver 3.5, PySpark cannot run with different minor versions.
Please check environment variables PYSPARK_PYTHON and PYSPARK_DRIVER_PYTHON are correctly set.
Aby sprawdzić, z której wersji języka Python korzysta mój program Spark- Worker, w wierszu polecenia cmd naciśnij następujący przycisk .
python --version
Python 3.6.3
co pokazało mi Python 3.6.3 . Więc wyraźnie mój iskrownik używa systemu Python w wersji 3.6.3.
Teraz, gdy ustawiłem mój sterownik iskier, aby uruchamiał jupyter przez ustawieniePYSPARK_DRIVER_PYTHON=jupyter
więc muszę sprawdzić, której wersji Pythona używa jupyter.
Aby to zrobić, otwórz Anaconda Prompt i naciśnij
python --version
Python 3.5.X :: Anaconda, Inc.
Tutaj mam jupyter Python używa wersji 3.5.x. . Możesz sprawdzić tę wersję również w dowolnym Notatniku (Pomoc-> Informacje).
Teraz muszę zaktualizować jupyter Python do wersji v3.6.6 . Aby to zrobić, otwórz Anaconda Prompt i naciśnij
wyszukiwarka Conda Python
Spowoduje to wyświetlenie listy dostępnych wersji Pythona w programie Anaconda. Zainstaluj żądany za pomocą
conda install python = 3.6.3
Teraz mam obie instalacje Pythona w tej samej wersji 3.6.3 Spark nie powinien być zgodny i nie był, gdy uruchomiłem Action na sterowniku Spark. Wyjątek minął. Miłego kodowania ...