Snowflake Schema in Data Warehouse Model (original) (raw)

Last Updated : 25 Nov, 2025

A Snowflake Schema is a data warehouse modeling technique where dimension tables are normalized into multiple related sub-tables. It is an extension of the Star Schema, designed to handle complex hierarchies and reduce data redundancy. The snowflake effect applies only to dimension tables, not the fact table.

Snowflake-schema

Snowflake Schema

**For example: a Customer Dimension may contain a CityID that links to a separate City Dimension table storing City, State, Country, etc.

Features of the Snowflake Schema

Example of Snowflake Schema

Below is a simplified representation of how a snowflake schema model looks

Snowflake-Schema

Example: Snowflake Schema

These hierarchical connections form the "snowflake" structure.

What is Snowflaking

Snowflaking refers to the process of further normalizing a dimension table into additional sub-tables.

**For example:

Although this reduces redundancy, too much snowflaking is discouraged because:

**Note: Normalization should only be applied where it truly adds value.

Characteristics of Snowflake Schema

Difference Between Snowflake and Star Schema

Feature Star Schema Snowflake Schema
Dimension Structure Denormalized Normalized (multiple levels)
Query Performance Faster (fewer joins) Slower (more joins)
Storage Requirement Higher Lower
Complexity Simple More complex
Use Case Simpler analytics, performance-heavy systems Complex hierarchies, storage optimization

Advantages

Disadvantages