为什么计算查询条件需要改组数据?

时间:2018-06-17 14:57:41

标签: apache-spark shuffle

通过更改参数“spark.sql.shuffle.partitions”,以下查询的性能会发生变化。以下查询是否需要改组?

  

从id为非空的表中选择count(*)

我遇到的另一个疑问是,下图中两个阶段之间的界线是什么。这是洗牌的重要性吗?

enter image description here

1 个答案:

答案 0 :(得分:1)

在第一阶段,所有任务计算单个任务级别计数,然后聚合计数已转移到第二阶段,其中第二阶段总结所有计数并给出最终计数。