Apache Spark

Introducción

Apache Spark es Framework Open Source que permite realizar cluster computing.

Brindando una interfaz de alto nivel, Apache Spark simplifica la programación a través paralelismo de datos implícito en su paradigma y tolerancia a fallos en el manejo del cluster.

Objetivo

El objetivo de esta guía es tener un entorno de Apache Spark funcional.

Instalación

Instalacion de Java

Para realizar la instalación de Java, visitar el capitulo Java de la guía.

Una vez realizada la instalación podremos proseguir con los siguientes pasos.

Instalacion Apache Spark

Usaremos una versión pre-built para hadoop 2.7 en esta instalación (pueden verse las distintas alternativas en https://spark.apache.org/downloads.html).

Recomendamos buscar un directorio donde quieran dejar la instalación realizada y allí descargar el tar.gz, luego vamos a referenciar ese path de instalación desde nuestras variables de PATH, etc.

wget http://apache.dattatec.com/spark/spark-2.3.0/spark-2.3.0-bin-hadoop2.7.tgz

o descargando en el directorio donde haremos la instalación usando un navegador.
Luego descomprimimos el paquete en ese directorio:

tar -xvzf spark-2.3.0-bin-hadoop2.7.tgz

Verificando la instalacion

Para verificar la instalación, ingresamos al directorio de instalación.

cd spark-2.3.0-bin-hadoop2.7

y podemos ejecutar el entorno de pyspark

# running pyspark
./bin/pyspark

Este paso podria fallar si no hay una instalación de python, mas alla de que usualmente esta instalado por default en el sistema. (no se preocupen, sera instalado en la seccion de jupyter junto a los devtools).

o el spark shell de scala

# running spark-shell
./bin/spark-shell

En pyspark se puede salir con quit()y en spark-shell con :quit

Configuración de Variables de Entorno

Para poder utilizar spark desde otros aplicativos y entornos (por ejemplo python), debemos configurar algunas variables de entorno.

Como hicimos anteriormente para Java tendremos que configurar variables de entorno en ~/.bashrc

SPARK_HOME

Editamos el archivo ~/.bashrc y agregamos la variable de entorno SPARK_HOME apuntando al directorio donde se instalo Apache Spark.

export SPARK_HOME="/path/de/instalacion/spark-2.3.0-bin-hadoop2.7"

Reemplazando /path/de/instalacion por el correcto (puede obtenerse usando pwd desde el shell).

PYTHONPATH

Para poder utilizar pyspark, es necesario agregar las librerias de spark para python (que se encuentran dentro del directorio python del directorio de instalación de Spark).

Para ello sera necesario modificar la variable de entorno PYTHONPATH de forma similar que lo hicimos anteriormente con la instalación de Java.

Editamos el archivo ~/.bashrc y redefinimos la variable de entorno PYTHONPATH.

export PYTHONPATH=$SPARK_HOME/python:$SPARK_HOME/python/lib/py4j-0.10.4-src.zip:$PYTHONPATH

Nota

Verificar que la libreria py4j sea la misma version que indicamos en la documentación, realizando desde el directorio de instalación de Spark un ls -l python/lib

Agregando Apache Spark al PATH

Para poder acceder mas facilmente a los comandos desde cualquier lugar pueden incluir el directorio bin de instalación en el path del shell.

Para hacerlo editar ~.bashrc en su directorio home adicionando la siguiente linea para redefinir la variable de entorno PATH usando la variable $SPARK_HOME que definieron anteriormente. (es por eso que es importante que esta definicion se encuentre despues de la de $SPARK_HOME.)

export PATH=$PATH:$SPARK_HOME/bin

De esta forma el comando pyspark o spark-shell va a poder ejecutarse desde cualquier directorio.

results matching ""

    No results matching ""