在Spark 3.0中,AQE框架具有以下三个功能:
-
Dynamically coalescing shuffle partitions (动态整合shuffle partitions 数量)
-
Dynamically switching join strategies ( 动态切换连接策略 )
-
Dynamically optimizing skew joins ( 动态优化倾斜连接 )
以下各节将详细讨论这三个功能。
Dynamically coalescing shuffle partitions
在Spark中运行查询来处理非常大的数据时,shuffle通常会对查询性能产生非常重要的影响。Shuffle是一种昂贵的操作,因为它需要在网络中移动数据,以便以下游操作所需的方式重新分发数据。