Search Postgresql Archives

Re: What's eating my space ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Eric McKeeth wrote:
>>> I wander what is taking up my space on disk ...
>>>
>>> btv=# SELECT pg_size_pretty(pg_database_size('btv_good'));
>>>  pg_size_pretty
>>> ----------------
>>>  10 GB
>>> (1 row)

[SELECT total size of all non-system tables]

>>> The sum of biggest tables is not even close to the total db size .
>>> Some index going wild ?
>>
>> Your sum doesn't contains indexes and toast-tables.
>>
> Since he used pg_total_relation_size(), according to the manual
>
(http://www.postgresql.org/docs/current/interactive/functions-admin.html
) indexes and toast should be
> included in the numbers reported for the tables. Unfortunately, I
don't have any insight as to why
> pg_database_size() is returning a number roughly 5x larger than the
sum of pg_total_relation_size()
> here.

Maybe it's the system tables.

Try running the following query:

SELECT SUM(pg_total_relation_size(C.oid)) AS "total_size",
       (N.nspname IN ('pg_catalog', 'information_schema')) AS
"system_object"
  FROM pg_class C
  JOIN pg_namespace N ON (N.oid = C.relnamespace)
  LEFT OUTER JOIN pg_tablespace T ON (C.reltablespace = T.oid)
  WHERE C.relkind <> 'i'
    AND nspname !~ '^pg_toast'
    AND COALESCE(T.spcname, 'default') != 'pg_global'
  GROUP BY nspname IN ('pg_catalog', 'information_schema');

which will give you a sum of the sizes of all tables and their
appendixes,
grouped by system and non-system tables. I exclude global tables.

On my 8.4 test database I get:

 total_size | system_object 
------------+---------------
     376832 | f
    5505024 | t
(2 rows)

For
SELECT pg_database_size(current_database())
I get:

 pg_database_size 
------------------
          5972260
(1 row)

which comes pretty close.

Yours,
Laurenz Albe

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux