Università degli studi di Modena e Reggio Emilia Facoltà di Ingegneria - Sede di Modena Corso di Laurea in Ingegneria Informatica Elaborazione di interrogazioni.

Slides:



Advertisements
Presentazioni simili
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Advertisements

Structured Query Language (SQL) Presentazione 13.1 Informatica Generale (Prof. Luca A. Ludovico)
una interfaccia internet per il sistema Momis
di Architetture Peer to Peer per la Gestione di Database Distribuiti
Nana Mbinkeu Rodrigue Carlos 1 DB unimo OTTIMIZZAZIONE DI QUERY IN MOMIS Università degli studi di Modena e Reggio Emilia Relatore: Prof. Sonia.
Query OQL e XQUERY a confronto
Progetto e realizzazione di un wrapper XML Schema per il sistema MOMIS
Facoltà di Ingegneria di Modena ANALISI E SVILUPPO DI TECNICHE PER
Universit à Degli Studi di Modena e Reggio Emilia Facolt à di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Nuovo Ordinamento Didattico.
WebProfessional Web Content Management System
a mediatore MOMIS nell’integrazione di
Università degli studi di Modena e Reggio Emilia
1 Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento.
Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Relatore:
Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Analisi.
Integrazione di standard di classificazione per le-commerce: una nuova metodologia basata sul sistema MOMIS UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA.
SQL92 e XQuery1.0 a confronto1 SQL92 E XQUERY1.0 A CONFRONTO Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria - Sede di Modena Corso.
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Progetto e sviluppo di.
Re-engineering del wrapper XML Schema per il sistema MOMIS
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – sede Modena Corso di Laurea in Ingegneria Informatica Progetto e sviluppo di un.
1 Integrazione di Sorgenti HTML in MOMIS: Analisi Comparativa degli Strumenti Esistenti Integrazione di Sorgenti HTML in MOMIS: Analisi Comparativa degli.
1 Facoltà di Ingegneria di Modena Corso di Laurea in Ingegneria Informatica Università degli Studi di Modena e Reggio Emilia Confronto dei DBMS RELAZIONALI.
U NIVERISTÀ DEGLI S TUDI DI M ODENA E R EGGIO E MILIA Facoltà di Ingegneria - Sede di Modena Corso di Laurea in Ingegneria Informatica Dinamica delle Ontologie:
Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Semantic.
Serializzazione di oggetti in formato XML nellambito del sistema MOMIS Davide Lenzi Chiar.mo Prof. Sonia Bergamaschi Chiar.mo Prof. Michele.
Il mio nome è Alain Fergnani e nel corso della tesi mi sono occupato della dinamica delle ontologie per il Web Semantico, e in particolare dell’approccio.
Università degli Studi di Modena e Reggio Emilia
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica MOMIS: servizi di wrapping.
Università degli studi di Modena e Reggio Emilia
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Progetto e realizzazione.
Progetto e realizzazione del software "Solar Data Manager"
Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria di Modena Corso di Laurea in Ingegneria Informatica Integrazione di WordNet Domains.
Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Ontologie Lessicali Multilingua:
Analisi e Contromisure di tecniche di Sql Injection
UNIVERSITA’ DEGLI STUDI DI MODENA E REGGIO EMILIA
Università degli studi di Modena e Reggio Emilia Progetto e realizzazione di un tool di sincronizzazione database server – palmare per il controllo del.
COMPARAZIONE DI STRUMENTI SOFTWARE PER LA CREAZIONE, LA GESTIONE E LINTEGRAZIONE DI ONTOLOGIE Università degli Studi Modena e Reggio Emilia Facoltà di.
Biglietti e Ritardi: schema E/R
Generazione di Piani attraverso Grafi di Pianificazione
SQL Dati i seguenti schemi relazionali:
Cammini minimi con una sorgente
Tema 1: Integrazione di dati provenienti da sorgenti eterogenee
Università degli Studi di Roma La Sapienza
Duplicati Lalgebra relazionale non ammette duplicati, SQL li ammette. Quindi select Città from Persona where Cognome= Rossi estrae una lista di città in.
Normalizzazione Le forme normali certificano che la base di dati soddisfa criteri di qualità che mirano ad evitare le ridondanze e i conseguenti effetti.
Interrogazione Efficiente di Documenti XML Temporali e una sua Applicazione in Ambito Normativo Enrico Ronchetti Enrico Ronchetti Università degli Studi.
Cristian Colli Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Corso di Laurea in Ingegneria Informatica Anno Accademico 2001/2002.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA FACOLTÀ DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA Relatore: Chiar.mo Prof. Paolo Tiberio.
Daniel Stoilov Tesi di Laurea
Approssimazione semantica per routing di interrogazioni in un PDMS Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Corso di Laurea.
Basi di dati Claudia Raibulet
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA FACOLTÀ DI INGEGNERIA DI MODENA Corso di Laurea Specialistica in Ingegneria Informatica PROGETTO E REALIZZAZIONE.
Il componente Query Manager del sistema MOMIS: testing ed analisi delle performance UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA _____________________________________________________.
Lezioni di Ricerca Operativa Corso di Laurea in Informatica
MODELLO LOGICO DEI DATI
Prof. Cerulli – Dott.ssa Gentili
Università degli Studi di Cagliari
Università degli Studi di Bologna
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA DIPARTIMENTO DI INGEGNERIA “Enzo Ferrari” Corso di Laurea in Ingegneria Informatica Anno Accademico 2013/2014.
UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI Corso di Laurea in Scienze dell’Informazione Indici gerarchizzati.
Il Linguaggio SQL. Le interrogazioni in SQL (continua…) La parte di SQL dedicata alla formulazione di interrogazioni fa parte del DML. SQL esprime le.
D.I.Me.Ca. – D.I.Me.Ca. – Università degli Studi di Cagliari Facoltà di Ingegneria Dipartimento di Ingegneria.
Raggruppamenti e target list scorretta select padre, avg(f.reddito), p.reddito from persone f join paternita on figlio = nome join persone p on padre =
Funzionalità del DBMS relazionale l Funzioni per –definizione della base di dati –inserimento / rimozione /aggiornamento di informazioni deve soddisfare.
Università degli studi di Modena e Reggio Emilia Facoltà di Scienze Fisiche, Informatiche e Matematiche Corso di Laurea in Informatica Progettazione e.
1 Lixto tools evaluations for HTML data Integration in Momis Lixto tools evaluations for HTML data Integration in Momis Università degli Studi di Modena.
1 DB unimo CROSS LAB Integrazione framework MOMIS - BCI Parma, 18/09/2007 Sonia Bergamaschi, Maurizio Vincini, Mirko Orsini
ALGORITMI, LINGUAGGI E PROGRAMMI Facoltà di Lingue e Letterature Straniere Corso di laurea in Relazioni Pubbliche.
Lezioni di Ricerca Operativa Corso di Laurea in Informatica
Transcript della presentazione:

