1. 程式人生 > >在windows中搭建spark單機版

在windows中搭建spark單機版

雖然要學習spark,選擇linux的版本更合適,之前在臺式機上配置了centos的虛擬機器並安裝了hadoop和spark,可是無奈筆記本效能不行,如果安裝虛擬機器會很卡,所以只能在windows中安裝spark加以練習

1.1、jdk安裝

安裝Oracle下的jdk,我安裝的是jdk 1.7,安裝完新建系統環境變數JAVA_HOME,變數值為“C:\Program Files\Java\jdk1.7.0_79”,視自己安裝路勁而定。

同時在系統變數Path下新增C:\Program Files\Java\jdk1.7.0_79\bin和C:\Program Files\Java\jre7\bin。

1.2 spark環境變數配置

解壓下載的檔案,假設解壓 目錄為:D:\spark-1.6.0-bin-hadoop2.6。將D:\spark-1.6.0-bin-hadoop2.6\bin新增到系統Path變數,同時新建SPARK_HOME變數,變數值為:D:\spark-1.6.0-bin-hadoop2.6

1.3 hadoop工具包安裝

spark是基於hadoop之上的,執行過程中會呼叫相關hadoop庫,如果沒配置相關hadoop執行環境,會提示相關出錯資訊,雖然也不影響執行,但是這裡還是把hadoop相關庫也配置好吧。

1.3.1 去下載hadoop 2.6編譯好的包,從官網選擇合適的版本

http://hadoop.apache.org/releases.html,我下載的是hadoop-2.6.0.tar.gz,

1.3.2 解壓下載的資料夾,將相關庫新增到系統Path變數中:D:\hadoop-2.6.0\bin;同時新建HADOOP_HOME變數,變數值為:D:\hadoop-2.6.0

(就算不用分散式系統也一定要安裝hadoop,否則無法執行單機版spark,強烈建議用迅雷下載以上軟體,直接下載會很慢)

2.1 安裝python,並新增到系統變數path中:C:\Python27和C:\Python27\Scripts

2.2 重複1.2和1.3步驟

2.3 將spark目錄下的pyspark資料夾(D:\spark-1.6.0-bin-hadoop2.6\python\pyspark)複製到python安裝目錄C:\Python27\Lib\site-packages裡(若使用的是anaconda,則放到anaconda相應資料夾下)

2.4 在cmd命令列下執行pyspark,然後執行pip install py4j安裝相關庫。 

完成上述步驟後一定要重啟電腦!!

2.5 使用spyder/pycharm,輸入以下程式碼就可以使用spark了:

from pyspark import SparkConf, SparkContext
conf =SparkConf().setMaster("local").setAppName("MY First App") 
sc = SparkContext(conf = conf)

若報錯:無法找到winutils.exe,則上網找相應的檔案放到Hadoop/bin目錄下即可

若報錯:無法連線Java伺服器,

則使用Eclipse或者Java執行下列程式,從Python/share中匯入py4j0.9.jar,啟動Java服務即可解決上述問題

import py4j.GatewayServer;

public class myTest {

    public static void main(String[] args) {
        myTest app = new myTest();
        // app is now the gateway.entry_point
        GatewayServer server = new GatewayServer(app);
        server.start();
    }
}