最近看到一本 Spark 的書籍,書名是 Hadoop + Spark 大數據巨量分析與機器學習整合開發實戰。雖然不是在打廣告,但是看到後面的範例就覺得很有趣 XD,分析大數據來做電影推薦等等,就買來跟著實作看看。
這本書前半大概都是在告訴你怎麼架設 Hadoop 與 Spark,不過說真的,因為有很多設定檔要改,架設真的會花不少時間,好在裡面都講得很清楚,所以跟著步驟做就行拉。
這裡我記錄一下 Spark 的安裝方式,以及怎麼使用 Spark Notebook 這類圖形介面,來加速開發。
安裝 Spark 的方式
這邊有兩種安裝方式
- 安裝 Spark Notebook:已經把 Spark, Scala, Hadoop 等等包起來了,裝好就能用 GUI 介面操作,適合測試用。
- 傳統方式安裝:慢慢安裝,要做些設定,能自己掌握架設的細節。
安裝 Spark Notebook
對於試玩 Spark 的我,跑 standalone 就足夠了,而且 Spark Notebook 就類似 iPython 那種介面,馬上就能把程式編譯執行,是相當有幫助的工具。
可以參考 spark notebook github,上面有詳盡的安裝方式,這裡我用的是 Quick start
直接進入下載頁面,選擇想要的版本下載
因為我使用的是 Ubuntu,而且 Hadoop 2.6.0 之前用過,所以下載 spark-notebook_0.6.2-scala-2.11.7-spark-1.6.0-hadoop-2.6.0。記得要先裝 Java。
$ sudo apt-get install openjdk-7-jdk
$ wget https://s3.eu-central-1.amazonaws.com/spark-notebook/deb/spark-notebook_0.6.2-scala-2.11.7-spark-1.6.0-hadoop-2.6.0_all.deb
$ sudo dpkg -i spark-notebook_0.6.2-scala-2.11.7-spark-1.6.0-hadoop-2.6.0_all.deb
下載完解壓縮,執行 spark-notebook 即可使用,GUI 介面預設會開在 port 9000
$ spark-notebook
打開瀏覽器,進入 IP:9000,會看到 Spark Notebook 的網頁畫面 按下右上方的 new,新增一個 Scala 檔案
舉簡單的例子,把 list [1, 2, 3] 放進 RDD,然後顯示出來。
用 Notebook 的好處是,他可以直接幫你畫圖型出來,不用自己去搞畫圖,對於開發實在很方便!
傳統安裝方式
這邊裝的一樣也是 standalone,依序安裝 Java, Scala, Spark
$ sudo apt-get install openjdk-7-jdk
$ sudo apt-get install scala
接著到官網下載 Spark Pre Build 版本安裝 Spark
$ wget http://apache.stu.edu.tw/spark/spark-1.6.1/spark-1.6.1-bin-hadoop2.6.tgz
$ tar xvf spark-1.6.1-bin-hadoop2.6.tgz
設定環境變數
$ vim ~/.bashrc
export PATH="$PATH:/usr/local/spark/bin"
如果是要安裝 iSpark 或是比較詳細的做法,可以參考大數學堂的影片