Blog

Inicio / Blog / Dominar el modelado dimensional para el éxito del almacenamiento de datos

Tabla de Contenido
El automatizado, Sin código Pila de datos

Aprende cómo Astera Data Stack puede simplificar y agilizar la gestión de datos de su empresa.

Dominar el modelado dimensional para el éxito del almacenamiento de datos

16 de enero de 2024.

Las empresas están cada vez más orientadas hacia almacenes de datos para aprovechar el gran volumen de datos que generan cada día. Almacenamiento de datos es la mejor solución para análisis. Sin embargo, las empresas no siempre tuvieron esta opción. Las primeras bases de datos se diseñaron principalmente para el procesamiento transaccional y carecían de la eficiencia necesaria para la generación de informes analíticos, lo que dio origen al modelado dimensional.

A principios de la década de 1990, Ralph Kimball, una figura destacada en lo que respecta a enfoques de almacenamiento de datos, desarrolló los principios del modelado dimensional. Su libro "The Data Warehouse Toolkit", publicado por primera vez en 1996, describió los conceptos y las mejores prácticas del modelado dimensional. El enfoque de Kimball se centró en modelar datos de una manera que se alinee con los procesos comerciales y los requisitos del usuario, enfatizando la simplicidad y la facilidad de uso.

En este artículo profundizaremos en los conceptos de dimensión. modelado de datos y comprender sus procesos, beneficios y limitaciones.

¿Qué es un modelo de datos dimensionales?

Modelo dimensional de muestra

Un modelo de datos dimensional es una forma de organizar y estructurar datos en una base de datos o almacén de datos para facilitar a las empresas el análisis y la obtención de información a partir de sus datos. Son particularmente útiles cuando se trata de grandes volúmenes de datos y cuando los usuarios necesitan explorar datos desde diferentes ángulos o dimensiones.

Diferentes aplicaciones requieren diferentes técnicas de modelado dimensional. Existen principalmente dos técnicas de modelado: modelos normalizados de entidad-relación (modelos ER) y modelado dimensional.

Los modelos normalizados de entidad-relación (modelos ER), por otro lado, están diseñados para eliminar la redundancia de datos, realizar rápidamente las operaciones de inserción, actualización y eliminación y obtener los datos dentro de una base de datos.

Por el contrario, los modelos dimensionales o modelos de datos dimensionales de Kimball son estructuras desnormalizadas diseñadas para recuperar datos de un almacenamiento de datos. Utilizan tablas de hechos y dimensiones para mantener un registro de datos históricos en almacenes de datos. Además, están optimizados para realizar las Seleccione operación y se utilizan en el marco de diseño básico para construir almacenes de datos altamente optimizados y funcionales.

Elementos involucrados en el modelado dimensional

Tablas de hechos o medidas comerciales

Las tablas de hechos almacenan la información numérica sobre medidas comerciales y claves externas para las tablas dimensionales. Los hechos comerciales pueden ser aditivos, semi-aditivos o no aditivos. La Tabla 1 explica los tres tipos de tablas de hechos.

Tipo de hechos Descripción
Hechos aditivos Medidas comerciales que se pueden agregar en todas las dimensiones
Hechos de semi-aditivos Medidas comerciales que se pueden agregar en algunas dimensiones y no en otras (generalmente dimensiones de fecha y hora)
Hechos no aditivos Medidas comerciales que no se pueden agregar en ninguna dimensión

Tabla 1: Tipos de hechos en una tabla de hechos

Tipos de hechos explicados con un modelo de datos dimensional

Una tienda de ropa mantiene los siguientes datos en las filas de la tabla de hechos para una transacción de venta:

Fecha Ubicación Tipo de Producto Cantidad Precio unitario Cantidad de ventas Inventario Impuesto de venta
6/3/2018 CA Nylon 5 100 500 30 7.75%
6/3/2018 CA Poliéster 7 250 1750 50 7.75%
6/3/2018 PA Nylon 6 100 600 65 6.00%
6/3/2018 PA Poliéster 3 250 750 25 6.00%
6/4/2018 CA Nylon 7 100 700 36 7.75%
6/4/2018 CA Poliéster 6 250 1500 17 7.75%
/ 4 / 2018 PA Nylon 9 100 900 14 6.00%
6/4/2018 PA Poliéster 10 250 2500 20 6.00%

