返回
LEAP: A Low-cost Spark SQL Query Optimizer using Pairwise Comparison
DOI:10.14778/3712221.3712234.png)
摘要
En 中文
选择良好的执行计划可以显著提高Spark SQL的查询效率。虽然已有多种基于机器学习的技术被提出用于为数据库管理系统(DBMS)选择良好的执行计划,但由于以下问题,这些技术均未能在Spark SQL中表现良好:(1)与Spark SQL的兼容性有限:这些方法依赖物理算子枚举,而Spark SQL不支持该功能;(2)成本估算不可靠:由于成本估算不准确,它们常选择性能不佳的执行计划;(3)计划枚举耗时:它们在Spark SQL中生成大量候选执行计划时需要大量时间。为解决这些问题,本文提出LEAP,这是首个专为Spark SQL设计的基于学习的查询优化器,能够无缝集成到Spark SQL中并解决兼容性问题。此外,为避免不可靠的成本值估算,LEAP采用一种无估算的方法选择执行计划,该方法直接对计划进行比较。进一步地,LEAP采用高效的渐进式计划枚举算法,结合剪枝技术,以减少枚举次数并找到更优的计划。在三个公开基准上的广泛实验表明LEAP的有效性:它可将原生优化器的端到端执行时间最多减少54%,并将其他基于学习的方法的执行时间最多减少94%。
期刊
P
IF:
3.3
论文数:
563
被引数:
1.2W
机构
引用论文
ALECE: An Attention-based Learned Cardinality Estimator for SPJ Queries on Dynamic WorkloadsALECE:一种基于注意力机制的自学习基数估计器,用于动态工作负载上的SPJ查询

