4 ms·
> Modern RocksDB also has an option to do key-value separation via Integrated BlobDB. Neat! I had only seen tikv's plugin [0] implementing this before. But the
by eatonphil 4y ago
> Modern RocksDB also has an option to do key-value separation via Integrated BlobDB.
Neat! I had only seen tikv's plugin [0] implementing this before. But they've got their own first-party option [1] now too.
The gist being, as I understand it, that WiscKey [2] showed how you can improve both read and write performance if you store values outside of the main LSM tree. (Only store keys in the LSM tree with a pointer to the value.) See also [3].
Comparison between Titan and BlobDB [4] aren't awesome yet though. :)
[0] https://github.com/tikv/titan https://github.com/tikv/titan
[1] http://rocksdb.org/blog/2021/05/26/integrated-blob-db.html http://rocksdb.org/blog/2021/05/26/integrated-blob-db.html
[2] https://www.usenix.org/system/files/conference/fast16/fast16-papers-lu.pdf https://www.usenix.org/system/files/conference/fast16/fast16...
[3] https://distributed-computing-musings.com/2022/07/paper-notes-wisckey-separating-keys-from-values-in-ssd-conscious-storage/ https://distributed-computing-musings.com/2022/07/paper-note...
[4] https://github.com/tikv/titan/issues/228 https://github.com/tikv/titan/issues/228