




已阅读5页,还剩63页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 企业数据仓库的数据设计是一个结合应用到多种技术和设计方法的复杂而长 期完善的过程,是构建企业数据仓库最关键的部分。数据设计的质量决定了数据 仓库所能够进行的分析的类型、分析的细节程度、分析的效率以及响应时间。可 以说,数据仓库数据模型的设计决定企业数据仓库的成败。 首先,本文对企业数据仓库的数据设计构架提出了一个整体的设计方案和数 据设计流程。采用结合逻辑驱动和物理驱动的混合数据建模方法,对数据模型的 生成、增量改变的管理提出设计方案,在采用增量迭代式开发方法基础上,使接 口文件到模型的映射,e t l 设计及e t l 构建过程并行进行提高模型的开发速度。 采用双数据管道区、双层结构的数据登台区等有效措施提升企业数据仓库的性能, 降低设计的复杂性,提高可维护性。其次,本文在提出数据集市的整体数据构架 和数据模型设计流程的基础上,对维度数据模型进行设计和构建。对数据集市的 数据设计及维度建模的一些关键设计( 如异构产品维模型、缓慢变化维、钻透性查 询等) 提出了有效的解决方法,并设计完整的数据集市的维度数据模型,对数据模 型提出有效的优化方法。本文针对银行企业数据仓库的元数据的分类和特点,提 出了银行企业数据仓库元数据设计与实现的解决方案,包括详细的设计、数据抽 取、实现和应用展示。 银行企业数据仓库项目的成功投入使用证明本文的设计有实际应用价值。 关键字:企业数据仓库;数据设计;数据建模;维度数据模型;元数据 a b s t r a c t d a t ad e s i g ni st h em o s ti m p o r t a n ts t e pi nc o n s t r u c t i n g o n ee n t e r p r i s ed a t a w a r e h o u s e i ti sac o m p l e xl o n gt e r ma n dc o m b i n e sv a r i o u sd a t ad e s i g nt e c h n o l o g i e s w i t hd a t ad e s i g na p p r o a c h t h eq u e r yt y p e ,q u e r yd e t a i ll e v e l ,q u e r ye f f i c i e n c ya n d r e s p o n s et i m ed e p e n do nt h eq u a l i t yo fd a t ad e s i g n i tc a n b es a i dt h a tt h ed a t am o d e l i st h ef a t e f u le l e m e n ti ne n t e r p r i s ed a t aw a r e h o u s e f i r s t l y ,a l le n t i r ed a t aa r c h i t e c t u r ea n dd a t af l o wo fe n t e r p r i s ed a t aw a r e h o u s ei s d e s i g n e d c o m b i n i n gt h ea d v a n t a g eo fl o g i c a l d r i v e na p p r o a c hw i t ht h ea d v a n t a g eo f t h ep h y s i c a l - d r i v e na p p r o a c h ,w eu t i l i z et h eh y b r i da p p r o a c ht om a n a g et h eg e n e r a t i o n a n dc h a n g e so fd a t am o d e l o nt h eb a s i so fu s i n gt h ei n c r e m e n t a li t e r a t i v ed e s i g n a p p r o a c h ,t h ep r o c e s so fm a p p i n gb e t w e e nt h ei f ff i l et ot h ec o n c e p t u a lm o d e la n d d o i n gt h ee t ld e s i g na n dc o n s t r u c t i o nc a nb ed o n ei np a r a l l e lt oi m p r o v et h ed e s i g n p a c e o f d e v e l o p m e n t s e c o n d ly ,e n t i r e d a t aa r c h i t e c t u r eo fd a t am a r t sa n d m u l t i - d i m e n s i o n a ld a t am o d e la r ed e s i g n e d ,w ep u tf o r w a r de f f e c t i v es o l u t i o n so f s o m ek e yd e s i g no fd a t am o d e l i n ga n dd i m e n s i o nm o d e lc o n s t r u c t i n g ,s u c ha s h e t e r o g e n e o u sp r o d u c t s ,s l o w l yc h a n g i n gd i m e n s i o n sa n dd r i l l t h r o u 曲q u e r y t h i r d l y , c o n s i d e r i n gt h ec l a s s i f i c a t i o n sa n dc h a r a c t e r i s t i c so fm e t a d a t ai nb a n ke n t e r p r i s ed a t a w a r e h o u s e ,w ep u tf o r w a r dt h es o l u t i o nf o rm e t a d a t ad e s i g na n di m p l e m e n t a t i o n i n c l u d i n gd e t a i ld e s i g n ,d a t ae x t r a c t ,d a t as t o r a g es t r a t e g ya n dd a t aa p p l i c a t i o n t h es u c c e s s f u la p p l i c a t i o no ft h eb a n ke n t e r p r i s ed a t aw a r e h o u s ep r o j e c tp r o v e d t h ep r a c t i c a la p p l i c a t i o nv a l u eo ft h ed e s i g n i n gd i s c u s s e di nt h i st h e s i s k e y w o r d s : e n t e r p r i s e d a t a w a r e h o u s e ;d a t ad e s i g n ;d a t a m o d e l i n g ; m u l t i d i m e n s i o n a ld a t am o d e l ;m e t a d a t a i i 华南理工大学 学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立 进行研究所取得的研究成果。除了文中特别加以标注引用的内 容外,本论文不包含任何其他个人或集体已经发表或撰写的成 果作品。对本文的研究做出重要贡献的个人和集体,均己在文 中以明确方式标明。本人完全意识到本声明的法律后果由本人 承担。 作者签名:铘风日期:嫩年占月夕日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的 规定,同意学校保留并向国家有关部门或机构送交论文的复印 件和电子版,允许论文被查阅和借阅。本人授权华南理工大学 可以将本学位论文的全部或部分内容编入有关数据库进行检 索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位 论文。 保密口,在年解密后适用本授权书。 本学位论文属于 不保密口。 ( 请在以上相应方框内打“4 ”) 作者签名:而局l 习 导师签名:如梯名l f 日期:山巧年月;日 日期: t 厂,年 l ( e u l ) 。 其它l 包括商业元数据和技术元数提 菲主系统数据t 同f = 1 4 第三章企业数据仓库数据设计的研究 3 2 企业数据仓库的数据架构 企业数据仓库的数据架构包括接口文件区、数据登台区、系统数据区、数据 管道区、元数据区、维度数据存储区和前端用户层等,如图3 2 所示。 7 一企,黼* 公窿,m 7 = 、 接口文件区 。、 正业裂借。笛,羊 5 1 y w ) 一 、坠 l1 管l l 爹据登台区升毋统数据斗一管道嚏 一椭岔 前端应用 s 0 l a p 和 i ”器l 口口口耋鬻 日j i j ,咫: 报表 口口口害镬口口 憎”i 用于对源数 以普通数据用于对维圆 据进行校验、排 模型存储并且 度数据结构 8 置l 序、合并等操作 符合原子参照进行更新的 以维度、事实和 回 的可莺用的登 性和事务性的去规范化的 层次结构组织的 台表 数据 登台表 多维数据用于应用 分析的数据 结构( 如多 l 。剥前端用户层 维数据库) 四趟躯雾 e = l 二= 习 日爿= = :千。二兰 商业定义、描述,系统配置,数据状态等 报表分析工具 3 2 1 接口文件区 图3 - 2 企业数据仓库的数据架构 接口文件区是一个永久的存储区,同时也是一个对格式接口文件进行处理的 临时区。通过结合使用u n i x 的基本工具和脚本,可以在接口文件区对大量的源数 据进行提取、处理和存档等操作,可以说接口文件区是登台区和系统数据区的子 集。 接口文件区的目录层次结构按源数据的应用系统来进行组织,所有的数据 整合接口采用统一的命名标准以便于维护。如图,顶层目录是$ e d w i t f ,在顶层 目录下每一种类型的系统有一个子目录,例如: 1 5 华南理工大学工学硕士学位论文 表3 - 1 接口文件区的目录层次 $ ( e d w t t f ) h s t这个子目录存放所有主机系统( h o s ts y s t e m s ) 的文件 $ e d w i t f ) f in 这个子目录存放所有财政( f i h a n c e ) 数据文件 $ e d w i t f e p m这个子目录存放所有e p m 系统的文件 j j:il;。wl。,席。t,;m。+,婀 譬l $ e d wi t f f $ s r c t y p e f u 叫 。图3 3 接口文件区的目录层次结构 在每种类型系统的子目录下,包含表3 - 2 所列的五个主要功能的子目录,但 并非所有的系统都全部用到这五个子目录。 表3 - 2 接口文件区功能区说明 i n b o x 存放最近从文件缓冲区提取出来的格式接口文件 w o r k 存放经过预处理并准备装载迸企业数据仓库的文件 a r c h i v e 存放已经成功装载进企业数据仓库的文件 r e j e c t存放没有成功装载进企业数据仓库的错误记录文件和同志 文件 o u t p u t 存放那些直接从企业数据仓库提取数据的系统所需的输出 文件 首先,由个企业数据仓库的处理过程定期从文件缓冲区提取格式接口文件 到i n b o x 目录: 第二,将格式接口文件转换成a s c i i 格式,检查头部和尾部记录以校验文件 的数据完整性,通过校验的文件将被复制到w o r k 目录并登记到装载应用表中,同 时生成一个标记文件以指示该文件可以被装载处理: 第三,由装载处理过程将w o r k 目录下的文件装载进企业数据仓库,成功则将 文件移到a r c h i v e 目录,按一定的策略对a r c h i v e 目录的文件进行压缩或转移到 备份磁带中,失败则将错误文件和f 志文件记录到r e j e c t 目录,由错误处理过程 1 6 第三章企业数据仓库数据设计的研究 或者手动进行错误处理。 3 2 2 数据登台区 数据登台区是数据仓库的工作平台,设置数据登台区的主要目的是在于在将 接口文件数据装载进企业数据仓库系统数据区之前进行校验、净化和一系列整合 的预处理。为了支持跨接口的可重用性,同时有利于内聚设计和e t l 过程的实现, 数据登台区的数据结构的实体数量应尽可能的少并采用了双层结构。第一层结构 与格式接口文件的结构类似,以便于经过很少的处理就可以将接口文件数据导入, 然后基于数据模型规则对数据进行处理并导入到第二层结构中,最后对数据进行 校验、净化等处理后装载进企业数据仓库系统数据区。另外,可以采用表分片等 技术以提高并行导入数据和校验接口文件的性能。 3 2 3 系统数据区 系统数据区将存储企业数据仓库所需的符合原子参照性和事务性的数据。一 般来说,系统数据区的数据模型符合第三范式,同时为了提高性能,将对一部分 模型进行去规范化处理。考虑到企业数据仓库对数据粒度和一致性的要求,应慎 重地考虑系统数据区的性能问题。可以通过采用索弓 和分片策略来提高系统数据 区的性能。 ( 1 ) 索引策略:使用索引虽然可以提高数据查询速度,但同时也要消耗磁盘 空间并且降低事务操作的性能。我们在尽量提高索引的重复使用的同时,对于实 体中的一些经常访问的键属性限制使用索弓l 以提高事务处理的性能。对于具有不 同数据操作行为的实体采用不同的索引类型以优化系统性能。 ( 2 ) 分片策略:对于大数据量的事务性实体( 如账号结余实体) ,随着处理过 程复杂性和高性能数据访问要求的提高,采用哈希分片策略,在提高性能的同时 保持性能调整的最大灵活性。 ( 3 ) 采用代理键:代理键用单个基于数字型的字段作为唯一主键取代源系统 的多个主键以提高索引性能和实体间的连接效率,同时减低源系统的改变对系统 数据区结构的影响。这些代理键采用递增的数字序列,而且在系统数据区与维度 数据存储区之间共享以使数据装载和管理更加容易,也可以提高钴透性 ( d r i l 卜t h r o u g h ) 数据访问的兼容性。 ( 4 ) 去规范化数据合并方法:为了提高数据装载和访问的性能,进一步简化 物理数据模型的实现,我们采用了如下图所示的三种去规范化数据合并方法。 1 7 华南理工大学工学硕士学位论文 图3 4 三种去规范化数据合并方法 直接合并型:如将客户消费习惯实体去规范化合并到客户实体中作为“客 户消费习惯描述”字段。 子类实体到超类实体的合并:如抵押品分布实体和存款分布实体可以去规 范化合并到单一的财产分布实体。 超类实体到子类实体的合并:妇利率实体可以去规范化成支票利率实体、 兑换利率实体和酬金利率实体。 3 2 4 数据管道区 数据管道区的功能是将从系统数据区到维度数据存储区的数据进行合并和处 理到一个中间结构。因为数据管道区并非实现所有的数据接口,对于复杂的转换, 数据管道区可以降低复杂性和提升性能,并且有助于发现系统数据区和维度存储 区之间的差异改变。 数据管道区提供中问结构存放数据,由于这些结构独立于已经存在的数 据,对于数据的合并、计算和聚集操作可以并行进行来提高性能。同时可以将复 杂的转换过程分成多个更低层次的处理部分,这些细分出来的部分可以被单独独 立处理,这样使得处理更加有效并降低了转换的复杂性。另外,这些中问结构一 经建立,可以为以后的实体改变提供简单而有效的比较,使得插入和更新逻辑更 加有效,当维度元素变更时,更加易于对统计信息进行特殊更新。 3 2 5 元数据区 元数据区的主要功能是捕获企业数据仓库数据处理过程和数据维护的福关信 1 8 第三章企业数据仓库数据设计的研究 息( 如闩志、数据字典、配置等) 。元数据可以在企业数据仓库中产生、捕获或者 手动添加到企业数据仓库中,这些元数据将被记录于文件或者数据库表中。 企业数据仓库中一般有三种元数据:商业元数据、技术元数据和操作性元 数据。商业元数据是指那些用户从商业方面考虑所用到的描述信息,如商业数据 的分类与定义,应用层与用户的交互接口描述等。技术元数据是指那些支持各种 系统服务操作的元数据,主要用于实现技术功能配置,如访问控制列表、作业时 问表和特定应用配置等。操作性元数据是指那些提供各种运行时信息的元数据, 主要包括性能统计、日志和运行时记录信息等。我们将在第五章深入讨论元数据 的设计和实现。 3 2 6 维度数据存储区 维度数据存储区在数据集市架构中,用于存放一系列多维数据模型,每个多 维数据模型由一系列与多个维度表相连的事实表组成。这些多维数据主要用来提 供高性能的查询和生成分析报表。我们将在第四章详细探讨多维数据模型的设计 和实现。 3 2 7 前端用户层 前端用户层是元应用层,报表工具利用前端用户层存储展示维度数据结构的 数据。 3 3 企业数据仓库数据处理架构 数据处理架构如图3 5 所示,由抽取数据处理、接口数据处理、系统数据处 理和数据集市数据处理四大部分组成,提供了数据从源数据到系统数据区再到维 度数据存储区的数据处理框架和处理准则。所有的数据处理的执行由作业控制环 境管理,包括作业的时间安排、作业的触发、作业的调用和作业执行顺序的调度。 数据处理作业可以通过d a t a s t a g e 工具、嵌入到c 语言的存储过程或u n i xs h e l l 脚本来实现。 1 9 华南理工大学工学硕士学位论文 图3 - 5 企业数据仓库的数据处理架构 3 3 1 抽取数据处理 3 3 1 1 抽取过程 本过程主要是从源业务数据系统或其他数据源将数据抽取到格式接口文件。 3 3 1 2 转换过程 本过程主要是将格式接口文件转换成a s c i i 格式或其他便于处理的格式。 3 3 2 接口数据处理 3 3 2 1 预处理过程 本过程主要是校验接口数据文件的数据完整性。为了能够跟踪文件的状态, 将在元数据中记录处理过程的i d 和文件名。如果预处理失败,数据文件将从w 。r k 目录移到r e j e c t 目录r 记录错误信息并发送电子邮件通知。待源数据文件修正后 再进行转换和重新进行预处理。预处理过程用u n i xs h e l l 脚本实现。 第三章企业数据仓库数据设计的研究 3 3 2 2 装载过程 经成功预处理的数据文件将被装载作业装载进数据登台区,装载作业利用元 数据中对数据文件、数据字段的描述以及文件与数据登台区数据表的映射关系来 装载数据。所有装载的记录都附有装载过程i d 以便于跟踪。为了便于处理装载过 程出现的错误,装载过程将生成一个记录错误信息和日志信息的文件。如果错误 严重地影响到整个数据文件的装载,数据文件和错误信息将被移到r e j e c t 目录以 作分析和修正之用。如果装载过程出现非预料中的错误,操作将回滚以保持数据 的一致性并记录错误日志。成功装载的数据文件将被移到a r c h i v e 目录进行压缩 存放。 3 3 2 3 变换过程 变换过程主要是用来完成对那些具有重复字段的记录进行拆分成多条记录, 以便于在系统数据区中进行应用处理。 3 3 3 系统数据处理 3 3 3 1 校验过程 校验过程的主要目标是测试数据的唯一性和参照完整性的商业规则,基于已 知的商业规则执行数据清洗和扫描数据变化,通过查找系统数据区的参考数据来 分配代理键等。为了对接口进行高效的处理,将在校验过程中采用批量数据操纵 语言( b u l kd a t am a n i p u l a t i o nl a n g u a g e ) ,对于小数据量的接口也可以采用基于 游标的校验方法。对于没有通过参照完整性检查的记录,可以采用增量过程进行 处理,或者拒绝该记录并记录错误信息以作错误修正。考虑到复杂性和性能要求, 校验过程用数据库存储过程的形式实现,对于一些简单的接口,也可以用 d a t a s t a g e 作业来实现。 3 3 3 2 过滤和应用过程 过程将经过校验的数据更新或插入到系统数据区的特定数据表中,在一些情 况下并非所有的记录都需要记录到系统数据区中,此时将使用过滤过程来进行过 滤。在过滤和应用过程中有时需要派生一些新的属性以便于更好地导入到系统数 据区中。当过滤和应用过程出现错误时,操作将回滚以保持系统数据区数据的一 致性。一旦数据成功导入到系统数据区中,数据登台区的数据将被删除。为了易 于开发和维护,一般采用d a t a s t a g e 工作来实现过滤和应用过程,对于一些大数 据量的数据接口,则采用数据库存储过程来实现以提高性能。 2 1 华南理工大学工学硕士学位论文 3 3 4 数据集市数据处理 3 3 4 1 抽取过程 本过程的主要目标是从系统数据区中获取更新维表和事实表的数据。对于更 新大数据量的维表和事实表,采用批量数据操纵语言以提高性能。对于事实表的 数据还要进行一些统计的计算操作。 3 3 4 。2 应用过程 本过程主要是将抽取出来的数据插入或更新维度数据存储区中特定的数据 表。当应用过程出现错误时,操作将回滚以保持系统数据区数据的一致性。 3 3 4 3 统计与更新过程 统计过程是指生成统计级的数据信息以提高查询性能,更新过程是指重新统 计数据信息以维持低层数据与聚集数据之间的完整性。 3 。4 系统数据区数据设计 3 4 1 使用数据建模工具 数据仓库建模工具在数据仓库建设过程中是不可或缺的,好的建模工具可以 提高开发效率,提高数据模型的可重用性及可管理性,增强对异构数据库的管理。 我们结合采用多个数据仓库建模工具来设计和管理企业商业模型、逻辑数据模型、 物理数据模型和维度数据模型。 本文所参考的企业数据仓库项目中,采用m o d e l w a r e 公司的商业业务建模工 具m 1 ,这是一个c a s e 工具,可以按照商业业务信息概念规则对业务问题域进行 细化,直至能够描述整个闯题域,并且可以生成逻辑e r 模型。采用c a 公司 ( c o m p u t e ra s s o c i a t e s ) 的数据建模工具a l l f u s i o ne r w i nd a t am o d e l e r 来对逻 辑数据模型、物理数据模型和维度数据模型进行设计、优化和管理。 3 4 2 数据建模方法 对于企业数据仓库来说,一个良好的数据建模方法应该满足如下要求: 逻辑建模:更好地确定与优化企业数据仓库的逻辑数据模型: 物理建模:更好地建立和优化企业数据仓库的物理数据模型; 第三章企业数据仓库数据设计的研究 过程控制:便于企业数据仓库过程控制和适用于项目的时问表; 版本控制:有助于对数据模型各部分进行版本控制; 元数据管理:便于对元数据进行管理; 变化管理:便于管理设计过程中需求变化等导致数据模型的更改。 3 4 2 1 逻辑驱动建模方法 逻辑模型驱动方法是i b m 银行数据仓库( b d w ) 解决方案中提供的一种数据仓 库数掘建模方法,由于主要考虑的是银行商业业务规则的逻辑建模,对具体的物 理实现考虑较少,难于与物理建模工具进行整合,在进行物理建模时耗时长而且 效率低,对用户的一些特殊的查询性能需求进行调整要耗费大量的人力和物力。 【a ,将接口文件导入概念模型卜l, b ) 对相关的属性和宴体进行映射 j。,更新相关的属性和实体 f j l 濉蜘h 篓慧 t - f - - 二生一i 壬二二一 f ) 建立物理模型 图3 6 逻辑驱动建模方法 逻辑驱动建模方法如图3 - 6 所示,其主要特点是: 着重于建立最好的逻辑模型,对物理模型考虑较少; 对用户特定需求的适应能力差: 建模周期长。 3 4 2 2 物理驱动建模方法 物理驱动建模方法是目前国内外一些小型数据仓库项目经常使用的建模方 法,其主要优点是建模速度快一般是参考项目需求文档直接构建数据仓库的逻 辑模型和物理模型。对于需求的变化改动工作量比较大,往往是导致项目失败的 主要原因之一。物理驱动建模方法如图3 7 所示,其主要特点是: 建模快速,但对逻辑模型考虑较少: 需要定义非常良好、完善的需求; 2 3 华南理工大学工学硕士学位论文 需要熟练掌握多种建模工具和方法的建模设计者。 a ) 将接口文件字段映射到逻辑字段 , b ) 按概念模型和需求对字段分组 。,直接构建逻辑模型和物理模型 e ) 优化物理模型 d ) 建市e t l 规则 更新e t l 规则 。 上 上 3 4 2 3 混合的建模方法 图3 7 物理驱动建模方法 图3 - 8 混合的建模方法 2 4 第三章企业数据仓库数据设计的研究 一詈詈蕾e 皇詈阜皇詈! 喜篁_ 墨霉一 在结合考虑数据仓库建模工具和银行商业业务规则的情况下,我们提出了一 种混合建模的方法。这种建模方法综合考虑商业概念模型和物理模型的实现,在 建模的过程中采用多版本增量迭代式的模型开发方法,将逻辑数据模型、e t l 规 则与元数据管理集中到同一个开发平台。同时协调企业数据仓库中系统数据区的 数据模型和数据集市的维度数据模型,保持数据的一致性,同时满足钻取到高粒 度数据的商业需求。混合建模的方法如图3 - 8 所示,其主要特点是: 同时兼顾到逻辑模型与物理模型的设计; 保持一致的命名标准; 集中了逻辑数据模型、e t l 规则与元数据管理平台; 满足钻取到高粒度数据的商业需求。 3 4 2 4 三种建模方法的比较 表3 3 所示为三种建模方法在企业数据仓库构建过程中的优缺点比较,通过 比较三种方法的优缺点,我们采用混合建模方法进行系统数据区数据模型的设计。 表3 - 3 三种建模方法的比较 逻辑驱动建模方法物理驱动建模方法 混合建模方法 逻辑建模 好差 由 物理建模差好好 过程控制好差好 版本控制 由 中 好 元数据管理中 由 好 变化管理 中差 好 3 4 3 多版本增量迭代式的模型开发方法 由于企业数据仓库开发过程的复杂性及迭代性,同时还要保持与其它数据模 型( 如数据集市的维度数据模型) 的一致性,我们采用多版本增量迭代式的模型 开发方法,经过多次迭代和增量式开发,经过多个版本的更新最终生成系统数据 区的数据模型。 3 4 3 1 模型改变管理 由于采用多版本增量迭代式的模型开发方法,对于每个新版本的数据模型都 有可能有量的更新,视更新程度不同的情况,我们将采用两种不同的策略: 对于一些重大的更改,将删除数据表并重新创建,接着重新导入上一版本数据。 对于一引起轻微的更改,将在e t l 数据清洗模块中对已存在的数据进行修币以 2 5 华南理工大学工学硕士学位论文 适应新的模型,此时需要在建模过程中建立冗余的查找表和一些退化字段 ( d e g e n e r a t e d f i e l d s ) 。 对于由于用户需求或者源系统改变触发的模型更改,则需要提高数据变化要求 文档。数据构架师及数据建模师将复查这些文档,并决定合并这些更改的可行性, 方法和时间表。 3 4 3 2 初始数据模型版本的产生 按如下的方法,我们将使用建模工具生成数据模型的初始版本: 将源系统的接口文件映射到概念模型; 对映射进行校验,生成逻辑模型; 对逻辑模型进行合并高速和其它物理修正( 如命名标准) 生成物理模型。这些 合并调整及物理修正以文档形式进行记录以便重复使用。 初始版本的模型将由源系统的接口文件所使用的表和字段组成,当映射改变 时,采用类似于上述的方法生成新的物理数据模型,但对物理数据模型所进行的 手动修正将会重复进行。 3 4 3 3 数据模型变更原因 新增的数据需求; 由于性能高速而对物理模型进合并操作: 系统需求改变( 如新增事件键) 。 3 4 3 4 数据映射、e t l 设计及e t l 构建过程的并行 口 逻辑映射、e t l 设计 与e t l 构建并行 文件2 对文件2 业鼍嚣i e 三三三 可斫基 图3 9 数据映射、e t l 设计及e t l 构建过程的并行 2 6 第三章企业数据仓库数据设计的研究 接口文件及初始版本的物理模型是e t 。设计和e t l 构建的两个主要输入,一 量初始物理数据模型建立成功,接口文件到要领模型的映射,e t l 设计及e t l 构 建过程就可以并行进行,如图3 - 9 所示。 3 4 3 5e t l 设计、e t l 构建与数据模型的完善 e t l 设计及e t l 构建将参照接口文件宣言并会确定生成物理数据模型的规则, 如果模型中不存在满足e t l 要求的表或字段,将启用数据为更改要求过程,以增 所需的表或字段。当产生新的映射时,e t l 设计、e t l 构建及建立新的数据模型流 程如下图3 1 0 所示: 午 、一 f 习 i - j 图3 一1 0 数据模型的完善 映射新的接口文件到概念模型; e t l 设计师数据新的接口文件提出d c r : e t l 设计师及构建师依据更新自己的开发环境以继续进行设计及构建; 数据建模师( 复查d c r ) 与项目组长以确定正确的修正方案进行修正; e t l 设计师及构建师应用最新的数据模型以确保u t p 正确: 数据建模师根据要求及映射重新定义及提升物理数据模型以确保最优,并 以s e r 文档形式记录这些提升操作; e t l 设计师采用最新的物理模型来更新e t l 设计模块。 2 7 圈 华南理工大学工学硕士学位论文 3 。5 模型优化措施 3 5 1 逻辑数据模型合并调整操作 对逻辑数据模型进行调整的主要目标是简化查询,降低e t l 过程执行时间和 合理存储数据。通过减少表时的连接可以简化查询和提升性能,同时也会降低e t l 过程的时间。另外,通过减少冗余数据存储( 如键和事件的管理信息) 。 单独子类型的合并调整 对这类关系的合并调整应协调空间与性能之间的平衡,一般地,如果多数年 父类连向单个子类,则应将它们进行合并调整。 主要信息重复实体的合并调整 对这类关系的两个实体应进行合并以节约空间,简化查询以提高性能。 一对一关系实体的合并调整 对于这类关系的两个实体应进行全并以减少表间的连接。 静态关系实体的合并调整 对于象只记录历史数据的交易表,因为只有插入操作,可以从其父类事件实 体分离。 高度集合关系实体的合并调整。 对这类关系的实体应将高度集合的字段进行数据冗余存储。例如,一个分布 实体有1 0 0 0 个交易实体相连接,每条交易实体记录都通过员工i d 与员工实体相 连,面用户经常性地查找员工i d 与员工姓名,此时应将员工i d 与员工姓名一起 存储在交易表中以减少查询时表的连接项目。 冗余关系的添加 如果a 实体与b 实体是l 对多的关系,b 实体与c 实体是1 对多的关系,此 时增加从a 到c 的l 对多的关系将提升查询性能。 3 5 2 分片策略 对于超过5 0 0 万条记录的实体进行数据分片。 时间分片:对于大数据量的历史数据表可以物理地分成以年或月为范围的 多个物理表,每个表中的时间键设有约束值以确保时间范围,创建联合视图来联 合所有的表,并用约束条件来控制访问特定的数据表。 哈希分类 ( 1 ) 分片键( p a r t i t i o nk e y ) 即使在分布式存放数据时都不得有效。 第三章企业数据仓库数据设计的研究 ( 2 ) 保持各个相关实体间分片键的一致性。 ( 3 ) 分片键不能为空。 3 5 3 索引策略 对于如下三种情况应创建候选键: a ,s q l 语名的子查询或e x i s t s 关键字中用到的字段; b ,经常用来连接的字段; c ,在e t l 中经常用来参照的商业键。 对于不同类型的表采用不同类型的索引 a ,参照性表:以主键、商业键、外键与更新时间四者为索弓 b ,历史数据表:以主键、外键与更新时间的结合三者为索弓 c ,关系表:以外键和更新时间二者为索引。 3 6 本章小结 本章对企业数据仓库的整体数据架构及各组成部分的设计进行了分析和研 究,重点讨论企业数据仓库系统数据区的数据登台区建立双层数据表结构的数据, 对数据进行分层处理以提高性能和可维护性。综合考虑e t l 处理过程实现的复杂 性和数据抽取的性能,采用了双数据管道区的数据架构果。在采用增量迭代式开 发方法基础上,并行接口文件到模型的映射,e t l 设计及e t l 构建过程。 华南理工大学工学硕士学位论文 第四章数据集市及维度建模的研究 4 1 企业数据仓库数据集市的数据架构 在以数据仓库为基础的决策支持环境中,尽可能满足多用户的查询需求会影 响整个数据仓库的性能,因此在数据仓库体系结构中增加数据集市,存储为特定 用户预先计算好的数据,从而可以满足用户对性能的需求。数数据集市是为特定 用户群或部门的分析决策和数据挖掘应用而提供的小规模特定数据库区的数据集 合。在数据集市中会采用附加的逻辑和转换规则。银行企业数据仓库的数据库集 市主要有财政报表数据集市( f r 3 ) 、客户行为分析( c a p ) 、企业效益管理( e p m ) 和信 用风险分析( c r s ) 。主要采用两种类型的数据集市: 整合型数据集市一一这类型的数据集市由企业数据仓库控制及维护,共享 企业数据仓库的硬件架构和应用工具,如f r 3 与c a p 属于这类型。 接口型数据集市一一此类型的数据集市通过接口来从企业数据仓库获取数 据,具有独立于企业数据仓库的硬件架构和应用工具,如e p m 和c r s 。 数据仓库 ! 垄霉l _ j 数据仓库 慧一荔磊+ ( s 3 fi ”( s o r ) 其它应用 如企业效绩管理 数据 道区 ( f d a ) 图4 1 数据集市的数据架构 本章主要讨论整合型数据集市的设计和实现,下图所示是本次数据集市数据 模型设计所采用的数据架构,底层数据库服务器采用的是i b md b 2 。考虑到性能 的要求,数据仓库和数据集市分别位于单独的数据库服务器。另外,为了提高可 维护性、扩展性和考虑其它有利于企业数据仓库建立的因素,在数据仓库和数据 集市各开辟一个数据管道区( p i p ea r e a ) ,数据集市通过这两个数据管道区进行数 据的抽取。 兰等芝科 第四章数据集市及维度建模的研究 4 2 数据模型建模过程 4 2 1 数据模型建模方法 数据集市的多维数据模的建模方法与数据仓库数据模型的建模方法一样,采 用结合逻辑驱动与物理驱动相结合的混合建模方法,并采用迭代方式对建模过程 进行改进与管理。具体步骤如下: 由商业需求建立商业方案模型( b s t ) : 根据商业方案模型建立相应的星型逻辑数据模型; 完成b s t 到星型逻辑数据模型的映射并产生相应的e t l 规则: 基于逻辑数据模型建立物理数据模型,调整优化物理模型并应用于数据 库系统; 基于数据集市建立前端分析应用( 查询分析报表) ; 核对前端应用与商业需求,客户测试前端应用并提出更新商业需求,转 进行下一轮迭代直到完成。 4 2 2 数据集市的整体数据设计流程 在企业数据仓库中,数据集市置于数据仓库和前端应用之间,存储满足特定 部门用户查询分析的信息数据uo 。数据集市的数据设计必须同时平衡商业和技术 的需要,其中商业需要是指商业用户的报表需求,在进行数据设计时这些报表经 过转换分成各类“商业方案模型”( b u s i n e s ss o l u t i o nt e m p l a t e s ) 如图4 2 所示。 技术需要包括企业数据仓库架构所采用的系统标准、性能、可维护性等。 图4 2 说明数据集市数据设计整体流程,包括工作流( 数据模型设计方法) 、 数据流( 数据抽取设计) 以及数据集市与数据仓库的整合,可分成四个步骤: 由企业报表收集维度和数据项; 参考商业数据仓库模型确定数据项归属于哪个功能区( 维度) ; 在功能区和数据项划分的基础上,建立含有多个子区的星型数据模型: 参照数据仓库到数据集市的映射表( 元数据) 进行数据抽取: 3 l 华南理工大学工学硕士学位论文 图4 - 2 数据集市数据设计整体流程 4 2 3 模型改变管理 随着企业数据仓库项目的推进、完善以及商业规则的不断修正,数据模型的 改变是不可避免的,在数据集市设计中,我们采用如下步骤实现对模型改变的管 理。 检查改变需求对逻辑模型的影响,确定需要完善的子区域及相应的实体和 属性; 与商业用户和其它相关的开发人员讨论模型改变的影响以确认改变需求: 记录改变需求,完善逻辑模型; 检查改变需求对物理模型的影响与数据管理员、技术顾问、系统构架师讨 论改变需求确定完善方案; 记录改变需求,并完善物理模型。 4 3 多维数据模型的工程过程 多维数据模型( m d u ) 主要应用于逻辑数据模型( l d m ) 和物理数据模型( p d m ) 。实 际上,从逻辑数据模型到物理数据模型的建立需要采用多种方法和考虑多种准则, 同样要考虑商业需求和技术可行性。 3 2 第四章数据集市及维度建模的研究 ! _ l # 2 = j _ 自! j 自_ i q = ! = _ _ e = - _ 目= ! i - e j = j _ e = j l t = = j _ ! ,e i 自! ! - e ! = l e e 4 3 1 实现商业需求阶段 显然,由于在初始阶段主要考虑的是实现商业需求,逻辑数据模型与物理数 据模型非常相似,此时两者的区别仅在于一些物理数据模型的特性( 如视图、雪片 模型、主键的索引等) 。同时,除了功能需求外,商业统计需求也是一个影响多维 数据模型的关键因素。根据不同的统计分析需要,一些统计表、物化查询表( 矾q t ) 甚至o l a p 立方体将被加入到物理数据模型中。 4 3 ,2 技术性能考虑阶段 随着数据仓库项目的进展和迭代次数的增加,多维数据模型将覆盖更多的商 业子区域,越来越成熟,此时更多考虑的应该是技术性能方面的实现,如数据抽 取和用户查询响应时间等。表的分割是现阶段采取主要措施。 4 3 2 1 表的垂直分割 对多维数据模型进行垂直分割有几种分割技术,包括维度的细分和异构产品 分割。垂直分割的基本概念是将维表或事实表垂直的分成更小的片,使得每个分 割出来的数据表具有更少的列( 行数不变) ,以便更好地更高性能地集中为特定的 查询或访问服务。 图4 3 维表分割示意图 4 3 2 。2 表的水平分割 表的一种水平分割是为了减少对数据库资源( c p u 或0 ) 的争用和提高性 能,将事实表水平分割成数个更小的表。例如,为了使历史数据更容易使用和减 少查询时的索引扫描提高性能,采用将多维数据存储统计表按时间分割成多个物 华南理工大学工学硕士学位论文 理表。例如,以年为单位对多维数据存储统计表进行分割,通过创建全连接( u n i o n a 儿) 视图使用户只见到一个集中的统计表,并用列的c h e c k 约束保证数据的正确 分布。 另一种水平分割是采用并行分布处理、访问技术将表数据分割存储到不同 的节点( n o d e ) 。由于数据集市中需要处理和访问的数据量非常巨大,采用并行处 理技术是一个满足性能需求的关键条件。通过采用节点分布技术,将含有大量数 据的事实表水平分割并最终分布存储到所有物理节点以达到最大的并行处理性 能。最大的节点数取决于可用处理器的数目,其中每个节点至少需要一个处理器 专用于负载平衡。例如,相对于一台具有1 6 个处理器的服务器,可以采用各有8 个处理器的2 台服务器或各有4 个处理器的4 台服务器达到同样的性能 4 。在进 行水平分割时,对于分割准则的选定应该考虑到商业需求,例如,对于一个包含 客户和账号的事实表来说,在实际的商业需求中,对客户的查询比对账号的查询 更加频繁,则此时应该按客户的主键来分割事实表。另外,对于事实表水平分割 后,连接事实表的维表数据的相应处理也是一个比较关键的问题。经过多次的分 割验证,总结出以下准则: a ) 对于数据量比较小的事实表,例如少于1 0 0 ,0 0 0 条记录,则应该采用将维 表数据复制到各个节点的方案。对于数据量巨大的事实表,由于操作耗时比较长, 所以不推荐采用将维表数据复制到各个节点的方案。 b ) 对于数据量大的维表,由于维表连接到一个或多个事实表,如果进行分割, 反而不利于数据库的优化从而使性能下降,所以维表不采用水平分割并行分布处 理的方案。 图4 4 采用并行分布处理的分割环境 第四章数据集市及维度建模的研究 4 3 3 提交阶段 经过多次迭代开发后,逻辑数据模型和物理数据模型有很大的不同。最终的 多维数据模型( 逻辑数据模型和物理数据模型) 不仅满足商业需求,同时也满足技 术可行性和性能需求。 4 4 多维数据模型设计的细节考虑及改进 4 4 1 双数据管道区 在数据仓库和数据集市中同时创建数据管道区的优点是可以在本地处理复杂 的数据抽取过程,降低数据耦合度,提高e t l 过程的性能,降低e t l 设计和构建 的复杂性。在数据管道区,通过采用扁平式的表格结构和登台表共享策略,增加 可维护性。 4 4 2 缓慢变化维的处理 4 4 2 1 具有层次结构的缓慢变化维 在数据集市中,出于查询分析和商业需求的考虑,需要保存这些维的层次历 史变化信息( 如产品维、部门维、时间维、总账维等) ,同时,这些维中不同层次 的属性变化信息也要保存。在分析查询时,用户需要输入时间范围以获得正确的 统计数据。例如: ( i ) 2 0 0 3 年1 月3 1 日数据 表4 - 1 产品维表数据( 2 0 0 3 年1 月3 1 日) p r o d u
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 吉林省四平市铁西区2024-2025学年七年级下学期期末练习生物试卷(含答案)
- 财务会计专员岗位职责要求
- 幼儿园常见传染病预防控制课件
- 财务会计年终工作总结范文(10篇)
- 土地复垦措施及其规划设计教学课件
- 道德与法治(海南卷)(考试版A3)
- 2025年android音视频开发面试!这么香的技术还不快点学起来Android篇-andoid视频秒开面试
- 2025年Android事件分发机制:面试官你坐啊
- 2024-2025学年下学期高一生物沪科版期末必刷常考题之生物进化论在不断发展
- 部编版五年级上册第一单元《白鹭》教案
- 呼吸机雾化吸入疗法护理实践专家共识
- “非遗”之首-昆曲经典艺术欣赏智慧树知到期末考试答案章节答案2024年北京大学
- 金属非金属露天矿山及尾矿库重大事故隐患判定标准解读
- SMP-04-013-00 药品受托企业审计评估管理规程
- 人工气候室投标书
- 湖南省娄底市涟源市2023-2024学年六年级下学期期末数学试题
- 应征公民政治考核表(含各种附表)
- 2024年湖南省中考地理+生物试卷
- 【企业分拆上市问题探究文献综述5800字】
- 肿瘤随访登记工作以及管理
- 医院新技术开展总结及整改措施
评论
0/150
提交评论