77+ Key-Value Databases Ranked & Compared

Compare key-value stores ranked by GitHub stars, performance, and real-time capabilities.

Last updated: May 20, 2026
68 databases
1Redis
Redis
74.4k+529 30d

In-memory data store used as a database, cache, message broker, and streaming engine

Key-Value·2009·RSALv2 / SSPLv1 / AGPLv3 (triple-licensed)·C
2etcd
etcd
51.7k+64 30d

Distributed reliable key-value store for the most critical data of a distributed system

Key-Value·2013·Apache-2.0·Go
3LevelDB
LevelDB
39.1k+113 30d

Fast key-value storage library by Google providing ordered mappings with LSM-tree architecture

Key-Value·2011·BSD-3-Clause·C++
4SurrealDB
SurrealDB
32.1k+246 30d

Multi-model database combining documents, graphs, vectors, and time-series with built-in API layer and real-time capabilities

Multi-Model·2022·BSL-1.1·Rust
5RocksDB
RocksDB
31.7k+47 30d

High-performance embeddable key-value store optimized for fast storage on SSDs

Key-Value·2012·GPL-2.0·C++
6Dragonfly
Dragonfly
30.5k+139 30d

Modern in-memory data store fully compatible with Redis and Memcached, delivering 25x more throughput

Key-Value·2022·BSL-1.1·C++
7MongoDB
MongoDB
28.3k+87 30d

The most popular document database for modern applications

Document·2009·SSPL·C++, JavaScript, Python
8Valkey
Valkey
25.8k+313 30d

Open-source high-performance key-value database forked from Redis, backed by the Linux Foundation

Key-Value·2024·BSD-3-Clause·C
9MMKV
MMKV
18.6k+29 30d

Ultra-fast mobile key-value storage powered by mmap and protobuf, built by WeChat

Key-Value·2018·BSD-3-Clause·C++
10TiKV
TiKV
16.7k+38 30d

Distributed transactional key-value database providing ACID guarantees at scale

Key-Value·2016·Apache-2.0·Rust
11FoundationDB
FoundationDB
16.3k+65 30d

Distributed, transactional key-value store with multi-model layers and strict serializability

Key-Value·2013·Apache-2.0·C++, Flow
12Badger
Badger
15.6k+42 30d

Fast, embeddable key-value database written in pure Go with LSM tree and value log separation

Key-Value·2017·Apache-2.0·Go
13Memcached
Memcached
14.2k+26 30d

High-performance distributed memory caching system for speeding up dynamic web applications

Key-Value·2003·BSD-3-Clause·C
14ArangoDB
ArangoDB
14.2k+18 30d

Multi-model database unifying document, graph, and key-value in a single engine with AQL

Multi-Model·2012·BUSL-1.1·C++, JavaScript
15KeyDB
KeyDB
12.5k+19 30d

Multithreaded Redis fork with higher throughput and active replication

Key-Value·2019·BSD-3-Clause·C++, C
16Mnesia
Mnesia
12.1k+25 30d

Distributed real-time database management system built into Erlang/OTP for telecom-grade fault tolerance

Key-Value·1999·Apache-2.0·Erlang
17DiceDB
DiceDB
10.8k+15 30d

Redis-compatible key-value engine with query subscriptions and hierarchical storage tiers

Key-Value·2023·BSD-3-Clause·C
18immudb
immudb
9.0k+11 30d

Immutable, tamperproof database with cryptographic verification for zero-trust environments

Multi-Model·2019·BUSL-1.1·Go
19go-cache
go-cache
8.8k+10 30d

Lightweight in-memory key-value cache for Go with expiration and cleanup

Key-Value·2012·MIT·Go
20Hazelcast
Hazelcast
6.6k−16 30d

Unified real-time data platform combining in-memory data grid with stream processing

Key-Value·2008·Apache-2.0·Java
21goleveldb
goleveldb
6.3k−2 30d

Pure Go implementation of LevelDB key-value store with LSM-tree storage

Key-Value·2013·BSD-2-Clause·Go
22Pebble
Pebble
5.9k+39 30d

High-performance LSM key-value store in Go, powering CockroachDB as its storage engine

Key-Value·2018·BSD-3-Clause·Go
23Apache Ignite
Apache Ignite
5.1k+1 30d

Distributed in-memory database with ACID transactions, SQL, and compute capabilities

Multi-Model·2015·Apache-2.0·Java, C++, C#
24MapDB
MapDB
5.0k+3 30d

Embedded Java database engine providing concurrent Maps, Sets, and Queues backed by disk or off-heap memory

Key-Value·2012·Apache-2.0·Kotlin, Java
25OrientDB
OrientDB
5.0k+5 30d

Multi-model database combining graph, document, key-value, and object models with SQL support and ACID transactions

Multi-Model·2010·Apache-2.0·Java
26RoseDB
RoseDB
4.9k−2 30d

Lightweight, fast, and reliable embedded key-value storage engine based on the Bitcask model

Embedded·2020·Apache-2.0·Go
27BuntDB
BuntDB
4.8k+8 30d

Embeddable in-memory key-value database for Go with custom indexing and geospatial support