Università degli studi di Modena e Reggio Emilia Facoltà di Ingegneria - Sede di Modena Corso di Laurea in Ingegneria Informatica Elaborazione di interrogazioni in un sistema a mediatore: Fusione dei dati Con Risoluzione di conflitti Tesi di Laurea di Marco Mattioli Controrelatore Prof. Ing. Paolo Tiberio Relatore Chiar.mo Prof. Sonia Bergamaschi Correlatore Prof. Ing. Domenico Beneventano

Sommario Il modello a mediatore La qualità dei dati e la risoluzione dei conflitti - Funzione di risoluzione Linterrogazione di database autonomi - Full Disjunction - Algoritmi risolutivi

Il Modello a Mediatore Informazioni FIAT pagine web FIAT Informazioni Volkswagen pagine web Volkswagen... Motore di ricerca Altre Pagine MEDIATORE MOMIS query Lista di auto dai cataloghi FIAT e Wolkswagen rispondenti alla richiesta Approccio MOMISUsando un motore di ricerca internet Voglio comprare unauto con il motore tra i 1600 e i 2000cc, con un costo minore di 18000

Il Modello a Mediatore Lutente esegue le richieste su uno SCHEMA GLOBALE Il mediatore seleziona le fonti locali e traduce, la richiesta per renderla comprensibile dalle fonti locali (MAPPING TABLE) Ogni richiesta tradotta viene spedita alla rispettiva fonte locale ed eseguita I risultati vengono raccolti e tradotti per lo schema globale Approccio GAV: ogni attributo della classe globale è mappato in almeno una classe locale. Le classi locali sono autonome: i dati potrebbero contenere delle inconsistenze.

