SlideShare a Scribd company logo
Graph Gurus
Episode 11
Using Accumulators in GSQL
for Complex Graph Analytics
© 2019 TigerGraph. All Rights Reserved
Welcome
● Attendees are muted
● If you have any Zoom issues please contact the panelists via chat
● We will have 10 min for Q&A at the end so please send your questions
at any time using the Q&A tab in the Zoom menu
● The webinar will be recorded and sent via email
2
© 2019 TigerGraph. All Rights Reserved
Developer Edition Available
We now offer Docker versions and VirtualBox versions of the TigerGraph
Developer Edition, so you can now run on
● MacOS
● Windows 10
● Linux
Developer Edition Download https://www.tigergraph.com/developer/
3
Version 2.3
Released Today
© 2019 TigerGraph. All Rights
Reserved
Today's Gurus
4
Victor Lee
Director of Product Management
● BS in Electrical Engineering and Computer Science
from UC Berkeley, MS in Electrical Engineering from
Stanford University
● PhD in Computer Science from Kent State University
focused on graph data mining
● 15+ years in tech industry
Gaurav Deshpande
Vice President of Marketing
● Built out and positioned IBM’s Big Data and Analytics
portfolio, driving 45 percent year-over-year growth.
● Led 2 startups through explosive growth - i2
Technologies (IPO) & Trigo Technologies (largest MDM
acquisition by IBM)
● Big Data Analytics Veteran, 14 patents in supply chain
management and big data analytics
© 2019 TigerGraph. All Rights Reserved
How Can TigerGraph Help You?
Improve Operational EfficiencyReduce Costs & Manage RisksIncrease Revenue
• Recommendation Engine
• Real-time Customer 360/
MDM
• Product & Service Marketing
• Fraud Detection
• Anti-Money Laundering
(AML)
• Risk Assessment & Monitoring
• Cyber Security
• Enterprise Knowledge Graph
• Network, IT and Cloud
Resource Optimization
• Energy Management System
• Supply Chain Analysis
Analyze all interactions
in real-time to sell more
Reduce costs and assess and
monitor risks effectively
Manage resources for
maximum output
Foundational Use Cases: Geospatial Analysis, Time Series Analysis, AI and Machine Learning
© 2019 TigerGraph. All Rights Reserved
Driving Business Outcomes with TigerGraph
Increase Revenue
Grew to Billion+ in annual
revenue in 5 years with
TigerGraph
Reduce Costs &
Manage Risks
Recommendation Engine
Detects fraud in real-time
for 300+ Million calls per
day with TigerGraph
Fraud Detection
Improve Operational
Efficiency
Improve Operational
Efficiency
Optimizes infrastructure to
minimize outages for
critical workloads with
TigerGraph
Network & IT Resource Optimization
© 2019 TigerGraph. All Rights Reserved
Accumulators
7
Example: A teacher collects test papers
from all students and calculates an
average score.
Teacher: node with an accumulator
Student: node
Student-to-teacher: edge
Test paper: message sent to
accumulator
Average Score: final value of
accumulator
Phase 1: teacher collects all the test
papers
Phase 2: teacher grades it and
calculates the average score.
© 2019 TigerGraph. All Rights Reserved
Example 1: Counting Movies Seen by
Friends
Analogy: You ask each of your friends to tally how many movies they
saw last year (They work at the same time → Parallelism!)
● This is the Gathering phase
● Next, you need to
Consolidate into one list.
→ Eliminate the duplicates Lee
Bob
Chris
Sue
If we are only counting (not recording names),
How can we eliminate duplicates?
P
Q
R
S
T
© 2019 TigerGraph. All Rights Reserved
Eliminating Duplication: visited flag
● Traditional method: Each target
Item has a true/false "flag", initialized to "false"
● If a flag is "false":
○ It may be counted;
Set the flag to "true"
● If a flag is "true":
○ Skip it
● ⇒ Each item is counted once
Lee
Bob
Chris
Sue
If we are only counting (not recording names),
How can we eliminate duplicates?
© 2019 TigerGraph. All Rights Reserved
Counting Movies with Accumulators
An accumulator is a runtime, shared variable with a built-in update
function.
1. Each friend's tally is a local Accumulator.
2. The visited flag is also a local Accumulator.
a. Bob, Chris, and Sue all visit "R", but we don't know who will first.
3. GSQL queries are designed to let each friend work in parallel, but
at its own pace, and in any order
4. Consolidate the Lists into one global Accumulator.
Bob: 2 (P, Q) Chris: 1 (S)
Sue: 2 (R,T)
© 2019 TigerGraph. All Rights Reserved
Optimization: One global list/tally
Instead of each friend keeping a separate tally…
Keep only one tally.
● Eliminates the consolidate step
● Saves memory
Each friend still works separately,
but they record their efforts in one common place.
Lee
Bob
Chris
Sue
© 2019 TigerGraph. All Rights Reserved
friendsMovieCount GSQL Query
CREATE QUERY friendsMovieCount (VERTEX me) {
OrAccum @visited = false; // @ means local
SumAccum<INT> @@movieCount; // @@ means global
#~~~~~~~~~~~~~~
Start = {me};
Friends = SELECT f # 1. Identify my friends
FROM Start:s -(friendOf:e)- Person:f;
#~~~~~~~~~~~~~~
Movies = SELECT m # 2. Identify the movies they've seen
FROM Friends:f -(saw:r)- Movie:m
ACCUM
IF m.@visited == false THEN
@@movieCount += 1, m.@visited += true; # 3. Count each movie once
#~~~~~~~~~~~~~~
PRINT @@movieCount;
}
© 2019 TigerGraph. All Rights Reserved
Review - Accumulator Properties
● Scope: Local (per vertex) or global
● Multiple data types and functions available
○ For flag: Boolean true/false data, OR function
○ For tally: Integer data, Sum function
● Supports multi-worker processing for parallelism
○ Shared: Anyone can read
○ Shared: Anyone can update submit an update request
○ All the accumulated updates are processed at once, at the end.
© 2019 TigerGraph. All Rights Reserved
Types of Accumulators
The GSQL language provides many different accumulators, which follow the
same rules for receiving and accessing data. However each of them has their
unique way of aggregating values.
14
Old Value:
2
New Value:
11
1, 3, 5
1
3 5
SumAccum<int>
Old Value:
2
New Value:
5
1, 3, 5
1 3
MaxAccum<int>
Old Value:
2
New Value:
1
1, 3, 5
1 3
MinAccum<int>
Old Value:
2
New Value:
2.75
1, 3, 5
1 3
AvgAccum
5 5 5
Computes and stores the
cumulative sum of numeric
values or the cumulative
concatenation of text values.
Computes and stores the
cumulative maximum of
a series of values.
Computes and stores the
cumulative mean of a
series of numeric values.
Computes and stores the
cumulative minimum of
a series of values.
© 2019 TigerGraph. All Rights Reserved
The GSQL language provides many different accumulators, which follow the
same rules for receiving and accessing data. However each of them has their
unique way of aggregating values.
15
Old Value:
[2]
New Value:
[2,1,3,5]
1, 3, 3, 5
1 3 5
SetAccum<int>
Old Value:
[2]
New Value:
[2,1,5,3,3]
1, 5, 3, 3
1 3
ListAccum<int>
Old Value:
[1->1]
New Value:
1->6
5->2
1->2
1->3
5->2
1->2 1->3
MapAccum<int,SumAccum<int>>
Old Value:
[userD,150]
New Value:
[userC,300,
UserD,150,
userA,100]
userC,300
userA,100
(“userA”, 100)
HeapAccum<Tuple>
5 5->23 3 (“userC”, 300)
Maintains a collection of
unique elements.
Maintains a sequential
collection of elements.
Maintains a collection of
(key → value) pairs.
Maintains a sorted collection of
tuples and enforces a
maximum number of tuples in
the collection
Types of Accumulators, continued
© 2019 TigerGraph. All Rights Reserved
Use Case: Graph Algorithms
PageRank analyzes the WHOLE graph
● For each node V:
PR(V) = sum [ PR(A)
/deg(A)
+ PR(B)
/deg(B)
+ PR(C)
/deg(C)
]
○ Summing contributions from several independent nodes
→ Ideal task for accumulators and parallel processing
● Compute a score for each node → parallelism
● Iterative method: Keep recalculating PR(v) for the full graph,
unless the max change in PR < threshold → MaxAccum
V
A
B
C
© 2018 TigerGraph. All Rights Reserved 17
Input:
A person p, two integer parameters k1
and k2
Algorithm steps:
1. Find all movies p has rated;
2. Find all persons rated same movies as p;
3. Based on the movie ratings, find the k1
persons that have most similar tastes with p;
4. Find all movies these k1
persons rated that p hasn’t rated yet;
5. Recommend the top k2
movies with highest average rating by the k1
persons;
Output:
At most k2
movies to be recommended to person p.
p
…...
rate
rate
rate
PRatedMovies
PSet
…...
PeopleRatedSameMovies
rate
rate
rate
rate
…...
rate
rate
rate
rate
Implementing Movie Recommendation Algorithm
© 2019 TigerGraph. All Rights Reserved
More Use Cases: Anti-Fraud
TestDrive Anti-Fraud: https://testdrive.tigergraph.com/main/dashboard
CIrcle Detection:
● Is money passing from A → B → C → … → back to A?
See Graph Gurus #4 on our YouTube Channel:
https://www.youtube.com/tigergraph
© 2019 TigerGraph. All Rights Reserved
Demo
19
© 2019 TigerGraph. All Rights Reserved
Summary
• Graph Traversal and Graph Analytics can be
complex, but also amenable to parallelism.
• Accumulators, coupled with the TigerGraph MPP
engine, provide simple and efficient parallelized
aggregation.
• Accumulators come in a variety of shapes and sizes,
to fit all different needs.
20
Q&A
Please send your questions via the Q&A menu in Zoom
21
© 2019 TigerGraph. All Rights Reserved
NEW! Graph Gurus Developer Office Hours
22
The Graph Gurus Webinar in late March or catch up on previous
episodes: https://www.tigergraph.com/webinars-and-events/
Every Thursday at 11:00 am Pacific
Talk directly with our engineers every
week. During office hours, you get
answers to any questions pertaining to
graph modeling and GSQL
programming.
https://info.tigergraph.com/officehours
© 2019 TigerGraph. All Rights Reserved
Additional Resources
23
New Developer Portal
https://www.tigergraph.com/developers/
Download the Developer Edition or Enterprise Free Trial
https://www.tigergraph.com/download/
Guru Scripts
https://github.com/tigergraph/ecosys/tree/master/guru_scripts
Join our Developer Forum
https://groups.google.com/a/opengsql.org/forum/#!forum/gsql-users
@TigerGraphDB youtube.com/tigergraph facebook.com/TigerGraphDB linkedin.com/company/TigerGraph

