Alt + E S V

Valkey Momentum: Seven Months In

Share via Twitter Share via Facebook Share via Linkedin Share via Reddit

This week Google announced Memorystore support for Valkey and AWS announced support for Valkey in ElastiCache and MemoryDB. Aiven launched Aiven for Valkey in June. Percona recently released survey results indicating strong market interest in Valkey.

Given these market developments, we want to explore how Valkey, a Redis fork released March 2024 as a swift response to Redis’ relicensing, is faring among other in-memory database options for users evaluating Redis alternatives.

Redis Context

Any discussion about Redis alternatives needs to be grounded in an understanding of Redis itself. Redis is an integral part of many developer workflows. One reason for Redis’ popularity is its flexibility. While intended as a cache, developers have also used it as a key-value store, a database, and a message queue. It has grown to fill a variety of niches.

A quick timeline of some relevant dates in the Redis project history and leadership:

timeline of relevant dates in Redis governance from 2009 to 2024 (including project founding, licensing changes, and ownership changes)

  • Starting at its inception Redis operated with an open license and Benevolent Dictator For Life (BDFL) governance, with Salvatore Sanfilippo (antirez) as the lead until his departure in 2020. While outside contributions were provided by the ecosystem, the project was tightly controlled and highly centralized.

  • Redis adopted a module based system to make the project more extensible. Many of these modules were monetized by the commercial company backing the project, Redis Labs (which changed its name to Redis in 2021). These modules were the subject of the company’s initial relicensing in 2018 to a Commons Clause license. At the time it was promised:

We want to address your questions and be crystal clear: the license for open source Redis was never changed. It is BSD and will always remain BSD.
Redis’ License is BSD and will remain BSD, 2018-08-22

  • Despite this promise, on March 20, 2024 Redis announced all future versions of the database would be source-available only under dual licenses, a proprietary source-available license and the SSPL. The Linux Foundation announced the Valkey fork eight days later.

Redis Adoption

Well-designed general purpose technology tends to be widely adopted technology, and Redis is no exception. Estimating a Total Addressable Market would be purely speculative, but we can use available public data as guideposts.

In 2023 Redis provided statistics about the project and its users: the Docker image had been pulled more than 4B times, and nearly 10K customers were using Redis Enterprise as of May 2023.

If there are 10K paid enterprise users for commercial Redis alone, then we can safely extrapolate that when factoring in enterprises using competitive Redis services and open source Redis, the Redis project is providing core infrastructure for hundreds of thousands of organizations.

As of September 2024 the Redis repository on GitHub has been starred more than 66K times; while GitHub stars are an imperfect and gameable metric, it’s a proxy for general interest that is at least somewhat indicative of a project’s pulse. There are more than 25K questions asked on Stack Overflow, and the Stack Overflow’s developer survey (again, an imperfect sample) shows Redis as one of the most desired databases to work with.

As impressive as these metrics are, the below quote offers qualitative sentiment that is illustrative as to how Redis is perceived by developers.

I, as a cynical Eastern European, hate almost everything in software. But I love Redis with a loyalty that I reserve for close friends and family and the first true day of spring, because Redis is software made for me, the developer.

Everything about Redis is meant to empower, to clarify, to show, where abstractions need to be shown, and neatly tuck them away where they don’t. It is made to work, to handle my throughput and stay out of the way.
– Vicki Boykis, Redis is Forked, 2024-04-16

It is not overstating it to say that Redis is one of the most widely used and – at least for developers – widely loved pieces of software infrastructure in tech history. (Operations teams responsible for scaling and sharding Redis may feel somewhat less affectionate.)

Redis Alternatives in 2024

While Valkey forked immediately after Redis’ 2024 license change, other Redis alternatives have been in market and available for several years.

There are numerous offerings competing for Redis workloads (including hyperscale cloud services, other managed database services, forks and directly competitive projects, and even adjacent general purpose databases). This analysis primarily focuses its competitive lens on KeyDB, DragonflyDB and Skytable.

