通过OpenAPI注册血缘

本文为您介绍如何通过OpenAPI注册外部系统血缘,注册成功后,可在Dataphin系统的资产清单查看。

前提条件

需购买OpenAPI功能。

使用限制

  • 自定义注册血缘目前处于公测阶段。如您有相关需求,请联系Dataphin技术支持。

  • 注册的血缘关系中所涉及的资产对象,其来源需在Dataphin系统中注册(即来自Dataphin中已存在的项目、板块、数据源)。其中,支持自定义注册血缘的数据源类型为大数据存储、关系型数据库、消息队列以及自定义数据源。

  • 同一个API中支持注册或删除表级和字段级血缘。

  • 每次调用注册血缘API,仅支持注册一对表之间的血缘关系,同时可指定这对表多组字段血缘关系,但最多支持100组,超过则调用失败。

  • 仅支持删除通过OpenAPI注册的血缘关系,其他血缘关系不可删除,血缘删除后不可恢复,请在操作前进行确认。

权限说明

超级管理员、系统管理员和具有元数据-其他功能-注册外部血缘权限的自定义全局角色支持通过OpenAPI注册血缘。

血缘来源

Datapnin目前支持自动解析、手动配置和接口注册3种方式获取血缘。

  • 自动解析:系统根据集成任务、SQL计算任务和逻辑表任务自动解析的血缘关系。

  • 手动配置:在计算任务中手动配置的血缘关系,详情请参见自定义血缘配置

  • 接口注册:通过OpenAPI接口注册血缘。

使用场景

为您展示端(first mile ETL)到端(last mile BI)的血缘关系。在Dataphin系统中已存在或不存在的对象均有可能(如果数据源表进行了采集,则可能是已存在的对象)。

  • 补全上游来源系统的血缘关系,可通过血缘溯源问题源头数据,进行问题定位。

  • 补全下游消费系统的数据关联,可对数据变更可能产生的影响进行分析,对资产价值进行评估。

注册血缘

请求参数

名称

类型

必填

描述

示例值

OpTenantId

long

租户ID。

30001011

imageAddRegisterLineageCommand

object

注册血缘,增加血缘command。

/

imageSource

object

source资产。

/

ReferenceType

string

资产引用类型:BY_GUID, BY_PROPERTY。

BY_GUID,BY_PROPERTY

Guid

string

资产Guid,在referenceTypeBY_GUID时必填。

odps.300000001.project1.table1

MetadataType

string

资产类型,按实际情况填写。

TABLE

MetadataSubType

string

资产子类型,仅在metadataTypeTABLE,并且referenceType不是BY_GUID时填写。

  • PHYSICAL_TABLE

  • PHYSICAL_VIEW

  • PHYSICAL_MATERIALIZED_VIEW

  • DATASOURCE_TABLE

  • DATASOURCE_VIEW

  • DATASOURCE_MATERIALIZED_VIEW

  • DIM_NORMAL, DIM_LEVEL

  • DIM_ENUM

  • DIM_VIRTUAL

  • FACT_EVENT

  • FACT_PROCESS

  • FACT_SNAPSHOT

  • SUM_BIZ_UNIT

Catalog

string

资产属性,对于表而言, 计算源表或者逻辑表的catalog统一为dataphin。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

dataphin

Schema

string

资产属性,对于表而言,一般是项目或者业务板块。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

project1,bizUnit1

Env

string

所属环境,该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

DEV,PROD

Name

string

资产名称,该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

table1

ExtProperties

object

扩展属性。

/

imageTarget

object

Target资产。

/

ReferenceType

string

资产引用类型:BY_GUID,BY_PROPERTY。

BY_GUID,BY_PROPERTY

Guid

string

资产Guid,在referenceTypeBY_GUID时必填。

odps.300000001.project1.table1

MetadataType

string

资产类型,按实际情况填写。

TABLE

MetadataSubType

string

资产子类型,仅在metadataTypeTABLE,并且referenceType不是BY_GUID时填写。

  • PHYSICAL_TABLE

  • PHYSICAL_VIEW

  • PHYSICAL_MATERIALIZED_VIEW

  • DATASOURCE_TABLE

  • DATASOURCE_VIEW

  • DATASOURCE_MATERIALIZED_VIEW

  • DIM_NORMAL

  • DIM_LEVEL

  • DIM_ENUM

  • DIM_VIRTUAL

  • FACT_EVENT

  • FACT_PROCESS

  • FACT_SNAPSHOT

  • SUM_BIZ_UNIT

Catalog

string

资产属性,对于表而言, 计算源表或者逻辑表的catalog统一为dataphin。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

dataphin

Schema

string

