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
Time-based MVCC zeichnet die Commit-Zeit für jede Transaktion auf und verwendet die Transaktionsstartzeit, um die Daten-Snapshot-Zeit 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.