元数据管理在数据仓库的实践应用

元数据管理是企业数据治理的基础,是数据仓库的提升。作为一名数据人,首要任务就是理解元数据管理。

本篇文章将为大家梳理元数据的概念,介绍元数据管理在数据仓库的地位、场景及工具。

01 什么是数据仓库的元数据管理?

1、什么是元数据?

元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(data about data)。
抽象的描述:一组用于描述数据的数据组,该数据组的一切信息都描述了该数据的某方面特征,则该数据组即可被称为元数据。
举几个简单例子:
  • 如果一本书是一个“数据',那么它的书名、封面、出版社、作者、总页码就是它的“元数据”。
  • 如果一个电影是一个“数据”,那么它的总时长、制作人、总导演、演员列表就是它的“元数据”。
  • 如果数据库中某个表是一个”数据”,那么它的列名、列类型、列长度、表注释就是它的'元数据'。
只要有一类'事物',就可以定义它的“元数据”。
大多数时候,元数据可以根据代表意义的不同分为业务元数据技术元数据
(了解更多元数据的概念,点击阅读:这是我见过把元数据解释的最通俗易懂的文章了

2、什么是数据仓库?

数据仓库 ,由数据仓库之父比尔·恩门(Bill Inmon)于 1990 年提出,主要功能仍是将组织透过资讯系统之联机事务处理(OLTP)经年累月所累积的大量资料,透过数据仓库理论所特有的资料储存架构,做有系统的分析整理,以利各种分析方法如联机分析处理、数据挖掘(Data Mining)之进行,并进而支持如决策支持系统(DSS)、主管资讯系统(EIS)之创建,帮助决策者能快速有效的自大量资料中,分析出有价值的资讯,以利决策拟定及快速回应外在环境变动,帮助建构商业智能(BI)。

3、什么是数据仓库的元数据管理?

数仓中的元数据,主要记录各主题的定义、不同层级间的映射关系、监控数据仓库的数据状态及 ETL 的任务运行状态。一般会通过元数据资料库来统一地存储和管理元数据,其主要目的是使数据仓库的设计、部署、操作和管理能达成协同和一致。
元数据是数据仓库管理系统的重要组成部分,元数据管理是企业级数据仓库中的关键组件,贯穿数据仓库构建的整个过程,直接影响着数据仓库的构建、使用和维护。
02 为什么数据仓库要进行元数据管理?

1、建设数据仓库所必须

数据仓库是由外部数据、业务数据以及文档资料通过某些 ETL 工具得到的,如果没有一个明确、清晰的规则,根本不可能实现这个过程。

2、帮助快速理解数仓系统

一方面,数据仓库本质上是一个部门甚至一个公司的重要项目,开发时间冗长。中间不可避免的会产生人员流动,如果没有清楚的元数据,那会对整个系统乃和整个项目造成重大影响;
另一方面,数据仓库做为整个部门、公司的分析数据出口,并不仅仅对数据人员服务。DM 层对业务人员, DIM 对其他开发人员都是不可避免的。如果有清楚的元数据来说明数仓系统,就会节约双方大量的沟通时间。

3、高效精准沟通

一方面,元数据中的管理元数据会记录不同用户、角色、部门的数据权限。如果有数据需要进行通知,则可以快速查询系统进行群发邮件等方式进行沟通,从而避免了造成沟通环节的缺人和多人情况发生。
另一方面,在与产品沟通业务或是与研发沟通接口时,可以根据业务元数据,确认彼此沟通的指标、维度含义。从而在根源上避免交流的歧义。进而提高沟通效率。

4、保证数据质量

理想的元数据做到了对数据仓库结构的描述,仓库模式试图,维,度量,层次结构,到处数据库的定义,以及数据集市的位置和内容。
因此,我们可以很确定的判断哪些数据是肯定准确无误的、哪些数据是可能有问题的、哪些数据是肯定有问题的。
简单的说就是每一个字段都应该有它的取值范围、业务定义等信息,元数据定义好了自然就可以应用到数据质量检测、评估等方面,进而通过数据质量管理流程真正提高企业的数据质量。

5、降低数据系统建设成本

假如元数据建设完备,所以取得信息会更准确快捷,使数据系统建设不返工或少返工,减少分析工作量,加强各方的统一理解以及沟通效率,进而使开发成本最小。

6、快速分析变更影响

因元数据被集中维护并管理引用关系,当发生变更时,可以通过元数据管理系统以实时分析出其所影响的业务功能、应用系统、涉及人员、是否涉及监管等影响信息。

7、为未来做好准备

大数据、人工智能、数据湖、数据中台、商业智能等企业的战略级应用系统能够依赖良好的元数据管理而发挥出其应有的效果。
03 数据仓库中元数据的组成
元数据贯穿整个数据仓库,根据情况可以分为三种:业务元数据技术元数据管理元数据。

1、业务元数据

业务元数据主要描述 ”数据”背后的业务含义,从业务角度描述业务领域的相关概念、关系——包括业务术语和业务规则。
  • 主题定义:每段 ETL、表背后的归属业务主题。
  • 业务描述:每段代码实现的具体业务逻辑。
  • 标准指标:类似于 BI 中的语义层、数仓中的一致性事实;将分析中的指标进行规范化。
  • 标准维度:同标准指标,对分析的各维度定义实现规范化、标准化。
业务元数据,在实际业务中,需要不断的进行维护且与业务方进行沟通确认。

2、技术元数据

指技术细节相关的概念、关系和规则,包括对数据结构、数据处理方面的描述。以及数据仓库、ETL、前端展现等技术细节的信息。
数据仓库中的技术元数据一般包含以下 4 大系统:数据源元数据ETL元数据数据仓库元数据BI 元数据
(1)数据源元数据
例如:数据源的 IP、端口、数据库类型;数据获取的方式;数据存储的结构;原数据各列的定义及 key 指对应的值。
(2)ETL元数据
根据 ETL 目的的不同,可以分为两类:数据清洗元数据;数据处理元数据。
  • 数据清洗元数据:数据清洗,主要目的是为了解决掉脏数据及规范数据格式。因此此处元数据主要为:各表各列的'正确'数据规则;默认数据类型的'正确'规则。
  • 数据处理元数据:数据处理,例如常见的表输入表输出;非结构化数据结构化;特殊字段的拆分等。源数据到数仓、数据集市层的各类规则。比如内容、清理、数据刷新规则。

(3)数据仓库元数据

数据仓库结构的描述,包括仓库模式、视图、维、层次结构及数据集市的位置和内容;

业务系统、数据仓库和数据集市的体系结构和模式等。

(4)BI 元数据
汇总用的算法、包括各类度量和维度定义算法。数据粒度、主题领域、聚集、汇总、预定义的查询与报告。

3、管理元数据

管理领域相关,包括管理流程、人员组织、角色职责等。
也有很多观点建议将管理元数据拆分融入业务元数据和技术元数据中。
04 如何建设数据仓库元数据管理?
任何系统的元数据管理建设都是十分艰难的,数据仓库更是如此;但另一方面,这个建设过程又是非常重要的。我们暂以 CWM 标准作为数据仓库的元数据标准参考,在实际建设中进行借鉴,这样看起来更专业。
CWM (CommonWarehouseMetamodel公共仓库元模型)是 OMG 组织在数据仓库系统中定义了一套完整的元模型体系结构,用于数据仓库构建和应用的元数据建模。公共仓库元模型指定的接口,可用于启用交换仓库之间元数据仓库和业务智能工具、仓库平台、应用的元数据建模和仓库元数据存储在分布式异构环境 CWM 元模型由一系列子元模型构成。
由于 CWM 制定时间是 2001 年,且过于细节深入,因此笔者认为其更适合作为开发参考而非开发标准。
由于元数据包含极广,我们在建立元数据管理系统的时候,绝对不能盲目追求大而全、一步到位,要坚持目标驱动的原则,在实施的时候要采取增量式、渐进式的建设原则。具体的建设步骤如下:
  1. 在建设数据仓库系统的初期,只需确定源系统的元数据构成和 数仓我们想要实现的元数据内容:比如,我们只想通过元数据来管理数据仓库中数据的转换过程,以及有关数据的抽取路线,以使数据仓库开发和使用人员明白仓库中数据的整个历史过程。
  2. 确定源系统和元数据构成后,先将源系统的元数据整理并记录,可以用文档记录;也可以存入关系型数据库中。
  3. 随着数据仓库系统的建设,逐步将需要的元数据补充录入——例如 DM 的语义层、ETL 的同步规则。
  4. 数据仓库建设完成后,对元数据进行结构化、标准化储存。
总之,建立元数据管理系统一定要坚持关注标准,又不被标准所束缚的原则,建立符合自身目标的元数据管理系统。
05 元数据的应用场景

1、影响分析

在开发中,我们经常会遇到以下问题:
如果我要改动某个表、ETL,会造成怎样的影响?
如果没有元数据,那我们可能需要遍历所有的脚本、数据。才能得到想要的答案;而如果有成熟的元数据管理,那我们就可以直接得到答案,节省大量时间。

2、血缘分析

血缘分析是一种技术手段,用于对数据处理过程的全面追踪,从而找到某个数据对象为起点的所有相关元数据对象以及这些元数据对象之间的关系。元数据对象之间的关系特指表示这些元数据对象的数据流输入输出关系。
在元数据管理系统成型后,我们便可以通过血缘分析来对数据仓库中的数据健康、数据分布、集中度、数据热度等进行分析。
血缘分析是 data science 非常重要的应用,未来笔者会单独展开介绍。

3、ETL 自动化管理

在数仓中,很大一部分 ETL 都是枯燥重复的步骤。
例如源系统-ODS 层的:表输入——表输出。
又比如 ODS-DW:SQL 输入——数据清洗——数据处理——表输出。
以上的规则其实就属于一部分元数据。
那理论上完全可以实现,写好固定脚本,然后通过前端选择——或 api 接口。
进而对重复的 ETL 实现自动化管理,降低 ETL 开发的时间成本。

4、数据质量管理

数据清洗的逻辑,简单的说可以分为不同的数据类型和指定的特殊处理列。
我们只需指定不同数据类型的默认清洗规则,和部分特殊列的特殊处理逻辑,即可实现智能快捷的数据清洗。
数据质量管理,属于 数据治理 与 元数据管理 交集,更偏向数据治理方面。未来也会展开更详细介绍。

5、数据安全管理

在阿里推崇的数据中台中,一切数据接口指标,都会从数据仓库中出口。因此理论上,我们只需在此处的元数据中对管理元数据的权限进行配置,即可实现全公司的数据安全管理。
06 常见的元数据管理系统
1、apache atlas
Apache Atlas 是 Apache 基金会的孵化项目,是 Hadoop 生态圈的数据治理和元数据框架。Atlas 是一套核心基础治理服务的集合,有很好的伸缩性和可扩展性,能够满足企业对 Hadoop 生态系统的多样性需求,并能和企业的数据生态系统集成。
它为 Hadoop 集群提供了包括数据分类、集中策略引擎、数据血缘、安全和生命周期管理在内的元数据治理核心能力。
但 atlas 的缺点是:只能对 hadoop 的元数据进行管理(虽然也是连的 Mysql ),对传统数据库的支持力度非常小;同时血缘分析也只支持特定的数据库。

2、wherehows

Wherehows 定位于元数据仓库,元数据存储于 mysql 中,它从不同的源系统中采集元数据,并进行标准化和建模,从而作为元数据仓库完成血缘分析。由 linkedin 开源。支持 Docker 部署。
优势:
  • 支持元数据历史版本及对比分析。
  • 一站式的元数据分析管理系统。
劣势:
  • 支持的源系统比较少
  • 开源版本仅支持 Azkaban 调度任务的血缘分析。其他调度任务仅能获得元数据信息,而没有血缘信息。
  • 血缘分析较粗,不支持列级血缘。如 HDFS 仅能显示数据文件之间的血缘。
  • Web UI 仅提供查询能力,相关配置需要调用 API 接口。
  • 缺乏用户、权限管理能力。
这个工具最大的问题是开发不完善,准确的说,笔者还未看到有人安装成功过。

3、其他

元数据管理系统的建设,对整个公司都有着非常高的需求,因此其他系统会很难找。而收费的例如 informatica 等产品,又很难拿到实际 demo 来测试。
06 总结
元数据管理系统,是对一家公司数据更高的考验,想要搭建成功,至少满足以下条件:
  1. 整个公司数据的集成——数据仓库的搭建
  2. 整个公司业务流程的完善——'业务中台'的实现
  3. 整个公司技术开发的统一——'技术中台'的实现
如果说数据仓库是数据的集成,那元数据管理系统就是整个公司业务、技术、管理的统一。
从这个角度来看,元数据管理系统的定位是高于数据仓库的,这也是笔者虽然标题是《数据仓库的“元数据管理”》,但花了大量篇幅在介绍元数据的原因。
阿里所推崇的数据中台,理念上比较接近 数据仓库+元数据管理。
但换个角度,任何业务、技术、数据的规范过程,短时间内都会对实际工作造成负面的影响。不是所有人都能理解规范化所带来的优点,这里也需要一定权衡和反复的沟通。
用 ETL 的开发举一个例子。
  • 全部用 SQL 解决——开发很快,结果也很少出错。但未来可能要读一个上千行的 SQL。
  • 全部用 python 解决——开发、维护的代码门槛较高,且性能相比 SQL 相差何止百倍。
  • python 来调度 SQL ——笔者较为推崇的方法,将处理逻辑变为 python 的函数、类,但底层逻辑使用 SQL 实现。从而达到一个相对平衡的角度。
因此,笔者认为,无论是数据人员还是 IT 开发、测试甚至产品项目业务,都应有元数据的概念,记录有价值的元数据,利己利人。如果最终决定进行元数据管理系统的建设,也会节约大量时间。
(0)

相关推荐

  • 元数据管理与企业数据运营!

    元数据是关于数据的组织.数据域及其关系的信息,简言之,元数据就是关于数据的数据. - 01 - 企业数据治理的现状与问题 企业架构理论体系中,数据架构始终是企业架构的核心组成部分.TOGAF企业架构框 ...

  • 数据治理系列2:元数据管理

    导读:元数据管理是对企业涉及的业务元数据.技术元数据.管理元数据进行盘点.集成和管理,按照科学.有效的机制对元数据进行管理,并面向开发人员.最终用户提供元数据服务,以满足用户的业务需求,对企业业务系统 ...

  • 从数据治理到数据中台

    概述 在我的职业生涯中,做过的数据相关的项目不少,从最早期的数据大集中,到后来的主数据管理(MDM).数据治理及由此延伸出的数据中台建设项目,涉及的细分领域也越来越多,对大数据浪潮下企业数据应用的深度 ...

  • 4万字全面掌握数据库, 数据仓库, 数据集市,数据湖,数据中台

    如今,随着诸如互联网以及物联网等技术的不断发展,越来越多的数据被生产出来-据统计,每天大约有超过2.5亿亿字节的各种各样数据产生.这些数据需要被存储起来并且能够被方便的分析和利用. 随着大数据技术的不 ...

  • 2018CHC党爱民:老年高血压的优化管理——从指南到实践

    老年高血压要不要放弃治疗?治到多少是个头?具体怎么治?2018中国心脏大会上,阜外医院党爱民教授为您答疑解惑. 编  辑 | 口十君 年纪大,何弃疗? 01 ﹏ ﹏ ﹏ 探讨对老年高血压患者采取降压措 ...

  • 新一代载人飞船试验船发射场管理模式创新与实践

    中国空间技术研究院 苏怀朋.黄震.杨雷.郝平.刘宏泰 本文刊登于<航天工业管理>杂志2021年第3期 新一代载人飞船是面向我国载人航天未来发展而论证的新一代天地往返运输飞行器.为验证新一代 ...

  • 【德鲁克日志试译】5月27日 管理,一种实践

    管理策略的检验:不在于答案是否正确,而在于策略是否有效. 通用公司的管理层相信,他们发现了规律并且那些规律像自然规律一样绝对正确.我对此持相反的观点,我认为这类人为制造的规律只是对人有所启发而已.一直 ...

  • Atlas(元数据管理)从扫盲到和Hive、HBase、Kafka、Flink等集成

    先对数据分个类 企业数据管理的内容及范畴通常包括交易数据.主数据以及元数据. (1)交易数据:用于纪录业务事件,如客户的订单,投诉记录,客服申请等,它往往用于描述在某一个时间点上业务系统发生的行为. ...

  • 大数据时代,企业如何利用数据实现精准化和个性化管理及服务 | 最佳实践分享

    本文原题:<大数据时代背景教育企业的精准化和个性化管理及服务实践>,以教育行业项目的建设为例,介绍了如何通过数据采集.数据清洗.数据治理.数据挖掘.数据分析.数据管理和服务的全方位大数据管 ...

  • 数据目录已死?为什么要重新思考元数据管理和数据治理?

    全文共4233字,预计学习时长11分钟 图源:unsplash 随着企业越来越多地利用数据驱动数字产品.推动决策制定和创新,了解这些最关键资产的状况和可靠性至关重要.几十年来,企业一直依赖数据目录来推 ...

  • 媒体战略管理——从理论到实践

    内容简介: <媒体战略管理--从理论到实践>主要内容阐述了媒体的战略环境.如传媒产业的战略环境发展趋势.传媒产业的策略.媒体技术的沿革.媒体创造性和创新性.传媒产业的领导者分析等内容.&l ...

  • 国际工程承包营销全流程管理(MTC)实践

      作者:丁力  北京城建集团国际事业部副总经理.高级经济师 图虫创4841860858860011 国际工程承包企业在开展营销工作时,如何应对普遍存在的问题? 一 行业现状 "营销&quo ...