Überspringen zum Hauptinhalt

Amazon DynamoDB

Was sind globale Tabellen?

Globale Tabellen von DynamoDB ist eine vollständig verwaltete, multiregionale und multiaktive Serverless-Datenbank. Globale Tabellen bieten Ihnen eine Verfügbarkeit von bis zu 99,999 %, eine erhöhte Anwendungsstabilität und eine verbesserte Geschäftskontinuität. Da globale Tabellen Ihre Tabellen automatisch in den von Ihnen ausgewählten AWS-Regionen replizieren, können Sie eine schnelle, lokale Lese- und Schreibleistung erzielen.

Wenn Ihre Anwendungsverarbeitung in einer Region unterbrochen wird, ist kein Datenbank-Failover erforderlich, da die multiaktive Architektur der globalen Tabellen es Kunden ermöglicht, in jede Replikattabelle zu lesen und zu schreiben. Mit globalen Tabellen entfällt auch die schwierige Aufgabe, Aktualisierungskonflikte für Workloads mit mehreren Regionen zu lösen.

Globale Tabellen unterstützen sowohl den Modus „Stark“ als auch „Schließlich“ für die Konsistenz über mehrere Regionen hinweg. Die starke Konsistenz über mehrere Regionen hinweg bietet Ihnen ein Höchstmaß an Anwendungsausfallsicherheit und gewährleistet, dass die Anwendungen Ihrer Kunden stets verfügbar sind und jederzeit die aktuellsten Daten aus jeder beliebigen Region abrufen können. Sie können jetzt Anwendungen mit einem Wiederherstellungsziel von Null erstellen. Mit der regionenübergreifenden schließlichen Konsistenz können Sie Replikate innerhalb eines einzelnen AWS-Kontos oder über mehrere AWS-Konten hinweg erstellen. 

Funktionsweise

Eine globale DynamoDB-Tabelle besteht aus mehreren Replikattabellen. Jede Replikattabelle befindet sich in einer anderen Region, aber alle Replikate teilen sich dasselbe Primärschlüsselschema. Wenn Daten in eine Replikattabelle geschrieben werden, repliziert DynamoDB diese Daten automatisch in alle anderen Replikattabellen in der globalen Tabelle.

Nehmen wir zum Beispiel an, dass Ihre Anwendung einen großen Kundenstamm hat, der sich über drei geografische Gebiete verteilt – die Ostküste der USA, Kanada und Westeuropa. Ohne globale Tabellen müssten Sie in jeder AWS-Region eine Tabelle erstellen und Code schreiben, um Datenänderungen in jeder Tabelle in jeder Region zu replizieren.

Mit globalen Tabellen können Sie eine globale Tabelle mit einer Replikattabelle in den drei Regionen erstellen, die jedem geografischen Gebiet am nächsten liegen. DynamoDB repliziert automatisch Änderungen von jedem Replikat auf die Replikate in den anderen Regionen.

Globale Tabellen ermöglichen den Benutzern Ihrer Anwendung den Zugriff auf die Daten mit geringer Latenz, unabhängig davon, wo sie sich befinden. Wenn Ihre Anwendungsverarbeitung in einer Region unterbrochen wird, können Ihre Kunden weiterhin auf die Replikattabellen in den anderen Regionen zugreifen.

Beim Erstellen einer globalen Tabelle können Sie zwischen starker Konsistenz und schließlicher Konsistenz wählen. Eine globale Tabelle, die für starke Konsistenz über mehrere Regionen hinweg konfiguriert ist, ermöglicht es, einen strikt konsistenten Lesevorgang über mehrere Regionen hinweg durchzuführen. Die Standardeinstellung ist schließliche Konsistenz für mehrere Regionen.

Bei globalen Tabellen, die im Modus für schließliche Konsistenz über mehrere Regionen hinweg konfiguriert sind, können Sie Replikate innerhalb eines einzelnen AWS-Kontos oder über mehrere AWS-Konten hinweg erstellen. Globale Tabellen mit mehreren Konten replizieren automatisch Tabellen über mehrere Konten und Regionen hinweg und bieten so eine verbesserte Stabilität, Sicherheit und Governance. Sie eignen sich ideal für Kunden, die Strategien für mehrere Konten verfolgen oder AWS Organizations verwenden, um die Sicherheitsisolierung zu verbessern, Datenperimeter-Integritätsschutz durchzusetzen, Notfallwiederherstellung zu implementieren oder Workloads nach Geschäftsbereichen zu trennen.

