Skip to content

Latest commit

 

History

History
75 lines (47 loc) · 1.79 KB

README.md

File metadata and controls

75 lines (47 loc) · 1.79 KB

Easy spark

Contenedores docker de Spark basados en debian:buster, desarrollados originalmente por Gettyimages, esta versión está actualizada a Python 3.7 y Spark 3.1.2. Pensado para desplegar de forma local y sencilla.

Importante

Spark y PySpark son muy sensibles a las versiones de las librerías que se usan. Para que funcione adecuadamente, es necesario Python 3.7, y la versión 3.1.2 de pyspark.

Para crear un entorno de python rápidamente con conda:

conda create -y -n pyspark python=3.7
conda activate pyspark
pip install -r requirements.txt

Despliegue en docker local

Primero, instalar docker-compose, si no viene por defecto en tu instalación de docker:

sudo apt install docker-compose

Después, arrancar todos los servicios con:

docker-compose up

Para arrancar los servicios en background:

docker-compose up -d

Para pararlo todo, CTRL+C, o:

docker-compose down

Interfaz de Spark master

Podemos ver la interfaz del nodo maestro de spark en http://localhost:8080.

Deberían aparecer tres workers con state ALIVE.

Lanzar tareas de ejemplo en el cluster de spark creado

Entramos en el contenedor con bash:

docker exec -it docker-spark_master_1 /bin/bash

Una vez dentro, para lanzar un trabajo de ejemplo:

bin/run-example SparkPi 10

Mientras se completa, podremos ver en la interfaz web del nodo maestro la aplicación en curso. Cuando finalice, aparecerá en la lista de aplicaciones completadas.

Conexión con PySpark

En pyspark_example.py se encuentra un ejemplo de cómo conectarse al cluster y crear un dataframe. Con el entorno de python 3.7 activado, ejecutar:

python pyspark_example.py

License

MIT