Properties of Graph Databases

Two key properties of Graph Databases

  • Graph Storage

Native graph storage describe graph database which is optimized and designed for storing and managing graphs. Not all graph database technologies use native graph storage. Some serialize the graph data into a relational database, object-oriented databases, or other types of general-purpose data stores (NoSQL DB).

  • Graph Processing

Native graph processing describes graph databases that leverage index-free adjacency. Index free adjacencymeans that connected nodes physically “point” to each other in the database. Not all graph databases leverage index-free adjacency.

It’s important to note that native graph storage and native graph processing are neither good nor bad—they’re simply classic engineering trade-offs. The benefit of native graph storage is that its purpose-built stack is engineered for performance and scalability. The benefit of nonnative graph storage, in contrast, is that it typically depends on a mature non-graph backend whose production characteristics are well understood by operations teams. Native graph processing (index-free adjacency) benefits traversal performance, but at the expense of making some non-traversal queries difficult or memory intensive.

Other properties which are typically used in evaluating Graph DB includes

  • Scalability
  • Supported Graph Model (Property Graph, RDF)
  • ACID

The following table illustrates a sample of Graph Database providers and their properties.

Graph Database Providers Graph Model ACID Distributed Graph Storage Graph Processing
Allegro RDF Yes No/Support for HA Native Non-Native
Neo4J Property Graph Yes No/Support for HA Native Native
Titan Property Graph Yes – Eventually Consistent. Yes Non-NativeSupports multiple different NoSQL platforms – Cassandra being the most popular. Native
Oracle NoSql DB RDF Yes – Eventually Consistent Yes Non-Native Non-Native
Oracle OSG RDF and Property Graph Yes No/ Support for HA Non-Native Non-Native

 

*Generally speaking the non-native graph storage Graph Database providers focus on representing the graph efficiently, distributing the graph, building intelligent index for facilitating fast graph traversals etc.  The Graph Database provider typically depends on the underlying NoSQL provider or in the case of Oracle the Oracle DB itself to support replication, backup and snapshot.

Advertisements

About atiru

Product Strategist and architect for harnessing value from data.
This entry was posted in Topics related to Graph Databases and Compute, Linked Data (RDF). Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s