analisi dei dati olap (on line analytical processing) data warehousing data mining

49
ANALISI DEI DATI ANALISI DEI DATI OLAP OLAP (On Line Analytical Processing) (On Line Analytical Processing) Data Warehousing Data Warehousing Data Mining Data Mining

Upload: loredana-cozzolino

Post on 01-May-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

ANALISI DEI DATIANALISI DEI DATI

OLAPOLAP(On Line Analytical Processing) (On Line Analytical Processing)

Data WarehousingData WarehousingData MiningData Mining

Page 2: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Dall’OLTP all’OLAP

La tecnologia delle basi di dati è finalizzata prevalentemente alla gestione dei dati in “linea”, si parla di OnLine Transaction Processing (OLTP)

Page 3: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Analisi dei dati•I dati disponibili possono essere utilizzati non solo nella gestione, ma anche nella pianificazione

• Un’analisi dei dati passati e presenti può essere utile per la programmazione delle attività future dell’impresa

• Si parla in questo caso di On Line Analytical Processing (OLAP)

Page 4: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Sistemi OLTP e OLAP

•L’elemento principale dell’architettura OLAP è una particolare base di dati chiamata data warehouse (magazzino dei dati), in cui sono contenuti dati che, opportunamente analizzati possono fornire un supporto alle decisioni.

•I sistemi OLTP forniscono i dati per l’ambiente OLAP, sono cioè una “sorgente di dati” (data source) per tale ambiente.

•Tra i due sistemi cambia la tipologia di utente terminalisti (OLTP), analisti (OLAP)

Page 5: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Sistemi OLTP e OLAP

DB

A 1

A 1

A n

A n

A 2

A 2

DWDWMS

A 1

A 1

A n

A n

A 2

A 2

terminalistianalisti

OLTP OLAP

Terminalisti: utenti finali. Possono eseguire operazioni di lettura e di scrittura

Analisti: Pochi utenti, occupano posizioni di alto livello nell’impresa e svolgono attività di supporto alle decisioni.

Page 6: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Sistemi OLTP e OLAP• OLTP (On Line Transaction

Processing) • Sistemi per la gestione dei

dati • Utilizzo di un set di

operazioni ben definito• Bassa complessità delle

operazioni• Le operazioni coinvolgono

una piccola quantità di dati• Continuo aggiornamento dei

dati• Generalmente viene

utilizzato lo “stato corrente” di un’applicazione

• Devono essere rispettate le proprietà ACIDe (atomicità, correttezza, isolamento, durabilità) delle transazioni

• OLAP (On Line Analytical Processing):• Sistemi per l’analisi dei dati

• Permettono di eseguire operazioni non previste nella progettazione del DB (sistemi di supporto alle decisioni)

• Operano su grosse moli di dati

• I dati sono “statici” (usualmente si utilizzano dati storici)

• Operano su dati provenienti da più fonti eterogenee

• Le proprietà ACIDe non sono rilevanti perché le operazioni sono di sola lettura

Page 7: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Caratteristiche dei Data warehouse

• Utilizzano dati provenienti da più DB• I meccanismi di importazione sono di tipo asincrono

e periodico• In tal modo non vengono penalizzate le prestazioni delle

data source

• La warehouse non contiene dati perfettamente allineati con il flusso di transazioni negli OLTP

• Problema legato alla qualità dei dati:• La semplice raccolta di dati può non essere sufficiente per

una corretta analisi perché i dati possono contenere inesattezze, errori, omissioni

Page 8: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Architettura di un DataWarehouse

Data Source

Data Filter

Export

Data Source

Data Filter

Export

Data Source

Data Filter

Export

Acquisizione dei Dati

Export dei dati

Data mining

Accesso ai Dati

Allineamento dei Dati (refresh)

DWPrime due

componenti operano nelle data source

Gli altri cinque componenti operano

nella DW

Page 9: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Architettura di un DataWarehouse

Data Source

Data Filter

Export

Possono essere di qualsiasi tipo, anche raccolte di dati non gestite tramite DBMS oppure gestite da DBMS di vecchia generazione (legacy system).

