我们在bigquery中有两个表:一个是大表(几十亿行),每天一个表上有一个表#39;基础,另一个是日期分区,具有完全相同的模式,但行的一小部分(约1亿行)。
我想在小分区数据集上以连接形式(当subselect在where子句中时相同)运行(standard-sql)查询。我无法运行它,因为超过了第1层。 如果我对大数据集(包含我需要的数据和许多其他数据)运行相同的查询,它运行正常。 我不明白这个的原因。 是因为:
如果1.为真,我们可以简单地将小数据集放在每天的表格中。基础是为了解决这个问题。但在我们这样做之前,我们想知道它是否真的能够解决我们的问题。
查询详情:
查询11 GB,运行50秒,Job Id remilon-study:bquijob_2adced71_15bf9a59b0a
Job Id remilon-study:bquijob_5b09f646_15bf9acd941
答案 0 :(得分:0)
我是BigQuery的工程师,我刚看了一下你的工作,但看起来你的第二个查询还有一个带有嵌套子句的额外过滤器,而你的第一个查询却没有。额外的处理可能会使您的查询超出您的等级。我建议在BigQuery UI中运行查询并查看Explanation
选项卡,以查看查询计划中查询的不同。
如果您尝试为两个表运行完全相同的查询(仅修改分区语法)并仍然得到相同的错误,我建议您提交错误。