Embedded·2016·MIT·Go
28YDB
YDB
4.7k+12 30d

Open-source distributed SQL database combining high availability, scalability, strong consistency, and ACID transactions

Relational·2022·Apache-2.0·C++
29Redka
Redka
4.5k+8 30d

Redis re-implemented with SQLite for persistent, ACID-compliant key-value storage

Key-Value·2024·BSD-3-Clause·Go
30Hive
Hive
4.4k0 30d

Lightweight and blazing-fast key-value database written in pure Dart for Flutter apps

Key-Value·2019·Apache-2.0·Dart
31Kvrocks
Kvrocks
4.3k+17 30d

Distributed Redis-compatible key-value NoSQL database built on RocksDB for cost-effective persistent storage

Key-Value·2019·Apache-2.0·C++
32RavenDB
RavenDB
3.9k+5 30d

ACID document database with integrated full-text search, time series, and distributed counters

Document·2010·AGPL-3.0 / Commercial·C#
33Tarantool
Tarantool
3.6k+12 30d

In-memory computing platform combining a database and Lua application server for extreme performance

Multi-Model·2010·BSD-2-Clause·C, Lua
34NutsDB
NutsDB
3.6k+3 30d

Simple, fast, embeddable, persistent key/value store in pure Go with rich data structures

Key-Value·2018·Apache-2.0·Go
35Olric
Olric
3.4k+7 30d

Distributed, in-memory key/value store and cache with Redis-compatible protocol support

Key-Value·2018·Apache-2.0·Go
36Roshi
Roshi
3.2k+1 30d

Large-scale CRDT set implementation for timestamped events backed by Redis

Time-Series·2014·BSD-2-Clause·Go
37LMDB
LMDB
3.0k+19 30d

Ultra-fast memory-mapped embedded key-value store with full ACID transactions and zero-copy reads

Embedded·2011·OLDAP-2.8·C
38Skytable
Skytable
2.7k+5 30d

Modern scalable NoSQL database written in Rust with BlueQL query language for performance and flexibility

Key-Value·2020·AGPL-3.0·Rust
39GridDB
GridDB
2.5k0 30d

IoT-optimized time-series database with hybrid in-memory and disk storage from Toshiba

Time-Series·2013·AGPL-3.0·C++, Java
40Apache Geode
Apache Geode
2.4k+8 30d

In-memory data grid providing real-time, consistent access to data-intensive applications at massive scale

Key-Value·2015·Apache-2.0·Java
41Graph Engine
Graph Engine
2.3k+1 30d

Distributed in-memory graph processing engine with strongly-typed key-value store, formerly Trinity

Graph·2015·MIT·C#, C++
42YTsaurus
YTsaurus
2.2k+6 30d

Exabyte-scale distributed storage and processing platform for big data from Yandex

Multi-Model·2023·Apache-2.0·C++
43TerarkDB
TerarkDB
2.1k+2 30d

RocksDB-compatible key-value storage engine with optimized tail latency, throughput, and compression

Key-Value·2020·Apache-2.0·C++
44Ehcache
Ehcache
2.1k0 30d

Widely-used open-source Java caching library with JCache compliance and distributed clustering via Terracotta

Key-Value·2003·Apache-2.0·Java
45Aerospike
Aerospike
1.3k+8 30d

Flash-optimized distributed NoSQL database for real-time applications at massive scale

Key-Value·2012·AGPL-3.0·C
46Infinispan
Infinispan
1.3k+7 30d

Open-source distributed in-memory data grid with multi-protocol access and cross-site replication

Key-Value·2009·Apache-2.0·Java
47ArcadeDB
ArcadeDB
888+74 30d

Multi-model database supporting graphs, documents, key-value, vectors, time-series, and search in one engine

Multi-Model·2021·Apache-2.0·Java
48NCache
NCache
660+2 30d

Open-source distributed in-memory cache for .NET and Java with pub/sub messaging

Key-Value·2005·Apache-2.0·C#, .NET
49Oracle Coherence

In-memory data grid with fault-tolerant caching, transactions, and event processing for enterprise Java applications

Key-Value·2001·UPL-1.0·Java
50Riak KV
Riak KV
44+2 30d

Distributed NoSQL key-value database with masterless architecture for high availability and fault tolerance

Key-Value·2009·Apache-2.0·Erlang
51Actian PSQL

Zero-DBA embedded relational database with nano-footprint for application developers

Relational·1982·proprietary·C, C++
52Amazon DynamoDB

Serverless, fully managed NoSQL key-value and document database with single-digit millisecond performance at any scale

Key-Value·2012·proprietary
53Azure Cosmos DB

Globally distributed, multi-model database service with turnkey multi-region replication and single-digit millisecond latency

Multi-Model·2017·proprietary·C++, C#
54Cloudflare Workers KV

Global edge key-value store with low-latency reads across 330+ locations

Key-Value·2018·proprietary
55CloudKit

Apple's cloud database service for seamless data sync across all Apple platforms

Document·2014·proprietary
56CortexDB

Self-learning multi-model NoSQL database with automatic normalization to 6th normal form

