本文更新版本已挪至 http://www.zhoujingen.cn/blog/4178.html
--------------------------------
BI的成功运用深度依赖于有效的元数据管理,通常被称作"关于数据的数据"。元数据为所有BI系统的数据充当路标,从而能够对这些数据迚行高效地管理、控制发更和分发。全面的元数据管理保证了BI系统具有高质量的信息,并提供充分的扩展性,能满足新的信息需求和数据源增加。元数据实施也是信息集成中的一部分,最重要的工作是将存储在各种工具中的元数据进行整合。元数据管理是数据管理框架的第九个数据管理功能,本篇将介绍一下这个功能。
DMBOK的元数据管理
什么是元数据?
元数据通帯被称作"关于数据的数据",即用于描述其它数据的数据。对于数据可以通过多种方式进行解释,例如
当我们说元数据是"关于数据的数据"时,我们需要确保所讨论的是数据的背景,而不是有关数据的详细细节或相关数据。元数据描述的是数据的背景、内容、数据结构及其生命周期管理。简而言之,元数据是"数据的背景"。
元数据管理全景包括三个部分内容:1.元数据模型 2.元数据拓扑结构 3.元数据管理方法论
元数据模型
元数据是BI架构中的一个重要组件。在BI环境中,元数据管理最主要是能方便地集成不同数据库、数据模型、OLAP 和ETL工具所包含的各式各样的元数据。元数据包括业务规则、数据源、汇总级别、数据别名、数据转换规则、技术配置、数据访问权限、数据用途等。设计良好的元数据模型能够提高管理、变更控制和分发元数据的效率,实现无缝的、端到端的跟踪回溯能力。
下面举个例子,如果"102250Richard King"是数据,下面则是元数据:
- 员工代码类型为 Number(6)——这告诉我们该数据中首 6 位字符是数字类型,代表员工代码;
- 员工姓名类型为 Varchar(30)——这告诉我们后面的 30 位字符是发长字符类型,表示员工姓名。
这些元数据可以迚一步抽象为元-元数据(Meta-Metadata),表示元数据的背景。
企业数据模型
BI元数据模型
在 BI 层面, IT/技术元数据被分为两类,被称为:BI 技术元数据、数据源元数据
- 顶层 (领域或概念层)
在最顶层,业务的主题域可以直接运用于BI技术元数据的报表和分析,继而被映射到数据源元数据反映的源系统中。
- 中层 (实体层)
业务实体连接到技术实体,如数据表,立方体和报表等,它们从可用的源表或数据表单直接获取信息。
- 底层 (元素层)
最细节的元数据存在于数据元素层。业务元数据中的业务术语映射到技术元数据的对应层,包括数据表、报表及多维立方体的维度/度量。业务用户广泛使用这层元数据。
BI技术元数据
BI 技术元数据包含了 BI 环境中丌同层级的所有元数据,迚一步可以细分为三个类型:
- 信息整合 – ETL(数据抽取,转换和装载)元数据
- 信息存储 – 数据仓库元数据
- 信息发布 – 报表元数据
BIDS元数据管理方法论
一个定义良好的元数据管理产品应该保证信息的高质量,同时能够灵活地扩展BI系统新的数据需求和数据源。BIDS作为元数据管理的解决方案之一,提供了一套方法论Business Intelligence for Decision Support (BIDS™),该方法论由6个模块组成,如下图:
元数据框架定义
元数据管理主要目的在于基于灵活、健壮的架构实现元数据的标准化、集中化。框架定义涉及分析元数据的当前状态、处理过程,并为元数据管理系统提供一个开发蓝图,主要从长远目标、具体目的和高层需求三个方面来描述:
- 长远目标|
元数据管理系统的总体目标如下:- 标准化的元数据和数据处理
- 元数据管理的集中化
- 元数据信息去重
- 适应变化的元数据架构
- 具体目的
元数据管理系统的目的如下:- 制定元数据及数据标准化
- 集中化 BI 系统的管理和应用
- 通过非冗余、非重复的元数据信息提高数据完整性、准确性
- 减少BI系统组件开发、实现、完善及维护的代价
- 建立灵活的元数据架构,使BI架构顺应变化
- 高层需求
元数据创建及管理的高层需求可以通过下表中的内容来加以理解。
序号 |
需求 |
1. |
元数据标准化 |
1.1 |
企业内统一术语及沟通标准: 使用元数据作为用户的唯一根据,确保所有用户使用一致的名词进行沟通、理解,以及解释业务问题。同时可以消除歧义,保证企业内信息一致性,便于知识和经验的共享。 |
1.2 |
无缝系统集成: ETL过程,尤其是集成过程,依赖与多种多样的数据源和BI系统。标准化的元数据使得不同源系统的数据集成到BI系统时,数据元素的含义是统一的;此外,只有通过标准方法共享元数据的工具或应用程序才允许被集成到BI系统。 |
1.3 |
数据质量提升: 定义数据质量校验规则,是ETL元数据的有机组成部分。 |
2 |
元数据集中化 |
2.1 |
提升分析及与BI系统的交互: 分析涵盖一系列技术手段,包括从简单的报表查询,到OLAP分析,甚至复杂的数据挖掘,用户在很大程度上通过元数据层与这些技术进行交互,所有这些分析都需要由元数据驱动。元数据需向用户提供集中化的信息,诸如数据含义、名词术语和业务概念,以及他们和数据之间的关系。因此元数据可以支持准确而直观的查询,降低用户访问、评估、使用相关信息的代价。 |
2.2 |
数据完整性和准确性: 集中化的元数据应该是非冗余、非重复的。此外,数据的回溯性及一致性对高数据质量是很关键的。ETL过程需通过捕获数据继承(如:源、调度信息、时间戳等)来管理元数据回溯性,通过诸如checksum这样的方法来管理一致性。集中化所有这些信息,有助于及时地解决数据整合问题,及更好的管理数据的正确性。 |
3 |
降低BI系统管理代价 |
3.1 |
支持新应用开发: 元数据提供数据含义、结构和来源的相关信息,这有助于需求收集和设计阶段的产出控制,也能保证应用开发过程的可靠性。 |
3.2 |
自动化管理过程: 元数据应当驱动多种DW过程(如ETL、批处理报表),有关过程执行的信息(日志、DW 数据加载状态等)也应存储在资料库中,被管理员轻松访问。这些元数据驱动的过程能够实现BI管理自动化、减少人工干预,从而降低BI系统维护量。 |
3.3 |
周密的安全机制: 为了提供周密的安全机制,应该在元数据层管理ACL和用户信息。需要设计用户角色来控制不同部门、不同地域的用户对不同粒度的数据进行访问的权限,并通过审计跟踪过程对数据访问进行安全检测。 |
4 |
灵活的元数据架构 |
元数据的扩展性与适应性: 为了适应变化,元数据必须是可扩展的。如,频繁变化的语义层,应当独立于应用程序,存储在元数据中,一方面保证系统扩展的灵活性,另一方面,可以很轻易的添加新的元数据对象。而且,通用元数据模型还提供了大量的代码片段的可重用性。 |
此外,还有必要从产品和项目两个层面创建元数据管理团队,包括元数据管理员、协调员、数据分析员及DBA等角色。一旦该团队组建完成,通过跟业务和技术受益者的认识,就确立了高层元数据需求。
规格描述
框架定义阶段完成后,下一步就是描述元数据规格,主要包括以下活动和子活动:
-
元数据现状清单:建立元数据清单,包括:功能性信息需求、数据模型、进程模型、数据字典、业务术语字典、已有元数据环境、系统文档等
-
元数据需求
-
遵循的行业标准
-
元数据模型需求:命名规范、结构、元素及关联关系
-
元数据接口需求:元数据资料库及其内容,桥接器、所有者、系统访问、元数据血缘关系
-
元数据系统需求
-
元数据报表需求
-
安全需求
-
变更管理需求
-
培训需求
-
治理需求
-
详细设计
设计阶段包括确定以下内容:
-
元数据标准
- 开发数据元标准
- 数据元标准的技术性及跨功能性复查
- 建立数据元设计规则及命名规范
-
接入接口机制
- 元数据获取API及桥接器
-
DW元数据模式
- 元数据分类维度
- 使用元数据维度设计元数据模型
- 数据元定义过程
- 配置管理
-
协同(元数据发布)机制
- 文件交换
- 资料库API
- 元数据服务
-
元数据同步机制
- 联合度
- 复制控制和更新传播
- 共享资料库下的复制控制
元数据管理成熟度发展阶段
参考
- The DAMA Guide to the Data Management Body of Knowledge
- 信息集成:元数据管理全景