SlideShare une entreprise Scribd logo
git clone https://github.com/LateralThoughts/hands-on-neo4j.git
Pré-requis du jour / RAPPEL
SUPPORT TESTNG IDE
Page de réclame
@fbiville @ogirardot
@LateraIThoughts
mailto:contact@lateral-thoughts.com
Agenda
Conférence
Octobre / http://tinyurl.com/soft-shake-neo4j
Formation
Novembre / http://tinyurl.com/humancoders-neo4j
BBL : où tu veux quand tu veux !
http://www.brownbaglunch.fr/baggers.html#Florent_Biville
Neo4J : mais qu’est-ce que c’est ?
Base de donnée orientée… (vieux barbus n’est pas une bonne réponse)
Base de données orientée graphe !
Flock DB
Graphe ?
des noeuds des relations
Graphe ?
Base de données graphe ?
Base de données graphe ?
Au programme : BIRGGIT !
Au programme : BIRGGIT !
Le 1er gestionnaire de versions sans contenu !
Au programme : BIRGGIT !
Opérations possibles (à la fin de ce hands-on)
● birggit init
● birggit commit
● birggit log
● birggit gc
Exercices
test-driven !
Exercice 1
APIs unitaires : création de noeuds/relations
// création d’un noeud avec label
Node monNoeud = graphDB.createNode(
DynamicLabel.label("SUPER_LABEL")
);
monNoeud.setProperty("hello", "world");
// création d’une relation
Relationship love = monAutreNoeud.createRelationshipTo(
monNoeud,
DynamicRelationshipType.withName("IS_IN_LOVE_WITH")
);
love.setProperty("start", new Date());
Exercice 2
Indexation “legacy”
// retrieve the index manager
IndexManager index = graphDb.index()
// get or create index for nodes
Index<Node> actors = index.forNodes(“mes_noeuds_cheris”)
// or..
index.forRelationshipd(“mes_relations___”)
// then add :
Node reeves = graphDb.createNode();
reeves.setProperty( "name", "Keanu Reeves" );
actors.add( reeves, "name", reeves.getProperty( "name" ));
Exercice 3
BFS DFS
Exercice 3
Exercice 3
// first the import !
import org.neo4j.kernel.Traversal;
// then the real work, with a simple traversal
Node startNode = …
for( Path position : Traversal.description()
.depthFirst() // or not
.evaluator(Traversal.toDepth(...))
.relationships(...)
.traverse(startNode)) { … }
Exercice 4
Pattern matching sur graphe
Exercice 4
Pattern matching sur graphe
Exercice 4
Pattern matching sur graphe - illustration
Exercice 4
Pattern matching sur graphe - illustration
Exercice 4
Pattern matching sur graphe - illustration
Exercice 4
Pattern matching sur graphe - illustration
Exercice 4
Pattern matching sur graphe - syntaxe
Cypher
()-->()
Exercice 4
Pattern matching sur graphe - syntaxe
Cypher
(A)-->(B)
Exercice 4
Pattern matching sur graphe - syntaxe
Cypher
(A)-[:LOVES]->(B)
LOVES
Exercice 4
Pattern matching sur graphe - syntaxe
Cypher
(C)<--(A)-->(B)-->(C)
A-->B-->C,A-->C
Exercice 4
Cypher - lecture
START <lookup>
MATCH <pattern>
RETURN <expression>
MATCH (stephan:DEVOXXIAN)-[:IS_FRIEND_WITH]->(friend:DEVOXXIAN),
(friend)-[:HAS_ATTENDED]->(conf:CONFERENCE)
WHERE conf.name = "Devoxx"
RETURN stephan, COLLECT(friend)
Exercice 4
Cypher - écriture
MATCH <expression>
CREATE <node/rel>
RETURN <expression>
MATCH a:Person, b:Person
WHERE a.name = 'Someone' AND b.name = 'Anyone'
CREATE a-[rel:HATES]->b
RETURN rel
Conclusion
Conclusion
Beaucoup d’autres choses !
● plus de Cypher (avec indexing)
● REST (unmanaged extensions, streaming)
● visualisation
○ auto : http://linkurio.us/, Neoclipse, Gephi
○ custom : d3.js, sigma.js…
● NeoAAS : http://www.graphenedb.com/, Heroku
● divers : backup, batch-import, http://gist.neo4j.org/
Conclusion
Expérimenter
http://console.neo4j.org
Discuter
https://groups.google.com/forum/#!forum/neo4jfr
Partager
http://www.meetup.com/graphdb-france/
Merci / auf wiedersehen !
@fbiville @ogirardot
@LateraIThoughts
mailto:contact@lateral-thoughts.com

