sled
maintenanceby Tyler Neely · since 2016
Ambitious lock-free embedded Rust database whose 1.0 rewrite has stalled in alpha.
maintenance. Stable 0.34.7 is from 2021; the 1.0 rewrite has sat at alpha since 2024 with only occasional commits. redb or Fjall are common replacements.
Overview
sled is an embedded key-value store for Rust that popularised modern lock-free, log-structured B-tree ideas in the Rust ecosystem, with an API similar to a thread-safe BTreeMap plus transactions, watch subscriptions and merge operators. The stable 0.34.x line dates from 2021, and the author's ground-up 1.0 rewrite has been in alpha since 2024 with only sporadic commits since. The project calls itself beta software and warns of high space usage and an unstable on-disk format. Many Rust projects have moved to redb or Fjall; sled remains interesting as a design reference.
Strengths & trade-offs
Strengths
- +Thread-safe BTreeMap-like API that is pleasant to use from Rust
- +Watch-prefix subscriptions and merge operators
- +Serializable multi-tree transactions
- +Influential lock-free storage design
Trade-offs
- −Beta quality by the author's own description; on-disk format not stable
- −High disk space usage compared with alternatives
- −Development has largely stalled
- −Rust-only
Great for
- +Prototypes and hobby projects in Rust
- +Studying lock-free storage engine design
Think twice for
- −Production data you cannot afford to lose
- −Long-lived on-disk formats
- −Non-Rust applications
Capabilities
Native or official first-party support · 4 of 25 tracked
Scale & consistency
- Comfortable data size
- Small · ≤ 100 GB
- Horizontal scaling
- None
- Multi-region
- No
- Transactions
- Limited ACID
- Consistency
- Strong
- Schema
- Schemaless
- Architecture
- Embedded
- Query languages
- Rust API
Deployment
Ecosystem
Alternatives to sled
Pure-Rust embedded key-value store: copy-on-write B-trees, ACID, and a stable file format.
sled vs redb →Log-structured, embeddable key-value engine in pure Rust with keyspaces and transactions.
sled vs fjall →Meta's embeddable LSM-tree key-value engine, the storage layer under dozens of databases.
sled vs rocksdb →Tiny memory-mapped B+tree with ACID transactions and lock-free readers; reached 1.0 in 2026.
sled vs lmdb →The most popular IndexedDB wrapper, with live queries and an optional Dexie Cloud sync service.
sled vs dexie →Tiny reactive in-memory store for tables and values, with persisters and CRDT sync.
sled vs tinybase →sled FAQ
What is sled?
sled is a key-value database by Tyler Neely, first released in 2016. sled is an embedded key-value store for Rust that popularised modern lock-free, log-structured B-tree ideas in the Rust ecosystem, with an API similar to a thread-safe BTreeMap plus transactions, watch subscriptions and merge operators. The stable 0.34.x line dates from 2021, and the author's ground-up 1.0 rewrite has been in alpha since 2024 with only sporadic commits since. The project calls itself beta software and warns of high space usage and an unstable on-disk format. Many Rust projects have moved to redb or Fjall; sled remains interesting as a design reference.
Is sled open source?
Yes. sled is open source. License: MIT or Apache License 2.0.
Does sled support ACID transactions?
Partly. sled offers limited ACID guarantees (for example, single-record or single-partition transactions), with strong consistency.
Does sled scale horizontally?
sled does not scale horizontally; it runs on a single node, so you scale it up rather than out. It is comfortable at small scale (≤ 100 GB).
How can I run sled?
You can self-host it and embed it in your application.
What is sled best for?
sled is a strong fit for prototypes and hobby projects in Rust; and studying lock-free storage engine design. Think twice for production data you cannot afford to lose.
What are the best alternatives to sled?
Common alternatives to sled include redb, Fjall, RocksDB, LMDB and Dexie.js. The right choice depends on your workload, scale and hosting; WhichDB's smart match ranks them against your requirements.
Is sled still maintained?
sled is in maintenance mode. Stable 0.34.7 is from 2021; the 1.0 rewrite has sat at alpha since 2024 with only occasional commits. redb or Fjall are common replacements.
How popular is sled?
sled ranks #255 of 844 databases on the WhichDB Score (13.3/100), and #35 among key-value databases. The score combines public adoption signals such as package downloads, GitHub activity, job posts and developer discussion.