Tabla 2: Tabla transaccional mantenida por una tienda de ropa

Las columnas que contienen información numérica sobre el proceso comercial son nuestros hechos comerciales. En este ejemplo, Cantidad, Precio unitario, Cantidad de ventas, Inventarioy Impuesto de venta son hechos. Y el resto de entidades (Fecha, Tienday Tipo de Producto) son dimensiones.

Cantidad de ventas Se puede agregar en todas las dimensiones. Por lo tanto, es un hecho aditivo. Además, agregando Inventario información a través de la Tienda dimensión proporciona información comercial útil. Sin embargo, dado que esto es solo una instantánea de la cantidad de bienes en un punto determinado, agregarlo a través de la Fecha dimension no brinda ninguna información comercial útil. Desde Inventario es aditivo en algunas dimensiones y no aditivo en otras, es un hecho semi-aditivo. Ahora considera Impuesto de venta. Añadiendo Impuesto de venta en cualquier dimensión planteará problemas durante el procesamiento analítico. Impuesto de venta es, por tanto, un hecho no aditivo.

Tablas de dimensiones

Las tablas de dimensiones almacenan información descriptiva sobre los hechos comerciales para ayudar a comprender y analizar mejor los datos. En el ejemplo presentado en la Tabla 2, Fecha, Ubicacióny Tipo de Producto son entidades de dimensión, que brindan más información sobre los hechos comerciales. La cantidad total de Ventas es una medida importante para registrar, pero sin las dimensiones, una empresa no puede evaluar qué ubicación de tienda o tipo de producto genera más ventas.

Modelado dimensional: tablas de hechos y dimensiones

Figura 1: Esquema en estrella con tablas de hechos y dimensiones

Clave primaria

La clave principal es una columna en las tablas de dimensiones que identifica registros únicos. La clave sustituta será la clave principal para las dimensiones que cambian lentamente.

Clave externa

Las claves foráneas unen dos tablas (generalmente tablas de hechos y dimensiones). La clave principal en una tabla de dimensiones es una clave externa en la tabla de hechos relacionada y se usa para hacer referencia a esa dimensión en particular.

Ejemplo de modelado de datos dimensionales

Consideremos un ejemplo de la vida real de modelado dimensional para un negocio minorista. Imagine una cadena de tiendas que quiere analizar sus datos de ventas para obtener información sobre su desempeño. En este escenario, se podría aplicar un modelo de datos dimensional de la siguiente manera:

  1. Información: Los hechos principales en este escenario serían las transacciones de ventas. Estos hechos incluirían datos como:
  • Los ingresos por ventas
  • Cantidad de productos vendidos
  • Descuentos aplicados
  • Márgenes de beneficio
  1. Dimensiones: Varias dimensiones proporcionarían contexto a los datos de ventas:
  • Dimensión de tiempo: Esta dimensión podría incluir atributos como año, trimestre, mes, día e incluso hora del día. Por ejemplo, podría ayudar a responder preguntas como: "¿Cuáles fueron nuestras ventas en cada trimestre del año pasado?"
  • Dimensión del producto: Podría describir los productos que se venden en las tiendas. Puede incluir atributos como categoría de producto, marca y nombre del producto. Por ejemplo, podría ayudar a responder preguntas como "¿Qué categoría de producto generó más ingresos?"
  • Dimensión de la tienda: Este podría contener información sobre las ubicaciones de las tiendas individuales, como el nombre de la tienda, la ciudad, el estado y el administrador de la tienda. Podría responder preguntas como: "¿Qué tienda tuvo las mayores ventas el mes pasado?"
  • Dimensión del cliente: podría proporcionar información sobre la demografía de los clientes, como la edad, el sexo y la ubicación. Podría ayudar a responder preguntas como: "¿Cuál es el monto promedio de compra por segmento de clientes?"
  1. Relaciones entre hechos y dimensiones: La tabla de hechos, que contiene las transacciones de ventas, tendría claves externas que la vincularían con las tablas de dimensiones. Por ejemplo, cada registro de transacción de ventas puede tener claves externas que apunten a la hora, producto, tienda y cliente correspondientes en sus respectivas tablas de dimensiones.
  2. Jerarquías: Las jerarquías dentro de las dimensiones ayudarían a los usuarios a navegar y analizar datos en diferentes niveles de granularidad. Por ejemplo, la dimensión de tiempo podría tener una jerarquía que vaya de año a trimestre, de mes a día.
  3. Medidas: Las medidas se calcularían a partir de los datos de ventas para proporcionar información valiosa. Por ejemplo:
  • Monto total de ventas
  • Porcentaje de descuento promedio
  • Porcentaje de margen de beneficio