资产属性,对于表而言,一般是项目或者业务板块。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

project1,bizUnit1

Env

string

所属环境,该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

DEV,PROD

Name

string

资产名称,该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

table1

ExtProperties

object

扩展属性。

/

imageDetailedLineages

array

详细血缘关系。对于表, 这里的详细血缘关系就是字段血缘,如果不想增加字段血缘,可以为空。

/

image

object

子对象血缘关系。

/

imageSource

object

source资产引用。

/

ReferenceType

string

资产引用类型:BY_GUID,BY_PROPERTY。

BY_GUID,BY_PROPERTY

Guid

string

资产Guid,在referenceTypeBY_GUID时必填。

odps.300000001.project1.table1.column1

ParentGuid

string

父资产的Guid。如果当前对象是字段,那么parentGuid是字段所属表的Guid。

odps.300000001.project1.table1

MetadataType

string

资产类型,按实际情况填写。

COLUMN

Catalog

string

资产属性,对于表而言, 计算源表或者逻辑表的catalog统一为dataphin。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

dataphin

Schema

string

资产属性,对于表而言,一般是项目或者业务板块。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

project1,bizUnit1

Env

string

所属环境,该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

DEV,PROD

Name

string

资产名称,该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

column1

ExtProperties

object

扩展属性。

/

imageTarget

object

Target资产引用。

/

ReferenceType

string

资产引用类型:BY_GUID,BY_PROPERTY。

BY_GUID,BY_PROPERTY

Guid

string

资产Guid,在referenceTypeBY_GUID时必填。

odps.300000001.project1.table1.column1

ParentGuid

string

父资产的Guid,如果当前对象是字段,那么parentGuid是字段所属表的Guid。

odps.300000001.project1.table1

MetadataType

string

资产类型,按实际情况填写。

COLUMN

Catalog

string

资产属性,对于表而言, 计算源表或者逻辑表的catalog统一为dataphin。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

dataphin

Schema

string

资产属性,对于表而言,一般是项目或者业务板块。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

project1, bizUnit1

Env

string

所属环境,该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

DEV, PROD

Name

string

资产名称,该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

column1

ExtProperties

object

扩展属性。

/

IsDirect

boolean

是否是直接血缘,默认为True。

/

CheckAssetExist

boolean

是否需要校验资产本身的存在性,默认不校验存在性。

/

RelationProperties

object

血缘关系属性。

/

TenantId

long

租户ID。

300001234

UserId

string

当前用户ID。

300004567

返回参数

名称

类型

描述

示例值

image

object

Schema of Response。

/

RequestId

string

Id of the request。

82E78D6B-AA8F-1FEF-8AA3-5C9DA2A79140

Message

string

后端相应异常详情。

internal error

HttpStatusCode

integer

HTTP响应码。

200

Code

string

后端响应码。

OK

Success

boolean

请求成功与否。

/

示例

正常返回示例

{
  "RequestId":"82E78D6B-AA8F-1FEF-8AA3-5C9DA2A79140",
  "Message":"internal error",
  "HttpStatusCode": 200,
  "Code": "OK",
  "Success": "Success"
}

删除血缘

请求参数

名称

类型

必填

描述

示例值

OpTenantId

long

租户ID。

30001011

imageDeleteRegisterLineageCommand

object

注册血缘,删除血缘command。

/

imageSource

object

血缘的source。

/

ReferenceType

string

资产引用类型:BY_GUID,BY_PROPERTY。

BY_GUID,BY_PROPERTY

Guid

string

资产Guid,在referenceTypeBY_GUID时必填。

odps.300000001.project1.table1

MetadataType

string

资产类型,按实际情况填写。

TABLE

MetadataSubType

string

资产子类型,仅在metadataTypeTABLE,并且referenceType不是BY_GUID时填写。

  • PHYSICAL_TABLE

  • PHYSICAL_VIEW

  • PHYSICAL_MATERIALIZED_VIEW

  • DATASOURCE_TABLE

  • DATASOURCE_VIEW

  • DATASOURCE_MATERIALIZED_VIEW

  • DIM_NORMAL, DIM_LEVEL

  • DIM_ENUM

  • DIM_VIRTUAL

  • FACT_EVENT

  • FACT_PROCESS

  • FACT_SNAPSHOT

  • SUM_BIZ_UNIT

Catalog

string

资产属性。对于表而言,计算源表或者逻辑表的catalog统一为dataphin。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

dataphin

Schema

string

资产属性。对于表而言,一般是项目或者业务板块。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

project1,bizUnit1

Env

string

所属环境。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

DEV,PROD

Name

string

资产名称。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

table1

ExtProperties

object

扩展属性。

/

imageTarget

object

