如何使 BigQuery 中现有分区表的分区过期

时间:2021-07-16 20:32:50

标签: google-bigquery

我需要在 BigQuery 中为测试环境创建一个生产数据集的副本,并使用它来模拟具有新更改的管道处理。

然而,生产数据集是巨大的。所以我通常只想保留它的最新数据用于测试。

为此,我想截断数据集中超过 30 天的所有分区数据。

我尝试在数据集级别设置分区过期时间。它不起作用。

那我怎么能这样做。

1 个答案:

答案 0 :(得分:0)

我对此做了一些测试并确认了这一点。

当您在数据集级别设置默认分区到期时。它仅适用于新表。 对于现有的分区表,您需要在单个表级别设置分区以使其分区过期。 例如:

 ALTER TABLE `gcp_A.dataset_1.measurements`
 SET OPTIONS (
   -- Sets partition expiration to 30 days
   partition_expiration_days=30
 ); 

select min(stamp) from `gcp_A.dataset_1.measurements`
-- [result] 
-- 2021-06-15 00:00:00 UTC
相关问题