Con este modelo de datos dimensional implementado, el negocio minorista podría usarlo para responder una amplia gama de preguntas, como por ejemplo:

  • "¿Cuáles fueron nuestras ventas totales para cada categoría de producto en el último trimestre?"
  • "¿Qué tienda tuvo el mayor crecimiento de ventas en comparación con el mismo período del año pasado?"
  • "¿Cuál es el margen de beneficio promedio de los productos en cada categoría de producto?"

Diseño de un modelo de datos dimensionales

Para comprender el proceso de diseñar modelos dimensionales, consideremos el ejemplo de una línea de ropa que vende dos tipos de rompevientos: nailon y poliéster en sus dos tiendas en California y Pensilvania. Los datos de muestra para el ejemplo se muestran en la Tabla 2.

Paso 1: identificar los procesos comerciales

Antes de modelar los datos, debe encontrar los tipos de modelado dimensional adecuados para su modelo de datos. El proceso de modelado dimensional (o cualquier modelado de datos) comienza con la identificación del proceso comercial que desea rastrear. En este caso, queremos realizar un seguimiento de las ventas de los dos tipos de cazadoras.

Paso 2: Identifique hechos y dimensiones en su modelo de datos dimensionales

La información en un modelo dimensional se clasifica en dos tipos de tablas: Información y Dimensiones. El siguiente paso es identificar los hechos comerciales que desea medir y sus dimensiones asociadas. En nuestro ejemplo, la venta de rompevientos es el hecho que queremos medir. La fecha, la ubicación de la tienda (California y Pensilvania) y el tipo de producto (cortavientos de nailon y cortavientos de poliéster) son las dimensiones que nos brindan más información sobre el proceso de ventas.

Paso 3: identificar los atributos de las dimensiones

Una vez que haya identificado las dimensiones y los hechos para su proceso comercial, el siguiente paso es identificar los atributos y crear una tabla dimensional separada para cada dimensión. Hay diferentes tipos de tablas dimensionales para cada tipo de datos. Cada registro en la tabla de dimensiones debe tener una clave única. Esta clave se utilizará para identificar los registros en la tabla de dimensiones y como clave externa en la tabla de hechos para hacer referencia a la dimensión particular y unirla con la tabla de hechos. Las tablas 3-5 muestran los diferentes tipos de dimensiones en un almacén de datos en nuestro ejemplo de línea de ropa.

Dimensión de fecha
Clave de fecha Fecha Día
10201 6/3/2018 Domingo
10202 6/4/2018 Lunes

Tabla 3: Tabla de dimensiones para la fecha

Dimensión de la tienda
Almacenar clave Nombre de la tienda Ciudad Estado
151 AngAngie'sparel Los Ángeles California.
152 AngAngie'sparel Pittsburgh Pennsylvania

Tabla 4: Tabla de dimensiones de la tienda

Dimensión del producto
Código de producto Colecciones Material Color
131620 Cortavientos - Colección Otoño Nylon Naranja
131571 Cortavientos - Colección Otoño Poliéster Negro

