标准SQL一直比传统SQL慢?

rad*_*ind 6 google-bigquery

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

旧版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;
Run Code Online (Sandbox Code Playgroud)

标准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;
Run Code Online (Sandbox Code Playgroud)

我们注意到第一阶段的"计算"数量通常略高,最后阶段的等待时间更长.

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

标准SQL是否始终比传统标准慢SQL

Mos*_*sky 2

感谢您的报告 - 我们将对此进行调查。标准 SQL 仍处于 Beta 阶段,在最终版本之前需要完成一些已知的性能工作 - 我们将检查它是否也会影响您的查询。