论文部分内容阅读
数据仓库是一个面向主题的、集成的、不可更新的且随时间不断变化的数据集合,主要用于有效地支持决策支持查询。随着数据仓库的规模不断增加,这种涉及大量数据的复杂决策查询是非常耗时的。数据处理的低效意味着资源的浪费,因此,较高的数据查询效率对数据仓库来说是很重要的,是数据仓库系统设计的一大系统目标。为了提高查询性能,一种有效的方法就是使用辅助数据回答查询。在现代数据仓库系统中,一种常用的辅助数据就是实视图:将用户常用的查询或最可能的查询模式计算出来的结果或者中间结果的物理存储。有了实视图,基本上不再需要对原始数据进行处理,而只需要在实视图的基础上进行一些简单的计算便可以完成复杂的查询。在使用实视图提高查询效率的时候,必须解决两个重要的问题:实视图选择和实视图最优重写。本文就这两个问题进行分析研究并提出了详细的解决方案。实视图选择:实视图选择就是针对一个查询集,在给定的某些资源约束下选择一个视图集进行实化,使得该查询集的查询响应时间最小。首先,全面分析了数据仓库系统中实视图选择的特点、难点以及传统实视图选择方法的弊端之后,系统地介绍了分布估计算法的特性、方法,并采用分布估计算法从“宏观”层面上对群体建立数学模型来解决实视图选择问题;同时,提出两种混合遗传算法GEDA和BMUTGA,在后代的产生过程中同时利用全局统计信息以及局部信息来克服GA和EDAs的缺点,从而更有效地解决复杂的实视图选择问题。通过实验来验证所引入的UMDA以及所提出的GEDA和BMUTGA算法的求解质量和求解效率。测试数据及来自TPC-D的基准测试数据以及多种模拟数据集。实验结果表明,在不同的空间约束,不同的查询分布和视图大小分布下,本文所引入和提出的算法优于经典遗传算法。实视图最优重写:实视图最优重写问题就是对于给定的一个用户查询Q和实视图集V,找到Q的一个最优(等价)重写R。首先,与传统的查询优化进行了对比,全面分析了数据仓库中实视图最优查询重写的特点、难点以及传统的使用实视图最优查询重写方法的弊端之后,系统地介绍了启发式方法和遗传程序设计的特性,并分析了用启发式方法和遗传程序设计有效地解决利用实视图最优查询重写问题的可能性。其次,提出了两种新颖的基于实视图最优查询重写的算法BSHS以及SRGP来解决这个问题,主要贡献如下:(1)这两种算法基于包-集语义,这种语义被广泛的应用于当今的关系型数据库。在这个语义下,基本关系并不包含重复元组,而查询结果可能包含重复元组;(2)本文的算法不仅能处理合取(选择-连接-投影)查询还可以处理聚集(SUM/COUNT)查询;(3)所提出的算法不仅可以使用多个实视图重写还可以使用单个实视图重写,从而保证所产生的重写的近似最优性。通过模拟数据集,从求解质量和运行时间两个方面对算法进行了比较,验证了本文提出的启发式方法BSHS以及基于规则的遗传程序设计SRGP的有效性。