Controlla la correttezza dei dati prima dell’inserimento nella warehouse. Può eliminare dati scorretti e rilevare o correggere eventuali inconsistenze tra dati provenienti da più data source. Viene fatta la pulizia dei dati (data cleaning) necessaria ad assicurare un buon livello di qualità.

L’esportazione dei dati avviene in maniera incrementale: il sistema colleziona solo le modifiche (inserzioni o cancellazioni) delle data source.

Page 10: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Architettura di un DataWarehouse

Acquisizione dei Dati (loader)

• E’ responsabile del caricamento iniziale dei dati nella DW.

• Predispone i dati all’uso operativo, svolge operazioni di ordinamento, aggregazione e costruisce le strutture dati della warehouse.

• Le operazioni di acquisizione vengono svolte a lotti (in “batch”), quando la DW non è utilizzata.

• In applicazioni con pochi dati il modulo è invocato periodicamente per acquisire tutto il contenuto della DW.

• In genere,invece, i dati vengono allineati in modo incrementale, utilizzando il modulo di allineamento dei dati.

Page 11: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Architettura di un DataWarehouse

Allineamento dei Dati (refresh)

Propaga incrementalmente le modifiche della data source in modo da aggiornare il contenuto della DW. L’aggiornamento può essere effettuato tramite:

• invio dei dati (data shipping)

• invio delle transazioni (transaction shipping)

Nel primo caso all’interno delle data source vengono inseriti dei trigger che registrano cancellazioni, inserimenti e modifiche(coppie inserimento-cancellazione) in archivi variazionali. Nel secondo caso viene usato il log delle transazioni per costruire gli archivi variazionali.

Page 12: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Architettura di un DataWarehouse

Accesso ai Dati

•E’ il modulo che si occupa dell’analisi dei dati.

•Realizza in maniera efficiente interrogazioni complesse, caratterizzate da join tra tabelle, ordinamenti e aggregazioni complesse.

•Consente nuove operazioni come roll up, drill down e data cube.

Page 13: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Architettura di un DataWarehouse

Data mining

• Tecniche algoritmiche che consentono di fare deduzioni sui dati.

• Consente di svolgere ricerche sofisticate sui dati e di esplicitare relazioni “nascoste” tra i dati.

Export dei dati

• Consente l’esportazione dei dati da una DW ad un’altra. Architettura gerarchica.

Page 14: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Architettura di un DataWarehouse

Moduli di ausilio alla progettazione e gestione di una DW:

• un componente per l’assistenza allo sviluppo della DW, che permette di facilitare le definizione dello schema dei dati e i meccanismi per l’importazione dei dati.

• un dizionario dei dati, che descrive il contenuto della DW, utile per comprendere quali analisi dei dati possono essere eseguite, una sorta di “glossario”.

Page 15: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Schema di un DataWarehouse

• Nel costruire una DW aziendale ci si concentra su sottoinsiemi molto semplici dei dati aziendali che si vogliono analizzare (dati dipartimentali).

• Ogni schema semplificato dei dati dipartimentali prende il nome di data mart.

• L’organizzazione dei dati di un data mart avviene secondo uno schema multidimensionale (o schema a stella).

Page 16: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Schema a stella

Vendita

prodotto

supermercato

tempo

promozione

(0,N)

(0,N)

(0,N)

(0,N)

(1,1)

(1,1)(1,1)

(1,1)

Unità centrale rappresenta i fatti

Diverse unità poste a raggiera intorno ai fatti rappresentano le dimensioni dell’analisi

Page 17: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Schema a stellaVarie relazioni uno a molti collegano ciascuna occorrenza di fatto con una ed una sola occorrenza di ciascuna delle dimensioni.

La struttura è regolare e indipendente dal problema considerato. (occorrono almeno due dimensioni altrimenti il problema degenera in una semplice gerarchia uno-molti)

Un numero elevato di dimensioni è sconsigliato perché la gestione dei fatti e l’analisi si complicano.

Page 18: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Schema a stella

Promozione:CodPromo

•Nome •Tipo

