On Mon, Nov 4, 2013 at 11:32 AM, Andres Freund <andres@2ndquadrant.com> wrote:
> I think doing this outside of s_b will make stuff rather hard for
> physical replication and crash recovery since we either will need to
> flush the whole buffer at checkpoints - which is hard since the
> checkpointer doesn't work inside individual databases - or we need to
> persist the in-memory buffer across restart which also sucks.
You might be right, but I think part of the value of LSM-trees is that
the in-memory portion of the data structure is supposed to be able to
be optimized for in-memory storage rather than on disk storage. It
may be that block-structuring that data bleeds away much of the
performance benefit. Of course, I'm talking out of my rear end here:
I don't really have a clue how these algorithms are supposed to work.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company