Passa al contenuto principale

Guida pratica alla progettazione e all'architettura dei Data Warehouse

Una guida pratica alla progettazione del data warehouse che copre architettura, modellazione dei dati, pipeline ETL/ELT, data mart e governance per creare un sistema scalabile e pronto per l'analisi.

di Staff di Databricks

  • Una progettazione efficace del data warehouse inizia con l'allineamento delle esigenze di reportistica degli stakeholder prima di selezionare un modello di schema o una tecnologia di storage — seguire questa sequenza previene costosi rifacimenti su larga scala.
  • L'architettura moderna del data warehouse segue una struttura a tre livelli che separa fonti di dati, storage e livelli semantici, con tecniche di modellazione dimensionale come lo schema a stella che favoriscono prestazioni dei data mart rapide e ottimizzate per le query.
  • Le pipeline ETL/ELT, i test automatizzati delle pipeline e i controlli di accesso basati sui ruoli sono fondamentali per un data warehouse ben progettato che mantenga la coerenza dei dati, si scali in modo sicuro e supporti carichi di lavoro sia di BI che di AI.

Questa guida è rivolta a data engineer, architetti, analytics engineer e leader tecnici responsabili della pianificazione o modernizzazione di un data warehouse. Sia che si tratti di avviare una configurazione di data warehouse completamente nuova, di migrare da un sistema legacy o di scalare un data warehouse esistente per l'AI, questo documento fornisce un riferimento pratico per ogni decisione chiave di progettazione del data warehouse.

Data warehouse, obiettivi aziendali e data analytics

Un data warehouse offre un valore direttamente proporzionale ai casi d'uso di analytics che è chiamato a supportare. Prima di scegliere un modello di schema o un livello di archiviazione, le organizzazioni dovrebbero definire quali decisioni il data warehouse andrà a migliorare e per chi.

Partire con obiettivi aziendali chiari aiuta a garantire che il data warehouse offra un valore reale, non solo una semplice archiviazione dei dati. Una progettazione efficace del data warehouse inizia con l'identificazione dei casi d'uso di analytics fondamentali che guideranno risultati misurabili. Un data warehouse ben progettato supporta un'analisi dei dati significativa — le organizzazioni che saltano questo passaggio spesso creano sistemi tecnicamente corretti che rimangono inutilizzati, perché il data warehouse risponde a domande che nessuno si pone.

La mappatura degli stakeholder è altrettanto importante. Gli utenti aziendali hanno bisogno di dati puliti e pre-aggregati per le dashboard. I data scientist richiedono un accesso granulare per l'addestramento dei modelli. I dirigenti desiderano KPI affidabili con funzionalità di drill-down. Mappare tempestivamente queste figure in base alle esigenze di reportistica previene disallineamenti di progettazione che andrebbero ad accumularsi con la crescita del data warehouse.

Architettura moderna di data warehouse

La moderna architettura di data warehouse — sia in cloud che on-premise — segue in genere una struttura a tre livelli che include un livello di origine dati, un livello di archiviazione e un livello di presentazione. Ogni livello ha una responsabilità distinta e i confini tra di essi definiscono il modo in cui i dati fluiscono dall'origine al consumatore finale di analytics.

Il livello di origine dati acquisisce i dati grezzi da database transazionali, applicazioni SaaS, flussi di eventi ed esportazioni di file flat. È il livello di dati attraverso il quale tutti i dati strutturati e non strutturati in entrata entrano nel sistema, indipendentemente dal formato o dalla velocità.

Il livello di archiviazione di un data warehouse è progettato per interrogazioni e analisi rapide piuttosto che per attività transazionali. È qui che risiedono i dati elaborati, organizzati secondo modelli dimensionali ottimizzati per carichi di lavoro OLAP (online analytical processing). I moderni data warehouse cloud possono scalare automaticamente e in modo indipendente le risorse di calcolo e di archiviazione — una funzionalità che i sistemi on-premise tradizionali non sono in grado di replicare.

