Separates compute from storage.
Leverages s3 as elastic storage, making it scale way beyond what traditional dbs can do.
For example, for PostgreSQL it starts struggling around 100GB to 1TB.
With aurora, it can go to many more TBs.
Scaling CPU up is easy.
Adding more storage is easier.
Add read replicas is easier.
Benefits in a nutshell
- zero downtime storage scaling
- shorter failover time (sub 30 seconds)
- no replication lag and higher replication server limit (15+ rather than 5)
- more efficient writing to disk (apparently better at concurrent writing)
When to use aurora
- heavy reads making the need of more read replicas
- heavy writes keeping it cost efficient
When not to use it
- less than 100GB with predictable traffic
- 1-2 minutes of downtime is ok
Cost
Either per write, or flat +30%. Latter is good for write heavy system to get the benefits.