Déploiement d une architecture Hadoop pour analyse de flux. françois-xavier.andreu@renater.fr



Documents pareils
Big Data Concepts et mise en oeuvre de Hadoop

HADOOP ET SON ÉCOSYSTÈME

Labs Hadoop Février 2013

L écosystème Hadoop Nicolas Thiébaud Tuesday, July 2, 13

Hadoop, les clés du succès

Big Data : utilisation d un cluster Hadoop HDFS Map/Reduce HBase

Big Data. Cyril Amsellem Consultant avant-vente. 16 juin Talend

Programmation parallèle et distribuée

Fouillez facilement dans votre système Big Data. Olivier TAVARD

Offre formation Big Data Analytics

Programmation parallèle et distribuée

API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture

Maîtriser les technologies Big Data pour obtenir des résultats en quasi-temps réel

Les journées SQL Server 2013

Formation Cloudera Data Analyst Utiliser Pig, Hive et Impala avec Hadoop

Introduction à MapReduce/Hadoop et Spark

Anticiper et prédire les sinistres avec une approche Big Data

20 ans du Master SIAD de Toulouse - BigData par l exemple - Julien DULOUT - 22 mars ans du SIAD -"Big Data par l'exemple" -Julien DULOUT

R+Hadoop = Rhadoop* Des logiciels libres complémentaires, une implémentation, une réponse au nouveau paradigme du bigdata!

Les technologies du Big Data

Programmation parallèle et distribuée (Master 1 Info )

Ricco Rakotomalala R.R. Université Lyon 2

Hadoop dans l entreprise: du concept à la réalité. Pourquoi et comment?

Tables Rondes Le «Big Data»

Cartographie des solutions BigData

BIG DATA en Sciences et Industries de l Environnement

Avant-propos. Organisation du livre

Introduc)on à Map- Reduce. Vincent Leroy

Introduction aux algorithmes MapReduce. Mathieu Dumoulin (GRAAL), 14 Février 2014

Panorama des solutions analytiques existantes

Prototypage et évaluation de performances d un service de traçabilité avec une architecture distribuée basée sur Hadoop

Les participants repartiront de cette formation en ayant une vision claire de la stratégie et de l éventuelle mise en œuvre d un Big Data.


MapReduce et Hadoop. Alexandre Denis Inria Bordeaux Sud-Ouest France ENSEIRB PG306

Bases de données documentaires et distribuées Cours NFE04

Hadoop : une plate-forme d exécution de programmes Map-Reduce

Analytics & Big Data. Focus techniques & nouvelles perspectives pour les actuaires. Université d Eté de l Institut des Actuaires Mardi 8 juillet 2014

AVRIL Au delà de Hadoop. Panorama des solutions NoSQL

Introduction à Hadoop & MapReduce

Les quatre piliers d une solution de gestion des Big Data

Plan. Rappels sur Netflow v1 v8. Netflow v9. Collecteur UTC «IPFlow» Cisco IOS : Implémentation de Netflow IPv6

Projet Xdata. Cinequant, Data Publica, EDF, ESRI, Hurence, INRIA, Institut Mines Telecom, La Poste, Orange, Veolia

Introduction. Adresses

Notes de cours Practical BigData

Big Data. Les problématiques liées au stockage des données et aux capacités de calcul

Importation et exportation de données dans HDFS

IPFIX (Internet Protocol Information export)

Hadoop : une plate-forme d exécution de programmes Map-Reduce

ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ DU QUÉBEC RAPPORT DE PROJET PRÉSENTÉ À L ÉCOLE DE TECHNOLOGIE SUPÉRIEURE

RFC 791 (Jon Postel 1981)

Réseaux IUP2 / 2005 IPv6

Vue d'ensemble de NetFlow. Gestion et Supervision de Réseau

Le monitoring de flux réseaux à l'in2p3 avec EXTRA


DEMARRER UN PROJET BIGDATA EN QUELQUES MINUTES GRACE AU CLOUD

Certificat Big Data - Master MAthématiques

Big Data, un nouveau paradigme et de nouveaux challenges

La supervision des services dans le réseau RENATER

Gestion et Surveillance de Réseau

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril / 15

Cassandra et Spark pour gérer la musique On-line

Document réalisé par Khadidjatou BAMBA

MapReduce. Nicolas Dugué M2 MIAGE Systèmes d information répartis

Organiser vos données - Big Data. Patrick Millart Senior Sales Consultant

Fast and furious decision tree induction

VirtualScale L expert infrastructure de l environnement Open source HADOOP Sofiane Ammar sofiane.ammar@virtualscale.fr

M2 GL UE DOC «In memory analytics»

