SlideShare a Scribd company logo
Redis Graph
Itamar Haber in lieu of Roi Lipman
Redis Labs – Home of Redis
• Founded in 2011
• HQ in Mountain View CA, R&D center in Tel-Aviv IL
The commercial company behind Open Source Redis
Provider of the Redis Enterprise (Redise
) technology,
platform and products
Redise
Cloud Private
Redis Labs Products
Redise
Cloud Redise
Pack ManagedRedise
Pack
SERVICES SOFTWARE
Fully managed Redise
service in
VPCs within AWS, MS Azure, GCP
& IBM Softlayer
Fully managed Redise
service on
hosted servers within AWS, MS
Azure, GCP, IBM Softlayer, Heroku,
CF & OpenShift
Downloadable Redise
software for
any enterprise datacenter or
cloud environment
Fully managed Redise
Pack in
private data centers
&& &
Node
Michael
Scott
Relations
Michael
Dunder
Mifflin
Works
Demo
demo
Adding nodes
GRAPH.CREATENODE <Graph_Name> <Label>
<Attributes>
GRAPH.CREATENODE the_office employee name
"michael scott" age 53 gender male status single
1. Give node a unique ID
2. Store node in “All node” store
3. If optional Label given, store
Stores
ALL
employees
Attributes
{ name: michael scott
age: 53
gender: male
status: single }
Redis hash
Hget <node_id> <attribute>
Hgetall <node_id>
Demo
demo
GRAPH.ADDEDGE <Graph_Name> <SRC_NODE>
<Relation> <DEST_NODE> <Attributes>
GRAPH.ADDEDGE the_office michael scott boss jim
halpert <Attributes>
Adding edges
1. All edge store
2. Label store
Stores
ALL
BOSS
SPO OSP
SOP PSO
OPS POS
Hexastore
S
Subject
P
Predicate
O
Object
6
Hexastore
Triplets
SPO:Michael:Boss:Jim
SOP:Michael:Jim:Boss
OPS:Jim:Boss:Michael
OSP:Jim:Michael:Boss
PSO:Boss:Michael:Jim
POS:Boss:Jim:Michael
Michael
S
Jim
O
Boss
P
Who does Michael manages?
SPO:Michael:Boss:*
Who manages Jim?
OPS:Jim:Boss:*
Who manages who?
PSO:Boss:*
Hexastore
Michael
S
Jim
O
Boss
P
Demo
demo
Query language Cypher
MATCH <Graph_name> <graph_pattern>
WHERE <filters>
RETURN <entities>
ORDER BY <properties>
LIMIT <count>
MATCH (Michael:employee {name:michael
scott})-[boss]->(E:employee)-[visit]->(c:country)
WHERE (E.age > Michael.age AND c.continent = Europe)
RETURN E.name, count(c.name) AS countriesVisited
ORDER BY countriesVisited, E.age DESC
LIMIT 5
Query language Cypher
Query execution
Query Parser AST
Exec
Plan
Tokenizer - Lex
Parser - Lemon, SQLite LALR(1) parser generator for C
Tokenizer & Parser
End to end
AST
Root
Match Where Return Order
Execution plan
GRAPH.EXPLAIN <Graph_Name> <Query>
Execution plan
MATCH (Michael:employee {name:michael
scott})-[boss]->(E:employee)
WHERE E.age > Michael.age
RETURN E.name
ORDER BY E.age DESC
LIMIT 5
Label
Scan
FilterExpandFilter
Project Scan Employees store
Yields employee ID
Label
Scan
FilterExpandFilter
Project Finds Michael,
Employee name should equal
Michael Scott
Label
Scan
FilterExpandFilter
Project
Consult Hexastore
SPO:Michael:boss:
Finds Michael’s Employees
Label
Scan
FilterExpandFilter
Project
Finds employees who are older than
Michael
Label
Scan
RETURN E.name ORDER BY E.age DESC LIMIT 5
Adds employee to result-set
Order results by employees age
Returns top 5 results
FilterExpandFilter
Project
Label
Scan
Filter
Label scan emits Jim
Label
Scan
Filter
Filter drops Jim
Label
Scan
Filter
Label scan emits Michael
Label
Scan
Filter
Filter allows Michael to pass
FilterExpand
Search hexastore for: SPO:Michael:Boss
MATCH (Michael:employee {name:michael
scott})-[boss]->(E:employee)
ExpandFilter
Michael:
Boss:Jim
Emits Michael:Boss:Jim
ExpandFilter
Filter drops Jim,
Jim is not older than Michael
WHERE E.age > Michael.age
ExpandFilter
Michael:
Boss:Kevin
Emits Michael:Boss:Kevin
ExpandFilter
Filter allows Kevin to pass
Kevin is older than Michael
FilterProject
Kevin
Project adds Kevin to result set.
Demo
demo
Features
● Multi hop, multi entry point
(A)-[R1]->(C)<-[R2]-(B)
● Aggregations, Group bys
RETURN E.gender, AVG(E.age) AS average_age
● Order bys, Distinct
Benchmark
150K inserts per second
15K queries per second
Roadmap
● Tinkerpop Gremlin
● Index entity attributes
● Extend query language
http://redisgraph.io - Thank You!
Roi Lipman
Senior Software Engineer
Redis Labs
@roilipman
Itamar Haber
Chief OSS Education Officer
Redis Labs
@itamarhaber

