L’ÈRE DU BIG DATA ET CLOUD COMPUTING

L’ère du Big Data et Cloud Computing

Les dernières études montrent que la croissance de la volumétrie des données stockées informatiquement est environ 30% par an (Giga, Tera, Peta, Exa, Zetta…) [2, 3], générées par les multiples sources d’informations. Selon l’étude de l’université de Berkley en 2003, 5 exaoctets (5×1018 oct) de données ont été créés au cours de l’année 2002 parmi lesquelles 92% ont été stockées informatiquement. Dans son rapport d’expertise établi en 2010 (Active Archiving Survey), IDC estime que le volume global des données numériques devrait atteindre 35 zettaoctets (35×1021 oct) en 2020 [4]. En 2010, le PDG de Google déclare que : « Tous les 2 jours nous nous créons autant de données que ce qui a été créé jusqu’au 2003 », c’est des chiffres qui s’appliquent aux données produites par le grand public. Pour avoir une idée de l’accroissement exponentiel de la masse de données, selon d’autres études, on considère que 90 % des informations ont été produites durant les années où l’usage d’internet et des réseaux sociaux a connu une forte croissance.

L’ensemble de toutes les données engendrées depuis le début de l’informatique jusqu’à la fin de l’année 2008, conviendrait maintenant aux volumes de ceux qui sont générés chaque minute. Sur le plan de connectivité, Intel affirme que le nombre d’objets connectés en 2013 était de l’ordre de 5 milliards, ce chiffre va se multiplier par 10 d’ici 2020 pour atteindre 50 milliards d’objets connectés. En 2013, le nombre d’utilisateurs connectés à internet depuis un smartphone a dépassé celui des utilisateurs connectés via un PC. Sur le plan d’utilisation d’internet, les derniers chiffres en 2017 affirment que le nombre d’internautes est d’environ 3.81 Milliards, soit 51% de la population, le nombre d’inscrits sur les réseaux sociaux est 2.91 milliards, soit 39% de la population. Chaque minute sur internet, il y a 216 millions de photos aimées sur Facebook, 7 millions de Snaps envoyés sur Snapchat, 2.4 millions de photos aimées sur Instagram, 400 heures de vidéos téléchargées sur YouTube, 70 millions de mots traduits sur Google Translate, 110 000 appels sur Skype, 830 000 fichiers téléchargés sur Dropbox. En Juin 2012, Amazon a évalué la croissance du nombre de fichiers enregistrés sur son site de stockage Cloud Amazon S3 de 1000 milliards d’entités de données par rapport à 10 milliards hébergées en Octobre 2007. On peut illustrer ce phénomène de « déluge de données » par un exemple du réseau social Twitter : à l’occasion d’un événement sportif (classico espagnol), +7000 messages ont été générés par seconde et même si la taille de chaque message est faible, leur vélocité se doit d’être importante. A raison de 140 car/Tweet, la fréquence des échanges de Twitter a produit plus de 8 To/jour [4].

L’amplitude de cette volumétrie recouvre 2 modes d’usage opposés : d’un côté le nombre d’accès aux données ne fait qu’augmenter ; d’un autre côté, l’habitude humaine est de conserver les données sans savoir si elles seront relues ou non. La gestion des données évolutives et distribuées qui a été la vision de la communauté des chercheurs dans le domaine des bases de données depuis plus de trois décennies, s’est accéléré remarquablement ces dernières années pour pallier aux rudes contraintes liées aux serveurs, aux réseaux et aux applications évoluant dans des environnements distribués imposés par les nouvelles tendances informatiques. Les dernières étapes de l’évolution informatique ont émergé de nouvelles technologies : Cloud et Big Data qui bouleversent l’industrie avec l’arrivée des acteurs issus des sociétés de l’internet. Le changement d’échelle en volumétrie, la répartition géographique des données sont déjà des problèmes d’actualité, à lesquelles s’ajoute une autre difficulté liée à la diversité des types de ces masses de données crées puis accumulées, sans organisation ni de structure.

La part importante et croissante des données non structurées parmi l’ensemble des données numériques, est un des facteurs qui a conduit au nouveau concept Big Data ; les dernières études montrent que le pourcentage des données non structurées est de 90% [4]. Ainsi étendre la gestion et les traitements aux données multi structurées, à savoir : données structurées, semi-structurées ou non structurées, est considéré comme problématique fondamentale autant pour les Big Data que pour les Clouds. Pour coller à ces nouvelles tendances et remédier aux rudes contraintes imposées par cette montée en charge, de nouvelles approches de conception, gestion, organisation et stockage de ces masses d’information sont été conçues, développées et déployées ces dernières années. Ces nouvelles exigences ont été l’objectif fondateur des Clouds de stockage « Storage-as-a-Service » qui offrent le stockage en tant que service [5, 6, 7]. Sur le plan organisationnel et gestion de données, les solutions NoSQL adoptées pour les Big Data, se présentent comme des architectures extensibles et flexibles pour la prise en charge de ces masses hétérogènes de données. Ces nouveaux systèmes se considèrent comme des nouveaux modèles de stockage et d’accès aux données en remplacement des SGBD relationnels qui étaient considérés presque parfaits jusqu’à ces dernières années

