您好,登錄后才能下訂單哦!
清明假期折騰了兩天,總結了兩種方式使用IDE進行spark程序,記錄一下:
第一種方法比較簡單,兩種方式都是采用SBT進行編譯的。
注意:本地不需要安裝Scala程序,否則在編譯程序時有版本兼容性問題。
一、基于Non-SBT方式
創建一個Scala IDEA工程
我們使用Non-SBT的方式,點擊“Next”
命名工程,其他按照默認
點擊“Finish”完成工程的創建
修改項目的屬性
首先修改Modules選項
在src下創建兩個文件夾,并把其屬性改為source
下面修改Libraries
將Spark開發需要的jar包導進來
加入后:
導入包完成后,在工程的scala下面創建一個package
創建一個Object對象
構建Spark Driver代碼
該程序是對搜狗日志的處理代碼
接下來進行打包,使用Project Structure的Artifacts
使用From modules with dependencies
選擇Main Class
點擊“OK”
把名稱改為FirstSparkAppJar
因為每臺機器上都安裝了Scala和Spark,所以可以把Scala和Spark相關的jar文件都刪掉
接下來進行Build
選擇“Build Artifacts”
第一次選擇Build,以后同一個工程要選擇Rebuild,然后等待編譯完成
下面使用spark-submit運行程序
最后任務運行完成
二、基于SBT方式
開發工具下載
Spark開發需要以下開發編譯工具:
1、Scala IDE:本文以IntelliJ IDEA為例進行開發,下載地址:
https://www.jetbrains.com/idea/download/
2、SBT(Simple Build Tool)編譯工具下載:
http://www.scala-sbt.org/download.html
下載安裝后,在DOS下執行sbt命令下載其所需要的jar包:
默認jar包(.idea-build、.ivy2、.sbt)下載到C盤用戶目錄下
(注意:使用命令sbt進行下載時要確保網速,最好使用代理下載)
開發工具配置
1、IntelliJ IDEA開發配置:
(1) 下載Scala插件:選擇Configure下的Plugins進入下圖
選擇Install JetBrains plugin,搜索Scala進行下載。
(2) 創建基于SBT的Scala工程:
(3) 設置工程名稱以及Scala和SBT版本:
注意:
最好將Download兩個選項取消,否則會覆蓋之前用戶目錄下的SBTjar包,造成編譯不通過等錯誤
SBT和Scala的版本號在C盤用戶目錄下可以看出:
C:\Users\用戶\.sbt\boot\scala-2.10.4\org.scala-sbt\sbt\0.13.8
這里可以一次性設置正確,也可以后續修改配置文件(build.sbt修改scala版本,build.properties修改sbt版本)進行修改同步。
工程路徑不要使用中文,否則即使編譯成功打成jar包也無法執行。
(4) 基于SBT的Scala程序對工程的結構要求比較苛刻,需要建立如下目錄結構:
(5) 添加Spark插件:
注意:同時該插件需要添加到lib目錄下(操作系統復制即可)
準備工作完成,下面進行Spark程序開發
編寫代碼
下面以類wordcount程序為例:
編寫Spark程序:
請不要使用InteiiJ IDEA進行編譯(漢字導致后面編譯不過去)
編譯和執行
(1)使用SBT進行編譯和打包:
DOS下進入工程目錄下,使用sbt命令進行編譯和打包:
默認打的jar在工程目錄test\target\scala-2.10下
(2)將jar包上傳到服務器執行:
使用命令:
spark-submit --class test--master yarn test_2.10-0.1-SNAPSHOT.jar 100
更多的參數詳見官方文檔
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。