More Related Content

What's hot

Graph-Powered Machine Learning
Graph-Powered Machine LearningGraph-Powered Machine Learning
Graph-Powered Machine Learning
Databricks
 
3. Relationships Matter: Using Connected Data for Better Machine Learning
3. Relationships Matter: Using Connected Data for Better Machine Learning3. Relationships Matter: Using Connected Data for Better Machine Learning
3. Relationships Matter: Using Connected Data for Better Machine Learning
Neo4j
 
Boost Your Neo4j with User-Defined Procedures
Boost Your Neo4j with User-Defined ProceduresBoost Your Neo4j with User-Defined Procedures
Boost Your Neo4j with User-Defined Procedures
Neo4j
 
Winning data science competitions, presented by Owen Zhang
Winning data science competitions, presented by Owen ZhangWinning data science competitions, presented by Owen Zhang
Winning data science competitions, presented by Owen Zhang
Vivian S. Zhang
 
Neptune, the Graph Database | AWS Floor28
Neptune, the Graph Database | AWS Floor28Neptune, the Graph Database | AWS Floor28
Neptune, the Graph Database | AWS Floor28
Amazon Web Services
 
Network embedding
Network embeddingNetwork embedding
Network embedding
SOYEON KIM
 
Workshop - Build a Graph Solution
Workshop - Build a Graph SolutionWorkshop - Build a Graph Solution
Workshop - Build a Graph Solution
Neo4j
 
The openCypher Project - An Open Graph Query Language
The openCypher Project - An Open Graph Query LanguageThe openCypher Project - An Open Graph Query Language
The openCypher Project - An Open Graph Query Language
Neo4j
 
