| PostgreSQL 9.3.25 문서 | ||||
|---|---|---|---|---|
| 이전 | PostgreSQL : 문서 : 9.3 : 추가 제공 배트맨 토토 | 부록 F. 추가 제공 모듈 | 롤 토토 : 문서 : 9.3 : pgrowlocks | |
그pg_freespacemap모듈은 다음을 제공합니다.
FSM(Free Space Map)을 검사하는 수단입니다. 그것은 제공합니다
호출된 함수pg_freespace, 또는 두 개
정확하게 말하면 함수가 오버로드되었습니다. 함수는 값을 보여줍니다
특정 페이지 또는 모든 페이지에 대한 여유 공간 맵에 기록됩니다.
관계에서.
기본적으로 공개 접근은 함수에서 취소됩니다. 보안 문제가 숨어 있는 경우가 있습니다.
pg_freespace(rel regclass IN, blkno
bigint IN)은 int2를 반환합니다.관계 페이지의 여유 공간을 반환합니다. 에 의해 지정됨blkno에 따르면 FSM.
pg_freespace(rel regclass IN, blkno OUT
bigint, OUT int2)관계의 각 페이지에 여유 공간의 양을 표시합니다. FSM에 따르면. 세트(blkno bigint, 가능 int2)튜플이 반환됩니다. 관계.
여유 공간 맵에 저장된 값이 정확하지 않습니다. 그들은 1/256의 정밀도로 반올림됨BLCKSZ(기본값은 32바이트BLCKSZ) 그리고 그들은 튜플이 삽입되고 업데이트될 때 완전히 최신 상태로 유지되지 않습니다.
색인의 경우 추적되는 것은 완전히 사용되지 않은 페이지입니다. 페이지 내의 여유 공간보다. 따라서 값은 그렇지 않습니다. 페이지가 꽉 차있든 비어있든 상관없이 의미가 있습니다.
참고:인터페이스가 버전 8.4에서 다음으로 변경되었습니다. 동일한 버전에 도입된 새로운 FSM 구현을 반영합니다. 버전.
postgres=# SELECT * FROM pg_freespace('foo');
블크노 | 소용이 있다
-----+-------
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의 새로운 FSM 구현에 맞게 버전 8.4로 다시 작성되었습니다.
린나칸가스<heikki@enterprisedb.com