Utløsere er vanligvis kodebiter som automatisk kjører og svarer på nye hendelser som oppstår for å utløse en AWS Lambda -funksjon. Du kan bruke DynamoDB-triggerne til å bygge de kraftige og funksjonelle hendelsesdrevne applikasjonene som oppstår i strømmer eller database.
Denne artikkelen diskuterer det grunnleggende om DynamoDB -utløsere. Du vil kjenne hvilke typer DynamoDB -utløsere, hvordan du kan aktivere hver type og noen få brukssaker.
Typer dynamoDB -utløsere
Det er to typer dynamoDB -triggere. De inkluderer:
EN. DynamoDB -strømmer
En dynamoDB -strøm er en bestilt eller programmert flyt av informasjon basert på endringer assosiert med elementer i en DynamoDB -tabell. Når du aktiverer en strøm på en bestemt tabell, fanger DynamoD til informasjonen om hver endring til et dataelement i tabellen og lagrer informasjonen i en strøm.
Strømmene kan utløse lambda -funksjonen når du konfigurerer funksjonen. Du kan sette opp strømmer for å utløse en lambda -funksjon ved å bruke følgende trinn:
Trinn 1: Bekreft om systemet ditt oppfyller alle forutsetningene
Først bør du bli snakket med de grunnleggende AWS Lambda -operasjonene. Du bør også bekrefte om maskinen din har den siste AWS -versjonen. Følgende kommando skal hjelpe:
AWS -versjonResponsen for forrige kommando bør ta følgende format. Merk at denne illustrasjonen bruker AWS SDK for Python Boto3.
AWS-CLI/2.x.X Python/3.x.x linux/4.x.X-XXX-STD BOTOCORE/2.x.xVårt svar er som illustrert i følgende:
Trinn 2: Lag en dynamodb -tabell og fortsett å aktivere bekkene på den
Lag tabellen du vil aktivere strømningene dine. Merk at du også kan aktivere bekkene på et eksisterende bord.
Vi bruker AWS SDK for Python for å lage vårt bord som vist i følgende kommandolinje:
Importer BOTO3Trinn 3: Lag en AWS Lambda -funksjon
Det er på tide å lage en AWS Lambda -funksjon. Du må også spesifisere DynamoDB -strømmen som utløseren. Python -kommandoen er som følger:
Importer BOTO3Den forrige koden oppretter en ny lambda -funksjon med det spesifiserte navnet, runtime og utførelsesrollen. Det utløser også funksjonen som lytter for endringer på den spesifiserte DynamoDB -strømmen.
Trinn 4: Aktiver en tilgang til Steam Records
Bruke begivenhet Parameter i forrige kode for å få tilgang til strømpostene dine for å få tilgang til strømopptakene. Du må også bruke begivenhet.Poster Felt for å få tilgang til de individuelle strømopptakene. Hver post har en Dynamodb Felt som inneholder dataens data.
Trinn 5: Aktiver en tilgang til det nye bildet
Fortsett å muliggjøre en tilgang til det nye bildet gjennom begivenhet.Poster [i].Dynamodb.NewImage felt. Når du er ferdig, angir du begivenhet.Poster [i].Dynamodb.OldImage For å få tilgang til det gamle bildet av varen før noen endringer.
Bruke begivenhet.Poster [i].arrangementsnavn seksjon for å bestemme hvilken type endring som skjedde (e.g., “Sett inn”, “Endre”, “Fjern”) og bruk begivenhet.Poster [i].EventId felt for å identifisere hver strømoppføring unikt.
Trinn 6: Bekreft ARN for strømmen din
Bruke begivenhet.Poster [i].Eventsourcearn Felt for å kjenne Amazon Resource Name (ARN) til den aktiverte strømmen.
Trinn 7: Behandle strømopptakene på riktig måte
Behandling av strømmen din som ønsket gjør det mulig for deg å utføre nødvendige handlinger. Med strømanalysen kan du erkjenne mottakelsen av strømopptakene dine ved å returnere fra funksjonen.
B. DynamoDB utløser ved hjelp av AWS CloudWatch -hendelser
Den andre typen DynamoDB -triggere bruker CloudWatch -hendelsene. Du kan bruke denne funksjonen til å sette opp reglene som samsvarer med de valgte hendelsene i strømmen av DynamoDB -hendelser. CloudWatch -arrangementet trogger en AWS Lambda -funksjon når en regel samsvarer med en hendelse.
Følgende er et eksempel på trinnene som er involvert når du oppretter en CloudWatch -hendelsesregel for å utløse en AWS Lambda -funksjon når du legger til et element i DynamoDB -tabellen. Vi bruker AWS Management Console.
Nå, når du legger til, endrer eller sletter et element, blir den tilsvarende hendelsen sendt til DynamoDB -strømmen som utløser CloudWatch -hendelsesregelen og påkaller Lambda -funksjonen.
Konklusjon
Denne artikkelen er alt du trenger å vite om DynamoDB -utløsere. Enda viktigere er at vi håper at du kan aktivere DyanMoDB -utløsere på bekkene dine direkte eller bruke CloudWatchEvents.