SlideShare a Scribd company logo
An overview of InfiniteGraph, the distributed graph database. Darren Wood Chief Architect, InfiniteGraph
For today’s discussion… InfiniteGraph Background / History Architecture What we are working on Consistency Models Challenges/Requirements of Distibution Data model – Schema vs Schema-less Copyright © InfiniteGraph
Building on Objectivity/DB Derived from Objectivity/DB core Distributed  Object  Database Native core (broad platform support) with C++, Java, C# and Python Bindings Thousands of deployments, many are 24x7x365 Markets : VLDB, Data Fusion / Metadata, Complex Object Models,  Relationship Analytics Copyright © InfiniteGraph
Relationship Analytics Experience Relationship Analytics Large part of Objy/DB Government business Significant growth in the commercial space Many OEM opportunities Mostly based on graph theory Hand coded algorithms Copyright © InfiniteGraph
Needed something more… Objectivity Provides Powerful distributed object storage Flexible class based persistence Enterprise DB features But…. Lots of custom coding Complex deployment No generic algorithm framework Copyright © InfiniteGraph
Enter InfiniteGraph Simple Graph focused API Automated distribution and deployment Mostly configuration driven Java class based persistence Property model support Asynchronous navigation Indexing framework Copyright © InfiniteGraph
Some code… Copyright © InfiniteGraph Vertex alice = myGraph.addVertex(new Person(“Alice”));  Vertex bob = myGraph.addVertex(new Person(“Bob”));  Vertex carlos = myGraph.addVertex(new Person(“Carlos”));  Vertex charlie = myGraph.addVertex(new Person(“Charlie”)); alice.addEdge(new Meeting(“Denver”, “5-27-10”), bob); bob.addEdge(new Call(timestamp), carlos); carlos.addEdge(new Payment(100000.00), charlie); bob.addEdge(new Call(timestamp), charlie); Alice Carlos Charlie Bob Meets Calls Pays Calls
Basic Architecture Copyright © InfiniteGraph IG Core/API Configuration Navigation Execution Management Extensions Blueprints User Apps Objectivity/DB Distributed Database Session / TX Management Placement
Copyright © InfiniteGraph
Targeting Large Graphs Graphs grow quickly Billions of phone calls / day in US Emails, social media events, IP Traffic Financial transactions Some analytics require navigation of large sections of the graph Must distribute data and go parallel Copyright © InfiniteGraph
Consistency Models Trading off full consistency for performance Relax locking, allow stale reads Gain 100x edge ingest rates Great for “social graph” applications These tend to have relaxed consistency requirements API allows choice per operation Copyright © InfiniteGraph
Pipelining Copyright © InfiniteGraph IG Core/API Configuration Navigation Execution Management Extensions Session / TX Management Placement (MDP) Placement (Pipelining) V 1 V 2 V 3 E 12 E 23 Pipeline Manager Staging Containers Pipeline Containers 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)
Distributing Navigation Graph algorithms naturally branch Breaking up the process is relatively simple Orchestrating it is more challenging Copyright © InfiniteGraph Alice Carlos Charlie Bob Meets Calls Pays Dave Eve Chuck Calls Lives With Meets
Partitioned Graphs are Ugly Copyright © InfiniteGraph Distributed API Application(s) Partition 1 Partition 3 Partition 2 Partition ... n Processor Processor Processor Processor
Making it scale… A distributed data tier supports parallel IO A distributed cache/processor tier for processing “navlets” Ability to deal with remote data reads (fast) Navlets hit processor/cache instances based on consistent hashing of their start vertex  Copyright © InfiniteGraph
Flexible Data Models Schema isn’t for everyone Great for relatively static models Support for inheritance helps So does auto-evolution Looking to support document style elements Support for ad-hoc attributes Ability to mix both approaches Copyright © InfiniteGraph
Other Projects Blueprints / Gremlin support Native Visualizer and Management Console Built in Qualifiers More Indexing Enhancements Algorithms Large scale samples Copyright © InfiniteGraph
Thank you ! Copyright © InfiniteGraph [email_address] Twitter - @infinitegraph

More Related Content

