© OCTO 2011
Présentation de MapReduce/Hadoop
Olivier Mallassi, architecte senior OCTO, omallassi@octo.com
Marc Bojoly, architecte senior OCTO, mbojoly@octo.com
2© OCTO 2011
De nouvelles opportunités
technologiques
Diminution des coûts d’infrastructure
 « La nature n’aime pas le vide »…Les possibilités de stockage à des coûts raisonnables
vont être utilisées
 Des technologies qui utilisent des mécanismes de réplication plutôt que des stratégies de
« backup/restore »
 En partie à cause des volumes
3@OCTO 2011
Source :http://www.mkomo.com/cost-per-gigabyte
0.01
0.10
1.00
10.00
100.00
1,000.00
10,000.00
100,000.00
1,000,000.00
1965 1970 1975 1980 1985 1990 1995 2000 2005 2010 2015
100k $/GB
0,10 $/GB
HDD
RAM
0
10
20
30
40
50
60
70
1991 1996 1998 2001 2006
Débit(MB/s)
Augmentation des performances (des disques)
 Des débits disques de plus en
plus rapides
 Sans parler du SSD
 Capacité de stockage en
mémoire
• Accompagné des gains en
performance
 …une aide pour réaliser
 Plus de traitements,
 Plus vite
4@OCTO 2011
Gain : x91
64 MB/s
0,7 MB/s
Seagate
Barracuda
7200.10
Seagate
Barracuda
ATA IV
IBM DTTA
35010
« Commoditization » de l’infrastructure
 Des besoins qui dépassent la capacité d’une machine unique
 Une pression des coûts qui pousse vers le « commodities »
 Des technologies distribuées
 Le passage du monde centralisé au monde distribué
5@OCTO 2011
Source : « Datacenter As A Computer »
$
$
« Big Data » caractéristiques : complexité des
analyses
6@OCTO 2011
Complexitédesanalyses&volumedesdonnées
«DataMining»/«DataAnalytics»
Détecter,Anticiper/Expliquersurlabasedupassé
• Faire ce que l’on fait aujourd’hui…avec plus de données : être plus précis
• Analyse de risques, fraudes
• A/B testing, segmentation
• …
• Introduire des données comportementales
• Analyses comportementales
• Pourcentage d’internautes allant au bout du processus d’achat
• Publicité , contenu contextuel fonction du client et de son comportement
• Intégration de données issues de la foule
• Impact de twitter sur les marchés financiers
• Utilisation de twitter pour mesurer sa réputation
• Vers plus de « ad hoc » …
• Par opposition au « pré calculé »
• Déceler des comportements
• « Association rule learning »
• Faire ressortir les produits qui sont systématiquement achetés
conjointement
• « Machine learning » appliquée au « Data mining »
• Détection de pattern, classification ou « automatic pattern recognition »
Définition Description
Structured - RDBMS (ACID, typage forte, support du schéma)
Semi-
Structured
- XML files
- Data files (csv…)
Quasi-
Structured
- Web Clickstream data, log data…
Unstructured - Text documents, images, videos
« Big Data » caractéristiques : variété et variabilité
des données
 Un équilibre « étrange »
 Les besoins d’analyse ont un impact sur la structuration des données
 L’analyse de données non structurées est plus évolutive mais « coûte
