Posted in

Valkey 不仅仅是 Redis 的翻版_AI阅读总结 — 包阅AI

包阅导读总结

1. 关键词:Valkey、Redis、开源、许可证、发展

2. 总结:Valkey 项目并非 Redis 的简单克隆,它源于 Redis 更改许可证,由其贡献者发起。Valkey 旨在满足新需求,提供连续性,初期确保与 Redis 兼容,未来会有不同,且吸引了多方支持,可能代表行业抵制 relicensing 趋势。

3. 主要内容:

– Valkey 的起源:

– Redis 更改许可证,引发社区不满。

– 贡献者发起 Valkey 项目,Linux Foundation 支持。

– Valkey 的特点:

– 基于 Redis v.7.2.4,采用开源许可证。

– 保留 Redis 部分特点,如单线程 C 代码。

– Valkey 的现状:

– 初期确保与 Redis 兼容。

– 活动热度超过 Redis。

– Valkey 的未来:

– 会添加新功能,与 Redis 可能不再兼容。

– 围绕性能、管理等方面改进。

– 计划组织贡献者峰会。

– 行业影响:

– 可能是行业抵制 relicensing 趋势的一部分。

– 吸引包括 Percona 在内的多方商业支持。

思维导图:

文章地址:https://thenewstack.io/valkey-will-not-just-be-a-redis-retread/

文章来源:thenewstack.io

作者:Joab Jackson

发布时间:2024/7/17 19:22

语言:英文

总字数:1608字

预计阅读时间:7分钟

评分:91分

标签:Valkey,Redis,键值存储,开源,Linux 基金会


以下为原文内容

本内容来源于用户推荐转载,旨在分享知识与观点,如有侵权请联系删除 联系邮箱 media@ilingban.com

Think again if you’ve assumed the Linux Foundation’s Valkey project will just be a clone of the Redis database. The project’s maintainers — liberated from years of Redis’ tight leadership — want to evolve the key-value store to meet the emerging demands of today’s workloads and hardware platforms.

“The previous Redis core team was actually pretty technically conservative,” said Madelyn Olson, who is an Amazon Web Services’ principal engineer, former longtime Redis maintainer and one of the co-launchers of Valkey, during a talk at the Linux Foundation’s Open Source Summit earlier this year,

“Redis really didn’t want to break anything.”

Valkey, Olson added, wants to move a bit faster.

How We Got From Redis to Valkey

In March, Redis Labs had changed the license of its namesake key value database, moving future versions from an open source license to a more commercially restrictive reuse license, citing business concerns.

This has an immediate impact for many users: In its most recent survey, DB_Engines ranks Redisas the sixth most widely-used database worldwide.

“This rug-pull was really bad for the community. It wasn’t just Redis doing all the work,” Olson said, of the Redis decision. But the good news was that it rallied the contributor base to launch Valkey.

Shortly thereafter, The Linux Foundation stepped in and backed a fork of the data store that its new maintainers intended to keep as open source, and who renamed the software Valkey.

Valkey adopted Redis v. 7.2.4 as the base, placing it under the open source Berkeley Software Distribution (BSD) three-clause license, for the initial Valkey release, 7.25.

TheRedis projectwas created in 2009 bySalvatore Sanfilippoasa high-performance key/value store, originally under the open source AGPL license, to use as a data store for real-time data analysis, though it eventually found its niche as a general-purpose cache for quick data retrieval.

Thousands of developers have since contributed to the project. In particular, the Ruby community took a shine to the technology, pushing Sanfilippo to expand Redis to support multi-server clusters.

“The real thing that caught in the Ruby community and then caught me when I started getting involved with it was the idea that you had structures, [or] keys pointed to values that were stored in structures, rather than just stored in a series of bytes,” said Kyle Davis, AWS engineer and the open source leader for Valkey — during the same talk.

“And that meant that you have really good control over things that you didn’t have before when you just had a series of bytes.”

Valkey Is About Continuity

