Eu tenho o mesmo problema em faísca autônoma em janelas . Minha versão de correção é assim: eu tinha minhas configurações de variáveis de ambiente como abaixo
PYSPARK_SUBMIT_ARGS="pyspark-shell"
PYSPARK_DRIVER_PYTHON=jupyter
PYSPARK_DRIVER_PYTHON_OPTS='notebook' pyspark
Com essa configuração, executei uma ação no pyspark e obtive a seguinte exceção:
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.
Para verificar com qual versão do Python meu spark-worker está usando, acesse o seguinte no prompt do cmd .
python --version
Python 3.6.3
que me mostrou o Python 3.6.3 . Então, claramente, meu spark-worker está usando sistema python que é v3.6.3.
Agora, enquanto eu defino meu driver spark para executar o jupyter configurando PYSPARK_DRIVER_PYTHON=jupyter
então, preciso verificar a versão do python que o jupyter está usando.
Para fazer isso, abra o prompt do Anaconda e clique
python --version
Python 3.5.X :: Anaconda, Inc.
Aqui tem o python jupyter está usando a v3.5.x . Você pode verificar esta versão também em qualquer Notebook (Ajuda-> Sobre).
Agora preciso atualizar o jupyter python para a versão v3.6.6 . Para fazer isso, abra o prompt do Anaconda e clique
conda search python
Isso lhe dará uma lista de versões de python disponíveis no Anaconda. Instale o seu desejado com
conda install python = 3.6.3
Agora eu tenho ambas as instalações do Python da mesma versão 3.6.3. O Spark não deveria estar em conformidade e não estava quando executei uma Ação no driver do Spark. A exceção acabou. Boa codificação ...