全部产品
阿里云办公

通用数据集查询接口

更新时间:2018-07-23 15:50:40

本文介绍了通用数据集查询接口。关于下钻数据集和通用数据集的区别,请参考通用维度与下钻维度

描述

ARMSQueryDataSet 主要用于查询 ARMS 中的数据集的数据。

API 名称 Request Response
ARMSQueryDataSet ARMSQueryDataSetRequest ARMSQueryDataSetResponse

请求参数

请求参数包含 POP 公共参数和业务参数两个部分。公共请求参数请参考 POP 参数说明

业务参数说明

阿里云将用户所有的请求参数封装在一个 Request 中,返回一个 Response。

ARMSQueryDataSetRequest 包含以下字段:

字段名称 字段类型 设置方法 字段含义 是否必选 备注
datasetId Long setDatasetId 数据集 ID
minTime Long setMinTime 查询数据的起始时间
maxTime Long setMaxTime 查询数据的截止时间
intervalInSec Integer setIntervalInSec 数据片的时间间隔
measures List[String] setMesures 查询指标列表 列表最长支持 3 个元素。如果为空,则返回所有指标数据
requiredDims List[Dimension] setRequiredDims 通用数据集的必选维度 通用数据集字段
optionalDims List[Dimension] setOptionalDims 通用数据集的可选维度 通用数据集字段
orderByKey String setOrderByKey orderBy 指标
limit Integer setLimit 限制的返回个数
reduceTail Boolean setReduceTail 是否把 limit 之外的数据合并到一起
securityToken String setSecurityToken STS securityToken 采用 RAM 用户角色模式时需要设置该字段。详情请参考创建 RAM 用户角色并授权

Dimensions 复合字段说明

字段名称 字段类型 设置方法 字段含义 备注
key String setKey 维度名称 如:区域
value String setValue 维度值 如:北京
type String setType 取值方式 分别为:STATIC, ALL, DISABLED
  • 当您想选择该维度下面的所有的维度值时,type 设置为 ALL,value 为 null。
  • 当您想选择该维度下面的其中某个维度值时,type 设置为 STATIC(静态值),value 为输入维度值。
  • 当您不想选择该维度时候,可以直接忽略,或者将 type 设置为 DISABLED。

返回参数

返回值为 JSON 串形式返回,可通过 ARMSQueryDataSetResponse.getdata() 获取。

ARMSQueryDataSetResponse 主要字段有:

字段名称 字段含义 备注
measures 数据点中的指标
resultSize 返回的所有数据点个数
dimData 多条时序数据

完整使用示例

  1. 在不选择维度情况下,查询所有数据的汇总信息:

    1. include_once 'aliyun-php-sdk-core/Config.php';
    2. include_once 'aliyun-php-sdk-arms/ARMS/Request/V20180620/ARMSQueryDataSetRequest.php';
    3. include_once 'aliyun-php-sdk-arms/ARMS/Request/V20180620/WhereInDimQueryRequest.php';
    4. use ARMS\Request\V20180620\ARMSQueryDataSetRequest as ARMSQueryDataSetRequest;
    5. //设置连接参数,其中,endpoint为例如 "cn-hangzhou","cn-beijing",等, AK, SK请根据您的实际情况填写,
    6. $iClientProfile = DefaultProfile::getProfile("cn-hangzhou", "your_ak", "your_sk");
    7. $client = new DefaultAcsClient($iClientProfile);
    8. $request = new ARMSQueryDataSetRequest();
    9. //填写正确的数据集ID
    10. $request->setDatasetId(12221);
    11. //时间粒度,比如为60秒
    12. $request->setIntervalInSec(60);
    13. //最小时间,本例为当前时间的一小时前
    14. $request->setMinTime((int)time()*1000 - 3600000);
    15. //最大时间,可设置为当前时间
    16. $request->setMaxTime((int)time()*1000);
    17. // ****后续的2、3示例代码插入此处****
    18. //发送请求
    19. $response = $client->doAction($request);
    20. //打印请求
    21. print_r( $response->getBody());
  2. 请检查您是否配置了“必选维度”。如果没有配置,请忽略该本注意事项。如果配置了“必选维度”,那么在查询时一定要设置“必选维度”相关配置,否则无法进行查询。

    1. $requireddims = array (array("Key"=>"类目", "Value" => "女装", "Type" => "STATIC"));
    2. $request->setRequiredDims($requireddims);
  3. 选择要查询的指标列表,返回结果只返回您指定的指标:

    1. $measures = array ("COUNT__line");
    2. $request->setMeasuress($measures);
本文导读目录