4. 元数据管理的标准化 没有规矩不成方圆。元数据管理之所以困难,一个很重要的原因就是缺乏统一的标准。在这种情况下,各公司的元数据管理解决方案各不相同。近几年,随着元数据联盟MDC (Meta Data Coalition)的开放信息模型OIM(Open Information Model)和OMG组织的公共仓库模...
显示全部4. 元数据管理的标准化
没有规矩不成方圆。元数据管理之所以困难,一个很重要的原因就是缺乏统一的标准。在这种情况下,各公司的元数据管理解决方案各不相同。近几年,随着元数据联盟MDC (Meta Data Coalition)的开放信息模型OIM(Open Information Model)和OMG组织的公共仓库模型CWM(Common Warehouse Model)标准的逐渐完善,以及MDC和OMG组织的合并,为数据仓库厂商提供了统一的标准,从而为元数据管理铺平了道路。
从元数据的发展历史不难看出,元数据管理主要有两种方法:
(1) 对于相对简单的环境,按照通用的元数据管理标准建立一个集中式的元数据知识库。
(2) 对于比较复杂的环境,分别建立各部分的元数据管理系统,形成分布式元数据知识库,然后,通过建立标准的元数据交换格式,实现元数据的集成管理。
下面我们分别介绍数据仓库领域中两个最主要的元数据标准:MDC的OIM标准和OMG的CWM标准。
4.1 MDC的OIM存储模型
MDC成立于1995年,是一个致力于建立与厂商无关的、不依赖于具体技术的企业元数据管理标准的非赢利技术联盟,该联盟有150多个会员,其中包括微软和IBM等著名软件厂商。1999年7月MDC接受了微软的建议,将OIM作为元数据标准。
OIM的目的是通过公共的元数据信息来支持不同工具和系统之间数据的共享和重用。它涉及了信息系统(从设计到发布)的各个阶段,通过对元数据类型的标准描述来达到工具和知识库之间的数据共享。OIM所声明的元数据类型都采用统一建模语言UML(Universal Modeling Language)进行描述,并被组织成易于使用、易于扩展的多个主题范围(Subject Areas),这些主题范围包括:
?分析与设计(Analysis and Design):主要用于软件分析、设计和建模。该主题范围又进一步划分为:UML包(Package)、UML扩展包、通用元素(Generic Elements)包、公共数据类型(Common Data Types)包和实体关系建模(Entity Relationship Modeling)包等。
? 对象与组件(Object and Component):涉及面向对象开发技术的方方面面。该主题范围只包含组件描述建模(Component Description Modeling)包。
? 数据库与数据仓库(Database and Warehousing):为数据库模式管理、复用和建立数据仓库提供元数据概念支持。该主题范围进一步划分为:关系数据库模式(Relational Database Schema)包、OLAP模式(OLAP Schema)包、数据转换(Data Transformations)包、面向记录的数据库模式(Record-Oriented Database Schema)包、XML模式(XML Schema)包和报表定义(Report Definitions)包等。
?业务工程(Business Engineering):为企业运作提供一个蓝图。该主题范围进一步划分为:业务目标(Business Goal)包、组织元素(Organizational Elements)包、业务规则(Business Rules)包、商业流程(Business Processes)包等。
? 知识管理(Knowledge Management):涉及企业的信息结构。该主题范围进一步划分为:知识描述(Knowledge Descriptions)包和语义定义(Semantic Definitions)包。
上述主题范围中的包都是采用UML定义的,可以说UML语言是整个OIM标准的基础。虽然OIM标准并不是专门针对数据仓库的,但数据仓库是它的主要应用领域之一。目前市场上基于该标准的元数据管理工具已经比较成熟,例如微软的Repositry和CA的Repositry均采用了OIM标准。
4.2 OMG组织的CWM模型
OMG是一个拥有500多会员的国际标准化组织,著名的CORBA标准即出自该组织。公共仓库元模型(Common Warehouse Metamodel)的主要目的是在异构环境下,帮助不同的数据仓库工具、平台和元数据知识库进行元数据交换。2001年3月,OMG颁布了CWM 1.0标准。CWM模型既包括元数据存储,也包括元数据交换,它是基于以下三个工业标准制定的:
(1) UML:它对CWM模型进行建模。
(2) MOF(元对象设施):它是OMG元模型和元数据的存储标准,提供在异构环境下对元数据知识库的访问接口。
(3) XMI(XML元数据交换):它可以使元数据以XML文件流的方式进行交换。
OMG元数据知识库体系结构如图3所示。
CWM为数据仓库和商业智能(BI)工具之间共享元数据,制定了一整套关于语法和语义的规范。它主要包含以下四个方面的规范:
(1) CWM元模型(Metamodel):描述数据仓库系统的模型;
(2) CWM XML:CWM元模型的XML表示;
(3) CWM DTD:DW/BI共享元数据的交换格式
(4) CWM IDL:DW/BI共享元数据的应用程序访问接口(API)
下面重点讨论CWM元模型的组成,它与OIM规范一样,也是由很多包组成的。组成CWM元模型的包结构如图4所示。
(1) 元模型(MetaModel)包:构造和描述其它CWM包中的元模型类的基础。它是UML的一个子集,由以下四个子包组成:
a) 核心(Core)包:它的类和关联是该模型的核心,其它所有的包都以它为基础。
b) 行为(Behavioral)包:包括描述CWM对象行为的类与关联,并且它为描述所定义的行为提供了基础。
c) 关系(Relationships)包:包括描述CWM对象之间关系的类与关联。
d) 实例(Instance)包:包括表示CWM分类器(Classfier)的类与关联。
(2) 基础包(Foundation):它包括表示CWM概念和结构的模型元素,这些模型元素又可被其他CWM包所共享,它由以下六个子包组成:
a) 业务信息(Business Information)包:包括表示模型元素业务信息的类与关联。
b) 数据类型(Data Types)包:包括表示建模者可以用来创建所需数据类型的结构的类与关联。
c) 表达式(Expressions)包:包括表示表达式树的类与关联。
d) 关键字和索引(Keys and Indexes)包:包括表示键和索引的类与关联。
e) 软件发布(Software Deployment)包:包括软件如何在数据仓库中发布的类与关联。
f) 类型映射(Type Mapping)包:包括表示不同系统之间数据类型映射的类与关联。
(3) 资源包(Resource):用于描述数据资源的包,它包括以下四个子包:
a) 关系(Relational)包:包括表示关系型数据资源的元数据的类与关联。
b) 记录(Record)包:包括表示记录型数据资源的元数据的类与关联。
c) 多维(Multidimensional)包:包括表示多维数据资源的元数据的类与关联。
d) XML包:包括表示XML数据资源的元数据的类与关联。
(4) 分析(Analysis)包:它由以下五个子包组成:
a) 转换(Transformation)包:包括表示数据抽取和转换工具的元数据的类与关联。
b) OLAP包:包括表示OLAP工具的元数据的类与关联。
c) 数据挖掘(Data Mining)包:包括表示数据挖掘工具的元数据的类与关联。
d) 信息可视化(Information Visualization)包:包括表示信息可视化工具的元数据的类与关联。
e) 业务术语(Business Nomenclature)包:包括表示分类业务的元数据的类与关联。
(5) 管理(Management)包:用于描述数据仓库管理的包,它包括以下两个子包:
a) 仓库过程(Warehouse Process)包:包括表示仓库过程的元数据的类与关联。
b) 仓库操作(Warehouse Operation)包:包括表示仓库操作结果的元数据的类与关联。
收起