2022年6月23日,墨天轮技术社区联合PostgreSQL中文社区共同举办【PostgreSQL 15 新特性解读】直播活动。

小编在这里整理了直播间的代表性问题,请老师为大家解答。并在文末附上视频回放与PPT课件,以便大家下载、回顾。

直播亮点回顾

直播间的四位讲师分别从性能体验更新、新旧版本对比,最佳技术实践等主题展开讲解,干货满满。

来自中兴通讯数据库内核系统工程的尚长军老师分享的主题是《 PostgreSQL 15 Beta 1 新特性解读》,他从应用、工具、Contirb等三个方面出发,对Sort排序、WAL压缩算法、\Doconfig命令、“_ _"注释、\watch命令、\getenv命令等多个改进做了详细解读。

以新版本的Sort排序为例,通过对比测试10000行整数值排序的性能、仅存储Dantum性能提升很明显,新版本相较PG14快了近26%。

来自云和恩墨的PG技术顾问彭冲老师带来了《 PostgreSQL 15 部分新特性预览》的主题分享,介绍了新版本在参数、开发以及并行特性等方面的改进优化。从参数出发,新版本就新增了GUC增强内部标志管理、可配置权限、新增参数权限系统表、自定义变量限制等四个改进。

云和恩墨的技术顾问阎书利老师分享的主题是《PostgreSQL 15 系统表、视图及等待事件改动》,他为大家介绍了新版本在系统表、视图及等待事件上的改动。 在系统标中新增pg_publication_namespace,当在CREATE PUBLICATION语句中指定FOR ALL TABLE IN SCHEMA子句时,会把信息存储下来,提供publication和schema之间的映射。15版本新特性通过模式发布,支持FOR ALL TABLE IN SCHEMA语法。

最后一位登场的是海能达通信股份有限公司 PostgreSQL高级DBA 崔鹏老师,他带来的主题是《PostgreSQL 15版本迁移兼容性解析》。崔老师不仅解析了升级兼容性之28项不兼容迁移,同时还带大家对PG15新特性做了整体预览。

相信本次分享能够帮助大家加深对新版本的了解,从而更好应用实战。

问答汇总

四位讲师分享的内容干货满满,直播间的问答区也非常积极。墨天轮在此整理了代表性的问题,邀请讲师们以文字的形式回答,以供大家学习交流。

尚长军

Q1、请问新手学习PostgreSQL数据库,从哪个版本入手比较好?

答:可以从最近的版本入手即可,比如PG14。

Q2、公司使用部署PG的话,哪个版本比较稳定

答:目前PG几乎每年都会有大版本发布,如果兼顾稳定和功能,建议12.7;如果需要用到一些新的能力,可以采用14.2

Q3、PG可以跨版本升级吗?

答:可以的。

Q4、MERGE 新特性是否和其他主流的数据库兼容,听说仅仅支持PL/PGSQL,那么对相关表的触发器是否有影响?

答:老版本的 MERGE 无论是从语法还是用法,都和主流的如Oracle差别比较大,因此对触发器的应用是有影响的。 据说PG15做了改进,更符合SQL标准了,可以用新版本测试一下。

Q5、PG10可以直接升级到PG15吗?

答:可以的,我们通过pg_upgrade工具进行过pg10到pg14的升级 。

Q6、PG15 在windows下有什么新的改变?

答:新的特性基本上在Windows上都是支持的,除了极少数特性。

Q7、pl/pgsql 编程有没有好的教程?

答:目前市面上有关pg的技术书籍已经很多了,我觉得最好的教程还是PG各个版本的官方参考手册。

彭冲

Q1、有没有PG和mysql、Oracle迁移的相关工具,可以提供一下?

答:常见的工具有pgloader迁移mysql、ora2pg迁移oracle。

Q2、oracle 19c 迁移到PG那个版本好?

答:保守一点可以使用13。

Q3:类似Oracle11g interval分区的自动扩展分区的功能会加入到PG里吗?

答:目前还没看到,将来版本可能有。

阎书利

Q1、请问pg新手有什么学习资料和书籍可以推荐吗?

答:《PostgreSQL修炼之道 从小工到专家》、官方文档

Q2、pg_index 这个改动,应该来说 null 只能有一个或者不能有空值这样才合理,之前为啥可以插入多个null值,基于什么考虑设计的呢?

答:这个应该和业务有关,不同业务需求不一致

Q3、pg_index是整个cluster共享的还是每个数据库拥有一份?

