MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Spark não executa tarefas


Se alguém tropeçou nisso como eu e está trabalhando em um cluster, mas com a necessidade de executar alguns scripts locais em um nó de destino .

SOLUÇÃO

A solução infalível mais fácil seria definir PYSPARK_PYTHON env no início do script, pois no meu caso o pyspark-shell não poderia pegá-lo mesmo se configurado corretamente em $SPARK_HOME/conf/spark-env.sh ou mesmo em spark-defaults.conf e ~/.bashrc (ambos menos desejáveis ​​que a primeira opção).
import os
os.environ['PYSPARK_PYTHON'] = '/path/to/python3' # Worker executable
os.environ['PYSPARK_DRIVER_PYTHON'] = '/path/to/python3' # Driver executable

CAUSA PROVÁVEL

Não tenho certeza, mas meu palpite é que o pyspark instalado a partir do pip em seu venv é diferente daquele que é realmente carregado pelo próprio Spark e não encontra a variável env correta, recorrendo aos executáveis ​​padrão do python 2.7 apesar de configurá-lo em toda parte.