B.I. Strategy BUSINESS INTELLIGENCE Introduzione al Data Warehouse Definizione: Esistono molte definizioni che identificano il concetto di Data Warehouse, in particolare : “ Una piattaforma sulla quale vengono archiviati e gestiti dati provenienti dalle diverse aree dell’organizzazione; tali dati sono aggiornati, integrati e consolidati dai sistemi di carattere operativo per supportare tutte le applicazioni di supporto alle decisioni ” (Gartner) Più chiaramente: Il Data Warehouse è una collezione di dati a supporto del processo decisionale: attraverso il Data Warehouse il management ha l’opportunità concreta di trovare le risposte a tutte quelle domande che hanno un alto impatto sulle performance aziendali chi ricopre ruoli decisionali deve avere la possibilità di usufruire di tutti gli strumenti che possono rendere la guida dell’azienda massimamente sicura. Problematiche di management Le tipiche problematiche del management relativamente alla fruizione di dati possono essere riassunte come segue: Assenza di sintesi nella reportistica Risultati diversi da fonti diverse per la stessa tematica Impossibilità di navigare nei dati ragionando con oggetti “business” Inaffidabilità di alcuni dati critici Costi elevati per sintetizzare report e analisi Scarsa “collaborazione” o impossibilità di comunicazione dei sistemi informativi transazionali per interrogare i dati Assenza di coerenza fra i dati. Lentezza nell’interrogazione di dati non ottimizzati per l’analisi Queste problematiche sono così universali che possono essere considerate come requirements fondamentali per la costruzione di un sistema di Data Warehouse. Caratteristiche fondamentali del DWH [1/2] 1. Il Data Warehouse deve consentire l’accesso a dati aziendali garantendo bassi tempi di attesa fra l’interrogazione dei dati e l’output di risultati. 2. I dati esposti devono essere consistenti: un particolare valore (le vendite del prodotto A nella città B nel periodo di tempo C) deve essere sempre lo stesso indipendentemente dal momento dell’interrogazione o dalla modalità di interrogazione dei dati. 3. I dati esposti possono essere ricombinati e separati rispetto agli oggetti di calcolo definiti dal business. 4. Nel concetto di data warehouse rientrano anche gli strumenti software necessari a facilitare l’interrogazione dei dati e a garantire una presentazione chiara della sintesi delle analisi. 5. Il Data Warehouse deve contenere dati coerenti e “ripuliti”: capita che fonti importanti di dati per il Data Warehouse trascinino errori di diverso genere che possono avere un impatto devastante sulla qualità dei dati stessi, parte fondamentale del processo di realizzazione di un sistema di Data Warehouse è rappresentata proprio da attività di recupero, trasformazione e pulitura dei dati. Caratteristiche fondamentali del DWH [2/2] 6. La qualità del Data Warehouse può mettere in luce problematiche nascoste all’interno dei processi aziendali, tipicamente l’assenza di dati relativamente ad una particolare attività dovuta all’opzionalità di compilazione dei dati (causa principale dell’assenza di dati) può evidenziare, proprio grazie al Data Warehouse, la necessità di verificare a livello di processi aziendali l’opportunità di definirla come obbligatoria (e non opzionale). 7. Il Data Warehouse è un sistema in sola lettura, gli utenti non eseguono azioni di aggiunta, modifica o eliminazione dei dati. Data Base vs Data Warehouse Il DWH è, quindi: Orientato ai soggetti di interesse Integrato e consistente Rappresentativo dell’evoluzione temporale Non volatile La differenza principale che intercorre tra un DB da un DWH è nel concetto di Denormalizzazione dei dati. Tale ridondanza permette di ottimizzare le caratteristiche per cui un DWH viene progettato. Rappresentazione Multidimensionale La modellazione dati all’interno di un DWH riguarda tre concetti fondamentali propri del management: Fatto: un concetto sul quale centrare l’analisi modella un evento che accade nell’azienda es. Vendita di Prodotti. Misura: una proprietà atomica di un fatto da analizzare ne descrive un aspetto quantitativo es. Quantità venduta, incasso, ecc. Dimensione: descrive una prospettiva lungo la quale effettuare l’analisi es. Tempo, Negozio, ecc. OLTP vs OLAP Le caratteristiche proprie del DWH, necessitano di porre l’attenzione sull’esistenza di due universi completamente diversi nell’ambito del trattamento dei dati aziendali : • On line Transaction processing (OLTP) è l’insieme dei sistemi transazionali pensati e ottimizzati per garantire la massima sicurezza nella gestione delle transazioni. • On line Analytical processing (OLAP) è l’insieme dei sistemi di analisi dei dati pensati e ottimizzati per garantire la massima performance e la massima “estensione” delle interrogazioni. Il recente successo della “filosofia” OLAP è dovuto in parte alla disponibilità di potenza elaborativa per gestire grossi volumi di dati a basso costo e la possibilità di distribuzione delle informazioni tramite tecnologia intranet/Internet. OLAP Devono supportare analisi e calcoli sofisticati su diverse dimensioni e gerarchie • • • Il modello logico dei dati più adatto e’ una struttura multidimensionale, il “data cube” Le dimensioni del cubo sono costituite dagli attributi secondo i quali si vogliono fare le ricerche (chiavi) Ogni dimensione può “contenere” a sua volta una gerarchia DATA {GIORNO - MESE – TRIMESTRE - ANNO} PRODOTTO {NOME - TIPO - CATEGORIA} es. (LAND ROVER - FUORISTRADA - AUTOVEICOLI) • le celle del cubo contengono i valori metrici relativi ai valori dimensionali Ambiente DWH [1/2] Dal punto di vista tecnico/architetturale la definizione di un ambiente data warehouse può essere così semplificata: 1. I dati sorgente, oggetto dell'analisi, vengono forniti dai sistemi transazionali e possono essere di varia natura (sistemi ERP, fogli excel database personali, dati core di applicazioni aziendali, ecc.). 2. Tali dati sono caricati nel data warehouse attraverso procedure di ETL (extraction, transformation e loading) (che possono essere il risultato dello sviluppo di un'interfaccia applicativa in SQL, C, ecc. o possono essere definite e costruite con complessi tool di ETL presenti sul mercato). 3. Nel data warehouse i dati sono presenti al massimo dettaglio e storicizzati e spesso raggiungono dimensioni comunque poco compatibili con l'interrogazione diretta attraverso tool di analisi: vengono così generati dal data warehouse aggregati tematici di dati (datamart) sui quali verranno scatenate le query per le analisi. Ambiente DWH [2/2] 4. Un notevole numero di tool permettono di effettuare analisi di ogni tipo o di migliorare ulteriormente le performance delle interrogazioni, i server OLAP (database multidimensionali) possono precalcolare le possibili combinazioni analitiche e memorizzarle fisicamente in un file binario (con esplosione delle dimensioni), tool di analisi appositi possono interrogare i dati sfruttando puntatori che indicano la posizione del dato precalcolato anziché attendere i tempi di elaborazione del motore database. I server OLAP possono memorizzare i dati con diverse modalità utilizzando strutture relazionali (ROLAP) o multidimensionali (MOLAP), per database smisurati (centinaia di giga) spesso si utilizza una modalità ibrida (HOLAP). Architettura per il Data Warehousing Monitoraggio e Amministrazione Metadati Analisi dimensionali Sorgenti esterne Base dati operazionali ETL Enterprice Data Warehouse ETL Visualizzazioni Data mining Sorgenti dei dati Data Mart Strumenti di analisi Data mart Un Data mart è un raccoglitore di dati specializzato in un particolare soggetto. Contiene un'immagine dei dati che permette di formulare strategie sulla base degli andamenti passati. Collocato a valle di un DWH, è alimentato a partire da esso, di cui costituisce, in pratica, un estratto. Detto in termini più tecnici, un DM è un sottoinsieme logico o fisico di un DWH di maggiori dimensioni. La differenza fondamentale consiste nel fatto che la creazione del Data warehouse avviene in maniera generalizzata per poi venire incontro alle specifiche esigenze, mentre il Data mart viene generalmente creato per venire incontro ad un'esigenza specifica e già determinata. La necessità di creare un sistema separato per il DM rispetto al DWH può riassumersi nelle seguenti motivazioni: La necessità di utilizzare un diverso schema. Migliorare le performance separando il computer dedicato. Garantire una maggiore sicurezza dovendo autorizzare l'accesso ad un insieme minore di dati Progettazione di un DWH [1\2] La progettazione di una DWH è diversa da quella di una DB operazionale; alcuni elementi da considerare in fase d’analisi sono sicuramente: Limitata frammentazione (denormalizzazione): l’analisi ha bisogno di una visione sintetica dei dati Nella progettazione sarà importante mettere in evidenza gli aspetti comuni Bisogna associare a ciascuna entità un significato che corrisponda all’intuizione dell’utente Fondamentale il ruolo dei metadati nel guidare all’uso del sistema Attività principali: analisi delle sorgenti informative esistenti integrazione progettazione (concettuale, logica e fisica) Progettazione di un DWH [2\2] Requisiti dell’utenza Basi dati aziendali Altre sorgenti informative Analisi Selezione delle sorgenti informative Traduzione di un modello concettuale comune Analisi delle sorgenti informative Integrazione Integrazione di schemi concettuali Progettazione Progettazione concettuale Progettazione logica Progettazione fisica Strumenti utili al ciclo di vita di un DWH Strumenti per la qualita’ dei dati: per la migrazione Trasformano e riformattano i dati dalle diverse fonti per la pulizia (scrubbing) Usano la conoscenza del dominio per pulire e omogeneizzare es. <jerry l. jonson, 16 clarke st., altuna, pa> = <gerry l. johnson, 16 clark street, altoona, penn> ??? per il controllo (auditing) Scoprono regole e relazioni tra i dati e ne verificano il rispetto Strumenti per il caricamento dei dati verificano violazioni di integrità referenziale; ordinano, aggregano, costruiscono dati derivati ,indici e altri percorsi di accesso. L’integrazione delle sorgenti informative ha prodotto una descrizione globale del patrimonio informativo aziendale. Questo è però solo il risultato dell’integrazione di dati operazionali e non descrive necessariamente tutti i dati di interesse per il DWH. La progettazione di un DWH comprende tre fasi: concettuale completare la rappresentazione dei concetti dimensionali necessari per l’analisi ad esempio, dati storici e geografici logica identificare il miglior compromesso tra la necessità di aggregare i dati e quella di normalizzarli fisica individuare la distribuzione dei dati e le relative strutture di accesso Strategie di progetto Approccio top-down: Interessante perché garantisce la coerenza interna del progetto Spesso fallimentare perché impresa lunga e ardua che scoraggia l’utenza L’analisi contemporanea di tutte le fonti informative è compito molto complesso La previsione contemporanea delle esigenze informative di tutti gli utenti è difficile e rischia di paralizzare il processo Approccio bottom-up: Costruzione incrementale assemblando più data mart Si abbina a tecniche di prototipazione veloce Incoraggia l’utenza che vede velocemente il prodotto operativo Data mining La Statistica, il campo della matematica applicata connesso con l'analisi dei dati, può essere definita altrimenti come "estrazione di informazioni utili da insiemi di dati". Il concetto di data mining è analogo. L'unica differenza è che questa recente disciplina ha a che fare con cospicui insiemi di dati. In sostanza il data mining è l’analisi matematica eseguita su database di grandi dimensioni". Il termine data mining è diventato popolare nei tardi anni '90 come versione abbreviata della definizione appena esposta. Oggi il data mining ha una duplice valenza: Estrazione, con tecniche analitiche all'avanguardia, di informazione implicita, nascosta, da dati già strutturati, per renderla disponibile e direttamente utilizzabile; Esplorazione ed analisi, eseguita in modo automatico o semiautomatico, su grandi quantità di dati allo scopo di scoprire pattern (schemi) significativi. In entrambi i casi i concetti di informazione e di significato sono legati strettamente al dominio applicativo in cui si esegue data mining, in altre parole un dato può essere interessante o trascurabile a seconda del tipo di applicazione in cui si vuole operare. Architettura DWH – B.I. Sistemi di Strategic Performance Management Modelling, costruzione Data Mining scenari e simulazioni (Knowledge discovery) Analisi multidimensionale ed Interrogazione puntuale del interattiva dei dati (Sist. OLAP) DB e report DataMart Produzione DataMart Marketing DataMart … Metadati Data Warehouse Altri sistemi di tipo operativo Strumento di Estrazione, Trasformazione, Caricamento e Modellazione dei Dati (ETL tools) Sistemi gestionali (Tradizionali o ERP) (Sistemi OLTP) Produzione Distribuzione Marketing … Sistemi esterni (Portali, DB, ecc) Ricapitolando Un DWH è un sistema di Business Intelligence basato su una base dati relazionale. Si tratta di una base dati separata rispetto al sistema gestionale, strutturata per contenere una replica parziale del sistema informativo aziendale in un formato che renda ottimale l’analisi delle informazioni. Viene adottando per rispondere a queste esigenze: Trasformare i dati in informazioni Informazioni giuste al momento giusto alle persone giuste Integrazioni tra fonti dati eterogenee Elevata profondità storica e Indipendenza dai sistemi sorgente Pulizia dei dati e Certificazione dei dati a tutti i livelli Gestione per eccezioni dei processi aziendali