本文为您介绍云数据库 PostgreSQL 内核版本的背景信息和优势。
背景信息
PostgreSQL(简称 PG)是一款全球流行的企业级开源数据库,2017、2018连续两年蝉联 DB-Engine 年度数据库,2019年荣获 OSCON(The O'Reilly Open Source Convention)开源软件终身成就奖,2020年再次获得年度数据库冠军。
腾讯云数据库 PostgreSQL 是经过腾讯多年的业务沉淀和积累,在社区版本的 PostgreSQL 之上,根据不同的业务特征加入了特色功能和优化的内核版本。其不仅对 PostgreSQL 数据库引擎、权限管理、复制性能等方面进行了大量优化,同时提升了在云上的易用性和可维护性。
内核版本号
內核版本号由两部分组成:社区版本号和内部版本号。
v{社区主版本号.社区次版本号}_r{不兼容版本号.兼容版本号}如:v12.7_r1.1
v 代表 Version,r 代表 Release,如:v12.7_r1.1对应的社区版本是12.7,r1.1是代表腾讯云迭代版本,由
r {不兼容版本号}.{兼容版本号}
这两部分构成。说明
Version:PostgreSQL 社区版本号,与社区对应。包含有两个数字,分别是 Major Version、Minor Version;Major Version 从10开始(9.3、9.4、9.5、9.6按照旧递进关系),Minor Version 从1开始。当社区次要版本 released 后,腾讯云会定时跟随社区版本进行版本更新。
Release:云数据库 PostgreSQL 迭代用的版本号,表达云数据库对 PostgreSQL 所做的修改。包含有两个数字,分别是 Incompatible Version 和 Compatible Version;Incompatible Version 从1开始,Compatible Version 从0开始。
不兼容版本号
不兼容定义:用新的数据库内核程序启动数据库实例,若启动失败或功能无法正常使用,该修改就是不兼容的。
当内核支持了不兼容的功能,需要将不兼容版本号增加1。不兼容版本号将用于判断能否直接进行二进制小版本升级。
兼容性版本号
增加兼容性的修改时,需要将兼容版本号增加1。
版本支持列表
PostgreSQL 10
PostgreSQL 11
PostgreSQL 12
PostgreSQL 13
PostgreSQL 14
PostgreSQL 15
PostgreSQL 16
您可通过 PostgreSQL 控制台 实例列表,查看云数据库 PostgreSQL 的数据库版本。不同的版本号代表对应兼容的社区版本,如:PostgreSQL 12 兼容社区 PostgreSQL 12.x 的所有子版本,12.1、12.2、12.3等。版本生命周期请参考 大版本生命周期说明。
版本规则
Version + Release 一起组成完整版本,称为数据库内核版本。
Major Version 对应一个社区演化分支,各自迭代,如10、11、12等,分别拥有自己的版本号序列。
当社区宣布 Major Version 不再维护时,相应版本将停止新购。但腾讯云会一直维护此版本的数据库实例,直到用户实例主动销毁或迁移。
Minor Version 跟随社区的变更,Release 根据腾讯云数据库内核所做功能的变更而变更。
优势
相比开源版本 PostgreSQL 具有如下特点:
更强的稳定性
云数据库 PostgreSQL 在开源 PostgreSQL 的基础上,优化了部分数据库底层实现,使数据库因外界影响受到崩溃的问题极大减少,提升了数据库的稳定性。
主从同步性能增强
社区版 PostgreSQL 在大量 DDL 处理时,主从同步性能变得极其差,云数据库 PostgreSQL 在此方面进行极大优化,整体提升高达3万倍。
更短的访问延迟
云数据库 PostgreSQL 在大量短连接场景进行了建连优化,使数据库连接性能消耗减少80%,极大提升了短连接场景的性能体验。