Resource management

Updated at:
Copy as MD

ApsaraDB for SelectDB provides three resource management schemes — multi-instance, multi-cluster, and workload group — to help you isolate and manage computing resources based on your business requirements.

Resource management schemes

ApsaraDB for SelectDB supports three resource management and isolation schemes: multi-instance, multi-cluster, and workload group.

Multi-instance scheme

ApsaraDB for SelectDB allows you to create multiple independently deployed instances within the same account. This scheme is ideal for completely independent business systems.

Computing and storage resources are physically isolated between instances, and each instance has its own endpoints.

Multi-cluster scheme

ApsaraDB for SelectDB supports storage-computing separation. You can create multiple physically isolated compute clusters within the same instance. Each compute cluster consists of a group of backend (BE) nodes, similar to a compute group or compute queue in a big data system. This scheme is ideal for isolating read traffic from write traffic, or online traffic from offline traffic.

Clusters within an instance share the same data. You can connect to multiple clusters by using the same endpoint and run the USE @cluster_name command to switch between clusters. For more information, see Multiple compute clusters.

Workload group scheme

ApsaraDB for SelectDB allows you to use workload groups to isolate computing resources at the software level. A cluster can have multiple workload groups, each restricting the computing and memory usage on a single BE node per task. This scheme is ideal for scenarios that require resource isolation but allow a certain degree of resource preemption.

Computing resources are logically isolated by workload group, while all workload groups share the same data. You can use database accounts associated with workload groups to access different groups. For more information, see Workload group.

Scheme comparison

The following table compares the three schemes in terms of isolation method and level.

Scheme

Isolation method

Isolation level

Multi-instance scheme

Computing resources and data of different instances are completely isolated from each other.

Ultra-high

Single-instance multi-cluster scheme

Computing resources are physically isolated, but data is shared among compute clusters.

High

Workload group scheme

Computing resources are logically isolated, but data is shared among workload groups.

Medium

The multi-instance scheme provides the strongest isolation but may lead to redundant storage and low compute utilization. The workload group scheme allows moderate preemption of computing resources, which ensures high utilization but provides weaker isolation. In general, use the multi-instance scheme when your systems are completely independent. Use the multi-cluster scheme when data must be shared but computing resources need physical isolation. Use the workload group scheme when data is shared and computing resources sometimes need to be isolated.

Scheme recommendation

Note

You can combine these schemes based on your business requirements. For example, you can combine the multi-instance scheme with the multi-cluster scheme, or the multi-cluster scheme with the workload group scheme.

Multi-instance scheme

Consider the multi-instance scheme in the following scenarios:

  • No data is shared between independent business systems or teams.

  • Business systems are important or contain sensitive information, and you need to minimize the risk of data leaks and prevent mutual interference.

Multi-cluster scheme

Consider the single-instance multi-cluster scheme in the following scenarios:

  • Data is shared, but computing resources need to be isolated by sensitivity level. For example, online data analysis must be isolated from offline data analysis.

  • Data import workloads need to be isolated from query workloads.

  • You have no special requirements on resource utilization.

Workload group scheme

Consider the workload group scheme in the following scenarios:

  • Data is shared and computing resources do not require physical isolation. Basic resources must be guaranteed for each workload, while idle resources can be preempted.

  • You want to maximize resource utilization or have specific requirements for resource efficiency.