•Percentuale•FlagCoupon•DataInizio•DataFine

•Costo•Agenzia

Vendita•Amm•Qta

Prodotto: CodProd•Nome

•Categoria•Marca•Peso

•Fornitore

Supermercato:CodMarket

•Nome•Città

•Regione•Zona

•Dimensioni•Disposizione

Tempo: CodTempo•GiornoSett

•GiornoMese•GiornoAnno

•SettimanaMese•SettimanaAnno•MeseAnno…

(0,N)

(0,N)

(0,N)

(0,N)

(1,1)

(1,1)(1,1)

(1,1)

Ciascuna occorrenza di vendita ha per identificatore i quattro codici:CodProdCodMarketCodPromoCodTempoGli attributi non chiave sono Amm e Qta.

Ogni occorrenza di vendita è un dato

aggregato

Page 19: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Schema a stella• Nella dimensione del tempo sono presenti dati

derivati e ridondanze.• Le ridondanze servono per facilitare le operazioni di

analisi dei dati.• I fatti sono in forma normale di Boyce-Codd in

quanto ogni attributo non chiave dipende funzionalmente dalla sua unica chiave.

• Le dimensioni sono in genere relazioni non normalizzate.

Page 20: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Schema a fiocco di neve

Vendita

Prodotto

Supermercato

Giorno

Promozione

(0,N)

(0,N)

(0,N)

(0,N)

(1,1)

(1,1)

(1,1)

(1,1)

Categoria(0,N)(1,1)

Fornitore

(0,N)

Città

(0,N)

(1,1)

Regione

(0,N)

(1,1)

Mese

(0,N)

(1,1)

Zona

(0,N)

(1,1)

Anno

(0,N)

(1,1)

Evoluzione dello schema a stella, introdotta per strutturare gerarchicamente le dimensioni non normalizzate.

Tale schema rappresenta in modo esplicito le gerarchie, riducendo così le ridondanze e le anomalie

Page 21: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Analisi dei dati: operazioni

1) Interfaccia standard di formulazione delle query

2) Drill down

3) Roll up

4) Data Cube (Slice-and-dice)

Page 22: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

INTERFACCIA STANDARD DI FORMULAZIONE DELLE QUERY

