Verteilte Abfragen in Aurora PostgreSQL Limitless Database - Amazon Aurora

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.

Verteilte Abfragen in Aurora PostgreSQL Limitless Database

Verteilte Abfragen werden auf einem Router und mehr als einem Shard ausgeführt. Die Anfrage wird von einem der Router empfangen. Der Router erstellt und verwaltet die verteilte Transaktion, die dann an die teilnehmenden Shards gesendet wird. Die Shards erstellen eine lokale Transaktion mit dem vom Router bereitgestellten Kontext, und die Abfrage wird ausgeführt.

Wenn die Transaktion übermittelt wird, verwendet der Router bei Bedarf ein optimiertes zweiphasiges Commit-Protokoll und einen zeitbasierten MVCC-Mechanismus (Multi Version Concurrency Control), um die ACID-Semantik in einem verteilten Datenbanksystem bereitzustellen.

Zeitbasiertes MVCC zeichnet den Commit-Zeitpunkt für jede Transaktion auf und verwendet die Startzeit der Transaktion, um den Daten-Snapshot-Zeitpunkt zu generieren. Um anhand eines Reader-Snapshots festzustellen, ob eine Transaktion übermittelt (sichtbar) ist, vergleicht die Datenbank den Commit-Zeitpunkt der Transaktion mit dem Snapshot-Zeitpunkt. Wenn der Commit-Zeitpunkt vor dem Reader-Snapshot-Zeitpunkt liegt, ist die Transaktion sichtbar, andernfalls ist sie unsichtbar. Im Rahmen dieses Protokolls können Sie in der Aurora PostgreSQL Limitless Database immer hoch konsistente Daten erwarten.