Lesson 6 of 81981–19958 min
Transactions, ACID and isolation
Move 300 euros from account A to account B and the database must do two writes: subtract from A, add to B. If the power fails between them, 300 euros have vanished. If another program reads the balances between them, it sees money that is in neither account.
Jim Gray set out the transaction concept in 1981, and in 1983 Theo Haerder and Andreas Reuter gave its four guarantees the acronym that stuck: ACID. Gray received the Turing Award in 1998 for this work on transactions.
The rest of this lesson is part of Pro
Create a free account to read the first lesson of every path, and go Pro for the rest.
Sources
- Principles of Transaction-Oriented Database Recovery (T. Haerder and A. Reuter, ACM Computing Surveys 15(4), 1983) — ACM Digital Library
- A Critique of ANSI SQL Isolation Levels (H. Berenson et al., SIGMOD 1995) — arXiv
- PostgreSQL documentation: Transaction Isolation — PostgreSQL Global Development Group
- PostgreSQL tutorial: Transactions — PostgreSQL Global Development Group