Estoy estoy tratando de usar Chispa con Python. He instalado la Chispa de la versión 1.0.2 para Hadoop 2 distribución binaria de la descargas página. Puedo correr a través de la guía rápida, ejemplos en Python en el modo interactivo, pero ahora me gustaría escribir una secuencia de comandos de Python independiente que utiliza la Chispa. El inicio rápido de la documentación dice que importar pyspark, pero esto no funciona porque no está en mi PYTHONPATH.

Puedo correr bin/pyspark y ver que el módulo está instalado debajo de SPARK_DIR/python/pyspark. Me pueden agregar manualmente esta a mi variable de entorno PYTHONPATH, pero me gustaría saber el preferido método automatizado.

¿Cuál es la mejor manera de agregar pyspark soporte para secuencias de comandos independiente? No veo un setup.py en cualquier lugar bajo la Chispa directorio de instalación. ¿Cómo puedo crear un pip paquete para una secuencia de comandos de Python que dependía de la Chispa?

  • ¿El pyspark ejecutable ejecutar? A continuación, desde dentro, no, usted puede consultar donde el pyspark paquete de vidas, y asegurarse de que el camino adecuado es incluido en su PYTHONPATH por módulos independientes.
  • Buen punto. He modificado la pregunta.
  • Creo que, desde la instalación de la totalidad de la chispa de los ecosistemas es tan involucrado, me gustaría hacer con la configuración de la PYTHONPATH. En cualquier caso, será la ejecución de los scripts usando chispa-enviar – ¿tienes problemas con eso?
  • Oh, ya veo. Así que no escribo independiente de la Chispa de secuencias de comandos de Python. Puedo escribir secuencias de comandos de Python con pyspark dependencias que son sometidos a una Chispa de clúster. Yo no se que desde el inicio rápido de la valoración crítica, pero supongo que tiene sentido. Hadoop funciona de la misma manera. Si eso es correcto, usted debe presentar como una respuesta, @mdurant. Gracias.
  • Por favor, intente lo primero 🙂
  • Me funcionó con éxito la muestra de Python de la aplicación de la guía de inicio uso de chispa a presentar. Escribir esto como una respuesta y recoger tu premio!
  • Tengo un problema similar: puedo ejecutar .bin/pyspark pero no veo donde está el módulo está instalado. ¿Cómo puedo averiguar el HOME DIRECTORY de chispa?

InformationsquelleAutor W.P. McNeill | 2014-08-08

5 Comentarios

  1. 8

    Puede establecer el PYTHONPATH manualmente como usted sugiere, y esto puede ser útil cuando las pruebas independientes no-secuencias interactivas en una instalación local.

    Sin embargo, (py)spark es todo acerca de la distribución de sus puestos de trabajo a los nodos de clústeres. Cada grupo tiene una configuración de la definición de un administrador y muchos de los parámetros; los detalles de esta configuración son aquí, e incluyen una simple agrupación local (esto puede ser útil para probar la funcionalidad).

    De la producción, que será la presentación de las tareas de la chispa a través de chispa a presentar, que va a distribuir el código para los nodos del clúster, y establecer el contexto para que se ejecute dentro de los nodos. Sin embargo, usted necesita para asegurarse de que el python instalaciones en los nodos tienen todas las dependencias necesarias (lo más recomendable) o que las dependencias se pasó junto con su código (no sé cómo funciona).

    • Por favor, a ver si este coincide con tu experiencia – no estoy seguro de si esto es inteligible.
  2. 35

    Chispa-2.2.0 en adelante uso pip install pyspark para instalar pyspark en su máquina.

    Para versiones anteriores refiera a los pasos siguientes. Agregar Pyspark lib en Python path en el bashrc

    export PYTHONPATH=$SPARK_HOME/python/:$PYTHONPATH

    también no se olvide de configurar el SPARK_HOME.
    PySpark depende de la py4j paquete de Python. Así que instalar de la siguiente manera

    pip install py4j

    Para obtener más detalles acerca de stand alone PySpark aplicación consulte este post

    • Tu respuesta está bien, pero sería útil añadir que usted necesita lleno de Chispa descargado en su equipo. Usted podría pensar que es obvios, pero para un beginer (como yo) no es
    • Por favor, consulte este tema CHISPA-1267
    • Chispa-2.2.0 en adelante, usted puede utilizar pip install pyspark.
    • pip instala automáticamente py4j como una dependencia de pyspark.
    • Como requisito previo, asegúrese de instalar Java 8 en primer lugar (como se describe por ejemplo, webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html o webupd8.org/2012/09/… )
  3. 15

    Puedo instalar pyspark para su uso en independiente después de un guía. Los pasos son:

    export SPARK_HOME="/opt/spark"
    export PYTHONPATH=$SPARK_HOME/python/:$PYTHONPATH

    Entonces usted necesita instalar py4j:

    pip install py4j

    Para probarlo:

    ./bin/spark-submit --master local[8] <python_file.py>
    • Estoy bastante seguro de que es PYTHONPATH y no PYTHON_PATH
    • Que paso para la instalación de py4j fue muy útil.
  4. 11

    Como de Chispa 2.2, PySpark ahora está disponible en PyPI. Gracias @Evan_Zamir.

    pip install pyspark


    Como de Chispa 2.1, sólo tienes que descargar la Chispa y ejecutar setup.py:

    cd my-spark-2.1-directory/python/
    python setup.py install  # or pip install -e .

    También hay un billete para agregarlo a PyPI.

    • Y ahora, con Chispa 2.2, usted puede pip install pyspark. 🙂
    • ¿de dónde pip poner chispa? Necesidad de establecer SPARK_HOME

Dejar respuesta

Please enter your comment!
Please enter your name here