PRICE: A Pretrained Model for Cross-Database Cardinality Estimation

2024年06月03日
  • 简介
    本文介绍了基于机器学习的基数估计方法在优化查询执行计划中的重要性。尽管最近的基于机器学习的基数估计方法可以实现高精度,但由于高昂的准备成本和跨数据库的可转移性不足而面临着部署挑战。因此,本文提出了一种名为PRICE的PRetrained multI-table CardEst模型,以解决这些限制。PRICE采用与数据分布和查询信息相关的低级但可转移的特征,并优雅地应用自我关注模型来学习元知识以计算任何数据库中的基数。它通常适用于任何未见过的新数据库以实现高估计精度,而其准备成本仅为基于基本一维直方图的基数估计方法的成本。此外,PRICE可以进行微调以进一步提高其在任何特定数据库上的性能。我们使用30个不同的数据集预训练了PRICE,整个过程约为5小时,生成的模型大小仅约为40MB。评估结果表明,PRICE始终优于现有方法,在几个未见过的数据库上实现了最高的估计精度,并生成了具有更低开销的更快的执行计划。在使用少量数据库特定查询进行微调后,PRICE甚至可以找到非常接近最优解的计划。同时,PRICE通常适用于不同的设置,例如数据更新、数据扩展和查询工作负载转移。我们已经公开了所有数据和代码,网址为https://github.com/StCarmen/PRICE。
  • 图表
  • 解决问题
    论文旨在解决查询优化中的基数估计问题,提出了一种新的方法PRICE,并试图解决现有方法的部署成本高、跨数据库迁移能力差的问题。
  • 关键思路
    PRICE利用可转移的低级别特征和自注意力模型学习元知识,能够在任何数据库中计算基数,且准确率高,准备成本低。可以通过微调进一步提高性能。
  • 其它亮点
    论文使用30个不同的数据集进行预训练,仅用5个小时就完成了整个过程,模型大小仅为40MB。评估结果表明,PRICE在许多新的数据库上都能取得最高的估计精度,并且生成更快的执行计划。可以通过微调进一步提高性能。此外,PRICE适用于不同的设置,如数据更新、数据扩展和查询工作量转移。作者已将所有数据和代码公开发布在GitHub上。
  • 相关研究
    在该领域的相关研究包括DeepDB、Learned Cardinality Estimation、Cardinality Estimation using Deep Learning等。
点赞 收藏 评论 分享到Link

沙发等你来抢

去评论