主题
数据集粒度
数据集粒度说明
数据集粒度定义
数据集粒度定义了维度和限定条件的组合,为业务指标分析服务。
数据集粒度结构说明
字段 | 类型 | 描述 |
---|---|---|
id | LONG | 字段的 id |
appId | LONG | 字段所在的应用的 id |
datasetId | LONG | 字段所在的数据集的 id |
title | STRING | 粒度的名称 |
where | HE | 过滤条件 |
dimensions | JSONOBJECT 数组 | 维度字段列表 |
dimensions.[].datasetId | LONG | 维度字段所在数据集的 id |
dimensions.[].fieldName | STRING | 维度字段的字段名 |
dimensions.[].label | STRING | 维度字段的 label |
timeDimension | JSONOBJECT | 时间维度信息 |
timeDimension.datasetId | LONG | 时间维度字段所在数据集的 id |
timeDimension.fieldName | STRING | 时间维度字段的字段名 |
timeDimension.label | STRING | 时间维度字段的 label |
timeDimension.timeGranularity | STRING | 时间维度的默认计算方式 |
数据集粒度接口说明
新增粒度
请求URL
http
POST /api/apps/${appId}/datasets/{datasetId}/granularitys HTTP/1.1
Content-Type: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
appId | INTEGER | 是 | 数据集所在的应用 ID |
datasetId | INTEGER | 是 | 数据集 ID |
Request Body 参数
返回对象的格式说明
字段 | 类型 | 说明 |
---|---|---|
version | STRING | 当前系统版本哈希值 |
data | OBJECT | 见数据集粒度结构说明 |
接口示例1: 新增粒度
http
POST /api/apps/1/datasets/1/granularitys HTTP/1.1
Content-Type: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
// Request Body:
{
"title": "粒度5",
"dimensions": [
{
"datasetId": 1,
"fieldName": "zh_name",
"label": "zh_name"
},
{
"datasetId": 1,
"fieldName": "prime_genre",
"label": "prime_genre"
},
{
"datasetId": 1,
"fieldName": "pubdate",
"label": "pubdate"
}
],
"timeDimension": {
"label": "pubdate",
"datasetId": 1,
"fieldName": "pubdate",
"timeGranularity": "year"
},
"where": [
{
"kind": "function",
"op": "and",
"args": [
{
"kind": "function",
"op": ">",
"args": [
{
"kind": "field",
"op": "id",
"type": "number"
},
{
"kind": "constant",
"op": 2,
"type": "number"
}
]
}
]
}
]
}
http
HTTP/1.1 200 Ok
Content-Type: application/json
{
"code": 0,
"msg": "success",
"data": {
"id": 3,
"appId": 1,
"datasetId": 1,
"title": "粒度5",
"where": [
{
"kind": "function",
"op": "and",
"args": [
{
"args": [
{
"op": "id",
"kind": "field"
},
{
"op": 2,
"kind": "constant"
}
],
"op": ">",
"kind": "function"
}
]
}
],
"dimensions": [
{
"fieldName": "zh_name",
"datasetId": 1,
"label": "zh_name"
},
{
"fieldName": "prime_genre",
"datasetId": 1,
"label": "prime_genre"
},
{
"fieldName": "pubdate",
"datasetId": 1,
"label": "pubdate"
}
],
"timeDimension": {
"fieldName": "pubdate",
"timeGranularity": "year",
"datasetId": 1,
"label": "pubdate"
},
"createdBy": 2,
"createdAt": "2025-05-19 16:55:17",
"updatedBy": 2,
"updatedAt": "2025-05-19 16:55:17"
}
}
查询粒度
请求URL
http
GET /api/apps/${appId}/datasets/{datasetId}/granularitys HTTP/1.1
Accept: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
appId | INTEGER | 是 | 数据集所在的应用 ID |
datasetId | INTEGER | 是 | 数据集 ID |
q | STRING | 否 | 搜索的关键字 |
返回对象的格式说明
字段 | 类型 | 说明 |
---|---|---|
version | STRING | 当前系统版本哈希值 |
data | OBJECT | 见数据集粒度结构说明 |
编辑指定的粒度
请求URL
http
PUT /api/apps/${appId}/datasets/{datasetId}/granularitys/{granularityId} HTTP/1.1
Accept: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
appId | INTEGER | 是 | 数据集所在的应用 ID |
datasetId | INTEGER | 是 | 数据集 ID |
granularityId | INTEGER | 是 | 粒度 ID |
返回对象的格式说明
字段 | 类型 | 说明 |
---|---|---|
version | STRING | 当前系统版本哈希值 |
data | OBJECT | 见数据集粒度结构说明 |
删除指定的粒度
请求URL
http
DELETE /api/apps/${appId}/datasets/{datasetId}/granularitys/{granularityId} HTTP/1.1
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
appId | INTEGER | 是 | 数据集所在的应用 ID |
datasetId | INTEGER | 是 | 数据集 ID |
granularityId | INTEGER | 是 | 粒度 ID |
返回对象的格式说明
字段 | 类型 | 说明 |
---|---|---|
version | STRING | 当前系统版本哈希值 |
msg | STRING | 执行成功返回 success |