Before you select an Elastic Compute Service (ECS) instance type, you must understand the key features of each instance type. Then, in the case of insufficient resources, instance families retirement, and the use of preemptible instances, you can select a variety of instance types to take full advantages of the elasticity and flexibility of ECS.
This topic describes how to select enterprise-level instance families, instead of entry-level instance families (also called shared instance families). For information about how to select entry-level instance families, see Shared instance families or Overview.
Learn about instance families
- ecs: is the product code of ECS.
- <Instance family>: consists of an instance family name body and an instance family name suffix.
- The instance family name body consists of lowercase letters and a number.
- Lowercase letters are an abbreviation that indicates the performance characteristics
of the instance family.
- c: compute-optimized
- g: general-purpose
- r: memory-optimized
- re: memory-enhanced or high memory
- hf, hc, hg, or hr: high clock speeds
- i: local SSDs
- d: big data
- s: shared
- t: burstable
- ebmc, ebmg, or ebmr: ECS Bare Metal Instance
- scc: Super Computing Cluster (SCC)
- The number indicates the generation to which the instance family belongs. A larger number indicates a newer generation. Instance families of newer generations are more cost-effective and deliver higher performance.
- Lowercase letters are an abbreviation that indicates the performance characteristics
of the instance family.
- The instance family name suffix consists of lowercase letters.
- se: storage-enhanced
- ne: network-enhanced
- t: security-enhanced
- p: persistent memory-optimized
- The instance family name body consists of lowercase letters and a number.
- n in <nx>large: is an indicator of the number of vCPUs that the instance type has. The greater n is, the more vCPUs the instance type has.
Select instance types
- Instance families: See this topic to learn details of instance families without logging on with an Alibaba Cloud account.
- DescribeInstanceTypes: Call this API operation to obtain the most recent performance
specifications of instance types. You must log on with an Alibaba Cloud account to
perform this operation.
aliyun ecs DescribeInstanceTypes --InstanceTypeFamily ecs.g6
- Pricing tab of the ECS product page: Access this tab to view the pricing information and most recent special offers and estimate your costs.
Select instance families based on scenarios


Select instance families based on applications

Select instance families based on user-defined services
If you are using user-defined services, select instance families based on your services and the selection principles.
Application type | Common application | Selection principle | Recommended instance family |
---|---|---|---|
Load balancing | Nginx | Connections can be frequently established.
|
c6e, hfc7, and g5ne |
RPC |
|
A large amount of memory is available for network connection-intensive workloads. | g6e, g6, g6a, and g7a |
Cache |
|
|
|
Configuration Center | ZooKeeper | Able to handle a large number of I/O operations generated when applications initiate
negotiations.
|
|
Message queues |
|
Cloud disks are preferred for message integrity.
|
|
Container orchestration | Kubernetes | The ECS bare metal instances and containers are combined to maximize computing power. | ebmc6e, ebmg6e, ebmc6, ebmg6, ebmc6a, ebmc7a, ebmg6a, and ebmg7a |
Large table storage | HBase |
|
|
Databases |
|
|
|
SQLServer |
|
|
|
Text search | Elasticsearch |
|
|
Real-time computing |
|
You can select general purpose instance families and cloud disks or select d series instance families. | d2c and d2s |
Offline computing |
|
d series instance families are recommended. | d2c and d2s |
Recommended instance families for common scenarios, game applications, and live streaming
Scenario category | Scenario | Recommended instance family | Performance requirement | CPU-to-memory ratio |
---|---|---|---|---|
Common scenarios | Balanced performance applications and backend applications | g series instance families, such as g6e | Medium clock speed, compute-intensive | 1:4 |
Applications with high packet forwarding rates | g series instance families, such as g6e | High packet forwarding rate, compute-intensive | 1:4 | |
High-performance computing | hfc series instance families, such as hfc7 | High clock speed, compute-intensive | 1:2 | |
Game applications | High-performance client games | hfc series instance families, such as hfc7 | High clock speed | 1:2 |
Mobile or web games | g series instance families, such as g6e | Medium clock speed | 1:4 | |
Live streaming | Video forwarding | g series instance families, such as g6e | Medium clock speed, compute-intensive | 1:4 |
On-screen video comments | g series instance families, such as g6e | High packet forwarding rate, compute-intensive | 1:4 |
Recommended instance families for big data scenarios such as Hadoop, Spark, and Kafka
- Management nodes: Select an instance family in the same manner as you would in common scenarios. For more information, see the Recommended instance families for common scenarios, game applications, and live streaming section.
- Compute nodes: Select an instance family in the same manner as you would in common
scenarios. For more information, see the Recommended instance families for common scenarios, game applications, and live streaming section. You must select instance types based on the cluster size. For example, you
can select ecs.g6e.4xlage for a cluster that consists of less than 100 nodes and ecs.g6e.8xlage
for a cluster that consists of more than 100 nodes.
Note Preemptible instances can be used as compute nodes to improve cost-effectiveness. For more information, see Overview.
- Data nodes: require high storage throughput, high network throughput, and balanced CPU-to-memory ratios. We recommend that you use the d series big data instance families. For example, you can select ecs.d2s.5xlarge for MapReduce and Hive, and ecs.d2s.10xlarge for Spark and MLib.

