Dragonfly

active

by DragonflyDB Ltd. · since 2022 · also known as DragonflyDB

A multi-threaded, shared-nothing in-memory store that speaks Redis and Memcached on one big box.

key-valuedocumentvectorsearch enginedatabase enginesource-availablegrowing

Overview

Dragonfly reimplements the Redis and Memcached APIs on a shared-nothing, thread-per-core architecture, so a single process can use dozens of cores instead of needing a Redis Cluster of many shards. Its dashtable layout and fork-free snapshotting also cut memory overhead and avoid the copy-on-write spikes that make Redis BGSAVE painful. It is a strong fit for teams that want to vertically scale a Redis workload on large instances. Version 2.0 shipped in September 2026, still under BSL 1.1, which forbids offering it as a competing managed service.

Strengths & trade-offs

Strengths

  • +Thread-per-core design scales one instance across many cores without cluster sharding
  • +Fork-free snapshots avoid Redis-style memory spikes during persistence
  • +Lower per-key memory overhead than Redis for many workloads
  • +Speaks both RESP and Memcached, easing consolidation of two cache tiers
  • +Built-in search and JSON commands compatible with RediSearch/RedisJSON clients

Trade-offs

  • −BSL 1.1 license restricts offering it as a managed service
  • −Some Redis commands and module behaviours differ or are missing
  • −Smaller ecosystem and fewer managed options than Redis/Valkey
  • −Still bounded by the RAM of the machines you run

Great for

  • +Consolidating many Redis shards onto fewer large instances
  • +High-throughput caching and session storage
  • +BullMQ / Sidekiq style queue backends
  • +Replacing Memcached and Redis with one engine

Think twice for

  • −Vendors building a hosted Redis-compatible service
  • −Workloads depending on niche Redis modules
  • −Datasets larger than RAM

Capabilities

Native or official first-party support · 13 of 25 tracked

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

Scale & consistency

Comfortable data size
Medium · ≤ 10 TB
Horizontal scaling
Native
Multi-region
Read replicas
Transactions
Limited ACID
Consistency
Eventual
Schema
Schemaless
Architecture
In memory, Single node, Primary replica, Client server
Query languages
Redis commands (RESP), Memcached protocol, Lua

Designed to scale up to hundreds of GB and millions of ops/s per node; cluster mode and Dragonfly Swarm add horizontal scaling.

Deployment

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

available on · AWS · Google Cloud · Azure

Ecosystem

compatible withRedis, Memcached
apis & protocolsRESP2/RESP3, Memcached text protocol
client languagesPython, Java, JavaScript, Go, C#, Rust, Ruby, PHP, C

Alternatives to Dragonfly

Compare all→
RedisKey-Value84.3

The in-memory data structure server that became the default cache, now with search, JSON and vectors built in.

dragonfly vs redis →
ValkeyKey-Value58.0

The Linux Foundation's BSD-licensed fork of Redis, now the default engine on AWS and Google Cloud.

dragonfly vs valkey →
Microsoft GarnetKey-Value7.8

Microsoft Research's .NET cache-store that speaks RESP and scales across cores and storage tiers.

dragonfly vs garnet →
KeyDBKey-Value13.5

Snap's multi-threaded Redis fork with active-active replication and FLASH storage, now dormant.

dragonfly vs keydb →
MemcachedKey-Value50.6

The original multi-threaded, dead-simple distributed memory cache for key-value blobs.

dragonfly vs memcached →
Amazon ElastiCacheKey-Value29.1

AWS's managed Valkey, Redis OSS and Memcached service, provisioned or serverless.

dragonfly vs amazon-elasticache →

Dragonfly FAQ

What is Dragonfly?

Dragonfly is a key-value database by DragonflyDB Ltd., first released in 2022. Dragonfly reimplements the Redis and Memcached APIs on a shared-nothing, thread-per-core architecture, so a single process can use dozens of cores instead of needing a Redis Cluster of many shards. Its dashtable layout and fork-free snapshotting also cut memory overhead and avoid the copy-on-write spikes that make Redis BGSAVE painful. It is a strong fit for teams that want to vertically scale a Redis workload on large instances. Version 2.0 shipped in September 2026, still under BSL 1.1, which forbids offering it as a competing managed service.

Is Dragonfly open source?

Not in the OSI sense. Dragonfly is source-available: you can read the code, but the license restricts some uses, typically offering it as a competing managed service. License: Business Source License 1.1.

Does Dragonfly support ACID transactions?

Partly. Dragonfly offers limited ACID guarantees (for example, single-record or single-partition transactions), with eventual consistency.

Does Dragonfly scale horizontally?

Dragonfly scales horizontally out of the box, with built-in sharding or partitioning. It is comfortable at medium scale (≤ 10 TB). It supports cross-region read replicas.

How can I run Dragonfly?

You can self-host it and use the vendor's managed cloud. Managed offerings include Dragonfly Cloud. It is available on AWS, Google Cloud and Azure.

What is Dragonfly best for?

Dragonfly is a strong fit for consolidating many Redis shards onto fewer large instances; high-throughput caching and session storage; and BullMQ / Sidekiq style queue backends. Think twice for vendors building a hosted Redis-compatible service.

What are the best alternatives to Dragonfly?

Common alternatives to Dragonfly include Redis, Valkey, Microsoft Garnet, KeyDB and Memcached. The right choice depends on your workload, scale and hosting; WhichDB's smart match ranks them against your requirements.

How popular is Dragonfly?

Dragonfly ranks #150 of 844 databases on the WhichDB Score (20.7/100), and #19 among key-value databases. The score combines public adoption signals such as package downloads, GitHub activity, job posts and developer discussion.