vs

dqlite vs etcd

dqlite: Canonical's embeddable C library that makes SQLite highly available with Raft replication. etcd: Raft-based, strongly consistent key-value store that holds Kubernetes' cluster state.

key differences

  • dqlite is primarily a relational database; etcd is key-value.
  • Licensing: dqlite is open source (copyleft) (LGPL-3.0 with static-linking exception); etcd is open source (permissive) (Apache License 2.0).
  • Only dqlite has joins, secondary indexes, json, triggers.
  • Only etcd has ttl / expiry, pub/sub, role-based access, time travel.
  • dqlite can run embedded in your application process.

choose dqlite for

  • +Cluster state for infrastructure software (LXD, MicroK8s)
  • +Kubernetes datastore replacement for etcd via kine
  • +HA configuration stores in edge appliances
  • +Embedding a replicated database in Go services

best at · Coordination, Metadata, Embedded

choose etcd for

  • +Kubernetes and control-plane state
  • +Service discovery and dynamic configuration
  • +Distributed locks and leader election
  • +Feature flags and small metadata for infrastructure

best at · Coordination, Metadata, Pub/Sub

overview
Primary model
Relational
Key-Value
Also supports
–
–
Type
Embedded library
Database engine
Status
Active
Active
Developer
Canonical
etcd maintainers / CNCF
First release
2017
2013
Latest version
1.18.7 (Jul 2, 2026)
3.7.3 (Oct 22, 2026)
License
Open source (copyleft)LGPL-3.0 with static-linking exception
Open source (permissive)Apache License 2.0
Free tier
✓
✓
popularity
WhichDB Score
8.4
32.4
Rank
#324
#71
GitHub stars
4.4K
52.4K
Stack Overflow questions
–
478
scale & guarantees
Comfortable data size
Small (≤ 100 GB)
Small (≤ 100 GB)
Horizontal scaling
None
None
Multi-region
None
None
ACID
Full
Full
Consistency
Strong
Strong
Schema
Flexible
Schemaless
Architecture
Embedded, Distributed
Distributed, Client server
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
SQL
etcd v3 API
Client languages
C, Go, Python
Go, Java, Python, JavaScript, Rust, C++
Best for
Coordination, Metadata, Embedded, Edge
Coordination, Metadata, Pub/Sub

dqlite vs etcd: FAQ

What is the difference between dqlite and etcd?

dqlite: Canonical's embeddable C library that makes SQLite highly available with Raft replication. etcd: Raft-based, strongly consistent key-value store that holds Kubernetes' cluster state. dqlite is primarily a relational database; etcd is key-value. Licensing: dqlite is open source (copyleft) (LGPL-3.0 with static-linking exception); etcd is open source (permissive) (Apache License 2.0). Only dqlite has joins, secondary indexes, json, triggers.

When should I choose dqlite over etcd?

Choose dqlite for cluster state for infrastructure software (LXD, MicroK8s); kubernetes datastore replacement for etcd via kine; and HA configuration stores in edge appliances. Choose etcd for kubernetes and control-plane state; service discovery and dynamic configuration; and distributed locks and leader election.

Is dqlite or etcd more popular?

etcd ranks #71 on the WhichDB Score (32.4/100) and dqlite ranks #324 (8.4/100). Popularity is not fit: check the requirements that matter for your project.

Are dqlite and etcd open source?

Yes. dqlite is open source. License: LGPL-3.0 with static-linking exception. Yes. etcd is open source. License: Apache License 2.0.