Recommended instance families for databases, caches, and search scenarios
Scenario category | Scenario | Recommended instance family | CPU-to-memory ratio | Data disk |
---|---|---|---|---|
Relational database services | High-performance and dependent on high availability in the application layer | i series instance families | 1:4 | Local SSDs, ultra disks, and standard SSDs |
Small and medium-sized databases | g series instance families, or other instance families that have a CPU-to-memory ratio of 1:4 | 1:4 | Ultra disks and standard SSDs | |
High-performance databases | r series instance families | 1:8 | Ultra disks and standard SSDs | |
Distributed cache | Medium memory usage | g series instance families, or other instance families that have a CPU-to-memory ratio of 1:4 | 1:4 | Ultra disks and standard SSDs |
High memory usage | r series instance families | 1:8 | Ultra disks and standard SSDs | |
NoSQL databases | High performance and high availability in the application layer | i series instance families | 1:4 | Local SSDs, ultra disks, and standard SSDs |
Small and medium-sized databases | g series instance families, or other instance families that have a CPU-to-memory ratio of 1:4 | 1:4 | Ultra disks and standard SSDs | |
High-performance databases | r series instance families | 1:8 | Ultra disks and standard SSDs | |
ElasticSearch | Small clusters that rely on disks to ensure high data availability | g series instance families, or other instance families that have a CPU-to-memory ratio of 1:4 | 1:4 | Ultra disks and standard SSDs |
Large clusters that require high availability | d series instance families | 1:4 | Local SSDs, ultra disks, and standard SSDs |
- Lightly loaded databases: use enterprise-level instance families with cloud disks, which are more cost-effective.
- Heavily loaded databases: require high storage IOPS and low read/write latency. We recommend that you use i series instance families equipped with local SSDs. The local SSDs are high I/O NVMe SSDs that can meet the requirements of large heavily-loaded databases.

Recommended instance families for scenarios such as deep learning and image processing
In these scenarios, applications require high-performance GPU accelerators. The following GPU-to-CPU ratios are recommended for different scenarios:
- Deep learning training: A GPU-to-CPU ratio that ranges from 1:8 to 1:12 is recommended.
- General-purpose deep learning: A GPU-to-CPU ratio that ranges from 1:4 to 1:48 is recommended.
- Image recognition and inference: A GPU-to-CPU ratio that ranges from 1:4 to 1:12 is recommended.
- Speech recognition and synthesis inference: A GPU-to-CPU ratio that ranges from 1:16 to 1:48 is recommended.

Check and adjust your selection
After you create an instance of the selected type and start to use the instance, we recommend that you check whether the instance type is suitable based on its actual performance information.
For scenarios such as insufficient resources, retirement of instance families, changing to a more cost-effective instance family, or upgrading of instance configurations, you can change the instance configurations based on instance family features. For more information, see Overview of instance configuration changes and Instance families that support instance type changes.