Sistemi Informativi A. A. 2009/10 Parte I Interoperabilità tra sorgenti informative.
-
Upload
marino-izzo -
Category
Documents
-
view
215 -
download
0
Transcript of Sistemi Informativi A. A. 2009/10 Parte I Interoperabilità tra sorgenti informative.
I Database Distribuiti
• Scopo dei database: integrare i dati operazionali e fornire un accesso controllato ai dati
• Lo sviluppo delle reti di computer promuove una metodologia decentralizzata di lavoro
• La condivisione dei dati e l’efficienza nel loro accesso dovrebbe essere migliorata dallo sviluppo di un DBMS distribuito che riflette questa struttura organizzativa
• I DBMS distribuiti dovrebbero aiutare a risolvere il problema delle isole di informazione
Introduzione
I Database Distribuiti
• Database distribuito: una collezione logicamente correlata di dati condivisi
• DBMS distribuito: un sistema software che permette la gestione dei database distribuiti
• Un database distribuito consiste in un singolo database logico suddiviso in un numero di frammenti
• Ciascun sito è capace di processare indipendentemente le richieste degli utenti che coinvolgono i dati locali
• Applicazioni locali e applicazioni globali
Concetti fondamentali
I Database Distribuiti
• Un DDBMS ha le seguenti caratteristiche:
– È una collezione di dati condivisi logicamente correlati
– I dati sono suddivisi in un certo numero di frammenti
– I frammenti possono essere replicati
– I frammenti e le repliche vengono allocati presso opportuni siti
– I siti sono collegati da reti di comunicazione
– I dati su ciascun sito sono sotto il controllo di un DBMS
– Il DBMS su ciascun sito può gestire applicazioni locali autonomamente
– Ciascun DBMS partecipa ad almeno un’applicazione globale
Concetti fondamentali
I Database Distribuiti
• Esempio: una banca
• Un DDBMS deve rendere la distribuzione trasparente (ovvero invisibile) all’utente
• La trasparenza pone svariati problemi addizionali
• Trasparenza e autonomia appaiono essere due proprietà conflittuali
Concetti fondamentali
I Database Distribuiti
• I DDBMS riflettono la natura organizzativa delle aziende
– Molte organizzazioni sono naturalmente distribuite su diverse locazioni
– Ad esempio, in una banca, i membri dello staff della filiale faranno le loro query locali ma il management può effettuare delle query globali
– I dati possono essere memorizzati sul sito più vicino agli utenti
– Un Amministratore globale ha la responsabilità dell’intero sistema
• I DDBMS migliorano la disponibilità dei dati
• I DDBMS migliorano l’affidabilità
• I DDBMS migliorano la perfomance
Vantaggi
I Database Distribuiti
• I DDBMS abbattono i costi
– Legge di Grosch: la potenza di calcolo cresce secondo il quadrato dei costi
– Attualmente è generalmente riconosciuto che costa molto meno realizzare un sistema di piccoli computer che abbiano la potenza equivalente di un singolo grosso computer
– Se gli utenti di un database sono geograficamente sparsi
• I DDBMS consentono una crescita modulare
• Integrazione
– Integrazione di sistemi legacy
– Nessun pacchetto può fornire oggi tutte le funzionalità necessarie oggi ad un’organizzazione
• I DDBMS consentono di rimanere competitivi
Vantaggi
I Database Distribuiti
• Complessità
– Un DBMS distribuito è inerentemente più complessi di un DBMS centralizzato
– I dati possono essere replicati
• Costi
• Sicurezza
• Controllo dell’integrità più difficile
• Mancanza di standard
• Mancanza di esperienza
• Progettazione dei database più complessa
Svantaggi
I Database Distribuiti
• Processing distribuito: un database centralizzato che può essere acceduto tramite una rete di computer
• Il sistema consiste di dati che sono fisicamente distributi attraverso un certo numero di siti della rete
• Distribuzione dei dati in presenza di un processing distribuito
Architetture alternative: Processing distribuito
I Database Distribuiti
• Il processing distribuito è conosciuto anche come sistema multidatabase
Architetture alternative: Processing distribuito
I Database Distribuiti
• DBMS parallelo: un DBMS che opera su più processori e dischi e che è stato progettato per eseguire operazioni in parallelo
• I DBMS paralleli sono basati sulla premessa che un singolo processore non riesce a soddisfare le crescenti richieste di scalabilità, affidabilità e performance a basso costo
• I DBMS paralleli collegano più macchine piccole
• Un DBMS parallelo deve fornire una gestione delle risorse condivise
• Tre principali architetture:
– Shared memory
– Shared disk
– Shared nothing
Architetture alternative: I DBMS paralleli
I Database Distribuiti
• Le tre principali architetture dei DBMS paralleli
Architetture alternative: I DBMS paralleli
I Database Distribuiti
• L’architettura shared memory è un’architettura fortemente accoppiata
• Essa è nota anche come multiprocessing simmetrico
• L’architettura shared disk è un’architettura debolmente accoppiata
• L’architettura shared disk elimina il collo di bottiglia che normalmente si ha con l’architettura shared memory
• I sistemi shared disk sono spesso denominati cluster
• L’architettura shared nothing è spesso nota come processing massivamente parallelo
• Questa architettura è più scalabile di un’architettura shared memory
• La performance è ottima solo quando i dati richiesti vengono memorizzati localmente
Architetture alternative: I DBMS paralleli
I Database Distribuiti
• Alcune volte la definizione shared nothing include i DBMS distribuiti
• La tecnologia parallela viene tipicamente utilizzata per database molto grossi
• Tutti i maggiori distributori di DBMS forniscono la versione parallela dei loro prodotti
Architetture alternative: I DBMS paralleli
I Database Distribuiti
• In un sistema omogeneo tutti i siti utilizzano gli stessi DBMS
• I sistemi omogenei si possono progettare e gestire molto più facilmente rispetto ai sistemi eterogenei
• In un sistema eterogeneo possono operare diversi DBMS che non devono necessariamente essere basati sul medesimo modello dei dati
• I singoli siti hanno già implementato i loro database e l’integrazione viene effettuata successivamente
• Permettere un certo livello di trasparenza
• I dati possono essere richiesti da un altro sito
• Se l’hardware è diverso ma i DBMS sono gli stessi la traduzione è immediata
• Se i DBMS sono differenti la traduzione è complicata e comporta il mapping delle strutture dati
DDBMS omogenei ed eterogenei
I Database Distribuiti
• Necessità di costruire uno schema concettuale comune
• Eventuale presenza di eterogeneità semantiche
• Esempio: casa automobilistica
Cars(serialNo, model, color, autoTrans, cdPlayer, …)
Autos(serial, model, color)Options(serial, option)
• Nomi apparentemente equivalenti sono cambiati
• Differenze nel tipo di dati
DDBMS omogenei ed eterogenei
I Database Distribuiti
• Differenze nei valori
• Differenze semantiche
• Valori mancanti
• Tipica soluzione: utilizzo dei gateway
– Essa potrebbe non supportare la gestione delle transazioni anche per una coppia di sistemi
– Essa mira solo alla traduzione di una query espressa in un linguaggio in una traduzione equivalente espressa in un altro linguaggio
DDBMS omogenei ed eterogenei
I Database Distribuiti
• Processing distribuito
• Sistemi di Database Federati
• Sistemi Informativi Cooperativi
• Data Warehouse
Principali architetture distribuite
I Database Distribuiti
• Consiste nell’implementare connessioni uno-a-uno tra tutte le coppie di database
• Se si hanno n database è necessario scrivere n x (n-1) pezzi di codice
Sistemi di Database Federati
I Database Distribuiti
• Un sistema di database federati può essere il più facile da costruire quando il numero di DBMS coinvolti è basso
• Esempio: casa automobilistica
NeededCars(model, color, autoTrans)
Autos(serial, model, color)Options(serial, option)
• Il Concessionario 1 vuole interrogare il Concessionario 2 in remoto per conoscere quali sono le automobili di quest’ultimo che soddisfano i requisiti specificati in NeededCars
Sistemi di Database Federati
I Database Distribuiti
• Se il Concessionario 1 vuole chiedere la stessa cosa al Concessionario 3 che usa lo schema:
Cars(serialNo, model, color, autoTrans, …)
La query sarebbe differente
Sistemi di Database Federati
Sistemi Informativi Cooperativi
• Esempio: casa automobilistica
Concessionario 1Cars(serialNo, model, color, autoTrans, cdPlayer, …)
Concessionario 2Autos(serial, model, color)
Options(serial, option)
Vista globaleAutosMed(serialNo, model, color, autoTrans, dealer)
Funzionamento
Sistemi Informativi Cooperativi
• Esempio: casa automobilistica
L’utente chiede al mediatore macchine rosse:SELECT serialNo, modelFROM autosMedWHERE color = ‘red’
Wrapper al Concessionario 1SELECT serialNo, modelFROM CarsWHERE color = ‘red’
Wrapper al Concessionario 2SELECT serial, modelFROM AutosWHERE color = ‘red’
Funzionamento
Sistemi Informativi Cooperativi
• Esempio: casa automobilistica
– Il mediatore costruisce l’unione dei due insiemi e restituisce il risultato all’utente
– Si assume che il numero seriale sia una chiave universale
– Vi sono diverse opzioni che un mediatore può utilizzare per rispondere ad una query
Funzionamento
Sistemi Informativi Cooperativi
• Template: query parametriche
Concessionario 1Cars(serialNo, model, color, autoTrans, cdPlayer)
MediatoreAutosMed(serialNo, model, color, autoTrans, dealer)
Template: automobili di un determinato coloreSELECT *FROM AutosMedWHERE color = ‘$C’;SELECT serialNo, model, color, autoTrans, ‘dealer1’FROM CarsWHERE color = ‘$C’;
Progettazione di un wrapper in un CIS - Template
Sistemi Informativi Cooperativi
• Il wrapper potrebbe avere un altro template che specifica solo il parametro $m che rappresenta un modello
• In generale, per gestire tutte le combinazioni che si possono ottenere con n attributi, sarebbero necessari 2n template
• Il numero di template potrebbe diventare enormemente grande
Progettazione di un wrapper in un CIS - Template
Sistemi Informativi Cooperativi
• Esempio: casa automobilistica
– Si supponga che ad un wrapper su un database di un concessionario di automobili sia stato associato il template che consente di selezionare le automobili in base al colore
– Supponiamo che al mediatore venga richiesto di individuare le automobili con un determinato modello e un determinato colore
– Template:
SELECT *FROM AutosMedWHERE model = ‘$m’ AND color = ‘$C’;SELECT serialNo, model, color, autoTrans, ‘dealer1’FROM CarsWHERE model = ‘$m’ AND color = ‘$C’;
Progettazione di un wrapper in un CIS - Filtri
Sistemi Informativi Cooperativi
• Approccio alternativo: il wrapper prima effettui l’esecuzione di alcuni template generici e, successivamente, effettui un opportuno filtraggio per rispondere alle query
• Riuscire a comprendere se una query di un mediatore richieda un sottoinsieme di ciò che viene restituito da qualche template sul wrapper è, in generale, un problema difficile
• Esempio: casa automobilistica
– Abbiamo il template sul colore
– Vogliamo trovare automobili di colore blu ma il cui modello è Focus
– Query al mediatore:SELECT *FROM AutosMedWHERE model = ‘blu’ AND model= ‘Focus’;
Progettazione di un wrapper in un CIS - Filtri
Sistemi Informativi Cooperativi
• Esempio: casa automobilistica
– Utilizzare il template del colore con $C = ‘blu’ per trovare tutte le automobili blu
– Memorizzare il risultato in una relazione temporanea TempAutos(serialNo, model, color, autoTrans, dealer)
– Selezionare da TempAutos il modello ‘Focus’ e restituire il risultato, mediante la query:
SELECT *FROM TempAutosWHERE model = ‘Focus’
– Le tuple di TempAutos sarebbero prodotte una alla volta e immediatamente filtrate
• Le operazioni di filtraggio possono avvenire anche sul Mediatore
Progettazione di un wrapper in un CIS - Filtri
Sistemi Informativi Cooperativi
• È possibile trasformare i dati sul wrapper secondo altre modalità
• Le colonne possono essere opportunamente proiettate prima di trasmettere i dati al mediatore
• È possibile effettuare aggregazioni o join sul wrapper
• Esempio: casa automobilistica
– Il mediatore vuole conoscere le macchine blu Focus presenti nei vari concessionari, ma vuole sapere soltanto il numero seriale, il concessionario e se hanno o meno il cambio automatico
– Query del wrapper su TempAutos:
SELECT serialNo, autoTrans, dealerFROM TempAutosWHERE model = ‘Focus’
Progettazione di un wrapper in un CIS – Altre operazioni sul wrapper
Sistemi Informativi Cooperativi
• Esempio: casa automobilistica
– Si supponga che al mediatore venga chiesto di trovare i concessionari e i modelli tali che il concessionario abbia due macchine rosse, dello stesso modello, una con e una senza il cambio automatico. Si supponga, cioè, che il mediatore chieda al wrapper di rispondere alla seguente query:
SELECT A1.model, A1.dealerFROM AutosMed A1, AutosMed A2WHERE A1.model = A2.model ANDA1.color = ‘red’ AND
A2.color = ‘red’ ANDA1.autoTrans = ‘no’ AND
A2.autoTrans = ‘yes’ ANDA1.dealer = A2.dealer;
– Consideriamo il wrapper relativo al Concessionario 1 e supponiamo che l’unico template utile sia quello sui colori
Progettazione di un wrapper in un CIS – Altre operazioni sul wrapper
Sistemi Informativi Cooperativi
• Esempio: casa automobilistica
– Il wrapper, innanzitutto, applica il template sui colori ponendo $c = ‘rosso’ e ottiene la relazione RedAutos(serialNo, model, color, autoTrans, dealer)
– Successivamente pone in join RedAutos con se stessa ed esegue la relazione necessaria secondo la query:
SELECT DISTINCT A1.model, A1.dealerFROM RedAutos A1, AutosMed A2WHERE A1.model = A2.model ANDA1.autoTrans = ‘no’ AND
A2.autoTrans = ‘yes;
– In questo modo ottiene il risultato desiderato
– Quest’ultima operazione potrebbe essere eseguita a livello di mediatore piuttosto che di wrapper.
Progettazione di un wrapper in un CIS – Altre operazioni sul wrapper
Sistemi Informativi Cooperativi
• La progettazione di un mediatore consiste nella creazione di un database virtuale unico
• La generazione del database globale avviene mediante un’operazione denominata integrazione
• Correlazioni semantiche
• Diverse sorgenti sono state progettate da diversi individui
• Le sorgenti informative coinvolte possono risultare semanticamente eterogenee
• Il processo di integrazione non è una semplice fusione
Progettazione di un mediatore
Sistemi Informativi Cooperativi
• Il processo di integrazione può essere effettuato a due livelli:
– A livello intensionale, per fondere gli schemi
– A livello estensionale, per fondere i dati
• Le sorgenti coinvolte in un processo di integrazione possono avere formati differenti
• La vera difficoltà da affrontare è l’eterogeneità semantica dei dati
Progettazione di un mediatore
L’integrazione di sorgenti informative eterogenee
• I dati in gioco in un DDBMS sono ricavati da un insieme di sorgenti eterogenee
• Schema locale di una sorgente
• Le varie sorgenti possono essere fortemente correlate o completamente indipendenti
• L’analisi delle fonti operazionali non è di per sé sufficiente
• Dopo l’analisi risulta necessario un processo di riconciliazione che prevede integrazione, pulizia e trasformazione
• La fase di integrazione è incentrata sulla componente intensionale
• Pulizia e trasformazione dei dati operano a livello estensionale
Introduzione
L’integrazione di sorgenti informative eterogenee
• Le fasi che permettono di effettuare la riconciliazione dei dati
Introduzione
L’integrazione di sorgenti informative eterogenee
• Il quadro generale per la fase di analisi e riconciliazione è abbastanza complesso
• Passi progettuali che compongono la fase di analisi e riconciliazione di due sorgenti
Introduzione
L’integrazione di sorgenti informative eterogenee
• Sebbene il collegamento dei dati sia realizzato a livello logico, l’utilizzo di formalismi di livello concettuale è fortemente consigliato
• Nel caso in cui si presentino situazioni più semplici sarà sufficiente eliminare le fasi non richieste
• Gli schemi concettuali delle sorgenti rappresentano senz’altro il risultato principale dell’analisi
Introduzione
L’integrazione di sorgenti informative eterogenee
• Il progettista deve acquisire un’approfondita conoscenza delle sorgenti coinvolte attraverso attività di:
– Ricognizione
– Normalizzazione
• La fase di ricognizione e normalizzazione deve essere svolta anche qualora sia presente una sola sorgente dati
• Il progettista deve verificare la completezza degli schemi locali sforzandosi di individuare eventuali correlazioni involontariamente omesse
• Le trasformazioni apportate allo schema non devono introdurre nuovi concetti bensì rendere espliciti tutti quelli ricavabili
Ricognizione e normalizzazione degli schemi
L’integrazione di sorgenti informative eterogenee
• Trasformazioni lecite e illecite durante la fase di ricognizione e normalizzazione di una sorgente
Ricognizione e normalizzazione degli schemi
L’integrazione di sorgenti informative eterogenee
• Questo problema è oggetto di studio da ormai 20 anni
• Attualmente l’attività di ricerca è concentrata sull’automazione del processo di integrazione
• Essa consiste nell’individuazione delle corrispondenze tra concetti rappresentati negli schemi locali e nella risoluzione dei conflitti evidenziati
• Se le diverse sorgenti dati modellassero porzioni indipendenti e distinte del mondo reale il problema dell’integrazione non sussisterebbe
• In pratica ciò non avviene
• Inoltre, il processo di informatizzazione di un sistema informativo è di tipo incrementale ed evolutivo
• A ciò si aggiungono errori di modellazione e di implementazione
Il problema dell’integrazione
L’integrazione di sorgenti informative eterogenee
• Proprietà inter-schema
• È necessario utilizzare un unico formalismo
• Il formalismo prescelto dovrebbe essere quello che garantisce il maggior potere espressivo
Il problema dell’integrazione
L’integrazione di sorgenti informative eterogenee
• Il punto di vista rispetto al quale diversi gruppi di utenti vedono uno stesso concetto può differenziarsi notevolmente
• Esempio: assegnamento dei dipendenti ai dipartimenti
Il problema dell’integrazione – Diversità di prospettiva
L’integrazione di sorgenti informative eterogenee
• Rappresentare uno stesso concetto utilizzando combinazioni diverse dei costrutti
• Esempio: legame tra libri e case editrici
Il problema dell’integrazione – Equivalenza dei costrutti del modello
L’integrazione di sorgenti informative eterogenee
• Schemi differenti che modellano una stessa porzione del dominio applicativo racchiudono concetti diversi
• Esempio: associazione tra professori universitari e corsi
Il problema dell’integrazione – Incompatibilità delle specifiche
• Le assunzioni fatte in un certo momento potrebbero non essere più vere successivamente
L’integrazione di sorgenti informative eterogenee
• Tipo di relazione semantica esistente tra concetti comuni
• Quattro sono le possibili relazioni esistenti
• Identità
• Equivalenza
– Definizione di Rissanen: due schemi sono equivalenti se le loro istanze possono essere messe in corrispondenza uno-a-uno
– L’equivalenza implica che a livello estensionale esistano sempre due insiemi di dati, diversi ma equivalenti, che memorizzano le stesse informazioni
Il problema dell’integrazione – Concetti comuni
L’integrazione di sorgenti informative eterogenee
• Equivalenza
– Due istanze per gli schemi equivalenti relativi allo schema con i libri e le case editrici visto precedentemente
Il problema dell’integrazione – Concetti comuni
L’integrazione di sorgenti informative eterogenee
• Comparabilità
– Gli schemi relativi all’assegnamento dei dipendenti ai dipartimenti sono tra loro comparabili
• Incompatibilità
– Gli schemi relativi all’associazione tra professori universitari e corsi visti precedentemente sono tra loro incompatibili
• Ad esclusione della situazione di identità tutti gli altri casi determinano dei conflitti
Il problema dell’integrazione – Concetti comuni
L’integrazione di sorgenti informative eterogenee
• A seguito dell’integrazione molti concetti diversi ma correlati verranno a trovarsi nello stesso schema dando vita a nuove relazioni che non erano percepibili in precedenza
Il problema dell’integrazione – Concetti correlati
L’integrazione di sorgenti informative eterogenee
• Risolvere i problemi fin qui elencati richiede un complesso insieme di operazioni
• I passi da effettuare possono essere così sintetizzati:
– Preintegrazione
– Comparazione degli schemi
– Allineamento degli schemi
– Fusione e ristrutturazione degli schemi
Le fasi dell’integrazione
L’integrazione di sorgenti informative eterogenee
• Durante questa fase viene svolta l’analisi vera e propria delle sorgenti dati
• Le principali decisioni da prendere riguardano:
– Le porzioni degli schemi che dovranno essere integrate
– La strategia dell’integrazione
Le fasi dell’integrazione - Preintegrazione
L’integrazione di sorgenti informative eterogenee
• Le principali decisioni da prendere riguardano:
– Tecniche ennarie e tecniche binarie
– La maggior parte delle metodologie proposte in letteratura predilige l’approccio binario
– Tecnica binaria a scala: consente di definire l’ordine di esame degli schemi da integrare
– Il progettista dovrà verificare la qualità dei dati contenuti all’interno delle sorgenti
Le fasi dell’integrazione - Preintegrazione
L’integrazione di sorgenti informative eterogenee
• Analisi comparativa dei diversi schemi che mira a identificare le correlazioni e i conflitti tra i concetti in essi espressi
• Il progettista non può prescindere dal collaborare con gli amministratori e gli utenti
• I tipi di conflitti ricadono nelle seguenti categorie:
– Conflitti di eterogeneità
– Conflitti sui nomi
• Sinonimie e omonimie
• Individuazione delle omonimie e individuazione delle sinonimie
• Una corretta documentazione di questo tipo di conflitto si può ottenere mediante dizionari dati
Le fasi dell’integrazione – Comparazione degli schemi
L’integrazione di sorgenti informative eterogenee
• I tipi di conflitti ricadono nelle seguenti categorie:
– Conflitti sui nomi
• Esempi di sinonimie e omonimie
Le fasi dell’integrazione – Comparazione degli schemi
L’integrazione di sorgenti informative eterogenee
• I tipi di conflitti ricadono nelle seguenti categorie:
– Conflitti semantici
• Gli schemi relativi all’assegnamento dei dipendenti ai dipartimenti visti in precedenza sono in conflitto semantico
• Esempio ulteriore:
Le fasi dell’integrazione – Comparazione degli schemi
L’integrazione di sorgenti informative eterogenee
• I tipi di conflitti ricadono nelle seguenti categorie:
– Conflitti strutturali
• Conflitti di tipo (le rappresentazioni per modellare il legame tra libri e case editrici viste in precedenza)
• Conflitti di dipendenza
Le fasi dell’integrazione – Comparazione degli schemi
• Conflitti di chiave
• Conflitti di comportamento
L’integrazione di sorgenti informative eterogenee
• L’individuazione delle correlazioni richiede un’approfondita conoscenza della semantica degli elementi coinvolti
Le fasi dell’integrazione – Comparazione degli schemi
L’integrazione di sorgenti informative eterogenee
• Scopo di questa fase è la risoluzione dei conflitti evidenziatisi al passo precedente
• Tipiche primitive di trasformazione riguardano il cambio dei nomi, la modifica delle dipendenze funzionali, etc.
• Non sempre i conflitti possono essere risolti (esempio: il conflitto relativo all’associazione tra professori universitari e corsi visto in precedenza)
• In caso di incertezza si preferiscono le trasformazioni che avvantaggiano gli schemi ritenuti centrali
• A cominciare da questa fase il progettista deve definire il mapping tra gli elementi degli schemi sorgente e quelli dello schema riconciliato
Le fasi dell’integrazione – Allineamento degli schemi
L’integrazione di sorgenti informative eterogenee
• Durante questa fase gli schemi allineati vengono fusi a formare un unico schema riconciliato
• Vengono sovrapposti i concetti comuni a cui saranno collegati tutti i rimanenti concetti
• Possono essere necessarie ulteriori trasformazioni per garantire le seguenti proprietà:
– Completezza
– Minimalità
– Leggibilità
Le fasi dell’integrazione – Fusione e ristrutturazione degli schemi
L’integrazione di sorgenti informative eterogenee
– Due schemi equivalenti con un diverso livello di leggibilità
Le fasi dell’integrazione – Fusione e ristrutturazione degli schemi
L’integrazione di sorgenti informative eterogenee
• Il risultato dell’analisi prevede lo schema riconciliato e l’insieme delle corrispondenze tra gli elementi presenti negli schemi sorgente e quelli dello schema riconciliato
• Queste corrispondenze giocano un ruolo cruciale
• Approccio GAV (Global-As-View): ad ogni concetto dello schema globale deve essere associata una vista il cui significato è definito in base ai concetti che risiedono sugli schemi sorgente
• La modalità con cui vengono definite le corrispondenze incide sulla formulazione delle interrogazioni utilizzate negli strumenti ETL per il caricamento dei dati
• Con la soluzione GAV sarà sufficiente l’unfolding
• La semplicità di formulazione delle interrogazioni viene pagata in termini di estendibilità dello schema riconciliato
Definizione delle corrispondenze
L’integrazione di sorgenti informative eterogenee
• Due mapping di tipo GAV nell’ambito di un sistema di ordini
Definizione delle corrispondenze
L’integrazione di sorgenti informative eterogenee
• Approccio LAV (Local-As-View): lo schema globale è espresso indipendentemente dalle sorgenti i cui concetti saranno definiti come viste sullo schema globale
• Questa soluzione richiede trasformazioni più complesse indicate in generale con il termine “query rewriting”
• L’approccio LAV favorisce l’estensibilità dello schema riconciliato
Definizione delle corrispondenze