Micro‑partition e clustering dei dati

Architettura di Snowflake

Emily Melhuish

Technical Curriculum Developer, Snowflake

Query su una tabella grande

Esempio: Subscription

USER_ID REGISTRATION_DATE USER_NAME
912930 2026-04-01 JANEDOE
912931 2026-04-06 JOHNDOE
912932 2026-04-12 JIMMYDOE
... ... ...

Quanti dati deve leggere la query da questa tabella?

Architettura di Snowflake

Micro‑partition

Esempio di micro‑partition e archiviazione dei dati con colonne raggruppate

  • Nelle micro‑partition le colonne sono archiviate e compresse separatamente
  • Snowflake legge solo le colonne richieste dalla query
Architettura di Snowflake

Metadati

Esempio di micro‑partition con metadati

  • Snowflake salva metadati per ogni micro‑partition
  • Archiviati nel livello cloud services
Architettura di Snowflake

Partition pruning

Esempio di pruning

Architettura di Snowflake

Partition pruning

Esempio di pruning con opzione selezionata

  • Snowflake salta le micro‑partition che non possono contenere i dati richiesti dalla query.
  • Legge solo gli slice rilevanti = partition pruning
Architettura di Snowflake

Clustering

Esempio di micro‑partition e archiviazione dei dati con colonne raggruppate

  • Le query basate su data spesso fanno buon pruning (es. serie storiche)

  • Il pruning non aiuta per valori dispersi tra le partition (es. regione)

  • Clustering key: Snowflake organizza le micro‑partition attorno a quella colonna

Architettura di Snowflake

Clustering key: quando usarla

clustering_key_v5.png

Architettura di Snowflake

Clustering key: cardinalità e costi

clustering_key_v5.png

Architettura di Snowflake

Ayo berlatih!

Architettura di Snowflake

Preparing Video For Download...