【发布时间】:2016-11-08 05:39:00
【问题描述】:
我正在检查从 Redshift 迁移到 BigQuery 的可行性。在 BigQuery 上实施以下用例时,我需要帮助。
我们有一个按日划分的产品性能表,它是一个日期分区表。它被称为product_performance_by_day。每天售出的每种产品都有一行。每天我们在一天结束时处理数据并将其放入当天的分区中。然后,我们汇总过去 30 天的每日性能数据,并将其放入名为 product_performance_last30days 的表中。这种聚合节省了查询时间,并且在 BigQuery 的情况下也将节省成本,因为它会扫描更少的数据。
这是我们目前在 Redshift 中的做法 -
我们将汇总的数据放在一个新表中,例如product_performance_last30days_temp。然后删除product_performance_last30days 表并将product_performance_last30days_temp 重命名为product_performance_last30days。因此 product_performance_last30days 表的停机时间非常短。
我们如何在 BigQuery 中做同样的事情?
目前,BigQuery 不支持重命名表或具体化视图或表别名。由于我们希望每天将聚合数据保存在同一个表中,因此如果表不为空,我们将无法使用目标表。
【问题讨论】:
-
这样一张桌子的体积/大小是多少?
-
@Pentium10 表最大100GB
-
与 2016 年 11 月一样,查询 1TB 的成本为 5 美元,拥有 30 个此类表 (100GB * 30=3TB) 的完整扫描成本为 15 美元。我们在这里谈论什么?看起来很便宜你的最终目标是什么?
标签: google-bigquery