BigQuery流式传输和分区:何时真正评估_PARTITIONTIME?

时间:2018-09-03 12:03:23

标签: google-bigquery

_PARTITIONTIME表示将行插入BigQuery的时间(截断到一天)。

但是,仔细观察流传输机制(https://cloud.google.com/blog/products/gcp/life-of-a-bigquery-streaming-insert),将一行插入BigQuery时,我们可以看到3种不同的“插入时间”:

  • “流式提取工作者”收到该行的时间
  • 将行存储到“流缓冲”中的时间
  • 该行处于提取状态的时间,工作人员将其存储到最终(电容器)存储中。

有人知道这三个时刻中的哪一个对应于_PARTITIONTIME吗?

1 个答案:

答案 0 :(得分:3)

当该行仍在流缓冲区中时,此行的_PARTITIONTIME为空;提取行之后,提取时间为该行的_PARTITIONTIME。一个例外是,当该行直接流式传输到分区时,为“ table $ 20180101”。在这种情况下,_PARTITIONTIME始终为“ 2018-01-01”。