Globale Tabellen: multiregionale Replikation für DynamoDB - Amazon-DynamoDB

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.

Globale Tabellen: multiregionale Replikation für DynamoDB

Globale Tabellen in Amazon DynamoDB sind eine vollständig verwaltete, multiregionale und multiaktive Datenbankoption, die schnelle und lokale Lese- und Schreibleistung für massiv skalierte globale Anwendungen bietet.

Globale Tabellen bieten eine vollständig verwaltete Lösung für die Bereitstellung einer multiregionalen, multiaktiven Datenbank, ohne dass eine eigene Replikationslösung erstellt und gepflegt werden muss. Sie können die AWS Regionen angeben, in denen die Tabellen verfügbar sein sollen, und DynamoDB leitet laufende Datenänderungen an alle diese Bereiche weiter.

Vorteile von globalen Tabellen sind unter anderem:

  • Automatisches Replizieren Ihrer DynamoDB-Tabellen in Regionen Ihrer Wahl AWS

  • Entfallen des Aufwands, Daten zwischen Regionen zu replizieren und Aktualisierungskonflikte zu lösen, sodass Sie sich auf die Geschäftslogik Ihrer Anwendung konzentrieren können

  • Unterstützen, dass Ihre Anwendungen hochverfügbar bleiben, sogar im unwahrscheinlichen Fall, dass eine gesamte Region isoliert oder beeinträchtigt wird

Globale DynamoDB-Tabellen sind ideal für Anwendungen mit weltweit verteilten Benutzern und extremen Kapazitätsspitzen. In einer solchen Umgebung erwarten die Benutzer eine sehr schnelle Anwendungsleistung. Globale Tabellen ermöglichen eine automatische multiaktive Replikation in Regionen auf der ganzen Welt. AWS Daher können Sie Ihren Benutzern einen schnellen Datenzugriff mit niedriger Latenz bieten, unabhängig davon, wo sie sich befinden.

Das folgende Video gibt Ihnen einen einführenden Einblick in globale Tabellen.

Sie können globale Tabellen in der AWS Management Console oder AWS CLI einrichten. Globale Tabellen verwenden vorhandene DynamoDB-APIs, sodass keine Anwendungsänderungen erforderlich sind. Sie zahlen nur für die Ressourcen, die bereitgestellt wurden, ohne Vorauszahlungen oder Verpflichtungen.

Nahtloses Replizieren von Daten über Regionen hinweg mit globalen Tabellen

Angenommen, Sie haben einen großen Kundenstamm, der sich über drei geografische Gebiete erstreckt: die USA-Ostküste, die USA-Westküste und Westeuropa. Kunden können ihre Profildaten über Ihre Anwendung aktualisieren. Für diesen Anwendungsfall müssen Sie drei identische DynamoDB-Tabellen namens CustomerProfiles in drei unterschiedlichen AWS -Regionen erstellen, in denen sich die Kunden befinden. Diese drei Tabellen sind vollständig voneinander getrennt. Änderungen an den Daten in einer Tabelle wirken sich nicht auf die anderen Tabellen aus. Ohne eine verwaltete Replikationslösung müssten Sie Code schreiben, um Datenänderungen zu replizieren. Dies würde jedoch einen hohen Zeit- und Arbeitsaufwand erfordern.

Anstatt Ihren eigenen Code zu schreiben, können Sie eine globale Tabelle mit Ihren drei regionsspezifischen CustomerProfiles-Tabellen erstellen. DynamoDB repliziert Datenänderungen zwischen den Tabellen dann automatisch, sodass Änderungen an CustomerProfiles-Daten in einer Region nahtlos für die anderen Regionen übernommen werden. Sollte eine der AWS Regionen vorübergehend nicht verfügbar sein, könnten Ihre Kunden außerdem weiterhin auf dieselben CustomerProfiles Daten in den anderen Regionen zugreifen.

