A transaction is an indivisible logical unit of work in a database management system, allowing you to represent multiple operations as a single step. Operations executed by transactions include reading and writing database records. A database transaction has to preserve atomicity, consistency, isolation, and durability [this].
ACID definition in DDIA notes.
Components in transactions
⮑ Transaction manager
Coordinates, schedules, and tracks transactions.
⮑ Lock manager
Prevents concurrent access to data.
⮑ Page cache
Intermediary between persistent storage (disk) and storage engine (see “Buffer management”).
⮑ Log manager
Stores history of all operations on cached pages that haven’t been scyned to persistent storage so it isn’t lost (WAL - write ahead log).