© Fujitsu Canada
Introduction aux concepts Big Data avec Hadoop
Mathieu Dumoulin – Programme Big Data du Centre d’Innovation Fujitsu
Hadoop et Big Data:
Un gros problème, une solution
éléphantesque!
© Fujitsu Canada
Objectifs
 Le Big Data - Problématique
 Une solution: Hadoop et MapReduce
 Vocabulaire et ecosystème
1
 Les enjeux
 Les principaux joueurs de l’industrie
© Fujitsu Canada
Plan de match
Introduction au Big Data
Introduction à Hadoop
Détails techniques
Écosystème et principaux joueurs
Conclusion
2
© Fujitsu Canada
Plan de match

Définition
Use Cases
Problèmes et Solution
Introduction à Hadoop
Détails techniques
Écosystème et principaux joueurs
Conclusion
3
© Fujitsu Canada
Définition du Big Data
 Big Data: Quand les données dépassent les capacités de la
BD conventionnelle. Une approche alternative devient
nécessaire pour en retirer de la valeur (Edd Dumbill – O’Reilly).
 « dépassent »? Les 3 V de Gartner
 Volume
 Vélocité
 Variété
 Valeur
 Véracité
4
© Fujitsu Canada
Big Data – Use Cases
 Google: Indexer le web
 850 TB en 2009, 100 PB en 2012
 Ventes en ligne: Analyse des ventes
 Orbitz a trouvé que les utilisateurs de Mac dépensent 20$ de plus par
nuit d’hôtel que les utilisateurs Windows.
 80% des voyagistes sur Internet utilisent Hadoop
 Ebay est un utilisateur massif
 Ventes en ligne: Recommandations à l’usager
 Amazon, Facebook, LinkedIn
 Entreposage Cloud
 Amazon a plus de 1000 PB de données (1 Exabyte)
5
© Fujitsu Canada
Big Data – Use Cases
 Banques: Détection de fraudes
 Morgan Stanley, Zion
 Énergie: Recherche de nouveaux gisements, optimisation
 Chevron, Exxon, etc.
 Positionnement d’éoliennes
 Jeux de données multi PB
 Vidéo: Analyse d’images
 Google Earth (70.5 TB – 2009)
 Skybox: analyse d’images satellite
6
© Fujitsu Canada
Big Data – Difficultés à grande échelle
 Besoin: conserver et traiter des données à l’échelle du PB
 Architecture distribuée
 Une grappe de 1000+ nœuds, MTBF < 1 jour
 Toujours de quoi de brisé!
 Besoin: Entreposer des données résistant aux défaillances
 Haute disponibilité (availability)
 Matériel efficace qui gère les défaillances automatiquement
 Besoin: Un framework logiciel résistant aux défaillances
 Certaines tâches peuvent prendre plusieurs jours
7
© Fujitsu Canada
Traiter des données à l’échelle du TB
 La performance d’un CPU n’est pas importante
 Le débit total de la grappe est le facteur critique
 Le matériel brise
 Impossible d’opérer une grappe de milliers de machines sans avoir des
défaillances diverses (réseau, HDD, etc.)
 Le matériel robuste est cher sans être parfait
 À très grande échelle, les bris sont inévitables.
 Pour un même prix, plus de travailleurs qui brisent plus souvent seront
plus performant
8
© Fujitsu Canada
Solutions Big Data
 Choix actuels – Ou il y a 2 ans
 Investissement supers ordinateurs
• nouvel achat / peut coûter plus que ça rapporte
 Perte de valeur
• Couper dans les données
• Couper sur le service
• Couper sur la qualité de service
 Deux choix insatisfaisants
9
© Fujitsu Canada
Plan de match
Introduction au Big Data

Google et MapReduce
Entrée en scène de Hadoop
Avantages clefs
Détails techniques
Écosystème et principaux joueurs
Conclusion
10
© Fujitsu Canada
La solution de Google: MapReduce
 Confronté au problème en 2002-2003
 Une petite compagnie de 5 ans, peu de moyens
 Dean et Ghemawat conçoivent MapReduce:
 Librairie C++
 Transforme des milliers de PC ordinaires en une grappe super robuste
