WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Base des données orientées-graphe: migration du relationnel vers le noSQL

( Télécharger le fichier original )
par Lubwele Kamingu
Université de Kinshasa - Licence (Bac + 5) 2014
  

précédent sommaire

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

CONCLUSION

Nous voici en fin de notre travail qui a consisté à la proposition d'une approche de migration d'une base des données relationnelles vers une base des données NoSQL orientées-graphe.

Vu l'importance de stockage et des traitements des données dans le support informatique et vu la grande masse des données, il a été question de mettre en oeuvre une approche nous permettant le migrer vers le modèle cible qu'est le modèle graphe.

Cela s'est justifié par le simple fait que les graphes modélisent très facilement et très clairement la réalité et le traitement dévient beaucoup très efficace lorsqu'on utilise les algorithmes de la Théorie des graphes. En effet, les données se sont enregistrées dans les noeuds du graphe et les liens entre ces différentes données par des arêtes.

Sur ce, pour atteindre nos fins, nous avons parlé des généralités sur les graphes et les bases des données au premier chapitre. Au chapitre second, nous avons traité les NoSQL ; ici nous avons parlé des différentes bases des données NoSQL qui existent actuellement graphe qui étaient d'ailleurs le noeud de notre question. Au chapitre troisième, on a parlé des Bases des données orientées-graphe.En dernier chapitre, on a pu proposer une approche permettant de migrer d'une approche relationnelle vers une approche utilisant la théorie des graphes tout en s'appuyant sur une étude de cas à titre illustratif.

Sachant qu'il existe plusieurs technologies permettant de résoudre les problématiques les bases de données orientées-graphe, nous nous sommes permis d'utiliser le système de gestion des bases des données orientées-graphes de la firme Neo4j, qu'on appelle Neo4j.

Dans le souci d'amélioration, nous osons croire que le présent mémoire n'est qu'un début d'un commencement, et nécessite alors plusieurs enrichissements dans les années à venir. Néanmoins, nous n'estimons pas avoir tout fait et tout dit car l'Informatique évolue du jour le jour, mais nous ne croyons simplement que nous avons pu avancer d'un premier pas car, dit « Même un voyage de mille kilomètres commence par le premier pas ».

BIBLIOGRAPHIE

I. OUVRAGES

[BE70] C. Berge : Graphes et hypergraphes, Ed. Dunod, Paris 1970 ;

[BR15] R. BRUCHEZ: Les bases de données NoSQL et le Big Data. Comprendre et mettre oeuvre, 2ème Ed. EYROLLES, Paris, 2015;

[MK10] J.-A.K. MVIBUDULU, L.-D. I. KONKFIE: Technique des bases de données, Etude et cas, 1ère Ed. CRIGED, Kinshasa, janvier 2010;

[WF94] S. WASSERMAN and K. FAUST: Social Network Analysis: Methods and Applications, Cambridge University Press, 1994;

II. NOTES DE COURS

[KM14] P. K. KAFUNDA, L. N. MANYA: Coursde Recherche Opérationnelle Approfondie, Première licence en Informatique de gestion, Département des Mathématiques et Informatique, Faculté des Sciences, Université de Kinshasa, 2013 - 2014;

[MA08] L. N. MANYA: Cours de Recherche Opérationnelle, Troisièmes Graduats en Mathématiques et en Informatique, Département des Mathématiques et Informatique, Faculté des Sciences, Université de Kinshasa, 2007 - 2008;

[MA06] S. M. MAPHANA: Recherche Opérationnelle. Module 1 : Théorie des graphes et ses applications, Premières licences en Sciences de Gestion, Département des Sciences de Gestion, Faculté des Sciences Economiques et de Gestion, Université de Kinshasa, Mai 2006;

[MB12] E. M. MBUYI: Cours d'Informatique appliquée : Base de données, Troisièmes Graduats en Mathématiques et en Informatique, Département des Mathématiques et Informatique, Faculté des Sciences, Université de Kinshasa, 2012 - 2013;

[RI10] M. RIGO: Théorie des Graphes, Deuxièmes bacheliers en sciences mathématiques, Département des Mathématiques, Faculté des Sciences, Université de Liège, 2009 - 2010;

[RWE] I. ROBINSON, J. WEBBER, and EMIL: Graph Databases - The Definitive Book on Graph Databases.

III. ARTICLES, PAPIERS, CONFERENCES

