68.4. 可见性映射
每一个堆关系都有一个可见性映射(VM)用来跟踪哪些页面
只包含已知对所有活动事务可见的元组,它也跟踪哪些页面只包含
未被冻结的元组。它伴随着主关系数据被存储在一个独立的关系分支中,
以该关系的文件节点号加上一个_vm
后缀来命名。例如,
如果一个关系的文件节点为12345,其VM被存储在名为12345_vm
的文件中,
该文件域主关系文件在同一个目录中。注意索引没有VM。
可见性映射仅为每个堆页面存储两个位。第一位如果被设置, 表示该页面上的元组都是可见的,或者换句话说该页面不含有 任何需要被清理的元组。这些信息也可以被index-only scans用来只依靠索引元组回答查询。第二位如果 被设置,表示该页面上的元组都已经被冻结。这也意味着防回卷 清理操作也不需要重新访问该页面。
该映射是保守的,我们可以确定不论何时一个位被设置,那就说明条件为真,但是如果一个位没有被设置,它可能为真也可能不为真。可见性映射的位只会被清理操作设置,但是可以被任何在页面上进行的数据修改操作清除。
pg_visibility模块可以被用来检查存储在可见性 映射中的信息。
文章转载自PostgreSQL全球开发组,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
外国CTO也感兴趣的开源数据库项目——openHalo
小满未满、
1502次阅读
2025-04-21 16:58:09
9.9 分高危漏洞,尽快升级到 pgAdmin 4 v9.2 进行修复
严少安
384次阅读
2025-04-11 10:43:23
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
371次阅读
2025-04-15 14:48:05
转发有奖 | PostgreSQL 16 PGCM高级认证课程直播班招生中!
墨天轮小教习
180次阅读
2025-04-14 15:58:34
中国PostgreSQL培训认证体系新增PGAI应用工程师方向
开源软件联盟PostgreSQL分会
178次阅读
2025-05-06 10:21:13
PG生态赢得资本市场青睐:Databricks收购Neon,Supabase融资两亿美元,微软财报点名PG
老冯云数
138次阅读
2025-05-07 10:06:22
SQL 优化之 OR 子句改写
xiongcc
135次阅读
2025-04-21 00:08:06
告别老旧mysql_fdw,升级正当时
NickYoung
116次阅读
2025-04-29 11:15:18
PostgreSQL中文社区亮相于第八届数字中国峰会
PostgreSQL中文社区
101次阅读
2025-05-07 10:06:20
PostgreSQL的dblink扩展模块使用方法
szrsu
101次阅读
2025-04-24 17:39:30