Entre los motores que ofrece RDS hay uno especial, creado por la propia AWS: Aurora. No es un motor «de fábrica» como MySQL o PostgreSQL, sino una versión mejorada y reinventada por AWS para la nube. En este subcapítulo veremos qué lo hace distinto y cuándo elegirlo frente al RDS «clásico» (lo que se suele llamar RDS vanilla).

Qué es Aurora

Amazon Aurora es una base de datos relacional creada por AWS que es compatible con MySQL y PostgreSQL, pero rediseñada por dentro para aprovechar al máximo la nube.

  • «Compatible con MySQL/PostgreSQL» significa que tu aplicación habla con Aurora igual que hablaría con MySQL o PostgreSQL. No tienes que reescribir tu código ni aprender un lenguaje nuevo. Por debajo, Aurora es muy distinta y mucho más eficiente.

Analogía: Imagina que MySQL es un buen coche de calle. Aurora es como coger ese mismo coche, conservar el volante y los pedales (para que sepas conducirlo sin aprender nada nuevo) pero cambiarle el motor por uno de competición. Conduces igual, pero rinde muchísimo más.

Las ventajas de Aurora sobre RDS vanilla

  1. Mucho más rendimiento

AWS afirma que Aurora puede ser hasta 5 veces más rápida que MySQL y hasta 3 veces más rápida que PostgreSQL en RDS estándar, gracias a su arquitectura de almacenamiento rediseñada. Para aplicaciones exigentes, esto es una gran diferencia.

  1. Almacenamiento que crece solo

En RDS clásico, tienes que decidir de antemano cuánto espacio de disco reservar (y ampliarlo a mano si te quedas corto). En Aurora, el almacenamiento crece automáticamente a medida que tus datos aumentan, sin que tengas que hacer nada. Pagas por lo que usas.

Ventaja práctica: te olvidas del clásico susto de «se ha llenado el disco de la base de datos». Aurora se expande sola.

  1. Alta disponibilidad superior

Aurora guarda seis copias de tus datos repartidas en tres zonas de disponibilidad automáticamente. Esto la hace extremadamente resistente a fallos: puede perder copias enteras y seguir funcionando sin perder datos. La recuperación ante fallos es más rápida que en RDS clásico.

  1. Réplicas de lectura más rápidas y numerosas

Aurora permite hasta 15 réplicas de lectura (frente a las 5 de RDS clásico) y con un retraso de sincronización mínimo. Ideal para aplicaciones con muchísima lectura.

  1. Aurora Serverless: que escale solo

Existe una variante llamada Aurora Serverless que ajusta automáticamente su capacidad según la demanda, e incluso puede reducirse a casi cero cuando no hay actividad. Pagas por el uso real.

Cuándo es genial: para aplicaciones con uso intermitente o impredecible (por ejemplo, un entorno de desarrollo que solo se usa en horario de oficina, o una app con picos esporádicos). En lugar de pagar una base de datos encendida 24/7, pagas solo cuando se usa. Recuerda el espíritu de elasticidad del Capítulo 1.

Aurora vs RDS vanilla: tabla comparativa

Característica RDS vanilla (MySQL/PostgreSQL) Aurora
Rendimiento Bueno Muy superior (hasta 3-5×)
Almacenamiento Lo reservas tú, lo amplías a mano Crece automáticamente
Copias de datos Según Multi-AZ 6 copias en 3 AZ, automático
Máx. réplicas de lectura 5 15
Opción serverless No Sí (Aurora Serverless)
Coste Más económico Algo más caro
Compatibilidad MySQL, PostgreSQL y otros Compatible con MySQL/PostgreSQL

¿Entonces uso siempre Aurora?

No necesariamente. Aurora es más potente pero también algo más cara que RDS vanilla. La elección depende de tu caso:

Elige Aurora cuando:

  • Necesitas alto rendimiento o esperas crecer mucho.
  • Quieres la máxima disponibilidad sin complicarte.
  • Tienes mucha carga de lectura (aprovechas sus réplicas).
  • Tu uso es intermitente y te interesa Aurora Serverless.

Elige RDS vanilla cuando:

  • Tu aplicación es pequeña o mediana y no necesita el rendimiento extra.
  • Quieres minimizar el coste.
  • Necesitas un motor que Aurora no ofrece (Oracle, SQL Server, MariaDB…).
  • Quieres exactamente el mismo MySQL/PostgreSQL «de fábrica» por algún requisito concreto.

Ejemplo real: Una startup empieza su producto con RDS PostgreSQL estándar porque es barato y suficiente. Cuando su base de usuarios crece y la base de datos empieza a ir justa de rendimiento, migran a Aurora PostgreSQL (sin tocar su código, gracias a la compatibilidad) y ganan velocidad y capacidad de crecer. Aurora «acompaña» su éxito.

Lo que debes recordar

  • Aurora es la base de datos relacional propia de AWS, compatible con MySQL y PostgreSQL (tu código funciona igual) pero rediseñada para la nube.
  • Sus ventajas: mucho más rendimiento, almacenamiento que crece solo, alta disponibilidad superior (6 copias en 3 AZ), más réplicas de lectura y la opción Aurora Serverless (escala solo, ideal para uso intermitente).
  • Es más potente pero algo más cara que RDS vanilla.
  • Elige Aurora para alto rendimiento/crecimiento; RDS vanilla para proyectos más pequeños, menor coste o motores que Aurora no ofrece.

En el siguiente subcapítulo cambiamos de mundo: veremos DynamoDB, una base de datos NoSQL muy distinta de las relacionales, y cuándo conviene usarla.

Cloud, AWS & Terraform — De cero a experto

Capítulo 1 · Qué es el cloud computing

Capítulo 2 · El mercado cloud y los grandes proveedores

Capítulo 3 · Regiones, zonas de disponibilidad y edge

Capítulo 4 · Cómputo: EC2

Capítulo 5 · Almacenamiento: S3

Capítulo 6 · Redes: VPC

Capítulo 7 · Identidad y acceso: IAM

Capítulo 8 · Bases de datos gestionadas

Capítulo 9 · Por qué Infraestructura como Código

Capítulo 10 · HCL: el lenguaje de Terraform

Capítulo 11 · Providers y estado

Capítulo 12 · Tu primera infraestructura real en Terraform

Capítulo 13 · Balanceo de carga y autoescalado

Capítulo 14 · Serverless con Lambda

Capítulo 15 · Mensajería y eventos

Capítulo 16 · Entrega de contenido y DNS

Capítulo 17 · Contenedores en AWS

Capítulo 18 · Módulos: reutilización y composición

Capítulo 19 · Workspaces y gestión de entornos

Capítulo 20 · Backends remotos y locking

Capítulo 21 · Testing de infraestructura

Capítulo 22 · Terraform en CI/CD

Capítulo 23 · Seguridad en profundidad

Capítulo 24 · Observabilidad: logs, métricas y trazas

Capítulo 25 · Optimización de costes

Capítulo 26 · Alta disponibilidad y disaster recovery

Capítulo 27 · Well-Architected Framework de AWS

Capítulo 28 · Arquitecturas serverless a escala

Capítulo 29 · Plataformas de datos en AWS

Capítulo 30 · Multi-cuenta y landing zones

Capítulo 31 · Platform Engineering e Internal Developer Platform

Capítulo 32 · Certificaciones AWS relevantes

Capítulo 33 · Proyectos para consolidar lo aprendido

Capítulo 34 · Recursos y comunidad

© Copyright 2024. Todos los derechos reservados