Passa al contenuto principale

Che cos'è lo schema a stella?

Progettazione di un magazzino dimensionale con una tabella dei fatti centrale collegata alle tabelle dimensionali tramite chiavi esterne, ottimizzata per query analitiche con meno join

4 Personas Analytics AIBI 2a

Summary

  • Le tabelle dei fatti contengono metriche quantitative (importo delle vendite, quantità, conteggi) e chiavi esterne per le dimensioni, con un livello di misurazione che definisce la granularità (transazione, aggregato giornaliero) e supporta misure additive, semi-additive e non additive.
  • Le tabelle delle dimensioni forniscono un contesto descrittivo (attributi del cliente, dettagli del prodotto, gerarchie temporali) in genere denormalizzato con strategie di dimensione a variazione lenta (SCD) che tracciano le modifiche storiche tramite Tipo 1 (sovrascrittura), Tipo 2 (versioning) o Tipo 3 (corrente/precedente).
  • L'ottimizzazione delle query trae vantaggio dall'archiviazione a colonne, dall'eliminazione delle partizioni, dalle tabelle di riepilogo preaggregate e dall'integrazione di strumenti di BI che supportano operazioni di drill-down, slice-and-dice e cubo OLAP per analisi multidimensionali.

Che cos'è uno schema a stella?

Lo schema a stella è un modello di dati multidimensionale utilizzato per organizzare i dati in un database, in modo che siano facili da capire e analizzare. Gli schemi a stella possono essere applicati a data warehouse, database, data mart e altri strumenti. La concezione degli schemi a stella è ottimizzata per l'interrogazione di grandi set di dati.

Introdotti da Ralph Kimball negli anni Novanta, gli schemi a stella sono efficienti nel memorizzare i dati, mantenere lo storico e aggiornare i dati riducendo la duplicazione delle definizioni ripetitive, velocizzando in tal modo l'aggregazione e il filtraggio dei dati nel data warehouse.

 

Tabelle di fatti e tabelle di dimensioni

Lo schema a stella viene utilizzato per denormalizzare i dati aziendali in dimensioni (come tempo e prodotto) e fatti (come transazioni in importi e quantità).

Lo schema a stella ha un'unica tabella di fatti al centro, che contiene "fatti" (come importi o quantità di transazioni). La tabella dei fatti è collegata a diverse tabelle di dimensioni relative a "dimensioni" quali tempo o prodotto. Lo schema a stella consente agli utenti di "sezionare" i dati come meglio preferiscono, tipicamente unendo due o più tabelle di fatti e di dimensioni.

Dati denormalizzati

Gli schemi a stella denormalizzano i dati, cioè aggiungono colonne ridondanti ad alcune tabelle di dimensioni per rendere più veloci e semplici le query e le elaborazioni dei dati. Lo scopo è barattare un certo livello di ridondanza (duplicazione dei dati) nel modello dei dati con una maggiore velocità delle interrogazioni, evitando operazioni di join (congiunzione) molto costose in termini di risorse di calcolo.

In questo modello, la tabella dei fatti è normalizzata, mentre le tabelle delle dimensioni non lo sono. In altre parole, i dati della tabelle di fatti esistono solo nella tabella di fatti, mentre le tabelle di dimensioni possono contenere dati ridondanti.

LEADER PER LA 5ª VOLTA

Gartner®: Databricks leader dei database cloud

Vantaggi dello schema a stella

  • I modelli fatti/dimensioni come gli schemi a stella sono semplici da capire e implementare e agevolano gli utenti finali nella ricerca dei dati. Possono essere applicati a data mart e altre risorse di dati.
  • Ottimi per query semplici grazie alla minore dipendenza da join per l'accesso ai dati, rispetto a modelli normalizzati come gli schemi a fiocco di neve (snowflake).
  • Lo schema a stella si adatta bene ai modelli OLAP.
  • Prestazioni migliori delle query rispetto ai dati normalizzati, perché gli schemi a stella cercano di evitare join costosi in termini di risorse di calcolo.

Quali sono le differenze fra schema a stella e 3NF (terza forma normale)?

3NF, o terza forma normale, è un metodo per ridurre la ridondanza dei dati attraverso la normalizzazione. È uno standard comune per i database considerati pienamente normalizzati. Tipicamente ha più tabelle di uno schema a stella a causa della normalizzazione dei dati. Per contro, le query tendono a essere più complesse a causa del maggiore numero di join fra tabelle grandi.

Risorse

Non perdere mai un post di Databricks

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