The Value of Explicit Schema for Graph Use Cases

611 views

Published on

A look at the many facets of schema-less approaches vs a rich schema approach, ranging from performance and query support to heterogeneity and code/data migration issues. Presented by Nick Quinn, Principal Engineer, InfiniteGraph

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
611
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
15
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

The Value of Explicit Schema for Graph Use Cases

  1. 1. www.Objectivity.com The Value of Explicit Schema For Graph Use Cases Nick Quinn, Principal Engineer, InfiniteGraph 2/21/2014 1
  2. 2. Why use a Graph Database?
  3. 3. The Value of Schema : Custom Placement • Mitigate bottlenecks and optimize performance by using the following strategies: – Custom Placement: data isolation/localization of logically related information (to achieve close to subgraph partitioning) in order to minimize the number of network calls
  4. 4. The Value of Schema: Custom Placement • Consider the case where you are placing medical data for hospitals and patients. Using a custom placement model you can achieve fairly high isolation of the subgraphs. – Doctor ↔ Hospitals, Patients ↔ Visits.
  5. 5. The Value of Schema: GraphViews • A GraphView is a schema view used in the context of navigational query. • With GraphViews, we can use schema to perform path qualification to achieve real-time navigational query results. – Use GraphViews to filter out vertex or edge types
  6. 6. The Value of Schema: GraphViews • Consider calculating number of links to interesting companies on LinkedIn. – If you are connected to recruiters, the navigation result set can be slowed down and possibly polluted if traversing through these recruiters. GraphView myView = myGraph.createGraphView(); myView.excludeClass(Person.class, “CONTAINS(profession, ‘recruiter’)”;
  7. 7. The Value of Schema: Custom Visualizers • Custom visualization settings and actions determined by type.
  8. 8. The Value of Schema: Other Topics • Life is like a box of chocolates– Class metadata is preserved in the database (Relationships and Hierarchies) • Query Language Simplicity– Using types and filters on types is more intuitive than using labels – MATCH [Person(name==“Steve Jobs”)] –[Friend(where == “Facebook”)]->[Person]; – MATCH [p:Person] –[f:Friend]->[:Person] WHERE p.name== “Steve Jobs” && f.where == “Facebook”;
  9. 9. 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 and placement model
  10. 10. QUESTIONS?

×