Saya mendapat masalah yang sama tentang percikan mandiri di windows . Versi perbaikan saya seperti ini: Saya memiliki pengaturan variabel lingkungan seperti di bawah ini
PYSPARK_SUBMIT_ARGS="pyspark-shell"
PYSPARK_DRIVER_PYTHON=jupyter
PYSPARK_DRIVER_PYTHON_OPTS='notebook' pyspark
Dengan pengaturan ini saya menjalankan Action di pyspark dan mendapatkan pengecualian berikut:
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.
Untuk memeriksa dengan versi python mana yang digunakan spark-worker saya, tekan perintah berikut di prompt cmd .
python --version
Python 3.6.3
yang menunjukkan Python 3.6.3 . Jadi jelas spark-worker saya menggunakan sistem python yang v3.6.3.
Sekarang ketika saya mengatur spark-driver saya untuk menjalankan jupyter dengan mengatur PYSPARK_DRIVER_PYTHON=jupyter
jadi saya perlu memeriksa versi python yang digunakan jupyter.
Untuk melakukan ini, buka Anaconda Prompt dan tekan
python --version
Python 3.5.X :: Anaconda, Inc.
Berikut mendapat jupyter python menggunakan v3.5.x . Anda juga dapat memeriksa versi ini di Notebook manapun (Help-> About).
Sekarang saya perlu mengupdate jupyter python ke versi v3.6.6 . Untuk melakukan itu, buka Anaconda Prompt dan tekan
conda cari python
Ini akan memberi Anda daftar versi python yang tersedia di Anaconda. Instal yang Anda inginkan dengan
conda install python = 3.6.3
Sekarang saya memiliki kedua instalasi Python dari versi 3.6.3 Spark yang sama tidak sesuai dan tidak saat saya menjalankan Action pada Spark-driver. Pengecualian hilang. Selamat membuat kode ...