За произволна таблица:
# 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)
От това можете да разберете pg_table_size
е сумата от всички върнати стойности на pg_relation_size
. И pg_total_relation_size
е сумата от pg_table_size
и pg_indexes_size
.
Ако искате да знаете колко място използват вашите таблици, използвайте pg_table_size
и pg_total_relation_size
да помислим за тях -- едно число е само за таблица, а едно число е таблица + индекси.
Проверете оформлението на файла за съхранение за малко информация за това какво fsm
, vm
и init
означава и как се съхраняват на диска.