Introduzione al Data Warehousing

Documenti analoghi
Introduzione al Data Warehousing

Introduzione al Data Warehousing

Il modello multidimensionale. Per le slides si ringrazia il Prof. Stefano Rizzi ( e il Dott.

Sistemi Informativi Avanzati

Sistemi Informativi Avanzati

Architetture di Data Warehouse. PDF created with pdffactory trial version

Sistemi Informativi L. Corso di Laurea in Ingegneria dei Processi Gestionali A.A. 2003/2004. Docente: Prof. Wilma Penzo

Data warehouse Introduzione

Data Warehousing e Business Intelligence

Data warehouse Introduzione

Introduzione al Data Warehousing

Business Intelligence & Data Warehousing

Data warehouse: introduzione

Il Dimensional Fact Model

Sistemi Informativi Avanzati

PERCHÉ LA BUSINESS INTELLICENCE

Indice. Prefazione. Capitolo 1 Introduzione al data warehousing 1

Lezione 2. Dati e Architetture per il Data Warehousing ETL

Basi di dati attive. Una base di dati è ATTIVA quando consente la definizione e la gestione di regole di produzione (regole attive o trigger).

Estensioni del linguaggio SQL per interrogazioni OLAP

Sistemi Informativi Avanzati Anno Accademico 2013/2014 Prof. Domenico Beneventano. Archi multipli

Sistemi Informativi Aziendali. Sistemi Informativi Aziendali. Sistemi Informativi Aziendali

Sistemi di Elaborazione dell Informazione

Sistemi Informativi Avanzati Anno Accademico 2012/2013 Prof. Domenico Beneventano. Archi multipli

Business Intelligence HR

Basi di Dati Direzionali

Data warehouse Introduzione

I sistemi di reporting e i rapporti direzionali

Corso di basi di dati Fascicolo T04b Nota: i primi lucidi sostituiscono alcuni già proposti, in altro ordine e ccon qualche differenza, nel fascicolo

I DATI E LA LORO INTEGRAZIONE 63 4/001.0

Prof. Giorgio Poletti

Modellazione concettuale

Data warehousing Mario Guarracino Laboratorio di Sistemi Informativi Aziendali a.a. 2006/2007

Sistemi Informativi Avanzati Anno Accademico 2011/2012 Prof. Domenico Beneventano SCENARI TEMPORALI

Architetture Evolute nei Sistemi Informativi. architetture evolute 1

Data Warehousing. Sommario. Luca Cabibbo, Riccardo Torlone, Paolo Atzeni. Processi. Processi, dati e decisioni. Processi presso una banca

Data warehouse Progettazione

Data Warehousing e Data Mining

Data warehouse Progettazione

Funzione primaria del sistema informativo Supportare chi fa funzionare l azienda attraverso la propria attività Supporto necessario in aree diverse,

Analysis Service. Dutto Riccardo IPSI - tel Dutto Riccardo - SQL Server 2008.

Analisi dei dati. analisi dei dati 1

SISTEMI INFORMATIVI DIREZIONALI BUSINESS INTELLIGENCE

Il ciclo di sviluppo del Data Warehouse

DATA WAREHOUSING CON JASPERSOFT BI SUITE

Prof. Giorgio Poletti

Data warehouse Progettazione

PROGRAMMAZIONE CLASSE: 4A-4B-4I DISCIPLINA: INFORMATICA A.S. 2016/17

Fondamenti di Informatica e Programmazione

INTRODUZIONE AI DBMS. Inoltre i fogli elettronici. Mentre sono poco adatti per operazioni di. Prof. Alberto Postiglione

INTRODUZIONE AI DBMS

SISTEMI INFORMATIVI AZIENDALI

Dall intuizione alla conoscenza

UTILIZZO DEI SISTEMI INFORMATIVI PER IL SUPPORTO DELLE DECISIONI ARCHITETTURA DI RIFERIMENTO

Architetture per l analisi dei dati

Pentaho: una soluzione Open per la progettazione e sviluppo di Data Warehouse

Redazione e Presentazione di Progetti Informatici

SISTEMI INFORMATIVI E DATABASE

Datawarehouse. Proge.azione logica

Data Warehousing. Argomenti della lezione. Rappresentazioni dei dati. Rappresentazione dei dati. Parte II Analisi multidimensionale

Data Warehousing. Esercitazione 2

Sistema Informativo Statistico Regione Campania

Corso integrato di Sistemi di Elaborazione. Modulo I. Prof. Crescenzio Gallo.

Informatica per le Scienze Umane. Introduzione al corso: programma dettagliato

Bibliografia. INFORMATICA GENERALE Prof. Alberto Postiglione. Scienze della Comunicazione Università di Salerno. Definizione di DB e di DBMS

Le basi di dati. Definizione 1. Lezione 2. Bisogna garantire. Definizione 2 DBMS. Differenza

Un arco multiplo corrisponde ad un associazione molti-a-molti: il padre (libro) non determina funzionalmente il figlio (autore)

Nella vita quotidiana esistono innumerevoli esempi di database. Un agenda telefonica, un vocabolario o un catalogo di viaggi, sono tutti esempi di

Data Warehousing (DW)

Data warehousing Mario Guarracino Data Mining a.a. 2010/2011

BASI DI DATI. basi di dati - introduzione ai sistemi informativi 1

BASI DI DATI E UTENTI DI BASI DI DATI

Introduzione alle Basi di Dati

SISTEMI INFORMATIVI AZIENDALI. introduzione ai sistemi informativi 1

SQL Server Business Intelligence Development Studio. SQL Server BI Development Studio. SQL Server BI Development Studio *Analysis Services*

SQL Server Business Intelligence Development Studio

! Un arco multiplo corrisponde ad un associazione molti-a-molti: il padre (libro) non determina funzionalmente il figlio (autore)

INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione Università degli Studi di Salerno GESTIONE DEI DATI

A. Ferrari introduzione alle basi di dati

Data warehousing e OLAP (tratti da slides di C.Renso e C.Gozzi)

Data Warehouse Architettura e Progettazione

Funzione primaria del sistema informativo Supportare chi fa funzionare l azienda attraverso la propria attività Supporto necessario in aree diverse,

Fondamenti di Informatica A. A / 1 9

PROGRAMMAZIONE DIDATTICA DI DIPARTIMENTO A.S. 2017/2018

Informatica per le Scienze Umane. Introduzione al corso: programma

Basi di Dati. Corso di Laurea in Informatica Corso B A.A. 2015/16. Dr. Claudia d'amato. Dipartimento di Informatica, Università degli Studi Bari

Elena Baralis 2007 Politecnico di Torino 1

Introduzione D B M G

Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS

Elena Baralis 2007 Politecnico di Torino 1

Introduzione data warehose. Gian Luigi Ferrari Dipartimento di Informatica Università di Pisa. Data Warehouse

Elena Baralis 2007 Politecnico di Torino 1

Data warehouse Analisi dei dati

INFORMATICA PER LE SCIENZE UMANE a.a. 2016/2017

Corso di. Basi di Dati I. 1. Introduzione

Sistemi informativi D B M G. Introduzione. Introduzione alle basi di dati D B M G 2. Elena Baralis 2007 Politecnico di Torino 1

Rassegna sui principi e sui sistemi di Data Warehousing

ARCHITETTURA DI UN DBMS

Corso di. Basi di Dati I. 1. Introduzione

Transcript:

Sistemi Informativi Avanzati Anno Accademico 2012/2013 Prof. Domenico Beneventano Introduzione al Data Warehousing Molte di queste slide sono state realizzate dal Prof. Stefano Rizzi (http://www-db.deis.unibo.it/~srizzi/) e sono state tratte dal suo libro Data Warehouse - teoria e pratica della Progettazione Autori: Matteo Golfarelli, Stefano Rizzi Editore: McGraw-Hill Business Intelligence! Insieme di attività orientate a estrarre informazioni dai dati di business, solitamente quelli generati dai processi aziendali! Dai dati alle informazioni Per ogni azienda è fondamentale poter disporre in maniera rapida e completa delle informazioni necessarie al processo decisionale: le indicazioni strategiche sono estrapolate principalmente dalla mole dei dati operazionali contenuti nei database aziendali, attraverso un procedimento di selezione e sintesi progressiva. Valore! rapporti! indicazioni strategiche! informazioni selezionate! fonti informative primarie! Quantità! 2

Data Warehousing! Decision Support System insieme di tecniche e strumenti informatici atti a estrapolare informazioni da un insieme di dati memorizzati su supporti elettronici! Tra i sistemi di supporto alle decisioni, l approccio più usato prevede il progetto e la costruzione di un data warehouse a partire dal quale si procede con opportune tecniche di analisi dei dati o di estrazione di utili correlazioni fra i dati! Data Warehousing: Una collezione di metodi, tecnologie e strumenti di ausilio al knowledge worker (dirigente, amministratore, gestore, analista) per condurre analisi dei dati finalizzate all attuazione di processi decisionali e al miglioramento del patrimonio informativo. Introduzione 3 Uno scenario tipico...!.. è quello di una grande azienda, con numerose filiali, i cui dirigenti desiderano quantificare e valutare il contributo dato da ciascuna di esse al rendimento commerciale globale dell impresa. 4

Uno scenario tipico... un raccoglitore di informazioni che integra e riorganizza i dati provenienti da sorgenti di varia natura e li rende disponibili per analisi e valutazioni finalizzate alla pianificazione e al processo decisionale DATA WAREHOUSE 5 Alcune aree di utilità! Commercio (analisi delle vendite e dei reclami, controllo di spedizioni e inventari, cura del rapporto con i clienti)! Manifattura (controllo dei costi di produzione, supporto fornitori e ordini)! Servizi finanziari (analisi del rischio e delle carte di credito, rivelazione di frodi)! Trasporti (gestione parco mezzi)! Telecomunicazioni (analisi del flusso delle chiamate e del profilo dei clienti)! Sanità (analisi di ricoveri e dimissioni, contabilità per centri di costo)!... 6

Le lamentele abbiamo montagne di dati ma non possiamo accedervi! come è possibile che persone che svolgono lo stesso ruolo presentino risultati sostanzialmente diversi? vogliamo selezionare, raggruppare e manipolare i dati in ogni modo possibile! mostratemi solo ciò che è importante! tutti sanno che alcuni dati non sono corretti! R. Kimball, The Data Warehouse Toolkit (www.kimballgroup.com) 7 Caratteristiche del processo di warehousing! accessibilità a utenti con conoscenze limitate di informatica e strutture dati;! integrazione dei dati sulla base di un modello standard dell impresa;! flessibilità di interrogazione per trarre il massimo vantaggio dal patrimonio informativo esistente;! sintesi per permettere analisi mirate ed efficaci;! rappresentazione multidimensionale per offrire all utente una visione intuitiva ed efficacemente manipolabile delle informazioni;! correttezza e completezza dei dati integrati. 8

Il Data Warehouse! Al centro del processo, il data warehouse è un contenitore di dati che si fa garante dei requisiti esposti. # Un Data Warehouse è una collezione di dati di supporto per il processo decisionale che presenta le seguenti caratteristiche: $ è orientata ai soggetti di interesse; $ è integrata e consistente; $ è rappresentativa dell evoluzione temporale; $ non volatile. 9...orientato ai soggetti assistiti calcolo ticket medici di base prenotazioni regioni refertazione gestione ricoveri L accento è sulle applicazioni L accento è sui soggetti 10

...integrato e consistente Dati operazionali ed esterni Il DW si appoggia a più fonti di dati eterogenee: dati estratti dall ambiente di produzione, e quindi originariamente archiviati in basi di dati aziendali, o addirittura provenienti da sistemi informativi esterni all azienda. Di tutti questi dati il DW restituisce una visione unificata. Estrazione Pulitura Validazione Trasformazione Filtraggio Caricamento Data Warehouse 11...rappresentativo dell evoluzione temporale DB operazionali DW Contenuto storico limitato, spesso il tempo non è parte delle chiavi, i dati sono soggetti ad aggiornamenti Ricco contenuto storico, il tempo è parte delle chiavi, una fotografia del dato a un certo istante di tempo non può essere aggiornata 12

...non volatile DB operazionale update load DW access insert delete GARTNER Magic Quadrant for DW DBMS: Small data warehouses Grandi volumi are di less dati: than 5 TB da 20 GB a qualche TB Midsize data warehouses are 5 TB to 20 TB in pochi anni Large data warehouse are greater than 20 TB $ in un DW non si fanno generalmente update e insert quindi non sono necessarie tecniche sofisticate di gestione delle transazioni - come invece richiesto da un sistema operazionale. 13 Le interrogazioni: OLTP e OLAP! OLTP (On-Line Transactional Processing) $ Le interrogazioni eseguono transazioni che leggono e scrivono un ridotto numero di record da diverse tabelle Transazioni, recovery, consistenza (scrittura e/o lettura) Molte operazioni, elevato livello di concorrenza $ Il nucleo sostanziale del carico di lavoro è congelato all interno dei programmi applicativi.! OLAP (On-Line Analytical Processing) $ Le interrogazioni effettuano un analisi multidimensionale che richiede la scansione di un enorme quantità di record per calcolare un insieme di dati numerici di sintesi Operazioni di sola lettura Poche operazioni, basso livello di concorrenza $ L interattività è una caratteristica irrinunciabile delle sessioni di analisi e fa sì che il carico di lavoro effettivo vari continuamente nel tempo. 14

Separazione tra OLTP e OLAP! Mescolare interrogazioni OLAP (analitiche) e OLTP (transazionali) porta a inevitabili rallentamenti che rendono insoddisfatti gli utenti di entrambe le categorie.! L idea di base del Data Warehouse è quella di separare l elaborazione OLAP di tipo analitico da quella OLTP legata alle transazioni! Separazione tra DataBase Operazionale e Data Warehouse 15 DataBase Operazionale e Data warehouse: Database operazionali utenti migliaia carico di lav oro transazioni predefinite a centinaia di record, accesso in lettura e scrittura scopo dipende dall applicazione elementari, dati sia numerici sia alfanumerici integrazione dei dati per applicazione qualità in termini di integrità copertura te mporale solo dati correnti aggiorn amenti continui modello normalizzato per accessi OLTP ottimizzazione su una frazione del database sviluppo a cascata Data warehouse centinaia interrogazioni di analisi ad hoc a milioni di record, per lo pi u in lettura supporto alle decisioni di sintesi, prevalentemente numerici per soggetto in termini di consistenza dati correnti e storici periodici denormalizzato, multidimensionale per accessi OLAP su gran parte del database iterativo 16

Architetture di un DW: requisiti $ Separazione: l elaborazione analitica e quella transazionale devono essere mantenute il più possibile separate. $ Scalabilità: l architettura hardware e software deve poter essere facilmente ridimensionata a fronte della crescita nel tempo dei volumi di dati da gestire ed elaborare e del numero di utenti da soddisfare. $ Estendibilità: deve essere possibile accogliere nuove applicazioni e tecnologie senza riprogettare integralmente il sistema. $ Sicurezza: il controllo sugli accessi è essenziale a causa della natura strategica dei dati memorizzati. $ Amministrabilità: la complessità dell attività di amministrazione non deve risultare eccessiva. Architetture di un DW : tipologie $ Le principali tipologie di architetture per un DW Architettura ad un livello c è solo il DB operazionale, il DW è virtuale Architettura a due livelli DB operazionale DW alimentato dal DB operazionale Architettura a tre livelli DB operazionale DB riconciliato alimentato dal DB operazionale alimentato dal DB riconciliato DW 18

Data Mart (DM)! Collezione di dati rilevante per una particolare area del business, una particolare divisione dell azienda, una particolare categoria di soggetti.! Possibili architetture 1) Il DM è un sottoinsieme e/o aggregazione di dati presenti nel DW! DM dipendente, estratto dal DW 2) Il DM è un sottoinsieme e/o aggregazione di dati presenti nel DB operazionale! DM indipendente, parte del DW, ovvero il DW è l unione dei DM 3) Soluzione ibrida, combinando le precedenti Architetture a 1 livello! Prevede solo i DB operazionali, quindi i dati coincidono con quelli del DB operazionale! DW virtuale (non rispetta la separazione OLTP-OLAP) sorgenti warehouse analisi Dati operazionali Strumenti di reportistica Dati-livello1 Middleware Strumenti OLAP