PDF
If your computer is cloud what its Operating System look like?
PPT
New Data Technologies, Graph Computing and Relationship Discovery in the Ente...
PDF
Transforming AI with Graphs: Real World Examples using Spark and Neo4j
PDF
Augmenting Machine Learning with Databricks Labs AutoML Toolkit
PDF
AI Modernization at AT&T and the Application to Fraud with Databricks
PDF
Bridging the Gap Between Data Scientists and Software Engineers – Deploying L...
PDF
Building A Feature Factory
PDF
A view of graph data usage by Cerved
If your computer is cloud what its Operating System look like?
New Data Technologies, Graph Computing and Relationship Discovery in the Ente...
Transforming AI with Graphs: Real World Examples using Spark and Neo4j
Augmenting Machine Learning with Databricks Labs AutoML Toolkit
AI Modernization at AT&T and the Application to Fraud with Databricks
Bridging the Gap Between Data Scientists and Software Engineers – Deploying L...
Building A Feature Factory
A view of graph data usage by Cerved

What's hot (20)

PPTX
Machine Learning with Apache Spark
PDF
"You don't need a bigger boat": serverless MLOps for reasonable companies
PDF
AI as a service
PDF
Vertex AI: Pipelines for your MLOps workflows
PPT
Graph Analytics for big data
PDF
Using Graph Algorithms For Advanced Analytics - Part 4 Similarity 30 graph al...
PPTX
AI Solutions with Macnica.ai - AI Expo 2018 Tokyo Japan
PPTX
Using Neo4j and Machine Learning to Create a Decision Engine, CluedIn
PPTX
Build a car with Graphs, Fabien Batejat, Volvo Cars
PDF
OracleCode_Berlin_Jun2018_AnalyzeBitcoinTransactionDataUsingAsGraph
PDF
Domain driven design: a gentle introduction
PDF
Bridging the Gap Between Datasets and DataFrames
PPTX
When Graphs Meet Machine Learning
PDF
No REST till Production – Building and Deploying 9 Models to Production in 3 ...
PDF
TensorFlow 16: Building a Data Science Platform
PPTX
Automate your Machine Learning
PDF
The More the Merrier: Scaling Model Building Infrastructure at Zendesk
PPTX
An introduction to Machine Learning with scikit-learn (October 2018)
PPTX
Big Analytics Without Big Hassles
PDF
Rakuten - Recommendation Platform
Machine Learning with Apache Spark
"You don't need a bigger boat": serverless MLOps for reasonable companies
AI as a service
Vertex AI: Pipelines for your MLOps workflows
Graph Analytics for big data
Using Graph Algorithms For Advanced Analytics - Part 4 Similarity 30 graph al...
AI Solutions with Macnica.ai - AI Expo 2018 Tokyo Japan
Using Neo4j and Machine Learning to Create a Decision Engine, CluedIn
Build a car with Graphs, Fabien Batejat, Volvo Cars
OracleCode_Berlin_Jun2018_AnalyzeBitcoinTransactionDataUsingAsGraph
Domain driven design: a gentle introduction
Bridging the Gap Between Datasets and DataFrames
When Graphs Meet Machine Learning
No REST till Production – Building and Deploying 9 Models to Production in 3 ...
TensorFlow 16: Building a Data Science Platform
Automate your Machine Learning
The More the Merrier: Scaling Model Building Infrastructure at Zendesk
An introduction to Machine Learning with scikit-learn (October 2018)
Big Analytics Without Big Hassles
Rakuten - Recommendation Platform
Ad

Viewers also liked (20)

PPT
Workshop Weblog, Wiki & Twitter
DOC
Real grade survey
PPT
Colorado Climate
PPT
μάθηση
PDF
Greenwich IATA Presentation 7 Oct 2008 Final Website
PPT
test
PPT
Reaching More Customers in 2015 With a Responsive Mobile Website Design
PPT
About Robyn
PDF
Jacl Thurston talk at e-Democracy Conference
PPTX
E-learning: Ενίσχυση & Κινητοποίηση των μαθητών στα Μαθηματικά Β΄ Γυμνασίου
PPT
50 Words Powerpoint Brock
PPTX
Calling Watson to Ward 8 Stat
PPT
2009 03 31 Healthstory Webinar Presentation
PPT
Template-devil
PPT
Ordenagailu Zatiak
PDF
Strategic Energy Systems Planning under Uncertainty
PPT
Leadership In Times Of Uncertainty (2008 10)
PPT
GANG Announcements, Sept 2009
PPTX
Gang announcements 2010 10
PPT
Open Source Presentation
Workshop Weblog, Wiki & Twitter
Real grade survey
Colorado Climate
μάθηση
Greenwich IATA Presentation 7 Oct 2008 Final Website
test
Reaching More Customers in 2015 With a Responsive Mobile Website Design
About Robyn
Jacl Thurston talk at e-Democracy Conference
E-learning: Ενίσχυση & Κινητοποίηση των μαθητών στα Μαθηματικά Β΄ Γυμνασίου
50 Words Powerpoint Brock
Calling Watson to Ward 8 Stat
2009 03 31 Healthstory Webinar Presentation
Template-devil
Ordenagailu Zatiak
Strategic Energy Systems Planning under Uncertainty
Leadership In Times Of Uncertainty (2008 10)
GANG Announcements, Sept 2009
Gang announcements 2010 10
Open Source Presentation
Ad

