INTRODUCTION AU BIG DATA

Programming, Big Data, Hadoop · course

Voir tous les documents en intelligence artificielle et données

INTRODUCTION AU BIG DATA

Tutrice : Dr Abir KHALDI 2021-2022

Chapitre 2 : Hadoop

Dr Abir KHALDI

1

Chapitre 2

Plan

Hadoop - Pourquoi Hadoop - Caractéristiques Hadoop Caractéristiques Hadoop- Ecosystème Hadoop- Architecture Hadoop- Avantages & Inconvénients

Dr Abir KHALDI

2

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Hadoop-Pourquoi

(cid:1)Doug Cutting a créé Hadoop en 2004 . Il s'agit d'un logiciel open source développé en tant que projet par Apache Software Foundation.

(cid:1)En 2008, Yahoo a donné Hadoop à Apache Software Foundation. Foundation

(cid:1)Depuis lors, deux versions de Hadoop sont venues. Version 1.0 en 2011 et version 2.0.6 en 2013. Hadoop est disponible en différentes versions comme Cloudera, IBM BigInsight, MapR et Hortonworks.

Dr Abir KHALDI

3

Hadoop-Pourquoi

Hadoop - Pourquoi

Les principales lacunes de l'approche traditionnelle qui ont conduit à l'invention de Hadoop:

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

1. Stockage pour les grands ensembles de données Le SGBDR conventionnel est incapable de stocker d'énormes quantités de données. Le coût du stockage des données dans les SGBDR disponibles est très élevé. Comme cela entraîne le coût du matériel et des logiciels à la fois.

2. Gestion des données dans différents formats Le SGBDR est capable de stocker et de manipuler des données dans un format structuré. Mais dans le monde réel, nous devons traiter les données dans un format structuré, non structuré et semi-structuré.

3. Données générées à grande vitesse Les données suintent dans l'ordre de tera à peta octets par jour. Nous avons donc besoin d'un système pour traiter les données en temps réel en quelques secondes. Le SGBDR traditionnel ne parvient pas à fournir un traitement en temps réel à grande vitesse.

Dr Abir KHALDI

4

Hadoop - Pourquoi

Hadoop - Pourquoi

Hadoop - Caractéristiques

(cid:1) Hadoop = Solution aux problèmes de Big Data .

(cid:1) Hadoop permet de :

(cid:1)Stocker des ensembles de données massifs sur un cluster de (cid:1)Stocker des ensembles de données massifs sur un cluster de machines de manière distribuée. (cid:1)Fournir des analyses Big Data via un cadre informatique distribué.

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Dr Abir KHALDI

5

Hadoop - Pourquoi

11 Bonnes raisons pour apprendre Hadoop :

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Dr Abir KHALDI

6

Hadoop Caractéristiques

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Dr Abir KHALDI

7

Hadoop - Caractéristiques

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

2.1. Open Source Apache Hadoop est un projet open source. Cela signifie que son code peut être modifié en fonction des besoins de l'entreprise. 2.2. Traitement distribué Comme les données sont stockées de manière distribuée dans HDFS à travers le cluster, les données sont traitées en parallèle sur un cluster de nœuds. 2.3. Tolérance aux pannes 2.3. Tolérance aux pannes C'est l'une des fonctionnalités très importantes de Hadoop. Par défaut, 3 répliques de chaque bloc sont stockées dans le cluster dans Hadoop et peuvent également être modifiées selon les exigences. Donc, si un nœud tombe en panne, les données sur ce nœud peuvent être récupérées facilement à partir d'autres nœuds à l'aide de cette caractéristique. Les pannes de nœuds ou de tâches sont récupérées automatiquement par le framework. C'est ainsi que Hadoop est tolérant aux pannes .

Dr Abir KHALDI

8

Publicité

Hadoop - Caractéristiques

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

2.4. Fiabilité En raison de la réplication des données dans le cluster, les données sont stockées de manière fiable sur le cluster de la machine malgré les pannes de la machine. Si votre machine tombe en panne, vos données seront également stockées de manière fiable en raison de cette caractéristique de Hadoop. 2.5. La haute disponibilité : Les données à haute disponibilité sont hautement disponibles et accessibles malgré une défaillance matérielle due à plusieurs copies de données. En cas de panne d'une machine ou de quelques matériels, les données seront accessibles à partir d'un autre chemin. 2.6. Évolutivité Hadoop est hautement évolutif dans la façon dont un nouveau matériel peut être facilement ajouté aux nœuds. Cette fonctionnalité de Hadoop offre également une évolutivité horizontale, ce qui signifie que de nouveaux nœuds peuvent être ajoutés à la volée sans aucun temps d'arrêt .

