La programmation fonctionnelle est une porte d'entrée mais les techniques de map/reduce n'y sont pas si présentes. La compréhension du fonctionnel va surtout habituer à penser en terme de données non mutables et en programmes purement calculatoire.
Dans l'idée, on peut implémenter du map reduce dans n'importe quel langage de programmation. Son intérêt devient manifeste en multi-threading et programmation distribuée. Je pense en particuliers au langages qui possèdent des implémentations du modèle BSP (bulk synchronous parallelism) où l'on se restreindrait aux seules opérations de map et de réduction. Je pense qu'en comprenant bien le modèle BSP (qui est bien documenté), comprendre le map/reduce est rapide .
Pinguet62 a écrit:
assez complexe dans la théorie qu'il y a derrière
Sur ce point, on peut modérer pas mal. C'est probablement une des technos de parallélisme qui est les moins velues sur le plan théorique. Pour le coup, les généralisations de BSP sont bien pires. Ce qu'il faut juste comprendre c'est que pour avoir de bonne propriétés sur les programmes en map/reduce, la fonction de map doit être pure vis à vis des données globales et la réduction doit être associative. Donc c'est raisonnable.
Les problèmes d'implémentation efficace de ce paradigme en distribué, elles par contre, sont assez complexes.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Posez vos questions ou discutez informatique, sur le Discord NaN | Tuto : Preuve de programmes C