1. openGauss 的 Ustore(原地更新)存储引擎与行级 MVCC 优势
说明 openGauss 的 Ustore(原地更新)存储引擎及其行级 MVCC 的优势?
- Ustore 原地更新
- 行级 MVCC
- 相比 Astore 的优势
openGauss 默认提供 Astore(追加更新)与 Ustore(原地更新)两种存储引擎。Ustore 采用"原地更新 + 行级 MVCC":更新时直接在原数据页上修改,通过行级版本信息(xmin/xmax、undo 链)实现多版本并发控制,而不是像 Astore 那样靠元组新旧版本追加(append 产生版本链)。Ustore 的优势:消除 / 减小版本链带来的页膨胀与索引膨胀,减少扫描时的版本来回,提升更新密集场景的读性能与空间利用率;undo 基于日志管理,支持更高效的回滚与快照。它特别适合大量更新、高并发事务的 OLTP 场景。
MVCC 的核心是"快照隔离",Ustore 以"行内原地更新 + undo 版本"实现,比"追加新版本"更省空间、索引更稳定。相比 Astore 的元组版本链,Ustore 减少膨胀与回看成本,是 openGauss 存算演进的关键。