Der Einstieg in globale Tabellen ist einfach, da dieselben DynamoDB-APIs wie Tabellen mit einzelnen Regionen verwendet werden. Es gibt keine Vorlaufkosten oder Verpflichtungen für die Nutzung von globalen Tabellen, und Sie bezahlen nur für die genutzten Ressourcen. Sie können globale Tabellen in der AWS-Managementkonsole mit der AWS CLI oder mit AWS CloudFormation konfigurieren. Es ist auch einfach, Ihre Einzel-Regionstabelle in globale Tabellen umzuwandeln.

Missing alt text value

Vorteile globaler Tabellen

    Globale Tabellen sind für eine Verfügbarkeit von 99,999 % konzipiert. Wenn eine einzelne Region isoliert oder degradiert wird, kann Ihre Anwendung Datenverkehr in eine andere Region umleiten und Lese- und Schreibvorgänge in einer andere Replikattabelle durchführen. Sie können benutzerdefinierte Geschäftslogik anwenden, um zu bestimmen, wann Anfragen an andere Regionen weitergeleitet werden sollen. Darüber hinaus liest Ihre Anwendung im starken Konsistenzmodus für mehrere Regionen immer die neuesten Daten aus jeder Region.

    Globale Tabellen reduzieren die Komplexität und den betrieblichen Aufwand, der mit der Bereitstellung und Verwaltung einer multiaktiven, regionsübergreifenden Replikation in DynamoDB verbunden ist. Sie können die Regionen auswählen, in denen Ihre Daten repliziert werden müssen – DynamoDB kümmert sich um den Rest. Sie können für die Replikation zwischen Tabellenreplikaten in verschiedenen Regionen entweder schließliche Konsistenz oder starke Konsistenz wählen. Dank der starken Konsistenz in mehreren Regionen müssen Sie sich während des Failover-Vorgangs keine Gedanken über Datenkonsistenz oder Datenwiederherstellung machen.

    Sie können auch wählen, ob Sie Replikate innerhalb eines einzelnen AWS-Kontos oder über mehrere AWS-Konten hinweg erstellen möchten. Mit globalen Tabellen für mehrere Konten können Sie kontoübergreifende Anwendungen erstellen, um eine stärkere Isolierung, mehr Sicherheit und eine bessere Governance sowie eine höhere Betriebsausfallsicherheit zu gewährleisten – in Übereinstimmung mit dem AWS-Well-Architected-Framework. Anwendungen greifen durch Nutzung der bestehenden DynamoDB-APIs und -Endpunkte auf globale Tabellen zu.

    Globale Tabellen sind jetzt sowohl für starke Konsistenz als auch für schließliche Konsistenz konfigurierbar. Eine starke Konsistenz garantiert, dass strikt konsistente Lesevorgänge den letzten Schreibvorgang widerspiegeln, während es bei einer schließlichen Konsistenz eine kurze Zeit dauert, bis alle Replikate das neueste Update wiedergeben, im Austausch für lokale Lese- und Schreibvorgänge mit niedrigerer Latenz.

    Im Modus für starke Konsistenz über mehrere Regionen hinweg stellt DynamoDB sicher, dass ein erfolgreich bestätigter Schreibvorgang auf einer beliebigen Replik in einer beliebigen Region sofort für Lesevorgänge von jeder anderen Replik aus verfügbar ist. Sollte ein Schreibvorgang ein Element ändern, das gerade in einer anderen Region geändert wird, würde dieser Schreibvorgang mit einer wiederholbaren Ausnahme fehlschlagen.

    Im Modus der schließlichen Konsistenz über mehrere Regionen hinweg repliziert DynamoDB einen Schreibvorgang, der an einer beliebigen Replik in einer beliebigen Region erfolgt, an alle anderen Repliken, in der Regel innerhalb von ein bis zwei Sekunden. Wird dasselbe Element in mehreren Regionen geändert, löst DynamoDB den Konflikt nach dem Prinzip „Last-Writer-Wins“ auf.

    Mit globalen Tabellen können Sie Ihre Daten lokal lesen und schreiben und eine Latenzzeit im einstelligen Millisekundenbereich für Ihre global verteilten Anwendungen in beliebigem Umfang bereitstellen. Dies kann die Leistung für massiv skalierte globale Anwendungen steigern.