RedisShake is a powerful tool for Redis data transformation and migration, offering:
- 
Zero Downtime Migration: Enables seamless data migration without data loss or service interruption, ensuring continuous operation during the transfer process. 
- 
Redis Compatibility: Supports Redis 2.8 to 7.4, across standalone, master-slave, sentinel, and cluster deployments. 
- 
Cloud Service Integration: Seamlessly works with Redis-like databases from major cloud providers: - Alibaba Cloud: Tair (Redis® OSS-Compatible)
- AWS: ElastiCache, MemoryDB
 
- 
Module Support: Compatible with TairString, TairZSet, and TairHash. 
- 
Flexible Data Source: Supports PSync, RDB, and Scan data fetch methods. 
- 
Advanced Data Processing: Enables custom script-based data transformation and easy-to-use data filter rules. 
- 
Download from Releases. 
- 
Use Docker: 
docker run --network host \
    -e SYNC=true \
    -e SHAKE_SRC_ADDRESS=127.0.0.1:6379 \
    -e SHAKE_DST_ADDRESS=127.0.0.1:6380 \
    ghcr.io/tair-opensource/redisshake:latest- Build it yourself:
git clone https://github.com/tair-opensource/RedisShake
cd RedisShake
sh build.shTo move data between two Redis instances and skip some keys:
- Make a file called shake.tomlwith these settings:
[sync_reader]
address = "127.0.0.1:6379"
[redis_writer]
address = "127.0.0.1:6380"
[filter]
# skip keys with "temp:" or "cache:" prefix
block_key_prefix = ["temp:", "cache:"] - Run RedisShake:
./redis-shake shake.tomlFor more help, check the docs.
RedisShake, actively maintained by the Tair team at Alibaba Cloud, evolved from redis-port. Key milestones:
- RedisShake 2.x: Improved stability and performance.
- RedisShake 3.x: Complete codebase rewrite, enhancing efficiency and usability.
- RedisShake 4.x: Enhanced readers, configuration, observability, and functions.
RedisShake is open-sourced under the MIT license.
