SlideShare uma empresa Scribd logo
1 de 41
www.Objectivity.com
Nick Quinn
Lead Developer - InfiniteGraph
What are we talking about today?
Not that Bacon This Bacon!
• Intro to the Six Degrees Problem
• What is a Graph Database?
• Why Bacon in Graph Database?
• How we solved the problem
Images Courtesy of IMDB (www.imdb.com)
Six Degrees of Bacon
“…any individual involved in the Hollywood, California film industry
can be linked through his or her film roles to actor Kevin Bacon
within six steps”
[http://en.wikipedia.org/wiki/Six_Degrees_of_Kevin_Bacon]
Gina Menza
Images Courtesy of IMDB (www.imdb.com)
A Tale of Two Kevins
Why Six Degrees of Bacon?
Actor Age # of Projects
Kevin Bacon 54 76
Harrison Ford 70 70
Tom Cruise 50 40
Julia Roberts 45 50
Tom Hanks 56 73
Denzel Washington 58 53
Michael Caine 80 157
Kiefer Sutherland 46 82
Kevin Bacon
Images Courtesy of IMDB (www.imdb.com)
Bacon Numbers in Google
In the summer of 2012, Google started to allow users to find the
bacon number of any actor simply by following his or her name
with “bacon number”.
Morgan
Freeman
The Dark
Night
Rises
appeared in
Gary
Oldman
appeared in
Kevin
Bacon
Criminal
Law
appeared in
appeared in
www.google.com Graphical Representation
What is a Graph Database ?
The Physical Data Model
• Difference between relational & graph databases
Meetings
P1 Place TimeP2
Alice Denver 5-27-10Bob
Calls
From Time DurationTo
Bob 13:20 25Carlos
Bob 17:10 15Charlie
Payments
From Date AmountTo
Carlos 5-12-10 100000Charlie
Met
5-27-10
Alice
Called
13:20
Bob
Paid
100000
Carlos
Charlie
Called
17:10
Rows/Columns/Tables Relationship/Graph Optimized
Connecting Data
Person Building
?
Work Live RR Visit Eat Shop
Who is Gina Menza?
• How do we get meaning from highly
connected data?
Gina Menza
Jury Forewoman Miss Jeffries
Images Courtesy of IMDB (www.imdb.com)
Strength of Connections Matter!
• Why 6 degrees of separation and not 3.74?
• We need analysis tools in order to
– identify and filter out “unimportant” data and
– infer what needs to be filtered as we investigate it.
“When considering another
person in the world, a friend
of your friend knows a
friend of their friend”
- facebook
Why Bacon in a Graph Database ?
Graph Analysis
• Why use Graph Databases for graph analysis?
– Dynamic on Live Data
– Feedback/Inference
– Optimized for concurrent user access
– Handles big data problems
– Native Graph Traversal API
– Manage memory efficiently
Paths to Bacon
Bacon Number
(Degree of Separation / 2)
# of People
1 2823
2 323677
3 1088560
4 272905
5 22533
6 2300
Using the IMDB (www.imdb.com) data set, we can study how many paths
can be found by degrees of separation from Kevin Bacon. Out of 5,067,124
nodes and 11,505,797 edges, we get the following:
0
200000
400000
600000
800000
1000000
1200000
1 2 3 4 5 6
# of
People
Big Data + Graph = Big Graph Data
4 Degrees of Kevin Bacon
(Breadth First up to 20K connections)
Images generated using the IG Visualizer
Analyzing Bacon
• To be able to perform meaningful analysis,
these are things that you will need:
– Ingest IMDB Dataset – About 50 Formatted
compressed files (Largest > 200 MB)
– Custom algorithm support to perform meaningful
analysis
• Optimize queries to get results back in reasonable time
– Visualization tool to test and view the results of
the navigation (optional)
How IG Sizzles Your Bacon
Ingest
Update
Navigate
Massive graph data require efficient and intelligent tools
to analyze and understand it.
Super Simple Java API
Actor bacon = new Actor(“Kevin Bacon”);
imdbGraphDB.addVertex( bacon );
Movie apollo= new Movie(“Apollo 13”, 1995);
imdbGraphDB.addVertex( apollo );
ActedIn bacon2apollo = new ActedIn(“Jack Swigert”);
imdbGraphDB.addEdge(bacon2apollo, bacon, apollo,
EdgeKind.BIDIRECTIONAL, 1 /**weight**/);
Ingest
Scaling Writes
• Big/Fast data demands write performance
• Most NoSQL solutions allow you to scale
writes by…
– Partitioning the data
– Understanding your consistency requirements
– Allowing you to defer conflicts
Ingest
App-2
(Ingest V2)
App-2
(E23{ V2V3})
Scaling Graph Writes
ACID Transactions
InfiniteGraph
Objectivity/DB Persistence Layer
App-1
(Ingest V1)
App-3
(Ingest V3)
V1 V2 V3
App-1
(E1 2{ V1V2})
App-3
E12 E23
Ingest
High Performance Edge Ingest
IG Core/API
C1
C2
C3
E12
E23
TargetContainers
PipelineContainers
E(1->2)
E(3->1)
E(2->3)
E(2->1)
E(2->3)
E(3->1)
E(1->2)
E(3->2)
E(1->2)
E(2->3)
E(3->1)
E(2->1)
E(2->3)
E(3->1)
E(3->2)
E(1->2)
Pipeline
Agent
Ingest
Trade offs
• Excellent for efficient use of page cache
• Able to maintain full database consistency
• Achieves highest ingest rate in distributed
environments
• Almost always has highest “perceived” rate
• Trading Off :
• Eventual consistency in graph (connections)
• Updates are still atomic, isolated and durable but phased
• External agent performs graph building
Ingest
Result…
1 client
2 clients
4 clients
8 clients
0
50000
100000
150000
200000
250000
300000
350000
400000
450000
500000
1
2
4
NodesandEdgespersecond
1 client
2 clients
4 clients
8 clients
Ingest
Scaling Reads and Query
Distributed API
Application(s)
Partition 1 Partition 3Partition 2 Partition ...n
Processor Processor Processor Processor
Partitioning and Read Replicas… easy right !
Why are Graphs Different ?
Distributed API
Application(s)
Partition 1 Partition 3Partition 2 Partition ...n
Processor Processor Processor Processor
Navigate
Distributed Navigation
• Detect local hops and perform in memory
traversal
• Send the partial path to the distributed
processing to continue the navigation.
• Intelligently cache remote data when accessed
frequently
• Route tasks to other hosts when it is optimal
Navigate
Distributed Navigation Server
Processor
Distributed API
Partition 1 Partition 2
Processor
Application
A
X
Y
B
C
D
E
P(A,B,C,D)
F
G
Navigate
GraphViews
Leveraging Schema in the Graph
Patient Prescription
Drug
Ingredient
Outcome
Complaint
Visit
Allergy
Physician
Navigate
Schema Enables Views
• GraphViews are extremely powerful
• Allow Big Data to appear small !
• Connection inference can lead to exponential
gains in query performance
• Views are reusable between queries
• Views can be persisted
• Built into the native kernel
Navigate
Problem of Supernodes
In Graph Theory, a “supernode” is a vertex with a
disproportionally high number of connected edges.
Supernodes make it difficult to do a navigational query in
real-time due to the amount of effort it may be to pursue
paths through it that may be unfruitful.
Navigate
Images generated using the IG Visualizer
Supernodes in Bacon
Navigate
In the IMDB data set, some examples of supernodes may be talk
shows, awards shows, compilations or variety shows.
Images generated using the IG Visualizer
How to avoid supernodes
1. Setting policies on the navigation like the
NoRevisitPolicy , MaximumResultCountPolicy and
MaximumPathDepthPolicy can be used to customize the
overall behavior of the navigation.
PolicyChain policies = new PolicyChain();
// Only traverse the same vertex once
policies.addPolicy(new NoRevisitPolicy());
// limits the number of paths that will be returned to 10K
policies.addPolicy(new MaximumResultCountPolicy(10000));
// limits the path depth to 6
policies.addPolicy(new MaximumPathDepthPolicy(6));
Navigate
How to avoid supernodes
2. Graph View to exclude or limit types
GraphView view = new GraphView();
//Excludes all instances of TvShow from navigation
view.excludeClass(myDb.getTypeId(TvShow.class.getName()));
//Excludes all movies made for TV/Video
view.excludeClass(myDb.getTypeId(Movie.class.getName()),
“details.madeForTv || details.madeForVideo”);
//Include ActedIn w/ characterName not containing “Himself”
view.excludeClass(myDb.getTypeId(WorkedOn.class.getName()));
view.includeClass(myDb.getTypeId(ActedIn.class.getName()),
“!CONTAINS(characterName, “Himself”)”);
Navigate
Kevin Bacon
Actor
The
Following
TV Show
Behind the
Scenes
Movie
Apollo 13
Movie
HimselfRyan Hardy
Jack Swigert
How to avoid supernodes
3. Using these policies and graph view, we can
filter the size of the result set in our navigation:
Navigator navigator = bacon.navigate(view,
Guide.SIMPLE_BREADTH_FIRST, Qualifier.ANY,
new VertexPredicate(Person.class, ""),
policies, myResultHandler);
navigator.start();
Navigate
Filtered Views in Bacon
The results of this navigation would look something like this…
Navigate
Images generated using the IG Visualizer
Why InfiniteGraph™?
• Objectivity/DB is a proven foundation
– Building distributed databases since 1993
– A complete database management system
• Concurrency, transactions, cache, schema, query, indexing
• It’s a Graph Specialist !
– Simple but powerful API tailored for data navigation.
– Easy to configure distribution model
Advanced Configured Placement
• Physically co-locate “closely related” data
• Driven through a declarative placement model
• Dramatically speeds “local” reads
Facility Data Page(s)Patient Data Page(s)
Mr
Citizen
Visit Visit
Dr
Jones
San
Jose
Facility
Dr
Smith
Primary
Physician
HasHas With
At
Located Located
Facility Data Page(s)
Dr
Blake
Sunny-
vale
Dr
Quinn
Located Located
With
At
Fully Distributed Data Model
Zone 2Zone 1
HostA
IG Core/API
Distributed Object and Relationship Persistence Layer
Customizable Placement
HostB HostC HostX
AddVertex()
Polyglot NoSQL Architectures
Distributed Data
Processing
Platform Document
Graph
Database
RDBMS
Partitioned Distributed DB (often Document / KV)
Users
Applications
External/LegacyData
TransformationMDM
Business
What else!
• Distributed update.
Update
… we are working on it.
Conclusion
I hope that you enjoyed the bacon.
My apologies to my kosher friends for any offense.
Look out for new features coming soon!
QUESTIONS?

Mais conteúdo relacionado

Mais procurados

4. Document Discovery with Graph Data Science
 4. Document Discovery with Graph Data Science 4. Document Discovery with Graph Data Science
4. Document Discovery with Graph Data ScienceNeo4j
 
Neo4j graphs in the real world - graph days d.c. - april 14, 2015
Neo4j   graphs in the real world - graph days d.c. - april 14, 2015Neo4j   graphs in the real world - graph days d.c. - april 14, 2015
Neo4j graphs in the real world - graph days d.c. - april 14, 2015Neo4j
 
Relationships Matter: Using Connected Data for Better Machine Learning
Relationships Matter: Using Connected Data for Better Machine LearningRelationships Matter: Using Connected Data for Better Machine Learning
Relationships Matter: Using Connected Data for Better Machine LearningNeo4j
 
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 LearningNeo4j
 
Einstieg in Neo4j Graph Data Science
Einstieg in Neo4j Graph Data ScienceEinstieg in Neo4j Graph Data Science
Einstieg in Neo4j Graph Data ScienceNeo4j
 
Making Sense of Graph Databases
Making Sense of Graph DatabasesMaking Sense of Graph Databases
Making Sense of Graph DatabasesInfiniteGraph
 
Leveraging Graphs for Better AI
Leveraging Graphs for Better AILeveraging Graphs for Better AI
Leveraging Graphs for Better AINeo4j
 
Einführung in Neo4j
Einführung in Neo4jEinführung in Neo4j
Einführung in Neo4jNeo4j
 
Digital Transformation in a Connected World
Digital Transformation in a Connected WorldDigital Transformation in a Connected World
Digital Transformation in a Connected WorldNeo4j
 
Graphs for Finance - AML with Neo4j Graph Data Science
Graphs for Finance - AML with Neo4j Graph Data Science Graphs for Finance - AML with Neo4j Graph Data Science
Graphs for Finance - AML with Neo4j Graph Data Science Neo4j
 
Graph-based Network & IT Management.
Graph-based Network & IT Management.Graph-based Network & IT Management.
Graph-based Network & IT Management.Linkurious
 
RAPIDS cuGraph – Accelerating all your Graph needs
RAPIDS cuGraph – Accelerating all your Graph needsRAPIDS cuGraph – Accelerating all your Graph needs
RAPIDS cuGraph – Accelerating all your Graph needsConnected Data World
 
Graph tour keynote 2019
Graph tour keynote 2019Graph tour keynote 2019
Graph tour keynote 2019Neo4j
 
The years of the graph: The future of the future is here
The years of the graph: The future of the future is hereThe years of the graph: The future of the future is here
The years of the graph: The future of the future is hereConnected Data World
 
Applying Noisy Knowledge Graphs to Real Problems
Applying Noisy Knowledge Graphs to Real ProblemsApplying Noisy Knowledge Graphs to Real Problems
Applying Noisy Knowledge Graphs to Real ProblemsDataWorks Summit
 
Nodes2020 | Graph of enterprise_metadata | NEO4J Conference
Nodes2020 | Graph of enterprise_metadata | NEO4J ConferenceNodes2020 | Graph of enterprise_metadata | NEO4J Conference
Nodes2020 | Graph of enterprise_metadata | NEO4J ConferenceDeepak Chandramouli
 
Graphs for Enterprise Architects
Graphs for Enterprise ArchitectsGraphs for Enterprise Architects
Graphs for Enterprise ArchitectsNeo4j
 
Visualize the Knowledge Graph and Unleash Your Data
Visualize the Knowledge Graph and Unleash Your DataVisualize the Knowledge Graph and Unleash Your Data
Visualize the Knowledge Graph and Unleash Your DataLinkurious
 
A Picture is Worth 1,000 Rows
A Picture is Worth 1,000 RowsA Picture is Worth 1,000 Rows
A Picture is Worth 1,000 RowsNeo4j
 
The Future is Big Graphs: A Community View on Graph Processing Systems
The Future is Big Graphs: A Community View on Graph Processing SystemsThe Future is Big Graphs: A Community View on Graph Processing Systems
The Future is Big Graphs: A Community View on Graph Processing SystemsNeo4j
 

Mais procurados (20)

4. Document Discovery with Graph Data Science
 4. Document Discovery with Graph Data Science 4. Document Discovery with Graph Data Science
4. Document Discovery with Graph Data Science
 
Neo4j graphs in the real world - graph days d.c. - april 14, 2015
Neo4j   graphs in the real world - graph days d.c. - april 14, 2015Neo4j   graphs in the real world - graph days d.c. - april 14, 2015
Neo4j graphs in the real world - graph days d.c. - april 14, 2015
 
Relationships Matter: Using Connected Data for Better Machine Learning
Relationships Matter: Using Connected Data for Better Machine LearningRelationships Matter: Using Connected Data for Better Machine Learning
Relationships Matter: Using Connected Data for Better 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
 
Einstieg in Neo4j Graph Data Science
Einstieg in Neo4j Graph Data ScienceEinstieg in Neo4j Graph Data Science
Einstieg in Neo4j Graph Data Science
 
Making Sense of Graph Databases
Making Sense of Graph DatabasesMaking Sense of Graph Databases
Making Sense of Graph Databases
 
Leveraging Graphs for Better AI
Leveraging Graphs for Better AILeveraging Graphs for Better AI
Leveraging Graphs for Better AI
 
Einführung in Neo4j
Einführung in Neo4jEinführung in Neo4j
Einführung in Neo4j
 
Digital Transformation in a Connected World
Digital Transformation in a Connected WorldDigital Transformation in a Connected World
Digital Transformation in a Connected World
 
Graphs for Finance - AML with Neo4j Graph Data Science
Graphs for Finance - AML with Neo4j Graph Data Science Graphs for Finance - AML with Neo4j Graph Data Science
Graphs for Finance - AML with Neo4j Graph Data Science
 
Graph-based Network & IT Management.
Graph-based Network & IT Management.Graph-based Network & IT Management.
Graph-based Network & IT Management.
 
RAPIDS cuGraph – Accelerating all your Graph needs
RAPIDS cuGraph – Accelerating all your Graph needsRAPIDS cuGraph – Accelerating all your Graph needs
RAPIDS cuGraph – Accelerating all your Graph needs
 
Graph tour keynote 2019
Graph tour keynote 2019Graph tour keynote 2019
Graph tour keynote 2019
 
The years of the graph: The future of the future is here
The years of the graph: The future of the future is hereThe years of the graph: The future of the future is here
The years of the graph: The future of the future is here
 
Applying Noisy Knowledge Graphs to Real Problems
Applying Noisy Knowledge Graphs to Real ProblemsApplying Noisy Knowledge Graphs to Real Problems
Applying Noisy Knowledge Graphs to Real Problems
 
Nodes2020 | Graph of enterprise_metadata | NEO4J Conference
Nodes2020 | Graph of enterprise_metadata | NEO4J ConferenceNodes2020 | Graph of enterprise_metadata | NEO4J Conference
Nodes2020 | Graph of enterprise_metadata | NEO4J Conference
 
Graphs for Enterprise Architects
Graphs for Enterprise ArchitectsGraphs for Enterprise Architects
Graphs for Enterprise Architects
 
Visualize the Knowledge Graph and Unleash Your Data
Visualize the Knowledge Graph and Unleash Your DataVisualize the Knowledge Graph and Unleash Your Data
Visualize the Knowledge Graph and Unleash Your Data
 
A Picture is Worth 1,000 Rows
A Picture is Worth 1,000 RowsA Picture is Worth 1,000 Rows
A Picture is Worth 1,000 Rows
 
The Future is Big Graphs: A Community View on Graph Processing Systems
The Future is Big Graphs: A Community View on Graph Processing SystemsThe Future is Big Graphs: A Community View on Graph Processing Systems
The Future is Big Graphs: A Community View on Graph Processing Systems
 

Destaque

Text Analytics for Semantic Computing
Text Analytics for Semantic ComputingText Analytics for Semantic Computing
Text Analytics for Semantic ComputingMeena Nagarajan
 
PowerOfRelationshipsInBigData_SVNoSQL
PowerOfRelationshipsInBigData_SVNoSQLPowerOfRelationshipsInBigData_SVNoSQL
PowerOfRelationshipsInBigData_SVNoSQLInfiniteGraph
 
Using A Distributed Graph Database To Make Sense Of Disparate Data Stores
Using A Distributed Graph Database To Make Sense Of Disparate Data StoresUsing A Distributed Graph Database To Make Sense Of Disparate Data Stores
Using A Distributed Graph Database To Make Sense Of Disparate Data StoresInfiniteGraph
 
Webinar 3/12/14: Using Social Media to Drive Value
Webinar 3/12/14: Using Social Media to Drive ValueWebinar 3/12/14: Using Social Media to Drive Value
Webinar 3/12/14: Using Social Media to Drive ValueInfiniteGraph
 
Social Media Mining - Chapter 10 (Behavior Analytics)
Social Media Mining - Chapter 10 (Behavior Analytics)Social Media Mining - Chapter 10 (Behavior Analytics)
Social Media Mining - Chapter 10 (Behavior Analytics)SocialMediaMining
 
Social Media Mining - Chapter 6 (Community Analysis)
Social Media Mining - Chapter 6 (Community Analysis)Social Media Mining - Chapter 6 (Community Analysis)
Social Media Mining - Chapter 6 (Community Analysis)SocialMediaMining
 
Social Media Mining - Chapter 3 (Network Measures)
Social Media Mining - Chapter 3 (Network Measures)Social Media Mining - Chapter 3 (Network Measures)
Social Media Mining - Chapter 3 (Network Measures)SocialMediaMining
 
IBM Software Defined Networking for Virtual Environments (IBM SDN VE)
IBM Software Defined Networking for Virtual Environments (IBM SDN VE)IBM Software Defined Networking for Virtual Environments (IBM SDN VE)
IBM Software Defined Networking for Virtual Environments (IBM SDN VE)IBM System Networking
 
Oracle NoSQL DB & InfiniteGraph - Trends in Big Data and Graph Technology
Oracle NoSQL DB & InfiniteGraph - Trends in Big Data and Graph TechnologyOracle NoSQL DB & InfiniteGraph - Trends in Big Data and Graph Technology
Oracle NoSQL DB & InfiniteGraph - Trends in Big Data and Graph TechnologyInfiniteGraph
 

Destaque (9)

Text Analytics for Semantic Computing
Text Analytics for Semantic ComputingText Analytics for Semantic Computing
Text Analytics for Semantic Computing
 
PowerOfRelationshipsInBigData_SVNoSQL
PowerOfRelationshipsInBigData_SVNoSQLPowerOfRelationshipsInBigData_SVNoSQL
PowerOfRelationshipsInBigData_SVNoSQL
 
Using A Distributed Graph Database To Make Sense Of Disparate Data Stores
Using A Distributed Graph Database To Make Sense Of Disparate Data StoresUsing A Distributed Graph Database To Make Sense Of Disparate Data Stores
Using A Distributed Graph Database To Make Sense Of Disparate Data Stores
 
Webinar 3/12/14: Using Social Media to Drive Value
Webinar 3/12/14: Using Social Media to Drive ValueWebinar 3/12/14: Using Social Media to Drive Value
Webinar 3/12/14: Using Social Media to Drive Value
 
Social Media Mining - Chapter 10 (Behavior Analytics)
Social Media Mining - Chapter 10 (Behavior Analytics)Social Media Mining - Chapter 10 (Behavior Analytics)
Social Media Mining - Chapter 10 (Behavior Analytics)
 
Social Media Mining - Chapter 6 (Community Analysis)
Social Media Mining - Chapter 6 (Community Analysis)Social Media Mining - Chapter 6 (Community Analysis)
Social Media Mining - Chapter 6 (Community Analysis)
 
Social Media Mining - Chapter 3 (Network Measures)
Social Media Mining - Chapter 3 (Network Measures)Social Media Mining - Chapter 3 (Network Measures)
Social Media Mining - Chapter 3 (Network Measures)
 
IBM Software Defined Networking for Virtual Environments (IBM SDN VE)
IBM Software Defined Networking for Virtual Environments (IBM SDN VE)IBM Software Defined Networking for Virtual Environments (IBM SDN VE)
IBM Software Defined Networking for Virtual Environments (IBM SDN VE)
 
Oracle NoSQL DB & InfiniteGraph - Trends in Big Data and Graph Technology
Oracle NoSQL DB & InfiniteGraph - Trends in Big Data and Graph TechnologyOracle NoSQL DB & InfiniteGraph - Trends in Big Data and Graph Technology
Oracle NoSQL DB & InfiniteGraph - Trends in Big Data and Graph Technology
 

Semelhante a Everything Goes Better With Bacon: Revisiting the Six Degrees Problem with a Graph Database

Revisiting the Six Degrees Problem with a Graph Database - Nick Quinn
Revisiting the Six Degrees Problem with a Graph Database - Nick QuinnRevisiting the Six Degrees Problem with a Graph Database - Nick Quinn
Revisiting the Six Degrees Problem with a Graph Database - Nick Quinnjaxconf
 
Getting Intimate with Images on Android with James Halpern
Getting Intimate with Images on Android with James HalpernGetting Intimate with Images on Android with James Halpern
Getting Intimate with Images on Android with James HalpernFITC
 
Cvcc performance tuning
Cvcc performance tuningCvcc performance tuning
Cvcc performance tuningJohn McCaffrey
 
Responsive images, an html 5.1 standard
Responsive images, an html 5.1 standardResponsive images, an html 5.1 standard
Responsive images, an html 5.1 standardAndrea Verlicchi
 
Operational Visibiliy and Analytics - BU Seminar
Operational Visibiliy and Analytics - BU SeminarOperational Visibiliy and Analytics - BU Seminar
Operational Visibiliy and Analytics - BU SeminarCanturk Isci
 
Web based interactive big data visualization
Web based interactive big data visualizationWeb based interactive big data visualization
Web based interactive big data visualizationWenli Zhang
 
Velocity NY 2013 - From Slow to Fast: Improving Performance on Intuit Website...
Velocity NY 2013 - From Slow to Fast: Improving Performance on Intuit Website...Velocity NY 2013 - From Slow to Fast: Improving Performance on Intuit Website...
Velocity NY 2013 - From Slow to Fast: Improving Performance on Intuit Website...Jay Hung
 
EscConf - Deep Dive Frontend Optimization
EscConf - Deep Dive Frontend OptimizationEscConf - Deep Dive Frontend Optimization
EscConf - Deep Dive Frontend OptimizationJonathan Klein
 
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013Amazon Web Services
 
Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nlbartzon
 
Внедрение SDLC в боевых условиях / Егор Карбутов (Digital Security)
Внедрение SDLC в боевых условиях / Егор Карбутов (Digital Security)Внедрение SDLC в боевых условиях / Егор Карбутов (Digital Security)
Внедрение SDLC в боевых условиях / Егор Карбутов (Digital Security)Ontico
 
Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nltieleman
 
Growing in the Wild. The story by CUBRID Database Developers.
Growing in the Wild. The story by CUBRID Database Developers.Growing in the Wild. The story by CUBRID Database Developers.
Growing in the Wild. The story by CUBRID Database Developers.CUBRID
 
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday SeasonG3 Communications
 
Growing in the wild. The story by cubrid database developers (Esen Sagynov, E...
Growing in the wild. The story by cubrid database developers (Esen Sagynov, E...Growing in the wild. The story by cubrid database developers (Esen Sagynov, E...
Growing in the wild. The story by cubrid database developers (Esen Sagynov, E...Ontico
 
There and Back Again, A Developer's Tale
There and Back Again, A Developer's TaleThere and Back Again, A Developer's Tale
There and Back Again, A Developer's TaleNeo4j
 
Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3Pravasini Sahoo
 
Rails Performance Tricks and Treats
Rails Performance Tricks and TreatsRails Performance Tricks and Treats
Rails Performance Tricks and TreatsMarshall Yount
 

Semelhante a Everything Goes Better With Bacon: Revisiting the Six Degrees Problem with a Graph Database (20)

Revisiting the Six Degrees Problem with a Graph Database - Nick Quinn
Revisiting the Six Degrees Problem with a Graph Database - Nick QuinnRevisiting the Six Degrees Problem with a Graph Database - Nick Quinn
Revisiting the Six Degrees Problem with a Graph Database - Nick Quinn
 
Getting Intimate with Images on Android with James Halpern
Getting Intimate with Images on Android with James HalpernGetting Intimate with Images on Android with James Halpern
Getting Intimate with Images on Android with James Halpern
 
Cvcc performance tuning
Cvcc performance tuningCvcc performance tuning
Cvcc performance tuning
 
Responsive images, an html 5.1 standard
Responsive images, an html 5.1 standardResponsive images, an html 5.1 standard
Responsive images, an html 5.1 standard
 
Operational Visibiliy and Analytics - BU Seminar
Operational Visibiliy and Analytics - BU SeminarOperational Visibiliy and Analytics - BU Seminar
Operational Visibiliy and Analytics - BU Seminar
 
Web based interactive big data visualization
Web based interactive big data visualizationWeb based interactive big data visualization
Web based interactive big data visualization
 
Velocity NY 2013 - From Slow to Fast: Improving Performance on Intuit Website...
Velocity NY 2013 - From Slow to Fast: Improving Performance on Intuit Website...Velocity NY 2013 - From Slow to Fast: Improving Performance on Intuit Website...
Velocity NY 2013 - From Slow to Fast: Improving Performance on Intuit Website...
 
performance.ppt
performance.pptperformance.ppt
performance.ppt
 
EscConf - Deep Dive Frontend Optimization
EscConf - Deep Dive Frontend OptimizationEscConf - Deep Dive Frontend Optimization
EscConf - Deep Dive Frontend Optimization
 
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
 
Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nl
 
Внедрение SDLC в боевых условиях / Егор Карбутов (Digital Security)
Внедрение SDLC в боевых условиях / Егор Карбутов (Digital Security)Внедрение SDLC в боевых условиях / Егор Карбутов (Digital Security)
Внедрение SDLC в боевых условиях / Егор Карбутов (Digital Security)
 
Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nl
 
Growing in the Wild. The story by CUBRID Database Developers.
Growing in the Wild. The story by CUBRID Database Developers.Growing in the Wild. The story by CUBRID Database Developers.
Growing in the Wild. The story by CUBRID Database Developers.
 
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
 
Growing in the wild. The story by cubrid database developers (Esen Sagynov, E...
Growing in the wild. The story by cubrid database developers (Esen Sagynov, E...Growing in the wild. The story by cubrid database developers (Esen Sagynov, E...
Growing in the wild. The story by cubrid database developers (Esen Sagynov, E...
 
There and Back Again, A Developer's Tale
There and Back Again, A Developer's TaleThere and Back Again, A Developer's Tale
There and Back Again, A Developer's Tale
 
Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3
 
Html5 more than just html5 v final
Html5  more than just html5 v finalHtml5  more than just html5 v final
Html5 more than just html5 v final
 
Rails Performance Tricks and Treats
Rails Performance Tricks and TreatsRails Performance Tricks and Treats
Rails Performance Tricks and Treats
 

Mais de InfiniteGraph

NoSQL Simplified: Schema vs. Schema-less
NoSQL Simplified: Schema vs. Schema-lessNoSQL Simplified: Schema vs. Schema-less
NoSQL Simplified: Schema vs. Schema-lessInfiniteGraph
 
Solution Use Case Demo: The Power of Relationships in Your Big Data
Solution Use Case Demo: The Power of Relationships in Your Big DataSolution Use Case Demo: The Power of Relationships in Your Big Data
Solution Use Case Demo: The Power of Relationships in Your Big DataInfiniteGraph
 
Objectivity/DB: A Multipurpose NoSQL Database
Objectivity/DB: A Multipurpose NoSQL DatabaseObjectivity/DB: A Multipurpose NoSQL Database
Objectivity/DB: A Multipurpose NoSQL DatabaseInfiniteGraph
 
Making sense of the Graph Revolution
Making sense of the Graph RevolutionMaking sense of the Graph Revolution
Making sense of the Graph RevolutionInfiniteGraph
 
An Introduction to Graph Databases
An Introduction to Graph DatabasesAn Introduction to Graph Databases
An Introduction to Graph DatabasesInfiniteGraph
 
Turning Big Data into Smart Data with Graph Technologies
Turning Big Data into Smart Data with Graph TechnologiesTurning Big Data into Smart Data with Graph Technologies
Turning Big Data into Smart Data with Graph TechnologiesInfiniteGraph
 
NoSQL Technology and Real-time, Accurate Predictive Analytics
NoSQL Technology and Real-time, Accurate Predictive AnalyticsNoSQL Technology and Real-time, Accurate Predictive Analytics
NoSQL Technology and Real-time, Accurate Predictive AnalyticsInfiniteGraph
 
Vodafone xone fev142013v3 ext
Vodafone xone fev142013v3 extVodafone xone fev142013v3 ext
Vodafone xone fev142013v3 extInfiniteGraph
 
Dbta Webinar Realize Value of Big Data with graph 011713
Dbta Webinar Realize Value of Big Data with graph  011713Dbta Webinar Realize Value of Big Data with graph  011713
Dbta Webinar Realize Value of Big Data with graph 011713InfiniteGraph
 
Oracle no sql overview brief
Oracle no sql overview briefOracle no sql overview brief
Oracle no sql overview briefInfiniteGraph
 
Infinite graph nosql meetup dec 2012
Infinite graph nosql meetup dec 2012Infinite graph nosql meetup dec 2012
Infinite graph nosql meetup dec 2012InfiniteGraph
 
Silicon valley nosql meetup april 2012
Silicon valley nosql meetup  april 2012Silicon valley nosql meetup  april 2012
Silicon valley nosql meetup april 2012InfiniteGraph
 
NOSQL Now! Presentation, August 24, 2011: Graph Databases: Connecting the Dot...
NOSQL Now! Presentation, August 24, 2011: Graph Databases: Connecting the Dot...NOSQL Now! Presentation, August 24, 2011: Graph Databases: Connecting the Dot...
NOSQL Now! Presentation, August 24, 2011: Graph Databases: Connecting the Dot...InfiniteGraph
 
NOSQL Now! Presentation, August 23, 2011: Introduction to InfiniteGraph, the ...
NOSQL Now! Presentation, August 23, 2011: Introduction to InfiniteGraph, the ...NOSQL Now! Presentation, August 23, 2011: Introduction to InfiniteGraph, the ...
NOSQL Now! Presentation, August 23, 2011: Introduction to InfiniteGraph, the ...InfiniteGraph
 
Meetup: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
Meetup: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.Meetup: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
Meetup: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.InfiniteGraph
 
Webinar: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
Webinar: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.Webinar: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
Webinar: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.InfiniteGraph
 
An overview of InfiniteGraph, the distributed graph database
An overview of InfiniteGraph, the distributed graph databaseAn overview of InfiniteGraph, the distributed graph database
An overview of InfiniteGraph, the distributed graph databaseInfiniteGraph
 
InfiniteGraph Presentation from Oct 21, 2010 DBTA Webcast
InfiniteGraph Presentation from Oct 21, 2010 DBTA WebcastInfiniteGraph Presentation from Oct 21, 2010 DBTA Webcast
InfiniteGraph Presentation from Oct 21, 2010 DBTA WebcastInfiniteGraph
 
New Data Technologies, Graph Computing and Relationship Discovery in the Ente...
New Data Technologies, Graph Computing and Relationship Discovery in the Ente...New Data Technologies, Graph Computing and Relationship Discovery in the Ente...
New Data Technologies, Graph Computing and Relationship Discovery in the Ente...InfiniteGraph
 
The Synergy Between the Object Database, Graph Database, Cloud Computing and ...
The Synergy Between the Object Database, Graph Database, Cloud Computing and ...The Synergy Between the Object Database, Graph Database, Cloud Computing and ...
The Synergy Between the Object Database, Graph Database, Cloud Computing and ...InfiniteGraph
 

Mais de InfiniteGraph (20)

NoSQL Simplified: Schema vs. Schema-less
NoSQL Simplified: Schema vs. Schema-lessNoSQL Simplified: Schema vs. Schema-less
NoSQL Simplified: Schema vs. Schema-less
 
Solution Use Case Demo: The Power of Relationships in Your Big Data
Solution Use Case Demo: The Power of Relationships in Your Big DataSolution Use Case Demo: The Power of Relationships in Your Big Data
Solution Use Case Demo: The Power of Relationships in Your Big Data
 
Objectivity/DB: A Multipurpose NoSQL Database
Objectivity/DB: A Multipurpose NoSQL DatabaseObjectivity/DB: A Multipurpose NoSQL Database
Objectivity/DB: A Multipurpose NoSQL Database
 
Making sense of the Graph Revolution
Making sense of the Graph RevolutionMaking sense of the Graph Revolution
Making sense of the Graph Revolution
 
An Introduction to Graph Databases
An Introduction to Graph DatabasesAn Introduction to Graph Databases
An Introduction to Graph Databases
 
Turning Big Data into Smart Data with Graph Technologies
Turning Big Data into Smart Data with Graph TechnologiesTurning Big Data into Smart Data with Graph Technologies
Turning Big Data into Smart Data with Graph Technologies
 
NoSQL Technology and Real-time, Accurate Predictive Analytics
NoSQL Technology and Real-time, Accurate Predictive AnalyticsNoSQL Technology and Real-time, Accurate Predictive Analytics
NoSQL Technology and Real-time, Accurate Predictive Analytics
 
Vodafone xone fev142013v3 ext
Vodafone xone fev142013v3 extVodafone xone fev142013v3 ext
Vodafone xone fev142013v3 ext
 
Dbta Webinar Realize Value of Big Data with graph 011713
Dbta Webinar Realize Value of Big Data with graph  011713Dbta Webinar Realize Value of Big Data with graph  011713
Dbta Webinar Realize Value of Big Data with graph 011713
 
Oracle no sql overview brief
Oracle no sql overview briefOracle no sql overview brief
Oracle no sql overview brief
 
Infinite graph nosql meetup dec 2012
Infinite graph nosql meetup dec 2012Infinite graph nosql meetup dec 2012
Infinite graph nosql meetup dec 2012
 
Silicon valley nosql meetup april 2012
Silicon valley nosql meetup  april 2012Silicon valley nosql meetup  april 2012
Silicon valley nosql meetup april 2012
 
NOSQL Now! Presentation, August 24, 2011: Graph Databases: Connecting the Dot...
NOSQL Now! Presentation, August 24, 2011: Graph Databases: Connecting the Dot...NOSQL Now! Presentation, August 24, 2011: Graph Databases: Connecting the Dot...
NOSQL Now! Presentation, August 24, 2011: Graph Databases: Connecting the Dot...
 
NOSQL Now! Presentation, August 23, 2011: Introduction to InfiniteGraph, the ...
NOSQL Now! Presentation, August 23, 2011: Introduction to InfiniteGraph, the ...NOSQL Now! Presentation, August 23, 2011: Introduction to InfiniteGraph, the ...
NOSQL Now! Presentation, August 23, 2011: Introduction to InfiniteGraph, the ...
 
Meetup: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
Meetup: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.Meetup: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
Meetup: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
 
Webinar: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
Webinar: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.Webinar: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
Webinar: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
 
An overview of InfiniteGraph, the distributed graph database
An overview of InfiniteGraph, the distributed graph databaseAn overview of InfiniteGraph, the distributed graph database
An overview of InfiniteGraph, the distributed graph database
 
InfiniteGraph Presentation from Oct 21, 2010 DBTA Webcast
InfiniteGraph Presentation from Oct 21, 2010 DBTA WebcastInfiniteGraph Presentation from Oct 21, 2010 DBTA Webcast
InfiniteGraph Presentation from Oct 21, 2010 DBTA Webcast
 
New Data Technologies, Graph Computing and Relationship Discovery in the Ente...
New Data Technologies, Graph Computing and Relationship Discovery in the Ente...New Data Technologies, Graph Computing and Relationship Discovery in the Ente...
New Data Technologies, Graph Computing and Relationship Discovery in the Ente...
 
The Synergy Between the Object Database, Graph Database, Cloud Computing and ...
The Synergy Between the Object Database, Graph Database, Cloud Computing and ...The Synergy Between the Object Database, Graph Database, Cloud Computing and ...
The Synergy Between the Object Database, Graph Database, Cloud Computing and ...
 

Último

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 

Último (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 

Everything Goes Better With Bacon: Revisiting the Six Degrees Problem with a Graph Database

  • 2. What are we talking about today? Not that Bacon This Bacon! • Intro to the Six Degrees Problem • What is a Graph Database? • Why Bacon in Graph Database? • How we solved the problem Images Courtesy of IMDB (www.imdb.com)
  • 3. Six Degrees of Bacon “…any individual involved in the Hollywood, California film industry can be linked through his or her film roles to actor Kevin Bacon within six steps” [http://en.wikipedia.org/wiki/Six_Degrees_of_Kevin_Bacon] Gina Menza Images Courtesy of IMDB (www.imdb.com) A Tale of Two Kevins
  • 4. Why Six Degrees of Bacon? Actor Age # of Projects Kevin Bacon 54 76 Harrison Ford 70 70 Tom Cruise 50 40 Julia Roberts 45 50 Tom Hanks 56 73 Denzel Washington 58 53 Michael Caine 80 157 Kiefer Sutherland 46 82 Kevin Bacon Images Courtesy of IMDB (www.imdb.com)
  • 5. Bacon Numbers in Google In the summer of 2012, Google started to allow users to find the bacon number of any actor simply by following his or her name with “bacon number”. Morgan Freeman The Dark Night Rises appeared in Gary Oldman appeared in Kevin Bacon Criminal Law appeared in appeared in www.google.com Graphical Representation
  • 6. What is a Graph Database ?
  • 7. The Physical Data Model • Difference between relational & graph databases Meetings P1 Place TimeP2 Alice Denver 5-27-10Bob Calls From Time DurationTo Bob 13:20 25Carlos Bob 17:10 15Charlie Payments From Date AmountTo Carlos 5-12-10 100000Charlie Met 5-27-10 Alice Called 13:20 Bob Paid 100000 Carlos Charlie Called 17:10 Rows/Columns/Tables Relationship/Graph Optimized
  • 8. Connecting Data Person Building ? Work Live RR Visit Eat Shop
  • 9. Who is Gina Menza? • How do we get meaning from highly connected data? Gina Menza Jury Forewoman Miss Jeffries Images Courtesy of IMDB (www.imdb.com)
  • 10. Strength of Connections Matter! • Why 6 degrees of separation and not 3.74? • We need analysis tools in order to – identify and filter out “unimportant” data and – infer what needs to be filtered as we investigate it. “When considering another person in the world, a friend of your friend knows a friend of their friend” - facebook
  • 11. Why Bacon in a Graph Database ?
  • 12. Graph Analysis • Why use Graph Databases for graph analysis? – Dynamic on Live Data – Feedback/Inference – Optimized for concurrent user access – Handles big data problems – Native Graph Traversal API – Manage memory efficiently
  • 13. Paths to Bacon Bacon Number (Degree of Separation / 2) # of People 1 2823 2 323677 3 1088560 4 272905 5 22533 6 2300 Using the IMDB (www.imdb.com) data set, we can study how many paths can be found by degrees of separation from Kevin Bacon. Out of 5,067,124 nodes and 11,505,797 edges, we get the following: 0 200000 400000 600000 800000 1000000 1200000 1 2 3 4 5 6 # of People
  • 14. Big Data + Graph = Big Graph Data 4 Degrees of Kevin Bacon (Breadth First up to 20K connections) Images generated using the IG Visualizer
  • 15. Analyzing Bacon • To be able to perform meaningful analysis, these are things that you will need: – Ingest IMDB Dataset – About 50 Formatted compressed files (Largest > 200 MB) – Custom algorithm support to perform meaningful analysis • Optimize queries to get results back in reasonable time – Visualization tool to test and view the results of the navigation (optional)
  • 16. How IG Sizzles Your Bacon Ingest Update Navigate Massive graph data require efficient and intelligent tools to analyze and understand it.
  • 17. Super Simple Java API Actor bacon = new Actor(“Kevin Bacon”); imdbGraphDB.addVertex( bacon ); Movie apollo= new Movie(“Apollo 13”, 1995); imdbGraphDB.addVertex( apollo ); ActedIn bacon2apollo = new ActedIn(“Jack Swigert”); imdbGraphDB.addEdge(bacon2apollo, bacon, apollo, EdgeKind.BIDIRECTIONAL, 1 /**weight**/); Ingest
  • 18. Scaling Writes • Big/Fast data demands write performance • Most NoSQL solutions allow you to scale writes by… – Partitioning the data – Understanding your consistency requirements – Allowing you to defer conflicts Ingest
  • 19. App-2 (Ingest V2) App-2 (E23{ V2V3}) Scaling Graph Writes ACID Transactions InfiniteGraph Objectivity/DB Persistence Layer App-1 (Ingest V1) App-3 (Ingest V3) V1 V2 V3 App-1 (E1 2{ V1V2}) App-3 E12 E23 Ingest
  • 20. High Performance Edge Ingest IG Core/API C1 C2 C3 E12 E23 TargetContainers PipelineContainers E(1->2) E(3->1) E(2->3) E(2->1) E(2->3) E(3->1) E(1->2) E(3->2) E(1->2) E(2->3) E(3->1) E(2->1) E(2->3) E(3->1) E(3->2) E(1->2) Pipeline Agent Ingest
  • 21. Trade offs • Excellent for efficient use of page cache • Able to maintain full database consistency • Achieves highest ingest rate in distributed environments • Almost always has highest “perceived” rate • Trading Off : • Eventual consistency in graph (connections) • Updates are still atomic, isolated and durable but phased • External agent performs graph building Ingest
  • 22. Result… 1 client 2 clients 4 clients 8 clients 0 50000 100000 150000 200000 250000 300000 350000 400000 450000 500000 1 2 4 NodesandEdgespersecond 1 client 2 clients 4 clients 8 clients Ingest
  • 23. Scaling Reads and Query Distributed API Application(s) Partition 1 Partition 3Partition 2 Partition ...n Processor Processor Processor Processor Partitioning and Read Replicas… easy right !
  • 24. Why are Graphs Different ? Distributed API Application(s) Partition 1 Partition 3Partition 2 Partition ...n Processor Processor Processor Processor Navigate
  • 25. Distributed Navigation • Detect local hops and perform in memory traversal • Send the partial path to the distributed processing to continue the navigation. • Intelligently cache remote data when accessed frequently • Route tasks to other hosts when it is optimal Navigate
  • 26. Distributed Navigation Server Processor Distributed API Partition 1 Partition 2 Processor Application A X Y B C D E P(A,B,C,D) F G Navigate
  • 27. GraphViews Leveraging Schema in the Graph Patient Prescription Drug Ingredient Outcome Complaint Visit Allergy Physician Navigate
  • 28. Schema Enables Views • GraphViews are extremely powerful • Allow Big Data to appear small ! • Connection inference can lead to exponential gains in query performance • Views are reusable between queries • Views can be persisted • Built into the native kernel Navigate
  • 29. Problem of Supernodes In Graph Theory, a “supernode” is a vertex with a disproportionally high number of connected edges. Supernodes make it difficult to do a navigational query in real-time due to the amount of effort it may be to pursue paths through it that may be unfruitful. Navigate Images generated using the IG Visualizer
  • 30. Supernodes in Bacon Navigate In the IMDB data set, some examples of supernodes may be talk shows, awards shows, compilations or variety shows. Images generated using the IG Visualizer
  • 31. How to avoid supernodes 1. Setting policies on the navigation like the NoRevisitPolicy , MaximumResultCountPolicy and MaximumPathDepthPolicy can be used to customize the overall behavior of the navigation. PolicyChain policies = new PolicyChain(); // Only traverse the same vertex once policies.addPolicy(new NoRevisitPolicy()); // limits the number of paths that will be returned to 10K policies.addPolicy(new MaximumResultCountPolicy(10000)); // limits the path depth to 6 policies.addPolicy(new MaximumPathDepthPolicy(6)); Navigate
  • 32. How to avoid supernodes 2. Graph View to exclude or limit types GraphView view = new GraphView(); //Excludes all instances of TvShow from navigation view.excludeClass(myDb.getTypeId(TvShow.class.getName())); //Excludes all movies made for TV/Video view.excludeClass(myDb.getTypeId(Movie.class.getName()), “details.madeForTv || details.madeForVideo”); //Include ActedIn w/ characterName not containing “Himself” view.excludeClass(myDb.getTypeId(WorkedOn.class.getName())); view.includeClass(myDb.getTypeId(ActedIn.class.getName()), “!CONTAINS(characterName, “Himself”)”); Navigate Kevin Bacon Actor The Following TV Show Behind the Scenes Movie Apollo 13 Movie HimselfRyan Hardy Jack Swigert
  • 33. How to avoid supernodes 3. Using these policies and graph view, we can filter the size of the result set in our navigation: Navigator navigator = bacon.navigate(view, Guide.SIMPLE_BREADTH_FIRST, Qualifier.ANY, new VertexPredicate(Person.class, ""), policies, myResultHandler); navigator.start(); Navigate
  • 34. Filtered Views in Bacon The results of this navigation would look something like this… Navigate Images generated using the IG Visualizer
  • 35. Why InfiniteGraph™? • Objectivity/DB is a proven foundation – Building distributed databases since 1993 – A complete database management system • Concurrency, transactions, cache, schema, query, indexing • It’s a Graph Specialist ! – Simple but powerful API tailored for data navigation. – Easy to configure distribution model
  • 36. Advanced Configured Placement • Physically co-locate “closely related” data • Driven through a declarative placement model • Dramatically speeds “local” reads Facility Data Page(s)Patient Data Page(s) Mr Citizen Visit Visit Dr Jones San Jose Facility Dr Smith Primary Physician HasHas With At Located Located Facility Data Page(s) Dr Blake Sunny- vale Dr Quinn Located Located With At
  • 37. Fully Distributed Data Model Zone 2Zone 1 HostA IG Core/API Distributed Object and Relationship Persistence Layer Customizable Placement HostB HostC HostX AddVertex()
  • 38. Polyglot NoSQL Architectures Distributed Data Processing Platform Document Graph Database RDBMS Partitioned Distributed DB (often Document / KV) Users Applications External/LegacyData TransformationMDM Business
  • 39. What else! • Distributed update. Update … we are working on it.
  • 40. Conclusion I hope that you enjoyed the bacon. My apologies to my kosher friends for any offense. Look out for new features coming soon!