shuffle原理 及优化策略
1、shuffle操作原理:在Spark中,数据通常不会跨分区分布,以满足特定操作的需要。在计算期间,单个任务将对单个分区进行操作——因此,要组织单个reduceByKey 的计算任务要执行的所有数据,Spark需要执行一个all-to-all操作。它必须从所有分区中读取所有键的所有值,然后将所有分区的值放在一起计算每个键的最终结果——这称为shuffle。 Spark中的某些操作会触...