Governo Digitale a.a. 2011/12 I sistemi di supporto alle decisioni ed il Data Warehouse Emiliano Casalicchio
Agenda Introduzione i sistemi di supporto alle decisioni Data warehouse proprietà architettura generale rappresentazione multidimesionale dei dati architettura dettagliata
Introduzione Sistemi di supporto alle decisioni, sistemi gestionali e data warehouse
Motivazioni I sistemi informatici permettono di aumentare la produttività delle organizzazioni automatizzandone la gestione operativa quotidiana I dati se opportunamente accumulati e analizzati possono essere utilizzati per la pianificazione e il supporto alle decisioni Una corretta gestione dei dati storici può essere occasione di un grande vantaggio competitivo
I sistemi di supporto alle decisioni Le organizzazioni investono tempo e danaro sui sistemi informativi per le operazioni (operational systems) che gestiscono le informazioni necessarie all operatività. Le informazioni sono un asset dell organizzazione che deve essere gestito ed utilizzato a fini competitivi. Per supportare le decisioni strategiche l organizzazione si dota di sistemi di supporto alle decisioni (DSS) costruiti su insiemi di informazioni rivolte a tali attività.
I sistemi di supporto alle decisioni I DSS costituiscono la tecnologia che supporta la dirigenza aziendale nel prendere decisioni tatticostrategiche in modo efficace e veloce, mediante particolari tipologie di elaborazione (per esempio OLAP) Ma su quali dati? le informazioni gestionali, dati storici e dati statistici
Esempio le vendite di pannolini per neonati del venerdì sera risultavano rappresentare una cospicua percentuale rispetto a quelle dell'intera settimana. Perché? i principali acquirenti erano giovani uomini d'affari, che acquistavano una scorta di pannolini per il fine settimana, mentre tornavano a casa dal lavoro allestire nel proprio negozio un reparto con birre nazionali e di importazione in offerta speciale accanto alla corsia dei pannolini 04 Aprile 2012 Emiliano Casalicchio (C) -- emiliano.casalicchio@uniroma2.it
Tipiche richieste Qual è il volume delle vendite per regione e categorie di prodotto durante l ultimo anno? Come si correlano i prezzi delle azioni delle società produttrici di hardware con i profitti trimestrali degli ultimi 10 anni? Quali sono stati i volumi di vendita dello scorso anno per regione e categoria di prodotto? In che modo i dividendi di aziende di hardware sono correlati ai profitti trimestrali negli ultimi 10 anni?
Data warehouse, Sistemi gestionali e DSS I sistemi gestionali sono caratterizzati da applicazioni basate su transazioni: strutturate, Ripetitive, normalmente brevi si tratta del On Line Transaction Processing (OLTP). I sistemi di supporto decisionale sono caratterizzati da interrogazioni che riguardano grandi moli di dati, spesso complesse si tratta del On Line Analytical Processing (OLAP). Un Data Warehouse integra le informazioni gestionali, i dati storici e I dati statistici al fine di supportare le decisioni attraverso apposite applicazioni, funzioni di report, funzioni di accesso ai dati
Il data warehouse e DSS Un Data Warehouse mette a disposizione un database che stà alla base dei sistemi di supporto decisionale. I database gestionali sono disegnati per automatizzare le attività giornaliere, per ottimizzare l input dei dati, in modo sicuro rapido ed efficiente. Il data warehouse è disegnato per aiutare gli utilizzatori a prendere le migliori decisioni attraverso l analisi delle informazioni consolidate dell organizzazione, contiene informazioni riferite ad uno specifico momento temporale, le serie storiche delle informazioni caratterizzanti dell azienda. è finalizzato alle attività di comparazione, analisi e verifica degli andamenti passati e futuri (treds) (ad esempio la comparazione delle vendite tra differenti aree territoriali, oppure la dinamica temporale delle vendite di un prodotto).
Analisi vs Gestione I dati gestionali sono costantemente in fase di aggiornamento e quindi altamente volatili. I dati analitici (contenuti nel DW) sono statici o poco volatili (ad esempio il totale dei prodotti venduti alla fine del giorno precedente), permangono e vengono aggiornati secondo procedure predefinite. Normalmente readonly I database gestionali sono progettati per: inserire e memorizzare dati, aggiornare dati esistenti, controllare transazioni, produrre reports, mantenere l integrità dei dati, gestire le transazioni. I database deputati al controllo (DW) sono progettati per: grandi volumi di dati in sola lettura per l utilizzo ai fini decisionali, decisioni strategiche (lungo termine) analizzando serie temporali, tattiche (breve termine) analizzando e variando fotografie (riferite allo stato attuale) di dati quantitativi.
Data Warehouse Proprietà
Tipi di elaborazione Nei Transaction Processing Systems: On-Line Transaction Processing Nei Decision Support Systems: On-Line Analytical Processing
OLTP Tradizionale elaborazione di transazioni, che realizzano i processi operativi dell azienda-ente Operazioni predefinite, brevi e relativamente semplici Ogni operazione coinvolge pochi dati Dati di dettaglio, aggiornati Le proprietà acide (atomicità, correttezza, isolamento, durabilità) delle transazioni sono essenziali
OLAP Elaborazione di operazioni per il supporto alle decisioni Operazioni complesse e casuali Ogni operazione può coinvolgere molti dati Dati aggregati, storici, anche non attualissimi Le proprietà acide non sono rilevanti, perché le operazioni sono di sola lettura
OLTP e OLAP OLTP OLAP Utente impiegato dirigente Funzione operazioni giornaliere supporto alle decisioni Progettazione orientata all'applicazione orientata ai dati Dati correnti, aggiornati, dettagliati, relazionali, omogenei storici, aggregati, multidimensionali, eterogenei Uso ripetitivo casuale Accesso read-write, indicizzato read, sequenziale Unità di lavoro transazione breve interrogazione complessa Record acc. decine milioni N. utenti migliaia centinaia Dimensione 100MB - 1GB 100GB - 1TB Metrica throughput tempo di risposta
OLTP e OLAP I requisiti sono quindi contrastanti Le applicazioni dei due tipi possono danneggiarsi a vicenda
Separazione degli ambienti OLTP OLAP Base di dati Data Warehouse APPLICAZIONE OLTP APPLICAZIONE OLAP UTENTI FINALI (Transazioni) ANALISTI (Query complesse) 04 Aprile 2012 Emiliano Casalicchio (C) -- emiliano.casalicchio@uniroma2.it
Data warehouse Una base di dati utilizzata principalmente per il supporto alle decisioni direzionali integrata aziendale e non dipartimentale con dati storici con un ampio orizzonte temporale, e indicazione (di solito) di elementi di tempo con dati usualmente aggregati per effettuare stime e valutazioni fuori linea i dati sono aggiornati periodicamente mantenuta separatamente dalle basi di dati operazionali
... integrata... I dati di interesse provengono da tutte le sorgenti informative ciascun dato proviene da una o più di esse Il data warehouse rappresenta i dati in modo univoco riconciliando le eterogeneità dalle diverse rappresentazioni nomi struttura codifica rappresentazione multipla
... dati storici... Le basi di dati operazionali mantengono il valore corrente delle informazioni L orizzonte temporale di interesse è dell ordine dei pochi mesi Nel data warehouse è di interesse l evoluzione storica delle informazioni L orizzonte temporale di interesse è dell ordine degli anni
... dati aggregati... Nelle attività di analisi dei dati per il supporto alle decisioni non interessa chi ma quanti non interessa un dato ma la somma, la media, il minimo e il massimo,... di un insieme di dati Le operazioni di aggregazione sono quindi fondamentali nel warehousing e nella costruzione/mantenimento di un data warehouse.
... fuori linea... In una base di dati operazionale, i dati vengono acceduti inseriti modificati Cancellati pochi record alla volta Nel data warehouse, abbiamo operazioni di accesso e interrogazione diurne operazioni di caricamento e aggiornamento dei dati notturne che riguardano milioni di record
...Due ritmi diversi... Uso bimodale: 16-22 ore al giorno usati per attività di interrogazione 2-8 ore al giorno per caricamento, indicizzazione, controllo qualità e pubblicazione
... una base di dati separata... Diversi motivi: non esiste un unica base di dati operazionale che contiene tutti i dati di interesse la base di dati deve essere integrata non è tecnicamente possibile fare l integrazione in linea i dati di interesse sarebbero comunque diversi devono essere mantenuti dati storici e aggregati l analisi dei dati richiede per i dati organizzazioni speciali e metodi di accesso specifici degrado generale delle prestazioni senza la separazione
Data warehouse Architettura
Architettura per il data warehousing Metadati Sorgenti esterne Analisi dimensionale Basi di dati operazionali Data Warehouse Data Mart Data mining Sorgenti dei dati Strumenti di analisi 04 Aprile 2012 Emiliano Casalicchio (C) -- emiliano.casalicchio@uniroma2.it
Sorgenti informative i sistemi operazionali dell organizzazione sono sistemi transazionali (OLTP) orientati alla gestione dei processi operazionali non mantengono dati storici ogni sistema gestisce uno o più soggetti (ad esempio, prodotti o clienti) sono spesso sistemi legacy sorgenti esterne ad esempio, dati forniti da società specializzate Sorgenti esterne Basi di dati operazionali Sorgenti dei dati
Alimentazione del data warehouse Attività necessarie ad alimentare un data warehouse estrazione accesso ai dati nelle sorgenti pulizia rilevazione e correzione di errori e inconsistenze nei dati estratti trasformazione trasformazione di formato, correlazione con oggetti in sorgenti diverse caricamento con introduzione di informazioni temporali e generazione dei dati aggregati
Architettura per il data warehousing Metadati Sorgenti esterne Analisi dimensionale Basi di dati operazionali Data Warehouse Data Mart Data mining Sorgenti dei dati Strumenti di analisi 04 Aprile 2012 Emiliano Casalicchio (C) -- emiliano.casalicchio@uniroma2.it
Metadati "Dati sui dati": descrizioni logiche e fisiche dei dati (nelle sorgenti e nel DW) corrispondenze e trasformazioni dati quantitativi I metadati sono informazioni mantenute a supporto dell'attività di alimentazione del DW
Architettura per il data warehousing Metadati Sorgenti esterne Analisi dimensionale Basi di dati operazionali Data Warehouse Data Mart Data mining Sorgenti dei dati Strumenti di analisi 04 Aprile 2012 Emiliano Casalicchio (C) -- emiliano.casalicchio@uniroma2.it
Data Warehouse Server Sistema dedicato alla gestione warehouse Può basarsi su diverse tecnologie ROLAP (Relational OLAP) i dati sono memorizzati in DBMS relazionali (schemi a stella) MOLAP (Multidimensional OLAP) I dati sono memorizzati in forma multidimensionale tramite speciali strutture dati tipicamente proprietarie (CUBE) i produttori di RDBMS stanno iniziando a fornire estensioni OLAP ai loro prodotti
MOLAP vs ROLAP + Migliori prestazioni in termini di query per via del storage ottimizzato, indicizzazione multidimesionale e caching + Dimensioni ridotte su disco (rispetto ROLAP) + Estrazione dati efficiente mediante aggregazione dati pre-strutturata ed indicizzazione - Caricamento lento per grandi volumi di dati - Problemi di interrogazione ed aggiornamento per elevato numero di dimensioni (>10) + scalabile sia rispetto al volume di dati che al numero di dimensioni + Tempo di Estrazione, Trasformazione e Caricamento particolarmente veloce - Necessità di tool ETL dedicati per il caricamento di tabelle aggregate - Estrazione dati meno efficiente a causa di mancanza di strumenti specifici per l indicizzazione
Architettura per il data warehousing Metadati Sorgenti esterne Analisi dimensionale Basi di dati operazionali Data Warehouse Data Mart Data mining Sorgenti dei dati Strumenti di analisi 04 Aprile 2012 Emiliano Casalicchio (C) -- emiliano.casalicchio@uniroma2.it
Data mart Un sottoinsieme logico dell intero data warehouse un data mart è la restrizione del data warehouse a un singolo problema di analisi un data warehouse è l unione di tutti i suoi data mart un data mart rappresenta un progetto fattibile la realizzazione diretta di un data warehouse completo non è invece solitamente fattibile Esempi di datamart Dip. Vendite, distribuzione, finanza, management Compartimentazione geografica di unità di business relativamente autonome (o BU indipendenti) Ogni DataMart contribuisce al data warehouse master
Architettura per il data warehousing Metadati Sorgenti esterne Analisi dimensionale Basi di dati operazionali Data Warehouse Data Mart Data mining Sorgenti dei dati Strumenti di analisi 04 Aprile 2012 Emiliano Casalicchio (C) -- emiliano.casalicchio@uniroma2.it
Strumenti di analisi Consentono di effettuare analisi dei dati utilizzando il Data Warehouse server e offrono interfacce amichevoli per presentare, in forma adeguata e facilmente comprensibile, i risultati delle analisi Due principali tipologie di analisi (e quindi di strumenti) Analisi multidimensionale Data mining
Data Mining l'estrazione di una conoscenza a partire da grandi quantità di dati (attraverso metodi automatici o semi-automatici) 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. che cosa non è "data mining"? Cercare un numero di telefono nell'elenco; Fare una ricerca in Internet su "vacanze alle Maldive". Che cosa è "data mining"? Scoprire che alcuni cognomi (Benetton, Troncon, Cavasin) sono molto comuni in specifiche aree dell'italia; Fare una ricerca nel web su una parola chiave e classificare i documenti trovati secondo un criterio semantico (p. es. "corriere": nome di giornale, professione, ecc.)
Variante dell architettura Monitoraggio & Amministrazione Metadati Sorgenti esterne Analisi dimensionale Basi di dati operazionali Data mining Sorgenti dei dati Data Mart Strumenti di analisi 04 Aprile 2012 Emiliano Casalicchio (C) -- emiliano.casalicchio@uniroma2.it
Rappresentazione multidimensionale dei dati
Rappresentazione multidimensionale L analisi dei dati avviene rappresentando i dati in forma multidimensionale Concetti rilevanti: fatto un concetto sul quale centrare l analisi misura una proprietà atomica di un fatto dimensione descrive una prospettiva lungo la quale effettuare l analisi Esempi di fatti/misure/dimensioni vendita/quantità venduta,incasso/prodotto,tempo telefonata/costo,durata/chiamante,chiamato,tempo
Rappresentazione multidimensionale dei dati Misura Luogo (negozio) Roma-1 Milano-2 Milano-1 Roma-2 Fatto: Vendita Lettori DVD Quantità Televisori Lettori CD Articolo (prodotto) Tempo (trimestre) 1 trim. 2003 2 trim. 2003 3 trim. 2003 4 trim. 2003 Videoregistratori Dimensione
Dimensioni e gerarchie di livelli regione anno provincia categoria marca trimestre città negozio Luogo prodotto Articolo mese giorno Tempo 04 Aprile 2012 Emiliano Casalicchio (C) -- emiliano.casalicchio@uniroma2.it
Operazioni su dati multidimensionali Slice & dice seleziona e proietta Roll up (o drill up) aggrega i dati volume di vendita totale dello scorso anno per categoria di prodotto e regione Drill down disaggrega i dati per una particolare categoria di prodotto e regione, mostra le vendite giornaliere dettagliate per ciascun negozio (Pivot re-orienta il cubo)
Slice and dice Il manager regionale esamina la vendita dei prodotti in tutti i periodi relativamente ai propri mercati Il manager finanziario esamina la vendita dei prodotti in tutti i mercati relativamente al periodo corrente e quello precedente Luogo Articolo Tempo Il manager di prodotto esamina la vendita di un prodotto in tutti i periodi e in tutti i mercati Il manager strategico si concentra su una categoria di prodotti, una area e un orizzonte temporale 04 Aprile 2012 Emiliano Casalicchio (C) -- emiliano.casalicchio@uniroma2.it
Risultato di Slice and dice Quantità Milano-2 Milano-1 Roma-2 Roma-1 1 trim. 2003 2 trim. 2003 3 trim. 2003 4 trim. 2003 Lettori DVD Televisori Lettori CD Videoregistratori
Roll-up Quantità Milano-2 Milano-1 Roma-2 Roma-1 1 trim. 2003 2 trim. 2003 3 trim. 2003 4 trim. 2003 Lettori DVD Televisori Lettori CD Videoregistratori
Altra operazione di roll-up Quantità Milano-2 Milano-1 Roma-2 Roma-1 1 trim. 2003 2 trim. 2003 3 trim. 2003 4 trim. 2003 Lettori DVD Televisori Lettori CD Videoregistratori
Visualizzazione dei dati I dati vengono infine visualizzati in veste grafica, in maniera da essere facilmente comprensibili. Si fa uso di: tabelle istogrammi grafici torte superfici 3D bolle
Visualizzazione finale di un analisi 1000 900 800 700 600 500 400 300 200 100 0 3 trim.2003 2 trim.2003 4 trim.2003 Lettori DVD Televisori Lettori CD Videoregistratori 1 trim.2003
I modelli multidimensionali Vari modelli multidimensionali: modello a stella modello a costellazione di fatti modello a fiocco di neve (snowflake) possono essere implementati in sistemi relazionali sistemi multidimensionali sistemi ad oggetti In genere: implementazione diretta in DBMS relazionali
Lo schema dimensionale tabella fatti, una tabella principale che memorizza i fatti misurabili di un processo (i fatti più comuni sono numerici, continui, e additivi) identificano l attività principale e sono caratterizzati dai dati di dettaglio che si desidera analizzare due o più tabelle dimensione: tabelle che rappresentano una dimensione rispetto la quale è interessante analizzare i fatti (gli attributi sono solitamente testuali, discreti e descrittivi) Sono i parametri che influenzano i dati di dettaglio e rispetto ai quali si analizzano tali dati
Le dimensioni Le dimensioni utilizzate sono spesso le stesse in vari contesti applicativi: tempo collocazione geografica organizzazione clienti il numero di attributi per ogni dimensione è in genere molto elevato (anche nell ordine del centinaio)
Tempo CodiceTempo Giorno Mese Trimestre Anno Luogo CodiceLuogo Negozio Indirizzo Città Provincia Regione Schema a stella Vendite CodiceTempo CodiceLuogo CodiceArticolo CodiceCliente Quantità Incasso Articolo CodiceArticolo Descrizione Marca CodiceCategoria Categoria Cliente CodiceCliente Nome Cognome Sesso Età Professione 04 Aprile 2012 Emiliano Casalicchio (C) -- emiliano.casalicchio@uniroma2.it
Una possibile istanza 04 Aprile 2012 Emiliano Casalicchio (C) -- emiliano.casalicchio@uniroma2.it
Caratteristiche di uno schema dimensionale Una tabella dimensione memorizza i membri di una dimensione la chiave primaria è semplice gli altri campi memorizzano i livelli della dimensione tipicamente denormalizzata La tabella fatti memorizza le misure (fatti) di un processo la chiave è composta da riferimenti alle chiavi di tabelle dimensione gli altri campi rappresentano le misure è in BCNF