根据AWS Athena限制,您可以一次提交最多20个相同类型的查询,但这是软限制,可以根据请求增加。我使用
2019-09-26更新: 刚刚在 Presto 文档中发现了 HIVE 连接器,其中有一个 AWS Glue Catalog Configuration Properties 部分。在那里我们可以看到:
“hive.metastore.glue.max-connections”:连接到 Glue 的最大并发连接数(默认为5)。
这让我想知道它是否与我的问题有关。据我所知,Athena 只是运行在配置为将 AWS Glue 数据目录作为 Metastore 使用的 EMR 集群上的 Presto。 那么,如果我的问题源于 Athena 的 EMR 集群仅使用 Glue 的并发连接的默认值,即 5,这正好是在我的情况下实际上正在执行的平均并发查询的数量。
最近,Athena团队为Athena部署了许多新功能。尽管
boto3
与Athena交互,我的脚本提交16个CTAS查询,每个查询需要约2分钟才能完成。在AWS帐户中,只有我在使用Athena服务。然而,当我通过控制台查看查询状态时,我发现只有少数查询(平均5个)实际上正在执行,尽管它们全部处于“运行”状态。以下是通常在Athena历史选项卡中看到的内容:
我知道,当我提交查询到 Athena 后,它会根据整体服务负载和进入的请求量分配资源来处理查询。但我尝试在不同的日期和时间运行它们,仍然会有大约5个查询同时执行。
那么我的问题是,这应该是这样的吗?如果是这样的话,那么最多能提交20个查询的能力的意义是什么?如果大约有15个查询处于空闲状态并等待可用插槽,那么这还有什么意义呢?2019-09-26更新: 刚刚在 Presto 文档中发现了 HIVE 连接器,其中有一个 AWS Glue Catalog Configuration Properties 部分。在那里我们可以看到:
“hive.metastore.glue.max-connections”:连接到 Glue 的最大并发连接数(默认为5)。
这让我想知道它是否与我的问题有关。据我所知,Athena 只是运行在配置为将 AWS Glue 数据目录作为 Metastore 使用的 EMR 集群上的 Presto。 那么,如果我的问题源于 Athena 的 EMR 集群仅使用 Glue 的并发连接的默认值,即 5,这正好是在我的情况下实际上正在执行的平均并发查询的数量。
最近,Athena团队为Athena部署了许多新功能。尽管
QUEUED
已经在状态枚举中存在一段时间,但直到现在才被使用。因此,现在我可以在历史选项卡中获得正确的查询状态信息,但其他所有内容仍然保持不变。
另外,另一篇文章也发表了类似的问题。