在 Windows 上安裝 PySpark 保姆級教程
安裝 Python 或 Anaconda 發(fā)行版
?https://www.python.org/downloads/windows/
從 Python.org? 或 Anaconda 發(fā)行版 下載并安裝 Python, 其中包括 Python、Spyder IDE 和 Jupyter notebook。我建議使用 Anaconda,因為它很受機器學(xué)習(xí)和數(shù)據(jù)科學(xué)社區(qū)的歡迎和使用。
?https://www.anaconda.com/
推薦使用 Anaconda 安裝 PySpark 并運行 Jupyter notebook。
安裝 Java 8
要運行 PySpark 應(yīng)用程序,需要 Java 8 或更高版本,因此從 Oracle 下載 Java 版本并將其安裝在系統(tǒng)上。
?https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
安裝后設(shè)置 JAVA_HOME 和 PATH 變量。
在 Windows 上安裝 PySpark
PySpark 是一個用 Python 編寫的 Spark 庫,用于使用 Apache Spark 功能運行 Python 應(yīng)用程序。所以沒有 PySpark 庫可供下載。一切只需要 Spark。按照以下步驟在 Windows 上安裝 PySpark。
1. 在Spark下載頁面,選擇 Download Spark (第3點) 鏈接進(jìn)行下載。如果你想使用其他版本的 Spark 和 Hadoop,請從下拉列表中選擇你想要的版本,第 3 點上的鏈接會更改為所選版本,并為你提供更新的下載鏈接。
?https://spark.apache.org/downloads.html
2. 下載后,解壓二進(jìn)制文件并將底層文件夾復(fù)制 spark-3.0.0-bin-hadoop2.7? 到 c:\apps
3. 現(xiàn)在設(shè)置以下環(huán)境變量。
如果你還不知道如何在 Windows 上添加或編輯環(huán)境變量,請按照以下步驟操作。
1.打開編輯系統(tǒng)環(huán)境變量窗口,在高級選項卡下選擇環(huán)境變量。
編輯系統(tǒng)環(huán)境變量
2.在以下環(huán)境變量屏幕上,通過選擇新建選項添加 SPARK_HOME?、 HADOOP_HOME ?及 JAVA_HOME
3. 這將打開用戶變量窗口,可以在其中輸入變量名稱和值。
4.現(xiàn)在編輯PATH變量
5. 通過選擇新建選項添加 Spark、Java 和 Hadoop bin 路徑。
在 Windows 上安裝 winutils.exe
從winutils 下載 winutils.exe 文件 ,并將其復(fù)制到%SPARK_HOME%\bin文件夾中。Winutils 對于每個 Hadoop 版本都不同,因此請從下載正確的版本。
?https://github.com/steveloughran/winutils/blob/master/hadoop-2.7.1/bin/winutils.exe
PySpark shell
現(xiàn)在打開命令提示符并鍵入 pyspark 命令以運行 PySpark shell。應(yīng)該在下面看到類似的內(nèi)容。
Spark-shell 還創(chuàng)建了一個 Spark 上下文 Web UI,默認(rèn)情況下,它可以從 http://localhost:4041/ 訪問。
Web UI
Apache Spark 提供了一套 Web UI(Jobs, Stages, Tasks, Storage, Environment, Executors, and SQL)來監(jiān)控 Spark 應(yīng)用程序的狀態(tài)。
Spark Web UI
歷史服務(wù)器
歷史服務(wù)器,記錄你通過 spark-submit、pyspark shell 提交的所有 PySpark 應(yīng)用程序。在開始之前,首先需要設(shè)置以下配置 spark-defaults.conf
現(xiàn)在,通過運行在 Linux 或 Mac 上啟動歷史服務(wù)器。
如果在 Windows 上運行 PySpark,可以通過啟動以下命令來啟動歷史服務(wù)器。
默認(rèn)情況下,歷史服務(wù)器監(jiān)聽 18080 端口,你可以使用http://localhost:18080/從瀏覽器訪問它。
History Server
通過單擊每個 App ID,將在 PySpark Web UI 中獲取應(yīng)用程序的詳細(xì)信息。