pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: hubert depesz lubaczewski <depesz@depesz.com>
To: Marcin Citowicki <marcin.citowicki@m4n.nl>
Cc: pgsql-performance@postgresql.org
Subject: Re: query performance question
Date: Tue, 3 Jun 2008 10:31:46 +0200
Message-ID: <20080603083146.GB17220@depesz.com> (raw)
In-Reply-To: <4844F95B.4040009@m4n.nl>
References: <4844F95B.4040009@m4n.nl>

On Tue, Jun 03, 2008 at 09:57:15AM +0200, Marcin Citowicki wrote:
> I'm not a dba so I'm not sure if the time it takes to execute this query 
> is OK or not, it just  seems a bit long to me.

This is perfectly OK. count(*) from table is generally slow. There are
some ways to make it faster (depending if you need exact count, or some
estimate).

> I'd appreciate it if someone could share his/her thoughts on this. Is 
> there a way to make this table/query perform better?

You can keep the count of elements in this table in separate table, and
update it with triggers.

> Any query I'm running that joins with transactions table takes forever 
> to complete, but maybe this is normal for a table this size.

As for other queries - show them, and their explain analyze.

Performance of count(*) is dependent basically only on size of table. In
case of other queries - it might be simple to optimize them. Or
impossible - without knowing the queries it's impossible to tell.

Do you really care about count(*) from 60m+ record table? How often do
you count the records?

Best regards,

depesz




view thread (21+ messages)  latest in thread

Message-ID: <20080603083146.GB17220@depesz.com>
Permalink:  ../20080603083146.GB17220@depesz.com/
Also on:    postgresql.org/message-id/20080603083146.GB17220@depesz.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-performance@postgresql.org
  Cc: depesz@depesz.com, marcin.citowicki@m4n.nl
  Subject: Re: query performance question
  In-Reply-To: <20080603083146.GB17220@depesz.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox