Though graph technologies are becoming increasingly important for various reasons (See: Knowledge Graphs are on the rise), there is still not common knowledge that there are two types of graph technologies – semantic knowledge graphs and property graphs.
A quick overview of differences between property graphs and semantic knowledge graphs is provided in an article written by Jans Aasman, who also states: “For simple graph-oriented data relationships, a non-semantic (or property graph) database approach might solve a single dimensional problem like: shortest path, one-to-many relationships, weighted elements, structured inter-relationships. But rarely are problems and queries that simple. Real-world data is highly complex, multi-dimensional and needs the powerful additional features of a semantic graph solution.”
In return, advocates of the property graph model continuously have stated that the biggest challenge of Semantic Graph Models (RDF) is its complexity and that it will have a hard time to succeed.
Two influential semantic web protagonists, Dan Brickley and Libby Miller (in Validating RDF data) get to the heart of the issue:
“People think RDF is a pain because it is complicated. The truth is even worse. RDF is painfully simplistic, but it allows you to work with real-world data and problems that are horribly complicated.”
Instead of extending this probably endless discussion about which one of the two graph models is the better one, I’ll come up with four generic problems that can be addressed by graph technologies in general. I’ll let the reader decide, which of the available graph technologies (or maybe the two in combination?) will help to solve these problems most efficiently.
Challenge: Loosely connected data // Solution approach: Linked Data
- Benefit from unified views across multiple data silos within the enterprise
- Integrate heterogeneous data sources (structured & unstructured)
- Benefit from standards-based data models, even along the whole industry supply chain
Challenge: Too simplistic data models // Solution approach: Taxonomies & Ontologies
- Start to use hierarchical and ontological data models together with your connected datasets
- Explore the connections between the entities of a graph
- Benefit from reasoning capabilities → benefit from better data quality
Challenge: Data models don’t keep pace with market dynamics // Solution approach: Explicit Semantic Layer
- Unlock semantics of your data from the application logic and make it explicit as an own asset
- Benefit from a “schema-late” approach
- Enable the use of data in previously unforeseen use cases with semantic modeling
Challenge: Abstract data models // Solution approach: Knowledge Graphs
- Benefit from entity-centric views on your data
- Share a more complete understanding of data among both people & applications
- Make existing knowledge assets reusable and make them available ‘as a service’
Depending on what industry someone works for (service-oriented versus asset-oriented industry) one of the graph models seem to be more relevant at first glance. While the one thinks data-centric and tries to understand the customer and marketplace better, the other one is knowledge-centric and wants to stay or become an expert in the field.
Which of the graph models fits best in which scenario, and is there a one fits all solution?
Take a look at the Anatomy of a Knowledge Graph.