Tipos de modelos en DW

  Tal vez antes de entrar en faena, me gustaría comentar que en definitiva hablamos de lo mismo, pues de un modelo en estrella llego a un copo de nieve y viceversa, por lo tanto, no merece la pena pegarse en qué es mejor (guerrilla promovida por los fabricantes, a mediados de los 90, y sus intereses particulares), pues finalmente son más de lo mismo.

Aquellos que han sido alumnos míos durante mis 10 años siendo profesor en un Máster de prestigio sobre "Sistemas de Información e Investigación de Mercados", bien lo saben y ha quedado demostrado. Sin embargo existen importantes limitaciones e incluso costes ocultos, como los asociados a los mantenimientos, a las mejoras, a la dificultad en los nuevos procesos, etc.

Con independencia de un tipo de modelo u otro, es conveniente quedarnos con algunas ideas que nos van a permitir buscar la mejor solución y evitar algunas trampas en el diseño de un DW. Con el ánimo de ser lo más claro posible evitaré usar tecnicismos. Entre las muchas coletillas adquiridas en estos años y relacionadas con el DW os comentaría:

  • "Divide y vencerás": Se puede empezar a diseñar un DW sin conocer al 100% las necesidades de toda la organización, desglosa el gran proyecto por dominios de información y "ataca" uno a uno, sin perder la visión del gran sistema. Recuerda: "Piensa en grande, haz en pequeño". También aplicable al "divide y vencerás" a la forma de diseñar las dimensiones. Considerando la forma de acceso del usuario final y la "navegación" deseada, considera que cuanto más "normalizado" se diseñe tendrás más flexibilidad y un mantenimiento más sencillo que será más comprensible por los DBA más tradicionales.
     

  • Diseño DWH - Cabeza de ciervo"Diseñar cabezas de ciervo": Existen trampas en un DW como son las "trampas de abanico" y "trampas de abismo", las cuales exclusivamente ocurren bajo un modelo mal diseñado. Un modelo simple, es como la cabeza de un ciervo. La cabeza es la tabla que contiene los valores numéricos a analizar, las métricas o indicadores, la tabla Fact. Mientras los cuernos son sus dimensiones. Las dimensiones jamás se tocan o cruzan entre sí. El único punto en común que tienen son la cabeza del ciervo. Los cuernos solamente tienen un punto de contacto con la cabeza... con este simple y claro ejemplo, nunca tendréis problemas.
     

  • "Si metes basura, sacas basura": Expresión asociada a la importancia de los procesos ETL (Extract, Transform and Load) para la carga de los datos, a sus controles de calidad del dato, etc. Todos los esfuerzos, todos los diseños y cualquier otra actividad no tendrá ningún valor, sin la credibilidad y calidad de los datos.
     

  • "El exceso de análisis conduce a la parálisis": Es más que discutible como se abordan algunos proyectos de DW, especialmente los grandes (corporativos). Como ya hemos comentado se debe fragmentar por dominios e irlo abordando o desarrollando por iteraciones, en caso contrario estamos muertos, no ofreceremos resultados nunca y tendremos otro bonito fracaso.