et performance
 Modèle de programmation simple et général
 Standardisation, évolutivité
 Utilisé par:
11
© Fujitsu Canada
Problème…
12
© Fujitsu Canada
Heureusement
 2003 - 2004: Présentation de MapReduce et GFS à la
communauté scientifique
 19th ACM Symposium on Operating Systems Principles, NY, 2003
 Sixth Symposium on Operating System Design and Implementation, San Francisco, 2004.
 2004: Nutch et Doug Cutting
 Implémente MapReduce et GFS pour son projet Nutch
 2006: Yahoo offre des ressources à Doug pour développer
MapReduce
13
MapReduce
GFS
© Fujitsu Canada
Hadoop – Un nouveau paradigme
 Traitement à grande échelle et haute
performance
 Peut évoluer de 10 nœuds à 10,000 nœuds
 Plus facile, gratuit, ouvert
 Efficace
 Puissance de computation CPU, mémoire
 Stockage sur disques local
 Nouveau
 De nouvelles fondations
 Actuel
 Presque tous les leaders du web 2.0
 La grande entreprise Fortune 500
14
© Fujitsu Canada
Maintenant? Hadoop et Fujitsu à Québec
 Valcartier
 Plateforme Fujitsu BDPP
 Développement de capacité
15
© Fujitsu Canada
Les forces
 Une solution logicielle
 Ratio coût-puissance intéressant
 Évolutif
 On peut toujours ajouter des nœuds pour plus de
capacités
• Computation
• Stockage
 Général
 S’applique à une variété de problèmes utiles
 Programmation parallèle simplifiée
 Pas de barrières pour commencer
 Pas de schéma ou de design requis.
 Charger des fichiers « raw » et lancer une
applications
16
© Fujitsu Canada
Plan de match
Introduction au Big Data
Introduction à Hadoop

Traitement Distribué
HDFS
MapReduce
Écosystème et principaux joueurs
Conclusion
17
© Fujitsu Canada
Le matériel… de Future Shop?!
18
© Fujitsu Canada
 Excellente Capacité de montée en charge
 Fichiers fragmentés sur du matériel PC commun, efficace et peu dispendieux
 Fiabilité automatisée
 Chaque bloc répliqué 3 fois, automatisé, balancement de charge
 Le maître (namenode) a une double (hot spare)
19
© Fujitsu Canada
 Un modèle de programmation simple
 Généralisation de gabarits communs (patterns)
 Idéal pour les problèmes « Embarrasingly Parallel »
20
© Fujitsu Canada
MapReduce: Exemple
21
© Fujitsu Canada
Plan de match
Introduction au Big Data
Introduction à Hadoop
Détails techniques
Écosystème et principaux joueurs
Principaux joueurs de l’industrie
Qui utilise Hadoop aujourd’hui?
L’écosystème Hadoop
• Pig, Hive, Mahout, Oozie, sqoop, etc.
Conclusion
22
© Fujitsu Canada
Hadoop: les principaux joueurs
23
© Fujitsu Canada
Le monde Hadoop en 2012
24
© Fujitsu Canada
Hadoop est utilisé en production
25
• Yahoo! – Supporter AdSystems et leur moteur
de recherche Web
• Linkedin – Prédictions pour “People You May
Know”
• New York Times – Archives des articles et
images, conversion au format PDF
• UNC Chapel Hill – Applications bioinformatique
(séquençage génomique, etc.)
• Visa – Détection de fraude
• Autres: Amazon/A9, AOL, Baidu, Facebook, etc.
© Fujitsu Canada
L’écosystème Hadoop
 Une communauté active en pleine croissance
 Plusieurs livres récents
 Support commercial disponible (Cloudera, Hortonworks, etc.)
 Un nombre croissant d’outils complémentaires
26
© Fujitsu Canada
Hive et HCatalog
 Apache Hive: Infrastructure de Data
Warehouse pour Hadoop
 Permet de faire des requêtes SQL
