Vous êtes sur la page 1sur 18

BIG DATA

COURS & EXERCICES

• Introduction au Big Data


1

• Hadoop
2

• Spark
3

• NoSQL
4

Mouna Torjmen Khemakhem


MAITRE ASSISTANTE HABILITEE - ENIS -Université de Sfax
1
Chapitre 1 : Introduction au Big Data
Objectifs
Ce chapitre vise à donner une idée générale et claire sur le « Big Data » en discutant
plusieurs définitions et en citant des exemples de domaines d’utilisation.

1. Introduction
Il n’existe pas une définition exacte de « Big Data », mais c’est possible de classifier les
définitions selon deux visions : vision « domaine d’activité » et vision « logiciel » comme
l’illustre la Figure 1.

Figure 1 : De données vers valeurs : « Big Data domaine d’activité » Vs. « Big Data logiciel »

En considérant « Big Data » comme un « domaine d’activité », ceci implique


l’exploitation des données volumineuses et hétérogènes pour extraire des connaissances et créer
des valeurs sans se concentrer sur les outils et les technologies utilisés. En outre, on peut parler
de « Big Data » comme un moyen de prédiction, de recommandation d’aide de décision, etc.

BIG DATA MOUNA TORJMEN KHEMAKHEM


D’un autre côté, en considérant Big Data comme un « logiciel », ceci implique

2
l’utilisation des outils et des technologies pour atteindre la vision « Big Data est un domaine
d’activité ». Citons par exemple la plateforme Hadoop et la technologie Spark ainsi que les
bases de données NoSQL comme MongoDB.

Dans ce cours on s’intéresse plutôt vision « logiciel ».

2. Historique
Le point de départ de « Big Data » est le moteur de recherche Google. En effet, avec
l’explosion des données sur le net, le moteur de recherche Google a rencontré un problème de
stockage de son index volumineux.

A un certain niveau, l’utilisation d’un système de Gestion de Bases de Données


Relationnelles comme Oracle a posé plusieurs problèmes tels que la distribution des données,
la gestion du nombre d’utilisateurs qui se croit d’une manière exponentielle, et enfin le temps
de réponse du moteur de recherche qui doit être rapide.

Face à tous ces problèmes, la société Google a inventé son nouveau système propriétaire
GFS (Google File System) en 2003.

2.1 Google File System (GFS)

Le Système de Fichier Google (GFS) est basé sur l’architecture Maître/Esclave. L’idée
principale consiste à construire plusieurs clusters. Chaque cluster est composé de plusieurs
nœuds (machines standards) où un nœud est désigné master et les autres sont considérés des
esclaves (appelés des chunk servers). Les chunk servers sont utilisés pour stocker les fichiers
(les données). La Figure 2 illustre cette architecture.
BIG DATA MOUNA TORJMEN KHEMAKHEM
3
Figure 2 : Exemple de clusters en GFS

L’utilisation des machines standards pour stocker les données conduit à un risque de
panne élevé. Pour cela, des précautions particulières ont été prises en considération pour éviter
la perte des données.

Principalement, les fichiers de grandes tailles ont été découpés en des chunks (des fragments),
et ces chunks sont stockés plusieurs fois sur des nœuds différents (la notion de duplication).

Plus précisément, chaque fichier de grande taille est découpé en des fragments (appelés des
chunks), avec la taille d’un chunk est 64 MO (Voir Figure 3). Chaque chunk possède un
identifiant unique de 64 bits ainsi qu’un numéro de version.

Figure 3 : Fragmentation d’un fichier volumineux en des chunks

En ce qui concerne la duplication, chaque chunk est dupliqué en moyenne 3 fois.

Composants de GFS

Le Master : il gère les méta-donnés des fichiers, c'est-à-dire la correspondance entre chaque
fichier et les chunks qui les composent ainsi que les nœuds stockant ces chunks. De plus, il
vérifie l’intégrité des données stockées et donne l’autorisation d’écriture sur le fichier. C’est lui
qui décide également le placement de stockage des chunks des fichiers.

Le Master communique régulièrement et fréquemment avec les chunk servers à travers les
heartbeats.

La limite majeure du nœud Master est qu’il est un point sensible du système. Pour cela, il y a
toujours un nœud miroir (shadow) qui le remplacera en cas de panne.

Les chunk servers : Ils stockent les chunks et réalisent les accès en lecture et écriture.

BIG DATA MOUNA TORJMEN KHEMAKHEM


Opération de lecture en GFS

