groupby
import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} //按照传入函数的返回值进行分组,将相同key对应的值放入一个迭代器 object groupbyRDD { def main(args: Array[String]): Unit = { //本地模式 val conf: SparkConf = new SparkConf().setAppName("My scala word count").setMaster("local") //创建spark上下文对象 val sc = new SparkContext(conf) //1)分组后的数据行程(k,v),k是函数的返回值,v是k对应的数据集 val listRDD: RDD[Int] = sc.makeRDD(1 to 10,2) val groupbyRDD: RDD[(Int, Iterable[Int])] = listRDD.groupBy(x=>x%2) groupbyRDD.collect().foreach(println) // (0,CompactBuffer(2, 4, 6, 8, 10)) // (1,CompactBuffer(1, 3, 5, 7, 9)) } }
posted on 2020-09-18 16:42 happygril3 阅读(171) 评论(0) 收藏 举报
浙公网安备 33010602011771号