- Spark SQL入門與實踐指南
- 紀涵
- 853字
- 2019-12-06 16:38:17
2.1 Spark的簡易安裝
搭建Spark之前需要讀者先安裝好Hadoop,由于這個環境用于本書學習,這里建議部署單機或者偽分布式的Hadoop。另外,關于Hadoop的安裝這里不予以介紹,大家可自行搜集Hadoop安裝教程,確保HDFS能正常使用即可。Spark 2.2.0官網中明確表明了:Spark 2.2.0不支持Java 7、Python 2.6以及Hadoop 2.6.5之前的版本。筆者使用的系統是CentOS 7、Java 8、Hadoop 2.7.3,這里配的Spark是單機模式。
下載Spark安裝包。
進入Spark的下載頁面https://spark.apache.org/downloads.html,如圖2-1所示。

圖2-1
按圖片上的指示將安裝包下載解壓到你喜歡的地方即可。
編輯解壓之后的Spark文件夾中的conf文件夾下的spark-env.sh和slaves文件。
什么?沒有這兩個文件?別擔心,看到conf文件夾下的spark-env.sh.template、slaves.template這兩個文件了嗎?這是模板文件,我們將其復制并改名即可,參考如下命令:

然后編輯spark-env.sh文件,如圖2-2所示。


圖2-2
為什么要配置SPARK_DIST_CLASSPATH這個變量呢?
因為我們剛剛選擇的Spark版本是Hadoop Free版本,Spark使用Hadoop的HDFS和YARN庫。Spark自從1.4版本之后就允許我們將Spark和任意版本的Hadoop連接起來(雖說是任意版本但Spark對Hadoop版本還是有一定要求的。比如Spark 2.2.0官方文檔的overview中有這么一句話:Note that support for Java 7, Python 2.6 and old Hadoop versions before 2.6.5 were removed as of Spark 2.2.0),但是需要我們配置SPARK_DIST_CLASSPATH這個變量。詳情請看圖2-3。

圖2-3
編輯slaves文件:

在末尾加上本機的IP,比如127.0.0.1。
啟動Spark,運行spark-shell。
運行spark根目錄下sbin文件夾中的start-all.sh,如圖2-4所示。

圖2-4
運行firefox localhost:8080 &命令即可查看Web UI(不同端口的Web UI作用不一樣),如圖2-5、圖2-6所示。(建議讀者們多了解一下Web UI)

圖2-5

圖2-6
這時如果在終端中進入spark-shell運行則會報錯,因為需要先啟動Hadoop的HDFS再啟動spark-shell。啟動完HDFS之后,我們來運行一下spark-shell。
圖2-6是Spark Shell的啟動界面。我們成功地進入了spark-shell,注意紅方框的內容。
(1)此時4040端口的Web UI(localhost:4040)可以訪問了(Spark Shell運行時和Spark作業運行時該UI才能正常訪問),讀者可以去看看,熟悉一下Web UI的界面。
(2)spark-shell啟動的時候會自動創建SparkContext以及SparkSession的實例,變量名分別為sc和spark,可以在spark-shell中直接使用。
輸入“:help”可以查看spark-shell的命令幫助,如圖2-7所示。

圖2-7
輸入“:quit”可以退出spark-shell。
建議多在spark-shell中練習。
運行SparkPI實例程序,驗證Spark是否能正常運行(見圖2-8)。


圖2-8
在輸出日志的底部可以看到運行的結果,如圖2-9所示。

圖2-9
至此,Spark的簡易搭建就完成了。
- 課課通計算機原理
- Splunk 7 Essentials(Third Edition)
- 網上沖浪
- Managing Mission:Critical Domains and DNS
- 走入IBM小型機世界
- Security Automation with Ansible 2
- WordPress Theme Development Beginner's Guide(Third Edition)
- Mastering ServiceNow Scripting
- Mastering Ceph
- Web編程基礎
- 基于人工免疫原理的檢測系統模型及其應用
- ADuC系列ARM器件應用技術
- Access 2007數據庫入門與實例應用金典
- 當產品經理遇到人工智能
- 數據結構與實訓