Dies hilft bei der Aufrechterhaltung der Konsistenz Ihrer Daten, da Ihre Daten auch dann konsistent bleiben, wenn einer der Operationen in der Transaktion fehlschlägt. Außerdem helfen Multi-Statements.
In diesem Artikel wird erläutert, welche Dynamodb-Multi-Statement-Transaktionen sind und wann sie verwendet werden sollen. Dieses Schreiben bietet auch ein Schritt-für-Schritt.
So verwenden Sie Multi-Statement-Transaktionen in DynamoDB
Sie können DynamoDB-Multi-Statement-Transaktionen verwenden, wenn Sie sicherstellen müssen, dass mehrere Vorgänge in Ihrer DynamoDB-Tabelle als Atomeinheit zusammengestellt werden.
Beispielsweise hilft es dabei, mehrere Datensätze in einer Tabelle gleichzeitig zu aktualisieren oder Daten zwischen zwei Tabellen konsistenter und zuverlässig zu übertragen. Stellen Sie dabei jedoch sicher, dass sich Ihre Tabelle im Transaktionsmodus befindet.
Darüber hinaus müssen die Vorgänge mit dem ausgeführt werden TransactwriteItems oder Transactgetitems Apis. Die Transaktion wird verpflichtet, wenn alle Operationen erfolgreich sind und zurückgerollt sind, wenn einer der Operationen ausfällt.
Darüber hinaus haben DynamoDB-Multi-Statement-Transaktionen eine Grenze von 25 Operationen pro Transaktion und maximal 4 MB Daten pro Transaktion.
Um Multi-Statement-Transaktionen in DynamoDB zu aktivieren, müssen Sie die Transaktions-ID und die Operationen angeben, die ausgeführt werden müssen. DynamoDB stellt dann sicher, dass die Prozesse in der richtigen Reihenfolge durchgeführt werden.
Befolgen Sie die folgenden Schritte, um Multi-Statement-Transaktionen in DynamoDB zu verwenden:
Beispiele für Dynamodb-Multi-Statement-Transaktionen
Beispiel 1:
Um eine Multi-Statement-Transaktion in DynamoDB zu erstellen, können wir die folgende Syntax verwenden:
// Transaktion beginnenDie obige Multi-Statement-Transaktion beginnt mit dem Parameter „Transactitems“ und enthält ein Array von Anweisungen. Die erste Anweisung ist eine Aktualisierungsoperation. Es aktualisiert ein Element mit einer bestimmten ID in der Tabelle „Mytable“ (Sie müssen den Tabellennamen angeben).
Die zweite Anweisung verfügt über einen Löschvorgang. Ziel ist es, ein Element mit einer bestimmten ID in derselben Tabelle zu löschen. Die Transaktion wird ausgeführt, indem die Methode „TransactwriteEMs“ aufgerufen wird, die die Transaktionsparameter als Eingabe nimmt und eine Antwort mit den Transaktionsergebnissen zurückgibt.
Beispiel 2:
Unser zweites Beispiel ist wie folgt:
var params =
Transactitems: [
Setzen:
TableName: "Benutzer",
Artikel:
BenutzerID: 'xxx123abcd',
FirstName: 'Ken',
Lastname: 'Brian',
E -Mail: 'Kencbrian@Google Mail.com ',
Telefon: 'xxxxxxxxx' '
,
Setzen:
TableName: 'Bestellungen',
Artikel:
orderId: 'dfa445d,
BenutzerID: 'xxx123abcd',
OrderDate: '2022-11-08' ',
Artikel: [
ProductID: '989v3',
Menge: 7
]
,
Setzen:
TableName: 'Produkte',
Artikel:
ProductID: '989v3',
Name: 'Produktname',
Preis: 210.49
]
;
Dynamode.Transactwrite (Params, Funktion (err, data)
if (err) Konsole.log (err);
sonst Konsole.Logdaten);
);
In diesem Beispiel haben wir mehrere Transaktionen erstellt, die darauf abzielen, einen neuen Benutzer, eine neue Reihenfolge und einen neuen Produkt in ihre jeweiligen Dynamodb -Tabellen zu stecken. Wenn ein Betrieb fehlschlägt, wird die gesamte Transaktion zurückgerollt, und das System fügt den Tabellen keine der Daten hinzu.
Abschluss
Dies ist zwar vielen für viele unbekannt, dynamodb-Multi-Statement-Transaktionen sind einfach zu bedienen und hilft Ihnen bei der effizienten Aufrechterhaltung der Konsistenz Ihrer Daten beibehalten. Beachten Sie, dass Sie keine Mehrfachbeamten-Transaktionen für globale Indizes verwenden können. Dies wird jedoch keinen der Vorteile dieser AWS -DynamoDB -Funktion entfernt.