【问题标题】:Is there a limit to queries using Bigquery's library and api?使用 Bigquery 的库和 api 的查询是否有限制?
【发布时间】:2018-01-17 22:30:19
【问题描述】:

我想知道对 bigquery 中已加载的数据进行查询时是否有任何限制?

例如,如果我想从 Web 应用程序或“Web 服务”中提取 bigquery 信息,我的选择、更新和删除限制是多少?

文档告诉我:

按需定价下交互式查询的并发速率限制:50 个并发查询。返回缓存结果的查询或使用 dryRun 属性配置的查询不计入此限制。

每日查询大小限制:默认无限制,但您可以使用自定义配额指定限制。

但我不明白我每天的咨询次数是否有限制,如果有,我的限制是多少?

【问题讨论】:

  • “咨询”是什么意思?
  • 我想知道使用 bigquery 是否有每天的查询限制?
  • 不,没有。
  • 根据我的理解以及文档告诉我的内容,每个查询都不是立即的?我真的不知道 bigquery 是否是我需要存储我的信息的解决方案,我不知道您是否可以通过聊天在这方面给我建议? .对不起,我的英语很糟糕,我来自墨西哥,我不会说这种语言。
  • 每个查询都不是即时的是什么意思?查询可能需要一到两到(最多)六个小时,具体取决于查询的复杂程度。

标签: sql database google-bigquery google-cloud-platform


【解决方案1】:

您可以在特定时间为查询分配的槽数有限制。

一些掘金:

  • Slot:代表一个计算能力单位。
  • 查询:根据需要使用尽可能多的槽,以便查询以最佳方式运行(当前:按需价格最多 50 个槽)[A]
  • 项目:每个项目使用的槽位基于同时运行的查询数量(目前:按需价格为 MAX 2000 个槽位)

[A] 这一切都在后台,无需用户干预。 BigQuery 会评估查询以计算所需的槽数。

因此,如果您进行数学计算,最坏的情况是,如果您的所有查询都使用 50 个插槽,那么在同时运行超过 40 个查询之前,您不会发现任何副作用。即使在这些情况下,查询也只会在队列中等待一段时间,并在某些查询执行完成后开始运行。

当您对按时获取数据的时间敏感并且它们在以下环境中运行时,槽会变得更加令人担忧:

  • 大量查询同时运行。
  • 大多数同时运行的查询通常需要很长时间才能在空负载下执行。

了解这些限制是否会影响您的最佳方法是监控项目中的当前活动。 Bigquery 建议您使用 Stackdriver 监控您的插槽。

更新:Bigquery 在他们的一篇博文中解决了查询优先级的问题 - Truth 5: BigQuery supports query prioritization

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 2019-05-29
    • 1970-01-01
    • 1970-01-01
    • 2018-12-16
    • 1970-01-01
    • 2016-04-29
    相关资源
    最近更新 更多