(计算机软件与理论专业论文)数据仓库多维计算的研究与实现.pdf_第1页
(计算机软件与理论专业论文)数据仓库多维计算的研究与实现.pdf_第2页
(计算机软件与理论专业论文)数据仓库多维计算的研究与实现.pdf_第3页
(计算机软件与理论专业论文)数据仓库多维计算的研究与实现.pdf_第4页
(计算机软件与理论专业论文)数据仓库多维计算的研究与实现.pdf_第5页
已阅读5页,还剩58页未读 继续免费阅读

(计算机软件与理论专业论文)数据仓库多维计算的研究与实现.pdf.pdf 免费下载

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

文档简介

摘要 摘要 如何有效的管理和利用企业在运营过程中产生的大量数据和信息一直是信 息系统工作人员面i | 缶的重要问题。数据仓库与联机分析处理为这一问题提供了解 决方法。 数据仓库( d a t aw a r e h o u s e ) 采取一种集中式的结构,它将整个公司的数据统 一储存在一个数据库中。通常,它的数据是以数据立方体( d a t a c u b e ) 的方式组织 在一起的,能够对数据做许多不同的查看和各种组合。为了提高查询分析的速度, 在联机分析处理之前都会对数据立方体进行预计算,即立方体实物化的过程。其 中数据预计算在很大程度上都是进行聚集计算。聚集计算是一种在决策支持系统 中占主导地位的操作,是一种常用的技术。它的重要思想是把那些代价昂贵的常 用运算如:c o u n t 、s u m 、a v e r a g e 、m a x 、m i n 等聚集函数预先计算出结果,并 存储数据库中。这样在联机分析的时候就可以在已经做过预处理的数据上进行快 速的分析。 本文以文献 2 8 提出的数据立方体模型为基础,研究了数据立方体上的多维 计算,给出了多维切片( 或单元格) 间的算数运算形式定义和基于s q l 的算法。 设计了多维算数运算描述语言并通过计算机程序实现了该算法。讨论了上述多维 计算与聚集计算的关系,对于不能含盖的整体聚集,给出了在o l a p 报表中的实 现方法。 本文在后面章节介绍了此算法在北京朝批商贸有限公司数据仓库系统中的 实际应用以及取得的满意效果。 关键词数据仓库;数据立方体;多维计算;实物化;聚集计算 a b s t r a c t a b s t r a c t h o wt om a n a g e a n d 峨al a r g ea m o u n to fd a mt h a te n t e r p r i s ep r o d u c e di nt h e c o u f 辩o fr u n n i n ge r i c c t i v e l yi sa ni m p o r t a n tp r o b l e mt h a tm i ss t a f ff a c e s t h ed a t a w a r e h o u s i n ga n do 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 ) p r o v i d eas o l u t i o nt os o l v e t h i sp r o b l e m d a t aw a r e h o u s et a k e su s co fa o n c e n w a t e ds t r u c t u r ew h i c hs t o r e sa l lt h ed a t ao f t h ec o m p a n yi nau n i f o r md a t a b a s e g e n e r a l l y , t h ed a mo fad a mw a r e h o u s ea r e o r g a i i i di na f o r mo f d a t ac u b e ,a n db e n e f i t sf o rc o m b i n i n ga n di n q u i r i n gt h ed a t ai n d i f f e r e n ta n g l e t oi m p r o v et h ei n q u i r i n ga n da n g l i c i z i n gs p e e d ,t h ed a t ac u b ei s a l w a y sp r e - c o m p u t e db e f o r et h eo n - l i n ea n a l 如c a lp r o c e s s i n g ,w h i c hi st h ep r o c e s s o ft h ed a t ac u b em a t e r i a l i z a t i o n a m o n gt h ep r e - c o m p u t a t i o n , t h ea g g r e g a t i o n c o m p u t a t i o nt a k eag r e a tp a r t a g g r e g a t i o nc o m p u t a t i o n i sak i n do fo p e r a t i o nw h i c h t a k e sa l li m p o r t a n tr o l ei nt h ed a t aw a r e h o u s es y s t e m , t h em a i ni d e ao fw h i c hi s p r e - c o m p u t i n gt h ed a t au s i n gt h ea g g r e g a t i o nf u n c t i o ns u c ha sc o u n t , s u m , a v e r a g e ; m a x , n f i n , a n dt h e nt h e 他s a l tc a nb es t o r ei nt h ed a t aw a r e h o u s ea h e a do ft i m e a sa r e s u l t , t h eo n - l i n ea n a l y t i c a lp r o c e s s i n gc a nb eb e t t e rd o n eo nt h eb a s eo ft h e p r e - c o m p u t e dd a t a 1 1 d e f i n i t i o no ft h ed a t ac u b ei st h ep r e m i s e so ft h ed a t ac u b ec o m p u t a t i o n b a s e do nt h ed a t ac u b em o d e lw h i c hi sd e f i n i t e di np a p e r 【2 9 ,w eh a v e d o n er e s e a r c h o nt h em u l t i - d i m e n s i o n a lc o m p u t a t i o no ft h ed a t ac u b e t h e nw ep r o p o s eo u ro w n m u l t i - d i m e n s i o n a lc o m p u t a t i o nd e f i n i t i o nw h i c hi su s e db e t w e e nt h es l i c e so rt h ed a t a c e l l sa n da l s ot h ea l g o r i t h mb a s e do nt h es q l a tt h e 姗et i m e w eh a v ed e s i g n e d t h em u l t i d i m e n s i o n a lc o m p u t a t i o nd e s c r i p t i o nl a n g u a g ea n di m p l e m e n t e dt h e a l g o r i t h mb yp r o g r a mi nt h ec o m p u t e re n v i r o n m e n t f u r t h e rm o r e ,w ed i s c u s st h e r e l a t i o n s h i pb c d n l lt h em u l t i - d i m e n s i o n a lc o m p u t a t i o na n da g g r e g a t i o nc o m p u t a t i o n t om a k eu pt h es h o r t c o m i n g so fo u ra l g o r i t h ma b o u ta g g r e g a t i o nc o m p u t a t i o n , e s p e c i a l l yo nt h eh o l i s d ca g g r e g a t i o n , w eg i v ei t si m p l e m e n t a t i o ni nt h eo l a pr e p o r t p r o c e s s i n g n 圮a p p l i c a t i o no ft h ed a t ac u b ec o m p u t a t i o na l g o r i t h mi nt h ed a t aw a r e h o u s e s y s t e mo f b e i j i n gc p c o m m e r c i a lt r a d i n gc o l t d i sa l s om e n t i o n e di n t h i s 肼i p i n f a c t , i tw o r k sw e l li nt h ep r a c t i c a la p p l i c a t i o n k e yw o r d sd a t aw a r e h o u s e ;d a t ac u b e ;m u l t i d i m e n s i o n a lc o m p u t a t i o n ; m a t e r i a l i z a t i o n ;a g g r e g a t i o nc o m p u t a t i o n i i i 独创性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得 的研究成果。尽我所知。除了文中特别加以标注和致谢的地方外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京工业大学或 其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究 所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 签名:醒趣垒日期:迎:钽查: 关于论文使用授权的说明 本人完全了解北京工业大学有关保留、使用学位论文的规定,即:学校 有权保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的 全部或部分内容,可以采用影印、缩印或其他复制手段保存论文。 ( 保密的论文在解密后应遵守此规定) 签名:醢盗垫盘 导师签名: 第1 章绪论 第1 章绪论 联机事务处理( o n l i n et r a n s a c t i o np r o c e s s i n g ,o l l m ) 一直是数据库应用的 主流。然而,应用在不断地进步。当联机事务处理系统应用到一定阶段后,用户 便发现单靠拥有联机事务处理己经不足以获得市场竞争的优势,他们需要对其自 身业务的运作以及整个市场相关行业的情况进行分析,而做出有利的决策。这种 决策需要对大量的业务数据包括历史业务数据进行分析才能得到。在如今这样激 烈的市场竞争环境下,这种基于业务数据的决策分析,被称为联机分析处理 ( o n - l i n e a n a l y t i c a lp r o c e s s i n g ,o l a p ) 。如果说传统联机事务处理强调的是更新 数据库一向数据库中添加信息,那么联机分析处理就是从数据库中获取信息、 利用信息。因此,著名的数据仓库专家r a l p hk i m b a l l 写道:“我们花了二十多年 的时间将数据放入数据库,如今是该将它们拿出来的时候了【l 】o ” 数据仓库理论己在近几年的研究和探索中逐渐成型,联机分析处理和数据挖 掘是数据仓库最主要的两项应用技术。从逻辑上讲,数据仓库就是一个多维数据 集( c u b e ) 闭。o l a p 以多维分析为基础,刻画了在管理和决策过程中通过对数据 仓库的访问,实现对数据多层面、多角度的分析处理,并以直观易懂的形式将结 果提供给决策者网。 1 1 课题背景及实际意义 由文献【“】了解到,事实上,多维数据分析是在1 9 6 0 年就己经出现的技术, 随着计算机硬件技术的快速发展,这一在大型机中采用的技术,才逐渐向以p c 为基础的数据库发展。1 9 9 6 年美国市场调查表明,有关数据仓库项目的平均成本 是2 0 0 - 5 0 0 万美元。这些资金主要用于硬件扩充,软件开发和人员培训。因而那 时只有大型公司才有可能发展数据仓库及其集成应用系统。1 9 9 8 年以后,人们的 注意力转向组建便宜、快捷的中小型数据仓库应用系统。在1 9 9 9 年微软推出 m i c r o s o f ts q ls e r v e r7 0 时,至少已经有1 0 0 个以上的公司提供各种在线数据查询 的工具。2 0 0 0 年以后,数据仓库应用系统的开发与应用达到了高潮。一些软件公 司推出了自己的数据仓库集成应用系统,如m i c r o s o f t 公司的a n a l y s i ss e r v i c e s , m m 公司的i n t e l l i g e n c em i n e r ,o r l e 的d a r w i n 等等。这些系统既可以对数据进行 快速的多维查询,还可以对数据作深度挖掘,为企业决策支持提供了数据基础和 理论根据。许多研究机构也相继推出自己的原型系统,如加拿大s i m o nf r a s e r 大学的教学系统d b m i n e r ,中科院计算所的m s m i n c r ,复旦大学的a m i n e r 等等。 北京t 业大学t 学硕士学位论文 目前,国内的许多科研单位和高等院校竞相开展知识发现的基础理论及其应 用研究。其中,北京系统工程研究所对模糊方法在知识发现中的应用进行了较深 入的研究,北京大学也在开展对数据立方体代数的研究,华中理工大学、复旦大 学、浙江大学、中国科技大学、中科院数学研究所、吉林大学等单位开展了对关 联规则开采算法的优化和改造;南京大学、四川大学和上海交通大学等单位探讨、 研究了非结构化数据的知识发现以及w e b 数据挖掘。 o a r t n e rg r o u p 的2 0 0 0 年的一次高级技术调查将数据挖掘和人工智能列为“未 来三到五年内将对工业产生深远影响的五大关键技术”之首,并且还将并行处理 体系和数据挖掘列为未来五年内投资焦点的十大新兴技术前两位。根据2 0 0 0 年 c r r i 恤e t 的h p c ( 高性能计算) 研究表i 非j ( 6 1 ,“随着数据捕获、传输和存储技术的 快速发展,大型系统用户将更多地需要采用新技术来挖掘市场以外的价值,采用 更为广阔的并行处理系统来创建新的商业增长点。” 对于数据仓库应用领域而言,虽然取得了很大的进展,但目前在某些具体应 用上还有许多值得探索的方面。如在相关性分析中,针对大数据集的分析的效率 问题;及如何将o l a p 技术与数据挖掘技术相结合,形成o l a m ( o n l i n ea n a l y t i c a l m i i 血g ) 也是非常值得研究的【捌。 随着i n t e r n e t 技术的发展,企业全面信息化的进行,我们将面临的是信息爆炸 的时代。商业智能为公司在客户、销售、财政计划和竞争等方面的策略制定提供 了洞察力 7 1 。因此研究高效的数据仓库应用系统并使之实用化已势在必行,具有 非常重要的理论研究意义和应用推广价值。 数据仓库作为一个快速有效的为企业提供分析数据的系统,它的有效性离不 开多维数据的处理计算,在数据的提取阶段,在多维报表展现阶段,都涉及到各 方面的多维数据计算问题,多维数据计算的灵活性,数据计算速度的快慢直接影 响到系统的可用性,实用性 1 2 课题的来源及主要研究内容 在研究生学习期间,我参与到本实验室与北京朝批商贸有限公司( 以下简称 朝批) 合作开发的计算机信息系统的工作中,朝批是北京京客隆商业集团股份有 限公司的控股子公司,是以经营食品、副食品、日用化妆品、洗涤用品等业务为 主的大型批发物流企业。2 0 0 6 年销售额2 9 亿元,经营国际、国内知名品牌4 0 0 余 个,品种9 0 0 0 余种,销售网络覆盖了北京地区的大中型零售连锁企业及6 0 0 0 余个 人1 2 1 稠密社区的小型店铺。现在公司已经有了一个业务管理系统,一个财务管理 系统,一个物流仓库管理系统,一个数据仓库系统,并且在天津、青岛、石家庄 都有了子公司管理系统。 2 第l 章绪论 本人在朝批工作的期间,参与了业务、财务系统的开发及维护工作,并参与 到了朝批数据仓库系统的实施工作中。对数据仓库各个方面的工作有了进一步的 认识。本文就是在朝批实际工作的基础上进行撰写的,主要介绍了以文献 2 8 的立方体模型为基础,针对立方体多维计算问题进行的研究及本人所在的课题组 在开发北京朝批商贸有限公司数据仓库系统的过程中,该算法的实际应用。 3 第2 章数据仓库理论概括 第2 章数据仓库理论概括 数据仓库和联机分析处理是决策支持系统的重要组成部分,为了给预测、决 策提供有效的支持,就需要根据数据的特点,建立起一种合理的数据仓库环境, 并在此基础上进行各种聚集操作,为系统提供各种综合的数据信息。 在本章中,本论文首先介绍了数据仓库的起源、现状,并对当前数据仓库的 体系结构及数据的存储方式作了一些简单介绍,为后面内容的展开作理论铺垫; 同时,联机分析处理是建立在数据仓库基础之上的能为决策支持系统提供综合数 据的重要环节,后半部分介绍了联机分析处理相关理论。 2 1 数据仓库 传统的数据库系统是基于面向业务操作设计的,只是对指定的数据进行简单 的处理,并不能对这些数据所包含的内在信息进行提取。为了能够从大量的数据 中获取有意义的信息,就需要建立一种体系化的数据存储环境,将分析、决策所 需的大量数据从传统的操作环境中分离出来,使分散、不统一的操作数据转换成 集成、统一的信息,进而发展出制度化的决策系统。这样企业就需要把己经广泛 收集到的数据集成到数据仓库中,以从业务数据中提取出有用的信息,帮助他们 在业务管理和发展上做出及时正确的判断【聊。数据仓库技术就是在这样的环境下 应运而生,成为信息技术领域非常热门的研究方向之一 经过多年的数据库应用,金融、保险、电信、电力系统等传统数据密集型企 业积累了大量的数据,为了有效地利用各种数据信息,各个企业都建立了自己的 决策支持系统【9 】。数据仓库除了在传统的金融、保险、电信等行业中的应用外, 在零售业的发展前景也很好。 数据仓库技术中引入了维和指标等几个重要的概念。维是指对数据对象进行 观察分析的角度【i 田。指标是分析对象的数值表示i s ,反映了数据对象的度量属性。 每个指标都依赖于一组维,这些维提供了该指标的上下文关系。人们观察数据的 某个特定的角度存在着细节程度不同的描述层次,这些描述层次被称为维的层 次。从概念模型的角度来说,数据仓库就是由维、指标等数据仓库元素组成的, 其实例由多个事实表、维表等数据实体组成;从逻辑模型的角度来说,数据仓库 可以由数据立方体来表示,通过立方体代数实现立方体运算,立方体组成方式可 以分为星型、雪花型等模式;从物理模型的实现上又可分为关系型存储( r o l a p ) 、 多维存储0 “o l a _ p ) 以及混合型存储( h o l a p ) 例。 北京工业大学工学硕士学位论文 i n_ 对数据仓库的研究目前主要集中在以下几个方面:数据仓库的概念模型,数 据立方体模型、实视图的维护更新、联机分析处理中的数据聚集操作及导航策略 研究、数据挖掘及运行模式等方面。 2 1 1 数据仓库的特点 2 0 世纪8 0 年代中期,“数据仓库”一词首先出现在号称“数据仓库之父” w i l l i a nh i n m o n 的“建立数据仓库”一书中。数据仓库从来没有一个公认,而且 被标准化的定义。不过随着人们对大型数据系统的研究、管理与维护等方面认识 的不断加深与完善,对于数据仓库的如下几个特点基本达成了共识f 1 1 12 4 习: ( 1 ) 面向主题 主题是一个抽象的概念,是在较高层次上将企业信息系统中的数据综合、归 并后进行分析利用。在逻辑意义上,它是对应企业中某一宏观分析领域所涉及的 分析对象,是针对某一决策问题而设置的。面向主题的数据组织方式,就是在较 高层次上对分析对象数据的一个完整、统一并一致的描述,能完整并统一地刻画 各个分析对象所涉及的有关企业的各项数据,以及数据之间的联系。 ( 2 ) 集成的数据 数据仓库中存储的数据从原来分散的各个子系统中提取出来,但并不是原有 数据的简单拷贝,而是经过统一并综合。 1 ) 数据仓库的数据不能直接从原有数据库系统中得到。在进入数据仓库之 前必须经过综合、计算,删除分析处理不需要的数据项,增加一些可能涉及的外 部数据。 2 ) 数据仓库每一个主题所对应的源数据在原分散数据库中有许多重复或不 一致之处,必须将这些数据转换成全局统一的定义,消除不一致或错误之处,以 保证数据的质量。 ( 3 ) 数据不可更新 从数据的使用方式上看,数据仓库的数据不可更新。数据保存到数据仓库中 后,最终用户只能通过分析工具进行查询和分析,而不能修改。 从数据的内容上看,数据仓库中存储的是企业当前和历史的数据,在一定时 间间隔以后,当前数据需要按一定的方法转换成历史数据。年代久远且查询率低 的数据需要从数据仓库中删除。因此可以说数据仓库在一定时间内是稳定的 ( 4 ) 数据随时间不断变化 数据仓库中数据的不可更新是针对应用而言,即用户分析处理的是不可更新 的数据。但不是说,数据从进入数据仓库以后就永远不变,这些数据随时间变化 而定期更新。每隔定的时间间隔后,抽取运行数据库系统中产生的数据,转换 后集成到数据仓库中。随着时间的变化,数据被不断地综合,以适应趋势分析的 6 第2 章数据仓库理论概括 要求。 2 1 2 数据仓库的体系结构 数据仓库系统并非一个简单的由各种数据合并而成的超大型数据库,而是一 种专门为联机分析处理和决策支持系统提供数据源和决策工具的结构化数据环 境。 整个数据仓库系统是一个包含四个层次的体系结构【1 2 1 ,如图2 1 所示: 匕3 e 3 口 日 囊蟹靠 瓢工 凰撒且 帐寰工 ,醴蝴烈 旦t t s e ) 匏l m d 盟一 图2 - 1 数据仓库体系结构图1 1 2 1 f i g 2 一jt h es t r u c m 把o f t h ed a t aw a r e h o u s e ( 1 ) 数据源:是数据仓库系统的基础,是整个系统的数据源泉。通常包括内 部信息和外部信息。 ( 2 ) 数据的存储与管理:是整个数据仓库系统的核心。数据仓库的真正关键 是数据的存储和管理。数据仓库的组织管理方式决定了它有别于传统数据库,同 时也决定了其对外部数据的表现形式。针对现有各业务系统的数据,进行抽取、 清理,并有效集成,按照主题进行组织。数据仓库按照数据的覆盖范围可以分为 企业级数据仓库和部门级数据仓库( 通常称为数据集市) 【1 3 1 。 ( 3 ) o l a p 服务器:对分析需要的数据进行有效集成,按多维模型予以组 织,以便进行多角度、多层次的分析,并发现趋势。其具体实现可以分为: r o l a p ,m o l a p 和h o l a p 。r o l a p 基本数据和聚合数据均存放在r d b m s 之中 1 4 j ;m o l a p 基本数据和聚合数据均存放于多维数据库中:h o l a p 基本 数据存放于r d b m s 之中,聚合数据存放于多维数据库中。 ( 4 ) 前端工具:主要包括各种报表工具、查询工具、数据分析工具、数据 挖掘工具以及各种基于数据仓库或数据集市的应用开发工具【1 5 】。其中数据分析 工具主要针对o l a p 服务器,报表工具、数据挖掘工具主要针对数据仓库。 7 北京1 = 业大学工学硕士学位论文 曼曼皇| 昌| 曼量皇曼皇皇量曼皇量皇皇鼍曼皇鼍皇曼曼曼曼蔓皇量曼曼曼曼曼曼曼曼曼毫曼曼曼舅曼曼基曼曼曼曼曼蔓毫皇蔓曼皇 2 1 2 1 数据仓库中的数据组织方式 数据仓库中的数据组织方式可分为虚拟存储方式、基于关系表的存储方式和 多维数据存储方式三种【4 珂: ( i ) 虚拟存储方式 虚拟存储方式是虚拟数据仓库的数据组织方式,它没有专门的用来实现数据 存储的数据仓库,数据仓库中的数据仍然在原数据库中,只是根据用户的多维需 求及形成的多维视图,临时在源数据库中找出所需的数据,完成多维分析,这种 组织方式较简单、花费较少,使用灵活,但同时也有一个很大的缺点,只有当源 数据库中的数据组织比较规范,数据完备且没有冗余,同时又比较接近多维数据 模型时,虚拟的数据仓库的多维语义才容易定义。 ( 2 ) 基于关系表的存储方式 基于关系表的存储方式是将数据仓库中的数据存储在关系数据库的表结构 中,在元数据的管理下完成数据仓库的功能。这种方式的主要问题是,在多维数 据模型定义好后,从数据库中抽取数据往往需要编制复杂的程序,因此通用性差, 不容易维护。 ( 3 ) 多维数据库存储方式 多维数据库存储方式是指多维数据库的组织是直接面向o l a p 分析操作的 数据组织形式,其数据组织采用多维数组结构进行存储,并有维索引及相应的元 数据管理文件与数据相对应。 2 1 2 2 数据仓库中的数据模型 研究表明,传统的数据模型不能有效地表示数据仓库的数据结构和语义,也 难以有效地支持联机分析处理。为了能有效地解决上述问题,就需要在数据仓库 中建立一种支持多维结构的数据模型。 数据模型是现实世界中数据和信息的抽象。数据模型应满足以下三方面的要 求:一是能比较真实地模拟现实世界,二是容易为人们所理解;三是便于在计算 机上实现。根据模型在数据仓库设计过程中所处的层次,分为以下几种: ( 1 ) 概念模型 概念模型主要用于信息世界的建模,是现实世界到信息世界的第一次抽象, 是进行数据仓库设计的有力工具,也是设计人员和用户之间进行交流的语言。数 据仓库的概念模型设计不同于传统的事务处理系统的e r 模型设计,它是面向分 析的,是进行数据仓库设计的一个重要阶段。国内有一些研究者作了很多工作, 如李建中等以偏序和映射为基础提出的三元组模型;在国外也有很多的研究者在 这方面作了一些工作i 硎,如m 。g o l f a r e l l i 等提出的维事实模型d f m ( d i m e n s i o n a l 8 弟2 章数据仓库理论概括 f a c t m o d e l ) ,n t r y - f o n a 等提出的s t a r e r 模型,b h u s e m a n n 提出的多维概念模 式c m s ( c o n c e p t u a l m u l t i d i m e n s i o n a ls c h e m a ) ,e f r a n c o n i 提出的扩展e r 模型等。 这些概念模型对于一般的数据能有效地进行表示。 ( 2 ) 逻辑模型 在关系型数据库中,对于逻辑层一般采用关系表和视图,而数据仓库一般采 用的是星型模型和雪花模型。 1 ) 星型模型 大多数数据仓库都采用星型模型来表示多维数据模型,数据库中包括一个 “事实表”,对于每一维都有一个“维表”。事实表中的每条元组都包含有指向各 个维表的外键和一些相应的度量数据,维表中记录的是有关这一维的属性。从图 2 - 2 中可以看出,事实表中的每一个元组包含了一些指针( 外键) ,其对应的主键 分别放在不同的维表中,这就构成了数据库的多维结构。在每个维表中除包含每 一维的主键外,还有说明该维的一些其他属性字段。 星型模型是大多数数据仓库的集成方案所采用的方式,但这种数据组织方式 存在数据冗余、多维操作速度慢等特点。 烈ic p c u b e 0 4 f - j部雏度ir _ 1 brj 码 部门名称 擅销员地鹰 推俏员 推钠虽名槔 括杯雄鹰 饼杯研 指枷名椿 时阃 罄门 擂饷曼 客户 翻品 指拓 值 商品t o t 度 露面百 商舳名称 图2 - 2 星型模型 f i g 2 2t h es t a rm o d e l 2 ) 雪花模型 雪花模型是对星型模型的扩展,如图2 3 所示。如果某个维表有多个归类层 次,就可以形成雪花模型。它是对星型模型维表的进一步层次化,形成了一些局 部的“层次”区域。雪花模型增加了用户必须处理的表数量,增加了某些查询的 复杂性,但这种方式可以使系统进一步专业化和实用化,同时降低了系统的通用 程度。雪花模型的优点是可以通过最大限度地减少数据存储量以及联合较小的维 表来改善查询性能。 在数据仓库的逻辑设计中,除了定义关系模式外,还包括数据粒度的选择、 为表增加时间字段、进行表的分割、合理化表的划分等方面。 ( 3 ) 物理模型 9 北京工业大学工学硕士学位论文 订货表 厅丽 l i , i 货b e i i 一 客户表 客户号 客户名称 客户地址 售货员号 售货员姓名 城市 订单号 售货员号 客户号 产品号 日期标识 地区名称 数量 总价 产品表 产品号 产品名称 产品目录 单价 目录表 产品目录 且录描述 帛书一苗 地区名称 省别 省表 省 图2 - 3 雪花模型 f i g 2 3t h es n o wm o d e l 数据仓库的物理模型设计,主要包括确定数据的存储结构、确定数据仓库 的索引策略、确定数据的存储策略、对表进行归并、优化存储分配等。 2 2 联机分析处理 数据仓库和联机分析处理是决策支持系统的有机组成部分,数据仓库从分布 在企业内部各处的o l t p 数据库中提取数据并对所提取的数据进行预处理,为企 业决策分析提供所需的数据;o l a p 则利用存储在数据仓库中的数据完成各种分 析操作,并以直观易懂的形式将分析结果返回给决策分析人员 2 2 1 联机分析处理概念 联机分析处理( o l a f ) - - 词首先由关系数据库技术的泰斗之一e f c o d d 于 1 9 9 3 年提出【l ”。它是一类软件技术,它使分析人员、经理及管理人员通过对信 息的多种可能的观察角度进行快速一致和交互性的存储,以获得对信息的深入理 解。 o l a p 是对数据的一系列交互的查询过程,这些查询过程要求对数据进行多 层次、多阶段的分析处理,包括数据汇总、整理、归纳及排除奇异数据样本等环 节,最终得到用户所需要的经过归纳抽象的信息。 根据o l a p 产品的实际应用情况和用户对o l a p 产品的需求,人们提出了一 种对0 l a p 更简单明了的定义: 1 0 第2 章敲据仓库理论概括 ( 1 ) 快速性:即系统应该能在很短的时间内对用户的大部分分析要求做出反 应。对于大量的数据分析要达到该要求并不容易,因此就需要一些技术上的支持, 如专门的数据存储格式、大量的事先运算和特别的硬件设计等。 ( 2 ) 可分析性:o l a f 系统应能处理与应用有关的逻辑分析和统计分析。用 户无需编程即可定义新的专门计算,将其作为分析的一部分,并以用户满意的方 式给出报告。用户可以在o l a f 平台上进行数据分析,也可以连接到其他外部分 析工具上,如时间序列分析工具、成本分配工具和数据挖掘等。 ( 3 ) 共享性:在大量用户间实现潜在地共享秘密数据所必需的安全性需求。 ( 4 ) 多维性:多维性是o l a f 的关键属性。系统必须提供对数据的多维视图 和分析,包括对层次维和多重层次维的完整支持 ( 5 ) 信息性:不论数据量有多大或数据存储在何处,o l a p 系统应能及时获 得信息,并且管理大容量信息。 下面是与之相关的一些概念【o 町: 维是人们观察数据的特定角度,是考虑问题时的一类属性,属性集合构成一 个维。 维的层次:人们观察数据的某个特定角度( 即某个维) 还可以存在细节程度 不同的多个描述方面。一个维往往具有多个层次。例如描述时间维时,可以从日 期、月份、季度、年等不同层次来描述 维成员:维的一个取值称为该维的一个维成员。如果一个维是多层次的,那 么该维的维成员是在不同维层次的取值的组合。例如,时f 司维具有日期,月份, 年这三个层次,分别在日期,月份,年上各取一个值组合起来,就得到了时间维 的一个维成员,即。某年某月某日”。 多维数组:它是维和变量的组合表示,一个多维数组可以表示为:( 维1 , 维2 ,维3 ,维n ,变量) ,知( 部门,时间,客户,商品,销售额) 。 数据单元( 单元格) : 多维数组的取值称为数据单元。当多维数组的各个维都选中一个维成员,这 些维成员的组合就唯一确定了一个变量的值。那么数据单元就可以表示为:( g l 维成员,维2 维成员,维n 维成员,变量值) 。如:( 酒部,2 0 0 4 年2 月, 天客隆,金六福,l o o 0 0 0 0 ) 。 2 2 。2 联机分析处理的实体存储策略 为了提高o l a p 的执行效率,通常会预先产生一些集合,使得信息在存取时, 利用这些预先得出的聚集,可获得较好的执行效果,而这些聚集的实体存储策略。 对整体的执行效果有着很大的影响。o l a p 的实体存储策略通常有以下三种: ( 1 ) m o l a p 北京i 业大学工学硕士学位论文 m o l a p 即多维o l a p ,它利用一个专有的多维数据库来存储o l a p 分析所 需的数据,数据以多维方式存储,并以多维视图方式显示。在m o l a p 的结构中, 数据在被存入多维数据库时,将根据它们所属的维进行一系列的预处理操作,并 把结果按一定的层次结构存入多维数据库中。m o l a p 模式的优点为反应时间较 快,缺点为存储空间需求大,适合应用在使用频率高、量小且反应时间要求快的 情况。 ( 2 ) r o l a p r o l a p 即关系型o l a p ,在功能上它类似于m o l a p ,但其底层数据库是 关系型数据库,而不是多维数据库。用户通过客户端工具提交多维分析请求给 o l a p 服务器,后者将这些请求动态地转换成s q l 语句执行,分析的结果将多 维处理转化为多维视图返回给用户。在r o l a p 结构中,数据的预处理程度般 较低。 r o l a p 模式的优点是灵活性强,用户可以动态定义统计或计算方式,不需 额外的存储空间存放信息,利用既存的资料存储空间即可;缺点是反应时间较慢, 较适合应用在不常使用且量大的情况。 ( 3 ) h o l a p h o l a p 即混合性o l a p ,在进行数据结构存储时采用了m o l a p 和r o l a p 的混合型架构。对于常用的维度和维层次,在h o l a p 中采用多维数据表来记录, 对于用户不常用的维度和数据,h o l a p 采用类似于r o l a p 星型结构来存储。 适用于在大量数据下仍要求快速反应的情况。 2 3 本章小结 数据仓库、联机分析处理和数据挖掘技术是近年来数据库技术领域的研究重 点和热点。数据仓库是面向主题的、集成的、包含历史数据的、数据相对稳定的 支持决策制订过程的数据集合。本章从概念模型、逻辑模型等方面介绍了数据仓 库的一些基本情况。当前,对于数据仓库的概念模型还缺乏充分的理论基础,没 有形成统一的标准,不同的厂商和人员往往都是从各自的具体需求出发来定义各 自不同的模型:联机分析处理( o l a p ) 多维分析为基础,刻画了管理和决策过 程中对数据进行多层面、多角度的分析处理的要求,本章也介绍了联机分析处理 的存储等基本概念及其重要意义。 第3 章数据仓库多维计算 第3 章数据仓库多维计算 3 1 数据仓库模型设计 数据模型是个关键问题1 2 i 】,尽管国外的厂商几乎都提供了自己的模型,但具 体到实际问题,要想真正走向数据仓库应用成功之路,必须从国外的模型框框中 跳出来,打造出符合企业特点的数据仓库模型。成功的数据仓库模型能够应付数 据源以及业务逻辑的变化,能够提供好的系统灵活性和稳定性。 在朝批的数据仓库建设中,设计了基于关系型数据库的r o l a p 模型,采用 了一致性维度的共享维的星型模式。共享维的星型结构建模,不仅充分利用了原 有的数据库投资,在功能上也可以满足客户的需求。基于一致性维度的共享维的 设计在管理和实现上带来了很多的好处。r o l a p 以关系型结构进行多维数据的 表示和存储,而不生成多维立方体,只是存储数据模型与数据之间的映射关系, 真正的关系物理存储在数据仓库中。在进行多维分析时,0 l a p 服务器根据定义 的模型从数据仓库中取得数据,进行实时分析。这样虽然增加了对用户的响应时 间,但数据只存储一次,相对m o l a p 来说节省了空间,并且分析可以具体到细 节数据,即考查数据的粒度较小。 朝批商贸数据仓库模型设计主要有以下几个特点: ( 1 ) 基于关系数据库的星型模型 在利用企业资源的原则上,朝批数据仓库选择了使用关系数据库来作为数据 仓库的数据库,不需要另外购买新的多维数据库。采用星型模型,是考虑到企业 数据仓库的易维护性上。雪花模型虽然能减少数据的冗余,但是数据管理起来却 过于复杂,且不好维护。作为中型的企业,系统还不是那么复杂,数据仓库主题 也较简单,星型模型即可满足要求。 ( 2 ) 一致性维度特性:在实际应用中,度量的种类很多,他们并非各自完全 独立,许多度量之间存在某种逻辑关系。将传统意义上的度量进行归纳,提取其 共性,转化为维度。因此在当前数据仓库产品中,o l a f 数据模型对待维与度量 ( 也称指标) 有两种方式 2 4 1 ,一种将维与度量同等对待,即把度量也转成一维( 一 致性维度) ;另一种将度量与维区分对待。如下表3 1 所示: 该结构中度量也被看作是一维,通过与其他维的组合来形成一个事实数据。 实际的操作中,它对度量单独编码,度量维中的数据都是一个个指标编码,代表 着不同的度量。 北京工业大学工学硕士学位论文 表3 - 1 同等对待维度与度量的事实表的结构 t 曲l e 3 一ls t r u c t u r eo f t h ef a c tt a b l eo f w h i c hd i m e n s i o n sa n dm e a s u l i e sa r et r e a t e dt h es a n l e t i m e ( 时间)s t o r e ( 商店)p r o d ( 产品)m e a s ( 度量维)d a t a ( 数值) j a nc a m bs h o e ss a l e s5 0 0 j a nc a m bs h o e sc o s t s3 5 0 j a nc a m bs a c k ss a l 韶4 5 0 j a nc a m bs a c k sc o s t s3 7 5 表3 - 2 是区别对待维度与度量的一个普通事实表的结构: 表3 - 2 区别对待维度与度量的事实表的结构 t a b l e ,3 - 2s 呲t i l r co f t h ef a c tt a b l eo f w h i c hd i m e n s i o n sa n dm e a s u r e sa f ct r e a t e dd i f f e r e n t l y t i m e ( 时问)s t o r e ( 商店)p r o d ( 产品) s a l e s ( 销售额) c o s t s ( 成本) j a nc a m bs h o e s5 0 03 5 0 j a n c a m b s o c k s4 5 03 7 5 j a n c a r a b h a t s7 2 55 0 0 该结构区别对待维与度量,通过数据行与列的组合含义来确定一个度量事实 数据的实际意义。 朝批商贸数据仓库选择了同等的对待维与度量,这是一个尝试,因为大部分 的数据仓库的建设都是区分维与度量的。同等对待维与度量有下面的优点:首先, 增加新的度量时不需修改事实表结构,只需增加事实表的行,这样当需求变化时, 对结构的影响就不是那么明显了;如果一个主题要考察的度量非常的多,那么度 量横向排列将使事实表的结构变得异常的大,将会降级查询性能:对于同一组维 度值,可能有些度量是无用的,将所有度量横向排列会导致存在大量的数据冗余。 另外它也存在着以下的缺点:由于区分的对待,使得事实表的长度增加了, 导致了存储空间的增加,势必也会影响查询的效率。但相比于它的优势,这个缺 点也是可以接受的。 ( 3 ) 共享维度特性: 由于多维分析是在一个领域内进行的,人们观察问题的角度( 即维) 是有限 的,因此多个主题中可能会出现相同的维度。如果分散的管理,不仅工作量大而 且很容易造成数据的不一致。对此,朝批商贸数据仓库对维度的设计采取了统一 管理、共享维度的观点,将维度的管理提升到整个数据仓库的级别。另外,在维 度上可能会有多个向上综合路径,设计时将这些维及其综合路径统一编码、管理, 这样为维管理提供了很大的方便,多个主题可以共享这些维度及其综合路径。同 时也避免了维数据不一致的可能。 图3 1 是系统中共享维度的具体例子,。供货商”、“客户”、“仓库”这三个 主题共享了年份、月份、部门、商品、指标等维度。 1 4 第3

温馨提示

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

评论

0/150

提交评论