分析 Spark 的作业执行机制,建立了执行效率模型和 Shuffle 过程模型,给出了分配适应度(AFD, allocation fitness degree)的定义,提出了算法的优化目标。根据模型的相关定义求解,设计了渐进填充分区映射算法(PFPM, progressive filling partitioning and mapping algorithm),通过扩展式分区和渐进填充映射,建立适应 Reducer 计算 能力的数据分配方案,有效缩减 Shuffle 过程的同步延时,提高集群计算效率。实验表明该算法提高了 Shuffle 过 程数据分配的合理性,优化了并行计算框架 Spark 的作业执行效率。