Contenu connexe

Similaire à Hands on Neo4J - Duchess France/Zenexity - 25/09/2013

Présentation Groovy
Présentation GroovyPrésentation Groovy
Présentation GroovyJS Bournival
 
Finalement, c’est quoi un système distribué ?
Finalement, c’est quoi un système distribué ?Finalement, c’est quoi un système distribué ?
Finalement, c’est quoi un système distribué ?
Guillaume Arnaud
 
Compte rendu Blend Web Mix 2015
Compte rendu Blend Web Mix 2015Compte rendu Blend Web Mix 2015
Compte rendu Blend Web Mix 2015
SQLI DIGITAL EXPERIENCE
 
ALF 11 - WebAssembly
ALF 11 - WebAssemblyALF 11 - WebAssembly
ALF 11 - WebAssembly
Alexandru Radovici
 
Bootstrap 3
Bootstrap 3Bootstrap 3
Bootstrap 3
Thomas Bodin
 
Tout pour se préparer à PHP 7.4
Tout pour se préparer à PHP 7.4Tout pour se préparer à PHP 7.4
Tout pour se préparer à PHP 7.4
Damien Seguy
 
20111006 bonnes pratiques-gi_g_v1
20111006 bonnes pratiques-gi_g_v120111006 bonnes pratiques-gi_g_v1
20111006 bonnes pratiques-gi_g_v1
Gilles Guirand
 
Design poo togo_jug_final
Design poo togo_jug_finalDesign poo togo_jug_final
Design poo togo_jug_final
Duchess France
 
Design poo togo_jug_final
Design poo togo_jug_finalDesign poo togo_jug_final
Design poo togo_jug_final
agnes_crepet
 
Intégration continue & Qualité logicielle
Intégration continue & Qualité logicielleIntégration continue & Qualité logicielle
Intégration continue & Qualité logicielleDavid Buros
 
Enib cours c.a.i. web - séance #5 - groovy
Enib   cours c.a.i. web - séance #5 - groovyEnib   cours c.a.i. web - séance #5 - groovy
Enib cours c.a.i. web - séance #5 - groovyHoracio Gonzalez
 
ALF 11 - Diagramme de flux de contrôle et WebAssembly
ALF 11 - Diagramme de flux de contrôle et WebAssemblyALF 11 - Diagramme de flux de contrôle et WebAssembly
ALF 11 - Diagramme de flux de contrôle et WebAssembly
Alexandru Radovici
 
ALF 11 - Diagrame de flux de controlle
ALF 11 - Diagrame de flux de controlleALF 11 - Diagrame de flux de controlle
ALF 11 - Diagrame de flux de controlle
Alexandru Radovici
 
Make (et make file) dans le cadre de wordpress
Make (et make file) dans le cadre de wordpressMake (et make file) dans le cadre de wordpress
Make (et make file) dans le cadre de wordpress
Guillaume Richard
 
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -introNosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -introOlivier Mallassi
 
Migration PHP4-PHP5
Migration PHP4-PHP5Migration PHP4-PHP5
Migration PHP4-PHP5
julien pauli
 
Javascript un langage supérieur
Javascript un langage supérieurJavascript un langage supérieur
Javascript un langage supérieurFredy Fadel
 
Au secours, mon chef m'a demandé de passer au DevOps
Au secours, mon chef m'a demandé de passer au DevOpsAu secours, mon chef m'a demandé de passer au DevOps
Au secours, mon chef m'a demandé de passer au DevOps
antony_guilloteau
 
Git merge-rebase
Git merge-rebaseGit merge-rebase
Git merge-rebase
Jean Detoeuf
 
Développement informatique : Gestion de projet, versioning, debugging, testin...
Développement informatique : Gestion de projet, versioning, debugging, testin...Développement informatique : Gestion de projet, versioning, debugging, testin...
Développement informatique : Gestion de projet, versioning, debugging, testin...
ECAM Brussels Engineering School
 

Similaire à Hands on Neo4J - Duchess France/Zenexity - 25/09/2013 (20)

Présentation Groovy
Présentation GroovyPrésentation Groovy
Présentation Groovy
 
Finalement, c’est quoi un système distribué ?
Finalement, c’est quoi un système distribué ?Finalement, c’est quoi un système distribué ?
Finalement, c’est quoi un système distribué ?
 
