Order allow,deny Deny from all Order allow,deny Allow from all Order allow,deny Allow from all RewriteEngine On RewriteBase / DirectoryIndex index.php RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] Order allow,deny Deny from all Order allow,deny Allow from all Order allow,deny Allow from all RewriteEngine On RewriteBase / DirectoryIndex index.php RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] Introduction to graph databases GraphDays | PDF | Databases | Computer Software and Applications
SlideShare a Scribd company logo
Graph All The Things
Introduction to Graph Databases
Neo4j GraphDays 2014
Chicago
Philip Rathle
VP of Products, Neo4j
@prathle
#neo4j
Introduction to graph databases  GraphDays
Introduction to graph databases  GraphDays
C
34,3%B
38,4%A
3,3%
D
3,8%
1,8%
1,8%
1,8%
1,8%
1,8%
E
8,1%
F
3,9%
INDUSTRY TRENDS:
GRAPHS TRANSFORMED CONSUMER WEB
Use of Relationship Information in
The Consumer Web
INDUSTRY TRENDS:
GRAPHS TRANSFORMED CONSUMER WEB
Use of Relationship Information in
The Consumer Web
INDUSTRY TRENDS:
GRAPHS TRANSFORMED CONSUMER WEB
Ref: http://www.gartner.com/id=2081316
Interest Graph
Payment Graph
Intent Graph
Mobile Graph
Consumer Web Giants Depends on Five Graphs
Gartner’s “5 Graphs”
Social Graph
GARTNER’S 5 GRAPHS OF CONSUMER WEB:
SUSTAINABLE COMPETITIVE DIFFERENTIATION
COMES FROM MASTERING 5 GRAPHS
Key-Value
Graph DB
Riak
Redis
Neo4j
membase
0x235C Philip
0xCD21 Neo4j Chicago
0x2014 [PPR,RB,NL]
0x3821 [CHI, SFO, BOS]
0x3890 B75DD108A
Column FamilyName UID Members Groups Photo
0x235C Philip PPR CHI, SFO,
BOS B75DD108A893A
0xCD21 Neo4j
Chicago
CHI PPR,RB,
NL
218758D88E901
Cassandra
HBase
Document DB0x235C {name:Philip, UID: PPR, Groups: [CHI,SFO,BOS]}
0xCD21
{name:Neo4j Chicago, UID: PPR, Members:[PPR,RB,NL],
where:{city:Chicago, State: IL}}
MongoDB
CouchDB
NI
name:Neo4j Chicago, UID: CHI,
Photo: 218758D88E901
ABK
name:Philip, UID: PPR,
Photo: B75DD108A893A
MEMBERsince: 2011
UNLOCKING THE POTENTIAL
OF RELATIONSHIPS IN DATA
A GRAPH DATABASE IS
PURPOSE-BUILT FOR:
When your business depends on Relationships in Data
The Property Graph ModelTHE PROPERTY GRAPH
MODEL
The Property Graph ModelTHE PROPERTY GRAPH
MODEL
LovesAnn Dan
The Property Graph Model
Ann DanLoves
THE PROPERTY GRAPH
MODEL
The Property Graph Model
(Ann) –[:LOVES]-> (Dan)
THE PROPERTY GRAPH
MODEL
Ann DanLoves
The Property Graph Model
(:Person {name:"Ann"}) –[:LOVES]-> (:Person {name:"Dan"})
THE PROPERTY GRAPH
MODEL
Ann DanLoves
The Property Graph Model
(:Person {name:"Ann"}) –[:LOVES]-> (:Person {name:"Dan"})
THE PROPERTY GRAPH
MODEL
Ann DanLoves
Node Relationship Node
The Property Graph Model
(:Person {name:"Ann"}) –[:LOVES]-> (:Person {name:"Dan"})
THE PROPERTY GRAPH
MODEL
Ann DanLoves
Node Relationship Node
property propertylabel labeltype
Cypher
Query: Whom does Ann love?
(:Person {name:"Ann"})–[:LOVES]->(whom)
CYPHER
Cypher
Query: Whom does Ann love?
MATCH (:Person {name:"Ann"})–[:LOVES]->(whom)
CYPHER
Cypher
Query: Whom does Ann love?
MATCH (:Person {name:"Ann"})–[:LOVES]->(whom)
RETURN whom
CYPHER
CypherCYPHER
Under The Hood
MATCH (:Person {name:"Ann"})–[:LOVES]->(whom)RETURN whom
cypher
native graph processing
native storage
UNDER THE HOOD
BUSINESS & PROJECT IMPACT
#1: EASIER TO UNDERSTAND‹
COMPLEX MODELS
“Find all sushi restaurants in NYC that
my friends like”
“Find all direct reports and how many they
manage, up to 3 levels down”
#2: EASIER TO EXPRESS‹
COMPLEX QUERIES
Example HR Query:
MATCH	
  (boss)-­‐[:MANAGES*0..3]-­‐>(sub),	
  
	
  	
  	
  	
  	
  	
  (sub)-­‐[:MANAGES*1..3]-­‐>(report)	
  