More Related Content

PDF
RedisConf18 - Lower Latency Graph Queries in Cypher with Redis Graph
PPTX
JavaScript Conditional Statements
PPT
Composite pattern
PPTX
classes and objects in C++
PPT
C# Encapsulation
PDF
Oops concepts || Object Oriented Programming Concepts in Java
PPT
Object Oriented Language
PPT
Oop java
RedisConf18 - Lower Latency Graph Queries in Cypher with Redis Graph
JavaScript Conditional Statements
Composite pattern
classes and objects in C++
C# Encapsulation
Oops concepts || Object Oriented Programming Concepts in Java
Object Oriented Language
Oop java

What's hot (20)

PPTX
Core Java Tutorials by Mahika Tutorials
PPTX
Object-oriented programming
PPTX
Introduction to Java -unit-1
ODP
Function
PPTX
Basic Concepts of OOPs (Object Oriented Programming in Java)
PDF
Control statements
PDF
Python - Lecture 11
PPT
PPTX
Inline function
PPT
Object Oriented Programming with Java
PDF
Functional Programming Patterns (NDC London 2014)
PDF
Part II: LLVM Intermediate Representation
ODP
OOP java
PDF
Javascript Arrow function
PDF
Chapter2 Encapsulation (Java)
PPTX
Method overloading
PPT
Jsp ppt
PPTX
OOPS Basics With Example
PDF
Swift Programming Language
Core Java Tutorials by Mahika Tutorials
Object-oriented programming
Introduction to Java -unit-1
Function
Basic Concepts of OOPs (Object Oriented Programming in Java)
Control statements
Python - Lecture 11
Inline function
Object Oriented Programming with Java
Functional Programming Patterns (NDC London 2014)
Part II: LLVM Intermediate Representation
OOP java
Javascript Arrow function
Chapter2 Encapsulation (Java)
Method overloading
Jsp ppt
OOPS Basics With Example
Swift Programming Language
Ad

Similar to RedisConf17 - Redis Graph (20)

PPTX
Redis for Security Data : SecurityScorecard JVM Redis Usage
PDF
Boosting Machine Learning with Redis Modules and Spark
PPTX
War of the Indices- SQL vs. Oracle
PDF
Microsoft R Server for Data Sciencea
PDF
Bhadale Group of Companies - digital projects
PPTX
RUCK 2017 R에 날개 달기 - Microsoft R과 클라우드 머신러닝 소개
PDF
Galvanise NYC - Scaling R with Hadoop & Spark. V1.0
PDF
Getting Ready to Use Redis with Apache Spark with Dvir Volk
PPTX
Enabling Search in your Cassandra Application with DataStax Enterprise
DOCX
Suman_Chakraborty
PDF
Building a Large Scale Recommendation Engine with Spark and Redis-ML with Sha...
PDF
Spark Summit EU talk by Shay Nativ and Dvir Volk
PPTX
Tailoring Redis Modules For Your Users’ Needs
PPT
Data Mining for Developers
PDF
Agile Data Science 2.0
PDF
Rename with Confidence – Building Dynamic FileMaker Systems
PPTX
Big Data Processing with .NET and Spark (SQLBits 2020)
PPTX
Customize Your Enterprise Mobile Salesforce.com Integrations with Red Hat
PDF
Nomad Multi-Cloud
PDF
DevOps@Scale- IBM Cloud and NetAp-Insight-Berlin
Redis for Security Data : SecurityScorecard JVM Redis Usage
Boosting Machine Learning with Redis Modules and Spark
War of the Indices- SQL vs. Oracle
Microsoft R Server for Data Sciencea
Bhadale Group of Companies - digital projects
RUCK 2017 R에 날개 달기 - Microsoft R과 클라우드 머신러닝 소개
Galvanise NYC - Scaling R with Hadoop & Spark. V1.0
Getting Ready to Use Redis with Apache Spark with Dvir Volk
Enabling Search in your Cassandra Application with DataStax Enterprise
Suman_Chakraborty
Building a Large Scale Recommendation Engine with Spark and Redis-ML with Sha...
Spark Summit EU talk by Shay Nativ and Dvir Volk
Tailoring Redis Modules For Your Users’ Needs
Data Mining for Developers
Agile Data Science 2.0
Rename with Confidence – Building Dynamic FileMaker Systems
Big Data Processing with .NET and Spark (SQLBits 2020)
Customize Your Enterprise Mobile Salesforce.com Integrations with Red Hat
Nomad Multi-Cloud
DevOps@Scale- IBM Cloud and NetAp-Insight-Berlin
Ad

