Los desencadenantes son generalmente piezas de código que ejecutan y responden automáticamente a nuevos eventos que ocurren para desencadenar una función AWS Lambda. Puede usar los desencadenantes de DynamodB para construir las aplicaciones potentes y funcionales basadas en eventos que ocurren en sus transmisiones o base de datos.
Este artículo discute los conceptos básicos de los desencadenantes de Dynamodb. Conocerá los tipos de desencadenantes de DynamodB, cómo habilitar cada tipo y algunos casos de uso.
Tipos de desencadenantes de DynamodB
Hay dos tipos de desencadenantes de DynamodB. Incluyen:
A. Transmisiones de DynamodB
Una secuencia de DynamodB es un flujo de información ordenado o programado basado en cambios asociados con los elementos en una tabla DynamodB. Cada vez que habilita una transmisión en una tabla en particular, DynamodB captura la información sobre cada cambio a un elemento de datos dentro de la tabla y almacena la información en un flujo.
Las transmisiones pueden activar la función lambda una vez que configura la función. Puede configurar sus transmisiones para activar una función Lambda utilizando los siguientes pasos:
Paso 1: Confirme si su sistema cumple con todos los requisitos previos
Primero, debe ser conversado con las operaciones básicas de AWS Lambda. También debe confirmar si su máquina tiene la última versión de AWS. El siguiente comando debe ayudar:
versión de AWSLa respuesta para el comando anterior debe tomar el siguiente formato. Tenga en cuenta que esta ilustración usa AWS SDK para Python Boto3.
AWS-Cli/2.X.x python/3.X.x Linux/4.X.X-XXX-STD Botocore/2.X.XNuestra respuesta es como se ilustra en lo siguiente:
Paso 2: cree una tabla DynamodB y proceda a habilitar las transmisiones en ella
Crea la tabla para la que quieres habilitar tus transmisiones. Tenga en cuenta que también puede habilitar las transmisiones en una tabla existente.
Usamos el AWS SDK para Python para crear nuestra tabla como se muestra en la siguiente línea de comando:
importar boto3Paso 3: crear una función de lambda de AWS
Es hora de crear una función AWS Lambda. También debe especificar la secuencia Dynamodb como disparador. El comando python es el siguiente:
importar boto3El código anterior crea una nueva función lambda con el rol de nombre, tiempo de ejecución y ejecución especificados. También desencadena la función que escucha los cambios en la transmisión DynamodB especificada.
Paso 4: Habilite un acceso a los registros de Steam
Utilizar el evento Parámetro en el código anterior para acceder a sus registros de transmisión para acceder a los registros de transmisión. También necesitas usar el evento.Registros campo para acceder a los registros de transmisión individual. Cada récord tiene un dinamodb campo que contiene los datos del registro de transmisión.
Paso 5: Habilite un acceso a la nueva imagen
Proceder a habilitar un acceso a la nueva imagen a través del evento.Registros [i].dinamodb.Nueva imagen campo. Una vez hecho, configure el evento.Registros [i].dinamodb.Antigüedad Para acceder a la imagen anterior del elemento antes de cualquier cambio.
Utilizar el evento.Registros [i].nombre del evento sección para determinar el tipo de cambio que ocurrió (e.gramo., "Insertar", "modificar", "eliminar") y usar el evento.Registros [i].eventid campo para identificar de manera única cada registro de transmisión.
Paso 6: Confirme el ARN de su transmisión
Utilizar el evento.Registros [i].eventsurcearn campo para conocer el nombre de recursos de Amazon (ARN) de la transmisión habilitada.
Paso 7: procese los registros de transmisión adecuadamente
Procesar su transmisión según lo desee le permite realizar cualquier acción necesaria. Con el análisis de transmisión, puede reconocer la recepción de sus registros de transmisión devolviendo desde la función.
B. Dynamodb dispara con eventos de AWS CloudWatch
El segundo tipo de disparadores de DynamodB es usar los eventos de CloudWatch. Puede usar esta función para configurar las reglas que coincidan con los eventos seleccionados en la transmisión de eventos DynamodB. El evento CloudWatch Troggers una función AWS Lambda cada vez que una regla coincide con un evento.
El siguiente es un ejemplo de los pasos involucrados al crear una regla de eventos de CloudWatch para activar una función AWS Lambda cada vez que agrega un elemento a su tabla Dynamodb. Usamos la consola de administración de AWS.
Ahora, cada vez que agrega, modifica o elimina un elemento, el evento correspondiente se envía a la transmisión DynamodB que desencadena la regla de eventos de CloudWatch e invoca la función Lambda.
Conclusión
Este artículo es todo lo que necesita saber sobre Dynamodb desencadenantes. Más importante aún, esperamos que pueda habilitar los desencadenantes de DyanModb en sus transmisiones directamente o usar CloudWatchEvents.