首先要先定義乙個自定義的型別,實現scala提供的ordered介面並實現其方法,方法就是排序的邏輯。這裡我對兩列數字進行排序,**如下:
package cn.spark.study.core
class secondarysortkey(val first : int, val second : int) extends ordered[secondarysortkey] with serializable else } }
package cn.spark.study.core
import org.apache.spark.sparkconf
import org.apache.spark.sparkcontext
val sc = new sparkcontext(conf)
val lines = sc.textfile("", 1)
val pairs = lines.map
val sortedpairs = pairs.sortbykey();
val sortedlines = sortedpairs.map(sortedpair => sortedpair._2)
sortedlines.foreach
}
}
Spark的二次排序
1 資料樣本 1 52 4 3 61 3 2 11 14 2 45 4 11 3 23 5 12 6 13 2 排序規則 先按照第乙個字元排序,如果第乙個相同,再按照第二個字元排序 3 排序後的結果 1 31 5 1 14 2 12 4 2 45 3 63 23 4 11 5 12 6 13 4 s...
hadoop中的二次排序
hadoop 中的另一種定製的排序手段就是二次排序 對value進行排序 二次排序步驟如下 準備工作對乙個文字中資料進行排序,找出每年的最高氣溫 public void makedata throws ioexception fw.close 1.自定義組合key 將key和value組合在一起 自...
Hadoop Streaming二次排序
由於hadoop機器記憶體不足,所以需要把資料mapred進來跑。這樣,就需要,同乙個key下的輸入資料是有序的,即 對於keya的資料,要求data1先來,之後data2再來 所以需要對data進行二次排序。d stream.num.map.output.key.fields 2 這個,可以設定在...