第12章 元数据
1.元数据概述
- 元数据定义
元数据是关于数据的数据。按照用途可以分为两类:
技术元数据
业务元数据
阿里巴巴常见的技术元数据:
分布式计算系统存储元数据
分布式计算系统运行元数据
数据开发平台中数据同步,计算任务、任务调度等信息
数据质量和运维相关元数据
阿里巴巴常见的业务元数据:
OneData元数据
数据应用元数据
- 元数据的价值
元数据有重要的应用价值,是数据管理、数据内容、数据应用的基础,在数据管理方面为集团数据提供在计算、存储、成本、质量、安全、治理领域上的数据支持。
- 统一元数据体系建设
元数据的质量直接影响到数据管理的准确性,如何把元数据建设好将起到至关重要的作用。元数据建设的目标是打通数据接入到加 ,再到数据消费整个链路,规范元数据体系与模型,提供统 的元数据服出口,保障元数据产出的稳定性和质量。
建设思路图:
2.元数据的应用
- Data Profile
Data Profile承担的是为元数据“画像”的任务。其核心思路是为繁杂的数据建立一个脉络清晰的血缘图谱。通过计算、标签传播算法等技术,系统化、自动化地对计算与存储平台上的数据进行打标、整理、归档。
Data Profile 开发出了四类标签:
基础标签 :针对数据的存储情况、访问情况、安全等级等进行打标。
数仓标签:针对数据是增量还是全量、是否可再生、数据的生命周期来进行标签化处理。
业务标签:根据数据归属的主题域、产品线、业务类型为数据打上不同的标签。
潜在标签:这类标签主要是为了说明数据潜在的应用场景, 比如社交、媒体、广告、电商、金融等。
- 元数据门户
阿里巴巴基于元数据产出的最重要的产品是元数据门户。元数据门户致力打造一站式的数据管理平台、高效的一体化数据市场。包括“前台”和 “后台”:
“前台"产品为数据地图,定位消费市场,实现检索数据、理解数据等“找数据"需求;
“后台"产品为数据管理,定位于一站式数据管理,实现成本管理、安全管理、质量管理等。
- 应用链路分析
通过应用链路分析,产出表级血缘、字段血缘和表的应用血缘。其中表级血缘主要有两种计算方式:
一种是通过 MaxCompute 任务日志进行解析;
一种是根据任务依赖进行解析。
其中难度最大的是表的应用血缘解析,其依赖不同的应用。按照应用和物理表的配置关系,可以分为配置型和无配置型。
常见的应用链路分析应用主要有影响分析、重要性分析、下线分析、链路分析、寻根溯源、故障排查等。
- 数据建模
传统的数据仓库建模一般采用经验建模的方式,效率较低且不准确。基于现有底层数据已经有下游使用的情况,我们可以通过下游所使用的元数据指导数据参考建模。通过元数据驱动的数据仓库模型建设,可以在一定程度上解决此问题,提高数据仓库建模的数据化指导,提升建模效率。
所使用的元数据主要有:
① 表的基础元数据,包括下游情况、查询次数、关联次数、聚合次数、产出时间等。
② 表的关联关系元数据,包括关联表、关联类型、关联字段、关联次数等。
③ 表的字段的基础元数据,包括字段名称、字段注释、查询次数、关联次数、聚合次数、过滤次数等。
在星形模型设计过程中,可能类似于如下使用元数据。
① 基于下游使用中关联次数大于某个阈值的表或查询次数大于某个阈值的表等元数据信息,筛选用于数据模型建设的表。
② 基于表的字段元数据,如字段中的时间字段、字段在下游使用中的过滤次数等,选择业务过程标识字段。
③ 基于主从表的关联关系、关联次数,确定和主表关联的从表。
④ 基于主从表的字段使用情况,如字段的查询次数、过滤次数、关联次数、聚合次数等,确定哪些字段进入目标模型。
- 驱动ETL开发
通过元数据,指导ETL工作,提高ETL的效率。
我们可以通过Data Profile得到数据的下游任务依赖情况、最近被读写的次数、数据是否可再生、每天消耗的存储计算等,这些信息足以让我们判断数据是否可以下线;如果根据一些规则判断可以下线,则会通过OneClick触发一个数据下线的工作任务流,数据Owner可能只需要点击提交按钮,删除数据、删除元数据、下线调度任务、下线DQC 监控等一系列操作就会自动在后台执行完成。