亞寵展、全球寵物產業風向標——亞洲寵物展覽會深度解析
705
2022-05-30
2.5 在Windows上安裝Spark
在Windows上安裝Spark比在Linux或Mac OS X上更麻煩一些,因為要先解決Python和Java等依賴的安裝。本例使用Windows Server 2012,也就是服務器版本的Windows 8.1。你需要有能解壓.tar.gz和.gz格式壓縮包的解壓工具,因為Windows對這些壓縮包格式沒有原生支持。7-Zip就是一款符合要求的工具,你可以從http://7-zip.org/download.html下載。等安裝好了所需的解壓工具,就請按如下步驟做:
1)安裝Python。如前所述,Windows中沒有預裝Python,所以需要自行下載并安裝。可以從https://www.python.org/getit/或者https://www.python.org/downloads/windows/獲取Python
的Windows安裝器。本例使用的Python版本是2.7.10,因此把C:\Python27作為安裝的目標路徑。
2)安裝Java。在本例中,你會下載并安裝最新版的Oracle JDK。可以從http://www.oracle.com/technetwork/java/javase/downloads/index.html下載針對Windows的安裝包。在Windows命令提示符中輸入java -version,如果看到返回了所安裝的版本信息,就說明Java已經正確安裝并可以通過系統的環境變量PATH訪問到。
3)下載并解壓Hadoop。從http://hadoop.apache.org/releases.html下載最新版本的Hadoop。解壓下載的包(使用7-Zip或者類似的解壓工具)到一個本地目錄中,比如C:\Hadoop。
4)安裝用于Windows的Hadoop二進制文件。為了能在Windows上運行Spark,你還需要幾個針對Windows編譯的Hadoop二進制文件,包括hadoop.dll和winutils.exe。Hadoop所需的這些Windows專用的庫和可執行文件可以從https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-winutils獲取。下載hadoop-winutils壓縮包,解壓到Hadoop安裝路徑的bin子目錄(C:\Hadoop\bin)下。
5)下載并解壓Spark。從https://spark.apache.org/downloads.html下載最新的正式版Spark,如例2.2所示。前面講過應該下載包含Hadoop支持的預編譯版本,其中Hadoop的版本需要和第3步中使用的版本對應。把Spark解壓到一個本地目錄中,比如C:\Spark。
6)關閉IPv6。以管理員身份運行Windows的命令提示符程序,并運行如下命令,關閉Java應用的IPv6功能:
如果你使用的是Windows PowerShell,你可以輸入下面所示的等價命令:
注意這些命令需要以本地的管理員身份執行。為了簡單起見,本例展示的所有配置項都在用戶層面進行設置。其實你也可以選擇把列出的這些設置應用到整個機器的層面。這樣,當系統中有多用戶時就都可以使用了。請查詢微軟官方的Windows文檔來獲取更多相關信息。
7)設置必要的環境變量。在Windows命令提示符里運行如下命令,設置環境變量HADOOP_HOME:
下面是使用Windows PowerShell提示符時的等價命令:
8)設置本地元數據存儲。你需要為本地元數據存儲創建一個文件夾,并設置適當的權限。第6章開始介紹Spark SQL時,會具體介紹元數據存儲的作用。就目前而言,只要從Windows或者PowerShell的命令提示符運行如下命令就行了:
9)測試安裝結果。打開一個Windows命令提示符頁面或PowerShell會話,修改工作路徑到Spark安裝路徑的bin目錄,如下所示:
接下來,輸入pyspark命令打開Spark的交互式Python shell:
圖2.3展示了使用Windows PowerShell時預期的輸出結果。
輸入quit()以退出該shell界面。
現在,在命令提示符里執行如下命令,來運行Spark內置的圓周率估算例程:
現在你應該會看到大量的信息型日志消息。在這些消息之中,你應該會看到類似如下消息的輸出:
恭喜!剛才你已經成功地在Windows上安裝并測試了Spark。
圖2.3 Windows PowerShell里運行的pyspark
Spark python spark Python
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。