Re: count * performance issue - Mailing list pgsql-performance

From Mark Mielke
Subject Re: count * performance issue
Date
Msg-id 47CF8EA6.8070503@mark.mielke.cc
Whole thread Raw
In response to Re: count * performance issue  ("Shoaib Mir" <shoaibmir@gmail.com>)
Responses Re: count * performance issue  ("A. Kretschmer" <andreas.kretschmer@schollglas.com>)
List pgsql-performance
 
There aren't a general solution. If you realy need the exact count of
tuples than you can play with a TRIGGER and increase/decrease the
tuple-count for this table in an extra table.

Of course, this means accepting the cost of obtaining update locks on the count table.

The original poster should understand that they can either get a fast estimated count, or they can get a slow accurate count (either slow in terms of select using count(*) or slow in terms of updates using triggers and locking).

Other systems have their own issues. An index scan may be faster than a table scan for databases that can accurately determine counts using only the index, but it's still a relatively slow operation, and people don't normally need an accurate count for records in the range of 100,000+? :-)

Cheers,
mark

-- 
Mark Mielke <mark@mielke.cc>

pgsql-performance by date:

Previous
From: "Shoaib Mir"
Date:
Subject: Re: count * performance issue
Next
From: "sathiya psql"
Date:
Subject: Re: count * performance issue