Re: Table Size

From: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
To: Richard Huxton <dev(at)archonet(dot)com>
Cc: Gauri Kanekar <meetgaurikanekar(at)gmail(dot)com>, pgsql-performance(at)postgresql(dot)org
Subject: Re: Table Size
Date: 2007-01-17 06:37:25
Message-ID: 45ADC425.8010900@lelarge.info
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Richard Huxton a écrit :
> Gauri Kanekar wrote:
>> Hi,
>>
>> Can anybody help me out to get following info of all the tables in a
>> database.
>
> 1. Have you read up on the information schema and system catalogues?
> http://www.postgresql.org/docs/8.2/static/catalogs.html
> http://www.postgresql.org/docs/8.2/static/catalogs.html
>
>
>> table_len
>> tuple_count
>> tuple_len
>
> 2. Not sure what the difference is between "len" and "count" here.
>

tuple_count is the number of live tuples. tuple_len is the length (in
bytes) for all live tuples.

>> tuple_percent
>
> 3. Or what this "percent" refers to.
>

tuple_percent is % of live tuple from all tuples in a table.

>> dead_tuple_count
>> dead_tuple_len
>> dead_tuple_percent
>> free_space
>> free_percent
>
> 4. You might find some of the stats tables useful too:
> http://www.postgresql.org/docs/8.2/static/monitoring-stats.html
>

Actually, these columns refer to the pgstattuple contrib module. This
contrib module must be installed on the server (how you install it
depends on your distro). Then, you have to create the functions on you
database :
psql -f /path/to/pgstattuple.sql your_database

Right after that, you can query these columns :

test=> \x
Expanded display is on.
test=> SELECT * FROM pgstattuple('pg_catalog.pg_proc');
-[ RECORD 1 ]------+-------
table_len | 458752
tuple_count | 1470
tuple_len | 438896
tuple_percent | 95.67
dead_tuple_count | 11
dead_tuple_len | 3157
dead_tuple_percent | 0.69
free_space | 8932
free_percent | 1.95

Example from README.pgstattuple.

Regards.

--
Guillaume.
<!-- http://abs.traduc.org/
http://lfs.traduc.org/
http://docs.postgresqlfr.org/ -->

In response to

Browse pgsql-performance by date

  From Date Subject
Next Message ramachandra.bhaskaram 2007-01-17 10:42:32 Table Inheritence and Partioning
Previous Message Scott Marlowe 2007-01-17 05:46:07 Re: PG8.2.1 choosing slow seqscan over idx scan