Uber Redesigns M3DB Sharding with Subclusters to Limit Failure Impact
Uber reworked M3DB's shard placement by grouping nodes into fixed-size subclusters, each owning a disjoint shard range, to bound the blast radius of node failures. A greedy shard‑move algorithm (O(S log S) + O(S×N)) handles scaling while preserving existing placement tooling.


