我们有一个BigQuery查询:
create or replace table `{project}`.`{dataset}`.`{table}`
partition by date
select {...}
如果我们在一天内运行这个查询几次,我们会得到一个错误:
Quota exceeded:表的分区数超过配额对列分区表的修改。有关更多信息,请参见https://cloud.google.com/bigquery/troubleshooting-errors
我以前用bq load --replace
加载过分区表,不记得有过类似的错误——建议为新表重置配额。
这是如何工作的?create or replace
是否为该表名使用累积配额,而bq load --replace
在每次运行时重置配额?
' CREATE OR REPLACE '是否会对先前/覆盖的分区表的'最大分区修改数'配额做出贡献?
- 表配额绑定到表名。'CREATE OR REPLACE'不会改变表名,因此不会重置配额。
为什么' bq load -replace'不影响分区表配额?
- 'bq load——replace'也会消耗配额。'load'和'create or replace'都可以将数据附加到多个分区。分区的数目以分区修改的数目计算。