答:pg_index、pg_class这类的系统表是每个数据库独享一份,这些是在数据库创建时从模板数据库拷贝过来的,但是类似于pg_database、pg_namespace这些是整个cluster的所有数据库共享的。

Q4、老师,PostgreSQL数据库和主流MySQL和Oracle的相同点和区别有那些呀?

答:其实异同是比较多的。这里我主要说几点关键的:

  • 1.三个都是关系型数据库

  • 2.ORACLE是收费的,且不开源。MYSQL和PostgreSQL是开源的,但是PostgreSQL的开源协议更彻底一些

  • 3.数据库MVCC的实现方法有两种: (1)写新数据时,把旧数据移到一个单独的地方,如回滚段中,其他人读数据时,从回滚段中把旧的数据读出来; (2)写数据时,旧数据不删除,而是把新数据插入。 PostgreSQL数据库使用第二种方法,而Oracle数据库和MySQL中的innodb引擎使用的是第一种方法。

Q5、Mysql 转 PG 有什么现成好用的工具?

答:可以使用比如pgloader、FDW等方式迁移

Q6、想了解内核与源码,请问老师有没有推荐的学习资料?

答:可以看看《PostgreSQL数据库内核分析》这本书,再可以多看看源码的注释部分,一样可以学到很多知识。

崔鹏

Q1、执行计划查看有没有详细的解释?

答:推荐大家看下《PostgreSQL修炼之道 从小工到专家》这本书, 或者看下德哥视频中讲解explain这部分的内容。

Q2、pg的执行计划,查看的顺序是?

答:

postgres=# explain (analyze, verbose, costs, buffers, timing) select count(*) from t1;QUERY PLAN
------------------------------------------------------------------------------------------------------------Aggregate  (cost=20.75..20.76 rows=1 width=8) (actual time=0.017..0.018 rows=1 loops=1)

这个节点的输出, 聚合, 输出第一行前的开销是20.75 聚合的开销=20.75..20.76

Output: count(*)Buffers: shared hit=1 这个节点以及下级节点的BUFFER统计项->  Seq Scan on public.t1  (cost=0.00..18.60 rows=860 width=0) (actual time=0.011..0.012 rows=6 loops=1)

这个节点的路径(全表扫描) 0.00表示输出第一行前的成本, 如这里输出第一行前不需要排序为0.00. 后面是这个节点真实的时间

Output: id, name, age这个节点输出的列Buffers: shared hit=1 这个节点的shared buffer命中1个pagePlanning Time: 0.050 ms   SQL解析时间Execution Time: 0.102 ms 总的执行时间
(8 rows)

执行计划 自下 向上 一个节点 一个节点看

Q3、pg 有特定的适用环境么?

答:OS层面适配了所有主流操作系统。 使用Citus或者GP 可以将PG适用于HTAP业务

Q4、pg 有session 限制吗?

答:PG是多进程架构,如果会话过多 需要考虑 会话进程占用的内存等资源

资料汇总

1、视频回放:PostgreSQL 15 新特性解读

2、直播资料:PostgreSQL 15 直播资料汇总


  • 查看原文:https://www.modb.pro/db/423952

欲了解更多可以进入墨天轮社区,围绕数据人的学习成长提供一站式的全面服务,打造集新闻资讯、在线问答、活动直播、在线课程、文档阅览、资源下载、知识分享及在线运维为一体的统一平台,持续促进数据领域的知识传播和技术创新。

关注官方公众号: 墨天轮、 墨天轮平台、墨天轮成长营、数据库国产化 、数据库资讯

