SlideShare une entreprise Scribd logo
1  sur  44
Télécharger pour lire hors ligne
Hadoop et le "Big Data"
La Technologie Hadoop au coeur des
projets "Big Data".
Hadoop : Qui suis-je ?
Stéphane Goumard
● Expertise environnement Java.
○ Architecte technique.
○ Consultant.
○ Formateur.
● Responsable Technique du Projet de
Recherche et Innovation “Big Data”, “Square
Predict”.
Hadoop et le "Big Data"
Le “Big Data”
Big Data : Quoi de neuf ?
Facabook
warehouses
180 petabytes
of data a year.
Twitter
manages
1.2 million
deliveries
per second
Nouveaux Métiers
“Data Scientist”
Nouveaux
enjeux
économiques
Nouvelles
technologies
Big Data : Quoi de neuf ?
“Big Data is data that exceeds the processing capacity of coventionnal database
systems. The data is too big, move too fast, or doesn’t fit the strictures of your
database architectures. To gain value from this data, you must choose an
alternative way to process it.”
Edd Dumbill, O’Reilly
Hadoop et le "Big Data"
Hadoop.
Hadoop : Définition
“Hadoop est le framework le plus utilisé actuellement pour
manipuler et faire du Big Data.
Apache Hadoop est un framework qui va permettre le
traitement de données massives sur un cluster allant
d’une à plusieurs centaines de machines.
C’est un projet open source (Apache v2 licence).”
Hadoop : Historique
Création de Nutch
par Doug Cutting
et Mike Cafarella
Google publie
GFS
& Map Reduce
Doug Cutting
ajoute DFS &
Map Reduce à
Nutch
Yahoo
embauche
Cutting &
adopte Hadoop
Hadoop est elu
Top Project
Apache
Facebook sort
Hive le support
du SQL pour
Hadoop
Cloudera
embauche
Cutting
Hadoop est Robuste !
Hadoop : Système
d’exploitation de la donnée
Hadoop : Références.
En 10 ans, son adoption ne fait plus aucun doute
!
Hadoop : HDFS
“HDFS (Hadoop Distributed File System) est un système de fichiers Java
utilisé pour stocker des données structurées ou non sur un ensemble de
serveurs distribués.”
● Node (Master/slave) : Dans une architecture Hadoop,
chaque membre pouvant traiter des données est
appelé Node (Noeud).
● Un seul d’entre eux peut être Master même s’il peut
changer au cours de la vie du cluster, il s’agit du
NameNode. Il est responsable de la localisation des
données dans le cluster.
● Les autres nœuds, stockant les données, sont des
slaves appelés DataNode.
● Le NameNode est donc un Single Point Of Failure
(SPOF) dans un cluster Hadoop. (Hadoop 2.0,
introduit un failover automatisé).
Hadoop : HDFS
● BlockSize : Taille unitaire de stockage
(généralement 64 Mo ou 128 Mo).
C’est à dire qu’un fichier de 1 Go
(et une taille de block de 128 Mo) sera divisé
en 8 blocks.
● Réplication Factor : C’est le nombre de
copies d’une donnée devant être
réparties sur les différents noeuds du
cluster. (souvent 3, c’est à dire une primaire
et deux secondaires)
● Processus de lecture HDFS :
○ Interrogation du NameNode pour
localiser les adresses des Nodes
hébergeant les blocs sous-
jacents les plus proches.
● Processus d’écriture
● Écriture sur le DataNode.
● DataNode communique ses blocs
au NamenNde. Replication..
● Write-once.
● Alternatives :
○ Hbase : Base NoSql insipirée de Google BigTable. Utilisée
conjointement au système de fichiers HDFS, il facilite la distribution
des données sur plusieurs Noeuds. On compare souvent Hbase =>
HDFS à ce que représente Json => XML.
○ MapR : Propose une atlernative à HDFS sans SPOF. C’est un fork
de Hbase en mode propriétaire.
○ Cassandra : Initiée par Facebook qui l’abandonne au profit de
Hbase, c’est une base NoSql qui optimise les opérations en écriture.
Comme Hbase, elle ne remplace pas HDFS mais offre un moyen
supplémentaire de l’exploiter.
○ Cloud : Les offres cloud peuvent être une alternative Amazon S3,
Hadoop : HDFS
Hadoop : Map Reduce.
“A l’origine crée par Google pour son outil de recherche web.
C’est un framework qui permet le décomposition d’une requête importante en
un ensemble de requêtes plus petites qui produiront chacune un sous
ensemble du résultat final : c’est la fonction Map. L’ensemble des résultats est
traité (agrégation, filtre) : c’est la fonction Reduce.”
La première phase
(Map) est une
étape d’ingestion et
de transformation
des données sous
la forme de paires
clé/valeur.
Regroupement et tri
par clé et chaque
groupe est transmis
à une fonction
Reduce.
(Reduce) est une
étape de fusion des
enregistrements
par clé pour former
le résultat final.
Hadoop : Map Reduce.
1. savoir être et
2. savoir faire
3. sans faire savoir
1 - Configuration du job (définie par l’utilisateur)
2 - Découpage du jeu de données et distribution sur le cluster (géré par Hadoop)
3 - Démarrage de chaque tâche Map avec son propre jeu de données issu du découpage (géré par Hadoop)
4 - Exécution en parallèle de chaque fonction Map (implémentée par l’utilisateur)
5 - Les sorties des fonctions Map sont triées par clé pour former de nouvelles unités de données (gérées par Hadoop)
6 - Démarrage des tâches Reduce avec son propre jeu de données issu du tri (géré par Hadoop)
7 - Exécution en parallèle de chaque fonction Reduce (implémentée par l’utilisateur)
8 - Assemblage du résultat des opérations Reduce et Stockage (gérés par Hadoop)
Hadoop : Map Reduce.
● JobTracker :
○ Coordonne les Job Ma Reduce
sur le cluster, distribue les tâches
d’exécution (Map ou Reduce) au
TaskTracker.
○ Cohabite avec le NameNode. une
instance par cluster.
● TaskExecutor :
○ Exécute les tâches d'exécution
(Map ou Reduce)
○ Notification JobTracker (failover,
erreur…)
○ Cohabite avec un DataNode.
Autant d’instances que de
nœuds esclaves.
La communication entre les nœuds (NameNode/DataNode,
JobTracker/TaskTracker) s’effectue par RPC.
Hadoop : Map Reduce.
public class WordCountReducer extends MapReduceBase implements
Reducer {
public void reduce(Text key, Iterator values,
OutputCollector output, Reporter reporter )
throwsIOException {
int nbOcc = 0;
while (values.hasNext ()) {
nbOcc += values.next ().get();
}
output.collect (key, new IntWritable (nbOcc));}}
class WordCountMapper extends MapReduceBase implementsMapper{
private final static IntWritable mDefOcc = newIntWritable (1);
private Text mWord = new Text();
public void map(LongWritable key, Text value, OutputCollector
output, Reporter reporter ) throwsIOException {
String lLine = value.toString ();
StringTokenizer lIt = new StringTokenizer(lLine);
while (lIt.hasMoreTokens()) {
mWord.set(lIt.nextToken());
output.collect(mWord, mDefOcc);}}}
public class WordCount {
public static void main(String[] args) throws Exception {
JobConf conf = new JobConf (WordCount. class);
conf.setJobName ("Compteur de mots" );
conf.setMapperClass (WordCountMapper. class);
onf.setReducerClass (WordCountReducer. class);
conf.setInputFormat (TextInputFormat. class);
conf.setOutputFormat (TextOutputFormat. class);
FileInputFormat.setInputPaths (conf, newPath(args[0]));
FileOutputFormat.setOutputPath (conf, newPath(args[1]));
JobClient.runJob (conf);
}
Hadoop : YARN
YARN (Yet-Another-Resource-Negotiator) est aussi appelé MapReduce 2.0.
Ce n’est pas une refonte mais une évolution du framework MapReduce.
● YARN répond aux problématiques suivantes du Map Reduce :
○ Problème de limite de “Scalability” notamment par une meilleure
séparation de la gestion de l’état du cluster et des ressources.
■ ~ 4000 Noeuds, 40 000 Tâches concourantes.
○ Problème d’allocation des ressources.
○ Un support et un protocole clairs pour faciliter le développement
de frameworks transversaux.
Valeurs codées en dûr.Des tâches Map sont en attentes alors que des slots
de tâche reduce sont libres.
Hadoop : YARN
JT NN
TE DN TE DN TE DN
Cluster Apache Hadoop Classique
ResourceManager
AplicationMaster AM AM
TE DN TE DN TE DN
Le Job Tracker a trop de responsabilités.
● Gérer les ressources du cluster.
● Gérer tous les jobs
○ Allouer les tâches et les ordonnancer.
○ Monitorer l'exécution des tâches.
○ Gérer le fail-over.
○ ………..;
ResourceManager et Application Master.
● ResourceManager remplace le JobTracker
et ne gère que les ressources du Cluster.
● Une entité Application Master est allouée
par Application pour gérer les tâches.
● Application Master est déployée sur les
noeuds esclaves.
Re-penser l’architecture du Job Tracker.
● Séparer la gestion des ressources du cluster
de la coordination des jobs.
● Utiliser les noeuds esclaves pour
gérer les jobs.
ResourceManager
AplicationMaster AM AM
NodeManager DN NM DN NM DN
Cluster Apache Hadoop 2.0
Node Manager.
● Permet d’exécuter plus de tâches qui ont du sens
pour l’Application Master, pas seulement du Map et
du Reduce.
● La taille des ressources est variable (RAM, CPU,
network….). Plus de valeurs codées en dur qui
nécessitent une redémarrage.
~ 10K Noeuds par cluster.
~ 100 K Tâches concourantes
Hadoop : YARN
Hadoop : YARN
Hadoop se transforme en OS de la donnée !
● Client et cluster peuvent utiliser des versions différentes.
● Des protocoles de communication standardisés et documentés.
● Évolution du framework progressive avec rétro-compatibilité sans destruction des
services.
Hadoop : HBase
Architecture HBase
Représentation des données Hbase
- Hbase est :
● Insipirée par Google Big Table.
● Distribuée et orientée Colonne.
● Multidimensionnelle.
● Hautement disponible.
● Haute performance.
● Système de stockage.
● Souvent utilisée avec HDFS.
- Pourquoi HBase + HDFS ?
● Une représentation orientée
colonne du HDFS.
● Partitionnement et tri automatique
+Rapide +GroupBy +OrderBy
● Ajout/Suppression à chaud des
Noeuds.
● Accès Read/Write des données
aléatoires, dialogues directs avec les
noeuds esclaves.
Hadoop : Hive
● C’est quoi Hive ?
○ Initié par Facebook.
■ Rentabiliser les ingénieurs SQL.
■ Démocratiser Map/Reduce.
○ Infrastructure pour entrepôt de données “Data WareHouse”
● Comment ça marche ?
○ Hive a pour fondation Hadoop.
○ Hive structure les données tables, colonnes, lignes.
○ Hive stocke les données dans HDFS.
○ Hive compile les requêtes SQL en Job Map/Reduce.
○ Hive propose un langage de requête SQL HIVEQL DDL et DML.
Hadoop : Hive
Chargement données depuis HDFS
Création de tables.
Sélection et insertion de résultats.
Hadoop : Vue d’ensemble.
Hadoop : Autres composants
Flume
Solution de collecte et d’agrégation
de log native avec HDFS.
Knox
Gestion de la sécurité et
authentification.
WebHDFS
Servie REST pour HDFS.
Mahout
DataMining.
Besoin temps réels “Streaming”
Drill, Tez, Spark, Sorm…..
Et la gestion des transactions ????
Déjà dans toutes les têtes surtout celle de Doug
Cutting (le père d’Hadoop) !!
Hadoop : Les Distributions
Pourquoi des distributions ?
● Pour regrouper de façon homogène les différentes
extensions.
● Pour faciliter l’installation, la diffusion, le support.
● Pour permettre d’incuber des “Business Model” pour
les éditeurs qui contribuent largement à Hadoop.
● 3 acteurs majeurs dans l'écosystème :
○ Horton Works
○ Cloudera
○ MapR
Hadoop : Les Distributions
● 2011 Yahoo.
● Composants Open Source.
● 1:1 avec Hadoop.
● Projets reversés à Hadoop :
○ YARN
○ HCatalog
○ Ambari
Hadoop : Les Distributions
● Commercial et Open Source.
● Hadoop + Composants Maison.
● Composants propriétaires :
○ Impala (requêtes temps réel)
○ Cloudera Manager (gestion du cluster,
déploiement..)● Projets reversés à Hadoop :
○ Hadoop Common (Utilitaires)
○ Hue (SDK IHM)
○ Whirr (SAAS Hadoop)
Hadoop : Les Distributions
● 2009, Commercial et Open Source
● Refonte du coeur de la plateforme (MapR
FS et MapR MapReduce)
● Optimisé pour Hbase.
● Projets reversés à Hadoop :
○ Hbase, Pig, Hive, Mahout
○ Sqoop, Flume.
● Composants propriétaires :
○ Cascading (Usine de dev Java)
○ Vaidya (Perf, Benchmark)
○ Drill (Requêtes temps réel)
Hadoop : Les Distributions
Comment choisir une solution Hadoop ?
● Modèle économique (Open Source, Commercial..).
● Les composants.
● Maturité de la solution, le support, la documentation, le
retour d'expériences.
● Le rapport avec Hadoop, la rapidité des évolutions.
● Partenariats (hébergeurs…), compatibilité avec les
produits satellites.
Hadoop et le "Big Data"
Le Projet Spark.
Hadoop : Qu’est que Spark ?
“Apache Spark is a powerful open source processing engine for Hadoop data
built around speed, ease of use, and sophisticated analytics. It was
originally developed in 2009 in UC Berkeley’s AMPLab, and open sourced in
2010.”
● Ce n’est pas une version modifiée de Hadoop.
● C’est un moteur Map-Reduce plus évolué, plus rapide.
○ Utilisation de la mémoire pour optimiser les traitements.
○ Des API’S pour faciliter et optimiser les étapes d’analyses.
○ Permettre le traitement temps réel des données.
● Compatible avec le système de Stockage de Hadoop (HDFS, Hive,
SequenceFiles…)
Hadoop : Spark, plus rapide
Lent, provoqué par les IO, Sérialision, Réplication
Utilisation d’une mémoire partagée RDD’s 100x plus
rapide, 10x moins d’itérations.
RDD’s (Resilient Distributed DataSet)
- Une collection d’objets distribués, mise
en cache en mémoire au travers du
cluster.
- Une API’ pour manipuler ces objets
“Operators”
- Système de fail over automatique.
Logistic regression in Hadoop and Spark
Hadoop : Spark, facile à utiliser.
● Une liste d’Operators pour faciliter la manipulation des données au
travers des RDD’S.
Map, filter, groupBy, sort, join, leftOuterJoin, ritghtOuterJoin, reduce, count, reduceByKey,
groupByKey, first, union, cross, sample, cogroup, take, partionBy, pipe, save…..
● Compatible avec les langages de programmation fonctionnel Scala,
Python...
Hadoop : Spark, un Framework
analytique.
Shark : Moteur de requête SQL,
basé sur le coeur de Spark (in
memory), il permet d'exécuter des
requêtes hive sans modification
100x plus rapidement.
MLLib : Library d’algorithmes d’
analyses de données (data mining),
scalable et optimisé (limite des
interactions, RDD’s), Kmeans, ALS,
L2-> L1...
Calling MLlib in Scala
Spark Streaming : A opposer aux
traitements “batch”, mise à jour d’un
état dynamiquement, piloté par des
évènements sur les données “event
processing”. (Filtre de Spam,
analyse de click, reporting temps
réel…)
Counting tweets on a sliding window
Hadoop et le "Big Data"
Square Predict, Cas d’utilisation.
Hadoop : Cas d’utilisation
Square Predict
“Le projet Square Predict , valoriser et monétiser l'énorme
quantité de données à disposition des assureurs”
“L’objectif de Square Predict est de générer des
prédictions utiles au business des assureurs par l’analyse
de leur données fusionnées avec l’Open Data.”
Le projet Square Predict est un projet Open Source de 2,76
M€ sur 3 ans (de 09/2013 à 09/2016).
Hadoop : Cas d’utilisation
Square Predict
“Estimation en temps réel de l’impact (étendue + sévérité)
des dégâts causés par un évènement climatique de grande
ampleur”
“Identification des facteurs expliquant la hausse de la
sinistralité incendie/dégâts des eaux par zones
géographiques”
“Identification des facteurs expliquant la hausse de la
sinistralité automobiles ”
Hadoop : Architecture
premier niveau.
Hadoop : Architecture
second niveau.
Hadoop : De vrais projets.
● EDF : Nouveau compteur électrique “Linky”
● Joint-venture (Telefonica, T-Mobile, Orange et Vodafone) :
“Le projet Webe, Traiter en temps réel les données générées par des dizaines de millions d'abonnés. A la clé,
l'idée est de permettre aux annonceurs de proposer des services contextualisés et personnalisés, mais aussi des
promotions et offres sur-mesure géolocalisées en fonction de zones prédéfinies “
● Ericsson : le Big Data au service de l'IP TV
“Personnaliser programmes et publicités en fonction de la météo, Nous corrélons les données des usages IP TV
avec des informations météorologiques mais aussi sociales : vacances scolaires, évènements politiques ou sportifs,
campagnes publicitaires…”
● TapValue : Le retargeting multicanal
“Retargeting publicitaire multicanal et géolocalisé”, L'application présentée par cette start-up française,
baptisée Profilematch, permet de traquer le comportement de l'utilisateur quel que soit le terminal qu'il utilise :
PC, tablette, smartphone... Et lui proposer un contenu personnalisé adapté à chaque écran, en fonction de ses
interactions avec la marque.”
Trophées de l'innovation
Big Data 2014
Hadoop et le "Big Data"
Fin, Merci, des Questions ?

Contenu connexe

Tendances

BigData_TP3 : Spark
BigData_TP3 : SparkBigData_TP3 : Spark
BigData_TP3 : SparkLilia Sfaxi
 
BigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-ReduceBigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-ReduceLilia Sfaxi
 
Hadoop MapReduce - OSDC FR 2009
Hadoop MapReduce - OSDC FR 2009Hadoop MapReduce - OSDC FR 2009
Hadoop MapReduce - OSDC FR 2009Olivier Grisel
 
Hadoop Hbase - Introduction
Hadoop Hbase - IntroductionHadoop Hbase - Introduction
Hadoop Hbase - IntroductionBlandine Larbret
 
Big Data: Hadoop Map / Reduce sur Windows et Windows Azure
Big Data: Hadoop Map / Reduce sur Windows et Windows AzureBig Data: Hadoop Map / Reduce sur Windows et Windows Azure
Big Data: Hadoop Map / Reduce sur Windows et Windows AzureMicrosoft
 
Hadoop et son écosystème
Hadoop et son écosystèmeHadoop et son écosystème
Hadoop et son écosystèmeKhanh Maudoux
 
Cours Big Data Chap2
Cours Big Data Chap2Cours Big Data Chap2
Cours Big Data Chap2Amal Abid
 
Petit-déjeuner MapReduce-La révolution dans l’analyse des BigData
Petit-déjeuner MapReduce-La révolution dans l’analyse des BigDataPetit-déjeuner MapReduce-La révolution dans l’analyse des BigData
Petit-déjeuner MapReduce-La révolution dans l’analyse des BigDataMarc Bojoly
 
Presentation Hadoop Québec
Presentation Hadoop QuébecPresentation Hadoop Québec
Presentation Hadoop QuébecMathieu Dumoulin
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopLilia Sfaxi
 
Cours Big Data Chap5
Cours Big Data Chap5Cours Big Data Chap5
Cours Big Data Chap5Amal Abid
 
Hadoop Introduction in Paris
Hadoop Introduction in ParisHadoop Introduction in Paris
Hadoop Introduction in ParisTed Drake
 
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -introNosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -introOlivier Mallassi
 
Big Data, Hadoop & Spark
Big Data, Hadoop & SparkBig Data, Hadoop & Spark
Big Data, Hadoop & SparkAlexia Audevart
 
Spark (v1.3) - Présentation (Français)
Spark (v1.3) - Présentation (Français)Spark (v1.3) - Présentation (Français)
Spark (v1.3) - Présentation (Français)Alexis Seigneurin
 
BigData_Chp4: NOSQL
BigData_Chp4: NOSQLBigData_Chp4: NOSQL
BigData_Chp4: NOSQLLilia Sfaxi
 
Annexe Big Data
Annexe Big DataAnnexe Big Data
Annexe Big DataAmal Abid
 
Plateforme bigdata orientée BI avec Hortoworks Data Platform et Apache Spark
Plateforme bigdata orientée BI avec Hortoworks Data Platform et Apache SparkPlateforme bigdata orientée BI avec Hortoworks Data Platform et Apache Spark
Plateforme bigdata orientée BI avec Hortoworks Data Platform et Apache SparkALTIC Altic
 
Big Data : Une Introduction
Big Data : Une IntroductionBig Data : Une Introduction
Big Data : Une IntroductionNicolas OGÉ
 

Tendances (20)

BigData_TP3 : Spark
BigData_TP3 : SparkBigData_TP3 : Spark
BigData_TP3 : Spark
 
BigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-ReduceBigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-Reduce
 
Hadoop MapReduce - OSDC FR 2009
Hadoop MapReduce - OSDC FR 2009Hadoop MapReduce - OSDC FR 2009
Hadoop MapReduce - OSDC FR 2009
 
Hadoop Hbase - Introduction
Hadoop Hbase - IntroductionHadoop Hbase - Introduction
Hadoop Hbase - Introduction
 
Big Data: Hadoop Map / Reduce sur Windows et Windows Azure
Big Data: Hadoop Map / Reduce sur Windows et Windows AzureBig Data: Hadoop Map / Reduce sur Windows et Windows Azure
Big Data: Hadoop Map / Reduce sur Windows et Windows Azure
 
Hadoop et son écosystème
Hadoop et son écosystèmeHadoop et son écosystème
Hadoop et son écosystème
 
Cours Big Data Chap2
Cours Big Data Chap2Cours Big Data Chap2
Cours Big Data Chap2
 
Petit-déjeuner MapReduce-La révolution dans l’analyse des BigData
Petit-déjeuner MapReduce-La révolution dans l’analyse des BigDataPetit-déjeuner MapReduce-La révolution dans l’analyse des BigData
Petit-déjeuner MapReduce-La révolution dans l’analyse des BigData
 
Presentation Hadoop Québec
Presentation Hadoop QuébecPresentation Hadoop Québec
Presentation Hadoop Québec
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans Hadoop
 
Cours Big Data Chap5
Cours Big Data Chap5Cours Big Data Chap5
Cours Big Data Chap5
 
Hadoop Introduction in Paris
Hadoop Introduction in ParisHadoop Introduction in Paris
Hadoop Introduction in Paris
 
Introduction à Hadoop
Introduction à HadoopIntroduction à Hadoop
Introduction à Hadoop
 
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -introNosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
 
Big Data, Hadoop & Spark
Big Data, Hadoop & SparkBig Data, Hadoop & Spark
Big Data, Hadoop & Spark
 
Spark (v1.3) - Présentation (Français)
Spark (v1.3) - Présentation (Français)Spark (v1.3) - Présentation (Français)
Spark (v1.3) - Présentation (Français)
 
BigData_Chp4: NOSQL
BigData_Chp4: NOSQLBigData_Chp4: NOSQL
BigData_Chp4: NOSQL
 
Annexe Big Data
Annexe Big DataAnnexe Big Data
Annexe Big Data
 
Plateforme bigdata orientée BI avec Hortoworks Data Platform et Apache Spark
Plateforme bigdata orientée BI avec Hortoworks Data Platform et Apache SparkPlateforme bigdata orientée BI avec Hortoworks Data Platform et Apache Spark
Plateforme bigdata orientée BI avec Hortoworks Data Platform et Apache Spark
 
Big Data : Une Introduction
Big Data : Une IntroductionBig Data : Une Introduction
Big Data : Une Introduction
 

En vedette

Introduction to Cassandra (June 2010)
Introduction to Cassandra (June 2010)Introduction to Cassandra (June 2010)
Introduction to Cassandra (June 2010)gdusbabek
 
Introduction aux bases de données NoSQL
Introduction aux bases de données NoSQLIntroduction aux bases de données NoSQL
Introduction aux bases de données NoSQLAntoine Augusti
 
Les modèles NoSQL
Les modèles NoSQLLes modèles NoSQL
Les modèles NoSQLebiznext
 
Server-side JS with NodeJS
Server-side JS with NodeJSServer-side JS with NodeJS
Server-side JS with NodeJSLilia Sfaxi
 
Mobile developement
Mobile developementMobile developement
Mobile developementLilia Sfaxi
 
Architectures techniques NoSQL
Architectures techniques NoSQLArchitectures techniques NoSQL
Architectures techniques NoSQLOCTO Technology
 
Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...
Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...
Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...Hatim CHAHDI
 

En vedette (14)

These
TheseThese
These
 
Tp4 - PHP
Tp4 - PHPTp4 - PHP
Tp4 - PHP
 
Introduction to Cassandra (June 2010)
Introduction to Cassandra (June 2010)Introduction to Cassandra (June 2010)
Introduction to Cassandra (June 2010)
 
Introduction aux bases de données NoSQL
Introduction aux bases de données NoSQLIntroduction aux bases de données NoSQL
Introduction aux bases de données NoSQL
 
Les modèles NoSQL
Les modèles NoSQLLes modèles NoSQL
Les modèles NoSQL
 
NoSQL et Big Data
NoSQL et Big DataNoSQL et Big Data
NoSQL et Big Data
 
NoSQL: Introducción a las Bases de Datos no estructuradas
NoSQL: Introducción a las Bases de Datos no estructuradasNoSQL: Introducción a las Bases de Datos no estructuradas
NoSQL: Introducción a las Bases de Datos no estructuradas
 
Server-side JS with NodeJS
Server-side JS with NodeJSServer-side JS with NodeJS
Server-side JS with NodeJS
 
Mobile developement
Mobile developementMobile developement
Mobile developement
 
NoSQL databases
NoSQL databasesNoSQL databases
NoSQL databases
 
Architectures techniques NoSQL
Architectures techniques NoSQLArchitectures techniques NoSQL
Architectures techniques NoSQL
 
Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...
Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...
Cours HBase et Base de Données Orientées Colonnes (HBase, Column Oriented Dat...
 
Une introduction à HBase
Une introduction à HBaseUne introduction à HBase
Une introduction à HBase
 
Les BD NoSQL
Les BD NoSQLLes BD NoSQL
Les BD NoSQL
 

Similaire à Techday Arrow Group: Hadoop & le Big Data

ch2-hadoop-L3-2023-4p (1).pdf
ch2-hadoop-L3-2023-4p (1).pdfch2-hadoop-L3-2023-4p (1).pdf
ch2-hadoop-L3-2023-4p (1).pdfsalmanakbi
 
Hadoop et son écosystème - v2
Hadoop et son écosystème - v2Hadoop et son écosystème - v2
Hadoop et son écosystème - v2Khanh Maudoux
 
Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )
Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )
Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )Hamza Ben Marzouk
 
