warehouse icon indicating copy to clipboard operation
warehouse copied to clipboard

Convert from ElastiCache Redis to ElastiCache Valkey

Open miketheman opened this issue 8 months ago • 1 comments

Valkey was launched in AWS ElastiCache back in 2024, and claims backwards compatible wire-protocol compliance with open source Redis 7.2, while operating at 20% lower costs (more efficient credits usage for PyPI), and provides a zero-downtime upgrade path. Read more on the launch blog here: https://aws.amazon.com/blogs/database/get-started-with-amazon-elasticache-for-valkey/ which also includes UI directions on how to perform the upgrade.

The listed differences are here: https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/VersionManagementConsiderations-valkey.html By my reading, nothing there is concerning.

If any upgrades become blocked, there's this page to help: https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/resolving-blocked-engine-upgrades.html

To make the transition easy, here's some steps I conceive of:

  • [ ] update local dev and CI to use valkey - #17861
  • [ ] update testpypi's elasticache instance to valkey 7.2.x
  • [ ] update pypi's elasticache instance to valkey 7.2.x (probably set a scheduled maintenance for this one)
  • [ ] celebrate

As a second stage, once this is completed, we could also entertain replacing the client-side library from redis-py to either valkey or valkey-glide, but that's not strictly necessary right now.

miketheman avatar Mar 27 '25 17:03 miketheman