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à.
Aurora DSQL e PostgreSQL
Aurora DSQL è un database relazionale distribuito compatibile con PostgreSQL progettato per carichi di lavoro transazionali. Aurora DSQL utilizza componenti di base di PostgreSQL come parser, planner, optimizer e type system.
Il design di Aurora DSQL garantisce che tutta la sintassi PostgreSQL supportata fornisca un comportamento compatibile e produca risultati di query identici. Ad esempio, Aurora DSQL fornisce conversioni di tipo, operazioni aritmetiche e precisione e scalabilità numeriche identiche a PostgreSQL. Eventuali deviazioni sono documentate.
Aurora DSQL introduce anche funzionalità avanzate come il controllo ottimistico della concorrenza e la gestione distribuita dello schema. Con queste funzionalità, puoi utilizzare gli strumenti familiari di PostgreSQL beneficiando al contempo delle prestazioni e della scalabilità richieste per applicazioni distribuite moderne, native del cloud.
Aspetti salienti della compatibilità con PostgreSQL
Aurora DSQL è attualmente basato sulla versione 16 di PostgreSQL. Le principali compatibilità includono quanto segue:
- Protocollo Wire
-
Aurora DSQL utilizza il protocollo cablato PostgreSQL v3 standard. Ciò consente l'integrazione con client, driver e strumenti PostgreSQL standard. Ad esempio, Aurora DSQL è compatibile con
psql
,pgjdbc
e.psycopg
- Compatibilità SQL
-
Aurora DSQL supporta un'ampia gamma di espressioni e funzioni PostgreSQL standard comunemente utilizzate nei carichi di lavoro transazionali. Le espressioni SQL supportate producono risultati identici a PostgreSQL, tra cui:
-
Gestione dei valori nulli
-
Comportamento dell'ordinamento
-
Scala e precisione per le operazioni numeriche
-
Equivalenza per le operazioni sulle stringhe
Per ulteriori informazioni, consulta Compatibilità delle funzionalità SQL in Aurora DSQL.
-
- Gestione delle transazioni
-
Aurora DSQL conserva le caratteristiche principali di PostgreSQL, come le transazioni ACID e un livello di isolamento equivalente a PostgreSQL Repeatable Read. Per ulteriori informazioni, consulta Controllo della concorrenza in Aurora DSQL.
Principali differenze architettoniche
Il design distribuito e senza condivisione di Aurora DSQL presenta alcune differenze fondamentali rispetto a PostgreSQL tradizionale. Queste differenze sono parte integrante dell'architettura Aurora DSQL e offrono molti vantaggi in termini di prestazioni e scalabilità. Le differenze principali includono quanto segue:
- Controllo ottimistico della concorrenza (OCC)
-
Aurora DSQL utilizza un modello ottimistico di controllo della concorrenza. Questo approccio senza blocchi impedisce alle transazioni di bloccarsi a vicenda, elimina i deadlock e consente l'esecuzione parallela ad alto throughput. Queste funzionalità rendono Aurora DSQL particolarmente utile per le applicazioni che richiedono prestazioni costanti su larga scala. Per ulteriori esempi, vedere. Controllo della concorrenza in Aurora DSQL
- Operazioni DDL asincrone
-
Aurora DSQL esegue le operazioni DDL in modo asincrono, il che consente letture e scritture ininterrotte durante le modifiche allo schema. La sua architettura distribuita consente ad Aurora DSQL di eseguire le seguenti azioni:
-
Esegui le operazioni DDL come attività in background, riducendo al minimo le interruzioni.
-
Coordina le modifiche al catalogo come transazioni distribuite fortemente coerenti. Ciò garantisce la visibilità atomica su tutti i nodi, anche in caso di guasti o operazioni simultanee.
-
Operate in modo completamente distribuito e senza leader su più zone di disponibilità con livelli di elaborazione e storage disaccoppiati.
Per ulteriori informazioni, consulta DDL e transazioni distribuite in Aurora DSQL.
-