Google bigquery 如何优化日期字段上的BigQuery查询,其中大多数查询处于年-月级别

Google bigquery 如何优化日期字段上的BigQuery查询,其中大多数查询处于年-月级别,google-bigquery,Google Bigquery,关于日期字段的BigQuery查询性能的问题 我有一个非常大的数据表,其中每个记录都有一个“事件日期”字段。表中的大多数查询实际上是在日历月级别运行的,例如2020年1月。如果有一个或多个字段将“年-月”存储为一个字段,或将“年”和“月”存储为两个单独的额外字段,那么BigQuery的性能是否会有所提高?您是否已经按月对表进行了分区,如果没有,这样做将允许查询扫描更少的数据(仅限于指定的月份)。“按月分区”功能仅在几周前推出: 2020年9月21日 以下时间单位分区功能现在普遍可用(GA): 使

关于日期字段的BigQuery查询性能的问题


我有一个非常大的数据表,其中每个记录都有一个“事件日期”字段。表中的大多数查询实际上是在日历月级别运行的,例如2020年1月。如果有一个或多个字段将“年-月”存储为一个字段,或将“年”和“月”存储为两个单独的额外字段,那么BigQuery的性能是否会有所提高?

您是否已经按月对表进行了分区,如果没有,这样做将允许查询扫描更少的数据(仅限于指定的月份)。“按月分区”功能仅在几周前推出:

2020年9月21日

以下时间单位分区功能现在普遍可用(GA):

使用每小时、每月和每年的时间单位粒度创建分区


日期函数相对来说比较昂贵,但这取决于表的实际大小-您可以在时间上看到或看不到改进。除此之外,时间成本(插槽使用)也可以降低,但同样地,所有这些都取决于表的大小,我认为每年有6亿条记录和5年的数据