postgresql什么是FSM
2018-03-12 11:55
357 查看
postgresql什么是FSM?
FSM,全称Free Space Map,空闲空间映射。
作用:FSM管理的是relation对应的所有的Block,它记载着数据文件中每个数据块的可用空间的大小。
老版本中fsm是记录在共享缓冲区中,有两个与FSM相关的两个参数:
max_fsm_relations (integer)
max_fsm_pages (integer)
PostgreSQL8.4版本后,这两个参数被废弃,通过VACUUM发现的自由空间开始记录在*_fsm文件中。
可以通过pg_freespacemap模块来检查空闲空间映射(FSM)。
首先:highgo=# create EXTENSION pg_freespacemap;
CREATE EXTENSION然后:postgres=# SELECT * FROM pg_freespace('pg');
blkno | avail
-------+-------
0 | 0
1 | 0
2 | 0
3 | 32
4 | 704
5 | 704
6 | 704
7 | 1216
8 | 704
9 | 704
10 | 704
11 | 704
12 | 704
13 | 704
14 | 704
15 | 704
16 | 704
17 | 704
18 | 704
19 | 3648
(20 rows)
postgres=# SELECT * FROM pg_freespace('pg', 7);
pg_freespace
--------------
1216
(1 row)
By 徐云鹤
FSM,全称Free Space Map,空闲空间映射。
作用:FSM管理的是relation对应的所有的Block,它记载着数据文件中每个数据块的可用空间的大小。
老版本中fsm是记录在共享缓冲区中,有两个与FSM相关的两个参数:
max_fsm_relations (integer)
max_fsm_pages (integer)
PostgreSQL8.4版本后,这两个参数被废弃,通过VACUUM发现的自由空间开始记录在*_fsm文件中。
可以通过pg_freespacemap模块来检查空闲空间映射(FSM)。
首先:highgo=# create EXTENSION pg_freespacemap;
CREATE EXTENSION然后:postgres=# SELECT * FROM pg_freespace('pg');
blkno | avail
-------+-------
0 | 0
1 | 0
2 | 0
3 | 32
4 | 704
5 | 704
6 | 704
7 | 1216
8 | 704
9 | 704
10 | 704
11 | 704
12 | 704
13 | 704
14 | 704
15 | 704
16 | 704
17 | 704
18 | 704
19 | 3648
(20 rows)
postgres=# SELECT * FROM pg_freespace('pg', 7);
pg_freespace
--------------
1216
(1 row)
By 徐云鹤
相关文章推荐
- PostgreSQL 是什么?该怎么发音?Postgres又是什么?
- PostgreSQL的configure 干了些什么(一)
- PostgreSQL 10.1 文档 【前言---1.postgresql是什么】
- re:请教高手们PostgreSQL里面NULL::varchar是什么意思?下面有详细整条语句~请高手们进来帮忙~
- PostgreSQL热备份时pg_start_backup() 做了什么?
- PostgreSQL从菜鸟到专家 什么是数据库管理系统
- PostgreSQL中initdb做了什么
- PostgreSQL:什么情况会触发 WAL 日志归档?
- PostgreSQL的configure 干了些什么(二)
- PostgreSQL热备份时pg_start_backup() 做了什么?
- PostgreSQL启动main函数都干了什么(一)
- PostgreSQL中流复制pg_basebackup做了什么
- mysql的默认用户名和密码的什么?
- PostgreSQL学习手册(PL/pgSQL过程语言)
- google X Lab:人工脑自动学习什么…
- 【伯乐在线】成为谷歌软件工程师你需要准备什么?
- 深入了解JVM、JRE、JDK 什么是JVM、JRE、JDK
- 什么是 AES-GCM加密算法
- 在C++ 中的清屏函数是什么?
- Asp.net 获取客户端IP地址的方法,有什么不一样?