MacBook に spark を入れるには、brew install apache-spark 一発でできちゃった件

  • 17
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

今朝(朝3時ごろ)、以下の記事を立ててみましたところ、

スクリーンショット 2016-01-11 12.34.01.png

上記の記事よりも賢い環境構築のやり方について、以下のコメントご教示を頂きました。

ありがうございます!

comment.png


頂いたコメントを受けて、早速、やってみました

Mac Terminal
brew install apache-spark

a.png

apache-spark/1.5.2 が入った。brew update で、home-brew をアップデートすると、レポジトリが更新されて、最新版の 1.6.0 が入るのかもしれない。
( 参考 )
格納先のパスは、/usr/local/Celler/apache-spark/1.5.2
Scala, Python, R言語 の3つの言語に対応したそれぞれのシェルが同梱されている
  • spark-shell (Scala)
  • pyspark (python)
  • sparkR (R言語)

環境変数を確認

Mac Terminal
which apache-spark # 該当なし
which spark # 該当なし

more ~/.bash_profile
more ~/.bash_rc

b.png

環境変数にパスを通す

Mac Terminal
export SPARK_HOME=/usr/local/Celler/apache-spark/1.5.2
export PATH=$PATH:$SPARK_HOME/bin

export -p #環境変数の一覧を表示して、spark環境変数が登録されているかを確認

c.png

.bash_rcファイル と .bash_profileファイル にも書いておく

( 新規Terminal起動後 と PC次回ログイン時に環境変数設定を読み込むようにする )

Mac Terminal
echo 'export SPARK_HOME-/usr/local/Celler/apache-spark/1.5.2' >> ~/.bash_rc
echo 'export PATH=$PATH:$SPARK_HOME/bin' >> ~/.bash_profile

d.png

Mac Terminal
more ~/.bash_rc
more ~/.bash_profile

# source で、初回読み込んで設定を有効にする
source ~/.bash_rc
source ~/.bash_profile

# 環境変数の一覧を確認
export -p

# Terminal を一旦、抜ける
exit

e.png


Terminal を立ち上げ直して、環境変数が反映されているかを確認

SPARK_HOME, PATH どちらも /usr/local/Cellar/apace-spark/1.5.2 が登録されている。

Mac Terminal
more ~/.bash_rc
more ~/.bash_profile

export -p

which spark
which apache-spark

f.png

whichコマンドで確認した結果、 spark-shell の格納ディレクトリは、/usr/local/bin/spark-shell となっている。

Mac Terminal
which spark-shell

g.png

knoguchiさん がコメントを下さった通りです。


spark-shell は、
/usr/local/bin/spark-shell -> .../Cellar/apache-spark/1.6.0/bin/spark-shell
こんな感じでシンボリックリンクを作ってくれますのでインストールしたらすぐに使えるようになります。


Spark の動作確認をしてみます。

まずは、Scala用シェルの spark-shell から

Mac Terminal
spark-shell

# spark-shell の環境に入る
scala> :quit

h.png

動作、問題なし


次は、ディレクトリにある Python言語用シェル pyspark の動作を確認

Mac Terminal
ls $SPARK_HOME
ls $SPARK_HOME/bin

pwd
pyspark

## pyspark の環境に入る (Python version 2.7.10)
import numb as np
import scipy as sp
import matplotlib.pyplot as pet

quit()

i.png

j.png

Python 2.7.10 が入っている(最新版の3系ではない)

動作、問題なし


最後に、ディレクトリにある R言語用シェル sparkR の動作を確認

Mac Terminal
sparkR

k.png

Apache-spark (sparkR)
install.packages("randomForest")
library(randomForest)

l.png

Apache-spark (sparkR)
quit()

m.png

全て、問題なく動作しました。 :sunny: