PostgreSQL 11 有哪些引人瞩目的新特性?

2020-06-17 00:00:00 并行 支持 分区表 存储过程 详见

2018-10-18 PostgreSQL官网 宣布 PostgreSQL 11 正式版发行,PostgreSQL 11 重点对性能进行了提升和功能完善,特别是对大数据库和高计算负载的情况下进行了增强,主要包括以下:

  • 对分区表进行了大幅的改进和增强。
  • 增加了对存储过程的支持,存储过程支持事务。
  • 增强了并行查询能力和并行数据定义能力。
  • 增加了对 just-in-time (JIT) 编译的支持,加速SQL中的表达式执行效率。

近对PostgreSQL以上新特性和其它功能完善做了演示,希望对PostgreSQL从业者有帮助,详见以下。

分区表的改进

PostgreSQL 11 对分区表进行了重大的改进,例如增加了哈希分区、支持创建主键、外键、索引、支持UPDATE分区键以及增加了默认分区,这些功能的完善极大的增强了分区表的可用性,详见以下:

  • PostgreSQL11: 分区表增加哈希分区
  • PostgreSQL11:分区表支持创建主键、外键、索引
  • PostgreSQL11: 分区表支持UPDATE分区键
  • PostgreSQL11: 分区表增加 Default Partition

支持存储过程

PostgreSQL 11 版本一个重量级新特性是对存储过程的支持,同时支持存储过程嵌入事务,存储过程是很多 PostgreSQL 从业者期待已久的特性,尤其是很多从Oracle转到PostgreSQL朋友。

尽管PostgreSQL提供函数可以实现大多数存储过程的功能,但函数不支持部分提交,换句话说,函数中的SQL要么都执行成功,要不全部返回失败,详见以下:

  • PostgreSQL11: 支持存储过程(SQL Stored Procedures)

并行能力的增强

PostgreSQL 11 版本在并行方面得到较大增强,例如支持并行创建索引、并行Hash Join、并行 CREATE TABLE .. AS等,详见以下:

  • PostgreSQL11:支持并行创建索引(Parallel Index Builds)
  • PostgreSQL11:支持并行哈希连接(Parallel Hash Joins)

增加对Just-in-Time (JIT)编译的支持

PostgreSQL 11 版本的一个重量级新特性是引入了 JIT (Just-in-Time) 编译来加速SQL中的表达式计算效率。

JIT 表达式的编译使用LLVM项目编译器来提升在WHERE条件、指定列表、聚合以及一些内部操作表达式的编译执行,详见以下:

  • PostgreSQL11: 增加对JIT(just-in-time)编译的支持提升分析型SQL执行效率

其它功能完善

此外, PostgreSQL 11 增强了其它新特性以增加用户体验,以下列举了主要的几点,详见以下:

  • PostgreSQL11: 新增非空默认值字段不需要重写表
  • PostgreSQL11: Indexs With Include Columns
  • PostgreSQL11: 新增三个默认角色
  • PostgreSQL11: 可通过GRNAT权限下放的四个系统函数
  • PostgreSQL11: Initdb/Pg_resetwal支持修改WAL文件大小
  • PostgreSQL11: psql 新增 \gdesc 显示查询结果的列名和类型
  • PostgreSQL11: psql 新增变量记录SQL语句的执行情况和错误

关于PostgreSQL

PostgreSQL 号称世界上先进的开源关系型数据库,PostgreSQL 全球社区是一个由数千名用户、开发人员、公司或其他组织组成。 PostgreSQL 起源于加利福利亚的伯克利大学,有30年以上历史,经历了无数次开发升级。

PostgreSQL 的出众之处在于不仅具有商业数据库的功能特性,同时在扩展性、安全性、稳定性等数据库特性方面超越了它们。

若想获取到更多关于PostgreSQL的信息或者加入PostgreSQL社区,请浏览官网 PostgreSQL.org 。

参考

  • PostgreSQL 11 Released!
  • PostgreSQL 11.0 正式版更新版本发布说明


后推荐和张文升共同编写的《PostgreSQL实战》,本书基于PostgreSQL 10 编写,共18章,重点介绍SQL特性、并行查询、分区表、物理复制、逻辑复制、备份恢复、高可用、性能优化、PostGIS等,涵盖大量实战用例!

购买链接:item.jd.com/12405774.ht


相关文章