Fă sharding după o cheie care este prezentă în aproape fiecare interogare și distribuie încărcarea uniform — de obicei un user_id hash-uit — apoi planifică resharding-ul și interogările cross-shard din prima zi. 1B de utilizatori nu vor încăpea și nu vor performa pe un singur nod; împarți rândurile pe multe baze de date și rutezi fiecare interogare către shard-ul care o deține.
┌──────────────┐
Request ─▶ Router/│ shard_of(key)│─▶ Shard 0 (users 0–…)
Proxy └──────────────┘ Shard 1
(Vitess) │ Shard 2
└─────────▶ Shard N ← each = its own primary+replicas
Directory/lookup table (which key → which shard) ── for range or resharding