Web-Scale Graph Analytics with Apache Spark with Tim Hunter
Web-Scale Graph Analytics with Apache Spark with Tim HunterWeb-Scale Graph Analytics with Apache Spark with Tim Hunter
Web-Scale Graph Analytics with Apache Spark with Tim Hunter
Databricks
 
Predicting Influence and Communities Using Graph Algorithms
Predicting Influence and Communities Using Graph AlgorithmsPredicting Influence and Communities Using Graph Algorithms
Predicting Influence and Communities Using Graph Algorithms
Databricks
 
Government GraphSummit: Leveraging Graphs for AI and ML
Government GraphSummit: Leveraging Graphs for AI and MLGovernment GraphSummit: Leveraging Graphs for AI and ML
Government GraphSummit: Leveraging Graphs for AI and ML
Neo4j
 
Graph Gurus Episode 2: Building a Movie Recommendation Engine
Graph Gurus Episode 2: Building a Movie Recommendation EngineGraph Gurus Episode 2: Building a Movie Recommendation Engine
Graph Gurus Episode 2: Building a Movie Recommendation Engine
TigerGraph
 
Building an Enterprise Knowledge Graph @Uber: Lessons from Reality
Building an Enterprise Knowledge Graph @Uber: Lessons from RealityBuilding an Enterprise Knowledge Graph @Uber: Lessons from Reality
Building an Enterprise Knowledge Graph @Uber: Lessons from Reality
Joshua Shinavier
 
Differential Privacy for Information Retrieval
Differential Privacy for Information RetrievalDifferential Privacy for Information Retrieval
Differential Privacy for Information Retrieval
Grace Hui Yang
 
Using Graph Algorithms for Advanced Analytics - Part 2 Centrality
Using Graph Algorithms for Advanced Analytics - Part 2 CentralityUsing Graph Algorithms for Advanced Analytics - Part 2 Centrality
Using Graph Algorithms for Advanced Analytics - Part 2 Centrality
TigerGraph
 
Introduction to Knowledge Graphs and Semantic AI
Introduction to Knowledge Graphs and Semantic AIIntroduction to Knowledge Graphs and Semantic AI
Introduction to Knowledge Graphs and Semantic AI
Semantic Web Company
 
Recent Trends in Personalization at Netflix
Recent Trends in Personalization at NetflixRecent Trends in Personalization at Netflix
Recent Trends in Personalization at Netflix
Förderverein Technische Fakultät
 
On-boarding with JanusGraph Performance
On-boarding with JanusGraph PerformanceOn-boarding with JanusGraph Performance
On-boarding with JanusGraph Performance
Chin Huang
 
Graph Gurus Episode 3: Anti Fraud and AML Part 1
Graph Gurus Episode 3: Anti Fraud and AML Part 1Graph Gurus Episode 3: Anti Fraud and AML Part 1
Graph Gurus Episode 3: Anti Fraud and AML Part 1
TigerGraph
 
Smarter Fraud Detection With Graph Data Science
Smarter Fraud Detection With Graph Data ScienceSmarter Fraud Detection With Graph Data Science
Smarter Fraud Detection With Graph Data Science
Neo4j
 

What's hot (20)

Graph-Powered Machine Learning
Graph-Powered Machine LearningGraph-Powered Machine Learning
Graph-Powered Machine Learning
 
3. Relationships Matter: Using Connected Data for Better Machine Learning
3. Relationships Matter: Using Connected Data for Better Machine Learning3. Relationships Matter: Using Connected Data for Better Machine Learning
3. Relationships Matter: Using Connected Data for Better Machine Learning
 
Boost Your Neo4j with User-Defined Procedures
Boost Your Neo4j with User-Defined ProceduresBoost Your Neo4j with User-Defined Procedures
Boost Your Neo4j with User-Defined Procedures
 
Winning data science competitions, presented by Owen Zhang
Winning data science competitions, presented by Owen ZhangWinning data science competitions, presented by Owen Zhang
Winning data science competitions, presented by Owen Zhang
 
Neptune, the Graph Database | AWS Floor28
Neptune, the Graph Database | AWS Floor28Neptune, the Graph Database | AWS Floor28
Neptune, the Graph Database | AWS Floor28
 
Network embedding
Network embeddingNetwork embedding
Network embedding
 
Workshop - Build a Graph Solution
Workshop - Build a Graph SolutionWorkshop - Build a Graph Solution
Workshop - Build a Graph Solution
 
The openCypher Project - An Open Graph Query Language
The openCypher Project - An Open Graph Query LanguageThe openCypher Project - An Open Graph Query Language
The openCypher Project - An Open Graph Query Language
 
Web-Scale Graph Analytics with Apache Spark with Tim Hunter
Web-Scale Graph Analytics with Apache Spark with Tim HunterWeb-Scale Graph Analytics with Apache Spark with Tim Hunter
Web-Scale Graph Analytics with Apache Spark with Tim Hunter
 
Predicting Influence and Communities Using Graph Algorithms
Predicting Influence and Communities Using Graph AlgorithmsPredicting Influence and Communities Using Graph Algorithms
Predicting Influence and Communities Using Graph Algorithms
 
Government GraphSummit: Leveraging Graphs for AI and ML
Government GraphSummit: Leveraging Graphs for AI and MLGovernment GraphSummit: Leveraging Graphs for AI and ML
Government GraphSummit: Leveraging Graphs for AI and ML
 
Graph Gurus Episode 2: Building a Movie Recommendation Engine
Graph Gurus Episode 2: Building a Movie Recommendation EngineGraph Gurus Episode 2: Building a Movie Recommendation Engine
Graph Gurus Episode 2: Building a Movie Recommendation Engine
 
Building an Enterprise Knowledge Graph @Uber: Lessons from Reality
Building an Enterprise Knowledge Graph @Uber: Lessons from RealityBuilding an Enterprise Knowledge Graph @Uber: Lessons from Reality
Building an Enterprise Knowledge Graph @Uber: Lessons from Reality
 
Differential Privacy for Information Retrieval
Differential Privacy for Information RetrievalDifferential Privacy for Information Retrieval
Differential Privacy for Information Retrieval
 
Using Graph Algorithms for Advanced Analytics - Part 2 Centrality
Using Graph Algorithms for Advanced Analytics - Part 2 CentralityUsing Graph Algorithms for Advanced Analytics - Part 2 Centrality
Using Graph Algorithms for Advanced Analytics - Part 2 Centrality
 
