TDSQL-C for MySQL supports two modes of database instances: Provisioned Resource and Serverless. This document introduces the definitions of these instance modes, compares their differences, and explains how to convert between them.
Definitions of Instance Modes
Provisioned Resource
A provisioned resource instance requires a fixed specification to be allocated in advance. Currently, a provisioned resource cluster consists of one read-write instance and 1–15 read-only instances. For read-only instance types, a provisioned resource cluster can mount both provisioned resource read-only instances and Serverless read-only instances, as well as support mounting the LibraDB read-only analysis engine.
Serverless
A Serverless instance does not require a fixed specification to be allocated in advance, and is billed based on actual usage, and automatic scaling is allowed based on business loads, maximizing resource utilization and optimizing cost control. Currently, a Serverless cluster consists of one read-write instance. In Single-node Edition Serverless, no read-only instances are available, whereas in Cluster Edition Serverless, the cluster can mount 1–15 read-only instances, but only Serverless read-only instances are supported.
Comparison of Instance Modes
Use Cases
|
Stable business loads. Fixed instance specifications accommodating business fluctuations. Gaming projects requiring frequent rapid rollback. Scenarios with PB-level data storage and access. Scenarios with high write QPS requirements. Scenarios sensitive to primary-secondary synchronization latency. | Scenarios with significant business peaks and valleys. Scenarios with unpredictable loads. Scenarios requiring the retention of provisioned resource instances while accommodating business fluctuations. | Scenarios aiming to reduce Ops costs and improve Ops efficiency. Scenarios with fluctuating business peak loads. Scenarios with infrequent database usage, such as development and testing environments. |
Resource Utilization Under Fluctuating Business Loads
Provisioned resource instances are of fixed specifications. When actual business loads fluctuate significantly, failing to manually adjust the instance specifications may lead to resource waste during valley periods and resource shortage during peak periods.
Serverless features dynamic and elastic scaling capabilities, allowing resource usage (CCU and storage) to be adjusted in real time based on business demands, minimizing overall resource waste and improving resource utilization. Based on the configured computing power range, it can quickly scale out during peak periods to fully meet business needs and automatically scale in during valley periods to effectively reduce costs.
Compared to provisioned resource mode, from the perspective of aligning with business loads and cost efficiency, the Serverless instance mode is more suitable for scenarios with significant business fluctuations.
Architecture Forms
Provisioned Resource (Serverless Disabled) Cluster
Provisioned Resource (Serverless Enabled) Cluster
Computation
If read-write (RW) instances and read-only (RO) instances are provisioned with fixed specifications, scaling configuration for instance computation specifications and the number of instances can be manually performed.
Storage
Storage is allocated on a basis of monthly subscription, allowing you to select the capacity based on business requirements. Scaling is supported.
Pay-as-you-go storage capacity is determined by the selected computation specifications. To increase the maximum storage capacity, upgrade the computation specifications.
Computation
The RW instance is provisioned with fixed specifications and supports manual scaling of its computation specifications. The RO instance can include both provisioned resource RO instances and Serverless RO instances, where the provisioned resource portion remains unchanged regardless of business load fluctuations, while the Serverless portion dynamically scales in and out (vertically) based on business load changes. Whenever Serverless RO nodes scale in or out due to business fluctuations, the CCU computing power also increases or decreases accordingly. When you configure the elastic range for the first time, it is recommended to set the minimum capacity to 0.25 CCU and select a higher value for the maximum capacity.
Storage
Storage is allocated on a monthly subscription basis, allowing you to select the capacity based on business requirements. Scaling is supported.
Pay-as-you-go storage capacity is determined by the selected computation specifications. To increase the maximum storage capacity, upgrade the computation specifications.
Computation
Elastic scaling are allowed for both RW instances and RO instances of Serverless mode based on business load fluctuations. For the scaling of Serverless RO nodes due to business fluctuations, the CCU computing power also increases or decreases accordingly. You can manually adjust the number of Serverless RO instances and configure the computing power range.
Storage
The storage in a Serverless cluster is billed on a pay-as-you-go basis, meaning you do not need to specify storage capacity during creation. Charges are based on the actual storage capacity occupied by the data. The maximum storage capacity varies depending on the computing power range. For details, see Compute Unit. Deployment and Features
|
Purchase type | A cluster contains one RW instance and up to 15 RO instances. | Single-node Edition: 1 RW instance. Cluster Edition: 1 RW instance and up to 15 RO instances. |
Storage engine | InnoDB | InnoDB |
Kernel | TXSQL LibraDB | TXSQL |
Version | MySQL 5.7 MySQL 8.0 | MySQL 5.7 MySQL 8.0 |
Instance specifications | CPU and memory, with a maximum of 88-core CPU and 710 GB of memory per instance. | Computing power range measured in CCUs, with a minimum of 0.25 CCU and a maximum of 64 CCUs. |
Automatic backup | Retained for 7 days by default. It can be retained up to 1,830 days. | Retained for 7 days by default. It can be retained up to 1,830 days. |
Manual backup | Supported | Supported |
Backup file format | Logical backup Snapshot Backup | Logical backup Snapshot Backup |
Rollback | Supported | Supported |
Instance lifecycle management | Supported | Supported |
Cluster management | Supported | Supported |
Monitoring and alarm | Supported | Supported |
Account management | Supported | Supported |
Database management | Supported | Supported |
Database proxy | Supported | Supported |
Maximum number of tables | There is no limit on the number of databases or tables that can be created. As long as there is sufficient space, more databases and tables can be created. | There is no limit on the number of databases or tables that can be created. As long as there is sufficient space, more databases and tables can be created. |
Read/write separation | Supported | Supported |
For a detailed comparison of feature differences, see Feature List. Fees
When a provisioned resource instance is used, the billing mode supports both monthly subscription and pay-as-you-go, covering computation and storage costs. If Serverless is enabled and Serverless RO instances are mounted, the billing mode for these instances follows the Serverless mode. The total costs of the cluster will include both the fees for the fixed specification and the fees for the Serverless portion.
When a Serverless instance is used, the billing mode follows the Serverless mode, with charges for computation and storage.
How to Create Clusters for These Two Instance Modes
You can create clusters with different instance modes through the purchase page:
Converting Instance Modes for Existing Clusters
Note:
The table below outlines the scenarios for converting instance modes and provides operation guides. Currently, a provisioned resource cluster can mount both provisioned resource and Serverless RO instances, but the overall instance mode in the console will still be classified as a provisioned resource cluster.
|
Provisioned resource | Convert a provisioned resource cluster to a Serverless cluster. | |
| Enable Serverless for provisioned resource cluster. Note: After Serverless is enabled, a provisioned resource cluster can simultaneously mount both provisioned resource RO nodes and Serverless RO nodes. | |
| Convert a provisioned resource instance to Serverless. Note: This refers to converting a provisioned resource RO node within a provisioned resource cluster to a Serverless RO node. The instance’s IP address, instance name, and instance ID remain unchanged before and after the conversion. This conversion scenario is at the instance level. | |
Serverless | Serverless instances do not support conversion to provisioned resource instances. | - |