Architetture a 2 livelli! DM dipendenti alimentati dal DW! I DM dipendenti sono utili : $ come blocchi costruttivi durante la realizzazione incrementale del DW; $ in quanto delineano i contorni delle informazioni necessarie a un particolare tipo di utenti per le loro interrogazioni; $ poiché, essendo di dimensioni inferiori al DW primario, permettono di raggiungere prestazioni migliori sorgenti Alimentaz. warehouse analisi Dati operazionali Data Warehouse! Strumenti di reportistica Strumenti OLAP Dati-livello1 Dati esterni Strumenti ETL Dati-livello2 Data mart Architetture a 2 livelli! DM indipendenti alimentati dalle sorgenti $ L assenza di un DW primario snellisce le fasi progettuali, ma determina uno schema complesso di accessi ai dati e ingenera il rischio di inconsistenze tra i data mart sorgenti Alimentaz. warehouse analisi Dati operazionali Strumenti di reportistica Strumenti OLAP Dati-livello1 Dati esterni Strumenti ETL Dati-livello2 Data mart

Architetture a 2 livelli! Vantaggi: $ A livello del warehouse è continuamente disponibile informazione di buona qualità anche quando, per motivi tecnici oppure organizzativi, è temporaneamente precluso l accesso alle sorgenti $ L interrogazione analitica effettuata sul DW non interferisce con la gestione delle transazioni a livello operazionale, la cui affidabilità è essenziale per il funzionamento dell azienda $ L organizzazione logica del DW è basata sul modello multidimensionale, mentre le sorgenti offrono in genere modelli relazionali o semi-strutturati $ C è una discordanza temporale e di granularità tra sistemi OLTP, che trattano dati correnti e al massimo livello di dettaglio, e sistemi OLAP che operano su dati storici e di sintesi $ A livello del warehouse è possibile impiegare tecniche specifiche per ottimizzare le prestazioni per applicazioni di analisi e reportistica Architetture a 3 livelli! DATI RICONCILIATI dati operazionali ottenuti a valle del processo di integrazione e ripulitura dei dati sorgente: quindi dati integrati, consistenti, corretti, volatili, correnti $ Il vantaggio del livello dei dati riconciliati è che esso crea un modello di dati comune e di riferimento per l intera azienda, introducendo al contempo una separazione netta tra le problematiche legate all estrazione e integrazione dei dati dalle sorgenti e quelle inerenti l alimentazione del DW $ D altro canto, i dati riconciliati introducono un ulteriore ridondanza rispetto ai dati operazionali sorgente sorgenti Alimentaz. warehouse analisi Dati operazionali Dati esterni Caricamento Dati riconciliati Strumenti ETL Data Warehouse! Dati-livello1 Dati-livello2 Dati-livello3 Data mart Strumenti di reportistica Strumenti Strumenti OLAP di data mining

