背景

为什么要做数据治理?

  • 广义:数据治理是最近谈的一个火热的话题。不管国家层面,还是企业层面现在对这个问题是越来越重视。数据治理要解决数据质量,数据管理,数据资产,数据安全等等,而数据治理的关键就在于元数据管理,我们要知道数据的来龙去脉,才能对数据进行全方位的管理,监控,洞察。
  • 狭义:

    1. 业务繁多,数据繁多,业务数据不断迭代。人员流动,文档不全,逻辑不清楚,对于数据很难直观理解,后期很难维护。
    2. 在大数据研发中,原始数据就有着非常多的数据库,数据表。而经过数据的聚合以后,又会有很多新的维度表。
    3. 人工智能团队需要正确的数据用于分析。虽然构建了高度可扩展的数据存储,实时计算等等能力,但是团队仍然在浪费时间寻找合适的数据集来进行分析。

      元数据

      元数据(meta data)——“data about data” 关于数据的数据,是指从信息资源中抽取出来的用于说明其特征、内容的结构化的数据,用于组织、描述、检索、保存、管理信息和知识资源。例如:存储在数据库中用于规定描述表信息,字段的长度、类型,索引信息等。

      元数据管理示例

      三十年前,数据资产可能是 Oracle 数据库中的一张表。然而,在现代企业中,我们拥有一系列令人眼花缭乱的不同类型的数据资产。可能是关系数据库或 NoSQL 存储中的表、实时流数据、 AI 系统中的功能、指标平台中的指标,数据可视化工具中的仪表板。现代元数据管理应包含所有这些类型的数据资产,并使数据工作者能够更高效地使用这些资产完成工作。
      一些常见的用例和它们需要的元数据类型的示例:
  • 搜索和发现:数据表、字段、标签、使用信息

  • 访问控制:访问控制组、用户、策略
  • 数据血缘:管道执行、查询
  • 合规性:数据隐私/合规性注释类型的分类
  • 数据管理:数据源配置、摄取配置、保留配置、数据清除、导出策略
  • AI可解释性、可重现性:特征定义、模型定义、训练运行执行、问题陈述
  • 数据操作:管道执行、处理的数据分区、数据统计
  • 数据质量:数据质量规则定义、规则执行结果、数据统计

    DataHub简介

    市面上常见的元数据管理系统有如下几个:
  1. linkedin datahub:
    https://github.com/linkedin/datahub
  2. apache atlas:
    https://github.com/apache/atlas
  3. lyft amundsen
    https://github.com/lyft/amundsen

atlas 对 hive 有非常好的支持,但是部署起来非常的吃力。amundsen 还是一个新兴的框架,采用的第一代架构。而 dataHub 是由LinkedIn的数据团队开源的一款提供元数据搜索与发现的工具。基于事件的第三代架构,社区(slack)很活跃。

摄取元数据

  1. 选择数据源
    1. DataHub: 使用介绍 - 图1
    市面上常见的数据源基本都支持,获取元数据前,需要定义配置文件(食谱)。
  2. 定义食谱
    1. DataHub: 使用介绍 - 图2

    一个配方文件只能有 1 个源和 1 个接收器。如果您想要多个来源,那么您将需要多个配方文件

  • source:数据源配置
  • transformers:数据转换器
  • sink:接收器
  1. 使用corn表达式指定脚本摄取时间
    1. DataHub: 使用介绍 - 图3
  2. 配置执行器信息
    1. DataHub: 使用介绍 - 图4

食谱配置成功后,元数据摄取任务执行的时间视数据源数据集的多少而定。任务执行完后,会在平台首页展示。
1. DataHub: 使用介绍 - 图5

管理元数据

1. DataHub: 使用介绍 - 图6
为了方便对元数据的管理,DataHub支持对元数据表、字段添加自定义的信息,还可以将某些特定的元数据表归为某一个领域(Domain),打上不同的标签(tag)和所有者(Owners)。所有的信息都可以通过搜索快速定位到你想要的元数据。

血缘关系

1. DataHub: 使用介绍 - 图7
DataHub还支持血缘关系

分析元数据

1. DataHub: 使用介绍 - 图8
DataHub自动生成元数据的摘要信息和使用率信息

用户、用户组

1. DataHub: 使用介绍 - 图9
目前不能创建用户,只能通过user.props来配置用户;可创建用户组管理用户。

政策

1. DataHub: 使用介绍 - 图10
DataHub使用政策(policies)来配置权限。政策的类型分为2种,一种是平台(Platform),配置对平台的操作;一种是元数据(Metadata),可以对元数据进行操作。

基于Platform

1. DataHub: 使用介绍 - 图11
基于Platform的政策定义了可以操作哪些页签

基于Metadata

1. DataHub: 使用介绍 - 图12
基于Metadata的政策定义了可以在管理元数据操作哪些按钮。如果没有选择,则将策略应用于给定的所有资源。