Re: database profiling

From: Christopher Kings-Lynne <chriskl(at)familyhealth(dot)com(dot)au>
To: Orion Henry <orion(at)trustcommerce(dot)com>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: database profiling
Date: 2004-01-21 00:24:55
Message-ID: 400DC6D7.1040705@familyhealth.com.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

> 1) Statistics kept on all the tables and indexes showing the number of
> times and the number of milliseconds spent sequential scanning / index
> scanning them. You could easily identify an index that's not being used
> or a table that's being sequential scanned too often. Also supply a
> database command to reset the statistic gather to zero.

Enable the stats collector in your postgresql.conf, and then look at the
pg_stat_* views. They are your friend.

> 2) Statics that show count/total times to insert into/updating/deleting
> from a table with time times spent in table and index separated so you
> could see how much the indexes are effecting the write performance on
> the table.

Lots of that is in the pg_statio_* tables (if you have the collector
running)

> 3) The ability to view the current running time, plan and SQL text of
> all currently running queries.

That's in the pg_stat_activity table.

There's also a new postgresql.conf setting in 7.4 that lets you log any
query that runs more than a certain number of milliseconds - which is
very useful for tracking down your slow queries.

Chris

In response to

Browse pgsql-performance by date

  From Date Subject
Next Message Jeroen Baekelandt 2004-01-21 09:34:10 Really slow even after vacuum
Previous Message Orion Henry 2004-01-20 19:47:09 database profiling