查询聚集:congressional samples for approximate answering of group-by queries

作者:Information Sciences Research Center, Bell Laboratories
会议:SIGMOD 2000

Abstract

在大型数据仓库环境中,使用预先计算的汇总统计数据(如样本)为复杂的决策支持查询提供快速近似答案通常是有利的。决策支持查询通常将数据分成组,然后在每个组中聚合信息(按查询分组)。根据数据的不同,每组中数据项的数量之间可能存在很大的差异。因此,基于数据的统一随机样本的近似答案可能导致数据项很少的组的准确性较差,因为这些组将在样本中由很少(通常为零)元组表示。

在本文中,我们提出了一种通用的技术,用于为分组查询获得快速、高精度的答案。这些技术依赖于预先计算的非均匀(有偏差)数据样本。特别地,我们提出了congressional samples,这是均匀样本和有偏差样本的混合组合。给定一个固定的空间量,congressional samples通过对一组列的查询来寻求最大限度地提高所有可能组的准确性。我们提出了一种构造congressional samples的one pass算法,并使用这种技术在不访问基本关系的情况下也增量地保持样本的最新状态。我们还评估了从congressional samples中提供近似答案的查询重写策略。最后,我们在TPC-D数据库上进行了大量的实验,证明了所提出的技术的有效性。

Introduction

在过去的几年中,使用大规模数据库的决策支持应用程序的流行度有了巨大的增长。这些应用程序也称为在线分析处理(OLAP)应用程序,它们分析数据仓库中的历史数据,以确定可以在定义新的业务战略时利用的趋势。通常,这个过程涉及对一个庞大的数据库提出几个复杂的查询。因此,即使使用最先进的数据仓库和OLAP技术,执行这些查询也需要几分钟,有时甚至几小时。

解决这个问题的一种新方法是非常快速地为查询提供近似的答案,该方法最近受到了关注。这种方法对于OLAP等大规模的探索性应用程序特别有吸引力。例如,一个典型的决策制定过程涉及提出几个初步查询,以确定数据中感兴趣的区域。对于这些问题,精确的答案通常并不重要。类似地,对于返回数值结果的查询,精确答案的全部精度可能是多余的——用户可能欢迎只有几个有效数字的答案(例如。如果生产速度快得多的话。这些近似查询应答系统通过对数据库的某种形式的汇总统计数据(如样本、小波和直方图)运行查询来提供快速响应。此外,近似的答案通常补充了一个统计误差,以指示用户近似的质量。因为这些统计数据通常要小得多,所以查询的处理速度非常快。统计数据可以在提出查询后即时生成,如在线聚合方法,也可以预先计算,如我们开发的Aqua系统。

总结数据的一种流行技术是对原始数据进行抽样。事实上,这是上述两种近似查询应答方法所使用的基本技术。特别是使用均匀随机抽样,即原始数据集中的每个项目都有相同的抽样概率,因为它反映了原始数据的分布。此外,通过增加样本量,系统可以为用户提供更准确的响应。由于统一样本的有用性,商业DBMS(如oracle 8i)已经支持操作符收集统一样本。

1.1 Limitations of Uniform Sampling

虽然统一随机样本为许多类别的查询提供了高度准确的答案,但对于一些重要的类别的查询,它们的效果较差。这包括决策支持应用程序中最常出现的场景之一,即将数据划分为组,并为这些组派生一些聚合信息。这通常是在SQL中使用group by操作完成的,因此我们将它们称为group-by查询。例如,对美国人口普查数据库中包含全国每个人信息的分组查询可用于确定每个州的人均收入。通常,不同群体的规模可能存在巨大差异,例如,加利福尼亚州的人口几乎是怀俄明州的70倍。

1.2 Biased Sampling for group-by queries

在本文中,我们提出了一种通用的技术,用于使用(预先计算的)有偏见的数据样本,为分组查询获得快速、高精度的答案。我们关注分组查询,因为它们是OLAP中最重要的查询类别之一,构成了常见的drill-down和roll-up过程的重要部分。例如,在tic-d基准测试2.0版本中的22个查询中,有15个是分组查询。然而,我们的解决方案更普遍,可以应用于更广泛的问题集,无论均匀随机样本的局限性变得至关重要。简单地说,我们的技术包括在采样时考虑组的大小,以便通过操作(甚至没有)任意分组和不同的组大小为查询提供高度准确的答案。我们的解决方案应用并扩展了已知的子种群/域/物种抽样技术,以近似回答分组查询。我们的主要扩展包括考虑按列分组的组合、构造和增量维护、查询重写以及对查询组合进行优化。

有许多因素会影响从样本中计算出的答案的质量,包括查询、数据分布和样本大小。其中,样本量在提高广泛的查询和数据分布的回答质量方面是最普遍的。因此,在本文中,我们将重点放在确保样本中所有组都具有良好的代表性。我们考虑单表查询;然而,我们的技术可以立即扩展到具有键连接的查询,这是最常见的连接类型(例如。TPC-D基准中的所有连接都在外键上),使用中[]的技术。

本文中的技术针对预计算或物化样本进行了调整,例如Aqua(见章节2)。与查询时采样相比,预计算的优点包括:(1)查询可以快速回答,而无需在查询时访问原始数据,(2)采样元组可以紧凑地存储在几个磁盘块中,避免了随机扫描的开销,(3)不需要更改DBMS的查询处理器和优化器,(4)可以检测出小群体等数据异常值,并将其纳入样本。另一方面,预先计算的样本必须在看到查询之前提交给样本,并且不太适合支持用户控制的渐进细化。

本文贡献如下:

  • 我们引入了带有偏见和统一样本的混合联合,称为congressional samples,它对带有任意group-by(包括没有group-by)的查询提供统计上无偏的答案,具有明显高于统一样本的准确性保证。给定一个固定的空间,congressional samples寻求在一组列上最大限度地提高所有可能的group-by查询的准确性。我们还提出了在这些样例上执行查询的有效策略。

  • 我们开发了一种one pass算法,用于在没有数据分布先验知识的情况下构建congressional samples。当新数据插入数据库时,我们使用这种技术也可以增量地维护示例,而不需要访问基本关系。这确保了即使新数据显著地改变了数据库,查询也能继续得到很好的回答。

  • 我们展示了如何将congressional samples专门化到分组查询的特定子集。我们还扩展了它们,以使用关于数据的详细信息,例如方差,并改进非分组查询的答案。

  • 我们进行了一系列广泛的实验,以确定congressional samples的准确性,并确定一种有效的执行策略,以在这些样本上运行查询。

Map. 这篇文章的其余部分如下。在下一节中,我们将介绍Aqua,一种用于近似查询应答的系统框架。然后,我们制定了本文中要解决的问题,在第4节中,我们提出了我们的新采样解决方案。在第5节中,我们强调了在实践中使用这些新解决方案时的一些实现问题。然后,在第6节中,我们提出了有效的施工和维护技术。实验研究在第7节。在第8节中,我们描述了congressional samples的扩展,以提高它们对某些类别查询的准确性。在第9节中,我们介绍了相关工作,在第10节中,我们总结了这项工作的结论。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值