本文介绍了数据可视化分析Quick BI提供的SDK语言版本,列举了最新版本SDK的获取地址。
SDK概览
简介
数据可视化分析Quick BI SDK封装了API,以访问密钥(AccessKey)识别调用者身份,提供自动签名等功能,方便您通过API创建和管理资源。
实现数据可视化分析Quick BI功能需要您同时安装Quick BI SDK和阿里云核心库。以Java SDK为例,您需要下载aliyun-java-sdk-core以及aliyun-java-sdk-quickbi-public。
注意事项
您需要前往阿里云 SDK页面下载SDK并查看使用。
获取已开放的API接口,请参见API概览。
获取阿里云账号的AccessKey ID和AccessKey Secret。
请参见创建AccessKey。
对于需要通过SDK调用API接口的用户,需要同时满足以下两个条件才支持使用SDK:
其阿里云账户至少登录过一次Quick BI。
其阿里云账户需要被授予Quick BI组织管理员的权限。同时管理员也可以通过开放平台首页,授予非管理员用户调用所有API的权限,具体操作请参见 概述 > 访问控制。
支持的开发语言
数据可视化分析Quick BI支持Java、Python、C#等开发。更多SDK的信息,请访问阿里云开放平台。
版本说明
发布版本 | 发布时间 | 变更说明 |
发布版本 | 发布时间 | 变更说明 |
2.0.0 | 2022-03-04 | 开放API V2版本region化输出,上线接口涵盖了原开放API列表中的所有接口。 原开放API列表在开放API V2版本上线后不再维护,后续的新增API接口统一基于V2版本迭代更新。 |
相关链接
阿里云开发者中心汇聚了高频使用的编程语言SDK,提供了Maven项目地址、pip命令、版本说明等信息。更多详情,请访问开发者中心。
SDK调用方式
调用时,需要注意以下几点:
请使用正确的阿里云账户对应的AccessKey ID和AccessKey Secret创建DefaultAcsClient实例并初始化,否则会出现
code: 404, Specified access key is not found. request id: AA7FE476-F206-5C52-95B3-DF35CD30D468
报错。阿里云账户对应的accessKey/secretKey,该阿里云账户被授予Quick BI的组织管理员权限,且至少登录过一次Quick BI,根据实际情况填写。
调用方式详情请参见SDK文档。
API接口的流控说明
以下API接口的Version版本为2022-01-01。
Quick BI公共云和金融云用户均支持调用以下API接口。
仅专业版及以上版本开放API接口调用权限。
请求速率和超时时间
API请求速率无特殊标注情况下,默认为50/1(s)。
API调用超时时间无特殊标注情况下,默认为10s。
以下为特殊标注:
分类 | API接口 | 单位 |
分类 | API接口 | 单位 |
请求速率 | GetMailTaskStatus | 1/1(s) |
ManualRunMailTask 1 | 1/1(s) | |
超时时间 | QueryData | 60s |
QueryDataService | 60s | |
SmartqQueryAbility | 180s |
查看SDK版本
pom.xml
文件中version
的值以SDK获取地址中的最新版本为准。
您可以通过https://mvnrepository.com/artifact/com.aliyun/aliyun-java-sdk-quickbi-public
查看SDK的版本。
如何限制并发的请求QPS不超过限流阈值?
问题描述:由于性能和安全的问题,公共云环境上Quick BI已经开放的API,默认都带有限流配置,在使用并发线程调用Quick BI开放API时,若实际并发请求的QPS超过限流阈值,则接口请求失败。
解决方案:推荐您使用Google的Guava工具组件中的RateLimiter类,进行接口请求的QPS限制。
如果您使用Maven管理Java项目,可以通过在pom.xml文件中添加Maven依赖。
<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>${google.guava.version}</version> </dependency>
pom.xml文件中version的值以获取地址中的最新版本为准,最新版本请参见Guava: Google Core Libraries For Java。
创建和使用RateLimiter。
可以使用
create()
工厂方法创建RateLimiter实例,具体请参见https://www.baeldung.com/guava-rate-limiter。// 创建一个30 QPS的流控RateLimiter。 RateLimiter rateLimiter = RateLimiter.create(30); // 获取许可,如果QPS超过30,则阻塞等待。 rateLimiter.acquire(); // 获得许可,才会进行接口请求。 doSomeAPIRequest();
QPS(Query Per Second)是指,每秒钟请求或任务的数量。
并发数是指系统同时处理的请求或任务的数量。
QPS=并发数/平均响应时间。
- 本页导读 (0)
- SDK概览
- 简介
- 注意事项
- 支持的开发语言
- 版本说明
- 相关链接
- SDK调用方式
- API接口的流控说明
- 请求速率和超时时间
- 查看SDK版本
- 如何限制并发的请求QPS不超过限流阈值?