This topic describes the specifications of DRAM cluster instances of ApsaraDB for Redis Enhanced Edition (Tair). These specifications include the memory capacity, maximum number of connections to each instance, maximum bandwidth, and queries per second (QPS) reference value.

Instance types

Instance types: 2 shards, 4 shards, 8 shards, 16 shards, 32 shards, 64 shards, 128 shards, and 256 shards.

  • 2 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) Proxy mode Maximum number of concurrent connections Direct connection mode Maximum number of concurrent connections Total maximum bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    2 GB cluster instance (2 shards) redis.amber.logic.sharding.1g.2db.0rodb.6proxy.multithread 1 480,000 60,000 192 96 480,000
    4 GB cluster instance (2 shards) redis.amber.logic.sharding.2g.2db.0rodb.6proxy.multithread 2 480,000 60,000 192 96 480,000
  • 4 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) Proxy mode Maximum number of concurrent connections Direct connection mode Maximum number of concurrent connections Total maximum bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    8 GB cluster instance (4 shards) redis.amber.logic.sharding.2g.4db.0rodb.12proxy.multithread 2 500,000 120,000 384 96 960,000
  • 8 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) Proxy mode Maximum number of concurrent connections Direct connection mode Maximum number of concurrent connections Total maximum bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    16 GB cluster instance (8 shards) redis.amber.logic.sharding.2g.8db.0rodb.24proxy.multithread 2 500,000 240,000 768 96 1,920,000
    32 GB cluster instance (8 shards) redis.amber.logic.sharding.4g.8db.0rodb.24proxy.multithread 4 500,000 240,000 768 96 1,920,000
    64 GB cluster instance (8 shards) redis.amber.logic.sharding.8g.8db.0rodb.24proxy.multithread 8 500,000 240,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) Proxy mode Maximum number of concurrent connections Direct connection mode Maximum number of concurrent connections Total maximum bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    128 GB cluster instance (16 shards) redis.amber.logic.sharding.8g.16db.0rodb.48proxy.multithread 8 500,000 480,000 1,536 96 3,840,000
    256 GB cluster instance (16 shards) redis.amber.logic.sharding.16g.16db.0rodb.48proxy.multithread 16 500,000 480,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) Proxy mode Maximum number of concurrent connections Direct connection mode Maximum number of concurrent connections Total maximum bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    512 GB cluster instance (32 shards) redis.amber.logic.sharding.16g.32db.0rodb.96proxy.multithread 16 500,000 960,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) Proxy mode Maximum number of concurrent connections Direct connection mode Maximum number of concurrent connections Total maximum bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    1024 GB cluster instance (64 shards) redis.amber.logic.sharding.16g.64db.0rodb.192proxy.multithread 16 500,000 1,920,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) Proxy mode Maximum number of concurrent connections Direct connection mode Maximum number of concurrent connections Total maximum bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    2048 GB cluster instance (128 shards) redis.amber.logic.sharding.16g.128db.0rodb.384proxy.multithread 16 500,000 3,840,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) Proxy mode Maximum number of concurrent connections Direct connection mode Maximum number of concurrent connections Total maximum bandwidth (Mbit/s) Bandwidth per shard (Mbit/s) QPS reference value
    4096 GB cluster instance (256 shards) redis.amber.logic.sharding.16g.256db.0rodb.768proxy.multithread 16 500,000 7,680,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 tables 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, take note of the following items:
    • 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 in Community Edition is 10,000. The maximum number of connections for a single shard in 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 a maximum bandwidth of 96 Mbit/s, the bandwidth limit of the instance is 12,288 Mbit/s after you enable the direct connection mode.
  • 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, see Adjust the bandwidth of an ApsaraDB for Redis instance.
  • The bandwidth value in the preceding tables is the internal bandwidth of ApsaraDB for Redis instances. 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 Description
Maximum number of concurrent connections
  • Proxy mode: The 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. Maximum number of connections to an instance = Number of shards × 30,000.
Number of new connections per second The upper limit of the number of new connections per second refers to the number of connections that are allowed to be established per second. For example, assume that 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, and the actual number of connections at the Nth second after the instance starts to run is 12,000. In this case, at the (N+1)th second, the maximum number of connections is 22,000. This value 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 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 actual 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: This is 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, part of instance write operations may fail.

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