ETL! Il ruolo degli strumenti di Extraction, Transformation and Loading è quello di alimentare una sorgente dati singola, dettagliata, esauriente e di alta qualità che possa a sua volta alimentare il DW (riconciliazione)! Durante il processo di alimentazione del DW, la riconciliazione avviene in due occasioni: quando il DW viene popolato per la prima volta, e periodicamente quando il DW viene aggiornato. Data Warehousing : argomenti # Progettazione concettuale # Modello multidimensionale concettuale DFM (Dimensional Fact Model) # Progettazione concettuale da schemi relazionali e schemi E/R # Progettazione logica # Star schema e snowflake schema. Scenari temporali # Progettazione dell'alimentazione # Metodi ed interrogazioni (SQL) per alimentare lo schema logico # SQL per l'aggregazione e l'analisi dei dati # Estensioni del linguaggio SQL per interrogazioni OLAP Introduzione 26

Verso il modello multidimensionale Che incassi sono stati registrati l anno passato per ciascuna regione e ciascuna categoria di prodotto? Che correlazione esiste tra l andamento dei titoli azionari dei produttori di PC e i profitti trimestrali lungo gli ultimi 5 anni? Quali sono gli ordini che massimizzano gli incassi? Quale di due nuove terapie risulterà in una diminuzione della durata media di un ricovero? Che rapporto c è tra i profitti realizzati con spedizioni di meno di 10 elementi e quelli realizzati con spedizioni di più di 10 elementi? Perché un nuovo modello?! Il classico modello relazionale e i classici strumenti di analisi (quali i report) spesso non sono sufficienti per un analisi complessa e completa dei dati.! Esempio - Schema E/R del DB operazionale delle vendite prodotti negozio città regione vendite data quantità tipo categoria 28

