Understanding Scalability in Amazon Aurora

Amazon Aurora offers a scalable architecture that allows for quick and efficient scaling of database instances to accommodate growing workloads. Here's how scalability works in Aurora:

Architecture Overview

In Aurora, adding a new DB instance to your cluster is a streamlined process. Unlike traditional databases that require copying table data to each new instance, Aurora leverages a shared storage volume containing all the data. This means that new instances can quickly connect to the existing data without the need for data duplication.

RDS Storage Auto-Scaling

One of the key features of Aurora is RDS Storage Auto-Scaling, which automatically adjusts storage capacity in response to changes in database workloads. This feature ensures that your database has adequate storage to handle increasing data demands without experiencing downtime.

Key Points to Remember

To ensure efficient storage scaling, Amazon RDS initiates storage modifications for auto-scaling-enabled DB instances under the following conditions:

  1. Low Available Space: When the free available space in the allocated storage falls below 10 percent.
  2. Duration of Low Storage: The low-storage condition persists for at least five minutes.
  3. Time Since Last Modification: At least six hours have elapsed since the last storage modification.

It's important to note that while auto-scaling helps mitigate storage-full situations for large data loads, there are limitations. Further storage modifications can only occur after six hours have passed since the completion of the previous storage optimization on the instance.

Incremental Storage Expansion

When auto-scaling increases storage capacity, it does so in increments to efficiently manage resources. The additional storage is added in increments based on whichever is greater:

  • 5 GiB
  • 10 percent of the currently allocated storage

However, it's worth mentioning that auto-scaling is not supported for certain previous-generation instance classes with less than 6 TiB of orderable storage, such as db.m3.large, db.m3.xlarge, and db.m3.2xlarge.

In conclusion, Amazon Aurora's scalability features, including RDS Storage Auto-Scaling, ensure that your database can dynamically adapt to changing workloads while maintaining high availability and performance.