All Products
Search
Document Center

Tair (Redis® OSS-Compatible):Seamless scaling

Last Updated:Mar 28, 2026

When your Tair (Redis OSS-compatible) cluster experiences memory pressure, CPU or network bottlenecks, or over-provisioned capacity, you can scale out to add shards or scale in to remove shards. Unlike open source Redis clusters, Tair eliminates the -ASK and -TRYAGAIN errors that typically occur during slot migration, so your application continues serving requests without interruption.

How it works

Tair modifies the kernel's data replication logic to migrate data on a slot-by-slot basis rather than key by key. A centralized control component manages the process, preventing slot splitting and ensuring that each slot migration is atomic. Slot-level migration completes significantly faster than key-level migration and removes the transient -ASK and -TRYAGAIN redirection errors that clients would otherwise receive.

During the final stage of each slot migration, write request latency for the affected slot increases temporarily. Write requests do not fail.

Note

In the Redis Serialization Protocol (RESP) for clusters, non-data commands such as PING and INFO, and special command families such as PUB/SUB and BLOCKING, are not automatically redirected after a slot migration. The application layer must periodically update the route table to retrieve the latest topology after scaling.

Key capabilities

CapabilityDescription
Efficient scaling managementA centralized control component provides efficient and precise control over cluster behavior.
Atomic data migrationEach slot is migrated atomically. No slot splitting occurs, and clients never receive -ASK or -TRYAGAIN errors.
Faster migrationSlot-by-slot migration completes significantly faster than key-by-key migration.
Auto ScalingTair supports Auto Scaling to handle fluctuating workloads without manual intervention.

Supported instances

Seamless scaling requires:

  • Deployment mode: cloud-native

  • Architecture: cluster

The following instance versions are supported:

Instance typeSupported versions
Redis Open-Source Edition 5.0Minor version 5.2.0 or later
Redis Open-Source Edition 6.0Minor version 6.0.2.0 or later
Redis Open-Source Edition 7.0All versions
Tair (Enterprise Edition) memory-optimized, Redis 5.0-compatibleMinor version 5.0.34 or later
Tair (Enterprise Edition) memory-optimized, Redis 6.0-compatibleAll versions
Tair (Enterprise Edition) memory-optimized, Redis 7.0-compatibleAll versions
Tair (Enterprise Edition) persistent memory-optimizedAll versions
Tair (Enterprise Edition) disk-basedAll versions

Before you scale

Client requirements

Configure your client to handle the following behaviors before initiating a scaling operation:

Connection modeBehavior to handle
Direct connection modeThe client must handle the MOVED command correctly.
Proxy modeSome proxy nodes are released during scale-in, causing connections to drop. The client must reconnect automatically.
During scaling (any mode)High latency may cause command timeouts. The client must reconnect automatically after a timeout.

Use a recommended client to avoid compatibility issues.

Special command behavior

Avoid using the following command types during a scaling operation:

Command typeBehavior during scaling
Blocking commandsMay cause errors.
Pub/Sub commandsDoes not guarantee data consistency and may cause errors, depending on the client implementation.