ACID: four promises, one word
Atomicity: a transaction's writes are all-or-nothing. If it aborts mid-way, every partial write is rolled back — the database looks as if the transaction never ran.
Consistency: a transaction takes the database from one valid state to another. "Valid" is defined by application-level constraints (foreign keys, check constraints) — not the database engine itself.
Isolation: concurrent transactions see a consistent view of the database. The exact definition of "consistent" is parameterized by the isolation level (the subject of most of this lesson).
Durability: once a transaction commits, its effects survive crashes. This is what WAL and fsync are for — after the log record hits durable storage, the commit is permanent.
The tricky one is Isolation. Atomicity and Durability are binary; Isolation is a spectrum.
