java.io.IOException: No se puede ejecutar el progtwig “python” usando Spark en Pycharm (Windows)

Estoy tratando de escribir un código muy simple usando Spark en Pycharm y mi sistema operativo es Windows 8. He estado lidiando con varios problemas que de alguna manera logré solucionar, excepto uno. Cuando ejecuto el código usando pyspark.cmd, todo funciona sin problemas pero no he tenido suerte con el mismo código en pycharm. Hubo un problema con la variable SPARK_HOME que solucioné usando el siguiente código:

import sys import os os.environ['SPARK_HOME'] = "C:/Spark/spark-1.4.1-bin-hadoop2.6" sys.path.append("C:/Spark/spark-1.4.1-bin-hadoop2.6/python") sys.path.append('C:/Spark/spark-1.4.1-bin-hadoop2.6/python/pyspark') 

Así que ahora cuando importe el pyspark y todo está bien:

 from pyspark import SparkContext 

El problema surge cuando quiero ejecutar el rest de mi código:

 logFile = "C:/Spark/spark-1.4.1-bin-hadoop2.6/README.md" sc = SparkContext() logData = sc.textFile(logFile).cache() logData.count() 

Cuando recibo el siguiente error:

 15/08/27 12:04:15 ERROR Executor: Exception in task 0.0 in stage 0.0 (TID 0) java.io.IOException: Cannot run program "python": CreateProcess error=2, The system cannot find the file specified 

He agregado la ruta de acceso de python como una variable de entorno y funciona correctamente usando la línea de comandos, pero no pude averiguar cuál es mi problema con este código. Cualquier ayuda o comentario es muy apreciado.

Gracias

Después de luchar con esto durante dos días, me di cuenta de cuál es el problema. Agregué lo siguiente a la variable “PATH” como variable de entorno de Windows:

 C:/Spark/spark-1.4.1-bin-hadoop2.6/python/pyspark C:\Python27 

Recuerde, debe cambiar el directorio a donde esté instalada su chispa y también lo mismo para python. Por otro lado, tengo que mencionar que estoy usando la versión prebuild de spark, que incluye Hadoop.

La mejor de las suertes para todos ustedes.

Tuve el mismo problema que tú, y luego hice los siguientes cambios: configura PYSPARK_PYTHON como variable de entorno para que apunte a python.exe en Editar Configuraciones de Pycharm, aquí está mi ejemplo:

PYSPARK_PYTHON = D: \ Anaconda3 \ python.exe

SPARK_HOME = D: \ spark-1.6.3-bin-hadoop2.6

PYTHONUNBUFFERED = 1

Me he enfrentado a este problema, se debe a conflictos de versión de Python en nodos diferenciales del clúster, por lo que puede resolverse mediante

 export PYSPARK_PYTHON=/usr/bin/python 

que son la misma versión en nodos diff. y luego empezar:

 pyspark 

Tuve que configurar SPARK_PYTHONPATH como variable de entorno para que apunte al archivo python.exe además de las variables PYTHONPATH y SPARK_HOME como

 SPARK_PYTHONPATH=C:\Python27\python.exe