有時候我們會在windows 下開發spark程序,測試程序運行情況,再部署到真實服務器中運行。
那么本文介紹如何在windows 環境中搭建簡單的基於hadoop 的spark 環境。 我的windows環境為 Win7 64位
第一步,安裝Python環境
這里不多講,我的環境為python 3.6
第二步,安裝Java 環境
我的環境為
C:\Users\Boss>java -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)
第三步:下載spark
-
下載Spark2.2.0,注意與操作系統版本一致
請注意:選擇了spark版本后會出現一個連接,如下圖紅色區域,此時竟然可以下載,但是這里下載的文件是不正確的,應該點擊此連接進入下一個頁面。
這里才是正確的下載地址。
第四步:安裝Spark
-
只需解壓程序包,並拷貝至存放路徑,注意安裝路徑中的文件夾名稱不要存在空格
配置環境變量
-
配置系統變量PATH,添加解壓后Spark 目錄下面的bin 和sbin 兩個目錄到PATH中
配置日志顯示級別 (這樣使得log日志輸出少很多)
-
選擇…\spark\conf\目錄下log4j.properties.template,復制為log4j.properties
-
將log4j.properties中,"INFO, console"改為"WARN, console"
第五步:配置Hadoop(這里並不需要配置一個hadoop 偽分布式,僅僅是為spark提供一個hadoop環境模塊而已)
下載地址為:https://github.com/LemenChao/Introduction-to-Data-Science/blob/master/Hadoop/hadoop.dll-and-winutils.exe-for-hadoop2.7.3-on-windows_X64-master.zip
安裝
只需解壓程序包,並拷貝至存放路徑,注意安裝路徑中的文件夾名稱不要存在空格
配置環境變量
- 增加用戶變量HADOOP_HOME,值是下載的zip包解壓的目錄,然后在系統變量path里增加$HADOOP_HOME\bin (此步驟如果沒有,則運行spark時會拋出Failed to locate the winutils binary in the hadoop binary path
java.io.IOException: Could not locate executable
null
\bin\winutils.exe in the Hadoop binaries 異常,因為運行環境需要根據HADOOP_HOME找到winutils.exe,由於win機器並沒有配置該環境變量,所以程序報 null\bin\winutils.exe
) -
配置系統變量PATH,添加Hadoop解壓后的bin 路徑 如c:/hadoop/bin到Path中
到此安裝完畢,本地具有了一個基礎Spark版本
如何測試
方法一:測試spark-shell
在cmd中輸入spark-shell,查看Spark版本信息
方法二:測試 pyspark
在cmd中輸入pyspark,查看Pyspark版本信息
方法三:運行自帶的Spark example測序
打開cmd,輸入spark-submit --class org.apache.spark.examples.SparkPi --master local [spark exmple 路徑]
比如我的路徑下,命令為(此example為計算pi值)
spark-submit --class org.apache.spark.examples.SparkPi --master local D:\tools\bigdata\spark243\examples\jars\spark-examples_2.11-2.4.3.jar