hautement disponibles

haute disponibilité

Dr Abir KHALDI

9

Hadoop - Caractéristiques

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

2.7. Économique Apache Hadoop n'est pas très cher car il fonctionne sur un cluster de matériel de base. Nous n'avons besoin d'aucune machine spécialisée pour cela. Hadoop permet également de réaliser d'importantes économies car il est très facile d'ajouter plus de nœuds à la volée ici. Donc, si les besoins augmentent, vous pouvez également augmenter les nœuds sans aucun temps d'arrêt et sans nécessiter beaucoup de pré-planification. 2.8. Facile à utiliser Pas besoin de client pour gérer l'informatique distribuée, le framework s'occupe de tout. Cette fonctionnalité de Hadoop est donc facile à utiliser. 2.9. Localité de données Celui-ci est une des caractéristiques uniques de Hadoop qui le rendait facile à gérer les Big Data. Hadoop fonctionne sur le principe de la localité des données qui stipule que le calcul est déplacé vers les données plutôt que les données vers l'algorithme MapReduce, cet algorithme est déplacé vers les données du cluster plutôt que d'amener les données à l'emplacement où l'algorithme est soumis, puis de les traiter. Ce sont les caractéristiques de Hadoop qui Dr Abir KHALDI systèmes de gestion des données.

le différencient des autres

Lorsqu'un client

le calcul.

soumet

10

Hadoop -Ecosystème

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Dr Abir KHALDI

11

Hadoop - Ecosystème

Hadoop - Pourquoi

Les trois composants de base de Hadoop

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

1. HDFS est le fondement de Hadoop et est donc une composante très importante de l'écosystème Hadoop. Il s'agit d'un logiciel Java qui offre de nombreuses fonctionnalités telles que l'évolutivité, la haute disponibilité, la tolérance aux pannes, la rentabilité, etc. Il fournit également un stockage de données distribué robuste pour Hadoop.

2. MapReduce est

le composant de traitement des données de Il applique le calcul sur des ensembles de données en

Hadoop. parallèle améliorant ainsi les performances.

3. YARN qui est l'abréviation de Yet Another Resource Manager. C'est comme le système d'exploitation de Hadoop car il surveille et gère les ressources. Yarn est entré en scène avec le lancement de Hadoop 2.x afin de permettre différentes charges de travail. Il gère les charges de travail comme le traitement de flux, le traitement par lots sur une seule plateforme.

le traitement interactif,

Dr Abir KHALDI

12

Hadoop - Ecosystème

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

4. Hive est un projet d'entrepôt de données construit sur le dessus d'Apache Hadoop qui fournit des requêtes et des analyses de données. Il a le langage de son propre appel HQL ou Hive Query Language . HQL traduit automatiquement les requêtes dans le travail de réduction de carte correspondant.

5. Pig est un langage de type SQL utilisé pour interroger et analyser les données stockées dans HDFS. Yahoo était le créateur original du Cochon. Il utilise la langue latine du Pig. Il charge les données, lui applique un filtre et vide les données au format requis. Pig se compose également de JVM appelé Pig Runtime.

Yahoo était le créateur original du Cochon.

6. HBase est une base de données NoSQL construite sur le dessus de HDFS. Les différentes fonctionnalités de HBase sont qu'il s'agit d'une base de données open source, non relationnelle et distribuée. Il imite la Bigtable de Google et écrit en Java. Il fournit un accès en lecture / écriture en temps réel à de grands ensembles de données.

Dr Abir KHALDI

13

Hadoop - Ecosystème

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

fournit une plate-forme pour créer des applications

7. Mahout d'apprentissage automatique (Machine Learning) qui sont évolutives. Les algorithmes d'apprentissage machine nous permettent de créer des machines auto-évolutives sans être explicitement programmées. Il prend les décisions futures en fonction du comportement des utilisateurs, des expériences passées et des modèles de données.

8 Zookeeper coordonne les différents services de l'écosystème Hadoop Il 8. Zookeeper coordonne les différents services de l'écosystème Hadoop. Il économise le temps requis pour la synchronisation, la maintenance de la configuration, le regroupement et la dénomination.

9. OOZIE Il s'agit d'un système de planification de workflow pour la gestion des travaux Hadoop. Il prend en charge les travaux Hadoop pour Map-Reduce, Pig, Hive et Sqoop. Oozie combine plusieurs emplois en une seule unité de travail. Il est évolutif et peut gérer des milliers de flux de travail dans un cluster Hadoop.

Dr Abir KHALDI

14

Publicité

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Hadoop - Ecosystème

