1. 程式人生 > >IDEA搭建scala開發環境開發spark應用程序

IDEA搭建scala開發環境開發spark應用程序

編寫 運行程序 通過 https apach import input inf 搭建

一、idea社區版安裝scala插件

因為idea默認不支持scala開發環境,所以當需要使用idea搭建scala開發環境時,首先需要安裝scala插件,具體安裝辦法如下。

1、打開idea,點擊configure下拉菜單中的plugins選項:

技術分享圖片

2、在彈出對話框中點擊紅框按鈕:

技術分享圖片

3、在彈出最新對話框的搜索欄輸入scala,在篩選出的內容中選擇紅框部分,點擊右側install按鈕開始下載插件:

技術分享圖片

本人在測試過程中通過install自動下載插件失敗,最後選擇手動下載scala插件,然後通過步驟2中install plugin from disk選項,選擇手動下載zip包的方式安裝插件成功。

二、創建scala工程

1、下載scala安裝文件,並解壓到d:\目錄下:

https://downloads.lightbend.com/scala/2.10.6/scala-2.10.6.zip

2、打開idea開發工具,選擇“create new project”,創建一個新的工程:

技術分享圖片

3、下圖中選擇jdk版本、選擇scala、以及scala依賴包位置(scala安裝軟件位置),next:

技術分享圖片

4、輸入工程名稱並且選擇工程位置,點擊finash:

技術分享圖片

5、完成工程創建後如下:

技術分享圖片

三、配置scala工程

1、file->preject structure:

技術分享圖片

2、modulesàsrcànew folder方式創建文件夾:

技術分享圖片

3、完成文件創建後,點擊ok完成配置。

技術分享圖片

工程結構如下:

技術分享圖片

四、為工程導入spark jar包

1、首先解壓縮spark安裝包到d:\目錄下:

D:\spark-1.3.0-bin-2.5.0-cdh5.3.6

2、fileàproject structure:

技術分享圖片

3、在對話框選擇librariesà+àjava:

技術分享圖片

4、在彈出對話框內選擇spark解壓目錄,選中spark lib目錄下所有jar包,點擊ok導入所有jar包:

技術分享圖片

5、點擊ok,完成spark jar包導入scala工程:

技術分享圖片

技術分享圖片

五、編寫wordcount程序進行基準測試

1、在scala工程中創建packet,並且創建測試spark類,並且編寫wordcount程序代碼,如下:

package Chavin.King.SparkApp
import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark.SparkConf
object SparkDemo {
def main(args: Array[String]) {
val logFile = "hdfs://chavin.king:9000/user/hadoop/mapreduce/wordcount/input/wc.input"
val conf = new SparkConf().setAppName("Simple Application") //.setMaster("local")
val sc = new SparkContext(conf)
val rdd = sc.textFile(logFile)
val wordcount = rdd.flatMap(_.split(" ")).map((_,1)).reduceByKey(_ + _).map(x => (x._2,x._1)).sortByKey(false).map(x => (x._2,x._1))
wordcount.saveAsTextFile("hdfs://chavin.king:9000/user/hadoop/mapreduce/wordcount/output00000")
sc.stop()
}
}

截圖如下:

技術分享圖片

2、代碼完成之後,右鍵à選擇run “SparkApp”,運行程序進行功能測試。

3、打包SparkApp程序:

File—>preject structureàartifactsà+àJARàfrom modules with dependencies:

技術分享圖片

下圖中選擇要編譯的主類,點擊ok:

技術分享圖片

刪除output layout下的所有依賴jar包,並且指定output directory,點擊ok:

技術分享圖片

回到idea主頁面,點擊buildàbuild artifacts:

技術分享圖片

SaprkApp.jar—>build,進行jar包編譯:

技術分享圖片

編譯完成後到d:\下可以看到我們編譯的jar包。

4、測試編譯的jar包(SparkApp.jar):

4.1)刪除hdfs輸出目錄:

bin/hdfs dfs -rm -r hdfs://chavin.king:9000/user/hadoop/mapreduce/wordcount/output00000

4.2)spark-submit方式測試jar包:

bin/spark-submit \
--master yarn \
--deploy-mode client \
/opt/datas/SparkApp.jar

IDEA搭建scala開發環境開發spark應用程序