ACID describes what you get from a transactional database: all-or-nothing execution, valid state before and after, isolation from concurrent transactions, and durability after commit. Together they keep data consistent and predictable.
| Letter | Meaning | In practice |
|---|---|---|
| Atomicity | All or nothing | If any step fails, entire transaction is rolled back |
| Consistency | Invariants hold | DB constraints (FK, unique, checks) hold after commit |
| Isolation | Concurrent txns isolated | Controlled by isolation level (see next topic) |
| Durability | Commit is permanent | Once committed, data persists despite crash |
NoSQL stores often relax ACID (e.g. eventual consistency, single-document transactions) to gain scale. When you need multi-row or multi-document consistency, choose a store that supports ACID or use patterns like Saga with compensating actions.