For en tilfældig tabel:
# select pg_relation_size(20306, 'main') as main,
pg_relation_size(20306, 'fsm') as fsm,
pg_relation_size(20306, 'vm') as vm,
pg_relation_size(20306, 'init') as init,
pg_table_size(20306), pg_indexes_size(20306) as indexes,
pg_total_relation_size(20306) as total;
main | fsm | vm | init | pg_table_size | indexes | total
--------+-------+------+------+---------------+---------+--------
253952 | 24576 | 8192 | 0 | 286720 | 196608 | 483328
(1 row)
Ud fra det kan du fortælle pg_table_size
er summen af alle returværdierne for pg_relation_size
. Og pg_total_relation_size
er summen af pg_table_size
og pg_indexes_size
.
Hvis du vil vide, hvor meget plads dine tabeller bruger, skal du bruge pg_table_size
og pg_total_relation_size
at tænke på dem -- et tal er kun tabel, og et tal er tabel + indekser.
Tjek lagerfillayoutet for information om hvad fsm
, vm
, og init
betyder, og hvordan de er gemt på disken.