This commit is contained in:
Myk Melez 2018-04-11 16:59:54 -07:00
Родитель ae4a641fb9
Коммит 6e637feae0
1 изменённых файлов: 1 добавлений и 1 удалений

Просмотреть файл

@ -347,7 +347,7 @@ A distillation of experience with BerkeleyDB and use in OpenLDAP. Implemented in
Dgraph gives an excellent brief [summary](https://blog.dgraph.io/post/badger-lmdb-boltdb/):
> LMDB provides a key-value stored using[ B+ trees](https://en.wikipedia.org/wiki/B%2B_tree). It has ACID semantics and support for transactions. It does not do any background work and has a crash resilient design that uses[ MVCC](https://en.wikipedia.org/wiki/Multiversion_concurrency_control) instead of locking. This means readers operate on an isolated snapshot of the database and don’t block. The codebase is quite small and portable, so LMDB runs across multiple platforms including Android, BSD, and Solaris. This[ talk by Howard Chu](https://www.youtube.com/watch?v=tEa5sAh-kVk&t=10s) at Databaseology 2015 goes into much more details about LMDB’s design.
> LMDB provides a key-value stored using [B+ trees](https://en.wikipedia.org/wiki/B%2B_tree). It has ACID semantics and support for transactions. It does not do any background work and has a crash resilient design that uses [MVCC](https://en.wikipedia.org/wiki/Multiversion_concurrency_control) instead of locking. This means readers operate on an isolated snapshot of the database and don’t block. The codebase is quite small and portable, so LMDB runs across multiple platforms including Android, BSD, and Solaris. This [talk by Howard Chu](https://www.youtube.com/watch?v=tEa5sAh-kVk&t=10s) at Databaseology 2015 goes into much more details about LMDB’s design.
It is generally understood that B+ tree based stores are ideal for workloads which are read intensive.