Analisi delle vendite tramite reportistica incassi Quantità (K!) Ottobre 2001 Settembre 2001 Agosto 2001 Abbigliamento 80 100 50 Alimentari 20 40 10 Arredamento 50 5 10 Profumeria 25 35 20 Pulizia casa 15 20 5 Tempo libero 60 50 20 Quantità! Un report consente di accedere a informazioni strutturate in modo pressoché invariabile! Un analisi differente (ad esempio rispetto alla settimana, ai negozi,!) è possibile solo se il report lo prevede, ovvero la relativa interrogazione è stata predefinita 29 Il modello multidimensionale Eventi nella realtà Acquisto da parte di Rossi di detersivo per piatti Progetto del DB (selezione degli aspetti di interesse) Dato nel DB operazionale (rappresentazione degli eventi della realtà) Vendita di detersivo per piatti Progetto del DW (aggregazione di interesse analitico) Fatto o evento nel DW (misura in uno spazio n-dimensionale) N vendite del prodotto X Nel negozio Y Nella data Z data! negozio! prodotto! 30

Il modello multidimensionale! È il fondamento per la rappresentazione e l interrogazione dei dati nei data warehouse.! I fatti di interesse sono rappresentati in cubi in cui: $ ogni cella contiene misure numeriche che quantificano il fatto da diversi punti di vista; $ ogni asse rappresenta una dimensione di interesse per l analisi; $ ogni dimensione può essere la radice di una gerarchia di attributi usati per aggregare i dati memorizzati nel cubo. 31 Il cubo delle vendite quantità = 10 negozio! 10! BigWare! prodotto! data! 10-10-2001! vite! 32

