Datawarehouse Proge.azione logica
1) Modello a stella implementato 3
Semplici join permettono di ricostruire i fatti. Le tabelle dimensione sono generalmente denormalizzate: contengono le dipendenze funzionali delle gerarchie. La denormalizzazione sveltisce le interrogazioni. Generalmente le gerarchie non sono soggette a modifiche, quindi la denormalizzazione è ininfluente sulle modifiche. La denormalizzazione causa ridondanza, tuttavia di norma una dimensione ha un occupazione contenuta della memoria rispetto alla fact table. La sparsità non è un problema: nella fact table vengono memorizzate solo le combinazioni di chiavi corrispondenti ad informazioni esistenti. 4
2) Modello a snowflake 4
Modello a sowflakes implementato 5
Schema snowflake di Vendite ChiaveNegozio ChiaveData Data Mese Trimestre Anno Giorno Settimana Vacanza VENDITA ChiaveNegozio ChiaveData ChiaveProdotto QuantitàVenduta Incasso PrezzoUnitario NumeroClienti Negozio ChiaveCittà Responsabile Distretto ChiaveProdotto ChiaveCittà CittàNegozio RegioneNegozio StatoNegozio ChiaveCategoria Categoria Reparto ChiaveTipo Tipo ChiaveCategoria GruppoMarketing Prodotto ChiaveTipo Marca CittàMarca Dieta* 6
Schema snowflake Lo schema snowflake attenua la denormalizzazione delle dimensioni, riducendo lo spazio delle tabelle delle dimensioni a scapito del costo dei join. La parziale normalizzazione articola meglio le dimensioni che possono essere usate con maggior facilità da più fact table. NORMALIZZATO 1) no ridondanze, occupa meno spazio in memoria 2) molti join, quesry più complesse e più lente 3) possibile aggiornamento a catena 5
Warehouse database Stru.ura conce.uale: Schema a stella o a fiocco di neve Stars denormalizzato Simple Flat (no gerarchia) snowflakes normalizzato More complex Gerarchico (naturale modo di pensare dei manager) (+) piu veloci le query ( ) piu spazio in memoria (-) piu lente le query (+) aggiornamenti a catena (+) occupa meno spazio Federica Cena- 6
Data normalisacon ObieEvo: 1. Eliminare le duplicazioni non necessarie e incontrollate di dac (ridondanze) 2. Eliminare le dipendenze funzionali tra gli a.ribuc Federica Cena- 7
Data normalisacon Dipendenze funzionali X! y il valore di y dipende da x ci.a! regione il valore di regione dipende da ci.a cliente(ci(a, regione) Ogni volta che due clienc vivono nella stesso ci.à, allora vivono anche la stessa regione ci.a[torino]=regione[piemonte] Federica Cena- 8
Warehouse database 1. Tabella al centro dei fae, sui cui vengono eseguite tu.e le query Relazione 1:m con le altre dimensioni (parte m: tabella dei fae, parte 1 dimensione) 2. Time dimension obbligatori 3. Una misura singola non interessa: Le misure devono essere sommabili, solo su alcune dimensioni ha senso:costo ha senso su prodoe, ma non su tempo (a.ribuc semisommab) 4. Aggiungere dac ai precedenc (accodarli) non sovrascriverli Federica Cena- 9
Modello logico Prodo.o (id_prodo.o, nome) Punto_vendita (id_punto, ci.à, regione) Tempo (id_tempo,mese, anno) Vendite (id_prodo.o, id_punto, id_tempo, quan3tà) Federica Cena 10
Data warehouse Progettazione di un data warehouse
Architettura di un dw 2
Componenti di un dw Due funzioni principali: 1. Prendere le informazioni dai sistemi operazionali, pulirle e metterle dentro il dw 2. Prendere le informazioni dal dw e presentarle all utente 3 Federica Cena-
4
Sviluppo di un dw 1. Analisi e riconciliazione delle fonti à schema riconciliato + requisiti (obiettivi strategici) 2. Analisi dei requisiti 3. Progettazione concettuale à schema di fatto 4. Validazione dello schema concettuale 5. Progettazione logica à schema logico 6. (Progettazione fisica à procedure di indicizzazione e di memorizzazione) 5 Federica Cena-
Data warehouse Analisi e riconciliazione delle fonti (*Prof. Giolito)
Analisi e riconciliazione 1. Analisi e riconciliazione delle fonti schema riconciliato + requisiti (obiettivi strategici) 1. Premesse: non tutti i dati che abbiamo ci interessano 2. Alcuni dati sono disallienati 3. Per ogni fonte disponibie: 1. Passo 1: modello E-R (schema locale) 2. Passo 2: portare allo schema riconciliato (solo ciò che serve al db) 2 Federica Cena-
Analisi e riconciliazione 1. Possibili relazioni tra R1 e R2 1. Identità 2. Equivalenza 3. Comparabilità 4. Incompatibilità analisi dei possibili conflitti 3 Federica Cena-
Analisi e riconciliazione 1. Possibili conflitti tra schemi 1. Eterogeneità 2. Conflitti 1. Di nome 1. Omonimie 2. Sinonime 2. Semantici 3. strutturali 4 Federica Cena-
Processo di riconciliazione Euristiche: 1. Riconosco la diversità 2. Opero una fusione schema riconciliato 1. Completezza 2. Minimalità 3. leggibilità 5 Federica Cena-
FASE 1: Analisi e riconciliazione delle fonti dei dati La fase è particolarmente critica se le fonti presentano un alta eterogeneità. Schema riconciliato Schema esportato R1 Modello ER Schema esportato R2 Schema locale 1 Modello locale Schema locale 2 Fonte dati 1 Fonte dati 2 2
Possibili relazioni tra due rappresentazioni R1 e R2 1. Identità: R1 coincide con R2, è il caso fortunato. 2. Equivalenza: Se le le istanze di R1 e R2 possono essere messe in corrispondenza uno a uno. Esempio: Edito da Libro (1,1) ISBN Titolo Libro ISBN Titolo Casa Ed. (1,n) Casa Editrice Nome Indirizzo Indirizzo Casa Ed. 3
3. Comparabilità: Schemi non in contrasto, ma con punti di vista diversi, Esempio: Dipendente assegnato a Dipartimento Dipendente (0,1) CF Nome Dipendente (0,1) CF Nome Lavora a Assegnato (1,n) Progetto (1,1) Cod Descrizione (1,n) Dipartimento Nome Ind. Appartiene (1,n) Dipartimento Nome Ind. 4
4. Incompatibilità, quando R1 e R2 sono in contrasto Esempio: personale tecnico e amministrativo dell Università CF CF Dipendente (1,1) Nome Dipendente (0,n) Nome Afferenza Afferenza (1,n) Dipartimento Nome Ind. (0,n) Dipartimento Nome Ind. Primo caso tipico del personale tecnico di laboratorio. Secondo caso modella anche il personale dell Amministrazione Centrale e amministrativo. 5
Analisi comparativa per scoprire le relazioni tra R1 e R2 svolta in stretta collaborazione con gli esperti del dominio. L aspetto critico consiste nell individuare i possibili conflitti: 1. Eterogeneità dei formalismi con diverso potere espressivo negli schemi locali (relazionale, Object Oriented, formati di file, ER, UML, ) 2. Conflitti di nome: Omonimie Nome Dipartimento (0,n) Ind. Edificio (0,n) N Ind. Possiede Contiene (1,1) Attrezzatura Inventario Tipo (1,1) Attrezzatura Inventario Tipo scientifica mobilio 6
Conflitti di nome: Sinonimie Nome Cliente (0,n) Ind. Detiene Acquirente (0,n) Emette Nome Ind. (1,1) Credito Codice Tipo (1,1) Ordine N Data E opportuno istituire un dizionario dati che annoti tutte le omonimie e sinonimie riscontrate comparando i vari schemi. 7
3. Conflitti semantici, quando si modella la stessa realtà con diverso livello di astrazione (1,n) Edificio N Ind. Edificio (1,n) Contiene (1,1) Piano Appartamento (1,1) Possiede (1,n) Proprietario N Ind. N Descrizione CF Nome (1,1) Piano N (1,n) Contiene (1,1) N Appartamento Descrizione (1,1) Possiede (1,n) CF Proprietario Nome 8
Conflitti strutturali Conflitti di tipo, stesso concetto modellato con diversi costrutti. Es.: Piano nella diapositiva precedente. Conflitti di dipendenza, due o più concetti associati con cardinalità diverse. Es.: uomo (sposa n:m) donna con possibilità di storicizzare, uomo (sposa 1:1) donna. Conflitti di chiave, identificatori diversi. Es.: matricola in uno schema, CF in un altro Conflitti di comportamento, politiche di cancellazione/modifica diverse nei vari schemi. Es.: Cancellazione studente nella base dati borsisti EDISU se reddito superiore di una data soglia, mentre nella base dati universitaria viene registrata la non assegnazione. L individuazione delle correlazioni tra R1 e R2 e dei conflitti richiede una approfondita conoscenza della semantica, per questo motivo la documentazione degli schemi operazionali deve essere accurata e formale. 9
2). Riconciliazione e integrazione degli schemi Mapping tra gli elementi degli schemi sorgenti per arrivare allo schema riconciliato. Schema R1 Schema R2 Editore Nome Ind Pubblicazione Cod Titolo Editore Libro Cod Titolo Parola chiave Testo Area Argomento Testo Area 102
Allineamento degli schemi Editore Nome Ind Pubblicazione Cod Titolo Editore Libro Cod Titolo Parola chiave Testo Area Argomento Testo Area Argomento sinonimo di Parola chiave ; Editore conflitto di tipo 11
Allineamento degli schemi Editore Nome Ind Pubblicazione Cod Titolo Editore Libro Cod Titolo Argomento Testo Area Argomento Testo Area Argomento sinonimo di Parola chiave, scegliamo Argomento ; Editore conflitto di tipo 12
Fusione Editore Nome Ind Pubblicazione Cod Titolo Libro Cod Titolo Argomento Testo Area La fusione spesso introduce ridondanze, Es.: le entità Pubblicazione e Libro che non sono esattamente sovrapponibili, bensì una entità è sotto entità dell altra. 13
Fusione Editore Nome Ind Pubblicazione Cod Titolo Argomento Testo Area Libro Ancora ridondanze: le associazioni superflue 14
Fusione Schema integrato o Schema Globale (GAV: Globel As View). Editore Nome Ind Pubblicazione Cod Titolo Argomento Testo Area Libro In generale ad ogni concetto dello schema globale corrisponde una vista sugli schemi sorgente Proprietà desiderate dello schema globale: Completezza, dopo la sovrapposizione occorre scoprire tutte le relazioni tra le varie entità (associazioni e gerarchie) Minimalità, cancellazione delle eventuali ridondanze, come da esempio. Leggibilità, nel contesto decisionale dell organizzazione. 15