Re: MVCC performance issue

From: Marti Raudsepp <marti(at)juffo(dot)org>
To: Kyriacos Kyriacou <kyriacosk(at)prime-tel(dot)com>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: MVCC performance issue
Date: 2010-11-14 08:46:14
Message-ID: AANLkTi=LsdzJqFvXSgJuyZVA-WvKPRuyhLOYXt1CD7aS@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On Thu, Nov 11, 2010 at 20:25, Kyriacos Kyriacou
<kyriacosk(at)prime-tel(dot)com> wrote:
> By definition of MVCC, when an UPDATE is performed, PostgreSQL creates a
> new copy of the row in a new location.

> result is to have huge fragmentation on table space, unnecessary updates
> in all affected indexes, unnecessary costly I/O operations, poor
> performance on SELECT that retrieves big record sets (i.e. reports etc)
> and slower updates.

Have you tried reducing the table fillfactor and seeing if HOT update
ratio increases?

PostgreSQL 8.3 introduced HOT updates as kind of a middle ground -- if
the update doesn't affect indexed columns and there's enough space in
the same page that is being updated, then the new version will be
written in the same page and indexes don't need to be touched at all.

Regards,
Marti

In response to

Browse pgsql-performance by date

  From Date Subject
Next Message Marti Raudsepp 2010-11-14 09:47:16 Re: Defaulting wal_sync_method to fdatasync on Linux for 9.1?
Previous Message Marti Raudsepp 2010-11-14 08:30:37 Re: MVCC performance issue