Chapitre I. La couche réseau. 1. Couche réseau 1. Historique de l Internet

Stephan Hadinger, Sr. Mgr Solutions Architecture, AWS. Salon du Big Data 11 mars 2015

Configuration des grappes de serveurs d applications ADOBE LIVECYCLE ES3 à l aide de JBOSS

Département Informatique 5 e année Hadoop: Optimisation et Ordonnancement

Surveillance et corrélation de flux réseaux via sondes applicatives embarquées

Spécialiste Systèmes et Réseaux

Map-Reduce : un cadre de programmation parallèlle pour l analyse de grandes données. Stéphane Genaud ENSIIE

Hadoop / Big Data. Benjamin Renaut <renaut.benjamin@tokidev.fr> MBDS

BIG DATA PLATFORM FOR RESEARCH AND INNOVATION TERALAB

BONJOURGRID : VERSION ORIENTÉE DONNÉE & MAPREDUCE SÉCURISÉ

CONFIGURATION DES GRAPPES DE SERVEURS D APPLICATIONS ADOBE DIGITAL ENTERPRISE PLATFORM DOCUMENT SERVICES A L AIDE DE JBOSS

Exploration des Big Data pour optimiser la Business Intelligence

Livre. blanc. Solution Hadoop d entreprise d EMC. Stockage NAS scale-out Isilon et Greenplum HD. Février 2012

Hadoop, Spark & Big Data 2.0. Exploiter une grappe de calcul pour des problème des données massives

Aménagements technologiques

Amazon Elastic MapReduce (Amazon EMR)

Professeur-superviseur Alain April

«clustering» et «load balancing» avec Zope et ZEO

Exigences système Edition & Imprimeries de labeur

NoSQL. Introduction 1/30. I NoSQL : Not Only SQL, ce n est pas du relationnel, et le contexte. I table d associations - Map - de couples (clef,valeur)

Protection des données avec les solutions de stockage NETGEAR

Professeur-superviseur Alain April

Mesures DNS à l ère du Big Data : outils et défis. JCSA, 9 juillet 2015 Vincent Levigneron, Afnic

FILTRAGE de PAQUETS NetFilter

Skype (v2.5) Protocol Data Structures (French) Author : Ouanilo MEDEGAN

RFC 7011 : Specification of the IP Flow Information export (IPFIX) Protocol for the Exchange of Flow Information

Firewall. Souvent les routeurs incluent une fonction firewall qui permet une première sécurité pour le réseau.

ManageEngine Netflow Analyser

Plan de cette matinée

Le projet Gaïa, le Big Data au service du traitement de données satellitaires CRIP - 16/10/2013 Pierre-Marie Brunet

Savoir-faire Linux Inc Administration et Conseil Linux

Transcription:

Déploiement d une architecture Hadoop pour analyse de flux françois-xavier.andreu@renater.fr 1

plan Introduction Hadoop Présentation Architecture d un cluster HDFS & MapReduce L architecture déployée Les serveurs Les applications Contraintes Remarques Après? Conclusion 2

plan Introduction Hadoop Présentation Architecture d un cluster HDFS & MapReduce L architecture déployée Les serveurs Les applications Contraintes Remarques Après? Conclusion 3

Introduction Besoin : historique des exports NetFlow Analyse anomalies Capacity planning Stockage : > 1To de données par jour Temps de réponse des applications Solution : Hadoop? 4

Rappel : NetFlow Définition d un flux: IP source IP destination port source port destination protocole type de service index de l'interface d entrée 5

Rappel : NetFlow IP Header 0 15 16 Version HLEN ToS Identification flags Time to Live Protocol Source IP Address Destination IP Address Total Length Fragment Offset Header Checksum 31 TCP Header Source Port Number Destination Port Number Sequence Number Acknowledgement Number Header Reserved TCP Flags Window Size TCP Checksum Urgent Pointer 6

Rappel : NetFlow Exemple : connexion au site www.jres.org Nb Octets Nb Paquets Index In Index Out IP Source IP Dest Prot Port Sce Port Dst 625 6 5 13 193.49.160.34 195.220.94.176 6 50694 80 666 5 13 5 195.220.94.176 193.49.160.34 6 80 50694 8791 97 5 13 193.49.160.34 195.220.94.176 6 50695 443 265758 219 13 5 195.220.94.176 193.49.160.34 6 443 50695 5456 37 5 13 193.49.160.34 195.220.94.176 6 50698 443 81686 73 13 5 195.220.94.176 193.49.160.34 6 443 50698 3879 35 5 13 193.49.160.34 195.220.94.176 6 50699 443 69363 63 13 5 195.220.94.176 193.49.160.34 6 443 50699 13268 197 5 13 193.49.160.34 195.220.94.176 6 50700 443 559836 445 13 5 195.220.94.176 193.49.160.34 6 443 50700 4908 37 5 13 193.49.160.34 195.220.94.176 6 50701 443 71157 64 13 5 195.220.94.176 193.49.160.34 6 443 50701 4480 27 5 13 193.49.160.34 195.220.94.176 6 50702 443 51704 49 13 5 195.220.94.176 193.49.160.34 6 443 50702 1636 9 5 13 193.49.160.34 195.220.94.176 6 50703 443 2054 9 13 5 195.220.94.176 193.49.160.34 6 443 50703 7

