Windows 中 Spark 環境搭建
環境:Win10 + Java (1.8.0_231) + Scala (2.12.10) + Hadoop (2.7.7) + Spark (spark-2.4.4-bin-hadoop2.7)
Java 環境與安裝
Oracle 官網 下載 JDK_8u231 (Java 8) ;
Oracle 官網賬號分享 (來自於網絡):
Oracle 帳號:[email protected],密碼:Oracle123
安裝後新建環境變量 JAVA_HOME:Java_Install_Path\jdk1.8.0_231
;
添加 %JAVA_HOME%\bin
到環境變量 Path 中 (沒有就新建) ;
系統變量或者用戶變量應該都行,可以瞭解一下系統變量和用戶變量的區別。
Tips:Java8 好像不用配置 classpath 變量了。
在 cmd 輸入 java -version
檢查 Java 是否安裝成功,出現類似下圖表示安裝成功:
Scala 安裝和配置
Scala 官網 下載 Scala (2.12.10) ;
安裝 Scala (Scala 會自動配置環境變量,沒有就手動配置 Scala_Install_Path\bin
到 Path 中);
cmd 輸入 scala -version
檢查 Scala 是否安裝成功,出現類似下圖表示安裝成功:
Tips:之前裝的 Scala2.11 出現了 error,不知道是不是和 Java8 不兼容,卸載之後安裝 Scala2.12 就好了。
Hadoop 安裝和配置
Hadoop releases 下載 Hadoop (2.7.7);
解壓後新建環境變量 HADOOP_HOME:Your_Hadoop_Path
,再配置 %HADOOP_HOME%\bin
到 Path 中;
直接配置到 Path 中應該也可以,不想試了。。。
cmd 輸入 hadoop
檢查 Hadoop 是否安裝成功,出現類似下圖表示安裝成功:
Spark 安裝和配置
Spark 官網 下載 Spark (我選擇的是 spark-2.4.4-bin-hadoop2.7.tgz);
解壓後新建環境變量 SPARK_HOME:Your_Spark_Path
,再配置 %SPARK_HOME%\bin
到 Path 中;
cmd 中輸入 spark-shell
檢查是否安裝成功;一般會出現類似 java.io.IOException: Counld not locate executable ... in the Hadoop binary path
的錯誤 (圖片來自網絡):
這是因爲缺少 winutil.exe,在 Github winutil 下載對應版本的 winutil.exe (我下的是 2.7.1 的),放在 bin 文件夾下。
再輸入 spark-shell
應該還會出現 WARN NativeCodeLoader:62 - Unable to load native-hadoop library for your platform...
類似的 warning (圖片來自網絡):
還需要在下載 winutil.exe 的地方再下載一個 hadoop.dll,放在同樣的 bin 文件夾下;
再重新運行,應該就沒有 warning 了:
pyspark 安裝和配置
如果用 Python 的話,在上面的配置完成之後,直接 pip install pyspark
應該就可以了,速度慢的話可更換源或者另尋他法。
在 cmd 輸入 pyspark
檢查是否安裝成功,可以再輸入 sc.parallelize(range(1000)).count()
測試一下 pyspark 是否能用 (會輸出 1000)。