发布新书《快速掌握PostgreSQL版本新特性》

本书的构思过程

    笔者最早从事软件开发,当时做一个国外的智能公交项目,系统架构需要一整套开源解决方案。其中数据库选型采用了PG 数据库,不过当时9.0的版本有不少功能欠缺。不过随着项目开发到正式上线的过程中,PG的版本迭代也十分之快,数据库很快也升级到9.3,我们应用到了json类型以及并行备份恢复带来的效率提升。当时笔者也开始在有道云笔记上记录一些PG新特性应用的工作笔记。

    2019年末笔者加入云和恩墨,正式进入数据库行业,开始接触大量的PG案例,同时也在墨天轮社区及PGFans问答社区分享一些技术文章。笔者墨天轮PG乐知乐享专栏已发表200多篇PG文章,其中也有不少新特性方面的文章。

  • 知兼容性之变,升数据库也稳

  • vacuum这8个功能,哪个值得你点赞?

  • PostgreSQL版本新特性顺利完稿

  • 请不要固步自封,升级到 PostgreSQL 16 的 7 大理由!

  • PostgreSQL 16将迎来完备的权限管理

  • PostgreSQL对SQL:2023标准支持情况

  • 两个与性能相关的压缩参数

  • PostgreSQL 15版本发布统计数据对比表

  • PostgreSQL 15并行特性矩阵图

  • PostgreSQL 15可靠性之统一非排他性备份模式

  • PostgreSQL 15可靠性之本地化规则改进

  • PostgreSQL “in place” tablespaces

  • PostgreSQL 15新版本余晖:新增的系统表、视图、函数

  • PostgreSQL 15新版本余晖:参数变化

  • 迎国庆:PostgreSQL 15 RC1发布

  • 庆双节:PostgreSQL 15 版本新动态

  • PostgreSQL 15新特性预览:视图的security invoker选项

  • PostgreSQL 15新特性预览:json日志

  • PostgreSQL 15新特性预览:版本兼容性

  • PG 15devel Merge Into语法测试

  • 流复制同步工具pg_rewind功能改进

  • 新形式的SQL函数

  • [译] PostgreSQL 13隐藏"杀手锏"特性

  • 升级到PostgreSQL12的理由之一:减少bad connection日志量

  • 掌握PostgreSQL新特性学习笔记五:PostgreSQL 13

  • 掌握PostgreSQL新特性学习笔记四:PostgreSQL 12

  • 掌握PostgreSQL新特性学习笔记三:PostgreSQL 11

  • 掌握PostgreSQL新特性学习笔记二:PostgreSQL 10

  • 掌握PostgreSQL新特性学习笔记一:PostgreSQL 9.6

  • PostgreSQL并行特性简介

  • PostgreSQL并行特性版本演进

    平时查看官方文档Release Notes时,一些新特性的介绍是比较晦涩难懂的,需要查找更多的资料,通常很难快速获取某个新特性的最佳实践及原理分析。

    从PG 10版本开始,笔者一直在归纳整理新特性相关的资料。弹指间,PG社区已经发布第30个正式版本PostgreSQL 16。2023年初通过PG分会副秘书长魏波、秘书长白国华的引荐,联合几位社区专家,包括类延良、高云龙、阎书利等大佬一起合作,前后历时2年多终于完成本书。

本书的推荐理由

    本书的推荐理由主要有三点:1.素材丰富  2.特性关联  3.先知后验

1.素材丰富,取百家之长

    本书吸取了大量国内外资料,其中主要包括Hewlett Packard公司新特性实验手册、Mastering PostgreSQL 电子书籍、Postgres Weekly每周邮件,还有PG Commiter 大佬的博客等。我们不断学习这些新特性,就如农民伯伯烧荒播种,为日后的故障案例分析打下基础。

2.三生三世,叙因缘关联

    PG数据库里的一些新特性,有来自其他数据库的应用场景,例如Oracle的绑定变量窥探、MySQL的自动记录数据行修改时间;也有同步实现其他接口协议的功能,例如libpq协议参照PG JDBC协议在PG 14里对target_session_attrs参数可连接read-only、primary、standby、prefer-standby节点。还有各版本不断演进的特性:例如分区表、逻辑复制等。本书对有关联的一些特性,将其前幕背景进行了铺垫及关联陈述。

3.先知后验,实践而求证

    大家看到的一些新特性文章可能基于某个dev开发快照版本,亦或是beta测试版本,而版本正式发布时,某些特性可能会有变化,例如:慢日志按百分比采样的功能从12改到13,15对JSON函数增加的构造函数、断言函数因回归测试时未能实现数据类型与输入值的有效性验证而再正式发布前一刻被回退,16时才正式支持。16新增的pg_maintain维护角色中间也发生了几次重命名,但最终在beta3版本被回退。

    本书新特性的示例代码均以正式版为基准,先知而后验,对一些功能进行了修订。

内容快速预览

下面简要分享一下本书的内容:

● 有哪些兼容Oracle的功能特性?

PostgreSQL 11支持事物控制的存储过程,PostgreSQL 12支持绑定变量窥探设置优化器策略,PostgreSQL 14支持查询ID分析慢查询,PostgreSQL 15支持MERGE语句,PostgreSQL 16支持子查询不带别名。

● 有哪些性能提升

PostgreSQL 10的数据分区,PostgreSQL 11的B-Tree索引并行创建,PostgreSQL 13的索引去重,PostgreSQL 14的高并发连接优化,PostgreSQL 15的统计信息内存化,PostgreSQL 16的VACUUM内存可控。

● 有哪些易用的开发函数

PostgreSQL 10的XMLTABLE函数,PostgreSQL 13的UUID数据类型的内置函数,PostgreSQL 14的string_to_table函数,PostgreSQL 16的any_value函数等。

● 逻辑复制有哪些改进?

PostgreSQL 11支持TRUNCATE操作,PostgreSQL 13支持分区表同步及同步到异构分区表,PostgreSQL 14支持大事物、二进制传输及表初始数据同步等性能提升,PostgreSQL 15支持两阶段提交、按模式发布、行列级过滤功能增强及复制冲突优化增强,PostgreSQL 16支持双向复制、standby节点复制、发布端并行应用大事务。

获取方式

    2023年PostgreSQL已经第四次成为我们的年度数据库了(DB-Engine),当前国内外环境下,PostgreSQL 正在不断崛起。本书期望从新特性的视角帮助读者掌握数据库的正确使用方式。


方式一:通过PGFans问答社区积分兑换

方式二:网购


本书相关的问题欢迎与作者联系,微信号:skyPKmoon



本文分享自微信公众号 - 开源软件联盟PostgreSQL分会(kaiyuanlianmeng)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部