弹性分布式数据集(RDD,Resilient Distributed Dataset)是Apache Spark的一个核心概念和基本抽象。它代表了一个不可变、分布式的数据集合,可以在集群的多个节点上并行处理。RDD的设计目标是提高大规模数据处理的效率和容错能力。以下是RDD的一些关键特性:
- 不可变性:一旦创建,RDD的数据就不能被修改。任何对数据的转换操作都会产生一个新的RDD。这种特性有助于容错和数据一致性。
- 分布式:RDD中的数据被分割成多个分区,这些分区可以在集群的不同节点上并行处理。
- 容错性:RDD通过一种称为“血统”的机制来提供容错能力。血统记录了从原始数据集到当前RDD的所有转换步骤,如果某个分区的数据丢失,可以使用血统信息来重新计算丢失的数据。
- 懒惰求值: