Académique Documents
Professionnel Documents
Culture Documents
Big Data
2015-2016
Par exemple, les relations entre les utilisateurs de Twitter peuvent être
représentées de manière simplifiée par le graphe suivant :
La base de données que nous allons utiliser dans ce TP est Neo4j1. Cette base
utilise le langage Cypher pour représenter les requêtes.
I.2. Exemple
L’exemple que nous allons montrer dans ce manuscrit est tiré du tutorial fourni
par Neo4j dans leur site sur ce lien: http://neo4j.com/graphacademy/online-
course/
1 Neo4J: http://neo4j.com/
Page 2
TP5 : NOSQL Orientées Graphes avec Neo4J
- Les films avec un label :Movie et les propriétés title, released et tagline
- Les personnes avec un label :Person et des propriétés name et born
- Une relation ACTED_IN allant d’un acteur à un film, avec une propriété
roles contenant la liste des noms des caractères
- Une relation DIRECTED allant d’un réalisateur à un film.
Activité 1.
Commencer par installer Neo4J, avec le fichier executable fourni par votre
enseignante. Lancez le sur votre navigateur.
Page 3
TP5 : NOSQL Orientées Graphes avec Neo4J
(m) Films m
( ) Noeud Anonyme
Relations
(a) –[r]-> (m) acteurs ayant une relation r avec des films a m
ACTED_IN
-[:ACTED_IN]-> La relation est de type ACTED_IN
a ACTED_IN m
(a)-[:ACTED_IN]->(m) Les acteurs qui jouent dans un film
Page 4
TP5 : NOSQL Orientées Graphes avec Neo4J
(a {name: "Keanu Reeves", born : 1964}) Acteur avec des propriétés name
et born
ACTED_IN {roles:[“Neo”]}
a m
Person Movie
ACTED_IN
a m
Page 5
TP5 : NOSQL Orientées Graphes avec Neo4J
Pour retourner seulement les nœuds connectés par une relation de type
REL_TYPE :
Si la relation en question comporte des propriétés qu’on désire lire, lui donner
un nom (ici rel) :
Page 6
TP5 : NOSQL Orientées Graphes avec Neo4J
La requête permettant de trouver tous les caractères du film The Matrix est la
suivante :
Un autre moyen est également possible pour filtrer les données (à la place du
traditionnel WHERE), et ce remplaçant la requête précédente par :
Page 7
TP5 : NOSQL Orientées Graphes avec Neo4J
Exemple : Pour afficher tous les acteurs et réalisateurs de tous les films :
Ou bien :
Il est possible de retourner le chemin entier, avec toutes les propriétés de tous
les nœuds et relations concernés :
Page 8
TP5 : NOSQL Orientées Graphes avec Neo4J
Page 9
TP5 : NOSQL Orientées Graphes avec Neo4J
Page 10