2. ✘ Veuillez vous présenter :
✗ Vôtre nom et prénom
✗ Fonction, société
✗ Avez vous une expérience Big Data? Qu’avez vous fait ?
✗ Quelles sont vos attentes de ce cours ?
Tour de table
TOUR DE TABLE
3. Mehdi TAZI
✘ Architecte BigData
✘ Freelancer, ex OCTO
✘AXA, BNP, EDF, LA
POSTE, AL BARID BANK,
✘ ARCHI, DEV, ADMIN,
ORGA...
✘ Contact :
> twitter : @t_mehdi
> web : tazimehdi.com
> mail : mehdi@tazimehdi.com
4. ✘ Communication interactive par
thème
Déroulement
✘ Osez poser vos questions de façon interactive
> des termes utilisés, sujets non compris
> des problématiques liées à votre travail
> des questions d’ordre générale par thème
Technologique, Méthodologique, Organisationnelle…
5. Outils nécessaires
Cassandra Server : http://cassandra.apache.org/download/
Cassandra Dev Center : http://www.datastax.com/what-we-offer/products-services/devcenter
MongoDB server : https://www.mongodb.com/download-center#community
Horntonworks HDP : http://hortonworks.com/downloads/
Cloudera CDH : https://www.cloudera.com/downloads/quickstart_vms/5-10.html
VirtualBox
https://www.virtualbox.org/wiki/Downloads
7. Programme
✘ Introduction à la Big Data
✘ Vue d’ensemble
✘ Concepts architecturaux
✘ Couches et technologies
✘ Le NoSQL
✘ Datalake & Datalab
✘ Information generales & Atelier questions/reponses
9. Big data is like teenage sex : everyone talks about it, nobody
really knows how to do it, everyone thinks everyone else is
doing it, so everyone claims they are doing it...
Dan Ariely
12. Introduction à la Big Data
✘ Traitement et stockage massives des gros volumes de données
✘ Explosion quantitative des données numériques
C’est quoi la Big Data? (1/2)
13. Introduction à la Big Data
✘ Données provenant de plusieurs sources :
✗ Capteurs : température, pression…
✗ IOT : montres connectées, balances, Smartphones…
✗ Messages sur les réseaux sociaux : tweet, posts…
✗ Transactions et logs : banques, e-commerce…
✗ Images, vidéos et sons : instagram, youtube, snapchat, deezer, spotify…
✗ Autres : GPS, email, sms…
C’est quoi la Big Data? (2/2)
14. Introduction à la Big Data
Qu’est ce qui se passe chaque minute sur Internet?
Source : Qmee
log
Storage
RT Processing
ex : pic tag, batch concu
adds
RT Processing
15. Introduction à la Big Data
✘ Les solutions actuelles coûtent cher : archivage et traitement
✘ Répondre à des problématiques métiers avec plus de précision et de
rapidité.
✘ Améliorer la prise de décision basée sur l’analyse de très gros volumes de
données.
✘ Tirer un avantage concurrentiel à travers la collecte, l’analyse, la prédiction
et l’exploitation des données sur de grandes profondeurs. ( DDC )
✘ La création de nouveaux cas d’usages et de valeurs business basées sur la
données et la technologie. ( cloud , données …)
✘ Un outil au service du métier Une offre de service à part entière (AXA/ ERDF)
Quel est l’intérêt d’adopter le big data?
16. Introduction à la Big Data
✘ Au début c’était destiné aux gros acteurs du web et les grandes
multinationales :
✗ Facebook, Google, Amazon…
✗ Fedex, Walmart, Citi…
✘ Maintenant de plus en plus de monde y est concerné :
✗ De gros Acteurs : Axa, BNP Paribas, La Poste, EDF…
✗ Des nouveaux : Snapchat, whatsapp, pokemon go …
✗ Vous ?
Pour qui ?
17. Introduction à la Big Data
✘ Energie
✗ Amélioration de la production et distribution d’énergie
✗ Information en temps réel sur les débits et la qualité
✗ Détection des problèmes de réseaux
✗ Automatisation du processus de collecte de données
✘ Transport et distribution
✗ Optimisation des trajets et réductions des coûts
✗ Ajustement d’offre et de demande par zone géographique
✘ Produits de Luxe et grandes consommations
✗ Analyse de sentiments et retour produits *
✗ Amélioration de la satisfaction des clients
✗ Identification de nouveaux besoins et désirs *
✗ Recommandations
Cas d’usage réel (1/2)
18. Introduction à la Big Data
✘ E-Commerce
✗ Amélioration des stocks et de l’expérience clients.
✗ Gestion plus fine et dynamique des prix de vente
✗ Personnalisation des offres
✗ Pricing dynamique *
✗ Marketing ciblé
✘ Services publics et banques
✗ Archivage et données publiques
✗ Lute contre la fraude et abus *
✗ Amélioration des processus
✗ Sécurité
✘ Autres
✗ Fidéliser les clients des casinos en intervenant avant que les pertes des joueurs
ne soit trop élevées
✗ Détecter les potentiel futures boxs en pannes : météo, géolocalisation, état box.. *
Cas d’usage réel (2/2)
22. Questions / Réponses
> Comment définir le Big data en une seule phrase ?
> Pourquoi adopter le Big data ?
> Qu’est ce que la smart data ?
> Qu’est ce que le fast data ?
> Qu’est ce que l’open data ?
> A quelles problématiques répond le big data ?
> A quelles problématiques répond le fast data ?
26. Introduction à la Big Data
Propriété d’un Système big data - Les 5V
Variété
File
Json, CSV, Texte,
Png, Log ...
Vélocité
Batch
Periodic
Near RT
RealTime
100 ms, 30 min, 7h, 1j, 30000
events/time unit …
Volume
Mb
Gb
Tb
Pb
10Gb, 10Tb, 2Pb …
Véracité
31
2
Valeur
28. Questions / Réponses
> Citez les 3 principales propriétés d’un systèmes big data
> Citez deux autres propriétés
> Qu’elles sont les problématiques liées à la volumétries ?
> Qu’elles sont les problématiques liée à la vélocité ?
> Qu’elles sont les problématiques liée à véracité ?
32. Questions / Réponses
> Quelles sont les 5 grandes briques fonctionnelles d’un système bigdata ?
> Quelles sont les 4 grandes fonctionnalités que gère la brique de stockage
?
> Quelles sont les 3 grandes fonctionnalités que gère la brique de
traitement ?
> Quelles sont les 3 grandes fonctionnalités que gère la brique de sécurité
?
> Où se positionne un système Big Data par rapport au reste du SI ?
34. Concepts architecturaux
✘ Besoin : Traitement et stockage massif des gros volumes de données
✘ Limites : Ajouter plus de puissance aux machines :
✗ Stockage: Disque dur, mémoire …
✗ Traitement: CPU, parallélisme …
✘ Solution : Archiver et traiter l’information de façon distribuée afin de
bénéficier de plus de capacité de puissance
✘ Le Big data repose principalement sur les notions des systèmes
distribués!
Limitations & Besoin
36. Concepts architecturaux
Scalabilité verticale vs Scalabilité horizontale
16 GB
8 CPU
32 GB
16 CPU
Hardware
limitation !Scale-up Scale-up
Augmenter la puissance d’un système en ajoutant du matériels plus puissants
37. Concepts architecturaux
Scalabilité verticale vs Scalabilité horizontale
16 GB
8 CPU Scale out
24 CPU, 48 GO
Augmenter la puissance d’un systèmes en ajoutant de nouvelles machines
16 GB
8 CPU
16 GB
8 CPU
16 GB
8 CPU
Scale out
X CPU, Y GO
16 GB
8 CPU
16 GB
8 CPU
16 GB
8 CPU
16 GB
8 CPU
38. Concepts architecturaux
Scalabilité verticale vs Scalabilité horizontale
16 GB
8 CPU
32 GB
16 CPU
Limit !
16 GB
8 CPU
Scale-up
Scale-out Scale-out
16 GB
8 CPU
16 GB
8 CPU
16 GB
8 CPU
16 GB
8 CPU
16 GB
8 CPU
16 GB
8 CPU
16 GB
8 CPU
Scale-up
24 CPU, 48 GO X CPU, Y GO
Augmenter la puissance d’un système en ajoutant du matériels plus puissants
Augmenter la puissance d’un systèmes en ajoutant de nouvelles machines
40. Concepts architecturaux
Partitionnement - Sharding
Collection A
File
File1
TB
Nœud 1 Nœud 2 Nœud 3 Nœud 4
256
GB
256
GB
256
GB
256
GB
✘ Répartir les données et traitements sur de multiples serveurs sur un cluster
✘ Le partitionnement permet d’absorber la charge (de stockage ou de
traitement).
Serveur logique
Cluster
41. Concepts architecturaux
Réplication
Collection A
BA C
Nœud 1 Nœud 2 Nœud 3
CA BA B C
Nœud 4
BA C
RF = 3
✘ Copier la donnée en de multiples exemplaires sur plusieurs nœuds du cluster
✘ Permet de garantir la disponibilité de l’ensemble des données même quand
un nœud du cluster disparaît (maintenance, crash, …)
✘ La probabilité de perte d’un nœud croît avec la taille du cluster
✘ Meilleur performance et sécurité.
43. Concepts architecturaux
Architecture des disques (1/3)
✘ JBOD vs RAID
✗ JBOD : Just a Bunch Of Disks (3 disques de 1T = 3To de stockage)
✗ RAID : Redundant Array of Independent Disks (réplication physique)
✘ Quand utiliser quoi ?
✗ JBOD : Système avec redondance nœuds worker et de données
✗ RAID : Système sans redondance Nœuds Master, gestion du système
✘ Avantage :
✗ JBOD : Gagner de l‘espace disque, facile a mettre en place…
✗ RAID : Fiabilité de données, mais coûte plus cher...
47. Concepts architecturaux
Architecture des nœuds - Master / Slave – Sans HA
Nœud Master
Nœud Slave Nœud Slave
Application
Driver
writeread
SPOF
✘ Les nœuds master sont soit impliquer dans les opérations, soit ils ont
simplement un rôle mendiant d’acheminement, d’orchestration des opérations
read
> peut s’occuper du sharding/replication
> A connaissance de la topologies
49. Concepts architecturaux
Architecture des nœuds - Peer to Peer / En noeuds
Nœud 1
Nœud 2
Nœud 3
Nœud 4
✘ Tout les nœuds sont égaux
✘ Topologie connu par chaque nœud et non par le master
0-24
25-49
75-99
50-74
Masterless architecture
Application
Driver
R/W
53. Concepts architecturaux
Election des nœuds (3/4)
Nœud Primaire
Master
Nœud Secondaire
Slave
Arbiter
Réplication
Heartbeat
Election d’un nouveau nœud primaire Utilisé simplement pour le vote
64. Lab MongoDB - Introduction
sources : https://docs.mongodb.com et https://www.mongodb.com/mongodb-architecture
✘ Analyse de la solution :
> Section Introduction
> Technologie de stockage BigData (Database)
> Scalable horizontalement
> Section DataModel
> Schema design Orienté document
> Format BSON
> Section Réplication :
> Architecture Master/Slave
> Élection des nœuds avec/sans Arbiter
> Section Sharding
> Distribution par élément (Document)
> Distribution aléatoire et ordonnée (RangeBased/HashBased)
> Section MongoDB CRUD Operations
> Le write level est paramétrable (write concen)
> Architecture + Web CAP Théorème
> MongoDB est « CA » et « CP » si on utilise le safe=true ( besoin de creuser )
65. Lab MongoDB - Introduction
✘ Base de données open-source
✘ Base de données orientée documents
✘ Répond aux besoins de volumétries et de performances
✘ Réplication et Failover pour une haute disponibilité
✘ Auto Sharding pour une scalabilité horizontale
✘ Accepte le paradigme Map/Reduce
✘ Gestion facile des données géo-spatiales
78. Lab Cassandra - Introduction
✘ Base de données open-source
✘ Base de données orientée colonnes
✘ Répond aux besoins de volumétrie et de performance
✘ Réplication et Failover pour une haute disponibilité
✘ Auto Sharding pour une scalabilité horizontale
✘ Gestion automatique de la réplication des Datacenter
✘ Gestion facile des données timeseries
87. Datalake
Définition
Réseaux sociaux et
streaming
Fichiers et logs
Bases de Données
DATA LAKE
Données structurées
Données semi-structurées
Données non structurées
STAGING
ARCHIVING
TRANSFORMING
HISTORISATION
Capteurs
ANALYTICS
PREDICTIONS
Pas performante pour du
traitement opérationnel
89. Hadoop
Distribution et technologies
3 grandes distributions sur le marché :
> Hortonworks : Expedia, ebay, Samsung, Spotify,...
> Cloudera : Cisco, Mastercard, Siemens, WesterUnion…
> MapR : HP , American express, Beats music, Ericsson...
BNP Parisbas La Poste
Credit
agricole
99. ✘ Designe a la fois le Framework et l’algorithme
✘ MapReduce est un framework pour traiter les données en parallèle sur
plusieurs machines algorithme distribués
✘ Les programmes MapReduce scalent sur des milliers de machines.
Hadoop
MapReduceFILEA
split #1
SPLITSDATA
<k,v> paire
RESULT
split #2
split #3
<k,v> paire
<k,v> paire
map
map
map
reduce
reduce
reduce
MAPPERS SHUFFLING
SORTING
REDUCERS RESULT