
# API版本选择建议
当前MRS服务对外API提供云服务自定义规范的API V1.1和V2两类接口，V2版本目前仅部分接口支持，主要用于提交作业和提交SQL语句。在接口功能相同的情况下，推荐您优先使用V2接口。
- MRS所有版本均支持V1.1接口。
- 针对MRS 1.X版本的集群，MRS 1.8.7及之后版本支持V2接口。
- 针对MRS 2.X版本的集群，MRS 2.0.3及之后版本支持V2接口。
在某些功能上V2接口以V1.1接口为基础，在功能上做了如下功能增强：
- 支持安全集群提交作业。
- 支持HiveSql、Spark python和Flink作业。
- 支持SparkSql和SparkScript结果查询。
整体API及对应功能列表详见[API概览](https://support.huaweicloud.com/api-mrs/mrs_02_0007.html)。
#### API接口调用流控说明
MapReduce服务对服务端API设置了调用次数限制，避免出现短时间内重复调用API导致服务中断的情况。
![](https://support.huaweicloud.com/api-mrs/public_sys-resources/notice_3.0-zh-cn.png)
如果调用MRS API时，返回了"APIGW.0308"错误信息，是触发了API的流控限制，需要参考下表中的流控值，调整调用API的间隔时间，控制请求的发送速度；或者等待一段时间后，再发送API请求。
"APIGW"开头的错误码列表，详见[错误码说明](https://support.huaweicloud.com/devg-apisign/api-sign-errorcode.html)。
表1MRS API接口流控限制 
| 版本   | 接口分类       | 接口名称               | 单租户接口流控  |
|:---|:---|:---|:---|
| V2   | 集群管理接口     | 创建集群               | 60次/分钟   |
| V2   | 集群管理接口     | 修改集群名称             | 60次/分钟   |
| V2   | 集群管理接口     | 创建集群并提交作业          | 60次/分钟   |
| V2   | 集群管理接口     | 扩容集群               | 60次/分钟   |
| V2   | 集群管理接口     | 缩容集群               | 60次/分钟   |
| V2   | 集群管理接口     | 集群添加组件             | 60次/分钟   |
| V2   | 集群管理接口     | 查询集群节点列表           | 200次/分钟  |
| V2   | 作业管理接口     | 新增并执行作业            | 60次/分钟   |
| V2   | 作业管理接口     | 查询作业列表信息           | 1000次/分钟 |
| V2   | 作业管理接口     | 查询单个作业信息           | 1000次/分钟 |
| V2   | 作业管理接口     | 终止作业               | 60次/分钟   |
| V2   | 作业管理接口     | 获取SQL结果            | 1000次/分钟 |
| V2   | 作业管理接口     | 批量删除作业             | 60次/分钟   |
| V2   | 弹性伸缩接口     | 查看弹性伸缩策略           | 1000次/分钟 |
| V2   | 弹性伸缩接口     | 更新弹性伸缩策略           | 60次/分钟   |
| V2   | 弹性伸缩接口     | 删除弹性伸缩策略           | 60次/分钟   |
| V2   | 弹性伸缩接口     | 创建弹性伸缩策略           | 60次/分钟   |
| V2   | 集群HDFS文件接口 | 获取指定目录文件列表         | 1000次/分钟 |
| V2   | SQL接口      | 提交SQL语句            | 60次/分钟   |
| V2   | SQL接口      | 查询SQL结果            | 1000次/分钟 |
| V2   | SQL接口      | 取消SQL执行任务          | 60次/分钟   |
| V2   | 委托管理       | 查询用户（组）与IAM委托的映射关系 | 1000次/分钟 |
| V2   | 委托管理       | 更新用户（组）与IAM委托的映射关系 | 60次/分钟   |
| V2   | 数据连接管理     | 创建数据连接             | 60次/分钟   |
| V2   | 数据连接管理     | 查询数据连接列表           | 1000次/分钟 |
| V2   | 数据连接管理     | 更新数据连接             | 60次/分钟   |
| V2   | 数据连接管理     | 删除数据连接             | 60次/分钟   |
| V2   | 版本元数据查询    | 展示MRS版本列表          | 1000次/分钟 |
| V2   | 版本元数据查询    | 查询MRS集群版本可用的规格     | 1000次/分钟 |
| V2   | IAM同步管理接口  | 获取已经同步的IAM用户和用户组   | 1000次/分钟 |
| V2   | IAM同步管理接口  | IAM同步              | 60次/分钟   |
| V2   | IAM同步管理接口  | 指定用户、用户组取消同步       | 60次/分钟   |
| V2   | 标签管理接口     | 集群操作默认标签           | 60次/分钟   |
| V2   | 标签管理接口     | 查询默认标签状态           | 1000次/分钟 |
| V2   | 标签管理接口     | 查询标签配额             | 1000次/分钟 |
| V1.1 | 集群管理接口     | 创建集群并执行作业          | 60次/分钟   |
| V1.1 | 集群管理接口     | 调整集群节点             | 60次/分钟   |
| V1.1 | 集群管理接口     | 查询集群列表             | 1000次/分钟 |
| V1.1 | 集群管理接口     | 查询集群详情             | 1000次/分钟 |
| V1.1 | 集群管理接口     | 查询主机列表             | 1000次/分钟 |
| V1.1 | 集群管理接口     | 删除集群               | 60次/分钟   |
| V1.1 | 弹性伸缩接口     | 配置弹性伸缩规则           | 60次/分钟   |
| V1.1 | 标签管理接口     | 给指定集群添加标签          | 60次/分钟   |
| V1.1 | 标签管理接口     | 查询指定集群的标签          | 1000次/分钟 |
| V1.1 | 标签管理接口     | 删除指定集群的标签          | 60次/分钟   |
| V1.1 | 标签管理接口     | 批量添加集群标签           | 60次/分钟   |
| V1.1 | 标签管理接口     | 批量删除集群标签           | 60次/分钟   |
| V1.1 | 标签管理接口     | 查询所有标签             | 1000次/分钟 |
| V1.1 | 标签管理接口     | 查询特定标签的集群列表        | 1000次/分钟 |
| V1.1 | 可用区        | 查询可用区信息            | 1000次/分钟 |
| V1.1 | 版本元数据查询    | 查询对应版本元数据          | 1000次/分钟 |
   
