Spark學習筆記3(IDEA編寫scala代碼並打包上傳集群運行)


Spark學習筆記3

IDEA編寫scala代碼並打包上傳集群運行

我們在IDEA上的maven項目已經搭建完成了,現在可以寫一個簡單的spark代碼並且打成jar包

上傳至集群,來檢驗一下我們的spark搭建后是否真正可以使用了

1.今天就和大家寫一個計算π的spark代碼

下面我把已經寫好了的代碼放在下面,大家可以借以參考一下

 

 1 package day02
 2 
 3 import org.apache.spark.{SparkConf, SparkContext}
 4 import scala.math.random
 5 object SparkPi02 {
 6 
 7   def main(args: Array[String]): Unit = {
 8 
 9     val spark = new SparkContext( new SparkConf().setAppName("SparkPi02"))
10 
11     val slices = if (args.length > 0) args(0).toInt else 2
12 
13     val n = math.min(100000L * slices,Int.MaxValue).toInt
14 
15     val count = spark.parallelize(1 until n,slices).map { i =>
16 
17         val x = random * 2 - 1
18         val y = random * 2 - 1
19 
20         if (x * x + y * y < 1) 1 else 0
21 
22     }.reduce(_+_)
23 
24     println("Pi is roughly" + 4.0 * count / n)
25 
26     spark.stop()
27 
28   }
29 
30 
31 }
View Code

 

寫好我們的代碼之后還要做一件非常重要的事情,就是把這個代碼打包上傳到我們的集群里

2.這里來給大家演示一下如何把代碼打成jar包和上傳到集群的操作

有兩種方法可以打包

第一種:

把IDEA右側的一個叫maven project的目錄打開

打開之后點擊你的項目名稱,然后點擊lifecycle,點住clean和package,雙擊

之后自動開始打包

打包完成以后去項目的target下面查看一下包是否成功導出

上面可以看到已經成功的打包出來了,然后把打好的jar包上傳至集群某個文件夾下

然后到spark的bin目錄下執行命令:

./spark-submit \
--class 包名加類名 \
--master spark://節點名://7077 \
--jar包在你的集群的絕對路徑 \
參數值

回車,就開始執行jar包了,下面是結果的展示

到這里為止,我們已經成功的運行了!

轉載本文請和本文作者聯系,本文來自博客園一襲白衣一

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM