On Wed, Mar 23, 2011 at 1:16 AM, Jesper Krogh <jes...@krogh.cc> wrote: > On 2011-03-22 21:43, Robert Haas wrote: >> >> I took a crack at implementing the first approach described above, >> which seems to be by far the simplest idea we've come up with to date. >> Patch attached. It doesn't seem to be that complicated, which could >> mean either that it's not that complicated or that I'm missing >> something. Feel free to point and snicker in the latter case. > > Looks simple, but there is now benefit on the usage side in the patch, > so it isn't really "testable" yet? I would love to spend some time testing > when its doable (even with rough corners.) > > I'm still a bit puzzled with how it would end up working with a page-level > visibillity map bit for index-scans. There is a clear "drop off" in > usabillity > when the change rates of the table goes up, which may or may not be > relevant, but I cannot really judge, since I haven't even got a ballpark > figure about how much table churn would disable say 50% of the usage.
How much benefit you are going to get is going to be really workload dependent. In a lot of cases distribution of writes are going to be really non uniform so that a small percentage of records get the majority of the writes across the database generally. Reliable PD_ALL_VISIBLE opens the door to optimizing around this pattern, which i'd estimate the vast majority of databases follow in various degrees. It's really hard to overemphasize how important in performance terms are the features that mitigate the relative downsides of our mvcc implementation. The HOT feature in 8.3 was an absolute breakthrough in terms of postgres performance and I expect this will open similar doors. merlin -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers