Las tablas y entidades de hechos agregan medidas o los datos numéricos de un negocio. Para medir los datos de una tabla o entidad de hechos, todas las medidas de una tabla o entidad de hechos debe corresponder al mismo grano.
Para obtener los datos más útiles de una tabla o entidad de hechos, debe utilizar medidas que sean numéricas y aditivas. La utilización de estas medidas garantiza que los datos se puedan recuperar y agregar de manera que el negocio pueda hacer uso de la riqueza de datos de negocio de la base de datos.
Las tablas y entidades de hechos también contienen claves foráneas a las tablas de dimensiones. Estas claves foráneas relacionan cada fila de datos de la tabla de hechos con sus correspondientes dimensiones y niveles.
Las tablas y entidades de hechos utilizan claves primarias que son claves compuestas. Una clave compuesta consta de un subconjunto de otras claves. Si una tabla o entidad de un modelo dimensional utiliza una clave compuesta, esa tabla será una tabla o entidad de hechos. El uso de claves compuestas hace que la tabla o entidad tenga una relación de muchos a uno con otras tablas y entidades del modelo dimensional.
| Característica | Transacción | Periódico | Acumulativo |
|---|---|---|---|
| Grano | Una fila por transacción | Una fila por período de tiempo | Una fila para el tiempo de vida total de un suceso |
| Dimensión | Dimensión de fecha en el nivel más bajo de granularidad | Dimensión de fecha en la granularidad de fin de período | Varias dimensiones de fecha |
| Número de dimensiones | Más que el tipo de hechos periódicos | Menos que el tipo de hechos de transacciones | Número más alto de dimensiones cuando se compara con otros tipos de tablas de hechos |
| Dimensiones conformadas | Utiliza dimensiones conformadas compartidas | Utiliza dimensiones conformadas compartidas | Utiliza dimensiones conformadas compartidas |
| Medidas | Se relaciona con actividades de transacciones | Se relaciona con actividades periódicas | Se relaciona con actividades que tienen un tiempo de vida definitivo |
| Tamaño de base de datos | Es el mayor tamaño. En el nivel de grano más detallado, tiende a crecer muy rápido. | Más pequeña que la tabla de hechos de transacciones, ya que el grano de la dimensión de fecha y hora es significativamente mayor. | La de tamaño más pequeño cuando se compara con las tablas de hechos periódicos y de transacciones. |
| Rendimiento | Funciona bien y se puede mejorar eligiendo un grano por encima del más detallado | Funciona mejor que otros tipos de tablas de hechos, ya que los datos se almacenan en un grano menos detallado | Funciona bien |
| Insertar | Sí | Sí | Sí |
| Actualizar | No | No | Sí, cuando se alcanza un objetivo en una actividad determinada. |
| Suprimir | No | No | No |
| Crecimiento de tabla de hechos | Muy rápido | Lento en comparación con una tabla de hechos basada en transacciones | Lento en comparación con la tabla de hechos periódicos y de transacciones |
| Necesidad de tablas de agregación | Alta, principalmente porque los datos se almacenan a un nivel muy detallado | Baja o muy baja, principalmente porque los datos ya están almacenados en un nivel alto de agregación | Media, porque los datos se almacenan principalmente en el nivel diario. Sin embargo, los datos de las tablas de hechos acumulativos se encuentran en un nivel inferior al nivel de transacción. |
| GOSALESDW.SLS_SALES_FACT |
|---|
| ORDER_DAY_KEY |
| ORGANIZATION_KEY |
| EMPLOYEE_KEY |
| RETAILER_KEY |
| RETAILER_SITE_KEY |
| PRODUCT_KEY |
| PROMOTION_KEY |
| ORDER_METHOD_KEY |
| SALES_ORDER_KEY |
| SHIP_DAY_KEY |
| CLOSE_DAY_KEY |
| QUANTITY |
| UNIT_COST |
| UNIT_PRICE |
| UNIT_SALE_PRICE |
| GROSS_MARGIN |
| SALE_TOTAL |
| GROSS_PROFIT |