第五章_Spark核心编程_Rdd_转换算子_keyValue型_sortByKey

2022/3/26 11:22:36

本文主要是介绍第五章_Spark核心编程_Rdd_转换算子_keyValue型_sortByKey,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.定义

  /*
  * 1.定义
  *     def sortByKey(ascending: Boolean = true, numPartitions: Int = self.partitions.length)
  *     : RDD[(K, V)] = self.withScope
  *     ascending : true-正序 false-逆序
  *     numPartitions : 排序完后,对结果数据的分区数
  *
  * 2.功能
  *     拉取所有分区节点的数据,根据 key对Rdd进行排序
  *
  * 3.note
  *     key的数据类型 必须实现 Ordered 接口(特质)
  * */

2.案例

  object sortByKeyTest1 extends App {

    val sparkconf: SparkConf = new SparkConf().setMaster("local").setAppName("distinctTest")

    val sc: SparkContext = new SparkContext(sparkconf)

    val rdd = sc.makeRDD(List(("a", 88), ("b", 95), ("a", 91), ("b", 93), ("a", 95), ("b", 98)), 2)
    rdd.saveAsTextFile("Spark_319/src/output/01")

    private val rdd2: RDD[(String, Int)] = rdd.sortByKey(false)
    rdd2.saveAsTextFile("Spark_319/src/output/02")

    println(rdd2.collect().mkString(","))

    sc.stop()
  }

 



这篇关于第五章_Spark核心编程_Rdd_转换算子_keyValue型_sortByKey的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程