一、简介
(一)概念
元数据是描述数据的数据,主要用于描述数据属性(property)的信息,包括数据存储位置、历史数据、资源查找、文件记录等功能。
(二)来源
随着信息技术发展,用户需求也在不断发生变化,如何构造一个随着需求改变而平滑变化的软件,是软件工程领域一个重要问答题,传统考文档的方式是云云不够的。平滑变化的核心是数据能够平滑,即当前所谓的元数据。元数据可以整合整个业务的工作流、数据流和信息流,使得系统不依赖特定的开发人员,从而实现系统可扩展性。
(三)历史
传统针对数据的管理,包括几类:
1.数据建模:power designer、Rational rose
2.数据转换:kettle、datastage
3.数据展示:cognos、finebi
4.元数据存储:微软 Repository,Ardent MetaStage
5.元数据管理工具:IBM MetaStage,Pentaho Metadata,MetaCube
所有针对这种需求改变平滑变化的系统,都是单一性质的工具性居多,整体性的方案偏少,当前市面上的元数据管理兼容自身,第三方就有点吃力。
(四)作用
数据仓库把所需的数据仓库工具集成在一起,完成数据的抽取、转换和加载,OLAP分析和数据挖掘等。如下图所示,它的典型结构由操作环境层、数据仓库层和业务层等组成。
第一层(操作环境层)是指整个企业内有关业务的OLTP系统和一些外部数据源;第二层是通过把第一层的相关数据抽取到一个中心区而组成的数据仓库层;第三层是为了完成对业务数据的分析而由各种工具组成的业务层。
图中左边的部分是元数据管理,它起到了承上启下的作用。具体作用如下:
1.元数据是数据集成的重要基石
在实际数据集成建设过程过,现行建设数据集市,再建设数据仓库。但由于数据集市过多,导致出现蜘蛛网的问题,元数据管理是解决蜘蛛网问题的关键。
2.元数据拉近数据与用户的关系
传统数据管理对于潜在用户极为不友好,元数据可以准确翻译“业务模型”与数据模型及其关系,帮助用户快速理解和使用数据。
3.元数据是提升数据质量的利器
元数据管理系统可以协助用户掌握数据的来龙去脉,细化至数据抽取、转换等多方位的信息,利用这部分信息,用户可以快速定位问题以及解决问题。
4.元数据可以平滑变化
数据往往是整个信息化系统的核心,配合成熟的工作流等技术,可以使得系统不依赖与某个开发人员,提升整体信息化建设的可扩展性。
二、元数据类型
元数据类型可按照不同的维度划分。
1、 技术元数据。开发和管理数据仓库的IT人员使用,描述与数据仓库开发、管理和维护相关的数据,包括数据源信息、数据转换描述、数据仓库模型、数据清洗与更新规则、数据映射和访问权限等。
2、 业务元数据。管理层和业务分析人员使用,从业务角度描述数据,包括商务术语、数据仓库中有什么数据、数据的位置和数据的可用性等,帮助业务人员更好地理解数据仓库中哪些数据是可用的以及如何使用。
3、 管理过程元数据指描述管理领域相关的概念、关系和规则的数据,主要包括管理流程、人员组织、角色职责等信息。
三、元数据结构
元数据结构可由多层次的结构划分:
1.内容结构。包括描述性元素、技术性元素、管理性元素、复用性元素。
2.句法结构。包括元素的分区分层分段组织结构、元素结构描述方法、DTD描述语言、元数据复用方式、与被描述对象的捆绑方式。
3.语义结构。包括元素内容编码规则定义、元素定义、元素语义概念关系、元数据版本管理。
四、元数据管理
1.CWM
OMG是一个拥有500多会员的国际标准化组织,该组织于2001年3月,OMG颁布了CWM(Common Warehouse MetaModel)1.0标准。
CWM为数据仓库和商业智能(BI)工具之间共享元数据,制定了一整套关于语法和语义的规范。它主要包含以下四个方面的规范:
CWM元模型(Metamodel):描述数据仓库系统的模型;
CWM XML:CWM元模型的XML表示;
CWM DTD:DW/BI共享元数据的交换格式;
CWM IDL:DW/BI共享元数据的应用程序访问接口(API)。
2.元数据基础管理
元模型添加、删除、修改、发布等维护功能;元数据之间关系的建立、删除和跟踪等关系维护功能;元数据统计、元数据使用情况分析、元数据变更、元数据版本和生命周期管理等功能;元数据自身质量核查。
五、元数据应用
1.数据地图
数据地图展现是以拓扑图的形式对数据系统的各类数据实体、数据处理过程元数据进行分层次的图形化展现,并通过不同层次的图形展现粒度控制,满足开发、运维或者业务上不同应用场景的图形查询和辅助分析需要。
2、元数据分析
①血缘分析
血缘分析(也称血统分析)是指从某一实体出发,往回追溯其处理过程,直到数据系统的数据源接口。对于不同类型的实体,其涉及的转换过程可能有不同类型,如:对于底层仓库实体,涉及的是ETL处理过程;而对于仓库汇总表,可能既涉及ETL处理过程,又涉及仓库汇总处理过程;而对于指标,则除了上面的处理过程,还涉及指标生成的处理过程。数据源接口实体由源系统提供,作为数据系统的数据输入,其它的数据实体都经过了一个或多个不同类型的处理过程。血缘分析正是提供了这样一种功能,可以让使用者根据需要了解不同的处理过程,每个处理过程具体做什么,需要什么样的输入,又产生什么样的输出。
②影响分析
影响分析是指从某一实体出发,寻找依赖该实体的处理过程实体或其他实体。如果需要可以采用递归方式寻找所有的依赖过程实体或其他实体。该功能支持当某些实体发生变化或者需要修改时,评估实体影响范围。
③实体关联分析
实体关联分析是从某一实体关联的其它实体和其参与的处理过程两个角度来查看具体数据的使用情况,形成一张实体和所参与处理过程的网络,从而进一步了解该实体的重要程度。本功能可以用来支撑需求变更影响评估的应用。
④实体差异分析
实体差异分析是对元数据的不同实体进行检查,用图形和表格的形式展现它们之间的差异,包括名字、属性及数据血缘和对系统其他部分影响的差异等,在数据系统中存在许多类似的实体。这些实体(如数据表)可能只有名字上或者是在属性中存在微小的差异,甚至有部分属性名字都相同,但处于不同的应用中。由于各种原因,这些微小的差异直接影响了数据统计结果,数据系统需要清楚了解这些差异。本功能有助于进一步统一统计口径,评估近似实体的差异
⑤指标一致性分析
指标一致性分析是指用图形化的方式来分析比较两个指标的数据流图是否一致,从而了解指标计算过程是否一致。该功能是指标血缘分析的一种具体应用。指标一致性分析可以帮助用户清楚地了解到将要比较的两个指标在经营分析数据流图中各阶段所涉及的数据对象和转换关系是否一致,帮助用户更好地了解指标的来龙去脉,清楚理解分布在不同部门且名称相同的指标之间的差异,从而提高用户对指标值的信任。
3. 辅助应用优化
元数据对数据系统的数据、数据加工过程以及数据间的关系提供了准确的描述,利用血缘分析、影响分析和实体关联分析等元数据分析功能,可以识别与系统应用相关的技术资源,结合应用生命周期管理过程,辅助进行数据系统的应用优化.
4.辅助安全管理
企业数据平台所存储的数据和提供的各类分析应用,涉及到公司经营方面的各类敏感信息。因此在数据系统建设过程中,须采用全面的安全管理机制和措施来保障系统的数据安全。数据系统安全管理模块负责数据系统的数据敏感度、客户隐私信息和各环节审计日志记录管理,对数据系统的数据访问和功能使用进行有效监控。为实现数据系统对敏感数据和客户隐私信息的访问控制,进一步实现权限细化,安全管理模块应以元数据为依据,由元数据管理模块提供敏感数据定义和客户隐私信息定义,辅助安全管理模块完成相关安全管控操作。
5. 基于元数据的开发管理
数据系统项目开发的主要环节包括:需求分析、设计、开发、测试和上线。开发管理应用可以提供相应的功能,对以上各环节的工作流程、相关资源、规则约束、输入输出信息等提供管理和支持。
引用:
1.胤子,知乎,【收藏】关于元数据(Metadata)和元数据管理,这是我的见过最全的解读!,https://zhuanlan.zhihu.com/p/338658341
2.百度,百度,元数据,https://baike.baidu.com/item/%E5%85%83%E6%95%B0%E6%8D%AE/1946090?fr=aladdin
3.百度,百度,数据集市,https://baike.baidu.com/item/%E6%95%B0%E6%8D%AE%E9%9B%86%E5%B8%82/607135?fr=aladdin
4.马达Fumer,知乎,2.3 数据集市与数据仓库的区别,https://zhuanlan.zhihu.com/p/60038747
5.小黎子数据分析,知乎,数据仓库系列之元数据管理系统,https://zhuanlan.zhihu.com/p/111780742来源:知乎