Facebook lets your friends' data be a second old. Never yours.
transcript
Facebook lets your friends' data be a second out of date. Your own data? Never. And that's a deliberate design.
TAO is Facebook's store for social data. About a billion reads a second, per its 2013 paper. Writes go to MySQL, the source of truth. Reads come from caches. Other caches hear about a write asynchronously. Typically under a second behind. Not a hard bound.
Make every read strongly consistent? Every read pays for coordination. A billion times a second. Make everything eventual? You update your profile, refresh, and see the old one. Then you think: did my update even work? Users lose trust.
So TAO tracks one thing. Which cache tier sent the write? Your tier gets the write's changeset straight back. So your reads there see it. Other tiers catch up asynchronously. Fast, and maybe a second old.
You'd notice your own post missing right after you posted it. You won't notice a friend's post being one second late.
Different consistency for different access patterns. Pay for freshness where users would notice. Nowhere else.
Full breakdown in the lecture.