← Volver al catálogo

Amazon RDS

Amazon Relational Database Service (Amazon RDS)

En una frase: Base relacional gestionada con MySQL, Oracle o SQL Server: parches y copias automáticos
Documentación oficial: Documentación de Amazon RDS ↗

Qué es

Amazon RDS (Relational Database Service) ejecuta bases de datos relacionales sin que tengas que instalar el motor, aplicar parches, hacer copias de seguridad ni montar la replicación. Tú eliges el motor, el tamaño de la instancia y el almacenamiento; AWS se ocupa de la operación. A cambio, no tienes acceso al sistema operativo del servidor (salvo con RDS Custom para Oracle y SQL Server).

Conceptos clave

  • Motores: MySQL, PostgreSQL, MariaDB, Oracle, SQL Server y Db2. Aurora también se gestiona desde RDS, pero es un motor aparte con su propia arquitectura.
  • Multi-AZ con una instancia en espera: réplica síncrona en otra zona, sin tráfico de lectura; si falla la principal, RDS cambia el DNS (Domain Name System: traduce nombres de dominio a direcciones IP) del endpoint a la espera en uno o dos minutos. Sirve para alta disponibilidad, no para escalar.
  • Multi-AZ DB cluster (MySQL y PostgreSQL): un escritor y dos instancias en espera legibles en tres zonas, con conmutación más rápida.
  • Réplicas de lectura: copias asíncronas para repartir las lecturas, en la misma región o en otra; hasta 15 en MySQL, MariaDB y PostgreSQL, y hasta 5 en Oracle y SQL Server. Se pueden promocionar a instancia independiente (útil para recuperación ante desastres entre regiones).
  • Copias automáticas y PITR (Point-In-Time Recovery: restaurar a un momento concreto): retención de hasta 35 días y restauración a cualquier segundo de ese periodo. Las instantáneas manuales se conservan hasta que las borras. Restaurar siempre crea una instancia nueva.
  • Almacenamiento: SSD (Solid-State Drive: disco de estado sólido) de uso general (gp3) o de IOPS (Input/Output Operations Per Second: operaciones de disco por segundo) aprovisionadas (io2), con autoescalado de almacenamiento. Cambiar el tamaño de la instancia provoca una breve parada.
  • RDS Proxy: agrupa y reutiliza conexiones; imprescindible con Lambda o con muchas conexiones cortas, y acelera la conmutación por error.
  • Autenticación IAM (Identity and Access Management) (MySQL y PostgreSQL) con tokens temporales, e integración con Secrets Manager para la contraseña maestra con rotación.
  • Blue/Green Deployments: copia sincronizada para probar actualizaciones de versión o de esquema y cambiar en menos de un minuto.
  • Performance Insights y Enhanced Monitoring para analizar la carga y las consultas lentas.

Casos de uso típicos

  • Aplicaciones web y de negocio con SQL (Structured Query Language: lenguaje de consultas de bases de datos relacionales), transacciones y JOIN.
  • Migrar una base de datos local sin cambiar de motor (con AWS DMS (Database Migration Service)).
  • Software comercial que exige Oracle o SQL Server, con licencia incluida o propia.
  • Separar lecturas de informes en réplicas para no cargar la principal.

Cuándo NO usarlo

  • Si necesitas más réplicas, conmutación en segundos o almacenamiento que crece solo: Aurora.
  • Acceso por clave a escala masiva o esquemas flexibles: DynamoDB.
  • Análisis de grandes volúmenes (OLAP): Redshift o Athena.
  • Si necesitas acceso de administrador al sistema operativo o un motor no soportado: base de datos en EC2 (Elastic Compute Cloud) (o RDS Custom).

Multi-AZ frente a réplicas de lectura

CaracterísticaMulti-AZ (una espera)Réplica de lectura
ObjetivoAlta disponibilidadEscalar lecturas
ReplicaciónSíncronaAsíncrona
¿Admite lecturas?NoSí
UbicaciónOtra zona de la misma regiónMisma zona, otra zona u otra región
ConmutaciónAutomática, mismo endpointManual (promoción), endpoint nuevo

Modelo de precios

Se paga por hora de instancia según motor, clase y despliegue (Multi-AZ cuesta más que una sola zona), el almacenamiento aprovisionado por GB al mes (y las IOPS en io2), las copias de seguridad que superen el tamaño de la base de datos, la transferencia de datos entre regiones y extras como RDS Proxy. Hay instancias reservadas de 1 o 3 años. Oracle y SQL Server pueden llevar la licencia incluida en el precio o traer la propia (BYOL). Una instancia parada deja de cobrar cómputo, pero RDS la vuelve a arrancar a los 7 días.

Seguridad y alta disponibilidad

  • Instancias en subredes privadas (grupo de subredes de base de datos) y acceso limitado por security groups.
  • Cifrado en reposo con KMS (Key Management Service), que se decide al crear la instancia: para cifrar una existente hay que copiar una instantánea cifrándola y restaurarla.
  • TLS (Transport Layer Security: cifrado de las conexiones) en tránsito; autenticación IAM o Kerberos según el motor.
  • Multi-AZ para fallos de zona, réplicas entre regiones o copias de instantáneas en otra región para desastres regionales.
  • Protección contra borrado (deletion protection).

Trampas de examen

  • "Alta disponibilidad" o "conmutación automática": Multi-AZ, no réplicas de lectura.
  • "Escalar lecturas" o "informes que cargan la base de datos": réplicas de lectura.
  • "Demasiadas conexiones desde Lambda": RDS Proxy.
  • "Cifrar una base de datos existente sin cifrar": instantánea, copia cifrada y restauración.
  • "Recuperar la base de datos a las 14:32 de ayer": restauración a un momento dado (PITR), que crea una instancia nueva.
  • "Acceso al sistema operativo": RDS no lo da; RDS Custom o EC2.
  • "No guardar la contraseña en el código": Secrets Manager o autenticación IAM.

Preguntas de práctica

Preguntas originales escritas para estos apuntes. No son preguntas reales de examen.

Fuentes