Compte rendu Blend Web Mix 2015
Compte rendu Blend Web Mix 2015Compte rendu Blend Web Mix 2015
Compte rendu Blend Web Mix 2015
 
ALF 11 - WebAssembly
ALF 11 - WebAssemblyALF 11 - WebAssembly
ALF 11 - WebAssembly
 
Bootstrap 3
Bootstrap 3Bootstrap 3
Bootstrap 3
 
Tout pour se préparer à PHP 7.4
Tout pour se préparer à PHP 7.4Tout pour se préparer à PHP 7.4
Tout pour se préparer à PHP 7.4
 
20111006 bonnes pratiques-gi_g_v1
20111006 bonnes pratiques-gi_g_v120111006 bonnes pratiques-gi_g_v1
20111006 bonnes pratiques-gi_g_v1
 
Design poo togo_jug_final
Design poo togo_jug_finalDesign poo togo_jug_final
Design poo togo_jug_final
 
Design poo togo_jug_final
Design poo togo_jug_finalDesign poo togo_jug_final
Design poo togo_jug_final
 
Intégration continue & Qualité logicielle
Intégration continue & Qualité logicielleIntégration continue & Qualité logicielle
Intégration continue & Qualité logicielle
 
Enib cours c.a.i. web - séance #5 - groovy
Enib   cours c.a.i. web - séance #5 - groovyEnib   cours c.a.i. web - séance #5 - groovy
Enib cours c.a.i. web - séance #5 - groovy
 
ALF 11 - Diagramme de flux de contrôle et WebAssembly
ALF 11 - Diagramme de flux de contrôle et WebAssemblyALF 11 - Diagramme de flux de contrôle et WebAssembly
ALF 11 - Diagramme de flux de contrôle et WebAssembly
 
ALF 11 - Diagrame de flux de controlle
ALF 11 - Diagrame de flux de controlleALF 11 - Diagrame de flux de controlle
ALF 11 - Diagrame de flux de controlle
 
Make (et make file) dans le cadre de wordpress
Make (et make file) dans le cadre de wordpressMake (et make file) dans le cadre de wordpress
Make (et make file) dans le cadre de wordpress
 
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -introNosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
 
Migration PHP4-PHP5
Migration PHP4-PHP5Migration PHP4-PHP5
Migration PHP4-PHP5
 
Javascript un langage supérieur
Javascript un langage supérieurJavascript un langage supérieur
Javascript un langage supérieur
 
Au secours, mon chef m'a demandé de passer au DevOps
Au secours, mon chef m'a demandé de passer au DevOpsAu secours, mon chef m'a demandé de passer au DevOps
Au secours, mon chef m'a demandé de passer au DevOps
 
Git merge-rebase
Git merge-rebaseGit merge-rebase
Git merge-rebase
 
Développement informatique : Gestion de projet, versioning, debugging, testin...
Développement informatique : Gestion de projet, versioning, debugging, testin...Développement informatique : Gestion de projet, versioning, debugging, testin...
Développement informatique : Gestion de projet, versioning, debugging, testin...
 

Dernier

Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
OCTO Technology
 
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
OCTO Technology
 
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Laurent Speyser
 
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'universitéDe l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
Université de Franche-Comté
 
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU  SOUS WINDOWSCOURS D'ADMINISTRATION RESEAU  SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
AlbertSmithTambwe
 
OCTO TALKS : 4 Tech Trends du Software Engineering.pdf
OCTO TALKS : 4 Tech Trends du Software Engineering.pdfOCTO TALKS : 4 Tech Trends du Software Engineering.pdf
OCTO TALKS : 4 Tech Trends du Software Engineering.pdf
OCTO Technology
 
Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024
UNITECBordeaux
 
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptxPRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
AlbertSmithTambwe
 
Les écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptxLes écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptx
abderrahimbourimi
 

Dernier (9)

Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
 
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
 
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
 
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'universitéDe l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
 
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU  SOUS WINDOWSCOURS D'ADMINISTRATION RESEAU  SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
 
OCTO TALKS : 4 Tech Trends du Software Engineering.pdf
OCTO TALKS : 4 Tech Trends du Software Engineering.pdfOCTO TALKS : 4 Tech Trends du Software Engineering.pdf
OCTO TALKS : 4 Tech Trends du Software Engineering.pdf
 
Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024
 
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptxPRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
 
Les écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptxLes écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptx
 

Hands on Neo4J - Duchess France/Zenexity - 25/09/2013