4
La Figure 4 un exemple de l’opération de lecture en GFS. En effet, l’application cliente
commence par contacter le Master afin de récupérer les informations nécessaires concernant les
chunks du fichier à lire. Par la suite, elle accède directement aux ChunkServers pour récupérer
les chunks du fichier concerné.

Figure 4 : Opération de lecture en GFS

Remarque

Les opérations de Lecture/Ecriture sont principalement réalisées par le client et les


chunk servers afin d’alléger le travail du Master.

Architecture de GFS1

La figure 5 présente l’architecture générale de GFS.

1
https://fr.wikipedia.org/wiki/Google_File_System
BIG DATA MOUNA TORJMEN KHEMAKHEM
5
Figure 5 : Architecture GFS

2.2 MapReduce
En parallèle avec GFS, Google a proposé un algorithme permettant la distribution des
traitements sur un ensemble de machines avec le système GFS. Cet algorithme est appelé
MapReduce : Simplified Data Processing en Large Clusters.

Remarque

Aujourd’hui, Google possède plus de 1 000 000 de serveurs interconnectés dans le monde.

3. Définition de Big Data


Comme nous l’avons déjà mentionné, il n’existe pas une définition exacte pour Big Data.
Toutefois, il y a des mots clés très liés à ce domaine présentés dans la Figure 6.

Dans ce qui suit, nous décrivons la relation entre chaque mot clé et le domaine Big Data.

BIG DATA MOUNA TORJMEN KHEMAKHEM


6
Figure 6 : Les mots clés de Big Data

3.1.Big Data : données massives


En entendant le mot « Big Data », nous réfléchissons directement aux données
massives. Ceci est bien évident grâce à (1) la facilité d’acquisition des données à travers les
capteurs, les télescopes, les cartes de fidélité, les réseaux sociaux, etc. et (2) la baisse des prix
des supports de stockage.

3.2.Big Data : données distribuées


Vu l’existence de quantités de données énormes, il est impossible d’utiliser une seule
machine est impossible et il y a eu recours à une solution distribuée pour stocker les données.
De plus, l’acquisition des données se fait à des endroits différents (smartphones, capteurs,
caméra de surveillance, etc.) d’où le transfert de données à une seule machine centrale est très
couteux en termes de temps et il vaut mieux traiter les données directement à leurs endroits de
stockage.

3.3.Big Data : données incertaines


Les données incertaines sont des données qui contiennent des erreurs. En effet, dans la quantité
énorme de données, il est évident de trouver des données non fiables dues à l’imprécision des
capteurs (ex. Altération des images transmises par un télescope), fausses données sur les
réseaux sociaux (ex. Propagation de données incomplètes et bruitées sur les réseaux sociaux),
etc.

3.4.Big Data : données non/peu structurées


Les données de Big Data peyvent être : non structurées (e.g. vidéo), peu structurées (e.g.
tweets) et très structurées (e.g. tickets de caisse).
BIG DATA MOUNA TORJMEN KHEMAKHEM
Les systèmes NoSQL permettent une structuration lâche et par conséquent la possibilité de

7
stocker des données non structurées.

3.5.Big Data : flux de données


Un flux de données est défini par l’arrivé des données en continu (stream data). Ces
données nécessitent à être traitées et analysées en temps réel (au moment d’arrivé). Pour avoir
un traitement efficace, il faut proposer des algorithmes qui ne nécessitent pas plusieurs passes
sur les données.

3.6.Big Data : Traitements parallèles


Nous avons déjà mentionné que le stockage des données volumineuses se fait d’une manière

distribuée. Par conséquent, il faut effectuer des traitements parallèles autant que possible.

Remarque

Un traitement parallèle n’est pas forcément plus rapide qu’un traitement séquentiel.

3.7.Big Data : Visualisation de données


Puisqu’en Big Data, les données sont massives, certainement les résultats après le
traitement et l’analyse sont massifs. Pour mieux comprendre ces résultats, il faut avoir recours
à une visualisation claire et lisible à travers une représentation graphique de données.

3.8.Big Data : Fouille de données


La fouille de données (Data Mining) est un ensemble d'approches statistiques (ex.
algorithmes de classification) permettant d'extraire un savoir ou une connaissance à partir de
gros volumes de données.

3.9. Big Data : Prédiction et Prévision


Grâce au Big Data, il est possible de trouver des explications de phénomènes, de faire
des prévisions des conséquences permettant de réduire les risques et même faire des analyses
prédictives du futur permettant l’aide à la prise de décisions.

