SlideShare una empresa de Scribd logo
1 de 23
Neo4j Graph DB Intro &  Neo4j DB Fosdem 2011 #neo4j @neo4j [email_address] Jordi Valverde Eclipsi Networks
GraphDB evolution Information connectivity 1990 2000 2010 2020 Text documents Ontologies RDF Folksonomies Tagging User-generated content Wikis RSS Blogs Hypertext Neo4j
The property graph model ,[object Object]
Relationships between nodes
Properties on both ,[object Object],[object Object],name = “Jordi” age = 29 type = KNOWS time = 4 years type = car vendor = “Honda” model = “Civic” 1 2 3
Querying Neo4j? (1) GraphDatabaseService graphDb = ...  // Get factory // Create Jordi Node jordi = graphDb.createNode(); jordi.setProperty(  "name" ,  "Jordi"  ); jordi.setProperty(  "age" , 29 ); // Create Car Node car = graphDb.createNode(); car.setProperty(  "name" ,  "Car"  ); car.setProperty(  "vendor" ,  "Honda"  ); car.setProperty(  "model" ,  "Civic"  ); // Create a relationship representing that relationate each element jordi.createRelationshipTo( car, RelTypes. KNOWS  );
Social data  (customer: brand-name social network) 1 3 13 KNOWS KNOWS 7 2 KNOWS KNOWS KNOWS 42 KNOWS name = “Mike” age = 29 disclosure = public name = “Charlie” last_name = “Runkle” name = “Dani” last_name = “California” age = 27 name = “Hank” last_name = “Moody” age = 42 age = 3 days name = “Karen” name = “Marcy Runkle”
Just a social graph?
Spatial data  (customer: large telecom company) 1 3 13 ROAD ROOOAD 7 2 ROAD ROAD ROAD 42 ROAD name = “Omni Hotel” lat = 3492848 long = 283823423 length = 7 miles name = ... lat, long = ... name = “Swedland” lat = 23410349 long = 2342348852 name = “The Tavern” lat = 1295238237 long = 234823492 length = 3 miles name = ... name = ...
Social? Spatial? … Social AND spatial!
Social AND spatial data 1 3 13 LIKES SIBLING 7 2 ROAD ROAD ROAD 42 KNOWS name = “Omni Hotel” lat = 3492848 long = 283823423 weight = 10 name = “Pere” beer_qual = expert name = “Maria” age = 30 beer_qual = non-existant name = “The Tavern” lat = 1295238237 long = 234823492 length = 3 miles name = ... name = “Jordi”
Financial data  (customer: international bank) 1 3 13 TRANSFER WITHDRAW 7 2 OWNS DEPOSIT TRANSFER 42 WITHDRAW name = “Mr Godfather” karma = veeeery-low cash = more-than-you amount = $1000 name = “Emil” cash = always-too-li'l title = “ATM @ Wall St” id = 230918484233 cash_left = 384204 name = “The Tavern” lat = 1295238237 long = 234823492 amount = $1000 name = ... name = ...
Computational Genomics?   (customer: no idea!) 1 3 13 NEXT NEXT 7 2 NUCLEOTIDES FAMILY RELATED 42 START type = “Protein” ID=”SACE0A01650p” name = “T” name = “G” name = “A” name = GL3C2479 name = ...
Computational Genomics?   (customer: no idea!) 1 3 13 NEXT NEXT 7 2 NUCLEOTIDES FAMILY RELATED 42 START type = “Protein” ID=”SACE0A01650p” name = “T” name = “G” name = “A” name = GL3C2479 name = ...
[object Object]
Starting point by searching ,[object Object],[object Object],Querying Neo4j? (II)
[object Object],Neo4j components
Why graph databases? ,[object Object]
Some examples...
Routing
Visualization - Gephi
Visualization - iGraph
[object Object]

Más contenido relacionado

La actualidad más candente

Graph All the Things: An Introduction to Graph Databases
Graph All the Things: An Introduction to Graph DatabasesGraph All the Things: An Introduction to Graph Databases
Graph All the Things: An Introduction to Graph Databases
Neo4j
 
Intro to Graphs and Neo4j
Intro to Graphs and Neo4jIntro to Graphs and Neo4j
Intro to Graphs and Neo4j
jexp
 
Challenges in the Design of a Graph Database Benchmark
Challenges in the Design of a Graph Database Benchmark Challenges in the Design of a Graph Database Benchmark
Challenges in the Design of a Graph Database Benchmark
graphdevroom
 

