An LSM-Tree-based Ultra-Large Key-Value Store for Small Data [pdf]
ece.eng.wayne.edu
ece.eng.wayne.edu
> Note that LSM-trie uses hash functions to organize its data and accordingly does not support range search.
Range search, while not directly applicable to all data sets, is an important feature of the LSM data stores compared (LevelDB & RocksDB).
The authors acknowledge this and say:
> There are techniques available to support the command by maintaining an index above these hash-based stores
So, don't plan on using an LSM-Trie for a direct replacement for your LevelDB or other LSM-Tree based projects that rely on Range searches without considering the additional complexity of building and maintaining an index to perform those Range searches.
I'd like to see Stratified B Trees kick LSMs' butts. Or the other way around. I can't code this yet. But I can hope that somebody's already on to this.
Need to mention Percona's take on this space too: https://github.com/percona/PerconaFT. The patent notice makes it scary tho.
Here are the slides: https://www.usenix.org/sites/default/files/conference/protec...