FREEDOM251

Freedom251 › Embedded Databases

redb

Free plan

Visit redb Alternatives

redb's own site

What redb is

redb is a free embedded key-value database written in pure Rust. It stores data in copy-on-write B+trees and provides a zero-copy, thread-safe API based on BTreeMap. Fully ACID-compliant transactions protect updates, while MVCC allows concurrent readers and a writer without blocking. The project describes redb as crash-safe by default and includes savepoints and rollbacks. It also states that the database and file format are stable and maintained. Developers can choose the Apache License 2.0 or MIT License. With the standard-library feature disabled and experimental-api-5 enabled, redb can build without std, provided the program uses alloc, panic = "abort", and a target with atomic compare-and-swap. In no_std mode, storage must be supplied through a StorageBackend because there is no filesystem. Supported targets include Cortex-M3 and newer, but not Cortex-M0. Rust API documentation is available through docs.rs, and the project credits Christopher Berner.

Who it suits

redb suits Rust developers embedding a transactional key-value store inside applications. Its no_std mode also targets suitable embedded systems that can provide their own storage backend.

What it does well

  • Free under Apache 2.0 or MIT
  • ACID transactions and MVCC concurrency
  • Crash-safe with savepoints and rollbacks
  • Stable, maintained file format
  • Zero-copy thread-safe BTreeMap API

What to know first

  • no_std mode has no filesystem
  • Requires custom StorageBackend in no_std
  • Cortex-M0 is excluded
  • Pure Rust implementation only

Verdict

redb offers an embedded Rust database with transactional guarantees, concurrent reads, and a stable format. Developers targeting no_std systems must meet its build requirements and provide storage themselves.

Facts from redb's own pages

API
Its API is zero-copy, thread-safe, and based on BTreeMap. · docs.rs, 8 Oct 2026
Concurrency
MVCC allows concurrent readers and a writer without blocking. · docs.rs, 8 Oct 2026
Data structure
It stores data in a collection of copy-on-write B+trees. · docs.rs, 8 Oct 2026
Documentation
The project links to its Rust API documentation on docs.rs. · redb.org, 7 Oct 2026
License
The repository lists Apache-2.0 and MIT licenses. · github.com, 8 Oct 2026
Maker
The project homepage credits Christopher Berner. · redb.org, 7 Oct 2026
No standard library
With the std feature disabled and experimental-api-5 enabled, redb can build without the standard library; this mode requires alloc, panic = "abort", and a target with atomic compare-and-swap. · github.com, 7 Oct 2026
No standard library mode
With experimental-api-5 enabled, redb can be built without std; this mode requires alloc, panic = abort, and a target with atomic compare-and-swap. · github.com, 8 Oct 2026
No standard library storage
In no_std mode there is no filesystem, so storage must be supplied by implementing StorageBackend. · github.com, 7 Oct 2026
Product
redb is a portable, high-performance embedded key-value store written in pure Rust. · docs.rs, 8 Oct 2026
Recovery
The project describes redb as crash-safe by default. · docs.rs, 8 Oct 2026
Release status
The project describes redb as stable and maintained, with a stable file format. · github.com, 8 Oct 2026
Savepoints
It supports savepoints and rollbacks. · docs.rs, 8 Oct 2026
Status
The project says redb is stable and maintained, and that its file format is stable. · github.com, 7 Oct 2026
Storage
Data is stored in a collection of copy-on-write B+trees. · docs.rs, 7 Oct 2026
Storage backend
In no_std mode, storage is supplied by implementing StorageBackend and passing it to Builder::create_with_backend(). · github.com, 8 Oct 2026
Transactions
redb supports fully ACID-compliant transactions. · docs.rs, 8 Oct 2026

Where redb stands on Freedom251

Look at these too