Il livello semantico di output espone viste intuitive per il business agli strumenti di reportistica e agli utenti aziendali, traducendo il modello di dati sottostante in termini noti agli analisti — ricavi, abbandono, margine — e applicando la logica aziendale che garantisce definizioni coerenti delle metriche tra i vari team.

La progettazione di data warehouse nativi del cloud offre due vantaggi strutturali rispetto alle soluzioni on-premise: elasticità e apertura. L'architettura disaccoppiata di calcolo e archiviazione consente a ciascuna dimensione di scalare in modo indipendente. I formati di dati aperti prevengono il vendor lock-in, eliminano i silos di dati e consentono al data warehouse di interoperare con piattaforme ML, motori di streaming e strumenti di AI.

Architettura dei dati e archiviazione dei dati

Ogni data warehouse ben progettato inizia con un inventario completo delle fonti di dati. Le organizzazioni dovrebbero documentare tutti i sistemi a monte — piattaforme CRM, database ERP, strumenti di marketing e feed di streaming — prima di scrivere il codice della pipeline. Questo inventario guida la progettazione del livello di archiviazione, la strategia di integrazione dei dati e i criteri di conservazione.

La progettazione dell'archiviazione per un moderno data warehouse segue in genere un approccio a zone. L'architettura medaglione (medallion architecture) — Bronze, Silver e Gold — rende esplicita la qualità dei dati in ogni fase del flusso di dati. I dati grezzi arrivano nel livello Bronze esattamente come provengono dai sistemi di origine, preservando il lineage completo. Il livello Silver applica la pulizia e la deduplicazione per strutturare i dati in una vista aziendale. Il livello Gold contiene modelli dimensionali pronti per il consumo che alimentano dashboard e data mart.

I criteri di conservazione e archiviazione prevengono la proliferazione incontrollata dell'archiviazione dei dati. Le organizzazioni dovrebbero definire tempestivamente le soglie di volume dei dati, le regole di archiviazione temporale e le strategie di cold storage. I dati sensibili richiedono criteri di gestione aggiuntivi per soddisfare i quadri normativi come il GDPR o l'HIPAA.

Progettazione di un data warehouse: modellazione dei dati e data mart

La progettazione del data warehouse comporta la strutturazione di un repository centralizzato per l'archiviazione, l'integrazione e l'analisi efficienti delle informazioni storiche. La fase di modellazione dei dati è quella in cui i requisiti aziendali astratti diventano strutture di modelli di dati concrete che influiscono direttamente sulle prestazioni delle query, sull'usabilità e sulla manutenibilità a lungo termine.

Selezione di un modello di schema primario

La modellazione dimensionale è importante per una reportistica efficiente e riduce i join tra tabelle nei data warehouse. Lo schema a stella (star schema) è la scelta standard per semplicità e rapidità di esecuzione delle query — una tabella dei fatti centrale collegata alle tabelle delle dimensioni circostanti gestisce le query complesse in modo efficiente, consentendo le analisi complesse da cui dipendono gli strumenti di BI e gli analisti, riducendo al contempo il sovraccarico di join comune negli schemi normalizzati. Le tabelle dei fatti acquisiscono eventi misurabili a una granularità definita. Le tabelle delle dimensioni contengono attributi descrittivi — prodotto, cliente, tempo, posizione — che forniscono un contesto ai fatti.

Lo schema a fiocco di neve (snowflake schema) normalizza le tabelle delle dimensioni in più tabelle correlate — riducendo la ridondanza dei dati tra gruppi di attributi ripetuti — e consente ai team di archiviare i dati in modo più efficiente, sebbene al costo di join aggiuntivi. Più tabelle delle dimensioni collegate in una gerarchia sacrificano in parte la velocità delle query a favore di una maggiore coerenza. I team dovrebbero preferire lo star schema per le dashboard rivolte agli utenti e riservare la normalizzazione snowflake alle tabelle delle dimensioni in cui la ridondanza dei dati rappresenta un problema concreto.