Introduction to Knowledge Graphs and Semantic AI
Introduction to Knowledge Graphs and Semantic AIIntroduction to Knowledge Graphs and Semantic AI
Introduction to Knowledge Graphs and Semantic AI
 
Recent Trends in Personalization at Netflix
Recent Trends in Personalization at NetflixRecent Trends in Personalization at Netflix
Recent Trends in Personalization at Netflix
 
On-boarding with JanusGraph Performance
On-boarding with JanusGraph PerformanceOn-boarding with JanusGraph Performance
On-boarding with JanusGraph Performance
 
Graph Gurus Episode 3: Anti Fraud and AML Part 1
Graph Gurus Episode 3: Anti Fraud and AML Part 1Graph Gurus Episode 3: Anti Fraud and AML Part 1
Graph Gurus Episode 3: Anti Fraud and AML Part 1
 
Smarter Fraud Detection With Graph Data Science
Smarter Fraud Detection With Graph Data ScienceSmarter Fraud Detection With Graph Data Science
Smarter Fraud Detection With Graph Data Science
 

Similar to Graph Gurus Episode 11: Accumulators for Complex Graph Analytics

Graph Gurus Episode 7: Connecting the Dots in Real-Time: Deep Link Analysis w...
Graph Gurus Episode 7: Connecting the Dots in Real-Time: Deep Link Analysis w...Graph Gurus Episode 7: Connecting the Dots in Real-Time: Deep Link Analysis w...
Graph Gurus Episode 7: Connecting the Dots in Real-Time: Deep Link Analysis w...
TigerGraph
 
DA 592 - Term Project Report - Berker Kozan Can Koklu
DA 592 - Term Project Report - Berker Kozan Can KokluDA 592 - Term Project Report - Berker Kozan Can Koklu
DA 592 - Term Project Report - Berker Kozan Can KokluCan Köklü
 
Graph Gurus Episode 32: Using Graph Algorithms for Advanced Analytics Part 5
Graph Gurus Episode 32: Using Graph Algorithms for Advanced Analytics Part 5Graph Gurus Episode 32: Using Graph Algorithms for Advanced Analytics Part 5
Graph Gurus Episode 32: Using Graph Algorithms for Advanced Analytics Part 5
TigerGraph
 
Learning to Rank: From Theory to Production - Malvina Josephidou & Diego Cecc...
Learning to Rank: From Theory to Production - Malvina Josephidou & Diego Cecc...Learning to Rank: From Theory to Production - Malvina Josephidou & Diego Cecc...
Learning to Rank: From Theory to Production - Malvina Josephidou & Diego Cecc...
Lucidworks
 
Flink Forward San Francisco 2018: Gregory Fee - "Bootstrapping State In Apach...
Flink Forward San Francisco 2018: Gregory Fee - "Bootstrapping State In Apach...Flink Forward San Francisco 2018: Gregory Fee - "Bootstrapping State In Apach...
Flink Forward San Francisco 2018: Gregory Fee - "Bootstrapping State In Apach...
Flink Forward
 
Planning and Tracking Agile Projects
Planning and Tracking Agile ProjectsPlanning and Tracking Agile Projects
Planning and Tracking Agile ProjectsMike Cohn
 
Introduction to GluonNLP
Introduction to GluonNLPIntroduction to GluonNLP
Introduction to GluonNLP
Apache MXNet
 
Graph Gurus 21: Integrating Real-Time Deep-Link Graph Analytics with Spark AI
Graph Gurus 21: Integrating Real-Time Deep-Link Graph Analytics with Spark AIGraph Gurus 21: Integrating Real-Time Deep-Link Graph Analytics with Spark AI
Graph Gurus 21: Integrating Real-Time Deep-Link Graph Analytics with Spark AI
TigerGraph
 
Graph Gurus Episode 19: Deep Learning Implemented by GSQL on a Native Paralle...
Graph Gurus Episode 19: Deep Learning Implemented by GSQL on a Native Paralle...Graph Gurus Episode 19: Deep Learning Implemented by GSQL on a Native Paralle...
Graph Gurus Episode 19: Deep Learning Implemented by GSQL on a Native Paralle...
TigerGraph
 
Python tutorial for ML
Python tutorial for MLPython tutorial for ML
Python tutorial for ML
Bin Han
 
Deep learning for product title summarization
Deep learning for product title summarizationDeep learning for product title summarization
Deep learning for product title summarization
MLconf
 
Bootstrapping state in Apache Flink
Bootstrapping state in Apache FlinkBootstrapping state in Apache Flink
Bootstrapping state in Apache Flink
DataWorks Summit
 
Machine learning for predictive maintenance external
Machine learning for predictive maintenance   externalMachine learning for predictive maintenance   external
Machine learning for predictive maintenance external
Prashant K Dhingra
 
No liftoff, touchdown, or heartbeat shall miss because of a software failure
No liftoff, touchdown, or heartbeat shall miss because of a software failureNo liftoff, touchdown, or heartbeat shall miss because of a software failure
No liftoff, touchdown, or heartbeat shall miss because of a software failure
Rogue Wave Software
 
Node.js Deeper Dive
Node.js Deeper DiveNode.js Deeper Dive
Node.js Deeper Dive
Justin Reock
 
ODSC18, London, How to build high performing weighted XGBoost ML Model for Re...
ODSC18, London, How to build high performing weighted XGBoost ML Model for Re...ODSC18, London, How to build high performing weighted XGBoost ML Model for Re...
ODSC18, London, How to build high performing weighted XGBoost ML Model for Re...
Alok Singh
 
Musings of kaggler
Musings of kagglerMusings of kaggler
Musings of kaggler
Kai Xin Thia
 
Adtech scala-performance-tuning-150323223738-conversion-gate01
Adtech scala-performance-tuning-150323223738-conversion-gate01Adtech scala-performance-tuning-150323223738-conversion-gate01
Adtech scala-performance-tuning-150323223738-conversion-gate01
Giridhar Addepalli
 
Adtech x Scala x Performance tuning
Adtech x Scala x Performance tuningAdtech x Scala x Performance tuning
Adtech x Scala x Performance tuning
Yosuke Mizutani
 
Geek Sync | Why is the Same Query Sometimes Slow?
Geek Sync | Why is the Same Query Sometimes Slow?Geek Sync | Why is the Same Query Sometimes Slow?
Geek Sync | Why is the Same Query Sometimes Slow?
IDERA Software
 

