目录
1、前言
要理解宽窄依赖,首先我们需要了解 Transformations,什么是 Transformations?在 Spark 中,核心的数据结构是不可变的,这意味着它们一旦创建就不能更改。这看起来可能是个比较奇怪的概念,如果不能更改,那要怎么使用它呢?要 "change"一个 DataFrame,我们必须提示 Spark 如何将我们拥有的 DataFrame 修改成我们想要的样子。这些操作称为 Transformations。Transformations 是使用 Spark 表达业务逻辑的核心。Transformations 有两种类型,一种是指定窄依赖关系的转换,另一种是指定宽依赖关系的转换。
2、宽窄依赖
2.1 窄依赖
由窄依赖关系组成的 Transformations (我们称为窄转换)是指每个输入分区只对一个输出分区有贡献的转换。窄转换的表示,如下图: