![Page 1: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/1.jpg)
Identification des leaders d’opinionen politique,
dans l’écosystème Twitter
NFE204 – CNAMMardi 14 Décembre 2010
Amine BENHAMZA - @aminedigirep
![Page 2: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/2.jpg)
PlanI) Twitter en quelques mots (http://twitter.com)
II) Architecture Logicielle
III) Présentation Neo4j (http://neo4j.org/)– Base de données de Graphes– Ruby Wrapper, Intégration Rails– Ruby Wrapper, Intégration Railshttp://neo4j.rubyforge.org/guides/index.html– Pas de Schéma, ACID – Neoclipse, Gephi
IV) Neo4j en pratique : neo4j.rb– Manipulation des noeuds– Parcours de nœuds– Relation : 1 to n, n to n– Algorithmes de graphes
![Page 3: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/3.jpg)
Twitter : Interface Utilisateur
![Page 4: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/4.jpg)
Twitter : écosystème Françaishttp://quitwitte.fr
![Page 5: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/5.jpg)
Architecture Logicielle
Architecture MVC - Rails
Vue 1 Vue 2 Vue 3
Contraintes recensées
C#1 : Conflit d’accès, Rails vs Crawler
C#2 : Accès limité à ‘150 GET’/HEURE
Neo4j1 ou 2 instances ??
TwitterCrawl (Ruby)
Contrôleur Rails
C#2 : Accès limité à ‘150 GET’/HEURE
C#1C#2
Vue
Modèle
![Page 6: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/6.jpg)
Neo4j : Base de données de Graphes
Neo4j stocke le graphe sous forme de nœuds et de relations
Neo4j est implémenté en Java � manipulation de classes et d’objets
Possibilité d’encapsuler Neo4j dans d’autres langages : Ruby, Python, Clojure, Scala & PHP
Implémentation en cours d’une API REST
Langage de requêtes : SPARQL (RDF), Gremlin (langage orienté Graphes)
![Page 7: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/7.jpg)
Neo4j : Ruby WrapperNeo4j.rb est une BD de graphes en JRUBY, développée par Andreas Ronge,
qui encapsule les libraires Java :I) Neo4j : persistance et parcours dans le grapheII) Apache Lucene : indexer et requêter le graphe
Neo4j.rb est dotée de son propre DSL (Domaine Specific Language) graphe
Neo4j.rb est également intégrée à Rails
![Page 8: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/8.jpg)
Neo4j : No Schéma, ACID
Pas besoin de définir un schéma� le modèle objet défini est stocké dans le
système de fichiers
Neo4j est conforme au principe ACID
![Page 9: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/9.jpg)
Neo4j : Visualisation du grapheNeoclipse, Gephi
Gephi
Neoclipse
Gephi
![Page 10: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/10.jpg)
Neo4j en pratique:Manipulation des noeuds
Créer un nouveau noeudModèle
Lister les nœuds du graphe
Chercher un noeud
Ajouter une relation
![Page 11: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/11.jpg)
Neo4j en pratique:Relations 1 to n, n to n
Acteur RéalisateurFilmA joué dans A dirigé
Rôle
![Page 12: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/12.jpg)
Neo4j en pratique:Parcours des noeuds
![Page 13: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/13.jpg)
Neo4j en pratique:Algorithmes de Graphes
Les algorithmes standards de graphes sont implémentés dans Neo4j et sont repris dans Neo4j.rb
![Page 14: Identification des leaders d’opinion en politique, dans l ...cedric.cnam.fr/~rigaux/docs/benhamza_neo4j.pdf · Neo4j : Base de données de Graphes Neo4j stocke le graphe sous forme](https://reader033.vdocuments.net/reader033/viewer/2022042307/5ed37b61847f87317f77bdb1/html5/thumbnails/14.jpg)
MERCI
Questions / RéponsesQuestions / Réponses