数据仓库系统中元数据的应用班级:财务管理08-7学号:080505060710姓名:刘佳文方向:数据仓库数据仓库系统中元数据的应用随着信息爆炸时代的到来,企业积累了大量的内部和外部数据,然而如何从这些数据中挖掘出有用的信息进行预测分析已越来越成为技术人员和决策者关心的问题。为了更好的管理和决策,许多企业选择了数据仓库(DataWarehouse)作为决策支持系统(DecisionSupportSystemDSS)的核心,尤其近年来兴起的商业智能(BI),更是糅合了数据仓库、DSS、数据挖掘和人工智能(AI)等多种技术,实现了商业管理的集成化和智能化、网络化。数据仓库是支持管理决策过程的、面向主题的、集成的、不可更新的且随时间不断变化的数据集合。利用数据仓库,对源数据经过提取、转换、加载形成统一的数据格式,再利用数据挖掘和OLAP分析工具为决策者提供所需的信息。然而作为数据仓库重要组成部分的元数据,却没有得到应有的重视。元数据是关于数据的数据,在数据仓库中,元数据扮演着重要的角色。如何构建元数据库及实现高效的元数据管理,在一个成功的数据仓库系统中必不可少。正是由于有了元数据,DSS分析员才能有效地利用数据仓库。元数据的内容元数据作为成功的数据仓库的重要组成部分,可以帮助数据仓库项目小组明确而全面地理解潜在数据源的物理布局以及所有数据元的业务定义,帮助数据仓库用户有效地使用仓库中的信息。数据仓库主要是为DSS分析者使用的,而这些人多为商业人员,其次才为技术人员,他们要进行分析时,必须要知道数据仓库中有哪些数据,数据存放在哪里,而元数据则为他们提供了所需的内容。数据仓库中的元数据根据其使用对象和应用范围不同,可分为不同的类型,如商业元数据、数据库元数据和应用元数据3种。在构建元数据库时将其分为技术元数据(TechnicalMetadata)和商业元数据(BusinessMetadata)。技术元数据是关于数据仓库系统技术细节的元数据;商业元数据是技术元数据的一个辅助,它可以帮助用户在数据仓库中寻找所需商业信息,也有助于用户正确方便地使用数据仓库系统,它主要定义了介于使用者和仓库系统之间的语义关系。商业元数据将商业用户和技术元数据有机的联系起来。元数据以概念、主题、集团、或层次等形式建立了数据仓库中的信息结构,如图1所示。从数据仓库管理人员来看,元数据是在数据仓库中所有内容和所有处理过程的一个全面的仓库和文件;从最终用户的观点来看,元数据是数据仓库中所有信息的路标。只要是支持和管理数据仓库操作的任何所需的信息,元数据都将包括。从图1中可以看出,元数据存在于企业中的每一个角落,包含有如下内容:(1)数据仓库数据源的信息,包括现有的操作型数据、历史部数据以及外部据。(2)数据模型信息,如仓库中的表名、关键字、属性、仓库模式、视图、维等。(3)操作型环境到数据仓库环境的映射关系,包括源数据及其内容,ETL规则和安全性等。(4)操作元数据,如抽取历史、访问模式、仓库使用统计和审计跟踪等。(5)汇总用的算法,包括度量和维定义算法,数据粒度、聚集、汇总、预定义的查询和报告。(6)商业元数据,包括商业术语和定义、数据所有者信息和收费策略。元数据是抽象的数据,但元数据的重要性也正体现在其所包含的信息中。例如,元数据用作目录,可以帮助DSS分析者对数据仓库的内容定位;当数据由操作环境到数据仓库环境映射时,作为数据映射指南;对于用在当前细节数据与低度综合的数据之间及低度综合的数据和高度综合的数据之间的汇总算法。如果没有元数据,数据仓库中的数据是完全孤立着的,元数据正如一座桥梁将它们联系起来。元数据的管理和维护在数据仓库中元数据并不是一成不变的,例如,某一个数据源的表结构发生变化时,为了保持仓库中数据一致性和连贯性,必须相应的修改元数据库。一个设计良好的数据仓库系统,必须能跟踪这些变化,并能实现元数据收集和维护的自动化。元数据的管理和维护对保持元数据的有效性和一致性是非常重要的,它涉及到如下几个方面:元数据的所有权(谁有权构造、刷新和更新元数据);元数据的共享;记录元数据的变化历史;如何通过网络有效地交换元数据;元数据的存储;如何通过不同的工具访问元数据;如何使分布式元数据更能适应企业的商业环境等等。为了充分使用和共享存在于不同存储工具中的分布式元数据,必须对这些元数据进行集成和管理,从而为用户提供一致的和可理解的元数据。各个不同的元数据库之间要提供统一的用户接口,以便元数据的共享和交换。元数据的标准化随着数据仓库的广泛应用,元数据的重要性越来越被人们所认同,然而,一直没有一个成熟的元数据模型。虽然各个数据库厂商都提出了自己的基于元数据的数据库工具,但是这些不同的工具总是依赖于不同的开发商。为了统一标准,由许多开发商和终端用户组成立了元数据联盟MDC(MetaDataCoalition),MDC提出的OIM(OpenInformationModel)成为大多数厂商共同使用的元数据的核心模型。元数据模型通过提供统一规范的数据模型来支持不同厂商软件工具的互操作性,它具有广泛的适应性和很好的可扩展性、可重用性。Microsoft公司数据仓库系统体系结构MicrosoftDataWarehousingFramework框架的核心之一就是实现元数据的OpenInformationModel和元数据管理工具MicrosoftRepository。MicrosoftRepository主要包括两个部分:第一部分包括一组MicrosoftActiveX接口,利用这些接口,可以定义、储存和访问元数据;第二部分包括了一个元数据存储引擎,它提供了一套元数据的存储机制。Microsoft及其它厂商可使用基于COM或CORBA的结构按照Microsoft的XMLEncoding文件定义格式来引入和导出仓库中的元数据。元数据库的实现在实现的基于电子商务的数据仓库系统中,元数据管理模块的框架图如图2所示。它是基于前面所提到的开放数据模型OpenInformationModel元数据管理工具MicrosoftRepository和MicrosoftMetaDataServices,并在MicrosoftSQLServer2000的平台上实现的。使用SQLServer2000MetaDataServices作为后台,使用Delphi来实现前台的查询报表并用XML文件格式作为数据通道。MetaDataServices是微软提供的集成式元数据管理工具,使用它,可以较容易的实现元数据的构造和管理。也可以使用MetaDataServices来实现基于元数据的应用及构建和扩展作为共享元数据的信息模型。因为XML支持基于OIM的元数据,使用XML格式来导入、导出、发布和共享元数据。例如,使用XML文档在库A和库B之间交换元数据。在开发过程中,考虑到元数据在整个数据仓库系统中的作用,可以从2个方面来实现:一个方面是建立元数据模型。元数据主要用来存储企业的业务模型和数据模型,实现时关键的问题就是如何定义这些模型,使其具有良好的通用性、可扩展性和可重用性。这里使用OIM来构造元数据,同时要保证元数据的收集和更新要自动化,元数据库能够基于事件驱动自动刷新。另一个方面就是元数据管理系统。元数据管理系统主要完成两部分的工作,一是维护元数据的物理存储,尤其是分布式元数据的存储;其二是提供定义、修改和访问元数据的接口和参数,这是非常重要的一部分。可以保证新的应用程序能够容易集成,同时因为整个数据仓库系统的开发过程是螺旋式的,随着时间的推移,会有新的需求产生,必须保证现有平台能够适应这种扩展性,所以必须提供多个扩展接口。图2所示元数据管理系统主要包含以下几个模块:(1)元数据模型。这个模块主要定义了数据仓库的物理模型。(2)元数据的浏览。可以使用MetaDataBrowser来查看元数据库中的元数据,也可以根据不同的需要,使用MetaDataServicesSDK开发自己的浏览工具。(3)数据加载转换规则。定义了向数据仓库中导入数据时所使用的规则和方法用SQL脚本语言来实现。(4)映射关系。建立了业务模型和数据仓库中数据物理模型的映射。(5)OLAP多维分析和数据挖掘。通过这个模块,可进行OLAP分析和决策支持。(6)自然语言查询。用户可以用一种自然语言来实现查询,实现元数据管理的智能化。元数据管理的一个重要方面是元数据与数据访问及分析工具的集成,这一点在元数据管理中非常重要,这样可保证从元数据到查询数据仓库中数据等操作的一体化,目前可以做到如下几个层次的集成(1)简单地同时访问元数据和实际数据;(2)利用从中央元数据库输出的元数据填充查询工具求助文本;(3)提供真正的查询工具,直接、动态地访问元数据;(4)在元数据工具和查询工具间建立完全的互联。结语讨论了数据仓库实现过程中非常重要的一环,元数据的实现与维护。元数据就像一座桥梁,将数据仓库中的数据和用户有机的结合了起来,它不仅在整个数据仓库系统,而且在整个决策支持系统中,都起着非常重要的作用。