如何仅在 BigQuery 中查询流缓冲区中的数据?

Ven*_*yer 7 google-bigquery

我们在 BigQuery 中有一个按天分区的表,它通过流式插入更新。

文档说:“当流式传输到分区表时,流式缓冲区中的数据对于 _PARTITIONTIME 伪列具有 NULL 值”

但是如果我查询select count(*) from table where _PARTITIONTIME is NULL它总是返回 0,即使bq show告诉我流缓冲区中有很多行。

这是否意味着流缓冲区中的行根本不存在伪列?在任何情况下,如何仅在流缓冲区中查询数据而不使其成为全表扫描?

提前致谢

Pen*_*m10 9

流缓冲区中的数据具有列的NULL_PARTITIONTIME

SELECT
  fields
FROM
  `dataset.partitioned_table_name`
WHERE
  _PARTITIONTIME IS NULL
Run Code Online (Sandbox Code Playgroud)

https://cloud.google.com/bigquery/docs/partitioned-tables#copying_to_partitioned_tables

  • 这仅适用于摄取时分区表。否则列“_PARTITIONTIME”不存在。 (3认同)