I Conflitti nei Dati Genericamente: quando una entità presenta aspetti inconsistenti o contrastanti. In ambito relazionale: quando i valori di uno o più attributi comuni di tuple che vanno fuse hanno valori discordanti. Esempio: Carta Identità NomeIndirizzo 22222M. RossiVia Indipendenza L. VerdiViale Vittorio Veneto 30 Comune Carta Identità NomeIndirizzo 22222M. RossiVia F.lli Rosselli L. VerdiViale Vittorio Veneto 30 USL Conflitto su Indirizzo nella prima tupla. Come comportarsi?

I Conflitti nei Dati Non fornire in uscita le informazioni conflittuali (L. Bertossi, J. Chomicki 2003) Fornire in uscita un solo valore per ogni conflitto (F. Naumann 2000) (risoluzione dei conflitti) Fornire in uscita anche tutti i valori conflittuali (D. Lembo, M. Lenzerini 2002) Carta identitàNomeIndirizzo 55555L. VerdiViale Vittorio Veneto 30 Carta identitàNomeIndirizzo 22222M. RossiVia Indipendenza 26, Via F.lli Rosselli L. VerdiViale Vittorio Veneto 30 Carta identitàNomeIndirizzo 22222M. Rossi f (Via Indipendenza 26, Via F.lli Rosselli 35) 55555L. VerdiViale Vittorio Veneto 30

La Qualità nei Dati Utile per la selezione delle fonti (F. Naumann 1998) Utile per risolvere i conflitti (H. J. Lenz, F. Naumann, M. Neiling 2003) Concetto non ben definito - Numerosi parametri (>60) e metodi per calcolarla. - Limportanza dei parametri varia in base allapplicazione ed allutente Esempi: *Tempo di risposta *Consistenza *Completezza *Accuratezza *Aggiornamento Fonte più affidabileDato probabilmente corretto

La Funzione di Risoluzione Dati: R 1, …,R n : insieme di relazioni X 1, …,X n : valori assunti da R 1 …R n per lattributo A D + : D. Dove D è il dominio di A Allora si definisce funzione di risoluzione la funzione: f rA = f rA ( X1,…,Xn) : D + n D + f rA = se i X i = X i se ! i |X i g (X 1, …,X n ) altrimenti Dove g (X 1, …,X n ) : D + n D +

La Funzione di Risoluzione g (X1…Xn) preposta a risolvere i conflitti. - deve essere commutativa - Si possono identificare tre categorie, a seconda del tipo di attributo *Funzioni per attributi numerici (media, mediana, somma) *Funzioni per attributi non numerici (concatena, più corto, più lungo) *Funzioni per ogni tipo di attributo (max qualità, random, fonte stabilita) Si possono distinguere due tipi di funzione di risoluzione: -Funzione di risoluzione standard risolve i conflitti utilizzando i valori dellattributo da risolvere -Funzione di risoluzione generalizzata si serve anche dei valori di altri attributi dello schema Es.: attributo prezzo utilizza attributo data

Grafi ed Ipergrafi Grafi secondo Galindo-Legaria - i nodi rappresentano le relazioni - gli archi rappresentano i join tra le relazioni Ipergrafi secondo Fagin - i nodi rappresentano gli attributi - gli iperarchi rappresentano le relazioni Un iperarco può congiungere un numero qualsiasi di nodi Esempio di ipergrafo Esempio di grafo

Full Disjunction Operatore in grado di calcolare louterjoin di n relazioni Preserva tutte le possibili connessioni tra i fatti Esempio: BC AB AC L1L2L3 select * from (L1 full outer join L2 on L1.B=L2.B) full outer join L3 on (L2.C=L3.C or L1.A=L3.A) Metodo basato sullOR L1.AL1.BL2.BL2.CL3.AL3.C

Gli Algoritmi SOJO e PSOJ Calcolano la full disjunction Utilizzano il natural outerjoin come unico operatore Fanno lipotesi di omogeneità semantica SOJO (Sound Ordering of OuterJoin) ideato da Ullman PSOJ (Pseudo Sequence of OuterJoin) da utilizzare in ambito MOMIS Principali differenze SOJO (Ullman 1996) a.basato su ipergrafi b.funziona correttamente solo per ipergrafi -aciclici c.ogni relazione compare una ed una sola volta nella sequenza di join d.necessita di un ordinamento per le relazioni PSOJ a.basato su grafi b.funziona correttamente per ogni tipo di grafo/ipergrafo c.ogni relazione può comparire più volte nella sequenza di join d.non necessita di ordinamento

