Qué es
Amazon Aurora es un motor relacional creado por AWS y compatible con MySQL y PostgreSQL: las aplicaciones y herramientas de esos motores funcionan casi sin cambios. Se gestiona desde RDS (Relational Database Service), pero su arquitectura es distinta: separa el cómputo (instancias) de un volumen de almacenamiento compartido que guarda seis copias de los datos en tres zonas de disponibilidad y crece solo. Eso le da más rendimiento, réplicas más baratas y conmutaciones más rápidas que RDS clásico.
Conceptos clave
- Clúster: una instancia escritora y hasta 15 réplicas de Aurora que leen del mismo volumen, con retrasos de milisegundos. Cualquier réplica puede pasar a ser la escritora; con prioridades de conmutación decides cuál.
- Endpoints: de clúster (siempre apunta a la escritora), de lectura (reparte entre réplicas), de instancia y personalizados (un subconjunto de réplicas, por ejemplo para informes).
- Almacenamiento: crece automáticamente en bloques de 10 GB, hasta 128 TiB o 256 TiB según la versión del motor; tolera perder dos copias sin afectar a las escrituras y tres sin afectar a las lecturas.
- Aurora Serverless v2: la capacidad se ajusta en unidades ACU (Aurora Capacity Unit: unidad de capacidad de Aurora Serverless) según la carga, y en las versiones compatibles puede bajar a 0 ACU y pausarse cuando no hay actividad. Se puede mezclar con instancias aprovisionadas en el mismo clúster.
- Aurora Global Database: un clúster principal y hasta 10 regiones secundarias de solo lectura con replicación por almacenamiento (normalmente menos de un segundo). Permite lecturas locales y recuperación regional en poco tiempo.
- Clonación: copia de la base de datos en minutos que comparte el almacenamiento hasta que cambian los datos (copy-on-write). Ideal para pruebas.
- Backtrack (solo Aurora MySQL): rebobina el clúster a un momento anterior sin restaurar una copia.
- Modos de almacenamiento: Standard (pagas las operaciones de E/S) o I/O-Optimized (sin coste por E/S, para cargas intensivas).
- Copias y PITR (Point-In-Time Recovery: restaurar a un momento concreto) hasta 35 días, como RDS.
Casos de uso típicos
- Aplicaciones relacionales críticas que necesitan alta disponibilidad y muchas lecturas.
- SaaS y aplicaciones globales con lectores en varias regiones (Global Database).
- Cargas intermitentes o entornos de desarrollo con Serverless v2.
- Migrar desde bases comerciales (Oracle, SQL Server) a un motor compatible con código abierto.
Cuándo NO usarlo
- Si necesitas Oracle, SQL Server o Db2 tal cual: RDS para ese motor.
- Bases de datos pequeñas y estables donde RDS en una sola instancia es más barato.
- Acceso clave-valor masivo o esquema flexible: DynamoDB.
- Análisis de datos a gran escala: Redshift.
Comparativa con RDS clásico
| Característica | Aurora | RDS (MySQL/PostgreSQL) |
|---|---|---|
| Copias de los datos | 6 copias en 3 zonas, siempre | 1 (o 2-3 con Multi-AZ) |
| Réplicas de lectura | Hasta 15, sobre el mismo volumen | Hasta 15, cada una con su almacenamiento |
| Conmutación | Normalmente en menos de 30 segundos | 1-2 minutos (Multi-AZ con una espera) |
| Almacenamiento | Crece solo, sin aprovisionar | Aprovisionado, con autoescalado opcional |
| Multirregión | Global Database (< 1 s) | Réplicas asíncronas entre regiones |
Modelo de precios
Se paga por hora de cada instancia (o por ACU-hora en Serverless v2), el almacenamiento realmente usado por GB al mes, las operaciones de E/S en el modo Standard, las copias que superen el tamaño del clúster, Backtrack, y la replicación y transferencia en Global Database. Hay instancias reservadas para las aprovisionadas.
Seguridad y alta disponibilidad
- Datos siempre replicados en tres zonas; con al menos una réplica en otra zona, la conmutación es automática y rápida.
- Cifrado con KMS (Key Management Service) decidido al crear el clúster, TLS (Transport Layer Security: cifrado de las conexiones) en tránsito, autenticación IAM (Identity and Access Management) y contraseña gestionada con Secrets Manager.
- Subredes privadas y security groups, como cualquier base de datos en VPC (Virtual Private Cloud).
- Global Database para recuperación regional con RPO (Recovery Point Objective: cuántos datos puedes permitirte perder) de segundos y RTO (Recovery Time Objective: cuánto tiempo puedes estar sin servicio) de minutos.
Trampas de examen
- "Compatible con MySQL/PostgreSQL, alto rendimiento y alta disponibilidad": Aurora.
- "Carga impredecible o intermitente" relacional: Aurora Serverless v2.
- "Lecturas de baja latencia en otras regiones" o "RPO de segundos entre regiones": Global Database.
- "Copia rápida de producción para pruebas": clonación.
- "Deshacer un error sin restaurar" en Aurora MySQL: Backtrack.
- "Enviar los informes a unas réplicas concretas": endpoint personalizado.
- "Muchas E/S y factura de E/S alta": modo I/O-Optimized.
Preguntas de práctica
Preguntas originales escritas para estos apuntes. No son preguntas reales de examen.
Fuentes
- What is Amazon Aurora?, documentación de AWS (consultada el 26/09/2026).
- Quotas and constraints for Amazon Aurora, documentación de AWS (consultada el 26/09/2026).
- Using Amazon Aurora Global Database, documentación de AWS (consultada el 26/09/2026).
- Using Aurora Serverless v2, documentación de AWS (consultada el 26/09/2026).
- Amazon Aurora endpoint connections, documentación de AWS (consultada el 26/09/2026).