Table des matières
Les trois composants principaux de Hadoop sont HDFS (stockage de fichiers distribués), MapReduce (informatique distribuée) et YARN (planification des ressources).
Maison Problème commun Quelles sont les trois composantes principales de HADOOP ?

Quelles sont les trois composantes principales de HADOOP ?

Jan 04, 2024 am 10:52 AM
hadoop 核心组件

Les trois composants principaux de HADOOP sont HDFS, MapReduce et YARN. Introduction détaillée : 1. HDFS : système de fichiers distribué, utilisé pour stocker de grandes quantités de données dans des clusters Hadoop. Il a une tolérance aux pannes élevée, peut stocker des données sur plusieurs nœuds de données et fournit un accès aux données à haut débit ; 2. MapReduce : utilisé pour le traitement parallèle d'ensembles de données à grande échelle ; Il décompose les tâches Big Data en plusieurs petites tâches, les traite en parallèle sur plusieurs nœuds et résume enfin les résultats 3. YARN : Responsable de l'allocation et de la gestion des ressources du cluster ;

Quelles sont les trois composantes principales de HADOOP ?

Les trois composants principaux de Hadoop sont HDFS (stockage de fichiers distribués), MapReduce (informatique distribuée) et YARN (planification des ressources).

1. HDFS : HADOOP Distributed File System

HDFS (Hadoop Distributed File System) est le sous-projet principal du projet Hadoop. Il est principalement responsable du stockage et de la lecture des données du cluster. esclave (Maître/Esclave) ) ​​pour les systèmes de fichiers distribués. HDFS prend en charge une structure d'organisation de fichiers hiérarchique traditionnelle, dans laquelle les utilisateurs ou les applications peuvent créer des répertoires, puis stocker des fichiers dans ces répertoires. La structure hiérarchique de l'espace de noms du système de fichiers est similaire à celle de la plupart des systèmes de fichiers existants, et les fichiers peuvent être créés, lus, mis à jour et supprimés via des chemins de fichiers. Cependant, en raison de la nature du stockage distribué, il est évidemment différent des systèmes de fichiers traditionnels.

Avantages HDFS :

  • Haute tolérance aux pannes. Les données téléchargées par HDFS enregistrent automatiquement plusieurs copies et sa tolérance aux pannes peut être augmentée en ajoutant des données dans les copies. Si une réplique est perdue, HDFS répliquera la réplique sur l'autre machine et nous n'aurons pas à nous soucier de sa mise en œuvre.
  • Convient au traitement du Big Data. HDFS est capable de gérer des gigaoctets, des téraoctets et même des pétaoctets de données, allant jusqu'à des millions, ce qui est très volumineux. (1 Po = 1 024 To, 1 To = 1 014 Go)
  • Accès aux données en streaming. HDFS utilise un modèle d'accès aux données en streaming pour stocker des fichiers très volumineux, en écrivant une fois et en lisant plusieurs fois. Autrement dit, une fois qu'un fichier est écrit, il ne peut pas être modifié, mais peut seulement être ajouté. Cela maintient la cohérence des données.

2. MapReduce : Traitement de données à grande échelle

MapReduce est le cadre informatique de base de Hadoop. Il s'agit d'un modèle de programmation adapté aux opérations parallèles d'ensembles de données à grande échelle (supérieurs à 1 To), y compris Map (cartographie). ) et Réduire (réduction).

Lorsqu'une tâche MapReduce est démarrée, le côté Carte lira les données sur HDFS, mappera les données dans le type de paire clé-valeur requis et les transférera vers le côté Réduire. Le côté Réduire reçoit les données de type paire clé-valeur transmises par le côté Carte, les regroupe selon différentes clés, traite chaque groupe de données avec la même clé, obtient de nouvelles paires clé-valeur et les envoie à HDFS. C'est le noyau. idée de MapReduce.

