面向自适应细粒度参数调优的 Spark 优化器
分布式、并行与集群计算
2024-09-24 v3
摘要
随着 Spark 成为常见的大数据分析平台,其日益增长的复杂性使得众多参数的自动调优对性能至关重要。我们对 Spark 参数调优的工作尤其受到近期两大趋势的推动:基于运行时统计的 Spark 自适应查询执行(AQE),以及日益普及的 Spark 云部署(这使得成本-性能推理对终端用户至关重要)。本文介绍了我们设计的 Spark 优化器,该优化器控制新 AQE 架构中每个查询的所有可调参数以探索其性能优势,同时将调优问题置于理论上可靠的多目标优化(MOO)环境中,以更好地适应用户的成本-性能偏好。为此,我们提出了一种新颖的编译时/运行时混合方法,用于对多样且相关的 Spark 参数进行多粒度调优,以及一套建模和优化技术,以在满足云应用 1-2 秒的严格时间约束下解决 MOO 环境中的调优问题。使用 TPC-H 和 TPC-DS 基准测试的评估结果证明了我们方法的卓越性能: 在优先考虑延迟时,它在 0.7-0.8 秒的平均求解时间下,分别将 TPC-H 和 TPC-DS 的延迟降低了 63% 和 65%,优于仅降低 18-25% 延迟且求解时间为 2.6-15 秒的最具竞争力的 MOO 方法。 在延迟和成本之间转移偏好时,我们的方法主导了替代方法的解决方案,表现出对偏好变化的卓越适应性。
引用
@article{arxiv.2403.00995,
title = {A Spark Optimizer for Adaptive, Fine-Grained Parameter Tuning},
author = {Chenghao Lyu and Qi Fan and Philippe Guyard and Yanlei Diao},
journal= {arXiv preprint arXiv:2403.00995},
year = {2024}
}