Evolution des systèmes de gestion de données

Chaque innovation dans le domaine de la gestion des données se considère comme un nouveau départ isolé de ce qui a été fait auparavant. Cependant, que ce soit révolutionnaire ou graduelle, la plupart des nouvelles étapes et vagues de développement dans le domaine de gestion des données s’appuient sur leurs prédécesseurs alors on ne renverse pas les outils, la technologie et les pratiques utilisés pour traiter de nouveaux et différents problèmes. L’évolution des systèmes de gestion des données doit inclure les évolutions technologiques du matériel, le stockage, le réseautage et les nouveaux modèles informatiques tels que la virtualisation et le Cloud Computing. L’association des technologies émergentes et la réduction des différents coûts du stockage aux traitements informatiques, ont bouleversé les réflexions et les manières de gestion et exploitation des données, et ont permis de nouvelles possibilités.

Chaque naissance d’un nouveau modèle de gestion des données est justifiée par le besoin de résoudre un type spécifique de problème de gestion des données. Chacune de ces générations ou phases a évolué en raison de la cause et l’effet. Lorsqu’une nouvelle solution technologique est déployée sur le marché, on est amené à découvrir de nouvelles approches. Lorsque les bases de données relationnelles ont envahi le marché, on était obligé de concevoir un ensemble d’outils pour permettre aux gestionnaires d’étudier les associations et les relations entre les éléments de données. Lorsque les entreprises ont commencé à stocker des données non structurées, on a pu réaliser que les différents serveurs ont été submergés par les immenses quantités de données hébergées, alors pour tirer profit de ces données, il fallait de nouveaux outils et approches novatrices et la nécessité de développement de nouvelles fonctionnalités et outils d’analyse pour obtenir des informations qui seraient utiles aux entreprises. Les différentes générations des technologies de gestion des données au cours des dernières décennies ont avancé un nouvel épisode intitulé : l’ère du Big Data. Cette dernière tendance n’est pas une technologie indépendante ; plutôt, c’est une accumulation des 50 dernières années d’évolution technologique. Avant de présenter les concepts fondamentaux du Big Data, on va faire un aperçu sur l’évolution des modèles de gestion des données [8].

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela rapport gratuit propose le téléchargement des modèles gratuits de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

