Hadoop Sparkを簡単にセットアップし、試してみる方法をまとめました.
1.前提
Dockerを利用します.まだインストールを済ませていない方はこちらから.
Hadoopは事前に用意しておく必要はありません.
2.Sparkのインストール
Sparkが利用可能なdockerのイメージファイルを取得します.
1 |
<span class="line">docker pull sequenceiq/spark:latest</span> |
イメージファイルを実行すると、sparkがインストールされたCentOSのコンソールが表示される.
1 |
<span class="line">docker run -i -t -h sandbox sequenceiq/spark /etc/bootstrap.sh -bash</span> |
Sparkがインストールされた場所まで移動する.
1 |
<span class="line">cd /usr/local/spark</span> |
Sparkを対話モードで起動させる.
Scalaを利用する場合
1 2 |
<span class="line">./bin/spark-shell </span> |
Pythonを利用する場合
1 |
./bin/pyspark |
起動ができれば、Sparkの利用は完了です.
適当なサンプルコードを実行してみてください.
注意
Sparkの公式にあるサンプルコードを実行しようとすると、count()のところでエラーが発生する
1 2 |
<span class="n">scala</span><span class="o">></span> <span class="k">val</span> <span class="n">textFile</span> <span class="k">=</span> <span class="n">sc</span><span class="o">.</span><span class="n">textFile</span><span class="o">(</span><span class="s">"README.md"</span><span class="o">)</span> scala> textFile.count() |
エラー
org.apache.hadoop.mapred.InvalidInputException:
Input path does not exist: hdfs://sandbox:9000/usr/local/spark/README.md
これは、/usr/local/hadoop/etc/hadoop/core-site.xmlに記載のされているfs.defaultFSの設定が原因です.
このプロパティ自体をコメントアウトすれば正常に実行できるようになります.
1 2 3 4 5 6 |
<configuration> <!-- <property> <name>fs.defaultFS</name> <value>hdfs://sandbox:9000</value> </property> --> </configuration> |
Pingback: Apache Sparkで初めてのアプリケーション作成AICS | AICS
Pingback: Spark の情報まとめAICS | AICS