intro to neo4j - nicole white
DESCRIPTION
An introduction to graph databases and Neo4j.TRANSCRIPT
![Page 1: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/1.jpg)
Intro to Neo4jby Nicole White
Data Scientist at Neo4j @_nicolemargaret
![Page 2: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/2.jpg)
Agenda
What is a Graph?
What is
Neo4j?
Data Modeling
Cypher
Query Langu
age
Neo4j Brows
er Demo
Next
Steps
![Page 3: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/3.jpg)
What is a Graph?
![Page 4: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/4.jpg)
Are These Graphs?
Category 1 Category 2 Category 3 Category 40
1
2
3
4
5
6
Series 1 Series 2 Series 3
Category 1 Category 2 Category 3 Category 40
2
4
6
8
10
12
14
Series 1 Series 2 Series 3
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
![Page 5: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/5.jpg)
This is a Graph
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
Node
Relationship
![Page 6: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/6.jpg)
Twitter Social Graph
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
![Page 7: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/7.jpg)
Internet Graph
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
![Page 8: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/8.jpg)
What is Neo4j?
![Page 9: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/9.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
![Page 10: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/10.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
![Page 11: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/11.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
language:’Swedish’
open_source:true
year:2007
The Property Graph
![Page 12: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/12.jpg)
Neo4j
Recommendations
eHarmony
Glassdoor
Logistics
eBay
shutl
Content Management
OneFineStay
Lufthansa
Customers
neo4j.com/customers
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
![Page 13: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/13.jpg)
Data Modeling
![Page 14: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/14.jpg)
A Journey from SQL to Graph
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
![Page 15: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/15.jpg)
Example: YouTube in SQL
ID Name
1 Alice
2 Bob
3 Charles
4 David
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
ID Name
1 Bob’s Gaming Channel
2 Bob’s Cute Dog
3 Cooking with Charles
4 David’s How-To Channel
5 Disco Dancing with David
User ID Channel ID
2 1
2 2
3 3
4 4
4 5
USERS
CHANNELSUSERS_CHANNELS
User ID Channel ID
1 3
1 4
2 3
2 5
3 1
USERS_SUBSCRIPTIONS
![Page 16: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/16.jpg)
Example: YouTube in a Graph
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
![Page 17: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/17.jpg)
Cypher Query Language
![Page 18: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/18.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
MATCH (n)RETURN n;
![Page 19: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/19.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
MATCH (u:User)RETURN u;
![Page 20: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/20.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
MATCH (c:Channel)RETURN c;
![Page 21: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/21.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
MATCH (bob:User {name:’Bob’})RETURN bob;
![Page 22: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/22.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
MATCH (u:User)-[r]->(c:Channel)RETURN u, r, c;
![Page 23: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/23.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
MATCH (u:User)-[r:OPERATES]->(c:Channel)RETURN u, r, c;
![Page 24: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/24.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
MATCH p=(:User)-[:OPERATES]->(:Channel)RETURN p;
![Page 25: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/25.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
MATCH p=(:User {name:’Bob’})-[:OPERATES]->(:Channel)<-[:SUBSCRIBED]-(:User)RETURN p;
![Page 26: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/26.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
MATCH (u:User)-[r]->(c:Channel)RETURN u.name, TYPE(r), c.name;
![Page 27: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/27.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
MATCH (:User {name:’Bob’})-[:OPERATES]->(c:Channel)RETURN COUNT(c);
![Page 28: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/28.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
MATCH (u:User)-[:OPERATES]->(c:Channel)RETURN u.name, COUNT(c) AS channelsORDER BY channels DESC;
![Page 29: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/29.jpg)
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
name:’Alice’
name:’Bob’
name:’Charles’
name:’David’
name:’Cooking with Charles’
name:’David’s How-To Channel’
name:’Disco Dancing with David’
name:’Bob’s Gaming Channel’
name:’Bob’s Cute Dog’User
Channel
OPERATES
OPERATES
OPERATES
OPERATES
OPERATES
SUBSCRIBEDSUBSCRIBED
SUBSCRIBED
SUBS
CRIB
ED
SUBSCRIBED
MATCH p=(:User {name:'Charles'})-[*1..4]-(:User {name:'David'})RETURN pLIMIT 1;
![Page 30: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/30.jpg)
Uniqueness Constraints
CREATE CONSTRAINT ON (u:User) ASSERT u.name IS UNIQUE;
CREATE CONSTRAINT ON (c:Channel) ASSERT c.name IS UNIQUE;
![Page 31: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/31.jpg)
Download the Cypher Refcard
bit.ly/cypher-refcard
![Page 32: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/32.jpg)
Neo4j Browser Demo
![Page 33: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/33.jpg)
Next Steps
![Page 34: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/34.jpg)
Download Neo4j
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
neo4j.com
![Page 35: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/35.jpg)
Choose a Driverneo4j.com/contrib
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
![Page 36: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/36.jpg)
Join the Community
bit.ly/neo4j-google
@neo4j
#neo4j
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
neo4j.meetup.com
![Page 37: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/37.jpg)
Come to the RNeo4j Meetup
• Tuesday, September 9th, 2014• 6:00-7:30PM• In this room• bit.ly/graphs-r-cool
What is a Graph? What is Neo4j? Data Modeling Cypher Query Language Neo4j Browser Demo Next Steps
![Page 38: Intro to Neo4j - Nicole White](https://reader033.vdocuments.site/reader033/viewer/2022051314/54b6b7914a79595f598b45b4/html5/thumbnails/38.jpg)
October 22, 2014SF JazzInnovate. Share. Connect.
Register @ graphconnect.com
Discount for Meetup attendees:SFLOCAL200