All Products
Search
Document Center

AnalyticDB:Multi-cluster scaling models

Last Updated:Mar 28, 2026

Interactive resource groups support multi-cluster scaling. Without multi-cluster scaling, a single compute cluster handles all queries in a resource group, and high query concurrency causes resource contention and queuing. Multi-cluster scaling distributes work across multiple compute clusters to increase query throughput and eliminate resource contention between concurrent workloads.

How it works

Access nodes receive queries and use load balancing to route them to compute clusters in the resource group. Each compute cluster runs independently, so a heavy query on one cluster does not affect queries on another.

image.png

Multi-cluster scaling improves concurrency for small and medium-sized queries. It does not accelerate slow queries or extract, transform, load (ETL) jobs.

Choose a scaling mode

The mode is determined by how you configure Minimum Clusters and Maximum Clusters.

ModeConfigurationBehaviorBest for
Elastic modeMinimum Clusters < Maximum ClustersAnalyticDB for MySQL starts and stops compute clusters automatically based on query load, scaling within the configured range.Workloads with fluctuating query volumes
Maximum modeMinimum Clusters = Maximum Clusters (≥ 2)All configured clusters start immediately and remain running. Total computing resources are fixed.Workloads requiring predictable, constant resources

Enable multi-cluster scaling

Enable multi-cluster scaling when creating a resource group or by modifying an existing one.

Prerequisites:

  • An AnalyticDB for MySQL Enterprise Edition, Basic Edition, or Data Lakehouse Edition cluster

  • Cluster minor version 3.1.10.0 or later

To view and update the minor version of a cluster, log on to the AnalyticDB for MySQL console and go to the Configuration Information section of the Cluster Information page. For details, see View and update the minor version.

Steps:

  1. Log on to the AnalyticDB for MySQL console. In the upper-left corner, select a region. In the left-side navigation pane, click Clusters. Find the cluster and click the cluster ID.

  2. In the left-side navigation pane, choose Cluster Management > Resource Management. Click the Resource Groups tab.

  3. Click Create Resource Group, or find the resource group and click Modify in the Actions column.

  4. Set the job type to Interactive and configure the following parameters.

    ParameterDescription
    EngineThe database engine for the resource group. Xihe supports only XIHE SQL queries. Spark supports only Spark jobs run in an interactive manner.
    Cluster SizeThe size of a single compute cluster, in AnalyticDB Compute Units (ACUs). Minimum value: 16 ACUs.
    Minimum ClustersThe minimum number of compute clusters to keep running. Must be ≤ Maximum Clusters. Minimum value: 1. If set equal to Maximum Clusters, the value must be at least 2 (maximum mode).
    Maximum ClustersThe maximum number of compute clusters that can run. Maximum value: 10. If set equal to Minimum Clusters, the value must be at least 2 (maximum mode).
    Spark Configuration(Available only when Engine is Spark.) Spark application configuration parameters applied to all Spark jobs in the resource group. To configure parameters for a specific Spark job, specify them in the code editor when submitting the job.
  5. Click OK.

After the feature is enabled, the Resource Groups tab shows the Min/Max/Running Clusters value for the resource group. Click Monitor in the Actions column to view resource group metrics.

Effects of changing cluster counts

The following tables describe how changes to Minimum Clusters and Maximum Clusters affect the number of running clusters.

Elastic mode (Minimum Clusters ≠ Maximum Clusters)

ChangeEffect
Increase Maximum ClustersThe running cluster count stays the same until additional resources are needed.
Decrease Maximum ClustersClusters above the new maximum stop receiving queries. After existing queries complete, those clusters shut down.
Increase Minimum ClustersAnalyticDB for MySQL starts additional clusters to reach the new minimum.
Decrease Minimum ClustersIf running clusters exceed the new minimum, AnalyticDB for MySQL checks query load within a 5-minute window and shuts down excess clusters when resources exceed demand.

Maximum mode (Minimum Clusters = Maximum Clusters)

ChangeEffect
Increase both valuesAnalyticDB for MySQL starts additional clusters to reach the new count.
Decrease both valuesClusters above the new count stop receiving queries. After existing queries complete, those clusters shut down.

Billing

After you enable multi-cluster scaling, you are charged based on the scaled elastic resources:

Charge = Specifications per compute cluster × Number of scaled compute clusters

For pricing details, see Pricing for Enterprise Edition and Basic Edition. For Data Lakehouse Edition pricing, see Pricing for Data Lakehouse Edition.

Limitations

  • Multi-cluster scaling applies only to interactive resource groups.

  • You cannot enable multi-cluster scaling for resource groups created on clusters running a version earlier than V3.1.10.0. To use multi-cluster scaling, create a new interactive resource group.

  • For Data Lakehouse Edition clusters, you cannot enable both multi-cluster scaling (by configuring Minimum Clusters and Maximum Clusters) and resource scaling plans (Interactive Resource Group or Default Proportional Scaling for EIUs) on the same interactive resource group.

  • Multi-cluster scaling does not accelerate slow queries or ETL jobs.

Spark driver and executor specifications by cluster size

Use the spark.adb.warehouse.instance.spec parameter in the Spark Configuration section to set the CPU-to-memory ratio for Spark driver and executor specifications. Valid values:

  • MEMORY (default): CPU-to-memory ratio of 1:8

  • GENERAL: CPU-to-memory ratio of 1:4

  • COMPUTE: CPU-to-memory ratio of 1:2

Compute cluster sizeMEMORY driverMEMORY executorsGENERAL driverGENERAL executorsCOMPUTE driverCOMPUTE executors
16 ACU (3X-Small)4 cores, 32 GB3 × 2 cores, 16 GB4 cores, 16 GB3 × 4 cores, 16 GB4 cores, 8 GB4 × 4 cores, 8 GB
24 ACU (2X-Small)8 cores, 64 GB1 × 8 cores, 64 GB8 cores, 32 GB4 × 4 cores, 16 GB8 cores, 16 GB11 × 2 cores, 4 GB
36 ACU (X-Small)8 cores, 64 GB2 × 8 cores, 64 GB8 cores, 32 GB7 × 4 cores, 16 GB8 cores, 16 GB18 × 2 cores, 4 GB
72 ACU (Small)16 cores, 128 GB4 × 8 cores, 64 GB16 cores, 64 GB7 × 8 cores, 32 GB16 cores, 32 GB37 × 2 cores, 4 GB
144 ACU (Medium)16 cores, 128 GB10 × 8 cores, 64 GB16 cores, 64 GB16 × 8 cores, 32 GB16 cores, 32 GB41 × 4 cores, 8 GB
240 ACU (Large)16 cores, 128 GB9 × 16 cores, 128 GB16 cores, 64 GB28 × 8 cores, 32 GB16 cores, 32 GB71 × 4 cores, 8 GB
360 ACU16 cores, 128 GB14 × 16 cores, 128 GB16 cores, 64 GB43 × 8 cores, 32 GB16 cores, 32 GB54 × 8 cores, 16 GB
480 ACU (X-Large)32 cores, 256 GB18 × 16 cores, 128 GB32 cores, 128 GB56 × 8 cores, 32 GB32 cores, 64 GB71 × 8 cores, 16 GB
864 ACU (2X-Large)64 cores, 512 GB32 × 16 cores, 128 GB32 cores, 128 GB52 × 16 cores, 64 GB32 cores, 64 GB131 × 8 cores, 16 GB