使用Spark Core匯入txt檔案並格式化輸出

2021-08-22 08:14:05 字數 1083 閱讀 6073

目標檔案loudacre.txt (檔案存於我的linux訓練機上面的 /home/training/documents/loudacre.txt ) 檔案的每行用乙個 tab 分割

**:

//匯入檔案

var trainingrecord = sc.textfile("file:///home/training/documents/trainingrecord.txt")

//使用tab分割,並轉化為k-value對,name為key,培訓時間(也就是每行第三個)為value

var quiz1 = trainingrecord.map(_.split('\t')).map(pair => (pair(0),integer.parseint(pair(2))))

//給每個name的出現次數計數

var quiz1_count = quiz1.map(line => (line._1,1)).reducebykey(_+_)

//對相同key的value進行求和

var quiz1_sum = quiz1.reducebykey(_+_)

//將quiz1_sum和quiz1_count進行求和,必須兩個key-value對的key相同才能這樣做,會變成(key,(value,value))結構

var quiz1_temp = quiz1_sum.join(quiz1_count)

//對quiz1_temp進行格式化,每行的每個字段之間用tab分割

var quiz1_res = quiz1_temp.map(line => line._1+"\t"+line._2._1+"\t"+(line._2._1/line._2._2)+"\t"+line._2._2)

//迴圈輸出格式化後的結果

quiz1_res.foreach(println)

//過濾出總時間大於8的結果並輸出

quiz1_sum.filter(line => line._2 > 8).foreach(println)

SparkCore之累加器的使用

2.自定義累加器 使用spark自帶的常用累加器的步驟 1 需求 給出乙個集合,list a 1 a 2 a 3 a 4 來統計單詞出現的次數,期望的輸出結果 a,10 2 需求分析 1 沒有使用累加器的情況 2 使用累加器的情況 3 實現 import org.apache.spark.rdd.r...

軟體使用 Windows平台開啟大容量txt檔案

軟體使用 windows平台開啟大容量txt檔案oc windows自帶記事本開啟大容量txt檔案 678mb 會卡住 經過漫長等待開啟 用notepad 200m的檔案開啟問題不大,notepad 的開啟上限估計為500m,600m的打不開,400m的可以1 直接把大容量txt拖到瀏覽器,只是作為...

一些spark core的使用筆記,供以後參考

關閉連線 延遲計算 資料的持久化 bin spark submit class org.apache.spark.examples.sparkpi master local 2 examples jars spark examples 2.12 3.0.0.jar 10 1 基本語法 bin spa...