F.27. pg_freespacemap

thePG_FREESPACEMAP모듈은 여유 공간 맵 (FSM)을 검사하는 수단을 제공합니다. 라는 함수를 제공합니다.PG_FREESPACE또는 두 개의 과부하 된 함수는 정확합니다. 함수는 주어진 페이지 또는 관계의 모든 페이지에 대한 여유 공간 맵에 기록 된 값을 보여줍니다.

기본적으로 슈퍼업자 및 멤버로 제한됩니다pg_stat_scan_tables역할. 를 사용하여 다른 사람에게 액세스 권한이 부여 될 수 있습니다.grant.

F.27.1. 기능

PG_FREESPACE (REL REGCLASS IN, BLKNO BIGINT IN) int2를 반환합니다

관계 페이지의 여유 공간의 양을 반환합니다.Blkno, FSM에 따르면

PG_FREESPACE (REL REGCLASS IN, BLKNO OUT BIGINT, OUT INT2)

FSM에 따라 관계의 각 페이지에 여유 공간의 양을 표시합니다. 세트(Blkno bigint, avail int2)튜플이 반환되고 관계의 각 페이지마다 하나의 튜플이 반환됩니다.

여유 공간 맵에 저장된 값은 정확하지 않습니다. 그들은 1/256의 정밀도로 반올림blcksz(기본값이있는 32 바이트blcksz), 튜플이 삽입되고 업데이트되어 최신 상태로 유지되지 않습니다.

인덱스의 경우 추적되는 내용은 페이지 내의 여유 공간이 아닌 전적으로 작동하지 않는 페이지입니다. 따라서 값은 페이지가 사용 중인지 비어 있는지 여부에 관계없이 의미가 없습니다.

F.27.2. 샘플 출력

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 행)

F.27.3. 작가

Mark Kirkwood의 원본 버전. Heikki Linnakangas의 새로운 FSM 구현에 맞게 버전 8.4에 다시 작성

정정 제출

문서에 올바른 것이없는 것이 있으면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면