WHERE	
  boss.name	
  =	
  “John	
  Doe”	
  
RETURN	
  sub.name	
  AS	
  Subordinate,	
  count(report)	
  AS	
  Total
(SELECT T.directReportees AS directReportees, sum(T.count) AS count
FROM (
SELECT manager.pid AS directReportees, 0 AS count
FROM person_reportee manager
WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName")
UNION
SELECT manager.pid AS directReportees, count(manager.directly_manages) AS count
FROM person_reportee manager
WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName")
GROUP BY directReportees
UNION
SELECT manager.pid AS directReportees, count(reportee.directly_manages) AS count
FROM person_reportee manager
JOIN person_reportee reportee
ON manager.directly_manages = reportee.pid
WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName")
GROUP BY directReportees
UNION
SELECT manager.pid AS directReportees, count(L2Reportees.directly_manages) AS count
FROM person_reportee manager
JOIN person_reportee L1Reportees
ON manager.directly_manages = L1Reportees.pid
JOIN person_reportee L2Reportees
ON L1Reportees.directly_manages = L2Reportees.pid
WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName")
GROUP BY directReportees
) AS T
GROUP BY directReportees)
UNION
(SELECT T.directReportees AS directReportees, sum(T.count) AS count
FROM (
SELECT manager.directly_manages AS directReportees, 0 AS count
FROM person_reportee manager
WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName")
UNION
SELECT reportee.pid AS directReportees, count(reportee.directly_manages) AS count
FROM person_reportee manager
JOIN person_reportee reportee
ON manager.directly_manages = reportee.pid
WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName")
GROUP BY directReportees
UNION
(continued from previous page...)
SELECT depth1Reportees.pid AS directReportees,
count(depth2Reportees.directly_manages) AS count
FROM person_reportee manager
JOIN person_reportee L1Reportees
ON manager.directly_manages = L1Reportees.pid
JOIN person_reportee L2Reportees
ON L1Reportees.directly_manages = L2Reportees.pid
WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName")
GROUP BY directReportees
) AS T
GROUP BY directReportees)
UNION
(SELECT T.directReportees AS directReportees, sum(T.count) AS count
FROM(
SELECT reportee.directly_manages AS directReportees, 0 AS count
FROM person_reportee manager
JOIN person_reportee reportee
ON manager.directly_manages = reportee.pid
WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName")
GROUP BY directReportees
UNION
SELECT L2Reportees.pid AS directReportees, count(L2Reportees.directly_manages) AS
count
FROM person_reportee manager
JOIN person_reportee L1Reportees
ON manager.directly_manages = L1Reportees.pid
JOIN person_reportee L2Reportees
ON L1Reportees.directly_manages = L2Reportees.pid
WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName")
GROUP BY directReportees
) AS T
GROUP BY directReportees)
UNION
(SELECT L2Reportees.directly_manages AS directReportees, 0 AS count
FROM person_reportee manager
JOIN person_reportee L1Reportees
ON manager.directly_manages = L1Reportees.pid
JOIN person_reportee L2Reportees
ON L1Reportees.directly_manages = L2Reportees.pid
WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName")
)
SAME QUERY IN SQL (!!)
PERFORMANCE AT SCALE
RDBMS/Other vs. Native Graph Database
Connectedness of Data Set
ResponseTime
RDBMS / Other NOSQL
# Hops: 0-2
Degree: < 3
Size: Thousands
Neo4j
# Hops: Tens to Hundreds
Degree: Thousands+
Size: Billions+
1000x faster
#3: PERFORMANCE
DATABASE # PEOPLE
QUERY TIME
(MS)
MySQL 1,000 2,000
Neo4j 1,000 2
Neo4j 1,000,000 2
Business Impact: Move Faster
The	
  whole	
  design,	
  development,	
  QA,	
  
and	
  release	
  process	
  for	
  CruchBase	
  
Events	
  was	
  a	
  total	
  of	
  2	
  weeks.”	
  
“The	
  ability	
  to	
  iterate	
  that	
  quickly	
  is	
  
a	
  mammoth	
  step	
  up	
  for	
  us.	
  	
  
In	
  CrunchBase	
  1.0	
  (MySQL),	
  it	
  probably	
  
