Skip to content
About
Main content

Cross-AZ charges and placement

Why does a shuffle across zones cost money, and where should independence be bought?

Cross-AZ → placement

A shuffle is all-to-all, so workers spread evenly over three send about two-thirds of the shuffle bytes across a charged boundary. (A sender's data is split three ways; only the third that stays in its own zone is free.)

The resolution everyone reaches is to split the availability requirement in two: replicate the data across zones, but put the compute in one zone. This works because the two failures differ in recoverability. Lost data is unrecoverable. A lost stateless computation is only a re-run.

This gives a useful refinement of the idea that independence is always purchased:

Direct evidence that pricing causes features: rack-aware and follower-fetch read paths (reading from a nearby replica instead of the leader) exist in systems whose was already adequate.