এমন একটি key দিয়ে shard করুন যা প্রায় প্রতিটি query-তে উপস্থিত এবং load সমানভাবে ছড়ায় — সাধারণত একটি hashed user_id — তারপর প্রথম দিন থেকে resharding ও cross-shard query-এর পরিকল্পনা করুন। ১০০ কোটি ইউজার একটি node-এ আঁটবে না বা perform করবে না; আপনি row-গুলোকে অনেক database জুড়ে split করেন এবং প্রতিটি query-কে যে shard এটির মালিক তাতে রুট করেন।
┌──────────────┐
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
