[论文解读] How I Learned to Stop Worrying and Love Re-optimization
本文提出一种动态重优化策略,以解决由于基数估计不准确而引起的数据库查询优化中持续存在的性能瓶颈。通过在运行时使用更新的统计信息对长查询重新规划执行计划,该方法在连接顺序基准测试(Join Order Benchmark)中最慢的前20个查询上实现了27%的端到端延迟降低,仅通过最小的优化器修改便达成了近乎完美基数估计的大部分优势。
Cost-based query optimizers remain one of the most important components of database management systems for analytic workloads. Though modern optimizers select plans close to optimal performance in the common case, a small number of queries are an order of magnitude slower than they could be. In this paper we investigate why this is still the case, despite decades of improvements to cost models, plan enumeration, and cardinality estimation. We demonstrate why we believe that a re-optimization mechanism is likely the most cost-effective way to improve end-to-end query performance. We find that even a simple re-optimization scheme can improve the latency of many poorly performing queries. We demonstrate that re-optimization improves the end-to-end latency of the top 20 longest running queries in the Join Order Benchmark by 27%, realizing most of the benefit of perfect cardinality estimation.
研究动机与目标
- 探究为何现代基于代价的查询优化器在历经数十年改进后仍会产生次优执行计划。
- 评估重优化是否比改进基数估计或计划枚举更具实际可行性的性能提升路径。
- 测量在真实世界基准工作负载中,重优化对端到端查询延迟的影响。
- 评估现代数据库系统中重优化的风险与收益。
提出的方法
- 作者模拟了一种简单的重优化机制,即在查询执行超过阈值时长后触发执行计划的重新生成。
- 他们在连接顺序基准测试(JOB)上评估该方法,将重优化与PostgreSQL的默认优化器及完美基数估计(perfect-(n))进行对比。
- 仅对长查询应用重优化,避免对快速查询引入额外开销。
- 以相对于perfect-(17)的执行时间为基准,衡量性能改进程度。
- 作者分析了查询执行时间的分布,并识别出重优化导致性能退化的查询。
- 他们将重优化与逐步改进的基数估计(perfect-(n))进行对比,以评估收益递减现象。
实验结果
研究问题
- RQ1重优化是否能显著降低真实世界基准测试中性能较差的查询的端到端延迟?
- RQ2仅通过重优化,能实现完美基数估计的多少收益?
- RQ3重优化存在哪些性能风险?哪些查询最易发生性能退化?
- RQ4当结合越来越精确的基数估计时,重优化是否仍具有显著优势?
主要发现
- 在连接顺序基准测试中,重优化使最慢的前20个查询的端到端延迟降低了27%,达成了近乎完美基数估计的大部分优势。
- 即使对于三张表及以下表连接的基数估计达到完美(perfect-(3)),最慢查询的性能仍未见改善,表明仅靠更优的基数估计本身不足以解决问题。
- 重优化使基准测试中45%的查询执行时间得到改善,且在最慢查询上收益最大。
- 重优化最坏情况下的性能退化超过原始执行时间的100倍,但仅影响一个原始运行时间约为10ms的查询,因此整体影响可忽略不计。
- 当重优化与perfect-(5)估计结合时,性能相比仅使用perfect-(5)仅下降6%,表明其在大规模场景下风险极低。
- 研究结论认为,与追求完美基数估计相比,重优化是更具成本效益的性能优化路径。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。