內容

一、開發環境準

1.IDE工具選擇及安裝

2.Java SDK版本選擇及安裝

3.Spark語言 版本選擇及安裝

4.Spark的安裝程式

5.安裝Maven

6.安裝sbt

7.IDE的外掛選擇安裝及配置

二、從零開始建第一個Spark程式 - HelloSpark

1.建立Scala工程

2.新增Spark依賴的jar包

3.修改工程pom檔案,並更新依賴包

4.編寫Spark程式程式碼

5.IDE中編譯並本地測試HelloSpark程式

6.編譯jar包,並部署到Spark叢集執行

三、從github取工程,並快速搭建Spark開發環

1.github中clone工程

2.修改代編譯測試及打包

3.部署到Spark叢集

四、使用IDE及Github實現版本控制

1.建立github賬號

2.下載github並安裝

3.intellij idea配置github

4.intellij idea檢出github專案

5.修改代編譯測試

6.上傳專案到GitHub

一、開發環境準

IDE工具選擇安裝

主流的IDE開發環境有Scala-IDE(Eclipse)及IntelliJ IDEA兩種,開發者可以根據自己的喜好選擇。本演示所有的實驗是基於IntelliJ IDEA完成。

兩種工具下載地址分別如下:

·Scala-IDE (目前最新版4.4.1,Eclipse Luna 4.4.2)

·IntelliJ IDE (目前最新版2016.1)

選擇並安裝JDK

JDK可以選擇1.71.8。由於Oracle官方已停止了1.7版本的更新,建使用JDK1.8版本。

JDK1.7 下地址:

JDK1.8下地址:

適合開發環境系統的版本。如本例中使用的是Mac OS X系統,所以下載Mac OS版本。

接下來安裝JDK

配置Java執行

 

驗證jdk安裝成功

 

Spark發語言Scala 的選擇安裝

本演示中使用的是2.10.6版本 原因是Spark1.6版本使用的是scala2.10版本編譯的,如果使用scala2.11版本,開發者需要自己基於scala2.11版本編譯spark1.6的版本

 

驗證scala-2.10.6安裝包下載成功

安裝包到制定的目錄,並解壓縮

 

驗證完成後,並修改量,新增scala到path

 

新增SCALA_HOME,並新增Path

 

scala,確正常啟動scala命令列環境

 

Spark的安裝程式

Apache Spark的下地址:

 

 

安裝程式,並解壓縮

 

安裝Maven

最新版本下地址:

無需安裝,解即可。

安裝SBT

最新版本下地址:

無需安裝,解即可。

1.修改量,配置MAVEN_HOME / SBT_HOME, 並加入path

source ~/.bash_profile

IDE的外掛選擇安裝及配置

IntelliJ IDE,點“Configure”入配置介面

 

Search框中scala,在右現的外掛中選擇Scala的外掛進行安裝/更新。安裝完成後,IDE要求重啟。

 

重啟IDE後,選擇建新工程”,選擇Scala型,並出現如下圖的工程型別,則環境安裝成功。

 

二、從零開始建第一個Spark程式 - HelloSpark

建Scala工程

“新建工程”

 

選擇“Scala”型別

 

在工程名稱中填入工程名稱,如“HelloSpark”,並選擇合適的工程路徑,以及Java SDK及Scala SDK版本。這裡,我選擇了JDK最新版 1.8.0_92,SDK 2.10.6。然後點選完成。

 

然後進入IDE開發介面。

 

新增Maven框架支援

右鍵選擇工程名“HelloSpark”,然後“新增框架支援”

 

選擇新增“Maven”支援

 

pom檔案修改

新增後,工程會自動增加一個pom.xml檔案,如下:

 

1.修改工程pom檔案,並更新依賴包

接下來,我們需要對pom檔案進行修改,比如,增加repository,定義依賴等。

1)Haven Plugin

<plugins><plugin><artifactId>maven-compiler-plugin</artifactId><version>3.3</version><configuration><source>1.7</source><target>1.7</target></configuration></plugin></plugins>

因為本次演示的實驗主要是在CDH發行版上進行,所以選擇1.6.0-cdh5.7.0的依

2)Dependencies

<dependencies><!-- spark core --><dependency><groupId>org.apache.spark</groupId><artifactId>spark-core_2.10</artifactId><version>1.6.0-cdh5.7.0</version><scope