Similar to Graph Gurus Episode 11: Accumulators for Complex Graph Analytics (20)

Graph Gurus Episode 7: Connecting the Dots in Real-Time: Deep Link Analysis w...
Graph Gurus Episode 7: Connecting the Dots in Real-Time: Deep Link Analysis w...Graph Gurus Episode 7: Connecting the Dots in Real-Time: Deep Link Analysis w...
Graph Gurus Episode 7: Connecting the Dots in Real-Time: Deep Link Analysis w...
 
DA 592 - Term Project Report - Berker Kozan Can Koklu
DA 592 - Term Project Report - Berker Kozan Can KokluDA 592 - Term Project Report - Berker Kozan Can Koklu
DA 592 - Term Project Report - Berker Kozan Can Koklu
 
Graph Gurus Episode 32: Using Graph Algorithms for Advanced Analytics Part 5
Graph Gurus Episode 32: Using Graph Algorithms for Advanced Analytics Part 5Graph Gurus Episode 32: Using Graph Algorithms for Advanced Analytics Part 5
Graph Gurus Episode 32: Using Graph Algorithms for Advanced Analytics Part 5
 
Learning to Rank: From Theory to Production - Malvina Josephidou & Diego Cecc...
Learning to Rank: From Theory to Production - Malvina Josephidou & Diego Cecc...Learning to Rank: From Theory to Production - Malvina Josephidou & Diego Cecc...
Learning to Rank: From Theory to Production - Malvina Josephidou & Diego Cecc...
 
Flink Forward San Francisco 2018: Gregory Fee - "Bootstrapping State In Apach...
Flink Forward San Francisco 2018: Gregory Fee - "Bootstrapping State In Apach...Flink Forward San Francisco 2018: Gregory Fee - "Bootstrapping State In Apach...
Flink Forward San Francisco 2018: Gregory Fee - "Bootstrapping State In Apach...
 
Planning and Tracking Agile Projects
Planning and Tracking Agile ProjectsPlanning and Tracking Agile Projects
Planning and Tracking Agile Projects
 
Introduction to GluonNLP
Introduction to GluonNLPIntroduction to GluonNLP
Introduction to GluonNLP
 
Graph Gurus 21: Integrating Real-Time Deep-Link Graph Analytics with Spark AI
Graph Gurus 21: Integrating Real-Time Deep-Link Graph Analytics with Spark AIGraph Gurus 21: Integrating Real-Time Deep-Link Graph Analytics with Spark AI
Graph Gurus 21: Integrating Real-Time Deep-Link Graph Analytics with Spark AI
 
Graph Gurus Episode 19: Deep Learning Implemented by GSQL on a Native Paralle...
Graph Gurus Episode 19: Deep Learning Implemented by GSQL on a Native Paralle...Graph Gurus Episode 19: Deep Learning Implemented by GSQL on a Native Paralle...
Graph Gurus Episode 19: Deep Learning Implemented by GSQL on a Native Paralle...
 
Python tutorial for ML
Python tutorial for MLPython tutorial for ML
Python tutorial for ML
 
Deep learning for product title summarization
Deep learning for product title summarizationDeep learning for product title summarization
Deep learning for product title summarization
 
Bootstrapping state in Apache Flink
Bootstrapping state in Apache FlinkBootstrapping state in Apache Flink
Bootstrapping state in Apache Flink
 
Machine learning for predictive maintenance external
Machine learning for predictive maintenance   externalMachine learning for predictive maintenance   external
Machine learning for predictive maintenance external
 
No liftoff, touchdown, or heartbeat shall miss because of a software failure
No liftoff, touchdown, or heartbeat shall miss because of a software failureNo liftoff, touchdown, or heartbeat shall miss because of a software failure
No liftoff, touchdown, or heartbeat shall miss because of a software failure
 
Node.js Deeper Dive
Node.js Deeper DiveNode.js Deeper Dive
Node.js Deeper Dive
 
ODSC18, London, How to build high performing weighted XGBoost ML Model for Re...
ODSC18, London, How to build high performing weighted XGBoost ML Model for Re...ODSC18, London, How to build high performing weighted XGBoost ML Model for Re...
ODSC18, London, How to build high performing weighted XGBoost ML Model for Re...
 
Musings of kaggler
Musings of kagglerMusings of kaggler
Musings of kaggler
 
Adtech scala-performance-tuning-150323223738-conversion-gate01
Adtech scala-performance-tuning-150323223738-conversion-gate01Adtech scala-performance-tuning-150323223738-conversion-gate01
Adtech scala-performance-tuning-150323223738-conversion-gate01
 
Adtech x Scala x Performance tuning
Adtech x Scala x Performance tuningAdtech x Scala x Performance tuning
Adtech x Scala x Performance tuning
 
Geek Sync | Why is the Same Query Sometimes Slow?
Geek Sync | Why is the Same Query Sometimes Slow?Geek Sync | Why is the Same Query Sometimes Slow?
Geek Sync | Why is the Same Query Sometimes Slow?
 

More from TigerGraph

MAXIMIZING THE VALUE OF SCIENTIFIC INFORMATION TO ACCELERATE INNOVATION
MAXIMIZING THE VALUE OF SCIENTIFIC INFORMATION TO ACCELERATE INNOVATIONMAXIMIZING THE VALUE OF SCIENTIFIC INFORMATION TO ACCELERATE INNOVATION
MAXIMIZING THE VALUE OF SCIENTIFIC INFORMATION TO ACCELERATE INNOVATION
TigerGraph
 
Better Together: How Graph database enables easy data integration with Spark ...
Better Together: How Graph database enables easy data integration with Spark ...Better Together: How Graph database enables easy data integration with Spark ...
Better Together: How Graph database enables easy data integration with Spark ...
TigerGraph
 
Building an accurate understanding of consumers based on real-world signals
Building an accurate understanding of consumers based on real-world signalsBuilding an accurate understanding of consumers based on real-world signals
Building an accurate understanding of consumers based on real-world signals
TigerGraph
 
Care Intervention Assistant - Omaha Clinical Data Information System
Care Intervention Assistant - Omaha Clinical Data Information SystemCare Intervention Assistant - Omaha Clinical Data Information System
Care Intervention Assistant - Omaha Clinical Data Information System
TigerGraph
 
Correspondent Banking Networks
Correspondent Banking NetworksCorrespondent Banking Networks
Correspondent Banking Networks
TigerGraph
 
