Passa al contenuto principale

Che cos'è lo Snowflake Schema?

Progettazione del magazzino che estende lo schema a stella normalizzando le tabelle delle dimensioni in più tabelle correlate, riducendo la ridondanza e aggiungendo complessità alle query

4 Personas Agnostic 1a

Summary

  • Normalizza le tabelle dimensionali in strutture gerarchiche (ad esempio, da prodotto a categoria a reparto), creando più tabelle correlate connesse tramite chiavi esterne, in contrasto con le dimensioni denormalizzate dello schema a stella.
  • Riduce lo spazio di archiviazione e aggiorna le anomalie tramite la normalizzazione, eliminando la ridondanza dei dati, vantaggioso per tabelle dimensionali di grandi dimensioni con molti livelli gerarchici e attributi che richiedono aggiornamenti frequenti.
  • Aumenta la complessità delle query, richiedendo più join per ricostruire il contesto dimensionale completo, con un potenziale impatto sulle prestazioni delle query nonostante il risparmio di spazio di archiviazione, rendendolo meno adatto ai carichi di lavoro analitici ad alta intensità di lettura rispetto allo schema a stella.

Che cos'è uno schema a fiocco di neve?

Lo schema a fiocco di neve (snowflake) è un modello di dati multidimensionale che rappresenta un'estensione dello schema a stella, dove le tabelle di dimensioni sono ramificate con altre tabelle (sottodimensioni). Gli schemi a fiocco di neve vengono solitamente utilizzati per business intelligence e per generare report in data warehouse OLAP, data mart e database relazionali.

In uno schema snowflake, gli ingegneri suddividono le singole tabelle di dimensioni in sottodimensioni logiche. Il modello di dati diventa così più complesso, ma facilita il lavoro degli analisti, soprattutto per determinate tipologie di dati.

Viene chiamato schema a fiocco di neve perché il suo diagramma entità-relazione assomiglia a un fiocco di neve, come raffigurato sotto.

Confronto fra schemi a fiocco di neve e schemi a stella

Come gli schemi a stella, anche gli schemi a fiocco di neve hanno una tabella dei fatti al centro, che referenzia più tabelle di dimensioni attraverso chiavi esterne. La differenza principale è che sono più normalizzati degli schemi a stella.

Gli schemi a fiocco di neve offrono maggiore efficienza di storage, grazie alla loro rigorosa conformità a standard di normalizzazione elevati, ma le prestazioni delle query non sono allo stesso livello dei modelli di dati più denormalizzati. I modelli di dati denormalizzati, come gli schemi a stella, presentano infatti una maggiore ridondanza dei dati (duplicazione), che aumenta la velocità delle query a costo della duplicazione dei dati.

LEADER PER LA 5ª VOLTA

Gartner®: Databricks leader dei database cloud

Vantaggi degli schemi a fiocco di neve

  • Rapidità di recupero dei dati
  • Garanzia di qualità dei dati
  • Modello di dati semplice e comune per data warehouse

Svantaggi degli schemi a fiocco di neve

  • Costi elevati nella fase iniziale
  • Modello di dati rigido
  • Costi di manutenzione elevati

Risorse

Non perdere mai un post di Databricks

Iscriviti al nostro blog e ricevi gli ultimi post direttamente nella tua casella di posta elettronica.