To select instance types, you must know their key features. When you know the features of each instance type, you can select appropriate instance types and take full advantage of the elasticity and flexibility of ECS in scenarios such as insufficient resources, retirement of instance families or instance types, and the use of preemptible instances.
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: the product code of ECS.
- <Instance family>: consists of lowercase letters and numbers.
- Lowercase letters are abbreviations that indicate the performance fields of instance
families. Examples:
- c: compute optimized (computational)
- g: general purpose (general)
- r: memory optimized (ram)
- ne: enhanced network performance (network enhanced)
- Numbers identify the generations to which instance families of the same type belong. A larger number represents a newer generation, and the instance family is more cost-effective and delivers higher performance.
- Lowercase letters are abbreviations that indicate the performance fields of instance
families. Examples:
- <nx>large: the number of vCPUs that the instance type has. The larger the number n is, the more vCPUs the instance type has.
Select instance types
- Instance families: See this topic to learn details about instance families without logging on with an Alibaba Cloud account.
- DescribeInstanceTypes: Call this API operation to obtain the latest 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: View the pricing information and latest special offers on the Pricing tab of the ECS product page, and estimate your costs.
- Custom Launch: Click this tab on the instance buy page of the ECS console to learn more about instance purchase instructions in the Instance Type section of the Basic Configurations step.
Select instance families based on scenarios

Select instance families based on applications

Select instance families based on user-created services
If you are using user-created 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.
|
c6 and hfc6 |
RPC |
|
A large amount of memory is available for network connection-intensive workloads. | g6 |
Cache |
|
|
|
Configuration center | ZooKeeper | A large number of I/O operations generated when applications initiate negotiations
can be handled.
|
|
Message queues |
|
Disks are preferred for message integrity.
|
|
Container orchestration | Kubernetes | The ECS bare metal instances and containers are combined to maximize computing power. | ebmc6 and ebmg6 |
Large table storage | HBase |
|
|
Database |
|
|
|
SQLServer |
|
|
|
Text search | Elasticsearch |
|
|
Real-time computing |
|
You can select general purpose instance families and disks or select d series instance families. | d1, d1ne, and d2s |
Offline computing |
|
d series instance families are preferred. | d1, d1ne, 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 g6 | Medium clock speed, compute-intensive | 1:4 |
Applications with high packet forwarding rates | g series instance families, such as g6 | High packet forwarding rate, compute-intensive | 1:4 | |
High-performance computation | c series instance families, such as c6 | High clock speed, compute-intensive | 1:2 | |
Game applications | High-performance client games | c series instance families, such as c6 | High clock speed | 1:2 |
Mobile or web games | g series instance families, such as g6 | Medium clock speed | 1:4 | |
Live streaming applications | Video forwarding | g series instance families, such as g6 | Medium clock speed, compute-intensive | 1:4 |
On-screen video comments | g series instance families, such as g6 | 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.g6.4xlarge for a cluster that consists of less than 100 nodes and ecs.g6.8xlarge
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.d1ne.6xlarge for MapReduce and Hive, and ecs.d1ne.8xlarge 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 databases | 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 CPU-to-memory ratios 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 caches | Medium memory usage | g series instance families, or other instance families that have CPU-to-memory ratios 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 CPU-to-memory ratios 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 depend on disks to ensure high data availability | g series instance families, or other instance families that have CPU-to-memory ratios of 1:4 | 1:4 | Ultra disks and standard SSDs |
Large clusters and being dependent on high availability in the application layer | d series instance families | 1:4 | Local SSDs, ultra disks, and standard SSDs |
- Lightly loaded databases: use enterprise-level instance families and disks, which are more cost-effective.
- Heavily load 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: The recommended GPU-to-CPU ratio is from 1:8 to 1:12.
- General purpose deep learning: The recommended GPU-to-CPU ratio is from 1:4 to 1:48.
- Image recognition and inference: The recommended GPU-to-CPU ratio is from 1:4 to 1:12.
- Speech recognition and synthesis inference : The recommended GPU-to-CPU ratio is from 1:16 to 1:48.

Check and adjust your selection
After you select an instance type to create an instance and start using the instance, we recommend that you check whether the instance type is suitable based on the performance monitoring information.
In scenarios such as insufficient resources, retirement of instance families or instance types, changes to more cost-effective instance families, or configuration upgrades, you can upgrade or downgrade the configurations of instances based on instance family features. The following table lists some recommendations for instance configuration changes. For more information, see Overview of instance upgrade and downgrade and Instance families that support instance type changes.
Current instance families | Preferred target instance family | Alternative target instance family |
---|---|---|
sn1 and sn2 |
|
|
c4 | hfc6 and c6 | hfc5 and c5 |
ce4 | r6 | r5 and se1ne |
cm4 | hfc6 | hfc5 and g5 |
n1, n2, and e3 |
|
|
|
|
|
References
For more information about application scenarios, see Selection of enterprise-level instance types.