新增数据集
接口说明
本接口用于在指标平台中创建一个数据集。
接口 URL
anymetrics_host:anymetrics_port 获取方式请参考:调用方式。
公共请求参数
| 参数 | 类型 | 是否必选 | 描述 |
|---|---|---|---|
tenant-id |
String | 是 | 租户 ID,用于标识指标查询内容所在的租户。 |
auth-type |
String | 是 | 认证方式,支持 UID、TOKEN、ACCOUNT、APIKEY。 |
auth-value |
String | 是 | 与 auth-type 对应的认证值。 |
公共参数获取方式
tenant-id 可在 Aloudata CAN 顶部导航栏选择指标应用,左侧菜单栏选择 API 集成,在 API 集成界面获取;auth-value 请按 auth-type 填写对应认证值。

请求参数
请求参数总览
| 参数 | 类型 | 是否必选 | 描述 | 示例值 |
|---|---|---|---|---|
name |
String | 是 | 数据集编码名,全局唯一,支持英文、数字、下划线。 | datasetName |
displayName |
String | 是 | 数据集显示名。 | dataset123 |
description |
String | 否 | 数据集描述。 | 交易记录数据集 |
categoryId |
String | 否 | 类目 ID,用于将数据集归入某个分类目录。 | - |
sourceInfo |
Object | 是 | 数据源信息,指定数据集的底层数据来源。详情见 sourceInfo 参数详情。 | - |
defColumns |
Array | 否 | 数据集列定义。不传时系统自动从数据源拉取全部列。详情见 defColumns 参数详情。 | - |
partitionMapping |
Object | 否 | 分区映射配置,用于加速查询场景。 | - |
filterExpr |
String | 否 | 数据集级过滤条件,expr 表达式字符串,如 [column1] > 10。创建后,该数据集的所有查询都会自动追加此过滤条件。 |
- |
sourceInfo 参数详情
| 参数 | 类型 | 是否必选 | 描述 | 示例值 |
|---|---|---|---|---|
name |
String | 是 | 来源数据名称,物理表名。 | datet |
displayName |
String | 是 | 来源数据显示名。 | dataset123 |
description |
String | 是 | 来源表描述。 | 交易记录数据集 |
content |
String | 是 | 来源数据标识。TABLE 类型传物理表 GUID(如 engine.catalog.schema.table);SQL 类型传 SQL 语句;FILE 类型传文件 ID。 |
starrocks.`default_catalog.jingming`.datet |
type |
String | 是 | 来源数据类型,取值为 TABLE 或 SQL。 |
TABLE |
datasourceItems |
Array | 是 | 数据源项数组,目前仅支持一个元素,需包含数据源 GUID、名称及引擎类型。 | [{"id":"jmsr","name":"jmsR","queryEngineType":"STARROCKS"}] |
若来源类型为 TABLE,content 需填写物理表的 GUID;若来源类型为 SQL,content 需填写具体 SQL 语句。
datasourceItems[] 参数详情
| 字段 | 类型 | 是否必选 | 说明 |
|---|---|---|---|
id |
String | 是 | 数据源 ID,即数据源的 GUID。 |
name |
String | 是 | 数据源名称。 |
queryEngineType |
String | 是 | 查询引擎类型,枚举值包括 AIR、STARROCKS、HOLOGRES、DATABRICKS、GAUSS、ADB、HUAWEI_DWS 等。 |
defColumns 参数详情
| 子参数 | 类型 | 是否必选 | 描述 |
|---|---|---|---|
name |
String | 是 | 字段名称,不可修改。 |
displayName |
String | 是 | 字段展示名称。 |
description |
String | 否 | 列描述。 |
type |
String | 是 | 列类型,枚举值为 DIMENSION、MEASURE。 |
expr |
String | 是 | 字段公式,如 ['datet'/'date_type']。 |
sourceColumn |
String | 否 | 来源字段,物理表字段时必填。 |
expr 列类型转换函数
通过在 expr 中使用类型转换函数,可以将物理列转换为其他数据类型。使用转换函数时,originDataType 应设为转换后的目标类型。
| 函数名 | 显示名 | 转换后 originDataType |
expr 格式 |
说明 |
|---|---|---|---|---|
Text |
文本 | VARCHAR |
Text(列引用) |
任意类型转文本。 |
Int |
整数 | BIGINT |
Int(列引用) |
任意类型转整数。 |
Double |
小数 | DOUBLE |
Double(列引用) |
任意类型转浮点小数。 |
Decimal |
高精度小数 | DECIMAL |
Decimal(列引用, 精度) |
任意类型转精确小数,第二个参数为小数位数。 |
Date |
日期 | DATE |
Date(列引用) 或 Date(列引用, "格式") |
转为日期,文本列需指定格式。 |
DateTime |
日期时间 | DATETIME |
DateTime(列引用) 或 DateTime(列引用, "格式") |
转为日期时间,文本列需指定格式。 |
Bool |
布尔 | BOOLEAN |
Bool(列引用) |
任意类型转布尔。 |
Json |
JSON | JSON |
Json(列引用) |
文本转 JSON。 |
其中,“列引用”为 ['表名'/'列名'] 格式。
示例:
{
{
"description": "普通物理列,无转换",
"expr": "['my_table'/'amount']"
},
{
"description": "INT 转高精度小数,保留 2 位",
"expr": "Decimal(['my_table'/'amount'], 2)"
},
{
"description": "INT 转文本",
"expr": "Text(['my_table'/'amount'])"
},
{
"description": "VARCHAR 转日期,文本列必须指定格式",
"expr": "Date(['my_table'/'date_str'], \"yyyy-MM-dd\")"
},
{
"description": "DATE 转日期时间,非文本列不需要格式参数",
"expr": "DateTime(['my_table'/'create_date'])"
}
}
注意事项:
Date和DateTime的源列是文本类型时,必须传第二个参数指定日期格式字符串,否则无法解析。- 可用的日期格式包括
"yyyy-MM-dd"、"yyyy-MM-dd HH:mm:ss"等标准 Java 日期格式。 Decimal的精度参数为整数,表示小数位数,前端默认值为 2。
响应参数
入参示例
数据源表创建数据集
{
"name": "multi_test_product1",
"displayName": "multi_test_product1",
"description": "",
"categoryId": "77e32b47-622d-4c5d-9d5c-45cfa7dbd0d7",
"sourceInfo": {
"name": "multi_test_product",
"displayName": "multi_test_product",
"content": "aloudata_can_datasource.`xydb.public`.multi_test_product",
"type": "TABLE",
"datasourceItems": [
{
"id": "aloudata_can_datasource",
"name": "aloudata_can_datasource",
"queryEngineType": "STARROCKS"
}
]
},
"defColumns": [
{
"name": "id",
"displayName": "id",
"description": "id",
"type": "MEASURE",
"originDataType": "INT",
"sourceColumn": "id",
"expr": "['multi_test_product'/'id']"
},
{
"name": "stock",
"displayName": "stock",
"description": "stock",
"type": "MEASURE",
"originDataType": "DECIMAL",
"sourceColumn": "stock",
"expr": "Decimal(['multi_test_product'/'stock'], 2)"
}
]
}