A titre d’exemple, avec un suivi de 10 ans, il est possible de prédire le risque de maladies
cardio-vasculaire, en fonction de l’âge, du sexe, du taux de cholestérol, etc. (Equation de
Framingham2)

2
https://en.wikipedia.org/wiki/Framingham_Risk_Score
BIG DATA MOUNA TORJMEN KHEMAKHEM
3.10. Big Data : Machine Learning

8
Le Machine Learning est une technologie d’intelligence artificielle permettant aux
ordinateurs d’apprendre sans avoir été programmés explicitement à cet effet. Pour apprendre et
se développer, les ordinateurs ont toutefois besoin de données à analyser et sur lesquelles
s’entraîner. De fait, le Big Data est l’essence du Machine Learning, et c’est la technologie qui
permet d’exploiter pleinement le potentiel du Big Data3.

L’objectif de machine learning est ainsi d’extraire des modèles (patterns) au lieu de valeurs
précises. Ces modèles sont plus précis grâce à la disponibilité de données mais plus difficiles à
réaliser à cause de la quantité des données.

4. Les Vs de Big Data


4.1. 3 Vs- Gartner (2001)
L'expression « Big Data » date de 1997 selon l'Association for Computing Machinery.
En 2001, l'analyste du cabinet Meta Group (devenu Gartner), Doug Laney, décrivait les big data
d'après le principe des « trois V » (Figure 7) : volume, variété, vélocité.

Figure 7 : Les 3 Vs de Big Data

Volume

3
https://www.lebigdata.fr/machine-learning-et-big-data (juillet 2018)
BIG DATA MOUNA TORJMEN KHEMAKHEM
Le Volume de données est de plus en plus massif. La quantité de données est

9
croissante (en teraoctets et même petaoctets). Comme illustration de ce
volume, 1 minute d’Internet vaut 30h vidéos, 204 millions emails, 300 milles
tweets, etc.

Il est estimé d’avoir une croissance de 800% des quantités de données à traiter
dans 5 ans.

La figure 8 illustre l’évolution de volume de données de 2005 (0.1 zettaoctets) à 2020


(40 zettaoctets).

Figure 8 : Evolution de volume de données de 2005 à 2020

Variété

Les données sont très variées. Elles peuvent être brutes, non structurées ou semi-
structurées.

Les données structurées représentent seulement 20% : bases de données structurées, feuilles de
calcul de tableur, … Alors que les données non structurées représentent 80% : textes, sons,
photos, vidéos, emails, messages réseaux sociaux, …

D’un autre côté, les données sont caractérisées par une diversité de formats et de
sources. La Figure 9 illustre quelques sources diverses de données.

BIG DATA MOUNA TORJMEN KHEMAKHEM


Figure 9 : Quelques sources de données variées

10
Vélocité : rapidité des flux de données

La vélocité désigne le fait que les données sont produites, collectées et analysées en
temps réel (Internet Of Things, détection de fraudes, …). L’analyse de ces données doit être au
moment de leur génération sans les stocker en des bases de données.

A titre d’exemple, nous citons le cas d’une caméra de surveillance (streaming Data) et
de la voiture intelligente (100 Capteurs / voiture pour la surveillance).

4.2. 4Vs- IBM (2012)


En 2012, un quatrième V est apparu qui est la véracité.

Véracité

C’est la qualité de la fiabilité des données qui peuvent être bruitées,


imprécises, ambigües, incomplètes, etc.

En effet, il est indispensable de vérifier la crédibilité de la source et la


qualité du contenu afin de pouvoir exploiter les données.

A titre d’exemple, nous citons les faux profils sur les réseaux
sociaux, les fausses informations et faux avis des consommateurs sur un
produit, et les données issues des capteurs défectueux.

4.3. 5Vs- (2015)


En 2015, un cinquième V est apparu, qui est la Valeur.

Valeur

C’est l’utilisation des stratégies adéquates pour une création de


valeur des données disponibles. Le but est d’apporter de la valeur
ajoutée et de nouvelles connaissances aux données. Ceci implique que
seulement les données utiles sont retenues.

Avec cette cinquième V, nous ne parlons plus de Big Data, mais plutôt de
Smart Data comme le montre la Figure 10.

BIG DATA MOUNA TORJMEN KHEMAKHEM


11
Figure 10 : 5 v de Big Data : Smart Data

Remarque

Bien que principalement, il y a 5 V en Big Data, il y a des travaux qui ont proposé
d’autres V comme Visualisation, Viscosité, Virilité, Venue et Variabilité, Volatilité,
Vulnérabilité, etc.

