Serializable Snapshot Isolation

Database concurrency control exhibits a spectrum. On one end, we have serializable isolation that eliminates all race conditions at the cost of performance and scale, while at the other end of the extreme we have weaker forms of isolation that suffer from race conditions but perform and scale well. A compromise between the two extremes exists called Serializable Snapshot Isolation (SSI). This algorithm offers complete serializability while minimizing performance penalty compared to simple snapshot isolation. SSI uses a consistent snapshot for reads and adds intelligence on top to detect writes that violate serializable isolation and abort such transactions.

Get hands-on with 1200+ tech skills courses.