Are there other options in this space? Absolutely. There are managed cloud services for in-memory data services, as mentioned above. CDN providers like distributed key-value stores, like Cloudflare Workers KV and Akamai EdgeKV. There are multimodal databases that provide key-value functionality (and as noted in previous RedMonk research, there is growing momentum behind general purpose databases.) Other Redis forks like Redict emerged in March 2024. Garnet, a key-value research project was launched by Microsoft in 2018 but was then “introduced” right after the Redis relicensing in March 2024.

In short: were these the only alternatives we considered? Not at all. But we kept our sample to KeyDB, DragonflyDB, and Skytable based on trying to use roughly comparable options that kept coming up in our research and conversations.

(Everything below is from publicly available data. Please feel free to extend this analysis to any other projects you’d like to add to the comparison.)

At a glance: Valkey, KeyDB, DragonflyDB, Skytable

Comparing Valkey, KeyDB, DragonflyDB and Skytable across release date, license, Redis equivalency, architecture, and language

You can find more details about the Valkey project from my colleague Stephen O’Grady. Here’s a quick grounding in the other projects.

KeyDB

KeyDB was formed in March 2019 as a multithreaded Redis fork. After the co-founders went through Y Combinator in 2020, the six-person team was acquired by Snap in 2022. The database is open source.

While the project advertises itself as “a drop-in alternative to Redis” the project has not kept parity with Redis since its 2018 fork. When asked about it in a GitHub issue, KeyDB co-founder John Sully stated, “Redis Labs was a unicorn company dedicated solely to Redis. While Snap is quite large as well they are obviously primarily focused on the Snapchat app not KeyDB.”

There are also community questions about the project’s future given that Snap was named as an active contributor to Valkey when the Linux Foundation announced the fork in March 2024, to which Sully responded, “We are interested in the new project but need to learn a bit more about its intended direction. KeyDB runs critical Snap infrastructure and can’t be replaced by this project in its current form.”

KeyDB is one of the better established in-memory Redis alternatives, but it’s unclear whether Snap’s role as a prominent backer is a liability for the project’s future. Snap’s business is social media, not maintaining general purpose enterprise grade database software for the industry. Further, Snap’s involvement in the Valkey project calls into question whether KeyDB could at some point in the future be deprecated by the company in favor of the newer and more widely-supported fork.

DragonflyDB

DragonflyDB is an in-memory distributed SQL datastore. It touts itself as “a drop-in Redis replacement” on its homepage and “fully compatible with Redis and Memcached APIs” in GitHub (note that Memcached is a caching technology from the early 2000’s). However, the same GitHub README later states, “Once we had built the foundation for Dragonfly and we were happy with its performance, we went on to implement the Redis and Memcached functionality. We have to date implemented ~185 Redis commands (roughly equivalent to Redis 5.0 API) and 13 Memcached commands.”

DragonflyDB’s marketing is heavily focused around being a “modern” in-memory data store, or “an experiment to see how an in-memory datastore could look if it was designed in 2022.” As such its marketing leans heavily on its performance. Key technical differentiators, such as their shared-nothing architecture that enables high throughput multithreading and its use of very lightweight locking (VLL), are key to this performance boost.

Dragonfly is offered as a fully managed cloud product or is available as a source-available community edition.

Skytable

In February 2022, TerrabaseDB became Skytable. Skytable is yet to reach its 1.0 release, and public facing use cases and discussion are limited.

Migration paths from Redis are not well-documented, and it’s hard to find any details about points of compatibility between Redis and Skytable. In fact, their documentation spends more time talking about how Skytable differs from relational databases and explaining their query language – BlueQL – than it does drawing comparisons to other in-memory options.

Discussions and documentation are limited, both in terms of what Skytable officially offers and in terms of what’s available when searching for user discussion online. When it is mentioned organically, it often feels like the comments boil down to “it’s written in Rust and the roadmap is interesting” but there is very little in the way of documented proof points from actual users to back the project at this point.

Adoption of Redis Alternatives

While it’s good to understand fundamental principles about a project in terms of governance, backing and technical direction, adoption is the key to a project’s success. Publicly available data sources can help triangulate a project’s overall health and momentum. The goal is to assess the market using available data sources, none of which individually are canonical but in the aggregate demonstrate a pattern.