[BA69] C. BACHMAN, «Data Structure Diagrams»,Journal of ACM, SIGBDP Vol. 1, N° 2, pp. 4-10, mars 1969;

[BE06] S. P. BORGATTI and M. G. EVERETT: «A Graph theoretic perspective on centrality. Social Networks», 28(4):466-484, 2006;

[FR79] L. C. FREEMAN: «Centrality in social networks conceptual clarification. Social Networks", 1(3):215-239, 1979;

[FR91] L. C. FREEMAN: «Centrality in valued graphs: A measure of betweenness based on network flow. Social Networks", 13(2):141-154, 1991 ;

[LE14] M. LEONARD : « L'avenir du NoSQL. Quel avenir pour le NoSQL ? , 2014 ;

[RO] M. ROGER : Synthèse d'étude et projets d'interlogiciels. Base NOSQL, IFR IMA ;

[SA] K. SANI : Graph databases : Les bases de données orientées Graphes. Une brève présentation, Etablissement Inter-Etats d'Enseignement Supérieur, Institut Africain d'Informatique ;

[TO12] C. M. TOMBOLA: Construction d'une matrice d'incidence et de la matrice laplacienne : Comment représenter intelligemment un graphe.One pager Laréq, Vol. 4 Num. 005, novembre 2012.

IV. TRAVAILS DE FIN DE CYCLE, MEMOIRES, THESES

[CH10] N.F. CHIKHI : Calcul de centralité et identification de structures de communautés dans les graphes de documents, Thèse de doctorat, spécialité Intelligence Artificielle, Ecole doctorale de Mathématiques Informatique Télécommunications (MITT), Université Toulouse 3 Paul Sabatier, vendredi 17 décembre 2010 ;

[KA13] G. L. KAMINGU: Mise en place d'un système d'information pour la gestion des concours et épreuves spéciales d'entrée. Cas de la Faculté des Sciences de l'Université de Kinshasa,Travail de Fin de Cycle, Département des Mathématiques et Informatique, Faculté des Sciences, Université de Kinshasa, 2012 - 2013;

[KL13] A. KHATIR, I. LABBAS : Conception et réalisation d'un réseau social,Mémoire de Fin d'Etudes Master, Option : Réseaux et systèmes distribués, Département d'informatique, Faculté des Sciences, Université Abou Bakr Belkiad-Tlemcen, 2012 - 2013;

[KO12] E. KOUEDI : Approche de migration d'une base de données relationnelles vers une base de données NoSQL orientée colonne, Mémoire de Master II Recherche, Département d'Informatique, Faculté des Sciences, Université de Yaounde I, Mai 2012 ;

[MA04] F. MATHIEU : Graphe du Web, mesure d'importance à la PageRank, Thèse de doctorat, Spécialité : Informatique, Ecole doctorale d'Information, Structures, Systèmes, Université Montpellier II Sciences et Technique du Languedoc, 2004 ;

[TR13] N. TROTIGNON: Graphes parfaits : structure et algorithmes, Thèse de doctorat, Spécialité : Mathématiques Informatique, Ecole doctorale de Recherche Opérationnelle, Combinatoire et Optimisation, Université Grenoble 1 Joseph Fourrier, 28 septembre 2004.

V. SITES WEB, BLOGS, FORUMS

[Dboo] http://www.d-booker.fr/neo4j-1/156-prise-en-main.html(04/10/2015)

[Gisp] http://gist.neo4j.org(04/10/2015)

[Grap] http://www.graphes.fr/(04/10/2015)

[Img] http://www-img.univ-mlv.fr/~dr/XPOSE2010/Cassandra/modèle.html(08/12/2015)

[Neo] http://www.neo4j.org/(04/10/2015)

[Octo] http://blog.octo.com/author/mdo/ (Bases de données graphes : un tour d'horizon.(04/10/2015)

[Wika] http://wiki.apache.org/couchedb (07/10/2015)

[Wiki1] http://fr.wikipedia.org/Algorithme_de_Dijskstra (18/01/2016)

[Wiki2] http://en.wikipedia.org/wiki/Nosql(18/01/2016)

[Wiki3] http://en.wikipedia.org/wiki/Graph_database(18/01/2016)

[Wiki4] http://en.wikipedia.org/wiki/Document-oriented_database(18/01/2016)

[Wiki5] http://en.wikipedia.org/wiki/Column-oriented_DBMS(18/01/2016)

[Wiki6] http://en.wikipedia.org/wiki/Relational_database(18/01/2016)

TABLE DES MATIERES

