Follower reads with dynamic leadership

DesignHard50 minGoogle style

Your task

A globally-distributed SQL database places each table-range's Raft leader in one region. A particular workload reads a hot, mostly-static reference range from all 6 regions but the range's leader is in us-east, so eu and ap readers pay a cross-region round-trip for every consistent read, and if us-east blips, leadership thrashes. The team wants (a) low-latency consistent reads from every region for this range and (b) to relocate leadership automatically toward wherever the write traffic actually is, without leadership flapping. Design the leadership + read strategy. Address how a follower can serve a consistent (not stale) read locally, and how you make leader placement adaptive without oscillation.

It covers

  • Multi leader
  • Geo leadership
  • Follower reads