Google bigquery BigQuery覆盖作业期间的流式插入

Google bigquery BigQuery覆盖作业期间的流式插入,google-bigquery,Google Bigquery,我有一个BigQuery表,我想使用一个带有writeDisposition WRITE_TRUNCATE的作业,用表中的一个子集覆盖表。我这样做是因为我试图模拟一个deletfrom…WHERE…操作 假设在作业运行时,我同时尝试将行流式传输到表中。是否可以在作业运行时插入行,从而在作业完成时覆盖行?或者是否有一种锁定机制可以防止在作业完成之前插入行?在这种情况下,您需要停止流式处理作业,直到执行操作为止。完成后再继续。没有锁 此外,在停止流式插入后,您还应该留出一些冷却时间,因为它们是在后台

我有一个BigQuery表,我想使用一个带有writeDisposition WRITE_TRUNCATE的作业,用表中的一个子集覆盖表。我这样做是因为我试图模拟一个
deletfrom…WHERE…
操作


假设在作业运行时,我同时尝试将行流式传输到表中。是否可以在作业运行时插入行,从而在作业完成时覆盖行?或者是否有一种锁定机制可以防止在作业完成之前插入行?

在这种情况下,您需要停止流式处理作业,直到执行操作为止。完成后再继续。没有锁


此外,在停止流式插入后,您还应该留出一些冷却时间,因为它们是在后台处理的,您需要让系统完成。

由于流式系统中的表元数据缓存层,目前需要大约10分钟才能意识到表已被截断。在这10分钟内,所有流数据都将被丢弃(因为它们被视为截断数据的一部分)

正如奔腾10所建议的,如果您正在进行写截取,建议暂停流式处理请求,并在截取完成后约10分钟恢复