4 ms·
Badger vs. LMDB vs. BoltDB: Benchmarking Key-Value Databases in Golang
- mrjn 9y agoAll the benchmarking code and log is located here: https://github.com/dgraph-io/badger-bench https://github.com/dgraph-io/badger-bench
- ngrilly 9y agoBadger stores keys in a LSM tree and values in a separate log file. Bagder's launch post mentions B+ trees as a viable alternative to LSM trees, considering the recent random write performance improvements of SSDs. This sounds similar to how PostgreSQL stores data. PostgreSQL uses heap-organized table (unlike MySQL/InnoDB which uses index-organized table), where values are stored in a heap, and each index is stored in a B+ tree containing keys and pointer to the values in the heap.