【发布时间】:2021-06-24 04:02:37
【问题描述】:
我正在使用 hasura,它似乎工作得很慢......即使我只运行一个没有 WHERE 或没有排序的 SELECT,与使用 Django 相比,它也需要太多时间。我的数据集真的很慢(只有 3 行),而且仍然需要很多时间。
查询:
query MyQuery {
youthjob_tags{name}
}
这是对查询的分析:
Aggregate (cost=19.52..19.52 rows=1 width=32)
-> Seq Scan on tags (cost=0.00..14.08 rows=1360 width=32)
SubPlan 1
-> Result (cost=0.00..0.00 rows=1 width=32)
生成的 SQL:
SELECT
coalesce(json_agg("root"), '[]') AS "root"
FROM
(
SELECT
row_to_json(
(
SELECT
"_1_e"
FROM
(
SELECT
"_0_root.base"."name" AS "name"
) AS "_1_e"
)
) AS "root"
FROM
(
SELECT
*
FROM
"youthjob"."tags"
WHERE
('true')
) AS "_0_root.base"
) AS "_2_root"
【问题讨论】:
-
慢是什么意思?这是一个很小的查询,它应该很快,你可能有另一个问题。
-
从前端获取数据和使用 igraphql 都需要 1-2 秒。我只是想知道是否有人可以在我发送的信息中看到任何潜在的危险信号,例如生成的 sql 是否看起来很糟糕
-
您正在与之通信的数据库位于何处?这里的查询计划或者生成的SQL都没有错
-
我在 Hasura 上使用免费计划,这意味着它在加利福尼亚,而我在瑞典。但这真的应该让它那么慢吗?
标签: postgresql hasura