我有一个表UNITARCHIVE,按日期分区,并按单元、DUID进行集群。
表892 Mb的总大小。
当我尝试此查询时
SELECT * FROM `test-187010.ReportingDataset.UNITARCHIVE` WHERE duid="RRSF1" and unit="DUNIT"Bigquery告诉我,它将处理892MB,我认为集群应该减少扫描的大小,我理解当我过滤每个日期时,大小大大减少,但我需要整个日期范围。是故意的,还是我做错了什么?
发布于 2019-09-17 11:29:25
为了从集群中获得最大的好处,每个分区都需要有一定数量的数据。
例如,如果集群的最小大小是100MB (由BigQuery内部决定),而您每天只有100MB的数据,那么查询100天将扫描100*100MB -与集群策略无关。
作为这种数据量的替代方案,不是按天分区,而是按年分区。然后,您将以每天较少的数据量从集群中获得最大的好处。
请参阅Partition by week/year/month to get over the partition limit?以获取显示这一点的参考表。
https://stackoverflow.com/questions/57966914
复制相似问题