Anmerkung
  • Regionale Unterstützung für globale Globale Tabellen Version 2017.11.29 (veraltet)-Tabellen ist auf USA Ost (Nord-Virginia), USA Ost (Ohio), USA West (Nordkalifornien), USA West (Oregon), Europa (Irland), Europa (London), Europa (Frankfurt), Asien-Pazifik (Singapur), Asien-Pazifik (Sydney), Asien-Pazifik (Tokio) und Asien-Pazifik (Seoul) beschränkt.

  • Transaktionale Operationen umfassen ACID (Atomizität, Consistency [Konsistenz], Isolierung und Durability [Zuverlässigkeit]) nur in der Region, in der die Schreiboperation ursprünglich durchgeführt wurde. Regionenübergreifende Transaktionen werden in globalen Tabellen nicht unterstützt. Wenn Sie beispielsweise über eine globale Tabelle mit Replikaten in den Regionen USA Ost (Ohio) und USA West (Oregon) verfügen und einen TransactWriteItems Vorgang in der Region USA Ost (Nord-Virginia) ausführen, können Sie beobachten, wie teilweise abgeschlossene Transaktionen in der Region USA West (Oregon) repliziert werden. Die Änderungen werden erst in die anderen Regionen repliziert, nachdem sie in der Quellregion in die Datenbank eingetragen wurden.

  • Wenn Sie eine AWS Region deaktivieren, entfernt DynamoDB dieses Replikat 20 Stunden, nachdem festgestellt wurde, dass auf die AWS Region nicht zugegriffen werden kann, aus der Replikationsgruppe. Das Replikat wird nicht gelöscht, und die Replikation von und zu dieser Region wird angehalten.

  • Sie müssen 24 Stunden ab dem Zeitpunkt warten, an dem Sie ein Lesereplikat hinzufügen, um eine Quelltabelle erfolgreich zu löschen. Wenn Sie versuchen, eine Tabelle in den ersten 24 Stunden nach dem Hinzufügen eines Lesereplikats zu löschen, erhalten Sie eine Fehlermeldung mit dem Hinweis: „Das Replikat kann nicht gelöscht werden, da es als Quellregion für neue Replikate fungiert hat, die der Tabelle in den letzten 24 Stunden hinzugefügt wurden“.

  • Das Hinzufügen neuer Replikate hat keine Auswirkungen auf die Leistung der Quellregionen.

  • Wenn Sie die Lese- und Schreibkapazität eines Replikats ändern, wird die neue Schreibkapazität auf andere synchronisierte Replikate übertragen, die neue Lesekapazität jedoch nicht.

Informationen zur Verfügbarkeit und zu den Preisen in der AWS Region finden Sie unter Amazon DynamoDB DynamoDB-Preise.

Sorgen Sie für Sicherheit und Zugriff auf Ihre globalen Tabellen mit AWS KMS

  • Sie können AWS KMS Operationen an Ihren globalen Tabellen ausführen, indem Sie die AWSServiceRoleForDynamoDBReplication dienstbezogene Rolle für den vom Kunden verwalteten Schlüssel oder den zum Verschlüsseln des Von AWS verwalteter SchlüsselReplikats verwendeten Schlüssel verwenden.

  • Wenn der kundenverwaltete Schlüssel, der zum Verschlüsseln eines Replikats verwendet wird, nicht zugänglich ist, entfernt DynamoDB dieses Replikat aus der Replikationsgruppe. Das Replikat wird nicht gelöscht, und die Replikation von und zu dieser Region wird 20 Stunden nach der Erkennung des KMS-Schlüssels als nicht zugänglich beendet.

  • Wenn Sie Ihren kundenverwalteten Schlüssel, der zum Verschlüsseln einer Replikattabelle verwendet wird, deaktivieren wollen, dürfen Sie dies nur tun, wenn der Schlüssel nicht mehr zum Verschlüsseln einer Replikattabelle verwendet wird. Nachdem Sie einen Befehl zum Löschen einer Replikattabelle ausgegeben haben, müssen Sie warten, bis der Löschvorgang abgeschlossen ist und die globale Tabelle Active ist, bevor Sie den Schlüssel deaktivieren. Dies kann zu einer teilweisen Datenreplikation von und in die Replikattabelle führen.

  • Wenn Sie die IAM-Rollenrichtlinie für die Replikattabelle ändern oder löschen möchten, müssen Sie dies tun, wenn die Replikattabelle im Active-Zustand ist. Wenn Sie dies nicht tun, kann das Erstellen, Aktualisieren oder Löschen der Replikattabelle fehlschlagen.

  • Globale Tabellen werden standardmäßig mit deaktiviertem Löschschutz erstellt. Selbst wenn der Löschschutz für eine globale Tabelle aktiviert ist, werden alle Replikate dieser Tabelle standardmäßig mit deaktiviertem Löschschutz gestartet.

  • Wenn der Löschschutz für eine Tabelle deaktiviert ist, kann die Tabelle versehentlich gelöscht werden. Wenn der Löschschutz für eine Tabelle aktiviert ist, kann die Tabelle nicht gelöscht werden.

  • Wenn Sie die Löschschutzeinstellung für eine Replikattabelle ändern, werden andere Replikate in der Gruppe nicht aktualisiert.

Anmerkung

Vom Kunden verwaltete Schlüssel werden in Globale Tabellen Version 2017.11.29 (veraltet) nicht unterstützt. Wenn Sie einen vom Kunden verwalteten Schlüssel in einer DynamoDB Global Table verwenden möchten, müssen Sie die Tabelle auf Global Tables Version 2019.11.21 (Aktuell) aktualisieren und sie dann aktivieren.