1. 程式人生 > >Windows10安裝spark(包括hadoop安裝)

Windows10安裝spark(包括hadoop安裝)

(作者:陳玓玏)

環境安裝

命令列中輸入java –version,看是否能正確輸出版本資訊,不能則需要安裝,可以自己搜尋一下Windows下java環境的安裝。

Scala安裝

Spark安裝

下載地址:http://spark.apache.org/downloads.html
在這裡插入圖片描述
我選擇的版本是spark-2.3.2-bin-hadoop2.7,下載後解壓,並把bin資料夾的路徑新增到環境變數的系統變數path中,如下:
在這裡插入圖片描述
此時即可使用spark,在命令列輸入spark-shell,結果如下:
在這裡插入圖片描述
(這個圖是另一個版本的,主要是為了說明沒安裝hadoop時候存在的問題)

這一步可能出現一個問題,就是報“此時不應有 java jdk1.8.0_152”的錯誤,可能是環境變數中JAVA_HOME有不可識別字符,考慮更換一下jdk檔案放置的路徑,比如我把jdk從C:\Program Files (X86)換到了C:\Program Files,然後對應地修改JAVA_HOME就可以正常輸入spark-shell了,最好是存放jdk的地址中都不要有空格。(參考文章:

https://www.jianshu.com/p/ba908e9abe69

此時的spark不是完整版的,因為還沒有安裝hadoop,所以是不能使用hadoop的功能,如果想要進一步提高使用效率,需要安裝hadoop。

安裝Hadoop

下載地址:http://hadoop.apache.org/releases.html
選擇一個版本的Hadoop下載到本地,並解壓,然後設定環境變數。這裡的環境變數有些不一樣,不僅要改path變數,還要新增一個HADOOP_HOME的變數。HADOOP_HOME設定為hadoop的根目錄C:\Program Files\hadoop-2.7.7,path中新增C:\Program Files\hadoop-2.7.7\bin。

$ls  #檢視git路徑下有些什麼檔案
$cd winutils   #開啟下載的winutils資料夾
$pwd   #檢視資料夾的路徑

找到這個路徑後,在路徑下找到對應版本的hadoop資料夾下的bin資料夾,替換你所使用的hadoop的bin資料夾,然後安裝就完成了~

完成後輸入spark-shell結果如下:
在這裡插入圖片描述
就不會提示winutils不能執行了。

視覺化spark管理介面

輸入以下網址即可檢視:
在這裡插入圖片描述
使用pyspark互動
在命令列視窗中輸入pyspark即可,結果如下:
在這裡插入圖片描述

在anaconda中使用pyspark

開啟spyder,在選單欄中找到tools-PYTHONPATH_manager,新增spark下的python路徑和python/lib路徑,如下圖:
在這裡插入圖片描述


解壓python\lib路徑下的py4j-0.10.7-src.zip壓縮檔案到當前資料夾,否則會報找不到py4j的錯,然後重啟spyder即可使用。

在執行時如果報錯sc沒有被定義。
程式中要加入下面的一段即可。

from pyspark import SparkContext
from pyspark import SparkConf
conf = SparkConf().setAppName("test")
sc = SparkContext(conf=conf)