小红花·文摘
  • 首页
  • AI Tokens🪙
  • 排行榜🏆
  • 直播
  • FAQ

多版本并发控制(MVCC)是现代数据库的核心机制,允许读写操作并发进行,避免了传统加锁的性能瓶颈。PostgreSQL 通过在堆表中存储版本链和快照隔离来管理事务可见性。虽然快照隔离能防止脏读和不可重复读,但存在 write skew 问题。为了解决这一问题,PostgreSQL 引入了可序列化快照隔离(SSI),增加了读写依赖追踪。MVCC 的代价包括版本膨胀和 VACUUM 开销,因此需要合理选择隔离级别以平衡性能与正确性。

数据库 MVCC:快照隔离到底隔离了什么

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-09-25T00:00:00Z
Elizabeth Garrett Christensen:Postgres 架构三十年:Tom Lane 访谈

PostgreSQL 迎来30周年,核心开发者Tom Lane回顾项目历程。他指出进程隔离模型带来代码简洁与崩溃恢复优势,但连接扩展需依赖连接池。MVCC和WAL设计成功,将维护工作推给后台。项目坚持可扩展性,但解析器仍难扩展。治理靠邮件共识,无正式路线图。AI生成报告增多,社区强调人类需对代码负责。

Elizabeth Garrett Christensen:Postgres 架构三十年:Tom Lane 访谈

Planet PostgreSQL Planet PostgreSQL · 2026-09-09T17:40:00Z

本文介绍etcd v3.5.33的MVCC数据模型,核心是Revision(main/sub)全序、keyIndex的generation生命周期,以及内存treeIndex与bbolt后端的职责分工。相比ZooKeeper的覆盖写和一次性Watch,etcd v3保留历史版本直到compaction,支持持久Watch和Txn compare可见性。文章还涉及与Watch、Txn、K8s resourceVersion的接口,以及历史保留与磁盘占用的权衡。

【etcd】MVCC 数据模型:Revision、keyIndex 与 generation

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-08-26T00:00:00Z

本文介绍etcd排障的五轴坐标系:Raft共识、WAL持久化、MVCC存储、Watch同步、Lease TTL。通过症状映射到对应轴,提供诊断工具和指标,如endpoint status字段解读。强调先定位问题轴再下钻组件,避免盲目defrag或restore。附K8s控制面对照表和证据包写法建议。

【etcd】排障五轴:Raft/WAL/MVCC/Watch/Lease 口令表

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-08-26T00:00:00Z

本文介绍 etcd 生产内核系列文章,涵盖 Raft、WAL、MVCC、Watch、Lease 五轴排障框架,共16篇。内容聚焦读写失败归因、线性一致读、Watch 追赶、Lease 切换及 K8s 耦合,并给出选型建议(何时用 etcd 或 TiKV/FDB)。版本锚定 v3.5.33,适合 SRE 和架构师深入掌握 etcd 运维与故障定位。

etcd / 生产内核:Raft、WAL、MVCC 与 Kubernetes 控制面底座

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-08-26T00:00:00Z

本文介绍etcd生产内核系列文章,聚焦Raft共识、WAL持久化、MVCC存储、Watch同步和Lease TTL五条排障坐标系。文章指出常见问题如proposal卡顿、follower读stale、Watch追赶OOM等,并规划16篇阅读路线,强调K8s apiserver与etcd的耦合关系,为运维排障提供系统化框架。

【etcd】生产全景:缺口、五轴坐标系与 16 篇路线

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-08-26T00:00:00Z

etcd v3.5.33将MVCC映射至bbolt,采用mmap预分配与批量提交(100ms或10000条)优化fsync。单写者约束使写路径串行,读路径并发。delete操作立即提交保证线性一致。bucket布局以revision为键,treeIndex管理逻辑映射。

【etcd】bbolt 后端:mmap、batch 与单写者约束

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-08-26T00:00:00Z

本文介绍etcd v3.5.33中Raft提交条目如何通过apply管道转为MVCC revision并触发Watch。核心是区分committed index与applied index:commit仅表示日志复制完成,apply才更新MVCC状态。applyAll循环处理快照和条目,treeIndex内存索引过滤revision后批量读bbolt。Watch在事务End时同步通知。apply滞后会通过ErrTooManyRequests背压客户端,排障需区分Raft复制慢还是apply慢。

