我每天将数据流式传输到BQ中,每天我在Dataprep中运行计划的作业,该作业需要24小时的数据并修改一些数据,并使用24小时的数据在BQ数据集中创建一个新表。
原始表仍然保持不变,并继续收集数据。
我想做的是在dataprep复制后删除表中的所有行,以便收集新的24小时数据流
如何使它自动化,我似乎无法在dataprep中找到任何东西来删除原始表并创建新表。
答案 0 :(得分:1)
由于您不断提取数据,因此可以将表设置为partitioned table。
此选项是手动执行的操作:
bq rm '[YOUR_DATASET].[YOUR_TABLE]$xxxxxxx'
使用到期时间,您可以设置删除表数据的时间:
bq update --time_partitioning_expiration [INTEGER] [YOUR_PROJECT_ID]:[YOUR_DATASET].[YOUR_TABLE]
答案 1 :(得分:0)
您可以使用计划查询清除表:
https://cloud.google.com/bigquery/docs/scheduling-queries
计划的查询支持DDL,因此您可以计划每天执行一次查询,以删除该表中的所有行,或完全删除该表。在特定时间。