血缘的Target。

/

ReferenceType

string

资产引用类型:BY_GUID,BY_PROPERTY

BY_GUID,BY_PROPERTY

Guid

string

资产Guid,在referenceTypeBY_GUID时必填。

odps.300000001.project1.table1

MetadataType

string

资产类型,按实际情况填写。

TABLE

MetadataSubType

string

资产子类型,仅在metadataTypeTABLE,并且referenceType不是BY_GUID时填写。

  • PHYSICAL_TABLE

  • PHYSICAL_VIEW

  • PHYSICAL_MATERIALIZED_VIEW

  • DATASOURCE_TABLE

  • DATASOURCE_VIEW

  • DATASOURCE_MATERIALIZED_VIEW

  • DIM_NORMAL

  • DIM_LEVEL

  • DIM_ENUM

  • DIM_VIRTUAL

  • FACT_EVENT

  • FACT_PROCESS

  • FACT_SNAPSHO

  • SUM_BIZ_UNIT

Catalog

string

资产属性。对于表而言,计算源表或者逻辑表的catalog统一为dataphin。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

dataphin

Schema

string

资产属性。对于表而言,一般是项目或者业务板块。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

project1,bizUnit1

Env

string

所属环境。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

DEV,PROD

Name

string

资产名称。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

table1

ExtProperties

object

扩展属性。

/

imageDetailedLineages

array

详细血缘关系。对于表,这里的详细血缘关系就是字段血缘。

/

image

object

子对象血缘关系。

/

IsDirect

boolean

是否是直接血缘,默认为True。

/

imageSource

object

source资产引用。

/

ReferenceType

string

资产引用类型:BY_GUID,BY_PROPERTY。

BY_GUID,BY_PROPERTY

Guid

string

资产Guid,在referenceTypeBY_GUID时必填。

odps.300000001.project1.table1

ParentGuid

string

父资产的Guid。如果当前对象是字段,那么parentGuid是字段所属表的Guid。

odps.300000001.project1.table1

MetadataType

string

资产类型,按实际情况填写。

COLUMN

Catalog

string

资产属性。对于表而言,计算源表或者逻辑表的catalog统一为dataphin。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

dataphin

Schema

string

资产属性。对于表而言,一般是项目或者业务板块。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

project1,bizUnit1

Env

string

所属环境。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

DEV,PROD

Name

string

资产名称。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

column1

ExtProperties

object

扩展属性。

/

imageTarget

object

Target资产引用。

/

ReferenceType

string

资产引用类型:BY_GUID,BY_PROPERTY。

BY_GUID, BY_PROPERTY

Guid

string

资产Guid,在referenceTypeBY_GUID时必填。

odps.300000001.project1.table1

ParentGuid

string

父资产的Guid。如果当前对象是字段,那么parentGuid是字段所属表的Guid。

odps.300000001.project1.table1

MetadataType

string

资产类型,按实际情况填写。

COLUMN

Catalog

string

资产属性。对于表而言,计算源表或者逻辑表的catalog统一为dataphin。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

dataphin

Schema

string

资产属性。对于表而言,一般是项目或者业务板块。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

project1,bizUnit1

Env

string

所属环境。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

DEV,PROD

Name

string

资产名称。该属性用于在referenceTypeBY_PROPERTY时根据属性确定对应的资产,如果referenceTypeBY_GUID,该属性无需填写。

column1

ExtProperties

object

扩展属性。

/

CascadeDeleteLineage

boolean

是否在删除完所有detailedLineage后,自动删除对象血缘, 默认为True。

/

TenantId

long

租户ID。

300001234

UserId

string

当前用户ID。

300004567

返回参数

名称

类型

描述

示例值

image

object

Schema of Response。

/

RequestId

string

Id of the request。

82E78D6B-AA8F-1FEF-8AA3-5C9DA2A79140

Message

string

后端相应异常详情。

internal error

HttpStatusCode

integer

HTTP响应码。

200

Code

string

后端响应码。

OK

Success

boolean

请求成功与否。

/

示例

正常返回示例

{
  "RequestId":"82E78D6B-AA8F-1FEF-8AA3-5C9DA2A79140",
  "Message":"internal error",
  "HttpStatusCode": 200,
  "Code": "OK",
  "Success": "Success"
}

错误码

错误代码

状态码

错误信息

描述

DataphinOpenAPIRamUnAuthorized

401

You are not authorized to do this action, you should be authorized by RAM.

API调⽤没有被授权,需要通过RAM访问控制对账号进⾏授权。

DataphinOpenApiForbidden

403

Openapi request is forbidden, maytenantId invalid.

接⼝请求被拒绝,请确认是否有效租户ID。