package com.atguigu.bigdata.spark.core.rdd.builder
import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}
object Spark01_RDD_Memory_Par {
def main(args: Array[String]): Unit = {
// TODO 准备环境
// local[*] *表示当前系统最大可用核数 如果直接写local表示多线程模拟单核
val sparkConf = new SparkConf().setMaster("local[*]").setAppName("RDD")
// 配置分区数量
// sparkConf.set("spark.default.parallelism","5")
val sc = new SparkContext(sparkConf)
// TODO 创建RDD
// RDD的并行度 & 分区
// makeRDD方法可以传递第二个参数,这个参数表示分区的数量
// 第二个参数可以不传递,那么makeRDD方法会使用默认值:defaultParallelism(默认并行度)
// spark在默认情况下,从配置对象中获取配置参数:spark.default.parallelism
// 如果获取不到那么使用totalCores属性,这个属性取值为当前运行环境的最大可用核数
// val rdd=sc.makeRDD(List(1,2,3,4),2)
val rdd = sc.makeRDD(List(1, 2, 3, 4))
// 将处理的数据保存成分区文件
rdd.saveAsTextFile("output")
// 关闭环境
sc.stop()
}
}
spark-并行度 & 分区(分区的设定)
最新推荐文章于 2023-09-23 17:04:01 发布