IG in 5 minutes Darren Wood Chief Architect, InfiniteGraph
Relationships are  everywhere
Graph Databases Optimized around data relationships Relationships as first class citizens Super fast traversal between entities Rich/flexible annotation of connections Small focused API (typically not SQL) Natively work with concepts of Vertex/Edge SQL has no concept of “navigation” Most attempts based in SQL are convoluted Copyright © InfiniteGraph
Simple API 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
Navigational Query Performance
Some customers and partners
Tomorrow @ 12:30 Data models for Graph Databases Distributing Graphs - Not just a partitioning problem Getting data in fast Scaling out navigational queries New in 2.0 Copyright Š InfiniteGraph
Thankyou ! Copyright Š InfiniteGraph [email_address]

NOSQL Now! Presentation, August 23, 2011: Introduction to InfiniteGraph, the Distributed and Scalable Graph Database.

  • 1.
    IG in 5minutes Darren Wood Chief Architect, InfiniteGraph
  • 2.
  • 3.
    Graph Databases Optimizedaround data relationships Relationships as first class citizens Super fast traversal between entities Rich/flexible annotation of connections Small focused API (typically not SQL) Natively work with concepts of Vertex/Edge SQL has no concept of “navigation” Most attempts based in SQL are convoluted Copyright © InfiniteGraph
  • 4.
    Simple API 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
  • 5.
  • 6.
  • 7.
    Tomorrow @ 12:30Data models for Graph Databases Distributing Graphs - Not just a partitioning problem Getting data in fast Scaling out navigational queries New in 2.0 Copyright Š InfiniteGraph
  • 8.
    Thankyou ! CopyrightŠ InfiniteGraph [email_address]

Editor's Notes

  • #3 Relationships and connections are EVERYWHERE. Examples include CRM, Telecom, Intelligence, Research, Healthcare, Finance and yes, social networks too. But notice, it’s absolutely not just about social networks, in the Facebook sense. ANY application that needs to find connections and relationships separated by more than 2 degrees, is a good candidate for InfiniteGraph.
  • #6 InfiniteGraph  (built on Objectivity/DB) is optimized for high speed traversal of complex relationships. Compared to traditional technologies, we return results faster by several orders of magnitude, and performance will not degrade or suddenly drop-off.