Conceptos

AWS DynamoDB

Base de datos NoSQL serverless de AWS con latencia de milisegundos a cualquier escala, ideal para aplicaciones que requieren alto rendimiento y escalabilidad automática.

seed#aws#dynamodb#nosql#serverless#database#key-value

¿Qué es?

DynamoDB es la base de datos NoSQL serverless de AWS. Ofrece latencia consistente de milisegundos sin importar el tamaño de los datos o el volumen de requests. No hay servidores que administrar, parches que aplicar ni capacidad que planificar manualmente.

Modelo de datos

  • Tablas: colecciones de items
  • Items: registros individuales (similar a filas)
  • Atributos: campos dentro de un item (schema flexible)
  • Partition Key: clave primaria para distribución
  • Sort Key: opcional, para ordenamiento dentro de una partición

Modos de capacidad

ModoCaracterísticas
On-demandPago por request, escala automática, ideal para cargas impredecibles
ProvisionedCapacidad reservada, más barato para cargas predecibles

Características clave

  • Global Tables: replicación multi-región automática
  • Streams: captura de cambios para event-driven architectures
  • TTL: expiración automática de items
  • DAX: cache in-memory para microsegundos de latencia
  • Transactions: operaciones ACID across items

Patrones de acceso

DynamoDB requiere diseñar el schema alrededor de los patrones de acceso, no de las entidades. Single-table design es común para minimizar queries.

¿Por qué importa?

DynamoDB es la base de datos serverless por defecto en AWS. Su modelo de pricing por request y su latencia de milisegundos la hacen ideal para aplicaciones de alto tráfico, pero su modelo de datos requiere pensar en patrones de acceso antes de diseñar el esquema — un cambio mental respecto a bases de datos relacionales.

Referencias

Conceptos