Vidéo: vidéo 5 : Présentation MapReduce, intégration dans hadoop 2024
YARN, pour ceux qui viennent d'arriver à cette fête, représente Yet Another Resource Negotiator, un outil qui permet à d'autres frameworks de traitement de données de fonctionner sur Hadoop. La gloire de YARN est de présenter à Hadoop une solution élégante à un certain nombre de défis de longue date.
YARN est conçu pour fournir une planification de la charge de travail plus efficace et plus souple ainsi qu'une fonction de gestion des ressources, ce qui permettra à Hadoop d'exécuter plus que des tâches MapReduce.
La figure montre en termes généraux comment YARN s'intègre dans Hadoop et montre clairement comment Hadoop est devenu une plate-forme véritablement universelle pour le traitement des données. La liste suivante donne les paroles de la mélodie:
-
Stockage distribué: Rien n'a changé ici avec le passage de MapReduce à YARN - HDFS est toujours la couche de stockage pour Hadoop.
-
Gestion des ressources: Le concept sous-jacent clé dans le passage à YARN de Hadoop 1 est le découplage de la gestion des ressources du traitement des données. Cela permet à YARN de fournir des ressources à tout framework de traitement écrit pour Hadoop, y compris MapReduce.
-
Cadre de traitement: Parce que YARN est un outil de gestion des ressources à usage général, il peut allouer des ressources de cluster à n'importe quel framework de traitement de données écrit pour Hadoop. L'infrastructure de traitement gère ensuite les problèmes d'exécution de l'application.
Pour maintenir la compatibilité de tout le code développé pour Hadoop 1, MapReduce est le premier framework disponible sur YARN. Au moment de la rédaction de ce document, le projet Apache Tez était un projet d'incubateur en cours de développement en tant que cadre alternatif pour l'exécution des applications Pig and Hive. Tez apparaîtra probablement comme une configuration Hadoop standard.
-
Interface de programmation d'application (API): Avec la prise en charge de frameworks de traitement supplémentaires, la prise en charge d'API supplémentaires viendra. Au moment d'écrire ces lignes, Hoya (pour exécuter HBase sur YARN), Apache Giraph (pour le traitement graphique), Open MPI (pour le passage de messages dans des systèmes parallèles), Apache Storm (pour le traitement de flux de données) sont en développement actif.