vs

LMDB vs RocksDB

LMDB: Tiny memory-mapped B+tree with ACID transactions and lock-free readers; reached 1.0 in 2026. RocksDB: Meta's embeddable LSM-tree key-value engine, the storage layer under dozens of databases.

key differences

  • Only RocksDB has ttl / expiry, compression.

choose lmdb for

  • +Read-heavy embedded indexes and caches
  • +Directory services (OpenLDAP back-mdb)
  • +Blockchain and wallet state
  • +ML dataset storage with fast random reads

best at · Embedded, Metadata, Local-first

choose rocksdb for

  • +Storage engine for a custom database or service
  • +Stream-processing state stores (Kafka Streams, Flink)
  • +MySQL storage engine via MyRocks
  • +Write-heavy local indexes and caches on SSD

best at · Embedded, OLTP, Streaming

overview
Primary model
Key-Value
Key-Value
Also supports
–
–
Type
Embedded library
Embedded library
Status
Active
Active
Developer
Symas Corporation / OpenLDAP Project
Meta
First release
2011
2013
Latest version
1.0.2 (Sep 8, 2026)
11.12 (Oct 26, 2026)
License
Open source (permissive)OpenLDAP Public License 2.8
Open source (permissive)Apache License 2.0 or GPL-2.0 (dual)
Free tier
✓
✓
popularity
WhichDB Score
39.7
48.2
Rank
#47
#30
GitHub stars
3.1K
32.2K
Stack Overflow questions
260
504
scale & guarantees
Comfortable data size
Medium (≤ 10 TB)
Medium (≤ 10 TB)
Horizontal scaling
None
None
Multi-region
None
None
ACID
Full
Full
Consistency
Strong
Strong
Schema
Schemaless
Schemaless
Architecture
Embedded
Embedded
deployment
Self-hosted
✓
✓
Vendor-managed cloud
—
—
Serverless
—
—
Embedded
✓
✓
Edge
—
—
Clouds
–
–
capabilities
Transactions
✓
✓
Joins
—
—
Secondary indexes
—
—
Full-text search
—
—
Vector search
—
—
Geospatial
—
—
JSON
—
—
Change data capture
—
—
Triggers
—
—
Stored procedures
—
—
Materialized views
—
—
TTL / expiry
—
✓
Pub/Sub
—
—
Columnar storage
—
—
In-memory
—
—
Durable persistence
✓
✓
Compression
—
✓
Encryption at rest
—
—
Role-based access
—
—
Time travel
—
—
Branching
—
—
Online schema changes
—
—
Streaming ingest
—
—
Offline sync
—
—
Runs in WebAssembly
—
—
interfaces
Query languages
C API
C++ API
Client languages
C, C++, Python, Go, Rust, Java, JavaScript
C++, C, Java
Best for
Embedded, Metadata, Local-first
Embedded, OLTP, Streaming, Metadata

LMDB vs RocksDB: FAQ

What is the difference between LMDB and RocksDB?

LMDB: Tiny memory-mapped B+tree with ACID transactions and lock-free readers; reached 1.0 in 2026. RocksDB: Meta's embeddable LSM-tree key-value engine, the storage layer under dozens of databases. Only RocksDB has ttl / expiry, compression.

When should I choose LMDB over RocksDB?

Choose LMDB for read-heavy embedded indexes and caches; directory services (OpenLDAP back-mdb); and blockchain and wallet state. Choose RocksDB for storage engine for a custom database or service; stream-processing state stores (Kafka Streams, Flink); and MySQL storage engine via MyRocks.

Is LMDB or RocksDB more popular?

RocksDB ranks #30 on the WhichDB Score (48.2/100) and LMDB ranks #47 (39.7/100). Popularity is not fit: check the requirements that matter for your project.

Are LMDB and RocksDB open source?

Yes. LMDB is open source. License: OpenLDAP Public License 2.8. Yes. RocksDB is open source. License: Apache License 2.0 or GPL-2.0 (dual).