10 big data hadoop
10 big data hadoop10 big data hadoop
10 big data hadoopPatrick Bury
 
10 big data hadoop
10 big data hadoop10 big data hadoop
10 big data hadoopPatrick Bury
 
Big data: NoSQL comme solution
Big data: NoSQL comme solutionBig data: NoSQL comme solution
Big data: NoSQL comme solutionJEMLI Fathi
 
Cours Big Data Chap4 - Spark
Cours Big Data Chap4 - SparkCours Big Data Chap4 - Spark
Cours Big Data Chap4 - SparkAmal Abid
 
Présentation_HADOOP.pptx
Présentation_HADOOP.pptxPrésentation_HADOOP.pptx
Présentation_HADOOP.pptxbely26
 
Spad big data - sfds - 2016
Spad   big data - sfds - 2016Spad   big data - sfds - 2016
Spad big data - sfds - 2016Julien BLAIZE
 
Distributed programing (hadoop && java) version finale.pptx
Distributed programing  (hadoop && java) version finale.pptxDistributed programing  (hadoop && java) version finale.pptx
Distributed programing (hadoop && java) version finale.pptxAhmed rebai
 
Spark-adabra, Comment Construire un DATALAKE ! (Devoxx 2017)
Spark-adabra, Comment Construire un DATALAKE ! (Devoxx 2017) Spark-adabra, Comment Construire un DATALAKE ! (Devoxx 2017)
Spark-adabra, Comment Construire un DATALAKE ! (Devoxx 2017) univalence
 