Un processus MapReduce complet comprend la saisie et le partage des données, le traitement des données de l'étape Map, le traitement des données de l'étape Réduire, la sortie des données et d'autres étapes :

  • Lire les données d'entrée. Les données du processus MapReduce sont lues à partir du système de fichiers distribué HDFS. Lorsqu'un fichier est téléchargé sur HDFS, il est généralement divisé en plusieurs blocs de données selon 128 Mo, donc lors de l'exécution du programme MapReduce, chaque bloc de données générera une carte, mais vous pouvez également ajuster le nombre de cartes en réinitialisant la taille du fragment de fichier. . Lors de l'exécution de MapReduce, le fichier sera re-divisé (Split) en fonction de la taille de fragment définie, et un bloc de données de la taille du fragment correspondra à une carte.
  • Étape de la carte. Le programme dispose d'une ou plusieurs cartes, déterminées par le nombre par défaut de stockage ou de fragments. Pour l'étape Map, les données sont lues sous forme de paires clé-valeur. La valeur de la clé est généralement le décalage entre le premier caractère de chaque ligne et la position initiale du fichier, c'est-à-dire le nombre de caractères intermédiaires. , et la valeur est l'enregistrement de données de cette ligne. Traitez les paires clé-valeur en fonction des exigences, mappez-les dans de nouvelles paires clé-valeur et transmettez les nouvelles paires clé-valeur du côté Réduire.
  • Phase Shuffle/Tri : Cette phase fait référence au processus consistant à démarrer à partir de la sortie Map et à transférer la sortie Map vers Réduire en tant qu'entrée. Ce processus intégrera d'abord les données de sortie avec la même clé dans la même carte pour réduire la quantité de données transmises, puis triera les données en fonction de la clé après intégration.
  • Étape de réduction : il peut également y avoir plusieurs tâches de réduction, qui sont déterminées en fonction de la partition de données définie dans l'étape Map. Une donnée de partition est traitée par une seule réduction. Pour chaque tâche Réduire, Réduire recevra les données de différentes tâches Map, et les données de chaque Map sont en ordre. Chaque traitement dans une tâche de réduction consiste à réduire les données pour toutes les données avec la même clé et à les afficher sur HDFS en tant que nouvelle paire clé-valeur.

3. Yarn : Resource Manager

L'architecture MapReduce de Hadoop s'appelle YARN (Yet Another Resource Négociateur, un autre coordinateur de ressources), qui est au cœur d'une gestion plus efficace des ressources.

YARN comprend principalement trois modules principaux : Resource Manager (RM), Node Manager (NM) et Application Master (AM) :

  • Resource Manager est responsable de la surveillance, de l'allocation et de la gestion de toutes les ressources ; est responsable de chaque planification spécifique et de la coordination des applications ;
  • Node Manager est responsable de la maintenance de chaque nœud ;

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Erreurs Java : erreurs Hadoop, comment les gérer et les éviter Erreurs Java : erreurs Hadoop, comment les gérer et les éviter Jun 24, 2023 pm 01:06 PM

Erreurs Java : erreurs Hadoop, comment les gérer et les éviter Lorsque vous utilisez Hadoop pour traiter des données volumineuses, vous rencontrez souvent des erreurs d'exception Java, qui peuvent affecter l'exécution des tâches et provoquer l'échec du traitement des données. Cet article présentera quelques erreurs Hadoop courantes et fournira des moyens de les gérer et de les éviter. Java.lang.OutOfMemoryErrorOutOfMemoryError est une erreur provoquée par une mémoire insuffisante de la machine virtuelle Java. Quand Hadoop est

Nouvelle œuvre de Yan Shuicheng/Cheng Mingming ! La formation DiT, le composant principal de Sora, est accélérée 10 fois et Masked Diffusion Transformer V2 est open source Nouvelle œuvre de Yan Shuicheng/Cheng Mingming ! La formation DiT, le composant principal de Sora, est accélérée 10 fois et Masked Diffusion Transformer V2 est open source Mar 13, 2024 pm 05:58 PM

En tant que l'une des technologies de base les plus convaincantes de Sora, DiT utilise DiffusionTransformer pour étendre le modèle génératif à une plus grande échelle, obtenant ainsi d'excellents effets de génération d'images. Cependant, des modèles de plus grande taille font monter en flèche les coûts de formation. L'équipe de recherche de Yan Shuicheng et Cheng Mingming de SeaAILab, de l'Université de Nankai et de l'Institut de recherche Kunlun Wanwei 2050 a proposé un nouveau modèle appelé MaskedDiffusionTransformer lors de la conférence ICCV2023. Ce modèle utilise la technologie de modélisation de masques pour accélérer la formation de DiffusionTransfomer en apprenant les informations de représentation sémantique, et obtient des résultats SoTA dans le domaine de la génération d'images. celui-ci

Utilisation de Hadoop et HBase dans Beego pour le stockage et les requêtes Big Data Utilisation de Hadoop et HBase dans Beego pour le stockage et les requêtes Big Data Jun 22, 2023 am 10:21 AM