10. Sqoop importe des données de sources externes dans des composants compatibles de l'écosystème Hadoop tels que HDFS, Hive, Il transfère également des données de Hadoop vers HBase, etc. d'autres sources externes. Il fonctionne avec des SGBDR comme TeraData, Oracle, MySQL et ainsi de suite. La principale différence entre Sqoop et Flume est que Flume ne fonctionne pas avec des données structurées. Mais Sqoop peut gérer des données structurées et non structurées. et non structurées

11. Flume : Il s'agit d'un service qui permet d'intégrer des données structurées et semi-structurées dans HDFS. Flume fonctionne sur le principe du traitement distribué. Il facilite la collecte, l'agrégation et le déplacement d'une énorme quantité d'ensembles de données. Flume a trois composants: source, puits et canal.

12. Ambari est un autre composant de l'écosystème Hadoop. Il est responsable de l'approvisionnement, de la gestion, de la surveillance et les différentes fonctionnalités d'Ambari :

sécurisation

Hadoop.

cluster

Voici

du

de

la

Dr Abir KHALDI

15

Hadoop - Ecosystème

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

13. Apache Drill est un moteur de requête SQL sans schéma. Il fonctionne sur le dessus de Hadoop, NoSQL et du stockage cloud. Son objectif principal est le traitement à grande échelle de données à faible latence. Il s'agit d'un moteur de traitement de requêtes distribué. Nous pouvons interroger des pétaoctets de données à l'aide de Drill. Il peut évoluer sur plusieurs milliers de nœuds. Il prend en charge les bases de le stockage cloud données NoSQL comme le stockage Azure BLOB, Google, Google, Amazon S3, HBase, MongoDB , etc.

MongoDB

14. Apache Spark unifie toutes sortes de traitements Big Data sous un Il possède des bibliothèques intégrées pour le même parapluie. le traitement de l'apprentissage automatique et streaming, SQL, graphiques. Apache Spark s'éclaircit rapidement. Il donne de bonnes performances pour le traitement par lots et par flux. Il le fait à l'aide du planificateur DAG , de l'optimiseur de requêtes et du moteur d'exécution physique.

Dr Abir KHALDI

16

Hadoop - Ecosystème

15. Apache Solr et Apache Lucene sont deux services qui recherchent et indexent l'écosystème Hadoop. Apache Solr est une application construite autour d'Apache Lucene. Le code d'Apache Lucene est en la recherche et Java. l'indexation. Apache Solr est une plate-forme de recherche open source extrêmement rapide.

Il utilise des bibliothèques

Java pour

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Dr Abir KHALDI

17

Hadoop - Architecture

Hadoop a une topologie maître-esclave: La fonction du nœud maître est d'assigner une tâche à différents nœuds esclaves et de gérer les ressources. Les nœuds esclaves effectuent le calcul proprement dit. Les nœuds esclaves stockent les données réelles alors que sur le maître, nous avons des métadonnées. Cela signifie qu'il stocke des données sur les données. L'architecture Hadoop comprend trois couches principales: HDFS (système de fichiers distribué Hadoop) Hadoop) MapReduce Yarn