P8 03 presentation
P8 03 presentationP8 03 presentation
P8 03 presentationrajiasellami
 
20160216 - From BigData to BigProcessing
20160216 - From BigData to BigProcessing20160216 - From BigData to BigProcessing
20160216 - From BigData to BigProcessingPierre-Marie Brunet
 
Modern DevOps - kill the bottleneck (part 2/2)
Modern DevOps - kill the bottleneck (part 2/2)Modern DevOps - kill the bottleneck (part 2/2)
Modern DevOps - kill the bottleneck (part 2/2)Loic Ortola
 

Similaire à Techday Arrow Group: Hadoop & le Big Data (20)

ch2-hadoop-L3-2023-4p (1).pdf
ch2-hadoop-L3-2023-4p (1).pdfch2-hadoop-L3-2023-4p (1).pdf
ch2-hadoop-L3-2023-4p (1).pdf
 
Hadoop et son écosystème - v2
Hadoop et son écosystème - v2Hadoop et son écosystème - v2
Hadoop et son écosystème - v2
 
Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )
Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )
Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )
 
10 big data hadoop
10 big data hadoop10 big data hadoop
10 big data hadoop
 
10 big data hadoop
10 big data hadoop10 big data hadoop
10 big data hadoop
 
spark_intro_1208
spark_intro_1208spark_intro_1208
spark_intro_1208
 