Le gerarchie prodotto tipo categoria! Brillo Sbianco Lucido Manipulite Scent Latte Fresco Slurp Latte UHT Slurp Yogurt Slurp Bevimi Colissima detersivo sapone latticino bibita pulizia casa alimentari tutti i prodotti negozio città regione! DiTutto2 Nonsolopappa DiTutto DiTutto3 Bologna Milano Como Emilia Romagna Lombardia tutti i negozi 33 Fatti, dimensioni e gerarchie in E/R fatto gerarchia dimensione prodotti misura negozio vendite tipo quantità città regione data categoria 34

Gerarchie: associazioni uno-a-molti e dipendenze funzionali prodotto tipo categoria prodotto tipo categoria! Brillo Sbianco Lucido Manipulite Scent Latte Fresco Slurp Latte UHT Slurp Yogurt Slurp Bevimi Colissima detersivo sapone latticino bibita pulizia casa alimentari tutti i prodotti! Una gerarchia corrisponde ad negozio città regione! associazioni uno-a-molti DiTutto2 Bologna Emilia Romagna tutti i! Un associazione Nonsolopappa uno-a-molti negozi corrisponde DiTutto Milano ad una Dipendenza Funzionale Lombardia DiTutto3 prodotto Como tipo tipo categoria 35 Eventi e aggregazione! Un evento primario è una particolare occorrenza di un fatto, individuata da una ennupla costituita da un valore per ciascuna dimensione. A ciascun evento primario è associato un valore per ciascuna misura $ Nelle vendite, un evento primario registra che, il 10/10/2001, nel negozio BigWare è stata venduta una quantità 10 del prodotto Vite! Dato un insieme di attributi dimensionali, ciascuna ennupla di loro valori individua un evento secondario che aggrega tutti gli eventi primari corrispondenti. A ciascun evento secondario è associato un valore per ciascuna misura, che riassume in sé tutti i valori della stessa misura negli eventi primari corrispondenti $ Pertanto, le gerarchie definiscono il modo in cui gli eventi primari possono essere aggregati e selezionati significativamente per il processo decisionale. 36