Progettazione di data mart per dominio

Un data mart è un sottoinsieme specifico per argomento del data warehouse centrale, ottimizzato per un singolo dominio aziendale — finanza, marketing, supply chain o risorse umane. I data mart accelerano il time-to-insight senza esporre i team di dominio all'intera complessità dello schema centrale. Le organizzazioni dovrebbero creare i data mart in modo incrementale, partendo dai domini a più alto valore. Ogni dominio dovrebbe avere un proprietario designato responsabile della frequenza di aggiornamento e dell'evoluzione dello schema.

Tecniche di modellazione dei dati

La scelta tra star schema e normalizzazione snowflake è una delle decisioni più importanti nella progettazione di un data warehouse. Lo star schema è il modello dominante per la maggior parte dei carichi di lavoro di BI perché consente letture denormalizzate rapide con join minimi. Una tabella dei fatti centrale collegata a più tabelle delle dimensioni — prodotto, cliente, data — offre prestazioni elevate su set di dati di grandi dimensioni.

La scelta del modello di dati corretto influisce direttamente sulle prestazioni e sull'usabilità, quindi è importante evitare la sovraprogettazione nelle fasi iniziali e iniziare in modo semplice. Le decisioni sulla granularità definiscono il livello atomico al quale le tabelle dei fatti registrano gli eventi. Una granularità dei dati più fine aumenta lo spazio di archiviazione ma massimizza la flessibilità analitica. I data architect dovrebbero stabilire tempestivamente gli standard di granularità per ciascuna tabella dei fatti, poiché la loro modifica richiede costose riscritture delle pipeline.

Modelli di data mart

Le organizzazioni che sviluppano un moderno data warehouse devono decidere come strutturare i data mart per garantire l'indipendenza dei domini. L'approccio bottom-up crea prima i data mart specifici per reparto e li integra nel data warehouse centrale nel corso del tempo. L'approccio top-down crea prima il data warehouse centralizzato, stabilendo un'unica fonte di verità prima di creare i data mart per i singoli domini.

La frequenza di aggiornamento varia a seconda del data mart. Un data mart finanziario utilizzato per la chiusura di fine mese potrebbe richiedere solo aggiornamenti batch notturni. Un data mart di marketing utilizzato per l'ottimizzazione delle campagne potrebbe richiedere aggiornamenti orari. Le organizzazioni dovrebbero specificare esplicitamente la frequenza di aggiornamento e non applicare un'unica pianificazione a tutti i nuovi data mart.

La proprietà del dominio è la controparte organizzativa della progettazione tecnica del data mart. Ogni data mart relativo a un'area tematica dovrebbe avere un proprietario di dominio designato, responsabile dell'accuratezza dello schema, delle modifiche allo schema e delle comunicazioni a valle.

Progettazione di data warehouse e pianificazione dell'implementazione

Due approcci generali governano la progettazione dei data warehouse: top-down e bottom-up. Le implementazioni aziendali in genere fondono entrambi — un modello centralizzato garantisce la coerenza dei dati, mentre i data mart specifici per dominio accelerano l'adozione.

Una roadmap a fasi riduce i rischi. La fase uno acquisisce le fonti di dati a priorità più elevata e fornisce due o tre data mart ad alto valore. La fase due si estende a domini aggiuntivi. La fase tre aggiunge funzionalità di AI e analytics integrata. Cercare di creare tutto in una volta è la causa più comune di fallimento nell'implementazione di un data warehouse.

La stima dei costi dovrebbe coprire le risorse di calcolo, l'archiviazione, gli strumenti di orchestrazione e le licenze di integrazione dei dati. I responsabili della governance della gestione dei dati dovrebbero essere assegnati prima dell'inizio della creazione tecnica — integrare la governance a posteriori è notevolmente più difficile che integrarla fin dall'inizio.

Report

Il playbook sull'AI agentiva per l'enterprise

Pipeline ETL/ELT e integrazione dell'archiviazione

