snowflake schema
Data & Storage

Meaning

A snowflake schema is a multidimensional data model where dimension tables are normalized into multiple related tables, resembling a snowflake shape. It is used to reduce data redundancy and improve query performance in data warehouses.

Primary Function

Data modeling

Communicative Purpose

Organizes data into fact and normalized dimension tables to minimize storage and maintain integrity.

Pattern

fact_table -> dimension_table -> subdimension_table

Core Structure

fact_table -> dimension_table

Função primária

Data modeling

Propósito comunicativo

Organizes data into fact and normalized dimension tables to minimize storage and maintain integrity.

Situações de gatilho

Designing a data warehouse for complex hierarchical attributes; needing to store product categories with multiple levels; optimizing storage for slowly changing dimensions.

Contextos

Data warehousing, OLAP systems, star schema extensions, BI tools like Snowflake, Redshift, BigQuery.

Padrão

fact_table -> dimension_table -> subdimension_table

Estrutura central

fact_table -> dimension_table

Slots de substituição

fact_table: identifier, dimension_table: identifier, subdimension_table: identifier

Colocados típicos

  • star schema
  • ETL processes
  • OLAP cubes
  • surrogate keys

Substituições comuns

  • star schema (denormalized dimensions)
  • galaxy schema (multiple fact tables)

Erros comuns

Over-normalizing leading to excessive joins; confusing snowflake with star schema; forgetting to maintain referential integrity.

Similar / contraste

star schema: dimensions are denormalized, fewer joins; galaxy schema: multiple fact tables sharing dimensions.

Interferências

Coming from relational DB normalization: may over-apply normalization forgetting query performance implications.

Família do chunk

  • star schema
  • galaxy schema
  • fact constellation

Nuance

While snowflake reduces redundancy, it can increase query complexity due to additional joins; suitable when dimension hierarchies are deep and attributes are sparse.

Efeito pragmático

Reduces storage footprint and maintains data integrity at the cost of query performance.

Dica de memória

Think of a snowflake: central fact table with branching dimension arms.

Nota

Enforce foreign-key constraints between the fact table and each dimension level to preserve referential integrity; otherwise orphaned rows can appear after dimension updates.

Upgrade path

Consider using materialized views or aggregate tables to mitigate join overhead.

Frequência: HighFormulaicidade: FlexibleTipo de construção: normalized dimensional modelPrioridade de aquisição: Recognition firstPrioridade de output: InputTag de espaçamento: Medium-term

Log in to save chunks.