4. Cypher
Typical Complex SQL Join
The Same Query using Cypher
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
6. Different approaches / skills required:
• Data Modeling
• Data Querying
• Agile development
• New Architecture approaches
• Data Loading
• APOC
• Performance Tuning
• Operational aspects
• High Availability
• Horizontal Scaling
6
Intuitive
Intuitive / Declarative
Quicker / faster results
“Fit to environment”
From easy to complex
Programming skills
From easy to complex
Fit the graph to the reqs
Complex
Can get complex
Hard to achieve
“Fit to environment”
From easy to complex
Programming skills
From easy to complex
Fit to the reqs
Relational
Databases
8. Who can help?
Facts About Neo Technology
• 240+ employees
• 70+ Full-Time Product Engineers
• 40+ Full time employees in ww
Field Engineering/Services
• Nearly a decade of product maturity &
use
• Strong delivery capabilities include
training, support, PS
100% focused on graphs!
14. Intentions & Outcomes within a week
1. Get a deep understanding of graphs and Neo4j
2. Reimagining customers data as graphs
3. Experience the impact graphs have on customer product and services
through prototyping
Neo4j Innovation Lab Sprint
16. Training
• Neo4j Training:
• Fundamentals
• Data Modeling
• Advanced Cypher
• Operations / Deployment
• (Recommendations /Data Scientists)
• Delivered as chargeable service -> 1 day each per training
• Mature training material - Including “exercises”
• OnSite at customer or eg Neo4j offices
16
20. Deployment Success Program
• Work with Customers to get the project started:
• How to file SRs
• Docs
• Going through typical setup / config files:
• HW/SW Requirements
• Typical Parameters (Pagecache, Java Heap, Log Files etc)
• Operations / Monitoring
• Knowledge Base
• HA Cluster or Causal Cluster scenarios
• Part of a volume license deal
• Introductions by Customer Success and Field Team
• Up to 5 days of Consulting
21. 21
Evaluation Phase Development Phase Deployment Phase
Neo4j Core DB Services • Data Modeling
• Cypher Query Language
• Data Import based on Neo4j
tools
• Sizing and configuration
assistance
• APOC / Stored procedures
• Data Modeling Service
• Architecture Design Service
• Cypher Query Language
• Data Import Neo4j tools
• Sizing and configuration
assistance
• APOC / Stored procedures
• HA and Cluster setup,
architecture and Configuration
• Architecture Review Service
• Health Check and performance
tuning /review DM, HA, Cluster
and Cypher
• Data Import Neo4j tools
optimization
• Sizing and configuration
assistance review and
optimization
• Deployment Services
• Operational Management
• APOC / Stored procedures
Neo4j Integration Services • Data Import and ETL
• Customer specific Visualization
• .Net and SDN integration
services
• Data Import and ETL
• Customer specific Vizualisation
• .Net and SDN integration
services
• Data Import and ETL review
• .Net and SDN integration review
GraphDB Domain Expertise • Application related Services:
Domain expertise in
Recommendations, Fraud, IDM/
IAM etc
• Application related Services:
Domain expertise in
Recommendations, Fraud,
IDM/IAM etc
• Application related Services -
review
• Delivering Services as required on a SOW “per day” basis
• SOW definition together with customer
• GOAL: kickstart project and/or ensure successful deployment and production using the
expertise of Senior Neo4j Consultants
Generic Neo4j Services offered
22. Expert Services and Health Checks
• Provide in-depth Neo4j database relevant services:
• etc
• Delivering services as required on a SoW „per day“ basis
• Project Managed by customer or Neo4j
• Goal: ensure success and get the project on the right track with the
expertise of Neo4j Senior Consultants
22
Configuration / Settings Performance Tuning/optimization
Deployment / HA Scalability
Architecture Review Cypher Tuning
Root Cause Analysis / App to Graph DB APOC / Stored procedures
23. • Neo4j leading smaller to medium sized customer projects
• Prime responsibility with Neo4j
• Neo4j provides (graph) database expertise and Project Management
• Engaging Neo4j Solution partner network where needed and possible
• Working with Partner/SI and/or customer embedded in the broader
project team
• Goal: overall responsibility with Neo4j. Success of the project ensured by
using the expertise of Neo4j Senior Consultants for the critical DB core
services
Neo4j led Prime Projects
23
25. Lessons learned in Customer Neo4j Service Engagements
• While the graph approach is more intuitive than relational DBs, it still needs
training to “do the things right”
• Frequently made mistakes:
• Re-use existing relational concepts will prevent the chance to re-design and be
successful with graphs
• Trying to do it all by yourself after first “quick win” because learning curve is very
fast
• Over-engineer in the beginning and miss the chance to build on top of first use case
in an agile way
• Proper sizing and configuration of machine / memory / network / cluster -> ask for
help from the experts
• Traversing a graph is fast, but, if you traverse the entire graph then physics are still
against you
• Using Neo4j Services allows you to bring Senior Graph Database experience into
your project, accelerate the delivery and ensures success
25