In the wake of Redis’ closing of the source, a number of Redis forks all appeared or resurfaced, including Microsoft‘s Garnet (a reimplementation written in C#), Redict, the multithreaded KeyDB (which has been around for several years) and DragonflyDB.

A comparison chart of the Redis forks.

From the presentation at the Linux Open Source Summit

Valkey’s role in this new ecosystem is to provide continuity, Davis explained. It carried over many of the outside maintainers from the Redis project, as well as kept the code base as single-threaded C, and, most importantly, it maintained the open source license.

It is also, notably, a Linux Foundation project, meaning it is no longer controlled by a single company. “People feel pretty burned” by the license change, Davis said.

In a blog post, RedMonk analyst Steve O’Grady shared some initial GitHub stats on the project, noting — at least in this start-up phase — Valkey is creating more activity than Redis itself, notably:

  • ~2X the number of merged pull requests versus Redis (over the last 30 days)
  • ~3X the number of open requests
  • ~2X the number of project authors
  • ~6.5X the number of code additions
  • ~4X the number of code deletions

Valkey: Compatible Today, Cutting Edge Tomorrow

Initially, the Valkey team worked on ensuring compatibility with Redis.

If you are running, say, Redis 7.2.4, you can turn off the persistence server, boot up Valkey, point it at the persistence file or snapshots, and Valkey will understand it.

The development team is still confirming compatibility across all the edge cases. Documentation must also be updated.

Looking beyond this release, however, Redis and Valkey will become “two different pieces of software,” Davis said.

Going forward, either will may, and probably will, break compatibility with the other.

This is not to say the Valkey core development team is looking to break compatibility for the sake of it, but they are quite eager to start adding some new features, especially those that have been sitting on the waiting list at Redis.

One major theme for the next major release, Valkey 8, will be making slot migration a lot more reliable when scaling out clusters. “Right now, when nodes fail they may end up in inconsistent states,” Olson said. Memory density in clusters will also be bumped up, thanks to some work done by AWS.

Beyond Valkey 8, the major themes of improvement will be around:

  • Better performance and memory efficiency.
  • Easier manageability.
  • Better integration with cloud native and open source technologies.
  • Richer extensibility.

In terms of performance, the dev team wants to implement multithreading, to improve horizontal scaling and to make each core more performant, Olson said. CPU architectures have changed pretty radically since 2009, and Valkey could take better advantage of the parallel-friendly silicon.

Memory density could be improved as well, by removing pointers and other tricks.

Clusters could be much easier to manage. Redis’ implementation was a “good first attempt at a clustering algorithm,” Olson said. Nonetheless, “It’s very difficult to manage.”

“Our hope is to make this much more reliable,” Olson said. Instead of having each node have to reconcile state with each other node (Complex, error prone), a group of select nodes will just manage state for all the other nodes.

“We tried to build it a long time ago, but Redis said no,” Olson said.

The development team will also look for ways to better integrate with other open source projects, a given with its affiliation with the Linux Foundation. There should be an easy way to incorporate OpenTelemetry, or for Valkey to serve as a cache front end for other open source databases.

“This is one area I am specifically interested in getting more contributors to help with,” Olson said.

Extensibility is another area of exploration, especially around developing new data types. The last new data type of Redis was Streams, which was introduced in 2016. New data types could easily be added in through modules.

All the hot new data types are worthy of consideration, including JSON, time-series data, vector data. and t-digest for rate limiting (though to be fair, Redis seems to be working on many of these emerging data types as well).

“If one of these sound interesting to you, we are hoping you let us know so we can prioritize it for our long-term roadmap,” Olson said.

The project plans to organize a contributor summit to further flesh out new ideas.

Reverberations of the Fork

Redis’ license change closely followed a similar move from HashiCorp, who last year also changed to a more business-friendly license.

This move resulted in the forking of Terraform into the Linux Foundation-adopted OpenTofu and Vault as OpenBao (Since then, the historically more open source-friendly IBM has begun the process of acquiring HashiCorp, leaving many wondering if the company won’t move these products back into open source)

In other words, Valkey could be part of a larger trend in the industry.

“In the longer term, Valkey represents — whatever the project’s ultimate fate might be — the first real, major pushback from a market standpoint against the prevailing relicensing trend,” RedMonk’s O’Grady wrote.

“Not every project that is re-licensed can or will be forked,” he continued. “But investors, boards and leadership that are pushing for re-licensing as a core strategy will, moving forward, have to seriously consider the possibility of a fork as a potentially more meaningful cost.”

The vendor-neutral open source license may also be helping Valkey attract even more commercial help than Redis itself ever enjoyed.

VIDEO

Commercial Support From Percona

Ann Schlemmer from Percona

Ann Schlemmer from Percona (TNS)

All the major cloud providers currently support Redis in some form, notably, AWS was quick to add muscle Valkey, dedicating a number of engineers to the project.

Ericsson, Google Cloud, and Oracle also threw their weight behind the project.

And even more support may also be coming from a surprising source, Percona,

Percona’s business model is providing high-performance services and commercial support for open source database systems such as MySQL,MongoDBandPostgres. Many corporate users require commercial support for all software, and may not have the in-house expertise to work with these open source packages anyway.

This is what Percona does, building up a deep bench of expertise around open source database systems. The company’s engineers tend to uncover issuesin these systems early on, sometimes even before the maintainers themselves.

“Our intention now is that we plan to offer commercial support for Valkey, particularly for the on-prem version,” said Ann Schlemmer, in a TNS interview at the Open Source Summit.

The company has not commercially supported Redis in the past, which makes sense it already has commercial support from Redis the company.

Nonetheless, Redis has “been on our Radar for a couple of years, and we know a number of customers have it as well,” Schlemmer said.

“With the Valkey project forming, this is the opportunity for us to jump in and live our values. We believe open is better.”

View the whole Valkey presentation here:

VIDEO

YOUTUBE.COM/THENEWSTACK

Tech moves fast, don’t miss an episode. Subscribe to our YouTubechannel to stream all our podcasts, interviews, demos, and more.

GroupCreated with Sketch.