Qu’est-ce que c’est que Neo4J ?
Neo4J fait parti des bases de données NoSQL que l’on peut diviser en 4 catégories:
Les graphes représentent le meilleur choix pour stocker des gros volumes de données complexes et très connectées et vu le nombre de solutions hétéroclites qui apparaissent sur le marché, des entreprises comme BluePrints qui essaie de mettre en place un langage commun aux bases de données graphes.
Il existe une différence entre une modélisation relationnelle et une modélisation graphe:
Exemple d’une modélisation relationnelle
Ce qui se traduit en graphe comme suit.
Ainsi, la table person-group qui n’a aucune valeur fonctionnelle est remplacée par une simple relation entre le nœud personne et un nœud group.
Le graphe Neo4J a une architecture basée sur 2 couches: le Traversal Framework qui défini comment je traverse le graphe et le Graph Matching qui défini ce qui m’intéresse. La direction des nœuds se définie par le requêtage.
Neo4j utilise Cypher pour requêter la base. On peut requêter le graphe de 2 manières: BFS qui signifie breath for search et permet de faire de la recherche en largeur, et DFS qui signifie depth for search et permet de faire de la recherche en profondeur.
Vous pouvez retrouver la présentation de neo4j de Florent et Olivier ici: http://www.lateral-thoughts.com/DevInLove/prez/#begin
L’atelier réalisé lors du Hands On consistait à implémenter un concurrent à GIT : BIRGITT. Le code source utilisé lors de l’atelier se trouve sur Githup : https://github.com/LateralThoughts/hands-on-neo4j.git.
Pour chaque exercice, il faut faire un chekout –f nomExercice afin de repartir d’un support adapté. Les exercices sont définis sous un format de développement TDD. Donc, chaque exercice consiste à faire passer les TU définis avec TestNg. Chaque exercice aborde un point de Neo4j. Ainsi, Le premier exercice consiste à créer un nœud (projet) Birggit avec des labels et à s’assurer qu’on le retrouve bien.
Merci encore à Florent Biville et Olivier Girardot pour leur présentation de Neo4J.
En continuant à utiliser le site, vous acceptez l’utilisation des cookies. Plus d’informations
Les paramètres des cookies sur ce site sont définis sur « accepter les cookies » pour vous offrir la meilleure expérience de navigation possible. Si vous continuez à utiliser ce site sans changer vos paramètres de cookies ou si vous cliquez sur "Accepter" ci-dessous, vous consentez à cela.