3 ms·
There are theory papers on "buffer trees"---B-trees where each node is augmented with an O(B)-length array of pending updates and queries. I believe there were
by tmyklebu 2y ago
There are theory papers on "buffer trees"---B-trees where each node is augmented with an O(B)-length array of pending updates and queries. I believe there were also some attempts at building SQL databases based on them. It sounds like you're reaching for the same trick.
- koverstreet 2y agothat's a hybrid compacting data structure: compacting within the btree node, normal btree topology otherwise. And it works much better than pure compacting (i.e. the leveldb lineage), because you avoid lock contention at the root on multithreaded update workloads, and the compaction/resort is much lower overhead when it fits in l2. incidentally, there's a filesystem that uses this technique.
- loeg 2y ago> incidentally, there's a filesystem that uses this technique. BetrFS?
- loeg 2y agoSounds like "fractal trees" and TokuDB.