Informazioni sui concetti fondamentali del data warehouse
Il processo di creazione di un data warehouse moderno è in genere costituito da:
- Inserimento dati: spostamento dei dati dai sistemi di origine in un data warehouse.
- Archiviazione dei dati: archiviazione dei dati in un formato ottimizzato per l'analisi.
- Elaborazione dei dati: trasformazione dei dati in un formato pronto per l'utilizzo da parte degli strumenti analitici.
- Analisi e recapito dei dati: analisi dei dati per ottenere informazioni dettagliate e fornire tali informazioni dettagliate all'azienda.
Microsoft Fabric consente ai data engineer e agli analisti di inserire, archiviare, trasformare e visualizzare tutti i dati in un unico strumento con un'esperienza di basso codice e tradizionale.
Informazioni sull'esperienza del data warehouse di Fabric
Il data warehouse di Fabric è un data warehouse relazionale che supporta le funzionalità T-SQL transazionali complete previste da un data warehouse aziendale. Si tratta di un data warehouse completamente gestito, scalabile e a disponibilità elevata che può essere usato per archiviare ed eseguire query sui dati in Lakehouse. Usando il data warehouse, è possibile controllare completamente la creazione di tabelle, il caricamento, la trasformazione e l'esecuzione di query sui dati usando il portale di Fabric o i comandi T-SQL. È possibile usare SQL per eseguire query e analizzare i dati oppure usare Spark per elaborare i dati e creare modelli di Machine Learning.
I data warehouse in Fabric facilitano la collaborazione tra data engineer e analisti dei dati, lavorando insieme nella stessa esperienza. I data engineer creano un livello relazionale sopra i dati in Lakehouse, in cui gli analisti possono usare T-SQL e Power BI per esplorare i dati.
Progettare un data warehouse
Come tutti i database relazionali, il data warehouse di Fabric contiene tabelle per archiviare i dati per l'analisi in un secondo momento. In genere, queste tabelle sono organizzate in uno schema ottimizzato per la modellazione multidimensionale. In questo approccio, i dati numerici correlati agli eventi (ad esempio gli ordini di vendita) vengono raggruppati in base a attributi diversi (ad esempio, data, cliente, negozio). Ad esempio, è possibile analizzare l'importo totale pagato per gli ordini di vendita che si sono verificati in una data specifica o in un determinato negozio.
Tabelle in un data warehouse
Le tabelle in un data warehouse sono in genere organizzate in modo da supportare un'analisi efficiente ed efficace di grandi quantità di dati. Questa organizzazione viene spesso definita modellazione dimensionale, che comporta la strutturazione delle tabelle nei fatti e nelle tabelle delle dimensioni.
Le tabelle dei fatti contengono i dati numerici da analizzare. Le tabelle dei fatti in genere hanno un numero elevato di righe e sono l'origine principale dei dati per l'analisi. Ad esempio, una tabella dei fatti può contenere l'importo totale pagato per gli ordini di vendita che si sono verificati in una data specifica o in un determinato negozio.
Le tabelle delle dimensioni contengono informazioni descrittive sui dati nelle tabelle dei fatti. Le tabelle delle dimensioni in genere hanno un numero ridotto di righe e vengono usate per fornire il contesto per i dati nelle tabelle dei fatti. Ad esempio, una tabella delle dimensioni può contenere informazioni sui clienti che hanno effettuato ordini di vendita.
Oltre alle colonne di attributo, una tabella delle dimensioni contiene una colonna chiave che identifica in modo univoco ogni riga nella tabella. Di fatto, una tabella delle dimensioni include comunemente due colonne chiave:
- Una chiave surrogata è un identificatore univoco per ogni riga nella tabella delle dimensioni. Spesso si tratta di un valore intero generato automaticamente dal sistema di gestione del database quando viene inserita una nuova riga nella tabella.
- Una chiave alternativa è spesso una chiave naturale o aziendale che identifica un'istanza specifica di un'entità nel sistema di origine transazionale, ad esempio un codice prodotto o un ID cliente.
Sono necessarie chiavi surrogate e alternative in un data warehouse, perché servono scopi diversi. Le chiavi surrogate sono specifiche del data warehouse e consentono di mantenere la coerenza e l'accuratezza dei dati. Le chiavi alternative sono invece specifiche del sistema di origine e consentono di mantenere la tracciabilità tra il data warehouse e il sistema di origine.
Tipi speciali di tabelle delle dimensioni
I tipi speciali di dimensioni forniscono contesto aggiuntivo e consentono un'analisi dei dati più completa.
Le dimensioni temporali forniscono informazioni sul periodo di tempo in cui si è verificato un evento. Questa tabella consente agli analisti dei dati di aggregare i dati in base a intervalli di tempo. Ad esempio, una dimensione temporale può includere colonne per l'anno, il trimestre, il mese e il giorno in cui è stato effettuato un ordine di vendita.
Le dimensioni a modifica lenta sono tabelle delle dimensioni che tengono traccia delle modifiche apportate agli attributi della dimensione nel corso del tempo, ad esempio le modifiche apportate all'indirizzo di un cliente o al prezzo di un prodotto. Sono significativi in un data warehouse perché consentono agli utenti di analizzare e comprendere le modifiche ai dati nel tempo. Le dimensioni a modifica lenta assicurano che i dati rimangano aggiornati e accurati, che è fondamentale prendere decisioni aziendali corrette.
Opzioni di progettazione per uno schema del data warehouse
Nella maggior parte dei database transazionali usati nelle applicazioni aziendali, i dati vengono normalizzati per ridurre la duplicazione. In un data warehouse, tuttavia, i dati delle dimensioni vengono in genere denormalizzati per ridurre il numero di join necessari per eseguire query sui dati.
Un data warehouse è spesso organizzato come schema star, in cui una tabella dei fatti è direttamente correlata alle tabelle delle dimensioni, come illustrato in questo esempio:
È possibile usare gli attributi di un elemento per raggruppare i numeri nella tabella dei fatti a livelli diversi. Ad esempio, è possibile trovare i ricavi totali delle vendite per un'intera area o solo per un cliente. Le informazioni per ogni livello possono essere archiviate nella stessa tabella delle dimensioni.
Suggerimento
Per altre informazioni sulla progettazione di schemi star per Fabric, vedere Che cos'è uno schema star.
Se ci sono molti livelli o alcune informazioni sono condivise da elementi diversi, potrebbe essere opportuno usare invece uno schema snowflake. Ecco un esempio:
In questo caso, la tabella DimProduct è stata suddivisa (normalizzata) per creare tabelle delle dimensioni separate per categorie di prodotti e fornitori.
- Ogni riga della tabella DimProduct contiene i valori chiave per le righe corrispondenti nelle tabelle DimCategory e DimSupplier.
È stata aggiunta una tabella DimGeography contenente informazioni sulla posizione di clienti e negozi.
- Ogni riga nelle tabelle DimCustomer e DimStore contiene un valore chiave per la riga corrispondente nella tabella DimGeography .