在BigQuery中获取"查询太大"

j_c*_*j_c 7 google-bigquery

我将事件数据存储在BigQuery中,按日分区 - 每天一个表.以下查询失败:

select count(distinct event) 
from TABLE_DATE_RANGE(my_dataset.my_dataset_events_, SEC_TO_TIMESTAMP(1391212800), SEC_TO_TIMESTAMP(1393631999))
Run Code Online (Sandbox Code Playgroud)

每个表大小约为8GB.

还有其他人遇到过此错误吗?看起来它受到表大小的限制,因为在这个查询中,我只将它限制在一列.当我使用较小的时间范围时,它可以工作..但使用BigQuery的全部意义在于它支持大型数据集.

Fel*_*ffa 5

在这种情况下,"查询太大"意味着TABLE_RANGE在内部扩展到太多表,从而生成一个太大而无法处理的内部查询.

这有2个解决方法:

  • 查询较少的表(您可以将这些表聚合成更大的表吗?).
  • 等到BQ团队在内部解决此问题.您应该能够不更改地运行此查询,而不是使用变通方法.只是不是今天:).