In-memory databases have become essential components of modern application stacks, providing lightning-fast data access and processing capabilities that traditional disk-based databases simply cannot match.
Among these, Redis has been a dominant force for over a decade. However, the emergence of Valkey in 2024 has created an interesting fork in the road of in-memory database technology.
This article provides a detailed comparison between Redis and Valkey, examining their origins, technical capabilities, performance differences, and practical considerations for common use cases.
Whether you're considering a migration or evaluating options for a new project, this guide will help you make an informed decision.
Let's get started!
Understanding the historical context
Redis was created by Salvatore Sanfilippo (known as "antirez" in the developer community) and first released in 2009. It quickly gained popularity for its speed, simplicity, and versatility. Over the years, Redis established itself as one of the most beloved databases among developers, consistently ranking high in developer surveys.
It was initially developed under the BSD 3-clause license, making it fully open-source and available for both personal and commercial use. Redis Inc. (formerly Redis Labs) emerged as the commercial entity supporting Redis, offering enterprise features and support on top of the open-source core.
In early 2024, Redis Inc. made a significant change to its licensing strategy. The company moved away from the open-source BSD 3-clause license to a "source-available" model with the Redis Source Available License (RSALv2) and Server Side Public License (SSPLv1). While the source code remained accessible, these licenses imposed new restrictions on usage, particularly affecting cloud providers and commercial users.
This licensing change prompted a response from the developer community and major tech companies. In March 2024, Valkey was born as a fork of Redis 7.2.4, maintaining the original BSD 3-clause license. The project was backed by The Linux Foundation and supported by major tech companies including Amazon Web Services (AWS), Google Cloud, Oracle, Ericsson, and Snap Inc.
The creation of Valkey represents one of the most significant open-source forks in recent years. According to research by Percona, approximately 75% of surveyed Redis users considered migration due to the licensing changes, with more than three-quarters of those considering Valkey as an alternative.
The fork has gained substantial momentum, with third-party Redis ecosystem companies like Redisson announcing support for both Redis and Valkey. This suggests Valkey is being treated as a serious long-term alternative rather than a temporary protest.
Architectural foundations: From shared DNA to divergent paths
Valkey began as a direct fork of Redis 7.2.4, meaning the initial version of Valkey was essentially identical to Redis at that point in time. Both systems share the same fundamental architecture and approach to data storage and manipulation:
- In-memory data storage with optional persistence.
- Support for various data structures (strings, lists, sets, hashes, etc.).
- Pub/sub messaging capabilities.
- Lua scripting support.
- Replication and clustering.
While starting from the same codebase, Valkey and Redis have begun to diverge significantly. By September 2024, Valkey released version 8.0, introducing substantial changes to the core architecture and setting a distinct development path.
As Kyle Davis, a Valkey maintainer, stated: "From this point forward, Redis and Valkey are two different pieces of software." This divergence is most apparent in areas like threading models, performance optimizations, and how each project approaches modern hardware utilization.
Performance comparison
Threading models
One of the most significant technical differences between Redis and Valkey lies in their threading architectures:
Redis: Traditionally uses a single-threaded event loop model for most operations. While this approach simplifies code and avoids complex concurrency issues, it can limit throughput on multi-core systems.
Valkey: Has implemented enhanced I/O multithreading that better utilizes modern multi-core processors. Valkey 8.0 introduced a redesigned threading model that allows for parallel I/O operations while maintaining data safety.
Throughput benchmarks
Valkey's multithreaded approach has led to significant performance improvements. According to reports from the Linux Foundation Member Summit, Valkey 8.0's enhanced multithreading delivers:
- Approximately three times the throughput compared to earlier versions.
- Up to 1.19 million requests per second with the new I/O threading model.
- Better scalability under high concurrent load.
Dirk Hohndel, a Linux kernel developer and open source leader, reported "roughly a threefold improvement in performance" when streaming large volumes of data (approximately 60 million data points daily) after switching to Valkey 8.0.
Memory efficiency
Memory usage is a critical consideration for in-memory databases. Valkey has made strides in this area:
- Valkey 8.1 introduced up to 20% memory efficiency improvements.
- The project rebuilt its key-value store from scratch based on modern data structures similar to Google's "Swiss Tables".
- Hohndel reported about a "20% reduction in the size of separate cache tables," translating to significant cost savings when dealing with terabyte-scale datasets.
Redis also offers memory optimization features like memory eviction policies but has not announced comparable efficiency gains in recent releases.
Scalability capabilities
Both systems support clustering for horizontal scaling, but with some differences:
- Redis Cluster provides sharding and high availability but requires careful management.
- Valkey has improved the internal algorithms for cluster mode, enhancing reliability and reducing failover times.
- Valkey's automatic cluster failover capabilities simplify management in distributed environments.
Feature comparison
Data structures
Both Redis and Valkey support a rich set of data structures, including:
- Strings,
- Lists,
- Sets,
- Sorted sets,
- Hashes,
- Bitmaps.
- HyperLogLogs,
- Streams,
- Geospatial indexes.
However, Redis offers additional features not currently available in Valkey:
- Native JSON support.
- Time Series data structure.
- Vector database capabilities for AI applications.
- Probabilistic data structures for efficient approximations.
- More extensive search and query capabilities through Redis Query Engine.
Replication and clustering
Both systems support master-replica replication for data redundancy and read scaling:
- Redis provides master-slave replication with Redis Cluster support.
- Valkey has implemented dual-channel replication, potentially offering improved reliability.
For clustering, both support distributed data storage across multiple nodes:
- Redis Cluster can scale to hundreds of nodes.
- Valkey clusters can scale up to 1000 nodes and have improved internal algorithms for cluster management.
Unique features
Redis unique features:
- JSON: Native APIs for JSON document operations.
- Time Series: Specialized storage and querying for time-series data.
- Vector search: Support for AI and retrieval-augmented generation workflows.
- Redis Data Integration: Automatic synchronization with systems of record.
- Redis Insight: Analysis tools with AI-powered Redis Copilot.
- ODBC integration: Connectivity with BI tools and visualization frameworks.
Valkey unique features:
- Enhanced I/O multithreading for better multi-core utilization.
- Experimental Remote Direct Memory Access (RDMA) support.
- Per-slot metrics for detailed monitoring.
- Improved dictionary structure for memory optimization.
- Rust integration for memory safety in core components.
Advanced session management
Redis 7.4 introduced hash field expiration, enabling advanced session management capabilities. This feature allows developers to:
- Use Redis as a searchable session store.
- Implement multi-value indexing.
- Index at arbitrary depths.
This capability is not yet matched in Valkey, though the project continues to evolve rapidly.
Licensing and support
The licensing difference represents the initial and perhaps most fundamental distinction between the two projects.
Redis now operates under the Redis Source Available License (RSALv2) and Server Side Public License (SSPLv1), which allow access to source code but aren't fully open-source by traditional definitions. Valkey, meanwhile, uses the BSD 3-clause license, a permissive open-source license recognized by the Open Source Initiative.
Support options differ significantly as well. Redis Inc. provides commercial support through various subscription plans for different user segments, while Valkey currently relies primarily on community support, though cloud providers like AWS may offer managed Valkey services.
Documentation reflects the maturity difference between the projects. Redis has extensive documentation built over many years, with comprehensive guides, examples, and reference materials. Valkey's documentation is still developing, though it benefits from similarity to Redis in many areas.
Regarding ecosystem compatibility, Redis has developed a robust ecosystem of clients, tools, and extensions. Most Redis clients can work with Valkey due to protocol compatibility, but feature support varies.
Redis-specific features like JSON or Vector Search require specialized clients that may not work with Valkey. Some ecosystem tools are adapting to support both platforms, as seen with Redisson announcing dual support, suggesting Valkey is being treated as a serious long-term alternative.
Use cases and implementation scenarios
Redis remains particularly well-suited for:
- Organizations requiring enterprise-grade support and SLAs.
- Applications leveraging Redis-specific features like JSON, Time Series, or vector search.
- Projects needing integration with visualization tools and BI platforms via ODBC.
- Environments where developer familiarity with Redis is a priority.
- Applications requiring advanced search and query capabilities.
On the other hand, Valkey may be preferable for:
- Organizations prioritizing open-source licensing.
- High-throughput applications that can benefit from improved multi-threading.
- Environments where memory efficiency is critical.
- Projects where RDMA capabilities could provide performance advantages.
- Organizations with in-house expertise for support and maintenance.
Future development
Redis roadmap
Redis continues to focus on enhancing enterprise features while expanding AI capabilities, particularly in vector database functionality for machine learning applications.
The platform is also improving integration with business intelligence tools and developing Redis Copilot with AI-assisted database management capabilities to streamline operations.
The return of Salvatore Sanfilippo as an evangelist in 2024 has renewed focus on the Redis core, potentially accelerating innovation in the core product.
Valkey roadmap
Valkey's development trajectory centers around performance optimization, with significant work on multithreading improvements and memory efficiency.
The project is also investing in more scalable clustering systems, implementing core changes to data types, and integrating Rust for improved memory safety.
According to Madelyn Olson, a principal engineer at AWS and Valkey maintainer, the project is fundamentally rebuilding core components to better leverage modern hardware capabilities, creating a database optimized for contemporary computing environments.
Final thoughts
The emergence of Valkey marks a pivotal moment for in-memory databases. What began as a licensing response has evolved into a legitimate technical alternative with distinct performance advantages.
While Redis offers maturity and comprehensive features, Valkey brings open-source licensing and innovative hardware utilization.
As these projects evolve on separate paths, their competition will drive innovation across the in-memory database space, benefiting the entire developer ecosystem regardless of which solution they implement.
Thanks for reading!
Make your mark
Join the writer's program
Are you a developer and love writing and sharing your knowledge with the world? Join our guest writing program and get paid for writing amazing technical guides. We'll get them to the right readers that will appreciate them.
Write for us
Build on top of Better Stack
Write a script, app or project on top of Better Stack and share it with the world. Make a public repository and share it with us at our email.
community@betterstack.comor submit a pull request and help us build better products for everyone.
See the full list of amazing projects on github