Le mode de fonctionnement interne
1. Les stages et les shuffles Stage
Nous avons vu le concept de distribution d’une manière générale, la façon dont Spark a choisi de l’implanter ainsi que les différents modes d’exécution.
À présent, intéressons-nous à des concepts touchant au mode de fonctionnement interne du framework. Il y a quelques grandes lignes à connaître qui permettent d’éviter des bogues et des surprises.
L’outil découpe les traitements en stages (étapes). Un stage est le terme officiel pour désigner une unité dans laquelle Spark lance un lot de tâches. Les tâches sont elles-mêmes répliquées pour parvenir au calcul distribué dont notre outil est maître.
Les stages se suivent, déroulant les lots de tâches parallélisées.
Les stages
Différentes transformations sont regroupées dans un même stage. Plus exactement, ce qui se retrouve dans ces lots, ce sont des transformations étroites, plus communément appelées narrow transformations. Cela signifie qu’il s’agit de traitements ayant la capacité d’être réalisés de manière indépendante sur leur partition sans avoir besoin d’autres données. Ils sont autonomes.
Dans Spark, il y a aussi des transformations larges. Le terme ici officiellement employé est wide transformations. Ces processus...