UPCOMING EVENT Discover how nOps streamlines your cost optimization at AWS re: Invent - BOOK A MEETING

NEW Featured eBook: AWS Cloud Cost Allocation: The Complete Guide - Download Now

Amazon Aurora is a fully managed relational database engine that supports MySQL and PostgreSQL, designed to combine the performance of commercial database engines with the cost-effectiveness and simplicity of open-source databases. It allows users to utilize their existing MySQL and PostgreSQL tools, applications, and codebases without significant modifications.

Aurora includes a high-performance storage subsystem. It also automates and standardizes some of the most challenging aspects of database configuration and administration such as database clustering and replication.

How Amazon Aurora works with Amazon RDS

Aurora is part of Amazon Relational Database Service (RDS). When initiating new database setups through Amazon RDS, users can select either Aurora MySQL or Aurora PostgreSQL as their database engine. Using the AWS Management Console, AWS CLI, and API operations, Aurora simplifies routine tasks such as provisioning, patching, backup, and recovery.

Unlike standard RDS operations which may focus on individual database instances, Aurora management usually involves clusters of database servers that maintain synchronization via replication. This setup facilitates automatic clustering and storage allocation, enhancing the ease and cost-efficiency of operating and scaling large database deployments.

Moreover, Aurora facilitates migration from Amazon RDS for MySQL and PostgreSQL by supporting snapshot creation, restoration, and one-way replication, with various tools for converting existing applications to Aurora.

Amazon Aurora Database Clusters: DB Instances, Aurora Cluster Volumes... (image source: AWS)

Benefits of Aurora

Aurora is a high-performance, highly scalable cloud database designed by AWS to deliver up to five times the throughput of MySQL and up to three times the throughput of PostgreSQL databases.
Amazon Aurora benefits and integrations with AWS services (image source: AWS)

Its benefits include:

  • High Scalability: Aurora can automatically scale its storage capacity as needed, from 10 GB up to 128 TB without requiring manual intervention.
  • Increased Performance: As mentioned, Aurora database offers significantly higher throughput compared to standard MySQL and PostgreSQL on RDS. This can be beneficial for use cases like GenAI or other workloads requiring rapid data processing or heavy computational loads.
  • Durability and Availability: Aurora is designed to offer greater than 99.99% availability. It replicates data within the same cluster across three Availability Zones (geographic locations) and continuously backs up data to Amazon S3.
  • Automated Management: Aurora reduces the need for manual database administration tasks, allowing developers and database administrators to focus more on software development and innovating rather than maintenance.
  • Cost-Effectiveness: Although Aurora provides the performance and availability characteristics of commercial databases, it is priced more like a standard open-source database (around 1/10 the cost of commercial databases). You pay for what you use without upfront costs.
  • Security: Aurora databases provide multiple layers of security, including network isolation using Amazon VPC, encryption at rest using AWS Key Management Service (KMS), and encryption in transit using SSL.
  • Easy to migrate: Aurora offers MySQL and PostgreSQL compatibility, which means you can easily migrate your existing applications to Aurora using AWS Database Migration Service with few or no changes.
  • Read Replicas: Aurora supports up to 15 read replicas which enhance the read throughput and reduce the load on the primary database instance, improving the performance of read-heavy database workloads.
  • Aurora Serverless – use only the resources you need as long as you need them, on-demand.

Amazon Aurora versus Relational Database Service (RDS)

Amazon Aurora is generally suitable when you need high performance and scalability for MySQL or PostgreSQL, as it offers significant improvements in speed and allows more read replicas. It’s ideal for applications with fluctuating or unpredictable workloads, especially when leveraging Aurora Serverless.

Choose Amazon RDS if you need a broader range of database engines or want to maintain a similar environment to existing on-premises databases. It’s suitable for applications requiring specific database engines like SQL Server or Oracle and benefits from AWS’s Free Tier for cost savings.

Let’s compare the key differences in more granularity here:

Feature Amazon RDS Amazon Aurora

Database Engines Supports seven DB engines: Aurora, MySQL, PostgreSQL, SQL Server, MariaDB, Oracle, and OutPosts. Limited to two DB engines: MySQL and PostgreSQL.

Performance Good performance, supports long-running jobs. Up to 5X better performance than MySQL; 3X better than PostgreSQL.

Scalability Supports up to 5 read replicas; limited database scalability, does not support sharding. Up to 15 read replicas; enhanced scalability and lower latency.

Management Fully managed with seamless integration. Fully managed with cloud-native architecture and serverless options.

Backup and Recovery Transaction logs and backups retained for a specified period. High availability across multiple AZs.Automated backups, supports data recovery up to the last five minutes.

Cost Multi-AZ deployments cost extra. One-year free tier available. Generally higher performance can mean higher costs; no free tier.

Customization High control over instances (type and size). Less control over underlying instances.

Deployment Options RDS on EC2 provides additional control. Aurora Serverless offers cost-effectiveness for fluctuating workloads.

Latency and Data Handling Slower replication; each new node must copy all data. Minimizes latency to milliseconds, faster than RDS.

Amazon Aurora Pricing

Here are the main factors that determine the cost of your Aurora usage.

Instance Type and Size:

