MonoM: Enhancing Monotonicity in Learned Cardinality Estimators
University of Wisconsin–Madison(威斯康星大学麦迪逊分校);Harvard University(哈佛大学);University of Texas at Austin(德克萨斯大学奥斯汀分校)
本文提出MonoM指标和单调性训练框架,通过正则化项提升学习基数估计器的单调性和准确性。
2025-10-15 cs.DB
CardOOD: Robust Query-driven Cardinality Estimation under Out-of-Distribution
The Chinese University of Hong Kong(香港中文大学);Beijing Institute of Technology(北京理工大学)
针对查询驱动基数估计的分布外性能下降问题,提出通用鲁棒学习框架CardOOD,拓展三类学习技术并设计利用基数偏序约束的自监督算法,实验验证有效且已集成至PostgreSQL。
2024-12-08 cs.AI cs.DB
PACE: Poisoning Attacks on Learned Cardinality Estimation
本文研究了学习型基数估计模型的安全风险,提出黑盒投毒攻击方法PACE,通过注入恶意查询至历史工作负载,使模型准确率下降178倍,端到端性能下降10倍。
2024-09-24 cs.CR cs.DB
An Empirical Analysis of Deep Learning for Cardinality Estimation
我们通过研究几种架构之间的准确性,空间和时间权衡,实现和评估用于基数估计的深度学习。我们发现,简单的深度学习模型可以在各种数据集上学习基数估计(与PostgreSQL相比,平均减少72% - 98%的误差)。此外,我们还根据经验评估了将深度学习模型生成的基数估计值注入PostgreSQL优化器的影响。在许多情况下,这些模型的估计可以在所有数据集上实现更好的查询计划,从而将选择项目连接工作负载的运行时间减少高达49%。尽管这些模型很有前途,但我们也讨论并解决了在实践中使用它们所面临的一些挑战。
2019-09-12 cs.DB
LMKG: Learned Models for Cardinality Estimation in Knowledge Graphs
准确的基数估计是实现最佳查询计划的关键因素。对于RDF引擎,特别是在常见的知识图谱处理工作负载下,缺乏模式、相关谓词以及涉及多个连接的各种类型的查询,使得基数估计成为一项特别具有挑战性的任务。在本文中,我们开发了一个框架,称为LMKG,采用深度学习方法,有效地估计RDF图查询的基数。我们采用两种监督(即,深度神经网络)和无监督(即,自回归模型)方法,其适应于子图模式并产生更准确的基数估计。为了将底层数据提供给模型,我们提出了一种新的编码,将查询表示为子图模式。通过对真实世界和合成数据集的广泛实验,我们评估了我们的模型,并表明它们在准确性和执行时间方面总体上优于最先进的方法。
2021-02-21 cs.DB
FactorJoin: A New Cardinality Estimation Framework for Join Queries
Massachusetts Institute of Technology(麻省理工学院)
基数估计是查询优化中最基本也是最具挑战性的问题之一。无论是经典的还是基于学习的方法在估计连接查询的基数时都不会产生令人满意的性能。它们要么依赖于简化的假设,导致无效的基数估计,要么构建大型模型来理解数据分布,导致规划时间长,缺乏跨查询的通用性。在本文中,我们提出了一个新的框架FactorJoin估计连接查询。FactorJoin结合了经典的join-histogram方法背后的思想,以有效地处理joins与基于学习的方法,以准确地捕获属性相关性。具体来说,FactorJoin扫描数据库中的每个表,并在离线准备阶段构建单表条件分布。当连接查询到来时,FactorJoin将其转换为学习分布上的因子图模型,以有效地估计其基数。与现有的基于学习的方法不同,FactorJoin不需要预先对连接进行反规范化,也不需要执行查询工作负载来训练模型。由于FactorJoin只依赖于单表统计数据,因此它的空间开销很小,并且非常容易训练和维护。在我们的评估中,FactorJoin可以比以前最先进的基于学习的方法产生更有效的估计,估计延迟减少40倍,模型大小减少100倍,训练速度加快100倍,精度相当或更高。此外,FactorJoin可以在一秒钟内估计10,000个子计划查询,以优化查询计划,这与商业DBMS中传统的基数估计器非常接近。
2022-12-11 cs.DB cs.LG
SafeBound: A Practical System for Generating Cardinality Bounds
最近的工作再次强调了基数估计对查询优化的重要性。虽然随着时间的推移,新技术的准确性不断提高,但它们通常仍然允许低估,这通常会导致优化器做出过于乐观的决策。对于昂贵的查询,这可能代价很高。另一种估计方法是基数边界,也称为悲观基数估计,其中基数估计器提供真实基数的保证上限。通过从不低估,这种方法允许优化器避免潜在的低效计划。然而,现有的悲观基数估计器还不实用:它们使用非常有限的数据统计数据,并且不能处理谓词。在本文中,我们介绍SafeBound,第一个实用的系统生成基数界限。SafeBound建立在最近的理论工作,使用连接属性的度序列来计算基数界限,扩展了这个框架与谓词,介绍了一个实用的压缩方法的度序列,并实现了一个有效的推理算法。在四个工作负载中,SafeBound实现了比PostgreSQL低80%的端到端运行时间,并且通过改进昂贵查询的运行时间,与最先进的基于ML的估计器和悲观基数估计器相当或更好。与最先进的基数估计方法相比,它还节省了高达500倍的查询规划时间,并使用了高达6.8倍的空间。
2022-11-17 cs.DB
Are We Ready For Learned Cardinality Estimation?
Simon Fraser University(西蒙菲莎大学);Tencent Inc.(腾讯公司)
基数估计是查询优化中的一个基本问题,但长期未得到解决。最近,来自不同研究小组的多篇论文一致报告说,学习模型有可能取代现有的基数估计。在本文中,我们提出了一个前瞻性的问题:我们准备好在生产中部署这些学习到的基数模型了吗?我们的研究包括三个主要部分。首先,我们关注静态环境(即,无数据更新),并在统一的工作负载设置下,在四个真实世界的数据集上比较五种新的学习方法和八种传统方法。结果表明,学习模型确实比传统方法更准确,但它们通常具有较高的训练和推理成本。其次,我们探索这些学习的模型是否为动态环境做好了准备(即,频繁的数据更新)。我们发现,他们不能赶上快速的数据更新,并返回大的错误,由于不同的原因。对于不太频繁的更新,它们可以表现得更好,但它们之间没有明显的赢家。第三,我们更深入地研究学习模型,并探索它们何时可能出错。我们的研究结果表明,学习方法的性能可以很大程度上影响的相关性,偏度,或域大小的变化。更重要的是,他们的行为更难解释,而且往往不可预测。基于这些发现,我们确定了两个有前途的研究方向(控制学习模型的成本,使学习模型值得信赖),并提出了一些研究机会。我们希望我们的研究可以指导研究人员和实践者共同努力,最终将学习到的基数估计器推向真正的数据库系统。
2021-08-10 cs.DB cs.LG
Risk-Aware GPU-Assisted Cardinality Estimation for Cost-Based Query Optimizers
GACE通过GPU加速测量提升基于成本的查询优化器的稳定性与效率,减少尾部延迟并降低计划翻转率。
2025-12-31 cs.DB
BayesCard: Revitilizing Bayesian Frameworks for Cardinality Estimation
Alibaba Group(阿里巴巴集团);University of Edinburgh(爱丁堡大学)
基数估计(CardEst)是查询优化器的重要组成部分,也是数据库管理系统中的一个基本问题.一个理想的CardEst方法应该获得良好的算法性能,是稳定的,以不同的数据设置,并友好的系统部署。然而,现有的CardEst方法不能同时满足这三个标准。传统的方法往往有显着的算法缺陷,如大的估计误差。最近提出的基于深度学习的方法大大提高了估计精度,但它们的性能可能会受到数据的极大影响,并且通常难以进行系统部署。在本文中,我们振兴的贝叶斯网络(BN)的CardEst通过将概率程序设计语言的技术。我们提出了贝叶斯卡,第一个框架,继承了BN的优点,即,具有较高的估计精度和可解释性,同时克服了其结构学习和推理效率低的缺点。这使得BayesCard成为商业DBMS部署的完美候选者。我们在几个单表和多表基准测试上的实验结果表明,BayesCard优于现有的最先进的CardEst方法:BayesCard实现了相当或更好的准确性,推理时间快1-2个数量级,训练时间快1 - 3个数量级,模型大小小1-3个数量级,更新快1-2个数量级。同时,贝叶斯卡保持稳定的性能时,不同的设置变化的数据。我们还将BayesCard部署到PostgreSQL中。在IMDB基准测试工作负载上,它将端到端查询时间提高了13.3%,非常接近使用真基数的oracle的最佳结果14.2%。
2021-02-02 cs.DB cs.LG
Color: A Framework for Applying Graph Coloring to Subgraph Cardinality Estimation
针对图查询优化中基数估计易出现灾难性错误的问题,提出COLOR框架,利用图压缩理论生成捕获全局拓扑的紧凑摘要并进行关键优化,在保持快速推理和小内存占用的同时将准确率提升多达10$^3$倍。
2025-04-29 cs.DB
Machine Learning-based Cardinality Estimation in DBMS on Pre-Aggregated Data
基数估计是数据库查询处理和优化中的一项基本任务。如最近的论文所示,基于机器学习(ML)的方法可以提供比传统方法更准确的基数估计。然而,在模型训练阶段必须执行大量示例查询来学习数据依赖的ML模型,这导致了非常耗时的训练阶段。这些示例查询中的许多查询使用相同的基本数据,具有相同的查询结构,只是它们的谓词不同。因此,乍一看,索引结构似乎是一种理想的优化技术。然而,其益处是有限的。为了加快这个模型训练阶段,我们的核心思想是确定基本数据的谓词独立的预聚合,并在此预聚合数据上执行示例查询。基于这一思想,我们提出了一个特定的聚合启用的训练阶段ML为基础的基数估计方法在本文中。正如我们将在评估中展示的不同工作负载一样,我们能够在启用聚合的训练阶段实现63的平均加速比。
2020-05-19 cs.DB
PRICE: A Pretrained Model for Cross-Database Cardinality Estimation
Alibaba Group(阿里巴巴集团);University of Science and Technology of China(中国科学技术大学);Renmin University of China(中国人民大学)
本文提出预训练多表基数估计模型PRICE,利用可迁移特征和自注意力学习元知识,以极低准备成本在未见数据库上实现高准确率,并可通过微调接近最优执行计划。
2024-06-03 cs.DB cs.LG
Updateable Data-Driven Cardinality Estimator with Bounded Q-error
本文提出ICE,一种基于多维索引的数据驱动基数估计器,通过借鉴索引的快速训练与精确分布特性,实现单表场景下即时元组级更新,并在精度、更新速度和训练时间上显著优于现有实时查询驱动模型。
2024-08-30 cs.DB
Accurate Summary-based Cardinality Estimation Through the Lens of Cardinality Estimation Graphs
我们研究了两类基于摘要的基数估计器,它们使用关于图数据库管理系统中的输入关系和小尺寸连接的统计数据:(i)乐观估计器,其做出一致性和条件独立性假设;以及(ii)最近的悲观估计器,其使用信息论线性规划。我们首先解决如何对乐观估计量进行准确估计的问题。我们将这些估计器建模为基数估计图(CEG)中的自底向上路径,该图包含子查询作为节点和代表平均度的子查询之间的加权边缘。我们概述了一个空间的算法在这个框架中做出乐观的估计,并表明有效的算法依赖于输入查询的结构。我们观察到,在非循环查询和查询与小尺寸的周期,使用最大权重路径是一种有效的技术,以解决众所周知的低估问题的乐观估计。我们表明,在一个大的数据集和工作负载套件,这样的估计的准确性是高达三个数量级更准确的平均q误差比一些先前的算法,已提出在先前的工作。相比之下,我们发现,在查询更大的周期,这些估计往往高估,这可以部分地通过使用最小权重路径和更有效地使用替代CEG。然后,我们表明,CEG也可以模拟最近的悲观估计。这个令人惊讶的结果使我们能够连接两个不同的工作线乐观和悲观的估计,采用从悲观的估计乐观的优化,并提供见解的悲观估计,如显示,有替代的组合解决方案的线性规划,定义他们。
2021-05-19 cs.DB
A Unified Model for Cardinality Estimation by Learning from Data and Queries via Sum-Product Networks
本文提出融合数据分布与查询工作负载的统一基数估计模型 QSPN,通过 SPN 结构及查询感知列分区提升准确性、推理速度与存储效率。
2025-05-13 cs.DB
Uncertainty-aware Cardinality Estimation by Neural Network Gaussian Process
深度学习(DL)在许多实际应用中取得了巨大成功。尽管它的成功,有一些主要的问题时,部署先进的DL模型在数据库系统中,如超参数调整,过拟合的风险,缺乏预测的不确定性。在本文中,我们研究了基数估计SQL查询的重点是不确定性,我们认为这是重要的数据库系统在处理大量的用户查询各种应用程序。在确保不确定性的情况下,查询优化器可以在学习到的估计器具有较大方差时探索其他选项,而不是信任所学习的估计器,并且还可以更新估计器以改善其在具有高不确定性的区域中的预测。我们探索的方法是不同的方向部署复杂的DL模型在数据库系统中建立基数估计。我们使用贝叶斯深度学习(BDL)作为贝叶斯推理和深度学习之间的桥梁。BDL的预测分布为预测提供了原则性的不确定性校准。此外,当BDL模型的网络宽度趋于无穷大时,该模型表现为高斯过程(GP)。这类特殊的BDL被称为神经网络高斯过程(NNGP),它继承了贝叶斯方法的优点,同时保持了神经网络的普适逼近性,并且可以利用更大的模型空间来建模无分布数据作为非参数模型。我们表明,我们的不确定性感知NNGP估计达到高精度,可以建立非常快,是强大的查询工作量的变化,在我们广泛的性能研究与现有的方法相比。
2021-07-19 cs.DB
Adding Domain Knowledge to Query-Driven Learned Databases
本文针对查询驱动学习型基数估计器依赖大量标注查询且分布外错误严重的问题,提出基于约束的半监督学习方法,将传统优化器的领域知识融入学习型查询优化,从而提升基数估计准确性、减少标注依赖并增强端到端性能鲁棒性。
2023-12-02 cs.DB
Duet: efficient and scalable hybriD neUral rElation undersTanding
Harbin Institute of Technology(哈尔滨工业大学)
本文提出混合神经基数估计方法 Duet,通过将谓词信息引入自回归模型,消除渐进采样带来的训练成本高、不稳定和长尾分布等问题,实现无采样的直接基数估计,将推理复杂度从 O(n) 降至 O(1),并在高基数高维表上取得更高精度和更低推理成本。
2023-12-01 cs.AI cs.DB cs.LG
LEARNT: A Practical Estimator for Cardinality of LIKE Queries with Formal Accuracy Guarantees
The University of Queensland(昆士兰大学);AT&T Chief Data Office(AT&T首席数据办公室);University of Wollongong(伍伦贡大学);Wuhan University(武汉大学)
针对字符串数据上的LIKE查询(前缀、后缀、子串),提出LEARNT估计器,通过桶分类、布隆过滤器和马尔可夫建模等方法,在保证理论精度边界的同时实现高效估计。
2026-05-23 cs.DB
FLAT: Fast, Lightweight and Accurate Method for Cardinality Estimation
Alibaba Group(阿里巴巴集团);Peking University(北京大学)
查询优化器依赖于准确的基数估计(CardEst)来生成良好的执行计划。CardEst的核心问题是如何以准确和紧凑的方式对丰富的属性联合分布建模。尽管已有几十年的研究,现有的方法要么只使用独立因子分解来简化模型,导致估计不准确,要么通过无损条件因子分解而没有任何独立假设,导致概率计算缓慢。在本文中,我们提出了FLAT,CardEst方法,同时是快速的概率计算,轻量级的模型大小和准确的估计质量。FLAT的核心思想是一种新的无监督图形模型,称为FSPN。该方法利用独立因子分解和条件因子分解对不同层次的属性相关性进行自适应建模,从而综合了两者的优点。FLAT支持在底层FSPN模型上以接近线性时间进行有效的在线概率计算,提供有效的离线模型构建,并支持增量模型更新。它可以估计单表查询和多表连接查询的基数。大量的实验研究表明,FLAT优于现有的CardEst方法在著名的IMDB基准测试:FLAT实现1至5个数量级更好的准确性,1至3个数量级更快的概率计算速度和1至2个数量级更低的存储成本。我们还将FLAT集成到Postgres中以执行端到端测试。在基准测试工作负载上,它将查询执行时间提高了12.9%,非常接近使用真实基数的最佳结果14.2%。
2021-05-19 cs.AI cs.DB
QEmbed: A Deep Learning Based Cardinality Estimator for Efficient Query Processing
Indian Institute of Technology Jammu(詹穆印度理工学院)
针对现有基数估计方法在混合高/低基数属性数据集上难以平衡内存与精度的问题,提出基于MADE自回归框架的QEmbed深度学习模型,采用混合编码捕获属性相关性,有效降低极端尾部误差。
2026-09-14 cs.DB
How I Learned to Stop Worrying and Love Re-optimization
基于成本的查询优化器仍然是分析工作负载的数据库管理系统中最重要的组件之一。尽管现代优化器在通常情况下选择接近最佳性能的计划,但少数查询的速度比它们可能的速度慢一个数量级。在本文中,我们调查为什么仍然是这种情况下,尽管几十年的改进成本模型,计划枚举和基数估计。我们证明了为什么我们认为重新优化机制可能是提高端到端查询性能的最具成本效益的方法。我们发现,即使是一个简单的重新优化方案可以改善许多性能不佳的查询的延迟。我们证明,重新优化将Join Order Benchmark中前20个运行时间最长的查询的端到端延迟提高了27%,实现了完美基数估计的大部分好处。
2019-03-19 cs.DB
TiCard: Deployable EXPLAIN-only Residual Learning for Cardinality Estimation
PingCAP, Data & AI-Innovation Lab(PingCAP数据与人工智能创新实验室)
TiCard通过仅使用解释信息学习残差修正,提升数据库基数估计的准确性和可部署性。
2025-12-17 cs.AI cs.DB
Multi-Attribute Selectivity Estimation Using Deep Learning
University of Texas at Arlington(德克萨斯大学阿灵顿分校);QCRI, HBKU(哈马德·本·哈利法大学卡塔尔计算研究所);University of Toronto(多伦多大学)
选择性估计-估计查询结果大小的问题-是数据库中的一个基本问题。涉及多个相关属性的查询选择性的准确估计尤其具有挑战性。基数估计值不佳可能导致查询优化器选择错误的计划。我们研究了使用基于深度学习的方法进行点和范围查询的可行性,并提出了两种互补的方法。我们的第一种方法将选择性视为无监督的深度密度估计问题。为此,我们成功地引入了神经密度估计技术。其关键思想是将联合分布分解为一组易于处理的条件概率分布,使它们满足自回归特性。我们的第二种方法将选择性估计公式化为一个有监督的深度学习问题,该问题预测给定查询的选择性。我们还介绍并解决了在将深度学习应用于关系数据时出现的一些实际挑战。这些包括查询/数据特征化,将查询工作负载信息纳入深度学习框架,以及可以更新数据和工作负载查询的动态场景。我们的广泛的实验,特别强调查询大量的谓词和/或小的结果大小表明,我们提出的技术提供了快速和准确的选择性估计与最小的空间开销。
2019-06-17 cs.DB cs.LG
Exqutor: Extended Query Optimizer for Vector-augmented Analytical Queries
Yonsei University(延世大学);Microsoft(微软)
本文提出Exqutor,一种用于向量增强分析查询的查询优化器,通过改进向量搜索的基数估计方法,提升查询性能,实验证明在pgvector、VBASE和DuckDB中性能提升达四量级。
2026-03-29 cs.DB
PLANSIEVE: Real-time Suboptimal Query Plan Detection Through Incremental Refinements
PLANSIEVE是一种在查询优化期间通过增量细化代理基数并分析子计划相对顺序来实时检测次优查询计划的新框架,在预测次优计划时准确率达88.7%。
2025-01-27 cs.DB
SQLBarber: A System Leveraging Large Language Models to Generate Customized and Realistic SQL Workloads
Cornell University(康奈尔大学)
SQLBarber利用大型语言模型生成定制化且真实的SQL工作负载,通过声明式接口和贝叶斯优化器高效生成符合目标成本分布的查询。
2025-12-02 cs.AI cs.CL cs.DB
Cardinality Estimation in DBMS: A Comprehensive Benchmark Evaluation
Alibaba Group(阿里巴巴集团);MIT(麻省理工学院);Nanyang Technological University(南洋理工大学);Peking University(北京大学)
基数估计(CardEst)在为DBMS中的查询优化器生成高质量的查询计划方面起着重要作用。在过去的十年中,已经提出了越来越多的先进的CardEst方法(特别是ML为基础的)具有出色的估计精度和推理延迟。然而,目前还没有研究系统地评估这些方法的质量,并回答根本问题:这些方法在多大程度上可以提高查询优化器在现实世界中的性能,这是CardEst方法的最终目标。在本文中,我们全面和系统地比较了CardEst方法在一个真正的DBMS的有效性。我们为CardEst建立了一个新的基准,它包含一个新的复杂的真实世界的数据集STATS和一个多样化的查询工作负载STATS-CEB。我们将多个最具代表性的CardEst方法集成到开源数据库系统PostgreSQL中,并全面评估它们在提高查询计划质量方面的真正有效性,以及影响其适用性的其他重要方面,从推理延迟,模型大小和训练时间,到更新效率和准确性。我们获得了一些关键的调查结果的CardEst方法,在不同的数据和查询设置。此外,我们还发现,在查询优化过程中,广泛使用的估计精度度量(Q-Error)无法区分不同子计划查询的重要性,从而无法真实反映CardEst方法生成的查询计划质量。因此,我们提出了一个新的度量P-Error来评估CardEst方法的性能,它克服了Q-Error的局限性,能够反映CardEst方法的整体端到端性能。我们已经在https://g…
2021-09-15 cs.AI cs.DB
RelJoin: Relative-cost-based Selection of Distributed Join Methods for Query Plan Optimization
RelJoin提出基于相对代价的分布式连接方法选择模型,利用运行时统计精确估计网络与本地计算代价,在SparkSQL中实现,TPC-DS上62/97查询最优,平均查询时间降低21%。
2023-11-24 cs.DB cs.DC
From Interpretation to Compilation: A Compilation-Based Execution Engine for Semantic Operator Systems
University of Hawaii at Manoa(夏威夷大学马诺阿分校)
提出SemBaker编译式执行引擎,通过生成Python函数本地执行替代逐项LLM调用,支持多工具,在200查询的问答工作负载中获4.8-6.3倍加速与5.4-10.7倍成本降低。
2026-08-10 cs.DB
Robust Estimation of Resource Consumption for SQL Queries using Statistical Techniques
估计SQL查询的资源消耗的能力对于数据库系统中的许多任务(诸如查询优化期间的准入控制、查询调度和成本计算)是至关重要的。最近的工作已经探索了使用统计技术进行资源估计,以代替在查询优化中使用的手动构建的成本模型。这种技术需要查询中资源使用的训练数据示例,提供了优越的估计精度的承诺,因为它们可以考虑诸如系统的硬件特性或基数估计中的偏差之类的因素。然而,所提出的方法缺乏鲁棒性,因为它们不能很好地推广到不同于训练样本的查询,从而导致显著的估计误差。我们的方法旨在通过将数据库查询处理知识与统计模型相结合来解决这个问题。我们在单个运营商的层面上对资源使用进行建模,每个运营商类型具有不同的模型和功能,并明确地对每个运营商的渐近行为进行建模。这导致显著更好的估计精度和估计任意计划的资源使用的能力,即使它们与训练实例非常不同。我们使用Microsoft SQL Server上的各种大规模现实生活和基准工作负载来验证我们的方法。
2012-08-01 cs.DB
Evaluating Learned Query Performance Prediction Models at LinkedIn: Challenges, Opportunities, and Findings
本文评估学习型查询性能预测模型在 LinkedIn 真实 OLAP 查询上的表现,提出多任务学习方法利用操作符级指标,并分析理论性能上限。
2025-04-24 cs.DB
Redefining Cost Estimation in Database Systems: The Role of Execution Plan Features and Machine Learning
本文提出基于执行计划特征与机器学习的SQL查询运行时预测框架,实验表明XGBoost模型优于其他模型,显著提升数据库成本估算准确性。
2025-10-07 cs.DB