Spark - Ippevent 19-02-2015
Spark - Ippevent 19-02-2015Spark - Ippevent 19-02-2015
Spark - Ippevent 19-02-2015
 
Chapitre 3 spark
Chapitre 3 sparkChapitre 3 spark
Chapitre 3 spark
 
Big data: NoSQL comme solution
Big data: NoSQL comme solutionBig data: NoSQL comme solution
Big data: NoSQL comme solution
 
Presentation Map Reduce
Presentation Map ReducePresentation Map Reduce
Presentation Map Reduce
 
Cours Big Data Chap4 - Spark
Cours Big Data Chap4 - SparkCours Big Data Chap4 - Spark
Cours Big Data Chap4 - Spark
 
Présentation_HADOOP.pptx
Présentation_HADOOP.pptxPrésentation_HADOOP.pptx
Présentation_HADOOP.pptx
 
Spad big data - sfds - 2016
Spad   big data - sfds - 2016Spad   big data - sfds - 2016
Spad big data - sfds - 2016
 
Distributed programing (hadoop && java) version finale.pptx
Distributed programing  (hadoop && java) version finale.pptxDistributed programing  (hadoop && java) version finale.pptx
Distributed programing (hadoop && java) version finale.pptx
 
Spark-adabra, Comment Construire un DATALAKE ! (Devoxx 2017)
Spark-adabra, Comment Construire un DATALAKE ! (Devoxx 2017) Spark-adabra, Comment Construire un DATALAKE ! (Devoxx 2017)
Spark-adabra, Comment Construire un DATALAKE ! (Devoxx 2017)
 
