pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tino Wildenhain <tino@wildenhain.de>
To: Craig A. James <cjames@modgraph-usa.com>
Cc: pgsql-performance@postgresql.org
Subject: Re: Performance of count(*)
Date: Thu, 22 Mar 2007 18:27:32 +0100
Message-ID: <4602BC84.8030101@wildenhain.de> (raw)
In-Reply-To: <4602BB19.9050306@modgraph-usa.com>
References: <Pine.LNX.4.62.0703221149210.13747@wr-linux02>
	<200703221208.19358.albert@sedifa.com>
	<Pine.LNX.4.64.0703221323590.1503@ismoli.solenovo.jns>
	<20070322141807.GE11402@mathom.us>
	<46029DE3.9030505@modgraph-usa.com>
	<4602A15B.7000908@wildenhain.de>
	<4602BB19.9050306@modgraph-usa.com>

Craig A. James schrieb:
> Tino Wildenhain wrote:
>> Craig A. James schrieb:
>> ...
>>> In our case (for a variety of reasons, but this one is critical), we 
>>> actually can't use Postgres indexing at all -- we wrote an entirely 
>>> separate indexing system for our data...
>>
>> ...There is no need to store or
>> maintain this information along with postgres when you can store
>> and maintain it directly in postgres as well.
> 
> Whether we store our data inside or outside Postgres misses the point 
> (in fact, most of our data is stored IN Postgres).  It's the code that 
> actually performs the index operation that has to be external to Postgres.
> 
>> On top of that, postgres has a very flexible and extensible index
>> system.
> 
> You guys can correct me if I'm wrong, but the key feature that's missing 
> from Postgres's flexible indexing is the ability to maintain state 
> across queries.  Something like this:
> 
>  select a, b, my_index_state() from foo where ...
>    offset 100 limit 10 using my_index(prev_my_index_state);
> 

Yes, you are wrong :-) The technique is called "CURSOR"
if you maintain persistent connection per session
(e.g. stand allone application or clever pooling webapplication)

If its a naive web application you just store your session
in tables where you can easily maintain the scroll state
as well.

Regards
Tino



view thread (41+ messages)  latest in thread

Message-ID: <4602BC84.8030101@wildenhain.de>
Permalink:  ../4602BC84.8030101@wildenhain.de/
Also on:    postgresql.org/message-id/4602BC84.8030101@wildenhain.de

 · 

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: tino@wildenhain.de, cjames@modgraph-usa.com
  Subject: Re: Performance of count(*)
  In-Reply-To: <4602BC84.8030101@wildenhain.de>

* 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