• Traduire SQL → MapReduce
 Formats: texte, Hbase, etc.
 Permet d’utiliser des UDF
 Inventé par Facebook
 HCatalog
 Répertoire de schéma et types partagé
 Permet l’interopérabilité entre
Hive, Pig, MapReduce, etc.
27
© Fujitsu Canada
Apache Pig
 Développé à Yahoo Research en 2006
 Pig Latin: le langage Pig
 Créer et exécuter des tâches
MapReduce de façon ad-hoc
 Orienté « flot de données »
 Haut niveau
 Une approche plus « programmeur » que
Hive
 Procédural mais déclaratif
 Extensible par UDF en Java ou python
28
© Fujitsu Canada
Apache Mahout
 Une librairie Java pour l’apprentissage
automatique (Machine Learning)
 Implanté avec Apache Hadoop
 Utilise la puissance d’une grappe
Hadoop automatiquement!
 Variété d’algorithmes de ML
 Recommendation
 Clustering
 Classification
 Développement très actif
 État de l’art du domaine
• Latent Dirichlet
• Random Forest
29
© Fujitsu Canada
Autres outils 1/2
 Sqoop
 Importe/exporte des données d’une BD
automatiquement
• RDBS ↔ HDFS
 Exemple: une application web/mySQL
 Flume
 Collecter des données de sources et
importer dans HDFS
 Logs, feed twitter, etc.
 HBase
 Une base de donnée NoSQL (clef/valeur)
 Distribuée
 Sans limite pratique pour la taille des tables
 Intégration avec Hadoop
30
© Fujitsu Canada
Autres outils 2/2
 Oozie
 Orchestrer des séquences de tâches MapReduce
 Tâches oozie: un graphe orienté acyclique d’actions
 Peut être lancée par des évènements ou à un certain temps
• À l’ajout d’un fichier faire…
• À tous les jours à 3h00AM faire…
 Chukwa
 Système de collection de données distribué
 Opimiser Hadoop pour traiter des log
 Afficher, monitorer et analyser les fichiers log
 Et bien d’autres…
31
© Fujitsu Canada
Plan de match
Introduction au Big Data
Introduction à Hadoop
Détails techniques
Écosystème et principaux joueurs

Hadoop est prêt pour la production
Faiblesses de Hadoop
En réponse aux faiblesses
Hadoop: En pleine évolution
Vos questions
32
© Fujitsu Canada
Hadoop est prêt pour la production
 Pas un remplacement
 Rends possible l’impossible
 De nouvelles façon de tirer de la valeur
 Économies
 Commencer petit, grandir avec les besoins
 Amazon Elastic MapReduce, Azure Hadoop
 Flexible et général
 Pas de format, pas de schéma
 Une technologie mature
 Utilisé par Google depuis 2003
 Hadoop en développement depuis 5 ans
 Beaucoup d’outils et de librairies
 Intégré par les outils BI (Datameer, Pentaho, IBM, etc.)
33
© Fujitsu Canada
Faiblesse de Hadoop
 Hadoop ne remplace pas les BD traditionnelles
 Pas de garantie ACID
 Pas tout à fait fiable à 100%
 Namenode: « Single point of failure »
 Hadoop est lent
 Données non-indexées
 Coût élevé pour E/S des données et lancement de tâche
 Optimisation de performance difficile
 Optimisé pour traitement batch
 Hadoop est difficile
 Un nouvel API à apprendre
 Peu d’outils de haut niveau, pas de GUI
 Pas pour les débutants, très difficile pour les analystes
34
© Fujitsu Canada
En réponse aux faiblesses
 Utilisé de pair avec des BD
 Sqoop
 Utilisé comme BD
 Hive très proche de SQL
 connecteurs JDBC disponibles
 Alternative NoSQL (Hbase)
 Hawq, une vrai BD qui roule sur Hadoop
 Les distributions commerciales sont fiabilisées
 MapR, IBM, EMC, Cloudera, … Fujitsu BDPP
 Nouvelles technologies de « Streaming » pour répondre aux
requêtes ad-hoc
 Utiliser Pig et Hive pour simplifier le développement
 C’est ce que Yahoo, Twitter et Facebook font!
