The old data rules are all but extinct. New data continuously comes at you from brand-new sources like social media platforms, mobile devices, and the Internet of Things (IoT).
This data does not fit neatly into the well-defined columns of your relational database management system (RDBMS).
You need to combine it with the corporate data that you have stored in your ERP, CRM, and supply chain systems to deliver a more detailed picture of your business and customers.
To help you accomplish this, a lot of newcomers have stepped onto the data scene. Redis and MongoDB have emerged as enterprise-class NoSQL database systems, SAP created HANA, and Spark and Hadoop provide new ways of storing data.
Neo4J and Graph Databases
There is another technology that has gained a lot of momentum for its unique way of presenting data.
Graph databases, led by Neo4J, work differently than other data models. Graph databases focus on the relationships between pieces of data to provide a larger view of your information.
Graph databases consist of two parts. Each node contains a piece of data, such as a user, place, amount, or category, and the tool used to identify its relationship to the other pieces of data.
Unlike most databases, relationships are prominent components of graph databases. The relationships between nodes are just as important as their data associates.
To understand how this relationships works, it helps to look at some example use cases.
Graph Databases and Fraud Detection
Fraud is a massive, global threat to all businesses. In 2014, credit card fraud cost U.S. retailers $32 billion. And in 2015, payment fraud cost the global financial sector $21.84 billion. The challenge with fraud is that it is incredibly hard to detect. By the time you realize that you have been a victim, the damage has already been done.
The increase in fraud and the large number of sophisticated fraud rings go hand-in-hand.
The challenge is that the transactions that these cybercriminals pull off look like normal activity, and most traditional detection systems can only isolate abnormal behavior.
A graph database, on the other hand, can monitor many different pieces of information and understand the relationships between them.
It can see if multiple transactions have been coming from the same IP address or if the same phone number is being used for multiple new accounts with different billing addresses.
These are very basic examples, but they do demonstrate how graph databases focus on the relationship to help identify patterns as they happen.
Graph Databases and Real-Time Recommendation Engines
Another use case that is perfectly suited for graph databases is a real-time recommendation engine.
By now you have experienced a recommendation system. It could have been the movie recommendation that you were given after binge-watching House of Cards on Netflix.
Or a list of products on Amazon that other customers have purchased after viewing the same items that you perused.
A recommendation system can be that simple. You viewed a product and are referred to other like products. Or it can be much more detailed with the aid of a graph database.
A graph database can be used to map out multiple ways that items and customers are related.
For example, they can consider age, sex, and geographic location.
Plus, they can tie in more complex data like weather patterns or recent travel data to, for example, suggest the purchase of a new coat for your upcoming trip to Chicago.
Relationships Hold the Key to Better Understanding Your Data
As the amount of data that we capture continues to grow, understanding how that data is related is the key to understanding its context.
This is true in network and IT operations where complex networks have many interdependencies. It is also true in medical research where relationships help researchers spot health trends early on and put that information to good use.
Related content you may have interest in: