文章 2018-04-18 来自:开发者社区

PostgreSQL 11 preview - 增加强制custom plan GUC开关(plancache_mode),对付倾斜

标签 PostgreSQL , plan cache , generic plan , custom plan , plancache_mode 背景 对于高并发的小事务,使用绑定变量(prepared statement)来缓存执行计划,可以降低简单SQL在sql parser, plan上的开销。 《PostgreSQL 11 preview - 强制auto prepared stat...

文章 2018-04-18 来自:开发者社区

PostgreSQL 11 preview - 强制auto prepared statment开关(自动化plan cache)(类似Oracle cursor_sharing force)

标签 PostgreSQL , Oracle , 自动plan cache , pgbouncer , simple query 背景 通常一个QUERY在执行时分为几个步骤,语义解析、SQL REWRITE、生成所有可选执行路径、选择最优路径、执行等多个步骤。 对于同一类SQL,只是更换SQL中的一些FILTER变量时,实际上很多步骤是可以共享的。例如语义解析、SQL REWRITE、生成...

文章 2018-01-27 来自:开发者社区

PostgreSQL 商用版本EPAS(阿里云ppas) 自定义custom plan次数

标签 PostgreSQL , 绑定变量 , custom plan , generic plan 背景 PostgreSQL 数据库与商用数据库Oracle一样,支持绑定变量,绑定变量的目的是降低SQL硬解析的性能开销。 使用绑定变量后,执行变成这样的流程,一次prepare,后面都只需要bind和execute: prepare bind ...

文章 2017-03-14 来自:开发者社区

PostgreSQL 10.0 preview 性能增强 - 分区表性能增强(plan阶段加速)

标签 PostgreSQL , 10.0 , 分区表 , 子表 , 元信息搜索性能增强 背景 PostgreSQL 10.0 增强了分区表的子表搜索性能,对于涉及分区表包含子表特别多的QUERY,可以提升性能。 性能分析 get_tabstat_entry, find_all_inheritors成为主要瓶颈。 Hello. I decided to figure out whethe...

文章 2016-12-21 来自:开发者社区

官人要杯咖啡吗? - PostgreSQL实时监测PLAN tree的执行进度

标签 PostgreSQL , long query , plan tree , SQL进度条 背景 当我们在数据库中执行一些比较大的查询,或者执行比较复杂的函数时,如果要知道执行到哪里了,预计还要多久。 怎么办呢? 有方法得到吗?当然有。 目前PostgreSQL支持的是传统的SQL执行方法,将(nonutility)语句parser后,根据parser tree生成plan tree, ...

文章 2016-06-17 来自:开发者社区

PostgreSQL plan cache 源码浅析 - 如何确保不会计划倾斜

早上写了一篇文章《为什么用 PostgreSQL 绑定变量 没有 Oracle pin S 等待问题》,可以看到PostgreSQL为开发人员着想的,设计得非常人性化。 https://yq.aliyun.com/articles/55698 同时也收到了一些朋友发来的问题,有朋友问我PostgreSQL plan cache有没有计划倾斜的问题。 本文将针对这个问题展开和大家聊一聊...

PostgreSQL plan cache 源码浅析 - 如何确保不会计划倾斜
文章 2015-12-10 来自:开发者社区

PostgreSQL 妙用explain Plan Rows快速估算结果集数量

http://people.planetpostgresql.org/dfetter/index.php?/archives/80-Approximate-Counts.html 通过这种方法,我们可以快速的估算一个表,视图的记录数,当然也包括带条件的查询中,最终结果的返回集。 例如: postgres=# EXPLAIN (FORMAT JSON) SELECT 1 FROM t limit.....

文章 2015-01-15 来自:开发者社区

关于PostgreSQL中的plan cache(或预备语句)

SQL的执行大致分为解析,优化和执行几个步骤。解析和优化的结果是执行计划,通常相同的SQL语句要被执行无数遍,并且每次执行很可能采用的是相同的执行计划。生成执行计划的过程是要花费时间的,特别是对一些复杂SQL。那么如果把执行计划缓存起来,下次执行的时候跳过优化这一步不就可以提高性能了吗?不错,这就是所谓的plan cache。 严格来讲,PostgreSQL并没有提供plan cache这样的功....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

数据库

数据库领域前沿技术分享与交流

+关注
相关镜像