Data Warehouse Design: Il Buono, il Cattivo, il Brutto

Una buona Business Intelligence (BI), permette alla tua organizzazione di interrogare i dati ottenuti da fonti affidabili e usare le risposte per ottenere un vantaggio competitivo nel tuo settore. Il primo passo per ottenere una BI efficace è un magazzino ben progettato. La progettazione del data warehouse è il processo di costruzione di una soluzione per integrare i dati da più fonti che supportano il reporting analitico e l’analisi dei dati. Un data warehouse mal progettato può risultare nell’acquisizione e nell’utilizzo di dati sorgente imprecisi che influenzano negativamente la produttività e la crescita della vostra organizzazione. Questo post del blog darà uno sguardo di alto livello al processo di progettazione del data warehouse, dalla raccolta dei requisiti all’implementazione.

Raccolta dei requisiti

La raccolta dei requisiti è il primo passo del processo di progettazione del data warehouse. L’obiettivo della fase di raccolta dei requisiti è di determinare i criteri per un’implementazione di successo del data warehouse. La strategia di business a lungo termine di un’organizzazione dovrebbe essere importante quanto gli attuali requisiti di business e tecnici. L’analisi degli utenti e i requisiti di reporting devono essere identificati così come l’hardware, lo sviluppo, i test, l’implementazione e l’addestramento degli utenti.

Una volta che il business e la strategia tecnica sono stati decisi, il passo successivo è affrontare come l’organizzazione farà il backup del data warehouse e come si riprenderà se il sistema fallisce. Sviluppare un piano di disaster recovery mentre si raccolgono i requisiti, assicura che l’organizzazione sia preparata a rispondere rapidamente alle minacce dirette e indirette al data warehouse.

Impostazione dell’ambiente fisico

Una volta stabiliti i requisiti di business, il passo successivo è determinare l’ambiente fisico per il data warehouse. Come minimo, ci dovrebbe essere un’applicazione fisica separata e server di database, così come ETL/ELT, OLAP, cubo e processi di reporting separati per lo sviluppo, il test e la produzione. La costruzione di ambienti fisici separati assicura che tutti i cambiamenti possano essere testati prima di spostarli in produzione, lo sviluppo e i test possono avvenire senza fermare l’ambiente di produzione, e se l’integrità dei dati diventa sospetta, il personale IT può investigare il problema senza impattare negativamente l’ambiente di produzione.

Data Modeling

Una volta che la raccolta dei requisiti e gli ambienti fisici sono stati definiti, il passo successivo è definire come le strutture dei dati saranno accessibili, collegate, elaborate e immagazzinate nel data warehouse. Questo processo è conosciuto come modellazione dei dati. Durante questa fase di progettazione del magazzino di dati, è dove le fonti di dati vengono identificate. Sapere dove risiedono i dati originali e, altrettanto importante, la disponibilità di quei dati, è cruciale per il successo del progetto. Una volta che le fonti di dati sono state identificate, il team del data warehouse può iniziare a costruire le strutture logiche e fisiche basate sui requisiti stabiliti.

ETL

Il processo ETL richiede la maggior parte del tempo per sviluppare e consuma la maggior parte dell’implementazione. Identificare le fonti di dati durante la fase di modellazione dei dati può aiutare a ridurre il tempo di sviluppo ETL. L’obiettivo dell’ETL è di fornire velocità di caricamento ottimizzate senza sacrificare la qualità. Un fallimento in questa fase del processo può portare a scarse prestazioni del processo ETL e dell’intero sistema di data warehouse.

OLAP Cube Design

On-Line Analytical Processing (OLAP) è il motore di risposta che fornisce l’infrastruttura per query utente ad-hoc e analisi multidimensionale. Le specifiche del design OLAP dovrebbero provenire da coloro che interrogheranno i dati. La documentazione che specifica le dimensioni e le misure del cubo OLAP dovrebbe essere ottenuta all’inizio del processo di progettazione del data warehouse. I tre elementi critici della progettazione OLAP includono:

  • Misure di raggruppamento – valori numerici che si desidera analizzare come le entrate, il numero di clienti, quanti prodotti acquistano i clienti o l’importo medio di acquisto.
  • Dimensione – dove vengono memorizzate le misure per l’analisi come la regione geografica, il mese o il trimestre.
  • Granularità – il livello più basso di dettaglio che si desidera includere nel set di dati OLAP.

