按日期时间对Google BigQuery进行分区

时间:2019-03-06 09:31:23

标签: google-bigquery partitioning

情况: 我想在Google BigQuery表上加载〜5B记录。我有一个名为“ date_time”的字段,它描述记录的日期时间(从2012年至今)。我希望在此字段上对BigQuery表进行分区。

并发症: 我正在将所有记录流式传输到BigQuery表,似乎BigQuery只接受最近12个月的分区记录。

问题: 我已经阅读了说明(https://cloud.google.com/bigquery/docs/partitioned-tables),但仍然不明白如何以允许在“ date_time”字段上进行分区/索引的方式流式传输数据。

1 个答案:

答案 0 :(得分:1)

当前的流媒体限制在此link

中定义
  

您可以在过去1年到未来6个月之间流式传输数据。超出此范围的数据将被拒绝。在流式传输数据时,将过去7天到将来3天之间的数据放入流式缓冲区中,然后将其提取到相应的分区中。该窗口之外(但在1年6个月范围内)的数据放置在UNPARTITIONED分区中。当有足够的未分区数据时,会将其加载到相应的分区中。

按照@Felipe在answer中的建议,您应该将数据流式传输到非分区表,并使用复制/加载操作将其移动到分区表中

注意:您只需要为流媒体插入付费,因此这种解决方法不会涉及任何额外费用