5. Les spécificités de Big Data


5.1. Distribution de données
Le grand volume de données est divisé en des petits blocs et réparti sur plusieurs nœuds
afin de pouvoir réaliser des traitements parallèles (Figure 11).

Nœud 1

Nœud 2

Nœud 3

Figure 11 : Distribution de données

5.2. Traitements en parallèles


Les nœuds contenant les données distribuées s’exécutent en parallèle pour le traitement et

l’analyse de ces données. Les données sont par la suite fusionnées pour obtenir le résultat final

(Figure 12).

BIG DATA MOUNA TORJMEN KHEMAKHEM


12
Figure 12 : Traitements parallèles

5.3. Tolérance aux pannes


Chaque chunk de données est répliqué plus qu’une fois. En cas de panne d’un nœud, les
données peuvent être récupérées (Figure 13).

Fichier

Nœud 1 Nœud 2 Nœud 3

Figure 13 : Tolérance aux pannes

5.4. Utilisation de matériel standard


Pour exécuter les techniques et les plateformes Big Data, on n’a pas besoin de matériel
spécialisé comme le RAID (Redundant Arrays of Inexpensive Disks) illustré dans la Figure 14,
d’où un coût d’infrastructure réduit.

Figure 14 : Un RAID

BIG DATA MOUNA TORJMEN KHEMAKHEM


5.5. Flexibilité, évolutivité et scalabilité

13
La scalabilité en Big Data est horizontale d’où la possibilité d’augmenter facilement le
nombre de ressources hardware dans le cluster selon les besoins évolutifs dans le temps (Figure
15).

Figure 15 : Scalabilité Verticale Vs. Scalabilité Horizontale

6. Quelques domaines d’application de Big Data

Dans cette section, nous donnons des exemples d’application de Big Data dans quelques
domaines. Ici, nous nous intéressons au Big Data comme domaine d’activité.

6.1. Santé
 Google Flu Trends 4 : c’est une application révolutionnaire crée en 2008 qui prétend
suivre les épidémies grippales en temps réel. Et ceci en analysant les requêtes des
internautes. En d’autres termes, lorsque lorsqu’un utilisateur cherche des mots clés
comme « grippe », « paracétamol » ou « maux de tête », le logiciel en déduit
automatiquement qu’il est atteint par le virus.
 Médecine Personnalisée 5: consiste à l’intégration d’un ensemble de critères variés
allant de la génétique au mode d’alimentation de chaque patient dans la médecine
actuelle afin d’améliorer le traitement, ainsi que renforcer la prévention des
maladies. Ces critères incluent le génome humain, le génome des bactéries de la flore
intestinale, ainsi que des marqueurs non génétiques comme les biomarqueurs, l’indice

4
https://www.tdg.ch/sante/sante/Google-Flu-Trends-vaincu-par-ses-poussees-de-fievre/story/28554893
(Septembre 2015)
5
https://www.letemps.ch/sciences/lere-medecine-big-data (Avril 2014)
BIG DATA MOUNA TORJMEN KHEMAKHEM
de masse corporelle, ou la densité osseuse, et même des informations liées à

14
l’environnement. De plus il est possible d’extraire des informations liées aux réponses
du patient aux traitements précédant à partir des rapports médicaux, des questionnaires
et d’autres registres d’hôpitaux.
 Surveillance sanitaire (Chiolero, Paccaud et Fornerod 2014): c’est analyser les
données de santé d’une population pour adapter le système de santé aux besoins de la
population, planifier les ressources sanitaires et définir des politiques adéquates de
promotion de la santé et de prévention des maladies (Lee et Thacker 2011) . Cette
surveillance concerne toutes les dimensions de la santé (décès, maladies, accidents,
santé mentale, santé subjective, comportements de santé ; organisation, utilisation et
financement du système de soins ; etc.) et ses déterminants. La surveillance sanitaire est
ainsi très complexe par les multiples dimensions de la santé d’une population et
les nombreux facteurs qui l’influencent, que cela soit aux niveaux de l’individu, de la
communauté ou de l’environnement.

6.2. Marketing
 Analyse prédictive : consiste à collecter et analyser les données des clients pour
