Retour à la leçon
Mission

Mission : revoir une stratégie de sharding qui casse toutes les jointures

Diagnostiquer une clé de sharding mal choisie qui sépare des données jointes, et raisonner sur le resharding et les transactions distribuées.

Contexte

La plateforme SaaS a shardé commandes par id de commande et lignes_commande par id de ligne, chacun réparti avec un simple hash(id) % nb_shards. Depuis, chaque page "détail de commande" (qui joint commandes et lignes_commande) est devenue extrêmement lente, et l'équipe infra redoute d'ajouter un troisième shard car elle sait que cela va redéplacer une grande partie des données existantes.