PostgreSQL 18 内参
PostgreSQL 18 的内部结构:多版本机制与基于数据快照的隔离、缓冲区缓存、预写式日志、锁、查询执行和索引访问方法。
PostgreSQL 18 · 基于俄文 PG18 原版的简体中文译本

Egor Rogov 著
简体中文译本 · PostgreSQL 18 · 基于 2026 年俄文版
内容
插图
- 图 publication.1 — ДМК Пресс 出版社标志
- 图 1.1 — 数据库
- 图 1.2 — 表空间
- 图 1.3 — 分支与文件
- 图 1.4 — 进程与内存
- 图 3.1 — 页头
- 图 4.1 — 什么是数据快照
- 图 4.2 — 快照中的行版本可见性
- 图 4.3 — 快照由什么组成
- 图 4.4 — 快照由什么组成
- 图 4.5 — 事务视界
- 图 6.1 — 事务计数器回卷
- 图 6.2 — 行版本冻结与可见性规则
- 图 7.1 — 自动清理紧急触发的年龄
- 图 9.1 — 缓冲区缓存的结构
- 图 9.2 — 缓存命中
- 图 9.3 — 缓冲区查找与驱逐
- 图 10.1 — 检查点
- 图 10.2 — 检查点
- 图 10.3 — 检查点配置
- 图 12.1 — 等待队列
- 图 13.1 — 互斥模式
- 图 13.2 — 独占模式
- 图 13.3 — 独占模式
- 图 13.4 — 共享模式
- 图 13.5 — 共享模式
- 图 13.6 — 死锁
- 图 15.1 — 缓冲区缓存
- 图 15.2 — 预写日志缓冲区
- 图 15.3 — SLRU 缓存
- 图 16.1 — 演示数据库
- 图 16.2 — 解析
- 图 16.3 — 转换
- 图 16.4 — 规划
- 图 16.5 — 计划
- 图 16.6 — 计划
- 图 16.7 — 计划
- 图 16.8 — 计划
- 图 16.9 — 计划
- 图 16.10 — 计划
- 图 16.11 — 执行
- 图 17.1 — 唯一值
- 图 17.2 — 最频繁值
- 图 17.3 — 直方图
- 图 17.4 — 直方图
- 图 18.1 — 顺序扫描
- 图 18.2 — 并行执行计划
- 图 19.1 — 索引与可扩展性
- 图 20.1 — 理想情况:高相关性
- 图 20.2 — 糟糕情况:低相关性
- 图 20.3 — 糟糕情况:低相关性
- 图 20.4 — 成本估算
- 图 20.5 — 成本估算
- 图 20.6 — 访问方法比较
- 图 22.1 — 单次遍历哈希连接
- 图 22.2 — 单次遍历哈希连接
- 图 22.3 — 双次遍历哈希连接
- 图 22.4 — 双次遍历哈希连接
- 图 22.5 — 两阶段哈希连接
- 图 22.6 — 并行单阶段哈希连接
- 图 22.7 — 并行单阶段哈希连接
- 图 22.8 — 并行两阶段哈希连接
- 图 22.9 — 并行两阶段哈希连接
- 图 22.10 — 并行两阶段哈希连接
- 图 22.11 — 并行两阶段哈希连接
- 图 23.1 — 外部排序
- 图 23.2 — 外部排序
- 图 23.3 — 外部排序
- 图 23.4 — 外部排序
- 图 23.5 — 外部排序
- 图 23.6 — 连接方式比较
- 图 24.1 — 页面组织
- 图 24.2 — 页面组织
- 图 24.3 — 页面组织
- 图 24.4 — 页面组织
- 图 25.1 — 通用原理
- 图 25.2 — 等值查找
- 图 25.3 — 不等式查找
- 图 25.4 — 范围查找
- 图 25.5 — 插入
- 图 25.6 — 页面组织结构
- 图 25.7 — 跳过扫描优化
- 图 25.8 — 跳过扫描优化
- 图 25.9 — 跳过扫描优化
- 图 25.10 — 跳过扫描优化
- 图 25.11 — 跳过扫描优化
- 图 25.12 — 跳过扫描优化
- 图 26.1 — 点的 R-树
- 图 26.2 — 点的 R-树
- 图 26.3 — 点的 R-树
- 图 26.4 — 区域包含搜索
- 图 26.5 — 区域包含搜索
- 图 26.6 — 区域包含搜索
- 图 26.7 — 最近邻搜索
- 图 26.8 — 最近邻搜索
- 图 26.9 — 最近邻搜索
- 图 26.10 — 最近邻搜索
- 图 26.11 — 插入
- 图 26.12 — 插入
- 图 26.13 — tsvector 索引
- 图 26.14 — tsvector 索引
- 图 26.15 — tsvector 索引
- 图 26.16 — tsvector 索引
- 图 27.1 — 点的四叉树
- 图 27.2 — 点的四叉树
- 图 27.3 — 点的四叉树
- 图 27.4 — 操作符类
- 图 27.5 — 操作符类
- 图 27.6 — 页面组织
- 图 27.7 — 查找
- 图 27.8 — 查找
- 图 27.9 — 插入
- 图 27.10 — 插入
- 图 27.11 — 插入
- 图 27.12 — 插入
- 图 27.13 — 点的 K-维树
- 图 27.14 — 点的 K-维树
- 图 27.15 — 点的 k-维树
- 图 27.16 — 字符串的前缀树
- 图 27.17 — 搜索
- 图 27.18 — 插入
- 图 27.19 — 插入
- 图 28.1 — 全文搜索索引
- 图 28.2 — 搜索
- 图 28.3 — 频繁词和稀有词
- 图 28.4 — 插入
- 图 28.5 — 操作符类 jsonb_ops
- 图 28.6 — 操作符类 jsonb_path_ops
- 图 29.1 — 页面组织结构
- 图 29.2 — 插入值
- 图 29.3 — 区域大小与查找效率
- 图 29.4 — 多范围值(minmax-multi)
- 图 29.5 — 多范围值(minmax-multi)
- 图 29.6 — 布隆过滤器(bloom)
表格
- 表 2.1 — SQL 标准中的隔离级别与异常
- 表 2.2 — PostgreSQL 中的隔离级别与异常
- 表 12.1 — 锁模式冲突矩阵:Shared 与 Exclusive
- 表 12.2 — 关系锁冲突矩阵
- 表 13.1 — 行锁冲突矩阵
- 表 18.1 — 表大小与进程数量
- 表 26.1 — 词素的签名
- 表 26.2 — 文档的签名
- 表 28.1 — 一致性函数:「стоя」或「кудряв」
- 表 28.2 — 一致性函数:必需词和可选词
关于这个版本
本译本根据 Egor Rogov 的《PostgreSQL 18 изнутри》俄文原版制作,保留原书的章节顺序、示例、插图、代码、脚注、页码锚点和出版信息。页码指向 2026 年俄文印刷版;图表编号用于本站导航。
原书版权归 ООО «ППГ» 和 ДМК Пресс 所有,2026 年。本站提供的是 PostgreSQL 18 俄文原版的简体中文阅读版。
俄文 PG18 原版 · 扉页与出版信息 · 版权与出版信息