sql >> Base de Datos >  >> NoSQL >> MongoDB

Spark no ejecuta tareas

Si alguien tropezó con esto como yo y está trabajando en un clúster pero necesita ejecutar algunos scripts locales en un nodo de destino .

SOLUCIÓN

La solución más fácil e infalible sería establecer PYSPARK_PYTHON env al comienzo del script, ya que en mi caso, pyspark-shell no pudo detectarlo incluso si se configuró correctamente en $SPARK_HOME/conf/spark-env.sh o incluso en spark-defaults.conf y ~/.bashrc (ambas menos deseables que la primera opción).

import os
os.environ['PYSPARK_PYTHON'] = '/path/to/python3' # Worker executable
os.environ['PYSPARK_DRIVER_PYTHON'] = '/path/to/python3' # Driver executable

CAUSA PROBABLE

No estoy del todo seguro, pero supongo que pyspark instalado desde pip en su venv es diferente al que realmente carga Spark y no encuentra la variable env correcta, recurriendo a los ejecutables predeterminados de python 2.7 a pesar de configurarlo en todas partes.