vs

libmdbx vs redb

libmdbx: Heavily reworked LMDB descendant: memory-mapped ACID B+tree with auto-growing files. redb: Pure-Rust embedded key-value store: copy-on-write B-trees, ACID, and a stable file format.

key differences

  • libmdbx is built for larger datasets (≤ 10 TB) than redb (≤ 100 GB).

choose libmdbx for

  • +Blockchain node state and indexes
  • +Read-heavy embedded storage needing LMDB semantics
  • +Replacing LMDB where auto-resizing is needed

best at · Embedded, Metadata

choose redb for

  • +Local persistence for Rust desktop and CLI apps
  • +Embedded metadata and index storage in Rust services
  • +Replacing sled or LMDB bindings in Rust code

best at · Embedded, Local-first, Metadata

overview
Primary model
Key-Value
Key-Value
Also supports
–
–
Type
Embedded library
Embedded library
Status
Active
Active
Developer
Leonid Yuriev
Christopher Berner
First release
2015
2021
Latest version
0.14.4 (Sep 19, 2026)
4.4.0 (Oct 13, 2026)
License
Open source (permissive)Apache License 2.0
Open source (permissive)MIT or Apache License 2.0
Free tier
✓
✓
popularity
WhichDB Score
4.9
13.8
Rank
#394
#245
GitHub stars
1.5K
4.9K
Stack Overflow questions
–
–
scale & guarantees
Comfortable data size
Medium (≤ 10 TB)
Small (≤ 100 GB)
Horizontal scaling
None
None
Multi-region
None
None
ACID
Full
Full
Consistency
Strong
Strong
Schema
Schemaless
Strict
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
Rust API
Client languages
C, C++, Rust, Go, Python, JavaScript
Rust, Python
Best for
Embedded, Metadata
Embedded, Local-first, Metadata

libmdbx vs redb: FAQ

What is the difference between libmdbx and redb?

libmdbx: Heavily reworked LMDB descendant: memory-mapped ACID B+tree with auto-growing files. redb: Pure-Rust embedded key-value store: copy-on-write B-trees, ACID, and a stable file format. libmdbx is built for larger datasets (≤ 10 TB) than redb (≤ 100 GB).

When should I choose libmdbx over redb?

Choose libmdbx for blockchain node state and indexes; read-heavy embedded storage needing LMDB semantics; and replacing LMDB where auto-resizing is needed. Choose redb for local persistence for Rust desktop and CLI apps; embedded metadata and index storage in Rust services; and replacing sled or LMDB bindings in Rust code.

Is libmdbx or redb more popular?

redb ranks #245 on the WhichDB Score (13.8/100) and libmdbx ranks #394 (4.9/100). Popularity is not fit: check the requirements that matter for your project.

Are libmdbx and redb open source?

Yes. libmdbx is open source. License: Apache License 2.0. Yes. redb is open source. License: MIT or Apache License 2.0.