【DB吐槽大会】第63期 - PG 缺乏跨版本兼容性评估工具

简介: 大家好,这里是DB吐槽大会,第63期 - PG 缺乏跨版本兼容性评估工具

背景


1、产品的问题点

  • PG 大版本升级不支持业务侧兼容性自动评估

2、问题点背后涉及的技术原理

  • PG 的大版本升级方式较多: 支持pg_upgrade导出元数据的模式, 逻辑增量定义的模式, 全量导出导入的模式.
  • 但是高版本和低版本之间可能存在一些不兼容的点:
  • 插件版本是否不兼容
  • SQL语法是否不兼容, 是否去掉了某些语法, 是否去掉了某些函数.

3、这个问题将影响哪些行业以及业务场景

  • 通用, 大版本升级时
  • 业务想使用大版本的新功能或提升性能,
  • 业务使用的数据库版本太老, 社区已经不支持, 被迫升级到大版本

4、会导致什么问题?

  • 业务需要自己评估版本升级后业务是否兼容.
  • 通常比较麻烦, 需要去看PG的release notes, 看里面的大版本升级兼容性部分, 通常只会将与上一个版本的差异, 不会涉及到与更早的版本之间的差异.
  • 如果升级跨了很多个大版本, 需要看很多release notes, 比较复杂.

5、业务上应该如何避免这个坑

  • 必须搜集所有的SQL、插件、定义等, 根据release notes的大小版本差异逐条比对是否存在不兼容的问题.

6、业务上避免这个坑牺牲了什么, 会引入什么新的问题

  • 比较复杂, 容易出问题.

7、数据库未来产品迭代如何修复这个坑

  • 希望数据库提供可评估业务侧兼容性报告的工具, 类似阿里云adam(采集元数据、应用SQL请求等, 在大版本库中回放, 或根据已有规则判定兼容性), 报告业务运行的SQL , DDL 等在升级到大版本后, 有哪些不兼容, 应该怎么改等.



相关文章
|
5月前
|
人工智能 Java Linux
SpringBoot整合FFmpeg,打造你的专属视频处理工厂
Fmpeg 是什么?如果你有一个朋友,他能把 MP4 变成 AVI,就像把咖啡变成奶茶,裁剪视频,比理发师剪头发还精准,提取音频,比从披萨上分离芝士还干净,压缩视频,比你把行李箱塞满时还高效。
189 7
|
7月前
|
人工智能 弹性计算 JavaScript
Moltbot(原Clawdbot)2026年极简部署教程,轻松GET智能AI助手当牛马
Moltbot(原Clawdbot)作为开源AI助手,凭借自动化任务处理、多渠道通信对接、大模型灵活调用等特性,成为个人与小型团队的高效辅助工具。2026年阿里云优化部署流程,推出极简部署方案,无需复杂环境配置,仅需1分钟即可完成Moltbot云上落地,摆脱本地部署的续航、安全限制。本文将详细记录部署全流程,确保不改变原意且无营销表述,助力用户快速启用云端AI助手。
669 0
|
人工智能 监控 安全
从 DeepSeek 敏感信息泄露谈可观测系统的数据安全预防
本文将探讨 SLS 中增强数据安全的几种方式:权限精细化管控有效减少了潜在安全风险;接入层脱敏技术阻止敏感数据落库,提升了隐私保护;StoreView 字段集控制通过限制查询数据范围,降低数据泄露损害。智能监控系统提供实时监测,快速识别并阻断异常拖库行为,为企业提供了迅速响应和抵御威胁的能力。
|
10月前
|
存储 负载均衡 安全
NAKIVO Backup & Replication 11.1 发布 - 快速高效能的备份解决方案
NAKIVO Backup & Replication 11.1 发布 - 快速高效能的备份解决方案
252 0
|
存储 NoSQL 固态存储
阿里云服务器云盘选择参考,ESSD Entry云盘和Entry云盘区别
在我们选择阿里云服务器系统盘和数据盘的时候,有部分云服务器同时支持ESSD Entry云盘和ESSD云盘,对于部分初次接触阿里云服务器的用户来说,可能并不是很清楚他们之间的区别,因此不知道选择哪种更好更能满足自己场景的需求,本文为大家介绍一下阿里云服务器ESSD Entry云盘和ESSD云盘的区别及选择参考。
|
SQL 存储 监控
Hive 插入大量数据
【8月更文挑战第15天】
1064 0
|
存储 安全 Java
Python File处理详解!
本文详细介绍了Python文件处理的方法及其优缺点。通过`open()`、`read()`、`write()`和`append()`等函数,Python能够轻松实现文件的创建、读取、写入及追加等操作。文章还展示了如何使用`tell()`获取文件指针位置,并提供了涵盖文件创建、读取、追加、重命名及删除的完整示例。Python文件处理不仅功能强大且跨平台兼容,但也存在易错性、安全风险及处理大文件时的性能问题。适合数据存储、配置管理和数据分析等多种应用场景。
507 4
|
存储 关系型数据库 MySQL
MySQL删除数据 文件大小不变的原因以及处理空洞问题
总之,MySQL中删除数据后文件大小不变的现象是由于InnoDB存储引擎的设计决策,旨在优化性能和空间的重用。处理这一问题需要综合考量数据库的使用场景以及可能的性能影响,选择合适的策略
1783 6
|
运维 Java 数据库连接
云效产品使用报错问题之云效流水线执行总是构建时间长还总失败,如何解决
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。