Dataphin OpenAPI概览

在Dataphin V2.9.2及以上版本,Dataphin提供了一套OpenAPI以满足客户定制化的需求。本文为您介绍OpenAPI的基本模块,和OpenAPI可满足的典型的场景。


Dataphin OpenAPI可使用的版本为Dataphin非标独立部署。专有云部署和公共云多租户部署暂未开放。若您需要使用Dataphin OpenAPI,请联系阿里云商务或阿里云解决方案架构师。


1 OpenAPI模块说明

Dataphin开放了以下模块以供客户按需开通。

OpenApi模块

说明

Dataphin-OpenAPI(运维)

利用该API模块,用户可构建个性化的运维工具,通过API可完成节点及实例的相关操作,有可以获取Dataphin的告警事件及告警消息。

目前开放的API主要针对离线脚码任务和管道集成任务。规范建模相关的任务运维的API暂未开放。

Dataphin-OpenAPI(研发)

通过该API模块,用户可将Dataphin研发平台的部分能力集成到其他系统中。该API模块主要提供了离线脚本任务和管道集成任务的查询、创建、修改和删除的能力,也提供了上传和管理资源、创建管理UDF的能力。基于这些能力,用户可以定制化的开发数据集成的工具,以及轻度的自助取数和即席查询的能力。

OpenAPI不提供规范建模的建模能力。

Dataphin-OpenAPI(资产)

通过该API模块,用户可以查询Dataphin的资产元数据的信息。包括查询物理表与逻辑表的字段及分区,查询表的血缘。

Dataphin-OpenAPI(平台管理)

通过平台管理相关的API,用户可查询当前购买的产品的功能特性,创建及管理数据源、查询项目信息、管理项目成员,管理Dataphin的成员,以及给用户授权和回收数据源权限。


1.1 Dataphin-OpenAPI(运维)


子模块

API

API说明

节点

CreatePhysicalNodeSupplement

创建补数据工作流

GetPhysicalNodeByOutput

根据输出名查询物理节点。仅支持离线代码节点及集成任务节点

GetPhysicalNodeContent

获取物化代码信息

GetPhysicalNodeOperationLog

获取节点操作日志

GetPhysicalNode

获取节点详情

ListNodes

获取节点列表

PausePhysicalNode

暂停节点调度,暂时仅支持离线代码任务及集成任务

QueryDagFromPhysicalNode

查询节点上下游

ResumePhysicalNode

恢复节点调度,暂时仅支持离线代码任务及集成任务

实例

GetInstanceDownstream

查询实例下游

GetPhysicalInstanceLog

查询实例操作日志

ListNormalInstance

根据节点ID、环境(开发/生产)获取节点实例的列表,包括周期实例手动实例

ListSupplementDagrun

根据节列出补数据工作流下的每一个业务日期对应的DagRun信息

ListSupplementInstance

列出补数据工作流下具体一个业务日期的任务实例

OperateInstance

实例运维操作

告警消息

GetAlertEvent

获取告警事件详情

QueryAlertEvents

查询告警事件

QueryAlertNotifications

查询告警记录



1.2 Dataphin-OpenAPI(研发)



子模块

API

API说明

文件

CreateAdHocFile

创建即席查询文件

CreateFolder

创建菜单树目录

DeleteAdHocFile

删除即席查询文件

DeleteFolder

删除菜单树目录

GetAdHocFile

查询即席查询文件

ListFiles

查询菜单树目录文件

MoveFile

移动菜单树文件位置

RenameFile

重命名菜单树文件

UpdateAdHocFile

更新即席查询文件

离线代码任务

CreateBatchTaskFile

创建离线计算任务

DeleteBatchTaskFile

删除离线计算任务,删除之前需先下线任务

GetBatchTaskFile

查询离线计算任务详情

ListBatchTaskFileVersions

查询离线计算任务历史版本

OfflineBatchTaskFile

下线离线计算任务

ParseDependency

解析离线计算任务的逻辑表依赖

SubmitBatchTaskFile

提交离线计算任务

UpdateBatchTaskFile

更新离线计算任务

ExecTask

执行即席查询任务

KillTask

终止即席查询任务

QueryTaskLog

获取即席查询的任务运行日志

QueryTaskResult

获取即席查询的任务运行结果

管道

AsyncCreatePipeline

异步一键式创建管道

CreatePipeline

创建管道任务

GetAsyncExeResult

查询异步执行状态及结果

GetPipeline

查询管道任务详情

ListAsyncExeResult

批量查询异步执行状态及结果

ListPipeline

批量查询管道任务

OfflineAndDeletePipeline

下线管道任务,可删除管道

OfflinePipeline

下线管道任务

SubmitPipeline

提交管道任务

UpdatePipeline

更新管道任务

发布

GetLatestSubmitDetail

获取待发布对象详情

ListObjectsToPublish

查询待发布对象列表

ListPublishingHistory

查询发布记录

PublishObject

发布对象

资源

CreateResource

