Query distribuite in Aurora PostgreSQL Limitless Database - Amazon Aurora

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Query distribuite in Aurora PostgreSQL Limitless Database

Le query distribuite vengono eseguite su un router e su più di uno shard. La query viene ricevuta da uno dei router. Il router crea e gestisce la transazione distribuita, che viene inviata agli shard partecipanti. Gli shard creano una transazione locale con il contesto fornito dal router e la query viene eseguita.

Quando la transazione viene sottoposta al commit, il router utilizza un protocollo di commit a due fasi ottimizzato, se necessario, e il controllo della concorrenza multiversione (MVCC) basato sul tempo per fornire la semantica ACID in un sistema di database distribuito.

MVCC basato sul tempo registra l’ora di commit per ogni transazione e utilizza l’ora di inizio della transazione per generare l’ora dello snapshot dei dati. Per identificare se una transazione è stata sottoposta al commit (visibile) in base allo snapshot di un’istanza di lettura, il database confronta il tempo di commit con il tempo dello snapshot. Se il tempo di commit è inferiore al tempo di snapshot dell’istanza di lettura, è visibile; in caso contrario, è invisibile. Con questo protocollo, ci si aspetterà sempre di vedere dati fortemente coerenti su Aurora PostgreSQL Limitless Database.