数据仓库与元数据管理标准化
2009-07-08 作者:陈 兵 来源:陈 兵的BLOG
1. 前言
在事务处理系统中的数据,主要用于记录和查询业务情况。随着数据仓库(DW)技术的不断成熟,企业的数据逐渐变成了决策的主要依据。数据仓库中的数据是从许多业务处理系统中抽取、转换而来,对于这样一个复杂的企业数据环境,如何以安全、高效的方式来对它们进行管理和访问就变得尤为重要。解决这一问题的关键是对元数据进行科学有效的管理。
2. 元数据
按照传统的定义,元数据(Metadata)是关于数据的数据。在数据仓库系统中,元数据可以帮助数据仓库管理员和数据仓库的开发人员非常方便地找到他们所关心的数据;元数据是描述数据仓库内数据的结构和建立方法的数据,可将其按用途的不同分为两类:技术元数据(Technical Metadata)和业务元数据(Business Metadata)。
技术元数据是存储关于数据仓库系统技术细节的数据,是用于开发和管理数据仓库使用的数据,它主要包括以下信息:
? ? ? ?
?
?
数据仓库结构的描述,包括仓库模式、视图、维、层次结构和导出数据的定义,以及数据集市的位置和内容;业务系统、数据仓库和数据集市的体系结构和模式
汇总用的算法,包括度量和维定义算法,数据粒度、主题领域、聚集、汇总、预定义的查询与报告; 由操作环境到数据仓库环境的映射,包括源数据和它们的内容、数据分割、数据提取、清理、转换规则和数据刷新规则、安全(用户授权和存取控制)。
业务元数据从业务角度描述了数据仓库中的数据,它提供了介于使用者和实际系统之间的语义层,使得不懂计算机技术的业务人员也能够“读懂”数据仓库中的数据。业务元数据主要包括以下信息:使用者的业务术语所表达的数据模型、对象名和属性名;访问数据的原则和数据的来源;系统所提供的分析方法以及公式和报表的信息;具体包括以下信息:
企业概念模型:这是业务元数据所应提供的重要的信息,它表示企业数据模型的高层信息、整个企业的业务概念和相互关系。以这个企业模型为基础,不懂数据库技术和SQL语句的业务人员对数据仓库中的数据也能做到心中有数。
多维数据模型:这是企业概念模型的重要组成部分,它告诉业务分析人员在数据集市当中有哪些维、维的类别、数据立方体以及数据集市中的聚合规则。这里的数据立方体表示某主题领域业务事实表和维表的多维组织形式。
业务概念模型和物理数据之间的依赖:以上提到的业务元数据只是表示出了数据的业务视图,这些业务视图与实际的数据仓库或数据库、多维数据库中的表、字段、维、层次等之间的对应关系也应该在元数据知识库中有所体现。
3. 元数据的作用
(1) 元数据是进行数据集成所必需的
数据仓库最大的特点就是它的集成性。这一特点不仅体现在它所包含的数据上,还体现在实施数据仓库项目的过程当中。一方面,从各个数据源中抽取的数据要按照一定的模式存入数据仓库中,这些数据源与数据仓库中数据的对
应关系及转换规则都要存储在元数据知识库中;另一方面,在数据仓库项目实施过程中,直接建立数据仓库往往费时、费力,因此在实践当中,人们可能会按照统一的数据模型,首先建设数据集市,然后在各个数据集市的基础上再建设数据仓库。不过,当数据集市数量增多时很容易形成“蜘蛛网”现象,而元数据管理是解决“蜘蛛网”的关键。如果在建立数据集市的过程中,注意了元数据管理,在集成到数据仓库中时就会比较顺利;相反,如果在建设数据集市的过程中忽视了元数据管理,那么最后的集成过程就会很困难,甚至不可能实现。
(2) 元数据定义的语义层可以帮助最终用户理解数据仓库中的数据
最终用户不可能象数据仓库系统管理员或开发人员那样熟悉数据库技术,因此迫切需要有一个“翻译”,能够使他们清晰地理解数据仓库中数据的含意。元数据可以实现业务模型与数据模型之间的映射,因而可以把数据以用户需要的方式“翻译”出来,从而帮助最终用户理解和使用数据。
(3) 元数据是保证数据质量的关键
数据仓库或数据集市建立好以后,使用者在使用的时候,常常会产生对数据的怀疑。这些怀疑往往是由于底层的数据对于用户来说是不“透明”的,使用者很自然地对结果产生怀疑。而借助元数据管理系统,最终的使用者对各个数据的来龙去脉以及数据抽取和转换的规则都会很方便地得到,这样他们自然会对数据具有信心;当然也可便捷地发现数据所存在的质量问题。甚至国外有学者还在元数据模型的基础上引入质量维[6],从更高的角度上来解决这一问题。
(4) 元数据可以支持需求变化
随着信息技术的发展和企业职能的变化,企业的需求也在不断地改变。如何构造一个随着需求改变而平滑变化的软件系统,是软件工程领域中的一个重要问题。传统的信息系统往往是通过文档来适应需求变化,但是仅仅依靠文档还是远远不够的。成功的元数据管理系统可以把整个业务的工作流、数据流和信息流有效地管理起来,使得系统不依赖特定的开发人员,从而提高系统的可扩展性。
4. 元数据的标准化
关于元数据的一般标准,从内容上,大致可分为两类。一是元数据建模,是对将来元数据的组织进行规范定义,使得在元数据建模的标准制定之后产生的元数据都以一致的方式组织,从而保证元数据管理的一致性和简单性。二是元数据交互,是对已有的元数据组织方式以及相互间交互格式加以规范定义,从而实现不同系统元数据的交互。目前,主要有以下组织定义了元数据相关的规范。
(1) 对象管理组织OMG
OMG在1995年采用了MOF(Meta Object Facility),并不断完善之。1997年采用了UML,2000年,OMG又采用了CWM。这三个标准:UML、MOF和CWM形成了OMG建模和元数据管理、交换结构的基础,推动了元数据标准化的快速发展。
(2) 元数据联合会MDC
MDC建于1995年,目的是提供标准化的元数据交互。MDC于1996年开发了MDIS(Meta Data Interchange
Specification)并完成了MDC-OIM的技术评审,MDC-OIM基于微软的开放信息模型OIM,是一个独立于技术的、以厂商为核心的信息模型。OIM是微软的元数据管理产品Microsoft Repository的一部分。由微软和其它20多家公
司共同开发的,作为微软开放过程的一部分,经过了300多个公司的评审。
为了推动元数据标准化的发展,MDC和OMG在元数据标准的制定上协同工作。1999年4月,MDC成为OMG的成员,而OMG也同时成为MDC的成员。MDC中使用了OMG的UML,而MDC-OIM中的数据仓库部分被用来作为OMG的公共仓库元数据交互(CWMI:Common Warehouse Metadata Interchange)的设计参考。在两个组织的技术力量的合作努力下,元数据标准将逐步一致化。公共仓库元模型(CWM)是为数据仓库和业务分析环境之间方便地交换元数据而制定的一个标准,已经成为模型驱动体系结构(MDA)新策略方向中的核心组成部分。下面我们讲重点讲述CWMI机器在数据仓库中的应用。
5. CWM提出的背景
?
从数据仓库开发者的角度:单一工具很少能完全满足用户不断变化的需求,但同时又很难对各种产品进行集成;
? 从数据仓库用户的角度:面对的信息量太大,无法轻易找到自己真正需要的,而且把这些信息完整正确地表
示出来也是个挑战;
? 从数据仓库供应商的角度:目前信息的共享还没有标准格式,元数据集成的代价太大;
现在有很多数据仓库产品,它们对元数据都有自己的定义和格式,因此创建、管理和共享元数据很耗时而且容易出错。要解决上面这些问题,必须用标准的语言描述数据仓库元数据的结构和语义,并提供标准的元数据交换机制。CWM就是满足这些条件的一个规范。OMG在2000年发布了CWM规范,旨在推动数据仓库、智能商务和知识管理方面元数据的共享和交换。和OMG合作提出CWM规范的公司有:IBM,Unisys,NCR,Hyperion Solutions,Oracle,UBSAG,Genesis Development,Dimension EDI。还有一些公司明确表示支持CWM,包括:Deere & Company,Sun,HP,Data Access Technologies,InLine Software,Aonix,Hitachi, Ltd。
6. OMG组织的CWM模型
CWM完整地描述了数据仓库元数据交换的语法和语义以及用于异质平台之间的元数据交换机制,OMG元数据知识库体系结构如图1所示。