创建资源

DeleteResource

删除资源

GetResource

获取资源详情

GetResourceStorageCredential

获取上传资源文件的存储配置,可支持OSS和Ceph对象存储


UpdateResource

更新资源

函数

CreateUdf

创建UDF

DeleteUdf

删除UDF

GetUdf

获取UDF详情

UpdateUdf

更新UDF


1.3 Dataphin-OpenAPI(资产)


子模块

API

API说明

元数据


ListLogicTableColumns

查询逻辑表的列

ListRealtimeTableColumns

查询实时元表的列

ListTableColumns

查询物理表的列

ListTablePartitions

查询物理分区数据

ListTables

查询表资产

QueryLogicTable

查询逻辑表详情

QueryRealtimeTable

查询实时元表

QueryTable

查询物理表

QueryTableLineage

获取血缘信息


1.4 Dataphin-OpenAPI(平台管理)


子模块

API

API说明

购买特性

ListFeatures

获取当前租户可用的特性列表.

数据源

CheckDataSourceConnectivity

检查数据源连通性.

CheckExistDataSourceConnectivity

检查已创建的数据源连通性。

CreateDataSource

创建数据源,支持单独创建生产环境数据源,同时创建开发、生产数据源,为生产环境数据源创建开发环境数据源三种模式。

DeleteDevProdModeDataSource

删除数据源,支持只删除开发环境中的数据源,或者同时删除开发、生产数据源,Dataphin系统目前不允许开发环境数据源单独存在。

SearchDataSourceConfig

搜索数据源,结果分页返回,返回数据源结构为开发、生产成对组合。

UpdateDataSourceBasicInfo

更新数据源的基本信息,如名称、描述。

UpdateDataSourceConfiguration

更新数据源配置信息,如连接URL、用户名、密码等。

计算引擎

CheckComputeSourceConnectivityById

根据项目Id检查项目连通性

CheckComputeSourceConnectivity

根据项目Id检查项目连通性

CreateComputeSource

创建计算源

DeleteComputeSource

删除计算源

GetComputeSource

根据计算源Id获取计算源信息

QueryComputeSource

计算源批量查询

UpdateComputeSource

更新计算源

项目

AddProjectMembers

添加项目成员API,支持添加项目Basic和DEV_PROD项目的项目成员。

CheckProjectHasDependency

检查项目是否存在依赖

DeleteProjectMembers

删除项目成员

GetProject

获取项目详情

ListProjectByProjectType

根据项目类别筛选项目

ListProjectMembers

查询项目成员

QueryProjectWhiteList

查询项目白名单

UpdateBasicProject

更新Basic项目信息

UpdateDevProdProject

更新Dev_Prod项目信息

UpdateProjectMembers

更新项目成员

UpsertProjectWhiteList

更新项目白名单

用户与授权

AddUser

添加租户成员

BatchGetUsers

批量获取用户信息

ListUsers

获取用户列表

RemoveUser

删除租户成员

GetDataSourceUserList

根据数据源Id查询拥有权限的用户

GetProjectProduceUser

获得项目生产账号

GetRoleListByUserId

获取某个用户所拥有的角色列表

GrantPermissionToDataSource

授予数据源多个用户多个行为权限

GrantRole

授予用户角色

IsProductAdmin

判断当前用户是否是超级管理员

RevokePermissionFromDataSource

回收用户的数据源权限



2 OpenAPI典型场景

2.1 通过API构建自动补数据工具


Dataphin平台提供了补数据功能,当需要补数据时,用户可手动对某个节点及其下游的节点的特定业务日期的补数据。在实际场景中,有些上游的数据到达的时间晚于预期时间,比如门店的数据延迟几天或者一个月的时间才收集上报,或者上游的数据错误需进行更正时,就需要进行补数据操作。此类操作重复度高,且由于补数据的时间较长带来较大的运维成本。通过Open API的运维模块就可以根据特定的业务场景开发适用于特定业务场景的个性化的补数据或运维工具。


2.2 通过API构建自助取数工具


Dataphin的资产运营平台提供了资产盘点和自助取数的工具。您也可以通过API构建自助取数工具。通过自助取数工具可满足业务方的自助取数的需求,加快取数的便捷性。




2.3 管理Dataphin的成员


企业内部通常有自己的用户和权限管理系统,Dataphin提供的API可在Dataphin系统外集中式的管理Dataphin的用户、项目成员及角色。


目前OpenAPI暂不支持删除服务的成员,转交资源权限和负责人,调用删除用户接口的时候需注意该成员不是数据服务的成员,且已经从各个项目中删除掉该用户。


3 OpenAPI Java SDK

为增加Dataphin OpenAPI的易用性,我们也发布了配套的Java SDK,Dataphin提供的API也以基于SDK进行解释说明。如需SDK,请联系您所在企业对应的Dataphin技术支持。


上一篇:Silverlight SEO优化


下一篇:跑得好好的Java进程,怎么突然就瘫痪了?