Esquema en estrella
Diseño de data warehouse: una tabla de eventos al centro y tablas descriptivas alrededor.
Un esquema en estrella (star schema) es la forma más común de organizar las tablas de un data warehouse para análisis. En el centro hay una tabla de hechos: una fila por cada evento que querés medir, como cada venta, con números como cantidad e importe más claves que apuntan hacia afuera. Alrededor están las tablas de dimensiones, que describen el contexto de esos eventos: fecha, producto, local, cliente. Dibujado en un pizarrón, el centro con sus rayos parece una estrella.
El diseño calza con cómo se hacen las preguntas de negocio: "importe vendido (el hecho) por mes y por región (las dimensiones)". Una consulta une la tabla de hechos con las dimensiones que necesita, filtra y agrupa, y listo. Herramientas de BI como Power BI están pensadas alrededor de esta forma, y es el corazón del modelado dimensional, el método que popularizó Ralph Kimball en los noventa.
A diferencia de una base transaccional normalizada, el esquema en estrella repite datos a propósito en las dimensiones, por ejemplo guardando la categoría y la marca directamente en cada fila de producto, para que los joins sean pocos y cortos. Las tablas de hechos pueden llegar a miles de millones de filas mientras las dimensiones quedan comparativamente chicas. Cuando las dimensiones a su vez se parten en más tablas normalizadas, el resultado se llama esquema en copo de nieve (snowflake schema): ahorra espacio pero suma joins.
Para quedarse
- Tabla de hechos al centro: eventos medibles como ventas, con números y claves.
- Tablas de dimensiones alrededor: quién, qué, dónde, cuándo.
- Repite datos en las dimensiones a propósito para que las consultas sean simples y rápidas.
- Es el diseño estándar detrás de la mayoría de los data warehouses y modelos de BI.
Para seguir leyendo
- Información sobre el esquema de estrella (documentación de Power BI)
- Esquema en estrella en Wikipedia