Your typical clock synchronization protocol like NTP provides a timestamp, but it can't guarantee that event A truly happened before event B if they occurred on different machines. Spanner's TrueTime solves this by providing time as an interval, not a point, ensuring global serializability even across continents.
When your distributed system relies on timestamps from different servers, you're building on shaky ground. Imagine a global e-commerce platform where a user tries to buy the last item in stock. Two concurrent requests hit two different servers in different data centers. Server A logs a purchase at T1, and Server B logs another purchase for the same item at T2. If T1 and T2 are derived from unsynchronized local clocks, T1 might appear older than T2 on one server, but T2 could appear older than T1 on another, leading to double-selling the last item. Without a strong global time guarantee, enforcing strict "first-come, first-served" is impossible without resorting to expensive, global consensus protocols for every read and write, which bottlenecks performance.
TrueTime: Bounding Clock Uncertainty
Google Spanner's TrueTime isn't just a highly accurate clock; it's a guaranteed time interval. Instead of giving you a single timestamp, TrueTime provides a time interval [earliest, latest], representing the window in which the current absolute time definitely lies. This uncertainty interval is typically small, often under 10 milliseconds globally.






