雑記帳

ソフトを中心に雑記を書いてる割とすぐ転職したい人。コメント貰えると私が喜びます。

PythonとSparkであそぼ(1)

背景

<< 略 >>
今をときめくインメモリ分散処理エンジンSparkを使いたいなぁと思ったりそうでもなかったりするから。 SQLチックに使えたり、機械学習エンジンあるしなんかスゲーじゃん?

参考

またどっかの本読んでます。
本家サイトでEarlyReleaseのEbookを買って読んでいたけど、今のKindle価格の方が安かったりするというちょっと残念な話。

Learning Spark: Lightning-Fast Big Data Analysis

Learning Spark: Lightning-Fast Big Data Analysis

続きを読む

「はじめてのR」を頑張って読んだ(1)

背景

いつも通りのビッグデータがうんたらかんたら。 もうちょっと突っ込んでみると、疲れで頭が痛くなって、下を向いて机に突っ伏してたら足元にこの本が転がってたから。

参考

はじめてのR: ごく初歩の操作から統計解析の導入まで

はじめてのR: ごく初歩の操作から統計解析の導入まで

先に感想

値の代入の仕方とcsvの読み出し方くらいです。
入門部分なので、プログラマには殆ど必要ありません。
私は殆ど4章から読み始めました。

続きを読む

IPython NotebookでApache-Sparkを動かす

背景

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

やること

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

前提

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

環境

手順

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

f:id:fkei:20141221000403p:plain

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. なんか動いてる感じです。いえ〜い!

f:id:fkei:20141221000530p:plain

参考

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