La actualidad más candente (20)

Neo4j Introduction (Basics, Cypher, RDBMS to GRAPH)
Neo4j Introduction (Basics, Cypher, RDBMS to GRAPH) Neo4j Introduction (Basics, Cypher, RDBMS to GRAPH)
Neo4j Introduction (Basics, Cypher, RDBMS to GRAPH)
 
Data Modeling with Neo4j
Data Modeling with Neo4jData Modeling with Neo4j
Data Modeling with Neo4j
 
Graph All the Things: An Introduction to Graph Databases
Graph All the Things: An Introduction to Graph DatabasesGraph All the Things: An Introduction to Graph Databases
Graph All the Things: An Introduction to Graph Databases
 
Django and Neo4j - Domain modeling that kicks ass
Django and Neo4j - Domain modeling that kicks assDjango and Neo4j - Domain modeling that kicks ass
Django and Neo4j - Domain modeling that kicks ass
 
Graph database Use Cases
Graph database Use CasesGraph database Use Cases
Graph database Use Cases
 
Intro to Neo4j presentation
Intro to Neo4j presentationIntro to Neo4j presentation
Intro to Neo4j presentation
 
Hadoop and Neo4j: A Winning Combination for Bioinformatics
Hadoop and Neo4j: A Winning Combination for BioinformaticsHadoop and Neo4j: A Winning Combination for Bioinformatics
Hadoop and Neo4j: A Winning Combination for Bioinformatics
 
Introduction to graph databases, Neo4j and Spring Data - English 2015 Edition
Introduction to graph databases, Neo4j and Spring Data - English 2015 EditionIntroduction to graph databases, Neo4j and Spring Data - English 2015 Edition
Introduction to graph databases, Neo4j and Spring Data - English 2015 Edition
 
Intro to Graphs and Neo4j
Intro to Graphs and Neo4jIntro to Graphs and Neo4j
Intro to Graphs and Neo4j
 
Neo4j And The Benefits Of Graph Dbs 3
Neo4j And The Benefits Of Graph Dbs 3Neo4j And The Benefits Of Graph Dbs 3
Neo4j And The Benefits Of Graph Dbs 3
 
Neo4j MySql MS-SQL comparison
Neo4j MySql MS-SQL comparisonNeo4j MySql MS-SQL comparison
Neo4j MySql MS-SQL comparison
 
Graph database & neo4j
Graph database & neo4jGraph database & neo4j
Graph database & neo4j
 
NOSQLEU - Graph Databases and Neo4j
NOSQLEU - Graph Databases and Neo4jNOSQLEU - Graph Databases and Neo4j
NOSQLEU - Graph Databases and Neo4j
 
Family tree of data – provenance and neo4j
Family tree of data – provenance and neo4jFamily tree of data – provenance and neo4j
Family tree of data – provenance and neo4j
 
Challenges in the Design of a Graph Database Benchmark
Challenges in the Design of a Graph Database Benchmark Challenges in the Design of a Graph Database Benchmark
Challenges in the Design of a Graph Database Benchmark
 
An Introduction to NOSQL, Graph Databases and Neo4j
An Introduction to NOSQL, Graph Databases and Neo4jAn Introduction to NOSQL, Graph Databases and Neo4j
An Introduction to NOSQL, Graph Databases and Neo4j
 
Performance neo4j-versus (2)
Performance neo4j-versus (2)Performance neo4j-versus (2)
Performance neo4j-versus (2)
 
Designing and Building a Graph Database Application – Architectural Choices, ...
Designing and Building a Graph Database Application – Architectural Choices, ...Designing and Building a Graph Database Application – Architectural Choices, ...
Designing and Building a Graph Database Application – Architectural Choices, ...
 
Bigdata and ai in p2 p industry: Knowledge graph and inference
Bigdata and ai in p2 p industry:  Knowledge graph and inferenceBigdata and ai in p2 p industry:  Knowledge graph and inference
Bigdata and ai in p2 p industry: Knowledge graph and inference
 
Introduction to Graph databases and Neo4j (by Stefan Armbruster)
Introduction to Graph databases and Neo4j (by Stefan Armbruster)Introduction to Graph databases and Neo4j (by Stefan Armbruster)
Introduction to Graph databases and Neo4j (by Stefan Armbruster)
 

Similar a Lighting talk neo4j fosdem 2011

Application Modeling with Graph Databases
Application Modeling with Graph DatabasesApplication Modeling with Graph Databases
Application Modeling with Graph Databases
Josh Adell
 