Multi-Model·2014·proprietary·C++
57Couchbase

Multi-model NoSQL database for enterprise applications with SQL++ support

Multi-Model·2011·BSL 1.1 / Apache-2.0 (Community)·C++, Go, Erlang, C
58GigaSpaces XAP

In-memory computing platform for real-time analytics and extreme transaction processing

Key-Value·2000·Proprietary·Java
59Google Cloud Spanner

Globally distributed, strongly consistent relational database with unlimited scale and 99.999% availability

Relational·2017·Proprietary·C++
60GridGain

In-memory computing platform built on Apache Ignite for real-time transactions and analytics

Multi-Model·2007·proprietary·Java, C++, C#
61InfinityDB

Embedded Java NoSQL database with flexible multi-value data model and concurrent B+Tree storage

Key-Value·2002·proprietary·Java
62InterSystems IRIS

High-performance multi-model data platform unifying SQL, objects, documents, and key-value access on a single engine

Multi-Model·2018·proprietary·C, C++, ObjectScript
63LeanXcale

Ultra-scalable distributed SQL database with full ACID compliance and NoSQL-speed ingestion

Relational·2015·proprietary·Java
64Microsoft Azure Table Storage

Schemaless NoSQL key-value store for massive volumes of semi-structured data with strong consistency

Key-Value·2009·proprietary
65Oracle NoSQL Database

Distributed NoSQL database providing key-value, table, and document data models with ACID transactions

Key-Value·2011·Apache-2.0 (Community Edition)·Java
66QuasarDB

High-performance distributed column-oriented time-series database with native transactional support

Time-Series·2009·proprietary·C++
67ScaleOut StateServer

In-memory data grid with distributed caching, parallel query, and high availability for .NET and Java

Key-Value·2005·Commercial·C++, C#
68VMware Tanzu GemFire

Enterprise-grade distributed in-memory data grid for sub-millisecond, low-latency applications

Key-Value·2002·proprietary·Java

What is a Key-Value Database?

A key-value database is the simplest type of NoSQL database — it stores data as pairs of keys and values, where each unique key maps to a single value. Values can be simple strings, numbers, or complex objects like JSON documents and lists. This simplicity enables extremely fast reads and writes, often sub-millisecond, making key-value stores the go-to choice for caching, session management, and real-time applications. Redis is the most popular key-value database, followed by alternatives like Valkey, DragonflyDB, etcd, and Memcached.

When to Use a Key-Value Database

Key-value databases are ideal when your access pattern is simple — you know the key and need to retrieve its value quickly. Common use cases include application caching (reducing load on primary databases), session storage for web applications, real-time leaderboards and counters, rate limiting, pub/sub messaging, and feature flags. They also serve as the backbone of distributed systems for configuration management (etcd, Consul). Consider relational or document databases when you need complex queries, secondary indexes, or transactions across multiple keys.

Frequently Asked Questions

What is the difference between Redis and Memcached?
Both are in-memory key-value stores, but Redis is far more feature-rich. Redis supports complex data types (lists, sets, sorted sets, hashes, streams), persistence to disk, replication, pub/sub messaging, and Lua scripting. Memcached is simpler — it only supports string values, has no persistence, and offers multi-threaded performance. Choose Redis for most use cases; choose Memcached only when you need a bare-minimum, multi-threaded cache with no persistence requirements.
What is Valkey and how does it relate to Redis?
Valkey is an open-source fork of Redis created by the Linux Foundation after Redis Labs changed Redis's license from BSD to a dual-license model in 2024. Valkey maintains full Redis API compatibility — existing Redis clients and commands work without changes. It is backed by AWS, Google, Oracle, and other major contributors. DragonflyDB is another Redis-compatible alternative that offers significantly higher throughput through a multi-threaded architecture.
Can a key-value database replace a relational database?
Not for most applications. Key-value databases lack structured queries, joins, secondary indexes (in their pure form), and multi-key transactions. They are best used alongside a primary database — Redis for caching and real-time features, PostgreSQL for transactional data. Some key-value databases like Redis have evolved to support more complex features (RedisJSON, RediSearch), but they are still not replacements for relational workloads.
Is Redis still the best key-value database?
Redis remains the most popular and feature-rich key-value database, but the landscape is evolving. DragonflyDB offers 10-25x better throughput with Redis compatibility through a modern multi-threaded architecture. Valkey provides a fully open-source Redis-compatible alternative. For specific use cases, etcd excels at distributed configuration and Memcached at simple multi-threaded caching. Redis Cloud, Upstash, and Momento offer managed Redis-compatible services with serverless pricing.
Do key-value databases persist data or is it all in memory?
It depends on the implementation. Redis supports both in-memory operation and disk persistence (via RDB snapshots and AOF logs), so data survives restarts. DragonflyDB and Valkey also support persistence. Memcached is purely in-memory with no persistence — data is lost on restart. etcd persists all data to disk by default for reliability. For use cases like caching, persistence is optional. For primary data storage or configuration management, persistence is essential.

Manage Key-Value Databases Visually

1bench is a modern GUI client that supports all major key-value databases and many more.

Get Started