3. What Is Different In Neo4j?
3
TRADITIONAL
DATABASES
Store and retrieve data
Real time storage & retrieval
Up to
3
Max #
of
hops
4. What Is Different In Neo4j?
4
TRADITIONAL
DATABASES
BIG DATA
TECHNOLOGY
Store and retrieve data Aggregate and filter data
Real time storage & retrieval
Long running queries
Aggregation & filtering
Up to
3
Max #
of
hops
1
5. What Is Different In Neo4j?
5
TRADITIONAL
DATABASES
BIG DATA
TECHNOLOGY
Store and retrieve data Aggregate and filter data Connections in data
Real time storage & retrieval Real-Time Connected Insights
Long running queries
Aggregation & filtering
“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
Up to
3
Max #
of
hops
1 Millions
7. What Is Different In Neo4j?
Minutes to Milliseconds Real-time Query Performance
7
Index-free Connectedness and Size of Data Set
ResponseTime
Relational and
Other NoSQL
Databases
0 to 2 hops
0 to 3 degrees
Thousands of connections
1000x
Advantage
Tens to hundreds of hops
Thousands of degrees
Billions of connections
Neo4j
“Minutes to
milliseconds”
8. What Is Different In Neo4j?
ACID Graph Writes: A Requirement for Graph Transactions
8
Graph Transactions Over
ACID Consistency
Graph Transactions Over
Non Graph-ACID DBMSs
Maintains Integrity Over Time
Guaranteed Graph Consistency
Becomes Corrupt Over Time
Not Good Enough for Graphs
9. What Is Different In Neo4j?
Cypher Query Language
9
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
Project Impact
Less time writing queries
• More time understanding the answers
• Leaving time to ask the next question
Less time debugging queries:
• More time writing the next piece of code
• Improved quality of overall code base
Code that’s easier to read:
• Faster ramp-up for new project members
• Improved maintainability & troubleshooting
10. The DBMS Market: Evolutionary Timeline
10
Data Storage & Retrieval
for specific use cases
Data Storage & Retrieval
for all new use cases
Connected Data
for specific use cases
Connected Data
for all new use cases
Codd’s
Paper
2010
Neo4j
v1.0
1979 1990 2025
Oracle
IPO
1986
2019
openCypher
Launch
Relational Key-Value Column Family Document Graph
11. Enabling the Connected Enterprise
11
Transactional Graphs
Graph Visualization
• Fraud detection
• Real-time recommendations
• Network and IT operations management
• Knowledge graphs
• Master data management
• Fraud detection
• Network and IT operations
management
• Product information management
• Risk and portfolio analysis
AI & Graph Analytics
• Sentiment analysis
• Customer segmentation
• Machine learning
• Cognitive computing
• Community detection
Data Scientists Business
Users
Applications
12. Neo4j Graph Platform
12
Development &
Administration
Analytics
Tooling
BUSINESS USERS
DEVELOPERS
ADMINS
Graph
Analytics
Graph
Transactions
Data Integration
Discovery & Visualization
DATA
ANALYSTS
DATA
SCIENTISTS
Drivers & APIs
APPLICATIONS
AI
openCypherCloud
13. Enterprise Maturity & Robustness
13
Neo4j Security Foundation Multi-Clustering Support for
Global Internet Apps
Rolling Upgrades
Schema Constraints Concurrent/Transactional Write
Performance
Auto Cache Reheating
For Restarts, Restores and Cluster
Expansion
Neo4j 3.4 now supports
rolling upgrades
3.4 3.5
Upgrade older instances while keeping other
members stable and without requiring a restart
of the environment
3.5
16. 16
Development &
Administration
Analytics
Tooling
Graph
Analytics
Graph
Transactions
Data Integration
Discovery & VisualizationDrivers & APIs
AI
Improved Admin Experience
- Rolling upgrades
- Brute force attack prevention
- Fast, resumable backups
- Cache Warming on startup
- Improved diagnostics
Multi-Cluster routing built into Bolt drivers
Seabolt & Go Driver
- Other v1.7 Supported Drivers: Java, JavaScript, Python, .NET
- Community Drivers: Perl, PhP, Ruby, Erlang, R, Haskell, Clojure, JDBC and many others
Neo4j Graph Platform: Where We Are Today
17. 17
Development &
Administration
Analytics
Tooling
Graph
Analytics
Graph
Transactions
Data Integration
Discovery & VisualizationDrivers & APIs
AI
Improved Admin Experience
- Rolling upgrades
- Brute force attack prevention
- Fast, resumable backups
- Cache Warming on startup
- Improved diagnostics
Multi-Cluster routing built into Bolt drivers
Seabolt & Go Driver
- Other v1.7 Supported Drivers: Java, JavaScript, Python, .NET
- Community Drivers: Perl, PhP, Ruby, Erlang, R, Haskell, Clojure, JDBC and many others Neo4j Bloom
- New graph illustration
and communication
tool for non-technical
users
- Explore and edit graph
- Search-based
- Create storyboards
- Foundation for graph
data discovery
- Integrated with graph
platform
Neo4j Graph Platform: Where We Are Today
18. 18
Development &
Administration
Analytics
Tooling
Graph
Analytics
Graph
Transactions
Data Integration
Discovery & VisualizationDrivers & APIs
AI
Improved Admin Experience
- Rolling upgrades
- Brute force attack prevention
- Fast, resumable backups
- Cache Warming on startup
- Improved diagnostics
Multi-Cluster routing built into Bolt drivers
Seabolt & Go Driver
- Other v1.7 Supported Drivers: Java, JavaScript, Python, .NET
- Community Drivers: Perl, PhP, Ruby, Erlang, R, Haskell, Clojure, JDBC and many others Neo4j Bloom
- New graph illustration
and communication
tool for non-technical
users
- Explore and edit graph
- Search-based
- Create storyboards
- Foundation for graph
data discovery
- Integrated with graph
platform
Graph Data Science
High speed graph algorithms
Neo4j Graph Platform: Where We Are Today
19. 19
Development &
Administration
Analytics
Tooling
Graph
Analytics
Graph
Transactions
Data Integration
Discovery & VisualizationDrivers & APIs
AI
Improved Admin Experience
- Rolling upgrades
- Brute force attack prevention
- Fast, resumable backups
- Cache Warming on startup
- Improved diagnostics
Multi-Cluster routing built into Bolt drivers
Seabolt & Go Driver
- Other v1.7 Supported Drivers: Java, JavaScript, Python, .NET
- Community Drivers: Perl, PhP, Ruby, Erlang, R, Haskell, Clojure, JDBC and many others Neo4j Bloom
- New graph illustration
and communication
tool for non-technical
users
- Explore and edit graph
- Search-based
- Create storyboards
- Foundation for graph
data discovery
- Integrated with graph
platform
Graph Data Science
High speed graph algorithms
Neo4j Database 3.4 & 3.5
- 70% faster Cypher
- Native GraphB+Tree Indexes
(up to 5x faster writes)
- Full-text search
- Index-Backed Optimisation
- 100B+ bulk importer
- Date/Time data type
- 3-D Geospatial search
- Secure, Horizontal Multi-Clustering
- Property Blacklisting
- Causal Cluster with Raft v2 Protocol
- Hostname verification, Intra-cluster discovery encryption
Neo4j Graph Platform: Where We Are Today
20. Neo4j Graph Platform: Where We Are Today
20
Development &
Administration
Analytics
Tooling
Graph
Analytics
Graph
Transactions
Data Integration
Discovery & VisualizationDrivers & APIs
AI
Improved Admin Experience
- Rolling upgrades
- Brute force attack prevention
- Fast, resumable backups
- Cache Warming on startup
- Improved diagnostics
Multi-Cluster routing built into Bolt drivers
Seabolt & Go Driver
- Other v1.7 Supported Drivers: Java, JavaScript, Python, .NET
- Community Drivers: Perl, PhP, Ruby, Erlang, R, Haskell, Clojure, JDBC and many others
SparkCypher/Morpheus
(pre-EAP)
Spark Implementation Proposal
for getting Cypher into Spark
Neo4j Bloom
- New graph illustration
and communication
tool for non-technical
users
- Explore and edit graph
- Search-based
- Create storyboards
- Foundation for graph
data discovery
- Integrated with graph
platform
Graph Data Science
High speed graph algorithms
Neo4j Database 3.4 & 3.5
- 70% faster Cypher
- Native GraphB+Tree Indexes
(up to 5x faster writes)
- Full-text search
- Index-Backed Optimisation
- 100B+ bulk importer
- Date/Time data type
- 3-D Geospatial search
- Secure, Horizontal Multi-Clustering
- Property Blacklisting
- Causal Cluster with Raft v2 Protocol
- Hostname verification, Intra-cluster discovery encryption
21. Graph Visualization Options for Neo4j
21
Neo4j Bloom
- Provided by Neo4j
- Exclusively optimized for Neo4j graphs
- Deploys easily in Neo4j Desktop
- Focused on graph exploration thru a
code-free UI
- Near natural language search
- Currently caters to data analysts and
graph SMEs
- Currently for individual or small team
use
Viz Toolkits
- 3rd party e.g. vis.js, d3.js, Keylines
- Some offer data hooks into Neo4j,
others may require custom integration
- Offer robust APIs for flexible control
of the viz output
- Cater to developers who will create a
custom solution, usually with limited
interactivity
- Departmental, enterprise or
public use
BI Tools
- 3rd party e.g. Tableau, Qlik
- Not optimized for graph data, may
require a special connector
- UI for dashboard and report
creation with many kinds of viz, in
addition to graph viz
- Cater to business users and data
analysts
- Departmental, cross- department or
enterprise use
Graph Viz Solutions
- 3rd party e.g. Linkurious,
Tom Sawyer
- Have to support multiple graph
models and sources
- Feature UI for exploration or APIs
for customizing output and
embedding/publishing
- Solutions may cater to business
users, analysts or developers
- Small team, departmental or
cross-department use
Little Technical Expertise Most Technically Involved
Exploration Focus Publishing/Consumption Focus
Smaller Deployments Larger Deployments
24. Neo4j Bloom
24
Perspective
Business view of the graph
Departmental views • Hiding PII • Styling
Visualization
GPU Accelerated Visualization
High performance
physics & rendering
25. Neo4j Bloom
25
Perspective
Business view of the graph
Departmental views • Hiding PII • Styling
Visualization
GPU Accelerated Visualization
High performance
physics & rendering
Exploration
Direct graph interactions
Select, expand, dismiss, find paths
26. Neo4j Bloom
26
Perspective
Business view of the graph
Departmental views • Hiding PII • Styling
Visualization
GPU Accelerated Visualization
High performance
physics & rendering
Exploration
Direct graph interactions
Select, expand, dismiss, find paths
Inspection
Node + Relationship details
Browse from neighbor to neighbor
27. Neo4j Bloom
27
Perspective
Business view of the graph
Departmental views • Hiding PII • Styling
Visualization
GPU Accelerated Visualization
High performance
physics & rendering
Exploration
Direct graph interactions
Select, expand, dismiss, find paths
Inspection
Node + Relationship details
Browse from neighbor to neighbor
Editing
Create, Connect, Update
Code-free graph changes
28. Neo4j Bloom
28
Perspective
Business view of the graph
Departmental views • Hiding PII • Styling
Visualization
GPU Accelerated Visualization
High performance
physics & rendering
Exploration
Direct graph interactions
Select, expand, dismiss, find paths
Inspection
Node + Relationship details
Browse from neighbor to neighbor
Editing
Create, Connect, Update
Code-free graph changes
Search
Near-natural Language Search
Full-text search • Graph patterns
• Custom Search Phrases
29. 29
● Search with type-
ahead suggestions
● Category icons and
color scheme
● Visualize, Explore
and Discover
● Pan, Zoom and
Select
● Property Browser
and editor
Neo4j Bloom User Interface
30. Graph Perspective
30
Manage visibility and reduce clutter,
revealing the right information to
the right users.
• Selective Relationships
• Selective Property Visibility
• Categorized Raw Entities
• Defined Entity Patterns*
Need-to-know Details
• Departmental Views
• Hide Personally Identifiable Info
• Structural-only Dev view
Rich Entities*
• Truck with Packages
• Person with Aliases
• Blog Post with Comments
• Component with Parts
34. Graph Search
34
Ask Bloom what you’re looking for
using idiomatic phrases based on
the graph structure and content.
• Search Everywhere
• Find Graph Patterns
• Customize Search Phrases
“Tom Hanks”
“Tom Hanks Movies”
“From Tom Hanks to Kevin Bacon”
36. 36
Neo4j Graph Algorithm Library
Finds the optimal path
or evaluates route
availability and quality
Pathfinding
& Search
Determines the
importance of distinct
nodes in the network
Centrality
Evaluates how a group
is clustered or
partitioned
Community
Detection