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)

  

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM