LMDB
Hacker ApprovedTied for most recommended of 6 key-value stores
Fast, memory-mapped embedded database that people trust for reads and large datasets, and crash-safe with default settings. Critics say writes slow down as databases grow.
Fast, memory-mapped embedded database that people trust for reads and large datasets, and crash-safe with default settings. Critics say writes slow down as databases grow.
29 people gave an opinion
- recommend it
- 20
- criticize it
- 9
- approval share
- 69%
Recommended in 9 of 13 months
- November 2025: recommended
- December 2025: recommended
- January 2026: recommended
- February 2026: recommended
- March 2026: recommended
- April 2026: not recommended
- May 2026: recommended
- June 2026: not recommended
- July 2026: recommended
- August 2026: recommended
- September 2026: not recommended
- October 2026: recommended
- November 2026: not recommended (month in progress)
Why it carries the badge
- 20 people recommend itNeeds 10 or more, met.
- 2.2 recommenders for every criticNeeds 2 to 1 or better, met.
- Recommended in 9 of 13 monthsNeeds 4 or more, met.
The same three rules apply to every product, and the badge can’t be bought. How the badge works
What people say about it
The reasons people give, with the number of comments that give each one. Open a reason to read what they said.
Why people recommend it
Each mark is one comment
Fast reads, memory-efficient
“Because it's so efficient, it can retain more useful data in-memory than other DBs for a given RAM size.”
Comment from 1 Dec 2025 in “Ask HN: Scheduling stateful nodes when MMAP makes memory accounting a lie” “if the object mapping fits in memory that should be pretty optimal for reading”
Comment from 3 Dec 2025 in “MinIO is now in maintenance-mode” “getting a 22x speedup by replacing SQLite's btree code with LMDB”
Comment from 7 Jan 2026 in “Databases in 2025: A Year in Review” - Comment from 2 Feb 2026 in “Efficient String Compression for Modern Database Systems”
Crash-safe by default
“By default, LMDB performs whatever necessary syncs and is 100% crash proof, even in the face of power outages.”
Comment from 23 Jul 2026 in “Garage S3: LMDB Corruption Post-Mortem” “As long as you stick to the safe LMDB options, which are the default options, it's reliable.”
Comment from 2 Jul 2026 in “Lightning Memory-Mapped Database Manager (LMDB) 1.0” “LMDB is already used by OpenLDAP [2][3] and seems pretty bullet-proof.”
Comment from 13 Feb 2026 in “MinIO repository is no longer maintained” Reliable in production
“I've used LMDB in production for multi-terabyte databases, and we encountered the long-write time but found a solution.”
Comment from 2 Jul 2026 in “Lightning Memory-Mapped Database Manager (LMDB) 1.0” “LMDB is already used by OpenLDAP [2][3] and seems pretty bullet-proof.”
Comment from 13 Feb 2026 in “MinIO repository is no longer maintained” “LMDB, boltdb/bbolt and sqlite (with mmap) are all rock solid.”
Comment from 6 Jan 2026 in “Databases in 2025: A Year in Review” - Comment from 9 Jan 2026 in “Databases in 2025: A Year in Review”
Handles databases larger than RAM
“I've used LMDB in production for multi-terabyte databases, and we encountered the long-write time but found a solution.”
Comment from 2 Jul 2026 in “Lightning Memory-Mapped Database Manager (LMDB) 1.0” “LMDB fully supports multiprocess concurrency as well as DBs multiple orders of magnitude larger than RAM”
Comment from 27 Nov 2025 in “Ask HN: Scheduling stateful nodes when MMAP makes memory accounting a lie”
What people warn about
Each mark is one comment
Slow writes on large databases
“once the db reached several hundred gb, writes would hang for longer and longer periods of time”
Comment from 2 Jul 2026 in “Lightning Memory-Mapped Database Manager (LMDB) 1.0” “It is really reliable except write performance in my experience.”
Comment from 2 Jul 2026 in “Lightning Memory-Mapped Database Manager (LMDB) 1.0” “lightning fast on reads but quite bad on writes”
Comment from 23 Jan 2026 in “EloqKV: Achieving Predictable P99.99 Latency on NVMe with Redis API” Unrecoverable after a crash
“but then the whole database can be unrecoverable in case of crash. It has happened to me.”
Comment from 3 Jul 2026 in “Lightning Memory-Mapped Database Manager (LMDB) 1.0” “a default database that isn't robust against power failure or crashes seems suprising to me”
Comment from 19 Dec 2025 in “Garage – An S3 object store so reliable you can run it outside datacenters” Hard to use from documentation
“I find this almost totally unusable. I often find myself reading the source instead.”
Comment from 14 Nov 2025 in “Rust in Android: move fast and fix things” “From this documentation I don't know how to use lmdb to make a correct program.”
Comment from 17 Nov 2025 in “Rust in Android: move fast and fix things” “I find this almost totally unusable”
Comment from 16 Nov 2025 in “Rust in Android: move fast and fix things” Unusable for many use cases
“I think lmdb is mostly unusable, for many use cases.”
Comment from 3 Jul 2026 in “Lightning Memory-Mapped Database Manager (LMDB) 1.0” “Don't use LMDB for anything that matters.”
Comment from 2 Jul 2026 in “Lightning Memory-Mapped Database Manager (LMDB) 1.0”
Other key-value stores people recommend
The four most recommended other key-value stores, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.
| Product | Recommend | Criticize | Approval | Months | Owned | Badge |
|---|---|---|---|---|---|---|
| LMDBThis page | 20 | 9 | 69% | 9 | — | Approved |
| RocksDB | 20 | 4 | 83% | 8 | — | Approved |
| Cloudflare KV | 9 | 12 | 43% | 8 | — | — |
| etcd | 9 | 23 | 28% | 4 | — | — |
| LevelDB | 5 | 5 | 50% | 3 | — | — |
What people said
36 of the 40 comments that mention it, newest first. Each links to the original comment.
“By default, LMDB performs whatever necessary syncs and is 100% crash proof, even in the face of power outages.”
“Dropping the explicit P_DIRTY flag in 1.0 is a neat change.”
“Next step is go down one more level to ditch SQL and learn LMDB and/or RocksDB.”
“no fine tuning is needed. The internal paths to every hot page automatically take priority”
“but then the whole database can be unrecoverable in case of crash. It has happened to me.”
“pointed out CVEs in LMDB attributed to his own bare hands”
“I think lmdb is mostly unusable, for many use cases.”
“That it keeps an infinite cache of malloc page allocations is annoying”
“I've used LMDB in production for multi-terabyte databases, and we encountered the long-write time but found a solution.”
“It has worked well for me as a way to read mutable (by any client) parameters during synthesis”
“LMDB does the work once and all users benefit.”
“Don't use LMDB for anything that matters.”
“As long as you stick to the safe LMDB options, which are the default options, it's reliable.”
“once the db reached several hundred gb, writes would hang for longer and longer periods of time”
“It is really reliable except write performance in my experience.”
“pushing return values 4k above the stack, with a comment like”
“your code exists on BILLIONS of machines”
“why not take it further and use LMDB?”
“LMDB is already used by OpenLDAP [2][3] and seems pretty bullet-proof.”
“inspired by LMDB's blazing fast memory-mapped CoW approach”
“lightning fast on reads but quite bad on writes”
“It's truly an incredible piece of tech.”
“getting a 22x speedup by replacing SQLite's btree code with LMDB”
“Then OS will do a better job (as seen with LMDB etc)”
“LMDB, boltdb/bbolt and sqlite (with mmap) are all rock solid.”
“Sqlite and LMDB make fantastic use of it.”
“lmdb is a bit further down the list”
“it gives much better performance”
“a default database that isn't robust against power failure or crashes seems suprising to me”
“if the object mapping fits in memory that should be pretty optimal for reading”
“Because it's so efficient, it can retain more useful data in-memory than other DBs for a given RAM size.”
“It will always be far more efficient than any other DB under the same conditions.”
“LMDB fully supports multiprocess concurrency as well as DBs multiple orders of magnitude larger than RAM”
“From this documentation I don't know how to use lmdb to make a correct program.”
“I find this almost totally unusable”
“I find this almost totally unusable. I often find myself reading the source instead.”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.