可见性映射表的核心机制:
-
位图结构:每个数据块在VM中对应一个位(bit)
- 位值为1:表示该数据块中所有元组对所有事务都可见,没有死元组
- 位值为0:表示该数据块可能包含死元组,需要检查
-
状态转换时机:
- 当VACUUM清理完某个数据块的所有死元组后,将该块VM位设为1
- 当有事务在该数据块中删除或更新数据时,将该块VM位设为0
-
性能优势:
- VACUUM效率:只需扫描VM位为0的数据块,跳过"干净"的数据块
- 索引扫描优化:对于Index-Only Scan,如果索引包含所有需要的列且VM位为1,可直接从索引返回结果


被折叠的 条评论
为什么被折叠?



