sql >> Base de Datos >  >> RDS >> PostgreSQL

Cómo administrar transacciones en múltiples bases de datos

Tanto Cassandra como PostgreSQL admiten linealización y comparación y configuración (CAS), por lo que puede implementar transacciones en el lado del cliente.

Si desea un nivel de aislamiento serializable, debería echar un vistazo a las transacciones de Percolator . Las transacciones de Percolator son bastante conocidas en la industria y se han utilizado en Amazon Biblioteca de transacciones de DynamoDB , en la base de datos CockroachDB y en el propio sistema Pecolator de Google. Una visualización paso a paso de las transacciones del Percolator puede ayudarte a entenderlo.

Si espera contención y puede lidiar con el nivel de aislamiento de lectura confirmada, entonces transacciones RAMP por Peter Bailis puede ser adecuado para usted. También creé una visualización RAMP paso a paso .

El tercer enfoque consiste en utilizar transacciones de compensación, también conocidas como patrón de saga. Fue descrito a finales de los 80 en las Sagas papel, pero se hizo más actual con el surgimiento de los sistemas distribuidos. Consulte Aplicación del patrón Saga habla para inspirarte.