Información general sobre el laboratorio
AnyCompany está desarrollando una aplicación de base de datos de películas. Esta aplicación permitirá que los usuarios busquen películas por título, año de lanzamiento, actores, calificación, etc. AnyCompany eligió a Amazon DynamoDB como servicio de base de datos con el fin de almacenar toda la información sobre las películas que hará referencia la aplicación.
Amazon DynamoDB es una base de datos NoSQL sin servidor, también conocida como “no relacional”, que admite modelos de datos de documentos y clave-valor. Con DynamoDB, puede comenzar de a poco y escalar globalmente de manera rápida mientras la aplicación y la base de usuarios crece, obteniendo la capacidad de admitir petabytes de datos y decenas de millones de solicitudes de lectura y escritura por segundo. AWS administra el servicio DynamoDB para que no haya servidores que actualizar o mantener. Para obtener más información, consulte Características de Amazon DynamoDB y Componentes básicos de Amazon DynamoDB en la sección Recursos adicionales.
Como desarrollador junior de aplicaciones recién contratado en AnyCompany, se le encargó desarrollar un flujo de trabajo basado en eventos para notificar a los clientes cuando se han agregado o eliminado películas nuevas a su base de datos. Además, a su empresa le gustaría un método para registrar elementos de base de datos vencidos en S3 para almacenamiento a largo plazo. Para lograrlo, eligió una solución que combina Amazon DynamoDB Streams, Amazon DynamoDB Time to Live (TTL) y AWS Lambda.
Temas tratados
Al final de este laboratorio, podrá realizar lo siguiente:
- utilizar la CLI de AWS y las variables de shell para habilitar DynamoDB Streams
- conectar una función de Lambda creada con el SDK para Python (Boto3) a un DynamoDB Stream
- enviar notificaciones por correo electrónico a un usuario siempre que se agregue, modifique o elimine un elemento de una tabla de DynamoDB
- automatizar la eliminación de elementos de DynamoDB mediante la habilitación de un atributo Time To Live (TTL) para un elemento de tabla
- crear un flujo de trabajo para mover los elementos de DynamoDB vencidos al almacenamiento a largo plazo en Amazon S3
Conocimientos técnicos requeridos
Para completar correctamente este laboratorio, debe estar familiarizado con el uso de una consola Linux, conceptos de base de datos NoSQL, conceptos básicos de scripting de bash y debe saber editar archivos mediante un editor de texto.
Significados de los íconos
A lo largo de este laboratorio, se utilizan varios íconos para llamar la atención sobre ciertos aspectos de la guía. En la siguiente lista, se explica el propósito de cada ícono:
- El ícono del teclado especifica que debe ejecutar un comando.
- El ícono del portapapeles indica que puede verificar el resultado de un comando o de un archivo editado si lo compara con el ejemplo proporcionando.
- El ícono de notas especifica que hay pistas, sugerencias, guías o recomendaciones importantes.
- El ícono del círculo con la “i” especifica dónde encontrar más información.
- El ícono con la persona y la marca de verificación indica la oportunidad de verificar su conocimiento y evaluar lo que ha aprendido.