Costs vary significantly based on the chosen instance type, impacting overall costs due to differences in CPU, memory allocation, and features like bustable performance and enhanced networking.

Storage Configuration:

This is also one of the most important factors determining Aurora charges — the choice between Aurora Standard and I/O optimized. Amazon Aurora I/O-Optimized offers improved price performance and predictable pricing for customers with I/O-intensive applications. Switching to I/O optimized offers up to 40 percent cost savings when your I/O spend exceeds 25 percent of your current Aurora database spend.

Replicas and Failover:

Implementing replicas in multiple availability zones is crucial for high availability and quick failover, although this increases costs proportionally to the number of replicas used.

Pricing Models:

You can choose between on-demand or reserved instances. Reserved instances provide a discount for a one to three-year commitment and can significantly reduce costs if your usage patterns are well understood.

Data Transfer Costs:

Charges apply for data transfer in many scenarios, especially across regions or to the public internet, influencing where and how Aurora clusters are deployed relative to other AWS services.

Global Database:

Using Aurora’s Global Database for cross-region replication involves additional charges for compute, underlying storage, and data transfer, necessitating careful planning for geographic distribution needs.

Backup and Backtrack

You are not charged for the backup storage of up to 100% of the size of your Aurora cluster, or database snapshots created within the backup retention period. All other backups and snapshots (including those from deleted clusters) incur costs.

Backtrack lets you quickly move an Aurora database to a prior point in time without needing to restore data from a backup. This lets you quickly recover from user errors, such as dropping the wrong table or deleting the wrong row. You pay an hourly rate for storing change records allowing you to backtrack for a period of time (up to 24 hours).

Extended support for RDS

A common AWS billing pitfall is not updating your database, leading to extended support charges. This can easily occur because your databases are not automatically upgraded to the latest version.

For provisioned instances on RDS for MySQL, RDS Extended Support is priced per vCPU per hour and depends on the AWS Region and calendar date.

Amazon Aurora Frequently Asked Questions

What is Aurora serverless?

Amazon Aurora Serverless is an on-demand, autoscaling configuration available for both the MySQL-compatible and PostgreSQL-compatible versions of Amazon Aurora. Serverless architecture allows the Aurora Serverless DB cluster to automatically start up, shut down, and adjust its capacity based on your application’s needs, ensuring you only pay for the resources you use. It is well suited to handling infrequent, intermittent, or unpredictable workloads without the need for manual scaling or capacity management.

What are I/O operations in Aurora and how are they calculated?

In Amazon Aurora, I/O operations refer to the interactions between the database engine and its SSD-based virtualized storage layer. Each read operation of a database page is counted as one I/O. For Aurora MySQL-Compatible Edition, each page is 16 KB, while for Aurora PostgreSQL-Compatible Edition, it’s 8 KB. If the data your query needs is already in memory, no I/O charge is incurred for reads. However, if data must be fetched from storage because it’s not in the cache, that will count as a read I/O.

Write I/O operations are calculated differently; they are counted in 4 KB increments. For instance, a log record of 1,024 bytes (1 KB) constitutes one write I/O operation. If a log record exceeds 4 KB, it will require multiple write I/O operations to persist it. Aurora optimizes these operations by potentially batching smaller concurrent write operations to minimize I/O usage.

What are Aurora Replicas and how do they enhance database performance?

Aurora Replicas are read-only copies of your primary database. These replicas share the same underlying storage as the primary instance, which minimizes latency and improves read performance. You can have up to 15 Aurora Replicas per primary database, which helps scale read operations and enhances failover support.

Is Amazon Aurora fully managed?

Yes, Amazon Aurora is fully managed by Amazon Relational Database Service (RDS). It automates hardware provisioning, software patching, setup, configuration, backups, and other database management tasks.

Understand and optimize Amazon Aurora with nOps

If you’re looking to save on Amazon Aurora, nOps Business Contexts makes it easy and painless to get the info you need to understand your spend, make informed decision on purchase commitments, and reduce Aurora costs.
Break down Aurora costs by any dimension in the Business Contexts dashboard

Business Contexts transforms millions of rows of contextless data into the who, what, when and why of cloud spend — making it easy to get 100% visibility of your cloud costs and usage so your bills are never a surprise or mystery.

  • Allocate 100% of your AWS costs, including EKS. Kubernetes costs are often a black box — no longer with nOps. Understand and allocate your unified AWS spend in one platform.
  • Automated resource tagging. You don’t need to have all your resources tagged to allocate costs. Create dynamic rules by region, tags, operation, accounts, and usage types to allocate costs back to custom cost centers.
  • 40+ views & filters. Map hourly costs by any relevant engineering concept (deployment, service, namespace, label, pod, container…) or finance concept (cost unit, purchase type, line item, cost allocation tag…).
  • Custom reports & dashboards for the whole team. Monthly reporting and reconciliation can take hours; with nOps only minutes. Tailor dashboards and Slack/email reports to your needs, whether you’re a CFO or VP of Engineering.

The best part? nOps is an all-in-one solution for all of your cloud optimization needs: automated commitment management, rightsizing, resource scheduling, workload management, Spot usage, storage optimization, and more.

Join our customers using nOps to understand your cloud costs and leverage automation with complete confidence by booking a demo today!