Transactions

8. Transactions#

When updating our DB system, we need to consider two main features: Concurrency Control:

  • Many users query and update a database simultaneously.

  • How do we avoid confusion / incorrect state?

Recovery:

  • What happens when things fail?

  • Many such failure modes: Cancel modification partway, app failure, DB engine failure, HW failure…

To understand these features, we need to introduce the concept of transactions.