O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Visite guidée au pays de la donnée - Du modèle conceptuel au modèle physique

968 visualizações

Publicada em

Ce diaporama est le 3ème d'une série qui vise à donner un panorama de la gestion des données à l'ère du big data et de l'intelligence artificielle. Cette partie s'attache à présenter comment on passe de la modélisation des données jusqu'à leur stockage. Elle dresse un panorama des différentes solutions de stockage de données, en présente les particularités, les forces et les faiblesses.

Publicada em: Dados e análise
  • If you want to download or read this book, copy link or url below in the New tab ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { http://bit.ly/2m6jJ5M } .........................................................................................................................
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui

Visite guidée au pays de la donnée - Du modèle conceptuel au modèle physique

  1. 1. Gautier Poupeau gautier.poupeau@gmail.com, @lespetitescases http://www.lespetitescases.net Visite guidée au pays de la donnée Du modèle conceptuel au modèle physique
  2. 2. Visite guidée au pays de la donnée • Introduction et tour d’horizon • Du modèle conceptuel au modèle physique • Acquisition et gestion des données • Traitement automatique des données • Exposition et visualisation des données • Processus et organisations pour assurer la gestion des données Série de présentations pour faire le tour de la gestion des données à l’ère du Big data, du Cloud et de l’intelligence artificielle
  3. 3. Plan de la partie Typologie, flux, structure et sémantique des données Sérialisation et stockage des données
  4. 4. TYPOLOGIE, FLUX, STRUCTURE ET SÉMANTIQUE DES DONNÉES
  5. 5. CARTOGRAPHIE
  6. 6. Etat des lieux et typologie des données Diagramme des différents types de données de l’Ina et de leurs liens Pour disposer d’une vue des données disponibles dans l’organisation, il est nécessaire de dresser un état des lieux des données (en pensant à intégrer toutes les données, même les logs et les données d’usage) puis de les classer selon une typologie indépendante des applications. « Si vous êtes Directeur des Systèmes d’Information, vous devriez faire un inventaire des données dont vous disposez et réfléchir à la valeur que ces données pourraient avoir si elles étaient disponibles plus largement au sein de l’entreprise voire à l’extérieur de l’entreprise, notamment pour vos partenaires. » Sir Tim Berners-Lee, inventeur du Web
  7. 7. Cartographie des flux de données Talend data catalog, Google Data Catalog, Azure data Catalog, Apache Atlas, Waterline data catalog, Dremio https://searchdatamanagement.techtarget.com/news/252459149/Data-catalog-softw Il est nécessaire de cartographier les flux d’échange de données afin de : •assurer leur traçabilité, en •respecter les cadres légaux comme la GDPR, •prévoir les chantiers de rationalisation •anticiper les impacts des évolutions. On parle de « data lineage ». Copie d’écran de l’interface de visualisation de l’origine d’une donnée dans le logiciel Talend Data Catalog
  8. 8. MODÉLISATION
  9. 9. Circonscrire un monde Modéliser, c’est : • Circonscrire un monde • Analyser le monde • Comprendre son fonctionnement • Etablir sa logique • Faire ressortir les éléments de ce monde • Les décrire Et enfin : penser à l’usage qu’on va faire de ce monde Définition : établir la logique formelle d’un domaine pour permettre à la machine de le manipuler ou de le calculer
  10. 10. Le modèle conceptuel Le résultat de la modélisation s’incarne dans un modèle conceptuel, qui décrit : Les types de « choses » ou d’entités du monde, les classes Exemple de classes : film, personne… Les caractéristiques de ces entités, les attributs Exemple d’attributs : titre du film, nom de la personne… Les liens entre les entités, les relations Exemple de relations : réalisateur, acteur… La logique numéraire des relations, la cardinalité Exemple de cardinalité : un film peut être relié à plusieurs personnes FilmConcept PersonneFilm Titre du film Personne Nom Concept Libellé Genre Acteur Réalisateur 1 n nn
  11. 11. A garder en tête (1) Si on veut exprimer une information sur une relation alors la relation elle-même devient un type d’objet/entité Si on veut exprimer une information sur une caractéristique, alors cette dernière devient un type d’objet/entité
  12. 12. A garder en tête (2) Un modèle doit être pensé selon la logique intrinsèque de la donnée MAIS Votre modèle est utilisée dans un contexte et pour un objectif précis  Pensez aussi à être pragmatique (sauf si votre job consiste à penser des cadres de description qui ne seront jamais implémentés directement)
  13. 13. Formaliser un modèle conceptuel : le diagramme de classe en UML (Unified Modeling Language) class Macro modèle des données documentaires centré sur l'instance Instance Evénement Agrégation Identifiant Annotation textuelle Concept Item Titre Relation Entité <--> Concept Activité Champs textuels Annotation Agent (Activité) Agent Générique Chiffre Relation Evénement <--> Item Terme Relation Item<--> Item Extrait Fonds 0..* 1 0..* 0..* 0..* 1..* 0..* 0..* 0..* 1 1 0..* 0..1 1..* 1 0..* 0..*0..* 1 0..* 0..* 1..* 0..10..* 0..* 0..1 1..* 1..* 1..* « Langage de modélisation graphique à base de pictogrammes conçu pour fournir une méthode normalisée pour visualiser la conception d'un système » dixit Wikipédia https://fr.wikipedia.org/wiki/UML_(informatique) Un langage pour communiquer avec les informaticiens et les unir tous !!
  14. 14. Aide-mémoire d’UML Nom de la classe + Propriété 1 : string + Propriété 2 : int Nom des propriétés précédé par leur visibilité et suivi du type de données + Method 1 () Nom des méthodes précédé par leur visibilité Classe A Classe B Est une Héritage Classe A Classe B implémente Généralisation Classe A Classe B Association Classe A Classe B Association dirigée Classe A Classe B Agrégation Classe A Classe B Composition est dans A peut exister si B n’existe pas partie de A ne peut pas exister si B n’existe pas Classe Nom de la classe + Propriété 1 : string + Propriété 2 : int + Method 1 () La forme du trait indique le type de lien 0…n La cardinalité indique le nombre de liens possibles entre la classe opposée à la mention et la classe qui possède la mention
  15. 15. DES MODÈLES CONCEPTUELS POUR LES DONNÉES PATRIMONIALES
  16. 16. FRBR/LRM Functional Requirements for Bibliographic Records/Library Reference Model https://www.ifla.org/publications/node/11412
  17. 17. CIDOC-CRM Le CIDOC-CRM est un modèle conceptuel pour décrire les biens culturels, patrimoniaux ou archéologiques. Il est au bien culturel ce que la TEI est au texte : une boîte à outils pour construire son propre modèle et non une ontologie à implémenter en l’état… http://www.cidoc-crm.org/node/202
  18. 18. Records in context https://www.ica.org/en/egad-ric-conceptual-model https://www.ica.org/sites/default/files/session-7.8-ica-egad-ric-congress2016.pdf Records in context est une initiative lancée par le Conseil international des archives pour réfléchir à la modélisation des données archivistiques Records in context est d’abord un modèle conceptuel (RiC-CM) qui se matérialise sous la forme d’une ontologie (RiC-O)
  19. 19. Apports des modèles patrimoniaux Séparation des informations de la notice en différentes entités logiques Convergence entre les différents modèles de description et interopérabilité des différentes institutions patrimoniales Vue de FRBRoo Modélisation de l’objet et de ces différentes appréhensions et de la description elle-même
  20. 20. LES RÉFÉRENTIELS
  21. 21. Qu’est-ce-qu’un référentiel ? Pour appréhender au mieux les connaissances, les hommes ont cherché des moyens de classer et contenir les informations du monde sous la forme de référentiels Vocabulaire contrôlé Taxinomie Mammifère Animal Reptile Primates Homme Chimpanzé Thésaurus Ontologie Animal Reptile Mammifère Primates Homme Personne Animal Lieu possède habite est originaire de Pays de langue française Afrique Francophone Europe Francophone France Suisse Romande Francophonie narrower narrower related
  22. 22. Importance des référentiels Les référentiels assurent la cohérence des valeurs des données et la mise en relation entre les différents types de données par des éléments communs et normés Mise en relation de biens culturels issus de différentes bases via les référentiels En théorie En pratique Les référentiels jouent le rôle de hub de données entre les différentes bases d’une organisation
  23. 23. Quelques usages des référentiels Documenter/décrire de manière cohérente Normaliser Gérer le multilinguisme Permettre des inférences Créer du lien
  24. 24. Des référentiels qui s’ignorent Annuaire d’entreprise Arborescence de fichiers Catalogue de produits Base de relation clients/CRM
  25. 25. Des référentiels reconnus Eurovoc est le thésaurus multilingue et multidisciplinaire de l’Union européenne. Il contient des mots-clés répartis dans 21 domaines et 127 sous-domaines. Geonames est une initiative communautaire de données géographiques. Data.bnf.fr est une initiative de la Bibliothèque nationale de France pour exposer ses données bibliographiques autour de leur référentiels d’œuvres, de personnes et matières (Rameau). Wikidata est une initiative issue de la galaxie de la Wikimedia Foundation pour constituer une base de connaissances dont les données sont modifiables et librement réutilisables (CC0).
  26. 26. SÉRIALISATION ET STOCKAGE DES DONNÉES
  27. 27. Du modèle conceptuel au modèle physique Modèle conceptuel Modèle logique Modèle physique Les données telles qu’elles sont exprimées selon un modèle pour les manipuler par un traitement informatique Les données telles qu’elles sont exprimées selon un format ou stockées en base Les données telles qu’elles sont organisées logiquement dans le monde réel Film Titre du film Concept Libellé Personne Nom Table Arbre Graphe
  28. 28. LES MODÈLES LOGIQUES Table, Arbre, Graphe
  29. 29. Modèle de données logiques : la table idfilm Titre propre idgenre 1 De battre mon cœur s’est arrêté 2 2 Un prophète 2 3 L’Arnacoeur 1 4 Quai d’Orsay 3 idgenr e Libellé du genre 1 Comédie romantique 2 Drame 3 Comédie Idpersonne Nom 1 Jacques Audiard 2 Romain Duris 3 Niels Arestrup 4 Bertrand Tavernier Film Genre Personne idfilm Idpersonne rôle 1 1 Réalisateur 2 1 Réalisateur 1 2 Acteur 3 2 Acteur 2 3 Acteur 4 4 Réalisateur 4 3 Acteur Film_Personne
  30. 30. Modèle de données logiques : l’arbre
  31. 31. Modèle de données logiques : le graphe De battre mon cœur s’est arrété Comédie Un prophète Quai d’Orsay L’arnacoeur Jacques Audiard Niels Arestrup Romain Duris Bertrand Tavernier Drame Comédie romantique Personne Concept type type type genre genregenre genre type type type type réalisateur acteur réalisateur acteur réalisateuracteur acteur
  32. 32. FORMATS ET MODÈLES
  33. 33. Exemples de formats de tables CSV XLS idfilm,Titre propre,Genre 1,De battre mon cœur s’est arrêté,Drame 2,Un prophète,Drame 3,L'arnacoeur,Comédie romantique 4,Quai d'Orsay,Comédie idfilm,Titre propre,Genre,Rôle,Nom 1,De battre mon cœur s’est arrêté,Drame,Réalisateur,Jacques Audiard 1,De battre mon cœur s’est arrêté,Drame,Acteur,Romain Duris 2,Un prophète,Drame,Réalisateur,Jacques Audiard 2,Un prophète,Drame,Acteur,Niels Arestrup 3,L'arnacoeur,Comédie romantique,Acteur,Romain Duris 4,Quai d'Orsay,Comédie,Réalisateur,Bertrand Tavernier 4,Quai d'Orsay,Comédie,Acteur,Niels Arestrup
  34. 34. Exemples de formats d’arbres XML Json <film> <titre>De battre mon cœur s'est arrêté</titre> <genre>Drame</genre> <generiques> <generique> <role>Acteur</role> <personne> <nom>Romain Duris</nom> </personne> </generique> <generique> <role>Réalisateur</role> <personne> <nom>Jacques Audiard</nom> </personne> </generique> </generiques> </film> { "film": [ { "titre": "De battre mon cœur s'est arrêté", "genre": "Drame", "generiques": [ { "role": "Acteur", "personne": { "nom": "Romain Duris" } }, { "role": "Réalisateur", "personne": { "nom": "Jacques Audiard" } } ] } ] }
  35. 35. Exemples de modèles de graphes RDF Property graph Le modèle RDF, à la base des technologies du Web sémantique, repose sur le modèle des triplets : Sujet/Prédicat/Objet pour modéliser les graphes et le mécanismes des URIs pour identifier les entités. Les property graph sont composés de sommets (= des entités), d’arcs (= liens entre entités) et de propriétés (= attributs) de sommets ou d’arcs.
  36. 36. LES BASES DE DONNÉES
  37. 37. Système de stockage de données Interface machine d’accès aux données (= API) SQL SPARQL /TinkerpopSQL ou spécifique spécifique Système de fichiers SGBDR Document DBColumn DB Graph DB Le choix du système de stockage des données dépend des usages souhaitées des données NFS/CIFS/HFS…
  38. 38. Cohérence Les données doivent rester cohérentes dans tous les cas, c’est-à-dire même en cas d’échec système Les propriétés ACID A C ID Isolation Une transaction est exécutée de façon isolée, c’est-à-dire qu’elle peut voir les données dans leur état intermédiaire, les autres opérations doivent attendre un nouveau point de synchronisation (fin de la transaction) pour voir le nouvel état Durabilité Dés l’instant où la transaction est terminée, les modifications sont persistées sur disque de manière durable Atomicité Si une transaction n’est pas effectuée jusqu’au bout, la base de données retourne dans son état initial Le respect des contraintes ACID assure la cohérence et l’intégrité des données stockées en base mais peut induire des pertes de performances avec la montée en charge. La stabilité et la robustesse des bases de données s’évaluent suivant leur respect des propriétés ACID
  39. 39. P Availability Il est toujours possible de réaliser une opération et de recevoir une réponse en retour Le théorème de CAP C A Partition tolerance Toutes les opérations finissent par se terminer même si certains composants du système sont indisponibles Consistency Le client perçoit un ensemble d’opérations transactionnelles comme réalisées d’un seul bloc Le modèle ACID adresse principalement les deux premières propriétés (CA) tandis que les systèmes distribués se concentrent généralement sur les deux dernières (CP et AP) La distribution des données permet d’augmenter les performances du système. Les bases de données distribuées respectent le théorème du CAP qui établit qu’un système distribué ne peut respecter que 2 propriétés sur 3 à un instant T.
  40. 40. LES BASES DE DONNÉES BASÉES SUR LE MODÈLE DE TABLE
  41. 41. Les bases de données relationnelles Un langage de requêtes et d’interactions avec le système : le SQL La grande force des SGBDR est de respecter les propriétés ACID mais, de par leur mode de fonctionnement, elles ne sont a priori pas compatibles avec la scalabilité horizontale.
  42. 42. Les systèmes de gestion de bases de données relationnelles (SGBDR) existantes Open source Propriétaire
  43. 43. OLTP vs OLAP OLTP Online Transaction Processing Traitement transactionnel en ligne OLAP Online Analytical Processing Traitement analytique en ligne OLTP et OLAP désignent les deux cas d’usages principaux des bases de données relationnelles imposant une manière différente d’organiser les bases de données même si elles s’appuient dans les deux cas sur le modèle de table. • Dédiée aux applications • Accès fréquent et écriture rapide • Stockage orientée ligne • Ecriture interactive • Dédiée aux outils de BI et de data visualisation • Lecture rapide et capacité de calcul • Stockage orientée colonne • Ecriture par batch Export pour alimenter
  44. 44. Architecture et modèle de données pour l’OLAP Le modèle des datamart pour le traitement analytique implémenté avec des SGBDR classiques suit habituellement le modèle en étoile ou en flocon : des dimensions (= attributs) autour d’une table de faits (=l’entité principale des traitements). Ce modèle permet de respecter le principe relationnel tout en limitant le nombre de jointures. Base OLTP primaire Data Warehouse Entrepôt de données DataMart Magasin de données centralise les données sans transformation spécifique transforme et organise les données suivants les traitements analytiques
  45. 45. Google Big Query/Amazon Redshift Google Big Query et Amazon Redshift sont deux système de gestion de bases de données (SGBD) dans le cloud, fondés sur le modèle des tables, pensés pour l’OLAP, interrogeables en SQL et proposant une scalabilité horizontale. La principale caractéristique de ces deux bases réside dans leur capacité à stocker en valeur d’un champ des données structurées ou répétables ce qui évite de créer des tables de dimension et permet d’optimiser les requêtes
  46. 46. LES BASES DE DONNÉES BASÉES SUR LE MODÈLE D’ARBRE
  47. 47. Les bases de données document Pour interroger un ensemble d’arbres, il faut les indexer dans une base de données spécifique : une base de données « document ». Elles sont spécialisés pour le XML ou le Json. Une BD document est organisée en « collection » qui rassemble des arbres à la structure homogène ou quasi homogène Interroger une BD document a pour objectif principal de ramener l’arbre ou un sous-ensemble de cet arbre. Attention ! La granularité d’indexation est capitale et ce choix dépend de la structure en entrée, de l’usage attendu de la base de données et des compétences intrinsèques de la base.
  48. 48. BD document et scalabilité Serveur de routage Serveur de stockage B Serveur de stockage A Serveur de stockage C
  49. 49. Les BD documents existantes XML Json Open source Propriétaire Microsoft Cosmos Azure DB
  50. 50. LES MOTEURS DE RECHERCHE Des bases de données « document » particulières Disclamer : Diapos largement inspirées par le cours de Philippe Rigaux en CC BY-NC-SA http://b3d.bdpedia.fr/introri.html
  51. 51. Objectif La Recherche d’Information (Information Retrieval, IR) consiste à trouver des documents peu ou faiblement structurés, dans une grande collection, en fonction d’un besoin d’information. Recherche plein texte VS recherche type « base de données » Recherche plein texte titi toto TITï Bla Bla toto On cherche à examiner tous les mots de chaque document enregistré et à essayer de les faire correspondre à ceux fournis par l’utilisateur Requête structurée, données structurées, réponse « exacte » Recherche type « base de données »
  52. 52. Vocabulaire Faux négatifs: ce sont les documents pertinents qui ne sont pas inclus dans le résultat. Faux positifs: ce sont les documents non pertinents inclus dans le résultat; ils ont été sélectionnés à tort.  Tout l’enjeu est de trouver le juste milieu entre le bruit et le silence en jouant sur Précision La précision mesure la fraction des vrais positifs dans un résultat. Une précision de 1 correspond à l’absence totale de faux positifs. Une précision nulle indique un résultat ne contenant aucun document pertinent. Rappel Le rappel mesure la fraction de faux négatifs.
  53. 53. Index et index inversé d1: Le loup est dans la bergerie. d2: Le Loup était avec le trois petits cochons d3: Les moutons sont dans la bergerie. d4: Spider Cochon, Spider Cochon, il peut marcher au plafond. d5: Un loup a mangé un mouton, les autres loups sont restés dans la bergerie. d6: Il y a trois moutons dans le pré, et un mouton dans la gueule du loup. d7: Le cochon est à 12 le Kg, le mouton à 10 E/Kg d8: Les trois petits loups et le grand méchant cochon loup mouton cochon bergerie pré gueule D1 1 0 0 1 0 0 D2 1 0 1 0 0 0 D3 0 1 0 1 0 0 D4 0 0 1 0 0 0 D5 1 1 0 1 0 0 D6 1 1 0 0 1 1 D7 0 1 1 0 0 0 d8 1 0 1 0 0 0 Matrice d’incidence ou Index  Pas très performant s’il y a beaucoup de documents
  54. 54. Index et index inversé d1: Le loup est dans la bergerie. d2: Le Loup était avec le trois petits cochons d3: Les moutons sont dans la bergerie. d4: Spider Cochon, Spider Cochon, il peut marcher au plafond. d5: Un loup a mangé un mouton, les autres loups sont restés dans la bergerie. d6: Il y a trois moutons dans le pré, et un mouton dans la gueule du loup. d7: Le cochon est à 12 le Kg, le mouton à 10 E/Kg d8: Les trois petits loups et le grand méchant cochon Index inversé
  55. 55. Requête booléenne d1: Le loup est dans la bergerie. d2: Le Loup était avec le trois petits cochons d3: Les moutons sont dans la bergerie. d4: Spider Cochon, Spider Cochon, il peut marcher au plafond. d5: Un loup a mangé un mouton, les autres loups sont restés dans la bergerie. d6: Il y a trois moutons dans le pré, et un mouton dans la gueule du loup. d7: Le cochon est à 12 le Kg, le mouton à 10 E/Kg d8: Les trois petits loups et le grand méchant cochon louppetit louppetit louppetit louppetit petit loup mouton mouton Petit ET loup Petit OU loup Petit SAUF loup (Petit OU loup) ET mouton (Petit ET loup) SAUF mouton
  56. 56. Comment indexer au mieux les termes ? d1: Le loup est dans la bergerie. d2: Le Loup était avec le trois petits cochons d3: Les moutons sont dans la bergerie. d4: Spider Cochon, Spider Cochon, il peut marcher au plafond. d5: Un loup a mangé un mouton, les autres loups sont restés dans la bergerie. d6: Il y a trois moutons dans le pré, et un mouton dans la gueule du loup. d7: Le cochon est à 12 le Kg, le mouton à 10 E/Kg d8: Les trois petits loups et le grand méchant cochon Tokenisation Le Loup était avec les trois petits cochons Normalisation Lemmatisa -tion Mot vide Synonyme le loup etait avec les trois petits cochons le loup etait avec le trois petit cochon loup etait trois petit cochon loup canide etait trois petit cochon porc
  57. 57. Tri et classement L’objectif du tri est de proposer un ordre des résultats selon un critère déterminé par l’utilisateur La pertinence est un type de tri qui vise à proposer un ordre de classement qui semble le plus pertinent au regard de la requête et de l’ensemble des résultats. La pertinence est une notion largement subjective…. La pertinence est calculée à partir d’un ensemble de critères propres comme la fréquence d’un terme (TF-IDF), degré de similarité, la pondération de la provenance des mots, page rank…
  58. 58. Filtres et facettes Afin de naviguer dans un ensemble de résultats ou de préciser sa requête, les moteurs de recherche propose des facettes, c’est-à-dire des ensembles de valeurs distinctes construits à partir des attributs du document.
  59. 59. Quelques outils Open source Propriétaire
  60. 60. LES BASES DE DONNÉES BASÉES SUR LE MODÈLE DE GRAPHE
  61. 61. Les triplestores RDF Les triplestores RDF permettent de stocker des triplets RDF et de les interroger grâce au langage de requête SPARQL normalisé par le W3C. PREFIX wd: <http://www.wikidata.org/entity/> PREFIX wdt: <http://www.wikidata.org/prop/direct/> SELECT ?ecrivain ?ecrivainLabel ?lieu ?lieuLabel WHERE { wd:Q535 wdt:P19 ?lieu. ?ecrivain wdt:P106 wd:Q36180. ?ecrivain wdt:P19 ?lieu. SERVICE wikibase:label { bd:serviceParam wikibase:language "fr". } } Exemple de requête SPARQL pour retrouver dans Wikidata les écrivains nés dans la même ville que Victor Hugo Open Source Blazegraph RDF4J Apache Jena Cliopatria Halyard Freemium Open Link Virtuoso Propriétaire Ontotext GraphDB Stardog Marklogic AllegroGraph AnzoGraph Oracle Spatial and RDF knowledge Graph
  62. 62. Les bases de données « property graph » Open Source Blazegraph Janusgraph OrientDB Freemium Neo4J ArangoDB Grakn.ai DGraph Propriétaire Stardog AnzoGraph Datastax Enterprise Graph Les bases de données orientés graphe stockent des graphes modélisés selon le modèle des « property graph ». Il n’existe pas de langage de requête normalisé mais deux se détachent : Gremlin qui fait partie du framework Apache Tinkerpop et Cypher mis au point par la société Neo4J. g.V().has("name","gremlin"). out("knows"). out("knows"). values("name") Exemple de requêtes Gremlin pour retrouver le nom des amis des amis de Gremlin MATCH (charlie:Person { name:'Charlie Sheen' })-[:ACTED_IN]- (movie:Movie) RETURN movie Exemple de requêtes Cypher pour retrouver les films dans lesquels joue Charlie Sheen
  63. 63. VIRTUALISATION DES DONNÉES
  64. 64. Comment interroger en une requête des bases hétérogènes ? Plutôt que de répliquer les données dans un entrepôt de données, l’objectif des solutions de « virtualisation » de données est d’offrir un infrastructure capable d’interroger les différentes bases quel que soit leur type via une seule requête. Positionnement de la solution Open Source Dremio Dremio, Denodo, Informatica Data Virtualization, Red Hat Data Virtualization, Tibco Data Virtualization https://www.synaltic.fr/blog/dremio-federation-de-donnees-self-service/
  65. 65. L’HEURE DES CHOIX
  66. 66. Comment choisir le bon système de stockage ? Le choix doit reposer sur les performances attendues au regard de la structure et la nature des données et des types d’interactions attendus en lecture et en écriture Performances attendues Périmètre de données Type d’interactions
  67. 67. Forces et faiblesses des différents systèmes de bases de données Base de données relationnelles Base de données document Base de données graphes Moteur de recherche • Beaucoup de lecture/écriture • Données très structurées • Garantie de la transaction • Peu ou pas de mise à jour • Données semi structurées • Montée en charge sécurisée en volume de données • Données très structurées • Inférences sur les données • Respect de la logique des données • Requête plein texte • Rapidité des réponses • Montée en charge pour le nombre d’utilisateurs Il n’existe pas une base de données idéale, chacune présente ses forces et ses faiblesses.
  68. 68. Stockage primaire vs Stockage secondaire Stockage primaire Stockage secondaire Contraintes techniques : Haut niveau de résilience attendu Doit assurer l’intégrité et la qualité de la donnée Contraintes techniques : Accès fréquent en lecture Synchronisation avec le primaire Data Principalement accès en écriture Synchronisation Principalement accès en lecture Rôle du stockage primaire : Il sert d’entrepôt de référence de toutes les données du périmètre et assure la gestion des relations entre celles-ci Rôle du stockage secondaire : Il est principalement un système d’exposition du stockage primaire, permettant aux utilisateurs une forte interactivité avec les données de références Usages : Accès fréquent en écriture Requêtes basiques mais la gestion doit être performante Usages : Moteur de recherche Exposition des données Requêtage complexe Un des moyens de choisir la bonne base de données est d’identifier suivant les cas d’usage un stockage primaire et un stockage secondaire.
  69. 69. Architecture du lac de données de l’inaL’objectif est de déployer une infrastructure de stockage centralisée capable de répondre à tous les cas d’usage en proposant à la fois les différents types de bases de données et les mécanismes de traitement des données. http://www.lespetitescases.net/comment-mettre-la-donnee-au-coeur-du-si https://www.youtube.com/watch?v=KYOzoRPks8Q
  70. 70. Cloud ou pas ? Tous les grands opérateurs de services dans le Cloud propose des solutions de bases de données. Leur promesse : la supervision, la disponibilité, la maintenabilité, les montées de version, la gestion de la montée en charge… bref, tout ce qui rend la gestion de bases de données complexes… Google Cloud Amazon AWS Base de données relationnelles Cloud Spanner Cloud SQL Amazon relational Database service Amazon Aurora Base de données orientée colonnes Cloud BigTable Hybride Google BigQuery Amazon Redshift Base de données documents Cloud Firestore Amazon DocumentDB Moteur de recherche Amazon CloudSearch Amazon ElasticSearch service Base de données orientée graphes Cloud BigTable + JanusGraph Amazon Neptune Solutions proposées nativement par les grands opérateurs de Cloud
  71. 71. Cloud ou pas ? Alors, faut-il y aller ? N’est-ce pas dangereux d’abandonner une partie de la maîtrise des données ? Ça dépend de la criticité de vos données, des volumétries engagés, du nombre d’utilisateurs, des performances attendues, de la capacité de votre réseau et des ressources internes dont vous disposez. Microsoft Azure IBM Cloud Base de données relationnelles SQL Server Azure SQL Database Azure Database for MariaDB Azure Database for PostgreSQL Compose for MySQL IBM Cloud Database for PostgreSQL IBM DB2 on Cloud Base de données orientée colonnes Compose for ScyllaDB Hybride Azure Cosmos DB Base de données documents Azure Cosmos DB Compose for MongoDB Cloudant Compose for rethinkDB Moteur de recherche Azure Search Compose For elasticSearch Base de données orientée graphes Azure Cosmos DB Compose for JanusGraph

×