PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come gestire le transazioni su più database

Sia Cassandra che PostgreSQL supportano la linearizzabilità e il confronto e l'impostazione (CAS), quindi puoi implementare le transazioni sul lato client.

Se desideri un livello di isolamento serializzabile, dai un'occhiata alle Transazioni del percolatore . Le transazioni del Percolator sono abbastanza note nel settore e sono state utilizzate nel di Amazon di Amazon Libreria di transazioni DynamoDB , nel database CockroachDB e nello stesso sistema Pecolator di Google. Una visualizzazione passo passo delle transazioni del Percolatore può aiutarti a capirlo.

Se prevedi contese e sei in grado di gestire il livello di isolamento Read Committed, allora Transazioni RAMP di Peter Bailis potrebbe essere adatto a te. Ho anche creato una visualizzazione RAMP passo dopo passo .

Il terzo approccio consiste nell'utilizzare transazioni compensative note anche come modello saga. È stato descritto alla fine degli anni '80 nelle Sagas carta ma è diventato più attuale con l'aumento dei sistemi distribuiti. Consulta Applicazione del modello Saga parla per trovare ispirazione.