数据地图

元数据查询

查询引擎

  • 平台默认部署的查询引擎为MySQL,可满足百万级元数据的日常查询性能要求

  • 当元数据量(表/字段)存在千万级、亿级的数据量时,支持部署ES查询引擎。平台功能层面无差别,但是需要至少新增3台服务器部署ES集群使用。

查询功能

搜索逻辑

  • 支持「找库」、「找表」、「找字段」三种查询维度,默认为「找表」,用户可根据需要自行切换

  • 支持模糊匹配(目前仅支持匹配查询的名称和中文名称),返回结果根据不同的数据源类型分TAB展示,高亮显示命中内容

  • 点击搜索按钮,或者键盘回车键,均可以触发搜索查询

查询页面

  • 进入「数据地图」默认页,展示热门搜索表的TOP10和个人最近查看的10张表

  • 进入「数据地图」查询页:

    • 顶部显示数据源类型TAB。因为每个数据源类型所拥有的元数据不太一样,所以查询结果按类型做了区分

    • 左侧显示查询筛选项。默认展示固定的几个筛选项,用户可根据「元模型管理」中配置的业务属性,进行自定义

    • 右侧显示查询结果列表。默认展示固定的几个元数据信息,用户可根据「元模型管理」中配置的业务属性,进行自定义

    • 系统会记录个人的配置自定义项,实现查询结果展示的千人千面

元数据应用

用户可将查询出来的结果「加入批量管理」,在「批量管理」中操作若干元数据应用

WX20210408 195442

编辑

用户可在此处批量编辑选中表的业务属性。常用场景:

  • 分配负责人:管理员将元数据初始化同步至平台后,将不同的表分配给不同的数据开发进行元数据管理。(业务属性选择负责人,注意只有管理员角色才有该权限)

  • 编辑属性:批量编辑表的业务属性,该功能同「元数据管理」菜单

导出元数据

用户可在此处批量导出选中表的元数据。

  • 导出格式支持:EXCEL/SQL/HTML

  • 导出内容包括:表名、表的属性信息(元模型中定义的各种属性信息、表结构)

订阅

用户可在此处批量订阅选中的表。

  • 订阅逻辑:当订阅表的业务属性、表结构发生变更时,系统自动对订阅用户发出告警

  • 订阅场景:常用于数据开发订阅业务系统的源表,可及时获知源表变更情况

  • 告警通道:站内信、邮件、短信、钉钉

元数据详情

已表为粒度,通过展示多种维度的元数据信息,让用户直观的了解这张表的作用和价值。各类型数据源的表元数据略有差异,下文已Hive表为例:

基本信息

主要从三个维度展示表的基本信息,包括技术属性、业务属性、表结构

WX20210408 195601
  • 技术属性:包括表名、所属数据库、表创建时间、DDL最后变更时间、存储位置、存储大小、最近同步时间

    • 存储大小。该属性直接从Hive Metastore获取,因为Hive元数据本身的刷新机制,该数据可能与真实存储大小存在差异

    • 最近同步时间。元数据最近一次同步到资产平台的时间

  • 业务属性:固定的如表中文名、负责人、分区保留策略,其他属性根据「元模型」中的定义和维护的内容进行展示,不固定。常见的业务属性如主题域、业务线等

    • 表中文名。初始同步至表comment信息,用户可在资产平台进行二次修改,不会回写至commnet

    • 负责人。初始负责人默认为admin,可在资产平台进行二次分配

    • 分区保留策略。该属性目前不生效,仅做展示

  • 表结构:展示表结构的字段信息,如字段名称、字段中文名、注释和数据类型。

    • 字段中文名。初始同步至字段commen信息,用户可在资产平台进行二次修改,不会回写至commnet

    • 数据标准。如果用户在「数据标准」模块为该字段绑定了数据标准,在此处还会显示该字段的数据标准信息

数据预览

通过直接预览数据,更直观的了解表内容。
默认仅展示100条数据,对于敏感数据,用户可在「平台管理-数据脱敏管理」模块进行脱敏,避免预览时造成数据泄漏。

血缘关系

通过图谱化的方式,直观地展示表、字段之间的数据流转关系

WX20210408 205901
  • 解析原理:

    • 平台内置血缘解析引擎,只需要把CTAS(create table A as select xxx from B…​)的SQL通过接口传给资产平台,平台可解析出B表数据流转至A表的关系。当解析全量的任务SQL后,就会形成一个完整的血缘关系网络,可以查看任意当前表、上游血缘表、下游影响表之间的关系。

    • 目前支持Hive SQL、Impala SQL、Libra SQL的解析。对于其他SQL类型,只要语法差别不大,均可快速适配

    • 对于系统无法自动解析出来的血缘关系,支持用户在页面进行手动维护

  • 血缘图谱:

    • 对于血缘解析出来的结果,已网络图谱的方式直观展示。用户可拖动背景或者右下角的导航器进行定位查看。图谱支持居中、放大、缩小、下载图片等操作。

    • 表级血缘:会默认展示当前表上下游所有层级的数据
      对于当前表,右键点击可插入血缘表(上游表)、影响表(下游表)
      对于影响表,可右键点击继续插入影响表(下游表)
      对于血缘表,可右键点击继续插入血缘表(上游表)
      手动添加的表/字段,需要存在于数据资产平台,否则无法添加

    • 字段级血缘:考虑到每张表的字段数量较多,全部展示出所有字段血缘关系的效果并不理想,因此默认只展示当前表的字段信息。
      需要查看具体某个字段的血缘时,通过点击该字段,图谱会显示出该字段的上下游血缘链路。通过右键单击字段名,可插入上下游关系字段。

  • 常见Q&A:

    • Q1. 血缘解析结果准不准?

    • A1. 对于表级血缘,血缘解析率接近100%。字段级血缘因为其复杂性,无法保障100%的解析率。遇到未解析出来的情况,如果是标准问题,可通过迭代支持。

    • Q2. 能不能支持跨源解析?

    • A2. 目前的解析功能,均是依赖开发的任务SQL进行解析的。后续会迭代数据同步场景下的血缘解析,比如一张MySQL业务表同步至数仓Hive ODS层的血缘关系。

    • Q3. 能不能自动解析离线开发平台中那些表的血缘关系?

    • A3. 已支持。前提是需要在资产平台引入离线平台的项目数据源(meta),并完成基础的元数据同步。(对于部署升级的客户,会存在增量SQL清理历史血缘数据的问题,需要等待任务下次运行完成后,才可查看血缘)

    • Q4. 血缘关系和影响关系、ER图这些概念的区别?

    • A4.
      和影响关系:在资产平台,血缘关系其实就是包含了影响关系的概念。有些厂商会将上游表的关系称为血缘关系,将下游表的关系称为影响关系,其实就是一个概念。只是为了放大宣传效果。
      和ER图的关系:血缘关系关注的是表与表之间、字段与字段之间的数据流转关系;ER图关注的是表与表之间的主外建关系

版本变更

记录每张表元数据变更的版本快照,支持任意版本之间的差异比对.

  • 版本生成原理:每次元数据同步时,或者元数据维护时,均会和已有元数据内容进行比较。如发现内容发生变更,则会自动生成一个最新的版本号;

  • 版本比对内容:业务属性变更、表结构变更

WX20210408 210112