NoSQL Search Roadshow Zurich 2013 - Polyglot persistence with no sql
NoSQL Search Roadshow Zurich 2013 - Polyglot persistence with no sqlNoSQL Search Roadshow Zurich 2013 - Polyglot persistence with no sql
NoSQL Search Roadshow Zurich 2013 - Polyglot persistence with no sql
Michael Lehmann
 

Similar a Lighting talk neo4j fosdem 2011 (20)

Where are yours vertexes and what are they talking about?
Where are yours vertexes and what are they talking about?Where are yours vertexes and what are they talking about?
Where are yours vertexes and what are they talking about?
 
HBaseCon 2015: S2Graph - A Large-scale Graph Database with HBase
HBaseCon 2015: S2Graph - A Large-scale Graph Database with HBaseHBaseCon 2015: S2Graph - A Large-scale Graph Database with HBase
HBaseCon 2015: S2Graph - A Large-scale Graph Database with HBase
 
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
 
Tips And Tricks For Bioinformatics Software Engineering
Tips And Tricks For Bioinformatics Software EngineeringTips And Tricks For Bioinformatics Software Engineering
Tips And Tricks For Bioinformatics Software Engineering
 
PGQL: A Language for Graphs
PGQL: A Language for GraphsPGQL: A Language for Graphs
PGQL: A Language for Graphs
 
NoSQL Introduction
NoSQL IntroductionNoSQL Introduction
NoSQL Introduction
 
NoSQL Introduction
NoSQL IntroductionNoSQL Introduction
NoSQL Introduction
 
Visualize open data with Plone - eea.daviz PLOG 2013
Visualize open data with Plone - eea.daviz PLOG 2013Visualize open data with Plone - eea.daviz PLOG 2013
Visualize open data with Plone - eea.daviz PLOG 2013
 
Neo4j Morpheus: Interweaving Table and Graph Data with SQL and Cypher in Apac...
Neo4j Morpheus: Interweaving Table and Graph Data with SQL and Cypher in Apac...Neo4j Morpheus: Interweaving Table and Graph Data with SQL and Cypher in Apac...
Neo4j Morpheus: Interweaving Table and Graph Data with SQL and Cypher in Apac...
 
Schema management with Scalameta
Schema management with ScalametaSchema management with Scalameta
Schema management with Scalameta
 
Application Modeling with Graph Databases
Application Modeling with Graph DatabasesApplication Modeling with Graph Databases
Application Modeling with Graph Databases
 
Multiplatform Spark solution for Graph datasources by Javier Dominguez
Multiplatform Spark solution for Graph datasources by Javier DominguezMultiplatform Spark solution for Graph datasources by Javier Dominguez
Multiplatform Spark solution for Graph datasources by Javier Dominguez
 
Performance #5 cpu and battery
Performance #5  cpu and batteryPerformance #5  cpu and battery
Performance #5 cpu and battery
 
OrientDB - The 2nd generation of (multi-model) NoSQL
OrientDB - The 2nd generation of  (multi-model) NoSQLOrientDB - The 2nd generation of  (multi-model) NoSQL
OrientDB - The 2nd generation of (multi-model) NoSQL
 
XConf 2022 - Code As Data: How data insights on legacy codebases can fill the...
XConf 2022 - Code As Data: How data insights on legacy codebases can fill the...XConf 2022 - Code As Data: How data insights on legacy codebases can fill the...
XConf 2022 - Code As Data: How data insights on legacy codebases can fill the...
 
NoSQL Search Roadshow Zurich 2013 - Polyglot persistence with no sql
NoSQL Search Roadshow Zurich 2013 - Polyglot persistence with no sqlNoSQL Search Roadshow Zurich 2013 - Polyglot persistence with no sql
NoSQL Search Roadshow Zurich 2013 - Polyglot persistence with no sql
 
Map, flatmap and reduce are your new best friends (javaone, svcc)
Map, flatmap and reduce are your new best friends (javaone, svcc)Map, flatmap and reduce are your new best friends (javaone, svcc)
Map, flatmap and reduce are your new best friends (javaone, svcc)
 
Extreme Swift
Extreme SwiftExtreme Swift
Extreme Swift
 
An introduction to CouchDB
An introduction to CouchDBAn introduction to CouchDB
An introduction to CouchDB
 