Eventi e aggregazione Evento secondario (1-2001,Roma,Viteria) Evento secondario (1-2001,Viteria) città! negozio! tipo! prodotto! tipo! prodotto! mese! mese! negozio! Evento primario (10-1-2001,BigWare,Vite) prodotto! data! 37 Operatori di Aggregazione! L aggregazione richiede di definire un operatore adatto per comporre i valori delle misure che caratterizzano gli eventi primari in valori da abbinare a ciascun evento secondario città! negozio! tipo! prodotto! mese! mese! tipo! prodotto! # negozio! # prodotto! data! 38

Aggregazione DiTutto DiTutto2 Nonsolopappa 1/1/2000 2/1/2000 10 15 5 3/1/2000 20 5............ 1/1/2001 2/1/2001 15 10 20 3/1/2001 20 20 25............ 1/1/2002 2/1/2002 20 8 25 3/1/2002 20 12 20............ DiTutto DiTutto2 Nonsolopappa 2000 2400 2000 1600 2001 3200 2300 3000 2002 3400 2200 3200 DiTutto DiTutto2 Nonsolopappa Gennaio 2000 200 180 150 Febbraio 2000 180 150 120 Marzo 2000 220 180 160............ Gennaio 2001 350 220 200 Febbraio 2001 300 200 250 Marzo 2001 310 180 300............ Gennaio 2002 380 200 220 Febbraio 2002 310 200 250 Marzo 2002 300 160 280............ DiTutto DiTutto2 Nonsolopappa Totale: 9000 6500 7800 39 Aggregazione e raggruppamento! L aggregazione corrisponde all operazione relazionale di raggruppamento; in SQL: select anno, negozio, sum(quantità) from Fatto group by anno, negozio!! anno negozio DiTutto DiTutto2 Nonsolopappa 2000 2400 2000 1600 2001 3200 2300 3000 2002 3400 2200 3200! Estensioni del linguaggio SQL per interrogazioni OLAP # Nuovi operatori di raggruppamento 40

