Skip to main content

Data integration and ready to use knowledge graphs, part 2

As I mentioned in part 1 of this article, the Knowledge Graphs has won a lot of interest during the last 3 - 4 years, because the Knowledge Graph has shown that is the best way to integrate data and represent knowledge; knowledge that is not only usable by humans but also by computers.

The upcoming of Knowledge Graphs

A knowledge graph can store knowledge about a person, company, system, etc. practically about anything.

It might very well be that in the future all systems will be governed by Knowledge Graphs or influenced in one way or another. However, we will of course for many years to come still have legacy systems that will be accessed using APIs or other mechanisms (please refer to figure 2 in part 1 of this article).

Turning data into knowledge

One type of knowledge that is possible to store in a graph is information needed to generate a new graph, I realized this while working on a big project of “Data Integration” using Knowledge Graphs. One of the systems in the project is implemented using graph DB, but the graphs contains almost entirely metadata to be able to generate a new graph that is the one that the user is interested in to make an analysis or decision.

In some way the application becomes a traditional application, the knowledge(logic) to generate the information wanted by the user is located in the application and not in the graph, see figure 4 below. It does not mean that it is wrong to use a graph DB to store data that is needed by an algorithm to generate a new graph.

Graphs can make our lives much easier when we are programming a complex algorithm, but always it shall be desired to use a graph to store knowledge.

Another case that I analyzed in the same big project, was to integrate a very complex system. In this case I wanted to use a virtual graph to access the SQL DB used by the system directly. When I asked for access to the database, the owner of the system answered, “of course but the data stored in the database will be useless for you without the logic in our application, you should use our API“.

After this comment I realized, as mentioned before, that the API Architecture had been used to try and add semantics to the data and deliver knowledge to the user. See figure below:

Data + logic = knowledge

Ready to use Knowledge Graphs

After analysing the two cases mentioned above, the concept of “Ready to use Knowledge Graphs” came to my mind.

A “Ready to use Knowledge Graph” is a graph that contains knowledge that the user or computer can access and use without the need to process it, meaning an application that can just access the knowledge without the use of logic or an algorithm to add more semantic.

It is merely to extract the knowledge and use it to make decisions. In reality this is what Artificial Intelligence (AI) is all about and ultimately we can ask machines to assist us with decision making based on the knowledge available. 

“Ready to use Knowledge Graphs” is a concept to make decisions faster, more accurate and consequently our lives a little bit easier.

Ready to use Knowledge Graphs
Written by Rafael Espino