Tabla 5: Tabla de dimensiones del producto

Paso 4: definir la granularidad de los hechos comerciales

La granularidad se refiere al nivel de información que se almacena en cualquier tabla. Por ejemplo, en nuestro ejemplo, el monto de las ventas se registra diariamente; por tanto, la granularidad, en este caso, es diaria. Las tablas de hechos en un modelo dimensional deben ser consistentes con la granularidad predefinida.

Paso 5: almacenamiento de información histórica (dimensiones que cambian lentamente)

Una característica importante de los modelos dimensionales es que los atributos dimensionales se pueden modificar fácilmente sin cambiar la información completa de la transacción. Por ejemplo, la línea de ropa decide continuar el cortavientos de nailon de la colección de otoño en la colección de primavera y actualiza el nombre en el Colecciones atributo. Hacer la actualización es fácil en la tabla dimensional, pero perderemos nuestros datos anteriores con la actualización. Si el objetivo de su modelado de datos y almacenamiento de datos es mantener y almacenar el historial, esto podría ser un problema. Las dimensiones que cambian lentamente con el tiempo se denominan dimensiones que cambian lentamente. Además, la tabla de dimensiones de tiempo en un almacén de datos se genera automáticamente y captura el momento en que ocurren las diferentes transacciones. Puede mantener y almacenar datos históricos mediante el seguimiento de dimensiones que cambian lentamente.

Obtenga más información sobre el diseño de un modelado dimensional automatizado con nuestra guía paso a paso

¿Qué es el modelo de datos multidimensional en el almacén de datos?

Un modelo de datos multidimensional es una implementación específica de modelado de datos dimensionales diseñado para necesidades analíticas y de informes más avanzadas. Amplía los conceptos de modelado de datos dimensionales regulares para proporcionar capacidades adicionales. Aquí hay algunos factores importantes a tener en cuenta sobre el modelo de datos dimensionales:

  • Agrega complejidad al introducir el concepto de cubos de datos. Los cubos de datos almacenan datos agregados previamente, lo que puede conducir a una estructura más compleja pero más eficiente para el análisis multidimensional.
  • Sigue siendo fácil de usar, pero ofrece aún más capacidades para que los usuarios interactúen con datos utilizando herramientas OLAP. Los usuarios pueden pivotar, profundizar y analizar datos de múltiples dimensiones simultáneamente.
  • A menudo implica tablas de dimensiones desnormalizadas y datos preagregados en cubos de datos. Si bien esto puede aumentar las necesidades de almacenamiento de los datos agregados, puede reducir la redundancia en las tablas de dimensiones, lo que lleva a un almacenamiento más eficiente.
  • Es ideal para análisis avanzados, informes complejos y escenarios donde el rendimiento es crítico, como almacenes de datos a gran escala con datos históricos extensos.

Beneficios del modelado dimensional

El modelado dimensional sigue siendo la técnica de modelado de datos más utilizada para diseñar almacenes de datos empresariales debido a los beneficios que genera. Éstas incluyen:

Optimizado para el rendimiento de consultas: Los modelos dimensionales están diseñados específicamente para consultas e informes, lo que da como resultado un rendimiento de consultas más rápido, especialmente para consultas analíticas complejas.

Recuperación de datos más rápida: El modelado de datos dimensionales fusiona las tablas en el propio modelo, lo que permite a los usuarios recuperar datos más rápido de diferentes fuentes de datos mediante la ejecución de consultas de combinación. El esquema desnormalizado de un almacén de datos de modelo dimensional, en lugar del normalizado en el esquema de copo de nieve, está optimizado para ejecutar consultas ad hoc. Como resultado, complementa en gran medida los objetivos de inteligencia comercial (BI) de una organización.

Flflexible para cambiar: Un marco de modelado dimensional hace que el proceso de almacenamiento de datos sea extensible. El diseño se puede modificar fácilmente para incorporar nuevos requisitos comerciales o ajustar el repositorio central. Se pueden agregar nuevas entidades al modelo o se puede cambiar el diseño de las existentes para reflejar los procesos comerciales modificados.

