Un Data warehouse (o DW) (termine inglese traducibile con magazzino di dati), è un archivio informatico contenente i dati di un'organizzazione.
Vengono considerati componenti essenziali di un sistema Data warehouse anche gli strumenti per localizzare i dati, per estrarli, trasformarli e caricarli, come pure gli strumenti per gestire un dizionario dei dati.
Mentre un database è una raccolta di dati fine a se stessa, con il datawarehouse ci troviamo nel campo della business intelligence che, appunto, si prefigge di fornire un supporto alle decisioni aziendali e alla risoluzione dei problemi.
Caratteristiche:
- Orientato al soggetto;
- Integrato;
- Invariante nel tempo;
- Non volatile.
Vediamo le caratteristiche in dettaglio:
1) Orientato al soggetto, il DW è orientato a temi aziendali specifici piuttosto che alle applicazioni o alle funzioni. In un DW i dati vengono archiviati in modo da essere facilmente letti o elaborati dagli utenti. Questo vuol dire che l’obiettivo, quindi, non è più quello di minimizzare la ridondanza mediante la normalizzazione, ma quello di fornire dati organizzati in modo tale da favorire la produzione di informazioni. Si passa dalla progettazione per funzioni ad una modellazione dei dati che consenta una visione multidimensionale degli stessi;
2) Integrato, requisito fondamentale di un data warehouse è l’integrazione dei dati raccolti. Nel data warehouse confluiscono dati provenienti da più sistemi transazionali e da fonti esterne. L’obiettivo dell’integrazione può essere raggiunto percorrendo differenti strade: mediante l’utilizzo di metodi di codifica uniformi, mediante il perseguimento di una omogeneità semantica di tutte le variabili, mediante l’utilizzo delle stesse unità di misura
3) Invariante nel tempo, i dati archiviati all’interno di un DW coprono un orizzonte temporale molto più esteso rispetto a quelli archiviati in un sistema operativo. Nel DW sono contenute una serie di informazioni relative alle aree di interesse che colgono la situazione relativa ad un determinato fenomeno in un determinato intervallo temporale piuttosto esteso. Ciò comporta che i dati contenuti in un DW siano aggiornati fino ad una certa data che, nella maggior parte dei casi, è antecedente a quella in cui l’utente interroga il sistema. Ciò differisce da quanto si verifica in un sistema transazionale, nel quale i dati corrispondono sempre ad una situazione aggiornata, solitamente incapace di fornire un quadro storico del fenomeno analizzato;
4) Non volatile, tale caratteristica indica la non modificabilità dei dati contenuti nel DW che consente accessi in sola lettura. Ciò comporta una semplicità di progettazione del database rispetto a quella di un’applicazione transazionale. In tale contesto non si considerano le possibili anomalie dovute agli aggiornamenti, né tanto meno si ricorre a strumenti complessi per gestire l’integrità referenziale o per bloccare record a cui possono accedere altri utenti in fase di aggiornamento.
Le diverse operazioni eseguibili, attraverso i datawarehouse, sono:
- Integrazione tra fonti dati eterogenee.
- Offerta dei dati stabili rappresentativi dell'evoluzione aziendale.
- Organizzazione dei dati in strutture semplificate mirate a migliorare l'efficienza delle query analitiche.
- Semplificazione dei requisiti di protezione.
- Contenimento dei dati trasformati, validi, consolidati e formattati per l'analisi.
- Aggiornamento dei datawarehouse stessi periodicamente con dati aggiuntivi.
Cosa differenzia i datawarehouse dai sistemi OLTP (On Line Analytical Processing)?
A differenza dei database OLTP, che hanno strutture complesse, il cui scopo è quello di acquisire volumi elevati di transazioni di modifica e aggiunta di dati, lo scopo dei datawarehouse consiste nell'organizzare grandi quantità di dati stabili per agevolare le operazioni di analisi e recupero.
I database relazionali OLTP sono ideali per la gestione di dati in evoluzione. Generalmente sono utilizzati da diversi utenti che eseguono contemporaneamente transazioni che comportano la modifica dei dati in tempo reale. Sebbene le singole richieste di dati da parte degli utenti facciano in genere riferimento a poche righe, vengono eseguite contemporaneamente molte di queste richieste. I database OLTP sono progettati per consentire alle applicazioni transazionali di scrivere solo i dati necessari per la gestione di una singola transazione nel modo più rapido possibile.

Nessun commento:
Posta un commento