本文介绍了数据可视化分析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名称 | API描述 | QPS(次/秒) | 超时时间(秒) |
组织用户管理 | 添加组织成员。 | 50 | 10 | |
更新组织下指定成员的信息。 | 50 | 10 | ||
获取组织成员列表信息。 | 30 | 10 | ||
删除指定组织用户。 | 50 | 10 | ||
根据用户ID查询组织成员信息。 | 30 | 10 | ||
根据阿里云账号ID或阿里云账号名称查询组织成员信息。 | 30 | 10 | ||
用户标签管理 | 新增组织成员标签元信息。 | 50 | 10 | |
删除组织成员标签元信息。 | 50 | 10 | ||
查询组织内成员标签元信息列表。 | 30 | 10 | ||
更改组织成员的标签值。 | 50 | 10 | ||
查询特定用户的标签值列表。 | 30 | 10 | ||
更新组织成员标签元信息。 | 50 | 10 | ||
组织用户组管理 | 添加组织成员到指定用户组。 | 50 | 10 | |
批量添加用户至指定用户组。 | 50 | 10 | ||
删除指定用户组下的指定成员。 | 50 | 10 | ||
在指定组织中新建用户组。 | 50 | 10 | ||
删除指定组织的用户组。 | 50 | 10 | ||
更新组织下指定用户组的信息。 | 50 | 10 | ||
获取用户组下的成员列表信息。 | 30 | 10 | ||
获取指定父用户组下的子用户组信息。 | 30 | 10 | ||
根据用户组名称关键字搜索用户组信息。 | 30 | 10 | ||
查询用户所属用户组列表。 | 30 | 10 | ||
使用户退出所有用户组。 | 50 | 10 | ||
用户批量退出用户组。 | 50 | 10 | ||
根据用户组ID批量查询用户组信息。 | 50 | 10 | ||
报表分享授权管理 | 获取授权列表信息。 | 30 | 10 | |
为报表添加授权策略。 | 50 | 10 | ||
获取授权给用户的作品列表。 | 30 | 10 | ||
删除该报表的授权策略。 | 50 | 10 | ||
数据门户菜单授权管理 | 获取门户菜单列表。 | 30 | 10 | |
获取门户菜单的授权列表。 | 30 | 10 | ||
批量新增数据门户菜单授权。 | 50 | 10 | ||
批量取消数据门户菜单授权。 | 50 | 10 | ||
修改数据门户菜单是否仅授权可见。 | 50 | 10 | ||
行级权限管理 | 获取数据集行级权限开关状态。 | 30 | 10 | |
开启/关闭数据集行列权限。 | 50 | 10 | ||
获取数据集行列权限配置信息。 | 30 | 10 | ||
设置单条数据集行列权限配置信息。 | 50 | 10 | ||
删除数据集行列权限单条规则配置信息。 | 50 | 10 | ||
针对单条规则增量添加行级权限对应的用户。 | 50 | 10 | ||
针对单条规则删除行级权限对应的用户。 | 50 | 10 | ||
针对行级或列级权限做额外配置。 | 50 | 10 | ||
获取数据集的行列权限白名单列表。 | 30 | 10 | ||
全量设置行列权限白名单。 | 50 | 10 | ||
增量设置行列权限白名单。 | 50 | 10 | ||
工作空间管理 | 更改空间成员角色。 | 50 | 10 | |
获取指定工作空间下的成员列表信息。 | 30 | 10 | ||
删除指定工作空间的成员。 | 50 | 10 | ||
获取当前组织下的工作空间列表信息。 | 30 | 10 | ||
在指定的工作空间添加单个成员。 | 50 | 10 | ||
在指定的工作空间批量添加工作空间成员。 | 50 | 10 | ||
获取指定工作空间下成员角色信息。 | 30 | 10 | ||
批量更新工作空间成员的角色信息。 | 50 | 10 | ||
报表资源管理 | 获取该组织下的报表列表信息。 | 30 | 10 | |
获取该组织中指定空间下的报表列表信息。 | 30 | 10 | ||
获取用户有权限查看的报表列表信息。 | 30 | 10 | ||
校验用户是否有权限查看报表。 | 50 | 10 | ||
获取组织下报表嵌入信息。 | 30 | 10 | ||
更改报表的嵌入状态。 | 50 | 10 | ||
查询报表的相关信息。 | 30 | 10 | ||
查询指定报表的血缘信息。 | 30 | 10 | ||
数据集资源管理 | 获取指定工作空间的数据集列表信息。 | 30 | 10 | |
获取指定数据集的详情。 | 30 | 10 | ||
获取数据集详情。 | 30 | 10 | ||
收藏管理 | 获取收藏列表。 | 30 | 10 | |
添加收藏。 | 50 | 10 | ||
取消收藏。 | 50 | 10 | ||
首页管理 | 获取指定用户首页我的看板的授权作品列表。 | 30 | 10 | |
获取指定用户首页我的看板的收藏作品列表。 | 30 | 10 | ||
获取指定用户首页我的看板的最近浏览或常看作品列表。 | 30 | 10 | ||
数据服务 | 调用在数据服务中已创建的API。 | 10 | 60 | |
嵌入分析 | 生成Ticket三方嵌入时的票据Ticket信息。 | 50 | 10 | |
获取用户嵌入报表的Ticket详情。 | 30 | 10 | ||
删除用户嵌入报表的Ticket。 | 50 | 10 | ||
更新嵌入报表的Ticket的失效时间。 | 50 | 10 | ||
更新嵌入报表的Ticket票据数量。 | 50 | 10 | ||
开放审批 | 自定义审批流回调接口,用户自行对Quick BI的审批流进行处理。 | 30 | 10 |
查看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=并发数/平均响应时间。