Une bonne analyse et synthèse sur le domaine Big Data
Beaucoup de pratique sur Hadoop avec différentes méthodes : HDFS, Map Reduce, YARN, Spark, Hive, NoSQL, HDFS, HBase, zookeeper, MESOS et plusieurs autres outils
Les points forts de la formation
Une analyse globale sur le domaine Big Data et sur les outils liés à Hadoop avec beaucoup de pratique
Contenu de la formation
• Une bonne analyse de chaque concept illustré par de la pratique
• Les outils à installer sont à disposition
• Toutes les ressources sont à disposition
Résultats attendus
• Découvrir les formidables possibilités du Big Data avec Hadoop
• Comprendre parfaitement le périmètre de chaque outil de l'écosystème Hadoop
• Etre au fait de pouvoir utiliser Azure, AWS, et Google pour faire de l'Hadoop dans le Cloud
• Utiliser directement Hadoop sur de très nombreux exemples
• Découvrir le périmètre des bases NoSQL
• Comprendre comment faire du traitement temps réel avec Spark
5. Une formation
Public concerné
Toutes personnes souhaitant
Se lancer dans le Big Data
Découvrir l'écosystème d’Hadoop
Travailler sur un projet avec plusieurs outils
d'Hadoop
Consolider des connaissances Hadoop
7. Big Data ! C’est quoi ?
Le Big Data fait référence au volume énorme de données qui ne peuvent pas être
stockées et traitées avec l'approche traditionnelle en un temps précis
Gartner
13. Une formation
Pourquoi le Big Data ?
Augmentation exponentielle de la quantité de
données non structurées
Augmentation de la capacité de stockage et
d’analyse
L’utilisation de plusieurs machines en parallèle
devient accessible
Les technologies existantes ne sont pas conçues
pour ingérer ces données
14. Différentes sources
Capteurs
température, pression…
IOT
montre connectées, balances, Smartphone..
Autres
Gps, email, sms…
Messages sur les réseaux sociaux
tweet, Posts ..
Transaction et logs
banque, e-commerce
Images, vidéos et sons
Instagram, youtube, snapshat,
15. Classification de la Big Data
Données
structurées
Données
semi-structurées
Données
non-structurées
23. Une formation
Big data et analytique : un marché
promis à une croissance à deux chiffres
Le marché des solutions et services du Big data et de l’analyse
de données devrait croître en moyenne de 12,8% par an d’ici
2025
Les investissements mondiaux des entreprises dans les
solutions de traitement et analyse avancée de mégadonnées
devraient croître de plus 10%
Le segment des services devrait attirer plus de la moitié des
investissements BDA (Big data & Business Analytics) des
organisations
Devant le matériel dédié, les logiciels du Big data, devraient
peser 82 Md$
https://www.idc.com/
31. La valeur
Les entreprises qui s'appuient sur leurs données pour générer de la valeur sont les
meilleures sur leur marché
*Aberdeen:Angling for Insight in Today’s DataLake, MichaelLock, Analytics andBusiness Intelligence,2017
35. Énergie
Amélioration de la production et distribution d’énergie
Transport et distribution
Optimisation des trajets et réduction des coûts
E-Commerce
Amélioration des stocks et de l’expérience
Services publics et banques
Prédire des tremblements de terre, Lute contre la fraude et abus
Sécurité
Étude des déplacements de population
Santé
Traitement
36. Produits de Luxe et de grandes consommations
Recommandations
Découverte
37. Défis du Big Data
Stockage et gestion
d'un el volume de
données
Traitement et extraction de
la valeur de cet énorme
volume de données dans un
laps de temps prédéfini
49. Historique d’Apache Hadoop
Google a publié un article en 2003 décrivant un Framework appelant Google File
System NDFS
En 2004, Google a fait un autre papier contenant la description de la solution Map
Reduce HDFS
Nutch
Distributed
File System
NDFS
HDFS
Hadoop
Distributed
File System
52. Une formation
Présentation d’Apache Hadoop
Hadoop est un framework open source qui repose
sur Java
Facilite l'utilisation d'un réseau de plusieurs
ordinateurs (cluster)
Résout des problèmes de Big Data
79. Une formation
HDFS
H : Hadoop
Le nom de plate-forme
D : Distributed
distribué
F : File
(fichier), créer, copier, renommer, couper des répertoires
et fichiers
S : System
Contrôle la manière dont les données sont stockées et
récupérées
81. Architecture logique de HDFS
nœud
Stocker les données et y
accéder comme un seul
grand ordinateur
Cluster
nœud nœud
nœud
Métadonnées
82. Stockage d’un fichier
Hadoop client
Name Node
1. Créer un fichier $ hadoop fs –put
myfile.txt /mydir/
4. succès
7.DN-3 is
allocated
2. Vérification
Dossier existe
Fichier n’existe pas
Le client possède
6. Block
Allocation
Request
Data
Nodes
DN-1 DN-2 DN-3 DN-4
Block Data
128 MB
3. Fsimage
en mémoire
128 MB
5. FSDataOutputStream
Data
Myfile.txt
270 MO
Bloc C
14 MO
Bloc B
128 MO
Bloc A
128 MO
Bloc A1
128 MO
Bloc A2
128 MO
Bloc A3
128 MO
83. Les commandes les plus utilisées dans HDFS
hadoop fs –ls Afficher le contenu du répertoire racine
hadoop fs –put file.txt Upload un fichier dans hadoop (à partir du répertoire
courant linux)
hadoop fs –get file.txt Download un fichier à partir de hadoop sur votre
disque local
hadoop fs –tail file.txt Lire les dernières lignes du fichier
hadoop fs –cat file.txt Affiche tout le contenu du fichier
hadoop fs –mv file.txt newfile.txt Renommer le fichier
hadoop fs –rm newfile.txt Supprimer le fichier
hadoop fs –mkdir myinput Créer un répertoire
hadoop fs –cat file.txt | less Lire le fichier page par page
92. Map Reduce : Utilité
MapReduce permet de manipuler de grandes quantités de données en les distribuant
dans un cluster de machines pour être traitées
96. Les avantages de Yarn
Sépare la gestion des ressources/ordonnancement des job du traitement des données
Permet à Hadoop de supporter d’autres applications de traitement de données
97. MapReduce et Yarn
La nouvelle génération du framework MapReduce est une application qui s’exécute
avec Yarn
108. Pas de jointure
Scalable horizontalement (cluster de serveurs)
Pas de schéma
Manipule toute sorte de données
Données non structurées
Pas de gestion de transaction
Données non-structurées
119. Une formation
Possibilités d’accès aux données avec HBASE
Shell HBASE
API REST
API Java
N’importe quelle application (en passant par les
composants Apache Thrift ou Avro)
131. Une formation
Quelques commandes HiveQL
Création de base de données
CREATE DATABASE|SCHEMA [IF NOT EXISTS] <database name>
hive> CREATE DATABASE [IF NOT EXISTS] userdb;
hive> CREATE SCHEMA userdb;
Lister les base de données
hive> SHOW DATABASES;
132. Une formation
Quelques commandes HiveQL
Création de table
hive> CREATE TABLE posts (user STRING, post STRING, time
BIGINT) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',’
STORED AS TEXTFILE;
Afficher la liste des tables
hive> show tables;Décrire une table
hive> describe posts;
134. Etapes Hive
Création base de données
hive> create database dbventes;
hive> use dbventes;
Création de table pour le stockage des données qui existent dans le fichier
/ventes.txt
hive> CREATE TABLE ventes (ptvente STRING, article STRING, montant BIGINT) ROW
FORMAT DELIMITED
FIELDS TERMINATED BY ',' STORED
AS TEXTFILE;
hive> show tables; (Afficher la liste des tables)
hive> describe ventes; (Description de la table posts)
hive> LOAD DATA LOCAL INPATH '/home/cloudera/Desktop/ventesf.txt' OVERWRITE
INTO TABLE ventes;
hive> select count (1) from ventes;
hive> select * from ventes where ptvente=“pointdevente1";
hive> select * from ventes where montant<=600 limit 2;
Une formation
137. Une formation
Présentation d’Apache Pig
Pig est une plateforme haut niveau pour la création
de programme Map Reduce utilisé avec Hadoop
Le langage de cette plateforme est appelé le Pig
Latin
150. Une formation
SPARK RDD : principe
Transformations
Créent un nouveau RDD à partir d’un existant
Actions
Des fonctions qui permettent d’extraire des
informations des RDD
151. Une formation
SPARK RDD : Actions
RDD.collect()
RDD.count()
RDD.first()
RDD.take(n)
RDD.reduce(fonction)
RDD.persist() ou RDD.cache()
154. Une formation
RDD : Sauvegarde
saveAsTextFile(path)
saveAsSequenceFile(path)
saveAsObjectFile(path)
155. Une formation
SPARK : comment créer des RDD ?
Paralléliser la collection déjà existante dans le
programme pilote
Référencer un ensemble de données dans un
système de stockage externe
Créer un RDD à partir de RDD déjà existant
185. Une formation
STORM
Un tuple est une liste nommée de valeurs (la valeur
est de n’importe quel type)
Le flux (stream) est une séquence illimitée de tuples
Le Spout lit les tuples à partir d’une source externe
Le Bolt traite les tuples
186. SPARK Streaming VS STORM
Année de création 2009 2011
Origine Twitter Université de Berkeley
Système de traitement
temps réel
Micro-batch Evénements
Langages supportés Scala, Java, Python, R Clojure, Java, Python
Architecture Lambda
(batch et temps réel)
Oui Non
Communauté open
source
Importante Moyenne
Présence offre Cloud
native
Amazon EMR Azure
HDInsight Google
Dataproc
Azure HDInsight
Intégré dans
HortonWorks
Oui Oui
211. Apache SQOOP
Export
Job
Merge
Importation des données dans Hadoop
Exportation des données de Hadoop
Création de jobs pour exécution différée
Combinaison de plusieurs sources de données
Import
212. Une formation
Apache SQOOP
sqoop import
--connect jdbc:mysql://localhost/naissances
--driver com.mysql.jdbc.Driver
--table departement
-m 1
-username maria_dev
-P
215. Une formation
Bilan
Maîtriser Hadoop et son périmètre
Comprendre la nouvelle manière de traiter
les données
Elaborer de la pratique sur plusieurs
technologies