Kotlin+MicroProfile: Enseñando trucos de 20 años a un nuevo lenguaje
Kotlin+MicroProfile: Enseñando trucos de 20 años a un nuevo lenguajeKotlin+MicroProfile: Enseñando trucos de 20 años a un nuevo lenguaje
Kotlin+MicroProfile: Enseñando trucos de 20 años a un nuevo lenguaje
 

Último

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Último (20)

Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 

Lighting talk neo4j fosdem 2011

  • 1. Neo4j Graph DB Intro & Neo4j DB Fosdem 2011 #neo4j @neo4j [email_address] Jordi Valverde Eclipsi Networks
  • 2. GraphDB evolution Information connectivity 1990 2000 2010 2020 Text documents Ontologies RDF Folksonomies Tagging User-generated content Wikis RSS Blogs Hypertext Neo4j
  • 3.
  • 5.
  • 6. Querying Neo4j? (1) GraphDatabaseService graphDb = ... // Get factory // Create Jordi Node jordi = graphDb.createNode(); jordi.setProperty( "name" , "Jordi" ); jordi.setProperty( "age" , 29 ); // Create Car Node car = graphDb.createNode(); car.setProperty( "name" , "Car" ); car.setProperty( "vendor" , "Honda" ); car.setProperty( "model" , "Civic" ); // Create a relationship representing that relationate each element jordi.createRelationshipTo( car, RelTypes. KNOWS );
  • 7. Social data (customer: brand-name social network) 1 3 13 KNOWS KNOWS 7 2 KNOWS KNOWS KNOWS 42 KNOWS name = “Mike” age = 29 disclosure = public name = “Charlie” last_name = “Runkle” name = “Dani” last_name = “California” age = 27 name = “Hank” last_name = “Moody” age = 42 age = 3 days name = “Karen” name = “Marcy Runkle”
  • 8. Just a social graph?
  • 9. Spatial data (customer: large telecom company) 1 3 13 ROAD ROOOAD 7 2 ROAD ROAD ROAD 42 ROAD name = “Omni Hotel” lat = 3492848 long = 283823423 length = 7 miles name = ... lat, long = ... name = “Swedland” lat = 23410349 long = 2342348852 name = “The Tavern” lat = 1295238237 long = 234823492 length = 3 miles name = ... name = ...
  • 10. Social? Spatial? … Social AND spatial!
  • 11. Social AND spatial data 1 3 13 LIKES SIBLING 7 2 ROAD ROAD ROAD 42 KNOWS name = “Omni Hotel” lat = 3492848 long = 283823423 weight = 10 name = “Pere” beer_qual = expert name = “Maria” age = 30 beer_qual = non-existant name = “The Tavern” lat = 1295238237 long = 234823492 length = 3 miles name = ... name = “Jordi”
  • 12. Financial data (customer: international bank) 1 3 13 TRANSFER WITHDRAW 7 2 OWNS DEPOSIT TRANSFER 42 WITHDRAW name = “Mr Godfather” karma = veeeery-low cash = more-than-you amount = $1000 name = “Emil” cash = always-too-li'l title = “ATM @ Wall St” id = 230918484233 cash_left = 384204 name = “The Tavern” lat = 1295238237 long = 234823492 amount = $1000 name = ... name = ...
  • 13. Computational Genomics? (customer: no idea!) 1 3 13 NEXT NEXT 7 2 NUCLEOTIDES FAMILY RELATED 42 START type = “Protein” ID=”SACE0A01650p” name = “T” name = “G” name = “A” name = GL3C2479 name = ...
  • 14. Computational Genomics? (customer: no idea!) 1 3 13 NEXT NEXT 7 2 NUCLEOTIDES FAMILY RELATED 42 START type = “Protein” ID=”SACE0A01650p” name = “T” name = “G” name = “A” name = GL3C2479 name = ...
  • 15.
  • 16.
  • 17.
  • 18.
  • 23.
  • 25. Mature: lots of production deployments
  • 26. Scalable: High Availability, Master failover
  • 27. Community: ecosystem of tools, bindings, frameworks
  • 28.
  • 29.
  • 30.
  • 31.
  • 32. http://slidesha.re/ftBtb2 Pablo Delgado (ruby on rails and neo4j) Conferencia RoR Madrid
  • 33. http://slidesha.re/heSxmm Pere Urbon (fast peak on graphdb) Barcelona on rails meeting More Info?

Notas del editor

  1. EE
  2. EE
  3. EE
  4. EE
  5. EE
  6. EE
  7. EE
  8. EE
  9. EE