Valkey: The Open Fork After Redis’s License Change

Bifurcación de camino con flechas coloridas representando fork de proyecto

On March 20, 2024, Redis Inc announced that Redis 7.4+ would move from BSD to dual SSPL/RSAL license — a license that’s not OSI-approved and has restrictions for competing cloud providers. In response, Valkey was forked on March 28 with backing from AWS, Google Cloud, Oracle, and the OSS community. This article covers what the split implies for users and how to decide today.

What Changed in Redis

  • Redis 7.2 and earlier: BSD (open source).
  • Redis 7.4+: SSPL + RSAL (source-available, restrictions).
  • Redis Enterprise: still Redis Inc’s.

SSPL restricts commercial use if you offer competing Redis-as-a-service (similar to MongoDB years ago). For most self-hosting users, nothing practical changes. For AWS ElastiCache, GCP Memorystore — problem.

Valkey: What It Is

Direct fork of Redis 7.2.4 (last BSD). Maintained by:

  • Linux Foundation: governance.
  • AWS, Google, Oracle: main contributors.
  • Ex-Redis maintainers: several migrated.

License: BSD 3-Clause — like historical Redis.

Compatibility

Valkey 7.2 and 8.0:

  • 100% protocol-compatible with Redis 7.2.
  • Same configuration: redis.conf works.
  • Same clients: redis-py, ioredis, etc work unchanged.
  • Same cluster protocol.

Migration from Redis 7.2 to Valkey 7.2: typically change the binary. Drop-in.

Separate Development

Since the fork, divergent development:

  • Redis 7.4+: new features under SSPL.
  • Valkey 8.0+: new features under BSD.

Features added in Valkey 8:

  • Improved multi-threaded I/O.
  • Experimental RDMA support.
  • Improved native observability.
  • Replication optimisations.

In parallel, Redis 7.4 has its own features. The two ecosystems may diverge over time.

Adoption

Fast:

  • AWS ElastiCache Serverless: Valkey as main option since mid-2024.
  • GCP Memorystore: Valkey support following.
  • Oracle Cloud: similar.
  • Fedora / RHEL / Debian: Valkey in official repos replacing Redis.
  • Docker Hub: official image with tens of thousands of pulls.

AWS and Google put significant weight after the fork.

Practical Decision

For new projects in 2024:

Valkey if

  • Using AWS/GCP managed (ElastiCache, Memorystore with Valkey).
  • Want strict BSD license.
  • Contributing to OSS.
  • Don’t need post-7.4 Redis-specific features.

Redis if

  • On Redis Cloud (Redis Inc SaaS).
  • Need Redis Stack features (RediSearch, RedisJSON in fully integrated mode).
  • Redis Inc enterprise support matters.
  • License change doesn’t affect you (self-hosted without commercial competition).

For most individual developers and mid-size companies, Valkey is the sensible choice — compatible, BSD, strong backing.

Surrounding Ecosystem

The change affected more projects:

  • RedisSearch, RedisJSON, RedisTimeSeries, RedisBloom: Redis modules with proprietary license. For Valkey, emerging alternatives:
    • valkey-search: fork/rewrite.
    • RedisJSON alternatives.
    • Some modules have OSS equivalents being developed.

Ecosystem takes time to consolidate but going right direction.

Clients

Popular libraries work with both:

  • redis-py (Python): yes.
  • ioredis (Node): yes.
  • go-redis: yes.
  • jedis/lettuce (Java): yes.
  • redis-rs (Rust): yes.

No code changes needed.

Migration Path

From Redis 7.2 BSD to Valkey 7.2:

# Docker: change image
# Before: redis:7.2
# After: valkey/valkey:7.2
# Binary: install Valkey, stop Redis, start Valkey with same conf
sudo apt install valkey-server
sudo systemctl stop redis-server
sudo systemctl start valkey-server

Data compatibility: RDB and AOF files work directly.

From Redis 7.4+ (SSPL) to Valkey: possible but requires attention — some new 7.4 features aren’t in Valkey 7.2. If you don’t use them, trivial; if so, wait for Valkey 8+ with equivalent features.

Performance

Valkey 8.0 claims:

  • 20% better throughput than Redis 7.2 on single-node.
  • Improved multi-threaded I/O.
  • Similar memory efficiency.

Community benchmarks confirm improvements, especially in write-heavy workloads.

HA and Clustering

Valkey inherits Redis clustering:

  • Redis Cluster mode: hash slots.
  • Replication: master-replica.
  • Sentinel: automatic failover.

Alternative: KeyDB — older fork with native multi-master. Partially merging with Valkey in roadmap.

License: Why It Matters

For enterprises:

  • SSPL: can affect if you offer Redis-based services.
  • BSD: total freedom, no restrictions.
  • Compliance of large enterprises often prefers OSI-approved licenses — Valkey complies, Redis post-7.4 doesn’t.

Legal/strategic decision, not just technical.

Other Similar Forks

Pattern repeats:

  • ElasticsearchOpenSearch (AWS).
  • MongoDB SSPL → no massive fork, drivers exist.
  • HashiCorp TerraformOpenTofu (Linux Foundation).
  • RedisValkey.

OSS industry is consolidating foundation-governance forks to avoid re-licensing.

Conclusion

Valkey is the natural successor to Redis BSD for those valuing strict open source. AWS, Google, and the community have adopted it massively. For new projects, recommendable. For migrations from Redis 7.2, trivial. For Redis 7.4+ with specific SSPL features, more complicated. Decision is ultimately philosophical and compliance: Valkey guarantees BSD future; Redis continues with commercial bet. Both will remain relevant, but Valkey likely gains mainstream OSS adoption over the next 2 years.

Follow us on jacar.es for more on Redis, Valkey, and open-source licenses.

Entradas relacionadas