Google bigquery 计划查询和集群

Google bigquery 计划查询和集群,google-bigquery,dml,Google Bigquery,Dml,在BigQuery中,似乎无法使用write_TRUNCATE和分区装饰器调度写入时间分区和集群目标表的查询:我们收到错误消息: Invalid value: Incompatible table partitioning specification. Expects partitioning specification interval(type:day) clustering(siteId,channelId), but input partitioning specification is

在BigQuery中,似乎无法使用write_TRUNCATE和分区装饰器调度写入时间分区和集群目标表的查询:我们收到错误消息:

Invalid value: Incompatible table partitioning specification. Expects partitioning specification interval(type:day) clustering(siteId,channelId), but input partitioning specification is interval(type:day)
我不明白为什么会发生这种情况,集群规范不只是表定义的一部分吗?在已经集群的表中执行dml插入数据时,我们也不需要指定任何额外的内容。或者这与我们在计划查询中不使用DML有关

编辑:计划查询结构如下所示:

SELECT
  reportDate,
  channelId,
  siteId,
  pageType,
  [MORE_COLUMNS_SELECT),
  SUM(timeOnPage) AS timeOnPage_agg,
  ARRAY_AGG(STRUCT( sessionId,
      [MORE_COLUMNS_NESTED)
 ) AS Details
  ----
FROM `project.dataset.viewname` 
WHERE    reportDate >= TIMESTAMP_TRUNC(TIMESTAMP_ADD(@run_time, INTERVAL -1 DAY), DAY)
     AND reportDate < TIMESTAMP_TRUNC(@run_time, DAY)
GROUP BY
    reportDate,
  channelId,
  siteId,
  pageType,
  [MORE_COLUMNS_SELECT)
我将此查询的结果写入目标表,如下所示: 目标_表_名称${run_time-24h |%Y%m%d}


自2018年10月23日起,该表在_PARTITIONTIME=Reportdate上进行了时间分区,并在siteId、channelId上进行了集群,BigQuery计划查询功能似乎不支持与集群相结合的WRITE_TRUNCATE加载模式


但是,使用DML语句写入集群目标表是可行的。

请提供尽可能多的配置细节。这听起来像是计划查询功能的一个限制,它不考虑集群。上下文请!你正在尝试运行什么查询,我可以尝试运行类似的查询吗…嗨@FelipeHoffa,我已经在这篇文章中添加了示例模式。Elliott Brossard提到的可能是对的,我今天将检查它是否与预定的DML语句一起工作