AWS Certified Cloud Practitioner

Bases de datos en AWS

Entiende cómo funcionan las bases de datos en AWS, la diferencia entre un servicio administrado y autogestionar una base de datos en EC2, los datos relacionales frente a los no relacionales, y la idea de las bases de datos especializadas.

Principiante 14 minutos 4 Objetivos de aprendizaje
  1. Explicar qué es un servicio de base de datos administrado y en qué se diferencia de ejecutar una base de datos en Amazon EC2
  2. Comparar las bases de datos relacionales y las no relacionales
  3. Describir la idea de las bases de datos especializadas
  4. Identificar las principales categorías de bases de datos que ofrece AWS y para qué sirve cada una

Por qué esto importa

Casi toda aplicación necesita guardar datos en algún lugar, y la base de datos es donde viven esos datos. En el examen CLF-C02 no tienes que diseñar esquemas ni escribir consultas. Tienes que reconocer los servicios de base de datos de AWS, saber si un servicio es relacional o no relacional, y asociar una necesidad descrita con el servicio correcto.

Esta lección prepara el resto del tema. Cubre qué es un servicio de base de datos administrado, en qué se diferencia de ejecutar una base de datos tú mismo, la división entre datos relacionales y no relacionales, y la idea de las bases de datos especializadas. Las siguientes lecciones entran en detalle en los servicios específicos.

Servicio administrado frente a autogestionado

Puedes ejecutar una base de datos en AWS de dos formas generales.

La primera es lanzar una instancia de Amazon EC2, instalar tú mismo el software de la base de datos y administrar todo: el sistema operativo, los parches, las copias de seguridad, el escalado y la recuperación. Esto te da control total, pero cargas con todo el trabajo operativo, y un error pequeño durante un parche o una actualización manual puede causar tiempo de inactividad.

La segunda es usar un servicio administrado como Amazon RDS. AWS aprovisiona la base de datos, aplica parches, toma copias de seguridad automatizadas, detecta fallas y se encarga de la recuperación. Tú te concentras en tus datos y tu aplicación en lugar de la plomería que hay debajo. AWS recomienda un servicio administrado como opción por defecto para la mayoría de las cargas de trabajo.

La siguiente tabla muestra quién se encarga de qué en tres opciones.

TareaOn-premisesBase de datos en EC2Servicio administrado (RDS)
Ajuste de la aplicación y las consultas
Instalación y parches del software de la base de datosAWS
Parches del sistema operativoAWS
Copias de seguridad y recuperaciónAWS
Mantenimiento del servidor y el hardwareAWSAWS
Energía, red y refrigeraciónAWSAWS

Fíjate en el patrón: a medida que pasas a un servicio administrado, AWS asume más del trabajo rutinario. Una cosa nunca se mueve. El ajuste de tus propias consultas se queda contigo en todos los modelos, porque depende de tus datos y de cómo los usa tu aplicación.

Bases de datos relacionales y no relacionales

Las bases de datos caen en dos grandes grupos, y el examen espera que los distingas.

Una base de datos relacional (a menudo llamada SQL) guarda los datos en tablas formadas por filas y columnas, con un esquema definido. Puedes enlazar, o unir, tablas para responder preguntas que cruzan datos relacionados, como asociar clientes con sus pedidos. Las bases relacionales encajan bien con datos estructurados y transacciones donde la exactitud importa, como finanzas, pedidos e inventario.

Una base de datos no relacional (a menudo llamada NoSQL) usa otros modelos de datos que ceden algo de la estructura estricta a cambio de escala, velocidad y flexibilidad. En lugar de tablas fijas, puede guardar pares clave-valor, documentos parecidos a JSON, grafos o puntos con marca de tiempo. Estos modelos brillan cuando necesitas un rendimiento muy alto, baja latencia o un esquema flexible que cambia seguido.

Ningún grupo es "mejor". Resuelven problemas distintos, que es justo la razón por la que AWS ofrece los dos.

Bases de datos especializadas

AWS no empuja una sola base de datos para cada trabajo. En cambio, ofrece un conjunto de bases de datos especializadas, cada una optimizada para un modelo de datos y una carga de trabajo específicos. La idea es simple: elige la herramienta correcta para cada tarea. Una sola aplicación puede usar varias a la vez, como una relacional para la facturación y una clave-valor para el carrito de compras.

CategoríaPara qué sirveServicio de AWS
RelacionalDatos estructurados en tablas, transacciones, unionesAmazon RDS, Amazon Aurora
Clave-valorApps web de mucho tráfico a cualquier escalaAmazon DynamoDB
En memoriaCaché y tiempos de respuesta de microsegundosAmazon ElastiCache, Amazon MemoryDB
DocumentalDocumentos parecidos a JSON con campos flexiblesAmazon DocumentDB
GrafoDatos muy conectados y relacionesAmazon Neptune
Columna anchaCargas de trabajo de Apache Cassandra a gran escalaAmazon Keyspaces
Series temporalesDatos que cambian con el tiempo, como IoTAmazon Timestream

No necesitas un detalle profundo de cada servicio para el examen. Sí necesitas reconocer el nombre, saber a qué categoría pertenece y asociarlo con un escenario. Las siguientes tres lecciones cubren los servicios más evaluados de cada grupo, empezando por las bases de datos relacionales.

Consejos para el examen

  • Un servicio administrado (como Amazon RDS) significa que AWS se encarga de los parches, las copias de seguridad, la conmutación por error y el hardware. Ejecutar una base de datos en EC2 significa que tú te encargas de todo eso.
  • El ajuste de consultas siempre es tu trabajo, incluso con un servicio administrado.
  • Relacional (SQL) = tablas, filas, columnas, uniones, esquema fijo. No relacional (NoSQL) = clave-valor, documental, grafo y otros modelos flexibles hechos para escalar.
  • Especializada significa que AWS ofrece una base de datos para cada tipo de carga de trabajo, y tú eliges la correcta en lugar de forzar todo en una sola base de datos.
  • Aprende a asociar una categoría con su servicio: relacional con RDS y Aurora, clave-valor con DynamoDB, en memoria con ElastiCache, grafo con Neptune, documental con DocumentDB.