(计算机应用技术专业论文)数据仓库中提高多表连接查询效率的研究.pdf_第1页
(计算机应用技术专业论文)数据仓库中提高多表连接查询效率的研究.pdf_第2页
(计算机应用技术专业论文)数据仓库中提高多表连接查询效率的研究.pdf_第3页
(计算机应用技术专业论文)数据仓库中提高多表连接查询效率的研究.pdf_第4页
(计算机应用技术专业论文)数据仓库中提高多表连接查询效率的研究.pdf_第5页
已阅读5页,还剩58页未读, 继续免费阅读

(计算机应用技术专业论文)数据仓库中提高多表连接查询效率的研究.pdf.pdf 免费下载

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

文档简介

摘要 近年来数据仓库技术成为计算技术最活跃的主要领域之一,数据仓库与联机 分析处理技术的应用范围十分广泛,包括金融、保险和政府部门等各行各业,可 用于客户关系管理和企业资源计划等多方面的决策分析。由于要对数据仓库中的 大量数据进行分析,查询效率是个关键问题。联机分析处理o l a p 查询经常涉及 多表连接,所以提高多表连接的性能就成了提高o l a p 查询处理的关键性问题。 本文的主要内容就是讨论提高多表连接查询效率的问题。 首先,简述了数据仓库与联机分析处理的概念,并介绍了目前研究比较成熟 的主要的数据仓库技术。 其次,介绍了关系数据库中的操作语言s q l 与多表连接查询相关的研究,详 细地分析了连接索引和多表连接算法对提高多表连接查询效率的优缺点。 最后,针对目前直接提高多表连接效率的方法,多表连接算法和连接索引, 提出了变形多表连接索引。该方法基于使用s q l 语句表述的查询模型库q m b 建立 一系列符合条件的变形多表连接事实表,并建立这些变形多表连接事实表的索 引。在特定的多表连接查询中,变形多表连接事实表能替代原事实表与各维表连 接,并在查询处理过程中动态更新。通过理论分析和实验表明,该方法可以有效 地提高多表连接的查询效率。 本文提出的方法与其它提高多表连接查询效率的方法不发生冲突,同时使用 会更好地提高多表查询效率。 关键词:数据仓库:多表连接;查询处理 a b s t r a c t s i n c et h er e c e n ty e a r s ,d a t aw a r e h o u s eh a sb e c o m eo n eo ft h em o s tp o p u l a r r e s e a r c ha r e a so fc o m p u t e rt e c h n o l o g i e s d a t aw a r e h o u s ea n do n l i n e a n a l y t i c a l p r o c e s s i n ga r ea p p l i e de x t e n s i v e l yi nf i n a n c e ,i n s u r a n c e ,g o v e r n m e n ta n dm a n yo t h e r i n d u s t r i e st om a k ed e c i s i o n sf o rc u s t o m e r r e l a t i o n s h i pm a n a g e m e n t s ,e n t e r p r i s e l e s o u r c ep r o j e c t s ,e t c b e c a u s ea n a l y s e sa r eo r i e n t e dt oam a s so fd a t ai nd a t a w a r e h o u s e ,e f f i c i e n c yi sa ne s s e n t i a lp r o b l e m m u l t i - t a b l ej o i n i n gi su s u a l l yi n v o l v e d i no l a p ( o n l i n ea n a l y t i c a lp r o c e s s i n g ) q u e r i e s ,s oh o wt o i m p r o v ei t sp e r f o r m a n c e b e c o m e sa k e yi s s u eo fo l a pq u e r yp r o c e s s i n g i ti sd i s c u s s e di nt h ep a p e rt h a th o wt oi m p r o v et h ee f f i c i e n c yo fm u l t i - t a b l e j o i n i n gq u e r y f i r s t l y ,w ei n t r o d u c et h ec o n c e p to fd a t aw a r e h o u s ea n do n l i n ea n a l y t i c a l p r o c e s s i n ga l o n gw i t ho p t i m i z a t i o nt e c h n o l o g i e so f d a t aw a r e h o u s e s e c o n d l y ,w eg i v ea ni n t r o d u c t i o nt os q l a n dm u l t i - t a b l ej o i n i n ga l g o r i t h m sa n d a n a l y z et h ea d v a n t a g e sa n dd i s a d v a n t a g e so fj o i ni n d e xa n dm u l t i t a b l ej o i n i n g a l g o r i t h m si ni m p r o v i n gt h ee f f i c i e n c yo fm u l t i - t a b l ej o i n i n gq u e r y t h i r d l y ,t h em e t h o do fd i s t o r t i o n a lm u l t i t a b l ej o i n i n gi n d e xi sp r o p o s e d ,w h i c h c a na c h i e v eb e t t e rp e r f o r m a n c eo nt h ea s p e c to fm u l t i t a b l ej o i n i n gt h a np a r a l l e l m n i t i - j o i n i n ga l g o r i t h ma n dj o i n i n gi n d e x b a s e do nq u e r ym o d e l - b a s e ,i nw h i c h q u e r i e st i t l ee x p r e s s e di ns q l ,t h ea l g o r i t h mb u i l d sas e r i e so fd i s t o r t i o n a lm u l t i - t a b l e j o i n i n gf a c tt a b l e sa n di n d e x e so ft h e m i nm u l t i - t a b l ej o i n i n gq u e r i e s ,d i s t o r t i o n a l m u l t i t a b l ej o i n i n gf a c tt a b l e sj o i n 、i t hd i m e n s i o nt a b l e si n s t e a do ff a c tt a b l e s ,a n d f u r t h e rm o r e ,d i s t o r t i o n a lm u l t i - j o i ni n d e x e sc a nb ed y n a m i c a l l yu p d a t e di nq u e r y p r o c e s s i n g t h e o r e t i c a la n a l y s i sa n de x p e r i m e n t a lr e s u l t ss h o wt h a t d i s t o r t i o n a l m u l t i - t a b l ej o i n i n gi n d e xi sa l le f f i c i e n tm e t h o df o r m u l t i t a b l ej o i n i n gi nd a t a w a r e h o u s e t h em e t h o di sc o m p a t i b l e 、v i t l lo t h e rm e t h o d sw h i c ha r eu s e dt oi m p r o v et h e e f f i c i e n c yo fm u l t i t a b l ej o i n i n gq u e r y i na d d i t i o n ,i tw o u l db em o r ee f f e c t i v ei fu s e t h e ms i m u l t a n e o u s l y k e yw o r d s :d a t aw a r e h o u s e ;m u l t i t a b l ej o i n i n g q u e r yp r o c e s s i n g 厦门大学学位论文原创性声明 兹呈交的学位论文,是本人在导师指导下独立完成的研究 成果。本人在论文写作中参考的其他个人或集体的研究成果, 均在文中以明确方式标明。本人依法享有和承担由此论文产生 的权利和责任。 声明人( 签名) :文1 8 a 切6 年r 月泌日 厦门大学学位论文著作权使用声明 本人完全了解厦门大学有关保留、使用学位论文的规定。厦 门大学有权保留并向国家主管部门或其指定机构送交论文的纸 质版和电子版,有权将学位论文用于非赢利目的的少量复制并允 许论文进入学校图书馆被查阅,有权将学位论文的内容编入有关 数据库进行检索,有权将学位论文的标题和摘要汇编出版。保密 的学位论文在解密后适用本规定。 本学位论文属于 1 、保密() ,在年解密后适用本授权书。 2 、不保密( ) ( 请在以上相应括号内打“”) 作者签名:灰琶 导师签名: 日期:沙易年r 月粕 日期:2 0 。易年d 月y 狗 。 , ( 、, 第一章绪论 第一章绪论 本章首先简述论文的研究背景,包括数据仓库和联机分析处理技术的起源, 目前的研究和发展现状和面l 临的机遇和挑战,然后介绍本课题研究的科学依据 和意义,最后介绍了本文的主要内容和组织。 1 1 论文的研究背景 1 1 1 数据仓库和联机分析处理技术的起源 自2 0 世纪4 0 年代电子计算机问世以来,人们将十进制变为二进制,将文 字编码变成位串形式,进而将图像、图形和声音等多媒体信息数字化,利用计 算机存储和处理。对各种不同形式的数据的获取、编码、存储、分析和维护涉 及“数据管理”的课题。数据管理的发展过程主要分为四个阶段:人工管理阶 段。文件系统阶段斗数据库系统阶段斗数据仓库和决策支持系统阶段。 人工管理阶段是数据管理的最低阶段,随后被文件系统取代,但是这个阶 段处理的数据冗余度大,且数据和程序缺乏独立性。6 0 年代后期,数据管理进 入数据库时代,数据库系统以其特有的三级模式组织和管理数据,极大地提高 了系统性能,它使人们从以前日常繁重的手工操作中解脱出来,完成许多以前 无法完成的工作,但它对分析处理的支持一直不能令人满意。数据库系统面临 着几大难题:没有对那些对管理决策者有重要意义的数据加以分析,无法发挥 应有的作用和潜力;不同的互不兼容的数据库系统无法实现数据交换;数据的 集成因为实际的操作等问题与理论存在很大的差距。因此,人们逐渐尝试对联 机事务处理数据库中的数据进行再加工,企图形成一个综合的、面向分析的环 境。 到了2 0 世纪8 0 年代,就出现了数据仓库( d a t aw a r e h o u s e ,简称d w ) 的 概念雏形,其中以i b m 公司提出的“i n f o r m a t i o n w a r e h o u s e ”为代表。但是在 当时由于受到信息技术的限制,没有引起广泛的注意。数据仓库( d a t a 数据仓库中提高多表连接查询效率的研究 w a r e h o u s e ) 概念的形成是由“数据仓库之父”w h i n m o n 在1 9 9 0 年出版的建 立数据仓库( g u i l d i n gt h ed a t aw a r e h o u s e ) 一书中提出来的。i n m o n 将数 据仓库定义为:数据仓库是支持管理决策过程中的、面向主题的、集成的、稳 定的、不同时间的数据集合“3 。数据仓库中的数据是面向主题的,主题是一个 在较高层次将数据归类的标准,每一个主题对应一个宏观的分析领域;数据仓 库的集成特性是指在数据进入数据仓库之前,必须经过数据加工和集成,将原 始数据结构作一个面向应用到面向主题的转变;数据仓库的稳定性是指数据仓 库反映的是历史数据的内容,而不是日常事务处理产生的数据,数据经加工和 集成进入数据仓库后是极少改变或根本不改变的:数据仓库时不同时间的数据 集合,它要求数据仓库中的数据保存时限能满足进行决策分析的需要,而且数 据仓库中的数据都要标明该数据的历史时期。 数据仓库的建立并不是要取代数据库,它是对进入数据仓库的原始数据完 成抽取、转换、过滤、清洗等处理,最终存储在数据仓库中,以及对数据仓库 中存储的数据进行更新、管理、使用、表现等的相关软件工具进行集合,用以 支持数据仓库应用或高层管理决策分析。 1 9 9 3 年e f t o d d 认为联机事务处理已不能满足终端用户对数据库查询分 析的需要,s q l 对大数据库进行的简单查询也不能满足用户分析的需求。用户 的决策分析需要对关系数据库进行大量计算才能得到结果,而查询的结果并不 能满足决策者提出的需求,于是提出了联机分析处理”1 ( o l a p ,0 nl i n e a n a l y t i c a lp r o c e s s i n g ) 的概念并在 p r o v i d i n go l a p ( o nl i n ea n a l y t i c a l p r o c e s s i n g ) t ou s e ra n a l y s t s 一文中提出了有关联机分析处理的十二条准则。 文献 2 对o l a p 给出了自己的定义,并用五个词:f a s m i ( f a s ta n a l y s i so f s h a r e sm u l t i d i m e n s i o n a li n f o r m a t i o n ) 归纳出o l a p 的特点。 是以海量数据为基础的复杂分析技术,是数据仓库中一项重要的应用。联 机分析处理支持各级管理决策人员从不同的角度、不同的综合级别的数据上快 速灵活地进行复杂查询和多维分析处理,以便用户找出商业趋势辅助决策。数 据仓库中的数据模型、数据组织,以及数据仓库中应该存什么样的数据,都要 按照适合联机分析处理的标准来设计。 第一章绪论 l 1 2 目前的研究和发展现状 数据仓库和联机分析处理是商业数据处理领域中的两个最重要的技术。它 们被广泛运用与各行业中,如银行、电信、股市和房地产公司。竞争激烈的商 业环境中,更快更好的作出决策将使公司受益。利用数据仓库,决策者在了解 商业环境的基础上来看待生成的信息和事实,利用商业技巧以及对事实的经验 来提取数据,最后利用所提取的知识做出判断或决策。当具有适当而完整的工 具、良好的训练以及存取并检索信息的能力,数据仓库就会成为有竞争力的商 ! 世工具。数据仓库主要用于利润增长分析、策略管理、顾客关系管理,改变竞 争的基础等方面。 从目前的形势来看,数据仓库已经紧跟i n t e r n e t 而上,成为信息社会中获 得企业竞争优势的关键。i d c 于1 9 9 7 年进行了一项研究,在调查的6 2 家各种 规模的采用了数据仓库的公司之后,得出的结论表明他们的平均r o i ( 投资回 报率) 超过4 0 0 ,使用数据仓库产生的巨大效益反过来有刺激了数据仓库技 术的发展,数据仓库的研究开发和应用大潮正席卷而来。 i n m o n 首次提出数据仓库概念的时候,并没有引起太大的主意,随着企业 组织全球化和国际化趋势进展的同时,人们在实践中开始尝试和研究数据仓库 系统的相关概念和相关技术。近些年来,随着s q l 的升级,软件技术和语言的 不断发展,研究表明,数据仓库的关键在于建立一个某行业、某领域与市场经 济运行机制相符合的d a t am i n i n g 产品。以后便开始出现了许多相关产品,典 型的产品有l i g h t s h i p 产品、o r a c l ee x p r e s s 系列产品、b u s i n e s sm i n e r 产品, 以及p r i m 公司和f o r m i x 公司等研究的有关银行贷款的风险预测与分析的数据 仓库系统等产品,它们都给企业带来了巨大的效益和生机。 国外许多实例证实了数据仓库是解决大型( 多平台) d b s 信息集成、处理 与预测的最好方案,国内数据仓库专家开始研究数据仓库和其相关技术,数据 仓库的应用开始走向实践。有部分大型企业都建立了自己的数据仓库,并获得 了巨大的经济效益,如宝钢集团、大庆石油公司、中国银行等,但这些数据仓 库产品还远未达到人们对数据分析的期望、数据仓库的研究仍处于一个方兴未 数据仓库中提高多表连接查询效率的研究 艾的阶段,数据仓库已经成为数据库重要的未来发展方向。 在国内,很多高校对数据仓库技术进行研究,希望能提供更高的查询分析 效率。研究主要集中在数据仓库的体系结构、数据仓库的建模、数据仓库中数 据的组织和存储、数据立方体的计算、索引技术、物化试图技术和并行处理技 术等方面,都取得了很多不错的成果。 1 1 3 面临的机遇和挑战 随着硬件的发展、通讯技术的进步和数据库技术的发展,使得很多有挑战 性的应用都得以实现,数据量越来越大,数据形式更多样,并且数据分布世界 各地。数据仓库是2 0 世纪9 0 年代中后期开始盛行起来的,与此同时,数据仓 库也面临巨大的挑战,用户要求更灵活和更迅速应答的存取数据,并且要求响 应更复杂的查询。 随着数据仓库的不断发展,各行各业不断出现交集,它们互相影响的同时。 它们各自的数据仓库系统也受到影响。然而,在建立数据仓库系统时,每个行 业的数据仓库研究者都建立了适合自己领域的数据仓库模型,并在此基础上实 施数据仓库系统,所以,当数据仓库系统里面趵数据需要结合的时候,就面临 着巨大的不兼容问题。近些年,虽然人们也尝试各种有效的数据仓库模式设计, 并提出一些设计方案,但是效果不是很好。目前没有一种公认的标准方法能够 从这些异构数据源中抽取出一种有效数据仓库模型,这个课题还有待研究,同 时,与之对应的元数据模型还未找到一种公共通用模型,给数据的整合带来了 困难。 另外,数据仓库的突出特点就是数据量大,随着时间的推移,新的数据还 会不断进入,所以,数据仓库面临的首要挑战就是如何有效处理巨型数据库。 面对惊人的数据量,数据处理的低效意味着资源的浪费。如果没有高效的数据 分析工具来处理其中的数据,就如同空守着一座储量丰富的金矿。 在数据的集成上,由于原有的操作性数据库的分散性和不兼容性,再加上 实际操作中不同部门的不同体制,使得集成理论与实际之间存在很大的差距。 真正的挖掘数据的价值,对数据的管理尤为重要,而这个管理也是一个需要深 第一章绪论 入研究的课题。 由于数据库应用的范围越来越广,进入数据仓库的数据的组织方式也从面 向部门级转向面向整个企业级,此时,数据库中可能包含了大量的关系模式, 数据仓库中的一个分析查询请求可能包含很多的关系,或者包含很多的聚集、 综合等操作,所以,数据仓库必须提供有效的查询优化技术优化复杂的查询。 查询处理作为数据库的核心技术一直都备受关注,提供高效的数据查询效 率也是对数据仓库系统设计提出的一大目标。对数据仓库来说,联机分析处理 常常需要涉及大量数据的聚集、综合等,而仓库中数据聚集、综合都涉及到连 接查询,而且连接查询对查询执行的效率影响最大,所以,提高多连接查询的 效率是数据仓库的研究焦点。 1 2 本课题的研究价值 数据仓库和o l a p 是现代决策支持系统的核心部分,也是数据库领域的热点 问题。决策支持系统需要在超大规模的数据仓库上执行复杂的查询,而查询响 应时间必须很快才能满足交互环境的需要。在查询的过程中,消耗时间中很大 一部分用以实现多表连接,所以,是否能提高多表连接效率直接影响系统的查 询反应时间。 文献 4 仅介绍了传统的b + 树索引,还提出了一些新的索引技术,如位图 索引、多维索引和连接索引等,并用实验数据说明了索引的确能提高查询的性 能。连接索引的索引项比整个记录条目要小,所以利用连接索引比直接对原事 实表和维表进行连接相比,会获得更快的查询速度。实际上,一个拥有n 个维 表的星型模式,基于事实表的外键可以建立多个连接索引,当查询涉及到事实 表和维表的连接时,对应繁冗的全连接索引,而全连接索引对查询效率并没有 实质性的改观。文献 1 6 分析了多种连接算法,并且指出,在某些条件下,同 时进行多表连接与通过两两表连接来实现多表连接相比,具有更好的性能,但 是没有给出具体的算法。文献 1 4 和文献 1 5 均提出提高效率的多表连接算法, 但是两种算法基本上节省的只是多次读写磁盘的时间,却没有针对星型模型及 数据仓库中提高多表连接查询效率的研究 查询的特点减少参加连接的各表的元组数,并且放弃了连接索引的使用。 本研究课题隶属福建省高新技术研究开放计划重点项目“开放式数据仓库 集成环境平台”,主要解决提高数据仓库查询效率的问题,是数据仓库运行的核 心技术问题,根据数据仓库中数据的结构特点,多表连接查询很大程度上直接 影响查询效率。在连接索引和多表连接算法的研究基础上,结合多维数据模型 的结构特点和用户在具体查询中的查询趋向,从数据仓库的查询库出发,挖掘 多表连接信息,创建一种全新的变形多表连接索引,并与查询分析器结合,提 供信息高效地生成连接策略,找到更高效率的多表连接方法。 1 3 本文的主要内容和组织 联机分析处理o l a p 查询经常涉及多表连接,所以提高多表连接的性能就成 了提高o l a p 查询处理的关键性问题。对于r o l a p 系统,o l a p 查询一般都涉及 多表连接和分组聚集算法,提高这些操作的性能成为提高o l a p 响应速度的关 键,目前对多表连接的研究主要集中在新的多表连接算法和连接索引,都有可 改进之处。 本文针对多表连接建立了一种全新的变形多表连接索引。 本文是这样组织的:第1 章介绍了论文的研究背景、研究价值以及论文的 内容安排。第2 章简述了数据仓库与联机分析处理的概念,并介绍了目前研究 比较成熟的主要的数据仓库技术。第3 章介绍了与多表连接查询相关的研究。 第4 章提供了变形多表连接索引的建立需要涉及的概念,并给出了变形多表连 接索引建立的方法和变形多表连接索引建立后的查询处理和动态更新的方法, 最后,通过实验验证变形多表连接索引的有效性。第5 章总结本文工作。 第二章数据仓库与联机分析处理 第二章数据仓库与联机分析处理 本章主要介绍数据仓库和联机分析处理的相关概念,首先介绍数据仓库的 定义和它的体系结构,o l a p 的定义及它的一些相关概念,最后,介绍了提高查 询效率的数据仓库的主要技术。 2 1 数据仓库概述 2 1 1 数据仓库定义 数据仓库( d a t aw a r e h o u s e ) 概念的形成是由“数据仓库之父”w h i n m o n 在1 9 9 0 年出版的建立数据仓库( b u i l d i n gt h ed a t aw a r e h o u s e ) 一书中提 出来的。i n m o n 将数据仓库定义为:数据仓库是支持管理决策过程中的、面向 主题的、集成的、稳定的、不同时间的数据集合“1 ,数据仓库这个术语也得到 了推广。 数据仓库还有一些来自其他权威的定义: 数据仓库是一种来源于各种渠道的单一的、完整的、稳定的数据存储,这 种数据存储可以允许最终用户以一种他们能够在其业务范畴中理解并使用的方 式提供给他们。“8 1 数据仓库是有关大量公司数据的数据存储。“” 数据仓库提供公司数据以及组织数据的访问功能;其中的数据是一致的 ( c o n s i s t e n t ) ;其中的数据可以按每种可能的商业度量方式分解和组合;数据 仓库也是一套查询分析和呈现信息的工具;数据仓库是我们发布所用数据的场 所;其中数据的质量是业务再工程的驱动器( d r i v e ro fb u s i n e s s r e e n g i n e e r i n g ) 。1 数据仓库是把信息传播给最终用户供决策支持和管理报告需要的关键。“” 数据仓库是利用信息可用的数据以及过程管理器,使用户能够做出明智的 决策。1 7 数据仓库中提高多表连接查询效率的研究 这些定义从表面上看大相径庭,但是从整体上阅读可以发现它们有如下这 些共同的特征: l 、数据仓库包含大量数据。其中一些数据来源于组织中的操作源程序,其 中也有一些数据可能来源于组织外部。 2 、组织数据仓库是为了更加便利地使用数据进行决策。 3 、数据仓库为最终用户提供了可以来存耿数据的工具。 2 i 2 数据仓库的体系结构 数据仓库是以计算机应用为基础的信息系统,用来支持在各领域的决策分 析。数据仓库作为一个集成了许多数据源的中央数据库系统,从许多不同的联 机事务处理数据源收集和提取数据,并通过一系列汇总计算将数据组织成易于 分析的形式,从而为企业提供了一个信息集成平台,为管理人员和决策者迅速 地提取信息并回答有关业务运作的问题提供支持,包括从数据到信息,从信息 到知识,最终到商业智能。 数据仓库面向主题,支持商务决策,它拥有许多优化设计的层次、总体方 针系列和结构化的查询功能,并以总体综合系统为构架。 数据仓库是企业信息资产的核心,也可以看作信息系统部门放置将要转化 成信息的数据场所。但令人遗憾的是,用户不能只将大量的数据“转储”到磁 盘驱动器上就能够获得可用的数据,这正如一个人无法将生食品仅仅放到炉子 上就能得到一顿美餐一样,食物在可食用之前必须经过清理加工、烹饪,最后 放好在盘子中端出等若干步骤。 图2 1 是数据仓库的体系结构图,它的主要元素和与数据仓库相互作用的 主要外部实体包括: 1 、构成数据仓库的事务数据库或其他操作数据库。外部数据也可送入数据 仓库中,事务数据供应给数据仓库,数据仓库得到的是事务数据的拷贝。 2 、从数据库中提取( e x t r a c t ) 数据并将数据放到数据仓库的过程。此过程 经常必须将数据转换成( t r a n s f o r m ) 数据仓库的数据库结构和内部格式。 第二章数据仓库q 联机分析处理 3 、数据净化( c l e a n s e ) 过程,以确保进入数据仓库的数据有足够的品质为 其所用于的决策服务,在获得干净的数据的同时,也处理数据仓库中的空记录 数据,或者过滤或者填满空缺单元等等。 4 、将净化后的数据加载( 1 0 a d ) 到数据仓库数据库中的过程。从提取到加载 这4 个过程通常被总称为数据分极( d a t as t a g i n g ) 。 5 、建立某种需要的数据汇总( s u m m a r i e s ) 程序:预先计算出总额、平均数 以及类似的经常使用的数额。这些数据汇总随着通过内部资源以及外部资源的 数据输入而被储存到数据仓库中。 6 、元数据( m e t a d a t a ) ,“有关数据的数据”。其作用在于拥有中心信息仓库 告知用户数据仓库中有什么、它们来自何处、它们在谁的管辖之下以及更多其 它信息。也可以通过使用查询工具对元数据进行访问而得知数据仓库中有什么、 在那里可以找到它、哪些人被授权可以访问它以及已经预先求出的汇总数据有 哪些。 7 、数据仓库数据库( d a t aw a r e h o u s ed a t a b a s e ) 本身。此数据库包含数据 仓库中的明细数据和汇总数据。数据仓库的数据都存放在这个数据库,在设计 组织数据仓库数据库时,可以针对用于分析的完全不同的访问模式将数据仓库 优化。 8 、查询工具,这些工具通常包括一个用于向数据库提出问题的最终用户接 口,此接口位于称为联机分析处理( o n l i n ea n a l y t i c a lp r o c e s s i n g ,o l a p ) 的 程序中。这些工具还可以包括用以揭示数据模式的自动工具,即数据挖掘( d a t a m i n i g ) 。无论是联机分析处理还是数据挖掘,都是对数据仓库内部信息进行加 工处理,根据用户提出的问题,提供用户需要的数据、决策信息等等。 9 、数据仓库的用户。数据仓库是为了它的用户而存在的,没有了用户数据 仓库也就没有任何用处了。数据仓库用户通过o l a p 工具和数据挖掘工具对数据 仓库的数据进行信息处理,获取需要的信息。 数据仓库中提高多表造接查询效率的研究 善,丑舔斟t 千 2 1 , 3 数据仓库的使用 圄圄回回 图2 1 数据仓库的体系结构图 构造数据仓库的目的是将可用的数据和信息按可用的形式和格式传送给商 业用户,利用一系列工具来增强商业用户的能力,以便更好地分析数据并做出 决策。换句话说,构造数据仓库是为了利用各种强大且普及的桌面工具来灵活 的存取数据。 存放数据是数据仓库最根本的特点之一。数据仓库可以从运作系统中“取 出数据”,帮助商业界做出更好的决策,假定正确的数据已存放在数据仓库中, 数据仓库可以方便的“取出数据”,并将它转换成有益于商业界做出多种选择的 信息。这些信息有助于产生更好的决策,并能给商业界带来实质性的益处。数 据仓库不会像变戏法般地得出结果。商业管理人员和分析人员必须存取并检索 数据仓库中的数据,并将它转换成信息和事实。这些事实构成了知识库的基础, 通过知识库可以确定企业的健全性以及商业的未来发展趋势。用户只能获取那 些从存储于数据仓库中的数据推导出来的信息。用于获取信息的工具主要有存 一口一十一十 甲 圄 _ 一 一一 第二章数据仓库与联机分析处理 取和检索工具、数据库报表工具、分析工具和数据挖掘工具。 早期数据仓库已经使用在银行与财经部门、消费品和制造部门中,获得了 成功并带来了收益。数据仓库为管理的各个阶层提供支持,是技术与商务业务 的汇集点。它能够保障实现下述期望: 解决旧系统的遗留问题; 达到高度的信息集成; 利用新的平台和新的技术: 从数据管理过渡到信息管理; 提供一个平台和结构用以掌握历史数据和当前数据; 为商务智能及联机分析系统提供平台: 在运用信息方面更具有竞争力。 日常的商业活动中数据仓库的使用有两种形式:存取与检索、分析与报表。 存取和检索提供直接存取数据仓库和数据集市的能力;分析与报表提供了报表 工具、统计和数据分析工具、商业模型工具、分析处理工具、数据挖掘工具。 数据仓库的应用程序和工具统称为决策支持工具,从可用工具的角度来看 通常可以分成三种方法信息处理、分析处理和数据挖掘。 ( 1 ) 信息处理它包含数据分析和基本的统计分析、查询和服务等技术。要 存取和处理的数据可以是历史的,也可以是近期的,并可按程度进行概括。其 结果以报表和图表的形式给出。 ( 2 ) 分析处理它的目的是要从商业维中按商业用户的角度来提供数据。它 也支持类似“分片”、细剖和统缆等功能。用于分析处理的数据通常不论是概括 形式还是细节形式都是历史数据。 ( 3 ) 数据挖掘数据挖掘工具浏览细节性的事务数据以便挖掘隐藏的模式 和关系。其结果通常出现在冗长的报告中,它也可用新出现的数据可视化工具 进行分析。 对大量的查询调度、分析、二维或三维数据报表,信息处理的性能很好, 而且成本低。分析处理工具允许有多个数据视图,如按品牌的销售、存储、季 节可以定义查询和分析的时间段。数据挖掘工具主要用于了解顾客的行为。 数据仓库中提高多表连接查询效率的研究 2 2 数据仓库的数据模型 数据仓库不同于数据库,数据仓库存储的数据模型是数据的多维视图,它 将直接影响到前端工具、数据库的设计和o l a p 的查询引擎。多维模型是面向分 析应用而提出来的一种直观的概念模型,是一种借助于多维空间的数据结构表 达形式,可以直接的表达分析目标。本节将介绍与多维模型相关的概念以及存 储的数据模型。 2 2 1 相关概念 定义2 1 事实( f a c t ) 。事实是制定决策过程中,决策者所感兴趣的概念。 对应于企业中动态发生的事件,例如产量、销售额等。在数据仓库中,事实在 核心表中实现,并存储了所有的数值型数据。 事实是从市场捕捉到的时间的一个度量。它是客户在特定时间和地点与产 品发生作用时的瞬间值。 定义2 2 度量( m e a s u r e ) 。度量是事实的数值属性,表示了与维相关的业 务行为和业务表现,例如销售额、销售量、供应量等等。度量在事实表里,它 由维成员的组合情况决定。对于度量这种数值属性,为了能获取更进一步的信 息,可以用不同的方式进行聚合,也称作聚合属性。 事实表包括一些可以进行计算的数字字段和各种与维表连接的键,作为用 户的主要用途的事实表,反映了业务的主要指标。 定义2 3 维( d i m e n s i o n ) 。维是人们观察数据的特定角度。在多维分析中, 数据是按维来表示的,例如产品、时间、地域和顾客。维决定决策过程中事实 实例可能的聚合方式。维可以对应离散属性,例如“地域”维,它对应的维属 性都是离散的,例如“国家”、“城市”等;维也可以是连续属性,例如轧制速 度可以作为分析维,它的取值是实数。 维表用于描述事实表,大多是文字描述、种类、地域、时间、产品等类型 的数据。在数据仓库中,维表有自己的逐渐,并通过主键实现与事实表的链接。 事实数据倾向于在整个时间段上保持稳定,而维数据随着业务的变化及用 第一二章数据仓库与联机分析处理 户需求分析的变化而变化。它们之间的不同之处具体见下表。 表2 1 事实数据和维数据的差异对比 事实数据维数据 百万亿行十至几百万行 多个外码一个主码 数值的文字描述 不常改变经常改变 2 2 2 星型模式 大多数的数据仓库都采用星型模式。一个简单的星型模式由一个事实表以 及若干个维表组成,复杂的星型模式包含数百个事实表和维表,它反映了观察 对象的角度。在星型模式中主体是事实表,事实表中存放大量的事实数据,这 些数据量通常都非常大,而且非规范化的程度很高;而有关维的细节信息则描 述在维表内,从而达到简化事实表的目的。事实表和维表间有公共属性相连而 使它们构成一个熬体。 星型模式最大的优点是能够提供星连接,即维表给出了取值条件,从事实 表中获得值的结果,当对事实表的查询和对维表的查询结合在一起时,维表可 以对查找标准细剖和聚集,这样就可以检索大量的信息并很快得到输出结果, 所以,这种结构非常适合于数据分析和统计。 图2 2 是一个星型模式的实例,星型模式由时间维表、业务维表、地理维 表、商标维表4 个维表和公司利润事实表组成。任意一个维如时间维,t i m e i d 是它的唯一主键, y e a r ,m o n t h ,d a y ) 是有关时间的细节数据,公司利润事实 表由其他四维主键 t i m e i d ,g e o i d ,s e r v i e e _ i d ,b r a n d i d l 和度量属性 ( s a l e ,p r o f i t ) 组成。 数据仓库中提高多裹连接查询效率的研究 t i m ed i m e a s i o ns e r v i c ed i m m s i o n 2 2 3 雪花模式 图2 2 星型模式范例 在星型模式中“维”成单点状,但在很多情况下,“维”成层次状,即其有 一定的深度。如上图的星型模式中时间维的层次结构为日一月一年,地域维中的 层次结构为城市一省一地域。这种在维中有纵向层次所构成的星型模式的扩充成 为雪花模式。 雪花模式是对星型模式的扩展,比星型模式更为复杂,它对星型模式的维 表进一步标准化并最大限度地减少数据存储量,增加了应用程序的灵活性,也 更有利于数据分析与决策,它反映了对对象的观察角度和深度。图2 3 所示的 模式即为雪花模式的例子,是对图2 2 中星型模式的扩充。 相比同样内容的星型模式和雪花模式,不难看出雪花模式增加了用户必须 处理的表的数量,增加了某些查询的复杂性。 4 第二章数据仓库与联机分析处理 m o n t hd f l 、r 2 2 3 星座模式 图2 3 雪花模式范例 星座模式是星型模式的直接扩充,为了表示多个事实间的关系,可以通过 共享维将多个星型模式连接在一起。星座模式中有共享维,所谓共享维即指两 个或多个事实表所共同拥有的维,该维对每个拥有它的事实表来说具有相同的 意义。 图2 4 给出了一个星座模式的例子,它是图2 2 的星型模式的延伸与扩充, 销售事实表与储备事实表都与各自对应的维形成星型结构,但是他们因为共用 了时间维而连接在一起,形成星座模式。 t 由n ed m n c l 蛐n 图2 4 星座模式范例 数据仓库中提高多表连接查询效率的研究 2 3 联机分析处理 在数据仓库中,存储数据的目的是为了查询、分析和传送。联机事务处理 ( o l a p ) 是一种分析处理技术,它从现有的数据中生成新的商业信息,这通过大 量商业转换和数据计算来实现。 2 3 1o l a p 定义 联机分析处理是一种数据分析技术,它完成如下的功能: 给出数据仓库中数据的多维逻辑视图。视图独立于数据存储的具体形式。 通常包含交互式查询和对数据的分析。交互式通常由多种方法,包括细 剖较低级别的详细数据或统揽较高级别的概括性和聚集数据。 提供分析的建模功能,包括可以产生比率、变量等的计算引擎,有关的 度量,或跨多维的数字数据。 生成概括数据和聚集、层次,以及在每一维的交叉点上对聚集和概括级 别的审计。 支持功能模型以进行预测、趋势分析和统计分析。 检索并显示二维或三维表格、图表和图形中的数据,并且应能容易地变 换基准轴。这一点是很重要的,因为商业用户需要从不同角度分析数据,并且 在分析一个侧面的数据时,产生的问题可能需要在另一个侧面中来检验。 极快地响应查询,这样,分析过程才不会被中断,信息也不会过时。 具有多维数据存储引擎,按阵列存储数据,这些阵列是商业维的逻辑表 不o o l a p 技术可用于商业的多个功能域,例如产品、销售和市场利润分析;制 造的组合及后勤分析;经济上的联合、预算和预测、税收计划和成本会计。 2 3 2o l a p 的结构 o l a p 具有数据分析和报表功能,它是数据仓库中存取和使用模块的重要结 构。下图所示为o l a p 的内部结构,共有5 层,分别如下。 1 6 第二章数据仓库与联机分析处理 静牡i 八雌 图2 50 l a p 结构图 ( 1 ) 数据仓库层 数据仓库是建立0 l a p 的数据基础,0 l a p 的数据均来源于数据仓库。 ( 2 ) m o l a p 与r o l a p m o l a p 与r o l a p 构成了0 l a p 的基础数据结构,它将数据仓库中的数据作改 造后以关系数据库或多维数据库的形式出现,有时它可以作为数据仓库中的数 据集市形式出现。 ( 3 ) 多维数据体 以m o l a p 或r o l a p 为基础可以构建0 l a p 的多维数据体,多维数据体是0 l a p 的真正的数据结构体,它直接面对用户并提供多种操作可为用户直接使用。 ( 4 ) 多维数据体操作 多维数据体之上可以建立多维数据操作,它是分析人员建立人一机交互的手 段与工具,同时在此层中还可将操作结果以一定展示形式通知分析人员,因此 这一层是分析人员与0 l a p 的接口部分。 ( 5 ) 分析人员 o l a p 的最外层是分析人员,即是o l a p 的操作者与使用者。 2 3 3m o l a p 与r o l a p 0 l a p 是数据仓库系统最主要的一种应用,0 l a p 查询一般都涉及大量数据的 数据仓库中提高多表连接查淘效率的研究 即席查询 3 。目前主要有两种方式实现o l a p 查询:一种是传统r d b m s 存储, 称为关系o l a p 或简称r o l a p ( r e l a t i o n a lo l a p ) 。另一种使用多维数据库存储, 称为多维o l a p 或简称m o l a p ( m u l t i - d i m e n s i o n a lo l a p ) 。 1 、m o l a p 是基于多维数据库的o l a p 技术,目前在数据库结构方式中有一 种称为多维数据库m d d b ( m u l t i d i m e n s i o n a ld a t a b a s e ) 的形式,它以数组形式 构成,其代表的产品是e s s e b a s e 。在多维数据存储的方式中,o l a p 的服务器包 含o l a p 服务软件和多维数据库,数据在逻辑上按数组存储。由于多维结构在形 式上也是数组形式,因此用m d d b 存储多维结构数据是较为合理的。 m o l a p 是将数据存储在多维数组中,在此基础上来实现各种o l a p 操作。数 据仓库是面向主题用作决策分析,决策人员常常需要查询某个主题的多个度量 值,以便进行实时的分析处理。利用数学中的矩阵模型来表示这种查询需求是 很自然的,基于多维数据库的联机分析处理( m o l a p ) 体现了这种技术趋势。m o l a p 能够提供较快的查询响应速度,但是在进行数据更新时通常需要重构多维数组, 额外开销比较大。另外,在多维数组非常稀疏时,即使使用数据压缩技术也可 能浪费大量的磁盘存储空间。 在应用的基础上,为了获得更高的查询效率,开始了对c u b e 的初步研究”1 , 并利用数据压缩技术出现t s t a rc u b e “、f r e ec u b e “等等。 2 、r o l a p 采用传统的关系数据库,基于星型模式或雪花模式来存储多维数 据,然后通过多表连接,分组聚集计算等操作来实现o l a p 操作。在关系数据库 中,没有数组的概念,多维数据必须被映像成平面型的关系表中的

温馨提示

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

评论

0/150

提交评论