BigQuery速度 - 来自__SHUFFLE1_REPARTITION0的时间

时间:2017-10-02 19:32:07

标签: google-bigquery

我试图了解为什么BigQuery查询需要这么长时间。

有几篇关于解释Explanation输出的帖子,但无法找到任何可以帮助理解这种情况下发生的事情。

有关为什么阅读__PSRC___SHUFFLE2_0并写信给__SHUFFLE2_REPARTITION0需要花费这么长时间的任何想法?这是用新密钥重新分区吗? (虽然前面的步骤13也是由HASH($290)

编写的

目前我们的数据的样本大约需要200秒,其中70%用于此步骤。

(我无法在此处发布整个查询,但如果有帮助,我可以发布修改后的版本。)

Query Timing

1 个答案:

答案 0 :(得分:2)

避免爆炸连接。

如果没有更多的背景,我不知道发生了什么,但第2和第5阶段很有意思:

  • 第2阶段从2M行变为7M
  • 第5阶段获得10 M行,输出为140M。

我怀疑爆炸连接。查询的数据大小有多大?

如果没有进一步的数据,我会说我很高兴BigQuery可以处理像这样的爆炸连接,但是在进行爆炸连接时我不会期望极快的查询。

有关爆炸连接的具体示例,请查看https://stackoverflow.com/a/46533335/132438