I don't know about table creation, but MySQL inserts a lot faster even when using transactions
and InnoDB, at least in my experience. And vacuuming is still silly, even if it's done
automatically. Last time I checked, it has a noticable performance impact on any queries
running while vacuuming, meaning Postgres is not very good at handling continously high loads.
I like Postgres just fine, don't mean to slam it at all, every database product has some
warts. MySQL probably has bigger warts, but both are in my experience pretty nice systems to
deal with, unlike say... Oracle.
Posted Apr 7, 2008 18:16 UTC (Mon) by nix (subscriber, #2304)
[Link]
Yeah. Actually as far as I can tell you have two choices if you want
transaction consistency: use multiversion concurrency control, or use
locks. Locks have a *much* worse performance hit in the concurrent case,
and annoy developers more, but a lower hit in the single-threaded case.
It's a toss-up which to use :)
(Oracle moved to MVCC a while back, too, while keeping around a huge pile
of grot to try to mollify people who were used to locking everything and
messing around in horrible ways with 'rollback segments' and that crud.)