Delivering Large Scale Real-time Graph Analytics with Dell Infrastructure and...
Delivering Large Scale Real-time Graph Analytics with Dell Infrastructure and...Delivering Large Scale Real-time Graph Analytics with Dell Infrastructure and...
Delivering Large Scale Real-time Graph Analytics with Dell Infrastructure and...
TigerGraph
 
Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...
Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...
Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...
TigerGraph
 
Fraud Detection and Compliance with Graph Learning
Fraud Detection and Compliance with Graph LearningFraud Detection and Compliance with Graph Learning
Fraud Detection and Compliance with Graph Learning
TigerGraph
 
Fraudulent credit card cash-out detection On Graphs
Fraudulent credit card cash-out detection On GraphsFraudulent credit card cash-out detection On Graphs
Fraudulent credit card cash-out detection On Graphs
TigerGraph
 
FROM DATAFRAMES TO GRAPH Data Science with pyTigerGraph
FROM DATAFRAMES TO GRAPH Data Science with pyTigerGraphFROM DATAFRAMES TO GRAPH Data Science with pyTigerGraph
FROM DATAFRAMES TO GRAPH Data Science with pyTigerGraph
TigerGraph
 
Customer Experience Management
Customer Experience ManagementCustomer Experience Management
Customer Experience Management
TigerGraph
 
Graph+AI for Fin. Services
Graph+AI for Fin. ServicesGraph+AI for Fin. Services
Graph+AI for Fin. Services
TigerGraph
 
Davraz - A graph visualization and exploration software.
Davraz - A graph visualization and exploration software.Davraz - A graph visualization and exploration software.
Davraz - A graph visualization and exploration software.
TigerGraph
 
Plume - A Code Property Graph Extraction and Analysis Library
Plume - A Code Property Graph Extraction and Analysis LibraryPlume - A Code Property Graph Extraction and Analysis Library
Plume - A Code Property Graph Extraction and Analysis Library
TigerGraph
 
TigerGraph.js
TigerGraph.jsTigerGraph.js
TigerGraph.js
TigerGraph
 
GRAPHS FOR THE FUTURE ENERGY SYSTEMS
GRAPHS FOR THE FUTURE ENERGY SYSTEMSGRAPHS FOR THE FUTURE ENERGY SYSTEMS
GRAPHS FOR THE FUTURE ENERGY SYSTEMS
TigerGraph
 
Hardware Accelerated Machine Learning Solution for Detecting Fraud and Money ...
Hardware Accelerated Machine Learning Solution for Detecting Fraud and Money ...Hardware Accelerated Machine Learning Solution for Detecting Fraud and Money ...
Hardware Accelerated Machine Learning Solution for Detecting Fraud and Money ...
TigerGraph
 
How to Build An AI Based Customer Data Platform: Learn the design patterns fo...
How to Build An AI Based Customer Data Platform: Learn the design patterns fo...How to Build An AI Based Customer Data Platform: Learn the design patterns fo...
How to Build An AI Based Customer Data Platform: Learn the design patterns fo...
TigerGraph
 
Machine Learning Feature Design with TigerGraph 3.0 No-Code GUI
Machine Learning Feature Design with TigerGraph 3.0 No-Code GUIMachine Learning Feature Design with TigerGraph 3.0 No-Code GUI
Machine Learning Feature Design with TigerGraph 3.0 No-Code GUI
TigerGraph
 
Recommendation Engine with In-Database Machine Learning
Recommendation Engine with In-Database Machine LearningRecommendation Engine with In-Database Machine Learning
Recommendation Engine with In-Database Machine Learning
TigerGraph
 

More from TigerGraph (20)

MAXIMIZING THE VALUE OF SCIENTIFIC INFORMATION TO ACCELERATE INNOVATION
MAXIMIZING THE VALUE OF SCIENTIFIC INFORMATION TO ACCELERATE INNOVATIONMAXIMIZING THE VALUE OF SCIENTIFIC INFORMATION TO ACCELERATE INNOVATION
MAXIMIZING THE VALUE OF SCIENTIFIC INFORMATION TO ACCELERATE INNOVATION
 
Better Together: How Graph database enables easy data integration with Spark ...
Better Together: How Graph database enables easy data integration with Spark ...Better Together: How Graph database enables easy data integration with Spark ...
Better Together: How Graph database enables easy data integration with Spark ...
 
Building an accurate understanding of consumers based on real-world signals
Building an accurate understanding of consumers based on real-world signalsBuilding an accurate understanding of consumers based on real-world signals
Building an accurate understanding of consumers based on real-world signals
 
Care Intervention Assistant - Omaha Clinical Data Information System
Care Intervention Assistant - Omaha Clinical Data Information SystemCare Intervention Assistant - Omaha Clinical Data Information System
Care Intervention Assistant - Omaha Clinical Data Information System
 
Correspondent Banking Networks
Correspondent Banking NetworksCorrespondent Banking Networks
Correspondent Banking Networks
 
Delivering Large Scale Real-time Graph Analytics with Dell Infrastructure and...
Delivering Large Scale Real-time Graph Analytics with Dell Infrastructure and...Delivering Large Scale Real-time Graph Analytics with Dell Infrastructure and...
Delivering Large Scale Real-time Graph Analytics with Dell Infrastructure and...
 
Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...
Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...
Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...
 
Fraud Detection and Compliance with Graph Learning
Fraud Detection and Compliance with Graph LearningFraud Detection and Compliance with Graph Learning
Fraud Detection and Compliance with Graph Learning
 
Fraudulent credit card cash-out detection On Graphs
Fraudulent credit card cash-out detection On GraphsFraudulent credit card cash-out detection On Graphs
Fraudulent credit card cash-out detection On Graphs
 
FROM DATAFRAMES TO GRAPH Data Science with pyTigerGraph
FROM DATAFRAMES TO GRAPH Data Science with pyTigerGraphFROM DATAFRAMES TO GRAPH Data Science with pyTigerGraph
FROM DATAFRAMES TO GRAPH Data Science with pyTigerGraph
 
Customer Experience Management
Customer Experience ManagementCustomer Experience Management
Customer Experience Management
 
Graph+AI for Fin. Services
Graph+AI for Fin. ServicesGraph+AI for Fin. Services
Graph+AI for Fin. Services
 
