Обсуждение: Free Space?

Поиск
Список
Период
Сортировка

Free Space?

От
Rod Taylor
Дата:
I was poking around to see if you can come up with an estimate for free
space in a table... Not having much luck..

Best I found was the below, which is only anywhere near close on tables
that store stats on all columns -- which isn't normal.

select relname    , relpages * 8192 as spaceused    , relpages * (8192 - 20)      - (reltuples * (
coalesce((selectsum(stawidth * (1 - stanullfrac))                      from pg_statistic                     where
starelid= pg_class.oid)                  , 0) + 23)        ) as freespace from pg_classwhere relkind in ('r'); 

--
Rod Taylor <rbt@rbt.ca>

PGP Key: http://www.rbt.ca/rbtpub.asc

Re: Free Space?

От
Tom Lane
Дата:
Rod Taylor <rbt@rbt.ca> writes:
> I was poking around to see if you can come up with an estimate for free
> space in a table... Not having much luck..

contrib/pgstattuple/ might help.
        regards, tom lane