Published on February 22, 2014
www.Objectivity.com The Value of Explicit Schema For Graph Use Cases Nick Quinn, Principal Engineer, InfiniteGraph 2/21/2014 1
Why use a Graph Database?
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
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.
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
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’)”;
The Value of Schema: Custom Visualizers • Custom visualization settings and actions determined by type.
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”;
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
The value of the attribute is ... the only syntax that could be used to serialize a graph. In many cases, ... mappings directly to the graph's schema?
On Explicit Provenance Management in RDF/S Graphs ... are of equal value as explicit ones and should not be ... the use of named graphs as the means to store
... A Property Graph ... provides the added value of ensuring ... needed to use the GraphSONUtility, though in cases where vertices or edges ...
XML Schema best practices ... then restrict the values. Graph data structures ... If you are creating an XML schema from scratch, use lower camel case, ...
Use Cases; Why Objectivity; How ... the class type and fields are persisted as schema, as well as the field values of the instance of that class ...
XML Schema Versioning Use Cases [SUBTITLE] ... (e.g. graph it or apply decision support on it). ... , greatly reducing the value of the schema or DTD. ...
... The property graph data model not only offers schema ... graph, which represents anetwork of values. ... graph data to consult USE ...