Datos enlazados y Grafos de conocimiento

Los grafos de conocimiento (KG) conectan datos, como podrían ser objetos, ubicaciones, personas, eventos, fechas, etc. es decir, son bases de datos en forma de grafo.

Antes de adentrarnos en profundidad en la tecnología de OriginTrail debemos de dejar claros una seríe de conceptos para el mejor entendimiento del protocolo.

Datos dispersos y sus desafíos

Los desarrolladores viven en constante lucha por descubrir, compartir y administrar datos de diferentes sistemas en diferentes formatos. Esto requiere comprenprender, estructurar, integrar y verificar los datos cada vez que se crean nuevas funciones o aplicaciones basadas en esos datos.

En la Web2, la capacidad de descubrimiento está habilitada por los motores de búsqueda o buscadores web, que devuelven una lista de enlaces web basados en la consulta realizada. El intercambio y la gestión de datos se rigen por servicios y protocolos centralizados que no comparten estructuras e interfaces de datos comunes, lo que dificulta el acceso y uso de estos datos.

Por ejemplo, consideremos un conjunto de datos de base de datos relacional (SQL) como el que se muestra a continuación:

Id

987

User

Empresa ACME

address

C/ Imp. 2044, NY

GNL

123456

Otro sistema podría mantener más datos sobre esto en otro tipo de formato, como un CSV:

company_name; company_address; email
ACME company; C/ Impresionante 2044, NY; office@acme.com

Como seres humanos, podemos entender rápidamente que estos datos están relacionados con lo mismo (Empresa ACME), sin embargo, no es tan obvio para el software, ya que generalmente no tiene suficiente contexto. Para usar los datos de ejemplo anteriores en aplicaciones, es necesario resolver los desafíos de tener diferentes estructuras de datos, esquemas, medios de acceso, etc. lo que requiere muchas operaciones para comprender, integrar y validar los conjuntos de datos. Por ejemplo, ¿Cómo consultaría la dirección de correo electrónico de la empresa ACME? Aquí es donde la web semántica nos ayuda.

¿Qué son los datos enlazados y para que sirven?

Los datos vinculados o datos enlazados son una forma de representar los datos o las cosas de forma estructurada mediante relaciones, es decir, su idea principal es la de representar las cosas mediante relaciones entre ellas en un grafo simple. Los datos enlazados se basan en primitivas llamadas «triples«, que conectan una entidad sujeto con una entidad objeto a través de una relación.

triple datos vinculados ejemplo

Los triples son excelentes porque se pueden usar para crear estructuras de datos más complejas: Grafos o Gráficos.

¿Qué es un Grafo?

Un grafo se conforma por un conjunto de nodos o vértices, conectados entre sí por una serie de aristas. Su representación gráfica se realiza mediante puntos (nodos) conectados entre sí por líneas (aristas). Los grafos sirven para estudiar las relaciones existentes entre unidades que interactúan entre ellas.

Una de las utilidades más interesantes que nos proporcionan los grafos es para el análisis visual de los datos. Los grafos nos permiten crear una «red semantica» de datos, y a su vez nos permiten extender esta red de datos de una forma sencilla.

Cómo mencionamos anteriormente, los triples nos permiten crear estructuras de datos más complejas como los grafos. En términos generales, conectar dos triples nos da esto:

Por lo tanto, la integración del conjunto de datos de ejemplo mencionados anteriormente genera una estructura gráfica similar a esta:

Un grafo se puede consultar fácilmente de muchas formas y permite desarrollar una red de conocimiento sobre las cosas, en lugar de mantener las tablas encadenadas.

Tipos de grafos

La teoría de grafos es un campo de estudio de las ciencias de la computación y de las matemáticas. Como mencionamos anteriormente un grafo es un conjunto de nodos conectados por aristas y el tipo de grafo se determina en función de su desempeño a la hora de realizar las conexiones entre los diversos nodos y aristas que lo componen. A continuación enumeraremos algunos de los diferentes tipos de grafos:

  • Grafo simple

    Se caracteriza por estar compuesto por una sola arista, es decir, los nodos están conectados por una simple arista.

  • Grafo dirigido

    Este tipo de grafo está caracterizado por que todas las aristas tienen un sentido definido.

  • Grafo conexo

    Este otro tipo de grafo se caracteriza por que sus nodos están conectados por un camino o semicamino.

  • Grafo euleriano

    El grafo euleriano es un camino en el que la arista pasa por cada nodo solo una vez.

  • Grafo hamiltoniano

    Es un camino en el que la arista pasa por cada nodo una sola vez, cuando el inicio y el final coinciden en el mismo nodo se denomina ciclo hamiltoniano.

  • Grafos isomorfos

    Un grafo isomorfo se caracteriza por la biyección de los vértices o nodos del grafo sobre otro grafo, haciendo que se preserve la adyacencia de los nodos.

  • Multigrafo

    El multigrafo, también denominado grafo multivariado es un grafo que permite multiples aristas, es decir, los nodos pueden estar conectados por gran cantidad de aristas a la vez.

En las próximas secciones, le mostraremos cómo usar el gráfico de conocimiento descentralizado de OriginTrail para el descubrimiento y la consulta de datos; sin embargo, primero expliquemos qué es un gráfico de conocimiento o grafo de conocimiento.

¿Qué es un grafo de conocimiento o base de datos en grafo?

Hay muchas definiciones de gráficos de conocimiento (KG), también llamados grafos de conocimiento, todas ligeramente diferentes. Todas estas definiciones apuntan a un grafo de conocimiento como una red de entidades (objetos, eventos o conceptos físicos y digitales) que ilustran la relación entre ellos (también conocida como red semántica).

Los KG o base de datos en forma de grafo son utilizados por las pincipales empresas como Amazon, Google, Uber, IBM, etc. para diversas aplicaciones: búsqueda, integración de datos, motores de recomendación, análisis de datos, machine learning e IA, por nombrar algunos.

Características principales de un grafo de conocimiento

  • Se centran en las conexiones de datos como «first class citizens» (datos enlazados).
  • Estan diseñados para ingerir datos de múltiples fuentes, generalmente en diferentes formatos.
  • Son modelos de datos flexibles, fácilmente ampliables.
Grafo de conocimiento de OriginTrail

¿Para qué se utilizan los gráficos de conocimiento hoy en día?

Comúnmente, los grafos de conocimiento se implementan dentro del dominio de una organización y están diseñados para capturar conocimiento de varias fuentes, tanto dentro como fuera de la organización. Estos gráficos de conocimiento centralizados generan un gran valor para sus propietarios, sin embargo, un gráfico de conocimiento compartido globalmente descentralizado aporta un valor mucho mayor a todos los participantes. Presentamos el Gráfico de Conocimiento Descentralizado (DKG) de OriginTrail como el primer gráfico de conocimiento descentralizado abierto global y sin permisos.