Progettazione di un DW # Il punto di partenza potrebbe essere lo schema E/R! #! ma lo schema E/R non è uno strumento efficace per rappresentare fatti, dimensioni e gerarchie negozio prodotti vendite gerarchia tipo quantità città regione data categoria 41 Il Dimensional Fact Model # E un modello concettuale grafico per DW Prodotto Tipo Categoria Mese VENDITA Data Quantità Negozio Città Regione # la sua efficacia si apprezza in situazioni complesse: anno dimensione trimestre mese giorno vacanza settimana data gruppo di marketing prodotto tipo VENDITA quantità venduta incasso num. clienti prezzo unitario categoria reparto città della marca marca responsabile delle vendite distretto di vendita negozio città del stato negozio regione misure gerarchia 42

Progettazione logica: schema a stella! Come riportare un cubo e le gerarchie in un DBMS relazionale?! La modellazione multidimensionale su sistemi relazionali è basata sul cosiddetto schema a stella (star schema) e sulle sue varianti.! Uno schema a stella è composto da: $ Una relazione DMi detta dimension table per ogni una dimensione. La chiave della relazione è la dimensione Gli altri attributi della relazione sono gli altri attributi dimensionali $ Una relazione FT, chiamata fact table, che importa le chiavi di tutte le dimension table. La chiave di FT è data dall insieme delle chiavi esterne dalle dimension table, d 1!, d n ; FT contiene inoltre un attributo per ogni misura. 43 Lo schema a stella Fornitore Tipo Prodotto Categoria Rappresentante Settimane ID_Settimane Settimana Mese Prodotti ID_Prodotti Prodotto Tipo Categoria Fornitore Mese Settimana VENDITE Quantità Guadagno ID_Negozi ID_Settimane ID_Prodotti Quantità Guadagno Negozio Città Stato Negozi ID_Negozi Negozio Città Stato Rappresentante 44

Lo schema a stella ID_Negozi Negozio Città Stato Rappresentante 1 N1 RM I R1 2 N2 RM I R1 3 N3 MI I R2 4 N4 MI I R2 Dimension Table ID_Negozi ID_Sett ID_Prodotti Quantità Guadagno 1 1 1 100 100 1 2 1 150 150 3 3 4 350 350 4 4 4 200 200 Fact Table ID_Sett. Settimana Mese 1 Gen1 Gen. 2 Gen2 Gen. 3 Feb1 Feb. 4 Feb2 Feb. Dimension Table ID_Prodotti Prodotto Tipo Categoria Fornitore 1 P1 A X F1 2 P2 A X F1 3 P3 B X F2 4 P4 B X F2 45 Interrogazione di un cubo : OLAP! È la principale modalità di fruizione delle informazioni di un DW! Consente, a utenti le cui necessità di analisi non siano facilmente identificabili a priori, di analizzare ed esplorare interattivamente i dati sulla base del modello multidimensionale! Mentre chi usa strumenti di reportistica svolge un ruolo passivo, gli utenti OLAP sono in grado di costruire attivamente una sessione di analisi complessa in cui ciascun passo effettuato è conseguenza dei risultati ottenuti al passo precedente $ estemporaneità delle sessioni di lavoro! Una sessione OLAP consiste in un percorso di navigazione che riflette il procedimento di analisi di uno o più fatti di interesse sotto diversi aspetti e a diversi livelli di dettaglio. Questo percorso si concretizza in una sequenza di interrogazioni spesso formulate non direttamente, ma per differenza rispetto all interrogazione precedente 46

