CardBench: A Benchmark for Learned Cardinality Estimation in Relational Databases

2024年08月28日
  • 简介
    基数估计对于提高关系型数据库的查询性能至关重要。最近,已经提出了学习基数估计模型来提高准确性,但是缺乏系统性的基准测试或数据集,这使得研究人员无法评估新的学习方法所取得的进展,也无法系统地开发新的学习方法。本文发布了一个基准测试,其中包含20个不同的真实世界数据库中数千个查询,用于学习基数估计。与其他初始基准测试相比,我们的基准测试更加多样化,可以用于系统地训练和测试学习模型。使用这个基准测试,我们研究了学习基数估计是否可以以零样本方式转移到未见过的数据集。我们训练了基于GNN和Transformer的模型,在三个设置下研究了这个问题:1)基于实例,2)零样本,3)微调。我们的结果表明,虽然我们在简单的单表查询上得到了有希望的零样本基数估计结果,但是一旦添加了连接,准确性就会下降。然而,我们表明,通过微调,我们仍然可以利用预训练模型进行基数估计,与特定实例的模型相比,显著减少了训练开销。我们开源了收集统计信息、生成查询和训练数据集的脚本,以促进更广泛的研究,也包括机器学习社区对基数估计这一重要问题的研究,特别是改进最近的预训练基数估计方向。
  • 图表
  • 解决问题
    解决基于学习的基数估计的问题,缺乏系统性的基准测试集和数据集来评估新的学习方法的进展和开发新的学习方法。
  • 关键思路
    发布一个包含数千个查询的基准测试集,对20个不同的真实世界数据库进行学习基数估计。使用这个基准测试集,研究了零-shot、实例化和微调三种方法来解决基数估计问题。研究表明,零-shot基数估计在简单的单表查询上表现良好,但一旦添加了连接,准确性就会下降。但是,通过微调,我们仍然可以利用预训练模型进行基数估计,显著降低与实例特定模型相比的训练开销。
  • 其它亮点
    该论文提供了一个更加多样化的基准测试集,可以用于系统地训练和测试学习模型。使用图神经网络和变压器模型进行学习基数估计的实验结果表明,预训练的模型可以在微调后用于基数估计,从而显著降低了训练开销。论文开源了收集统计数据、生成查询和训练数据集的脚本,以促进更广泛的研究。
  • 相关研究
    最近的相关研究包括基于深度学习的基数估计模型的提出和改进,以及用于评估这些模型的基准测试集的开发。例如,基于深度学习的基数估计模型包括神经网络、卷积神经网络和循环神经网络等。
许愿开讲
PDF
原文
点赞 收藏
向作者提问
NEW
分享到Link

提问交流

提交问题,平台邀请作者,轻松获得权威解答~

向作者提问