标准SQL一直比传统SQL慢?

时间:2016-06-09 13:59:16

标签: google-bigquery

我们注意到,使用标准SQL执行的查询通常会慢一点,并且会多次使用因子5.以下查询获得点击次数是在1.8s内使用旧版SQL完成的,但使用标准SQL需要10秒。查询是:

旧版SQL:

SELECT
  max_time,
  COUNT(*) AS cnt
FROM (
  SELECT
    MAX(hits.time) WITHIN RECORD AS max_time,
  FROM
    [google_analytics.ga_sessions_20160601])
GROUP BY 1
ORDER BY 2 DESC
LIMIT 100;

标准SQL:

SELECT
  (SELECT MAX(time) FROM sessions.hits) AS max_time,
  COUNT(*) AS cnt
FROM
  `google_analytics.ga_sessions_20160601` AS sessions
GROUP BY 1
ORDER BY 2 DESC
LIMIT 100;

我们注意到"计算"在第一阶段通常会高一点,并且在最后阶段会有更多的等待。

像简单SELECT COUNT(*)这样的其他查询也有类似的差异。

标准SQL是否始终比遗留SQL慢?

1 个答案:

答案 0 :(得分:2)

感谢您的举报 - 我们会对此进行调查。标准SQL仍然处于测试阶段,并且有一些已知的性能工作需要在最终发布之前完成 - 我们将检查它是否也会影响您的查询。