Similar to InfiniteGraph (20)

PPT
NOSQL Now! Presentation, August 24, 2011: Graph Databases: Connecting the Dot...
PPT
Meetup: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
PPT
NOSQL Now! Presentation, August 23, 2011: Introduction to InfiniteGraph, the ...
PDF
Gluecon InfiniteGraph/DB
PDF
Gluecon InfiniteGraph Presentation: Scaling the Social Graph in the Cloud
PPTX
How we Learned to Stop Worrying and Solve the Distributed Graph Problem
PPT
InfiniteGraph Presentation from Oct 21, 2010 DBTA Webcast
PPT
Making sense of the Graph Revolution
PDF
Introduction to InfiniteGraph, the Distributed and Scalable Graph Database
PPT
Webinar: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
PDF
Time-evolving Graph Processing on Commodity Clusters: Spark Summit East talk ...
PPTX
Getting your hands on graphs
PDF
Distributed graph processing
PDF
Ling liu part 02:big graph processing
PDF
Data Summer Conf 2018, “Analysing Billion Node Graphs (ENG)” — Giorgi Jvaridz...
PPTX
Graph_Database_Prepared_by_Ali_Rajab.pptx
PPTX
Graph_Databases__And_Its_Usage_Presentation.pptx
PDF
Time-Evolving Graph Processing On Commodity Clusters
PPTX
Graphs in data structures are non-linear data structures made up of a finite ...
ODP
Graph databases
NOSQL Now! Presentation, August 24, 2011: Graph Databases: Connecting the Dot...
Meetup: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
NOSQL Now! Presentation, August 23, 2011: Introduction to InfiniteGraph, the ...
Gluecon InfiniteGraph/DB
Gluecon InfiniteGraph Presentation: Scaling the Social Graph in the Cloud
How we Learned to Stop Worrying and Solve the Distributed Graph Problem
InfiniteGraph Presentation from Oct 21, 2010 DBTA Webcast
Making sense of the Graph Revolution
Introduction to InfiniteGraph, the Distributed and Scalable Graph Database
Webinar: An Introduction to InfiniteGraph, and Connecting the Dots in Big Data.
Time-evolving Graph Processing on Commodity Clusters: Spark Summit East talk ...
Getting your hands on graphs
Distributed graph processing
Ling liu part 02:big graph processing
Data Summer Conf 2018, “Analysing Billion Node Graphs (ENG)” — Giorgi Jvaridz...
Graph_Database_Prepared_by_Ali_Rajab.pptx
Graph_Databases__And_Its_Usage_Presentation.pptx
Time-Evolving Graph Processing On Commodity Clusters
Graphs in data structures are non-linear data structures made up of a finite ...
Graph databases

More from University of New South Wales (11)

PDF
Declarative analysis of noisy information networks
PDF
DHHT - Modeling beyond plain graphs
PDF
Ontological Conjunctive Query Answering over Large Knowledge Bases
PPTX
Key-Key-Value Stores for Efficiently Processing Graph Data in the Cloud
PDF
Dependable Cardinality Forecast for XQuery
PDF
GraphREL: A Relational Graph Query Processor
PDF
XML Compression Benchmark
Declarative analysis of noisy information networks
DHHT - Modeling beyond plain graphs
Ontological Conjunctive Query Answering over Large Knowledge Bases
Key-Key-Value Stores for Efficiently Processing Graph Data in the Cloud
Dependable Cardinality Forecast for XQuery
GraphREL: A Relational Graph Query Processor
XML Compression Benchmark

