Comparison
Data freshnessvsEventual consistency
Data freshness
the dashboard renders perfectly and every number on it is from Thursday.
How old the data behind an output is, measured from the source event rather than from the last successful run. It is the metric that catches the failure mode nothing else catches: a pipeline that succeeds while producing nothing. Measuring it at the point of consumption rather than at the pipeline is what makes it honest, because every intermediate success is compatible with a stale answer.
Full entry →Eventual consistency
you write to one node, read from another a moment later, get the old value, and it is correct a second after that.
A guarantee that replicas converge if writes stop, with no bound stated on how long that takes. It is what asynchronous replication gives you, and it is fine for most read paths. It is not fine anywhere a user reads back their own write, which is why read-your-writes is usually bolted on top rather than assumed.
Full entry →