403超出用户速率限制:每用户限制设置不起作用

时间:2012-07-13 06:51:56

标签: google-bigquery

我正在使用Java客户端API发送一些查询。但是在4到5次查询后我得到了以下错误。

com.google.api.client.auth.oauth2.TokenResponseException: 403 User Rate Limit Exceeded
<HTML>
<HEAD>
<TITLE>User Rate Limit Exceeded</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<H1>User Rate Limit Exceeded</H1>
<H2>Error 403</H2>
</BODY>
</HTML>

因此,我访问了Google API的控制台,并将“每用户限制”增加到100.0请求/秒/用户,最初设置为5个请求/秒/用户。

但它似乎没有任何效果。

此配置目前有效吗?

1 个答案:

答案 0 :(得分:1)

查看此页面:https://developers.google.com/bigquery/docs/quota-policy 速率限制是您最多可以拥有200GB的未完成查询+一个任意大小的查询。

通过未完成的查询,这意味着查询扫描的数据量。如果您有一个包含10个相同大小字符串字段的1TB表,则表示引用其中两个字段的查询需要200GB扫描。 BigQuery UI显示查询扫描的数据量,或者如果您直接使用API​​,则可以在生成的查询作业统计信息中找到它。

例如,您可以有4个扫描50GB的查询和一个同时运行扫描4TB的查询。

如果这些限制过于严格,您可以使用不具有任何同时查询限制的批处理模式,但 运行速度要慢得多。

这是为了防止客户垄断我们的群集并降低其他用户的性能,并鼓励他们分散他们的查询。

此外,如果您启用了结算功能,则配额限制会显着降低,因为您已限制为免费配额。