Principali operatori OLAP! Ogni passo della sessione di analisi è scandito dall applicazione di un operatore OLAP che trasforma l ultima interrogazione formulata in una nuova interrogazione roll-up drill-down 47 Principali operatori OLAP DiTutto DiTutto2 Nonsolopappa Gennaio 2000 200 180 150 Febbraio 2000 180 150 120 Marzo 2000 220 180 160............ Gennaio 2001 350 220 200 Febbraio 2001 300 200 250 Marzo 2001 310 180 300............ Gennaio 2002 380 200 220 Febbraio 2002 310 200 250 Marzo 2002 300 160 280............ roll-up drill-down DiTutto DiTutto2 Nonsolopappa 2000 2400 2000 1600 2001 3200 2300 3000 2002 3400 2200 3200 roll-up drill-down DiTutto DiTutto2 Nonsolopappa Totale: 9000 6500 7800 48

Altri operatori OLAP negozio! data! 'DiTutto' slice-and-dice data! '5/4/2001' negozio! 'DiTutto' data! '5/4/2001' negozio! 'DiTutto' 'Brillo' 49 Esempi di Slicing Al manager di prodotto interessa la vendita di un prodotto in tutti i periodi e in tutti i mercati mercati! data! Al manager regionale interessa la vendita dei prodotti in tutti i periodi nei propri mercati mercati! data! 50

Esempi di Slicing Al manager finanziario interessa la vendita dei prodotti in tutti i mercati relativamente al periodo corrente e quello precedente mercati! data! Il manager strategico si concentra su una categoria di prodotti,una area regionale e un orizzonte temporale medio mercati! data! 51 Rappresentazioni di interrogazioni OLAP! Il risultato delle interrogazioni è di tipo multidimensionale; gli strumenti OLAP rappresentano tipicamente i dati in modo tabellare (bidimensionale) evidenziando le diverse dimensioni mediante intestazioni multiple, colori ecc. drill-down 52

Linguaggi di interrogazione OLAP : MDX! MDX (MultiDimensional expression): per recuperare e manipolare dati multidimensionali nel sistema OLAP di SQL Server negozio data 10!30! '5/4/2001'! 15/4/2001'! BigWare! prodotto vite! SELECT { (data.[5/4/2001]), (data. [15/4/2001]) } ON AXIS(0), { (parte.[vite]) } ON AXIS(1), {(negozio.[bigware]) } ON AXIS(2) FROM CuboVendite! Per visualizzarlo in modo bi-dimensionale SELECT {(negozio.[bigware]) } ON COLUMNS, {(parte.[vite],data.[5/4/2001]), (parte.[vite],data.[15/4/2001]) } ON ROWS FROM CuboVendite VITE BIGWARE 5/4/2001 10 15/4/2001 30 53 Altre tecniche di analisi : Data Mining! Attività orientata a scoprire informazioni nascoste nei dati $ In presenza di moli di dati molto elevate, l utente non è sempre in grado di individuare tutti i pattern (modelli) significativi presenti $ Il data mining raccoglie tecniche di intelligenza artificiale e pattern recognition per aiutare l utente nella ricerca di pattern: è sufficiente indicare cosa e dove si vuole ricercare! Esistono in sostanza tre approcci differenti, supportati da altrettante categorie di strumenti, all interrogazione di un DW da parte degli utenti finali: $ reportistica: non richiede conoscenze informatiche $ OLAP: richiede all utente di ragionare in modo multidimensionale e di conoscere l interfaccia dello strumento grafico utilizzato $ data mining: richiede all utente la conoscenza dei principi che stanno alla base degli strumenti utilizzati 54

Implementazione dei DW: ROLAP! Relational OLAP: implementazione del DW su RDBMS! Gartner Magic Quadrant for Data Warehouse Database Management Systems: 55 Business Intelligence Platforms! Gartner Magic Quadrant for Business Intelligence Platforms 56