Afterwork hadoop
Afterwork hadoopAfterwork hadoop
Afterwork hadoop
 
P8 03 presentation
P8 03 presentationP8 03 presentation
P8 03 presentation
 
20160216 - From BigData to BigProcessing
20160216 - From BigData to BigProcessing20160216 - From BigData to BigProcessing
20160216 - From BigData to BigProcessing
 
Hadoop
HadoopHadoop
Hadoop
 
Modern DevOps - kill the bottleneck (part 2/2)
Modern DevOps - kill the bottleneck (part 2/2)Modern DevOps - kill the bottleneck (part 2/2)
Modern DevOps - kill the bottleneck (part 2/2)
 

Plus de Arrow Group

Techday Arrow Group: Java 8
Techday Arrow Group: Java 8Techday Arrow Group: Java 8
Techday Arrow Group: Java 8Arrow Group
 
Arrow Group: Techday Big Data - Etat et Enjeu pour l'Assurance
Arrow Group: Techday Big Data - Etat et Enjeu pour l'AssuranceArrow Group: Techday Big Data - Etat et Enjeu pour l'Assurance
Arrow Group: Techday Big Data - Etat et Enjeu pour l'AssuranceArrow Group
 
Techday Arrow Group: Delphi Xe5 Android - une approche par la 3D
Techday Arrow Group: Delphi Xe5 Android - une approche par la 3DTechday Arrow Group: Delphi Xe5 Android - une approche par la 3D
Techday Arrow Group: Delphi Xe5 Android - une approche par la 3DArrow Group
 