Rappel : NetFlow Exemple : connexion au site www.jres.org Nb Octets Nb Paquets Index In Index Out IP Source IP Dest Prot Port Sce Port Dst 625 6 5 13 193.49.160.34 195.220.94.176 6 50694 80 666 5 13 5 195.220.94.176 193.49.160.34 6 80 50694 8791 97 5 13 193.49.160.34 195.220.94.176 6 50695 443 265758 219 13 5 195.220.94.176 193.49.160.34 6 443 50695 5456 37 5 13 193.49.160.34 195.220.94.176 6 50698 443 81686 73 13 5 195.220.94.176 193.49.160.34 6 443 50698 3879 35 5 13 193.49.160.34 195.220.94.176 6 50699 443 69363 63 13 5 195.220.94.176 193.49.160.34 6 443 50699 13268 197 5 13 193.49.160.34 195.220.94.176 6 50700 443 559836 445 13 5 195.220.94.176 193.49.160.34 6 443 50700 4908 37 5 13 193.49.160.34 195.220.94.176 6 50701 443 71157 64 13 5 195.220.94.176 193.49.160.34 6 443 50701 4480 27 5 13 193.49.160.34 195.220.94.176 6 50702 443 51704 49 13 5 195.220.94.176 193.49.160.34 6 443 50702 1636 9 5 13 193.49.160.34 195.220.94.176 6 50703 443 2054 9 13 5 195.220.94.176 193.49.160.34 6 443 50703 8

Rappel : NetFlow Exemple : connexion au site www.jres.org Nb Octets Nb Paquets Index In Index Out IP Source IP Dest Prot Port Sce Port Dst 625 6 5 13 193.49.160.34 195.220.94.176 6 50694 80 666 5 13 5 195.220.94.176 193.49.160.34 6 80 50694 8791 97 5 13 193.49.160.34 195.220.94.176 6 50695 443 265758 219 13 5 195.220.94.176 193.49.160.34 6 443 50695 5456 37 5 13 193.49.160.34 195.220.94.176 6 50698 443 81686 73 13 5 195.220.94.176 193.49.160.34 6 443 50698 3879 35 5 13 193.49.160.34 195.220.94.176 6 50699 443 69363 63 13 5 195.220.94.176 193.49.160.34 6 443 50699 13268 197 5 13 193.49.160.34 195.220.94.176 6 50700 443 559836 445 13 5 195.220.94.176 193.49.160.34 6 443 50700 4908 37 5 13 193.49.160.34 195.220.94.176 6 50701 443 71157 64 13 5 195.220.94.176 193.49.160.34 6 443 50701 4480 27 5 13 193.49.160.34 195.220.94.176 6 50702 443 51704 49 13 5 195.220.94.176 193.49.160.34 6 443 50702 1636 9 5 13 193.49.160.34 195.220.94.176 6 50703 443 2054 9 13 5 195.220.94.176 193.49.160.34 6 443 50703 9

En chiffres ~ 70 routeurs échantillonnage 1:1,1:10,1:20 NetFlow export version 9 >180 Mbits/s d export UDP > 800 interfaces clientes ~ 400 000 flux/s ~ 16 milliards flux par jour 1,4 To / jour (8 milliards de flux après déduplication) 10

plan Introduction Hadoop Présentation Architecture d un cluster HDFS & MapReduce L architecture déployée Les serveurs Les applications Contraintes Remarques Après? Conclusion 11

Hadoop Framework opensource Fondation Apache A quoi ça sert? Stocker Compter Trier Joindre Indexer Agréger Graphes 12

Hadoop briques de base Zookerper (admin) Vos programmes (C, Java, Python ) HBase Pig/Hive Analyse de données Map Reduce (moteur d exécution) HDFS Oozie (Scheduling) 13

Hadoop briques de base Zookerper (admin) Nos programmes Python HBase Pig/Hive Analyse de données Map Reduce (moteur d exécution) HDFS Oozie (Scheduling) 14

