Spark RDD 编程全指南:从创建到算子实战
RDD(弹性分布式数据集)是 Spark 分布式计算的核心抽象,其编程模型基于转换算子(Transformations) 和行动算子(Actions) 实现数据处理。本文系统讲解 RDD 的创建方式、分区控制及核心算子的使用场景与实战示例,帮助开发者掌握 RDD 编程的核心技巧。
RDD 的创建方式
RDD 的创建是 Spark 编程的第一步,根据数据源不同,可分为从集合(内存)创建和从外部存储(文件)创建两大类。
1. 从集合(内存)创建 RDD
适用于本地测试或小型数据集,通过 SparkContext 的 parallelize 或 makeRDD 方法将内存集合转换为 RDD。
核心方法
parallelize(seq: Seq[T], numSlices: Int = defaultParallelism): RDD[T]makeRDD(seq: Seq[T], numSlices: Int = defaultParallelism): RDD[T](内部调用parallelize)
示例代码
1 | import org.apache.spark.{SparkConf, SparkContext} |
分区控制
numSlices 参数指定分区数,默认值为 Spark 配置的 spark.default.parallelism(未配置时为 CPU 核心数)。分区数决定并行计算的 Task 数量:
