dataiotech Labs
dbaguidedbaguideDBAdataxtoolsdataopsphere
Home/Comparisons/aurora-vs-self-hosted
Cloud DBaaS vs Self-Hosted HA
9 min read

AWS Aurora vs Self-Hosted (Patroni / InnoDB Cluster): Cost, I/O Physics, and Engineering Reality

Cloud Distributed Log Storage vs Bare-Metal NVMe I/O Performance and Total Cost of Ownership

Comprehensive Decision Matrix

2 Dimensions
DimensionPostgreSQLMySQL
Storage Engine

Aurora guarantees instantaneous storage recovery; bare-metal delivers sub-millisecond local NVMe latencies.

Aurora: 6 storage copies across 3 AZs (4/6 write quorum). Log is the storage.Self-Hosted: Local dedicated NVMe drives per node. Network streaming replication.
Cost & TCO

High-throughput workloads exceeding 1B I/O requests per month are 5x cheaper on self-hosted infrastructure.

Aurora: High hourly compute + I/O request metering (Risk of unpredicted billing surges).Self-Hosted: Predictable fixed hardware leasing. Zero marginal cost per million I/O ops.

▸1. The Aurora Architecture: "The Log is the Database"

In classical relational architectures, the database engine flushes dirty buffer pages to local disks during checkpoints. AWS Aurora radically redesigned this storage layer:

The Aurora compute engine never flushes data pages directly to block storage. Instead, it streams raw write-ahead journal deltas to a custom distributed storage fleet replicated across 6 nodes in 3 Availability Zones (requiring a 4-of-6 quorum on writes). The storage fleet reconstructs database pages asynchronously.

  • •Advantages: Spin-up time for read replicas takes seconds because all replicas read from the unified distributed storage layer with typical replication lag under 10ms.
  • •The Drawback (The I/O Tax): Every write-ahead log record and storage read is metered as an "Aurora I/O Request". In poorly indexed databases with heavy full-table scans, the monthly I/O bill can easily triple the compute instance cost.

▸2. Bare-Metal & Self-Hosted Clusters (Patroni / InnoDB Cluster)

Deploying a 3-node HA cluster using Patroni (PostgreSQL) or InnoDB Cluster (MySQL) on dedicated enterprise hardware or bare-metal providers:

  1. 1Latency Profile: Local enterprise PCIe 4.0/5.0 NVMe storage completes fsync operations in 50–100 microseconds. Because Aurora requires network quorum acknowledgments across multiple AZs, commit latencies rarely drop below 1–3 milliseconds. For latency-sensitive financial ledgers, local NVMe is unmatched.
  2. 2Predictable TCO: Even under sustained workloads driving 100,000 IOPS, the monthly hosting fee remains fixed with zero marginal cost per million I/O operations.
  3. 3Operational Responsibility: Managing kernel updates, patching, drive replacements, and backup automation rests squarely on your internal DBA/SRE engineering team.