Big Data
Big Data
1
REMERCIEMENTS
2
Tout d’abord, nous tenons à remercier notre Seigneur, Dieu le tout puissant, qui
nous a donné la force, le courage et la patience d’accomplir ce modeste travail.
Remercions aussi le président ainsi que les honorables membres du jury pour avoir
bien voulu donner leur temps de lire ce travail
Nous tenons à exprimer nos sincères remerciements à tous les professeurs qui nous ont
enseigné et qui par leurs compétences nous ont soutenu dans la poursuite de nos études.
Enfin, un sincère remerciement à mes parents, la famille, ainsi que mes amis pour tous les
encouragements qu’ils m’ont donnés et d’avoir déployé leur force à la réalisation de ce
longue travail.
SOMMAIRE
3
Table des matières
REMERCIEMENTS...................................................................................................................2
SOMMAIRE...............................................................................................................................4
AVANT-PROPOS......................................................................................................................5
INTRODUCTION GENERALE..............................................................................................11
2.1 Introduction.........................................................................................................................18
2.2 Généralité............................................................................................................................19
2.2.1 Définition.........................................................................................................................19
4
2.4 De SQL Classique vers NoSQL..........................................................................................26
2.4.1 SGBDR............................................................................................................................26
2.6 Conclusion..........................................................................................................................37
3.1 Introduction.........................................................................................................................38
3.2 Définition............................................................................................................................39
Explication :..............................................................................................................................42
3.3.1 Scalabilité.........................................................................................................................43
5
3.2.2 Applications de calcul......................................................................................................51
3.1 Conclusion..........................................................................................................................53
4. SECTION :........................................................................................................................54
BIBLIOGRAPHIE....................................................................................................................55
Article.......................................................................................................................................57
Memoire....................................................................................................................................57
AVANT-PROPOS
6
Résumé
7
Les données ont envahi notre monde et modifient nos façons d’agir. L’exploitation du Big
Data a ouvert des nouvelles perspectives dans de nombreux domaines, et grâce à des
outils analytiques et à la modélisation de données, des chercheurs et des administrations
peuvent faire des analyses tendancielles et suivre des phénomènes en temps réel.
Abstract
Data has invaded our world and is changing the way we do things. The
exploitation of Big Data has opened up new perspectives in many fields, and thanks to
analytical tools and data modeling, researchers and administrations can make trend
analyzes and follow phenomena in real time.
This thesis is in addition to the various research works in the field of massive data
storage called Big Data. As a result of this problem, new technologies have emerged such
as the NoSQL database, which radically change the architecture of the databases that we
are used to seeing, and thus make it possible to increase performance and availability of
services.
8
SI : Système d’information
PME :
PMI :
E/S : Entré/Sortie
9
Figure 1: Structure de bases de données Client-Serveur
10
LISTE DES TABLEAUX
11
INTRODUCTION GENERALE
12
L’acte de naissance est systématiquement considéré par les autorités décisionnaire
comme une solution prioritaire pour marquer l’existence d‘une personne dans un pays. Il
est encore aujourd’hui une des réponses principales aux problématiques rencontrées par
un pays ou, à moindre échelle, un territoire. En effet, la copie de cet acte de naissance
joue un rôle très important durant l’existence d’un individu. Alors qu’aujourd’hui le
stockage de ces informations est considéré comme un de petits problèmes.
En ce sens, généralement, quel que soit le type de stockage actuel, de la donnée physique à
la donnée numérique, le service de liaison de ces données collectées, comme dans un seul
endroit restera un problème à résoudre. Nous utilisons souvent de la base de données
relationnelle pour ce stockage.
Bien que le concept de Big Data soit relativement nouveau, en 2005, on assista à une prise
de conscience de la quantité de données que les utilisateurs généraient sur Facebook,
YouTube et autres services en ligne. Hadoop fut développé cette même année. NoSQL
commença également à être de plus en plus utilisé à cette époque. Actuellement,
l’association des deux infrastructures semble constituer la meilleure approche. Maîtriser la
technologie du Big Data est un enjeu continu. Il ne suffit pas de stocker les données. Pour
être utiles, celles-ci doivent être exploitées et, en amont organisées. Des données propres,
ou des données pertinentes pour le client est organisées de manière à permettre une analyse
significative, et nécessitent beaucoup de travail. Les spécialistes des données passent 50 à
80 % de leur temps à organiser et à préparer les données avant leur utilisation.
A l’heure actuelle, Madagascar est un pays qui commence à s’intéresser et à se tourner vers
l’informatisation. Ce mémoire de recherche s’intéresse plus particulièrement sur la
« Conception et exploitation de données Big Data, cas du copie d’état civil Malagasy ».
13
parallèles et distribués de grandes masses de données ; et le HDFS qui est un système
de gestion de fichier distribué.
L’objectif de l’étude sera donc de concevoir une application et de modéliser son base de
données afin de nous aider à gérer tous les données dans la base et de les consulter à
n’importe quel moment, et à n’importe quel endroit où le système a été mis en place.
- Et enfin, nous terminerons ce mémoire par une discussion, et afficher le résultat de notre
recherche durant ce long chemin de travail.
14
1. SECTION : CONTEXTE ET APPROCHE
15
recrutent plus souvent qu’auparavant des cadres spécialisés et des experts. Ces dernières
peuvent être amenées à cumuler des fonctions de gestion de parc et d’études et
développement informatiques.
Actuellement, nous pouvons dire qu’il n’existe pas de logiciel dédié et spécifique
pour l’élaboration du copie d’acte de naissance d’un enfant et du peuple Malagasy dans le
pays. On utilise souvent dans la plus part des cas, des méthodes à l’anciennes, en utilisant
de la machine à écrire et de logiciel Word dans les arrondissements et les mairies.
Cependant, d’une part, lorsque l’individu responsable utilise de la machine à écrire pour
l’élaboration de la copie de ‘acte de naissance, alors le partage et la distribution de
l’information sur la personne concernée se fait partir d’un document physique. Et bien sûr,
le stockage du document original se trouve dans quelque part interne ou externe du
bâtiment de travail avec du format en papier.
Et d’autre part, supposant que la personne responsable utilise du logiciel Word dans son
ordinateur de bureau, dans ce cas-là, le processus de son travail est la même à celui qui
utilise de la machine à écrire, mais la différence entre les deux, c’est que la personne
responsable devra imprimer le document qu’il venait de saisir.
16
Revenons sur le de stockage des documents numériques, d’autres départements utilisent
déjà du serveur pour la gestion de leur ressources, mais sur la vision globale dans d’autres
ville, ils ont encore du mal à gérer leur propre système d’information. Le système de
stockage n’est donc pas centralisé.
Or, généralement, l’individu devra pouvoir consulter son extrait d’acte de naissance dans la
ville ou commune où il se trouve partout dans le pays, vue le développement technologique
actuelle.
Il y a donc une absence d’entreposage de données collectif pour ce genre de système dans
le pays, afin de valoriser les données collecté par les responsables. Mais aussi, bien sûr,
pour le traitement et exploitation rapide des échantillons de ces informations.
17
1.1.3 Objet de l’étude :
Les données sont au cœur du système d’information. L’efficience de leur
organisation et de leur exploitation est une préoccupation majeure. Cette étude concerne
le stockage massif des données, le système d’information décisionnelle, et la technologie
autour de Big Data.
L’idée générale du Big data, c’est d’enregistrer beaucoup de données le plus possible.
D’ailleurs si l’on traduit : Big Data, on obtient quelque chose comme “Grande Donnée” ou
“Données importantes”.
Aussi bien que des differents entreprises commencent peu à peu à adopter le
Big Data, autant qu’Internet en 1993, la révolution Big Data est encore devant nous et
de grands changements apparaîtront dans les prochaines années.
18
1.1.3.2 Définition de Big Data:
Littéralement, le terme “Big Data” signifie “gros volume de données”. La
définition initiale a été définie par le cabinet McKinsey and Company en 2011 avec la
célèbre règle des 3 “V” :
Volume :
Un système Big Data se caractérise d’abord par le volume de données en jeu. Ce système
traite un volume de données largement supérieur à ce que traitent les bases de données
traditionnelles. Ce qui pose un défi technologique : les volumes de données en jeu
excèdent les capacités d’un simple ordinateur, nécessitent des mises en réseau et
l’utilisation du cloud computing.
Vitesse ou Vélocité :
Depuis le début, nous insistons sur le problématique de volume. Dans Big Data, il y a
évidemment « Big ». Mais dans le Big Data, le volume n’est pas le seul sujet. Un système
Big Data c’est aussi un système dans lequel la donnée circule vite entre les outils, les
bases, les applicatif, les sources. Les données arrivent dans le système en provenance de
source multiples et sont processées souvent en temps réel pour générer des insights et
mettre à jour le système. Dans ce Big système Big Data, l’approche orientée « batch » tend
progressivement à céder sa place au streaming de données en temps réel. De plus en plus,
la donnée est ajoutée, traité, processée et analysée en temps réel.
Variété :
Les données sont en grand nombre et circulent vite dans le système. Mais ce n’est pas tout.
Le Big Data se caractérise aussi par l’immense variété des données traitées. Les bases de
données relationnelles ont affaire à des données structurées et de même type. Par contre
dans le Big Data, les données sont dans leur majorité non structuré ou semi-structuré. Et
pour cette raison, elles doivent être travaillées, longuement préparées. Un texte, un fichier
audio ou fichier vidéo doivent faire l’objet d’un traitement avant de pouvoir produire du
sens et supporter des métadonnées.
Le principe de sources multiples est un principe capital dans le process “Big Data”.
Il est impensable de bâtir un projet décisionnel en se basant sur une source unique
19
de données et prétendre que celle-ci détient la vérité. Nous devons matcher plusieurs
données provenant de différentes sources pour pouvoir en déduire quoi que ce soit. Ces
technologies étaient censées répondre à l’explosion des données dans le paysage
numérique.
En résumé, le Big Data est l’art de gérer de gros volume de données, complexes et
hétérogènes, pour la plupart non structurées, qui circulent vite dans un système donné. Ce
qui n’est pas à la portée des logiciels classiques de gestion de bases de données.
Certains auteurs ou éditeurs de logiciels ont voulu ajouter deux autres « V » aux trois
proposés par Gartner, pour mettre en avant d’autres défis posés par le Big Data :
Valeur
Elle représente les données, autant pour l’entreprise que pour l’utilisateur. Ces
organisations et entreprises sont conscientes de la valeur que peuvent représenter ces
données et n’hésitent pas à créer une relation “donnant-donnant” avec ses
utilisateurs. La valeur rappelle la finalité business de tout projet Big Data.
A la valeur s’ajoute une notion plus qualitative véhiculée par le 5ème “V”, qui est la
C’est-à-dire disposé de données fiables pour leur traitement. Elle évoque la nécessité de
vérifier la crédibilité de la source et la qualité du contenu afin de pouvoir exploiter ces
données.
Mais la véracité ou fiabilité des données est notamment menacée par les comportements
déclaratifs sur les formulaires, par les diversités des points de collecte, par la multiplication
des formats de données et par l’activité des robots et faux profils innombrables sévissant
sur Internet. Si l’on base nos décisions sur des données il faut être sûr qu’elles apportent
une « vérité » vraie, ou tout du moins utile. Cette validation de la véracité est cruciale pour
ne pas être induite en erreur sans le savoir.
Ces cinq éléments ont servi pendant longtemps de boîte à outils pour comprendre les
fondements du Big Data, à savoir l’apparition de nouvelles technologies innovantes
capables de traiter dans un temps limité de grands volumes de données afin de valoriser
l’information non exploitée d’une entreprise.
20
Figure 1 : Les 5V du Big Data
21
1.1.3.3 Propriété du Big Data
Le Scalabilité
Dans leur tentative d'aborder le Big Data, les nouvelles technologies s'efforcent à
satisfaire une propriété́ primordiale qui est la « scalabilité ». On entend par cela la capacité́
d'un système à améliorer ses performances en augmentant la taille ou le nombre de ses
ressources lorsqu'il fait face à une charge plus grande. En pratique, on retrouve deux
approches dites scalabilité verticale et son analogue horizontale. La première est réalisée
en augmentant la taille du système et la puissance de ses composants (RAM, CPU). Par
contre, la scalabilité horizontale se manifeste sous la forme d'un Cluster. Il s'agit d'un
système distribué composé de plusieurs machines de capacité́ modérée appelées nœuds.
Ces machines ou nœuds communiquent dans le but de réaliser certaines opérations et
manipuleront chacune une partie de la charge imposée au système adoptant ainsi la
politique « diviser pour régner ». Ladite charge peut représenter une problématique de
stockage d'une grande masse de données ou leur traitement. La figure ci-dessous résume le
concept.
Il est important de noter que la scalabilité verticale rencontre des limites d'applicabilité́ . À
partir d'un certain point, il n'est plus possible d'augmenter la puissance d'un système
résidant sur une seule machine indépendamment de la disponibilité́ des ressources et de la
taille du budget. Comme la scalabilité est nécessaire à n'importe quel système Big Data vu
le volume et la vélocité́ imprédictibles des données, l'approche horizontale est le plus
souvent adoptée. De plus, puisque les machines ne sont pas nécessairement très puissantes,
les clusters pour systèmes Big Data peuvent être loués en tant que ressource chez les
22
fournisseurs cloud. Ceci a entre autres, l'avantage de réduire les couts et de faciliter les
configurations, le déploiement et les opérations de maintenance.
Théoreme de CAP
Lors du symposium sur les principes de l’informatique distribué [13], organisé en
2000 à l’université de Berkeley en Californie, Eric Brewer a donné une présentation sur
son expérience sur les changements des bases des données distribuées, et par laquelle, il a
présenté pour la première fois son théorème CAP. Le théorème de Brewer aussi connu
sous le nom théorème de CAP, dit qu’il est impossible sur un système informatique de
calcul distribué de garantir en même temps c’est-à-dire de manière synchrone les trois
contraintes suivantes :
Alors que d’après le théorème de Brewer, pratiquement, à un instant donné, que deux
contraintes à la fois peuvent être garanties par une base de données.
23
Figure 3 : Les contraintes du NoSQL
Selon la figure ci-dessus, les trois options qui peuvent exister sont :
Ecriture
V1 V2
Lecture_1 Lecture_2
Dans la Figure 4, les deux requêtes de lecture concurrente sur une même donnée,
retournent le même nouveau résultat et sans délai d’attente.
24
que les mises à jour sont asynchrones sur le réseau. Cette option s’intéresse à fournir un
temps de réponse rapide.
Ecriture
Asynchrone
V1 V2 V1
AV2Disponibilit APDisponibilité
Lecture_1 Lecture_2
Dans la Figure 5, la lecture1 retourne v2 alors que la lecture2 retourne v1. Cassandra
utilise cette option, avec des temps de réponse très appréciables mais avec des résultats non
garantis à 100%.
Marginaliser la disponibilité (CP) : Les données ne peuvent être utilisées que si leur
cohérence est garantie. Une donnée mise à jour sur un nœud, doit être bloquée sur les
autres nœuds jusqu’à la propagation de la nouvelle version sur tout le réseau. Dans un
environnement distribué, une base de données prend un temps considérable pour avoir un
état cohérent, ce qui rend la disponibilité relative.
Ecriture
Synchrone
V1 V2 Attente V1 V2
Disponibilité + APDisponibilité
Lecture_1 Lecture_2
25
utilise cette option des BD NoSQL. L’option de marginaliser la distribution n’est pas
réaliste, car de nos jours, il n’est pas pratique, voire inimaginable de travailler dans un
environnement non distribué.
Ils supposent ainsi que les données sont fréquemment lues, mais rarement mises à jour. Ils
garantissent leur durabilité́ et une grande disponibilité́ sans fournir d'aspects structurels qui
pourraient servir aux requêtes complexes. Ces solutions sont donc inadéquates pour des
opérations d'analyse ou d'extraction des connaissances. De fait, les traitements sont
entièrement indépendants du stockage et se font à part. Parmi les fournisseurs cloud qui
proposent ce genre de systèmes, on retrouve Google Cloud Storage, Azure BLOBS,
Amazon S3.
C’est le système de stockage par excellence pour les plateformes MapReduce. Son
architecture générale consiste en un nœud central de contrôle appelé́ NameNode et
plusieurs autres nœuds qui stockent les données appelés DataNodes comme décrit dans la
figure ci-dessous. Le rôle du NameNode est de détenir les métadonnées et de partager et
fragmenter les données sur les nœuds de stockage qui les sauvegardent au format de chunk
26
(un chunk équivaut à 64 MB par défaut). Afin de garantir la tolérance aux pannes, chaque
chunk est répliqué́ sur plusieurs autres DataNodes (par défaut 3). Il faut savoir que ce
système est fortement optimisé pour travailler en étroite collaboration avec les plateformes
de traitement MapReduce, mais rencontre quelques limites comme le faible débit en
lectures concurrentes et l'impossibilité́ d'exécuter des écritures concurrentes.
F
igure 7: Apache HDFS
GFarm :
27
Il s'agit d'un système de fichiers distribué conçu pour supporter le stockage et le
partage des données dans les plateformes de traitement sous forme de grilles.
L’objectif de cette présente étude, c’est de résoudre les problèmes de ce thème intitulé
« Conception et exploitation des données Big Data, cas de copie d’état civil Malagay ».
Les données sont au cœur de notre économie. Les applications, les logiciels, les objets,
génèrent des données qui sont collectées, stockées, et disponibles pour être analysées. Ces
données ont ainsi beaucoup de valeur.
28
L’objectif est donc de valoriser les données dont nous disposons déjà, ou qu’elles vont
collecter. Puis, de prendre en main les outils spécifiques au Big Data, comme : Hadoop,
Visualisation graphique.
Enfin, Le Big Data est aussi un bon outil de diminution des risques. Le but est donc
aussi, d’offrir une sécurité optimale pour nos données, une meilleure détection des fraudes
grâce à un outil d’analyse en temps réel, comprenant une alerte et la possibilité de stopper
une opération douteuse. Idem dans une optique de sécurisation du réseau de l’entreprise et
des risques de piratage de ses bases de données avec un contrôle en temps réel des données
de connexion.
Cette étude a pour but de répondre au besoin technologique de big data ; collecter,
stocker, analyser, ainsi que visualiser les données. L’ensemble de ces quatre points clés
donne la notion de Big data
Vue le développement massive des données à produire chaque jour dans les établissements
administratifs (les mairies et arrondissement), le stockage et l’exploitation des documents
d’acte de naissance reste aujourd’hui un problème majeur. Et cela est aujourd’hui un
grand défi à réaliser.
29
Application
Requête
Traitement
Stockage
Explication :
Tout d’abord, pour utiliser le système, nous avons besoin des données. Ces données ce
sont les informations de l’individu où nous allons récupérer ou saisir dans l’application.
Ce dernier se communique avec la base de données à l’aide des requêtes pour répondre aux
besoins de l’utilisateur. Et les données ici viennent partout dans chaque coin ou endroit
dont le système a été installé. Le rôle de notre application ici se sera donc, l’interférence
entre l’utilisateur et la base de données.
Comme nous pouvons le voir dans la figure, l’ensemble du système se divise en deux
parties ; la partie application, qui regroupe l’application, la requête, et le serveur, puis la
partie machine serveur qui est composé de traitement, système de fichier (HDFS), et le
stockage.
30
La partie traitement, regroupe et reçoive les requêtes venant de notre application. Elle a
donc pour but de gérer tous les interrogations des utilisateurs via l’application, puis de
donner le résultat approprié.
Concernant le stockage, celui-ci c’est le disk dur, l’endroit où les données sont stockées.
31
2. SECTION : Information et système
d’information
32
2.1 Introduction
L'apparition des moyens informatiques permet l'automatisation de la gestion de
l'information et a accéléré la réflexion sur la structure du "système nerveux" de
l'organisations qui constituent les circuits d'information. L'arrivée des ordinateurs a
facilité le stockage et la manipulation de grandes quantités d'informations.
2.2 Généralité
2.2.1 Définition
33
de programmation, les logiciels, les équipements sont très utilisés dans les systèmes
d’information.
De ce fait la distinction n’est pas toujours facile à effectuer car elle dépend de contexte :
exemple, le montant hors taxe d’une facture et une données pour le comptable,
c’est peut être une information pour le responsable commercial.
34
enfin, les systèmes de gestion, couvrant toutes les activités de gestion, production,
logistique, finance et ressource humaines.
.
Pour des raisons techniques qui existent toujours en partie aujourd’hui, les systèmes
d’information de gestion ont été historiquement structurés en deux sous-systèmes :
L’un dit opérationnel, qui prend en charge la réalisation des opérations au jour le
jour
Et l’autre dit décisionnel, qui fournit des informations pour définir la stratégie,
piloter les opérations et analyser les résultats
35
performance de l’entreprise, utilisant des outils de type tableau de bord prospectif initié par
« Kaplan et Norton » en 1992.
Selon Michel Bruley, « Un système décisionnel va en particulier aider au pilotage des
plans d’actions (prévision, planification, suivi), à l’apprentissage (acquisition de savoir-
faire, de connaissances, de compétences) et à la réalisation d’innovations incrémentales
(adaptation du modèle d’affaires : produits/services, organisation). Les systèmes
décisionnels traditionnels permettent de faire l’analyse des activités déjà réalisées et d’en
tirer des enseignements pour les activités futures, pour cela ils utilisent des données plus ou
moins récentes (au mieux mises à jour quotidiennement). Les systèmes décisionnels plus
avancés gèrent des données plus fraîches (certaines sont mises à jour en quasi temps réel),
automatisent des décisions et supportent en temps réel des opérations (centre d’appels, web
par exemple)».
Dans ce contexte émergent de nouveaux métiers liés au Big data : consultants spécialisés
dans les technologies Hadoop ou les bases No-SQL, ou data scientiste, sachant combiner
une approche informatique, mathématique et statistique, marketing et sémantique
36
2.2.5 L’organisation du Système d’information
. De manière général l’organisation du SI se fait soit par :
- Et le traitement différé correspond à une exploitation des données par lots, après qu'elles
aient été regroupées, parfois par une saisie à la source étalée dans le temps.
- Premièrement, l'architecture est centralisée quand les données et les traitements sont
concentrés sur un seul ordinateur (c'est par exemple le cas des gros ordinateurs ou «
mainframes » associés à un réseau de terminaux passifs) ;
L'informatique en nuage
L’informatique en nuage c’est la possibilité de déporter les traitements sur des serveurs
distants via internet, plutôt que sur des serveurs locaux. Cela a donné naissance, au
concept de cloud computing. Voici un tableau montrant les services rendu par ce nuage :
37
IaaS ou Infrastructure as a Service Service consistant à offrir un accès à un
parc informatique virtualisé sur lequel le
consommateur peut installer un système
d’exploitation et des applications. Ainsi,
l’entreprise n’achète pas de matériel
informatique. Ce service s’apparente aux
services d’hébergement classiques des
centres de traitement de données.
PaaS ou Platform as a Service Avec ce service, le système d’exploitation et
les outils d’infrastructure sont sous la
responsabilité du fournisseur.
L’entreprise conserve le contrôle des
applications et peut ajouter
ses propres outils.
SaaS ou Software as a Service Dans ce type de service, des applications
sont mises à la disposition des entreprises.
Les applications sont accessibles à l’aide
d’un navigateur web, et le client n’a pas à se
soucier d’effectuer des mises à jour,
d’ajouter des patches de sécurité ni
d’assurer la disponibilité du service.
Tableau 1 : Service de l’informatique en nuage
Le cloud computing est principalement utilisé par les grandes entreprises et les
administrations, il se répand également dans les PME et PMI du fait de la multiplication
des solutions de stockage en ligne facilitée par le développement de la fibre optique et de la
4G.
Le cloud privé, qui est dédié à une seule organisation. Un Cloud privé peut être
physiquement situé sur le centre de données sur site de l’entreprise. Certaines entreprises
38
paient également des fournisseurs de services tiers pour héberger leur Cloud privé. Un
Cloud privé est un Cloud dans lequel les services et l’infrastructure sont gérés sur un
réseau privé.
Le cloud public qui utilise des services offerts par des prestataires. Et
l’hébergement des applications sur la plateforme nécessite une connexion Internet.
le cloud interne, qui est une transformation de l’infrastructure interne d’une grande
entreprise avec des technologies de virtualisation et d’automatisation afin de délivrer, plus
simplement et plus rapidement, des ressources et services à la demande.
Enfin, Le cloud Hybrid, est une solution mélangeant public et private cloud, liés
par une technologie permettant de partager des données et des applications entre eux. En
permettant aux données et aux applications de se déplacer entre des Clouds privés et
publics, le Cloud hybride offre aux entreprises une plus grande flexibilité et davantage
d’options de déploiement.
La sous-traitance
La sous-traitance consiste à confier certaines activités à une organisation extérieure.
L'externalisation est une forme de sous-traitance durable par laquelle une activité est
totalement déléguée à un partenaire. Elle présente des avantages comme le recentrage sur
des activités prioritaires, l'optimisation des charges de structure, le fait de profiter
de l'expertise d'une société spécialisée, la mise en évidence des coûts mais elle
provoque une forte dépendance et n'est pas toujours réversible. La grande technicité des
activités informatiques et leur éloignement du métier de base de la plupart des
organisations font qu'elles sont couramment sous-traitées ou externalisées :
- l'hébergement est le fait de localiser les données et les traitements chez un prestataire
(ASP, application service provider) et d'y accéder via internet. La tierce maintenance
39
est la prise en charge de la maintenance d'un matériel ou d'un logiciel par un
prestataire distinct de son fournisseur ou de son réalisateur.
40
2.4 De SQL Classique vers NoSQL
2.4.1 SGBDR
Le SGBD peut se décomposer selon la figure ci-dessous :
Gestion des
fichiers
SGBD interne
Explication :
Les SGBDR les plus fameux qui ont dominé depuis les années 80 sont Oracle, MySQL et
SQL Server.
« Atomicity » (Atomicité) :
41
opérations précédentes doivent être complètement annulées, peu importe le nombre
d’opérations déjà réussies. En résumé, une transaction doit s’effectuer complètement ou
pas du tout. Voici un exemple concret : une transaction qui comporte 3000 lignes qui
doivent être modifiées ; si la modification d’une seule des lignes échoue, alors la
transaction entière est annulée. L’annulation de la transaction est toute à fait normale,
car chaque ligne ayant été modifiée peut dépendre du contexte de modification d’une
autre, et toute rupture de ce contexte pourrait engendrer une incohérence des
données de la base.
« Consistancy » (Cohérence) :
Avant et après l’exécution d’une transaction, les données d’une base doivent toujours
être dans un état cohérent. Si le contenu final d’une base de données contient des
incohérences, cela entraînera l’échec et l’annulation de toutes les opérations de la
dernière transaction. Le système revient au dernier état cohérent. La cohérence est
établie par les règles fonctionnelles.
« Isolation » (Isolation) :
« Durability » (Durabilité) :
Toutes les transactions sont lancées de manière définitive. Une base de données ne
doit pas afficher le succès d’une transaction pour ensuite remettre les données modifiées
dans leur état initial. Pour ce faire, toute transaction est sauvegardée dans un fichier
journal afin que, dans le cas où un problème survient empêchant sa validation
complète, elle puisse être correctement terminée lors de la disponibilité du système.
42
2.4.2 La limite de SGBDR
Dans cette section, il s’agit de présenter les limites pratique et théorique liée l’usage de
base de données relationnelle face aux nouveaux besoins des systèmes d’information. Ce
modèle bien que très puissants, il présente des limites que certains site web et services ont
atteintes depuis longtemps. Par conséquent, une seule machine ne peut pas gérer la base de
données, de plus pour de raison de fiabilité, ces bases de données sont dupliquées pour que
le service ne soit pas interrompu en cas de panne. Dû aux propriétés fondamentales sur
lesquelles une base de données relationnelle repose, cette approche connait quelques
limites à savoir :
43
2.4.2.4 Partitionnement de données
L’un des problèmes de la normalisation dans un SGBDR concerne la distribution des
données et du traitement. S’il y a de données stockées ayant un rapport entre elles, comme
des clients, des commandes, des factures, des lignes de facture, dans des tables différentes;
des problèmes surgiront en cas de partitionnement de ces données. Pour y remédier, il faut
alors s’assurer que les données en rapport les unes avec les autres se trouvent sur le même
serveur. Les technologies de bases de données relationnelles, qu’on pourrait nommer
par « technologies SQL », règnent en maîtres pour le stockage et la manipulation de
données depuis plusieurs années. Cette situation de leadership technologique peut
facilement être justifiée en raison des différents avantages proposés par ces modèles.
Cependant l’accroissement exponentiel des données, la prise en compte des données
faiblement structurées et les avancées technologiques sont autant d’arguments qui
poussent à la migration des SGBD relationnels vers une nouvelle façon de stockage et de
Les SGBDRs ont été conçus pour un contexte d’une seule unité qui maintient l’intégrité
des données et renforce les règles du schéma pour la garantir. Cependant, les bases de
données NoSQL ne sont pas en train de supplanter les bases relationnelles mais viennent
les compléter, dans un contexte de croissance exponentielle de données.
44
les Anglo-Saxons ont appelé le Big Data. La gestion et le traitement de ces volumes de
données ont considérés comme un nouveau défi de l’informatique, et les moteurs de bases
de données relationnelles traditionnels, hautement transactionnels semblent totalement
dépassés [9].
Le terme NoSQL désigne l’ensemble des bases de données qui s’opposent à la notion
relationnelle des SGBDR. La définition, “pas seulement SQL”, apporte un début de
réponse à la question “Est ce que le NoSQL va tuer les bases relationnelles?”. En effet,
NoSQL ne vient pas remplacer les BD relationnelles mais proposer une alternative ou
compléter les fonctionnalités des SGBDR pour donner des solutions plus intéressantes
dans certains contextes. L’idée du concept est simple : proposer des alternatives aux
bases de données relationnelles pour coller aux nouvelles tendances et architectures du
moment, notamment le Cloud Computing [10].
Cette approche de stockage permet d’avoir des bases de données performantes et une
disponibilité que les SGBD classiques ne peuvent égaler même en multipliant les serveurs
miroirs. Un SGBDR pour répondre aux exigences de performance face aux gros volumes
de données, doit se retourner vers du matériel de plus en plus rapide et à l'ajout de
45
mémoire. Le NoSQL, pour sa part, pour gérer la « montée en charge » se réfère à la
répartition de la charge sur les systèmes de Cloud Computing. Il s'agit là de
composant de NoSQL qui fait d'elle une solution peu coûteuse pour les grands ensembles
de données
De plus les champs de valeur NULL n’existent pas car la déclaration d’une colonne ne
concerne pas toutes les lignes d’une table comme c’est le cas dans le monde du relationnel.
Avec le NoSQL, chaque ligne ou entrée d’une table a ses propres colonnes. Dans une
base de données NoSQL, il n'y a pas de schéma fixe. Toutes les données susceptibles
d’être lues ou modifiées au même moment sont en général regroupées au sein d’une
même famille de colonnes. Une des conséquences immédiate de cette évolutivité des
schémas de données est la gestion des données faiblement structurées.
A part être une nouvelle technologie, le NoSQL permet de stocker les informations d’une
manière qui colle mieux à leur représentation. Exemple :
Les bases de données orientées document s'adaptent au stockage des données non
planes (type profil utilisateur)
Les bases de données orientées colonne s'adaptent très bien au stockage de listes
(messages, posts, commentaires);
Les bases de données orientées graphe permettent de mieux gérer des relations
multiples entre les objets (comme pour les relations dans les réseaux sociaux).
46
L’engouement pour les bases NoSQL est la conclusion logique de l’ère Web 2.0.
Les données stockées sont aujourd’hui beaucoup plus importantes qu’elles n’ont pu l’être
avant, et les besoins ont changé. Aujourd’hui nous avons besoin de pouvoir stocker ou lire
très rapidement des millions de données (prenons l’exemple de Facebook) mais aussi,
avec le Cloud, d’avoir des systèmes « scalable » ou élastiques.
Au contraire des SGBDR, elles sérialisent les valeurs d’une colonne ensemble, puis les
valeurs de la colonne suivante, une BD relationnelle présente les données dans une table
bidimensionnelle composée de lignes et colonnes, mais les manipule ligne par ligne, alors
que le NoSQL orienté colonne stocke les données en tant que colonnes.
Il est conseillé d’entamer la modélisation en NoSQL par l’orientée colonne, car il permet
une compréhension rapide du modèle et donne un avant-goût à ce nouveau domaine. Si le
travail nécessite des valeurs agrégées, nous n’avons pas le choix à l’utiliser.
Dans une BDR, on stocke les données des fournisseurs comme suit :
Alors que dans une BD NoSQL orientée colonne, elles sont stockées comme suit:
47
F
igure 8 : Table d’une BD NoSQL orientée colonne
Si de nouvelles valeurs sont à appliquer sur l’ensemble des lignes ou sur un sous
ensemble de colonne, ce modèle permet un accès partiel aux données sans effet sur les
données non concernées, ce qui accélère l’exécution.
Optimisation de l’espace de stockage grâce aux types uniformes des colonnes, qui
sont dans la plus part du temps des chaines de caractères de mêmes tailles. Tel
caractéristique (exemple : Chine comme pays pour 1 milliard d’utilisateurs) optimise la
compression des données.
Les enregistrements (les lignes du SGBDR) sont représentés par des documents ; ils sont
semi-structurés par rapport à la représentation rigide du relationnel et permettent
l’insertion, l’interrogation et la manipulation des données. Deux enregistrement peuvent
avoir différentes structures ou ensemble de colonnes. Les enregistrements peuvent ne pas
respecter un schéma spécifique ou une définition de table, ce que signifie qu’il n y a pas de
48
validation de documents par rapport à un schéma comme c’est le cas pour les SGBDR. En
bref, une BD orientée document fournit une flexibilité dynamique ou un schéma
modifiable ou complet des documents sans schéma. Cet avantage a permis de rendre ce
modèle plus répondu et plus utilisé parmi les autres modèles de BDs NoSQL. Avec JSON,
qui est l’un des langages qui adopte l’orienté-document, un document peut s’écrire comme
suit :
"SupplierID" : "1",
Si nous devons travailler avec des agrégations à travers plusieurs entités, ce modèle nous
permet un contrôle efficace sur la manière d’interroger les données. Exemple, travailler
avec JSON à travers des données fusionnées ou avec XQuery en utilisant XML et obtenir
des vues personnalisées. Les BDs les plus connues de ce modèle sont : MongoDB,
CouchDB, Jackrabbit, Lotus Notes, Terrastore, Redis et BaseX.
Avantage:
Le contenu est flexible sans schéma
Une recherche à travers multiple entités est négligeable par rapport à une même
recherche dans un SGBDR classique.
49
L’accès à une valeur est direct et efficace, car une paire clé-valeur est unique ; la
complexité de son algorithme de recherche est de 0 [14]. Les clés peuvent être indexées
pour plus de performance. La différence par rapport à une BD orientée document est
l’absence de requêtes par rapport aux valeurs. L’interrogation des données se fait
exclusivement par rapport aux clés. Les pairs peuvent être imaginés comme une table à
deux entrées :
La plupart des BD orientées clé-valeur sont inspirées de Dynamo d’Amazon, qui garantit
une évolutivité et une disponibilité exceptionnelles. Voldemort et Riak sont
l’implémentation des bases de Dynamo.
Avantage:
Le type de données des valeurs n’est pas spécifié, on peut stocker n’importe quel
type de données. Ce modèle n’est pas conçu pour les applications nécessitant l’indexation
des valeurs.
50
Les BDs orientées graphe
Ce modèle est basé sur la théorie des graphes, c’est-à-dire les nœuds, les relations et les
propriétés. Il est relativement nouveau sur le marché des NoSQL. Sa particularité est la
facilité de définir les relations directement au niveau de la BD au contraire des autres
modèles ou les relations sont visibles au niveau de l’application.
Il est très utile pour toutes les applications qui ont des relations complexes entre leurs
objets comme les réseaux sociaux.
Le W3C utilise ce modèle dans son langage de représentation du web sémantique, le RDF
[16].
Avantage:
Ce modèle est idéal lorsque nous avons plusieurs objets liés les uns aux autres de
façon complexe, et ses objets ont des propriétés (frère de, sœur de, père de). Il permet par
une requête simple d’avoir les voisins d’un nœud, ou d’avoir tout un chemin par des
requêtes plus ou moins complexes.
Il ne s’arrête pas sur le point de nous donner les relations entre les nœuds, mais
aussi des rapports détaillés sur la nature de ses relations.
Comme toute modélisation basée sur une représentation graphique, l’avantage
majeur est la compréhension facile par les humains par rapport à une modélisation
51
textuelle, c’est une représentation du monde réel, des noms, des villes, workstations
(postes-de-travail) d’un réseau informatique; l’insertion et la suppression des relations
entre nœuds se fait par un simple clic de souris.
2.6 Conclusion
Le développement du système d’information a conduit à la développement de diverse
technologie, comme le SGBD relationnel et NoSQL par exemple ; Concernant le concept
NoSQL, il représente un ensemble de technologies proposant de nouvelles architectures
pour les bases de données : c’est une nouvelle approche de stockage et de
manipulation de données. Ce nouveau types de bases de données ont été stipulés
pour s’aligner à l’évolution technologique actuelle liée surtout aux concepts de Big Data
et Cloud Computing. Ce qu’il faut retenir, c’est que les bases de données de type NoSQL
ne s’opposent pas aux bases de données de type relationnel ou autre, elles viennent plutôt
combler les lacunes pour les cas qui favorisent la performance et la tolérance aux pannes.
52
3.1 Introduction
Au début des années 1990, face à l’évolution du nombre de mobiles connectés à
Internet, les données évoluèrent d’une manière incroyable. En 2005, Roger Moulagas de
O’Reilly Media formula le terme de “Big Data”, un an après que la société inventa le
“Web 2.0”. Il utilisera ce terme pour faire référence à un nombre de données tellement
grand qu’il était impossible de gérer et de traiter avec les outils de Business Intelligence
actuels. Depuis ces 5 dernières années, on voit apparaître de plus en plus de start-
ups s’intéresser aux projets Big Data. Elles essaient d’aider les sociétés à comprendre,
gérer et traiter ces masses d’informations. Aussi bien que les entreprises
commencent peu à peu à adopter le Big Data, autant qu’Internet en 1993, la
révolution Big Data est encore devant nous et de grands changements apparaîtront dans les
prochaines années.
53
3.2 Définition
Littéralement, le terme “Big Data” signifie “gros volume de données”. La définition
initiale a été définie par le cabinet McKinsey and Company en 2011 avec la célèbre règle
des 3 “V” :
Variété : les sources de ces données sont diverses. Elles ne proviennent pas
seulement de sources internes mais également de l’environnement qui l’entoure et
notamment de la montée croissante des objets connectés : du smartphone à la
tablette, de la montre à la voiture connectée, en passant par la Smart TV. Ces objets
peuvent tracer ses utilisateurs, leur envoyer des informations précises et
personnalisées, même quand ceux-ci ne sont pas en fonction. Ces données sont
émises par autant de langages, codes et formats différents : il y a les données
structurées (fichiers .csv, géolocalisation, HTML5…), semi-structurées (documents
EDI, flux RSS, fichiers XML…) et non-structurées (contenus dynamiques, emails,
photos, SMS, médias sociaux, blogs, reconnaissance vocal).
Le principe de sources multiples est un principe capital dans le process “Big Data”.
Il est impensable de bâtir un projet décisionnel en se basant sur une source unique
de données et prétendre que celle-ci détient la vérité. Nous devons matcher plusieurs
données provenant de différentes sources pour pouvoir en déduire quoi que ce soit. Ces
technologies étaient censées répondre à l’explosion des données dans le paysage
54
numérique (le “data déluge”). Puis ces qualifications ont évolué et aux 3 “V” du Big Data
s’ajoute le 4ème “V”, la Valeur que représentent les données, autant pour l’entreprise
que pour l’utilisateur.
Les entreprises sont conscientes de la valeur que peuvent représenter ces données et
n’hésitent pas à créer une relation “donnant-donnant” avec ses utilisateurs. Elles leur
proposent des remises, des services supplémentaires, personnalisés, des cadeaux, sans
contrepartie financière directe, en échange de la transmission de leurs données, leur
avis, centres d’intérêts.
A la valeur s’ajoute une notion plus qualitative véhiculée par le 5ème “V”, la Véracité des
données (disposer de données fiables pour leur traitement).
Ces cinq éléments ont servi pendant longtemps de boîte à outils pour comprendre les
fondements du Big Data, à savoir l’apparition de nouvelles technologies innovantes
capables de traiter dans un temps limité de grands volumes de données afin de valoriser
l’information non exploitée de l’entreprise.
Les moyens actuels pour gérer et traiter les données ne peuvent pas supporter une si
grande masse de volume. Les outils actuels de datamining peuvent analyser un grand
nombre de données mais seulement sur un échantillon dit représentatif; le Big Data permet
55
d’analyser l’ensemble des données. Jusqu’alors, la tendance était de structurer les
données dans les systèmes d’informations pour en favoriser le stockage et l’analyse.
Des outils permettent de structurer et de normaliser les données en amont de leur
intégration dans le système d’informations. Cependant, de nouveaux types de données
ont fait leur apparition, et prendrons une place importante dans les stratégies des
entreprises et prises de décisions.
56
Figure 11 : Processus de traitement des applications Big Data
Explication :
57
correspond à trouver la représentation la plus adéquate pour les stocker et à intégrer ces
ensembles entre eux de façon à conduire une analyse globale.
Analyse/Modélisation : il s'agit de l'analyse des données afin de déceler des
modèles intrinsèques, d'extraire des relations et des connaissances, mais aussi de corriger
les erreurs et d'éliminer les ambigüités.
Interprétation : les décideurs doivent interpréter les résultats d'une analyse Big
Data. Cette interprétation est obligatoire, car les données et par conséquent l'analyse elle-
même ne sont pas exemptes d'erreurs. De plus, la plupart des modèles et théorèmes
appliqués se basent sur des hypothèses qui ne sont pas toujours vérifiables. Les décideurs
devront valider les résultats en retraçant les opérations effectuées. Des outils doivent être
mis en place afin de faciliter ce processus. Ils doivent offrir des visualisations interactives
des données, permettre de retracer leur provenance et d'appliquer des modifications dessus
puis voir l'impact sur les résultats en temps réel.
Afin de concrétiser les applications Big Data, les systèmes conçus interviennent dans les
différentes phases de ce processus. Dans la section suivante, nous présenterons ces
systèmes ainsi que leurs catégorisation et propriétés.
58
3.2.1 Applications transactionnelles :
Les données: Elles ont une nature purement relationnelle. La performance de l’application
est liée à la cohérence et l’intégrité des données. La concurrence est faible due à
l’utilisation d’une seule BD et une seule instance à la fois.
La structure: bien définie à priori ; les types, les propriétés et les contraintes, les relations,
les indexes … Le schéma n’est pas censé trop évoluer ou changer à l’avenir.
Accès aux données : cohérent, chaque lecture donne absolument la dernière mise à jour.
L’accès aux données dans des tables croisées est fréquent.
NoSQL: Pour ce type d’applications, l’orientée colonne peut être utile dans la définition
d’une structure évolutive dans le temps. L’orientée document lui aussi peut être utile dans
l’implémentation des jointures ou la création des vues.
Décision: il est clair que pour telles applications, le choix de SGBDR est plus logique.
La structure : bien définie à priori ; les types, les propriétés et les contraintes, les
relations, les indexes … le schéma n’est pas censé trop évoluer ou changer à l’avenir.
Accès aux données: L’Accès aux données est partiel, disant vertical d’une vision
d’ensembles. Les données doivent être cohérentes tandis que quelque latence peut être
permise et l’accès aux données dans des tables croisées est fréquent.
NoSQL : L’orientée colonne peut aider à définir une structure rigoureuse, aussi l’orientée
document peut être utilisée ; les deux peuvent fournir de la vitesse et de l’évolutivité en
traitant des données partielles. L’orientée document peut servir dans les jointures et la
création des vues.
59
Par contre, à part l’orientée graphe, la création des relations peut être un casse-tête ; elles
peuvent être crées et maintenues au niveau de l’application mais les données ne seront pas
cohérentes.
Décision: Le cahier des charges peut être satisfait par un SGBDR ou par une BD NoSQL,
mais les facteurs de la vitesse et de l’évolutivité donnent de grands avantages au NoSQL
où les données peuvent être partitionnées horizontalement et verticalement.
Structure: Le schéma évolutif est une intégration avec d’autres applications est toujours
envisagée. En aucun cas, les données existantes ne doivent être affectées. Les relations
peuvent être optionnelles dans la couche BD ou dans la couche application.
Accès aux données: L’accès aux données est généralement partiel, les opérations CRUD
doivent être faites dans de brefs délais et l’incohérence des données est tolérée pour une
courte durée.
NoSQL: L’orientée document est un choix idéal pour un schéma flexible etévolutif, il peut
fournir l’évolutivité voulue parce qu’il n’implémente pas les transactions ACID.
60
Applications sociales (possibilité d’intégration) l’orientée document avec l’orientée
colonne
Les Relations : L’orientée graphe
3.1 Conclusion
61
62
4. SECTION :
63
BIBLIOGRAPHIE
[2] ANGOT Huges, système d’information de l’entreprise analyse théorique des flux
d’information et cas pratique, 3ème Edition entreprise de Boeck université, 1998.
[4] Jaques Sornet, Oona Hengoat, Nathalie Le Gallo, DCG 8 Système d’information et
gestion, Copyright 2012.
[7] C. Ritchie, « Database Principles and Design », Cengage Learning EMEA – 2008.
Management d’un projet Système d’information, 6ème édition, Chantal Morley Construire le
système d’information de l’entreprise, Claude Grenier, Camille Moine, 2003
64
[14] Comparative analysis of NoSQL (MongoDB) with MySQL Database. Lokesh
Kumar, Dr. Shalini Rajawat, Krati Joshi.711, Rajasthan, India : International Journal of
Modern Trends in Engineering and Research, 2015, Vol. 1. 2393-8161.
[17] Tudoran, R. (2014). High-Performance Big Data Management Across Cloud Data
Centers. PhD thesis
[18] Sakr, S. (2016). Big Data 2.0 Processing Systems. SpringerBriefs in Computer
Science. Springer International Publishing, Cham.
Article
Découvrir le monde du Big Data : définition, applications et outils
Les metiers des sytèmes d’information, Apec (Association pour l’emploi de cadres), Mehdi
Acheli, Selma Khouri , 20 juillet 2017
Memoire
[5] F. Exertier, « Extension orientée objet d’un SGBD relationnel », Mémoire du
doctorat spécialité informatique, Université Joseph-Fourier - Grenoble 1, 1991.
65