This topic describes the specifications of performance-enhanced cluster instances of ApsaraDB for Redis Enhanced Edition (Tair). The specifications include the memory capacity, maximum number of connections, maximum bandwidth, and queries per second (QPS) reference value.

Instance types

Instance types: two shards, four shards, eight shards, 16 shards, 32 shards, 64 shards, 128 shards, and 256 shards.

  • Two shards

    For these instance types, the number of shards is 2, the number of CPU cores is 12, and the maximum number of new connections per second is 50,000.

    Instance type InstanceClass value (used in API operations) Memory per shard (GB) Maximum number of connections ( Proxy mode ) Total bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    2 GB cluster performance-enhanced instance (2 shards) redis.amber.logic.sharding.1g.2db.0rodb.6proxy.multithread 1 480,000 192 96 480,000
    4 GB cluster performance-enhanced instance (2 shards) redis.amber.logic.sharding.2g.2db.0rodb.6proxy.multithread 2 480,000 192 96 480,000
  • Four shards

    For these instance types, the number of shards is 4, the number of CPU cores is 24, and the maximum number of new connections per second is 50,000.

    Instance type InstanceClass value (used in API operations) Memory per shard (GB) Maximum number of connections ( Proxy mode ) Total bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    8 GB cluster performance-enhanced instance (4 shards) redis.amber.logic.sharding.2g.4db.0rodb.12proxy.multithread 2 500,000 384 96 960,000
  • Eight shards

    For these instance types, the number of shards is 8, the number of CPU cores is 48, and the maximum number of new connections per second is 50,000.

    Instance type InstanceClass value (used in API operations) Memory per shard (GB) Maximum number of connections ( Proxy mode ) Total bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    16 GB cluster performance-enhanced instance (8 shards) redis.amber.logic.sharding.2g.8db.0rodb.24proxy.multithread 2 500,000 768 96 1,920,000
    32 GB cluster performance-enhanced instance (8 shards) redis.amber.logic.sharding.4g.8db.0rodb.24proxy.multithread 4 500,000 768 96 1,920,000
    64 GB cluster performance-enhanced instance (8 shards) redis.amber.logic.sharding.8g.8db.0rodb.24proxy.multithread 8 500,000 768 96 1,920,000
  • 16 shards

    For these instance types, the number of shards is 16, the number of CPU cores is 96, and the maximum number of new connections per second is 50,000.

    Instance type InstanceClass value (used in API operations) Memory per shard (GB) Maximum number of connections ( Proxy mode ) Total bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    128 GB cluster performance-enhanced instance (16 shards) redis.amber.logic.sharding.8g.16db.0rodb.48proxy.multithread 8 500,000 1,536 96 3,840,000
    256 GB cluster performance-enhanced instance (16 shards) redis.amber.logic.sharding.16g.16db.0rodb.48proxy.multithread 16 500,000 1,536 96 3,840,000
  • 32 shards

    For these instance types, the number of shards is 32, the number of CPU cores is 192, and the maximum number of new connections per second is 50,000.

    Instance type InstanceClass value (used in API operations) Memory per shard (GB) Maximum number of connections ( Proxy mode ) Total bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    512 GB cluster performance-enhanced instance (32 shards) redis.amber.logic.sharding.16g.32db.0rodb.96proxy.multithread 16 500,000 2,048 96 7,680,000
  • 64 shards

    For these instance types, the number of shards is 64, the number of CPU cores is 384, and the maximum number of new connections per second is 50,000.

    Instance type InstanceClass value (used in API operations) Memory per shard (GB) Maximum number of connections ( Proxy mode ) Total bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    64 GB cluster performance-enhanced instance (64 shards) redis.amber.logic.sharding.1g.64db.0rodb.192proxy.multithread 1 500,000 2,048 48 15,360,000
    128 GB cluster performance-enhanced instance (64 shards) redis.amber.logic.sharding.2g.64db.0rodb.192proxy.multithread 2 500,000 2,048 96 15,360,000
    256 GB cluster performance-enhanced instance (64 shards) redis.amber.logic.sharding.4g.64db.0rodb.192proxy.multithread 4 500,000 2,048 96 15,360,000
    512 GB cluster performance-enhanced instance (64 shards) redis.amber.logic.sharding.8g.64db.0rodb.192proxy.multithread 8 500,000 2,048 96 15,360,000
    1,024 GB cluster performance-enhanced instance (64 shards) redis.amber.logic.sharding.16g.64db.0rodb.192proxy.multithread 16 500,000 2,048 96 15,360,000
  • 128 shards

    For these instance types, the number of shards is 128, the number of CPU cores is 768, and the maximum number of new connections per second is 50,000.

    Instance type InstanceClass value (used in API operations) Memory per shard (GB) Maximum number of connections ( Proxy mode ) Total bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    2,048 GB cluster performance-enhanced instance (128 shards) redis.amber.logic.sharding.16g.128db.0rodb.384proxy.multithread 16 500,000 2,048 96 30,720,000
  • 256 shards

    For these instance types, the number of shards is 256, the number of CPU cores is 1,536, and the maximum number of new connections per second is 50,000.

    Instance type InstanceClass value (used in API operations) Memory per shard (GB) Maximum number of connections ( Proxy mode ) Total bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    2,048 GB cluster performance-enhanced instance (256 shards) redis.amber.logic.sharding.8g.256db.0rodb.768proxy.multithread 8 500,000 2,048 96 61,440,000
    4,096 GB cluster performance-enhanced instance (256 shards) redis.amber.logic.sharding.16g.256db.0rodb.768proxy.multithread 16 500,000 2,048 96 61,440,000

