On Wed, Dec 05, 2007 at 12:29:13PM -0800, David Rees wrote: > On Dec 5, 2007 6:15 AM, Kenneth Marshall <[EMAIL PROTECTED]> wrote: > > We have tried using PostgreSQL as the backend DB since version 7.4 and > > ran into performance problems. In our attempts to address them we developed > > the patch to use the native BIGINT type instead of the much slower NUMERIC > > type. Version 8.2 was the first version that was just good enough to handle > > our traffic but with too little headroom for comfort. We are getting ready > > to test 8.3 and expect to migrate from MySQL to PostgreSQL for the backend > > database at that time. > > It would be interesting to find out why PostgreSQL was underperforming > for you. What kind of tuning have you tried? I suspect that the new > async commit options in 8.3 would improve things a lot. > > -Dave > The performance problem was caused by the I/O pattern degrading to completely random I/O over time. The initial performance or the performance immediately after a CLUSTER of the tables was easily as good as the MySQL backend (~20 messages/sec). The steady state (~6 messages/sec) did not provide sufficient headroom for our system to allow for clearing out a backlog following any type of delivery problem. The async commit option in 8.3 will help, but I expect the HOT updates to be the real win, by allowing the tables to maintain their cluster order over time. We will report back once we have some test data.
Ken