Davraz - A graph visualization and exploration software.
Davraz - A graph visualization and exploration software.Davraz - A graph visualization and exploration software.
Davraz - A graph visualization and exploration software.
 
Plume - A Code Property Graph Extraction and Analysis Library
Plume - A Code Property Graph Extraction and Analysis LibraryPlume - A Code Property Graph Extraction and Analysis Library
Plume - A Code Property Graph Extraction and Analysis Library
 
TigerGraph.js
TigerGraph.jsTigerGraph.js
TigerGraph.js
 
GRAPHS FOR THE FUTURE ENERGY SYSTEMS
GRAPHS FOR THE FUTURE ENERGY SYSTEMSGRAPHS FOR THE FUTURE ENERGY SYSTEMS
GRAPHS FOR THE FUTURE ENERGY SYSTEMS
 
Hardware Accelerated Machine Learning Solution for Detecting Fraud and Money ...
Hardware Accelerated Machine Learning Solution for Detecting Fraud and Money ...Hardware Accelerated Machine Learning Solution for Detecting Fraud and Money ...
Hardware Accelerated Machine Learning Solution for Detecting Fraud and Money ...
 
How to Build An AI Based Customer Data Platform: Learn the design patterns fo...
How to Build An AI Based Customer Data Platform: Learn the design patterns fo...How to Build An AI Based Customer Data Platform: Learn the design patterns fo...
How to Build An AI Based Customer Data Platform: Learn the design patterns fo...
 
Machine Learning Feature Design with TigerGraph 3.0 No-Code GUI
Machine Learning Feature Design with TigerGraph 3.0 No-Code GUIMachine Learning Feature Design with TigerGraph 3.0 No-Code GUI
Machine Learning Feature Design with TigerGraph 3.0 No-Code GUI
 
Recommendation Engine with In-Database Machine Learning
Recommendation Engine with In-Database Machine LearningRecommendation Engine with In-Database Machine Learning
Recommendation Engine with In-Database Machine Learning
 

Recently uploaded

May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
kalichargn70th171
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Anthony Dahanne
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 

Recently uploaded (20)

May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 