(système

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Dr Abir KHALDI

18

Hadoop - Architecture

Le socle technique d'Hadoop est composé :

1. De toute l’architecture nécessaire pour l’orchestration de MapReduce pour :

(cid:2)l’ordonnancement des traitements, (cid:2)la localisation des fichiers, (cid:2)la distribution de l’exécution.

2. D’un système de fichiers HDFS qui est : (cid:2)Distribué : les données sont réparties sur les machines du cluster. (cid:2)Répliqué : en cas de panne, aucune donnée n'est perdue. (cid:2)Optimisé pour la colocalisation des données et des traitements.

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Dr Abir KHALDI

19

Hadoop – Architecture : HDFS

HDFS signifie Hadoop Distributed File System . Il prévoit le stockage des données de Hadoop. Il divise l'unité de données en unités plus petites appelées blocs et les stocke de manière distribuée. un système de fichiers HDFS est :

•Distribué : les données sont réparties sur les machines du cluster. •Répliqué : en cas de panne, aucune donnée n'est perdue. Répliqué : en cas de panne, aucune donnée n'est perdue. •Optimisé pour la colocalisation des données et des traitements.

Il a deux démons en cours d'exécution: NameNode joue le role du nœud maître DataNode qui sont les nœuds esclaves -.

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Publicité

Hadoop –Avantages & Inconvénient

Dr Abir KHALDI

20

Hadoop – Architecture : HDFS

Hadoop - Pourquoi

Dans Hadoop, l'architecture de stockage est une architecture maître- esclave:

Hadoop - Caractéristiques

•Le nœud maitre appelé name node contient et stocke tous les noms et blocs des fichiers ainsi que leur localisation dans le cluster. On peut donc le voir comme un gros annuaire.

Hadoop- Ecosystème

•Une autre machine, appelée secondary name node sert de namenode •Une autre machine, appelée secondary name node sert de namenode de secours en cas de défaillance du nœud maître et il a donc pour rôle de faire des sauvegardes régulières de l'annuaire.

•Les autres nœuds, les esclaves, sont les nœuds de stockage en tant que tels. Ce sont les data nodes qui ont pour rôle la gestion des opérations de stockage locales (création, suppression et réplication de blocs) sur instruction du name node.

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Dr Abir KHALDI

21

Hadoop – Architecture : HDFS

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Dr Abir KHALDI

22

Hadoop – Architecture : HDFS

Si on souhaite écrire un fichier dans HDFS, on utilise un client Hadoop. Le principe est assez simple : •Le client indique au name node qu'il souhaite écrire un bloc. •Le name node indique le data node à contacter. •Le client envoie le bloc au data node. •Les data nodes répliquent les blocs entre eux. Le cycle se répète pour le bloc suivant.

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Dr Abir KHALDI

23

Hadoop – Architecture : HDFS

Si on souhaire lire un fichier dans HDFS, c'est également assez simple. •Le client indique au name node qu'il souhaite lire un fichier. •Le name node indique sa taille ainsi que les différents data nodes contenant les blocs. •Le client récupère chacun des blocs sur l'un des data nodes. Si le data node est indisponible, le client en contacte un autre.

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Dr Abir KHALDI

24

Hadoop - Avantages

Hadoop - Pourquoi

Hadoop - Caractéristiques

Hadoop- Ecosystème

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

Gamme de sources de données Les données recueillies auprès de diverses sources seront de forme structurée ou non structurée. Les sources peuvent être des médias sociaux, des données par clic ou même des conversations par courrier électronique. Il faudrait beaucoup de temps pour convertir toutes les données collectées en un seul format. Apache Hadoop économise ce temps, car il peut extraire des données précieuses de toute forme de données. Rentable Apache Hadoop est une solution rentable pour le stockage de données. Cela aide à long terme car il stocke la totalité des données brutes générées par une entreprise. Si l’entreprise change la il stocke la totalité des données brutes générées par une entreprise. Si l’entreprise change la direction de ses processus à l’avenir, elle peut facilement se référer aux données brutes et prendre les mesures nécessaires. Vitesse Chaque organisation utilise une plate-forme pour faire un travail plus rapidement. Hadoop donne la possibilité à chaque entreprise de répondre à ses problèmes de stockage de données. Il utilise un système de stockage dans lequel les données sont stockées sur un système de fichiers distribué. Étant donné que les outils utilisés pour le traitement des données sont situés sur les mêmes serveurs que les données, on effectue également le traitement à un rythme plus rapide. Par conséquent, vous pouvez traiter des téraoctets de données en quelques minutes à l’aide de Apache Hadoop. Tolérance aux pannes Hadoop duplique automatiquement les données qui y sont stockées et crée plusieurs copies. Ceci est fait pour s’assurer qu’en cas de panne, les données ne soient pas perdues.

Dr Abir KHALDI

25

Hadoop - Inconvénients

Hadoop - Pourquoi

Absence de mesures préventives

Hadoop - Caractéristiques

Pendant le traitement de données sensibles collectées par une entreprise, il est nécessaire de fournir les mesures de sécurité obligatoires. Dans Hadoop, les mesures de sécurité sont désactivées par défaut. Le responsable de l’analyse des données est conscient et prend les mesures nécessaires pour sécuriser les données.

Hadoop- Ecosystème

Problèmes liés aux petites données Problèmes liés aux petites données

Hadoop- Architecture

Hadoop –Avantages & Inconvénient

On trouve des plates-formes Big Data sur le marché qui ne conviennent pas aux petites données. Hadoop est l’une de ces plates-formes dans laquelle seules les grandes entreprises générant des données volumineuses peuvent profiter de ses avantages. En effet, Hadoop ne peut pas fonctionner efficacement dans de petits environnements de données.

Fonctionnement risqué

Java est l’un des langages de programmation les plus populaire au monde. C’est également lié à diverses controverses car les cybercriminels peuvent facilement exploiter les frameworks construits sur Java. Hadoop est un de ces frameworks entièrement basé en Java. Par conséquent, la plate-forme est très vulnérable et peut subir des dommages.

Dr Abir KHALDI

26

•Questions ?

[email protected] [email protected]

Dr Abir KHALDI

27