AWS Germany – Amazon Web Services in Deutschland

Einführung von Amazon Aurora DSQL

Relationale Datenbanken sind ein leistungsstarker und flexibler Baustein für eine Vielzahl von Anwendungen und Diensten – von Microservices und Websites bis hin zu Mobile-Backends und SaaS-Anwendungen. Vor zehn Jahren haben wir Amazon Aurora eingeführt und bieten damit eine beispiellose Leistung und Verfügbarkeit mit voller MySQL- und PostgreSQL-Kompatibilität zu einem Zehntel der Kosten kommerzieller Datenbanken. Unsere Kunden haben uns wissen lassen, dass sie sich eine relationale Datenbank wünschen, die noch einfacher zu verwalten ist, sich an ihre Arbeitslasten anpasst und es erleichtert, hochverfügbare Multi-Region- und Multi-AZ-Architekturen aufzubauen.

Heute stellen wir Amazon Aurora DSQL vor, die schnellste, serverlose, verteilte SQL-Datenbank für ständig verfügbare Anwendungen. Sie bietet nahezu unbegrenzte Skalierbarkeit, höchste Verfügbarkeit ohne Infrastrukturverwaltung. Sie kann sich an jede Arbeitslast anpassen, ohne Datenbank-Sharding oder Instanz-Upgrades. Mit ihrer innovativen active-active verteilten Architektur ist Aurora DSQL für 99,99% Verfügbarkeit in einer Single-Region-Konfiguration und 99,999% in einer Multi-Region-Konfiguration ausgelegt, was sie ideal für den Aufbau hochverfügbarer Anwendungen macht. Ihr serverloses Design eliminiert den operativen Aufwand für Patching, Upgrades, Wartungsausfallzeiten und mehr. Aurora DSQL bietet auch eine einfache Nutzungserfahrung, beginnend mit der schnellen Datenbankerstellung in wenigen Schritten. Aurora DSQL ist PostgreSQL-kompatibel und ermöglicht es Ihnen Anwendungen schnell zu erstellen und bereitzustellen, indem sie bekannte relationale Datenbankkonzepte sowie die Treiber, Tools und Frameworks verwenden, die sie bereits kennen.

In diesem Beitrag besprechen wir die Vorteile von Amazon Aurora DSQL und wie man in diese Technologie einsteigen kann.

Amazon Aurora DSQL Architektur und Vorteile

Amazon Aurora DSQL ist für zwei Konfigurationen konzipiert: eine Single-Region-Konfiguration, die Komponentenausfälle oder Störungen in der Verfügbarkeitszone (AZ) ohne Ausfallzeiten bewältigt, und eine Multi-Region-Konfiguration, die mehrere AZ-Ausfälle bewältigt und Ihnen die volle Kontrolle darüber gibt, wo Ihre Daten verarbeitet und gespeichert werden. Die einzigartige disaggregierte active-active Architektur eliminiert Ausfallzeiten aufgrund von Failover oder Switchover und macht es einfach, hohe Verfügbarkeit der damit verbundenen Anwendungen und somit Geschäftskontinuität zu gewährleisten.

Amazon Aurora DSQL bietet Single-Region-Cluster, die aktiv-aktiv über drei AZs verteilt sind, wodurch Replikationsverzögerungen und traditionelle Datenbank-Failover-Operationen minimiert werden. Im Falle von Hardware- oder Infrastrukturausfällen leitet es Anfragen automatisch an intakte Infrastruktur um. Manuelles Eingreifen ist nicht nötig. Transaktionen in Amazon Aurora DSQL bieten alle ACID-Eigenschaften (Atomarität, Konsistenz, Isolation und Dauerhaftigkeit), selbst über mehrere Regionen hinweg, mit minimaler Latenz. Neben einer starken Snapshot-Isolation bietet Amazon Aurora DSQL auch starke Datenkonsistenz für Lese- und Schreibvorgänge auf Cluster-Endpunkte.

Das folgende Diagramm veranschaulicht die hochverfügbare Cluster-Topologie von Amazon Aurora DSQL in einer Single-Region-Bereitstellung.

In einer Single-Region-Konfiguration überträgt Amazon Aurora DSQL alle Schreibtransaktionen an ein verteiltes Transaktionsprotokoll und repliziert alle bestätigten Protokolldaten synchron auf Benutzerspeicher-Replikate in drei AZs. Cluster-Speicher-Replikate werden über eine Speicherflotte verteilt, um eine optimale Datenbankleistung zu erzielen. Amazon Aurora DSQL ist für eine automatisierte Failover-Wiederherstellung konzipiert. Wenn eine Komponente oder AZ beeinträchtigt wird, leitet es den Zugriff automatisch auf gesunde Komponenten um und repariert die Replikate asynchron. Sobald die beeinträchtigten Replikate wiederhergestellt sind, fügt Amazon Aurora DSQL sie automatisch wieder dem Speicherquorum hinzu und macht sie für Ihren Cluster verfügbar.

Amazon Aurora DSQL bietet 99,999% Multi-Region-Verfügbarkeit für Anwendungen, die höchste Ausfallsicherheit benötigen.