Durante lo sviluppo, assicurarsi che il processo del cubo OLAP sia ottimizzato. Un data warehouse di solito non è una priorità notturna, e una volta che il data warehouse è stato aggiornato, rimane poco tempo per aggiornare il cubo OLAP. Non aggiornare nessuno dei due in modo tempestivo potrebbe portare a una riduzione delle prestazioni del sistema. Prendersi il tempo necessario per esplorare il percorso di generazione del cubo OLAP più efficiente può ridurre o prevenire i problemi di performance dopo che il data warehouse è entrato in funzione.

Sviluppo front-end

A questo punto, i requisiti di business sono stati catturati, l’ambiente fisico è completo, il modello di dati è stato deciso e il processo ETL è stato documentato. Il passo successivo è lavorare su come gli utenti accederanno al data warehouse. Lo sviluppo del front-end è il modo in cui gli utenti accederanno ai dati per l’analisi e l’esecuzione dei rapporti. Ci sono molte opzioni disponibili, tra cui costruire il front end in-house o acquistare un prodotto off the shelf. In entrambi i casi, ci sono alcune considerazioni da tenere a mente per garantire la migliore esperienza per gli utenti finali.

L’accesso sicuro ai dati da qualsiasi dispositivo – desktop, laptop, tablet o telefono dovrebbe essere la considerazione principale. Lo strumento dovrebbe permettere al vostro team di sviluppo di modificare la struttura di backend quando cambiano i requisiti di reporting a livello aziendale. Dovrebbe anche fornire un’interfaccia grafica utente (GUI) che permetta agli utenti di personalizzare i loro rapporti come necessario. Il motore OLAP e i dati possono essere i migliori della classe, ma se gli utenti non sono in grado di usare i dati, il data warehouse diventa un deposito di dati costoso e inutile.

Sviluppo di report

Per la maggior parte degli utenti finali, l’unico contatto che hanno con il data warehouse è attraverso i report che generano. Come menzionato nella sezione sullo sviluppo del front end, la capacità degli utenti di selezionare i criteri dei loro rapporti in modo rapido ed efficiente è una caratteristica essenziale per la generazione di rapporti del data warehouse. Le opzioni di consegna sono un’altra considerazione. Oltre a ricevere i report attraverso un’interfaccia web sicura, gli utenti potrebbero volere o aver bisogno di report inviati come allegati e-mail o fogli di calcolo. Il controllo del flusso e della visibilità dei dati è un altro aspetto dello sviluppo dei report che deve essere affrontato. Sviluppare gruppi di utenti con accesso a specifici segmenti di dati dovrebbe fornire sicurezza e controllo dei dati. Il reporting cambierà e dovrebbe cambiare ben dopo l’implementazione iniziale. Un data warehouse ben progettato dovrebbe essere in grado di gestire le nuove richieste di reporting con poche o nessuna modifica del sistema di data warehouse.

Performance Tuning

Prima in questo post, la raccomandazione era di creare ambienti di sviluppo e di test separati. Questo permette alle organizzazioni di fornire un tuning delle prestazioni del sistema su ETL, elaborazione delle query e consegna dei report senza interrompere l’attuale ambiente di produzione. Assicurati che l’hardware e le applicazioni degli ambienti di sviluppo e di test imitino l’ambiente di produzione in modo che i miglioramenti delle prestazioni creati nello sviluppo funzionino nell’ambiente di produzione live.

Testing

Una volta che il sistema di data warehouse è stato sviluppato secondo i requisiti di business, il passo successivo è quello di testarlo. Il test, o garanzia di qualità, è un passo che non dovrebbe essere saltato perché permetterà al team del data warehouse di esporre e risolvere i problemi prima del rollout iniziale. Il mancato completamento della fase di test potrebbe portare a ritardi nell’implementazione o all’interruzione del progetto di data warehouse.

Implementazione

Tempo di andare live. Decidere di rendere il sistema disponibile a tutti in una volta o eseguire un rilascio scaglionato, dipenderà dal numero di utenti finali e da come accederanno al sistema di data warehouse. Un altro aspetto importante dell’implementazione di qualsiasi sistema, che spesso viene saltato, è la formazione degli utenti finali. Non importa quanto “intuitivo” il team del data warehouse e gli sviluppatori pensano che la GUI sia, se gli attuali utenti finali trovano lo strumento difficile da usare, o non capiscono i benefici dell’uso del data warehouse per il reporting e l’analisi, non si impegneranno.

Comprendere le migliori pratiche per la progettazione del data warehouse

La progettazione del data warehouse è un impegno che richiede tempo e sfida. Ci saranno aspetti buoni, cattivi e brutti in ogni passo. Tuttavia, se un’organizzazione si prende il tempo di sviluppare requisiti validi all’inizio, i passi successivi nel processo scorreranno più logicamente e porteranno ad un’implementazione di successo del data warehouse.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.