Formation html5 css3 java script
Formation html5 css3 java scriptFormation html5 css3 java script
Formation html5 css3 java scriptArrow Group
 
Arrow Group: nos événements et recrutements en février / mars 2015
Arrow Group: nos événements et recrutements en février / mars 2015Arrow Group: nos événements et recrutements en février / mars 2015
Arrow Group: nos événements et recrutements en février / mars 2015Arrow Group
 
Arrow Institute: petit-déjeuner thématique autour de Bitcoin - Qu’est-ce que ...
Arrow Institute: petit-déjeuner thématique autour de Bitcoin - Qu’est-ce que ...Arrow Institute: petit-déjeuner thématique autour de Bitcoin - Qu’est-ce que ...
Arrow Institute: petit-déjeuner thématique autour de Bitcoin - Qu’est-ce que ...Arrow Group
 

Plus de Arrow Group (7)

Techday Arrow Group: Java 8
Techday Arrow Group: Java 8Techday Arrow Group: Java 8
Techday Arrow Group: Java 8
 
Arrow Group: Techday Big Data - Etat et Enjeu pour l'Assurance
Arrow Group: Techday Big Data - Etat et Enjeu pour l'AssuranceArrow Group: Techday Big Data - Etat et Enjeu pour l'Assurance
Arrow Group: Techday Big Data - Etat et Enjeu pour l'Assurance
 
Techday Arrow Group: Delphi Xe5 Android - une approche par la 3D
Techday Arrow Group: Delphi Xe5 Android - une approche par la 3DTechday Arrow Group: Delphi Xe5 Android - une approche par la 3D
Techday Arrow Group: Delphi Xe5 Android - une approche par la 3D
 
Advanced html5
Advanced html5Advanced html5
Advanced html5
 
Formation html5 css3 java script
Formation html5 css3 java scriptFormation html5 css3 java script
Formation html5 css3 java script
 
Arrow Group: nos événements et recrutements en février / mars 2015
Arrow Group: nos événements et recrutements en février / mars 2015Arrow Group: nos événements et recrutements en février / mars 2015
Arrow Group: nos événements et recrutements en février / mars 2015
 
Arrow Institute: petit-déjeuner thématique autour de Bitcoin - Qu’est-ce que ...
Arrow Institute: petit-déjeuner thématique autour de Bitcoin - Qu’est-ce que ...Arrow Institute: petit-déjeuner thématique autour de Bitcoin - Qu’est-ce que ...
Arrow Institute: petit-déjeuner thématique autour de Bitcoin - Qu’est-ce que ...
 