【etcd】treeIndex 与 Apply 管道:propose → commit → apply

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-08-26T00:00:00Z

本文介绍etcd v3.5.33中Txn事务的实现机制,包括只读与写事务路径、compare操作(MOD/CREATE/VERSION等)、MVCC可见性及嵌套事务处理。同时分析Jepsen测试边界:KV多键事务在3.4.3中通过严格可串行化检验,但Lease锁因时钟分区问题不安全,需配合fencing机制使用。最后提供并发场景速查表,强调Txn用于条件更新和锁保护,避免无Lease永久key等误区。

【etcd】Txn 与并发语义:compare/mod 与 Jepsen 边界

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-08-26T00:00:00Z

PostgreSQL 的隔离级别从宽松到严格依次为读已提交、可重复读、可串行化,分别防止脏读、不可重复读、幻读和序列化异常。MVCC 通过快照实现隔离,快照记录事务状态而非 LSN。CDC 中,复制槽创建时导出快照,配合 WAL 流确保数据完整,需用可重复读只读事务导入快照。

PostgreSQL中的事务隔离与导出快照

Kimserey Lam’s website, Software Development blog posts, videos and tutorials Kimserey Lam’s website, Software Development blog posts, videos and tutorials · 2026-07-29T05:00:00Z
Radim Marek:PostgreSQL的MVCC很糟糕,但其他人的也一样。

PostgreSQL的MVCC设计虽受批评,但所有数据库的多版本并发控制都有代价,只是失败模式不同。PostgreSQL将旧版本存于表中,导致写放大、表膨胀和清理负担;Oracle和InnoDB用撤销日志,但回滚和读取旧数据成本高;其他系统如MongoDB、LSM和etcd也各有缺陷。核心是权衡,而非绝对优劣。

Radim Marek:PostgreSQL的MVCC很糟糕,但其他人的也一样。

Planet PostgreSQL Planet PostgreSQL · 2026-07-27T14:00:40Z

本文深入探讨了MySQL InnoDB的MVCC机制,分析了其对DML延迟、崩溃恢复和并发语义的影响,并强调理解源码结构的重要性。提供了源码路径、流程图和实验步骤,并与PostgreSQL进行了对比,讨论了MVCC与日志系统的耦合关系及本地验证实验的必要性。

【MySQL InnoDB 内核】MVCC 与 Read View

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-07-23T00:00:00Z

本文介绍WiredTiger存储引擎的时间戳与快照机制。核心概念包括:应用时间戳由上层控制,执行时间是墙上时钟;active time window由oldest、stable、pinned界定可读与可丢弃历史;快照通过max/min/并发事务ID列表决定可见性;默认snapshot隔离,prepared事务有特殊边界。文章强调时间戳与快照共同支撑MongoDB的MVCC实现。

【WiredTiger 内核】Timestamps、Snapshot 与事务:可见性契约

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-07-22T00:00:00Z

本文对比PostgreSQL、InnoDB、RocksDB和WiredTiger四种存储引擎,从缓存、脏页、WAL、MVCC落点、旧版本回收及故障形态等维度列出机制对照表,强调机制与代价而非性能排名。指出WiredTiger区分内存与磁盘页,HS存储旧版本,并提醒避免跨引擎类比运维参数,为选型提供参考。

【WiredTiger 内核】与 PG / InnoDB / RocksDB 机制对照

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-07-22T00:00:00Z

本文介绍WiredTiger内核系列文章,涵盖MongoDB默认引擎的MVCC实现路径,包括Cache、Eviction、Reconciliation、History Store和Checkpoint等核心机制。系列共17篇,从Session/Cursor到选型对照,重点解析更新链、脏页驱逐、旧快照读取及崩溃恢复,并对比PG、InnoDB、RocksDB等引擎,为运维和架构师提供完整技术参考。

【WiredTiger 内核】Cache · Eviction · Reconciliation · History Store · Checkpoint

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-07-22T00:00:00Z
每次更新都会留下幽灵:PostgreSQL中的MVCC、膨胀与VACUUM