INTRODUCTION GENERALE
CONTEXTE
PROBLEMATIQUE 1
CONTRIBUTION 1
PROBLEMATIQUE 2
CONTRIBUTION 2
ORGANISATION DE LA THESE
PARTIE A : L’ÈRE DU BIG DATA ET CLOUD COMPUTING
INTRODUCTION
CHAP I : BIG DATA ET CLOUD COMPUTING
I.1 BIG DATA
I.1.1 Evolution des systèmes de gestion de données
I.1.1.1 Vague 1 : Création de systèmes de gestion de données
I.1.1.2 Vague 2 : Web et gestion de contenu
I.1.1.3 Vague 3 : Gestion de Big Data
I.1.2 Définition
I.1.2.1 Volume
I.1.2.2 Vélocité
I.1.2.3 Variété
I.1.2.4 Valeur
I.1.2.5 Véracité
I.1.3 Architecture Big Data
I.1.3.1 Infrastructure physique redondante
I.1.3.2 Sécurité d’infrastructure
I.1.3.3 Avantages de l’architecture Big Data
I.1.4 Sources et types de données
I.1.4.1 Sources de données structurées
I.1.4.2 Sources de données non structurées
I.1.5 Processus de collecte et chargement de données
I.1.6 Principaux acteurs
I.1.7 Big Data et Informatique distribuée
I.1.8 Big Data et Data Warehouse
I.1.9 Stockage de données et virtualisation
I.2 CLOUD COMPUTING
I.2.1 Définition
I.2.2 Modèles de services
I.2.2.1 SaaS (Software as a Service)
I.2.2.2 PaaS (Plateforme as a Service)
I.2.2.3 IaaS (Infrastructure as a Service)
I.2.3 Modèles de déploiement
I.2.3.1 Cloud Public
I.2.3.2 Cloud Privé
I.2.3.3 Cloud Communautaire
I.2.3.4 Cloud Hybride
I.2.4 Secrets du succès du Cloud
I.2.5 Caractéristiques et avantages4
I.2.6 Inconvénients majeurs
I.2.7 Accord de niveau de service (SLA)
I.2.8 Solutions Cloud existantes
I.2.8.1 Solutions propriétaires
I.2.8.2 Solutions libres
I.2.9 Simulateurs Cloud
I.2.10 Le Cloud Computing dans le contexte du Big Data
I.2.11 Bases de données dans le Cloud Computing
I.2.11.1 Modes de déploiement des bases de données dans le Cloud
I.2.11.2 Caractéristiques communes aux bases de données en tant que service
I.2.11.3 Modèles de données utilisés
I.2.11.4 Avantages et inconvénients des bases de données dans le Cloud
CHAP II : LIMITES DES SYSTEMES RELATIONNELS ET MOUVANCES NOSQL ET NEWSQL
II.1 LES SYSTEMES RELATIONNELS ET LEUR LIMITES ATTEINTES
II.1.1 Propriétés ACID
II.1.1.1 Atomicity (Atomicité)
II.1.1.2 Cohérence (Consistency)
II.1.1.3 Isolation (Isolation)
II.1.1.4 Durabilité (Durability)
II.1.2 Contrainte de Cohérence dans un environnement distribué
II.1.3 Limites des systèmes relationnels dans le Cloud et extension aux clusters
II.1.3.1 Application des propriétés ACID en milieu distribué
II.1.3.2 Scalabilité limitée
II.1.3.3 Requête de jointure non optimale
II.1.3.4 Gestion des objets hétérogènes
II.1.3.5 Types de données limités
II.1.3.6 Langage de manipulation
II.1.3.7 Pauvreté sémantique
II.2 LE NOSQL
II.2.1 L’émergence du NoSQL
II.2.2 Définition et concepts de base
II.2.3 Intérêts
II.2.3.1 Scalabilité horizontale au lieu de scalabilité verticale ?
II.2.3.2 Gestion de gros volume de données
II.2.3.3 Performance en écriture
II.2.3.4 Types de données flexibles
II.2.3.5 Structure dynamique
II.2.3.6 Migration de données
II.2.3.7 Acidité relative
II.2.3.8 Economie
II.2.3.9 Simplicité de développement
II.2.4 Caractéristiques
II.2.5 Du SQL vers le NoSQL
II.2.6 Théorème CAP et ses critiques
II.2.7 Propriétés BASE
II.2.8 Différents modèles NoSQL
II.2.8.1Bases de données clé-valeur (Key-value store)
II.2.8.2 Bases de données orientées colonnes (Column family)
II.2.8.3 Bases de données orientées documents (Document store)
II.2.8.4 Bases de données orientées graphes (Graph store)
II.3 LA CONTRE-ATTAQUE DU NEWSQL
II.3.1 Définition
II.3.2 Architecture
II.3.3 Caractéristiques
II.3.4 Leaders de la technologie NewSQL
II.3.5 Avantages et inconvénients
CHAP III : SOLUTIONS NOSQL ETUDIEES
III.1 CLASSEMENT DE POPULARITE DES SYSTEMES NOSQL
III.2 MONGODB 3
III.2.1 Description
III.2.2 Modèle de données
III.2.3 Architecture
III.2.3.1 Single
III.2.3.2 Replication Master / Slave
III.2.3.3 Replica Set
III.2.3.4 Sharding
III.2.4 Manipulation des données
III.3 CASSANDRA
III.3.1 Description
III.3.2 Caractéristiques
III.3.2.1 Tolérance aux pannes
III.3.2.2 Décentralisé
III.3.2.3 Modèle de données riche
III.3.2.4 Elastique
III.3.2.5 Haute disponibilité
III.3.3 Architecture
III.3.4 Modèle de données
III.3.5 Partitionnement des données dans un cluster Cassandra
III.3.6 Réplication des données
III.3.7 Cohérence des données
III.4 REDIS
III.4.1 Description
III.4.2 Stockage en mémoire vive
III.4.3 Architecture
III.4.3.1 Maître / Esclave
III.4.3.2 Sentinel
III.4.3.3 Cluster
III.4.3.4 Réplication
III.5 HBASE
III.5.1 Description
III.5.2 Modèle de données
III.5.3 Architecture
III.6 COUCHBASE
III.6.1 Description
III.6.2 Architecture
III.6.3 Data Manager (Gestionnaire de données)
III.6.4 Data Cluster Management (Gestion du cluster)
III.6.5 Buckets (Seaux)
IV.6.6 Views (Les vues)
III.7 ORIENTDB
III.7.1 Description
III.7.2 Modèle orienté document
III.7.3 Modèle orienté graphe
III.7.4 Modèle orienté clé / valeur
CHAP IV : ETUDE COMPARATIVE
IV.1 BENCHMARK UTILISE ET CHARGES DE TRAVAIL
IV.2 RESULTATS EXPERIMENTAUX
IV.2.1 Chargement des données (LoadProcess)
IV.2.2 Workload A (50% Read – 50% Update)
IV.2.3 Workload B (95% Read, 5% Update)
IV.2.4 Workload C (100% Read
IV.2.5 Workload F (50% Read, 50% Read-Modify-Write)
IV.2.6 Workload G (5% Read, 95% Update)
IV.2.7 Workload H (100% Update)
IV.2.8 Workload D (5% Insert, 95% Read)
IV.2.9 Workload E (95% Scan, 5% Insert)
IV.2.10 Temps d’exécution global de l’ensemble des Workloads
IV.2.11 Evaluation globale pour les opérations de lecture et mise à jour
IV.3 SYNTHÈSE DES RÉSULTATS
CONCLUSION
PARTIE B : HADOOP, HDFS & MAPREDUCE
INTRODUCTION
CHAP I : SYSTEMES DE GESTION DE FICHIERS
I.1 SYSTEME DE FICHIERS LOCAL (SFL)
I.2 SYSTEMES DE FICHIERS DISTRIBUES (SFD)
I.3 SYSTEMES DE FICHIERS PARTAGES (SFP)
I.4 SYSTEMES DE FICHIERS PARALLELES (SFP)
CHAP II : CLOUDS DE STOCKAGE ET L’ECOSYSTEME HADOOP
II.1 CLOUDS DE STOCKAGE
II.1.1 Relation Client-Serveur : Concepts et objectifs différents
II.1.2 Mise en oeuvre des Clouds de stockage
II.1.3 Implantation des Clouds de stockage
II.1.3.1 Niveaux d’implantation
II.1.3.2 Architectures
II.2 HADOOP
II.2.1 Présentation générale
II.2.2 Hadoop et l’infrastructure de stockage de données
II.2.3 MapReduce
II.2.3.1 Présentation
II.2.3.2Principe
II.2.3.3Architecture fonctionnelle
II.2.3.4 Hadoop MapReduce 2.x: YARN
II.2.4 Hadoop Distributed File System
II.2.4.1 Caractéristiques
II.2.4.2 Architecture
II.2.4.3 MapReduce et HDFS
II.2.4.4 Lecture d’un fichier HDFS
II.2.4.5 Ecriture dans un fichier HDFS
II.2.4.6 HDFS et tolérance aux fautes
II.2.4.7 Service de métadonnées séparé
II.2.5 Ecosystème d’Hadoop
II.2.5.1 Outils de Requêtage et de scripting des données
II.2.5.2 Outil d’intégration SGBDRelationnel
II.2.5.3 Outils de gestion et de supervision du cluster Hadoop
II.2.5.4 Outil d’ordonnancement et de coordination
II.2.5.5 Outil de collecte et d’agrégation de fichiers logs
II.3 TRAITEMENT DES METADONNEES
II.3.1 Classification des métadonnées
II.3.1.1 Métadonnées propres aux données
II.3.1.2 Métadonnées propres au système
II.3.1.3 Métadonnées propres à l’application
II.3.1.4 Les informations sur le stockage
II.3.2 Séparation des voies de données et de métadonnées
II.3.3 Influence du traitement des métadonnées sur la performance
CHAP III : APPROCHE HYBRIDE
III.1 PARALLELISME MODERE DES METADONNEES
III.2 DESCRIPTION DE L’APPROCHE
III.2.1Métadonnées communes
III.2.2 Métadonnées spécifiques
III.2.3 Fonctions reconduites de l’aiguilleur des tâches
III.2.4 Nouvelles fonctions de l’aiguilleur des tâches
III.3 ALGORITHME : MODPARA
III.4 ARCHITECTURE
III.4.1 Architecture du modèle proposé
III.4.2 Architecture fonctionnelle
III.5 TRAVAUX CONNEXES
CONCLUSION
CONCLUSION GENERALE
PERSPECTIVES
ANNEXES : DEPLOIEMENT DE L’ENVIRONNEMENT SOFT
ANNEXE 1 : YCSB
ANNEXE 2 : MONGODB
ANNEXE 3 : COUCHBASE
ANNEXE 4 : CASSANDRA
ANNEXE 5 : HADOOP ET SES COMPOSANTS
ANNEXE 6 : REDIS
ANNEXE 7 : ORIENTDB
ANNEXE 8 : WORKLOAD A
ANNEXE 9 : WORKLOAD B
ANNEXE 10 : WORKLOAD C
ANNEXE 11 : WORKLOAD D
ANNEXE 12 : WORKLOAD E
ANNEXE 13 : WORKLOAD F
ANNEXE 14 : EXEMPLE D’UN PROGRAMME MAPREDUCE
TABLE DES FIGURES
LISTE DES TABLEAUX
REFERENCES BIBLIOGRAPHIQUES

Rapport PFE, mémoire et thèse PDFTélécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *