Time. Whenever working with a system with transactions, then understanding time, and in particular, getting time “right” is a critical requirement. This becomes even more critical when working with multiple servers; we need to know the ordering of events to ensure data consistency.