PostgreSQL通过MVCC实现多版本并发控制,每次更新会保留旧版本元组,导致表膨胀。事务使用XID和命令ID跟踪可见性,快照隔离决定数据可见性。VACUUM清理死元组,但受事务地平线限制,长事务会阻止清理。子事务和HOT链影响清理效率,需定期维护以避免性能下降。

每次更新都会留下幽灵:PostgreSQL中的MVCC、膨胀与VACUUM

PlanetScale - Blog PlanetScale - Blog · 2026-07-20T00:00:00Z

WiredTiger通过History Store实现MVCC:用户表仅存最新已提交版本,旧版本存入独立的WiredTigerHS.wt文件。读路径按update chain→磁盘页→History Store顺序查找。相比Lookaside,Durable History提供跨eviction/checkpoint的可查询历史契约,由minSnapshotHistoryWindowInSeconds控制保留窗口。与PG堆版本、InnoDB undo相比,WT将当前与历史分离,利于用户页驱逐,但增加历史I/O与磁盘开销。

【WiredTiger 内核】History Store 与 Durable History:文档库里的第三种 MVCC

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-07-19T00:00:00Z

WiredTiger采用第三种MVCC方案:用户表B-Tree仅存最新已提交版本,旧版本存入全局History Store(WiredTigerHS.wt)。写路径通过reconciliation将旧版本写入HS,读路径按update chain→磁盘页→HS顺序查找。Durable History取代Lookaside,使历史可跨eviction/checkpoint持久查询,由minSnapshotHistoryWindowInSeconds控制保留窗口。与PostgreSQL堆版本、InnoDB undo相比,WT分离当前与历史,利于用户页驱逐,但增加历史I/O与磁盘开销。

【WiredTiger 内核】History Store 与 Durable History(已迁入系列第 08 篇)

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-07-19T00:00:00Z

TiKV 将 Percolator 的锁、数据和写入三列映射为 RocksDB 的 CF_LOCK、CF_DEFAULT 和 CF_WRITE。通过时间戳的位反转实现 Key 编码规则,确保查询时优先返回最新版本。TiKV 的 MVCC 时间戳由 PD 的 TSO 提供,确保跨 Region 的全局一致性,区别于 RocksDB 的单机快照机制。这三种 CF 共同维护同一逻辑数据,需联合管理。

【TiKV / HTAP 内核】Key 编码与 MVCC:三 CF 与时间戳

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-07-16T00:00:00Z

Rama 0.3 发布,标志着从长期打磨阶段转向稳定发布,承诺每2-8周更新一次。Rama 已在多种真实业务中应用,展现出生产级扩张潜力。nexir-mvcc-core 专注于 MVCC 核心,提供可复用的事务组件,适合 KV 和分布式数据库。Rust OSDev 生态持续推进,多个项目如 Asterinas 和 Zinnia 取得进展,提升了嵌入式和内核级开发体验。

【Rust日报】2026-07-08 rama 0.3 发布:四年打磨的 Rust 网络服务底座,开始转向 2-8 周发布列车

Rust.cc Rust.cc · 2026-07-08T01:07:52Z
  • <<
  • <
  • 1 (current)
  • 2
  • 3
  • >
  • >>
👤 个人中心
在公众号发送验证码完成验证
登录验证
在本设备完成一次验证即可继续使用

完成下面两步后,将自动完成登录并继续当前操作。

1 关注公众号
小红花技术领袖公众号二维码
小红花技术领袖
如果当前 App 无法识别二维码,请在微信搜索并关注该公众号
2 发送验证码
在公众号对话中发送下面 4 位验证码
友情链接: MOGE.AI 九胧科技 1tok 菜鸟教程 Remio.AI DeekSeek连连 53AI 神龙海外代理IP IPIPGO全球代理IP 东波哥的博客 匡优考试在线考试系统 开源服务指南 蓝莺IM Solo 独立开发者社区 AI酷站导航 极客Fun 我爱水煮鱼 周报生成器 He3.app 简单简历 白鲸出海 T沙龙 职友集 TechParty 蟒周刊 Best AI Music Generator 模力方舟 Gitee AI

小红花技术领袖俱乐部
小红花·文摘:汇聚分发优质内容
小红花技术领袖俱乐部
Copyright © 2021-
粤ICP备2022094092号-1
公众号 小红花技术领袖俱乐部公众号二维码
视频号 小红花技术领袖俱乐部视频号二维码