Elena Canorea
Communications Lead
Introducción
Un modelo de datos bien diseñado es clave a la hora de contar con sistemas operativos eficaces, así como de aplicaciones de BI y análisis que aporten valor comercial al transformar los datos empresariales en un activo de información útil.
Analizamos en qué consiste el data modeling, sus aplicaciones y beneficios, así como consejos para que lo utilices en tu negocio.
El “data modeling” o modelado de datos es el proceso de analizar y definir los distintos tipos de datos que una empresa recopila y produce, así como las relaciones entre ellos. Ya sea mediante texto, símbolos y diagramas, los conceptos de modelado de datos crean representaciones visuales de los datos a medida que se capturan, almacenan y utilizan en la empresa.
Los modelos de datos se construyen en función de las necesidades del negocio, y las reglas y los requisitos se definen con antelación mediante la retroalimentación de las partes interesadas, con el objetivo de poder incorporarse al diseño de un nuevo sistema o adaptarse en la iteración de uno existente.
Al modelar los datos, se puede documentar qué tipo de datos tenemos, cómo los usamos y los requisitos de gestión de estos en cuanto a su uso, protección y gobernanza. Por ello, algunas de sus ventajas incluyen:
Por ello, cuando hablamos de data modeling, el escenario ideal de los modelos de datos serían documentos vivos que evolucionan junto con las cambiantes necesidades del negocio.
El modelado de datos ha evolucionado junto con los sistemas de gestión de bases de datos, y la complejidad de los tipos de modelos ha aumentado a medida que las necesidades de almacenamiento de datos de las empresas han aumentado.
Repasamos algunos ejemplos de modelado de datos:
Este tipo define la estructura general del negocio y los datos de una empresa. Se utiliza para organizar conceptos de negocio, y es definido por las partes interesadas y los ingenieros o arquitectos de datos. Por ello, tanto las entidades como sus relaciones se definen dentro del modelo conceptual de datos.
Se basa en el modelo conceptual de datos, con atributos específicos de los datos dentro de cada entidad y las relaciones entre dichos atributos.
Se trata del modelo técnico de las reglas y estructuras de datos, definidas por ingenieros de datos, arquitectos y analistas de negocio, lo que ayuda a tomar decisiones sobre el modelo físico que requieren los datos y el negocio.
Este es la implementación específica del modelo lógico de datos creado por administradores y desarrolladores de bases de datos. Está desarrollado para una herramienta de base de datos y una tecnología de almacenamiento de datos específicas, y cuenta con conectores de datos para distribuir los datos a los usuarios de los sistemas empresariales según sea necesario.
De hecho, este es el objetivo al que se han dirigido los otros modelos: la implementación real del patrimonio de datos.
Para comprender mejor las técnicas de modelado más populares actualmente, también hay que repasar los primeros que se utilizaron al comienzo de las bases de datos. Estos son los cuatro primeros que describimos a continuación, seguidos por los tres más utilizados en la actualidad.
En este caso, los datos se almacenan en una estructura de árbol con registros padre e hijo que conforman una colección de campos de datos. Un padre puede tener uno o más hijos, pero un registro hijo solo puede tener uno.
Además, este modelo también se compone de enlaces, que son las conexiones entre registros, y los tipos que especifican el tipo de datos que contiene el campo. Fue muy popular en los años 60.
Este modelo extendió el modelo jerárquico al permitir que un registro hijo tuviera uno o más padres. Esta técnica de red es precursora de una estructura de datos gráfica, con un objeto de datos representado dentro de un nodo y la relación entre dos nodos denominada “edge”.
Este modelo tuvo su auge en los 70.
Con este modelo, los datos se almacenan en tablas y columnas, y se identifican las relaciones entre sus elementos. Además, en este modelo se incorporan funciones de gestión de bases de datos, como restricciones y disparadores.
Se convirtió en la técnica más popular en los 80 y el modelo de datos entidad-relación y dimensionales, las más populares del momento, son variaciones del modelo relacional.
Este modelo combina aspectos de la programación orientada a objetos y el modelo de datos relacionales.
Un objeto representa los datos y sus relaciones en una única estructura, junto con atributos que especifican sus propiedades y métodos que definen su comportamiento. Estos pueden tener múltiples relaciones entre sí.
El modelo, además, se componen de clases y herencia, y surgió a principios de los 90.
Es uno de los más adoptados en bases de datos relacionales de aplicaciones empresariales, especialmente para el procesamiento de transacciones. Es muy eficiente para los procesos de captura y actualización de datos.
Este consta de entidades que representan personas, lugares, cosas, eventos o conceptos, atributos y relaciones. Además, se caracteriza por el grado de normalización, es decir, el nivel de redundancia implementado.
Al igual que el anterior, consta de atributos y relaciones, pero también de hechos y dimensiones.
Este modelo se ha adoptado ampliamente en aplicaciones de inteligencia empresarial y análisis. De hecho, se le conoce como esquema en estrella, pues se puede visualizar como un hecho rodeado y conectado a múltiples hechos, aunque esto simplifica la estructura del modelo.
La mayoría de este tipo de modelos tienen numerosas tablas de hechos vinculadas a diversas dimensiones, que se denominan “conformes” cuando son compartidas por más de una tabla de hechos.
Este tiene sus raíces en la técnica de modelado de redes, y se utiliza principalmente para modelar relaciones complejas en bases de datos de grafos. Aunque también puede usarse para otras bases de datos NoSQL, como las de tipo clave-valor y las de tipo documento.
En este modelo encontramos dos elementos fundamentales: los nodos, que representan entidades con una identidad única, y aristas, que conectan nodos y definen cómo se relacionan.
El Data Vault es una metodología para estructurar y modelar los datos en un Data Warehouse de manera ágil y escalable.
Uno de los beneficios más destacados de esta técnica es que permite a las organizaciones mantener una visión amplia de sus datos mientras se adaptan fácilmente a los cambios en el negocio y en la tecnología. Per no es lo único.
La arquitectura de Data Vault consta de 3 componentes principales:
Este enfoque proporciona una arquitectura de datos escalable y resistente a los cambios, lo que permite la integración de nuevas fuentes de datos sin tener que rehacer todo el modelado de datos.
A diferencia de otros modelos de datos, el modelado en Data Vault se enfoca en la trazabilidad y la auditabilidad de los datos, permitiendo el registro completo de cambios y la capacidad de rastrear la procedencia de cada dato.
Además, su proceso es iterativo, por lo que se puede ir refinando y mejorando a medida que se agregan nuevos datos y se descubren nuevas necesidades. Por ello, sus ventajas principales residen en su escalabilidad, flexibilidad e historial completo de los datos.
Implementar Data Vault en un Data Warehouse require de un enfoque estratégico y una planificación cuidadosa. De ahí que, antes de empezar, debemos identificar los objetivos de negocio y los requisitos de datos. Es muy importante comprender los objetivos de negocio y los requisitos de datos para asegurarse de que se están cubriendo las necesidades de la organización.
DBT Core y Data Vault 2.0 son cruciales para escalar soluciones de data warehousing por varias razones clave:
En resumen, la combinación de DBT Core y Data Vault 2.0 proporciona un marco sólido para crear soluciones de almacenamiento de datos escalables, flexibles y eficientes, capaces de adaptarse a la evolución de los requisitos empresariales y de garantizar la integridad de los datos y el cumplimiento de las normativas.
Al mantener una plataforma de datos actualizada, te aseguras de que tu organización siga siendo competitiva, segura y capaz de aprovechar los últimos avances tecnológicos para impulsar el éxito empresarial.
El modelado de datos es un desafío empresarial de primer orden y en Plain Concepts tenemos amplia experiencia en combinar metodología Data Vault 2.0 con herramientas como DBT Core en plataformas de datos como Databricks y Snowflake.
En concreto con Snowflake, tenemos soluciones que corren sobre Container Instance orquestado mediante Ariflow, soluciones con necesidades de escalado mucho más exigente con Argo y Kubernetes y, finalmente, estamos explorando las capacidades de Snowpark Containers, que nos permite simplificar la arquitectura final, y que os contaremos próximamente en otro artículo. ¡No esperes más y empieza a sacar el máximo partido a tus datos!
Elena Canorea
Communications Lead