thePG_FREESPACEMAP
모듈은 여유 공간 맵 (FSM)을 검사하는 수단을 제공합니다. 라는 함수를 제공합니다.PG_FREESPACE
또는 두 개의 과부하 된 함수는 정확합니다. 함수는 주어진 페이지 또는 관계의 모든 페이지에 대한 여유 공간 맵에 기록 된 값을 보여줍니다.
기본적으로 슈퍼업자 및 멤버로 제한됩니다pg_stat_scan_tables
역할. 를 사용하여 다른 사람에게 액세스 권한이 부여 될 수 있습니다.grant
.
여유 공간 맵에 저장된 값은 정확하지 않습니다. 그들은 1/256의 정밀도로 반올림blcksz
(기본값이있는 32 바이트blcksz
), 튜플이 삽입되고 업데이트되어 최신 상태로 유지되지 않습니다.
인덱스의 경우 추적되는 내용은 페이지 내의 여유 공간이 아닌 전적으로 작동하지 않는 페이지입니다. 따라서 값은 페이지가 사용 중인지 비어 있는지 여부에 관계없이 의미가 없습니다.
postgres =# select * from pg_freespace ( 'foo'); Blkno | 이익 -------+------- 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 줄) postgres =# select * from pg_freespace ( 'foo', 7); PG_FREESPACE -------------- 1216 (1 행)
Mark Kirkwood의 원본 버전<markir@paradise.net.nz
. Heikki Linnakangas의 새로운 FSM 구현에 맞게 버전 8.4에 다시 작성<13141_13166
문서에 올바른 것이없는 것이 있으면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면