Module 1 BigData CloudComputing
Module 1 BigData CloudComputing
Les fondamentaux
du Big Data et du Cloud Computing
Imaginez ...
Un matin, vous ouvrez votre application Spotify. Avant même que vous ne choisissiez une chanson, elle vous propose exactement la
playlist dont vous aviez envie.
Vous allez sur Netflix : il vous recommande un film pile dans votre humeur du moment.
Vous prenez votre téléphone : Google Maps vous avertit qu’il y a des embouteillages avant même que vous ne partiez.
A dakar, le marché Sandaga s’anime, les vendeurs enregistrent des paiements via mobile money, les bus Tata tracent leur trajet en
temps réel grâce au GPS, les jeunes scrollent sur TikTok, et dans les hôpitaux, les médecins saisissent des dossiers numériques.
Rien de magique là-dedans. Juste… des données. Des milliards de données qui circulent, se croisent, s’analysent, et surtout racontent
une histoire : la vôtre, la mienne, celle du monde entier.
Mais ces données, il faut les collecter, les stocker, les analyser et surtout en tirer du sens. Et c’est là qu’interviennent deux révolutions :
Le Big Data, cette capacité à gérer une quantité colossale d’informations, toujours plus rapides, variées, et souvent non structurées.
Le Cloud Computing, qui permet à n’importe quelle entreprise, école ou start-up de disposer de la puissance de calcul d’un Google
ou d’un Amazon… sans posséder un seul serveur.
Introduction au Big Data et au Cloud Computing
Aujourd’hui, les entreprises, les gouvernements, les ONG, les start-ups cherchent toutes à transformer ces données en décisions :
Comment prévoir les ventes d’un produit avant même qu’il ne sorte ?
Comment anticiper une épidémie à partir des recherches Google ?
Comment analyser les flux de mobilité pour améliorer les transports ?
Comment comprendre les comportements des clients à partir de milliards de transactions ?
Pour répondre à ces questions, on a besoin de nouvelles compétences et de nouvelles technologies : c’est tout le sens du Big Data
et du Cloud Computing.
L'explosion quantitative des données numériques a obligé les chercheurs à trouver de nouvelles manières de voir
et d’analyser le monde. Il s’agit de découvrir de nouveaux ordres de grandeur concernant la capture, la recherche,
le partage, le stockage, l’analyse et la présentation des données. Ainsi est né le « Big Data » (années 1997).
Inventé par les géants du web, le Big Data se présente comme une solution dessinée pour permettre à tout le
monde d’accéder en temps réel à des bases de données massives.
Il s’agit notamment d’un Volume de données considérable à traiter, une grande Variété d’informations (venant de
diverses sources, non-structurées, organisées, Open…), et un certain niveau de Vélocité à atteindre, autrement dit
de fréquence de création, collecte et partage de ces données.
BIG DATA
Les sources et types de données
Sources de données
Il y a principalement 4 sources de données de types différents:
Les « logs » des sites web Les « insights » des médias sociaux
Tout site web génère une quantité importante de Les médias sociaux sont devenus de véritables
données, appelées "logs", qui enregistrent chaque baromètres de l'opinion publique. Les données qu'ils
interaction d'un utilisateur avec le site. Ces logs sont génèrent, souvent appelées "social media insights",
une mine d'or d'informations précieuses pour les offrent une vision en temps réel de ce que les
entreprises souhaitant comprendre le comportement internautes pensent d'une marque, d'un produit ou
de leurs visiteurs et optimiser leur présence en ligne. d'un service.
Les entreprises spécialisées dans la data ont développé Ce sont des données rendues publiques par les
des méthodes pour collecter d'immenses quantités de administrations, les entreprises ou les organisations,
données sur les internautes, appelées "third party data" et qui peuvent être librement réutilisées par tout un
ou données comportementales tierces. Ces données, chacun. Ces données, souvent issues de sources
récoltées via des formulaires, des cookies et d'autres diverses (statistiques publiques, données
traceurs, ... Au-delà des classiques informations géographiques, données économiques, etc.), offrent
d’identité (sexe, âge, CSP…), il est maintenant beaucoup un potentiel immense pour l'innovation, la recherche
plus efficace de mesurer les comportements (navigation, et le développement de nouveaux services.
configuration matérielle, temps passé sur les pages…).
Les différents types de données
Données structurées
Exemples :
Bases de données relationnelles (MySQL, Oracle)
Feuilles de calcul Excel
Données CRM (ID, noms, âge, adresses, contacts)
Les différents types de données
Données non structurées
Les données non structurées, unstructured data en anglais, ne suivent aucun schéma
fixe ou préétabli. Elles ne peuvent pas être facilement organisées dans des bases de
données relationnelles traditionnelles. Leur analyse et leur gestion sont plus
complexes, nécessitant souvent des outils spécialisés pour extraire les informations.
Elles représentent la majorité des données du Big Data (80-90%)
Exemples :
Emails, documents, journaux
Images, vidéos, fichiers audio
Publications ou commentaires sur les réseaux sociaux
Données issues de capteurs IoT
Les différents types de données
Données semi-structurées
Par exemple, si vous prenez une photo à partir d'un smartphone, elle aura des attributs
structurés comme la géolocalisation, l'ID de l'appareil et l'horodatage. Après les avoir
enregistrées, vous pouvez attribuer des balises aux images telles que « animal de compagnie
» ou « chien » pour fournir une structure.
Exemples :
Fichiers XML/JSON, API
Emails avec champs spécifiques (sujet, expéditeur)
Données des réseaux sociaux avec hashtags et mentions
Logs de serveurs avec balises
Applications
Bases de données relationnelles Bases de données NoSQL
Réside à
Entrepôts de données Entrepôts de données (Data warehouse)
Lacs de données (Data lake)
E = Extract (Extraction)
On récupère les données depuis différentes sources :
bases de données (SQL, Oracle, PostgreSQL…),
fichiers plats (Excel, CSV, JSON…),
APIs, capteurs, logs, ou plateformes en ligne (CRM, ERP, réseaux sociaux…).
T = Transform (Transformation)
On nettoie, structure et enrichit les données pour qu’elles deviennent
exploitables.
Cela comprend :
la suppression des doublons,
la gestion des valeurs manquantes,
la normalisation des formats (dates, devises, etc.),
le calcul de nouveaux indicateurs, La principale différence entre ETL et ELT est le moment et
la jointure entre plusieurs tables. l’emplacement de la couche de transformation.
Dans ETL, la transformation des données brutes se produit
avant qu’elles n’atteignent l’entrepôt de données.
L = Load (Chargement) Dans ELT, la transformation se produit dans l’entrepôt de
On charge les données transformées dans un entrepôt ou une base de données après que les données brutes y ont déjà été
données centrale appelée Data Warehouse (ou Data Lake dans le Big Data). déposées. Dans cette approche, les données brutes et
transformées vivent dans l’entrepôt de données.
BIG DATA
Définition & caractéristiques
Qu’est ce que le Big Data?
Ces données peuvent être analysées pour en tirer des enseignements et utilisées dans
des projets d’apprentissage automatique (Machine Learning) et d’autres applications
analytiques avancées.
Le Big Data peut être utilisé pour améliorer les opérations et performances, fournir un
meilleur service à la clientèle et créer des campagnes de marketing personnalisées,
identifier les facteurs de risque des maladie, aider à diagnostiquer les maladies chez
les patients et surveiller les réseaux électriques et prévenir les pannes. Par exemple,
le Big Data peut fournir aux entreprises des informations précieuses sur leurs clients,
qui peuvent ensuite être utilisées pour affiner les techniques de marketing afin
d’augmenter l’engagement des clients et les taux de conversion.
“Plus vous en savez sur une chose ou une
Ainsi, le Big Data constitue un levier majeur pour la décision stratégique et
situation, plus vous pouvez faire des prédictions
l’innovation.
fiables sur ce qui se passera à l’avenir.”
Les défis du Big Data ont conduit au développement de technologies innovantes pour
gérer efficacement d'immenses volumes de données: Hadoop, Spark, solutions cloud
(AWS, GCP, Azure, etc.). Ces technologies permettent aux entreprises de stocker, gérer
et analyser des données massives de manière plus efficace.
Les 5 principes essentiels qui définissent le Big Data
Données structurées
Données non-structurées
Caractéristiques du Big Data - Véracité
Elle se réfère à la qualité des données, incluant leur exactitude, leur fiabilité et
leur pertinence. C'est le degré de confiance que l'on peut accorder aux données.
Le Big Data provient de sources très diverses et non contrôlées (réseaux sociaux,
capteurs défectueux, saisie humaine), ce qui introduit souvent du bruit, des
erreurs, des données incomplètes ou contradictoires.
Question clé : Est-ce que je peux faire confiance à cette source de données ? Les
données sont-elles exactes et exemptes de biais ?
L’enjeu : S’assurer que les données que vous utilisez sont propres et
représentatives de la réalité. Des données de faible véracité conduiront à des
analyses et des décisions erronées.
En résumé : la donnée existe, mais
Exemple : n’est pas forcément vraie.
Un capteur de température qui transmet des valeurs clairement aberrantes
(50°C) a une faible véracité.
Fake news ou informations trompeuses
Une base client contient plusieurs doublons pour le même individu
Caractéristiques du Big Data - Valeur
La validité mesure : si les données respectent le format, la plage des valeurs, le type
et les règles que vous avez définis.
Question clé : Cette donnée respecte-t-elle le bon format, le type attendu et les
contraintes logiques ?
Selon Forbes, près de 60 % du temps d’un data scientist est consacré au nettoyage et
à la préparation des données avant toute analyse.
Exemple :
Un champ de date qui contient du texte au lieu du format AAAA-MM-JJ n'est pas En résumé : la donnée est vraie,
valide. mais pas forcément utile.
Un champ de revenu qui contient une valeur négative n'est pas valide selon les
règles commerciale
Une adresse e-mail valide syntaxiquement ([Link]@...) mais qui n’existe
plus → l'information est non vrace (elle ne correspond pas à une boîte mail
réelle)
Une personne peut indiquer son âge comme "150 ans". C'est un nombre valide,
mais ce n'est pas une information crédible.
Caractéristiques du Big Data - Volatilité
En résumé, l’avenir du Big Data sera marqué par une intégration plus
poussée de l’IA (Intelligence Artificielle), des analyses en temps réel,
une montée des préoccupations éthiques et légales, et des innovations
pour gérer les volumes massifs de données dans des environnements
de plus en plus complexes
BIG DATA
Les dangers
Les risques du Big Data
Risque de déshumanisation: toutes ces informations collectées Problème d'éthique: Ces technologies sont entachées de préjugés
peuvent donner le sentiment au client qu’il ne peut rien cacher à raciaux (et, dans certains cas, de préjugés sexistes). Le logiciel de
cette nouvelle science. Cela peut s’avérer perturbant, voire pire, reconnaissance faciale d'Amazon, Rekognition, en est un excellent
intrusif. exemple. En 2018, le logiciel a incorrectement identifié 28 membres
du Congrès américain comme étant des criminels condamnés.
Fuite de données: le risque zéro n’existe pas. Un autre danger lié
au Big Data est que des tiers mettent la main sur des informations
sensibles. En 2020, on estime que nous produisons 2,5 quintillions
d'octets de données par jour. Néanmoins, les hackers et les cyber-
attackers peuvent cibler ces données pour les vendre sur le
DarkNet. La sécurité et la confidentialité des données stockées
mises à mal par les risques d'espionnage numérique.
Risque de déshumanisation: toutes ces informations collectées Problème d'éthique: Ces technologies sont entachées de préjugés
peuvent donner le sentiment au client qu’il ne peut rien cacher à raciaux (et, dans certains cas, de préjugés sexistes). Le logiciel de
cette nouvelle science. Cela peut s’avérer perturbant, voire pire, reconnaissance faciale d'Amazon, Rekognition, en est un excellent
intrusif. exemple. En 2018, le logiciel a incorrectement identifié 28 membres
du Congrès américain comme étant des criminels condamnés.
Fuite de données: le risque zéro n’existe pas. Un autre danger lié
au Big Data est que des tiers mettent la main sur des informations Mauvaise qualité/analyse: une mauvaise analyse peut mal vous
sensibles. En 2020, on estime que nous produisons 2,5 quintillions orienter et vous faire prendre de mauvaises décisions.
d'octets de données par jour. Néanmoins, les hackers et les cyber-
attackers peuvent cibler ces données pour les vendre sur le
DarkNet. La sécurité et la confidentialité des données stockées
mises à mal par les risques d'espionnage numérique.
Risque de déshumanisation: toutes ces informations collectées Problème d'éthique et biais algorithmique: Ces technologies sont
peuvent donner le sentiment au client qu’il ne peut rien cacher à entachées de préjugés raciaux (et, dans certains cas, de préjugés
cette nouvelle science. Cela peut s’avérer perturbant, voire pire, sexistes). Le logiciel de reconnaissance faciale d'Amazon,
intrusif. Rekognition, en est un excellent exemple. En 2018, le logiciel a
incorrectement identifié 28 membres du Congrès américain comme
Fuite de données: le risque zéro n’existe pas. Un autre danger lié étant des criminels condamnés.
au Big Data est que des tiers mettent la main sur des informations
sensibles. En 2020, on estime que nous produisons 2,5 quintillions Mauvaise qualité/analyse: une mauvaise analyse peut mal vous
d'octets de données par jour. Néanmoins, les hackers et les cyber- orienter et vous faire prendre de mauvaises décisions.
attackers peuvent cibler ces données pour les vendre sur le
DarkNet. La sécurité et la confidentialité des données stockées Discrimination & surveillance: utilisation des données pour
mises à mal par les risques d'espionnage numérique. discriminer certains groupes (prix, assurances, emploi, etc.). Le
gouvernement chinois a lancé un système de crédit social. Ce
Ingérence politique: L'élection présidentielle américaine de 2016 système est lié au dossier permanent de chaque citoyen et vise à
et le référendum sur le Brexit de 2016 au Royaume-Uni sont les promouvoir le bon comportement des citoyens. Les "bons"
exemples les plus évidents d'utilisation abusive des Big Data. Le citoyens, par exemple ceux qui font des dons à des œuvres
cabinet Cambridge Analytica a utilisé des informations recueillies caritatives ou qui paient leurs factures à temps, recevront un crédit
illégalement sur Facebook pour éclairer les stratégies de qu'ils pourront échanger contre des billets d'avion ou de train de
communication des deux scrutins. Leur impact a façonné la scène première classe. Les "mauvais" citoyens, par exemple ceux qui ont
politique mondiale depuis lors. commis des infractions au code de la route ou qui n'ont pas payé
leurs dettes, pourraient être dissuadés d'agir, par exemple en
ralentissant leur connexion à l'internet ou en réduisant leur accès à
l'enseignement privé.
Big data et données personnelles
Pour faire face à ces risques, bien que le Big Data présente de nombreux avantages et opportunités, il
est crucial de développer des cadres éthiques et réglementaires solides, d'investir dans la sécurité des
données, et de promouvoir une utilisation responsable et transparente du Big Data.
Big data et données personnelles
La CDP est une autorité administrative indépendante du Sénégal, créée par la loi n°2008-12
du 25 janvier 2008.
Elle est chargée de veiller à la protection des données personnelles et au respect de la vie
privée des citoyens à l’ère du numérique.
Mission Description
Donner son accord avant qu’une entreprise ou institution collecte ou traite des données personnelles
Autoriser les traitements de données
(ex : fichiers clients, base RH, vidéosurveillance).
Garantir que les données (noms, emails, numéros, images, etc.) ne soient pas utilisées à mauvais
Protéger les citoyens
escient.
Informer et sensibiliser Expliquer au public leurs droits sur la vie privée numérique.
Contrôler et sanctionner Vérifier la conformité des entreprises et infliger des amendes en cas de violation.
Coopérer à l’international Collaborer avec d’autres autorités africaines et mondiales de protection des données.
Big data et données personnelles
Techniques de protection :
Anonymisation des données pour supprimer les informations identifiantes
Pseudonymisation pour réduire les risques d'identification
Contrôles d'accès stricts aux données
Bonnes pratiques :
Cartographier les données personnelles traitées
Mettre en place des processus de protection des données dès la conception
Former et sensibiliser les équipes aux enjeux de protection des données
BIG DATA
Les métiers
Les métiers du Big Data
Autres profils:
Business Analyst
Machine Learning Engineer
Chief Data officer
Head of data / Data manager
DevOps/Cloud Engineer
Big Data Architect
Big Data Administrator
Big Data Developer
Big Data Tech Lead
Collection Stockage
De par son immensité, la collecte des Toujours de par leur volume, les données ne
données est automatisée, et nécessite peuvent être stockées dans des systèmes
la mise en place de processus adéquats classiques. De ce besoin sont nées les
immenses fermes de données, que l’on
connaît sous le nom de « data centers ».
Analyse Traitement
Même s’il s’agit de la dernière étape, l’analyse est le
but premier du Big Data — à quoi bon avoir des Qu’elles soient structurées, non structurées ou
données si nous ne leur donnons pas de sens ? semi-structurées, les données ne se laissent pas
Ainsi, une fois les données collectées, stockées et lire d’elles-mêmes. Beaucoup de datasets, en
nettoyées, elles vont être analysées afin de faire fonction du but final de leur usage, doivent être
émerger des tendances et répondre à des questions. nettoyés des résultats parasites — également
Les résultats peuvent être des descriptions, des appelés « noise ».
diagnostics, des analyses prédictives
Les outils du Big Data
Le Big Data repose sur un écosystème d'outils et de technologies variés, chacun ayant une fonction spécifique
dans le traitement et l'analyse de grandes quantités de données.
Le choix des outils dépend de nombreux facteurs, tels que le volume des données, la nature des données, les
objectifs de l'analyse et les compétences de l'équipe. Il est souvent nécessaire de combiner plusieurs outils
pour construire une solution de Big Data complète.
Introduction à Hadoop
Historique:
Hadoop a été développé par Yahoo! en 2006, inspiré par le système Google File
System (GFS).
Il a été open-source en 2008 et est rapidement devenu populaire grâce à sa
simplicité et sa scalabilité.
Architecture:
C'est l'un des frameworks les plus connus pour le stockage et le traitement distribué de
grandes quantités de données. Il est composé de plusieurs modules, dont :
HDFS (Hadoop Distributed File System) pour le stockage et divise les données en
blocs répartis sur plusieurs nœuds pour un accès parallèle
Hadoop utilise également d'autres composants, tels que YARN (Yet Another Resource
Negotiator) pour la gestion des ressources et HBase pour le stockage de données NoSQL.
Fonctionnement:
Les données sont stockées dans HDFS sous forme de fichiers découpés en blocs.
MapReduce divise les tâches de traitement en sous-taches exécutées simultanément
sur plusieurs machines (noeuds).
Les résultats intermédiaires sont stockés dans HDFS, puis combinés pour produire le
résultat final.
Introduction à Spark
Il est devenu un outil incontournable dans le monde du Big Data grâce à sa flexibilité, sa
performance et sa facilité d'utilisation, utilisé pour une grande variété de tâches
analytiques allant du traitement par lots (batch) aux flux en temps réel (real time).
Composants de Spark
Spark Core : fournit les fonctions de base pour le traitement distribué et l'API de RDD
(Resilient Distributed Dataset). Les RDD sont des ensembles de données distribués sur
plusieurs nœuds qui peuvent être manipulés en parallèle.
Spark SQL: permet de manipuler des données structurées avec des requêtes SQL.
Spark Streaming: conçu pour traiter les flux de données en temps réel
MLlib: bibliothèque d'algorithmes d'apprentissage automatique distribués. MLlib permet
aux data scientists de former des modèles sur de très grandes quantités de données.
GraphX: module pour le traitement de graphes distribués, qui permet de manipuler et
d'analyser des données en graphes (par exemple, des réseaux sociaux ou des relations
entre objets)
Les outils de stockage: Bases de données NoSQL
Pour prendre en charge les immenses volumes de données, les stocker et les
analyser, il est impératif de s’en remettre à de nouvelles solutions.
Une base de données NoSQL est une base de données « non relationnelle ».
NoSQL: signifie “Not Only SQL”, ces bases de données non relationnelles
sont conçues pour gérer des données structurées, semi-structurées et non
structurées. Elles offrent une grande flexibilité et une haute disponibilité.
MongoDB: une base de documents populaire, idéale pour les données
semi-structurées et non structurées.
Cassandra: une base de colonnes hautement disponible et scalable,
souvent utilisée pour les applications à faible latence et à haute
disponibilité, telles que les applications de streaming de données.
HBase: une base de données NoSQL construite sur HDFS pour stocker des
données massives en colonnes, utilisée pour les applications nécessitant des
écritures et des lectures en temps réel.
Les outils d'analyse
SQL: bien que conçu pour les bases de données relationnelles, SQL
est largement utilisé pour interroger les données stockées dans des
systèmes Big Data.
Python: langage de programmation polyvalent, utilisé pour une
grande variété de tâches dans le domaine du Big Data, notamment
l'analyse de données, le machine learning et la visualisation.
R: langage et un environnement logiciel pour le calcul statistique et
graphique. Il est particulièrement populaire dans le domaine de la
data science.
Tableau: outil de visualisation de données qui permet de créer des
tableaux de bord interactifs et des graphiques personnalisés.
Power BI: solution d'analyse de données développée par Microsoft,
qui permet de transformer les données en informations visuelles,
interactives et exploitables
Les outils de machine learning
Le Cloud Computing offre des solutions puissantes et scalables pour le traitement des données Big Data. Il permet
de stocker, traiter et analyser des volumes massifs de données de manière flexible et évolutive. Les principaux
acteurs sont:
AWS: Amazon Web Services propose une large gamme de services Big Data, tels que EMR (Elastic MapReduce),
Redshif, Athena, SageMaker, ...
Azure: Microsoft Azure offre également des services Big Data, tels que HDInsight et Databricks.
Google Cloud Platform (GCP): Google propose des services Big Data tels que BigQuery, Dataproc, Vertex AI, ....
Le choix entre ces plateformes dépend souvent des besoins spécifiques du projet, de l'expertise de l'équipe, et
des autres services cloud déjà utilisés par l'entreprise. Chaque plateforme offre des fonctionnalités uniques qui
peuvent être plus ou moins adaptées selon les cas d'usage.
BIG DATA
Bases de données NoSQL
L'histoire de NoSQL
Le terme et le concept NoSQL, Not Only SQL, furent inventés en 1998 par Carl Strozz, afin de désigner sa base de
données relationnelle légère et open source. Ce concept a ensuite été adopté et popularisé par les GAFAM tels que
Google, Facebook ou Amazon confrontés à d’immenses volumes de données. Les bases de données relationnelles étaient
devenues trop lentes.
Plutôt que de mettre à jour leur équipement informatique pour accroître les performances des RDBMS (Relational
Database Management System), les géants de la technologie ont choisi de distribuer la charge sur de multiples serveurs
hôtes. C’est la méthode dite du “scaling out”. Les bases de données NoSQL sont idéales pour le scaling-out, puisqu’elles
sont non relationnelles.
En l’an 2000, la base de données graphique Neo4j fut lancée. Ce fut ensuite le tour de la Google Bigtable, en 2004, puis
CouchDB en 2005. L’histoire des bases de données NoSQL fut aussi marquée par Amazon Dynamo en 2007.
Puis, en 2008, Facebook rend open source la base de données non-relationnelle qu’elle utilise en interne : Cassandra.
Cet outil devient la référence des databases NoSQL, et remet le terme NoSQL sous le feu des projecteurs en lui donnant
son sens et sa popularité actuelle.
Les caractéristiques de NoSQL
Les bases de données NoSQL se distinguent des bases relationnelles classiques (comme MySQL ou PostgreSQL) car elles ne
reposent pas sur le modèle de tables avec colonnes fixes.
Elles permettent de stocker et gérer des données non structurées ou semi-structurées sans avoir besoin de normalisation ni
de schéma rigide.
Autrement dit, on peut y enregistrer des données très différentes les unes des autres, ce qui offre une grande flexibilité.
Une autre force des bases NoSQL est qu’elles ne nécessitent pas un langage de requête complexe comme le SQL.
L’accès et la manipulation des données se font souvent via des API simples, utilisant des formats courants comme JSON et des
protocoles HTTP REST, très proches du fonctionnement des applications web modernes.
Les bases NoSQL sont aussi conçues pour être distribuées : elles peuvent fonctionner sur plusieurs serveurs en même temps.
Cela leur permet de gérer de très grands volumes de données et d’assurer une haute disponibilité, même en cas de panne
d’un serveur.
Elles privilégient souvent la scalabilité et la rapidité plutôt qu’une stricte conformité au modèle ACID (atomicité, cohérence,
isolation, durabilité), typique des bases relationnelles.
En résumé, les bases NoSQL sont flexibles, évolutives et adaptées aux environnements Big Data, où les données sont
massives, variées et en constante évolution.
Les bases de données NoSQL sont disponibles dans différents types en fonction de leur modèle de données, dont les
principaux sont document, clé-valeur, orientée colonnes et graphique.
Types de bases de données NoSQL
Si vous répondez oui aux questions suivantes vous avez probablement besoin de choisir ce type de base de données :
La rapidité d’accès est-elle une priorité absolue ?
Mon application nécessite-t-elle principalement un système de cache ou de gestion de sessions ?
Types de bases de données NoSQL
Sur l’image (à droite) nous avons l’habitude de créer un tableau avec sur chaque
ligne toutes les informations relatives à un étudiant. En divisant les colonnes en
plusieurs tableaux qu’on va relier entre eux (ici par l’ID), les bases de données
orientées colonnes obtiennent des performances de lecture exceptionnelles sur
des données massives.
Ce modèle offre une grande flexibilité, car chaque document peut avoir sa
propre structure sans qu’un schéma fixe soit imposé.
Exemples
Cas d’usage
MongoDB
Applications web, profils utilisateurs, logs, catalogues produits,
CouchDB
blogs, forums, CMS (Content Management System), API
Firebase Firestore
ElasticSearch
RavenDB
Types de bases de données NoSQL
Avec ces bases de données il devient facile de créer des requêtes de type :
Je voudrais compter le nombre de personnes qui sont mariées, et qui
vivent à une même adresse, mais seul l’une des personnes du couple est
propriétaire de cette adresse.
MISE À L’ÉCHELLE :
Mise à l’échelle horizontale des données avec partage entre serveurs. Mise à l’échelle verticale des données en augmentant la charge du serveur.
(slide suivante pour plus de détails)
Le scaling (ou mise à l’échelle) désigne la capacité d’un système à augmenter ses ressources pour traiter davantage
de charge ou de données.
Vertical scaling (scale-up) : on augmente la puissance d’une Horizontal scaling (scale-out) : on ajoute plusieurs machines (serveurs
seule machine : plus de CPU, plus de RAM, ou un disque plus ou nœuds) qui travaillent ensemble.
rapide.
Avantages :
Avantages : Scalabilité quasi infinie
Simple à mettre en œuvre Tolérance aux pannes (si un serveur tombe, les autres continuent)
Pas besoin de modifier le code de l’application Idéal pour le Big Data, les bases NoSQL (Cassandra, MongoDB, ...)
Convient aux bases SQL classiques (MySQL, PostgreSQL…)
Limites :
Limites : Architecture plus complexe à mettre en place
Capacité maximale limitée (on ne peut pas agrandir Besoin d’un système de répartition de charge (load balancer)
indéfiniment un serveur) Synchronisation et cohérence plus difficiles à gérer
Coût rapidement élevé
Si le serveur tombe, tout s’arrête
Les systèmes Big Data et Cloud modernes privilégient le scaling horizontal pour sa résilience et sa scalabilité quasi infinie.
Comment choisir entre SQL et NoSQL ?
Le choix entre SQL (bases relationnelles) et NoSQL dépend principalement de la structure des données et des besoins du projet.
=> Utilise une base SQL lorsque : => Choisis NoSQL lorsque :
Les données sont structurées et normalisées (ex. finance, Les données sont non structurées ou très variables (ex.
comptabilité). profils utilisateurs, réseaux sociaux).
Tu as besoin de relations claires entre les tables et de Le projet nécessite une lecture rapide et flexible sans passer
jointures complexes. par des jointures.
La validité du typage et la cohérence des données sont Tu gères de grands volumes de données (Big Data) ou un flux
essentielles. continu.
Tu effectues souvent des écritures précises (ex. mise à jour Ton système est distribué sur plusieurs serveurs (scalabilité
d’une ligne spécifique). horizontale).
SQL est idéal pour les projets stables, bien structurés et NoSQL est adapté aux environnements flexibles, évolutifs et
nécessitant une forte intégrité des données. orientés performance (applications web, temps réel, Big Data).
Data warehouse vs data lake vs data lakehouse
Aspect Data Warehouse Data Lake Data Lakehouse
Type de données Structurées (OLAP) Structurées, semi-structurées, non structurées (OLAP, OLTP) Structurées, semi-structurées, non structurées (OLAP, OLTP)
Schéma en lecture (schema-on-read), stockage sous forme de Schéma flexible, supporte les modèles en écriture et en
Modèle de schéma Schéma en écriture (schema-on-write)
fichiers plats lecture avec support ACID (Atomicité, Cohérence, Isolation,
Durabilité)
Format de stockage Formats optimisés pour l'analytique (Parquet, ORC) Formats variés (JSON, XML, CSV, Avro, Parquet, ORC) Formats optimisés pour l'analytique et le ML (Parquet, ORC,
Delta Lake, Hudi, Iceberg)
Stockage Stockage SAN/NAS haute performance, disques SSD Stockage distribué et scalable Stockage scalable et performant, supporte le stockage cloud
hybride
Mécanismes Indexation avancée (B-trees, bitmap indexes) Indexation limitée, basé sur les métadonnées Indexation avancée avec support des index secondaires et
d’indexation des structures de données adaptatives
Performance des Haute performance avec optimisation des requêtes SQL, Variable, dépend de l'outil utilisé Haute performance avec optimisations intégrées
requêtes indexes, partitions
Stockage Stockage SAN/NAS haute performance, disques SSD Stockage distribué et scalable Stockage scalable et performant, supporte le stockage cloud
hybride
Gestion des Catalogues de données robustes Catalogues de données rudimentaires ou externes Catalogues de données intégrés et avancés
métadonnées
Sécurité et gouvernance Sécurité au niveau des colonnes et des lignes, audits, Sécurité et gouvernance variées, nécessitant des Sécurité et gouvernance unifiées, avec contrôle d'accès fin
contrôle d'accès basé sur les rôles configurations supplémentaires
Pipeline de données ETL (Extract, Transform, Load) ELT (Extract, Load, Transform) ELT/ETL hybrides avec support des workflows de streaming
et batch
Conformité et audits Fort soutien pour la conformité réglementaire (GDPR, Varie, dépend des outils et configurations supplémentaires Conformité et audits intégrés avec logs d'audit détaillés et
HIPAA) avec des fonctionnalités de traçabilité et d'audit pour la conformité traçabilité des données (GDPR, HIPAA, CCPA)
Cohérence et intégrité Transactions ACID, contrôle de version, gestion des Cohérence éventuelle, dépend des systèmes de fichiers Transactions ACID, gestion des versions de données, prise
anomalies distribués en charge des transactions multi-table (Delta Lake, Iceberg)
Utilisateurs cibles Analystes de données, spécialistes BI, décideurs Data scientists, ingénieurs de données, analystes Utilisateurs mixtes : analystes de données, data scientists,
exploratoiress ingénieurs de données, décideurs
Utilisation typique Rapports, BI, analyses historiques Analyses exploratoires, Machine Learning, Big Data BI, Machine Learning, analyses en temps réel, stockage
unifié
Coût Élevé en raison du stockage et des performances Bas, stockage de grande capacité à faible coût Modéré, avec un coût optimisé pour la performance et la
optimisées capacité
Data warehouse vs data lake vs data lakehouse Modèle d’architecture
Un Data Mart (ou magasin de données) est une sous-partie d’un Data Warehouse destinée à répondre aux besoins spécifiques d’un département, centré sur un domaine
particulier (marketing, finance, ventes, ressources humaines, etc.).
Data warehouse vs data lake vs data lakehouse
En résumé
Un Data Warehouse est un système centralisé de gestion et de stockage de données conçu pour collecter,
consolider et analyser de grandes quantités de données structurées provenant de diverses sources.
Exemple d’outils : Snowflake, Redshift, BigQuery, Vertica, ...
Data Lake →Pour stocker tout, brut, sans limite de format. Exemple d’outils : Snowflake, Redshift
Exemple d’outils : S3, HDFS, Databricks Delta Storage Layer, Azure Data Lake Storage (ADLS), GCS, ...
Data Lakehouse → Pour unifier les deux mondes (Data Warehouse et Data Lake) : structure + flexibilité.
Exemple d’outils : Databricks, Delta Lake, Snowflake Unistore, Google BigLake, AWS Lake Formation +
Athena, Dremio, Apache Iceberg, ...
Exemple
Avant le cloud computing, les entreprises achetaient et maintenaient une infrastructure informatique sur site. Bien que les
économies aient été à l'origine de la transition initiale vers le cloud, de nombreuses entreprises trouvent que l'infrastructure
cloud offre de nombreux avantages.
Voici les 5 caractéristiques essentielles du cloud computing selon le NIST (National Institute of Standards and Technology) :
Libre-service à la demande: les utilisateurs peuvent accéder aux ressources cloud de façon autonome, sans intervention du
fournisseur de services.
Accès réseau étendu: les services sont accessibles via le réseau (internet) depuis divers appareils clients avec une connexion
internet.
Mutualisation des ressources: Les ressources du fournisseur (stockage, puissance de calcul, etc.) sont mutualisées pour servir
plusieurs clients.
Flexibilité rapide: les capacités peuvent être augmentées ou diminuées rapidement et automatiquement selon la demande.
Service mesuré: l'utilisation des ressources est mesurée précisément et la facturation est basée sur l’usage réel (pay-as-use).
Les fournisseurs cloud proposent des métriques d'utilisation détaillées qui sont utilisées pour communiquer les coûts
d'utilisation au client.
Ces caractéristiques permettent une grande flexibilité, une optimisation des coûts et une évolutivité qui sont au cœur des
avantages du cloud computing.
Les avantages du Cloud Computing
Appliquer des correctifs, mettre à niveau et tester Les applications Cloud sont conçues pour être Les grandes sociétés perdent en moyenne 265
des applications peut occuper l'équipe accessibles partout en toute sécurité et depuis ordinateurs portables par an. Si les données
informatique plusieurs jours par mois. Grâce aux n'importe quel appareil connecté. qu'ils contiennent sont confidentielles, le risque
applications Cloud, ce fardeau disparaît. de sécurité est sérieux.
En effet, tout est géré dans le Cloud et votre Avec les applications Cloud, les données sont
personnel est libre de se consacrer à de stockées de manière sécurisée dans le Cloud. Un
nouveaux projets et d'innover. ordinateur portable perdu n'est donc plus un
problème majeur.
Pourquoi rejoindre le Cloud ?
De plus en plus d'entreprises déplacent leurs activités informatiques dans le Cloud pour tirer parti de ses
nombreux avantages. Par nature, le Cloud est un outil qui change la donne pour quatre raisons :
Efficacité : l'informatique traditionnelle sur site exigeait des investissements réguliers, la capacité pouvant
difficilement être adaptée. Le Cloud Computing fournit quant à lui une meilleure efficacité puisque les
ressources sont partagées entre les clients.
Accès : les applications et services Cloud sont accessibles partout : il suffit d'avoir un appareil doté d'une
connexion Internet.
Capacité : le Cloud n'a pas de limite de taille, les entreprises n'ont donc aucun souci à se faire en matière
de capacité.
Ces avantages revêtent une importance considérable dans un monde où le travail de bureau laisse la place au
travail à distance et où l'utilisation des appareils mobiles prend le dessus sur l'informatique de bureau.
Le Cloud est il sécurisé ?
Bien que le cloud computing offre de nombreux avantages, il présente également quelques inconvénients qu'il est important de
connaître avant de prendre une décision.
1. Dépendance à la connexion Internet: le cloud computing nécessite une connexion internet stable et rapide. Une panne de
connexion peut entraîner des interruptions de service.
2. Problèmes de sécurité et de confidentialité: bien que les fournisseurs de cloud mettent en place des mesures de sécurité
robustes, il existe toujours un risque de piratage ou de perte de données. La responsabilité de la sécurité est partagée entre le
fournisseur et le client.
3. Manque de contrôle: en utilisant le cloud, les entreprises externalisent une partie de leur infrastructure informatique. Cela
signifie qu'elles ont moins de contrôle sur les systèmes sous-jacents (serveurs, logiciels) par rapport à une solution on-premise
et doivent faire confiance aux fournisseurs pour la maintenance et la gestion.
4. Disponibilité des services: si le fournisseur rencontre des problèmes, cela peut impacter l'activité de l'entreprise. Bien que
rares, ces interruptions peuvent entraîner des arrêts d’activité pour les entreprises qui dépendent entièrement du cloud. La
pérennité du service dépend de la stabilité du fournisseur cloud choisi.
5. Dépendance vis-à-vis des fournisseurs: une fois que vous avez migré vos données et vos applications vers le cloud, il peut être
difficile et coûteux de changer de fournisseur en raison des différences de formats et de technologies.
6. Coûts cachés potentiels: les coûts peuvent augmenter rapidement si vous ne surveillez pas attentivement votre consommation
de ressources.
7. Problèmes de latence et de performance: les applications nécessitant des performances élevées ou une faible latence peuvent
être affectées par les services cloud, en particulier si le centre de données est géographiquement éloigné ou si l'infrastructure
du fournisseur est saturée.
8. Questions légales et réglementaires: selon les régions et les législations locales, les entreprises peuvent être soumises à des
restrictions sur l’endroit où les données peuvent être stockées. Le respect des normes de confidentialité (comme le RGPD en
Europe) peut devenir un défi dans le cloud.
Ces inconvénients doivent être soigneusement évalués par les entreprises avant d'adopter une solution cloud.
Recommandations
Pour minimiser les risques liés au cloud computing, il est recommandé de:
Choisir un fournisseur de cloud réputé: privilégier les fournisseurs qui ont une expérience reconnue en
matière de sécurité et de conformité, s'assurer que le fournisseur cloud respecte les réglementations
applicables, maintenir une documentation détaillée sur la conformité
Mettre en place des mesures de sécurité supplémentaires: chiffrer les données sensibles, mettre en place une
gestion robuste des clés de chiffrement, contrôler , surveiller et auditer régulièrement les accès, etc.
Optimiser les coûts: mettre en place des alertes pour éviter les mauvaises surprises, assurer vous que les
ressources cloud sont utilisées de manière efficace et que les services inutilisés sont désactivés.
Plan de continuité et de reprise: évaluer les options de migration vers un autre fournisseur ou vers une
solution on-premise (lorsque celles-ci sont hébergées et maintenues par le propre service informatique de
l'entreprise) en cas de besoin, développer et tester régulièrement des plans de reprise après sinistre.
Sécurité des applications: effectuer des tests de sécurité réguliers pour identifier et corriger les vulnérabilités.
Formation et sensibilisation: former le personnel sur les risques liés au cloud et les bonnes pratiques, assurer
que les équipes IT sont bien formées sur les technologies cloud et les nouvelles menaces.
Les fournisseurs de cloud
Les principaux fournisseurs de cloud
Les principaux fournisseurs de cloud
Fort de ses 33 % de part de marché, Amazon est celui qui domine l’offre cloud depuis le tout début ...
Les autres fournisseurs, comme Google, Microsoft et IBM, ont une plus faible part de marché mais une croissance
plus forte. Ce qui est logique quand on y pense : il est plus facile d'avoir une grosse croissance quand on est petit
que quand on est déjà très gros.
J'ai déjà personnellement essayé les clouds de Google et de Microsoft Azure en plus d'AWS. Ils offrent des services
concurrents intéressants, mais ne rivalisent pas en termes de diversité de l'offre. En clair : AWS profite du fait qu'il
était le premier sur le marché pour continuer à innover et fournir de nouveaux services.
Les entreprises choisissent de combiner les services cloud de différents fournisseurs pour répondre à leurs
différentes exigences plutôt que de choisir un seul fournisseur pour tout. Dans la plupart des cas, choisir de
travailler avec plusieurs fournisseurs cloud aide les entreprises à choisir les meilleures fonctionnalités cloud
pour leurs propres besoins. Par exemple, différents fournisseurs peuvent se spécialiser dans certains domaines
tels que l'analyse de données et les services d'IA, ou proposer une meilleure compatibilité avec les anciens
environnements ou des options de calcul plus larges.
D'où vient le cloud ?
Mais la différence est que vous ne savez pas quel est le serveur qui
répond aux requêtes. Parfois, le serveur change dans la journée et
vous n’êtes pas au courant, mais ça n’est pas grave : ce qui compte,
c’est que votre site fonctionne toujours !
Voilà comment le cloud (ou cloud computing) est né. Cela n’a rien de
magique : il y a toujours des serveurs, des processeurs, de la mémoire
et des disques durs. Sauf qu’au lieu de vous louer un serveur précis
avec son numéro de série, on vous loue « la puissance d’un serveur ».
Le cloud est généralement matérialisé par un nuage qui dit « Vous ne voyez
pas ce qu’il y a à l’intérieur mais ne vous inquiétez pas, ça fonctionne ». Soyons Les datacenters d’AWS dans le monde
un peu critiques toutefois : les problèmes, même s’ils sont rares, peuvent
toujours survenir. Amazon, Google et Microsoft ont tous les trois connu des
ennuis avec leur infrastructure de cloud, qui parfois n’a pas fonctionné
pendant plusieurs heures à cause d’un gros bug technique.
Très bien, mais que se passe-t-il lors d’une panne ou d’une faille de sécurité ?
Eh bien, cela dépend du service AWS utilisé, ainsi que du type de panne dont il est question. On parle ainsi d’un modèle de
responsabilité partagée.
La responsabilité d’AWS diffère d’un service à un autre(par exemple, entre Amazon S3 et Amazon RDS). La règle d’or à
retenir est que si vous avez la main dessus, c’est à votre charge.
Cloud public
Dans un cloud public, les données de l’entreprise sont stockées
sur un serveur distant, qui n’appartient pas à l’entreprise. Dans
ce cas, les services de cloud sont fournis par un prestataire
extérieur via l'internet. Microsoft Azure, Google Cloud Platform
(GCP), Amazon Web Services (AWS), Alibaba Cloud et IBM Cloud
sont les principaux fournisseurs de cloud public.
Des services d'intelligence artificielle aux outils de
développement en passant par les capacités de stockage et de
calcul pour pratiquement toutes les charges de travail, les
solutions de cloud public aident les entreprises à exploiter les
technologies de pointe et à se développer à l'échelle mondiale
sans devoir assurer les coûts ni la main-d'œuvre nécessaires
par elles-mêmes.
De plus en plus, les fournisseurs de cloud public proposent des
services cloud dans les data centers de leurs clients, ce qui
rend les notions d'emplacement et de propriété obsolètes.
Les types de cloud
Cloud privé
Avec le cloud privé, les données sont hébergées sur le serveur
de l’entreprise, qui est géré par cette dernière ou être hébergé
par un fournisseur de services tiers. L’avantage du cloud privé
est une sécurité accrue, les données étant protégées par le
système de sécurité informatique de l’entreprise.
Le cloud privé géré: ce type de cloud est créé et utilisé par les
clients, tandis qu'il est déployé, configuré et géré par un
fournisseur tiers
Le cloud privé dédié est un cloud réservé à des utilisateurs
particuliers d’une seule organisation. Par exemple, un service
de comptabilité peut disposer de son propre cloud réservé au
sein du cloud privé de l'entreprise.
Cloud hybride
Le cloud hybride peut se définir comme un environnement
composé de plusieurs cloud public et privé.
Le cloud privé géré: ce type de cloud est créé et utilisé par les clients, Un environnement multicloud peut exister intentionnellement (pour un
tandis qu'il est déployé, configuré et géré par un fournisseur tiers meilleur contrôle des données sensibles ou comme espace de stockage
Le cloud privé dédié est un cloud réservé à des utilisateurs particuliers de redondant pour améliorer la récupération après sinistre) ou par hasard
l’entreprise. Par exemple, un service de comptabilité peut disposer de son
propre cloud réservé au sein du cloud privé de l'entreprise.
CLOUD COMPUTING
Les types de service
Types de services Cloud: Introduction
Source: [Link]
Types de services Cloud
IaaS
Dans le cas de Cloud Computing de type IaaS (Infrastructure
as a Service), l’ensemble de l’infrastructure informatique est
hébergée et gérée par un prestataire extérieur, aussi bien la
partie logicielle que matérielle.
Cas d’utilisation :
Développement et test d'applications.
Hébergement de sites Web.
Sauvegarde et récupération de données.
Types de services Cloud
PaaS
Le PaaS (Platform as a Service) permet aux entreprises de
disposer d’un environnement complet afin de développer
leurs propres applications sans avoir à gérer les
infrastructures sous-jacentes.
Cas d’utilisation :
Développement d'applications mobiles et web.
Hébergement de microservices.
Développement d'applications big data.
Types de services Cloud
SaaS
Dans le cas du SaaS (Software as a Service), les collaborateurs
de l’entreprise accèdent aux logiciels dont ils ont besoin par
le biais d’une interface distante.
Cas d’utilisation :
Logiciels de gestion de la relation client (CRM).
Outils de collaboration et de productivité.
Solutions de gestion des ressources humaines (HR).
Cloud Computing: types de services
Functions as a Service (FaaS): permet aux développeurs de déployer du code sans avoir à se
soucier de la gestion des serveurs. Le fournisseur de cloud exécute et gère automatiquement le
code en réponse à des événements.
Exemples: AWS Lambda, Azure Functions, Google Cloud Functions.
Avantages: Pas de gestion de serveur, exécution basée sur des événements, facturation à
l'usage réel.
Backend as a Service (BaaS): offre des services backend prêts à l'emploi pour les applications,
comme les bases de données, les authentifications utilisateur et les notifications push
Exemples: Firebase, Backendless.
Avantages: facilité de développement d’applications mobiles ou web sans gérer le backend.
Types de services Cloud: exemples
Quels sont les métiers du cloud computing ?
Le cloud computing est aujourd’hui en pleine croissance. Les fortes demandes des entreprises ont pour corollaire un
besoin accru d’experts ayant des compétences liées à l’analyse des informations et aux problématiques
d’hébergement web.
Si cet univers du traitement, de la gestion des données internet et des outils de stockage vous passionne, n’attendez
plus et formez-vous !
BIG DATA ET CLOUD
Quelle est la relation entre
Big data et cloud computing ?
Big Data et Cloud Computing