31 - Spark - coalesce算子

coalesce(numPartitions) 案例

  1. 作用:縮減分區數,用於大數據集過濾後,提高小數據集的執行效率。
  2. 需求:創建一個4個分區的RDD,對其縮減分區
package com.dark.spark.SparkStudent.Spark_RDD

import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}

object Spark31 extends App {
  // 設定Spark計算環境
  val config: SparkConf = new SparkConf().setMaster("local[*]").setAppName("WordCount")

  // 創建上下文
  val sc = new SparkContext(config)

  // 縮減分區前的數量
  private val listRDD: RDD[Int] = sc.makeRDD(1 to 16,4)

  println("縮減分區前="+ listRDD.partitions.size)

  // 縮減分區後的數量
  private val coalesceRDD = listRDD.coalesce(3)

  println("縮減分區後="+ coalesceRDD.partitions.size)


}

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