Hadoop - écosystème Giraph apprentissage automatique Traitement temps réel Splunk Mahout Oozie ordonnancement Blur PIG Azkaban Impala Hive Cascading Toolkit, traitement des données HBase Dumbo Cascalog Map/ Reduce HDFS Crunch RHiPE Hue Ambari administration Flume WebHDFS Intégration des données Sqoop 15

Hadoop - écosystème Giraph apprentissage automatique Traitement temps réel Splunk Mahout Oozie ordonnancement Blur PIG Azkaban Impala Hive Cascading Toolkit, traitement des données HBase Dumbo Cascalog Map/ Reduce HDFS Crunch RHiPE Hue Ambari administration Flume WebHDFS Intégration des données Sqoop 16

Hadoop - distributions Apache Bigtop Cloudera distribution for Hadoop HDFS, MapReduce, HBase, Hive, Mahout, Oozie, Pig, Sqoop, Whirr, Zookeeper, Flume MapR Distribution n utilise pas HDFS mais leur propre système de fichier basé sur NFS Hortonworks Data Plateforme 17

Hadoop - principe 18

Hadoop - principe Architecture maître/esclave : Nœud Maître NameNode Nœud de données DataNode HDFS Nœud de données DataNode HDFS Nœud de données DataNode HDFS Processus (au repos): NameNode SecondaryNameNode JobTracker TaskTracker DataNode 19

Hadoop - HDFS HDFS (Java) au dessus de EXT3 (ou EXT4, XFS) Pas de RAID ni LVM Fichiers en blocs de 64Mo (ou +) Taille qui sera traitée par une tâche Map Réplication des données automatique!! 20

1 4 6 HDFS - réplication 16 4 12 3 6 11 19 2 17 14 11 10 5 18 15 1 14 5 3 7 4 7 9 18 8 19 10 2 3 13 11 15 19 6 1 5 16 2 6 9 1 15 14 4 9 17 8 17 8 7 2 5 10 12 16 13 12 3 18 7 13 8 Parties du fichier sans réplication activée 9 10 Parties du fichier de la 1ère réplication Parties du fichier de la seconde réplication 21

Tâches Map Hadoop Map/Reduce - Principe Bloc1 Map 1 Bloc2 Map 2 Bloc3 Map 3 Entrée <clé, valeur> <clé2, valeur2> Données intermédiaires 22

Tâches Map Hadoop Map/Reduce - Principe Bloc1 Map 1 Bloc2 Map 2 Bloc3 Map 3 Entrée <clé, valeur> <clé2, valeur2> Données intermédiaires 23

Tâches Map Hadoop Map/Reduce - Principe Bloc1 Map 1 Bloc2 Map 2 Bloc3 Map 3 Entrée <clé, valeur> <clé2, valeur2> Données intermédiaires <clé2, liste(valeur2)> Sortie 24 <clé3, valeur3>

Tâches Map Bloc1 Hadoop Map/Reduce - Principe Map 1 Tâches Reduce R1 Bloc2 Map 2 R2 Bloc3 Map 3 R3 Entrée <clé, valeur> <clé2, valeur2> Données intermédiaires <clé2, liste(valeur2)> Sortie 25 <clé3, valeur3>

Tâches Map Bloc1 Hadoop Map/Reduce - Principe Map 1! Tâches Reduce R1 Bloc2 Map 2! R2 Bloc3 Map 3! R3 Entrée <clé, valeur> <clé2, valeur2> Données intermédiaires <clé2, liste(valeur2)> Sortie 26 <clé3, valeur3>

Hadoop Map/Reduce exécution 1 JVM par tâche 2 tâches / thread Exécution d un Job : En vert : Exécution des tâches Maps En bleu : copie des résultats En orange : tâches Reduces 27

Hadoop Map/Reduce shell vs hadoop En shell : cat <mes données> <mon programme de parcours> sort <mon programme d agrégation> > <mon résultat> Avec Hadoop : hadoop jar contrib/streaming/hadoop-*streaming*.jar \ -file <mon programme de parcours> \ -mapper <mon programme de parcours> \ -file <mon programme d agrégation> \ -reducer <mon programme d agrégation> \ -input <mes données> \ -output <mon résultats> 28

Hadoop Map/Reduce shell vs hadoop En shell : cat <mes données> <mon programme de parcours> sort <mon programme d agrégation> > <mon résultat> Avec Hadoop : hadoop jar contrib/streaming/hadoop-*streaming*.jar \ -file <mon programme de parcours> \ -mapper <mon programme de parcours> \ -file <mon programme d agrégation> \ -reducer <mon programme d agrégation> \ -input <mes données> \ -output <mon résultats> 29