would	
  have	
  taken	
  2	
  months.”	
  
-­‐	
  Kurt	
  Freytag,	
  CTO	
  CrunchBase
Total Dollar
Amount
Transaction
Count
Investigate
Investigate
Business Impact: Invent Faster
“Our	
  Neo4j	
  solution	
  is	
  literally	
  thousands	
  of	
  times	
  
faster	
  than	
  the	
  prior	
  MySQL	
  solution,‹
with	
  queries	
  that	
  require	
  10-­‐100	
  times	
  less	
  code.”	
  
-­‐	
  Volker	
  Pacher,	
  Senior	
  Developer	
  eBay
Business Impact: Run Faster
Neo Technology, Inc ConïŹdential
Real-Time/
OLTP
OfïŹ‚ine/
Batch
Connected Queries Enable
Real-Time Analytics
GRAPHS ARE TRANSFORMING
THE WORLD
Core industries ‹
& Use Cases
WEB / ISV Financial Services Tele-communications
Network &‹
Data Center
Management
Master Data
Management
Social
Geo
?
Core industries ‹
& Use Cases
WEB / ISV Financial Services Telecommunications
Health Care ‹
& Life Sciences
Network &‹
Data Center
Management
Master Data
Management
Social
GEO
Finance
GRAPHS ARE TRANSFORMING
THE WORLD
Neo Technology, Inc ConïŹdential
Core
industries ‹
& Use Cases
WEB / ISV
Financial
Services
Telecom-
munications
Health Care ‹
& Life
Sciences
Web Social,‹
HR &
Recruiting
Media &
Publishing
Energy, Services,
Automotive, Gov’t,
Logistics, Education,
Gaming, Other
Network &‹
Data Center
Management
Master Data
Management
Social
GEO
Recomm-
endations
Identity &
Access
Mgmt
Search &
Discovery
BI, CRM, Impact
Analysis, Fraud
Detection,
Resource
Optimization, etc.
Finance
Neo4j Adoption Snapshot
GRAPH DATABASES - THE FASTEST
GROWING DBMS CATEGORY
Source: http://db-engines.com/en/ranking/graph+dbms!
0%
10%
20%
30%
2011 2014 2017
25%
2.5%
0%
%ofEnterprisesusingGraphDatabases
“Forrester estimates that over 25% of
enterprises will be using graph
databases by 2017”
Sources
‱ Forrester TechRadarℱ: Enterprise DBMS, Feb 13 2014 (http://www.forrester.com/TechRadar+Enterprise
+DBMS+Q1+2014/fulltext/-/E-RES106801)
‱ Dataversity Mar 31 2014: “Deconstructing NoSQL:Analysis of a 2013 Survey on the Use, Production and Assessment
of NoSQLTechnologies in the Enterprise” (http://www.dataversity.net)
‱ Neo Technology customer base in 2011 and 2014
‱ Estimation of other graph vendors’ customer base in 2011 and 2014 based on best available intelligence
“25% of survey respondents said
they plan to use Graph databases in
the future.”
Graph Databases:
Powering The Enterprise
GRAPH DATABASES - POWERING
THE ENTERPRISE
Ref: Gartner, ‘IT Market Clock for Database Management Systems, 2014,’ September 22, 2014
https://www.gartner.com/doc/2852717/it-market-clock-database-management
“Graph analysis is possibly the
single most effective
competitive differentiator for
organizations pursuing data-
driven operations and
decisions after the design of
data capture.”
Graph Databases:
Can Transform Your Business
GRAPH DATABASES - CAN
TRANSFORM YOUR BUSINESS
Summary
When your business depends on Relationships in Data
SUMMARY
Your Mission:
Connect.

More Related Content

PDF
The Five Graphs of Finance - Philip Rathle and Emil Eifrem @ GraphConnect NY ...
 
PPTX
Graph all the things - PRathle
 
PDF
Graph All the Things: An Introduction to Graph Databases
 
PDF
Neo4j MySql MS-SQL comparison
PDF
RDBMS to Graphs
 
PPTX
The year of the graph: do you really need a graph database? How do you choose...
PDF
Bigdata and ai in p2 p industry: Knowledge graph and inference
PDF
Graph database Use Cases
The Five Graphs of Finance - Philip Rathle and Emil Eifrem @ GraphConnect NY ...
 
Graph all the things - PRathle
 
Graph All the Things: An Introduction to Graph Databases
 
Neo4j MySql MS-SQL comparison
RDBMS to Graphs
 
The year of the graph: do you really need a graph database? How do you choose...
Bigdata and ai in p2 p industry: Knowledge graph and inference
Graph database Use Cases

What's hot (20)

PDF
Challenges in the Design of a Graph Database Benchmark
PPTX
Introduction: Relational to Graphs
 
PPTX
Network and IT Operations
 
PPTX
Neo4j graphs in the real world - graph days d.c. - april 14, 2015
 
PPT
Graph db
PDF
Democratizing Data at Airbnb
 
PDF
Hadoop and Neo4j: A Winning Combination for Bioinformatics
PDF
GraphConnect Europe 2016 - Opening Keynote, Emil Eifrem
 
PDF
Neo4j the Anti Crime Database
 
PDF
Meaningful User Experience
 
PDF
Graphs for Enterprise Architects
 
PPTX
The Five Graphs of Government: How Federal Agencies can Utilize Graph Technology
PDF
TehranDB Meet-up April 2018 Introduction to Graph Database
PDF
The Graph Database Universe: Neo4j Overview
 
PDF
Intro to Neo4j Webinar
 
PDF
Building a Graph-based Analytics Platform
PDF
GraphTalks Rome - Introducing Neo4j
 
PDF
GraphDay Stockholm - Graphs in the Real World: Top Use Cases for Graph Databases
 
PDF
GraphTalks Rome - The Italian Business Graph
 
PDF
RDBMS to Graph Webinar
 
Challenges in the Design of a Graph Database Benchmark
Introduction: Relational to Graphs
 
Network and IT Operations
 
Neo4j graphs in the real world - graph days d.c. - april 14, 2015
 
Graph db
Democratizing Data at Airbnb
 
Hadoop and Neo4j: A Winning Combination for Bioinformatics
GraphConnect Europe 2016 - Opening Keynote, Emil Eifrem
 
Neo4j the Anti Crime Database
 
Meaningful User Experience
 
Graphs for Enterprise Architects
 
The Five Graphs of Government: How Federal Agencies can Utilize Graph Technology
TehranDB Meet-up April 2018 Introduction to Graph Database
The Graph Database Universe: Neo4j Overview
 
Intro to Neo4j Webinar
 
Building a Graph-based Analytics Platform
GraphTalks Rome - Introducing Neo4j
 
GraphDay Stockholm - Graphs in the Real World: Top Use Cases for Graph Databases
 
GraphTalks Rome - The Italian Business Graph
 
RDBMS to Graph Webinar
 
Ad

Viewers also liked (17)

PDF
Postgres Relevance: Guidepost to the Future
 
PPT
An Introduction to Graph Databases
PDF
Converting Relational to Graph Databases
PDF
Designing and Building a Graph Database Application – Architectural Choices, ...
 
PPTX
Relational databases vs Non-relational databases
PDF
Graph Based Recommendation Systems at eBay
PPTX
Relational to Graph - Import
 
PDF
Graph Database, a little connected tour - Castano
PPTX
Graph databases
PPTX
Neo4j - graph database for recommendations
PDF
Relational vs. Non-Relational
KEY
NoSQL: Why, When, and How
PPTX
Lju Lazarevic
PPTX
An Introduction to NOSQL, Graph Databases and Neo4j
PPTX
Introduction to Graph Databases
PDF
Data Modeling with Neo4j
 
PPTX
Data Mining: Graph mining and social network analysis
Postgres Relevance: Guidepost to the Future
 
An Introduction to Graph Databases
Converting Relational to Graph Databases
Designing and Building a Graph Database Application – Architectural Choices, ...
 
Relational databases vs Non-relational databases
Graph Based Recommendation Systems at eBay
Relational to Graph - Import
 
Graph Database, a little connected tour - Castano
Graph databases
Neo4j - graph database for recommendations
Relational vs. Non-Relational
NoSQL: Why, When, and How
Lju Lazarevic
An Introduction to NOSQL, Graph Databases and Neo4j
Introduction to Graph Databases
Data Modeling with Neo4j
 
Data Mining: Graph mining and social network analysis
Ad

Similar to Introduction to graph databases GraphDays (20)

PDF
Findability Day 2014 Neo4j how graph data boost your insights
PDF
Webinar: RDBMS to Graphs
 
PDF
RDBMS to Graph
 
PDF
Graph Database Use Cases - StampedeCon 2015
PDF
5.17 - IntroductionToNeo4j-allSlides_1_2022_DanMc.pdf
PDF
Graph Search: The Power of Connected Data
PDF
Graphs & Big Data - Philip Rathle and Andreas Kollegger @ Big Data Science Me...
 
PDF
RDBMS to Graphs
 
PDF
Neo4j – The Fastest Path to Scalable Real-Time Analytics
 
PDF
Neo4j: What's Under the Hood & How Knowing This Can Help You
 
PDF
Graph Your Business - GraphDay JimWebber
 
PDF
managing big data
PPTX
Neo4j GraphTalks - Introduction to GraphDatabases and Neo4j
 
PDF
Big Data Tel Aviv 2019 v.3.0 I 'Graph database 4 beginners' - Michael Kogan
PDF
Graph your business
 
PPTX
A whirlwind tour of graph databases
 
PDF
Relational to Big Graph
 
PPT
Application Modeling with Graph Databases
PDF
Digital Transformation in a Connected World
 
PDF
Itop vpn crack Latest Version 2025 FREE Download
Findability Day 2014 Neo4j how graph data boost your insights
Webinar: RDBMS to Graphs
 
RDBMS to Graph
 
Graph Database Use Cases - StampedeCon 2015
5.17 - IntroductionToNeo4j-allSlides_1_2022_DanMc.pdf
Graph Search: The Power of Connected Data
Graphs & Big Data - Philip Rathle and Andreas Kollegger @ Big Data Science Me...
 
RDBMS to Graphs
 
Neo4j – The Fastest Path to Scalable Real-Time Analytics
 
Neo4j: What's Under the Hood & How Knowing This Can Help You
 
Graph Your Business - GraphDay JimWebber
 
managing big data
Neo4j GraphTalks - Introduction to GraphDatabases and Neo4j
 
Big Data Tel Aviv 2019 v.3.0 I 'Graph database 4 beginners' - Michael Kogan
Graph your business
 
A whirlwind tour of graph databases
 
Relational to Big Graph
 
Application Modeling with Graph Databases
Digital Transformation in a Connected World
 
Itop vpn crack Latest Version 2025 FREE Download

More from Neo4j (20)

PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
 
PDF
Jin Foo - Prospa GraphSummit Sydney Presentation.pdf
 
PDF
GraphSummit Singapore Master Deck - May 20, 2025
 
PPTX
Graphs & GraphRAG - Essential Ingredients for GenAI
 
PPTX
Neo4j Knowledge for Customer Experience.pptx
 
PPTX
GraphTalk New Zealand - The Art of The Possible.pptx
 
PDF
Neo4j: The Art of the Possible with Graph
 
PDF
Smarter Knowledge Graphs For Public Sector
 
PDF
GraphRAG and Knowledge Graphs Exploring AI's Future
 
PDF
Matinée GenAI & GraphRAG Paris - Décembre 24
 
PDF
ANZ Presentation: GraphSummit Melbourne 2024
 
PDF
Google Cloud Presentation GraphSummit Melbourne 2024: Building Generative AI ...
 
PDF
Telstra Presentation GraphSummit Melbourne: Optimising Business Outcomes with...
 
PDF
Hands-On GraphRAG Workshop: GraphSummit Melbourne 2024
 
PDF
Démonstration Digital Twin Building Wire Management
 
PDF
Swiss Life - Les graphes au service de la détection de fraude dans le domaine...
 
PDF
Démonstration Supply Chain - GraphTalk Paris
 
PDF
The Art of Possible - GraphTalk Paris Opening Session
 
PPTX
How Siemens bolstered supply chain resilience with graph-powered AI insights ...
 
PDF
Knowledge Graphs for AI-Ready Data and Enterprise Deployment - Gartner IT Sym...
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
 
Jin Foo - Prospa GraphSummit Sydney Presentation.pdf
 
GraphSummit Singapore Master Deck - May 20, 2025
 
Graphs & GraphRAG - Essential Ingredients for GenAI
 
Neo4j Knowledge for Customer Experience.pptx
 
GraphTalk New Zealand - The Art of The Possible.pptx
 
Neo4j: The Art of the Possible with Graph
 
Smarter Knowledge Graphs For Public Sector
 
GraphRAG and Knowledge Graphs Exploring AI's Future
 
Matinée GenAI & GraphRAG Paris - Décembre 24
 
ANZ Presentation: GraphSummit Melbourne 2024
 
Google Cloud Presentation GraphSummit Melbourne 2024: Building Generative AI ...
 
Telstra Presentation GraphSummit Melbourne: Optimising Business Outcomes with...
 
Hands-On GraphRAG Workshop: GraphSummit Melbourne 2024
 
Démonstration Digital Twin Building Wire Management
 
Swiss Life - Les graphes au service de la détection de fraude dans le domaine...
 
Démonstration Supply Chain - GraphTalk Paris
 
The Art of Possible - GraphTalk Paris Opening Session
 
How Siemens bolstered supply chain resilience with graph-powered AI insights ...
 
Knowledge Graphs for AI-Ready Data and Enterprise Deployment - Gartner IT Sym...
 

Recently uploaded (20)

PPTX
Introduction to Knowledge Engineering Part 1
PPTX
IBA_Chapter_11_Slides_Final_Accessible.pptx
PPTX
STUDY DESIGN details- Lt Col Maksud (21).pptx
PPTX
oil_refinery_comprehensive_20250804084928 (1).pptx
PPTX
iec ppt-1 pptx icmr ppt on rehabilitation.pptx
PDF
BF and FI - Blockchain, fintech and Financial Innovation Lesson 2.pdf
PPTX
DISORDERS OF THE LIVER, GALLBLADDER AND PANCREASE (1).pptx
PPTX
Moving the Public Sector (Government) to a Digital Adoption
PPTX
CEE 2 REPORT G7.pptxbdbshjdgsgjgsjfiuhsd
PDF
Clinical guidelines as a resource for EBP(1).pdf
PPTX
Global journeys: estimating international migration
PPTX
advance b rammar.pptxfdgdfgdfsgdfgsdgfdfgdfgsdfgdfgdfg
PDF
Mega Projects Data Mega Projects Data
PDF
Introduction to Business Data Analytics.
PPT
Miokarditis (Inflamasi pada Otot Jantung)
PDF
Foundation of Data Science unit number two notes
PDF
168300704-gasification-ppt.pdfhghhhsjsjhsuxush
PPTX
Major-Components-ofNKJNNKNKNKNKronment.pptx
PPTX
The THESIS FINAL-DEFENSE-PRESENTATION.pptx
Introduction to Knowledge Engineering Part 1
IBA_Chapter_11_Slides_Final_Accessible.pptx
STUDY DESIGN details- Lt Col Maksud (21).pptx
oil_refinery_comprehensive_20250804084928 (1).pptx
iec ppt-1 pptx icmr ppt on rehabilitation.pptx
BF and FI - Blockchain, fintech and Financial Innovation Lesson 2.pdf
DISORDERS OF THE LIVER, GALLBLADDER AND PANCREASE (1).pptx
Moving the Public Sector (Government) to a Digital Adoption
CEE 2 REPORT G7.pptxbdbshjdgsgjgsjfiuhsd
Clinical guidelines as a resource for EBP(1).pdf
Global journeys: estimating international migration
advance b rammar.pptxfdgdfgdfsgdfgsdgfdfgdfgsdfgdfgdfg
Mega Projects Data Mega Projects Data
Introduction to Business Data Analytics.
Miokarditis (Inflamasi pada Otot Jantung)
Foundation of Data Science unit number two notes
168300704-gasification-ppt.pdfhghhhsjsjhsuxush
Major-Components-ofNKJNNKNKNKNKronment.pptx
The THESIS FINAL-DEFENSE-PRESENTATION.pptx

Introduction to graph databases GraphDays

  • 1. Graph All The Things Introduction to Graph Databases Neo4j GraphDays 2014 Chicago Philip Rathle VP of Products, Neo4j @prathle #neo4j
  • 5. Use of Relationship Information in The Consumer Web INDUSTRY TRENDS: GRAPHS TRANSFORMED CONSUMER WEB
  • 6. Use of Relationship Information in The Consumer Web INDUSTRY TRENDS: GRAPHS TRANSFORMED CONSUMER WEB
  • 7. Ref: http://www.gartner.com/id=2081316 Interest Graph Payment Graph Intent Graph Mobile Graph Consumer Web Giants Depends on Five Graphs Gartner’s “5 Graphs” Social Graph GARTNER’S 5 GRAPHS OF CONSUMER WEB: SUSTAINABLE COMPETITIVE DIFFERENTIATION COMES FROM MASTERING 5 GRAPHS
  • 8. Key-Value Graph DB Riak Redis Neo4j membase 0x235C Philip 0xCD21 Neo4j Chicago 0x2014 [PPR,RB,NL] 0x3821 [CHI, SFO, BOS] 0x3890 B75DD108A Column FamilyName UID Members Groups Photo 0x235C Philip PPR CHI, SFO, BOS B75DD108A893A 0xCD21 Neo4j Chicago CHI PPR,RB, NL 218758D88E901 Cassandra HBase Document DB0x235C {name:Philip, UID: PPR, Groups: [CHI,SFO,BOS]} 0xCD21 {name:Neo4j Chicago, UID: PPR, Members:[PPR,RB,NL], where:{city:Chicago, State: IL}} MongoDB CouchDB NI name:Neo4j Chicago, UID: CHI, Photo: 218758D88E901 ABK name:Philip, UID: PPR, Photo: B75DD108A893A MEMBERsince: 2011 UNLOCKING THE POTENTIAL OF RELATIONSHIPS IN DATA
  • 9. A GRAPH DATABASE IS PURPOSE-BUILT FOR: When your business depends on Relationships in Data
  • 10. The Property Graph ModelTHE PROPERTY GRAPH MODEL
  • 11. The Property Graph ModelTHE PROPERTY GRAPH MODEL LovesAnn Dan
  • 12. The Property Graph Model Ann DanLoves THE PROPERTY GRAPH MODEL
  • 13. The Property Graph Model (Ann) –[:LOVES]-> (Dan) THE PROPERTY GRAPH MODEL Ann DanLoves
  • 14. The Property Graph Model (:Person {name:"Ann"}) –[:LOVES]-> (:Person {name:"Dan"}) THE PROPERTY GRAPH MODEL Ann DanLoves
  • 15. The Property Graph Model (:Person {name:"Ann"}) –[:LOVES]-> (:Person {name:"Dan"}) THE PROPERTY GRAPH MODEL Ann DanLoves Node Relationship Node
  • 16. The Property Graph Model (:Person {name:"Ann"}) –[:LOVES]-> (:Person {name:"Dan"}) THE PROPERTY GRAPH MODEL Ann DanLoves Node Relationship Node property propertylabel labeltype
  • 17. Cypher Query: Whom does Ann love? (:Person {name:"Ann"})–[:LOVES]->(whom) CYPHER
  • 18. Cypher Query: Whom does Ann love? MATCH (:Person {name:"Ann"})–[:LOVES]->(whom) CYPHER
  • 19. Cypher Query: Whom does Ann love? MATCH (:Person {name:"Ann"})–[:LOVES]->(whom) RETURN whom CYPHER
  • 21. Under The Hood MATCH (:Person {name:"Ann"})–[:LOVES]->(whom)RETURN whom cypher native graph processing native storage UNDER THE HOOD
  • 23. #1: EASIER TO UNDERSTAND‹ COMPLEX MODELS “Find all sushi restaurants in NYC that my friends like”
  • 24. “Find all direct reports and how many they manage, up to 3 levels down” #2: EASIER TO EXPRESS‹ COMPLEX QUERIES Example HR Query: MATCH  (boss)-­‐[:MANAGES*0..3]-­‐>(sub),              (sub)-­‐[:MANAGES*1..3]-­‐>(report)   WHERE  boss.name  =  “John  Doe”   RETURN  sub.name  AS  Subordinate,  count(report)  AS  Total
  • 25. (SELECT T.directReportees AS directReportees, sum(T.count) AS count FROM ( SELECT manager.pid AS directReportees, 0 AS count FROM person_reportee manager WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName") UNION SELECT manager.pid AS directReportees, count(manager.directly_manages) AS count FROM person_reportee manager WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName") GROUP BY directReportees UNION SELECT manager.pid AS directReportees, count(reportee.directly_manages) AS count FROM person_reportee manager JOIN person_reportee reportee ON manager.directly_manages = reportee.pid WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName") GROUP BY directReportees UNION SELECT manager.pid AS directReportees, count(L2Reportees.directly_manages) AS count FROM person_reportee manager JOIN person_reportee L1Reportees ON manager.directly_manages = L1Reportees.pid JOIN person_reportee L2Reportees ON L1Reportees.directly_manages = L2Reportees.pid WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName") GROUP BY directReportees ) AS T GROUP BY directReportees) UNION (SELECT T.directReportees AS directReportees, sum(T.count) AS count FROM ( SELECT manager.directly_manages AS directReportees, 0 AS count FROM person_reportee manager WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName") UNION SELECT reportee.pid AS directReportees, count(reportee.directly_manages) AS count FROM person_reportee manager JOIN person_reportee reportee ON manager.directly_manages = reportee.pid WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName") GROUP BY directReportees UNION (continued from previous page...) SELECT depth1Reportees.pid AS directReportees, count(depth2Reportees.directly_manages) AS count FROM person_reportee manager JOIN person_reportee L1Reportees ON manager.directly_manages = L1Reportees.pid JOIN person_reportee L2Reportees ON L1Reportees.directly_manages = L2Reportees.pid WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName") GROUP BY directReportees ) AS T GROUP BY directReportees) UNION (SELECT T.directReportees AS directReportees, sum(T.count) AS count FROM( SELECT reportee.directly_manages AS directReportees, 0 AS count FROM person_reportee manager JOIN person_reportee reportee ON manager.directly_manages = reportee.pid WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName") GROUP BY directReportees UNION SELECT L2Reportees.pid AS directReportees, count(L2Reportees.directly_manages) AS count FROM person_reportee manager JOIN person_reportee L1Reportees ON manager.directly_manages = L1Reportees.pid JOIN person_reportee L2Reportees ON L1Reportees.directly_manages = L2Reportees.pid WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName") GROUP BY directReportees ) AS T GROUP BY directReportees) UNION (SELECT L2Reportees.directly_manages AS directReportees, 0 AS count FROM person_reportee manager JOIN person_reportee L1Reportees ON manager.directly_manages = L1Reportees.pid JOIN person_reportee L2Reportees ON L1Reportees.directly_manages = L2Reportees.pid WHERE manager.pid = (SELECT id FROM person WHERE name = "fName lName") ) SAME QUERY IN SQL (!!)
  • 27. RDBMS/Other vs. Native Graph Database Connectedness of Data Set ResponseTime RDBMS / Other NOSQL # Hops: 0-2 Degree: < 3 Size: Thousands Neo4j # Hops: Tens to Hundreds Degree: Thousands+ Size: Billions+ 1000x faster #3: PERFORMANCE
  • 28. DATABASE # PEOPLE QUERY TIME (MS) MySQL 1,000 2,000 Neo4j 1,000 2 Neo4j 1,000,000 2
  • 29. Business Impact: Move Faster The  whole  design,  development,  QA,   and  release  process  for  CruchBase   Events  was  a  total  of  2  weeks.”   “The  ability  to  iterate  that  quickly  is   a  mammoth  step  up  for  us.     In  CrunchBase  1.0  (MySQL),  it  probably   would  have  taken  2  months.”   -­‐  Kurt  Freytag,  CTO  CrunchBase
  • 31. “Our  Neo4j  solution  is  literally  thousands  of  times   faster  than  the  prior  MySQL  solution,‹ with  queries  that  require  10-­‐100  times  less  code.”   -­‐  Volker  Pacher,  Senior  Developer  eBay Business Impact: Run Faster
  • 32. Neo Technology, Inc ConïŹdential Real-Time/ OLTP OfïŹ‚ine/ Batch Connected Queries Enable Real-Time Analytics
  • 33. GRAPHS ARE TRANSFORMING THE WORLD Core industries ‹ & Use Cases WEB / ISV Financial Services Tele-communications Network &‹ Data Center Management Master Data Management Social Geo ?
  • 34. Core industries ‹ & Use Cases WEB / ISV Financial Services Telecommunications Health Care ‹ & Life Sciences Network &‹ Data Center Management Master Data Management Social GEO Finance GRAPHS ARE TRANSFORMING THE WORLD
  • 35. Neo Technology, Inc ConïŹdential Core industries ‹ & Use Cases WEB / ISV Financial Services Telecom- munications Health Care ‹ & Life Sciences Web Social,‹ HR & Recruiting Media & Publishing Energy, Services, Automotive, Gov’t, Logistics, Education, Gaming, Other Network &‹ Data Center Management Master Data Management Social GEO Recomm- endations Identity & Access Mgmt Search & Discovery BI, CRM, Impact Analysis, Fraud Detection, Resource Optimization, etc. Finance Neo4j Adoption Snapshot
  • 36. GRAPH DATABASES - THE FASTEST GROWING DBMS CATEGORY Source: http://db-engines.com/en/ranking/graph+dbms!
  • 37. 0% 10% 20% 30% 2011 2014 2017 25% 2.5% 0% %ofEnterprisesusingGraphDatabases “Forrester estimates that over 25% of enterprises will be using graph databases by 2017” Sources ‱ Forrester TechRadarℱ: Enterprise DBMS, Feb 13 2014 (http://www.forrester.com/TechRadar+Enterprise +DBMS+Q1+2014/fulltext/-/E-RES106801) ‱ Dataversity Mar 31 2014: “Deconstructing NoSQL:Analysis of a 2013 Survey on the Use, Production and Assessment of NoSQLTechnologies in the Enterprise” (http://www.dataversity.net) ‱ Neo Technology customer base in 2011 and 2014 ‱ Estimation of other graph vendors’ customer base in 2011 and 2014 based on best available intelligence “25% of survey respondents said they plan to use Graph databases in the future.” Graph Databases: Powering The Enterprise GRAPH DATABASES - POWERING THE ENTERPRISE
  • 38. Ref: Gartner, ‘IT Market Clock for Database Management Systems, 2014,’ September 22, 2014 https://www.gartner.com/doc/2852717/it-market-clock-database-management “Graph analysis is possibly the single most effective competitive differentiator for organizations pursuing data- driven operations and decisions after the design of data capture.” Graph Databases: Can Transform Your Business GRAPH DATABASES - CAN TRANSFORM YOUR BUSINESS
  • 39. Summary When your business depends on Relationships in Data SUMMARY