Las tablas de datos son la base del almacén de datos. Contienen las mediciones fundamentales de la empresa y son el objetivo final de la mayoría de las consultas de data warehouse. No tiene sentido ho tablas de datos en el asta de la bandera a menos que se hayan elegido para reflejar prioridades empresariales urgentes, hayan sido cuidadosamente aseguradas de calidad y estén rodeadas de dimensiones que proporcionen una gran cantidad de puntos de entrada para restringir y agrupar. Ahora que hemos allanado el camino para las tablas de datos, veamos cómo construirlas y usarlas.
Manténgase fiel al grano
El primer y más importante paso de diseño es declarar el grano de la tabla de hechos. El grano es la definición de negocio de lo que representa un registro de tabla de hechos únicos. La declaración de grano no es una lista de claves externas dimensionales que implementan una clave primaria para la tabla de hechos. Más bien, el grano es la descripción del evento de medición en el mundo físico que da lugar a una medición. Cuando el escáner de la tienda de comestibles mide la cantidad y el precio cobrado de un producto que se compra, el grano es literalmente el pitido del escáner. ¡Esa es una gran definición de grano!
Inmediatamente después de declarar el grano, es posible enumerar las claves externas dimensionales que existen en ese grano. Al declarar primero el grano, la discusión de las claves foráneas permanece fundamentada y precisa.
El propósito real de la tabla de hechos es ser el repositorio de los hechos numéricos que se observan durante el evento de medición. Es de vital importancia que estos hechos sean fieles al grano. El «pitido» de la tienda de comestibles mide la cantidad y el precio extendido del producto que se está escaneando. Nunca incluimos otras mediciones numéricas que violen el grano, como las ventas de categoría general o las ventas de este producto el mes pasado. A pesar de que estas otras mediciones podrían ser muy útiles para cálculos seleccionados, no se pueden combinar entre registros de hechos e introducen asimetrías extrañas en el diseño de aplicaciones. Permitimos que nuestras herramientas de inteligencia empresarial (BI) calculen estos valores fuera de tema en el momento de la consulta en lugar de codificarlos en nuestras tablas de datos.
Siempre nos esforzamos por hacer que los hechos sean aditivos en todas las dimensiones y sean exactamente coherentes con el grano. Tenga en cuenta que no almacenamos el precio del producto que se está escaneando porque el precio no es agregado. Más bien, almacenamos el precio extendido, que se puede agregar libremente a través de productos, tiendas, tiempos y todas las demás dimensiones.
Acumulación a partir del Grano más bajo posible
El almacén de datos siempre debe construirse sobre tablas de datos expresadas en el grano más bajo posible. En el ejemplo, el pitido de la caja registradora de la tienda de comestibles es el grano más bajo posible porque no se puede dividir más. Las tablas de datos en el grano más bajo son las más expresivas porque tienen el conjunto más completo de dimensiones posibles para ese proceso de negocio. La tabla de datos beep grain podría tener Fecha, Tienda, Producto, Cajero, Gerente, Cliente, Promoción, Competencia, Canasta e incluso Clima si todas estas fuentes de datos se pueden reunir cuando se crean los registros de datos. Las tablas agregadas de granos más altos, como las ventas por categoría por distrito, no pueden soportar todas estas dimensiones y, por lo tanto, son mucho menos expresivas. Es un error fundamental publicar solo tablas agregadas a los usuarios finales sin hacer que las tablas de datos de grano más bajas sean fácilmente accesibles al perforar hacia abajo. La mayoría de las nociones falsas que las tablas dimensionales presuponen la cuestión de negocios provienen de cometer este error fundamental.
Tres tipos de tablas de hechos
Si se mantiene fiel al grano, todas las tablas de hechos se pueden agrupar en solo tres tipos: grano de transacción, grano de instantánea periódica y grano de instantánea acumulada (los tres tipos se muestran en la Figura 1). En la Figura 1, las dimensiones se designan por FK (clave foránea) y los hechos numéricos están en cursiva.
El grano de transacción corresponde a una medición tomada en un solo instante. El pitido de la tienda de comestibles es un grano de transacción. Los hechos medidos son válidos solo para ese instante y para ese evento. El siguiente evento de medición podría ocurrir un milisegundo más tarde, el próximo mes o nunca. Por lo tanto, las tablas de hechos de grano de transacción son impredeciblemente escasas o densas. No tenemos ninguna garantía de que se representen todas las posibles claves foráneas. Las tablas de datos de grano de transacciones pueden ser enormes, y las más grandes contienen muchos miles de millones de registros.
El grano de instantánea periódica corresponde a un período de tiempo predefinido, a menudo un período de informes financieros. La figura 1 ilustra una instantánea periódica mensual de la cuenta. Los hechos medidos resumen la actividad durante o al final del lapso de tiempo. El grano de instantáneas periódicas tiene una poderosa garantía de que todas las entidades informantes (como la cuenta bancaria de la Figura 1) aparecerán en cada instantánea, incluso si no hay actividad. La instantánea periódica es previsiblemente densa, y las aplicaciones pueden confiar en que las combinaciones de teclas siempre estén presentes. Las tablas de datos de instantáneas periódicas también pueden aumentar de tamaño. Un banco con 20 millones de cuentas y una historia de 10 años tendría 2.4 mil millones de registros en la instantánea periódica de la cuenta mensual!
La tabla de hechos de instantáneas acumuladas corresponde a un proceso predecible que tiene un principio y un final bien definidos. El procesamiento de pedidos, el procesamiento de reclamaciones, la resolución de llamadas de servicio y las admisiones a la universidad son candidatos típicos. El grano de una instantánea acumulada para el procesamiento de pedidos, por ejemplo, suele ser el elemento de línea del pedido. Observe en la Figura 1 que hay varias fechas que representan el escenario estándar que sufre una orden. Los registros de instantáneas acumulados se revisan y sobrescriben a medida que el proceso avanza a través de sus pasos de principio a fin. Las tablas de hechos de instantáneas acumuladas generalmente son mucho más pequeñas que los otros dos tipos debido a esta estrategia de sobrescritura.