Re: Scaling with lazy index updates - Mailing list pgsql-performance

From Josh Berkus
Subject Re: Scaling with lazy index updates
Date
Msg-id 200407171702.20997.josh@agliodbs.com
Whole thread Raw
In response to Scaling with lazy index updates  ("Fred Moyer" <fred@redhotpenguin.com>)
List pgsql-performance
Howdy Fred,

> This might be a out of the ordinary question, or perhaps I have been out
> of the loop for a while but does PostgreSQL (or any other database) have
> support for lazy index updates.  What I mean by lazy index updates is
> index updating which occur at a regular interval rather than per
> transaction.

In a word: No.

The issue with "asynchronous index updates" (which is what you asked about) is
that they don't work with the way PostgreSQL uses indexes.   If the index
hasn't been updated, then when a query uses an index scan the row simply
wouldn't show up.    If that's acceptable behavior for you, then perhaps you
could consider asynchronous *table* updates, done at the application layer,
which would be much easier to implement.

We do as much as we can by offloading b-tree "cleanup" for indexes until
VACUUM/REINDEX, which is called manually.

Hmmm.   Can you think of an example of an RDBMS which does *not* update
indexes immediately (and transactionally)?  I can't.

--
-Josh Berkus
 Aglio Database Solutions
 San Francisco


pgsql-performance by date:

Previous
From: Tom Lane
Date:
Subject: Re: same plan, different time
Next
From: Gaetano Mendola
Date:
Subject: Re: High load average with PostgreSQL 7.4.2 on debian/ibm eserver.