Estructurados, semi-estructurados, no estructurados… ¿Cómo son tus datos?

Paloma Recuero de los Santos    26 mayo, 2020

Cuando hablamos de tipos de datos, podemos hacerlo desde muchas perspectivas diferentes. Podemos clasificarlos según su origen, su rango, el tipo de lenguaje con el que queremos trabajar sobre ellos etc. Pero la clasificación más práctica y global que permite trabajar de forma efectiva en el mundo digital es la basada en la estructura de los datos. Según esta, hay 3 tipos de datos: estructurados, semiestructurados y no estructurados.

Veremos cómo comprender el tipo de datos que se maneja en cada situación, es esencial para definir los recursos más adecuados para ingestarlos, almacenarlos, transformarlos, y entrenar con ellos modelos de los que obtener Insights de negocio, alertas frente a comportamientos anómalos, recomendaciones de mantenimiento predictivo etc

Datos estructurados

Los datos estructurados son los datos típicos de la mayoría de bases de datos relacionales (RDBMS). Estas bases de datos se caracterizan por tener un esquema determinado que define cómo son las tablas en  las que se almacenan los datos, qué tipo de campos tienen y cómo se relacionan entre ellas.

Estos datos se gestionan mediante un tipo de lenguaje de programación estructurado, conocido como SQL (Structured Query Language) diseñado precisamente, para administrar y recuperar información de los sistemas de gestión de bases de datos relacionales.

File:ESTRUCTURA.png - Wikimedia Commons

Son los datos estructurados son los más sencillos de manejar, ya que tienen todos el mismo formato. Suelen ser archivos de texto que se almacenan en forma de tabla, hojas de cálculo o bases de datos relacionales en las que cada categoría se identifica mediante un título.

Un ejemplo de este tipo de datos son los datos financieros, o los datos generados por sensores IoT.

Datos semi-estructurados

Datos semi-estructurados no tienen un esquema definido. No encajan en un formato de tablas/filas/columnas, sino que se organizan mediante etiquetas o “tags” que permiten agruparlos y crear jerarquías. También se les conoce como no relacionales o NoSQL.

Este tipo de datos representa alrededor del 5-10% del volumen de datos global. Sin embargo, tiene casos de uso muy relevantes desde el punto de vista comercial, en grandes infraestructurasde datos y aplicaciones web en tiempo real. Algunos servicios muy conocidos basados en este tipo de datos son el sistema de recomendación de Amazon, o los servicios de Linkedin.

Muchos de los casos de uso tienen que ver con el transporte de datos, compartir datos de sensores, intercambio electrónico de datos, plataformas de medios sociales, y bases de datos NoSQL.

Los ejemplos de datos semi-estructurados más conocidos son:

  • Correos electrónicos, donde los metadatos nativos permiten clasificarlos y realizar búsquedas por palabras clave
  • Lenguaje de marcado XML, cuya flexible estructura, basada en etiquetas, permite universalizar la estructura de datos, el almacenamiento y el transporte en la Web.
  • El estándar abierto JSON (JavaScript Object Notation), otro formato de intercambio de datos semi-estructurados que se utiliza mucho en la transmisión de datos entre aplicaciones web y servidores.
  • Las bases de datos NoSQL, que al no separar el esquema de los propios datos, son más flexibles. Permiten almacenar información que no se adapta bien al formato de registro/tabla, como por ejemplo, el texto de longitud variable. También facilitan el intercambio de datos entre distintas bases de datos.
Extensible Markup Language - Wikipedia, la enciclopedia libre

Datos no estructurados

Los datos no estructurados son prácticamente todo lo demás. Suponen un 80% del volumen de todos los datos generados, y el porcentaje no deja de crecer. Estos datos pueden tener una estructura interna, pero no siguen ningún esquema o modelo de datos predefinido.

Pueden ser datos de texto, o no textuales; haber sido generados por una máquina o por una persona; y almacenarse en una base de datos NoSQL, o directamente en un Datalake.

Los ejemplos más conocidos son:

  • Ficheros de texto: archivos tipo word, hojas de cálculo, presentaciones, logs…
  • Correo electrónicos, el cuerpo del mensaje, el resto de la información suele ser semi-estruturada, como hemos indicado anteriormente
  • Datos de redes sociales como Facebook, Twitter, Linkedin
  • Datos de sitios web como Youtube, Instagram etc
  • Datos móviles: mensajes, localización, chats…
  • Imágenes, vídeos, audios etc
  • Datos meteorológicos, imágenes por satélite, datos de sensores etc
Sonido, Ola, Forma De Onda, Aural, De Audio, Sonic

Trabajar, no sólo con datos no estructurados, sino con enormes volúmenes de ellos supone un auténtico desafío, al que damos respuesta con nuevas herramientas basadas en machine learning, nuevos modelos de almacenamiento y computación basados en sistemas cloud, cambios en las estrategias tradicionales de ingeniería de datos (de modelos ETL a ELT), integración de soluciones nativas y opensource etc. A todo ello se suma la complejidad añadida de dar respuesta en tiempo real a un creciente número de aplicaciones como las basadas en disposivitos IoT, el comercio online etc.

Conclusión

Es muy importante ser consciente del tipo de datos que se maneja en cada caso, para decidir cuáles son los recursos y herramientas más adecuados para cada situación. Esto nos permitirá definir las arquitecturas más eficientes que cubran las necesidades de una empresa con la mejor relación coste-beneficio.

Para conocer más sobre cómo se almacenan los datos, y cómo entrenar con ellos nuestros algoritmos de machine learning, puedes leer estos otros dos post de nuestro blog:

Para mantenerte al día con LUCA visita nuestra página web suscríbete a LUCA Data Speaks o síguenos en TwitterLinkedIn YouTube.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *