Amazon DynamoDB Esencialdesde 2012
Una base de datos NoSQL completamente administrada que ofrece latencia de milisegundos de un solo dígito
Qué hace
Amazon DynamoDB es una base de datos NoSQL completamente administrada que admite modelos de datos tanto clave-valor como de documentos. Ofrece latencia de milisegundos de un solo dígito a cualquier escala, con escalado automático de capacidad. Admite tablas globales para replicación multirregión, cifrado en reposo, copias de seguridad bajo demanda y recuperación en un punto en el tiempo.
Casos de uso
Se utiliza para backends de aplicaciones web y móviles, plataformas de juegos, dispositivos IoT, carritos de compras de comercio electrónico, gestión de sesiones y cualquier carga de trabajo que requiera acceso a datos consistente y de baja latencia a escala. También es popular para arquitecturas sin servidor combinadas con Lambda.
Analogía cotidiana
Piense en ello como un enorme sistema de taquillas. Cada taquilla (elemento) tiene un número único (clave de partición), puede almacenar cualquier cosa dentro (esquema flexible), y puede acceder a cualquier taquilla instantáneamente sin importar cuántas haya. El sistema agrega automáticamente más taquillas según sea necesario.
¿Qué es DynamoDB?
Amazon DynamoDB es una base de datos NoSQL completamente administrada que proporciona un rendimiento rápido y predecible con escalabilidad perfecta. A diferencia de las bases de datos relacionales que requieren definir esquemas por adelantado, DynamoDB le permite almacenar datos con estructuras flexibles. Solo necesita definir una clave primaria, y cada elemento puede tener diferentes atributos.
Modelo de datos y diseño de claves
Las tablas de DynamoDB requieren una clave primaria, que puede ser una clave de partición simple o una clave compuesta (clave de partición + clave de ordenación). El diseño de la clave de partición es crucial para el rendimiento: distribuir los datos uniformemente entre las particiones evita puntos calientes. Los índices secundarios (GSI y LSI) permiten patrones de consulta eficientes más allá de la clave primaria.
Modos de capacidad y escalado
DynamoDB ofrece dos modos de capacidad. El modo bajo demanda escala automáticamente y cobra por solicitud, ideal para cargas de trabajo impredecibles. El modo aprovisionado le permite especificar las unidades de capacidad de lectura/escritura, adecuado para cargas de trabajo predecibles con costos más bajos. Auto Scaling ajusta automáticamente la capacidad aprovisionada según los patrones de tráfico. Para más información sobre modos de capacidad y escalado, libros en Amazon también son una referencia útil.
Primeros pasos
Para comenzar con DynamoDB, cree una tabla desde la consola de administración o la AWS CLI. Especifique un nombre de tabla y una clave primaria. Para pruebas, el modo bajo demanda es conveniente ya que no requiere planificación de capacidad. Puede insertar y consultar elementos inmediatamente usando la consola, la AWS CLI o los SDK de AWS.
Aspectos a tener en cuenta
- El diseño de la clave de partición afecta directamente al rendimiento, por lo que es importante evitar particiones calientes donde el acceso se concentre en claves específicas
- El modo bajo demanda es cómodo, pero con grandes volúmenes de solicitudes puede resultar más caro que el modo aprovisionado
- Como nivel gratuito permanente se pueden usar 25 GB de almacenamiento y 250 millones de solicitudes de lectura/escritura al mes