Une requête distribue une table de faits sur une clé très peu variée. Quels problèmes peuvent apparaître dans un moteur distribué ?
- Une ou plusieurs partitions peuvent recevoir une quantité disproportionnée de données Bonne réponse
- Le temps d'exécution peut être déterminé par la partition la plus lente Bonne réponse
- Il faut analyser la cardinalité et le profil des données avant de choisir la clé Bonne réponse
- Une clé de faible cardinalité garantit toujours le meilleur parallélisme
Notion : Déséquilibre de distribution, ou skew, dans un moteur distribué.
Explication : Une clé peu variée peut concentrer une quantité disproportionnée de données dans certaines partitions. Ces partitions traitent alors davantage de travail et peuvent devenir des goulots d’étranglement. Le temps total d’exécution peut dépendre de la partition la plus lente, même si les autres terminent rapidement. Il faut donc analyser la cardinalité, la répartition des valeurs et les jointures fréquentes avant de choisir une clé de distribution.
À retenir : Un bon parallélisme exige une répartition adaptée des données et du travail.
Piège fréquent : Croire qu’une faible cardinalité garantit une distribution efficace ; elle peut au contraire limiter l’utilisation équilibrée des ressources.