Auslöser sind im Allgemeinen Codestücke, die automatisch ausführen und auf neue Ereignisse reagieren, die eine AWS -Lambda -Funktion auslösen. Sie können die DynamoDB-Trigger verwenden, um die leistungsstarken und funktionalen ereignisgesteuerten Anwendungen zu erstellen, die in Ihren Streams oder Datenbank auftreten.
In diesem Artikel werden die Grundlagen von DynamoDB -Triggern erörtert. Sie werden die Arten von DynamoDB -Triggern, die Aktivierung jedes Typs und einige Anwendungsfälle kennen.
Arten von Dynamodbtriggern
Es gibt zwei Arten von Dynamodb -Triggern. Sie beinhalten:
A. DynamoDB -Streams
Ein DynamoDB -Stream ist ein geordneter oder programmierter Informationsfluss basierend auf Änderungen, die mit Elementen in einer DynamoDB -Tabelle zugeordnet sind. Wenn Sie einen Stream in einer bestimmten Tabelle aktivieren, erfasst DynamoDB die Informationen zu jeder Änderung eines Datenelements in der Tabelle und speichert die Informationen in einem Stream.
Die Streams können die Lambda -Funktion auslösen, sobald Sie die Funktion konfigurieren. Sie können Ihre Streams einrichten, um eine Lambda -Funktion aus den folgenden Schritten auszulösen:
Schritt 1: Bestätigen Sie, ob Ihr System alle Voraussetzungen erfüllt
Zunächst sollten Sie mit den Basis AWS Lambda Operations unterhalten werden. Sie sollten auch bestätigen, ob Ihr Computer die neueste AWS -Version hat. Der folgende Befehl sollte helfen:
AWS -VersionDie Antwort für den vorherigen Befehl sollte das folgende Format annehmen. Beachten Sie, dass diese Illustration AWS SDK für Python Boto3 verwendet.
AWS-CLI/2.X.x python/3.X.x Linux/4.X.x-xxx-std botocore/2.X.XUnsere Antwort ist wie im Folgenden dargestellt:
Schritt 2: Erstellen Sie eine DynamoDB -Tabelle und aktivieren Sie die Streams darauf
Erstellen Sie die Tabelle, für die Sie Ihre Streams aktivieren möchten. Beachten Sie, dass Sie die Streams auch in einer vorhandenen Tabelle aktivieren können.
Wir verwenden das AWS SDK für Python, um unsere Tabelle zu erstellen, wie in der folgenden Befehlszeile gezeigt:
Boto3 importierenSchritt 3: Erstellen Sie eine AWS -Lambda -Funktion
Es ist Zeit, eine AWS -Lambda -Funktion zu erstellen. Sie müssen auch den DynamoDB -Stream als Auslöser angeben. Der Befehl python lautet wie folgt:
Boto3 importierenDer vorherige Code erstellt eine neue Lambda -Funktion mit dem angegebenen Namen, der Laufzeit und der Ausführungsrolle. Es löst auch die Funktion aus, die Änderungen im angegebenen DynamoDB -Stream hört.
Schritt 4: Aktivieren Sie einen Zugriff auf die Steam -Datensätze
Benutze die Fall Parameter im vorherigen Code, um auf Ihre Stream -Datensätze zuzugreifen, um auf die Stream -Datensätze zuzugreifen. Sie müssen auch die verwenden Fall.Aufzeichnungen Feld, um auf die einzelnen Stream -Datensätze zuzugreifen. Jeder Datensatz hat a Dynamode Feld, das die Daten des Stream -Datensatzes enthält.
Schritt 5: Aktivieren Sie einen Zugriff auf das neue Bild
Ermöglichen Sie einen Zugriff auf das neue Bild über das Fall.Aufzeichnungen [i].Dynamode.Neues Bild Feld. Sobald Sie fertig sind, stellen Sie die fest Fall.Aufzeichnungen [i].Dynamode.Oldimage Sozugieren Sie auf das alte Bild des Elements vor Änderungen.
Benutze die Fall.Aufzeichnungen [i].Veranstaltungsname Abschnitt, um die Art der Änderung zu bestimmen (e.G., "Einfügen", "modifizieren", "entfernen") und verwenden Sie die Fall.Aufzeichnungen [i].EventId Feld, um jeden Stream -Datensatz eindeutig zu identifizieren.
Schritt 6: Bestätigen Sie den ARN Ihres Streams
Benutze die Fall.Aufzeichnungen [i].EventSourcearn Feld, um den Amazon -Ressourcennamen (ARN) des aktivierten Streams zu kennen.
Schritt 7: Verarbeiten Sie die Stream -Aufzeichnungen entsprechend
Durch die Bearbeitung Ihres Streams können Sie alle erforderlichen Aktionen ausführen. Mit der Stream -Analyse können Sie den Erhalt Ihrer Stream -Datensätze bestätigen, indem Sie aus der Funktion zurückkehren.
B. DynamoDB -Trigger mit AWS CloudWatch -Ereignissen
Die zweite Art von Dynamodb -Triggern verwendet die CloudWatch -Ereignisse. Mit dieser Funktion können Sie die Regeln einrichten, die mit den ausgewählten Ereignissen im Strom von DynamoDB -Ereignissen übereinstimmen. Das CloudWatch -Ereignis treibt eine AWS -Lambda -Funktion, wenn eine Regel mit einem Ereignis übereinstimmt.
Das Folgende ist ein Beispiel für die Schritte, die beim Erstellen einer CloudWatch -Ereignisregel beteiligt sind, um eine AWS -Lambda -Funktion auszulösen, wenn Sie Ihrer Dynamodb -Tabelle ein Element hinzufügen. Wir verwenden die AWS -Managementkonsole.
Wenn Sie ein Element hinzufügen, ändern oder löschen, wird das entsprechende Ereignis an den DynamoDB -Stream gesendet, der die CloudWatch -Ereignisregel auslöst und die Lambda -Funktion aufruft.
Abschluss
Dieser Artikel ist alles, was Sie über DynamoDB -Trigger wissen müssen. Noch wichtiger ist, wir hoffen, dass Sie die DyanModb -Auslöser in Ihren Streams direkt aktivieren oder CloudWatches Events verwenden können.