【问题标题】:Does CREATE OR REPLACE in BigQuery contribute towards a previous Partition Table's quota?BigQuery 中的 CREATE OR REPLACE 是否有助于先前分区表的配额?
【发布时间】:2021-01-26 21:00:18
【问题描述】:

我们有一个 BigQuery 查询,例如:

  create or replace table `{project}`.`{dataset}`.`{table}`
  partition by date

  select {...}

如果我们在一天内多次运行此查询,我们会收到错误:

配额超出:您的表超出了分区数配额 对列分区表的修改。有关详细信息,请参阅 https://cloud.google.com/bigquery/troubleshooting-errors

我之前使用bq load --replace 加载了分区表,但不记得有类似错误 - 建议为新表重置配额。

这是如何工作的? create or replace 是否对该表名使用累积配额,但bq load --replace 会在每次运行时重置配额?

【问题讨论】:

  • 是的,配额在表名上。在这种情况下,替换或重新创建将无济于事。
  • 谢谢。 bq load --replace

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


【解决方案1】:

“CREATE OR REPLACE”的预期行为是否有助于先前/覆盖的分区表的“最大分区修改次数”配额?

  • 每个表的配额与表名绑定。 'CREATE OR REPLACE' 不会更改表名,因此不会重置配额。

为什么a'bq load --replace'不影响分区表配额?

  • 'bq load --replace' 也会消耗配额。 “加载”和“创建或替换”都可以将数据附加到多个分区。分区数计为partition modifications的个数。

【讨论】:

    猜你喜欢
    • 2011-10-14
    • 2010-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-29
    • 2022-01-04
    相关资源
    最近更新 更多