IPython NotebookでApache-Sparkを動かす

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

背景

ビッグデータとかリアルタイム解析とかデータマイニングとか機械学習とか、皆が面白そうにブログ書いてたり話してたりしてるから興味あるんですよ。面白そうなんですよ。
で、個人的に興味があって調べていますというただそれだけです。
下手の横好き以下なので、何をいまさらレベルのことをやりながら楽しんでます。
※ 前回の投稿と同じです

やること

IPython NotebookでApache-Sparkを動貸せるように設定するだけです。
ググれば色々出てくるけど自分の近くに置いておきたいのでメモ。
さっき知ったけど、sparkの1.2.0が出てたので既に微妙に古い。
けどどうせ同じで大丈夫と思ってる。

前提

  • PCローカルで動かすこと
  • IPython Notebookが起動出来ること

環境

  • Windows 7 / Mac OS X Yosemite / Ubuntu 14.11
    • 全部64bit

手順

  1. Sparkをダウンロードしてきてどっかにコピーする、もしくはインストールする

    スクリーンショット 2014-12-20 23.26.53.png

    Homebrewでインストールすると/usr/local/Cellar/apache-spark/1.1.1に置かれるご様子。

  2. 環境変数にSPARK_HOMEを設定する

    export SPARK_HOME="sparkを解凍したフォルダ"
    
  3. IPythonのプロファイルを作る

    $ ipython profile create pyspark
    
  4. IPython環境のプロファイルのstartup/00-pyspark-setup.pyを編集する

    #coding:utf-8
    import os
    import sys
    
    os.environ['SPARK_HOME'] = '/usr/local/Cellar/apache-spark/1.1.1'
    spark_home = os.environ.get('SPARK_HOME', None)
    if not spark_home:
        raise ValueError('SPARK_HOME environment variable is not set')
    sys.path.insert(0, os.path.join(spark_home, 'libexec/python'))
    sys.path.insert(0, os.path.join(spark_home, 'libexec/python/lib/py4j-0.8.2.1-src.zip'))
    execfile(os.path.join(spark_home, 'libexec/python/pyspark/shell.py'))
    

    私の環境では設定ファイルは~/.ipython/profile_pysparkにあります。 py4j-0.8.2.1-src.zipはバージョンによって違うから書き換えましょう。
    Windowsではユーザフォルダあたりにあった気がします。

  5. 起動してみる

    $ ipython notebook --profile=pyspark
    
  6. なんか動いてる感じです。いえ〜い!

    クリー.png

参考

http://blog.cloudera.com/blog/2014/08/how-to-use-ipython-notebook-with-apache-spark/