El Houssaine AIT BEN AMAR benamar.hocein@gmail.com Hadoop et son écosystème E.A
El Houssaine AIT BEN AMAR benamar.hocein@gmail.com Hadoop et son écosystème E.AIT BEN AMAR Présentation de l’écosystème Hadoop § Hadoop est une plateforme qui utilise une architecture répartie. § C’est l’addition de la capacité de stockage et de traitement de chacun des nœuds, qui permet d’offrir un espace de stockage et une puissance de calcul pouvant traiter des volumes de données de plusieurs téraoctets ou pétaoctets. § L’écosystème Hadoop désigne le framework qui implémente le modèle de calcul MapReduce et fournit un système de fichiers distribué redondant, optimisé et fiable pour la gestion des fichiers de données volumineux (HDFS) ainsi que l’ensemble des outils permettant d’exploiter ce framework. Pourquoi Hadoop ? § Traiter de larges jeux de données § Tolérance à la panne § Il coûte très cher d'incorporer la fiabilité au sein de chaque application § Efficace meme sur une infrastructure commode Hadoop § Leprojet Hadoopconsisteendeuxgrandesparties: § Stockagedesdonnées: HDFS(HadoopDistributedFileSystem) § Traitement desdonnées :MapReduce § Principe: § Diviserlesdonnées § Les sauvegardersurunecollectiondemachines,appeléescluster § Traiterlesdonnéesdirectement làoù ellessontstockées,plutôt quedelescopierà partir d’un serveurdistribué § Il estpossibled’ajouterdesmachinesàvotre cluster,aufur et à mesure que lesdonnéesaugmentent Hadoop: Unnouveau paradigme q Traitement àgrande échelle et hauteperformance v Peutévoluerde10nœudsà10,000nœuds v Plus facile,gratuit,ouvert q Efficace § Puissancede computationCPU,mémoire § Stockagesur disqueslocal q Nouveau § Denouvellesfondations q Actuel § Presquetouslesleadersdu web2.0 § Lagrande entrepriseFortune500 HadoopestRobuste! q Unesolutionlogicielle q Ratio coût-puissanceintéressant q Évolutif On peut toujours ajouterdes nœuds pour plusde capacités Ø Computation Ø Stockage q Général Ø S’appliqueàune variété de problèmes utiles Ø Programmation parallèle simplifiée q Pasdebarrières pour commencer Ø Pasdeschémaou de designrequis. Ø Chargerdesfichiers« raw » et lancer une applications Présentation de l’écosystème Hadoop Hadoop Distributed File System (HFDS) § HDFS (HADOOP Distributed File System) est le système de gestion de fichiers distribués d’Hadoop en charge du stockage des données dans le cluster. § Il permet l'abstraction de l'architecture physique de stockage, afin de manipuler un système de fichiers distribués comme s'il s'agissait d'un disque dur unique. § Le fonctionnement de HDFS est assuré par deux types de nœuds : • Le NameNode qui est un nœud maître et qui dispose d’une machine dédiée pour diriger les DataNode. • Le DataNode est un composant qui stocke et restitue les blocs de données. C’est un nœud esclave implémenté sur chaque machine du cluster qui n’est pas un nœud maître. 9 Hadoop Distributed File System (HFDS) q HDFS (HADOOP Distributed File System) est le système de gestion de fichiers distribués d’Hadoop en charge du stockage des données dans le cluster. v Il permet l'abstraction de l'architecture physique de stockage, afin de manipuler un système de fichiers distribués comme s'il s'agissait d'un disque dur unique. v Le fonctionnement de HDFS est assuré par deux types de nœuds : Ø Le NameNode qui est un nœud maître et qui dispose d’une machine dédiée pour diriger les DataNode. Ø Le DataNode est un composant qui stocke et restitue les blocs de données. C’est un nœud esclave implémenté sur chaque machine du cluster qui n’est pas un nœud maître. MapReduce q Framework Open Source Java, permet la manipulation des données dans un environnement distribué. q Il est composé de deux étapes principales : v L’étape de map qui va permettre d’effectuer des actions là où sont stockées les données et fournir, en sortie, une liste de clés valeurs. v L’étape de reduce qui va regrouper les résultats des map en fonction de clés et effectuer les actions finales (les actions sur les valeurs). HBase q Une base de données non relationnelle distribuée. q Elle a la particularité d’utiliser les données directement dans HDFS sans passer par des tâches. q Elle présente donc des caractéristiques assez similaires à celles de HDFS (capacité à gérer des volumes de données de plusieurs Po, forte tolérance de panne…). q Elle est bien adaptée pour gérer des données parsemées comme par exemple une table de plusieurs milliers de colonnes avec une majorité de cellules vides. Hive q Un outil développé par Facebook qui permet d’utiliser Hadoop par le biais de requêtes HiveQL. q Ce langage est proche du SQL. q Il permet de construire un modèle de données relationnelles basé surles données contenues dans HDFS. q Ce modèle de données est stocké dans un métastore qui gère la définition des tables ainsi que les métadonnées. Pig q Un outil développé par Yahoo qui permet d’exécuter des jobs MapReduce en utilisant un langage de scripting (PigLatin). q Les scripts PigLatin permettent de travailler sur des données contenues dans HDFS. q Ces données sont traitées par MapReduce qui retourne le résultat de ses calculs à Pig. Hue q Un outil permettant d’obtenir une interface graphique de Hadoop. q Cette interface graphique comprend un navigateur de fichiers permettant d’accéder à HDFS, un navigateur de job MapReduce, unnavigateur HBASE ainsi qu’un éditeur de requête pour Hive et Pig. Flume q Un outil permettant d’injecter de gros volumes de données, en temps réel dans HDFS. q Cet outil est capable de « streamer » des données depuis n’importe quelle source pour les ajouter dans Hadoop. q Flume est évolutif (les performances peuvent être accrues en ajoutant des nœuds) et extensible (intègre des données en provenance de sources variées). Hadoop :Les Distributions § Lesprincipaux 17 Les Distributions q Les principaux Hortonworks q Il est le seul fournisseur qui utilise 100% du projet Open Source Apache Hadoop sans ses propres (non-open) modifications. q Il est le premier vendeur à utiliser les fonctionnalités Apache HCatalog pour des services de métadonnées. q Par ailleurs, leur initiative Stinger optimise massivement le projet Hive. q Il offre un très bon bac à sable, facile à utiliser pour commencer. q Il a développé et committé des améliorations au niveau du cœur qui rend Apache Hadoop exécutable nativement sur les plates-formes Microsoft Windows incluant Windows Server et Windows Azure. Hortonworks Cloudera q La distribution de loin la plus installée avec le plus grand nombre de déploiements référencés. q Un outillage puissant pour le déploiement, la gestion et le suivi est disponible. q Impala est développée par Cloudera pour offrir des traitements en temps réel de Big Data. Cloudera MapR q Utilise quelques concepts différents de ses concurrents, en particulier du support pour un système de fichiers Unix natif au lieu de HDFS (avec des composants non Open Source), pour une meilleure performance et une facilité d’utilisation. q Les commandes natives Unix peuvent être utilisées à la place des commandes Hadoop. q Il se différencie de ses concurrents avec des fonctionnalités de haute disponibilité comme les snapshots, la réplication ou encore le basculement avec état (« stateful failover »). q L’entreprise est aussi à la tête du projet Apache Drill, un projet Open Source réinventé à partir de Dremel de Google pour des requêtes de type SQL sur des données Hadoop afin d’offrir des traitements temps réels. MapR Choix de la distribution Commentchoisir une solutionHadoop? q Modèle économique(OpenSource,Commercial..). q Lescomposants. q Maturité de la solution, le support, la documentation, le retour d'expériences. q Lerapport avecHadoop,la rapidité desévolutions. q Partenariats (hébergeurs…),compatibilité. Lucene, Solr q Solr est un serveur de recherche d'entreprise permettant de centraliser les opérations d'indexation et de services de résultats. q Il est capable de communiquer avec les autres applications via de nombreux protocoles basés sur des standards ouverts, il dispose également d’une interface d’administration en mode Web. q L’une des caractéristiques majeures de Lucene est sa capacité à indexer les contenus par champs. q Solr permet de tirer pleinement parti de cette fonctionnalité. Ce fonctionnement permet une gestion beaucoup plus fine de la pertinence et de la recherche avancée. Solutions alternatives ARCHITECTURE ET UTILISATIONS DES COMPOSANTS HADOOP HDFS HDFS:Hadoop DistributedFileSystem HDFS q Un système de fichiers distribué, extensible et portable,écrit en Java q Permet de stocker de très gros volumes de données sur un grand nombre de machines (nœuds) équipées de disques durs banalisés (cluster). q Quand un fichier mydata.txt est enregistré dans HDFS, il est décomposé en grands blocs (par défaut 64Mo), chaque bloc ayant un nom unique: blk_1, blk_2... q Chaque bloc est enregistré dans un nœud différent du cluster. q DataNode : démon sur chaque nœud du cluster. q NameNode : Ø Démon s’exécutant sur une machine séparée Ø Contient des métadonnées, Ø Permet de retrouver les nœuds qui exécutent les blocs d’un fichier. DN Architecture Si l’un des nœuds a un problème,les données seront perdues q Hadoopréplique chaque bloc 3 fois q Il choisit 3 nœuds au hasard, et place une copie du blocdans chacun d’eux q Si le nœud est en panne,le NN le détecte, et s’occupe de répliquer encore les blocs qui y étaient hébergéspour avoirtoujours 3copies stockées q Concept de RackAwareness (rack = baie de stockage) Architecture Architecture Sile NameNode a un problème? qLes données sont perduesàjamais Ø Si c’est un problème d’accès(réseau), les données sont temporairement inaccessibles Pour éviter cela: q le NameNode sera dupliqué, non seulement sur son propre disque, mais également quelque part sur le système de fichiers du réseau. q Définition d’unautre NN(Secondarynode) q Reprendrele travailsile NameNode actif est défaillant Architecture Exemple de fonctionnement • Le client hadoop indique au namenode qu'il souhaite uploads/Ingenierie_Lourd/ haddop-vf.pdf
Documents similaires










-
42
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jan 16, 2021
- Catégorie Heavy Engineering/...
- Langue French
- Taille du fichier 6.0223MB