plus » (ie. « brute force » / « full scan »)
7@OCTO 2011
RDBMS
Document
K/V pairs
Fichiers
Quelles solutions
8@OCTO 2011
Nouveaux
algorithmes de
type « Massive
Parallel
Processing » :
Map Reduce
Et un marché
Augmentation
volumétrie
Complexité des
analyses
Faible structuration
de la donnée
Evolution des
infrastructures
9© OCTO 2011
L’écosystème Hadoop
Panorama du marché
Open Source
• Apache
• Avec support
professionnel
• Cloudera
• Hortonworks
• DataStax (Brisk)
Editeurs/Cloud
• Greenplum
(EMC)
• IBM InfoSphere
BigInsights
• Platform
computing
• Amazon Elastic
MapReduce
10@OCTO 2011
De nombreuses
solutions
d’entreprise
souvent construites autour
d’Hadoop …+
Architecture de l’écosystème Hadoop
11@OCTO 2011
Traitement
MapReduce
Framework permettant de traiter des données en parallèle
Requêtage
Pig
Langage de flux de données
Hive
DSL de requêtage « SQL-like »
Workflow
Oozie / Azkaban
Workflow pour jobs Hadoops dépendants
Infrastructure
Intégration au SI
Flume, Chukwa, Scribe…
Collection de données fiable et résiliente
Sqoop
Intégration RDBMS & Hadoop
Supervision
Platform Management
Console
Hue
Traitement distribué avancé
Mahout
Machine learning
Hama
Bulk Synchronous Processing
Stockage
HDFS
Un système de fichiers distribué write-once, read-many
Hbase
Base de données pour des accès aléatoires read/write
Reporting
Hue Beeswax
Interface web de requêtage
Pentaho
Reporting
IBM BigSheets
Outil de requêtage
Le cœur de l’architecture Hadoop
12@OCTO 2011
Traitement
MapReduce
Framework permettant de traiter des données en parallèle
Requêtage
Pig
Langage de flux de données
Hive
DSL de requêtage « SQL-like »
Workflow
Oozie / Azkaban
Workflow pour jobs Hadoops dépendants
Infrastructure
Intégration au SI
Flume, Chukwa, Scribe…
Collection de données fiable et résiliente
Sqoop
Intégration RDBMS & Hadoop
Supervision
Platform Management
Console
Hue
Traitement distribué avancé
Mahout
Machine learning
Hama
Bulk Synchronous Processing
Stockage
HDFS
Un système de fichiers distribués write-once, read-many
Hbase
Base de données pour des accès aléatoires read/write
Reporting
Hue Beeswax
Interface web de requêtage
Pentaho
Reporting
IBM BigSheets
Outil de requêtage
Stockage
Requêtage
Visualisation
HDFS
Un système de fichiers distribués write-once, read-many
Hbase
Base de données pour des accès aléatoires read/write
Pig
Langage de flux de données
Hive
DSL de requêtage « SQL-like »
Oozie / Askaban
Workflow pour jobs Hadoops dépendants
Intégration au SI
Supervision
Ganglia, Nagios
Zookeeper
Service de coordination
Flume, Chukwa, Scribe
Collection de données fiable et résiliente
Sqoop
Intégration RDBMS & Hadoop
Développement
Karmasphere Studio
IDE et outil de requêtage
IBM BigSheets
Outil de requêtage
Hue
Interface web de supervision et de requêtage
Stockage
Traitement
MapReduce
Un framework de traitement de données
par transformations de fichiers
parallélisées et colocalisées
HDFS
Un système de fichiers applicatif distribué
qui assure la distribution de la charge et la
tolérance aux pannes
Hadoop Distributed File System
13@OCTO 2011
HDFS
NameNode IP#1
File.txt IP#2 & 5 IP#2 & 4 IP#3 & 4 IP#3 & 4
…..
DataNode-IP#2
Fichier.txt
File#1-Block#1
File#1-Block#2
DataNode-IP#3 DataNode-IP#4 DataNode-IP#5
File#1-Block#3
File#1-Block#4
File#1-Block#2
File#1-Block#3
File#1-Block#1
File#1-Block#4
hdfs://IP#1:9000 xxx://….
File#n-Block#n File#n-Block#n File#n-Block#n File#n-Block#n
JOB
Hadoop MapReduce
14@OCTO 2011
IP#1 (Master)
IP#2
(Slave)
HDFS Layer NameNode DataNode
Map/Reduce Layer
JobTracker
TaskTracker
IP#3
(Slave)
DataNode
TaskTracker
IP#4
(Slave)
DataNode
TaskTracker
IP#5
(Slave)
DataNode
TaskTracker
Programme
MapReduce
Fichier
Map taskMap task Map task Map task
Reduce task
MapReduce
Principes de l’algorithme
15© OCTO 2011
Map
Extraction des prix par devise
Shuffle & Sort
Reduce
somme sur l’axe d’agrégation
Itération sur l’ensemble des K2
GED EQSWAP John 15/09/2010 EUR 10200 Credit SG
GED SWAPTION John 14/09/2010 EUR 11000 Credit HSBC
…
GED SWAPTION John 17/09/2010 EUR 5500 Credit HSBC
IRD IRS Simon 13/09/2010 USD 10000 Debit SG
IRD IRS Simon 14/09/2010 USD 11000 Credit
BankofAmerica
EUR 10200,11000, 5500
USD -10000,11000
EUR 10200
USD -10000
EUR 11000
EUR 5500
USD 11000
EUR 26700
USD 1000
Objectif : réaliser la
somme des deals sur un
axe d’agrégation
(K1, V1)
List(K2, V2)
K2,list(V2)
List(K3, V3)
Local FSHDFS HDFS
MapReduce
Implémentation de l’algorithme
16@OCTO 2011
Local FS
map
map
map
split0
split1
split2
reduce part0Input Output
Map Shuffle & Sort Reduce
sort mergecopy
K1, V1 List (K2, V2) K2, list(V2) List (K3, V3)K2, list(V2)
Local FS HDFS
MapReduce
Optimisation de l’algorithme
17@OCTO 2011
Local FSHDFS
map
map
map
split0
split1
split2
reduce part0Input Output
Map Shuffle & Sort Reduce
sort mergecopy
Réduction des écritures disque
HDFSLocal FS
MapReduce
Optimisation de l’algorithme
18@OCTO 2011
Local FSHDFS
map
map
map
split0
split1
split2
Input
Map Shuffle & Sort
sort mergecopy
Utilisation de combiners
combine
combine
combine
reduce part0
Reduce
Local FS HDFS
MapReduce
Optimisation de l’algorithme
19@OCTO 2011
Local FSHDFS
map
map
map
split0
split1
split2
Input
Map Shuffle & Sort Reduce
sort mergecopy
reduce part0 Output
reduce part0 Output
Utilisation de
plusieurs reducers
Requêtage
Deux DSL pour masquer la complexité
PIG : un langage de flux
20@OCTO 2011
HDFS
HDFS
Metastore
records = LOAD ‘/input/cashflows.txt’
AS (BookID:chararray, ProductID:chararray,
TraderID:chararray, DueDate:int,
Currency:chararray, Amount:double,
Direction:chararray, Counterparty:chararray);
ccy_grouped = GROUP records BY Currency
results = FOREACH ccy_grouped GENERATE
group, SUM(records.Amount);
DUMP results;
CREATE TABLE cash_flow (BookID STRING,
ProductID STRING, TraderID STRING, DueDate
BIGINT, Currency STRING, Amount DOUBLE,
Direction STRING, Counterparty STRING) ROW
FORMAT DELIMITED FIELDS TERMINATED BY
't' LINES TERMINATED BY 'n' STORED AS
TEXTFILE;
LOAD DATA INPATH '/data/cashflows.txt'
OVERWRITE INTO TABLE cash_flow;
select Currency, sum(Amount) from
cash_flow where Direction='Credit' group
by Currency;
HIVE: un SQL-like
Les outils de supervision
21@OCTO 2011
Traitement
MapReduce
Framework permettant de traiter des données en parallèle
Requêtage
Pig
Langage de flux de données
Hive
DSL de requêtage « SQL-like »
Workflow
Oozie / Azkaban
Workflow pour jobs Hadoops dépendants
Infrastructure
Intégration au SI
Flume, Chukwa, Scribe…
Collection de données fiable et résiliente
Sqoop
Intégration RDBMS & Hadoop
Supervision
Platform Management
Console
Hue
Traitement distribué avancé
Mahout
Machine learning
Hama
Bulk Synchronous Processing
Stockage
HDFS
Un système de fichiers distribués write-once, read-many
Hbase
Base de données pour des accès aléatoires read/write
Reporting
Hue Beeswax
Interface web de requêtage
Pentaho
Reporting
IBM BigSheets
Outil de requêtage
Apache Hadoop
Interface standard
Platform Management Console
Outil de supervision
Les outils de visualisation
22@OCTO 2011
Traitement
MapReduce
Framework permettant de traiter des données en parallèle
Requêtage
Pig
Langage de flux de données
Hive
DSL de requêtage « SQL-like »
Workflow
Oozie / Azkaban
Workflow pour jobs Hadoops dépendants
Infrastructure
Intégration au SI
Flume, Chukwa, Scribe…
Collection de données fiable et résiliente
Sqoop
Intégration RDBMS & Hadoop
Supervision
Platform Management
Console
Hue
Traitement distribué avancé
Mahout
Machine learning
Hama
Bulk Synchronous Processing
Stockage
HDFS
Un système de fichiers distribués write-once, read-many
Hbase
Base de données pour des accès aléatoires read/write
Reporting
Hue Beeswax
Interface web de requêtage
Pentaho
Reporting
IBM BigSheets
Outil de requêtage
Hue Beeswax
Interface web de requêtage Hive
IBM BigSheets
Outil de requêtage
Pentaho
Reporting
L’intégration des données depuis le SI
23@OCTO 2011
Traitement
MapReduce
Framework permettant de traiter des données en parallèle
Requêtage
Pig
Langage de flux de données
Hive
DSL de requêtage « SQL-like »
Workflow
Oozie / Azkaban
Workflow pour jobs Hadoops dépendants
Infrastructure
Intégration au SI
Flume, Chukwa, Scribe…
Collection de données fiable et résiliente
Sqoop
Intégration RDBMS & Hadoop
Supervision
Platform Management
Console
Hue
Traitement distribué avancé
Mahout
Machine learning
Hama
Bulk Synchronous Processing
Stockage
HDFS
Un système de fichiers distribués write-once, read-many
Hbase
Base de données pour des accès aléatoires read/write
Reporting
Hue Beeswax
Interface web de requêtage
Pentaho
Reporting
IBM BigSheets
Outil de requêtage
Stockage
Traitement
HDFS
Un système de fichiers distribués write-once, read-many
Hbase
Base de données pour des accès aléatoires read/write
MapReduce
Framework permettant de traiter des données en parallèle
Pig
Langage de flux de données
Hive
DSL de requêtage « SQL-like »
Intégration au SI
Flume
Chukwa,
Scribe,
Kafka
Collection de données fiable et résiliente
Sqoop
Intégration RDBMS & Hadoop par Bulk Copy
HDFS
Intégration par fichiershadoop fs –copyFromLocal
Principaux enjeux autour de MapReduce
Développement
• MapReduce nécessite
d’anticiper la
parallélisation dans la
conception
• Les langages de haut
niveau ne masquent
pas tout (analogie
avec le SQL)
Compromis entre
la performance et
la tolérance aux
pannes
• Niveau de réplication
(cross-rack, cross data
center) et charge du
réseau
• Taille des blocs et coût
d’une reprise sur
erreur
Industrialisation de
la production
• Compatibilité des
produits de la stack
(produits, équipes,
roadmap différentes)
• Gestion de très larges
clusters
24@OCTO 2011

