在 Apache Spark 中,Transformation(转换)算子和 Action(行动)算子是 RDD(弹性分布式数据集)操作的两大核心类别。 它们最本质的区别在于:Transformation 是“惰性”(Lazy)的,只记录逻辑不执行;而 Action 是“触发器”,它会真正启动计算任务。 以下是详细的对比分析: 1. 核心定义与行为区别 | 特性 | Transformation (转换算子) | Action (行动算子) | | :--- | :--- | :--- | | 返回值 | 返回一个新的 RDD。 | 返回 非 RDD 的结果(如 Int, Array, Map)或无返回值(写入文件)。 | | 执行模式 | 惰性求值 (Lazy Evaluation)。不会立即触发计算。 | 立即执行。触发 Spark 提交 Job 并开始计算。 | | 作用 | 构建逻辑执行计划(DAG/血统)。 | 触发物理执行,将结果返回给 Driver 或写入外部存储。 | | 数量关系 | 一个 Spark 应用中可以有无限个 Transformation。 | 一个...