Epigraphie ii

In memoriam iii

Remerciements iv

Liste des abréviations utilisées vi

Liste des notations vii

0. INTRODUCTION 1

Chapitre 1: GENERALITES SUR LES BASES DE DONNEES ET LES GRAPHES 3

I.1. BASE DE DONNEES 3

I.1.1. Définition de la base de données 3

I.1.2. Critères d'une base de données 4

I.1.3. Types d'utilisateurs 4

I.4.1. Types de base de données 4

I.1.4.1. Base de données hiérarchique 4

I.1.4.2. Base de données réseau 5

I.4.1.3. Base de données relationnelle 6

I.4.1.4. Base de données orientées-objet 6

I.1.4.5. Base de données orientées-colonne 7

I.1.4.6. Base de données orientées-graphe 7

I.1.4.7. Base de données orientées-clé-valeur 7

I.1.4.8. Base de données orientées-document 7

I.2. GRAPHES 8

I.2.1. Définition d'un graphe 8

I.2.2. Graphe complet 11

I.2.3. Graphe biparti 11

I.2.4. Connexité 13

I.2.5. Distances 15

1.2.6. Graphe planaire 16

I.2.7. Graphe pondéré - Réseau - Réseau de transport 18

I.2.8. Problème de Cheminement optimale 19

1.2.9. Calcul de centralité [CH10] 21

I.3. IMPORTANCE DE LA THEORIE DES GRAPHES EN BASE DE DONNEES 26

CHAPITRE 2 : NOSQL 28

II.1. TERMINOLOGIE 29

II.2. CONCEPTS DE BASE 29

II.2.1. Théorème du CAP (d'Eric Brewer) 29

II.2.2. Principes ACID et BASE 30

II.3. CRITERES DE MIGRATION VERS LE NOSQL 32

II.4. CRITERES DE CHOIX POUR MIEUX CHOISIR LE TYPE DE BASE DE DONNEES [LE14] 33

II.5. DEFIS MAJEURS DES NOSQL [KO12] 35

II.5.1. Maturité et stabilité 36

II.5.2. Assistance et maintenance 36

II.5.3. Outils d'analyse et administration 36

II.5.4 Expertise 37

CHAPITRE 3 : BASE DE DONNEES ORIENTEES-GRAPHE 38

III.1. VUE GLOBALE 38

III.1.1. Définition 38

III.1.2. Puissance des bases de données orientées-graphe 39

III.1.3. Cas d'usage des bases de données orientées-graphe 40

III.2. OUTILS DES BASES DE DONNEES ORIENTEES-GRAPHE 41

III.3. COMPARAISON DE BASE DE DONNEES ORIENTEES-GRAPHE AVEC LES AUTRES BASES DE DONNEES 42

II.3.1. Comparaison avec les bases de données relationnelles 42

II.3.2. Comparaison avec les bases de données réseaux 44

III.4. MODELISATION 46

III.5. SYSTEME DE GESTION DES DONNEES ORIENTEES-GRAPHE : NEO4J 47

III.5.1. Qu'est-ce que Neo4j ? 47

III.5.2. Caractéristiques de Neo4j 47

III.5.3. Installation rapide de Neo4j 47

III.5.4. Lancement de Neo4j 48

III.5.5. Test d'installation de Neo4j 48

CHAPITRE 4 : APPLICATION 49

IV.1. PRESENTATION DE L'APPROCHE 49

IV.1.1. Introduction 49

IV.1.2. Modèle de données source 50

IV.1.3. Modèle de données cible 52

IV.3. TRADUCTION DU MODELE DE DONNEES SOURCE VERS LE MODELE DE DONNEES CIBLES 53

IV.3.1. Traduction des types-entités (ou tables) 53

IV.3.2. Traduction des enregistrements (lignes) d'une table d'entité 54

IV.3.3. Traduction de la table de jointure 54

IV.4. ALGORITHME DE MIGRATION DES DONNEES 56

IV.5. VALIDATION DE L'APPROCHE PAR ETUDE DE CAS 57

IV.5.1. Modélisation relationnelle de la base des données avec le modèle entité-association 57

IV.5.2. Modélisation physique des données 58

IV.5.3. Migration des données relationnelles vers données orientées-graphe 60

IV.5.3. Implémentation de la base de données par l'approche Graphe 61

CONCLUSION 66

BIBLIOGRAPHIE 67

précédent sommaire






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Ceux qui vivent sont ceux qui luttent"   Victor Hugo