Bonjour,
En effet, les jointures sont à éviter.
Pour simplifier, si tu dis jointure, tu dis : "Aller chercher dans n serveurs tous les éléments qui ont pour clef A.CODE_ARTICLE = B.CODE_ARTICLE"
Le problème, est que rien ne dit que les données auront un index sur ce code article – il est possible, parfois selon les solutions, d'un faire générer un –,
et que si jamais il n'y a pas d'index, c'est une recherche séquentielle qui débuterait,
et une recherche séquentielle en Big Data équivaut à mort par épuisement du programme.
Et même si les index sont là, une jointure fera interroger :
"Serveur 1, donne-moi tous tes éléments avec CODE_ARTICLE = <ceci>"
"Serveur 2, donne-moi tous tes éléments avec CODE_ARTICLE = <ceci>"
"Serveur 3, donne-moi tous tes éléments avec CODE_ARTICLE = <ceci>"
"Serveur 4, donne-moi tous tes éléments avec CODE_ARTICLE = <ceci>"
et moi, je les rassemble.
On essaie d'éviter cela.
Mais c'est vrai qu'après ça, avec Pig par exemple, finalement,
on finit par donner des ordres qui provoquent cela, pour exploiter (=> requêter) ses données.
Partager