what is hadoop apache hadoop tutorial
Ce didacticiel Apache Hadoop pour les débutants explique tout sur Big Data Hadoop, ses fonctionnalités, son cadre et son architecture en détail:
quels sont les bons sites pour regarder l'anime
Dans le tutoriel précédent, nous avons abordé le Big Data en détail. Maintenant, la question est de savoir comment gérer et traiter un tel volume de données avec des résultats fiables et précis.
Il existe en effet une excellente solution fournie par Apache et alimentée par Java i.e. Cadre Hadoop .
=> Lisez la série de formations Easy BigData.
Ce que vous apprendrez:
Qu'est-ce que Hadoop?
Apache Hadoop est un framework open-source pour gérer tous les types de données (structurées, non structurées et semi-structurées).
Comme nous le savons tous, si nous voulons traiter, stocker et gérer nos données, le SGBDR est la meilleure solution. Mais, les données doivent être dans un format structuré pour les gérer avec le SGBDR. De plus, si la taille des données augmente, le SGBDR n'est pas capable de les gérer et nous devons régulièrement nettoyer la base de données.
Cela peut entraîner une perte de données historiques et ne peut pas générer de résultats précis et fiables dans certains secteurs tels que les prévisions météorologiques, les banques, les assurances, les ventes, etc. Un autre problème avec le SGBDR est que si le serveur principal tombe en panne, nous pouvons perdre notre important données et souffrir beaucoup.
Dans ce tutoriel, nous verrons comment résoudre ces problèmes avec Apache Hadoop.
Hadoop est un système de fichiers distribué et peut stocker de gros volumes de données (données en pétaoctet et téraoctet). La vitesse de traitement des données est également très rapide et fournit des résultats fiables grâce à un système de tolérance aux pannes très élevé.
Hadoop est un cadre de programmation open source basé sur Java qui prend en charge le stockage et le traitement de grands ensembles de données dans un environnement informatique distribué.
Hadoop est basé sur un concept de cluster utilisant du matériel de base. Il ne nécessite aucune configuration complexe et nous pouvons établir l'environnement Hadoop avec du matériel de configuration moins cher, simple et léger.
Le concept de cluster en termes simples est les données qui sont stockées au format de réplication sur plusieurs machines de sorte que lorsqu'un problème ou une catastrophe se produit sur l'un des emplacements où résident les données, il doit y avoir une copie en double de ces données disponible en toute sécurité sur un autre emplacement .
Hadoop contre RDMBS
Vous trouverez ci-dessous quelques points qui décrivent les avantages de Hadoop par rapport au SGBDR.
Fonctionnalités | Hadoop | SGBDR |
---|---|---|
Espace de rangement | Très grande capacité de stockage. | Impossible de stocker Bigdata. |
Architecture | Hadoop est basé sur HDFS, MapReduce et YARN. | Le SGBDR est basé sur les propriétés ACID. |
Le volume | Peut gérer un grand volume de données. | Le SGBDR ne peut pas gérer un grand volume de données. |
Variété / types de données | Peut gérer des données structurées, semi-structurées et non structurées telles que des vidéos, des images, des fichiers CSV, xml, etc. | Ne manipulez que des données structurées. |
La vitesse | Traitement rapide de grandes quantités de données. | Très lent lors du traitement d'une grande quantité de données. |
Débit | Haut débit. | Faible débit. |
Tolérance aux pannes | très bien | Incapable de récupérer les données perdues si le serveur principal tombe en panne. |
Fiable | Très fiable et générer des rapports historiques et actuels précis. | Pas fiable en termes de Bigdata. |
Fonctionnalités Hadoop
Nous connaissons maintenant la définition exacte de Hadoop. Faisons un pas en avant et familiarisons-nous avec les terminologies que nous utilisons dans Hadoop, apprenons son architecture et voyons comment cela fonctionne exactement sur Bigdata.
Le framework Hadoop est basé sur les concepts ou modules suivants:
- Hadoop YARN
- Hadoop commun
- Hadoop HDFS ( H adoop ré istribué F avec S ystem)
- Carte HadoopRéduire
# 1) Hadoop YARN: YARN signifie ' Oui et À autre R esource N egotiator »qui est utilisé pour gérer la technologie de cluster du cloud. Il est utilisé pour la planification des travaux.
# 2) Hadoop commun: Il s'agit des bibliothèques ou utilitaires détaillés utilisés pour communiquer avec les autres fonctionnalités de Hadoop telles que YARN, MapReduce et HDFS.
# 3) Hadoop HDFS: Le système de fichiers distribués est utilisé dans Hadoop pour stocker et traiter un volume élevé de données. En outre, il est utilisé pour accéder aux données du cluster.
# 4) Hadoop MapReduce: MapReduce est la principale fonctionnalité de Hadoop qui est responsable du traitement des données dans le cluster. Il est utilisé pour la planification des travaux et le suivi du traitement des données.
Ici, nous venons d'inclure la définition de ces fonctionnalités, mais nous verrons une description détaillée de toutes ces fonctionnalités dans nos prochains tutoriels.
Architecture Hadoop
Apprenons l'architecture du framework et voyons quels composants y sont utilisés. Ce cadre suit une architecture maître-esclave dans le cluster.
Voici les composants Hadoop:
- HDFS
- MapReduce
- FIL
Ce sont les trois composants importants de l'architecture Hadoop. Nous devons également comprendre certaines des terminologies ou concepts de l'architecture et voir comment ils fonctionnent.
- Nœud de nom
- Nœud de données
- Nœud de nom secondaire
- Blocs
# 1) Nœud de nom
Le nœud de nom est le nœud maître dans HDFS. Il contient des métadonnées de HDFS telles que les informations de fichier, la structure du répertoire, les informations de bloc et toutes les informations du nœud de données, etc. Le nœud de nom est uniquement responsable des données ou du fichier accédant à partir du client. Il suit toutes les transactions ou modifications apportées aux fichiers.
Cela fonctionne principalement sur deux fichiers, c'est-à-dire FsImage et EditLogs . Le nœud de nom a un JobTracker qui contient tous les détails du nœud de données, comme quel nœud de données a quelle tâche, combien de blocs y a-t-il avec chaque nœud de données, le battement de cœur de chaque nœud de données, les détails de planification des travaux dans le cluster, etc.
En bref, nous pouvons dire qu'un JobTracker contient le TaskTracker de chaque nœud de données.
# 2) Nœud de données
Le nœud de données est le nœud esclave dans HDFS. Data Node est responsable du stockage et du traitement réels des données. Sa tâche principale est de diviser le travail en trois blocs et de le stocker dans différents nœuds de données. Après cela, commence le traitement des données.
En outre, il a TaskTracker qui a des informations complètes sur chaque bloc et quel bloc est responsable de quelle tâche, quels blocs ont terminé la tâche, etc. et après le traitement des données, il envoie les informations à Name Node. Chaque fois que le nœud de données démarre, il envoie à nouveau toutes les informations au nœud de nom.
# 3) Nœud de nom secondaire
Le nœud de nom secondaire est utilisé en cas de tolérance aux pannes. Il existe deux scénarios où le nœud de nom est arrêté et la structure Hadoop complète échouera car le nœud de nom est le point de défaillance unique.
(i) Si le nœud de nom redémarre en raison d'un problème qu'il a fallu pour revenir car il contient une énorme quantité de données, cela prend du temps pour le récupérer.
(ii) Dans le cas d'un crash de Name Node, toutes les données HDFS seront perdues et ne pourront plus les récupérer car Name Node est le point de défaillance unique. Ainsi, pour surmonter ces problèmes, le nœud de nom secondaire est là. Il contient également une image d'espace de noms et des journaux d'édition identiques à ceux du nœud de nom.
Après une certaine période, il copiera l'image de l'espace de noms et mettra à jour les journaux d'édition à partir du nœud de nom. Ainsi, en cas de défaillance d'un nœud de nom, le nœud de nom secondaire entre dans l'image et se comporte comme le nœud de nom principal. Grâce à ce processus, il empêche l'échec total.
# 4) Blocs
Les blocs sont la plus petite unité du HDFS. Hadoop peut traiter une énorme quantité de fichiers en le divisant en petits blocs. On peut dire que les blocs ne sont rien d'autre que les données d'un gros fichier. La taille de chaque bloc est de 128 Mo. Ces blocs sont enregistrés dans les nœuds de données et traitent les données.
Maintenant, apprenons l’architecture du Hadoop pour comprendre son fonctionnement.
Le système de fichiers distribué Hadoop (HDFS) est le système de fichiers utilisé dans le cluster Hadoop. Principalement HDFS est utilisé pour stocker les données Hadoop dans le cluster. HDFS travaille généralement sur le traitement séquentiel des données. Comme nous le savons déjà, il est basé sur une architecture maître-esclave.
Toutes les métadonnées du cluster sont enregistrées sur le nœud de nom dans le JobTracker et les données réelles sont stockées dans le nœud de données du HDFS dans le TaskTracker.
MapReduce est responsable du traitement des données. Chaque fois qu'un fichier entre dans le cluster pour traitement, le premier nœud de données le divise en blocs et chaque bloc contient 64 Mo de données et peut stocker 128 Mo. Ensuite, chaque bloc se répliquera deux fois et sera stocké dans différents nœuds de données n'importe où dans le cluster.
Toutes ces informations seront envoyées au nœud de nom et le nœud de nom stockera ces informations sous forme de métadonnées. Ensuite, le traitement réel des données démarrera le nœud de données et enverra une pulsation au nœud de nom toutes les trois secondes afin que le nœud de nom dispose des informations sur lesquelles ce nœud de données travaille.
Si l'un des nœuds de données ne parvient pas à envoyer la pulsation, le nœud de nom crée à nouveau la réplique de ce bloc sur un autre nœud de données et commence le traitement.
Toutes ces informations ou instantanés seront stockés dans FsImage et si une transaction est effectuée, modifiez le journal, fusionnez les nouvelles informations et gardez toujours une nouvelle copie des journaux.
Le bloc qui termine la tâche en premier sera pris et le nœud de données envoie des informations au nœud de nom et le nœud de nom prendra l'action en conséquence.
Dans l'ensemble de ce processus, YARN prendra en charge et fournira les ressources nécessaires au système, de sorte que cela n'affecte pas le traitement des données et la vitesse. Après le traitement des données, les résultats seront enregistrés dans HDFS pour une analyse plus approfondie.
Conclusion
Dans ce didacticiel, nous avons appris ce qu'est Hadoop, les différences entre SGBDR et Hadoop, les avantages, les composants et l'architecture de Hadoop.
Ce framework est responsable du traitement des big data et de leur analyse. Nous avons vu MapReduce, YARN et HDFS fonctionner dans le cluster.
Remarque: Voici les détails de configuration du nœud de nom et du nœud de données. Le nœud de nom secondaire aura la même configuration que le nœud de nom.
Configuration du nœud de nom:
Processeurs: 2 processeurs Quad Core fonctionnant à 2 GHz
Mémoire RAM: 128 Go
Disque: 6 x 1 To SATA
Réseau: 10 Gigabit Ethernet
Configuration du nœud de données:
Processeurs: 2 processeurs Quad Core fonctionnant à 2 GHz
Mémoire RAM: 64 Go
Disque: 12-24 x 1 To SATA
Réseau: 10 Gigabit Ethernet
=> Jetez un œil au guide du débutant Big Data ici.
lecture recommandée
- Tutoriel Big Data pour les débutants | Qu'est-ce que le Big Data?
- 20+ Tutoriel MongoDB pour les débutants: Cours MongoDB gratuit
- Comment configurer le cadre de test Node.js: Tutoriel Node.js
- Tutoriel Data Mart - Types, exemples et implémentation de Data Mart
- Tutoriels Eclipse détaillés pour les débutants
- Tutoriel Python pour les débutants (formation pratique gratuite sur Python)
- Framework basé sur les données dans Selenium WebDriver à l'aide d'Apache POI
- Tutoriel LoadRunner pour les débutants (cours approfondi gratuit de 8 jours)