Il Natural Outerjoin Funzionamento simile al full outerjoin Proietta il risultato sullunione degli schemi Computa lequijoin su tutti gli attributi comuni Esempio: AC BC RS ABC R.AR.CS.BS.C Natural OuterjoinFull Outerjoin

Le Modifiche al PSOJ Rimozione del vincolo di omogeneità semantica - Funzione di risoluzione - Necessità di un ordinamento - Fallimento in alcuni casi E necessario che gli attributi di join siano compattati Natural Outerjoin (non standard SQL92) Full Outerjoin + Funzione di risoluzione sugli attributi di join

LAlgoritmo PSOJ Modificato Input: - R = {R 1, …, R n } su S ( G ) - JM = {F ij : i<j, i = 1,…,n-1 ; j = 2,…,n} - F = { f r1,…, f rm } Output: - Full Disjunction Operatore di join: full outerjoin

Procedimento: Poni F 0 = JM, R o = R, NR= n. relazioni for (i=0; i< NR;i++) seleziona R i R i R i+1 = {R i = f = R i : R i R i, R i R i, f = OJC i (R i, R i ) null} calcola tutti i join in R i+1 R R i+1 tupla di R attributo di join j della tupla applica la funzione di risoluzione f rj (associativa) tupla della relazione attributo j della tupla applica la funzione di risoluzione f rj Restituisci R NP

Esempio di applicazione dellalgoritmo PSOJ

[(R 3 R 2 ) (R 4 R 2 )] [(R 1 R 2 ) (R 4 R 2 )] F 2,3 F 3,4 F 2,4 F 1,3 F 1,2 F 1,4 F 2,4

Conclusioni Come procedere al calcolo della full disjunction?

Gradi di Ciclicità degli Ipergrafi Per i grafi la nozione di ciclicità è standard: Un grafo è ciclico se esiste un percorso che ha inizio e termine sullo stesso nodo Per gli ipergrafi sono stati introdotti vari gradi di ciclicità: -ciclicità Berge-ciclicità Si ha che: Berge-aciclicità -aciclicità -aciclicità -aciclicità Per la nostra trattazione sono importanti i concetti di -ciclicità e -ciclicità

-ciclicità e -ciclicità Schema -ciclico

I Limiti dellAlgoritmo Il limite dellalgoritmo sono gli ipergrafi -ciclici e -aciclici, ma utilizzando il full outerjoin invece che il natural outerjoin la situazione è diversa. Gli ipergrafi sono progettati per loperatore di natural outerjoin e quindi su join basati su tutti gli attributi comuni alle relazioni. I -cicli portano al fallimento dellalgoritmo solo se sono formati da attributi di join; quindi alcuni ipergrafi -ciclici possono essere affrontati dallalgoritmo, a seconda delle condizioni di join. Riefinendo gli ipergrafi usando come nodi solo gli attributi di join e come iperarchi solo gli attributi di join delle relazioni quanto detto finora vale anche per il full outerjoin.

La Motivazione dellOrdinamento Lalgoritmo si basa sul concetto che: FD(Li,Lj) = Li= Fij=Lj Essendo la full disjunction una relazione: FD(FD(Li,Lj),FD(Li,Lk)) = FD(Li,Lj)= Fjk=FD(Li,Lk) Queste uguaglianze valgono se e solo se: Li= Fij=Lj = Li FijLj Li Lj che vale se e solo se Li ed Lj non hanno tuple sussunte. Lipotesi di consistenza dei join assicura la validità della proprietà per le relazioni base, ma non viene assicurato niente per i passaggi successivi. Perché ciò avvenga è necessario preservare tale ipotesi attraverso un ordinamento.

LOrdinamento da Utilizzare Dato un grafo G=(V,E) con V={R1,…,Rn} e E={(Ri,Rj) | Ri,Rj V, Fij NULL} si definisce nodo ammissibile un nodo Ri V se, essendo RJ=Rj1,…,Rjn linsieme di tutti i nodi collegati direttamente a Ri, esiste un percorso di G =(V,E ) con V =V - {Ri} e E ={(Ri,Rj) | Ri,Rj V, Fij NULL} che colleghi tutti i componenti di RJ tra loro. Si definisce G linsieme di tutti i nodi ammissibili del grafo G. Dato un grafo G=(V,E) con V={R1,…,Rn} e E={(Ri,Rj) | Ri,Rj V, Fij NULL} e dato linsieme di tutti i nodi ammissibili di G, si definisce funzione di ricerca fric(G) una funzione che, dato G, restituisce linsieme V V tale che: V ={Ri G | (Ri,Rj) E, Rj | (Rj,Rk) E, Fjk ((S(Ri) S(Rj)) - (S(Ri) S(Rj)))= } con Ri Rj Rk V

