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 |
III.4. MODELISATIONUn dernier point particulièrement important en faveur d'une base de données orientées-graphe réside dans la facilité de modélisation des données. Ensuite, une fois qu'on a choisi un système de stockage, il est temps de faire rentrer notre modèle de données dedans. Si nous choisissons une base de données relationnelle, on commence généralement par normaliser notre modèle afin de bien se conformer à la 3ème forme normale, et ça pourrait donner quelque chose comme ça : Figure 3.6. Modèle relationnel Alors que si on choisit de modéliser nos données dans une base de données graphes, ça pourrait naïvement donner ceci : Figure 3.7. Modèle graphe La modélisation de données sous forme de graphes est naturelle, et comporte donc l'avantage non négligeable d'être lisible, même sans background technique. Cet exemple reste néanmoins très simpliste, et de même qu'un modèle relationnel normalisé est parfois dénormalisé pour des raisons de performances, certaines optimisations moins lisibles à « l'oeil nu » de la modélisation du graphe peuvent être nécessaires. III.5. SYSTEME DE GESTION DES DONNEES ORIENTEES-GRAPHE : NEO4JIII.5.1. Qu'est-ce que Neo4j ?C'est un système de gestion de bases de données NoSQL orienté- graphe édité par la société NeoTechnology. Ce logiciel permet de représenter les données connectées naturellement, en tant qu'objets reliés par un ensemble de relations, chacun possédant ses propres propriétés. III.5.2. Caractéristiques de Neo4j· Neo4j est un SGBD à code source libre (open source); · Neo4j utilise des transactions ACID (Atomiques, Cohérentes, Isolées, Durables) ; · Neo4j est un SGBD écrit en Java et nécessite donc l'emploi d'une machine virtuelle Java (JVM : Java Virtual Machine, version?1.7 obligatoire à partir de Neo4j 2.0) ; · Le serveur d'application proposé par défaut est Jetty. Toutefois, Neo4j n'a pas été écrit pour Java son utilisation au travers de l'API REST n'est pas triviale mais réellement pensée en ce sens. Le moteur d'indexation utilisé par défaut est Lucène mais cette technologie reste transparente du point de vue de l'utilisateur ; · Neo4j est capable de manipuler d'énormes quantités de données en un temps record, et ses limites sont sans cesse repoussées. En outre, il peut être intégré dans une grappe de serveurs (cluster) pour en augmenter les performances ainsi que la disponibilité (HA : High Availability) ; · Les systèmes d'exploitation qui sont concernés par ce SGBD sont le Windows, le Linux et le Mac OS X. |
|