Petit-déjeuner MapReduce-La révolution dans l’analyse des BigData

  • 1.
    © OCTO 2011 Présentationde MapReduce/Hadoop Olivier Mallassi, architecte senior OCTO, omallassi@octo.com Marc Bojoly, architecte senior OCTO, mbojoly@octo.com
  • 2.
    2© OCTO 2011 Denouvelles opportunités technologiques
  • 3.
    Diminution des coûtsd’infrastructure  « La nature n’aime pas le vide »…Les possibilités de stockage à des coûts raisonnables vont être utilisées  Des technologies qui utilisent des mécanismes de réplication plutôt que des stratégies de « backup/restore »  En partie à cause des volumes 3@OCTO 2011 Source :http://www.mkomo.com/cost-per-gigabyte 0.01 0.10 1.00 10.00 100.00 1,000.00 10,000.00 100,000.00 1,000,000.00 1965 1970 1975 1980 1985 1990 1995 2000 2005 2010 2015 100k $/GB 0,10 $/GB HDD RAM
  • 4.
    0 10 20 30 40 50 60 70 1991 1996 19982001 2006 Débit(MB/s) Augmentation des performances (des disques)  Des débits disques de plus en plus rapides  Sans parler du SSD  Capacité de stockage en mémoire • Accompagné des gains en performance  …une aide pour réaliser  Plus de traitements,  Plus vite 4@OCTO 2011 Gain : x91 64 MB/s 0,7 MB/s Seagate Barracuda 7200.10 Seagate Barracuda ATA IV IBM DTTA 35010
  • 5.
    « Commoditization »de l’infrastructure  Des besoins qui dépassent la capacité d’une machine unique  Une pression des coûts qui pousse vers le « commodities »  Des technologies distribuées  Le passage du monde centralisé au monde distribué 5@OCTO 2011 Source : « Datacenter As A Computer » $ $
  • 6.
    « Big Data» caractéristiques : complexité des analyses 6@OCTO 2011 Complexitédesanalyses&volumedesdonnées «DataMining»/«DataAnalytics» Détecter,Anticiper/Expliquersurlabasedupassé • Faire ce que l’on fait aujourd’hui…avec plus de données : être plus précis • Analyse de risques, fraudes • A/B testing, segmentation • … • Introduire des données comportementales • Analyses comportementales • Pourcentage d’internautes allant au bout du processus d’achat • Publicité , contenu contextuel fonction du client et de son comportement • Intégration de données issues de la foule • Impact de twitter sur les marchés financiers • Utilisation de twitter pour mesurer sa réputation • Vers plus de « ad hoc » … • Par opposition au « pré calculé » • Déceler des comportements • « Association rule learning » • Faire ressortir les produits qui sont systématiquement achetés conjointement • « Machine learning » appliquée au « Data mining » • Détection de pattern, classification ou « automatic pattern recognition »
  • 7.
    Définition Description Structured -RDBMS (ACID, typage forte, support du schéma) Semi- Structured - XML files - Data files (csv…) Quasi- Structured - Web Clickstream data, log data… Unstructured - Text documents, images, videos « Big Data » caractéristiques : variété et variabilité des données  Un équilibre « étrange »  Les besoins d’analyse ont un impact sur la structuration des données  L’analyse de données non structurées est plus évolutive mais « coûte plus » (ie. « brute force » / « full scan ») 7@OCTO 2011 RDBMS Document K/V pairs Fichiers
  • 8.
    Quelles solutions 8@OCTO 2011 Nouveaux algorithmesde type « Massive Parallel Processing » : Map Reduce Et un marché Augmentation volumétrie Complexité des analyses Faible structuration de la donnée Evolution des infrastructures
  • 9.
  • 10.
    Panorama du marché OpenSource • Apache • Avec support professionnel • Cloudera • Hortonworks • DataStax (Brisk) Editeurs/Cloud • Greenplum (EMC) • IBM InfoSphere BigInsights • Platform computing • Amazon Elastic MapReduce 10@OCTO 2011 De nombreuses solutions d’entreprise souvent construites autour d’Hadoop …+
  • 11.
    Architecture de l’écosystèmeHadoop 11@OCTO 2011 Traitement MapReduce Framework permettant de traiter des données en parallèle Requêtage Pig Langage de flux de données Hive DSL de requêtage « SQL-like » Workflow Oozie / Azkaban Workflow pour jobs Hadoops dépendants Infrastructure Intégration au SI Flume, Chukwa, Scribe… Collection de données fiable et résiliente Sqoop Intégration RDBMS & Hadoop Supervision Platform Management Console Hue Traitement distribué avancé Mahout Machine learning Hama Bulk Synchronous Processing Stockage HDFS Un système de fichiers distribué write-once, read-many Hbase Base de données pour des accès aléatoires read/write Reporting Hue Beeswax Interface web de requêtage Pentaho Reporting IBM BigSheets Outil de requêtage
  • 12.
    Le cœur del’architecture Hadoop 12@OCTO 2011 Traitement MapReduce Framework permettant de traiter des données en parallèle Requêtage Pig Langage de flux de données Hive DSL de requêtage « SQL-like » Workflow Oozie / Azkaban Workflow pour jobs Hadoops dépendants Infrastructure Intégration au SI Flume, Chukwa, Scribe… Collection de données fiable et résiliente Sqoop Intégration RDBMS & Hadoop Supervision Platform Management Console Hue Traitement distribué avancé Mahout Machine learning Hama Bulk Synchronous Processing Stockage HDFS Un système de fichiers distribués write-once, read-many Hbase Base de données pour des accès aléatoires read/write Reporting Hue Beeswax Interface web de requêtage Pentaho Reporting IBM BigSheets Outil de requêtage Stockage Requêtage Visualisation HDFS Un système de fichiers distribués write-once, read-many Hbase Base de données pour des accès aléatoires read/write Pig Langage de flux de données Hive DSL de requêtage « SQL-like » Oozie / Askaban Workflow pour jobs Hadoops dépendants Intégration au SI Supervision Ganglia, Nagios Zookeeper Service de coordination Flume, Chukwa, Scribe Collection de données fiable et résiliente Sqoop Intégration RDBMS & Hadoop Développement Karmasphere Studio IDE et outil de requêtage IBM BigSheets Outil de requêtage Hue Interface web de supervision et de requêtage Stockage Traitement MapReduce Un framework de traitement de données par transformations de fichiers parallélisées et colocalisées HDFS Un système de fichiers applicatif distribué qui assure la distribution de la charge et la tolérance aux pannes
  • 13.
    Hadoop Distributed FileSystem 13@OCTO 2011 HDFS NameNode IP#1 File.txt IP#2 & 5 IP#2 & 4 IP#3 & 4 IP#3 & 4 ….. DataNode-IP#2 Fichier.txt File#1-Block#1 File#1-Block#2 DataNode-IP#3 DataNode-IP#4 DataNode-IP#5 File#1-Block#3 File#1-Block#4 File#1-Block#2 File#1-Block#3 File#1-Block#1 File#1-Block#4 hdfs://IP#1:9000 xxx://…. File#n-Block#n File#n-Block#n File#n-Block#n File#n-Block#n
  • 14.
    JOB Hadoop MapReduce 14@OCTO 2011 IP#1(Master) IP#2 (Slave) HDFS Layer NameNode DataNode Map/Reduce Layer JobTracker TaskTracker IP#3 (Slave) DataNode TaskTracker IP#4 (Slave) DataNode TaskTracker IP#5 (Slave) DataNode TaskTracker Programme MapReduce Fichier Map taskMap task Map task Map task Reduce task
  • 15.
    MapReduce Principes de l’algorithme 15©OCTO 2011 Map Extraction des prix par devise Shuffle & Sort Reduce somme sur l’axe d’agrégation Itération sur l’ensemble des K2 GED EQSWAP John 15/09/2010 EUR 10200 Credit SG GED SWAPTION John 14/09/2010 EUR 11000 Credit HSBC … GED SWAPTION John 17/09/2010 EUR 5500 Credit HSBC IRD IRS Simon 13/09/2010 USD 10000 Debit SG IRD IRS Simon 14/09/2010 USD 11000 Credit BankofAmerica EUR 10200,11000, 5500 USD -10000,11000 EUR 10200 USD -10000 EUR 11000 EUR 5500 USD 11000 EUR 26700 USD 1000 Objectif : réaliser la somme des deals sur un axe d’agrégation (K1, V1) List(K2, V2) K2,list(V2) List(K3, V3)
  • 16.
    Local FSHDFS HDFS MapReduce Implémentationde l’algorithme 16@OCTO 2011 Local FS map map map split0 split1 split2 reduce part0Input Output Map Shuffle & Sort Reduce sort mergecopy K1, V1 List (K2, V2) K2, list(V2) List (K3, V3)K2, list(V2)
  • 17.
    Local FS HDFS MapReduce Optimisationde l’algorithme 17@OCTO 2011 Local FSHDFS map map map split0 split1 split2 reduce part0Input Output Map Shuffle & Sort Reduce sort mergecopy Réduction des écritures disque
  • 18.
    HDFSLocal FS MapReduce Optimisation del’algorithme 18@OCTO 2011 Local FSHDFS map map map split0 split1 split2 Input Map Shuffle & Sort sort mergecopy Utilisation de combiners combine combine combine reduce part0 Reduce
  • 19.
    Local FS HDFS MapReduce Optimisationde l’algorithme 19@OCTO 2011 Local FSHDFS map map map split0 split1 split2 Input Map Shuffle & Sort Reduce sort mergecopy reduce part0 Output reduce part0 Output Utilisation de plusieurs reducers
  • 20.
    Requêtage Deux DSL pourmasquer la complexité PIG : un langage de flux 20@OCTO 2011 HDFS HDFS Metastore records = LOAD ‘/input/cashflows.txt’ AS (BookID:chararray, ProductID:chararray, TraderID:chararray, DueDate:int, Currency:chararray, Amount:double, Direction:chararray, Counterparty:chararray); ccy_grouped = GROUP records BY Currency results = FOREACH ccy_grouped GENERATE group, SUM(records.Amount); DUMP results; CREATE TABLE cash_flow (BookID STRING, ProductID STRING, TraderID STRING, DueDate BIGINT, Currency STRING, Amount DOUBLE, Direction STRING, Counterparty STRING) ROW FORMAT DELIMITED FIELDS TERMINATED BY 't' LINES TERMINATED BY 'n' STORED AS TEXTFILE; LOAD DATA INPATH '/data/cashflows.txt' OVERWRITE INTO TABLE cash_flow; select Currency, sum(Amount) from cash_flow where Direction='Credit' group by Currency; HIVE: un SQL-like
  • 21.
    Les outils desupervision 21@OCTO 2011 Traitement MapReduce Framework permettant de traiter des données en parallèle Requêtage Pig Langage de flux de données Hive DSL de requêtage « SQL-like » Workflow Oozie / Azkaban Workflow pour jobs Hadoops dépendants Infrastructure Intégration au SI Flume, Chukwa, Scribe… Collection de données fiable et résiliente Sqoop Intégration RDBMS & Hadoop Supervision Platform Management Console Hue Traitement distribué avancé Mahout Machine learning Hama Bulk Synchronous Processing Stockage HDFS Un système de fichiers distribués write-once, read-many Hbase Base de données pour des accès aléatoires read/write Reporting Hue Beeswax Interface web de requêtage Pentaho Reporting IBM BigSheets Outil de requêtage Apache Hadoop Interface standard Platform Management Console Outil de supervision
  • 22.
    Les outils devisualisation 22@OCTO 2011 Traitement MapReduce Framework permettant de traiter des données en parallèle Requêtage Pig Langage de flux de données Hive DSL de requêtage « SQL-like » Workflow Oozie / Azkaban Workflow pour jobs Hadoops dépendants Infrastructure Intégration au SI Flume, Chukwa, Scribe… Collection de données fiable et résiliente Sqoop Intégration RDBMS & Hadoop Supervision Platform Management Console Hue Traitement distribué avancé Mahout Machine learning Hama Bulk Synchronous Processing Stockage HDFS Un système de fichiers distribués write-once, read-many Hbase Base de données pour des accès aléatoires read/write Reporting Hue Beeswax Interface web de requêtage Pentaho Reporting IBM BigSheets Outil de requêtage Hue Beeswax Interface web de requêtage Hive IBM BigSheets Outil de requêtage Pentaho Reporting
  • 23.
    L’intégration des donnéesdepuis le SI 23@OCTO 2011 Traitement MapReduce Framework permettant de traiter des données en parallèle Requêtage Pig Langage de flux de données Hive DSL de requêtage « SQL-like » Workflow Oozie / Azkaban Workflow pour jobs Hadoops dépendants Infrastructure Intégration au SI Flume, Chukwa, Scribe… Collection de données fiable et résiliente Sqoop Intégration RDBMS & Hadoop Supervision Platform Management Console Hue Traitement distribué avancé Mahout Machine learning Hama Bulk Synchronous Processing Stockage HDFS Un système de fichiers distribués write-once, read-many Hbase Base de données pour des accès aléatoires read/write Reporting Hue Beeswax Interface web de requêtage Pentaho Reporting IBM BigSheets Outil de requêtage Stockage Traitement HDFS Un système de fichiers distribués write-once, read-many Hbase Base de données pour des accès aléatoires read/write MapReduce Framework permettant de traiter des données en parallèle Pig Langage de flux de données Hive DSL de requêtage « SQL-like » Intégration au SI Flume Chukwa, Scribe, Kafka Collection de données fiable et résiliente Sqoop Intégration RDBMS & Hadoop par Bulk Copy HDFS Intégration par fichiershadoop fs –copyFromLocal
  • 24.
    Principaux enjeux autourde MapReduce Développement • MapReduce nécessite d’anticiper la parallélisation dans la conception • Les langages de haut niveau ne masquent pas tout (analogie avec le SQL) Compromis entre la performance et la tolérance aux pannes • Niveau de réplication (cross-rack, cross data center) et charge du réseau • Taille des blocs et coût d’une reprise sur erreur Industrialisation de la production • Compatibilité des produits de la stack (produits, équipes, roadmap différentes) • Gestion de très larges clusters 24@OCTO 2011