Corso di informatica Introduzione a data warehousing e OLAP La Value chain Information X vive in Z S ha Y anni X ed S hanno traslocato Data W ha del denaro in Z Stile di vita Punto di vendita Dati demografici Dati geografici Knowledge Una quantità Y del prodotto A è usata per lo più nella regione Z I clienti di classe Y usano x% di C durante il periodo D Decision Promuoviamo il prodotto A nei negozi della regione Z Spediamo i cataloghi alle famiglie di profilo P Offriamo dei servizi addizionali ai clienti C
Decision Support Systems Domande tipiche Quante sono le unità vendute per ogni promozione effettuata nel 1997? Qual è l incremento mensile dei profitti per ogni categoria di prodotto? Come sono incrementate le vendite di prodotti alcolici nel Canada rispetto alle vendite negli USA nel 1998? Data Warehouse Database per il supporto alle decisioni, mantenuto separatamente dal database operazionale subject-oriented integrated time-variant non-volatile Supporta l information analysis fornendo una piattaforma di dati storici consolidati
Data Warehouse Subject-Oriented Orientato alle aree dell attività di principale interesse E.g., in una compagnia d assicurazione: cliente, prodotti, attività, polizza, denuncia, conto, ecc. Applicazioni e database operazionali possono essere organizzati deversamente E.g., basati sul tipo d assicurazione: auto, vita, incendi-furti, ecc. Data Warehouse - Integrated Ci possono essere inconsistenze nella codifica, rappresentazione, ecc. tra sorgenti differenti di dati Le inconsistenze sono eliminate nel warehouse
Data Integration Da sorgenti eterogenee a data repositories consolidati RDBMS Legacy DBMS Flat Files External Data Consolidation and Cleaning Warehouse Object/Relation DBMS Multidimensional DBMS Deductive Database Flat files Data Warehouse - Non-Volatile I dati operazionali sono regolarmente acceduti e manipolati una tupla alla volta L update di dati operazionali viene fatto nello stesso ambiente operazionale I dati in un warehouse sono caricati un unica volta Non si può fare aggiornamento
Data Warehouse Time-Variant La struttura di un data warehouse contiene quasi sempre la dimensione temporale DB operazionali contengono valori correnti Un data warehouse contiene una serie di istantanee, prese in momenti differenti nel tempo La dimensione temporale dei dati è molto ampia Data Warehouse vs. Operational DBMS OLTP (On Line Transactional Processing) Esempi market: inserisci un ordine nel database, aggiornando lo stato dell ordine nel tempo banking: trasferisci $100 dal conto XXX al conto YYY dati fortemente dinamici attività strutturate e ripetitive transazioni corte lettura e/o aggiornamento di poche tuple isolamento, recovery ed integrità sono critici OLAP (On Line Analytical Processing) Operazione principale di un data warehouse Data analysis e decision making
OLTP vs. Decision Support OLAP: On-Line Analytical Processing Visione multidimensionale dei dati Analisi interattiva Modellazione analitica: derivazione delle proporzioni, delle varianze, etc. Aggregazioni per ogni intersezione di ogni dimensione Previsione, trend analysis, e statistical analysis Visualizzazione di dati in 2D o 3D
Modello multidimensionale Un datawarehouse si basa sul modello di dati multidimensionale Matrici multidimensionali In un cubo (data cube) i dati sono rappresentati in dimensioni multiple intorno ad un soggetto centrale (fatti) Dimensioni Misure Tre categorie di misure distributive: calcolo incrementale E.g., count(), sum(), min(), max() algebriche: risultato di una funzione algebrica di n argomenti in cui ogni argomento è un aggregato E.g., avg(), standard_deviation() olistiche: non c e un limite costante nel numero di elementi necessari per definirle a partire da un sottoaggregato E.g., median(), mode()
Dimensioni, livelli, gerarchie all all region Europe... North_America country Germany... Spain Canada... Mexico city Frankfurt... Vancouver... Toronto office L. Chan... M. Wind Multidimensional data Sales come funzione di product, month, e region Industry Region Year Category Country Quarter City Month Week Office Day Month
Pre-aggregazione Store Pisa Roma Firenze sum Milk Bread Orange... sum All s January 96, Pisa. Jan 96 Feb 96... Time sum Gerarchie ed aggregati L idea delle gerarchie é di aggregare automaticamente i dati di interesse quando ci si focalizza su un livello se ci concentriamo su mese i fatti rappresentano i totali delle vendite per ogni mese Possiamo concentrarci su diversi livelli della gerarchia in dimensioni diverse vendite mensili per regione di ogni prodotto
Operazioni tipiche Roll up: riassumi i dati: passa da un livello di dettaglio alto ad un livello basso il volume totale di vendite per categoria di prodotto e per regione Roll down, drill down, drill through: passa da un livello di dettaglio basso ad un livello alto per un particolare prodotto, trova le vendite dettagliate per ogni venditore e per ogni data Slice and dice: select & project Vendite delle bevande nel West negli ultimi 6 mesi Pivot: riorganizza il cubo Operazioni tipiche: Slice and Dice Slice Month Month
Operazioni tipiche: Roll-Up Roll-up Year Roll-up Year Drill-Down Month Drill-Down Data Mining Automated Exploration/Discovery Clustering Association Rules Prediction/Classification Inductive Decision Trees Regression Reti neurali Algoritmi genetici Explanation/Description Inductive Decision Trees Rule systems
Approcci Verification-Driven Metodologie Analisi passiva, atta a verificare se un certo modello (ipotesi) è coerente con i dati a disposizione L ipotesi o il modello sono formulati dall utente sulla base della sua esperienza Approcci Discovery-Driven Analisi attiva, in cui i dati stessi suggeriscono possibili ipotesi sul significato del loro contenuto Individuazione di fatti significativi, relazioni, tendenze, pattern, associazioni, eccezioni e anomalie, che sfuggono all analisi manuale per la loro complessità