查询的VC维与基于采样的选择性估计
数据库
2015-03-18 v3 数据结构与算法
机器学习
摘要
我们基于Vapnik-Chervonenkis维的统计概念,开发了一种新颖方法,用于评估SQL查询的选择性(输出基数)——这是优化大规模数据库和数据挖掘操作执行的关键步骤。本工作的主要理论贡献(具有独立意义)是给出了由查询集合所有可能结果定义的范围空间的VC维的显式界限。我们证明VC维是选择谓词中布尔运算最大次数以及集合中任何单个查询中select和join操作最大次数的函数,但它既不是集合中查询数量的函数,也不是数据库大小(元组数量)的函数。我们利用这一结果,开发了一种方法,给定一个查询类,构建一个简洁的数据库随机样本,使得以高概率,在样本上执行该类中的任何查询都能为原始大型数据库上的查询选择性提供准确估计。该错误概率同时适用于集合中所有查询的选择性估计,因此同一样本可用于评估多个查询的选择性,并且仅在数据库发生重大更改后才需要刷新样本。我们的方法计算的样本表示通常足够小,可以存储在主内存中。我们展示了广泛的实验结果,验证了我们的理论分析,并证明了我们的技术在与PostgreSQL和Microsoft SQL Server中使用的复杂选择性估计技术相比时的优势。
引用
@article{arxiv.1101.5805,
title = {The VC-Dimension of Queries and Selectivity Estimation Through Sampling},
author = {Matteo Riondato and Mert Akdere and Ugur Cetintemel and Stanley B. Zdonik and Eli Upfal},
journal= {arXiv preprint arXiv:1101.5805},
year = {2015}
}
备注
20 pages, 3 figures