Notes about CPU cores

To ensure service stability, the system reserves a CPU core to process background tasks. In a cluster instance or a read/write splitting instance, the system reserves a CPU core for each data shard or each read replica to process background tasks.

Calculation rules for bandwidth values

  • The bandwidth value in the preceding table is the bandwidth of the instance. The bandwidth value is the sum of the bandwidths of all shards or nodes in the instance. Each shard has the following bandwidth limits:
    • Community Edition: If the memory of each shard is less than or equal to 1 GB, the maximum bandwidth of each shard is 48 Mbit/s. If the memory of each shard is greater than 1 GB, the maximum bandwidth of each shard is 96 Mbit/s.
    • Enhanced Edition (Tair): The maximum bandwidth of each shard is 96 Mbit/s.
  • If the default proxy endpoint is used by a cluster instance, the upper limit of bandwidth for the cluster instance is 2,048 Mbit/s. After the upper limit is reached, the bandwidth cannot be increased even if you add more shards to the cluster instance.
    To handle network traffic peaks, you can enable the direct connection mode. For more information, see Enable the direct connection mode. The direct connection mode is applicable only to cluster instances. After you enable the direct connection mode:
    • The upper limit of connections is equal to the maximum number of connections for a single shard multiplied by the number of shards. The maximum number of connections for a single shard of Community Edition is 10,000. The maximum number of connections for a single shard of Enhanced Edition (Tair) is 30,000.
    • The upper limit of the bandwidth is equal to the maximum bandwidth of a single shard multiplied by the number of shards. For example, if a cluster instance contains 128 shards and each shard is allocated with a memory of more than 1 GB and the maximum bandwidth of 96 Mbit/s, the bandwidth limit is 12,288 Mbit/s.
  • The bandwidth value applies to the upstream and downstream bandwidths. For example, if the bandwidth of an instance is 10 Mbit/s, the upstream and downstream bandwidths of the instance are both 10 Mbit/s.
    Note If your instance may encounter unexpected or scheduled traffic peaks, you can adjust the bandwidth of the instance. For more information about how to reset a password, see Adjust the bandwidth of an ApsaraDB for Redis instance.
  • The bandwidth value in the preceding table is the internal bandwidth of the ApsaraDB for Redis instance. The public bandwidth is determined by the internal bandwidth and is limited by the bandwidth of the connection between the ApsaraDB for Redis instance and the client. We recommend that you connect to the instance over an internal network to maximize performance.

Calculation rules for connections

Item Requirement
Maximum number of connections
  • Proxy modethe maximum number of connections to an instance is 500,000. If the upper limit of 500,000 connections is reached, subsequent connections cannot be established even if you add more shards or nodes.
  • Direct connection mode: The maximum number of connections for a single shard is 30,000. The maximum number of connections for an instance = Number of shards × 30,000.
Number of new connections per second The following example shows how the maximum number of new connections per second affects the maximum number of connections at a specific second: The maximum number of new connections to an instance per second is 10,000. The maximum number of connections to the instance is 50,000. The actual number of connections at the Nth second after the instance starts to run is 12,000. Then, at the (N+1)th second, the maximum number of connections is 22,000, which is calculated by using the following formula: 12,000 + 10,000.
Note If the instance is connected in direct connection mode, connection performance degrades because proxy nodes are bypassed. For more information about the direct connection mode, see Enable the direct connection mode. The maximum number of new connections per second for a single data shard is 2,000. For example, if an instance has four data shards, the maximum number of new connections per second for the instance is 8,000.

FAQ

  • Q: Why is the actual bandwidth of my instance different from that described in this topic?

    A: The bandwidths of specific instance types may be adjusted after the service is upgraded. If the bandwidth of your instance is different from that described in this topic, you can change the configurations of your instance by selecting the same instance type to update the bandwidth. The price for your instance remains unchanged after the configuration change. For more information, see Change the configurations of an instance.

  • Q: Why am I unable to write data to a cluster instance when instance memory is not exhausted?

    A: Because the instance contains exhausted data shards. ApsaraDB for Redis uses the hash algorithm to evenly write data to different data shards. If the instance contains large keys, resources are unevenly distributed in the instance and the data shards that house these large keys may even be exhausted. In this case, some instance write operations may fail.

    You can use the Performance Monitor feature to check and optimize performance metrics of each data shard. For more information, see How do I view the memory of child instances of an ApsaraDB for Redis cluster instance?