Intelli Idea下 一個Spark的小例子
2、開啟終端,進入解壓後的idea目錄,執行bin下idea.sh
cd /opt/idea
bin/idea.sh
3、點選右下角的configure-plugins-Install JetBrains Plugins,找到Scala並Install
4、點選create new project新建專案,選擇建立scala程式,點選下一步,在Project JDK中選擇自己的JDK路徑,點選完成
5、點選選單欄ProjectStructure,在Modules中,右鍵src,在src下建main資料夾,再在main下面建一個scala資料夾,右鍵點選這兩個資料夾,將型別改為Source
在Libraries中,點新增-Java加入spark的jar包。如果沒有scalaJDK則還需點新增-scalaJdk
點選Apply和Ok儲存設定
6、右鍵scala資料夾,new-package新建包test1,然後右鍵test1 new-ScalaClass新建scala檔案,以下為scala內容,建立一個rdd並儲存在本地。
package test1
import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.SparkContext._
object test1 {
def main(args: Array[String]){
if(args.length == 0){
System.err.print("Usage:test1<file1>")
System.exit(1)
}
val conf = new SparkConf().setAppName("test1")
val sc = new SparkContext(conf)
//建立rdd並儲存到arg(0)指定的路徑下
val num = 1 to 10
val rdd1 = sc.parallelize(num)
rdd1.saveAsTextFile(args(0 ))
sc.stop()
}
}
7、點選選單欄ProjectStructure,在Artifas中點選綠色+ jar-from modules,指定main class為要執行的test1,點選確定
點選Build-Build Artifacts-Build,Build結束後,可以看到專案下out資料夾中有mytest.jar
開啟終端,切換到spark路徑下,將此jar包放到spark路徑下
cp /home/zyt/IdeaProjects/mytest1/out/artifacts/mytest1_jar/mytest1.jar
啟動master和worker,並提交程式碼,其中指定了引數為本地的路徑,即將rdd儲存到本地/home/mytest1下
bin/spark-submit --master spark://ubuntu:7077 --class test1.test1 mytest1.jar file:///home/mytest1
執行結果如下,可以看到程式碼已經成功執行
開啟網頁localhost:8080可以看到任務已經完成
然後開啟/home 可以看到有一個叫mytest1的資料夾,資料夾中有三個檔案
其中part-00000和part-00001中內容分別為12345和678910,說明rdd已經成功儲存。