Graph Gurus Episode 11: Accumulators for Complex Graph Analytics

  • 1. Graph Gurus Episode 11 Using Accumulators in GSQL for Complex Graph Analytics
  • 2. © 2019 TigerGraph. All Rights Reserved Welcome ● Attendees are muted ● If you have any Zoom issues please contact the panelists via chat ● We will have 10 min for Q&A at the end so please send your questions at any time using the Q&A tab in the Zoom menu ● The webinar will be recorded and sent via email 2
  • 3. © 2019 TigerGraph. All Rights Reserved Developer Edition Available We now offer Docker versions and VirtualBox versions of the TigerGraph Developer Edition, so you can now run on ● MacOS ● Windows 10 ● Linux Developer Edition Download https://www.tigergraph.com/developer/ 3 Version 2.3 Released Today
  • 4. © 2019 TigerGraph. All Rights Reserved Today's Gurus 4 Victor Lee Director of Product Management ● BS in Electrical Engineering and Computer Science from UC Berkeley, MS in Electrical Engineering from Stanford University ● PhD in Computer Science from Kent State University focused on graph data mining ● 15+ years in tech industry Gaurav Deshpande Vice President of Marketing ● Built out and positioned IBM’s Big Data and Analytics portfolio, driving 45 percent year-over-year growth. ● Led 2 startups through explosive growth - i2 Technologies (IPO) & Trigo Technologies (largest MDM acquisition by IBM) ● Big Data Analytics Veteran, 14 patents in supply chain management and big data analytics
  • 5. © 2019 TigerGraph. All Rights Reserved How Can TigerGraph Help You? Improve Operational EfficiencyReduce Costs & Manage RisksIncrease Revenue • Recommendation Engine • Real-time Customer 360/ MDM • Product & Service Marketing • Fraud Detection • Anti-Money Laundering (AML) • Risk Assessment & Monitoring • Cyber Security • Enterprise Knowledge Graph • Network, IT and Cloud Resource Optimization • Energy Management System • Supply Chain Analysis Analyze all interactions in real-time to sell more Reduce costs and assess and monitor risks effectively Manage resources for maximum output Foundational Use Cases: Geospatial Analysis, Time Series Analysis, AI and Machine Learning
  • 6. © 2019 TigerGraph. All Rights Reserved Driving Business Outcomes with TigerGraph Increase Revenue Grew to Billion+ in annual revenue in 5 years with TigerGraph Reduce Costs & Manage Risks Recommendation Engine Detects fraud in real-time for 300+ Million calls per day with TigerGraph Fraud Detection Improve Operational Efficiency Improve Operational Efficiency Optimizes infrastructure to minimize outages for critical workloads with TigerGraph Network & IT Resource Optimization
  • 7. © 2019 TigerGraph. All Rights Reserved Accumulators 7 Example: A teacher collects test papers from all students and calculates an average score. Teacher: node with an accumulator Student: node Student-to-teacher: edge Test paper: message sent to accumulator Average Score: final value of accumulator Phase 1: teacher collects all the test papers Phase 2: teacher grades it and calculates the average score.
  • 8. © 2019 TigerGraph. All Rights Reserved Example 1: Counting Movies Seen by Friends Analogy: You ask each of your friends to tally how many movies they saw last year (They work at the same time → Parallelism!) ● This is the Gathering phase ● Next, you need to Consolidate into one list. → Eliminate the duplicates Lee Bob Chris Sue If we are only counting (not recording names), How can we eliminate duplicates? P Q R S T
  • 9. © 2019 TigerGraph. All Rights Reserved Eliminating Duplication: visited flag ● Traditional method: Each target Item has a true/false "flag", initialized to "false" ● If a flag is "false": ○ It may be counted; Set the flag to "true" ● If a flag is "true": ○ Skip it ● ⇒ Each item is counted once Lee Bob Chris Sue If we are only counting (not recording names), How can we eliminate duplicates?
  • 10. © 2019 TigerGraph. All Rights Reserved Counting Movies with Accumulators An accumulator is a runtime, shared variable with a built-in update function. 1. Each friend's tally is a local Accumulator. 2. The visited flag is also a local Accumulator. a. Bob, Chris, and Sue all visit "R", but we don't know who will first. 3. GSQL queries are designed to let each friend work in parallel, but at its own pace, and in any order 4. Consolidate the Lists into one global Accumulator. Bob: 2 (P, Q) Chris: 1 (S) Sue: 2 (R,T)
  • 11. © 2019 TigerGraph. All Rights Reserved Optimization: One global list/tally Instead of each friend keeping a separate tally… Keep only one tally. ● Eliminates the consolidate step ● Saves memory Each friend still works separately, but they record their efforts in one common place. Lee Bob Chris Sue
  • 12. © 2019 TigerGraph. All Rights Reserved friendsMovieCount GSQL Query CREATE QUERY friendsMovieCount (VERTEX me) { OrAccum @visited = false; // @ means local SumAccum<INT> @@movieCount; // @@ means global #~~~~~~~~~~~~~~ Start = {me}; Friends = SELECT f # 1. Identify my friends FROM Start:s -(friendOf:e)- Person:f; #~~~~~~~~~~~~~~ Movies = SELECT m # 2. Identify the movies they've seen FROM Friends:f -(saw:r)- Movie:m ACCUM IF m.@visited == false THEN @@movieCount += 1, m.@visited += true; # 3. Count each movie once #~~~~~~~~~~~~~~ PRINT @@movieCount; }
  • 13. © 2019 TigerGraph. All Rights Reserved Review - Accumulator Properties ● Scope: Local (per vertex) or global ● Multiple data types and functions available ○ For flag: Boolean true/false data, OR function ○ For tally: Integer data, Sum function ● Supports multi-worker processing for parallelism ○ Shared: Anyone can read ○ Shared: Anyone can update submit an update request ○ All the accumulated updates are processed at once, at the end.
  • 14. © 2019 TigerGraph. All Rights Reserved Types of Accumulators The GSQL language provides many different accumulators, which follow the same rules for receiving and accessing data. However each of them has their unique way of aggregating values. 14 Old Value: 2 New Value: 11 1, 3, 5 1 3 5 SumAccum<int> Old Value: 2 New Value: 5 1, 3, 5 1 3 MaxAccum<int> Old Value: 2 New Value: 1 1, 3, 5 1 3 MinAccum<int> Old Value: 2 New Value: 2.75 1, 3, 5 1 3 AvgAccum 5 5 5 Computes and stores the cumulative sum of numeric values or the cumulative concatenation of text values. Computes and stores the cumulative maximum of a series of values. Computes and stores the cumulative mean of a series of numeric values. Computes and stores the cumulative minimum of a series of values.
  • 15. © 2019 TigerGraph. All Rights Reserved The GSQL language provides many different accumulators, which follow the same rules for receiving and accessing data. However each of them has their unique way of aggregating values. 15 Old Value: [2] New Value: [2,1,3,5] 1, 3, 3, 5 1 3 5 SetAccum<int> Old Value: [2] New Value: [2,1,5,3,3] 1, 5, 3, 3 1 3 ListAccum<int> Old Value: [1->1] New Value: 1->6 5->2 1->2 1->3 5->2 1->2 1->3 MapAccum<int,SumAccum<int>> Old Value: [userD,150] New Value: [userC,300, UserD,150, userA,100] userC,300 userA,100 (“userA”, 100) HeapAccum<Tuple> 5 5->23 3 (“userC”, 300) Maintains a collection of unique elements. Maintains a sequential collection of elements. Maintains a collection of (key → value) pairs. Maintains a sorted collection of tuples and enforces a maximum number of tuples in the collection Types of Accumulators, continued
  • 16. © 2019 TigerGraph. All Rights Reserved Use Case: Graph Algorithms PageRank analyzes the WHOLE graph ● For each node V: PR(V) = sum [ PR(A) /deg(A) + PR(B) /deg(B) + PR(C) /deg(C) ] ○ Summing contributions from several independent nodes → Ideal task for accumulators and parallel processing ● Compute a score for each node → parallelism ● Iterative method: Keep recalculating PR(v) for the full graph, unless the max change in PR < threshold → MaxAccum V A B C
  • 17. © 2018 TigerGraph. All Rights Reserved 17 Input: A person p, two integer parameters k1 and k2 Algorithm steps: 1. Find all movies p has rated; 2. Find all persons rated same movies as p; 3. Based on the movie ratings, find the k1 persons that have most similar tastes with p; 4. Find all movies these k1 persons rated that p hasn’t rated yet; 5. Recommend the top k2 movies with highest average rating by the k1 persons; Output: At most k2 movies to be recommended to person p. p …... rate rate rate PRatedMovies PSet …... PeopleRatedSameMovies rate rate rate rate …... rate rate rate rate Implementing Movie Recommendation Algorithm
  • 18. © 2019 TigerGraph. All Rights Reserved More Use Cases: Anti-Fraud TestDrive Anti-Fraud: https://testdrive.tigergraph.com/main/dashboard CIrcle Detection: ● Is money passing from A → B → C → … → back to A? See Graph Gurus #4 on our YouTube Channel: https://www.youtube.com/tigergraph
  • 19. © 2019 TigerGraph. All Rights Reserved Demo 19
  • 20. © 2019 TigerGraph. All Rights Reserved Summary • Graph Traversal and Graph Analytics can be complex, but also amenable to parallelism. • Accumulators, coupled with the TigerGraph MPP engine, provide simple and efficient parallelized aggregation. • Accumulators come in a variety of shapes and sizes, to fit all different needs. 20
  • 21. Q&A Please send your questions via the Q&A menu in Zoom 21
  • 22. © 2019 TigerGraph. All Rights Reserved NEW! Graph Gurus Developer Office Hours 22 The Graph Gurus Webinar in late March or catch up on previous episodes: https://www.tigergraph.com/webinars-and-events/ Every Thursday at 11:00 am Pacific Talk directly with our engineers every week. During office hours, you get answers to any questions pertaining to graph modeling and GSQL programming. https://info.tigergraph.com/officehours
  • 23. © 2019 TigerGraph. All Rights Reserved Additional Resources 23 New Developer Portal https://www.tigergraph.com/developers/ Download the Developer Edition or Enterprise Free Trial https://www.tigergraph.com/download/ Guru Scripts https://github.com/tigergraph/ecosys/tree/master/guru_scripts Join our Developer Forum https://groups.google.com/a/opengsql.org/forum/#!forum/gsql-users @TigerGraphDB youtube.com/tigergraph facebook.com/TigerGraphDB linkedin.com/company/TigerGraph