Aurora DSQL und PostgreSQL - Amazon Aurora DSQL

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.

Aurora DSQL und PostgreSQL

Aurora DSQL ist eine PostgreSQL-kompatible, verteilte relationale Datenbank, die für transaktionale Workloads entwickelt wurde. Aurora DSQL verwendet zentrale PostgreSQL-Komponenten wie den Parser, den Planer, den Optimierer und das Typsystem.

Das Aurora DSQL-Design stellt sicher, dass die gesamte unterstützte PostgreSQL-Syntax kompatibles Verhalten bietet und identische Abfrageergebnisse liefert. Aurora DSQL bietet beispielsweise Typkonvertierungen, arithmetische Operationen sowie numerische Präzision und Skalierung, die mit PostgreSQL identisch sind. Alle Abweichungen werden dokumentiert.

Aurora DSQL bietet auch erweiterte Funktionen wie optimistische Parallelitätssteuerung und verteiltes Schema-Management. Mit diesen Funktionen können Sie die vertrauten Tools von PostgreSQL verwenden und gleichzeitig von der Leistung und Skalierbarkeit profitieren, die für moderne, cloudnative, verteilte Anwendungen erforderlich sind.

Höhepunkte der PostgreSQL-Kompatibilität

Aurora DSQL basiert derzeit auf PostgreSQL Version 16. Zu den wichtigsten Kompatibilitäten gehören die folgenden:

Wire-Protokoll

Aurora DSQL verwendet das standardmäßige PostgreSQL v3-Wire-Protokoll. Dies ermöglicht die Integration mit standardmäßigen PostgreSQL-Clients, -Treibern und -Tools. Aurora DSQL ist beispielsweise kompatibel mit psqlpgjdbc, undpsycopg.

SQL-Kompatibilität

Aurora DSQL unterstützt eine Vielzahl von Standard-PostgreSQL-Ausdrücken und -Funktionen, die häufig in transaktionalen Workloads verwendet werden. Unterstützte SQL-Ausdrücke liefern identische Ergebnisse wie PostgreSQL, einschließlich der folgenden:

  • Umgang mit Nullen

  • Verhalten bei der Sortierreihenfolge

  • Skalierung und Präzision für numerische Operationen

  • Äquivalenz für Zeichenkettenoperationen

Weitere Informationen finden Sie unter Kompatibilität der SQL-Funktionen in Aurora DSQL.

Verwaltung von Transaktionen

Aurora DSQL behält die Hauptmerkmale von PostgreSQL bei, wie z. B. ACID-Transaktionen und eine Isolationsstufe, die PostgreSQL Repeatable Read entspricht. Weitere Informationen finden Sie unter Parallelitätssteuerung in Aurora DSQL.

Die wichtigsten architektonischen Unterschiede

Das verteilte Shared-Nothing-Design von Aurora DSQL führt zu einigen grundlegenden Unterschieden gegenüber herkömmlichem PostgreSQL. Diese Unterschiede sind integraler Bestandteil der Aurora DSQL-Architektur und bieten viele Leistungs- und Skalierbarkeitsvorteile. Zu den wichtigsten Unterschieden gehören die folgenden:

Optimistische Parallelitätskontrolle (OCC)

Aurora DSQL verwendet ein optimistisches Parallelitätskontrollmodell. Dieser Ansatz ohne Sperren verhindert, dass sich Transaktionen gegenseitig blockieren, beseitigt Deadlocks und ermöglicht eine parallel Ausführung mit hohem Durchsatz. Diese Funktionen machen Aurora DSQL besonders wertvoll für Anwendungen, die eine konsistente Leistung in großem Maßstab erfordern. Weitere Beispiele finden Sie unterParallelitätssteuerung in Aurora DSQL.

Asynchrone DDL-Operationen

Aurora DSQL führt DDL-Operationen asynchron aus, was unterbrechungsfreie Lese- und Schreibvorgänge bei Schemaänderungen ermöglicht. Dank seiner verteilten Architektur kann Aurora DSQL die folgenden Aktionen ausführen:

  • Führen Sie DDL-Operationen als Hintergrundaufgaben aus, um Unterbrechungen zu minimieren.

  • Koordinieren Sie Katalogänderungen als stark konsistente verteilte Transaktionen. Dadurch wird die atomare Transparenz über alle Knoten hinweg gewährleistet, selbst bei Ausfällen oder gleichzeitigen Vorgängen.

  • Arbeiten Sie vollständig verteilt und ohne Führung in mehreren Availability Zones mit entkoppelten Rechen- und Speicherebenen.

Weitere Informationen finden Sie unter DDL und verteilte Transaktionen in Aurora DSQL.