spark 例子wordcount topk

spark 例子wordcount topk


例子描述:spa

【單詞計算wordcount 】
【詞頻排序topk】code

單詞計算在代碼方便很簡單,基本大致就三個步驟排序

  • 拆分字符串
  • 以須要進行記數的單位爲K,本身拼個數字1爲V,組成一個映射或者元組
  • 分組(groupByKey)

詞頻排序字符串

  • 將分組後的數據進行排序

代碼片斷:get

/* 單詞計算wordcount */

val input = Source.fromFile("E:/test.txt").getLines.toArray

val wc = sc.parallelize(input)       /* spark單機讀取數據 */
.flatMap(_.split(" "))               /* 拆分數據,以空格爲拆分條件 */
.map((_,1))                          /* 將拆分的每一個數據爲K,本身建立個1爲V */
.reduceByKey(_+_)                    /* 這裏我喜歡叫分組 */
.foreach(println)                    /* 輸出 */
/* 詞頻排序topk */

val input = Source.fromFile("E:/test.txt").getLines.toArray

val topk = sc.parallelize(input)     /* spark單機讀取數據 */
.flatMap(_.split(" "))               /* 拆分數據,以空格爲拆分條件 */
.map((_, 1))                         /* 將拆分的每一個數據爲K,本身建立個1爲V */
.reduceByKey(_+_)                    /* 這裏我喜歡叫分組 */
.sortBy(_._2,false)                  /* 根據分組後數據第2位數據進行排序 */
.take(5)                             /* 只取前5位 */
.foreach(println)                    /* 輸出 */
相關文章
相關標籤/搜索