Techday Arrow Group: Hadoop & le Big Data

  • 1. Hadoop et le "Big Data" La Technologie Hadoop au coeur des projets "Big Data".
  • 2. Hadoop : Qui suis-je ? Stéphane Goumard ● Expertise environnement Java. ○ Architecte technique. ○ Consultant. ○ Formateur. ● Responsable Technique du Projet de Recherche et Innovation “Big Data”, “Square Predict”.
  • 3. Hadoop et le "Big Data" Le “Big Data”
  • 4. Big Data : Quoi de neuf ? Facabook warehouses 180 petabytes of data a year. Twitter manages 1.2 million deliveries per second Nouveaux Métiers “Data Scientist” Nouveaux enjeux économiques Nouvelles technologies
  • 5. Big Data : Quoi de neuf ? “Big Data is data that exceeds the processing capacity of coventionnal database systems. The data is too big, move too fast, or doesn’t fit the strictures of your database architectures. To gain value from this data, you must choose an alternative way to process it.” Edd Dumbill, O’Reilly
  • 6. Hadoop et le "Big Data" Hadoop.
  • 7. Hadoop : Définition “Hadoop est le framework le plus utilisé actuellement pour manipuler et faire du Big Data. Apache Hadoop est un framework qui va permettre le traitement de données massives sur un cluster allant d’une à plusieurs centaines de machines. C’est un projet open source (Apache v2 licence).”
  • 8. Hadoop : Historique Création de Nutch par Doug Cutting et Mike Cafarella Google publie GFS & Map Reduce Doug Cutting ajoute DFS & Map Reduce à Nutch Yahoo embauche Cutting & adopte Hadoop Hadoop est elu Top Project Apache Facebook sort Hive le support du SQL pour Hadoop Cloudera embauche Cutting
  • 11. Hadoop : Références. En 10 ans, son adoption ne fait plus aucun doute !
  • 12. Hadoop : HDFS “HDFS (Hadoop Distributed File System) est un système de fichiers Java utilisé pour stocker des données structurées ou non sur un ensemble de serveurs distribués.” ● Node (Master/slave) : Dans une architecture Hadoop, chaque membre pouvant traiter des données est appelé Node (Noeud). ● Un seul d’entre eux peut être Master même s’il peut changer au cours de la vie du cluster, il s’agit du NameNode. Il est responsable de la localisation des données dans le cluster. ● Les autres nœuds, stockant les données, sont des slaves appelés DataNode. ● Le NameNode est donc un Single Point Of Failure (SPOF) dans un cluster Hadoop. (Hadoop 2.0, introduit un failover automatisé).
  • 13. Hadoop : HDFS ● BlockSize : Taille unitaire de stockage (généralement 64 Mo ou 128 Mo). C’est à dire qu’un fichier de 1 Go (et une taille de block de 128 Mo) sera divisé en 8 blocks. ● Réplication Factor : C’est le nombre de copies d’une donnée devant être réparties sur les différents noeuds du cluster. (souvent 3, c’est à dire une primaire et deux secondaires) ● Processus de lecture HDFS : ○ Interrogation du NameNode pour localiser les adresses des Nodes hébergeant les blocs sous- jacents les plus proches. ● Processus d’écriture ● Écriture sur le DataNode. ● DataNode communique ses blocs au NamenNde. Replication.. ● Write-once.
  • 14. ● Alternatives : ○ Hbase : Base NoSql insipirée de Google BigTable. Utilisée conjointement au système de fichiers HDFS, il facilite la distribution des données sur plusieurs Noeuds. On compare souvent Hbase => HDFS à ce que représente Json => XML. ○ MapR : Propose une atlernative à HDFS sans SPOF. C’est un fork de Hbase en mode propriétaire. ○ Cassandra : Initiée par Facebook qui l’abandonne au profit de Hbase, c’est une base NoSql qui optimise les opérations en écriture. Comme Hbase, elle ne remplace pas HDFS mais offre un moyen supplémentaire de l’exploiter. ○ Cloud : Les offres cloud peuvent être une alternative Amazon S3, Hadoop : HDFS
  • 15. Hadoop : Map Reduce. “A l’origine crée par Google pour son outil de recherche web. C’est un framework qui permet le décomposition d’une requête importante en un ensemble de requêtes plus petites qui produiront chacune un sous ensemble du résultat final : c’est la fonction Map. L’ensemble des résultats est traité (agrégation, filtre) : c’est la fonction Reduce.” La première phase (Map) est une étape d’ingestion et de transformation des données sous la forme de paires clé/valeur. Regroupement et tri par clé et chaque groupe est transmis à une fonction Reduce. (Reduce) est une étape de fusion des enregistrements par clé pour former le résultat final.
  • 16. Hadoop : Map Reduce. 1. savoir être et 2. savoir faire 3. sans faire savoir 1 - Configuration du job (définie par l’utilisateur) 2 - Découpage du jeu de données et distribution sur le cluster (géré par Hadoop) 3 - Démarrage de chaque tâche Map avec son propre jeu de données issu du découpage (géré par Hadoop) 4 - Exécution en parallèle de chaque fonction Map (implémentée par l’utilisateur) 5 - Les sorties des fonctions Map sont triées par clé pour former de nouvelles unités de données (gérées par Hadoop) 6 - Démarrage des tâches Reduce avec son propre jeu de données issu du tri (géré par Hadoop) 7 - Exécution en parallèle de chaque fonction Reduce (implémentée par l’utilisateur) 8 - Assemblage du résultat des opérations Reduce et Stockage (gérés par Hadoop)
  • 17. Hadoop : Map Reduce. ● JobTracker : ○ Coordonne les Job Ma Reduce sur le cluster, distribue les tâches d’exécution (Map ou Reduce) au TaskTracker. ○ Cohabite avec le NameNode. une instance par cluster. ● TaskExecutor : ○ Exécute les tâches d'exécution (Map ou Reduce) ○ Notification JobTracker (failover, erreur…) ○ Cohabite avec un DataNode. Autant d’instances que de nœuds esclaves. La communication entre les nœuds (NameNode/DataNode, JobTracker/TaskTracker) s’effectue par RPC.
  • 18. Hadoop : Map Reduce. public class WordCountReducer extends MapReduceBase implements Reducer { public void reduce(Text key, Iterator values, OutputCollector output, Reporter reporter ) throwsIOException { int nbOcc = 0; while (values.hasNext ()) { nbOcc += values.next ().get(); } output.collect (key, new IntWritable (nbOcc));}} class WordCountMapper extends MapReduceBase implementsMapper{ private final static IntWritable mDefOcc = newIntWritable (1); private Text mWord = new Text(); public void map(LongWritable key, Text value, OutputCollector output, Reporter reporter ) throwsIOException { String lLine = value.toString (); StringTokenizer lIt = new StringTokenizer(lLine); while (lIt.hasMoreTokens()) { mWord.set(lIt.nextToken()); output.collect(mWord, mDefOcc);}}} public class WordCount { public static void main(String[] args) throws Exception { JobConf conf = new JobConf (WordCount. class); conf.setJobName ("Compteur de mots" ); conf.setMapperClass (WordCountMapper. class); onf.setReducerClass (WordCountReducer. class); conf.setInputFormat (TextInputFormat. class); conf.setOutputFormat (TextOutputFormat. class); FileInputFormat.setInputPaths (conf, newPath(args[0])); FileOutputFormat.setOutputPath (conf, newPath(args[1])); JobClient.runJob (conf); }
  • 19. Hadoop : YARN YARN (Yet-Another-Resource-Negotiator) est aussi appelé MapReduce 2.0. Ce n’est pas une refonte mais une évolution du framework MapReduce. ● YARN répond aux problématiques suivantes du Map Reduce : ○ Problème de limite de “Scalability” notamment par une meilleure séparation de la gestion de l’état du cluster et des ressources. ■ ~ 4000 Noeuds, 40 000 Tâches concourantes. ○ Problème d’allocation des ressources. ○ Un support et un protocole clairs pour faciliter le développement de frameworks transversaux. Valeurs codées en dûr.Des tâches Map sont en attentes alors que des slots de tâche reduce sont libres.
  • 20. Hadoop : YARN JT NN TE DN TE DN TE DN Cluster Apache Hadoop Classique ResourceManager AplicationMaster AM AM TE DN TE DN TE DN Le Job Tracker a trop de responsabilités. ● Gérer les ressources du cluster. ● Gérer tous les jobs ○ Allouer les tâches et les ordonnancer. ○ Monitorer l'exécution des tâches. ○ Gérer le fail-over. ○ ………..; ResourceManager et Application Master. ● ResourceManager remplace le JobTracker et ne gère que les ressources du Cluster. ● Une entité Application Master est allouée par Application pour gérer les tâches. ● Application Master est déployée sur les noeuds esclaves. Re-penser l’architecture du Job Tracker. ● Séparer la gestion des ressources du cluster de la coordination des jobs. ● Utiliser les noeuds esclaves pour gérer les jobs.
  • 21. ResourceManager AplicationMaster AM AM NodeManager DN NM DN NM DN Cluster Apache Hadoop 2.0 Node Manager. ● Permet d’exécuter plus de tâches qui ont du sens pour l’Application Master, pas seulement du Map et du Reduce. ● La taille des ressources est variable (RAM, CPU, network….). Plus de valeurs codées en dur qui nécessitent une redémarrage. ~ 10K Noeuds par cluster. ~ 100 K Tâches concourantes Hadoop : YARN
  • 22. Hadoop : YARN Hadoop se transforme en OS de la donnée ! ● Client et cluster peuvent utiliser des versions différentes. ● Des protocoles de communication standardisés et documentés. ● Évolution du framework progressive avec rétro-compatibilité sans destruction des services.
  • 23. Hadoop : HBase Architecture HBase Représentation des données Hbase - Hbase est : ● Insipirée par Google Big Table. ● Distribuée et orientée Colonne. ● Multidimensionnelle. ● Hautement disponible. ● Haute performance. ● Système de stockage. ● Souvent utilisée avec HDFS. - Pourquoi HBase + HDFS ? ● Une représentation orientée colonne du HDFS. ● Partitionnement et tri automatique +Rapide +GroupBy +OrderBy ● Ajout/Suppression à chaud des Noeuds. ● Accès Read/Write des données aléatoires, dialogues directs avec les noeuds esclaves.
  • 24. Hadoop : Hive ● C’est quoi Hive ? ○ Initié par Facebook. ■ Rentabiliser les ingénieurs SQL. ■ Démocratiser Map/Reduce. ○ Infrastructure pour entrepôt de données “Data WareHouse” ● Comment ça marche ? ○ Hive a pour fondation Hadoop. ○ Hive structure les données tables, colonnes, lignes. ○ Hive stocke les données dans HDFS. ○ Hive compile les requêtes SQL en Job Map/Reduce. ○ Hive propose un langage de requête SQL HIVEQL DDL et DML.
  • 25. Hadoop : Hive Chargement données depuis HDFS Création de tables. Sélection et insertion de résultats.
  • 26. Hadoop : Vue d’ensemble.
  • 27. Hadoop : Autres composants Flume Solution de collecte et d’agrégation de log native avec HDFS. Knox Gestion de la sécurité et authentification. WebHDFS Servie REST pour HDFS. Mahout DataMining. Besoin temps réels “Streaming” Drill, Tez, Spark, Sorm….. Et la gestion des transactions ???? Déjà dans toutes les têtes surtout celle de Doug Cutting (le père d’Hadoop) !!
  • 28. Hadoop : Les Distributions Pourquoi des distributions ? ● Pour regrouper de façon homogène les différentes extensions. ● Pour faciliter l’installation, la diffusion, le support. ● Pour permettre d’incuber des “Business Model” pour les éditeurs qui contribuent largement à Hadoop. ● 3 acteurs majeurs dans l'écosystème : ○ Horton Works ○ Cloudera ○ MapR
  • 29. Hadoop : Les Distributions ● 2011 Yahoo. ● Composants Open Source. ● 1:1 avec Hadoop. ● Projets reversés à Hadoop : ○ YARN ○ HCatalog ○ Ambari
  • 30. Hadoop : Les Distributions ● Commercial et Open Source. ● Hadoop + Composants Maison. ● Composants propriétaires : ○ Impala (requêtes temps réel) ○ Cloudera Manager (gestion du cluster, déploiement..)● Projets reversés à Hadoop : ○ Hadoop Common (Utilitaires) ○ Hue (SDK IHM) ○ Whirr (SAAS Hadoop)
  • 31. Hadoop : Les Distributions ● 2009, Commercial et Open Source ● Refonte du coeur de la plateforme (MapR FS et MapR MapReduce) ● Optimisé pour Hbase. ● Projets reversés à Hadoop : ○ Hbase, Pig, Hive, Mahout ○ Sqoop, Flume. ● Composants propriétaires : ○ Cascading (Usine de dev Java) ○ Vaidya (Perf, Benchmark) ○ Drill (Requêtes temps réel)
  • 32. Hadoop : Les Distributions Comment choisir une solution Hadoop ? ● Modèle économique (Open Source, Commercial..). ● Les composants. ● Maturité de la solution, le support, la documentation, le retour d'expériences. ● Le rapport avec Hadoop, la rapidité des évolutions. ● Partenariats (hébergeurs…), compatibilité avec les produits satellites.
  • 33. Hadoop et le "Big Data" Le Projet Spark.
  • 34. Hadoop : Qu’est que Spark ? “Apache Spark is a powerful open source processing engine for Hadoop data built around speed, ease of use, and sophisticated analytics. It was originally developed in 2009 in UC Berkeley’s AMPLab, and open sourced in 2010.” ● Ce n’est pas une version modifiée de Hadoop. ● C’est un moteur Map-Reduce plus évolué, plus rapide. ○ Utilisation de la mémoire pour optimiser les traitements. ○ Des API’S pour faciliter et optimiser les étapes d’analyses. ○ Permettre le traitement temps réel des données. ● Compatible avec le système de Stockage de Hadoop (HDFS, Hive, SequenceFiles…)
  • 35. Hadoop : Spark, plus rapide Lent, provoqué par les IO, Sérialision, Réplication Utilisation d’une mémoire partagée RDD’s 100x plus rapide, 10x moins d’itérations. RDD’s (Resilient Distributed DataSet) - Une collection d’objets distribués, mise en cache en mémoire au travers du cluster. - Une API’ pour manipuler ces objets “Operators” - Système de fail over automatique. Logistic regression in Hadoop and Spark
  • 36. Hadoop : Spark, facile à utiliser. ● Une liste d’Operators pour faciliter la manipulation des données au travers des RDD’S. Map, filter, groupBy, sort, join, leftOuterJoin, ritghtOuterJoin, reduce, count, reduceByKey, groupByKey, first, union, cross, sample, cogroup, take, partionBy, pipe, save….. ● Compatible avec les langages de programmation fonctionnel Scala, Python...
  • 37. Hadoop : Spark, un Framework analytique. Shark : Moteur de requête SQL, basé sur le coeur de Spark (in memory), il permet d'exécuter des requêtes hive sans modification 100x plus rapidement. MLLib : Library d’algorithmes d’ analyses de données (data mining), scalable et optimisé (limite des interactions, RDD’s), Kmeans, ALS, L2-> L1... Calling MLlib in Scala Spark Streaming : A opposer aux traitements “batch”, mise à jour d’un état dynamiquement, piloté par des évènements sur les données “event processing”. (Filtre de Spam, analyse de click, reporting temps réel…) Counting tweets on a sliding window
  • 38. Hadoop et le "Big Data" Square Predict, Cas d’utilisation.
  • 39. Hadoop : Cas d’utilisation Square Predict “Le projet Square Predict , valoriser et monétiser l'énorme quantité de données à disposition des assureurs” “L’objectif de Square Predict est de générer des prédictions utiles au business des assureurs par l’analyse de leur données fusionnées avec l’Open Data.” Le projet Square Predict est un projet Open Source de 2,76 M€ sur 3 ans (de 09/2013 à 09/2016).
  • 40. Hadoop : Cas d’utilisation Square Predict “Estimation en temps réel de l’impact (étendue + sévérité) des dégâts causés par un évènement climatique de grande ampleur” “Identification des facteurs expliquant la hausse de la sinistralité incendie/dégâts des eaux par zones géographiques” “Identification des facteurs expliquant la hausse de la sinistralité automobiles ”
  • 43. Hadoop : De vrais projets. ● EDF : Nouveau compteur électrique “Linky” ● Joint-venture (Telefonica, T-Mobile, Orange et Vodafone) : “Le projet Webe, Traiter en temps réel les données générées par des dizaines de millions d'abonnés. A la clé, l'idée est de permettre aux annonceurs de proposer des services contextualisés et personnalisés, mais aussi des promotions et offres sur-mesure géolocalisées en fonction de zones prédéfinies “ ● Ericsson : le Big Data au service de l'IP TV “Personnaliser programmes et publicités en fonction de la météo, Nous corrélons les données des usages IP TV avec des informations météorologiques mais aussi sociales : vacances scolaires, évènements politiques ou sportifs, campagnes publicitaires…” ● TapValue : Le retargeting multicanal “Retargeting publicitaire multicanal et géolocalisé”, L'application présentée par cette start-up française, baptisée Profilematch, permet de traquer le comportement de l'utilisateur quel que soit le terminal qu'il utilise : PC, tablette, smartphone... Et lui proposer un contenu personnalisé adapté à chaque écran, en fonction de ses interactions avec la marque.” Trophées de l'innovation Big Data 2014
  • 44. Hadoop et le "Big Data" Fin, Merci, des Questions ?