Deconstructing Transactional Systems: A Four-Step Dance and Endless Possibilities

2025-04-20

This article delves into the core components of transactional systems: execution, ordering, validation, and persistence. The order and concurrency of these four steps determine a database's characteristics. Using FoundationDB, Spanner, TAPIR, Calvin, and CURP as examples, the article analyzes how different database systems cleverly orchestrate these four steps to achieve various performance and consistency trade-offs. The author also lists all possible step combinations, offering endless inspiration for building novel transactional systems.

Read more