La scelta tra Extract, Transform, Load (ETL) ed ELT modella in modo significativo l'architettura delle pipeline. L'ETL trasforma i dati prima di caricarli, riducendo lo spazio di archiviazione ma creando colli di bottiglia su larga scala. L'ELT carica prima i dati grezzi ed esegue l'elaborazione all'interno del data warehouse, il che è più efficiente negli ambienti cloud in cui la computazione è elastica. Comprendere i compromessi tra ETL e ELT aiuta i team di data engineering a selezionare la strategia giusta per ciascun sistema di origine.

Il Change Data Capture (CDC) e il caricamento incrementale basato su timestamp sono i metodi preferiti per mantenere la disponibilità dei dati in tempo reale nei data warehouse. Riducono al minimo la latenza tra le modifiche al sistema di origine e la disponibilità nel data warehouse, senza il sovraccarico di ricaricamenti completi delle tabelle.

Gli strumenti di orchestrazione coordinano la pianificazione delle pipeline, la gestione delle dipendenze e la gestione degli errori. La scelta giusta dipende dalla complessità della pipeline, dalla freschezza dei dati richiesta e dal fatto che l'organizzazione necessiti di un'elaborazione batch ETL o di un'ingestione in streaming continuo.

Livello di presentazione e strumenti di analytics

Il livello semantico è il punto in cui i costrutti dei modelli di dati grezzi vengono tradotti in termini di business. Invece di esporre i nomi delle colonne grezze, una vista semantica ben progettata mette in evidenza metriche di business certificate con definizioni e proprietà chiare. Ciò riduce il rischio che gli analisti calcolino la stessa metrica in modo diverso e tutela l'accuratezza della reportistica a valle.

Gli strumenti di reportistica dovrebbero essere adattati alle personas degli utenti. Gli executive preferiscono dashboard integrate con viste KPI predefinite. Gli analisti e i data scientist hanno bisogno di un accesso più profondo: interfacce SQL per gli analisti, accesso diretto alle tabelle per i team di modellazione. L'analytics self-service funziona al meglio quando la governance semantica applica il controllo degli accessi tramite strumenti dedicati, consentendo agli utenti aziendali di esplorare i dati in sicurezza senza accedere a dati sensibili per cui non sono autorizzati.

Abilitazione dell'analytics e osservabilità

I contratti sulle metriche definiscono il modo in cui vengono calcolati i KPI principali, chi ne è il proprietario e come dovrebbero essere interpretati. Senza contratti formali, team diversi riportano spesso numeri differenti per la stessa metrica.

I test automatizzati sulla qualità dei dati integrati nelle pipeline acquisiscono i problemi prima che si propaghino alle dashboard. L'implementazione di rigide regole di convalida dei dati garantisce che i report a valle riflettano dati accurati e coerenti. I team dovrebbero monitorare la freschezza dei dati, le anomalie nel conteggio delle righe e lo schema drift come metriche di osservabilità di prim'ordine.

Sicurezza, governance e conformità per l'architettura dei dati

Il controllo degli accessi basato sui ruoli è necessario per proteggere le informazioni sensibili e conformarsi a framework normativi come GDPR o HIPAA. Un data warehouse ben progettato implementa criteri di accesso a livello di tabella, riga e colonna. Unity Catalog offre una governance dei dati centralizzata su storage, computazione e strumenti di BI, garantendo che i criteri di accesso siano applicati in modo coerente indipendentemente dallo strumento o dalla persona che esegue la query.

La crittografia a riposo e in transito protegge i dati sensibili. Il mascheramento dei dati (tokenizzazione, hashing o annullamento) consente agli analisti di interrogare i campi protetti senza vedere le PII sottostanti.

Una solida governance dei dati è essenziale per mantenere la qualità, la sicurezza e la fiducia nei dati all'interno di un'organizzazione, garantendo che siano coerenti e affidabili per il processo decisionale. La documentazione della lineage consente alle organizzazioni di tracciare qualsiasi metrica fino alla sua origine e valutare l'impatto delle modifiche a monte.

