Google bigquery 使用CLI将数据加载到列类型分区:不兼容的表分区规范

Google bigquery 使用CLI将数据加载到列类型分区:不兼容的表分区规范,google-bigquery,Google Bigquery,在一个简单的BQ中,使用此cmd将一些CSV加载到一个新模式,我们得到以下错误: bq load --time_partitioning_field saved_timestamp --skip_leading_rows=1 --max_bad_records=100 --allow_jagged_rows --replace --source_format=CSV --ignore_unknown_values TABLE gs://.../export*.gz schema.json

在一个简单的BQ中,使用此cmd将一些CSV加载到一个新模式,我们得到以下错误:

bq load --time_partitioning_field saved_timestamp
--skip_leading_rows=1 --max_bad_records=100 --allow_jagged_rows 
--replace --source_format=CSV --ignore_unknown_values  TABLE gs://.../export*.gz schema.json
不兼容的表分区规范。期望分区 规范无,但输入分区规范为 间隔(类型:天,字段:保存的时间戳)

我的期望是创建一个列类型的分区列。怎么了


我们还可以使用相同的语法来指定集群吗?

在撰写本文时,有一个限制,列为。使用BigQuery CLI时,您可以:

  • 将数据加载到具有所需分区/集群规范的新表中
  • 删除要替换的表(
    bq rm dataset.table
  • 将新表复制到旧表的名称(
    bq cp dataset.new_table dataset.table
    ),然后
  • 删除新表(
    bq rm dataset.new_table

该表是否已经存在?听起来问题在于表存在但没有分区,因此新模式不兼容。你能先删除现有的表吗?@ElliottBrossard很好,假设--replace可以工作,这就是问题所在。无论如何,您可以改进de error message(消除错误信息),这确实是一种误导,或者设置一个包含所有可能错误的博客页面,将此作为答案提交。我使用CLI添加了一个带有解决方法的答案,我请求继续改进错误信息。