Databases & Data Storage

Transaction Isolation

Definition

Transaction isolation is one of the four key properties of a database transaction (as part of ACID). It determines how and when changes made by one transaction become visible to others. Higher isolation levels prevent more concurrency issues, but can reduce performance.

Why It Matters

Choosing the correct isolation level is a critical trade-off between performance and data consistency. A higher level of isolation provides stronger guarantees but may require more locking, reducing concurrency.

Contextual Example

The SQL standard defines four isolation levels: `READ UNCOMMITTED`, `READ COMMITTED`, `REPEATABLE READ`, and `SERIALIZABLE`. `SERIALIZABLE` is the highest level, making transactions appear as if they were executed one after another, but it also has the highest performance cost.

Common Misunderstandings

  • Isolation is what prevents concurrency issues like dirty reads, non-repeatable reads, and phantom reads.
  • The default isolation level varies between different database systems (e.g., `READ COMMITTED` is common).

Related Terms

Last Updated: December 17, 2025