iTranslated by AI
What is ACU (Aurora Capacity Unit)?
The term "ACU" suddenly appeared while I was researching Aurora Serverless v2.
Since the AWS official documentation proceeded on the assumption that I already understood it, I decided to look it up myself.
What is ACU?
ACU stands for Aurora Capacity Unit, which is used in Aurora Serverless.
Each ACU is a combination of approximately 2 gibibytes (GiB) of memory, corresponding CPU, and networking.
I think of it roughly with the following image:
- The processing performance of Aurora Serverless is determined in ACU units.
- The processing performance of a regular Aurora instance is determined by the instance size/type.
In the case of Aurora Serverless v2, it automatically scales between the minimum and maximum ACU settings according to the load.
- Configurable capacity for Aurora Serverless v2
- Minimum capacity: 0.5 ACU
- Maximum capacity: 128 ACU
Capacity Calculation
I think many people are wondering, "Now that I understand ACU, how can I match it to the same capacity as my current Aurora instance size?"
This calculation is simple because the ratio of memory and vCPU allocated to an instance is basically constant.
Therefore, you can calculate it by matching the memory capacity of the instance class with the memory capacity of the ACU.
For example, suppose that you use a db.r6g.4xlarge DB instance class when the cluster workload is high. The memory for that DB instance class is 128 GiB. Therefore, by specifying a maximum ACU setting of 64, you can set up an Aurora Serverless v2 DB instance that can scale up to approximately the same capacity.
Since memory capacity varies depending on the instance type, I have tabulated db.r5 as an example.
| Instance Type | Memory (GiB) | Corresponding ACU |
|---|---|---|
| db.r5.large | 16 | 8 |
| db.r5.xlarge | 32 | 16 |
| db.r5.2xlarge | 64 | 32 |
| db.r5.4xlarge | 128 | 64 |
| db.r5.8xlarge | 256 | 128 |
Since the maximum capacity of Aurora Serverless v2 is 128 ACU,
Maximum capacity per Aurora Serverless v2 instance ≒ 8xlarge
it seems to be roughly like this.
If more capacity than that is required, the only way seems to be adding more Aurora Serverless v2 instances.
Note that as of now (2022/09/01), Aurora Serverless v2 does not yet support Auto Scaling for replicas.
Discussion