Capitolo 7 - Integrazione Flashcards
Qual è il motivo dietro la necessità della integrazione di basi di dati?
Per sviluppare un sistema informativo è necessario un processo di integrazione, pulizia e trasformazione dei dati. Questo processo è di tipo incrementale ed evolutivo e necessita di un lungo periodo di tempo.
Cosa si intende con il termine integrazione?
Si intende l’insieme delle attività volte a costruire una versione integrata e consistente del sistema informatico.
Quali sono gli aspetti intensionali e quali quelli estensionali?
Gli aspetti intensionali sono l’integrazione degli schemi, con l’obbiettivo di rendere consistenti i diversi moduli.
Gli aspetti estensionali sono la trasformazione e la pulizia dei dati
Descrivi più nel dettaglio la fase di integrazione dello schema
I principali processi dell’integrazione sono:
- ANALISI E NORMALIZZAZIONE: si analizzano gli schemi sorgenti per produrre degli schemi sempre locali però più completi e consistenti
- DEFINIZIONE DELLO SCHEMA CONCILIATO: è la fase più delicata dove si fondono gli schemi locali in uno schema globale che comprende le informazioni dei vari schemi sorgenti
- FASE DI MAPPING: si definisce la relazione tra i concetti degli schemi sorgenti e lo schema globale (funzione di mapping).
Quali sono le due modalità di visualizzazione dei dati nello schema globale?
Lo schema globale può essere:
- VIRTUALE: ovvero che i dati dello schema globale vengono creati solo nel momento in cui sono richiesti, quindi non sono memorizzati, è la soluzione maggiormente utilizzata.
- MATERIALIZZATO: i dati dello schema vengono trasformati e memorizzati (e quindi duplicati).
Bisogna comunque far notare il fatto che non sempre è possibile creare un unico schema globale per via della complessità dei dati.
Che cos’è l’M.D.M.?
Il Master Data Management è l’integrazione limitata ai dati critici dell’azienda
Parla della fase di analisi e normalizzazione
In questa fase gli analisti si devono sforzare a individuare all’interno degli schemi sorgenti eventuali dipendenze funzionali precedentemente tralasciate e individuare nuove associazioni tra entità. In questa fase però non bisogna introdurre nuovi concetti, bensì esplicitare al meglio quelli già esistenti per poter creare uno schema concettuale il più possibile completo. Dove non è presente lo schema concettuale deve essere ricavato tramite il reverse engineering.
Uno dei problemi principali della normalizzazione è il fatto che le diverse organizzazioni all’interno dell’azienda memorizzano i dati attraverso prospettive diverse, equivalenza dei costrutti di modello o incompatibilità delle specifiche. La fase di integrazione deve quindi evidenziare i concetti comuni, ma anche i concetti distinti e memorizzati in diversi schemi che però hanno associazioni attraverso proprietà semantiche (proprietà inter-schema)
Approfondisci meglio i problemi della fase di analisi e normalizzazione
- DIVERSITA’ DI PROSPETTIVA: è chiaramente un problema, soprattutto nel momento in cui nei diversi schemi si ha un diverso livello di approfondimento dell’entità, a seconda dell’importanza che ricopre nello schema
- EQUIVALENZA DEI COSTRUTTI DI MODELLO: avviene quando lo stesso concetto viene espresso in modi diversi, ma rimane equivalente, in questo caso è necessario identificarlo.
- INCOMPATIBILITA’ DELLE SPECIFICHE: avviene quando due schemi modellano una stessa porzione di dominio ma con specifiche incompatibili tra di loro.
Parla dei concetti comuni.
In fase di analisi è necessario definire il tipo di relazione semantica tra concetti comuni modellati in modo differente nei diversi schemi. Ci sono 4 possibili relazioni differenti tra stessi concetti:
- IDENTITA’: R1 e R2 coincidono, stessi costrutti e sono modellati ugualmente
- EQUIVALENZA: R1 e R2 sono stati modellati con costrutti diversi ma sono equivalenti.
- COMPATIBILITA’: R1 e R2 non sono equivalenti (e quindi neanche identici), però non sono in contrasto tra loro
- INCOMPATIBILITA’: R1 e R2 sono in conflitto a causa di incompatibilità di specifiche
R1 e R2 sono definiti equivalenti se le loro istante possono essere messe in corrispondenza 1:1
Parla dei concetti correlati
In alcuni casi è possibile che concetti diversi in schemi diversi abbiano delle correlazioni.
Durante l’analisi le correlazioni devono venire esplicitate e danno vita a nuove relazioni, esse si chiamano proprietà inter-schema
Parla della fase di integrazione
Essendo la fase di integrazione molto complessa necessità di diversi processi. Per far sì che vada tutto a buon fine è conveniente utilizzare una metodologia, le varie presenti concordano tutte su alcune fasi:
- PREINTEGRAZIONE: comprende la fase di analisi e scelta della strategia di integrazione
- COMPARAZIONE DEGLI SCHEMI: gli schemi vengono comparati per individuare eventuali conflitti e correlazioni
- ALLINEAMENTO DEGLI SCHEMI: gli analisti devono risolvere i conflitti precedentemente individuati
- FUSIONE DEGLI SCHEMI: una volta risolti i conflitti gli schemi locali vengono fusi per creare un unico schema globale
Approfondisci la fase di Preintegrazione nell’integrazione degli schemi
In questa fase principalmente bisogna decidere la strategia di integrazione, ce ne sono di due tipi:
- Tecniche ennarie: l’integrazione avviene prendendo più di due schemi contemporaneamente
- Tecniche binarie: l’integrazione avviene prendendo due schemi alla volta, lo schema risultato viene poi utilizzato per la seconda fase di integrazione.
Con la tecnica binaria a scala è possibile definire quali sono gli schemi sorgenti da cui iniziare per creare lo schema globale, in questo modo si può dare più importanza agli schemi core.
L’approccio binario rende il singolo passo più semplice, mentre quello ennario necessita di meno passaggi ma più complessi.
Inoltre con l’approccio ennario si riescono a creare schemi avendo a disposizione contemporaneamente di tutte le informazioni che caratterizzano un concetto
Approfondisci la fase di comparazione degli schemi
La comparazione degli schemi mira a identificare i possibili conflitti e comparazioni tra i concetti.
Ci sono 4 possibili tipi di conflitti:
- CONFLITTI DI ETEROGENEITA’: discrepanze per l’utilizzo di formalismi diversi (es. UML e E/R)
- CONFLITTI SUI NOMI: omonimie o sinonimie
- CONFLITTI SEMANTICI: si verifica quando due schemi modellano la stessa porzione di mondo reale ma ad un livello diverso di astrazione
- CONFLITTI STRUTTURALI: causati da scelte diverse di modellazione o dall’applicazione di diversi vincoli di integrità, si suddividono in 4 categorie:
- conflitti di tipo: stesso concetto con costrutti diversi
- conflitti di dipendenza: due o più concetti sono correlati con dipendenze diverse in schemi diversi
- conflitti di chiave: uso di identificatori diversi
- conflitti di comportamento: stesso concetto ma comportamento diverso in base allo schema (diverse politiche di cancellazione/modifica)
Approfondisci la fase di allineamento e fusione degli schemi
Durante questa fase si procede con l’eliminazione dei conflitti tramite delle trasformazioni e si procede in seguito con la fusione degli schemi. Ci possono essere dei cambi di nomi, cambi dei tipi di attributi, modifica delle dip. funzionali o modifica di vincoli esistenti. In caso di incertezza è buona norma preferire i vincoli presenti sugli schemi ritenuti più “core”.
I principi della fusione sono:
- COMPLETEZZA: dopo la sovrapposizione degli schemi sorgenti saranno evidenti più proprietà inter-schema.
- MINIMALITA’: visto che la sovrapposizione porta ad una ridondanza dei concetti bisogna cercare di rimanere minimalisti
LEGGIBILITA’: cercare di far rimanere lo schema leggibile
Approfondisci la fase di mapping
dopo la fase di riconciliazione degli schemi si derivano due elementi:
- lo schema riconciliato
- il Mapping, che sarebbe l’insieme di corrispondenze tra gli elementi presenti negli schemi sorgenti e lo schema globale esse vengono utilizzate ogni volta in cui si interrogano i database locali su dati del database globale
Ci sono due tipi di implementazione del mapping:
- GAV (Global as View) ad ogni concetto dello schema globale deve corrispondere una vista. Questo metodo riduce l’estendibilità dello schema riconciliato poiché ad ogni aggiunta di una nuova sorgente bisogna modificare tutti i concetti che la utilizzano, però facilita le interrogazioni perché è tutto presente nella vista
- LAV (Local as View): lo schema globale viene espresso indipendentemente dalle sorgenti, i cui concetti saranno definiti come viste, richiede trasformazioni complesse ma facilita l’estendibilità.