gpt4 book ai didi

即席 SQL 与函数的 PostgreSQL 性能

转载 作者:行者123 更新时间:2023-11-29 13:17:39 26 4
gpt4 key购买 nike

有区别吗?我知道 SQL 查询的执行计划与函数一样被缓存。

我找到了 someone告诉:

Performance is an issue, and we suspect query planning might be an underlying cause. I've rewritten the scripts from ad-hoc SQL to a Postgres functions (CREATE FUNCTION) and we saw server load go down quite a bit.

但为什么呢?

最佳答案

即席查询的查询计划缓存,仅用于prepared statements . PL/pgSQL 函数在内部处理所有 SQL 语句,就像准备好的语句一样。 (带有 EXECUTE 的动态 SQL 是一个明显的异常(exception)。)每个都针对当前 session 的范围,而不是超出范围。

所以 PL/pgSQL 函数(不是 SQL 函数!)可以帮助在同一个 session 中重复执行复杂的查询。就像准备好的语句一样。

客户端软件可能默认使用准备好的语句。或者 "extended query" protocol , 效果相同。

相关:

开始的相关回答the thread on pgsql-general你指的是:

还要考虑章节 Plan Caching手册中的 PL/pgSQL。

关于即席 SQL 与函数的 PostgreSQL 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46678578/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com