Re: Slow UPADTE, compared to INSERT
William Yu <wyu@talisys.com>
From: William Yu <wyu@talisys.com>
To: pgsql-performance@postgresql.org
Date: 2003-12-04T19:59:01Z
Lists: pgsql-performance
Ivar Zarans wrote: > > I am experiencing strange behaviour, where simple UPDATE of one field is > very slow, compared to INSERT into table with multiple indexes. I have > two tables - one with raw data records (about 24000), where one field In Postgres and any other DB that uses MVCC (multi-version concurrency), UPDATES will always be slower than INSERTS. With MVCC, what the DB does is makes a copy of the record, updates that record and then invalidates the previous record. This allows maintains a consistent view for anybody who's reading the DB and also avoids the requirement of row locks. If you have to use UPDATE, make sure (1) your UPDATE WHERE clause is properly indexed and (2) you are running ANALYZE/VACUUM periodically so the query planner can optimize for your UPDATE statements.