En el anterior artículo de esta serie vimos los 2 primeros errores de Kimball así como una breve definición de los términos básicos que conforman la raíz de esta serie.
En esta parte veremos 4 errores más relacionados con el diseño de un data Warehouse y seguiremos perfilando el corazón de nuestro sistema BI.
“Error 10: Dividir las jerarquías y los niveles de las jerarquías en múltiples dimensiones.”
Si se crean dimensiones extras en para niveles de jerarquías, se complican las sentencias que se deberán realizar para el consumo de los datos del data warehouse. Además, al ser una dimensión innecesaria, se aumenta considerablemente el espacio ocupado (ya que se generarían millones de registros con el campo de la dimensión.
Dada la siguiente jerarquía para la dimensión “punto de venta”:
País > Región > Ciudad > Tienda
En el modelado normalizado obtendríamos:
Está claro que la estructura es más visual, pero a la hora de consultar la tabla de hechos de ventas por país, deberíamos generar una consulta que uniese todas esas tablas y se podría caer en la tentación de mover la localización a la tabla de hechos de la siguiente forma:
Lo cual generaría un gran volumen de datos innecesarios en la tabla de hechos.
Por lo tanto, lo recomendable sería añadir las claves primarias de cada una de las jerarquías de la dimensión punto de venta a la tabla de tiendas, quedando:
Así se mantendría un diseño en estrella que definiría la dimensión en una sola tabla.
“Error 9: No afrontar el tratamiento de las dimensiones lentamente cambiantes.”
Como ya he comentado, el hecho de no contemplar esta posibilidad supondría una gran pérdida en la explotación de los datos del data warehouse.
Dada la siguiente tabla de dimensión:
Supongamos que, con el tiempo, la empresa modifica su modelo de negocio a uno más especializado, y modifica el maestro de productos. Si no se contempló este hecho a la hora del diseño, en el momento que cambien esos datos, todo el histórico perderá su valor ya que los productos que fueron registrados en la tabla de hechos de ventas no se corresponderán con los actuales.
“Error 8: Crear “smart keys” para relacionar una tabla de dimensión con una tabla de hechos.”
Es posible que en el operacional, el uso de claves definidas por el usuario sea mucho más útil de cara a los procesos de negocio (reglas mnemotécnicas).
Pero su uso en un data warehouse es incorrecto ya que, en el momento en que se produzca un cambio en esa clave o una repetición de la misma cuando habíamos supuesto que era única se producirán incongruencias en los datos. Además, un valor numérico ocupa menos espacio en disco que una cadena.
Por ejemplo, imaginemos que la clave del maestro de categorías son las 3 primeras letras de la descripción de la categoría y que se añade la categoría musical. Ya existe la categoría Music con su clave Mus, por lo que no se nos permitiría el volcado de los datos o obtendríamos resultados incorrectos.
“Error 7: Añadir dimensiones en una tabla de hechos antes de definir su granularidad.”
Las tablas de hechos deben tener los datos fundamentales para su aprovechamiento, ni más ni menos. Si, a la hora de realizar el diseño, no hemos especificado granularidades de las dimensiones, podríamos encontrarnos con datos inconexos y tener que modificar el diseño para añadir otra medida a la tabla de hechos lo que impactaría directamente en el tamaño de la base de datos.
Por ejemplo, supongamos que tenemos la siguiente tabla de hechos para analizar las ventas de productos:
A la hora de explotar esos datos nos daríamos cuenta de que deberíamos haber escogido una mayor granularidad para el pedido y realizar la tabla de hechos sobre línea de pedido.
Este error, podría suponer el tener que añadir una nueva clave a la tabla que hiciese referencia al producto para identificar cuantas unidades de cada producto se vendieron o bien, modificar el diseño para sustituir el identificador del pedido por el identificador de línea.
Post publicado por: Juan josé Hernández
SEAS es el centro de formación online del Grupo San Valero, especializado en el ámbito técnico, industrial y de empresa. Visita www.seas.es para consultar nuestra oferta formativa de cursos y másteres. Formación profesional para el empleo de calidad y accesible para todos.