新闻报道新闻报道

谷歌 AI 推出 CardBench 评估框架:20 个真实数据库,全面评估基数估计模型

IT之家 9 月 3日消息,谷歌 AI 研究人员最新推出了 CardBench 基准,旨在为学习型基数估计(cardinality estimation)提供一个系统性的评估框架。CardBench 基准包含 20 个不同真实数据库中的数千次查询,其规模和复杂程度远远超过了以往的任何基准。

基数估计:数据库性能的关键

基数估计(cardinality estimation,简称 CE)是优化关系数据库查询性能的关键技术。它通过预测数据库查询将返回的中间结果数量,帮助查询优化器选择最优的执行计划。准确的基数估计对于选择高效的连接顺序、决定是否使用索引以及选择最佳连接方法至关重要,这些决策直接影响查询执行时间和数据库整体性能。

现有方法的局限性

传统的基数估计技术主要依赖于启发式方法和简化模型,例如假设数据均匀分布和列之间相互独立。这些方法虽然计算效率高,但在处理涉及多个表和复杂过滤条件的查询时,准确性往往不足。近年来,数据驱动方法试图通过对表内和表间数据分布进行建模来提高基数估计的准确性,但这些方法需要重新训练,在数据发生变化时效率较低。

CardBench:更全面、更具挑战性的评估

CardBench 基准旨在解决现有基数估计模型评估方法的不足,为研究人员提供一个更全面、更具挑战性的评估环境。该基准支持三种关键设置:

  • 基于实例的模型: 在单个数据集上进行训练。
  • 零点模型: 在多个数据集上进行预训练,然后在一个未见数据集上进行测试。
  • 微调模型: 在预训练的基础上,使用目标数据集的少量数据进行微调。

CardBench 提供两组训练数据:一组用于具有多个筛选条件谓词的单个表查询,另一组用于涉及两个表的二进制联接查询。该基准测试包含 9125 个单表查询和 8454 个二进制连接查询,确保为模型评估提供强大且具有挑战性的环境。

微调模型的优势

CardBench 的评估结果表明,即使是使用 500 次查询对预训练模型进行微调,也能显著提高其性能。这使得微调模型在训练数据有限的实际应用中变得更加可行。例如,微调图神经网络(GNN)模型在二进制连接查询中的 q-error 中位数为 1.32,第 95 百分位数为 120,明显优于零点模型。

CardBench 的意义

CardBench 的推出标志着学习型基数估计领域取得了重大进步。它为研究人员提供了一个全面、多样的基准,可以系统地评估和比较不同的 CE 模型,从而促进这一关键领域的进一步创新。CardBench 支持需要较少数据和训练时间的微调模型,为训练新模型成本过高的实际应用提供了切实可行的解决方案。

未来展望

随着数据库技术的不断发展,基数估计模型的准确性和效率将变得更加重要。CardBench 基准的推出将推动研究人员开发更先进的基数估计模型,从而进一步提升数据库查询性能,为用户提供更快速、更高效的数据访问体验。


read more

Views: 0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注