【DB吐槽大会】第7期 - PG slot 无failover

简介: 大家好,这里是DB吐槽大会,第7期 - PG slot 无failover

背景


1、产品的问题点

  • slot不支持failover

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

  • PG的逻辑日志解析功能需要slot来记录解析的WAL日志位点, 下次解析从位点继续. 除了记录位点, PG还需要依赖位点来保留未解析的WAL日志, 以及保留用于解析WAL日志的catalog版本(例如表结构信息). 但是SLOT不支持failover, 使用PG流复制构建的主从HA架构下一旦发生HA, 从库(切换成主库)是没有SLOT信息的.
  • 使用pg_upgrade进行大版本升级时,slot也会被清理.

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

  • 使用PG流复制构建的主从HA架构, 并且有逻辑日志订阅需求的场景(例如跨实例共享某些表的数据、将数据库的增量日志同步到其他系统, 例如mq或者搜索引擎等. 使用了PG的pub,sub来进行实例之间的表级数据同步).

4、会导致什么问题?

  • 发生主从切换后, SLOT位点丢失, 需要重建SLOT, 存在丢失增量数据的风险. (例如老的主节点与切换到新的主库新建的slot位置之间存在WAL GAP.)
  • 大版本升级无法保留slot

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

  • 发生HA时, 立即在新的主库新建同名的slot, 但是wal gap导致的逻辑增量日志丢失无解.
  • 大版本升级属于计划内维护, 可以在升级前消费掉所有的wal日志, 并且在升级后立即创建slot. 保证没有wal gap导致的逻辑增量日志问题.

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

  • 增加了管理复杂度

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

  • slot failover功能. (RDS PG 已修复, 期待PolarDB PG开源这个功能)
相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
19天前
|
人工智能 自然语言处理 DataWorks
DataWorks AI助理:一句话,帮你搞定研发周报!
本文介绍如何用一句指令让DataWorks AI助理自动生成研发周报并推送至钉钉文档。涵盖三大核心步骤:构建工作空间知识库以理解业务语义、授权钉钉文档API、创建自定义SKILL固化流程。全程约1–2分钟,大幅提升周报效率。
225 1
|
3月前
|
关系型数据库 MySQL 测试技术
从0到1拿下测试实习,再到转正,可以怎么走?
本文为0基础在校生量身定制测试岗校招指南,系统梳理从认知岗位、夯实基础(测试理论/Linux/数据库/接口测试)、项目实战、简历优化、投递策略、面试准备到实习转正的完整路径,强调“边学边投、闭环实践、业务驱动”,助你高效拿下测试实习并成功转正。
|
2月前
|
数据采集 存储 人工智能
全民养虾热潮进入国产时代!国产大厂都推出了哪些openclaw工具?深度解析来了
2026年AI智能体元年,“百虾大战”爆发!OpenClaw开源框架催生ArkClaw、QClaw、Stepclaw、WorkBuddy等8款国产“龙虾”产品,覆盖云端SaaS、本地执行、微信直连、企业办公等多元场景,让AI真正从“能说”走向“会干”。
555 0
|
4月前
|
安全 数据安全/隐私保护 iOS开发
使用 DFU 模式修复或恢复 Mac 固件
搭载 Apple 芯片的 Mac 电脑 DFU 模式全新安装 macOS
1225 0
使用 DFU 模式修复或恢复 Mac 固件
|
4月前
|
人工智能 弹性计算 安全
阿里云最新优惠活动:云服务器抢购,企业补贴,AI产品特惠,云产品组合购等活动介绍
2026年阿里云推出多项优惠活动,涵盖云服务器、AI产品及云产品组合购。云服务器方面,提供轻量应用服务器限时秒杀及ECS低价长效特惠等活动;企业用户可享迁云补贴及出海业务扶持,最高获10万元补贴。AI产品领域,阿里云百炼Token Plan提供多档位套餐,Qwen3.6全模型通享4.5折起。对于需采购多种云产品的用户,云产品组合购活动提供超值折扣,覆盖90%以上上云场景,助力企业数字化转型。
|
4月前
|
缓存 监控 NoSQL
不同业务如何选IP查询更新频率?离线与在线协同策略
本方案提出IP字段分级配置方法:慢变字段(归属地/ASN)用日更离线库+24h+ TTL;快变字段(代理/风险)依赖小时级甚至5分钟级在线API,支持强刷。明确禁用“离线库+长TTL”于强对抗场景,固化SLA三指标(陈旧度、回源率≤10%、P95延迟≤300ms),并提供六大业务场景开箱即用配置。(239字)
279 0
|
5月前
|
缓存 Java 编译器
Java 异常体系:从底层实现到性能优化的核心真相
Java异常远不止语法糖!本文深度剖析JVM异常表机制、栈轨迹生成开销、JIT四大优化(快速抛出/冷路径/异常消除/表合并),破除“try-catch拖慢性能”等四大误区,揭示异常性能损耗的真实源头,并给出业务异常关闭栈轨迹等6条生产级最佳实践。(239字)
309 8
|
Windows
Windows下版本控制器(SVN)-启动服务器端程序
Windows下版本控制器(SVN)-启动服务器端程序
646 4
|
存储 搜索推荐 JavaScript
Java如何获取Cookie里的指定值
【9月更文挑战8天】
596 2
|
C++
C++实现中文大写与阿拉伯数字的相互转换(类封装)
C++实现中文大写与阿拉伯数字的相互转换(类封装)
1225 0