BigQuery中,我们试图运行:如何使此查询有效运行?
SELECT day, AVG(value)/(1024*1024) FROM (
SELECT value, UTC_USEC_TO_DAY(timestamp) as day,
PERCENTILE_RANK() OVER (PARTITION BY day ORDER BY value ASC) as rank
FROM [Datastore.PerformanceDatum]
WHERE type = "MemoryPerf"
) WHERE rank >= 0.9 AND rank <= 0.91
GROUP BY day
ORDER BY day desc;
返回的数据相对较少。但我们得到的消息:
Error: Resources exceeded during query execution. The query contained a GROUP BY operator, consider using GROUP EACH BY instead. For more details, please see https://developers.google.com/bigquery/docs/query-reference#groupby
什么使这个查询失败,子查询的大小?是否有一些等价的查询可以避免这个问题?
编辑回应评论:如果我添加组分别由(落外ORDER BY),查询失败,声称GROUP分别由这里不是并行。
您是否尝试过使用“GROUP EACH BY”作为错误消息提示? – hexafraction
如果我添加GROUP EACH BY(并删除外部ORDER BY),则查询失败,声称GROUP EACH BY在这里不可并行化。有什么我失踪? –
添加到您的文章。我只是试图帮助使其负责,不太可能被搁置“ – hexafraction