Avec l'avènement de l'ère du Big Data, le traitement et le stockage des données sont devenus de plus en plus importants, et la gestion et l'analyse efficaces de grandes quantités de données sont devenues un défi pour les entreprises. Hadoop et HBase, deux projets de la Fondation Apache, proposent une solution de stockage et d'analyse du Big Data. Cet article explique comment utiliser Hadoop et HBase dans Beego pour le stockage et les requêtes Big Data. 1. Introduction à Hadoop et HBase Hadoop est un système informatique et de stockage distribué open source qui peut

Comment utiliser PHP et Hadoop pour le traitement du Big Data Comment utiliser PHP et Hadoop pour le traitement du Big Data Jun 19, 2023 pm 02:24 PM

Alors que la quantité de données continue d’augmenter, les méthodes traditionnelles de traitement des données ne peuvent plus relever les défis posés par l’ère du Big Data. Hadoop est un cadre informatique distribué open source qui résout le problème de goulot d'étranglement des performances causé par les serveurs à nœud unique dans le traitement du Big Data grâce au stockage distribué et au traitement de grandes quantités de données. PHP est un langage de script largement utilisé dans le développement Web et présente les avantages d'un développement rapide et d'une maintenance facile. Cet article explique comment utiliser PHP et Hadoop pour le traitement du Big Data. Qu'est-ce que HadoopHadoop ?

Analyse complète des composants et fonctions de base de la plate-forme technologique Java Analyse complète des composants et fonctions de base de la plate-forme technologique Java Jan 09, 2024 pm 08:01 PM

Une analyse approfondie des composants et fonctions de base de la plate-forme technologique Java. La technologie Java est largement utilisée dans de nombreux domaines et est devenue un langage de programmation et une plate-forme de développement courants. La plate-forme technologique Java se compose d'une série de composants et de fonctions de base qui fournissent aux développeurs une multitude d'outils et de ressources, rendant le développement Java plus efficace et plus pratique. Cet article fournira une analyse approfondie des composants et fonctions de base de la plate-forme technologique Java, et explorera son importance et ses scénarios d'application dans le développement de logiciels. Premièrement, la machine virtuelle Java (JVM) est Java

Explorez l'application de Java dans le domaine du big data : compréhension de Hadoop, Spark, Kafka et d'autres piles technologiques Explorez l'application de Java dans le domaine du big data : compréhension de Hadoop, Spark, Kafka et d'autres piles technologiques Dec 26, 2023 pm 02:57 PM

Pile technologique Java Big Data : Comprendre l'application de Java dans le domaine du Big Data, comme Hadoop, Spark, Kafka, etc. Alors que la quantité de données continue d'augmenter, la technologie Big Data est devenue un sujet brûlant à l'ère d'Internet d'aujourd'hui. Dans le domaine du big data, on entend souvent les noms de Hadoop, Spark, Kafka et d’autres technologies. Ces technologies jouent un rôle essentiel et Java, en tant que langage de programmation largement utilisé, joue également un rôle majeur dans le domaine du Big Data. Cet article se concentrera sur l'application de Java en général

Comment installer Hadoop sous Linux Comment installer Hadoop sous Linux May 18, 2023 pm 08:19 PM

1 : Installez JDK1. Exécutez la commande suivante pour télécharger le package d'installation de JDK1.8. wget--no-check-certificatehttps://repo.huaweicloud.com/java/jdk/8u151-b12/jdk-8u151-linux-x64.tar.gz2 Exécutez la commande suivante pour décompresser le package d'installation JDK1.8 téléchargé. . tar-zxvfjdk-8u151-linux-x64.tar.gz3 Déplacez et renommez le package JDK. mvjdk1.8.0_151//usr/java84. Configurez les variables d'environnement Java. écho'

Utiliser PHP pour réaliser des traitements de données à grande échelle : Hadoop, Spark, Flink, etc. Utiliser PHP pour réaliser des traitements de données à grande échelle : Hadoop, Spark, Flink, etc. May 11, 2023 pm 04:13 PM

Alors que la quantité de données continue d’augmenter, le traitement des données à grande échelle est devenu un problème auquel les entreprises doivent faire face et résoudre. Les bases de données relationnelles traditionnelles ne peuvent plus répondre à cette demande pour le stockage et l'analyse de données à grande échelle, les plateformes informatiques distribuées telles que Hadoop, Spark et Flink sont devenues les meilleurs choix. Dans le processus de sélection des outils de traitement de données, PHP devient de plus en plus populaire parmi les développeurs en tant que langage facile à développer et à maintenir. Dans cet article, nous explorerons comment exploiter PHP pour le traitement de données à grande échelle et comment