L’analisi dei dati di un data mart organizzato a stella richiede l’estrazione di un sottoinsieme dei fatti e delle dimensioniLe dimensioni vengono usate per selezionare i dati e per raggrupparliI fatti vengono tipicamente aggregatiÈ possibile costruire moduli predefiniti per estrarre i dati in cui si offrono scelte predefinite (selezioni, aggregazioni,valutazioni di funzioni aggregate.

Page 23: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Promozione.Nome Prodotto.Nome Tempo.Mese Qta Amm

3x2

Coupon 15%

SuperSaver

Vino

Pasta

Olio

Gen … Dic

SuperSaver Pasta … Olio Feb … Apr

Prodotto.Nome Tempo.Mese sum sum

Schema

Opzioni

Condizioni

Vista

Attributi delle dimensioni:•Promozione

•Prodotto

•Tempo

Attributi dei Fatti:• Aggregati (SUM)

INTERFACCIA STANDARD DI FORMULAZIONE DELLE QUERY

Page 24: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

select Tempo.Mese, Prodotto.Nome, sum(Amm), sum(Qta)

from Vendite, Tempo, Prodotto

where Vendite.CodTempo = Tempo.CodTempo

and Vendite.CodProdotto = Prodotto.CodProdotto

and (Prodotto.Nome = ‘Pasta’ or Prodotto.Nome = ‘Olio’)

and Tempo.Mese between ‘Feb’ and ‘Apr’

and Promozione.Nome = ‘SuperSaver’

group by Tempo.Mese, Prodotto.Nome

order by Tempo.Mese, Prodotto.Nome

Promozione.Nome Prodotto.Nome Tempo.Mese Qta Amm

3x2

Coupon 15%

SuperSaver

Vino

Pasta

Olio

Gen … Dic

SuperSaver Pasta … Olio Feb … Apr

Prodotto.Nome Tempo.Mese sum sum

Schema

Opzioni

Condizioni

Vista

Tempo.mese Prodotto.nome sum(Amm) sum(Qta)

INTERFACCIA STANDARD DI FORMULAZIONE DELLE QUERY

Page 25: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Drill-down e Roll-up• Il drill down permette di aggiungere una

dimensione di analisi disaggregando i dati.• Il roll up dualmente consente di eliminare una

dimensione di analisi.• L’operazione di roll up può essere fatta agendo

sui risultati dell’interrogazione, quella di drill down richiede la riformulazione dell’interrogazione(servono dati non presenti nell’interrogazione).

Page 26: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Drill-down e Roll-upProdotto.Nome Tempo.Mese Qta

Vino

Pasta

Olio

Gen … Dic

Pasta Feb … Apr

Prodotto.Nome Tempo.Mese sum

Schema

Opzioni

Condizioni

Vista

somma delle somma delle

quantità vendutequantità vendute

di pasta nel di pasta nel

trimestre Feb-Aprtrimestre Feb-Apr

Tempo.mese Prodotto.Nome Sum(Qta)

Feb Pasta 46 Kg

Mar Pasta 50 Kg

Apr Pasta 51 Kg

Page 27: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Drill-down

Tempo.mese Prodotto.Nome Zona Sum(Qta)

Feb Pasta Nord 18

Feb Pasta Centro 15

Feb Pasta Sud 13

Mar Pasta Nord 18

Mar Pasta Centro 18

Mar Pasta Sud 14

Apr Pasta Nord 18

Apr Pasta Centro 17

Apr Pasta Sud 16

Tempo.mese Prodotto.Nome Sum(Qta)

Feb Pasta 46 Kg

Mar Pasta 50 Kg

Apr Pasta 51 Kg

Il manager è interessato alle vendite per zona:

Drill down on Zona

Page 28: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Analisi dei dati

Zona Prodotto.Nome Sum(Qta)

Nord Pasta 54 Kg

Centro Pasta 50 Kg

Sud Pasta 43Kg

Tempo.mese Prodotto.Nome Zona Sum(Qta)

Feb Pasta Nord 18

Feb Pasta Centro 15

Feb Pasta Sud 13

Mar Pasta Nord 18

Mar Pasta Centro 18

Mar Pasta Sud 14

Apr Pasta Nord 18

Apr Pasta Centro 17

Apr Pasta Sud 16

Il manager è interessato solo alla suddivisione delle vendite per zona:

roll up on Mese

Page 29: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Rappresentazione Multidimensionale (Cube)

Page 30: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Slice-and-dice•Seleziona un sottoinsieme delle celle del un cubo, ottenuta “affettando e tagliando” a cubetti il cubo stesso.

•Seleziona e proietta riducendo la dimensionalità dei dati

Page 31: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Slice-and-dice

Il manager vuole effettuare un’analisi relativa alle vendite in tutti i periodi nella zona Roma-2

Page 32: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Slice-and-dice

Il manager vuole effettuare un’analisi relativa alle vendite in tutti i periodi nella zona Roma-2

Luogo

Tempo

Articolo

Page 33: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Slice-and-diceIl manager di prodotto esamina la vendita di un particolare prodotto in tutti i periodi e in tutti imercati

Luogo

Tempo

Articolo

Page 34: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Slice-and-diceIl manager finanziario esamina la vendita di tutti i prodotti in tutti i mercati relativamente ad un particolare periodo

Luogo

Tempo

Articolo

Page 35: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Slice-and-diceIl manager strategico si concentra su unacategoria di prodotti, una area regionale eun orizzonte temporale medio

Luogo

Tempo

Articolo

Page 36: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Slice-and-diceIl manager seleziona le vendite per trimestre e per negozio dei soli lettori di DVD

Lettori DVD

1 trim.03 2 trim.03 3 trim.03 4 trim.03

Roma-1 38 91 66 198

Roma-2 155 219 248 265

Milano-1 121 273 266 326

Milano-2 222 122 155 200

Page 37: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Data mining• Ricerca di informazioni “nascoste” all’interno

delle DW.

• Esempi: – analisi di mercato (individuazione di oggetti

acquistati assieme o in sequenza)– analisi di comportamento (frodi o usi illeciti delle

carte di credito)– analisi di previsione (costo futuro delle cure

mediche)

Page 38: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Fasi del processo di data mining1. Comprensione del dominio. 2. Preparazione sul set di dati. Individuazione di un

sottoinsieme dei dati della DW su cui effettuare il mining e loro codifica (input algoritmo)

3. Scoperta dei pattern. Ricerca e individuazione di pattern ripetitivi tra i dati.

4. Valutazione dei pattern. Partendo dai pattern scoperti si valutano quali esperimenti compiere successivamente e quali ipotesi formulare o quali conseguenze trarre.

5. Utilizzo dei risultati. Prendere decisioni operative a seguito del processo di data mining (allocazione merci, concessione credito).

Page 39: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Problemi di data miningStruttura ricorrente

Specifici algoritmi

Buona “scalarità”

Efficenti per grandi moli di dati

Page 40: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Problemi di data mining

•Regole di associazione

•Discretizzazione

•Classificazione

Page 41: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Regole di associazione• Scoprire associazioni ti tipo causa-effetto.• Una regola associativa consta di una premessa e di

una conseguenza.Pannolini → Birra

e’ possibile definire in modo preciso le probabilità associate alle regole di associazione.

– supporto: probabilità che in una osservazione sia presente sia la premessa che la conseguenza di una regola.

– confidenza: probabilità che in una osservazione sia presente la conseguenza di una regola essendo già presente la premessa.

Page 42: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Regole di associazioneIl problema di data mining relativo alla scoperta delleregole di associazione viene quindi enunciato comesegue:

Trovare tutte le regole di associazione con supporto e confidenza superiori a valori prefissati

Page 43: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Regole di associazione: esempioPremessa Conseguenza Supporto Confidenzapantaloni-sci scarponi 0.25 1

scarponi pantaloni-sci 0.25 1

magliette stivali 0.25 0.5

magliette giacche 0.25 1

stivali magliette 0.25 0.5

stivali giacche 0.25 1

giacche magliette 0.5 0.66

giacche stivali 0.25 0.33

Vogliamo le regole associative con supporto maggiore o uguale di 0.25 e confidenza maggiore

strettamente di 0.5

Page 44: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Regole di associazione: esempioPremessa Conseguenza Supporto Confidenzapantaloni-sci scarponi 0.25 1

scarponi pantaloni-sci 0.25 1

magliette stivali 0.25 0.5

magliette giacche 0.25 1

stivali magliette 0.25 0.5

stivali giacche 0.25 1

giacche magliette 0.5 0.66

giacche stivali 0.25 0.33

Page 45: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Regole di associazione: esempioPremessa Conseguenza Supporto Confidenzapantaloni-sci scarponi 0.25 1

scarponi pantaloni-sci 0.25 1

magliette stivali 0.25 0.5

magliette giacche 0.25 1

stivali magliette 0.25 0.5

stivali giacche 0.25 1

giacche magliette 0.5 0.66

giacche stivali 0.25 0.33

Vogliamo le regole associative che hanno supporto e confidenza

superiori a 0.4

Page 46: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Discretizzazione

Consente di rappresentare un intervallo continuo di dati tramite pochi valori discreti, selezionati in modo da rendere più evidente il fenomeno sottoposto ad osservazione.

Es. valori di pressione

Page 47: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

ClassificazioneCatalogazione di un fenomeno in una classe predefinita. Fa uso di algoritmi di classificazione (es. alberi decisionali)

Quando i fenomeni sono descritti da un gran numero di attributi i classificatori si occupano di determinare gli attributi significativi, separandoli da quelli irrilevanti.

Es. polizza assicurazione

Page 48: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining

Classificazione: alberi decisionali

vero

vero

vero

falso

falso

falso

Età <23

TipoAuto=‘Sportiva’

TipoAuto=‘Camion’

Page 49: ANALISI DEI DATI OLAP (On Line Analytical Processing) Data Warehousing Data Mining