数据聚合查询服务
更新时间:2018-05-30 14:09:37
查询数据
API定义相关
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/datacenter/data/aggregate/query | 1.0.0 | 查询设备的聚合数据 | 是,客户端SDK需启用身份的鉴权 |
业务请求参数列表
参数名 | 参数类型 | 详细描述 |
---|---|---|
tableName | String | 表名称, |
expr | 查询的条件表达式 op: 支持 and/or col: 列名 comp: 比较符,支持 >,<,>=,<=,=,!=,in,not-in,like,not-like val: 待比较的值。 示例见下方sample | |
cols | List | 需要查询的列 |
orderby | 排序设置 col: 列名 type:“asc”(升序),“desc”(降序)。 示例:[{“col”:“id”,“type”:“asc”}] | |
page | 分页设置 to: 第几页,从1开始 size: 页面大小 total: 该字段仅在返回的结果中存在,请求参数不需要加此参数。 示例: {“to”:1,“size”:10} |
参数格式
{
"expr":{
"op":"and",
"filters": [
{"col": "dim_time","comp": "=","val": "2015-7-13"},
{"col": "dim_time","comp": ">=","val": "2015-7-13"},
{"col": "pm2dot5","comp": "<=","val": 500},
{"col": "province","comp": "in","val": ["a", "b"]},
{"col": "city","comp": "not-in","val": ["c", "d"]}]
},
"cols": ["dim_time", "province", "city", "pm2dot5"],
"orderby": [
{"col": "dim_time","type": "asc"},
{"col": "pm2dot5","type": "desc"}],
"page": {"to": 1,"size": 10},
}
业务响应参数列表
参数名 | 参数类型 | 详细描述 |
---|---|---|
code | INT | |
data | JSONObject | 自建表查询结果 |
message | String | 错误信息提示,不通错误提示不同 |
response 格式
// 成功的返回值,data的具体内容取决于API的返回值
{
"code": 200,
"data": xxxx
}
// 失败的返回值
{
"code": 460,
"message": "request parameter error."
}
完整请求、响应示例
body
{
"id": "816e03c0-1f00-44a2-aedb-1b34de4392c1",
"params": {
"userContextDTO": {},
"dataQueryJson": {
"cols": ["iot_id",
"attribute",
"count_Num",
"date_time"],
"expr": {
"filters": [{
"col": "date_time",
"comp": ">=",
"val": "2018-04-18 00:00:01",
"valueType": "int"
},
{
"col": "date_time",
"comp": "<",
"val": "2018-04-23 00:00:01",
"valueType": "int"
}],
"op": "and"
},
"page": {
"size": 3,
"to": 1
},
"tableName": "ads_ilop_kv_count_di"
}
},
"request": {
"apiVer": "1.0.0"
},
"version": "1.0"
}
response
{
"code": 200,
"data": {
"data": [{
"count_Num": 7,
"iot_id": "BPLjau0xw3CyuRKcOtUj0010348a00",
"date_time": "2018-04-19 00:00:00",
"attribute": "_sys_device_pid"
}],
"params": {
"page": {
"total": 1,
"pageSize": 3,
"pageid": 1
}
}
},
"id": "816e03c0-1f00-44a2-aedb-1b34de4392c1"
}
接口支持的表以及列信息</span>
1、在查询某属性行数接口时采用表
ads_ilop_kv_count_di
2、在查询明细、最大值、最小值和平均值时采用表
dwd_ilop_timeline_kv_di
--数据通用聚合服务表
drop table `ads_ilop_kv_count_di`;
CREATE TABLE `ads_ilop_kv_count_di` (
`scope_id` varchar(100) NOT NULL COMMENT '资源隔离id',
`iot_id` varchar(100) NOT NULL COMMENT '设备id',
`attribute` varchar(50) NOT NULL COMMENT '属性名',
`count_num` bigint(11) DEFAULT 0 COMMENT '行数',
`date_time` datetime NOT NULL COMMENT '统计日期,格式为yyyy-mm-dd hh:MM:ss',
PRIMARY KEY (`date_time`,`scope_id`,`iot_id`,`attribute`)
) COMMENT 'ilop数据通用聚合服务属性行数表';
drop table `dwd_ilop_timeline_kv_di`;
CREATE TABLE `dwd_ilop_timeline_kv_di`
(
`scope_id` varchar(100) NOT NULL COMMENT '资源隔离id',
`iot_id` varchar(100) NOT NULL COMMENT '设备id',
`attribute` varchar(20) NOT NULL COMMENT '属性名',
`col_value` varchar(100) COMMENT '属性值',
`client_date` datetime NOT NULL COMMENT '客户端时间',
`service_date` datetime NOT NULL COMMENT '服务端时间',
`date_time` datetime NOT NULL COMMENT '统计日期,格式为yyyy-mm-dd hh:MM:ss',
PRIMARY KEY (`date_time`,`scope_id`,`iot_id`,`attribute`,`col_value`,`client_date`,`service_date`)
) COMMENT 'ilop设备能力属性信息明细表'
;