What is Amazon Aurora?

Amazon Aurora is a relational database engine from Amazon Web Services (AWS). It is MySQL compatible, which means that code, applications, and drivers used in databases that rely on MySQL can be used in Aurora with minimal or no changes. 

Amazon Relational Database Service (RDS) manages Aurora databases by handling provisioning, patching, backup, recovery, and other tasks. 

A developer can migrate to and from MySQL databases using the mysqldump (export) and mysql import (import) utilities or using the DB Snapshot migration feature of RDS. Data migration typically takes an hour.

Aurora stores a minimum of 10GB and automatically scales to a maximum of 64TB. 

The service divides a database volume into 10 GB blocks, which are spread across different disks. Each block is replicated in six ways across three AWS Availability Zones (AZs). 

If data in one AZ fails, Aurora attempts to recover data in another AZ. Aurora is also self-correcting, which means it performs automatic error scans of data blocks and disks.

A developer can increase the resources allocated to a DB instance and improve availability through Amazon Aurora Replicas, which shares the same storage as the Elastic Compute Cloud (EC2) instance. 

An Amazon Aurora Replica can be promoted to a primary instance without any data loss, which helps with fault tolerance if the primary instance fails. 

If a developer made an Aurora replica, the service automatically fails within one minute; it takes about 15 minutes to failover without a replica.

For security, Amazon Aurora encrypts data in transit through the AWS Key Management Service. Automated backups, snapshots, data at rest on underlying storage and replicas on the same cluster are also encrypted. Additionally, Aurora DB instances are created in an Amazon VPC, allowing users to isolate a database on their network for added security.

Amazon Aurora Serverless (Serverless)

Aurora Serverless is an auto-scaling, on-demand version of Amazon Aurora, the high-performance relational database built for the cloud. 

With it, admins don't need to manage Aurora Serverless DB instances as your database will scale up or down based on requirements and automatically start and shut down when needed. 

This minimal overhead database model appeals to startups and large enterprises. 

An IT team can deploy Aurora Serverless for a variety of use cases, primarily because it scales up or down based on application requirements. 

The database is a good choice for an application with an unpredictable or variable workload, websites that occasionally see a spike in traffic, or unevenly distributed databases with random hops in queries.

→ Also read: 

Share