Hadoop Map/Reduce shell vs hadoop En shell : cat <mes données> <mon programme de parcours> sort <mon programme d agrégation> > <mon résultat> Avec Hadoop : hadoop jar contrib/streaming/hadoop-*streaming*.jar \ -file <mon programme de parcours> \ -mapper <mon programme de parcours> \ -file <mon programme d agrégation> \ -reducer <mon programme d agrégation> \ -input <mes données> \ -output <mon résultats> 30

plan Introduction Hadoop Présentation Architecture d un cluster HDFS & MapReduce L architecture déployée Les serveurs Les applications Contraintes Remarques Après? Conclusion 31

L architecture déployée Backbone RENATER UDP NetFlow v9 Collecteur NetFlow ASCII Hadoop 32

L architecture déployée Backbone RENATER UDP NetFlow v9 Collecteur NetFlow ASCII Hadoop 1,4To/jour 8Go/5min 33

Les serveurs (1) DELL R420 1U - * 11 Bi processeur Xeon E5-2440 (2,4GHz, 6 cœurs 12 Threads) 32 Go RAM 1DD 146 Go 2 DD 15Krpm 300Go 34

Les serveurs (2) Utilisation mémoire Utilisation disque 35

Les applications En Python, utilisation de la classe Java «streaming» de Hadoop Recherche de flux (à la demande) Agrégation de données (en continu) : TOP n IPs TOP n AS BGP Détection anomalies (DDOS) 36

Contraintes de temps t t+5 t+10 t+15 Temps en minutes Collecte Collecte Collecte transfert transfert transfert Job 1 J 2 J 4 J 3 J 5 Job 1 J 2 J 4 J 3 J 5 Job 1 J 2 J 4 J 3 J 5 37

Contraintes de temps t t+5 t+10 t+15 Temps en minutes 38

Contraintes de temps t t+5 t+10 t+15 Temps en minutes Collecte ~ transfert 39

Exemples de Jobs 40

Exemples de Jobs 41

Exemples de Jobs 42

Exemples de Jobs 43

Temps d exécution des applications Données en Go Période # blocs traités temps # tâches Map # blocs déplacés # tâches Reduce observée sur place 6,8 5min 44s 105 91 14 16 13,4 10min 37s 203 190 13 16 13,4 10min 84s 203 196 7 64 80,9 1h 76s 1220 1210 10 16 823 ~16h 8m50 12553 12532 21 16 44

Temps d exécution des applications Données en Go Période # blocs traités temps # tâches Map # blocs déplacés # tâches Reduce observée sur place 6,8 5min 44s 105 91 14 16 13,4 10min 37s 203 190 13 16 13,4 10min 84s 203 196 7 64 80,9 1h 76s 1220 1210 10 16 823 ~16h 8m50 12553 12532 21 16 45

Temps d exécution des applications Données en Go Période # blocs traités temps # tâches Map # blocs déplacés # tâches Reduce observée sur place 6,8 5min 44s 105 91 14 16 13,4 10min 37s 203 190 13 16 13,4 10min 84s 203 196 7 64 80,9 1h 76s 1220 1210 10 16 823 ~16h 8m50 12553 12532 21 16 46

Temps d exécution des applications Données en Go Période # blocs traités temps # tâches Map # blocs déplacés # tâches Reduce observée sur place 6,8 5min 44s 105 91 14 16 13,4 10min 37s 203 190 13 16 13,4 10min 84s 203 196 7 64 80,9 1h 76s 1220 1210 10 16 823 ~16h 8m50 12553 12532 21 16 47

Temps d exécution des applications Données en Go Période # blocs traités temps # tâches Map # blocs déplacés # tâches Reduce observée sur place 6,8 5min 44s 105 91 14 16 13,4 10min 37s 203 190 13 16 13,4 10min 84s 203 196 7 64 80,9 1h 76s 1220 1210 10 16 823 ~16h 8m50 12553 12532 21 16 48

Quelques remarques Modification de la réplication : attention! Ajout d un nœud : sans problème stop/start Hadoop : attention au temps de démarrage de HDFS Modification des paramètres d optimisation À faire en fonction de vos applications et non en fonction des benchmarks du web 49

Après Utilisation d un ressource manager!! Hadoop 2 (Yarn) Update temps réel (Flume) Compression? Pas très green Spark, better than Hadoop? Hadoop & Cloud 50

Conclusion Big Data analytics? Take it easy with Hadoop 51

Remerciements Ker Data Team (INRIA Rennes - Bretagne Atlantique et ENS Cachan - Antenne de Bretagne) JRES 52