数据血缘
数据血缘 (Data Lineage) 是数据的生命周期,展示了从数据源头到数据目标之间的转换过程。数据血缘在数据集处理路径很长时能直观地看到数据集处理路径,分析出数据集所依赖的上游数据集和产生关联的下游数据集。 在数据集更新时,通过数据血缘可以确保该数据集的上游数据集是否已经更新,保证数据的时效性。数据血缘中还展示了该数据集影响的对象,包括图表、数据集、数据集成、数据模型等。
数据血缘中涉及数据概念包括数据来源,数据目标,转换关系。
- 数据来源:可以是所有类型的数据集,但根部一定是本地文件数据集、SQL 数据集、直连数据集
- 数据目标:多表联合数据集、数据合并数据集、聚合数据集、行转列数据集、列转行数据集。
- 转换过程:fusion、union、aggregate、行转列、列转行。
在数据血缘页签中,左侧数据集列表中展示数据集,点击其中一个数据集时,右侧面板上方会展示其数据血缘图,面板下方会展示该数据集影响的对象。
数据血缘图
数据血缘图会展示所选数据集、所选数据集依赖的数据集、所选数据集参与生成的数据集。所选数据集会高亮显示。
hover 到每个数据集卡片上后,卡片右上角会有跳转图标,可以点击跳转到当前数据集的主页。
同时在卡片上会显示每个数据集的更新时间,方便用户检查数据集之间的更新调度计划是否恰当,数据集是否及时更新了。当数据集更新失败时,更新时间前面会展示更新失败图标。
影响的对象
影响的对象会列出当前数据集影响的图表、数据集、数据集成、数据模型,点击相关模块展示该数据集影响内容,可直接点击跳转到对应的模块。 如图示点击数据集成中数据血缘项目可以直接跳转到数据集成该项目中。
图表
数据血缘中展示的图表关系包括以下几种情况:
直接使用该数据集做的图表
下游数据集使用该数据集字段做的图表,例如:数据集 A 和数据集 B 关联生成数据集 C,然后使用数据集 C 中的字段(由 B 数据集得来的字段)做了图表 D,那么数据集 B 会影响图表 D,数据集 A 不会影响图表 D。
在数据模型中,复用该数据集的数据集做的图表,比如在数据模型中,将数据集 A 拖入两次,第二次拖入的数据集是 A(2),那么使用 A(2)做的图表也会出现在 A 的影响图表中
数据集
数据血缘中展示的数据集列表仅列出该数据集的下游数据集,即直接参与生成或间接参与生成的数据集。
数据集成
数据血缘中展示的数据集成模块列出了该数据集作为输入节点的集成项目。
数据模型
数据血缘中展示的数据模型中只列出其作为关联表(从表)的数据模型,不列出其作为模型表的数据模型,因为它肯定会影响自己,所以在此无需列出。
权限控制
数据血缘会显示数据集的全链路,以及影响的对象,这些影响的对象并不希望被应用查看者/租户使用者看到。
数据血缘的设计目的在于让数据集管理者去根据数据血缘进行更好的数据集设计,修改数据集时看到影响的对象。 对于查看者来说,这些管理功能没有必要看到,所以数据血缘对于应用查看者和租户使用者不可见。
数据血缘对于以下用户开放:应用创作个人空间中应用的所有者、协作者,应用创作团队空间中应用的管理者、编辑者,数据集市区应用的管理者、编辑者。
数据血缘对于应用的查看者、租户使用者是不可见的,因为不希望查看者、租户使用者看到数据集的全链路以及所有影响对象。