InfiniteGraph

  • 1. An overview of InfiniteGraph, the distributed graph database. Darren Wood Chief Architect, InfiniteGraph
  • 2. For today’s discussion… InfiniteGraph Background / History Architecture What we are working on Consistency Models Challenges/Requirements of Distibution Data model – Schema vs Schema-less Copyright © InfiniteGraph
  • 3. Building on Objectivity/DB Derived from Objectivity/DB core Distributed Object Database Native core (broad platform support) with C++, Java, C# and Python Bindings Thousands of deployments, many are 24x7x365 Markets : VLDB, Data Fusion / Metadata, Complex Object Models, Relationship Analytics Copyright © InfiniteGraph
  • 4. Relationship Analytics Experience Relationship Analytics Large part of Objy/DB Government business Significant growth in the commercial space Many OEM opportunities Mostly based on graph theory Hand coded algorithms Copyright © InfiniteGraph
  • 5. Needed something more… Objectivity Provides Powerful distributed object storage Flexible class based persistence Enterprise DB features But…. Lots of custom coding Complex deployment No generic algorithm framework Copyright © InfiniteGraph
  • 6. Enter InfiniteGraph Simple Graph focused API Automated distribution and deployment Mostly configuration driven Java class based persistence Property model support Asynchronous navigation Indexing framework Copyright © InfiniteGraph
  • 7. Some code… Copyright © InfiniteGraph Vertex alice = myGraph.addVertex(new Person(“Alice”)); Vertex bob = myGraph.addVertex(new Person(“Bob”)); Vertex carlos = myGraph.addVertex(new Person(“Carlos”)); Vertex charlie = myGraph.addVertex(new Person(“Charlie”)); alice.addEdge(new Meeting(“Denver”, “5-27-10”), bob); bob.addEdge(new Call(timestamp), carlos); carlos.addEdge(new Payment(100000.00), charlie); bob.addEdge(new Call(timestamp), charlie); Alice Carlos Charlie Bob Meets Calls Pays Calls
  • 8. Basic Architecture Copyright © InfiniteGraph IG Core/API Configuration Navigation Execution Management Extensions Blueprints User Apps Objectivity/DB Distributed Database Session / TX Management Placement
  • 10. Targeting Large Graphs Graphs grow quickly Billions of phone calls / day in US Emails, social media events, IP Traffic Financial transactions Some analytics require navigation of large sections of the graph Must distribute data and go parallel Copyright © InfiniteGraph
  • 11. Consistency Models Trading off full consistency for performance Relax locking, allow stale reads Gain 100x edge ingest rates Great for “social graph” applications These tend to have relaxed consistency requirements API allows choice per operation Copyright © InfiniteGraph
  • 12. Pipelining Copyright © InfiniteGraph IG Core/API Configuration Navigation Execution Management Extensions Session / TX Management Placement (MDP) Placement (Pipelining) V 1 V 2 V 3 E 12 E 23 Pipeline Manager Staging Containers Pipeline Containers 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)
  • 13. Distributing Navigation Graph algorithms naturally branch Breaking up the process is relatively simple Orchestrating it is more challenging Copyright © InfiniteGraph Alice Carlos Charlie Bob Meets Calls Pays Dave Eve Chuck Calls Lives With Meets
  • 14. Partitioned Graphs are Ugly Copyright © InfiniteGraph Distributed API Application(s) Partition 1 Partition 3 Partition 2 Partition ... n Processor Processor Processor Processor
  • 15. Making it scale… A distributed data tier supports parallel IO A distributed cache/processor tier for processing “navlets” Ability to deal with remote data reads (fast) Navlets hit processor/cache instances based on consistent hashing of their start vertex Copyright © InfiniteGraph
  • 16. Flexible Data Models Schema isn’t for everyone Great for relatively static models Support for inheritance helps So does auto-evolution Looking to support document style elements Support for ad-hoc attributes Ability to mix both approaches Copyright © InfiniteGraph
  • 17. Other Projects Blueprints / Gremlin support Native Visualizer and Management Console Built in Qualifiers More Indexing Enhancements Algorithms Large scale samples Copyright © InfiniteGraph
  • 18. Thank you ! Copyright © InfiniteGraph [email_address] Twitter - @infinitegraph