CLF-C02
Deep Dive
AWS ofrece un portafolio completo de bases de datos gestionadas para diferentes patrones de acceso. El CLF-C02 evalúa especialmente RDS Multi-AZ vs Read Replicas, y RDS vs DynamoDB como escenario de elección.
Contenido
RDS / Aurora
Relacional SQL
DynamoDB
NoSQL clave-valor
ElastiCache
In-memory / Caché
Redshift
Data Warehouse
Bases de datos relacionales gestionadas en AWS
Amazon RDS facilita la configuración, operación y escala de bases de datos relacionales en la nube. AWS gestiona el servidor, el sistema operativo, el parche del motor y los backups automáticos.
Motores soportados: MySQL, PostgreSQL, Oracle, Microsoft SQL Server, MariaDB, Amazon Aurora
Qué gestiona AWS en RDS
Qué gestiona el cliente en RDS
RDS Multi-AZ vs Read Replicas — La distinción más importante del examen
✓ Multi-AZ — Alta Disponibilidad
RDS crea una réplica síncrona en otra Availability Zone. Si la instancia primaria falla, RDS realiza failover automático a la secundaria en 1-2 minutos.
Pregunta: "¿Quiero que la BD siga funcionando si falla una AZ?" → Multi-AZ
✓ Read Replicas — Escalado de Lectura
RDS crea réplicas asíncronas de solo lectura. Las aplicaciones pueden dirigir las consultas de lectura a las Read Replicas, reduciendo la carga de la instancia primaria.
Pregunta: "¿Mi app lee muchos datos y necesito escalar?" → Read Replicas
Motor de base de datos relacional propio de AWS, compatible con MySQL y PostgreSQL
Amazon Aurora es una base de datos relacional construida por AWS desde cero para el cloud. Es compatible con MySQL y PostgreSQL pero ofrece significativamente más performance.
5x
Más rápido que MySQL
3x
Más rápido que PostgreSQL
hasta 15
Read Replicas por cluster
10GB → 128TB
Almacenamiento auto-escala
Aurora vs RDS estándar
Aurora Serverless
Escala capacidad de BD automáticamente según demanda. Ideal para apps con carga impredecible o intermitente. Pagas solo por los recursos usados durante el uso activo.
Base de datos key-value y document totalmente gestionada, serverless
Amazon DynamoDB es una base de datos de clave-valor y documentos que ofrece rendimiento de milisegundos de un solo dígito a cualquier escala. Es serverless — no hay servidores que gestionar, aprovisionar ni parchear.
Características de DynamoDB
DynamoDB Accelerator (DAX)
Caché en memoria totalmente gestionada y compatible con DynamoDB. Mejora el rendimiento de hasta 10x para cargas de lectura intensivas.
Caché en memoria gestionado (Redis y Memcached)
ElastiCache es un servicio de caché en memoria completamente gestionado. Mejora el rendimiento de bases de datos al almacenar en caché datos consultados frecuentemente.
Redis
Memcached
Data warehouse para análisis de datos a escala de petabytes
Amazon Redshift es un data warehouse completamente gestionado, escalable y de alta performance. Diseñado para análisis de grandes volúmenes de datos (OLAP), no para transacciones en tiempo real (OLTP).
Casos de uso (OLAP)
No es para (OLTP)
Amazon DocumentDB
Document DB (MongoDB compatible)
Base de datos de documentos JSON completamente gestionada, compatible con workloads MongoDB. Escala automáticamente el almacenamiento.
Cuándo: Migrar desde MongoDB, apps de contenido, catálogos de productos
Amazon Neptune
Graph Database
Base de datos de grafos gestionada. Optimizada para almacenar y consultar relaciones altamente conectadas entre datos.
Cuándo: Redes sociales, motores de recomendación, detección de fraude, knowledge graphs
Amazon QLDB
Ledger Database (blockchain-like)
Base de datos de libro mayor inmutable y criptográficamente verificable. Cada cambio tiene un historial permanente y verificable.
Cuándo: Sistemas financieros, registro de transacciones, supply chain tracking
| Criterio | RDS / Aurora (SQL) | DynamoDB (NoSQL) |
|---|---|---|
| Modelo de datos | Tablas con relaciones (JOIN) | Key-value o documentos JSON |
| Schema | Rígido (schema-on-write) | Flexible (schema-on-read) |
| Escalado | Vertical (más CPU/RAM) o Read Replicas | Horizontal automático e ilimitado |
| Transacciones ACID | Sí, nativas | Sí (transacciones DynamoDB, limitadas) |
| Consultas complejas | SQL completo: JOINs, GROUP BY, subqueries | Solo por partition key / sort key. Sin JOINs nativos. |
| Performance bajo carga | Degrada con muchos JOINs y concurrencia alta | Performance consistente a cualquier escala |
| Casos de uso | ERP, CRM, finanzas, e-commerce transaccional | Gaming, IoT, perfiles de usuario, sesiones, tiempo real |
AWS Database Migration Service (DMS)
Migra datos con mínimo downtime
Migra bases de datos hacia AWS (o entre servicios AWS) con el sistema origen operativo durante la migración. Soporta migraciones continuas y one-time.
Migración homogénea
Mismo motor: MySQL on-prem → RDS MySQL. Solo DMS, sin conversión de esquema.
Migración heterogénea
Motores distintos: Oracle → Aurora PostgreSQL. Se necesita SCT para el esquema + DMS para los datos.
AWS Schema Conversion Tool (SCT)
Convierte automáticamente el esquema de base de datos (tablas, vistas, índices, procedimientos almacenados) de un motor a otro.
SCT + DMS juntos
SCT convierte el ESQUEMA (estructura). DMS migra los DATOS (contenido). Se usan juntos para migraciones heterogéneas.
Casos de uso comunes
Oracle on-premises → Amazon Aurora PostgreSQL
Herramientas: SCT (esquema) + DMS (datos)
SQL Server on-premises → Amazon RDS for SQL Server
Herramientas: Solo DMS
MySQL on-premises → Amazon RDS for MySQL
Herramientas: Solo DMS
Teradata data warehouse → Amazon Redshift
Herramientas: SCT (esquema) + DMS (datos)
¿Entendiste este tema?
Pon a prueba lo que acabas de aprender
Una empresa tiene una base de datos RDS MySQL con problemas de rendimiento durante horas pico. La mayoría del tráfico son consultas de lectura. ¿Qué solución de Amazon RDS mejora el rendimiento de lectura sin afectar la disponibilidad de la base de datos de producción?