BigQuery bq命令 - 仅在表为空或不存在时加载

时间:2015-04-20 11:38:37

标签: google-bigquery google-cloud-platform

我正在使用bq执行加载命令,例如:

bq load ds.table gs://mybucket/data.csv dt:TIMESTAMP,f1:INTEGER

我想仅在表格为空或不存在时才加载数据。

有可能吗?

编辑:

基本上我想通过bq命令行工具获取WRITE_EMPTY API选项:

https://cloud.google.com/bigquery/docs/reference/v2/jobs#configuration.load.writeDisposition

  

如果该表已存在且包含数据,则表示“重复”表。在作业结果中返回错误。

2 个答案:

答案 0 :(得分:4)

如果你去检查具有BigQuery CLI源代码的bq.py,你会发现_Load()方法没有为WRITE_EMPTY API选项实现一个选项。它是默认的WRITE_APPEND或可选的WRITE_TRUNCATE。

如您所示,API支持WRITE_EMPTY - 如果您希望在CLI上将此视为选项,则可以在https://code.google.com/p/google-bigquery/issues/list?q=label:Feature-Request提交功能请求

答案 1 :(得分:3)

您可以使用BQ命令行工具。

获取表格信息

bq show <project_id>:<dataset_id>.<table_id>

列出表格

 bq ls [project_id:][dataset_id]