Re: MVCC cons

From: "Merlin Moncure" <mmoncure(at)gmail(dot)com>
To: "Kenneth Downs" <ken(at)secdat(dot)com>
Cc: RPK <rpk(dot)general(at)gmail(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: MVCC cons
Date: 2007-08-15 01:36:28
Message-ID: b42b73150708141836j4e2df84dv2a5963cb2edf0cfd@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 8/14/07, Kenneth Downs <ken(at)secdat(dot)com> wrote:
> RPK wrote:
> > I want to know whether MVCC has cons also. Is it heavy on resources? How
> > PGSQL MVCC relates with SQL Server 2005 new Snapshot Isolation.
> >
>
> Speaking as an end-user, I can give only one I've ever seen, which is
> performance. Because of MVCC, Postgres's write performance (insert and
> update) appears on my systems to be almost exactly linear to row size.
> Inserting 1000 rows into a table with row size 100 characters takes
> twice as long as inserting 1000 rows into a table with row size 50
> characters.

You were half right. Inserts in PostgreSQL perform similar to other
databases (or at least, use similar mechanisms). It's the updates
that suffer, because this translates to delete + insert essentially.
Databases that use simple locking strategies can simply update the
record in place.

PostgreSQL wins in terms of better concurrency (especially in long
transactions or transactions that touch a lot of records), cheap
rollbacks, and all the advantages of a sophisticated locking engine
(transactional ddl for example).

merlin

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2007-08-15 01:42:53 Re: pqlib in c++: PQconnectStart PQconnectPoll
Previous Message Trevor Talbot 2007-08-15 01:25:05 Re: Moving to postgresql and some ignorant questions