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

数据集可视化查询参数与开放查询 API

最近更新时间2024.03.22 11:28:28

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

1. 概述

数据集 Open API 包含了:数据集操作 API、数据集信息 API、数据集维度指标与血缘关系 API、数据集同步任务 API、数据集可视化查询参数与开放查询 API、数据集模型画布与运维类工具 API、项目内数据集 API。
本文为您介绍的是“数据集可视化查询参数类与开放查询类的 Open API”,您将了解到用户可以通过 API 进行查看、更新可视化查询参数配置以及通过接口直接获取数据、输出数据到csv文件等操作。
注意:在您使用本文所述的 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及以上

<span id="_3-数据集可视化查询参数"></span>
# 3. 数据集可视化查询参数
<span id="_3-1-查看数据集可视化查询参数配置"></span>
## 3.1 查看数据集可视化查询参数配置

* 权限需求
   
   | | | \
   |资源 |权限 |
   |---|---|
   | | | \
   |数据集 |read |

* 接口描述与说明配置数据集在可视化查询的表现能力

   ![图片](https://portal.volccdn.com/obj/volcfe/cloud-universal-doc/upload_f94b706c9996231651c1af0bcfa67b91.png =686x)

![图片](https://portal.volccdn.com/obj/volcfe/cloud-universal-doc/upload_ecdc30306d95b094ede38d426ac59664.png =661x)

* 接口路径`{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/vqsParams`
* cURL示例
   ```bash
   curl --location --request GET '{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/vqsParams' \
   --header 'Content-Type: application/json' \
   --header 'Authorization: Bearer {{jwtToken}}'
  • 入参说明

    名称

    类型

    必选

    枚举值

    含义说明

    dataSetId

    integer

    数据集ID

  • 出参说明

    名称

    类型

    含义说明

    enableReportMonitor

    string

    新建监控
    允许后,该数据集可以新建监控,但会对集群产生压力

    enableSubscription

    bool

    数据集订阅数据集首次创建后的默认回溯周期
    允许后,订阅数据集后,图表数据可在仪表盘订阅截图中显示,但会对集群产生压力

    vqsAutoQuery

    bool

    自动查询
    允许后,在可视化查询界面允许自动触发查询,但会对集群产生压力

    enableSearchOptimizationStrategy

    bool

    筛选搜索优化
    设为不允许会在列表中搜索数据项全量查最近30天的后端数据,保障数据完整性

    {
        "code": "aeolus/ok",
        "data": {
            "enableReportMonitor": true,
            "enableSearchOptimizationStrategy": false,
            "enableSubscription": true,
            "vqsAutoQuery": true,
            "vqs_auto_query": true
        },
        "msg": "成功"
    }
    
  • 备注

3.2 更新数据集可视化查询参数配置

  • 权限需求

    资源

    权限

    数据集

    write

  • 接口描述与说明设置数据集的可视化查询配置

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

  • cURL示例

    curl --location --request PUT '{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/vqsParams' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer {{jwtToken}}' \
    --data-raw '{
        "vqsParams": {
            "vqsAutoQuery": false,
            "enableSubscription": false,
            "enableReportMonitor": false,
            "enableSearchOptimizationStrategy": false
        }
    }'
    
  • 入参说明

    名称

    类型

    必选

    含义说明

    enableReportMonitor

    string

    新建监控
    允许后,该数据集可以新建监控,但会对集群产生压力

    enableSubscription

    bool

    数据集订阅数据集首次创建后的默认回溯周期
    允许后,订阅数据集后,图表数据可在仪表盘订阅截图中显示,但会对集群产生压力

    vqsAutoQuery

    bool

    自动查询
    允许后,在可视化查询界面允许自动触发查询,但会对集群产生压力

    enableSearchOptimizationStrategy

    bool

    筛选搜索优化
    设为不允许会在列表中搜索数据项全量查最近30天的后端数据,保障数据完整性

  • 出参说明

    {
        "code": "aeolus/ok",
        "data": null,
        "msg": "成功"
    }
    
  • 备注

4. 数据集开放查询

4.1 通过接口直接获取数据

  • 支持版本2.56.1版本、2.58.0版本及以上

  • 权限需求

    资源

    权限

    数据集

    read

  • 接口描述与说明

    • 2.58.0及以上版本:
      获取数据集数据。
    • 2.56.1版本:
      获取数据集数据,已支持抽取类型数据集、直连内置clickhouse数据集、可视化建模输出的clickhouse的数据集,行数限制10000。
  • 接口路径{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/queryData

  • cURL示例

    • 2.58.0及以上版本:
    curl --location --request POST '{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/queryData' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer {{jwtToken}}' \
    --data-raw '{
        "sql": "select `[order_id]` from `[mysql直连0922]` as a where `[order_id]` = '\''US-2019-1357144'\''",
        "version":"v2"
    }'
    
    • 2.56.1版本:
    curl --location --request POST '{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/queryData' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer {{jwtToken}}' \
    --data-raw '{
        "sql": "select `字段1` from `数据集名称` where `字段2` = '\''a'\''"
    }'
    
  • 入参说明

    • 2.58.0及以上版本:

    名称

    类型

    必选

    含义说明

    sql

    string

    查询sql语句, 查询的维度指标和数据集名称使用[]格式包裹

    version

    string

    填入"v2"可以支持绝大多数具有实体存储的数据集类型
    不填则等同于使用旧版查询能力,需遵循旧版语法

    • 2.56.1版本:

    名称

    类型

    必选

    含义说明

    sql

    string

    查询sql语句, 维度指标及数据集名称若不符合常规mysql语法,如数字、符号开头,使用反引号包裹。
    支持函数格式为$xx 已支持 $today$now$rand
    例:select $today from 数据集1
    select 字段1 from 数据集1 where 字段2 = $today
    Select 查询内容及where筛选内容支持已经定义的数据集维度指标
    已支持的语法包括 as、where 、 group by 、limit 、分页limit 例:
    select 字段1, 字段2 as 指标2 from 数据集1 where 字段1 in ('a', 'b') group by 字段2 limit 2, 100
    p.s limit限制若超过接口限制会被限制为接口支持的大小

  • 出参说明

    • 2.58.0及以上版本:
    {
        "code": "aeolus/ok",
        "data": [
            [
                "order_id"
            ],
            [
                "US-2019-1357144"
            ],
            [
                "US-2019-1357144"
            ]],
        "msg": "成功"
    }
    
    • 2.56.1版本:
    {
        "code": "aeolus/ok",
        "data": [["name", "descr"],["aa", "bb"],["cc", "dd"]],
        "msg": "成功"
    }
    
  • 备注

4.2 通过接口输出数据到csv文件

  • 支持版本2.56.1版本、2.58.0版本及以上

  • 权限需求

    资源

    权限

    数据集

    read

  • 接口描述与说明

    • 2.58.0及以上版本:
      获取数据集数据并输出到csv文件,异步接口,返回queryId,轮询csv文件下载链接接口查询结果。
    • 2.56.1版本:
      获取数据集数据并输出到csv文件,已支持抽取类型数据集、直连内置clickhouse数据集、可视化查询输出到clickhouse的数据集,异步接口,返回queryId,轮询csv文件下载链接接口查询结果。
  • 接口路径{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/queryDataToCSV

  • cURL示例

    • 2.58.0及以上版本:
    curl --location --request POST '{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/queryDataToCSV' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer {{jwtToken}}' \
    --data-raw '{
        "sql": "select `[order_id]` from `[mysql直连0922]` as a where `[order_id]` = '\''US-2019-1357144'\''",
        "version":"v2"
    }'
    
    • 2.56.1版本:
    curl --location --request POST '{{domain}}/aeolus/api/v4/open/dataset/{{dataSetId}}/queryDataToCSV' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer {{jwtToken}}' \
    --data-raw '{
        "sql": "select `字段1` from `数据集名称` where `字段2` = '\''a'\''"
    }'
    
  • 入参说明

    • 2.58.0及以上版本:

    名称

    类型

    必选

    含义说明

    sql

    string

    查询sql语句, 查询的维度指标和数据集名称使用[]格式包裹

    version

    string

    填入"v2"可以支持绝大多数具有实体存储的数据集类型
    不填则等同于使用旧版查询能力,需遵循旧版语法

    • 2.56.1版本:

    名称

    类型

    必选

    含义说明

    sql

    string

    查询sql语句, 维度指标及数据集名称若不符合常规mysql语法,如数字、符号开头,使用反引号包裹。
    支持函数格式为$xx 已支持 $today$now$rand
    例:select $today from 数据集1
    select 字段1 from 数据集1 where 字段2 = $today
    Select 查询内容及where筛选内容支持已经定义的数据集维度指标
    已支持的语法包括 as、where 、 group by 、limit 、分页limit 例:
    select 字段1, 字段2 as 指标2 from 数据集1 where 字段1 in ('a', 'b') group by 字段2 limit 2, 100
    p.s limit限制若超过接口限制会被限制为接口支持的大小

  • 出参说明

{
    "code": "aeolus/ok",
    "data":"xxxxxxx", // query_id
    "msg": "成功"
}
  • 备注

4.3 通过接口输出数据到csv文件下载链接

  • 支持版本56.1版本及以上

  • 权限需求

    资源

    权限

    数据集

    read

  • 接口描述与说明获取数据集数据,已支持ck引擎,行数限制100000,入参为queryId获取结果。

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

  • cURL示例

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

    名称

    类型

    必选

    含义说明

    queryId

    string

    传入上次返回的queryId,结果生成后保存半小时

  • 出参说明

    # data 为空说明文件尚未生成
    {
        "code": "aeolus/ok",
        "data": {"url":"xxxxxxx"},
        "msg": "成功"
    }
    
  • 备注