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).