-
Notifications
You must be signed in to change notification settings - Fork 8
Spark
Antes de comenzar, fíjate que necesitas el JDK instalado. Si usás ubuntu:
sudo apt-get update
sudo apt-get install default-jdk
sudo update-alternatives --config java
En el menú que se muestra elegís el que recién instalaste. Copiate el path dónde dice que se instaló y seguí así:
sudo vim /etc/environment
Al final del archivo agrega la siguiente línea:
JAVA_HOME="la_ruta_que_copiaste"
Guardá (dale, no es tan díficil). Y tirá los siguientes comandos:
source /etc/environment
echo $JAVA_HOME
Al imprimir la variable de entorno en el último paso deberías ver lo mismo que copiaste previamente.
Si no usás ubuntu probablemente tengas alguna idea de lo que estás haciendo, así que sabrás instalarlo por tu cuenta :P
mkdir pyspark && cd "$_"
virtualenv -p python3 venv
source venv/bin/activate
pip install jupyter pyspark
jupyter lab
Ejecutando
jupyter-kernelspec list
Vas a ver donde se guardan los kernels. Vas a crear tu propio kernel de pyspark. ¿Cómo? Tira este choclo:
mkdir $( dirname $( jupyter-kernelspec list | tail -n1 | sed 's/[^\/]*//' ) | awk '{print $1"/pyspark"}' ) && cd "$_"
wget https://gist.github.com/CrossNox/b473f7a8eed1bbefdb6bc35e86442b55/archive/b1bc653f4f4920b60a0bbfaf861805205a611a95.zip
unzip -j *.zip && rm *.zip
eval "echo \"$(cat kernel.json)\"" | tr "'" '"' > kernel.json
Y para probarlo:
jupyter lab
Y en el navegador se te va a abrir jupyter lab, proba de levantar un notebook con el kernel pySpark, con un código sencillo como:
sc.parallelize(range(10)).map(lambda x: x*2).collect()
Y fijate que no pinche.
¯\(ツ)/¯
Vas a necesitar docker instalado, obviamente. Cómo instalarlo se escapa del alcance de ésta guía actualmente.