Análisis multidimensional: Los modelos dimensionales admiten análisis multidimensionales, por lo que los usuarios pueden explorar datos de varias dimensiones y jerarquías simultáneamente.

Redundancia de datos reducida: Los modelos dimensionales a menudo implican desnormalización, lo que reduce la redundancia de datos y, en consecuencia, mejora el rendimiento de las consultas en comparación con los modelos altamente normalizados.

Limitaciones del modelado de dimensiones

Si bien el modelado dimensional es una técnica poderosa para las necesidades analíticas y de generación de informes, también tiene algunas limitaciones y hay escenarios en los que puede no ser el enfoque más adecuado. Por lo tanto, es esencial evaluar si se alinea con las características y requisitos de sus datos y casos de uso. A continuación se presentan algunas limitaciones del modelado dimensional y situaciones en las que podría considerar técnicas de modelado alternativas:

  1. Relaciones complejas: El modelado dimensional supone que las relaciones entre dimensiones y hechos son relativamente simples. Si sus datos implican relaciones muy complejas que no se pueden representar fácilmente en un esquema de estrella o copo de nieve, es posible que el modelado dimensional no sea la mejor opción.
  2. Cambios frecuentes de datos: Los modelos dimensionales están diseñados para análisis históricos y es posible que no manejen bien datos que cambian con frecuencia o que requieren actualizaciones en tiempo real. En tales casos, un modelo transaccional o normalizado puede ser más apropiado.
  3. Datos dispersos: Cuando se trata de datos en los que muchas combinaciones de dimensiones no tienen hechos asociados (datos dispersos), los modelos dimensionales pueden provocar un almacenamiento y un rendimiento de las consultas ineficientes.
  4. Datos grandes y no estructurados: Si sus datos incluyen grandes cantidades de datos no estructurados o semiestructurados (p. ej., documentos de texto, feeds de redes sociales), el modelado dimensional por sí solo puede no ser suficiente. Es posible que necesite incorporar técnicas como bases de datos NoSQL o bases de datos orientadas a documentos.

Automatización: un cambio de juego para el modelado dimensional

El diseño de modelos dimensionales es un paso esencial en la construcción del marco de un almacén de datos empresarial. El proceso se puede simplificar con la ayuda de una robusta herramienta de automatización de almacenamiento de datos como Astera Generador de almacenamiento de datos.

Con Astera Constructor DW, puede crear rápidamente modelos dimensionales en un entorno de desarrollo integrado sin código visual. Las entidades se pueden desnormalizar con un simple arrastrar y soltar y fusiones. Los roles de entidad (hechos y dimensiones) se pueden asignar de forma masiva, lo que le ahorra un tiempo valioso cuando trabaja con cientos de entidades. Además, el producto le permite administrar las dimensiones que cambian lentamente con soporte incorporado para los tipos de SCD 1, 2, 3 y 6.

Astera DW Builder es una plataforma de automatización de almacenamiento de datos de extremo a extremo con capacidades integradas de modelado de datos dimensionales, soporte para una amplia gama de bases de datos y aplicaciones de CRM, funciones de mapeo y carga de datos automatizados, e integración nativa con plataformas de inteligencia comercial como Tableau y Power BI.

See Astera DW BuiBuilder'smo o regístrate para un prueba gratuita. para experimentar de primera mano el poder de la automatización del almacén de datos.

Reduzca el tiempo de desarrollo del almacén de datos hasta en un 80 %
Nueva llamada a la acción
También te puede interesar
Data Vault 101: una guía completa para el almacenamiento de datos escalable
Information Marts: habilitando una BI ágil, escalable y precisa
Considerando Astera ¿Para sus necesidades de gestión de datos?

Establezca conectividad sin códigos con sus aplicaciones empresariales, bases de datos y aplicaciones en la nube para integrar todos sus datos.

¡Conectémonos ahora!
conectemos