本文介绍了数据可视化分析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

  • 该阿里云账户被授予Quick BI的组织管理员及权限管理员权限,且至少登录过一次Quick BI,才支持调用SDK。

支持的开发语言

数据可视化分析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(次/秒) 超时时间(秒)
组织用户管理 AddUser 添加组织成员。 50 10
UpdateUser 更新组织下指定成员的信息。 50 10
QueryUserList 获取组织成员列表信息。 30 10
DeleteUser 删除指定组织用户。 50 10
QueryUserInfoByUserId 根据用户ID查询组织成员信息。 30 10
QueryUserInfoByAccount 根据阿里云账号ID或阿里云账号名称查询组织成员信息。 30 10
用户标签管理 AddUserTagMeta 新增组织成员标签元信息。 50 10
DeleteUserTagMeta 删除组织成员标签元信息。 50 10
QueryUserTagMetaList 查询组织内成员标签元信息列表。 30 10
UpdateUserTagValue 更改组织成员的标签值。 50 10
QueryUserTagValueList 查询特定用户的标签值列表。 30 10
UpdateUserTagMeta 更新组织成员标签元信息。 50 10
组织用户组管理 AddUserGroupMember 添加组织成员到指定用户组。 50 10
AddUserGroupMembers 批量添加用户至指定用户组。 50 10
DeleteUserGroupMember 删除指定用户组下的指定成员。 50 10
CreateUserGroup 在指定组织中新建用户组。 50 10
DeleteUserGroup 删除指定组织的用户组。 50 10
UpdateUserGroup 更新组织下指定用户组的信息。 50 10
QueryUserGroupMember 获取用户组下的成员列表信息。 30 10
QueryUserGroupListByParentId 获取指定父用户组下的子用户组信息。 30 10
GetUserGroupInfo 根据用户组名称关键字搜索用户组信息。 30 10
ListUserGroupsByUserId 查询用户所属用户组列表。 30 10
WithdrawAllUserGroups 使用户退出所有用户组。 50 10
DeleteUserGroupMembers 用户批量退出用户组。 50 10
ListByUserGroupId 根据用户组ID批量查询用户组信息。 50 10
报表分享授权管理 QueryShareList 获取授权列表信息。 30 10
AddShareReport 为报表添加授权策略。 50 10
QuerySharesToUserList 获取授权给用户的作品列表。 30 10
CancelReportShare 删除该报表的授权策略。 50 10
数据门户菜单授权管理 ListPortalMenus 获取门户菜单列表。 30 10
ListPortalMenuAuthorization 获取门户菜单的授权列表。 30 10
AuthorizeMenu 批量新增数据门户菜单授权。 50 10
CancelAuthorizationMenu 批量取消数据门户菜单授权。 50 10
ChangeVisibilityModel 修改数据门户菜单是否仅授权可见。 50 10
行级权限管理 QueryDatasetSwitchInfo 获取数据集行级权限开关状态。 30 10
UpdateDataLevelPermissionStatus 开启/关闭数据集行列权限。 50 10
ListCubeDataLevelPermissionConfig 获取数据集行列权限配置信息。 30 10
SetDataLevelPermissionRuleConfig 设置单条数据集行列权限配置信息。 50 10
DeleteDataLevelRuleConfig 删除数据集行列权限单条规则配置信息。 50 10
AddDataLevelPermissionRuleUsers 针对单条规则增量添加行级权限对应的用户。 50 10
DeleteDataLevelPermissionRuleUsers 针对单条规则删除行级权限对应的用户。 50 10
SetDataLevelPermissionExtraConfig 针对行级或列级权限做额外配置。 50 10
ListDataLevelPermissionWhiteList 获取数据集的行列权限白名单列表。 30 10
SetDataLevelPermissionWhiteList 全量设置行列权限白名单。 50 10
AddDataLevelPermissionWhiteList 增量设置行列权限白名单。 50 10
工作空间管理 UpdateWorkspaceUsersRole 更改空间成员角色。 50 10
QueryWorkspaceUserList 获取指定工作空间下的成员列表信息。 30 10
DeleteUserFromWorkspace 删除指定工作空间的成员。 50 10
QueryOrganizationWorkspaceList 获取当前组织下的工作空间列表信息。 30 10
AddUserToWorkspace 在指定的工作空间添加单个成员。 50 10
AddWorkspaceUsers 在指定的工作空间批量添加工作空间成员。 50 10
QueryUserRoleInfoInWorkspace 获取指定工作空间下成员角色信息。 30 10
UpdateWorkspaceUserRole 批量更新工作空间成员的角色信息。 50 10
报表资源管理 QueryWorksByOrganization 获取该组织下的报表列表信息。 30 10
QueryWorksByWorkspace 获取该组织中指定空间下的报表列表信息。 30 10
QueryReadableResourcesListByUserId 获取用户有权限查看的报表列表信息。 30 10
CheckReadable 校验用户是否有权限查看报表。 50 10
QueryEmbeddedInfo 获取组织下报表嵌入信息。 30 10
QueryEmbeddedStaus 查询报表是否已开通嵌入功能。 30 10
UpdateEmbeddedStatus 更改报表的嵌入状态。 50 10
QueryWorks 查询报表的相关信息。 30 10
QueryWorksBloodRelationship 查询指定报表的血缘信息。 30 10
数据集资源管理 QueryDatasetList 获取指定工作空间的数据集列表信息。 30 10
QueryDatasetDetailInfo 获取指定数据集的详情。 30 10
QueryDatasetInfo 获取数据集详情。 30 10
收藏管理 ListCollections 获取收藏列表。 30 10
SaveFavorites 添加收藏。 50 10
CancelCollection 取消收藏。 50 10
首页管理 ListFavoriteReports 获取指定用户首页我的看板的授权作品列表。 30 10
ListSharedReports 获取指定用户首页我的看板的收藏作品列表。 30 10
ListRecentViewReports 获取指定用户首页我的看板的最近浏览或常看作品列表。 30 10
数据服务 QueryDataService 调用在数据服务中已创建的API。 10 60
嵌入分析 CreateTicket 生成Ticket三方嵌入时的票据Ticket信息。 50 10
QueryTicketInfo 获取用户嵌入报表的Ticket详情。 30 10
DeleteTicket 删除用户嵌入报表的Ticket。 50 10
DelayTicketExpireTime 更新嵌入报表的Ticket的失效时间。 50 10
UpdateTicketNum 更新嵌入报表的Ticket票据数量。 50 10
开放审批 ResultCallback 自定义审批流回调接口,用户自行对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限制。
  1. 如果您使用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
  2. 创建和使用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=并发数/平均响应时间。