(计算机应用技术专业论文)维关联多维数据模型及其带层次立方体的生成.pdf_第1页
(计算机应用技术专业论文)维关联多维数据模型及其带层次立方体的生成.pdf_第2页
(计算机应用技术专业论文)维关联多维数据模型及其带层次立方体的生成.pdf_第3页
(计算机应用技术专业论文)维关联多维数据模型及其带层次立方体的生成.pdf_第4页
(计算机应用技术专业论文)维关联多维数据模型及其带层次立方体的生成.pdf_第5页
已阅读5页,还剩78页未读 继续免费阅读

(计算机应用技术专业论文)维关联多维数据模型及其带层次立方体的生成.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 数据立方体是数据仓库中多维数据模型的核心,业界对多维数据 模型以及数据立方体的生成和维护已经做了大量的研究工作。物化视 图的选择和视图的生成算法是立方体生成中的两个重点,在生成过程 中,时间和空间开销一直是大家所考虑的优化因素。 目前的数据立方体大多没有实现维度层次。卜的视图物化,带层次 的数据立方体比起一般的立方体,需要生成更多的物化视图,从而占 用更多的数据空间,其生成算法的复杂程度和时间开销上都有了更高 的要求。本文的目标是设计一种高效的带层次的数据立方体生成算 法。 论文提出了维关联多维数据模型( r dc u b e ) ,模型中分析了立方 体维度间的相互关联性;通过改进s t a rc u b e 的非划分维思想,同时根 据r dc u b e 中的维度关联特性,提出了一种带层次的数据立方体物化 视图选择策略;最后,在h b u c 算法的基础上,结合封闭立方体的生 成方法,实现了r dc u b e 的带层次物化视图生成算法。 关键词:多雏数据库,维关联,带层次,数据立方体 a b s t r a c t a b s t r a c t d a t ac u b ei sm ec o r eo ft h em u l t i d i m e n s i o n a ld a t am o d e li nt h ed a t a w a r e h o u s e t e c h n o l o g i s t sh a v ea l r e a d yd o n eal a r g ea m o u n to fr e s e a r c h x v o r kt ot h en l u l t i d i m e n s i o n a ld a t am o d e la n dt h ed a t ac u b e t h ec h o i c e o ft h em a t e r i a l i z e dv i e w sa n dt h ef o r m u l a t i o na l g o r i t h mo ft h ev i e wa r e t w of o c a lp o i n t si nt h ec o u r s eo ft h ec u b ep r o d u c i n g t i m ea n ds p a c e e x p e n s e sa r eo p t i m i z a t i o nf a c t o r s t h a te v e r y b o d yc o n s i d e r s i nt h el a s tf e w y e a r s ,m a n ya l g o r i t h m sa r ep r o p o s e dt oc o m p u t e d a t a c u b e ,h o w e v e r , f e wo ft h e md e a lw i t ht h ec u b ec o m p u t a t i o ni n c o r p o r a t i n g h i e r a r c h y t h ec u b ew i t hh i e r a r c h yn e e d st op r o d u c em o r em a t e r i a l i z e d v i e w sc o m p a r e dw i t ht h eg e n e r a lc u b e ,t h u st a k e su pm o r ed a t as p a c e , d e m a n d s h i g h e r t i m e e x p e n s e s a n dm a k e st h e a l g o r i t h m m o r e c o m p l e x t h eg o a l o ft h i st h e s i si st od e s i g nah i g h e f f i c i e n ta l g o r i t h mf o r f u l l c o m p u t i n gs p a r s e c u b ea tv a r i o u sl e v e l so fd e t m la n do nv a r i o u s c o m b i n a t i o n so fa n r i b u t e s t h et h e s i sp r o p o s e san e w m u l t i _ d i m e n s i o n a ld a t am o d e l w i t hr e l a t i v e d i m e n s i o n ( r dc u b e ) ,w h i c ha n a l y s e s t h ei n t e r r e l a t i o n s h i pa m o n gt h e d i m e n s i o n so ft h ec u b e b yi m p r o v i n gt h en o p a r t i t i o nd i m e n s i o n si d e ao f t h es t a rc u b e ,a tt h es a m et i m ea c c o r d i n gt oi n t e r r e l a t i o n s h i pa m o n gt h e d i m e n s i o n s ,i tg i v e saw a yt oc h o o s et h em a t e r i a l i z e dv i e w so ft h er d c u b e f i n a l l y , o nt h eb a s i so f h b u c a l g o r i t h m ,a n dc o m b i n i n gt h ec l o s e d d a t a c u b et e c h n i q u e ,i tl e a d st ot h er dc u b ec o m p u t a t i o n k e y w o r d s :m u l t i _ _ d i m e n s i o n a ld a t a b a s e ,r e l a t i v ed i m e n s i o n , w i t h h i e r a r c h y , d a t ac u b e 独创性声明 本人声明,所呈交的学位论文是我个人在导师指导 下进行的研究工作及取得的研究成果。尽本人所知,除 了文中特别加以标注和致谢的地方外,论文中不包含其 他人已经发表或撰写过的研究成果,也不包含为获得北 京交通大学或其他教学机构的学位或证书而使用过的 材料。与我一起工作的同志对本研究所做的任何贡献已 在论文中作了明确的说明并表示了谢意。 本人签名: 日期:年月日 关于论文使用授权的说明 本人完全了解北京交通大学有关保留、使用学位论 文的规定,即:学校有权保留送交论文的复印件,允许 论文被查阅和借阅;学校可以公布论文的全部或部分内 容,可以采用影印、缩印或其他复制手段保存论文。论 文中所有创新和成果归北京交通大学计算机与信息技 术学院所有。未经许可,任何单位和个人不得拷贝。版 权所有,违者必究: 本人签名: 日期:年月曰 综述 1 综述 1 1 国内外研究现状和进展 数据立方必须经过计算才能投入使用,而数据立方计算是一个复 杂耗时的操作,如何高效地计算数据立方一直是o l a p 领域的个研 究重点。数据立方体中有很多冗余信息,去除这些冗余信息不但可以 节约存储空间,还可以加快计算速度。 目前的数据立方体大多没有实现维度层次上的视图物化,带层次 的数据立方体比起没有带层次的立方体,需要生成更多的物化视图, 从而占用更多的数据空间,其生成算法的复杂程度和时间开销上都有 所提高。 其中物化视图选择算法有以卞两类: 第一类适用于已知系统所需要处理的查询类型以及可能对系统中 数掘进行更新的类型的情况。有了这些信息就比较容易有针对性地找 j 出一个合适的物化视图方案,如s t a rc u b e 算法 7 】。 第二类适用于完全不了解这个o l a p 系统将来的查询分布的情 况,+ 因此其适用范围最广,如p b s 3 1 算法,以及g r e e d y 3 2 3 3 】算法, 但这样的算法往往复杂度过高,如前面提到的两种算法的复杂度按维 数呈几何级数增长,因此对于较为复杂的多维数据集没有太大实用价 值。 立方体生成算法分析如下: 第一类计算方法主要思想是通过共享输入、共享排序结果来减少 北京交通大学硕十学位论文 读磁盘的次数、字节数和计算时问。如b u c 算法,h b u c 算法【1 4 】。 另一类计算方法是通过对进入数据立方体的元组施加了限制条 件,减少了数据立方体的元组个数。如i c e b e r g 算法【3 0 ,c o n d e n s e d c u b e 2 8 ,q u o t i e n tc u b e 2 6 】,d w a r f 2 9 平1 1 封闭立方体【1 1 】。 1 2 课题目的和意义 本文的目标是设计一种高效的带层次的数据立方体生成算法。 论文提出了维关联多维数据模型( r dc u b e ) ,模型中分析了立方 体维度间的相互关联性;在一个数据仓库( 星型或雪花型) 的基础上, 通过改进s t a rc u b e 的非划分维度思想,同时根据r dc u b e 中的维度关 联特性,提出了一种带层次的数据立方体物化视图选择策略。最后, 在b l b u c 算法的基础上,结合封闭立方体的生成方法,实现了r dc u b e 的带层次物化视图生成算法。 1 3 论文各部分的主要内容 论文的主要研究方向是数据立方体的生成,不涉及立方体的查询 分析和立方体的维护算法。在一个数据仓库( 星型或雪花型) 的基础 上,通过分析立方体维度间的关联性,选择立方体的物化视图,最后 生成带层次的数据立方体。 论文的章节分配: 1 第一章综述:介绍研究课题的由来,国际国内相关技术的研究现 状以及本文的组织结构; 第二章数据立方体基本概念:介绍有关数据仓库的概念特点与体 一2 一 综述 系结构,然后针对数据模型的一些基本概念如维、数据立方体、视图 等进行了介绍;最后是对数据仓库的主要应用o l a p 进行了介绍。 第三章维关联多维数据模型:首先讲述了多维数据模型的基本概 念;然后分析了数据立方体中维度之间的关联性,提出了维关联多维 数据模型,把维关联数据立方体简称为r dc u b e ;最后把封闭元组的 思想扩展到到层次的数据立方体中。 第四章讲述了r dc u b e 物化视图的选择策略:根据r dc u b e 中的 维度关联特性,引进并深化s t a rc u b e 中非划分维思想,演示了r dc u b e 的带层次物化视图选择策略。 第五章维关联数据立方体的生成算法:在h b u c 的基础上,结 合封闭立方体的生成方法,实现了r dc u b e 的生成算法。 第六章用实际数据对算法进行测试,验证了r dc u b e 的高效性。 第七章总结和展望一总结本文的研究内容,表明了后续的研究工 作。 附录:参考文献、致谢 一3 数据仓库基本概念 2 数据仓库基本概念 2 1 数据仓库概述 随着计算机技术的飞速发展和企业界不断提出新的需求,数据仓 库技术应运而生。传统的数据库技术是单一的数据资源,即数据库为 中心,进行从事事务处理、批处理到决策分析等各种类型的数据处理 工作。近年来,网络计算开始向两个不同的方向拓展,一是广度计算, 一是深度计算,广度计算的含义是把计算机的应用范围尽量扩大。同 _ - 时实现。泛的数据交流,互联网就是广度计算的特征,另一方面就是 人们对以往计算机的简单数据操作,提出了更高的要求,希望计算机 能够更多的参与数据分析与决策的制定等领域。特别是数据库处理可 以大致地划分为两大类:操作型处理和分析型处理( 或信息型处理) 。 这种分离,划清了数据处理的分析型环境与操作型环境之间的界限, 从而由原来的以单一数据库为中心的数据环境发展为一种新环境;体 系化环境。 数据库系统作为数据管理手段,从它的诞生开始,就主要用于事 务处理。经过数十年的发展i 在这些数据库中已经保存了大量的闩常 业务数据。传统的业务系统一般是直接建立在这种事务处理环境上 的。随着技术的进步,人们试图让计算机担任更多的工作,面数据库 技术也一直力图使自己能胜任从事务处理、批处理到分析处理的各种 类型的信息处理任务。后来人们逐渐认识到,在目前的计算机处理能 力上,根本无法实现这种功能,而且,另一方面,事物处理和分析处 一5 一 北京交通大学硕士学位论文 理具有极不相同的性质,直接使用事务处理环境来支持决策是行习i 通 的。 事务处理环境不适宜d s s 应用的原因主要有以下五条: ( 1 ) 事务处理和分析处理的性能特性不同。 在事务处理环境中,用户的行为特点是数据的存取操作频率高而 每次操作处理的时间短;在分析处理环境中,用户的行为模式与此完 全不同,某个d s s 应用程序可能需要连续几个小时,从而消耗大量的 系统资源。将具有如此不同处理性能的两种应用放在同一个环境中运 行显然是不适当的。 ( 2 ) 数据集成问题。 d s s 需要集成的数据。全面而正确的数据是有效的分析和决策的 首要前提,相关数据收集得月完整,得到的结果就越可靠。当前绝大 多数企业内数据的真正状况是分散而非集成的。造成这种分散的原因 有多种,主要有事务处理应用分散、“蜘蛛网”问题、数据不致问 题、外部数据和非结构化数据。 ( 3 ) 数据动态集成问题。 静态集成的最大缺点在于,在数据集成后数据源中的数据变化将 不能及时的反映给决策者,导致决策者使用的是过时的数据。集成数 据必须以一定的周期( 例如2 4 小时) 进行刷新,我们称其为动态集 成。显然,事务处理系统不具备动态集成的能力。 ( 4 ) 历史数据问题。 事务处理一般只需要当前数据,在数据库中般也是存储短期数 据,并且不同数据的保存期限也不一样,即使有一些历史数据保存下 来了,也被柬之高阁,未得到充分利用。但对于决策分析而言,历史 数据是相当重要的,许多分析方法必须一大量的历史数据为依托。没 一6 一 数据仓库基本概念 有历史数据的详细分析,是难以把握企业的发展趋势的。d s s 对数据 在空间和时间的广度上都有了更高的要求,而事务处理环境难以满足 这些要求。 ( 5 ) 数据的综合问题。 在事务处理系统中积累了大量的细节数据,一般而苦,d s s 并不 对这些细节数据进行分析。在分析前,往往需要对细节数据进行升i 同 程度的综合。 t 要提高分析和决策的效率和有效性,分析型处理及其数据必须与 擞作型处理及其数据相分离;必须把分析型数据从事务处理环境中提 取出来,按照d s s 处理的需要进行重新组织,建立单独的分析处理环 境,数据仓库正是为了构建这种新的分析处理环境而出现的。种数据 存储和组织技术。 关系数据库能够处理大型数据库,但不能将其简单地堆积就直接 作为数据仓库进行使用,这是因为数据仓库与传统的关系数据库存在 很大差异。数据仓库是构成决策支持系统基础的分析型数据库,用来 存放大容量的只读数据,为制定决策提供所需的信息,主要的使用者 是企业的管理、决策人员。因此,数据仓库中的数据主要用于分析, 我们称为分析型数据。分析型数据与操作型数据的区别见表2 1 。 表2 1 操作型数据和分析型数据的区别 操作型数据分析型数据 细节的综合的,或提炼的 在存取瞬间是准确的。代表过去的数据 可更新 不更新 操作需求事先可知道操作需求事先不知道 一7 一 北京交通大学硕士学位论文 生命周期符合s d l c完全不同的生命周期 对响应时间的要求高 对响应时间的要求宽松 事务驱动 分析驱动 非冗余型时常有冗余 面向应用面向主题 一次操作数据量小一次操作数据量大 为日常操作服务 为管理者服务 访问频繁 访问频度适中或很少 个人级数据: - - - - - - - 图2 1 数据仓库体系结构图 一8 一 旦园卫里囤 日曰_ 日嚣 数据仓库基本概念 2 2 数据仓库体系结构 2 2 1 数据组织 数据仓库中的数据一般分为细节层数据、综合级数据和元数据。 细节层数据源自企业事务处理系统( 操作型系统) ,是企业事务处理系 统的历史记录的集合。综合级数据是根据细节层数掘进一步汇总统计 后得到的中间层数据,用以提高数据仓库数据查询效率,简化决策支 持应用的复杂度。元数据是细节层和综合级数据的描述性数据和管理 数据的集合。 在这样的组织形式中,新生成的操作型数据通过数据集成和数据 维护机制加入数据仓库的细节层数据。综合级数据基于数据刷新策略 和算法,随细节层数据变化而变化。元数据也动态地变化以反映数据 的变化。 2 2 2 数据仓库体系结构 典型的数据仓库体系结构环境是一个从操作型数据,到全局数据 仓库,再到部门数据仓库,最后到个人计算环境的四层结构。数据的 流向可以采用自顶向下的方式,也可以采用自底向上的方式。 图2 1 描述了一种典型的数据仓库体系结构。在这个结构中,从 _ _ 功能结构上可以分为数据集成数据仓库管理维护和数据仓库应用三 层。集成工具将操作型数据集成到不同级别的数据仓库存储中。各级 数据仓库数据既包括细节层数据,也包括不同汇总层次的综合级数据 和元数据。 数据仓库引擎通过数据仓库设计过程建立数据模型,生成元数据, 一9 一 北京交通大学硕士学位论文 对元数据和实际数据实施维护,并为前端应用提供各种支持并提供相 应接口,对数据仓库对象实施安全管理。 对于图2 1 所示的数据仓库的体系结构,按功能划分包括以下六 个模块。 c u b e 服务器。它是整个数据仓库系统的核心j 因此又被称为数 据仓库引擎。数据仓库引擎完成的功能主要包括如下部分:数据模型 韵表示j 元数据的管理、数据仓库的物理结构建立、各种脚本代码的 生成、应用支持、w e b 服务,安全认证等。 数据仓库模型定义工具。这是数据仓库的重要组成部分,完成立 r 方体数据建模,生成视图并优化立方体性能的任务。 o l a p 分析工具。该工具允许用户在大数据集上完成复杂的数据 分析,为用户提供从综合报告、数据分析到数据建模、决策支持的解 决方案,并且具有很好的性能。目前主要的查询操作有卷取与钻取、 切片与切块、旋转、过滤、图表、排序、简单查询以及多种形式的报 表显示。 数据仓库维护工具。该工具完成数据仓库的日常维护工作,尤其 是立方体数据的增量式维护。 数据仓库数据集成工具( e t l ) 。该工具的功能是访问各种数据源的 数据,把它们转换成为一种统一的格式,校验数据的完整性,最终把 数据存储到数据立方体中供其他使用者访问。 数据挖掘工具。它是数据仓库进行决策支持的重要组成部分。它 能从众多的数据中,提取分析隐藏的规则,为铁路部门进行经营决策 提供辅助支持。 一1 0 一 数据仓库基本概念 2 3 联机分析处理操作 运用多维数据模型,- 可以进行多种联机分析处理操作,如向上 综合( r o l lu p ) 、向下考察( d r i l ld o w n ) 、旋转( p i v o t i n g ) 、局部分析( s l i c i n g d i c i n g ) 等因此,联机分析处理的过程就是根据数据分析的要求, 从原始数据中构造各种数据立方体,并对立方体执行有关的操作, 再把结果返回给用户的过程 在实现中,出于对效率的考虑,常常需要预先计算一些维上的 聚集,以使在回答有关查询时,能够直接使用聚集数据,而不需 要从原始数据开始计算对于基于大规模数据集的数据立方体而言, 预先计算关键聚集,对性能改善具有重要作用。显然,在具有n 个 维的原始数据上可能的聚集共有2 “种。上一层的聚集可以从下一层 的聚集中由再对其中的一个维进行聚集而得到。一个聚集也称为数 据立方体的一个节点( c u b ei d ) 。 联机分析处理是针对特定问题进行联机的数据访问和分析。它通 过对信息的很多种可能的观察形式进行快速、稳定、一致和交互性的 存取,允许管理决策人员对数据进行深入观察和分析。 联机分析处理专门设计了用于支持复杂分析的操作,侧重对决策 人员和高层管理人员的决策支持,可以应分析人员的要求快速、灵活 地进行大数据量的复杂查询处理,并且以一种直观易懂的形式将查询 结果提供给决策人员,以便他们准确掌握企业的经营状况,了解市场 需求,制订正确方案,增加效益。 o l a p 的实现方式有三种:基于多维数据库的o l a p ( m o l a p ) 、 基于关系数据库的o l a p ( r o l a p ) 和混合型的o l a p ( h o l a p ) 。 北京交通大学硕士学位论文 2 3 1 基于多维数据库的o l a f ( m o l a p ) 这种o l a p 的核心是多维数据库( m d d b ) 技术。它以多维的方 式来组织数据,以多维的方式存储数据。多维数据库中的数据组织形 式采用了二维矩阵的形式,以较少的空间更明确地表达了现实世界中 的“一对多”和“多对多”关系。因而,多维数据库具有很高的综合 速度。基于多维数据库的o l a p 需要多维查询语言m d s q l 。图 2 2 给出m o l a p 的结构图。 图2 2m o l a p 结构图 2 3 2 基于关系数据库的o l a p ( r o l a p ) 这种o l a p 的核心是关系型数据库( r d b ) 技术。在使用这种技 术时,关系型数据库将多维数据库中的多维结构划分为两类,一类是 事实表,用来存储事实的度量值及各个维的码值;另一类是维表,对 于每一个维来说,至少有一个表用来保存该维的元数据,即维的描述 信息,包括维删罢次及成员类别等。事实表是通过每一个维的值和维 表联系在一起的,该结构有时被称为“星型模式”。如果用多个表来 描述一个复杂维。这样在“星”的角上又出现了分支,这种变形的“星 一1 2 数据仓库基本概念 型模式”被称为“雪花模式”。基于关系型数据库的o l a p 韵优势是 技术成熟,有现成的产品可以借鉴,开发过程快,风险小。其缺点是 速度不如基于多维数据库的o l a p 快。图2 3 给出r o l a p 结构图。 s q t ,存取多维 多维存取一俑 综合 引擎 出拶 图2 3r o l a p 结构图 多维视图 2 3 3 混合型的o l a p ( h o l a p ) 混合型的o l a p 是将基于多维数据库的o l a p 和基于关系型的 o l a p 结合起来,汲取它们各自的优势而形成的。对于操作型细节数 据使用关系型数据库进行管理,而对于综合性的数据则使用多维数据 库实现o l a p 操作。这种o l a p 实现方式的缺点是过于复杂。 一1 3 一 j 匕京交通大学硕十学位论文 3 维关联多维数据模型 3 1 多维数据模型 3 1 1 维及维层次 维( d i m e n s i o n ) 是人们观察数据的特定角度,是视图的分组属性。 例如,当人们从时间的角度来观察一个企业的产品销售数据时, 数据可以分为1 9 9 9 年的销售额、2 0 0 0 年的销售额和2 0 0 1 年的销售额 等;当人们从地区的角度来观察一个企业的产品销售数据时,数据就 又可以看成是北京市的销售额、上海市的销售额和广州市的销售额 等。数据的维往往有多个。这里,时间、地区都各是一个维。假设该 销售数据只有时间维和地区维,那么如果我们在时间维上取一个值 “2 0 0 0 年”,地区维上取一个值“北京”,就唯一确定了销售额的个 值。又如铁路货运数据仓库中的发送方、接收方、时间等都是维。维 是具有层次性的,如发送方和接收方维有站一分局,局三个层次,时 间维有日一月一季一年四个层次。维中层次之间依箭头顺序一层比一 层更加概括。在数据仓库中维及维层次是一个很重要的概念,它对应 两个重要的查询操作:钻取( d r i l ld o w n ) 和卷取( r o l lu p ) 。所谓钻取 是指对应于某一维逐步向更细节层方向观察数据,而卷取则反之。 下面详细介绍和维密切相关的两个概念一层次关系和多维分 析。 一维层次关系 人们通过某个特定角度观察数据( 即“维”) 时,对数据进行描述 一1 4 维关联多维数据模型 的细节程度可能是不同的:这些细节程度不同的描述形成了维的层 次。就时间维来说,可以从门期、月份、季度、年等不同层次来描述, 地区维也可以有城市、省、国家等不同层次。 例如,时间维的层次可以是:日,月,季,年。其中日是最细节 层,月为次细节层。这些层次可以组织成层次图,图3 1 给出了时间 维的层次图,d 2 1 d 2 2 ,d 2 3 和d 2 4 分别表示年,季,月,曰。在维 层次图的最低层,加入了最高抽象层元素,表示为由,对于时间维而 言,它表示对所有日期的数据进行聚集,即分组属性集中不包含同期 维。 d 1 4 发送站 a t 2 发送分局 d 1 1 发送局 市 治区 ( a ) 发送方维( b ) 图3 1维格示例 啦4 日 如月 趣2 季 以1 年 时间维 在o l a p 系统中,维层次是相当重要的,它对应于“向下钻取” ( d r i l ld o w n ) 干l l “卷起”( r o l lu p ) 两个操作。向下钻取对应于沿某一维 逐步地向更细节层的方向观察数据。例如,按从所有日期到年到季到 月到日的方向钻取,用户看到的数据就越来越详细。而卷取则正好相 反。 同时,维内层次也带来维内查询依赖问题。例如,仅考虑按时间 维进行聚集的查询,如果我们用图3 1 给的时间维层次进行聚集,可 一1 5 北京交通大学硕士学位论文 以得到五种聚集视图,分别为按日、月、季、年和全部日期进行聚集 的视图,这些视图对应于时间维上的不同粒度级的数据。用前面所提 的表示方法,可以表示为:( d a y ) ,( m o n t h ) ,( q u a r t e r ) ,(和由。显y e a t ) 然,这些聚集视图间存在如下查询依赖关系: 中( y e a r ) ( q u a r t e r ) ( m o n t h ) ( - ( d a y ) 我们这里采用的日期维属性间的层次关系为全序。实际上,有些 维的属性间层次关系并不是全序,而是偏序。例如,在货运量主题中, 货物发送者维需要考虑按省市自治区进行分析统计,而铁路局和分局 的设置是跨省区的,同属于某一分局的不同货运站可能属于不同的省 份,这样,发送方维具有如图3 1 ( a ) 所示的层次关系,这些元素间的 关系是偏序。 二多维分析 多维分析是指对以多维形式组织起来的数据采取切片、切块、旋 转等各种分析萌作,以求剖析数据,使最终用户能从多个角度、多侧 面地观察数据库中的数据,从而深入地了解包含在数据中的信息、内 涵。多维分析方式迎合了人的思维模式,因此减少了混淆并且降低了 出现错误结果的可能性。 3 1 2 数据立方体 数据仓库的数据通常通过多维模型进行组织以支持o l a p 等决策 支持应用。数据立方体是定义于主题多维数据模型上的多维视图的集 合体。 数据立方体是对某一主题下的所有视图进行组织的一种数据结 构。一般而占,一个主题对应一个数据立方体。 数据立方体将数据仓库中的数据分为两部分:维( d i m e n s i o n ) 和 一1 6 维关联多维数据模型 度量( m e a s u r e ) 。维规定数据的性质,度量表明数据的量。如果将维作 _ 为坐标,将度量作为坐标系中点的值,当有两个维时,就形成了一个 平面;当有三个维时,形成了立方体;维有三个以上时,形成了超级 立方体。 数据立方体大致可以分为两类: 不考虑维的层次关系,此时维所对应的坐标轴的值域为0 和1 , 如果数据立方体共有r 1 个维,则可能的视图有2 j ? ( 包括空视图) 个。 这种立方体较为简单,称为超级立方体。以货运数据仓库中货物运输 量为例,该主题包含三个维即发送方、接收方、时间,对应的数据立 方体有8 个视图,他们分别是空、( 发送方) 、( 接收方) 、( 时间) 、( 发 送方,接收方) 、( 发送方,接收方,时间) 。对这些视图按其大 小关系组成多维结构即构成数据立方体,如图3 2 所示。 e t 期) 图3 2 货运数据仓库中运输量超级立方体 考虑维的层次,则维中的视图个数为n u m i t * n u m 。个。其中n u m 。 为d i 维层次结构中元素的个数。( 单个视图分组属性的不同排列视为 同一视图) 。考虑数据立方体中各维的层次结构以后,数据立方体的 视图将大大增加。显然,前面所述的超级立方体已经无法表达由于维 内属性间的层次关系带来的维内查询依赖问题。数据立方体由多个视 图组成,每个视图代表了数据立方体中的一个点,表示人们从某个角 一1 7 北京交通大学硕士学位论文 度或层次对数据仓库中数据的看法。视图在每个坐标轴上的驭值是该 坐标轴所对应维的层次。 3 1 3 视图 + 视图存放着聚集过的数据,它本身也可以看成是一个超级立方体: 视图中的数据也可分为维和度量值,当维作为坐标轴、度量作为空间 中点的值时,就构成了超级立方体。与数据立方体不同的是,坐标轴 的取值是维在浚层次中的值域。 在传统的关系型数据库管理系统中也有视图的概念,它是指根据 其他源数据引出的一种关系的定义,源数据可以是表也可以是已经定 义好的视图。在关系型数据库中,虽然从用户的角度看来视图与普通 表没有差别,但视图中并不实际存放数据。 在数据仓库中,视图也可以看成是从基事实表中引出的关系的定 义。为了提高查询性能,可以事先计算出视图中的聚集数据并存储在 视图中。我们将实际存放数据的视图称为物化视图。由于数据仓库中 的数据量通常十分庞大,对物化视图进行存取的时间将远远小于对视 图进行重新计算的时间。 数据立方体的实现有三种策略: ( 1 ) 全部物化 数据立方体中的视图全部是物化视图。当数据立方体的视图都是 物化视图时,其查询性能达到最佳。然而,当数据源发生变化时,为 保持数据的一致性,要对数据立方体进行更新操作。在全部物化的情 况下,系统要重新计算出所有视图的数据并将其写入视图。当数据立 方体的视图的数量较多时,对全部物化策略的数据立方体进行维护将 耗费太量的时间和系统资源。 一】8 一 维关联多维数据模型 ( 2 ) 全都不物化 数据立方体中的视图全部是非物化视图即虚视图。当数据立方体 的视图都是虚视图时,由于虚视图中不存储数据,不需要进行维护。 但由于当用户对虚视图中数据提出请求时,必须根据虚视图的定义计 算出视图的数据返回给用户,因此查询等待时间较长。如果基事实表 中的记录数很多,那么整个数据立方体中的视图都是虚视图时,查询 性能必然会相当差。鉴于数据仓库的数据量通常很大,该策略是不现 实的。 ( 3 ) 部分物化 为了达到查询性能和维护性能的平衡,我们通常采取部分物化的 策略。部分物化是指根据一定算法选择一部分视图进行物化,使得数 据立方体的整体数据查询性能和数据维护性能达到一种平衡。物化视 图的选择有很多种算法。 3 1 4 粒度 粒度是指对数据仓库的数据单位中保存数据的细化或综合程度的 级别,细节程度越高,粒度级就越小;相反,细节程度越低,粒度级 就越大。在传统的操作型系统中,对数据的处理和操作都是在详细的 数据级别上的,但是在数据仓库环境中主要是分析型处理,粒度的划 分直接影响数据仓库中的数据量以及所适合的查询类型:在数据仓库 中的数据量大小与所能回答查询的细节级别之间要做出权衡,即: 1 、粒度的选择需要在查询数据量上进行权衡。因为: a ) 粒度级越低,数据仓库中存储的数据量越大; b ) 粒度级越低,对查询的回答越详尽。 2 、要在粒度层次和计算能力上进行权衡。因为: 一】9 一 北京交通大学硕士学位论文 对于低粒度层次,有大量的详尽数据。对于与粒度无关的查询, 需要有能力进行信息集成,以便能快速地将答案显示在屏幕上。汇总 也会减少所需求的切片数量。 3 1 ;5 与关系数据模型的比较 关系数据模型中,数据是以二维表的形式反映出来的,在多维数 据模型中,数据是以多维逻辑方式组织,数据在各个维之间相互交叉, 形成立体的数据视圈,所谓维就是同类数据的集合,这些数据可以是 关系数据模型中的平坦结构,也可以是一种层欢结构,但它们所表示 的语义必须与客观实际相符。多维数据模型在数据仓库中的概念组织 方式采用星型和雪花型结构模型:在模型中,有3 个实体:指标实体、 维度实体、详细类别实体。由于计算机硬件的固有原因( 二维或一维的 存储结构) ,作为多维数据模型核心的数据立方体结构,一般仍旧采用 关系数据库方式存储,这就需要将多维数据模型转换成e _ _ r 模型、 以二维表存储,但在设计过程中必须在概念、逻辑上与多维数据模型 保持一致。 3 2 维度特性分析 3 2 1 维度存储模式 维度可以使用以下两种存储模式之一:多维o l a p ( m o l a p ) 或 关系o l a p ( r o l a p ) 。 存储模式将决定维度数据的位置和形式。m o l a p 维度的数据以 多维结构存储在o l a p 服务器上。该结构是在处理维度时创建的。 r o l a p 维度的数据是该维度的一个或多个表。 一2 0 维关联多维数据模型 m o l a p 雄度提供的查询性能比r o l a p 维度更好。但是, m o l a p 存储模式一般不支持具有l 千万或更多个成员的巨型维度。 只将r o l a p 存储模式用于特别大的维度,这些维度通常具有5 百 万到l 千万个成员。 3 2 2 维度层次结构 层次结构是维度中成员的集合以及这些成员。之问的相对位置。对 于出数据挖掘模型创建的维度,其层次结构代表该挖掘模型的节点结 构。 有时用金字塔结构表示层次结构。唯一例外的情况是其所有成员 都处于同一级别的层次结构。m e a s u r e s 维度的层次结构就是这样一个 例子。 在金字塔形层次结构中,成员是从顶部到底部逐步细化的。例如, 用c o n t i n e n t , c o u n t w 和c 时定义的g e o 卿h y 维度中,各成员将 按定义顺序显示,成员e u r o p e 显示在层次结构的顶层,成员f r a n c e 显示在中层,而成员p a r i s 显示在底层。f r a n c e 比e u r o p e 更具体, 而p a r i s 比f r a n c e 更具体。在金字塔形层次结构中,级别越低,包 含的成员越多t 比如在上述例子中,国家地区比洲多,而城市比国家 地区多。 有以下几种层次结构类型:均衡层次结构、不均衡层次结构和不 规则层次结构。 ( 1 ) 均衡层次结构和不均衡层次结构 在均衡层次结构中,层次结构的所有分支都降至同一级别,而且 每个成员的逻辑父代就是其上一级成员。在不均衡层次结构中,层次 结构的分支降至不同级别。在均衡层次结构中,层次结构的所有分支 一2 】一 北京交通大学硕+ 学位论文 都降至同一级别,而且每个成员的逻辑父代就是其上级成员。例如, 在上述g e o g r a p h y 维度中,如果国家地区成员限制为f r a n c e 和 g e r m a n y ,那么维度的层次结构就是均衡的。层次结构的所有分支都 终止于c 畸级别的城市。每个城市的父代可能是f r a n c e ,也可能是 g e r m a n y ,而e u r o p e 则是这两个国家的父代。 在不均衡层次结构中,层次结构的分支降至不同级别。例如, o r g a n i z a t i o n 维度包含公司中每位员工的成员。c e o 是层次结构中的 项级成员,部门经理和执行秘书直接位于c e o 下面。部门经理还有 下属成员,但执行秘书没有。 ( 2 ) 不齐整层次结构 在不齐整层次结构中,一个成员的逻辑父代至少有一个并不直接 位于该成员上一级。这将导致层次结构的分支降至不同的级别。不齐 整维度是指维度中至少有一个成员的逻辑父代不直接位于该成员的 上一级。例如,g e o g r a p h y 维度由级别c o u n t r y 、p r o v i n c e 和c 时组 成。g e n e v a 的逻辑父代是s w i t z e r l a n d ,因为s w i t z e r l a n d 没有划分 省份。因为缺少p r o v i n c e 级别的信息,所以g e o g r a p h y 维度变成了 一个不齐整维度。 ( 3 ) 具有多个层次结构的维度 a n a l y s i ss e r v i c e s 支持具有多个层次结构的维度。这些维度提供 的多维数据集数据视图相类似,而且可以相互替代。例如,具有两个 层次结构的t i m e 维度可以由一个常规日历层次结构和一个财务日 历层次结构组成。在a n a l y s i ss e r v i c e s 中,多重层次结构维度定义为 两个或两个以上维度,这些维度的名称具有相同的前缀,后面接一个 旬点,再加上不同的后缀( 例如,维度名称为t i m e c a l e n d a r 和 t i m e f i s c a l ) 。后缀不能与维度中当前或以后的级别名称或成员名称相 一2 2 维关联多维数据模型 同,因为这样将可能使使用该维度进行的查询变得含混不清。 维度的级别和成员: 级别是维度层次结构的一个元素。级别描述了数据的层次结构, 从数据的最高( 汇总程度最大) 级别直到最低( 最详细) 级别。 级别仅存在于维度内。级别基于维度表中的列或维度中的成员属 性。 级别在维度内定义,以指定维度层次结构的内容和结构。即,级 别的定义确定层次结构中包含的成员以及它们在层次结构中的相互 位置。 3 2 3 时间维分析 ”季度”级别可能包含四个成员:”第一季度”、”第二季度”、”第三 季度”和”第四季度”。但如果表中的数据跨越一年以上,则”季度”级别 将包含四个以上的成员;例如,如果”年”级别包含三个不同的成员 1 9 9 6 、1 9 9 7 和1 9 9 8 ,则”季度”级别就包含1 2 个成员。 下图解释了单独一年的”时间”维度中级别和成员的关系。( 向下的 箭头表示未显示的成员。每个月份都有”日”成员,但由于篇幅所限只 显示了一月份的”同”成员。) 级别 聋 季度 月 日 成贵 压匐匮麴匝期匮嘲 啐萌唾唾嘻苘睡嚼 图3 3 时间维 一2 3 北京交通大学硕士学何论文 3 2 4 维度的相关性分析 相关性维度是其成员由另一维度的成员决定的维度。当两个维度 的成员的矢量积结果导致无法共存的组合百分比很高时,称一个维度 与另一个维度相关。例如,c u s t o m e rg e n d e r 维度与c u s t o m e r s 维度 相关。由这两个维度的最低级别成员的矢量积所导致的不能共存的组 合占百分之五十。因为每位客户只能有一种性别。 在维关联数据立方体的物化视图选择中用“维间的关联性”和“维 与维层次阈的关联”来减少物化视图的个数,从而达到压缩空间的效 果。 3 3 维关联多维数据模型 3 3 ;1 数据立方体基本定义 数据立方体的基本定义引用了文献 1 2 的相关内容。 为了方便地讨论数据立方体,需要对所涉及的域进行扩充,增 加两个元素:上和a l l 。 定义3 1 f 域的扩充) 域d 的扩充域d + = d u 上,爿儿 ,并且, 若 是d 上偏序关系,则上是( d + , ) 上最小元,a l l 是( d + , ) 上最大元,即v 疗刚) 十,j - d i f f 矿上,d 0 ,称为指标的域,m d a n i ( 1 j 卅) 都是域; ( 4 ) m = m1 ,j ,m 。) ,称为指标标识集,m i ( 1 f m ) 是m d a n i ( 1 f 埘) 的扣识; ( 5 ) f :d a n m 出n 是d a n 到m d a n 上的部分映射,称为立方体的 基( c u b eb a s e ) ( 6 ) a g g r 是m d a n 上的聚集函数。 记( d a n ,m d a n ,a g g r ) 为数据立方体c u b e 的特征( s i g n a t u r e ) 。 当维和指标的值域都明确时,可以使用维的标识来代表维的名称 和维的域,使用指标的标识代表指标的名称和指标的域,这时,数据 立方体可以简记为四元组c u b e = ( d ,m ,二a g g r ) 。 定义3 4 ( 同摹数据立方体集) d a n m d a n 是域集d a n 到域 集m d a n 上的部分映射,c u # e := ( d a n ,d ,m

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论