You need to enable JavaScript to run this app.
导航

数据集模型画布与运维类工具 API

最近更新时间2024.03.15 15:26:55

首次发布时间2024.03.15 14:51:35

1. 概述

数据集 Open API 包含了:数据集操作 API、数据集信息 API、数据集维度指标与血缘关系 API、数据集同步任务 API、数据集可视化查询参数与开放查询 API、数据集模型画布与运维类工具 API、项目内数据集 API。
本文为您介绍的是“数据集模型画布类与运维类工具的 Open API”,您将了解到用户可以通过 API 进行查看数据集模型画布与地表元数据刷新等操作。
注意:在您使用本文所述的 API 前,还需完成接入 JWT-Token 和申请 Token 的前置操作,详情可阅读数据集 Open API 概述

2. 接口说明
  • 新接口 V4 版本采用标准的 restful 接口命名方式,即资源+行为的命名方式。

  • 针对每个接口提供直接可以导入 postMan 的 cURL 示例,方便客户体验,由于各环境 DataWind 域名和各个请求中都含有通用含义的变量,因此各接口的 cURL 实例中均采用{{}}包裹变量,{{变量}}格式可直接被 postMan 识别。

  • 变量对照含义表:

jwtToken -> {{jwtToken}}
aeolus 域名 -> {{domain}} 
项目 ID -> {{appId}} 
数据集 ID -> {{dataSetId}} 
数据集标签 Id {{tagId}}
数据集文件夹 Id {{dataSetFolderId}}
  • 本功能适用的版本: 2.48.0及以上
3. 查看数据集模型画布信息
  • 权限需求

    资源权限
    数据集read
  • 接口描述与说明仅查看数据集的模型画布信息,包含数据集中使用到的上游数据源节点的字段勾选情况,数据源信息;各数据源之间的join关系,数据源自身的筛选条件等。

  • 接口路径{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/model

  • cURL示例

    curl --location --request GET '{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/model' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer {{jwtToken}}'
    
  • 入参说明

    名称类型必选枚举值含义说明
    dataSetIdinteger数据集ID
  • 出参说明

    名称类型含义说明
    $.nodeConflist数据集模型画布信息
    $.nodeConf[i].tbNamestring数据源节点表名
    $.nodeConf[i].tableAliasstring数据源节点表别名
    $.nodeConf[i].dbNamestring数据源节点库名
    $.nodeConf[i].dataSourceIdinteger数据源ID
    $.nodeConf[i].clusterNamestring数据源集群信息
    $.nodeConf[i].nodeIdstring数据源在画布中的节点ID
    $.nodeConf[i].nodeTypeinteger数据源在画布中的节点类型
    $.nodeConf[i].fieldslist数据源节点的字段信息
    $.nodeConf[i].fields[i].typestring数据源节点字段类型
    $.nodeConf[i].fields[i].namestring数据源节点字段名称
    $.nodeConf[i].fields[i].aliasstring数据源节点字段别称 -> 应对多不同数据源有重名字段时
    $.nodeConf[i].fields[i].commentstring数据源节点字段注释
    $.nodeConf[i].fields[i].statusinteger数据源节点字段状态

    $.nodeConf[i].fields[i].isSelect

    bool

    数据源节点字段是否被勾选

{
    "code": "aeolus/ok",
    "data": {
        "dagTagConf": {
            "dimTbNodes": []
        },
        "linkConf": [],
        "nodeConf": [
            {
                "clusterName": "cn",
                "dataSourceId": 25958,
                "dataSourceType": "ch_excel",
                "dbName": "aeolus_excel_upload_aeolus_toy",
                "displayDbName": "配比四刷-v4",
                "fields": [
                    {
                        "alias": "`字段四`",
                        "comment": null,
                        "isDynamicPartition": false,
                        "isSelect": true,
                        "isSourceTableField": false,
                        "name": "字段四",
                        "prepType": "string",
                        "status": 0,
                        "type": "Nullable(String)"
                    },
                    {
                        "alias": "`字段一`",
                        "comment": null,
                        "isDynamicPartition": false,
                        "isSelect": true,
                        "isSourceTableField": false,
                        "name": "字段一",
                        "prepType": "string",
                        "status": 0,
                        "type": "Nullable(String)"
                    },
                    {
                        "alias": "`字段三`",
                        "comment": null,
                        "isDynamicPartition": false,
                        "isSelect": true,
                        "isSourceTableField": false,
                        "name": "字段三",
                        "prepType": "string",
                        "status": 0,
                        "type": "Nullable(String)"
                    },
                    {
                        "alias": "`字段二`",
                        "comment": null,
                        "isDynamicPartition": false,
                        "isSelect": true,
                        "isSourceTableField": false,
                        "name": "字段二",
                        "prepType": "string",
                        "status": 0,
                        "type": "Nullable(String)"
                    }
                ],
                "fileId": "13516",
                "fullOption": false,
                "hiveOwner": "userEmailPrefix",
                "lastDdlTime": "2022-12-13 12:49:00",
                "metadataLink": "https://data.bytedance.net/coral/datamap/detail/table_info/clickhouse/aeolus_excel_upload_aeolus_toy/table_4f0cc551_9dfa_4915_a38f_737c716591a8#group=default",
                "nodeId": "77b3df39-834c-4da4-908e-4b54846bc599",
                "nodeType": "table",
                "params": {
                    "extractType": "{\"key\":\"full\"}"
                },
                "partitionConfList": [],
                "query": "",
                "schemaName": "Sheet1",
                "tableAlias": "table_4f0cc551_9dfa_4915_a38f_737c716591a8",
                "tableRowFilter": {},
                "tbId": "cn//aeolus_excel_upload_aeolus_toy//table_4f0cc551_9dfa_4915_a38f_737c716591a8",
                "tbName": "table_4f0cc551_9dfa_4915_a38f_737c716591a8"
            }
        ],
        "parseEngine": 0,
        "whereConf": {
            "nodeRowFilter": {},
            "requiredRowFilter": []
        }
    },
    "msg": "成功"
}
  • 备注

4. 底表元数据刷新
  • 支持版本58.1版本及以上

  • 权限需求

    资源权限
    数据集admin
  • 接口描述与说明刷新抽取数据集对应底表的关键字信息,支持刷新排序键、抽样键 (saas环境不支持)

  • 接口路径{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/refreshDataTable

  • cURL示例

    curl --location --request GET '{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/refreshDataTable' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer {{jwtToken}}' \
    
  • 出参说明

    #data为更新后的关键字信息
    {
        "code": "aeolus/ok",
        "data": {{"sample_key": "row_id_kmtq3k", "source_type": "Normal", "cnch_vw_default": "aeolus-turtle-lambda-default", "cnch_vw_write": "aeolus-turtle-lambda-write", "primary_key_list": ["row_id_kmtq3k"], "shard_key": "row_id_kmtq3k"}},
        "msg": "成功"
    }
    
  • 备注