comprendre leurs tendances actuelles ainsi que leurs préférences. En effet, la base de
l’analyse prédictive appliquée au marketing est « Cibler les clients au moment idéal
avec une offre adaptée »6.
Les données qui peuvent alimenter un système marketing prédictif sont très variées. Il
existe toutefois 4 grandes catégories de données : démographiques, transactionnelles,
d’interactions et d’engagement (Voir Figure 16). Par exemple, les données
démographiques (âge, sexe, emplacement géographique, etc.) permettent de trouver des
caractéristiques chez les clients permettant de réaliser de meilleures ventes : un client
ayant moins de 35 ans, ou bien un client habitant à moins de 2km d’un revendeur, ou
bien un client est parent depuis au moins 2 ans.
Pour les données transactionnelles (qui a acheté quoi, quand et comment ?), elles servent
à faire des prédictions sur les comportements d’achats futurs d’un consommateur.

6
https://www.business-marketing.fr/lanalyse-predictive-appliquee-au-marketing-fonctionnement-et-
utilisations/
BIG DATA MOUNA TORJMEN KHEMAKHEM
15
Figure 16 : Les types de données d’un système marketing prédictif7

 Analyse des sentiments8 : détection de satisfaction ou de mécontentement des clients


envers un produit en analysant leurs commentaires sur les réseaux sociaux.
Généralement, les sentiments sont analysés et classés en 3 classes : négatif, neutre et
positif comme le montre la Figure 17.

7
https://www.matthieu-tranvan.fr/strategie-dentreprise/marketing-predictif.html (Septembre 2018)
8
http://www.marketing-professionnel.fr/tribune-libre/commentaires-clients-text-mining-donnees-
interpretation-201704.html (Avril 2017)
BIG DATA MOUNA TORJMEN KHEMAKHEM
Figure 17 : Les types d’analyse de sentiments9

16
6.3. Analyse de tweets en temps réel
 Détection de terroristes : Il existe des plateformes permettant d’identifier des
terroristes à travers leurs tweets publiés en temps réel (Abrar, Shamsul Arefin et Hossain
2019)

6.4. Politique
 Compagne d’élection de Barack Obama 10 : l’analyse de Big Data a joué un rôle
important dans la campagne de ré-election de Barack Obama en 2012 notamment pour
analyser les opinions politiques de la population. Le projet Big Data d’élection était basé
sur 3 piliers de données11 :

1. Agrégation de données sociodémographiques et nominatives sur une base


géographique : disponibles dans le cadre du projet Open Data Gov12.
2. Corrélation prédictive des votes en fonction de l'historique de résultats électifs
précédents par zone géographique : données aussi disponibles publiquement.
3. Corrélations avec les sondages d'opinion et les études ad hoc réalisés afin de
connaître les thèmes sensés à influencer le vote des électeurs indéterminés en
fonction des zones d'habitat. Ainsi dans un état traditionnellement conservateur,
mettre en avant les arguments Désendettement-Isolationnisme feront plus
intéressants que l'évocation du Programme de Santé d’Obama.

En fonction de ce mash-up de données obtenu en interconnectant diverses sources et en


les mettant en relation (bases de données NoSQL, APIs d'interpolation et de traitement
de masse de données) avec à la clé la construction d’un algorithme ad hoc comportant
des règles de filtrage territorial, de pondération en fonction des profils de votants-
habitants, il devient plus facile à l’équipe de la compagne d’élection de savoir
exactement où et à qui s'adresser, dans quelle maison, au sein de quel quartier, de tel
état, avec quels revenus et quelles préoccupations prédominantes. C’est
la Nanotargeting !

9
https://www.newgenapps.com/blog/the-secret-way-of-measuring-customer-emotions-social-media-
sentiment-analysis (Aug 29, 2017)
10
https://www.20minutes.fr/monde/1038034-20121108-election-americaine-big-data-arme-secrete-obama
(Novembre 2012)
11
https://www.journaldunet.com/ebusiness/expert/53760/la-victoire-d-obama---cas-d-etude-concret-d-
utilisation-des-big-data.shtml (Mars 2013)
12
https://www.data.gov/
BIG DATA MOUNA TORJMEN KHEMAKHEM
7. Conclusion

17
Ce chapitre a présenté une idée générale sur le Big Data. Plusieurs définitions ont été
discutées selon deux visions : « Big Data en tant que domaine d’activité » et « Big Data en tant
que logiciel ». Les 5 Vs les plus caractérisant le Big Data sont par la suite détaillés, à savoir
Volume, Variété, Vélocité, Véracité et Valeur. Enfin, les spécificités de Big Data ont été
élaborées ainsi que quelques exemples de domaines d’application de Big Data.

BIG DATA MOUNA TORJMEN KHEMAKHEM

Vous aimerez peut-être aussi