返回
FOSS: A learned doctor for query optimization
DOI:10.1007/s00778-025-00947-3.png)
摘要
En 中文
查询优化器是数据库管理系统的一个关键组件,对用户体验和资源利用效率具有显著影响。为进一步提升查询优化器的性能,近期研究探索了深度学习的应用。这些方法要么从零开始以自底向上的方式学习构建执行计划,要么通过提示引导传统优化器的计划生成行为。尽管它们在某些工作负载上展现出有前景的结果,但往往存在训练效率低下或计划搜索空间受限的问题。为应对这些挑战,我们提出了FOSS,一种新颖的基于学习的查询优化框架。我们的核心见解在于:虽然传统优化器可能因估计误差产生次优计划,但针对特定次优节点进行微调就足以获得高效执行计划。FOSS采用基于强化学习的规划器来优化传统优化器生成的原始计划,通过一系列动作进行有针对性的修改。此外,还引入评估器来评估候选计划并选择最终执行计划。为加速规划器训练,我们将评估器和传统优化器整合构建模拟环境,从而能够快速生成高质量模拟经验以更新规划器。我们在PostgreSQL和MySQL上使用Join Order Benchmark、TPC-DS和Stack Overflow工作负载评估了FOSS的性能。实验结果表明,FOSS在延迟性能方面超越了现有最先进方法,在各项基准测试中,相较于PostgreSQL实现了1.30倍至9.09倍的总体延迟加速,相较于MySQL实现了1.35倍至7.14倍的总体延迟加速。
Keyword:
Query optimization
Deep learning
DBMS
Simulated environment
期刊
T
IF:
0
论文数:
36
被引数:
0
机构
引用论文
ALECE: An Attention-based Learned Cardinality Estimator for SPJ Queries on Dynamic WorkloadsALECE:一种基于注意力机制的自学习基数估计器,用于动态工作负载上的SPJ查询
Hit the Gym: Accelerating Query Execution to Efficiently Bootstrap Behavior Models for Self-Driving Database Management Systems健身房:加速查询执行以高效地为自动驾驶数据库管理系统引导行为模型

