glom用法

Spark glom 功能:该函数将RDD中每一个分区变成一个数组,并放置在新的RDD中,数组中元素的类型与原分区中元素类型一致

    val conf: SparkConf = new SparkConf().setMaster("local[*]").setAppName("mapPartitionsWithIndex1")
    val sc = new SparkContext(conf)
    val dataRDD = sc.makeRDD(List(
      1,2,3,4
    ),2)
    /*
    * 内部调用MapPartitionsRDD方法,把每个partition的元素从Iterator类型转换为Array类型之后再包装到迭代器中返回
    * */
    val data: RDD[Int] = dataRDD.glom().map(_.max)
    println(data.collect().sum)
    sc.stop()

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章