Debate: Es mejor un esquema en estrella o en copo de nieve?
Jesee Orosz , en su blog dedicado a Analysis Services , plantea una interesante cuestión sobre que modelo de datos es mejor desde el punto de vista del análisis multidimensional (en este caso, desde la optica del entorno Microsoft que, puede variar si consideramos, por ejemplo Oracle y su OLAP (antiguo Express Server ).
Jesee defendía que era mejor el Modelo en Copo de nieve y para ello planteaba lo siguiente (muy bien explicado en su blog ):
Se trata de una pequeña prueba (no totalmente cientifica y perfecta, pero que puede abrir el debate). Como resumen indicar que las diferencias de procesamiento en ambos modelos pueden no parecer muy amplias en el ejemplo, pero si consideramos dimensiones con un gran número de valores, la cosa cambia, a favor de su planteamiento: Snowflake.
Como todo en BI, puede tener un reverso, la construcción de las ETL y los mantenimientos puede ser un poco mas complejo con snowflake que con star, mucho ma sencillo, (aunque esto depende en gran medida del uso de herramientas ETL y la habilidad de los técnicos).
Se trata de un debate interesante, pues generalmente para consultas de tipo OLAP, suele considerarse el star schema como mas óptimo.
Personalmente, creo que para hacer una comparativa correcta, hay que tomar muchos mas parámetros en consideración: constraints, tamaño de las dimensiones, complejidad de las joins, nº de atributos, nº de niveles, saltos (diferencias de valores entre niveles), etc...
Si alguno de los lectores tiene experiencia empirica en este tema (dentro de lo dificil que es hacer comparativas), no dudeis en comentarlo.
Mas info:
A Trio of Interesting Snowflakes by Ralph Kimball.
OLAP: How to Index Star/Snowflake Schema Data
Star y Snowflake schemas, ¿Que diferencias hay?
Star Schema
Snowflake Schema