Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwenden von Kinesis Data Streams zum Erfassen von Änderungen an DynamoDB
Sie können Amazon Kinesis Data Streams verwenden, um Änderungen an Amazon DynamoDB zu erfassen.
Kinesis Data Streams erfasst Änderungen auf Elementebene in jeder DynamoDB-Tabelle und repliziert sie in einen Kinesis Data Stream. Ihre Anwendungen können auf diesen Stream zugreifen und die Änderungen auf Elementebene nahezu in Echtzeit anzeigen. Sie können kontinuierlich Terabyte an Daten pro Stunde erfassen und speichern. Sie können eine längere Datenaufbewahrungszeit nutzen, und mit der Funktion für erweiterte Rundsendungen können Sie gleichzeitig zwei oder mehr nachgelagerte Anwendungen erreichen. Weitere Vorteile sind zusätzliche Prüfungen und Sicherheitstransparenz.
Kinesis Data Streams bietet Ihnen auch Zugriff auf Amazon Data Firehose und Amazon Managed Service für Apache Flink. Diese Services können Sie bei der Erstellung von Anwendungen unterstützen, die Echtzeit-Dashboards betreiben, Warnungen generieren, dynamische Preisgestaltung und Werbung implementieren und ausgefeilte Datenanalysen sowie Algorithmen für maschinelles Lernen umsetzen.
Anmerkung
Die Verwendung von Kinesis Data Streams für DynamoDB unterliegt sowohl den Preisen für Kinesis Data Streams
Wie Kinesis Data Streams mit DynamoDB funktioniert
Wenn ein Kinesis Data Stream für eine DynamoDB-Tabelle aktiviert ist, sendet die Tabelle einen Datensatz, der alle Änderungen an den Daten dieser Tabelle erfasst. Dieser Datensatz beinhaltet:
-
Die spezifische Uhrzeit, zu der ein Element kürzlich erstellt, aktualisiert oder gelöscht wurde
-
Den Primärschlüssel dieses Elements
-
Eine Momentaufnahme des Datensatzes vor der Änderung
-
Eine Momentaufnahme des Datensatzes nach der Änderung
Diese Datensätze werden nahezu in Echtzeit erfasst und veröffentlicht. Nachdem sie in den Kinesis Data Stream geschrieben wurden, können sie wie jeder andere Datensatz gelesen werden. Sie können die Kinesis Client Library verwenden AWS Lambda, Kinesis Data Streams verwendenAPI, aufrufen und andere verbundene Dienste verwenden. Weitere Informationen finden Sie unter Lesen von Daten aus Amazon Kinesis Data Streams im Amazon-Kinesis-Data-Streams-Entwicklerhandbuch.
Diese Änderungen an Daten werden ebenfalls asynchron erfasst. Kinesis hat keine Auswirkungen auf die Leistung einer Tabelle, von der es streamt. Die in Ihrem Kinesis Data Stream gespeicherten Streamdatensätze werden auch im Ruhezustand verschlüsselt. Weitere Informationen finden Sie unter Datenschutz in Amazon Kinesis Data Streams.
Die Kinesis-Datenstream-Datensätze werden möglicherweise in einer anderen Reihenfolge angezeigt als zu dem Zeitpunkt, an dem die Elementänderungen vorgenommen wurden. Dieselben Elementbenachrichtigungen werden möglicherweise auch mehrmals im Stream angezeigt. Sie können das ApproximateCreationDateTime
Attribut überprüfen, um die Reihenfolge zu ermitteln, in der die Artikeländerungen vorgenommen wurden, und um doppelte Datensätze zu identifizieren.
Wenn Sie einen Kinesis-Datenstream als Streaming-Ziel einer DynamoDB-Tabelle aktivieren, können Sie die Genauigkeit der ApproximateCreationDateTime
Werte entweder in Millisekunden oder Mikrosekunden konfigurieren. ApproximateCreationDateTime
Gibt standardmäßig den Zeitpunkt der Änderung in Millisekunden an. Darüber hinaus können Sie diesen Wert an einem aktiven Streaming-Ziel ändern. Nach einer solchen Aktualisierung weisen in Kinesis geschriebene Stream-Datensätze ApproximateCreationDateTime
Werte mit der gewünschten Genauigkeit auf.
In DynamoDB geschriebene Binärwerte müssen im Base64-codierten Format codiert sein. Wenn Datensätze jedoch in einen Kinesis-Datenstrom geschrieben werden, erfolgt eine zweite Codierung dieser codierten Binärwerte mit der Base64-Codierung. Beim Lesen dieser Datensätze aus einem Kinesis-Datenstrom müssen Anwendungen diese Werte zweimal dekodieren, um die rohen Binärwerte abzurufen.
DynamoDB erhebt Gebühren für die Verwendung von Kinesis Data Streams in Änderungsdatenerfassungseinheiten. 1 KB Änderung pro Einzelelement gilt als eine Änderungsdatenerfassungseinheit. Die KB der Änderung in jedem Element wird durch das Größere der „Vorher“- und „Nachher“-Images des in den Stream geschriebenen Elements berechnet, wobei dieselbe Logik wie capacity unit consumption for write operations (Verbrauch der Kapazitätseinheit für Schreiboperationen) verwendet wird. Sie müssen keinen Kapazitätsdurchsatz für Änderungsdatenerfassungseinheiten bereitstellen, ähnlich wie der DynamoDB on-demand-Modus funktioniert.
Aktivieren eines Kinesis Data Streams für Ihre DynamoDB-Tabelle
Sie können das Streaming zu Kinesis von Ihrer vorhandenen DynamoDB-Tabelle aus aktivieren oder deaktivieren, indem Sie die AWS Management Console AWS SDK, oder die AWS Command Line Interface () verwenden.AWS CLI
-
Sie können nur Daten von DynamoDB zu Kinesis Data Streams in demselben AWS Konto und derselben AWS Region streamen wie Ihre Tabelle.
-
Sie können nur Daten von einer DynamoDB-Tabelle in einen Kinesis Data Stream streamen.
Änderungen an einem Kinesis Data Streams Streams-Ziel in Ihrer DynamoDB-Tabelle vornehmen
Standardmäßig enthalten alle Kinesis-Datenstream-Datensätze ein ApproximateCreationDateTime
Attribut. Dieses Attribut stellt einen Zeitstempel in Millisekunden der ungefähren Zeit dar, zu der jeder Datensatz erstellt wurde. Sie können die Genauigkeit dieser Werte ändern, indem Sie https://console.aws.amazon.com/kinesis, the oder