sled

maintenance

by Tyler Neely · since 2016

Ambitious lock-free embedded Rust database whose 1.0 rewrite has stalled in alpha.

key-valueembedded libraryopen source (permissive)emerging

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

✓Transactions
✓Pub/Sub
✓Durable persistence
✓Compression
–Joins
–Secondary indexes
–Full-text search
–Vector search
–Geospatial
–JSON
–Change data capture
–Triggers
–Stored procedures
–Materialized views
–TTL / expiry
–Columnar storage
–In-memory
–Encryption at rest
–Role-based access
–Time travel
–Branching
–Online schema changes
–Streaming ingest
–Offline sync
–Runs in WebAssembly

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

Self-hosted Vendor-managed cloud Serverless Embedded Edge Kubernetes operator

Ecosystem

apis & protocolsRust API
client languagesRust

Alternatives to sled

Compare all→
redbKey-Value13.8

Pure-Rust embedded key-value store: copy-on-write B-trees, ACID, and a stable file format.

sled vs redb →
FjallKey-Value15.4

Log-structured, embeddable key-value engine in pure Rust with keyspaces and transactions.

sled vs fjall →
RocksDBKey-Value48.2

Meta's embeddable LSM-tree key-value engine, the storage layer under dozens of databases.

sled vs rocksdb →
LMDBKey-Value39.7

Tiny memory-mapped B+tree with ACID transactions and lock-free readers; reached 1.0 in 2026.

sled vs lmdb →
Dexie.jsDocument25.8

The most popular IndexedDB wrapper, with live queries and an optional Dexie Cloud sync service.

sled vs dexie →
TinyBaseKey-Value18.4

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.