Skip to content

combination pizza hut and taco bell (B+tree and trie) for fast lookups of variable-length keys

License

Notifications You must be signed in to change notification settings

edemko/masstree

Repository files navigation

Masstree

This package provides a Masstree data structure based on the paper "Cache Craftiness for Fast Multicore Key-Value Storage" by Mao, Kohler, and Morris (pdf). The key idea is a trie which achieves a fanout of 2^64 by using a B+-tree at each node. Where their paper focuses on supporting efficient concurrent update, that approach is not idiomatic in Haskell, so we focused instead on a persistent form of masstree.

Incidentally, we also expose a standalone BTree implementation which outperforms Map Word64 from the containers package, but to only supports Word64 keys (and if you can't guess how this limitation is related to the 2^64 fanout mentioned above, I'd be one surprised pickachu face).

About

combination pizza hut and taco bell (B+tree and trie) for fast lookups of variable-length keys

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published