35
© Fujitsu Canada
Big Data = BI?
36
© Fujitsu Canada
Vos questions
37
Introduction à Hadoop

Introduction à Hadoop

  • 1.
    © Fujitsu Canada Introductionaux concepts Big Data avec Hadoop Mathieu Dumoulin – Programme Big Data du Centre d’Innovation Fujitsu Hadoop et Big Data: Un gros problème, une solution éléphantesque!
  • 2.
    © Fujitsu Canada Objectifs Le Big Data - Problématique  Une solution: Hadoop et MapReduce  Vocabulaire et ecosystème 1  Les enjeux  Les principaux joueurs de l’industrie
  • 3.
    © Fujitsu Canada Plande match Introduction au Big Data Introduction à Hadoop Détails techniques Écosystème et principaux joueurs Conclusion 2
  • 4.
    © Fujitsu Canada Plande match  Définition Use Cases Problèmes et Solution Introduction à Hadoop Détails techniques Écosystème et principaux joueurs Conclusion 3
  • 5.
    © Fujitsu Canada Définitiondu Big Data  Big Data: Quand les données dépassent les capacités de la BD conventionnelle. Une approche alternative devient nécessaire pour en retirer de la valeur (Edd Dumbill – O’Reilly).  « dépassent »? Les 3 V de Gartner  Volume  Vélocité  Variété  Valeur  Véracité 4
  • 6.
    © Fujitsu Canada BigData – Use Cases  Google: Indexer le web  850 TB en 2009, 100 PB en 2012  Ventes en ligne: Analyse des ventes  Orbitz a trouvé que les utilisateurs de Mac dépensent 20$ de plus par nuit d’hôtel que les utilisateurs Windows.  80% des voyagistes sur Internet utilisent Hadoop  Ebay est un utilisateur massif  Ventes en ligne: Recommandations à l’usager  Amazon, Facebook, LinkedIn  Entreposage Cloud  Amazon a plus de 1000 PB de données (1 Exabyte) 5
  • 7.
    © Fujitsu Canada BigData – Use Cases  Banques: Détection de fraudes  Morgan Stanley, Zion  Énergie: Recherche de nouveaux gisements, optimisation  Chevron, Exxon, etc.  Positionnement d’éoliennes  Jeux de données multi PB  Vidéo: Analyse d’images  Google Earth (70.5 TB – 2009)  Skybox: analyse d’images satellite 6
  • 8.
    © Fujitsu Canada BigData – Difficultés à grande échelle  Besoin: conserver et traiter des données à l’échelle du PB  Architecture distribuée  Une grappe de 1000+ nœuds, MTBF < 1 jour  Toujours de quoi de brisé!  Besoin: Entreposer des données résistant aux défaillances  Haute disponibilité (availability)  Matériel efficace qui gère les défaillances automatiquement  Besoin: Un framework logiciel résistant aux défaillances  Certaines tâches peuvent prendre plusieurs jours 7
  • 9.
    © Fujitsu Canada Traiterdes données à l’échelle du TB  La performance d’un CPU n’est pas importante  Le débit total de la grappe est le facteur critique  Le matériel brise  Impossible d’opérer une grappe de milliers de machines sans avoir des défaillances diverses (réseau, HDD, etc.)  Le matériel robuste est cher sans être parfait  À très grande échelle, les bris sont inévitables.  Pour un même prix, plus de travailleurs qui brisent plus souvent seront plus performant 8
  • 10.
    © Fujitsu Canada SolutionsBig Data  Choix actuels – Ou il y a 2 ans  Investissement supers ordinateurs • nouvel achat / peut coûter plus que ça rapporte  Perte de valeur • Couper dans les données • Couper sur le service • Couper sur la qualité de service  Deux choix insatisfaisants 9
  • 11.
    © Fujitsu Canada Plande match Introduction au Big Data  Google et MapReduce Entrée en scène de Hadoop Avantages clefs Détails techniques Écosystème et principaux joueurs Conclusion 10
  • 12.
    © Fujitsu Canada Lasolution de Google: MapReduce  Confronté au problème en 2002-2003  Une petite compagnie de 5 ans, peu de moyens  Dean et Ghemawat conçoivent MapReduce:  Librairie C++  Transforme des milliers de PC ordinaires en une grappe super robuste et performance  Modèle de programmation simple et général  Standardisation, évolutivité  Utilisé par: 11
  • 13.
  • 14.
    © Fujitsu Canada Heureusement 2003 - 2004: Présentation de MapReduce et GFS à la communauté scientifique  19th ACM Symposium on Operating Systems Principles, NY, 2003  Sixth Symposium on Operating System Design and Implementation, San Francisco, 2004.  2004: Nutch et Doug Cutting  Implémente MapReduce et GFS pour son projet Nutch  2006: Yahoo offre des ressources à Doug pour développer MapReduce 13 MapReduce GFS
  • 15.
    © Fujitsu Canada Hadoop– Un nouveau paradigme  Traitement à grande échelle et haute performance  Peut évoluer de 10 nœuds à 10,000 nœuds  Plus facile, gratuit, ouvert  Efficace  Puissance de computation CPU, mémoire  Stockage sur disques local  Nouveau  De nouvelles fondations  Actuel  Presque tous les leaders du web 2.0  La grande entreprise Fortune 500 14
  • 16.
    © Fujitsu Canada Maintenant?Hadoop et Fujitsu à Québec  Valcartier  Plateforme Fujitsu BDPP  Développement de capacité 15
  • 17.
    © Fujitsu Canada Lesforces  Une solution logicielle  Ratio coût-puissance intéressant  Évolutif  On peut toujours ajouter des nœuds pour plus de capacités • Computation • Stockage  Général  S’applique à une variété de problèmes utiles  Programmation parallèle simplifiée  Pas de barrières pour commencer  Pas de schéma ou de design requis.  Charger des fichiers « raw » et lancer une applications 16
  • 18.
    © Fujitsu Canada Plande match Introduction au Big Data Introduction à Hadoop  Traitement Distribué HDFS MapReduce Écosystème et principaux joueurs Conclusion 17
  • 19.
    © Fujitsu Canada Lematériel… de Future Shop?! 18
  • 20.
    © Fujitsu Canada Excellente Capacité de montée en charge  Fichiers fragmentés sur du matériel PC commun, efficace et peu dispendieux  Fiabilité automatisée  Chaque bloc répliqué 3 fois, automatisé, balancement de charge  Le maître (namenode) a une double (hot spare) 19
  • 21.
    © Fujitsu Canada Un modèle de programmation simple  Généralisation de gabarits communs (patterns)  Idéal pour les problèmes « Embarrasingly Parallel » 20
  • 22.
  • 23.
    © Fujitsu Canada Plande match Introduction au Big Data Introduction à Hadoop Détails techniques Écosystème et principaux joueurs Principaux joueurs de l’industrie Qui utilise Hadoop aujourd’hui? L’écosystème Hadoop • Pig, Hive, Mahout, Oozie, sqoop, etc. Conclusion 22
  • 24.
    © Fujitsu Canada Hadoop:les principaux joueurs 23
  • 25.
    © Fujitsu Canada Lemonde Hadoop en 2012 24
  • 26.
    © Fujitsu Canada Hadoopest utilisé en production 25 • Yahoo! – Supporter AdSystems et leur moteur de recherche Web • Linkedin – Prédictions pour “People You May Know” • New York Times – Archives des articles et images, conversion au format PDF • UNC Chapel Hill – Applications bioinformatique (séquençage génomique, etc.) • Visa – Détection de fraude • Autres: Amazon/A9, AOL, Baidu, Facebook, etc.
  • 27.
    © Fujitsu Canada L’écosystèmeHadoop  Une communauté active en pleine croissance  Plusieurs livres récents  Support commercial disponible (Cloudera, Hortonworks, etc.)  Un nombre croissant d’outils complémentaires 26
  • 28.
    © Fujitsu Canada Hiveet HCatalog  Apache Hive: Infrastructure de Data Warehouse pour Hadoop  Permet de faire des requêtes SQL • Traduire SQL → MapReduce  Formats: texte, Hbase, etc.  Permet d’utiliser des UDF  Inventé par Facebook  HCatalog  Répertoire de schéma et types partagé  Permet l’interopérabilité entre Hive, Pig, MapReduce, etc. 27
  • 29.
    © Fujitsu Canada ApachePig  Développé à Yahoo Research en 2006  Pig Latin: le langage Pig  Créer et exécuter des tâches MapReduce de façon ad-hoc  Orienté « flot de données »  Haut niveau  Une approche plus « programmeur » que Hive  Procédural mais déclaratif  Extensible par UDF en Java ou python 28
  • 30.
    © Fujitsu Canada ApacheMahout  Une librairie Java pour l’apprentissage automatique (Machine Learning)  Implanté avec Apache Hadoop  Utilise la puissance d’une grappe Hadoop automatiquement!  Variété d’algorithmes de ML  Recommendation  Clustering  Classification  Développement très actif  État de l’art du domaine • Latent Dirichlet • Random Forest 29
  • 31.
    © Fujitsu Canada Autresoutils 1/2  Sqoop  Importe/exporte des données d’une BD automatiquement • RDBS ↔ HDFS  Exemple: une application web/mySQL  Flume  Collecter des données de sources et importer dans HDFS  Logs, feed twitter, etc.  HBase  Une base de donnée NoSQL (clef/valeur)  Distribuée  Sans limite pratique pour la taille des tables  Intégration avec Hadoop 30
  • 32.
    © Fujitsu Canada Autresoutils 2/2  Oozie  Orchestrer des séquences de tâches MapReduce  Tâches oozie: un graphe orienté acyclique d’actions  Peut être lancée par des évènements ou à un certain temps • À l’ajout d’un fichier faire… • À tous les jours à 3h00AM faire…  Chukwa  Système de collection de données distribué  Opimiser Hadoop pour traiter des log  Afficher, monitorer et analyser les fichiers log  Et bien d’autres… 31
  • 33.
    © Fujitsu Canada Plande match Introduction au Big Data Introduction à Hadoop Détails techniques Écosystème et principaux joueurs  Hadoop est prêt pour la production Faiblesses de Hadoop En réponse aux faiblesses Hadoop: En pleine évolution Vos questions 32
  • 34.
    © Fujitsu Canada Hadoopest prêt pour la production  Pas un remplacement  Rends possible l’impossible  De nouvelles façon de tirer de la valeur  Économies  Commencer petit, grandir avec les besoins  Amazon Elastic MapReduce, Azure Hadoop  Flexible et général  Pas de format, pas de schéma  Une technologie mature  Utilisé par Google depuis 2003  Hadoop en développement depuis 5 ans  Beaucoup d’outils et de librairies  Intégré par les outils BI (Datameer, Pentaho, IBM, etc.) 33
  • 35.
    © Fujitsu Canada Faiblessede Hadoop  Hadoop ne remplace pas les BD traditionnelles  Pas de garantie ACID  Pas tout à fait fiable à 100%  Namenode: « Single point of failure »  Hadoop est lent  Données non-indexées  Coût élevé pour E/S des données et lancement de tâche  Optimisation de performance difficile  Optimisé pour traitement batch  Hadoop est difficile  Un nouvel API à apprendre  Peu d’outils de haut niveau, pas de GUI  Pas pour les débutants, très difficile pour les analystes 34
  • 36.
    © Fujitsu Canada Enréponse aux faiblesses  Utilisé de pair avec des BD  Sqoop  Utilisé comme BD  Hive très proche de SQL  connecteurs JDBC disponibles  Alternative NoSQL (Hbase)  Hawq, une vrai BD qui roule sur Hadoop  Les distributions commerciales sont fiabilisées  MapR, IBM, EMC, Cloudera, … Fujitsu BDPP  Nouvelles technologies de « Streaming » pour répondre aux requêtes ad-hoc  Utiliser Pig et Hive pour simplifier le développement  C’est ce que Yahoo, Twitter et Facebook font! 35
  • 37.
    © Fujitsu Canada BigData = BI? 36
  • 38.