使用AWS re:Post即您表示您同意 AWS re:Post 使用条款

如何解决 Athena 中的服务配额错误?

1 分钟阅读
0

我想解决 Amazon Athena 中的服务配额错误。

简短描述

如果您的查询由于服务配额错误而在 Athena 中失败,则可能会收到以下错误响应之一:

  • TooManyRequestsException
  • ThrottlingException
  • Query Timeout
  • QueryString failure

要检查不同 AWS 区域的 Athena 端点和配额的默认值,请参阅服务配额

解决方法

**注意:**在开始之前,请检查您当前的 Athena 配额。

TooManyRequestsException

DML 或 DDL 查询配额包含正在运行和排队的查询。如果您提交的查询数量超过了 DML 或 DDL 查询的指定限制,则会出现 TooManyRequestsException 错误响应。Athena 中常见的 DDL 查询包括 ALTER TABLE ADD PARTITIONCREATE TABLEDROP。Athena 中常见的 DML 查询包括 SELECTCREATE TABLE AS (CTAS)INSERT INTO

要检查当前队列,请使用以下方法之一:

**注意:**如果在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI

  • 打开 Athena 控制台,然后导航到 recent queries(最近的查询)选项卡以查看所有活动查询。
  • 运行 list-query-executions AWS CLI 命令以查看所有可用的查询 ID。

**注意:**当您提高查询并发量时,您可以提交更多查询,但没有更多资源用于查询。在 Athena 中有资源运行查询之前,查询保持在排队状态

要解决此错误,请使用 Athena 的预调配容量来增加查询并发量、管理访问容量的工作负载以及在工作负载之间共享容量。有关详细信息,请参阅管理查询处理能力。有关容量预留定价的详细信息,请参阅 Amazon Athena 定价

有关进一步的故障排除,请参阅如何解决 Amazon Athena 中的 TooManyRequestsException 错误?

ThrottlingException

Athena 为每个 AWS 账户设有 API 调用配额。如果您超过了 API 配额,则会收到类似于以下内容的错误消息:

“ClientError: An error occurred (ThrottlingException) when calling the <API_name> operation: Rate exceeded.(ClientError:调用 <API_name> 操作时出错 (ThrottlingException):超出速率。)”

要解决此错误,请降低 API 调用的频率并使用重试逻辑。有关详细信息,请参阅管理和监控工作负载中的 API 节流重试逻辑部分。

查询超时

当查询超过预定义的时间限制时,就会发生超时。对于 DML 查询,预定义的时间限制为 30 分钟。要解决此错误,请参阅如何解决 Athena 中的“Query Timeout(查询超时)”错误?

QueryString 失败

Athena 中的最大查询字符串长度为 262,144 字节 (B),您无法调整此配额。为防止查询字符串失败,请将长查询拆分为较小的查询。有关详细信息,请参阅如何在 Amazon Athena 中增加最大查询字符串长度?

AWS 官方
AWS 官方已更新 9 个月前