scala中分組的算子的用法

val rdd= sc.parallelize(List(("tom",1),("jerry",3),("kitty",2),("tom",2)))
//1.根據傳入的參數進行分組
val rdd1:RDD[(String, Iterable[(String, Int)])] =rdd.groupBy(_._1)
println(rdd1.collect.toBuffer)
//2.根據key進行分區(對KV形式是使用) -->除了指定分組以後分區的數量以外, 還可使用自定義分區器
val rdd2: RDD[(String, Iterable[Int])] = rdd.groupByKey()
println(rdd2.collect.toBuffer)

  

相關文章
相關標籤/搜索