Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Progettazione dell’alimentazione
29 Novembre 2021
Progettazione dell’alimentazione
1
Alimentazione dello schema riconciliato
Staging Trasformazione
Pulizia
area
Trasformazione: operazioni
Estrazione
Estrazione: operazioni che che conformano i dati delle
permettono di acquisire i dati sorgenti allo schema
dalle sorgenti Sorgente I Sorgente riconciliato
II
Prof. S. Castano Sistemi Informativi
4 - AA. 2021/22 4
2
Estrazione dei dati
3
Estrazione dei dati
• Il risultato della fase di estrazione incrementale consiste
nell’insieme di record sorgente inseriti, modificati o cancellati
rispetto alla precedente esecuzione della procedura di
estrazione.
• Procedura di estrazione
– Immediata, e.g., mediante funzioni dell’applicazione e/o trigger, che riportano
nella staging area i record inseriti/modificati contestualmente alla loro
registrazione nel sistema operazionale.
– Ritardata, e.g., attraverso timestamp indicanti la modifica, che posticipa il
prelevamento dei dati inseriti/modificati rispetto all’ultimo caricamento.
Il risultato dell’estrazione
Differenza incrementale
cod prodotto cliente qtà oper
3 Barbera Lumini 75 C
4 Sangiovese Cappelli 145 M
5 Vermentino Maltoni 25 I
6 Trebbiano Maltoni 150 I
4
Trasformazione dei dati
• Operazioni sui dati sorgente per conformare la loro struttura e
formato allo schema integrato globale:
– Conversione/standardizzazione formati: applicata a singoli campi di
schemi sorgente che hanno un formato diverso rispetto al corrispondente
campo dello schema riconciliato (e.g., da maiuscolo a minuscolo, da intero a
decimale, formato standard date “gg/mm/aaaa”)
– Standardizzazione codici classificazione: convenzioni diverse in sorgenti
diverse che vanno riportate alla codifica standard scelta per lo schema
globale. Es., sesso delle persone M/F, 0/1, Maschio/Femmina. Uso di tabelle
di conversione.
– Concatenamento: combinare il contenuto di campi diversi che sono stati
unificati in un unico campo a livello di schema globale. Es. Nome, Cognome
à Nominativo (“Mario” “Rossi” à “Mario Rossi”)
– Separazione: separare il contenuto di un campo sorgente rappresentato
mediante campi diversi nello schema globale. Es: Ragione sociale à Società,
Struttura societaria, (“Deterge S.p.A” à “Deterge”, “S.p.A”)
– Trasformazione dati continui in parametrizzazioni discrete: i dati
dimensionali devono avere un dominio discreto e finito, non sempre è così
nelle sorgenti operazionali. Es.: peso di una spedizione può avere un range
di valori infinito à trasformazione in classi e.g., fino a 10 kg, da 10,01 a 100
kg, etc.
Prof. S. Castano Sistemi Informativi
9 - AA. 2021/22 9
5
Caricamento dei dati
• I dati estratti e trasformati sono caricati dalla staging
area al database riconciliato
– Con estrazione statica, i dati nel livello riconciliato sono
cancellati e sostituiti completamente con quelli nuovi
– Con estrazione incrementale, si inseriscono i nuovi record e
occorre individuare i record che hanno subito modifiche
6
Pulizia dei dati
ü Informazioni mancanti
• Alcuni campi non contengono un valore (es., la data di nascita di un
cliente può non essere ritenuta importante in fase di attivazione di un
contratto e viene tralasciata dal’operatore ma può essere importante
per il marketing)
ü Informazioni duplicate
• Due sorgenti forniscono la stessa informazione ma i record utilizzano
chiavi diverse, occorre quindi identificare corrispondenze tra i record in
fase di fusione
7
Pulizia dei dati
n Tecniche ad hoc
Ogni dominio applicativo ha regole di business proprie, troppo
specifiche per essere verificate tramite strumenti standard.
Il progettista dovrà definire interrogazioni o piccoli programmi in grado
di verificare che i dati rispettino le regole di business del dominio.
ü E.g., profitto = guadagno – spese
8
Pulizia dei dati
Join approssimato
DB Marketing DB Amministrazione
codice
CF ordine data quantità
CLIENTE ORDINE
codice
CF ordine data quantità
CLIENTE fa ORDINE
(0,n) (1,1)
9
Purge/Merge problem
DB Marketing sede di DB Marketing sede di
Roma Milano
C C
CLIENTI
10
La similarità tra i record
• Similarità basata su affinità terminologica
11
Alimentazione del DM
12
Alimentazione di dimension table
• gerarchie dinamiche di tipo 1: sovrascrivere il nuovo
valore al vecchio valore senza tenere traccia del
vecchio valore; uso della tabella di look-up per
ritrovare l’ID della tupla da sovrascrivere
• gerarchie dinamiche di tipo 2: mantenimento vecchia
tupla e nuova tupla; inserimento di una nuova tupla
con i dati aggiornati e aggiornamento della look-up
table.
• gerarchie dinamiche di tipo 3: completa storicità,
inserimento del timestamp di fine validità nella
vecchia tupla, uso della tabella di look-up per
ritrovare l’ID della vecchia tupla; inserimento di una
nuova tupla con i dati aggiornati e aggiornamento
della look-up table.
13
Alimentazione di viste materializzate
14