Vidéo: Comment utiliser le composant Hadoop de Stambia pour gérer vos projets Big Data 2024
Pour la plupart de l'histoire de Hadoop, MapReduce est le seul jeu en ville en matière de traitement de données. La disponibilité de MapReduce a été la raison du succès de Hadoop et en même temps un facteur majeur dans la limitation de l'adoption.
MapReduce permet aux programmeurs expérimentés d'écrire des applications distribuées sans avoir à s'inquiéter de l'infrastructure informatique distribuée sous-jacente. C'est un très gros problème: Hadoop et l'infrastructure MapReduce gèrent toutes les sortes de complexité que les développeurs d'applications n'ont pas besoin de gérer.
Par exemple, la possibilité d'étendre le cluster de manière transparente en ajoutant des nœuds et le basculement automatique des sous-systèmes de stockage et de traitement des données n'a aucun impact sur les applications.
L'autre côté de la médaille ici est que bien que MapReduce cache une énorme quantité de complexité, vous ne pouvez pas vous permettre d'oublier ce que c'est: une interface pour la programmation parallèle. Ceci est une compétence avancée - et un obstacle à une adoption plus large. Il n'y a tout simplement pas encore beaucoup de programmeurs MapReduce, et tout le monde n'a pas les compétences pour le maîtriser.
Dans les débuts de Hadoop (Hadoop 1 et avant), vous ne pouviez exécuter que des applications MapReduce sur vos clusters. Dans Hadoop 2, le composant YARN a tout changé en prenant en charge la gestion des ressources et la planification à partir du framework MapReduce, et en fournissant une interface générique pour faciliter l'exécution des applications sur un cluster Hadoop.
En bref, cela signifie que MapReduce est maintenant l'un des nombreux frameworks d'application que vous pouvez utiliser pour développer et exécuter des applications sur Hadoop. Bien qu'il soit certainement possible d'exécuter des applications en utilisant d'autres frameworks sur Hadoop, cela ne signifie pas que nous pouvons commencer à oublier MapReduce.
MapReduce est actuellement le seul framework de traitement de données prêt pour la production disponible pour Hadoop. Bien que d'autres cadres deviendront éventuellement disponibles, MapReduce a presque une décennie de maturité à son actif (avec près de 4 000 problèmes JIRA complétés, impliquant des centaines de développeurs, si vous gardez la trace).
Il n'y a pas de contestation: MapReduce est le framework le plus mature de Hadoop pour le traitement des données. En outre, une quantité importante de code MapReduce est maintenant utilisée, et il est peu probable qu'elle soit diffusée rapidement. Longue histoire courte: MapReduce est une partie importante de l'histoire de Hadoop.
Les projets Apache Hive et Apache Pig sont très populaires car ils constituent des points d'entrée plus faciles pour le traitement des données sur Hadoop. Pour de nombreux problèmes, en particulier ceux que vous pouvez résoudre avec SQL, Hive et Pig sont d'excellents outils.Mais pour une tâche plus vaste telle que le traitement statistique ou l'extraction de texte, et en particulier pour le traitement de données non structurées, vous devez utiliser MapReduce.