ChatDiagram
data warehouse · retail · analytics

Retail sales snowflake schema

This snowflake schema records retail sales in FactSale and keeps the descriptive dimensions in related tables. Each sale identifies a date, product and store, then records quantity and revenue. Product rolls up through subcategory to category. Store rolls up through city to region. Those normalized chains are the difference between a snowflake schema and a simpler star schema: the fact table remains central, while repeated hierarchy attributes move into their own tables. Use this pattern when reporting needs consistent category and geography rollups across several facts or when those hierarchies change independently. It also gives data stewards a distinct place to maintain the product and location hierarchies used in reports.

Tipo ERDNorma Chen 1976 / Everest 1976 (crow's foot)Mecanismo schematex-erdAtualizado 24/09/2026
Retail Sales Snowflake Schema
Drawing preview
A solicitação

“A retail sales snowflake schema: a FactSale table linked to Date, Product, and Store dimensions; normalize Product through Subcategory to Category and Store through City to Region.”

Depois, tenteAdd a customer dimension to FactSaleAdd a brand table below Product
O que há neste desenho

Entenda as decisões por trás dele.

01Fact grain

Store one row for each sale line.

02Product hierarchy

Keep category data outside the product dimension.

03Geography hierarchy

Normalize stores through city and region.

Use this when product and store hierarchies are shared and need separate maintenance.

Ver todos os modelos de ERD →

Perguntas frequentes

Dúvidas comuns

What makes this a snowflake schema?

Its dimensions are normalized into hierarchy tables, such as Product to Subcategory to Category.

What is the fact table grain?

Each FactSale row represents one recorded sale line with its measures.

Why normalize store geography?

City and region can be maintained once and reused by every store.