More from Redis Labs (20)

PPTX
Redis Day Bangalore 2020 - Session state caching with redis
PPTX
Protecting Your API with Redis by Jane Paek - Redis Day Seattle 2020
PPTX
The Happy Marriage of Redis and Protobuf by Scott Haines of Twilio - Redis Da...
PPTX
SQL, Redis and Kubernetes by Paul Stanton of Windocks - Redis Day Seattle 2020
PPTX
Rust and Redis - Solving Problems for Kubernetes by Ravi Jagannathan of VMwar...
PPTX
Redis for Data Science and Engineering by Dmitry Polyakovsky of Oracle
PPTX
Practical Use Cases for ACLs in Redis 6 by Jamie Scott - Redis Day Seattle 2020
PPTX
Moving Beyond Cache by Yiftach Shoolman Redis Labs - Redis Day Seattle 2020
PPTX
Leveraging Redis for System Monitoring by Adam McCormick of SBG - Redis Day S...
PPTX
JSON in Redis - When to use RedisJSON by Jay Won of Coupang - Redis Day Seatt...
PPTX
Highly Available Persistent Session Management Service by Mohamed Elmergawi o...
PPTX
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
PPTX
Building a Multi-dimensional Analytics Engine with RedisGraph by Matthew Goos...
PPTX
RediSearch 1.6 by Pieter Cailliau - Redis Day Bangalore 2020
PPTX
RedisGraph 2.0 by Pieter Cailliau - Redis Day Bangalore 2020
PPTX
RedisTimeSeries 1.2 by Pieter Cailliau - Redis Day Bangalore 2020
PPTX
RedisAI 0.9 by Sherin Thomas of Tensorwerk - Redis Day Bangalore 2020
PPTX
Rate-Limiting 30 Million requests by Vijay Lakshminarayanan and Girish Koundi...
PDF
Three Pillars of Observability by Rajalakshmi Raji Srinivasan of Site24x7 Zoh...
PPTX
Solving Complex Scaling Problems by Prashant Kumar and Abhishek Jain of Myntr...
Redis Day Bangalore 2020 - Session state caching with redis
Protecting Your API with Redis by Jane Paek - Redis Day Seattle 2020
The Happy Marriage of Redis and Protobuf by Scott Haines of Twilio - Redis Da...
SQL, Redis and Kubernetes by Paul Stanton of Windocks - Redis Day Seattle 2020
Rust and Redis - Solving Problems for Kubernetes by Ravi Jagannathan of VMwar...
Redis for Data Science and Engineering by Dmitry Polyakovsky of Oracle
Practical Use Cases for ACLs in Redis 6 by Jamie Scott - Redis Day Seattle 2020
Moving Beyond Cache by Yiftach Shoolman Redis Labs - Redis Day Seattle 2020
Leveraging Redis for System Monitoring by Adam McCormick of SBG - Redis Day S...
JSON in Redis - When to use RedisJSON by Jay Won of Coupang - Redis Day Seatt...
Highly Available Persistent Session Management Service by Mohamed Elmergawi o...
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
Building a Multi-dimensional Analytics Engine with RedisGraph by Matthew Goos...
RediSearch 1.6 by Pieter Cailliau - Redis Day Bangalore 2020
RedisGraph 2.0 by Pieter Cailliau - Redis Day Bangalore 2020
RedisTimeSeries 1.2 by Pieter Cailliau - Redis Day Bangalore 2020
RedisAI 0.9 by Sherin Thomas of Tensorwerk - Redis Day Bangalore 2020
Rate-Limiting 30 Million requests by Vijay Lakshminarayanan and Girish Koundi...
Three Pillars of Observability by Rajalakshmi Raji Srinivasan of Site24x7 Zoh...
Solving Complex Scaling Problems by Prashant Kumar and Abhishek Jain of Myntr...

Recently uploaded (20)

PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Approach and Philosophy of On baking technology
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPT
Teaching material agriculture food technology
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
Per capita expenditure prediction using model stacking based on satellite ima...
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Mobile App Security Testing_ A Comprehensive Guide.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Approach and Philosophy of On baking technology
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Teaching material agriculture food technology
Spectral efficient network and resource selection model in 5G networks
The Rise and Fall of 3GPP – Time for a Sabbatical?
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
Encapsulation_ Review paper, used for researhc scholars
Programs and apps: productivity, graphics, security and other tools
MIND Revenue Release Quarter 2 2025 Press Release
“AI and Expert System Decision Support & Business Intelligence Systems”

RedisConf17 - Redis Graph