基于学习费用的跨引擎 SQL 工作负载优化器
数据库
2025-06-04 v1 机器学习
摘要
Lakehouse 系统允许使用多个执行引擎对同一数据进行查询。然而,选择最适合运行 SQL 查询的引擎仍需要对查询计算需求和引擎能力进行先验知识,这一任务复杂且需要手动完成,随着新型引擎和工作负载的出现,这一难度更加增加。为此,本文提出一种基于学习费用模型的跨引擎优化器,通过自动化引擎选择来适应多样化的 SQL 查询。优化后的查询计划用于查询费用预测和路由。费用预测被建模为多任务学习问题,模型架构中包含多个预测头,对应不同引擎和配置。该方法无需为每个引擎训练专门模型,可在最小微调成本下灵活添加新引擎。在 various 数据库和引擎上实验表明,使用优化后的逻辑查询计划进行费用估计,相比使用未优化计划时平均 Q-误差可降低最高 12.6%。此外,与随机路由相比,所提出的跨引擎优化器在零样本设置下可降低最高 25.2%的总体工作负载运行时间,在少样本设置下可降低最高 30.4%。
引用
@article{arxiv.2506.02802,
title = {A Learned Cost Model-based Cross-engine Optimizer for SQL Workloads},
author = {András Strausz and Niels Pardon and Ioana Giurgiu},
journal= {arXiv preprint arXiv:2506.02802},
year = {2025}
}
备注
6 pages