GraphDB is used in scenarios where data is highly connected and the goal is to capture the complex relationships in the vastness of it. In a gist, it’s recommended where the Relationship between data is more important than the data itself.

Some of the well known Use Cases for GraphDB are

  • Drive the customer engagement using the demographic data from previous similar and comparative engagements 
  • Obtaining 360-Degree Customer Viewpoint
  • Recommendation Engine
  • Used in Fraud Detection and Analytics to bring to light the unusual relationship between the entities
  • Fault Analysis using anomaly detection
  • Connect siloed data from CRM, Inventory, Tasks, Appointments and Point of Sales systems
  • Privacy and risk compliance

Benefits of using GraphDB to support business requirements are due to the below facts

  • Simplified Data Model
  • Allow Flexible modeling
  • Cater for both Structured and Unstructured Data
  • Real-time Querying and update capability
  • Simple Querying
  • Parameterized Querying
  • Graphic Visualization 
  • Test based evolution

GraphDB have the below mentioned Performance Advantages

  • A basic query can run hundreds of times faster on a graph database than a traditional relational database.
  • Graph-like queries, like finding the shortest path in a graph, are handled quickly and naturally.
  • Graph databases do not rely on an index, so they can easily handle huge Volume of Data
  • Graph databases do not rely on join operations.
  • It can handle fluctuating data changes quickly due to the schema less architecture

Some Considerations while choosing a GraphDB for solving a business case

  • Understand the graph use case before choosing a graphdb by defining business case, processing requirements and aligning with technology architecture
  • The Query language complexity and ease of using ML capabilities

In the below table we can note that a GraphDB is better suited for querying data that is highly connected and has complex relationships. The Use-Case below represents a social network querying to find all the friends of a user’s friends. And furthermore for finding friends of friends of friends. Alexa and Jonas built this query in both MySQL and Neo4j with a database of 1,000,000 users and the results are striking. Execution Time is in seconds, for 1,000 users.

Depth Execution Time – MySQL Execution Time –Neo4j
2 0.016 0.010
3 30.267 0.168
4 1,543.505 1.359
5 Not Finished in 1 Hour 2.132

*Reference:Neo4j in action Jones partner and Alexa Vukoti

Below are some of the comparison points of the most popular implementations of graph databases – TigerGraph Vs Neo4j

Name Neo4J TigerGraph
Data space on disk No Data compression on Disk Data Compressed on Disk
Query Language Cypher Query Language GSQL
Implementation Language Java, Scala C++
Supporting Languages .Net, Clojure, Elixir, Go, Groovy, Haskell, Java, JavaScript, Perl, PHP, Python, Ruby, and Scala C++, Java
Multi Processing APOC library, Cypher transaction Batching Parallel computation built on BSP (Bulk Synchronous Parallel)
Operating System Linux OS X Solaris Windows Linux
License Model OpenSource, Managed Commercial, Managed
Deployment Platform Cloud, On Premise Cloud, On Premise
Supported Graph Algorithms Neo4j Graph Data Science (GDS) GSQL Graph Algorithm Library
Pricing Model On Cloud: RAM, Consumption Based On Premise: machines/cores/RAM On Cloud: CPUs and RAM size, pay-as-you-go hourly model. Free for 50 GB data, Annual Subscription: Tens of thousands of dollars for 50-100 GB and 1 million $ for 1 Terabyte of Data    On Premise: Free for 50 GB data, Annual Subscription: Tens of thousands of dollars for 50-100 GB and 1 million $ for 1 Terabyte of Data 

– By Gayathri Bhave