PostgreSQL 15新版本特性解读(含直播问答、PPT资料汇总)相关推荐

  1. PostgreSQL 15 新特性解读 | 墨天轮优质文章合集

    5月19日,PostgreSQL 全球开发组宣布 PostgreSQL 15 的第一个 beta 版本,这一新版本在开发者体验.性能表现等方面都有提升.为了帮助大家更快速了解到PostgreSQL 1 ...

  2. Java 9 - 17 特性解读:​Java 13

    Java 13在2019年9月发布,这个版本引入的正式可用特性几乎没有,是我认为最无聊的版本之一.所以我们跳过Java 13直接来看Java 14吧. Switch表达式 我觉得switch表达式在日 ...

  3. 前沿分享|阿里云资深技术专家 魏闯先:AnalyticDB PostgreSQL年度新版本发布

    简介: 本篇内容为2021云栖大会-云原生数据仓库AnalyticDB技术与实践峰会分论坛中,阿里云资深技术专家 魏闯先关于"AnalyticDB PostgreSQL年度新版本发布&quo ...

  4. 资源放送丨Oracle 20C DataGuard 新特性解读PPT视频

    前段时间,墨天轮分享了云和恩墨高级工程师 章芋文 带来的直播< Oracle 20C DataGuard 新特性解读>,在这里我们共享一下PPT和视频,供大家参考学习. 从Oracle官方 ...

  5. 探索PostgreSQL 14新特性--SEARCH和CYCLE

    探索PostgreSQL 14新特性--SEARCH和CYCLE PG14的SEARCH和CYCLE新功能大大简化了递归查询的方式,本文给出一些基于旅行计划的示例. 创建数据库 本文示例基于任何PG1 ...

  6. JDK11新特性解读

    文章目录 一.JDK11新特性一览 二.JDK11发布计划 三.JDK11特性解读 JEP 181: Nest-Based Access Control(基于嵌套的访问控制) JEP 309: Dyn ...

  7. postgresql 15源码浅析(1)—— postgres中的1号数据库

    摘要 在创建数据库集簇后,该集簇中默认会包含三个系统数据库template1.template0和postgres,其中template0和postgres都是在初始化过程中从template1复制出 ...

  8. c语言 字符串 正序再倒序_新特性解读 | MySQL 8.0 索引特性3 -倒序索引

    原创作者:杨涛涛 我们今天来介绍下 MySQL 8.0 引入的新特性:倒序索引. MySQL长期以来对索引的建立只允许正向asc存储,就算建立了desc,也是忽略掉. 比如对于以下的查询,无法发挥索引 ...

  9. 助力APP尽情“撒币”!阿里云正式上线移动直播问答解决方案

    摘要: 2018年伊始,互联网圈就刮起了一阵"大佬狂撒币,网友喜答题"的热潮,为了助力企业紧握风口,阿里云推出一站式移动直播问答解决方案.通过稳定高性能的计算基础设施和可扩展的直播 ...

  10. ES2020的新特性解读

    ES2020的新特性解读 ES2020 是 ECMAScript 对应 2020 年的版本.这个版本不像 ES6 (ES2015)那样包含大量新特性.但也添加了许多有趣且有用的特性.本文以简单的代码示 ...

最新文章

  1. AI一分钟 | 柯洁战胜AI“求报道”,期待正式与围棋AI下让子棋;小米MIUI 10全面启动,主打人工智能人机交互
  2. 机器学习基础专题:主成分分析技术PCA
  3. Leetcode 210. 课程表 II 解题思路及C++实现
  4. 网络:浏览器静态资源缓存机制
  5. 再窥--单链表和顺序存储
  6. C# 控制台或者winform程序开启http的监听状态
  7. 用原生 JS 实现双向绑定及应用实例
  8. CSRankings 学术机构排行榜:“三巨头”不可撼动,清华大学突围 AI 榜单!
  9. Brave 浏览器将用户的onion地址泄漏给 DNS提供商
  10. 转载:XPath基本语法
  11. coreseek java_lnmp+coreseek实现站内全文检索(安装篇)
  12. MySQL技术内幕 InnoDB存储引擎 第2版 下载
  13. 腾达u2无线网卡驱动Linux,腾达U2无线网卡驱动
  14. 笔记-中项/高项学习期间的错题笔记2
  15. android 读写文件 简书,Android 读取asset文件
  16. 【无标题】c语言指针2333
  17. 大脑--物质与意识之综合体,是物质有双重现象(物性与灵性)的实证
  18. Linux 命令(179)—— nice 命令
  19. 闪电贷攻击又背锅? “幕后元凶”竟是它!
  20. CS224W图机器学习笔记8-图神经网络三大应用

热门文章

  1. 信息学奥赛一本通(C++版)在线评测系统 1157:哥德巴赫猜想
  2. php图书馆占座系统代码,PHP图书馆管理系统(源码+数据库脚本+截图)
  3. JAVA毕业设计飞羽羽毛球馆管理系统计算机源码+lw文档+系统+调试部署+数据库
  4. 十五个免费Windows桌面系统工具(附下载)
  5. 2022-2028年中国高尔夫GPS手表行业竞争现状及投资策略研究报告
  6. 关于数学建模(或科研论文)的画图学习建议
  7. zemax中如何和matlab中通信,如何在ZEMAX及MATLAB之间通信.doc
  8. python3 scrapy中文文档_Python学习-scrapy3
  9. “Matter时代”行业再显梯队化,多强竞逐第一序列
  10. mini_c编译器的简单代码逻辑