Multi-Region-Cluster bieten die gleiche Ausfallsicherheit und Konnektivität wie Single-Region-Cluster, verbessern aber die Verfügbarkeit durch zwei regionale Endpunkte, einen für jede verknüpfte Cluster-Region. Beide Endpunkte eines verknüpften Clusters präsentieren eine einzige logische Datenbank und unterstützen gleichzeitige Lese- und Schreiboperationen mit starker Datenkonsistenz. Dies ermöglicht es Ihnen, Anwendungen und Verbindungen für geografische Standorte, Leistung oder Ausfallsicherheit auszugleichen und sicherzustellen, dass Leser konsistent die gleichen Daten sehen.

Das folgende Diagramm veranschaulicht die Architektur einer Anwendung, die einen Amazon Aurora DSQL Multi-Region-Cluster verwendet.

Wenn Sie einen Multi-Region-Cluster erstellen, erstellt Amazon Aurora DSQL einen weiteren Cluster in einer anderen Region und verknüpft sie miteinander. Das Hinzufügen verknüpfter Regionen stellt sicher, dass alle Änderungen aus bestätigten Transaktionen in die anderen verknüpften Regionen repliziert werden. Jeder verknüpfte Cluster hat einen regionalen Endpunkt, und Amazon Aurora DSQL repliziert Schreibvorgänge synchron über Regionen hinweg, was stark konsistente Lese- und Schreibvorgänge von jedem verknüpften Cluster aus ermöglicht.

Eine dritte Region fungiert als Zeugen-Region (witness Region). Die Zeugen-Region empfängt die Daten, die in verknüpfte Cluster geschrieben werden, hat aber keinen Cluster oder zugehörigen Endpunkt. Sie speichert ein begrenztes Fenster verschlüsselter Transaktionsprotokolle, die Amazon Aurora DSQL verwendet, um Multi-Region-Dauerhaftigkeit und -Verfügbarkeit zu gewährleisten.

Weitere Amazon Aurora DSQL Funktionen

Amazon Aurora DSQL bietet nahezu unbegrenzte Skalierbarkeit, um jeder Arbeitslastanforderung gerecht zu werden. Die Abfrageverarbeitungsschicht, Commit-Schicht und Speicherschicht skalieren unabhängig voneinander und passen sich Arbeitslasten jeder Form an, einschließlich unterschiedlicher Lese-/Schreibverhältnisse, Datengrößen und Abfragekomplexitäten. Dies bedeutet, dass Sie sich auf das nächste große Ding konzentrieren können, anstatt sich Sorgen um die Aufrechterhaltung der Datenbankleistung zu machen, selbst wenn ein wachsendes Geschäft mehr Kapazität erfordert.

Sie können schnell neue Cluster mit einem einzigen API-Aufruf erstellen und innerhalb von Minuten eine PostgreSQL-kompatible Datenbank verwenden. Es werden viele gängige PostgreSQL-Treiber und -Tools sowie grundlegende relationale Funktionen wie ACID-Transaktionen, SQL-Abfragen, Sekundärindizes, Joins, Einfügungen und Aktualisierungen unterstützt.

Amazon Aurora DSQL verbessert auch Ihre Sicherheitslage mit einfachen deklarativen Datenschutz- und Sicherheitskontrollen und vollständiger Integration mit AWS Identity and Access Management (IAM) und AWS CloudTrail. Es blockiert die standardmäßige passwortbasierte Benutzerauthentifizierung, ohne die Kompatibilität mit dem PostgreSQL-Wire-Protokoll [EN, EXTERN] zu beeinträchtigen. Es unterstützt die tokenbasierte Authentifizierung mit IAM, mit Hilfsfunktionen in der AWS Command Line Interface (AWS CLI) und dem AWS SDK für die Token-Generierung.

Im Gegensatz zu herkömmlichen Datenbanken verwendet Amazon Aurora DSQL eine optimistische Nebenläufigkeitskontrolle (OCC) anstelle eines traditionellen Sperransatzes. Mit zunehmender Skalierung stellt OCC sicher, dass Ihre längeren Transaktionen andere laufende Transaktionen nicht verlangsamen.

Fazit

Amazon Aurora DSQL erleichtert den Aufbau widerstandsfähiger Anwendungen mit starker Konsistenz, um den wachsenden regulatorischen Herausforderungen gerecht zu werden, ohne sich Sorgen um Anwendungsausfallzeiten oder Datenverlust machen zu müssen. Mit seinen innovativen Funktionen können Sie Ihren Ansatz für Datenverwaltung und Anwendungsskalierbarkeit transformieren.

Jetzt in der Vorschau verfügbar, können Sie aus erster Hand erleben, wie einfach der Einstieg ist. Gehen Sie zur Aurora DSQL-Konsole oder verwenden Sie die AWS CLI oder das AWS SDK für programmatischen Zugriff.

Um mehr zu erfahren, besuchen Sie Amazon Aurora DSQL-Übersichtsseite oder lesen Sie unser umfassendes Benutzerhandbuch für detaillierte Informationen.

Über die Autoren

Raluca Constantin ist Senior Database Engineer im AWS-Team für verteilte SQL-Datenbanken.
Arun Sankaranarayanan ist ein auf Datenbanken spezialisierter Lösungsarchitekt mit Sitz in London, Großbritannien.