J'ai eu le même problème sur l' étincelle autonome dans Windows . Ma version de correctif est comme ceci: j'avais mes variables d'environnement définies comme ci-dessous
PYSPARK_SUBMIT_ARGS="pyspark-shell"
PYSPARK_DRIVER_PYTHON=jupyter
PYSPARK_DRIVER_PYTHON_OPTS='notebook' pyspark
Avec ce paramètre, j'ai exécuté une action sur pyspark et j'ai obtenu l'exception suivante:
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.
Pour vérifier avec quelle version de Python mon Spark-worker utilise, cliquez sur ce qui suit dans l' invite cmd .
python --version
Python 3.6.3
qui m'a montré Python 3.6.3 . Si clairement mon étinceleur utilise le système python qui est la v3.6.3.
Maintenant que je configure mon pilote spark pour exécuter jupyter en définissant PYSPARK_DRIVER_PYTHON=jupyter
, je dois donc vérifier la version de python que jupyter utilise.
Pour ce faire, ouvrez l' invite Anaconda et appuyez sur
python --version
Python 3.5.X :: Anaconda, Inc.
Voici le jupyter python utilise le v3.5.x . Vous pouvez vérifier cette version également dans n'importe quel notebook (Aide-> À propos).
Maintenant, je dois mettre à jour le jupyter python vers la version v3.6.6 . Pour ce faire, ouvrez l' invite Anaconda et appuyez sur
recherche conda python
Cela vous donnera une liste des versions de python disponibles dans Anaconda. Installez celui que vous souhaitez avec
conda installer python = 3.6.3
Maintenant, j'ai à la fois l'installation de Python de la même version 3.6.3 Spark ne devrait pas être conforme et ce n'était pas le cas lorsque j'ai exécuté une action sur le pilote Spark. L'exception est partie. Bon codage ...