python 을 사용해서 spark를 활용하기 위해 사전 준비 작업을 포스팅합니다.spark 자체의 jupyter-notebook기능을 활용해서 하는 것들을 보여줬었습니다.spark를 활용할 수 있는 가상환경을 만들고 이를 jupyter-notebook kernel 로 올려서 사용할 생각입니다.scala, java 설치 & 버전 확인합니다. spark 는 scala 기반의 언어로 돌아가기 때문에 먼저 설치해주어야 합니다.
$ sudo apt-get install default-jre scala
$ java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-0ubuntu0.16.04.2-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
$ scala -version
Scala code runner version 2.11.6 -- Copyright 2002-2013, LAMP/EPFL
Apache Spark 설치~/download에 압축을 해제합니다.spark라는 이름으로 가상환경을 만들고 적용합니다.
$ pyenv virtualenv 3.6.4 sparks
$ pyenv virtualenv sparks
pyspark 와 findspark 를 설치합니다. pyspark 는 spark의 python API 라고 볼 수 있습니다.ipykernel 도 함께 설치해줍니다.
(sparks)$ pip install pyspark
(sparks)$ pip install findspark
(sparks)$ pip install ipykernel
(sparks)$ source deactivate
spark 환경변수를 .bashrc에 작성합니다.
export PYENV_ROOT="$HOME/.pyenv"
export SPARK_HOME="/home/ubuntu/download/spark-2.2.1-bin-hadoop2.7"
export PYTHONPATH="$SPARK_HOME/python:$PYTHONPATH"
export PATH="$SPARK_HOME/bin:$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
sparks 커널을 생성하여 jupyter-notebook에 적용시킵니다.
(sparks)$ python -m ipkernel installl --user --name=sparks
jupyter-notebook 에 kernel이 표시됩니다.http://jmedium.com/pyspark-in-python/
https://blog.sicara.com/get-started-pyspark-jupyter-guide-tutorial-ae2fe84f594f
https://www.dezyre.com/apache-spark-tutorial/pyspark-tutorial