简述元数据管理
你所理解的元数据是什么样子的呢?
1
概述
元数据通常定义为”关于数据的数据”,元数据贯穿了数据仓库的整个生命周期,使用元数据驱动数据仓库的开发,使数据仓库自动化,可视化。元数据打通了源数据、数据仓库、数据应用,记录数据从产生到消费的全过程。
例如我们看一部电影,电影本身就是数据,那么元数据就是用来描述这部电影的数据。如下图所示:
元数据主要记录数据仓库中模型的定义、各层级间的映射关系、监控数据仓库的数据状态及 ETL 的任务运行状态。在数据仓库系统中,元数据可以帮助数据仓库管理员和开发人员非常方便地找到他们所关心的数据,用于指导其进行数据管理和开发工作,可以极大的提升工作的效率。
元数据定义
将元数据按用途的不同分为两类:
技术元数据(Technical Metadata)
业务元数据(Business Metadata)
技术元数据是存储关于数据仓库系统技术细节的数据,是用于开发和管理数据仓库使用的数据。常见的技术元数据有:
1.存储元数据:
如表、字段、分区等信息。记录了表的中英文名及表状态。分区信息、责任人信息、对应主题,文件大小、表类型,生命周期,权限信息
记录列的字段中英文名、字段类型、字段备注、是否是分区字段,保密级别及权限信息等信息。
2.运行元数据,
如大数据平台上所有作业运行等信息:类似于 Hive Job 日志,包括作业类型、实例名称、输入输出、 SQL 、运行参数、执行时间,执行引擎等。
3.数据开发平台中数据同步、计算任务、任务调度等信息
包括数据同步的输入输出表和字段,以及同步任务本身的节点信息:计算任务主要有输入输出、任务本身的节点信息 任务调度主要有任务的依赖类型、依赖关系等,以及不同类型调度任务的运行日志等。
4.数据质量和运维相关元数据,如任务监控、运维报警、数据质量、故障等信息,包括任务监控运行日志、告警配置及运行日志、故障信息等。
业务元数据从业务角度描述了数据仓库中的数据,它提供了介于使用者和实际系统之间的语义层,使得不懂计算机技术的业务人员也能够读懂”数据仓库中的数据。
常见的业务元数据有维度及属性(包括维度编码,字段类型,创建人,创建时间,状态等)、业务过程、指标(包含指标名称,指标编码,业务口径,指标类型,责任人,创建时间,状态,sql等),安全等级,计算逻辑等的规范化定义,用于更好地管理和使用数据。数据应用元数据,如数据报表、数据产品等的配置和运行元数据。
元数据管理
对于元数据管理,目前来说有三种方式可供选择。
对于规模比较小,并且业务不大的公司,可能会用这种方式,但是这种方式太古老,且容易出错
自研元数据管理系统或者在数据平台开发元数据管理模块
很多公司会自研元数据管理系统或者相关模块,直接读取hive元数据或者数据平台配置的任务及调度元数据进行展示,相比较Excel人工导入,会更智能一点,但是相对于Atlas,成本更高且效果不一定有Atlas好,很多时候也需要批量导入和手工录入
Atlas 是一个可伸缩且功能丰富的元数据管理系统,深度对接了 Hadoop 大数据组件。
简单理解就是一个跟 Hadoop 关系紧密的,可以用来做各类数据的元数据管理的一个软件系统;
atlas本身从技术上来说,就是一个典型的JAVAWEB系统,其整体结构图如下所示:
核心组件
Core
Integration
Metadata source
Applications
核心特性
数据分类管理
集中审计
搜索与血缘管理
ATLAS的使用,包含两个方面:
注入元数据信息到atlas中(本质是:写入元数据到atlas中)
注入方式1:通过atlas为数据系统开发好的hook来注入
注入方式2:通过atlas自带的WEB-UI来人工填写元数据信息再注入
注入方式3:通过在自己的数据系统中调用atlas对外暴露的api,来灵活注入
使用atlas中的元数据信息来为我们服务(本质是:从atlas中读、改元数据)
方式1:通过atlas自带的WEB-UI前端系统来查看、修改元数据
方式2:通过调用atlas对外暴露的api,来开发自己的管理系统
元数据价值
元数据有重要的应用价值,是数据管理、数据内容、数据应用的基础,在数据管理方面为集团数据提供在计算、存储、成本、质量、安全、模型等治理领域上的数据支持。例如在计算上可以利用元数据查找超长运行节点,对这些节点进行专项治理,保障基线产出时间。在数据内容方面为集团数据进行数据域、数据主题、业务属性等的提取和分析提供数据素材。例如可以利用元数据构建知识图谱,给数据打标签,清楚地知道现在有哪些数据。在数据应用方面打通产品及应用链路,保障产品数据准确、及时产出。例如打通DP和应用数据,明确数据产等级,更有效地保障产品数据。
元数据应用
数据的真正价值在于数据驱动决策,通过数据指导运营。通过数据驱动的方法,我们能够判断趋势 ,从而展开有效行动,帮助自己发现问题,推动创新或解决方案的产生。这就是数据化运营。同样,对于元数据,可以用于指导数据相关人员进行日常工作,实现数据化“运营”。比如对于数据使用者,可以通过元数据让其快速找到所需要的数据;对于ETL 工程师,可以通过元数据指导其进行模型设计、任务优化和任务下线等各种日常ETL 工作;对于运维工程师,可以通过元数据指导其进行整个集群的存储、计算和系统优化等运维工作。
# 参考《大数据之路:阿里巴巴大数据实践》
深入探究order by,sort by,distribute by,cluster by