bigquery steaming 缓冲区会持续多久

JJZ*_*JJZ 4 google-bigquery

我目前正在将数据从sql server数据库系统迁移到bigquery,并且在尝试从具有活动流缓冲区的bigquery表中删除记录时遇到了问题,您能否确认流缓冲区在被删除之前会持续多长时间那么删除操作可以运行吗?我发现这给开发过程带来了不必要的不​​便。

非常感谢您的帮助,期待您的来信。

此致,

Pen*_*m10 7

根据官方文档

数据最多可能需要90 分钟才能用于复制和导出操作。此外,当流式传输到分区表时,流式缓冲区中的数据的 _PARTITIONTIME 伪列具有 NULL 值。要查看数据是否可用于复制和导出,请检查tables.get 响应中名为 的部分streamingBuffer。如果该部分不存在,您的数据应该可用于复制或导出,并且 _PARTITIONTIME 伪列应该具有非空值。此外,streamingBuffer.oldestEntryTime可以利用该字段来识别流缓冲区中记录的年龄。

流式传输到分区表

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

我们通过延迟删除请求或每 24 小时执行一次来解决您的情况。您现在可以编写删除查询脚本以使用作为streamingBuffer.oldestEntryTime参数,并尝试删除比该参数更旧的任何内容。

https://cloud.google.com/bigquery/streaming-data-into-bigquery