top | item 31761268

(no title)

fizwhiz | 3 years ago

From earlier in the article:

> Clock skew across different sensors: Sensors might be located across different datacenters, computers, and networks, so their clocks might not be synchronized to the millisecond.

And later on in their final solution

> Implementation4 cons: Producers and consumers must have synchronized clocks (up to a certain resolution)

How do they reconcile this skew in their final solution?

discuss

order

dikei|3 years ago

It's simple, and the same in all implementations: `Wait some amount of time to allow related events to arrive`.

For implementations 4, I suppose it's done by reading only data point with `insert_time < NOW() - some_delays`.

I think the requirement `Producers and consumers must have synchronized clocks (up to a certain resolution)` is simply so that there's no unnecessary lag between producers and consumers.

fizwhiz|3 years ago

Can you walk me through how waiting some amount of time actually improves their guarantee? It's not like they're using Google's TrueTime api that provides bounds on time. How is "unnecessary lag" avoided between Producers & Consumers?