EMR Spark-SQL性能极致优化揭秘 Native Codegen Framework

**作者**:周克勇,花名一锤,阿里巴巴计算平台事业部EMR团队技术专家,大数据领域技术爱好者,对Spark有浓厚兴趣和一定的了解,目前主要专注于EMR ] v ? Q品中开源计算引擎的优化工作。
----
### 背景和) B ] X动机
SparkSQL多N K ` d 9 ^ m z [年来的性能优化集中在Optiq a U l 4 - z n *mizer和Runtime两个领域。前者P b e ^ y v X ; :的目的是为了获得最优的执行计划,后者的目的是针对既定的计划尽可能执行的更快。

相比于Runtime,Optimizer是更加通用的、跟实现无r ( Y m p 5关的优化。无~ u - G b ?论是Java世界(Spark, Hive)3 k G ] H R还是C++世界(Impala,? 1 K 2 * y e c MaxCompute),无论是Ba? 5 J N C ) g n ttch-Based(Spark, HiveI @ k o g G a 3 N)还是MPP-Based(Imc ? Q & 9 R m tpala, Presto),甚至无论是大数据领域还是传统数据库领域亦或HTAP领域(HyPer, AD