论文部分内容阅读
数据仓库(data warehouse)采取一种集中式的结构,它将整个公司的数据统一储存在一个数据库(repository)中。通常,它的数据是以数据立方体(data cube)的方式来出现的,而多维度的储存模式能够对数据做许多不同的查看和各种组合。这些数据就如同一大片森林的众多树木一样,数据管理者必须披荆斩棘,将这些公司数据做一些相关性的组合后才能看到它们内部隐含的意义。而OLAP则与数据仓库不同,它的程序将商业软件目录化,让用户以数据立方体 (data cube)为单位来进行操作。典型的OLAP运作包含数据的集结(consolidate)、下探(drill-down)(如查询定义)、切片(slice) 、切丁(dice)及枢纽(pivot)。产生的结果既可以用传统的方式也可以用表格化的数据库格式呈现,甚至还可以将它们作成图表。虽然这样的输出可能只是一种固定格式,但它通常允许用户直接操作数据来做进一步的分析,例如验证趋势(trend) 、相关性(correlation)或时间序列(time series)等。使用Web上的应用程序来进行线上分析处理(OLAP,on-line analytical processing),将可以大大增强Web技术的威力。OLAM的挖掘分析处理是建立在立方体的基础之上的,而且,在实际应用中,尽管OLAM的多维计算可能需要更多的维数和更强大的访问工具,但我们可以断定,用于OLAP的立方体和用于OLAM的立方体之间并没有本质的区别。我们可以看到,OLAM服务器通过用户图形接口接收用户的分析指令,在元数据的指导下,对超级立方体作一定的操作,然后将挖掘分析结果展现给用户,这个过程是动态的。多维数据视图(超立方体)是OLAM的基础,多维视图的组织方式对于系统的执行效率和响应速度起着至关重要的作用。我们主要通过对数据立方的存储,计算,物化策略三方面对这一技术进行了深入的研究,并取得了满意的效果。对数据库中一系列复杂表的挖掘,归根结底就是对数据立方体的挖掘计算,在这种情况下一味的要求计算上的精确就有点舍本逐未了,在<WP=51>一定的层次上模糊一下,不仅能提高挖掘的速度,而且准确性上也不会有明显损失。数据压缩是提高多维数据仓库性能的重要途径, 联机分析处理是数据仓库上的主要应用, Cube 操作是联机分析处理中最常用的操作之一. 压缩多维数据仓库上的Cube 算法的研究是数据库界面临的具有挑战性的重要任务. 近年来, 人们在Cube 算法方面开展了大量工作, 但却很少涉及多维数据仓库和压缩多维数据仓库. 本文在深入研究压缩数据仓库的基础上, 通过对数据立方体中各元素值的观察,我们发现它们相互之间存在很大的相似性。 提出了压缩多维数据仓库的Cube 算法. 所提出的Cube 算法直接在压缩数据上执行Cube 操作, 无须反压缩, 提高了Cube 的处理速度. 聚集计算是一种在决策支持系统中占主导地位的操作,数据立方也称之为多维数据库,是一种常用的技术.它的重要思想是把那些代价昂贵的常用运算如:Count、Sum、Average、Max、Min等聚集函数预先计算出结果,并根据不同的属性分类存储在一个多维数据库中.如时间量可以按日、星期、月、年分别汇总并存入数据库中为决策支持、数据采掘及其它应用服务。在进行数据立方体计算时,很多人都有使用传统的pipeline和 pipehash方法,而我们利用一种叫做hybrid-tree(h-tree)的数据结构,经过对这一结构(h-tree)的特性的仔细分析,我们将这种结构成功的应用到数据立方体的计算中。经过观察可以发现,在文中的示例表中,每种车型每年都有销售量,同样每种颜色每年都有销售量,这样车型和颜色就会在表中不断的出现多次重复,同样model和color的组合值也会与多个时间相关,因此该数据立方中存在大量冗余数据。基于以上的观察结果,我们将属性维划分为两种,一种称为划分维,我们将(model, color)作为划分维。另一种属性维称作非划分维,我们将(year)作为非划分维。由此可见经过以上的划分,可大量减少冗余数据,最重要的是可以减少实例化的视图的个数,经过计算,针对sales表计算数据立方所要实例化的视图的个数将会减少一半。这样不仅大大减少了存储空间,而且加快了计算速度,相应的也就减少维护阶段所花费的时间。当记录相当多时,完全物化代价仍然太高昂,有时甚至是具有不可想象的时间和空间复杂性。经过我们的进一步观察,对于key=12的元组<WP=52>的值,实际上通过我们的特殊映射,就是key=1 和key=2的值的和,同样的对于key=13的元组的值,经过特殊映射就是key=1和 key=3的值的和。当将这些复合的物化留到查询时再计算,虽然时间上会有一些小延迟,但由此牺牲换来的存储空间的节省是值得的。于是在四个视图不变的情况下,我们可以将基本综合表进一步的减小到极限。