GitHub

First we’ll attempt to compare the projects’ traction and performance relative to each other by comparing various activities on GitHub. These are imperfect means of measuring project adoption, but the data points are reasonable proxies for community engagement with the project.

cumulative pull requests across Valkey, KeyDB, DragonflyDB and Skytable

cumulative stars across Valkey, KeyDB, DragonflyDB and Skytable

cumulative forks across Valkey, KeyDB, DragonflyDB and Skytable

cumulative issues across Valkey, KeyDB, DragonflyDB and Skytable

What to make of these charts?

  • As evidenced from the slope of these lines, Valkey is well-positioned amongst competitors in terms of community adoption and engagement. The project has already amassed strong engagement in a short span of time and is on track to be a dominant alternative amongst Redis competitors.
  • By absolute values across most GitHub metrics, DragonflyDB is currently the Redis alternative with the most traction. (The exception being more issues logged for KeyDB.) However, if current Valkey trends continue (and – given the backers of the project – we expected them to), we do not expect that to be the case for much longer.

Docker Hub

Docker Hub’s API only allows for namespace owners to retrieve fine-grained analytics, but from the publicly facing metrics we can see relative orders of magnitude.

comparing orders of magnitude of Docker Hub image pulls across KeyDB, Valkey, Skytable, and DragonflyDB

(If you wanted to extend the visualization for Redis image pulls, you would need 2,300 rows of dots.)

Stack Overflow

While Redis has a sizable community on Stack Overflow with over 25K questions asked over the history of the project, the site is not a meaningful place of interaction for the competitor databases. Many communities have moved conversations to private Slack and Discord instances, and we also suspect that the advent of code editors has changed how developers approach asking questions and thus impacted the usefulness of data sets like Stack Overflow.

Google Search

In looking at search trends on Google since Valkey’s unveiling in March 2024 to today, the project generally dominates over other alternatives though interest is spikey and not sustained.

Google trends for Valkey, KeyDB, DragonflyDB, Skytable

Wikipedia Traffic Data

A very rough proxy for interest in general, Wikipedia search history data is of limited utility here, unfortunately, because of the projects under discussion only Redis and Valkey are present.

Traffic metrics favor the older project, as expected, but over the last 90 days Valkey has generated about a sixth as much interest.

Google trends for Valkey vs Redis

What Do These Metrics Mean?

Across these metrics we see strong growth in community interest and engagement around Valkey. While the Redis project currently dwarfs all competitors in magnitude, amongst the subset of competitors examined here, Valkey is growing at a strong and sustainable clip.

Forks are risky, but Valkey is not most forks. There are different factors at play that make this fork more viable than most.

The speed at which major industry players rallied around the project gave it immediate gravitas. Housing Valkey within the Linux Foundation, meanwhile, lent the project perceived stability, relevance and neutrality. It was immediately differentiating and of interest to enterprises increasingly wary of single entity open source projects.

Valkey is also beginning to demonstrate that it will pursue its own technical opinions and priorities beyond just being an open and compatible version of Redis. By including features like IO multithreading in the project’s first 8.0 release, Valkey is not consigning itself to just be a me-too Redis but instead a project that will chart its own path.

This may not be enough in the short-term to overcome inertia for many enterprises who will move more cautiously and require more evidence, but for developer ecosystems that prefer to build with open tools that they perceive to have a growing future, Valkey clearly offers a clear path forward.

The future is not guaranteed, but given adequate funding and resources, the fork is positioned to win hearts, minds and workloads in a way that most forks are not.


Reference links from the table:

* KeyDB “if we have enough time
** Dragonfly GitHub README

Related Links:
The Post-Valkey World
Open Source Foundations Considered Helpful
What Message Queue-Based Architectures Reveal About the Evolution of Distributed Systems

Disclosure: Akamai, AWS, Cloudflare, Google, Microsoft, Percona, and Redis are RedMonk clients. Aiven, DragonflyDB, Skytable, Snap, and The Linux Foundation are not.

No Comments

Leave a Reply

Your email address will not be published. Required fields are marked *