0
我试图运行此查询,但它是,对我理解水平有限,荒谬缓慢。Bigquery查询JOIN异常缓慢
下面是该查询:
SELECT
STRFTIME_UTC_USEC(req.date, "%Y-%m-%d") AS day,
HOUR(req.date) AS hour,
10000*(COUNT(req.request_id) - COUNT(resp.request_id)) AS nb_bid_requests,
COUNT(resp.request_id) AS nb_bid_responses,
FROM
[server.Request] req
LEFT JOIN EACH
server.Response resp
ON
req.request_id = resp.request_id
WHERE
DATEDIFF(CURRENT_TIMESTAMP(), req.date) < 3
GROUP EACH BY
day,
hour
ORDER BY
day,
hour
什么错误我最深的是,这个完全相同的查询工作完全正常上具有相同的数据集,表和字段(具有相同的数据类型的生产项目,名)。唯一的区别是生产比Dev有更多的数据。
我不是任何情况下的SQL专家,我很乐意被告知我在哪里可以改进查询。
预先感谢您。
编辑:嗨,解决了这个问题。 这是由大量的request_id在服务器中重复引起的。响应减慢了“一点点”的查询速度。
统计差异?多少日期(与开发者相比)?次2次,10次,100次甚至更多? – jarlh
在prod中,您运行我们的系统,这会大量使用我们的基础架构。在Dev上运行时,您可以模拟相同的操作,但需要使用自己的计算机。这可能发生在这里。 (当然假设你是指本地开发服务器,而不仅仅是一个不同的环境) – Patrice
给我们一些数字,数据有多大,查询的持续时间,输出大小,你运行的频率? – Pentium10