PostgreSQL 11 发布:JIT、存储过程事务,并行性能提升

本文涉及的产品
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
简介:

PostgreSQL 11 发布了,PostgreSQL 11 带来了整体性能的改进,具有与超大型数据库和高计算工作负载相关的特定增强功能。此外,PostgreSQL 11 对表分区系统进行了重大改进,存储过程中支持事务,改进了查询并行性能并增加了并行化数据定义功能,同时在查询中引入了 JIT 编译以加速表达式的执行。

主要更新内容如下:

提高分区的健壮性和性能

PostgreSQL 11 增加了通过 hash key 对数据进行分区的能力,增强了当前通过值列表或范围对 PostgreSQL 中的数据进行分区的能力。进一步提高了其数据联合能力,并对使用 PostgreSQL 外部数据包装器 postgres_fdw 的分区进行了功能改进。

为了帮助管理分区,PostgreSQL 11 为与分区键不匹配的数据引入了一个默认分区,并且能够在传递给所有分区的分区表上创建主键、外键、索引和触发器。如果更新行的分区键,PostgreSQL 11 还支持自动将该行移动到正确的分区。

PostgreSQL 11 通过使用新的分区消除策略提高了从分区读取时的查询性能。此外,PostgreSQL 11 现在支持分区表上流行的“upsert”功能,这有助于简化用户与数据交互时程序的代码并减少网络开销。

存储过程中支持事务

在 PostgreSQL 11 之前,用户定义的函数无法管理自己的事务,PostgreSQL 11 添加了可以在函数体内执行完整事务管理的 SQL 过程,使开发人员能够创建更高级的服务器端应用程序,例如涉及增量批量数据加载的应用程序。

查询并行性能提升

PostgreSQL 11 提高了并行查询性能,同时并行顺序扫描和散列连接的性能得到提升,对分区数据的扫描也更高效。如果底层查询无法并行化,PostgreSQL 现在可以执行并行使用 UNION 的 SELECT 查询。

表达式 JIT 编译

PostgreSQL 11 引入了对 JIT 编译的支持,以加速查询执行期间某些表达式的执行。PostgreSQL 的 JIT 表达式编译使用 LLVM 项目来加速 WHERE 子句、目标列表、聚合、映射和一些内部操作中表达式的执行。

本文来自云栖社区合作伙伴“开源中国”

本文作者:h4cd 

原文链接


相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
6月前
|
存储 关系型数据库 数据库
postgresql|数据库|提升查询性能的物化视图解析
postgresql|数据库|提升查询性能的物化视图解析
628 0
|
消息中间件 存储 关系型数据库
PostgreSQL技术大讲堂 - 第33讲:并行查询管理
PostgreSQL从小白到专家,技术大讲堂 - 第33讲:并行查询管理
461 1
|
监控 关系型数据库 数据库
《PostgreSQL性能大提升:实用优化技巧》
《PostgreSQL性能大提升:实用优化技巧》
741 0
|
3月前
|
缓存 关系型数据库 数据库
PostgreSQL性能
【8月更文挑战第26天】PostgreSQL性能
65 1
|
2月前
|
缓存 关系型数据库 数据库
如何优化 PostgreSQL 数据库性能?
如何优化 PostgreSQL 数据库性能?
85 2
|
1月前
|
存储 关系型数据库 MySQL
四种数据库对比MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景
四种数据库对比 MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景
|
2月前
|
缓存 关系型数据库 数据库
PostgreSQL的性能
PostgreSQL的性能
122 2
|
3月前
|
缓存 关系型数据库 数据库
PostgreSQL 查询性能
【8月更文挑战第5天】PostgreSQL 查询性能
72 8
|
3月前
|
关系型数据库 Java 数据库
PostgreSQL性能
【8月更文挑战第5天】PostgreSQL性能
92 7
|
3月前
|
监控 关系型数据库 数据库
如何优化PostgreSQL的性能?
【8月更文挑战第4天】如何优化PostgreSQL的性能?
229 7