1、元数据管理白皮书1. 什么是元数据 32. 为什么需要一个元数据知识库 32.1. 对 IT 用户的价值 32.2. 对商业用户的价值 43. Teradata Meta Data Services 2.1.43.1. 环境 43.2. MDS 管理元数据知识库的工具 43.3. 应用信息模型(Application Information Models) .43.4. 安全 43.5. Teradata 数据库信息模型(DIM) .43.6. Teradata 数据字典扫描程序 .43.7. DIM 自动更新 .43.8. 审计跟踪 53.9. 业务元数据 53.10. ETL 元数据 .5
2、3.11. MetaSurf.54. 定制和扩展元数据知识库 54.1. MetaDesigner.54.2. C+编程接口 54.3. COM 编程接口 .54.4. XML 接口 55. 元数据互换 65.1. 元数据集成技术 65.2. 元数据标准 66. 本地化和国际化 61. 什么是元数据所谓元数据,是指关于数据的数据,可以用来描述数据的类型、来源、定义、存储位置、商业规则,使得业务人员可以正确地使用数据仓库,技术人员可以使用元数据信息开发数据仓库应用、维护数据仓库的运行。基于上面的定义我们可以知道元数据的使用者可以分为:技术用户、商业用户两类,因此元数据也可以相应的分为业务元数据(
3、Business Metadata) 、技术元数据(Technical Metadata)两类,下面分别针对这两类信息说明: 技术元数据(Technical Metadata)技术元数据主要被企业 IT 人员(系统分析员、数据仓库管理员、数据库管理员)使用。技术元数据为企业数据仓库提供了详细的蓝图,企业 IT人员可以借助这一蓝图更方便的扩展和维护数据仓库。技术元数据可以跟踪数据的流动,确定元数据来自哪里?什麽时间被加载?目标数据库是什麽?数据从源到目标移动过程中应用于该数据的技术和业务规则是什麽?通过跟踪、分析源数据加载到目标系统的过程,企业 IT 人员可以使用技术元数据检查数据仓库信息的准确
4、性。此外利用已经定义的技术元数据信息企业 IT 人员可以分析任何涉及改变对数据仓库的影响,这样可以更快速的实施改变和后续项目。 商业元数据(Business Metadata)商业元数据主要被企业业务人员使用,以他们可以理解的、简单易懂的语言描述数据仓库的对象,使他们能够不借助企业 IT 人员就可以找到自己需要的信息。2. 为什么需要一个元数据知识库很多人已经有了关于数据仓库的元数据,这些元数据可能是文档、电子表格、书面说明或是头脑中的想法。存储、定位和维护这些信息可能是很麻烦的。一个数据仓库的元数据知识库提供了一个中央存储位置,是用户可以在线访问信息。知识库中存储了数据仓库整个处理过程中涉及
5、到的信息,这些信息包括:数据仓库的加载,数据仓库中数据的结构,数据仓库中数据的的使用。2.1.对 IT 用户的价值数据仓库的元数据知识库允许 IT 人员更有效的管理数据仓库。IT 人员可以使用元数据完成下列工作: 消除数据冗余 在对数据仓库做改变之前确定改变的影响 确定数据使用情况,了解花费时间修改、花费空间存储的数据是否有人使用 理解数据仓库的结构和关系2.2.对商业用户的价值数据仓库的元数据知识库对商业用户也有很高价值。例如:商业用户可以 搜索知识库查找特定的信息在数据仓库中的位置 理解数据仓库中数据的含义 取得关于数据的进一步信息,如:数据如何被刷新?什么人拥有数据?数据何时被修改?数据
6、来自哪里? 理解数据的商业规则,如:数据的最大、最小值是什么?编码的含义? 理解数据所属的业务主题是什么3. Teradata Meta Data Services 2.13.1.环境MDS 将元数据存储在 Teradata 数据库的一组表中。MDS 软件运行在Windows(Win98/ME/NT/2000)或 MP-RAS Unix 系统,借助 Teradata ODBC Driver 访问 Teradata 数据库。MDS2.1 支持 Teradata 数据库 V2R4.0.X 和 V2R4.1.X。3.2.MDS 管理元数据知识库的工具MDS2.1 提供了两个工具管理存储元数据德 Te
7、radata 表:metacreate、 metamigrate。 这些工具支持 Windows 和 Unix MP-RAS 平台。Metacreate 工具在一个已定义的数据库中初始化元数据知识库,建立 MDS需要的表。在初始的元数据知识库被建立以前不能进行任何 MDS 操作。MDS 2.1 提供了一个工具 metamigrate 转化低版本的 MDS 知识库到 MDS2.1格式。这个工具自动修改所有已存在的数据(模式、对象等)以符合 MDS 2.1格式。3.3.应用 信息模型(AIM)应用信息模型(AIM)定义了一组元数据在 MDS 知识库中如何存储。一个事例模型表示如下: HasDatb
8、aseViews ClasDescriptionRelationshipDescriptionsClasDescriptionsTablesHasAIM 有三类对象构成: 类描述( Class Descriptions) 定义了元数据的类型。在上面的例子里数据库、视图和表都是类描述。在知识库中类描述的实体被称为对象。 属性描述( Property Descriptions) 和类描述相关的数据域如:类型、名称。 关系描述( Relationship Descriptions) 描述两个类之间的关系。在上面的例子里关系描述被定义为“DatabaseHasTables” ,关系在数据库对象和标对象
9、之间建立了联系。3.4.安全MDS 2.1 提供了丰富的安全管理功能,可以控制不同的用户、组读、写、增加元数据对象。这些安全设定可以由 MetaManager 或 MDS 编程接口实现。3.5.Teradata 数据库信息模型(DIM)Teradata 数据库信息模型(DIM)是特定的元数据信息模型,MDS 用它来存储 Teradata 数据库结构和内容的信息。MDS 2.1 中 Teradata 物理元数据可以包含触发器和存储过程信息。MDS 2.1 对物理元数据提供了扩展,使得它可以存储与 Teradata 物理信息相关的商业信息。DatBaseDatbaseSystemSystemHas
10、DtabseDatbase Information Model= New in MDS 2.1DatbaseHasTblesCheckDatbaseHasViews DatbaseOwnsDatbaseNodeSystemHasNodesTrigerStoredProcedureDatbaseHasStoredProceduresSParmetrHsrtrsTableHasTrigersColumnHasTrigersSPRefrncesTablesSPRefrncesViewsSPRefrncesStoredProceduresDatbaseHasTrigersBusinesEntiyBus
11、EntiyHasAtributesBusinesAtribute BusEntiyTableBusAtrColumnSubjectAreaBusAtrViewColumnBusEntiyViewBusAtrRulesBusinesRuleBusRleValuesSubjectAreaEntiesValidValuesColumnTableTableHasColumnsIndexRefrnceIndexColumnRefrnceColumnTableHasIndicesTableHasRefConstraintsIndexContaisColumnsConstraintRefrncesColun
12、sTableHasCheckonstraintsViewColumnieHasolunsViewViewHasTbleColumnsDatbaseHasSubjectAreasDatbaseHasEntiesDatbaseHasRules3.6.Teradata 数据字典扫描程序MDS 提供了一个 Teradata 数据字典扫描程序 Metaload 以便加载 Teradata系统物理元数据到知识库中。多个 Teradata 系统可以加载到一个单一的知识库中,知识库不必与提供元数据的 Teradata 在一个系统。Metaload 使用Teradata ODBC Driver 访问 Terad
13、ata 系统。Metaload 分析数据字典的数据定义语句,建立不同对象的关系。MDS 分析视图定义语句存储视图引用的表列信息;MDS 分析存储过程的定义语句存储存储过程对视图、表、其它存储过程的引用;MDS 分析触发器的定义语句存储触发器与表列的关系。3.7.DIM 自动更新由于 Teradata 数据库物理元数据市 MDS 知识库的重要组成部分,因此保持最新信息动态反映 Teradata 系统的改变是至关重要的。MDS 使用自动的 DIM更新特性保持 MDS 知识库与 Teradata 系统的一致性。假如多个 Teradata 系统被存储在单一的知识库中,每一个 Teradata 系统均可
14、被更新。MDS 提供了一个数据库服务器端的进程(Relay Services Gateway RSG) ,借助 RSG 数据库引擎转发每一个数据定义语句到 MDS,MDS 分析 SQL 抽取出元数据改变的部分更新知识库。在 MDS 2.1 中 RSG 运行在 Windows 和 MP-RAS 两个平台( Windows 平台要求 Teradata 为 V2R4) ,RSG 通过 TCP/IP 与 MDS 组件 DDL Gateway(运行在Windows 和 MP-RAS 两个平台)通讯,DDL Gateway 负责管理 RSG 和 Teradata 的处理信息,并调用 Integrity S
15、erver 修改 MDS 知识库。3.8.审计跟踪MDS 提供了维护 Teradata 数据定义语句改变的审计跟踪功能。审计日志存储在 MDS 知识库中,可以通过 MetaManager 浏览。3.9.商业元数据MDS 2.1 提供了 Excel Import Utility 从 Excel 电子表格中加载商业元数据到商业信息类。此外,来自数据模型工具(如:ERWin)的商业信息也可以借助 Meta Integration Model Bridge (MIMB,Meta Integration Technology 公司产品)加入知识库。3.10. ETL 元数据除了物理和商业信息外,MDS
16、还可以存储和维护 ETL 工具和 ETL 工具对物理元数据操作的信息,例如:表最后被加载的时间?什么工具用于加载此表?客户加载模型(Client Load Model)被用来存储此类信息,这个模型将维护从加载脚本抽取出的元数据与 Teradata 数据库信息模型中表、列等对象的关系,如:此脚本对那个表操作。MDS 工具 Metaclient 将扫描 Mulitload、Fastload 和 Tpump 脚本和输出文件,抽取信息加入知识库,同时建立脚本与 Teradata 数据库信息模型中表、列等对象的关系。这个工具运行在 Windows 和 MP-RAS Unix 上。Client Load
17、ModelScriptVersionIDScriptQualiferOuttFilNmLoadUtiltySesCharSetcriptLvlDLUsedProesorTimeHightReturnCodeCompltioStausStartTietrtDatEndTimeDatSourceSourceTypeINMODRoutineStartecrdagEndRorRneecrFrmatIndiatorBitsSourceFildDatTypetLngthRecayoutNameTargetTargetTypertSstmNaeTargetDatbsemrtLvelDLUsedTargetl
18、MNbrRcordsReadresSntToDNbrRcordseltdrerInrteNbrRcordsSkipdrerUateNbrErosTbl1rrl2ColumnScriptHasSources ScriptHasTrgetsSourceHasSourceFilds TableViewViewColumnSourceFildUpdatesDIMColumnsSourceUpdatesDIMViewsScriptLoadsDIMViewsSourceUpdatesDIMTablesSourceFildUpdatesDIMViewColumnsScriptLoadsDIMTables D
19、atbaseInformtion Mdel3.11. MetaSurfMetaSurf提供了一个标准的、易于使用的 Web 界面,IT 或商业用户可以通过此界面搜索、向下挖掘元数据知识库中的信息。MDS 2.1 MetaSurf有下列功能: 搜索结果可分多页显示 提供了使用布尔逻辑进行高级搜索的能力 提供了关键字检索的能力 在线编辑描述信息MetaSurf使用 Active Server Pages 和 VB Scripting 建立,这些脚本借助 MDS COM 接口访问 MDS 知识库。4. 定制和扩展元数据知识库MDS 不仅提供了元数据模型管理 Teradata 物理和商业信息,而且还提
20、供了一个框架使得最终用户可以定制和扩展元数据信息。4.1.MetaDesignerMetaDesigner 是一个 Windows 应用程序,它提供了易于使用的图形化界面。用户可以通过 MetaDesigner 在 MDS 知识库中定义新的类、关系和属性。4.2.C+编程接口MDS 提供的面向对象的编程接口,允许创建模型,定义类、类之间的关系,同时他也提供了编程接口增加、修改和删除元数据。C+编程接口在 Windows和 Unix MP-RAS 两个平台有效。4.3.COM 编程接口除了 C+编程接口,MDS 还提供了 COM 编程接口,MDS COM 是一个脚本化的OLE 自动化对象编程接口
21、,接口允许其他应用程序或编程工具访问 MDS 知识库中的元数据。借助 OLE 自动化接口,一些应用程序,如:Office 可以使用 VB访问和浏览 MDS 知识库。COM 编程接口只在 Windows 平台有效。4.4.XML 接口C+和 COM 均为编程接口,为了易于使用,消除编程要求,MDS 提供了 XML 工具MetaXML。 MetaXML 将读取 XML 格式的 ASCII 文件,分析内容,调用 MDS C+接口执行相关操作。 MetaXML 除了可以加载元数据进入 MDS 知识库外还可以建立新的类、关系、属性。 MetaXML 只在 Windows 平台有效。5. 元数据互换5.1
22、.Meta Integration TechnologyMeta Integration Technology 提供了在不同工具之间移动元数据的功能,它可以实现 MDS 和其它工具的元数据交换。5.2.元数据标准目前有两个标准化组织制定元数据的标准(the Object Management Group OMG and the Metadata Coalition MDC) ,NCR 是 OMG 的成员。6. 本地化和国际化MDS 是国际化的软件,它提供了 Kanji SHIFT-JIS、Kanji EUC 和 8 位字符集的支持。资源文件和对话框支持日文显示,MDS 可以被本地化为其它语言。