SparkSQL在整个执行计划处理的过程中,使用了Catalyst 优化器。
1 基于RBO的优化
在Spark 3.0 版本中,Catalyst 总共有 81 条优化规则(Rules),分成 27 组(Batches),其中有些规则会被归类到多个分组里。因此,如果不考虑规则的重复性,27 组算下来总共会有 129 个优化规则。
如果从优化效果的角度出发,这些规则可以归纳到以下 3 个范畴:
SparkSQL在整个执行计划处理的过程中,使用了Catalyst 优化器。
在Spark 3.0 版本中,Catalyst 总共有 81 条优化规则(Rules),分成 27 组(Batches),其中有些规则会被归类到多个分组里。因此,如果不考虑规则的重复性,27 组算下来总共会有 129 个优化规则。
如果从优化效果的角度出发,这些规则可以归纳到以下 3 个范畴: