Otras Páginas

Guía de modelado de datos

Normalización y Denormalización


¿Qué es el Modelado de Datos?

El modelado de datos es el proceso de conceptualizar y visualizar cómo los datos serán capturados, almacenados y utilizados por una organización. Estableciendo relaciones entre entidades y definiendo conexiones entre tablas. El objetivo final del modelado de datos es establecer estándares claros de datos para toda tu organización.

image.png

image.png

Tipos de modelado

Modelo Dimensional

image.png

Tipo de Tabla Descripción
Tablas de hechos (fact) Son tablas centrales que almacenan medidas numéricas del negocio (ventas, cantidades, costos), caracterizadas por su gran volumen de filas y conexiones a múltiples dimensiones mediante claves foráneas.
Incluyen columnas temporales para análisis histórico y requieren un diseño cuidadoso para optimizar el rendimiento de las consultas y asegurar la efectividad del modelo.
Tablas de dimensiones (dim) Son tablas que proporcionan contexto descriptivo a los datos numéricos en las tablas de hechos. Contienen atributos que describen las características de las entidades del negocio, como productos, clientes o ubicaciones.
Estas tablas suelen tener menos filas que las tablas de hechos, pero más columnas, y están conectadas a las tablas de hechos mediante claves primarias (PKs).
Tablas de Relación (rel) Las tablas de relación conectan tablas de hechos con dimensiones en relaciones muchos a muchos. Contienen claves foráneas de ambas tablas y facilitan consultas eficientes al permitir que una dimensión se asocie con múltiples instancias de hechos y viceversa.
Tablas de Stock (stk) Son similar a las tablas de hechos pero registran niveles o cantidades en puntos específicos del tiempo, en vez de eventos transaccionales. Se usan para rastrear inventarios, saldos de cuentas y otras métricas acumulativas.
A diferencia de las tablas de hechos normales, tienen una granularidad temporal más amplia y requieren cálculos especiales para ver cambios entre períodos.

Estrella vs Snowflake

image.png

Estrella

image.png

El esquema en estrella es un modelo dimensional que tiene una tabla de hechos central conectada directamente a tablas de dimensiones circundantes. Su estructura simple ofrece consultas eficientes y fácil comprensión, haciéndolo ideal para análisis de datos.

Características:

Copo de nieve (Snowflake)

image.png

El esquema en copo de nieve normaliza las dimensiones en múltiples tablas relacionadas, dividiendo las tablas de dimensiones en subtablas. Esta estructura reduce la redundancia de datos y permite jerarquías más detalladas, aunque puede complicar las consultas al requerir más joins.

Características:

Comparación: Estrella vs Snowflake

image.png

Característica Esquema Estrella Esquema Copo de Nieve
Estructura Simple, una tabla de hechos central conectada directamente a dimensiones Compleja, dimensiones normalizadas en múltiples niveles
Rendimiento de consultas Más rápido (menos joins) Más lento (más joins necesarios)
Espacio de almacenamiento Mayor uso debido a la redundancia Menor uso debido a la normalización
Mantenimiento Más fácil de mantener y entender Más complejo de mantener
Integridad de datos Menor control sobre la integridad Mayor control sobre la integridad
Flexibilidad Más flexible para agregar dimensiones Menos flexible pero mejor para jerarquías complejas

Técnicas Avanzadas

Dimensiones cambiantes lentamente (SCD)

image.png

Las Dimensiones Cambiantes Lentamente (SCD, por sus siglas en inglés) son una técnica utilizada en el modelado dimensional para manejar cambios graduales en los atributos de las dimensiones a lo largo del tiempo. Esta técnica es crucial para mantener la integridad histórica de los datos y permitir análisis precisos en diferentes puntos temporales. Existen varios tipos de SCD, cada uno con sus propias características y aplicaciones específicas.