Distribuzione, scalabilità e operazioni di implementazione del data warehouse

Le implementazioni di data warehouse in produzione richiedono strategie di distribuzione multi-regione per garantire disponibilità e bassa latenza. Le organizzazioni con utenti globali in genere distribuiscono l'infrastruttura del warehouse all'interno di specifiche regioni cloud per bilanciare i requisiti di residenza dei dati con le prestazioni delle query.

I piani di backup e disaster recovery dovrebbero definire gli obiettivi di tempo di ripristino e punto di ripristino per ciascun livello di storage. I dati grezzi del livello Bronze sono più facili da reinserire rispetto alle tabelle Gold trasformate.

La CI/CD per i modelli di dati e le pipeline introduce la disciplina dell'ingegneria del software nelle operazioni di warehouse. Le modifiche allo schema e le nuove definizioni di data mart dovrebbero passare attraverso pull request sottoposte a controllo di versione, test automatizzati e ambienti di staging prima di raggiungere la produzione.

Roadmap, rollout e passaggi successivi

Condurre un progetto pilota con un dominio ad alto valore riduce al minimo i rischi e genera slancio iniziale. I data mart per la finanza e le vendite sono spesso le prime scelte: i loro KPI sono ben compresi e l'interesse degli stakeholder è elevato.

Un rollout graduale consente ai team di integrare i feedback tra le varie fasi, con una formazione specifica per dominio che copre le dashboard e le definizioni delle metriche rilevanti per ciascun team. Un data warehouse ben progettato si evolve continuamente, perché il business si evolve. I programmi di data warehouse di maggior successo trattano l'infrastruttura di analytics come un sistema vivente, con un monitoraggio regolare e un perfezionamento iterativo che mantengono il data warehouse allineato alle esigenze degli stakeholder.

Domande frequenti

Che cos'è la progettazione di un data warehouse?

La progettazione di un data warehouse comporta la strutturazione di un sistema centrale per l'archiviazione, l'integrazione e l'analisi efficienti delle informazioni storiche. Comprende la selezione del modello di schema, la progettazione del livello di storage, l'architettura delle pipeline di dati, la modellazione dimensionale e i controlli di governance che garantiscono l'integrità e la sicurezza dei dati in tutto il sistema.

Quali sono i 4 tipi di data warehouse?

I quattro tipi più comuni sono gli enterprise data warehouse (EDW), che servono l'intera organizzazione da un repository centralizzato; gli operational data store per la reportistica quasi in tempo reale; i data mart che servono singoli domini aziendali; e i cloud data warehouse che offrono un'infrastruttura gestita ed elastica per i carichi di lavoro analitici.

Quali sono i 5 componenti di un data warehouse?

I cinque componenti chiave sono il livello di ingestione sorgente, che acquisisce i dati grezzi dai sistemi a monte; il livello delle pipeline ETL/ELT, che sposta e trasforma i dati; il livello di storage, che contiene dati storici strutturati; il livello semantico e di presentazione, che espone viste intuitive per il business; e il livello di reportistica e analytics, in cui gli utenti aziendali e i data scientist consumano insight e analizzano i dati.

Quali sono i 4 principi di progettazione di un warehouse?

I principi chiave della progettazione di un data warehouse, fondamentali per qualsiasi progetto di progettazione, includono l'Integrazione, che consolida i dati provenienti da più fonti in un formato coerente; la strutturazione Orientata al Soggetto, che organizza i dati attorno ai principali argomenti di business anziché ai processi transazionali; la tracciabilità Variabile nel Tempo, che conserva i dati storici per consentire l'analisi dei trend e le previsioni; e la Non Volatilità, il che significa che una volta caricati, i dati sono di sola lettura e non soggetti ad aggiornamenti operativi.

(Questo post sul blog è stato tradotto utilizzando strumenti basati sull'intelligenza artificiale) Post originale

Ricevi gli ultimi articoli nella tua casella di posta

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