👉🏻场景
在构建全链路数据地图时,如果上游来源系统或下游消费系统的血缘缺失,可能导致链路断裂。例如:某张表在被采集至Dataphin前已通过外部ETL从上游库同步而来,若这段血缘缺失,进入Dataphin后就难以回溯源头并评估变更对下游的影响。那Dataphin 是否支持对外部系统血缘进行统一纳管与可视化展示呢?
👉🏻 解决方案及功能
Dataphin 提供 OpenAPI 注册表血缘能力,支持补全全链路血缘信息。血缘注册时需指明以下三个核心部分:
- Source:来源表血缘。
- Target:目标表血缘。
- DetailedLineages:隶属于表的字段级(Column)血缘。
Dataphin 支持两种血缘注册方式:BY_GUID 和 BY_PROPERTY。本文介绍 BY_GUID 的配置方法,适用于来源或下游血缘已在 Dataphin 元数据中存在的场景(例如计算源表、逻辑表或已采集的数据源表等),核心配置字段如下:
- 表级资产血缘配置(Source/Target):
字段名称 |
字段描述 |
填写示例 |
ReferenceType |
资产引用类型:即通过哪种方式识别并注册资产,此处填写为 |
|
Guid |
Guid:资产唯一标识,此处通过 Guid 确认资产。 |
odps.3001011.ld_dummy.dim_ods_order |
MetadataType |
资产类型: |
|
- 字段级血缘配置(Source/Target),可以为空:
字段名称 |
字段解释 |
填写示例 |
ReferenceType |
资产引用类型:即通过哪种方式识别并注册资产,此处填写为 |
|
Guid |
资产Guid:资产唯一标识,此处为表字段Guid |
odps.3001011.ld_dummy.dim_ods_order.order_id |
ParentGuid |
父资产标识:仅在注册字段血缘时必填,指向该字段所属表的 GUID。 |
odps.3001011.ld_dummy.dim_ods_order |
MetadataType |
资产类型:COLUMN |
|
👉🏻 操作验证:
- 当我们明确上游和下游资产的GUID等信息时,在公共云环境进行参数填写并调用测试,可以看到返回数据成功。
- 随后,我们便可以在资产目录看到注册成功的数据血缘。
如何获取表/字段的 Guid:
- 页面导出:通过Dataphin目录管理中导出资产的Table/Column表 获取。
- OpenAPI 调用:ListTables获取表GUID,GetTablesColumns 获取字段 GUID。
- 手动拼接:通过各信息组合拼接,不同的表类型有不同的拼接格式。如 逻辑表的GUID为:dp_table.{租户ID}.{project_name}.{table_name},逻辑表字段GUID则在表后增加{column}