1. What’s the big deal?
Data has traditionally been collected and saved in databases, often relational databases, which have the capability to store large amounts of data. However, these databases have limitations due to the complex nature of data and its connections in the real world.
To overcome these limitations knowledge graphs are used. Knowledge graphs offer a novel approach to data storage whilst accounting forthe complex relationships in data. This results in easily accessible data, where it is possible to uncover hidden features and find new insights from your data.
2. What is a knowledge graph?
Knowledge graphs are models of data about a certain topic. These topics can be anything where data can be collected, such as people across multiple organisations, products for sale in a business or movies, actors,directors and how they are all connected. These models allow us to visualise the way connections are made when the data is used in the real world.
A knowledge graph composes of nodes, edges and properties. Edges and nodes are crucial to a knowledge graph whilst properties provide additional information.
· Nodes are usually entities, such as people, organisations or products.
· Edges are the relationships between nodes. Relationships could be between two nodes describing people such as ‘related to’ or ‘employed by’.
· Properties can be any further information about a node and properties can vary depending on the node type. Properties donot link to the edges.
When we combine nodes, edges and properties we have a knowledge graph!
3. Movie Knowledge Graph Example
A simple knowledge graph example is a movie database. This type of database can be shown in a straight forward way whilst still containing the complexities of the relationships involved.
If we consider our knowledge graph components:
· Nodes – People, Movies, Directors,Actors, Genres
· Relationships – ‘Watched’, ‘Directed By’, ‘Acted in’
· Properties – Age, Run time, Release Date, Number of movies directed
An example of a small section of a Movies knowledge graph is visually displayed below. This simple knowledge graph contains the key components previously described.
This example shows which movies Alice and Bob have watched, what genre they are in, who directed them and who acted in them. There are manyreasons why this information is important and how it can be used, but we willget to that later…
4. Why should you use Knowledge Graphs?
Representing data in a knowledge graph provides contextual understanding that may not be possible in a traditional database. The power of a knowledge graph becomes clear when trying to follow connections between data points to retrieve information. Graph queries can take a tiny amount of time to perform this compared to retrieving the same data from a relational database.Not only does the faster search provide huge benefits but the flexibility of a knowledge graph enables the use of complex algorithms to uncover insights in your data and provide real world solutions.
|
Knowledge Graph |
Relational Database |
Flexibility |
Unstructured – The structure of a knowledge graph is flexible to whatever is desired and can be changed whenever needed |
Rigid - Predefined structure of columns that must be kept the same for future data |
Performance |
Fast - Relational queries can be retrieved quickly even for large datasets |
Slow - Relational queries require many table joins, and can take a long time to process |
Storage & Scaling |
Highly scalable – Can store massive amounts of data in multiple formats |
Scales but with difficulty - Can store massive amounts amounts of data, but must be kept in the same format |
Maintenance |
Low Maintenance - Easy to adjust when you need to |
Tricky to Maintain - Is difficult to change to a new data structure |
A further benefit gained from knowledge graphs is the flexibility and scalability. These graphs can be edited to include new information easily without affecting other data entries. Knowledge graphs also store data efficiently resulting in a data store that can scale to hold huge amounts of information. For example, one of the most commonly used knowledge graphs can be found on Amazon, linking every product sold in order to improve searchability and recommendations on a huge scale.
5. When to use knowledge graphs
Graph databases can be used in a wide variety of use cases, each scenario benefits from a different aspect of a knowledge graph.
Recommendation System:
We can revisit our previous example of a movie dataset stored in a knowledge graph. The data stored can be used to connect likes, dislikes and other data to provide a complex and effective recommendation system. Our example can be extended to show this.
Fraud Detection:
Knowledge graphs have been used to detect fraudulent transactions between groups of people and organisations. Knowledge graphs arekey to the success of this as anomalies can be traced through the graph to the intended recipient.
Semantic Search:
Knowledge graphs can enhance search engines by providing context and semantic knowledge. This contextual knowledge results in more accurate and personalised search results, which in return will lead to a better service for the customer.
6. Conclusion
To conclude, knowledge graphs are a powerful tool that allows the user to uncover previously hidden insights in their data. Representing data in a graph form rather than a traditional table gives improved and additional use cases such as fraud detection, recommendation systems, semantic search and much more! However, in this introduction we have only covered the basics of knowledge graphs. We will have to return to delve deeper into their true potential.