【问题标题】:Google BigQuery Write Storage API quota CreateWriteStream requests per minuteGoogle BigQuery 写入存储 API 配额每分钟 CreateWriteStream 请求
【发布时间】:2021-11-22 13:40:37
【问题描述】:

我正在尝试构建在 BigQuery 的不同表上写入的可扩展 ETL 流程。此过程由 PubSub 触发,因此实例化了 n 个 Cloud Functions(默认情况下,它们都在 us-central1 中)以实现目标。我正在使用 BigQuery Storage Write API、python 客户端将数据流式传输到 BigQuery。

通常当实例化超过 100 个 CF 时,我会收到以下恢复的错误消息:

429 Exceeds quota limit subject: ?metric=bigquerystorage.googleapis.com/write/create_stream_requests&limit=CreateWriteStreamRequestsPerMinutePerProject&qs_error_code=INSUFFICIENT_TOKENS description: Quota exceeded for quota metric 'CreateWriteStream requests' and limit 'CreateWriteStream requests per minute' of service 'bigquerystorage.googleapis.com'...

在文档中找出配额限制,我想知道为什么会出现此错误?不应该受到10k并发连接的限制吗?

https://cloud.google.com/bigquery/quotas#write-api-limits

您的项目可以在美国的 10,000 个并发连接上运行 和欧盟多区域,其他区域有 100 个。

或者按区域,他们的意思是说 n

CreateWriteStream limits, showing 10k but accusing quota limit when +100 concurrency connections

【问题讨论】:

    标签: python python-3.x google-bigquery streaming


    【解决方案1】:

    这里可能有一些配额:

    • 美国/欧盟多区域的并发连接配额为 10K,单区域为 100。
    • 项目有 3GB/s 的吞吐量配额(可根据要求提高)。
    • 连接速率和 CreateWriteStream 速率有每 4 小时 50K 的配额。
    • 您可以打开给定表的活动 Streams 的数量有限制,目前限制为 10K(您可以使用 FinalizeWriteStream 更快地收集这些数据流)。

    请注意,这些可能会在未来发生变化。

    【讨论】:

    • 您好 Stephanie Wang,感谢您的帮助!在这种情况下,我提到过,每个 Cloud Function(最多 100 个实例)打开一个与 BigQuery 上的表的连接,在我们多区域托管,处理数据并最终确定流。也就是说,阅读您的答案并查看所附图片,我注意到报价限制错误是 CreateWriteStream,我仍然无法弄清楚它超出了哪个报价限制。
    • 嗨罗德里戈,我刚刚检查了这个错误CreateWriteStreamRequestsPerMinutePerProject,它已被弃用。您能否升级到使用 v1 客户端,并且 CreateWriteStream 的配额是 4 小时内 50K 请求。
    猜你喜欢
    • 1970-01-01
    • 2018-02-13
    • 1970-01-01
    • 1970-01-01
    • 2019-02-23
    • 1970-01-01
    • 2013-11-29
    • 2021-10-08
    • 2016-11-08
    相关资源
    最近更新 更多