Graph Database and Why it is
gaining traction
A Study Summary
By Giridhar Chandrasekaran
Miles Ahead of RDBMS in terms of
Granularity
In a graph database, relationships are stored at the individual
record level, while a relational database uses predefined
structures, a.k.a. table definitions or schema. (- Not
Schemaless but Schema-at-Granular level).
No Column/Type Constraints:
Unlike a table, where you need to add a column for each
additional attribute, here you can be much more flexible with the
data structure and types. A property that was meant to be a
string can be used as an integer without any constraints.
Relationship is the Key:
● While RDBMS aims to be static and hence best suited
for Transactional Data.
● Graph Database aims to be focussing on Dynamicity to
cater to newer relationships and works well for Entity
Modeled Data - Adhoc Schema
Flexibility
Data modelling
When to
choose
GRAPH
Database???
Criterias to tick
1. If there are numerous connections within the data
being stored, then a graph might be worth considering.
2. If your data model is inconsistent and demands
frequent changes, then using a graph database might
be the way to go.
1. additional attributes could be added at some
point
2. not all entities will have all the attributes in the
table.
3. the attribute types are not strictly defined.
3. Graph databases are well equipped to traverse
relationships when you have a specific starting
point or at least a set of points to start with (nodes
with the same label).
4. No full scans.
5. When we don’t search based on a Key field.
6. When we need to search based on Relation
between entities.
7. Real-time schema-free data needs to be stored.
Graph Database Vs RDBMS Vs NoSql
Most NoSQL systems are aggregate-
oriented, grouping the data based on a
particular criterion and the database type
(such as document store, key-value pair,
etc).
Other NoSQL databases lack relationships.
Graph databases, on the other hand, handle
fine-grained networks of information,
providing any perspective on your data that
fits your use case.
The key-value model is great and highly
performant for lookups.However, when the
values are themselves interconnected, you
have a graph.
Typical Use Cases
There are many notable examples where graph databases outperform other database
modeling techniques, some of which include:
● Real-Time Recommendation Engines. Real-time product and ecommerce
recommendations provide a better user experience while maximizing
profitability. Notable cases include Netflix, eBay, and Walmart.
● Master Data Management. Linking all company data to one location for a
single point of reference provides data consistency and accuracy. Master
data management is crucial for large-scale global companies.
● GDPR and regulation compliances. Graphs make tracking of data movement
and security easier to manage. The databases reduce the potential of data
breaches and provide better consistency when removing data, improving the
overall trust with sensitive information.
● Digital asset management. The amount of digital content is massive and
constantly increasing. Graph databases provide a scalable and
straightforward database model to keep track of digital assets, such as
documents, evaluations, contracts, etc.
● Context-aware services. Graphs help provide services related to actual-world
characteristics. Whether it is natural disaster warnings, traffic updates, or
product recommendations for a given location, graph databases offer a
logical solution to real-life circumstances.
● Fraud detection. Finding suspicious patterns and uncovering fraudulent
payment transactions is done in real-time using graph databases. Targeting
and isolating parts of graphs provide quicker detection of deceptive behavior.
● Semantic search. Natural language processing is ambiguous. Semantic
searches help provide meaning behind keywords for more relevant results,
which is easier to map using graph databases.
● Network management. Networks are linked graphs in their essence. Graphs
reduce the time needed to alert a network administrator about problems in a
network.
● Routing. Information travels through a network by finding optimal paths
makes graph databases the perfect choice for routing.
Major Drawbacks
The general disadvantages of graph databases are:
● There is no standardized query language. The language
depends on the platform used.
● Graphs are inappropriate for transactional-based
systems.
● The user-base is small, making it hard to find support
when running into a problem.
Major Drawback - Relational databases are faster but in graph each
record has to be examined individually during a query to determine the
structure of the data.
Really??? - But Graph database must not be designed to do full scans
rather a search by a node approach.

Graph Database and Why it is gaining traction

  • 1.
    Graph Database andWhy it is gaining traction A Study Summary By Giridhar Chandrasekaran
  • 2.
    Miles Ahead ofRDBMS in terms of Granularity In a graph database, relationships are stored at the individual record level, while a relational database uses predefined structures, a.k.a. table definitions or schema. (- Not Schemaless but Schema-at-Granular level). No Column/Type Constraints: Unlike a table, where you need to add a column for each additional attribute, here you can be much more flexible with the data structure and types. A property that was meant to be a string can be used as an integer without any constraints. Relationship is the Key: ● While RDBMS aims to be static and hence best suited for Transactional Data. ● Graph Database aims to be focussing on Dynamicity to cater to newer relationships and works well for Entity Modeled Data - Adhoc Schema Flexibility Data modelling
  • 3.
    When to choose GRAPH Database??? Criterias totick 1. If there are numerous connections within the data being stored, then a graph might be worth considering. 2. If your data model is inconsistent and demands frequent changes, then using a graph database might be the way to go. 1. additional attributes could be added at some point 2. not all entities will have all the attributes in the table. 3. the attribute types are not strictly defined. 3. Graph databases are well equipped to traverse relationships when you have a specific starting point or at least a set of points to start with (nodes with the same label). 4. No full scans. 5. When we don’t search based on a Key field. 6. When we need to search based on Relation between entities. 7. Real-time schema-free data needs to be stored.
  • 4.
    Graph Database VsRDBMS Vs NoSql Most NoSQL systems are aggregate- oriented, grouping the data based on a particular criterion and the database type (such as document store, key-value pair, etc). Other NoSQL databases lack relationships. Graph databases, on the other hand, handle fine-grained networks of information, providing any perspective on your data that fits your use case. The key-value model is great and highly performant for lookups.However, when the values are themselves interconnected, you have a graph.
  • 5.
    Typical Use Cases Thereare many notable examples where graph databases outperform other database modeling techniques, some of which include: ● Real-Time Recommendation Engines. Real-time product and ecommerce recommendations provide a better user experience while maximizing profitability. Notable cases include Netflix, eBay, and Walmart. ● Master Data Management. Linking all company data to one location for a single point of reference provides data consistency and accuracy. Master data management is crucial for large-scale global companies. ● GDPR and regulation compliances. Graphs make tracking of data movement and security easier to manage. The databases reduce the potential of data breaches and provide better consistency when removing data, improving the overall trust with sensitive information. ● Digital asset management. The amount of digital content is massive and constantly increasing. Graph databases provide a scalable and straightforward database model to keep track of digital assets, such as documents, evaluations, contracts, etc. ● Context-aware services. Graphs help provide services related to actual-world characteristics. Whether it is natural disaster warnings, traffic updates, or product recommendations for a given location, graph databases offer a logical solution to real-life circumstances. ● Fraud detection. Finding suspicious patterns and uncovering fraudulent payment transactions is done in real-time using graph databases. Targeting and isolating parts of graphs provide quicker detection of deceptive behavior. ● Semantic search. Natural language processing is ambiguous. Semantic searches help provide meaning behind keywords for more relevant results, which is easier to map using graph databases. ● Network management. Networks are linked graphs in their essence. Graphs reduce the time needed to alert a network administrator about problems in a network. ● Routing. Information travels through a network by finding optimal paths makes graph databases the perfect choice for routing.
  • 6.
    Major Drawbacks The generaldisadvantages of graph databases are: ● There is no standardized query language. The language depends on the platform used. ● Graphs are inappropriate for transactional-based systems. ● The user-base is small, making it hard to find support when running into a problem. Major Drawback - Relational databases are faster but in graph each record has to be examined individually during a query to determine the structure of the data. Really??? - But Graph database must not be designed to do full scans rather a search by a node approach.