LOrdinamento da Utilizzare E necessario cercare un ordinamento ununica volta, dati gli schemi delle relazioni e le condizioni di join. Non esiste sempre un ordinamento, ma se esiste va ricercato prima tra i nodi che ad ogni passo hanno join che coinvolgono il maggior numero di attributi. Grafo risolubileGrafo non risolubile Esempio:

Le Modifiche dellAlgoritmo Nei grafi non totalmente connessi per evitare la disconnessione si prendono per primi i nodi con un numero minore di connessioni FALSO esempio: Soluzione: Si può usare un nodo se e solo se dopo la sua eliminazione esiste un percorso che congiunga tutti i nodi a cui questo è direttamente connesso. Dato un grafo G ed un nodo Li G, lutilizzo del nodo Li non disconnette G se e solo se Lj Fij NULL Lk Fjk NULL, Fik NULL con i j k dove Fij indica la condizione di join tra le fonti Li e Lj.

Le Modifiche dellAlgoritmo La condizione di join False viene vista come un qualsiasi join ed affrontata con loperatore di outerjoin. ERRATO False indica che linsieme degli oggetti contenuti nelle due classi è disgiunto. Un join produrrebbe un prodotto cartesiano, creando congiunzioni che non devono esistere. Soluzione Trattare le condizioni di join False come assenti oppure Utilizzare loperatore di outerunion

Le Modifiche dellAlgoritmo Nel caso di grafi completamente connessi non è necessario un ordinamento. ERRATO Esempio:

La Riscrittura della Query Query globale: Q Query locale per la classe L: QL 1.Normalizzazione della query Q Si riscrive Q nella forma Q d =C1 Cn dove Ci=P1 Pn con Pi predicati atomici 2.Scrittura della condizione where per QL: Tutti i fattori di Qd che possono essere ricercati in L 3.Scrittura della condizione residua di Q Tutti i fattori non compresi in tutte le condizione where locali 4.Scrittura della select list di QL Per ogni classe locale L gli attributi: della select list di Q + di join per L + della condizione residua Tutti gli attributi devono essere tradotti tramite la mapping table. La query globale viene riformulata tramite la full disjunction basata sulla join table e tramite la condizione residua

La Riscrittura e la Funzione di Risoluzione Generalizzata prezzodatacodice 409/ / prezzodatacodice 5010/ / select * from G where prezzo 1/2 L1 L2 select * from Li where prezzo 1/2 tuple risultanti da L1tuple risultanti da L2 prezzodatacodice 409/ prezzodatacodice Non ci sono conflitti: la tupla di L1 costituisce il risultato restituito

La Riscrittura e la Funzione di Risoluzione Generalizzata select * from G select * from Li prezzodatacodice 409/ / prezzodatacodice 5010/ / tuple restituite da L1tuple restituite da L2 Conflitto di prezzo su Si sceglie il valore più aggiornato. Conflitto di data su Si sceglie il valore più elevato. prezzodatacodice 5010/ / / tuple restituite da G

La Riscrittura e la Funzione di Risoluzione Generalizzata select * from G where prezzo 1/2 prezzodatacodice 409/ tuple restituite da G select * from G tuple restituite da G prezzodatacodice 5010/ / / I risultati della prima esecuzione non sono un sottoinsieme dei risultati della seconda e quindi sono errati. Le condizioni di selezione poste su attributi che usano funzioni di risoluzione generalizzate devono fare parte esclusivamente della clausola residua, senza considerare che siano o meno mappate su tutte le classi locali, e non devono essere spedite alla classi locali.

La Riscrittura e la Funzione di Risoluzione Generalizzata select * from G where prezzo 1/2 select * from Li where Data>1/2 prezzodatacodice 409/ tuple restituite da L1 prezzodatacodice 5010/ tuple restituite da L2 prezzodatacodice 5010/ G prezzodatacodice tuple restituite da G prezzo<45