(计算机软件与理论专业论文)基于cwm的etl元数据管理系统研究与实现.pdf_第1页
(计算机软件与理论专业论文)基于cwm的etl元数据管理系统研究与实现.pdf_第2页
(计算机软件与理论专业论文)基于cwm的etl元数据管理系统研究与实现.pdf_第3页
(计算机软件与理论专业论文)基于cwm的etl元数据管理系统研究与实现.pdf_第4页
(计算机软件与理论专业论文)基于cwm的etl元数据管理系统研究与实现.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

(计算机软件与理论专业论文)基于cwm的etl元数据管理系统研究与实现.pdf.pdf 免费下载

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

文档简介

摘要 摘要 随着信息技术的普及和数据库技术的高速发展,企业面临构建数据仓库、集 成多种异构数据源、为决策者提供决策支持、提升企业竞争力的需求。元数据是 数据仓库的重要组成部分,贯穿于数据仓库系统的创建、维护管理和使用的各个 环节之中,对数据仓库系统中的元数据进行有效的管理是决定数据仓库项目成败 的关键。 由于e t l 工具价格昂贵,且手工编码具有较大的灵活性和较强的适应性, 大多数据仓库开发商采用了手工编码方式,而手工编码存在的最主要问题就是元 数据管理混乱。针对上述问题,本文提出了基于c w m ( 公共仓库元模型) 的 e t l 元数据管理系统的思想。该系统最主要的特点是关注e t l 的数据流程而不 是控制流程,清楚地告诉用户数据的来源是什么、经过怎样地转换、得到了哪些 数据集,从而帮助用户高效地管理e t l 过程。 本文首先介绍了e t l 的基本概念和处理架构,以及元数据的概念、分类、 管理模式和作用。接着分析了c w m 的概念、设计原则、元模型框架、关系包、 转换包等理论依据。接下来,设计了e t l 元数据管理系统功能模块、元模型、 元数据库物理模型。最后,研究、设计并实现了基于c w m 的e t l 元数据管理 系统,并对系统w e b 框架、总体实现方案以及实现过程中用到的关键技术做了 详细的介绍。 本文的重点在于设计和研究e t l 元数据管理模型,对其原理、元模型设计 与实现的相关技术做了一些探索,具有一定的实际应用价值。 关键词:元数据,c w m ,e t l a b s t r a c t r e s e a r c ha n di m p l e m e n t a t i o no f e t lm e t a d a t am a n a g e m e n ts y s t e mb a s e do nc w m a b s t r a c t w i t ht h ep o p u l a r i z a t i o no fi n f o r m a t i o na n dt h er a p i dd e v e l o p m e n to fd a t a b a s e t e c h n o l o g y , e n t e r p r i s e sa r ef a c i n gt h ed e m a n do fi n t e g r a t i n gd a t ao fd i f f e r e n ts o u r c e s , p r o v i d i n gd e c i s i o ns u p p o r tf o re n t e r p r i s e sa n de n h a n c i n gt h e i rc o m p e t i t i v e n e s s m e t a d a t ai sa ni m p o r t a n tc o m p o n e n to fd a t aw a r e h o u s e ,e f f e c t i v e l yi m p l e m e n t a t i o no f m e t a d a t am a n a g e m e n ti st h ek e yt ot h ed a t aw a r e h o u s ep r o j e c t a st h ee t lt o o l sa let o oe x p e n s i v e ,a n dm a n u a lc o d i n gh a sg r e a t e rf l e x i b i l i t ya n d s t r o n ga d a p t a b i l i t y , m o s to ft h ed a t aw a r e h o u s ed e v e l o p e r sc h o s em a n u a lc o d i n g b u t t h em o s ti m p o r t a n ti s s u eo fm a n u a lc o d i n gi si t sc h a o t i cm a n a g e m e n to nm e t a d a t a t o s o l v et h ea b o v ei s s u e ,t h i sp a p e rp r o p o s e st h et h o u g h to fd e v e l o p i n ge t lm e t a d a t a m a n a g e m e n ts y s t e mb a s e do nc w m t h em a i nc h a r a c t e r i s t i co ft h i sp a p e ri st h a t ,i t c o n c e m e sa b o u tt h ee t ld a t af l o w , n o tt h ec o n t r o lf l o w , i tc l e a r l yt e l l st h eu s e rw h a t a r et h es o u r c ed a t a s ,h o wt ot r a n s f o r m ,a n dw h a tk i n d so fd a t as e ti so b t a i n e d i nt h i sp a p e r , f i r s t l yi n t r o d u c e dt h eb a s i cc o n c e p ta n df u n c t i o n a ls t r u c t u r eo fe t l , a n dt h ec o n c e p t ,c l a s s i f i c a t i o n ,m a n a g e m e n tm o d e la n de f f e c t so fm e t a d a t a t h e n r e s e a r c h e dt h et h e o r i e s ,d e s i g np r i n c i p l e s ,f r a m e w o r k ,r e l a t i o n a lp a c k a g ea n dt h e r e l a t i o n s h i p b e t w e e n p a c k a g e s o f c w m n e x t ,d e s i g n e d t h ef u n c t i o n m o d u l e ,m e t a m o d e la n dp h y s i c a lm o d e lf o rt h em a n u a le t lm e t a d a t am a n a g e m e n t s y s t e m f i n a l l y , r e s e a r c h e d ,d e s i g n e da n di m p l e m e n t e do ft h ee t lm e t a d a t a m a n a g e m e n ts y s t e mb a s e do nc w m ,a n di n t r o d u c e dt h ew e bf r a m e w o r ko ft h ew h o l e s y s t e m ,t h eo v e r a l ls c h e m ea n dt h ek e yt e c h n o l o g i e su s e di nt h ei m p l e m e n t a t i o n t h i sp a p e rf o c u s e so nt h ed e s i g na n dr e s e a r c ht h em o d e lo fe t lm e t a d a t a m a n a g e m e n t ,a n dh a sd o n es o m ee x p l o r a t i o nt op r i n c i p l e s ,a n dt h et e c h n o l o g i e so f m o d e ld e s i g na n di m p l e m e n t a t i o n ,h a sc e r t a i np r a c t i c a lv a l u e k e y w o r d s :m e t a d a t a , c w m ,e t l i i 西北大学学位论文知识产权声明书 本人完全了解西北大学关于收集、保存、使用学位论文的规定。 学校有权保留并向国家有关部门或机构送交论文的复印件和电子版。 本人允许论文被查阅和借阅。本人授权西北大学可以将本学位论文的 全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存和汇编本学位论文。同时授权中国科学技术信息研 究所等机构将本学位论文收录到中国学位论文全文数据库或其它 相关数据库。 保密论文待解密后适用本声明。 学位论文作者签名:到亘壹壁虽 指导教师签名: a 一8 年月矽日知留年石月猡日 西北大学学位论文独创性声明 本人声明:所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究 成果。据我所知,除了文中特别加以标注和致谢的地方外,本论文不包含其他人已经 发表或撰写过的研究成果,也不包含为获得西北大学或其它教育机构的学位或证书而 使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确 的说明并表示谢意。 学位论文作者签名:寺l = ? 丽娟 孵月哆日 绪论 1 1 课题研究背景 第一章绪论弟一早殖化 随着信息技术的发展和应用的日渐普及,企业数据库的规模与日俱增,人们 对信息系统的要求不断提高,对数据的认识也不断深入。数据的无限增长将不可 避免的导致以下情况的发生那就是越来越难以得到想要的信息。对大部分企 业而言,为决策者提供高质量的业务智能或决策支持是目前最迫切的需求,而如 何对信息系统和数据集进行管理和访问已经成为数据生产者和使用者面临的最 突出的问题。 为了满足信息技术的飞速发展和企业不断提出的新需求,人们开始尝试对数 据库的原始数据进行再加工,形成一个综合的、面向分析的环境以支持决策,由 此,数据仓库的思想开始形成。数据仓库( d a t aw a r e h o u s e ,d w ) 是面向主题的、 集成的、相对稳定的、反映历史变化的一个数据集合【l 】,是在数据库技术的基础 上快速、高效地将决策支持所需信息从企业的日常运行数据中分离出来,对数据 进行归纳、综合、分析后,转化为集中统一、随时可用的管理决策信息【2 】。决策 分析用户可以通过数据终端方便、有效地访问数据仓库并获取数据,用以评价企 业过去、现在的经营和财务状况,预测市场未来发展趋势。利用数据仓库实现企 业数据集成是企业实施商务智能最为重要、也是必须首先实施的步骤。 e t l 过程是整个数据仓库系统开发实施中最重要的部分。由于企业数据库是 在不同时期、不同背景下开发的事务处理系统,数据的存储结构、存储平台和系 统平台存在异构性【3 】。e t l 要按照统一的规则集成并提高数据的价值,完成数据 从数据源向目标数据仓库转化的过程。在数据仓库系统开发中6 0 8 0 左右的 时间和工作量都花费在e t l 过程的设计和实施上【4 1 。数据的正确性和有效性需 要e t l 过程保证,而e t l 过程的正确与否关系到数据仓库的可用性。 随着中国移动、中国联通、中国电信和中国网通各大电信运营商对客户的激 烈争夺,国内电信市场打破了原中国电信一家垄断七年的格局。电信企业面临着 从管理客户数量转变为管理客户质量与关系,即从大众营销转为定向营销问题, 而这种转换则以识别客户的价值和流失趋势两方面的特征为基础。电信客户关怀 绪论 项目正是以此为建设宗旨,为电信利用数据仓库和决策支持系统管理存量客户提 供有力支撑。 电信客户关怀项目需要从电信数据仓库中抽取分析客户价值和流失趋势的 相关数据,通过对仓库数据清洗和层层转换处理,加载到为客户关怀项目建立的 数据集市中,提供识别客户的价值和流失趋势所依赖的分析数据。 在项目的实施过程中存在这样一个现象,项目组有专职的数据分析师和e t l 工程师,e t l 工程师负责e t l 编写、正常调度和错误处理。而数据分析师主要 关注业务、数据流、数据的依赖关系,不会追究具体的e t l 步骤。绝大多数的 转换规则、映射关系都是由数据分析师定义,最后由专门的e t l 工程师实现。 数据流向、转换规则、映射关系通常都存储在多个文档中,无法直观地展现给 e t l 工程师,从而导致工程师与数据分析师在对e t l 需求进行理解沟通时,常 会产生一些理解偏差。尤其是,这些规则在项目初创时期会经常变动,导致e t l 工程师非常被动,严重拖延进度。e t l 过程管理急需一个能清晰的展现出数据流 的系统,明确的标明数据流向、依赖关系、转换规则以及映射关系。 而2 0 0 7 年中国商业智能市场发展报告中指出,e t l 和数据集成的工作量占 b i 项目的4 0 ,但是e t l 工具约占b i 市场的9 ,其中很多应用采用手工编码 方式,很多企业没有使用数据集成软件【5 1 。由于使用e t l 工具成本过高,当财 富5 0 0 强公司都使用数据集成软件来构建大的数据仓库时,但在构建数据中心、 业务数据仓库或其他项目时往往会采用手工编码方式实现。 鉴于以上原因,提出了基于公共仓库模型( c o m m o nw a r e h o u s em e t a m o d e l , c w m ) 来开发针对手工编码方式的e t l 元数据管理系统的思想。 1 2 研究现状 近年来,围绕数据仓库技术的研究非常活跃,但大多集中在如何构建数据仓 库、以及如何进行数据仓库项目实施等方面,没有充分发挥元数据指导作用。 特别是数据仓库e t l 过程为有效支持统计决策,发掘各个数据源的数据之间 的语义关系,更需要元数据的支持。 e t l 中存在两种图,一种是“控制流程图”,另一种是“数据流程图”1 6 1 。 2 绪论 常见的e t l t 具,;t l l d a t a s t a g e ,i n f o r m a t i c a 都会展现“控制流程图”,并以此来进 行调度。例女l :i d a t a s t a g e 流程图中的每个节点是j o b 、命令行或是异常处理,而后 者的节点是s e s s i o n 、w o r k l e t 等,他们的节点都是“过程 。而其箭头连线表示的 是控制转换,过程执行的顺序,并行还是串行。一个节点指向另一个节点,意味 着当前一个节点运行结束,或者到某种状态时,执行后一个节点,这种流程图的 好处是能够清楚地了解e t l 过程【7 】。 但与“控制流程图”相比较而言,“数据流程图”比较少见。大多数据仓库开 发商都将注意力集中在对e t l 过程的管理上,很少有人关注转换过程与转换源和 转换目标之间的映射关系。而“数据流程图”就是针对此问题提出的,从数据流程 图中开发人员可以清楚地知道数据的来源是哪里、转换得到哪些数据集、以及转 换的依据,数据流程图在数据仓库应用中有着极其重要的作用。数据流程图在元 数据中比较常见,采用元数据来对e t l 过程和资源进行管理是非常必要的。 目前国外有关数据仓库领域元数据的研究主要集中在以下方面:数据仓库信 息价值链上如何进行不同工具之间元数据共享、交换以及工具之间的集成。不同 组织分别提出自己的元数据标准,典型代表包括d u b l i nc o r em e t a d a t ai n i t i a t i v e 的都柏林核心元数据( d c ,d u b l i nc o r e ) 、元数据联盟m d c 的开放信息模型( o p e n i n f o r m a t i o nm o d e l ,o 蹦) 和对象管理组织( o m g ) 的公共仓库元模型( c o m m o n w a r e h o u s em o d e l ,c w m ) t 引。在经历标准之间斗争与妥协、权衡、融合之后,c w m 吸纳o i m 之后并取而代之,成为数据仓库领域元数据标准。现在,大多数b i 工具厂商承诺提供满足c w m 标准的接口并己开始付诸实践。其中很重要的一个 方面就是如何借助元数据进行数据仓库建设、管理和维护,以元数据为驱动,提 高e t l 的灵活性。 在国内,越来越多的企业也逐渐认识到元数据在数据仓库中的重要作用。国 内关于元数据的参考文献较多,而实际的应用案例也有。具有代表性的文献基本 上都是关于元数据定义、分类、标准、元数据架构方面进行的探讨,并有小部分 涉及c w m 元数据标准应用的研究,分为数据仓库工具间的集成、基于c w m 模型 的e t l 元数据管理和开发面向c w m 模型的e t l 工具。但这方面的研究工作相对 滞后,许多专业的数据仓库解决方案都只是提到元数据管理非常重要,没有涉及 细节。一些数据仓库开发商开发e t l _ t _ 具,也包括了元数据管理部分,却对实现 绪论 技术有所保留。 1 3研究的内容和意义 本文首先对数据仓库中e t l 的基本理论做了介绍,讨论了元数据的定义、分 类及其作用,接着,对目前元数据的标准化问题进行了探讨,重点分析了c w m 元模型的内容及其对数据流程图的支持,包括c w m 核心包、关系包、键和索引 包以及转换包。在此基础上,提出了基于c w m 元模型为e t l 元数据管理系统建 模的思想,进行了系统功能模块分析和设计,并且在c w m 规范的基础上对数据 流程管理所需要的e t l 资源包、转换过程包以及转换映射包进行建模。构建了 e t l 元模型,实现了系统元数据库物理模型设计。最后,研究、设计并实现了基 于c w m 的e t l 元数据管理系统。 本课题的研究重点是利用c w m 元模型中已有的类和关系的定义,通过适当 的扩展,为e t l 资源、过程和映射建立元模型,并且在此基础之上,完成系统的 各个相关模块的开发。 本文就基于c w m 的e t l 元数据管理所进行的研究将具有以下三方面的意 义: 1 ) 弱化e t l 工程师的责任:转换规则、映射关系由数据仓库设计人员、数 据分析师来实现,避免理解上出现偏差。 2 ) 有助于用户进行元数据检索:元数据提供了数据访问入口。每次开发人员 对e t l 数据流进行理解时,可直接输入要查找目标字段或存储过程名,就能够 清楚地知道数据的来源是哪里,又转换出来多少数据集,中间经过什么操作。 3 ) 有助于实现应用间的元数据交换:在系统遵循c w m 公共仓库元模型规范 对元数据库进行建模的基础上,可以利用基于x m l 交换工具将元模型转换为 x m l 文件,便于与各种异构数据源交换数据。 1 4论文结构 论文共分六章,依次为: 第一章绪论。阐述论文研究背景、现状以及研究的内容和意义 4 绪论 第二章e t l 与元数据技术介绍。介绍了e t l 的基本概念和处理架构,并对元 数据的概念、分类、管理模式和作用做了详细的说明,为系统开发提供了理论背 景。 第三章元数据管理标准化模型c w m 。系统地介绍了项目中需要用到的c w m 的相关知识,包括c w m 基础理论、设计原则、元模型框架、关系包、转换包以 及包与包之间的关联。从整体上对c w m 有了一定的了解。为系统元模型设计和 物理模型设计提供了理论依据。 第四章e t l 元数据据管理系统设计。分析e t l 手工编码存在的问题,并针对 存在问题进行了系统的模块、e t l 元模型、以及元数据库物理模型研究、设计与 实现。 第五章e t l 元数据管理系统实现。实现了基于c w m 的e t l 元数据管理系统 的研究与开发,并介绍了系统的总体实现方案以及在实现过程中使用到的关键技 术。 第六章总结与展望。 e t l 与元数据技术 第二章e t l 与元数据技术 2 1e t l 基础理论 2 1 1e t l 的基本概念 e t l 且o 数据抽取、转换、装载的过程,是构建数据仓库的重要环节【9 】。用户 从数据源抽取出所需要的数据,经过数据清洗、转换,最终按照预先定义好的数 据仓库模型,将数据加载到数据仓库中去。e t l 包括以下三部分【1 0 】: 数据抽取:即确定数据源,采集原始数据,通过不同的数据接口,从不同的 数据源中抽取数据。e t l 工具应该支持各种平台、各种网络环境下数据抽取;同 时应该支持各种数据源,包括j d b c 数据源、各种关系数据库数据源以及各种文 件格式中的数据; 数据转换:指接收来自不同运作系统的输入并将其转换成目标数据仓库中需 要的格式的过程,包括数据的各种统计、合并、汇总、查询、过滤、排序、函数 计算、合并拆分、转换等。数据清洗是对抽取的数据进行有效性检查,从中去除 无效、重复、错误记录的过程,这个过程如果出错,不仅会影响数据和决策的质 量,而且会导致业务决策者不信任数据仓库的数据。 数据装载:负责将数据按照目标数据库元数据定义的表结构装入数据仓库, 即对经过前几步清洗和转换后的数据保存汇总。e t l i 具应该跨平台、跨网络地 加载数据。 2 1 2e t l 的处理架构 e t l 过程就是数据流动的过程,从不同的异构数据源流向统一的目标数据。 e t l 的核心还是在于t 这个过程,也就是转换,而抽取和装载一般可以作为转 换的输入和输出。 数据仓库中,e t l 有两大特点,一是周期性,e t l 不是一次性导完数据就 结束,而是经常性的活动,按照固定周期运行;二是复杂性,由于需要处理的数 据量特别大,需要将数据流动的过程拆分成e ( 抽取) 、t ( 转换) 和l ( 装载) 。 6 e t l 与元数据技术 藤窭窭窭溺匡塑l e 薹叁一墼妻i 豳翩圆 数据库或外来 数据文件数据 元数据导入导出 图2 - 1 e t l 处理架构 e t l 的处理架构,如图2 1 【1 1 1 所示,主要包括以下几个方面: 元数据管理:提供一个关于e t l 设计和运行处理等相关定义、管理信息的 元数据资料库。包括提供一个图形化的映射环境,让开发者定义从源到目标的映 射关系、转换、处理流程。设计过程的各对象的逻辑定义存储在一个元数据存储 库中。 抽取:通过j d b c 、专用数据库接口或平面文件提取器等接口提取数据源数 据。在抽取的过程中,e t l 需要通过元数据管理获得相应的映射规则,决定从数 据源中抽取哪些数据,并且需要其它一些元数据辅助来保证抽取到数据的正确性 【1 2 】 o 转换:在转换的过程中,开发者需要转换规则元数据的辅助,将提取的源数 据,按照业务需要进行统计、汇总、查询、过滤、排序、函数计算、合并拆分等 操作,转换为目标数据格式的信息。 装载:负责将数据按照目标数据库元数据定义的表结构装入数据仓库。元数 据告诉开发者应该将数据加载到什么地方。 传输管理:利用网络协议或文件协议,在源和目标系统之间移动数据,利用 内存在e t l 处理各组件中移动数据。 操作服务:可让管理员基于事件和时间进行调度、运行、监测e t l 作业、 管理错误信息、从失败中恢复和调节从源系统的输出。 由图中可以看出,元数据的管理是伴随着e t l 过程进行的,元数据对于e t l 7 e t l 与元数据技术 的管理集中表现为:定义数据源的位置及数据源的属性、确定从源数据到目标数 据的对应规则、确定相关的业务逻辑、在数据实际加载前的其他必要的准备工作 1 3 1 ,它一般贯穿整个数据仓库项目,而e t l 的所有过程必须最大化地参照元数据, 才能快速实现e t l 。 2 2元数据相关理论 2 2 1元数据的概念 元数据( m e t a d a t a ) 就是描述数据的数据或是与数据有关的信息,旨在便利 存取、管理、共享和处理大量结构化和非结构化的数据【1 4 】,通常由信息结构的 描述组成。元数据涉及的范围十分广泛:元数据是指来自企业内外的所有( 软件 和其它介质中含有的) 物理数据和( 员工和各种媒介中含有的) 知识,包括物理数 据的格式、技术和业务过程、数据的规则和约束以及企业所使用的数据结构【1 5 】。 元数据的概念在现实中大量使用,如支持信息检索、软件配置或不同系统之间的 数据交互。 在关系型数据库中,元数据是数据库中对象的表示,也就是表、列、数据库、 视图和其他对象的定义,元数据给出了数据仓库中数据关系的有效视图。在数据 仓库系统中,利用元数据可以帮助数据仓库管理员和数据仓库的开发人员非常方 便地找到他们所关心的数据。 元数据对不同厂商提供不同软件系统和产品之间的集成起着不可或缺的作 用。异构软件产品、应用程序、报表工具和数据系统之间要想进行有效的互操作, 必须对彼此间的信息结构有共同的理解,因而也就需要一种通用的语言来描述和 交流元数据,进而也需要有支持元数据交换的标准接口和协议【6 】。 从企业的观点出发,元数据就是知识,包括系统、业务和市场知识。当具体 范围缩小到数据仓库e t l 过程时,e t l 元数据的含义为:e t l 元数据是赋予e t l 系统 ( 或过程) 内容意义的描述信息,包括所有物理数据结构定义、过程与系统信息 【1 5 】 o 在数据仓库系统中,元数据机制主要支持以下五类系统管理功能【1 6 1 : 。 e t l 与元数据技术 1 ) 描述哪些数据在数据仓库中。 2 ) 定义要进入数据仓库中的数据和从数据仓库中产生的数据。 3 ) 记录根据业务事件发生而随之进行的数据抽取工作时间安排。 4 ) 记录并检测系统数据一致性的要求和执行情况。 5 ) 衡量数据质量。 2 2 2 元数据的分类 数据仓库中的元数据可以从多个角度分类:从用户的角度来看,元数据有技 术元数据和商务元数据等;从仓库过程来看,元数据有设计元数据、发布元数据、 管理元数据、分析元数据等;从数据方面来看,元数据有操作数据源元数据、数 据仓库元数据、数据集市元数据等。 e t l 在很大程度上依赖于元数据,在e t l 的知识库中,为了管理数据繁多的 元数据对象,可以根据使用对象和应用范畴的差异,将其划分技术元数据和业务 元数据。其中技术元数据主要是为技术人员和i t 人员提供支持的元数据,而业务 元数据是为企业业务用户( 主要是决策分析人员) 提供支持的元数据。 技术元数据:是为企业技术用户和i t 员工提供支持的元数据,存储关于数据 仓库系统技术细节的数据,用于开发和管理数据仓库【1 7 】。技术元数据是物理数 据结构的描述,描述了目标数据库中的数据以及数据之间的关系等技术细节,是 用户使用和管理e t l i 具以及数据仓库的基础。主要包括:数据的逻辑模型和物 理模型,系统物理字段格式以及字段之间的映射关系,数据仓库中的表名、字段 名等属性,表、系统、作业的功能以及程序的版本信息,数据仓库与数据源之间 的对应关系和相应的转换规则。基于这种组织的元数据可以利用一些开发语言提 供的标准接口( 如j d b c ) ,也可以开发各种通用的用户接口,支持用户从数据仓 库中获取数据。 业务元数据:是为企业业务用户提供支持的元数据,是对数据的业务描述, 提供介于使用者和实现系统之间的语义层【l 引,保证用户能正确、方便地使用e t l 工具和集成后的数据仓库系统。决策分析人员拥有所在领域丰富的业务知识,他 们关注数据的业务含义、数据的结构、数据之间的转换关系以及数据质量问题。 9 e t l 与元数据技术 业务元数据包括最终用户的业务术语所表达的数据模型、对象名和属性名,加强 了用户对数据的理解。 2 2 3 元数据管理模式 从面向过程的观点来看,数据流经的数据仓库各成员都产生、使用本地元数 据,元数据管理应支持数据仓库的处理流程,支持开发和使用,并与各成员紧密 集成。元数据库是各种元数据的物理存储池,元数据库的管理模式应与用户具体 的应用环境相适应。目前,对元数据管理主要有三种典型的模式,集中式、分散 式和联邦式,如图2 2 所示【1 9 】: 圄囝 ( a ) 集中式( b ) 分散式 m o f ( m e t a o b j e c tf a c i l i t y ) :元对象工具,是o m g 关于元模型和元数 据库的一个标准,为构建模型和元模型提供了可扩展的框架,并提供了存取元数 据的程序接口; x m i ( x m lm e t a d a t ai n t e r c h a n g e ) :是o m g 关于交换元数据和元模型的 标准机制,将元数据转换为标准的x m l 数据流或文件格式,支持交换。由于 x m i 为元数据提供了一种低成本的、适合w e b 的交换机制,因此x m i 对于c w m 而言是一种重要的基础技术。 整个体系结构为工具、知识库和对象架构的开发者提供了一个广阔的范畴。 c w m 基于上述三个标准,大大增强了c w m 的通用性。 3 1 3c w m 设计原则 c w m 的设计原则主要有以下三个方面【2 3 】: 1 ) 重用原则:c w m 在任何可能的地方对u m l 中的概念进行重用,所有的 c w m 对象类型都直接或间接地继承于u m l ,因此也继承了它们的属性和方法。 这样可以节省很多重复工作,并且使c w m 更容易理解,所有熟悉u m l 的用户 都可以有一个比较高的起点。 2 ) 模块化:c w m 元模型被分成许多包,以便分别实现并减少复杂度。 3 ) 通用性:c w m 元模型独立于任何具体的数据仓库工具,但同时,它尽 可能多地包含了基于特定工具实现的有代表性且通用的数据仓库特点。也就是 说,只有那些多种工具共享的信息才会被c w m 元模型包含进来。 3 2c w m 元模型研究 3 2 1c w m 元模型框架 c w m 是数据仓库和业务分析领域的一个完整的元模型。作为一个元模型, c w m 实际上是由许多不同却密切相关的元模型组成,每个元模型表示了数据仓 库环境的一个重要的功能域。c w m 提供了描述构建一个完整信息供应链组件所 需要元数据的语法和语义。 1 4 元数据管理标准化模型c w m 管理层 分析层 资源层 基础层 对象模型层 数据仓库处理包数据仓库操作包 联机分析、 。转换包处理包数据挖掘包业务命名规则包信息可视化包 o l a p 关系 对象包记录包多维包x m l 包 型包。 数据类錾键和学 业务信息包表达式包软件配置包类型映射包 型包索引包 黪j “”“7 ”铡 核心包行为包 一。关系包 ;l 实例包 瓿j 图3 一lc w m 兀模型包 c w m 共有2 2 个包,每个包都描述了与数据仓库和业务分析领域的特定部 分相关的类、关联和约束【2 4 1 。这2 2 个包分布在五个抽象程度不同的功能层中, 同层中的包在整个概念结构中扮演的角色相似,每一层中的包为同层或上层的包 提供服务,层次越高描述的内容越抽象。在包的内部结构方面,上层包中的类和 关联继承下层包中的类和关联,或者直接使用下层包中定义的类或关联,这样组 织既使c w m 在功能层次上清晰有序,又控制了整个元模型的复杂性和规模【2 5 1 。 c w m 的元模型框架,从上到下依次为对象模型层( o b j e c tm o d e l ) 、基础层 ( f o u n d a t i o n ) 、资源层( r e s o u r c e ) 、分析层( a n a l y s i s ) 和管理层( m a n a g e m e n t ) 。 每层又由若干块组成,每块代表c w m 的一个元模型或元模型包。下面分别对图 3 1 中c w m 每一层的功能进行介绍【2 6 】: 1 ) 对象模型层 对象层包含定义基本元模型的概念、关系和约束的基础包。这些概念为定义 其它的c w m 包创造了一个清晰、良好的环境,使得它们能够专注于各自的任务, 而将与系统基础结构和细节处理交互的部分减少到最小2 7 1 。对象模型层与u m l 关系密切,是u m l 的一个子集。 2 ) 基础层 基础层的元模型是对对象层模型的扩展,用以表示数据仓库系统中所有组件 所需要的公共服务,具有通用性。 3 ) 资源层 描述各种类型数据源的数据结构。例如,面向对象数据库或者应用、关系数 据库管理系统、文件或记录模型数据库管理系统、多维数据库以及x m l 数据流 元数据管理标准化模型c w m 等。 4 ) 分析层 在分析层中最重要元模型是转换元模型。不仅可以定义数据资源模型之间源 和目标的映射及转换,还可以定义数据资源模型和各种分析模型之间源和目标的 映射及转换。分析层还提供其它一些元模型来对面向分析的元数据进行建模。 5 ) 管理层 c w m 的管理层定义了两个重要的元模型:数据仓库处理元模型和数据仓库 操作元模型。数据仓库处理元模型主要用于对某些特定的数据仓库处理过程进行 建模。数据仓库操作元模型定义了周期性例程操作的元数据,这些元数据对于 e t l 工具、基于时间的高度工具具有十分重要的作用。 c w m 提供了基于模型的元数据集成体系结构所需要的、描述问题域的公共 元模型。从前端的数据资源,到清洗和转换,再到终端用户分析,最后到数据仓 库管理整个i s c ( 信息供应链) ,都能用c w i v i 的元模型来建模。 3 2 2c w m 相关包内容剖析 在图3 ic w m 元模型包中设计e t l 元数据管理所涉及的包都已用阴影表 示。下面将对整个系统中所涉及到的最主要的两个包进行详细的介绍。 3 2 2 1c w m 如何用继承来实现重用 从建模的角度来看,如果能在新模型的创建过程中轻易地重用已有的模型资 源,就能够极大地提高投资回报率。c w m 使用面向对象的概念继承来达到 重用的目的。 在继承中,子类可以获得超类的属性、操作和关联。因此,继承是面向对象 技术中最重要的特征之一。继承是一种能将复杂结构按照有序方式进行管理的组 织规则。下面将说明继承如何实现重用,同时可以看到c w m 元模型结构特征。 在c w m 中类之间关联均是使用对象模型核心包中定义的关联名称标记。图 3 - 2 2 1 1 表示的x m l 包是c w m 包的一部分,s c h e m a 类和e l e m e n t t y p e 类,以及 e l e m e n t t y p e 类和a t t r i b u t e 类之间的组合关联,均使用对象模型核心包中的定义 1 6 元数据管理标准化模型c w m 的关联名称e l e m e n t o w n e r s h i p 、c l a s s i f i e r f e a t u r e s 标记。从中能够看出,重用关 联可以获得理想的拥有关系而又不必重新复制核心包中的所有超类结构。这项技 术在c w m 规范中被反复使用,从而大大的简化了元模型图。 图3 - 2 x m l 包关联重用 图3 - 3 部分核心包关联和继承属性 继承为类提供了其所有超类的属性和关联,并且防止它们继承其超类没有的 属性和关联。如图3 3 所示2 ,命名空间类n a m e s p a c e 继承于模型元素类 1 7 元数据管理标准化模型c w m m o d e l e l e m e n t ,但n a m e s p a c e 又可由多个m o d e l e l e m e n t 组成,每个m o d e l e l e m e n t 只可属于一个名字空间。类元c l a s s i f i e r 继承于n a m e s p a c e ,即c l a s s i f i e r 通过继 承n a m e s p a c e 继承了关联e l e m e n t o w n e r s h i p ,因此c l a s s i f i e r 也可以拥有 m o d e l e l e m e n t 。c l a s s i f i e r 本身还拥有关联c l a s s i f i e r f e a t u r e ,可由多个f e a t u r e 组 成。a t t r i b u t e 是f e a t u r e 的子类,因此,c l a s s i f i e r 也能拥有多个a t t r i b u t e 。但是 由于a t t r i b u t e 类不是n a m e s p a c e 类的子类,因而不能拥有别的元素。 3 2 2 2 关系元模型 关系包描述了访问关系数据所涉及的所有方面,包括:关系数据库的总体结 构;表、列和数据类型;数据类型与扩展;关键字、索引、触发器、存储过程以 及关系实例的构成规则,如图3 4 所示【2 6 1 。关系包依赖于核心包、行为包、数据 类型包、键和索引包以及实例包。 图3 4 关系包 图3 5 是关系包的总体结构图【2 6 1 。目录( c a t a l o g ) 表示d a t a m a n a g e r 管理下 1 8 元数据管理标准化模型c w m 的数据库,一个目录可以包含多个和表模式( s c h e m a ) ;模式又可以包含多个触 发器( t r i g g e r ) 、命名列集( n a m e d c o l u m n s e t ) 、存储过程( p r o c e d u r e ) 、关系数据 表索引( s q l i n d e x ) ,它们与s c h e m a 的关联都是拥有关系- - e l e m e n t o w n e r s h i p 。 图3 5 关系包总体结构图 图3 - 6 关系表结构 图3 - 6 ( 2 6 1 描述了表、列和数据类型关系图。c o l u m n 类表示关系中的列, c o l u m n s e t 类由多个列组成。q u e r y c o l u m n s e t 和n a m e d c o l u m n s e t 是c o l u m n s e t 1 9 元数据管理标准化模型c w m 的子类,q u e r y c o l u m n s e t 表示查询结果集。t a b l e 和v i e w 是n a m e d c o l u m n s e t 子类。 关系包中还包括键、索引和存储过程。在c w m 的关系包中,将键和索引包 中的唯一键( u n i q u e k e y ) 和键关联( k e y r e l a t i o n s h i p ) 关系扩展为关系数据库 的主键( p r i m a r y k e y ) 和外键( f o r e i g n k e y ) ,而s q l i n d e x 则是i n d e x 的子类, s q l i n d e x 通过i n d e x f e a t u r e 与s q l i n d e x c o l u m n 关联。 3 2 2 3 转换元模型 转换是指数据从操作数据源中提取、转换、加载到数据仓库或数据集市相关 的活动,而转换包则主要用来描述与转换相关的元数据。转换不仅支持将数据源 和数据目标通过转换相关联,还能够支持将一种特定的数据源通过某种转换与数 据目标相关联。 转换包的主要功能包括: 1 ) 转换与数据跟踪:能够存储数据源、目标、操作以及其之间的关联信息。 2 ) 转换分组与执行:能够将转换分组划分成逻辑单元并定义其执行顺序。 3 ) 特殊转换:定义数据仓库中广泛使用的“白盒 转换。 2 0 元数据管理标准化模型c w m tw a n $ f o r m a t i o i l s t e p it a s k :t t a ns f o r m a l i o n t a t a c 稿v j 蓍y :n a m e s 争a c e ,口艚c e d e n c e :c o n s f f a i n t ,p 糟c e de n g s t e p :d e p e n d e n c y il u c c e e d l n g s t e p :d e p e n d e n c y i c l i n t t j l e n t d e p e n d e n c y 一- i ( m ni t t a i n e d el e me n t 。 p 幛c 毫d e n c e c o n 甜隋辆t ,o 。l l i u p p l l l t l ,柚p pu e f o ep e n d e n c y 曼堡! 竺! ! ! ! ! ! ! ,p t e c e d l n g s 协p :m o d e l e l e m n t ,鲫c c e d i n g s 钯p :m o d e i e l e m 图3 7 转换过程包 船o n m a j n t 图3 - 7 2 6 1 中,转换被分成逻辑上独立的执行单元。转换作业t r a n s f o r m a t i o n a c t i v i t y 由多个转换步骤t r a n s f o r m a t i o n s t e p 组成,t r a n s f o r m a t i o n s t e p 是依赖于 t r a n s f o r m a t i o n a c t i v i t y 存在的。转换步骤t r a n s f o r m a t i o n s t e p 通过关联 s t e p p r e c e d e n c e 规定了转换执行的先后顺序。每个转换步骤对应于一个转换任务 t r a n s f o r m a t i o n t a s k ,而每个转换可被不同的转换活动调用。转换任务表示一个逻 辑工作单元,而每一个转换任务又由多个转换t r a n s f o r m a t i o n 组成,这组转换必 须同时执行和完

温馨提示

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

评论

0/150

提交评论