Nana Mbinkeu Rodrigue Carlos 1 DB unimo OTTIMIZZAZIONE DI QUERY IN MOMIS Università degli studi di Modena e Reggio Emilia Relatore: Prof. Sonia Bergamaschi Correlatore: Prof: Domenico Beneventano Anno Accademico Candidato: Rodrigue C. Nana Mbinkeu
Nana Mbinkeu Rodrigue Carlos 2 DB unimoSommario Introduzione ai sistemi a mediatori ed al sistema MOMIS Definizione del Problema: Ottimizzazione di Query di full join in MOMIS Ottimizzazione del full join : stato dellarte Applicazione ed estensione delle tecniche di ottimizzazione del full join Conclusione e Sviluppi Futuri
Nana Mbinkeu Rodrigue Carlos 3 DB unimoIntroduzione DB relational Application DB object DB Semi-Structured Agenzie di Viaggi hotel Siti Orari dei Voli File Text File text File Text Informazioni Paese Meteo SQL tuple OQL oggetti XQuery XML Motori di ricerca HTML API instanze ? Dove trascorrere le vacanze questestate ?
Nana Mbinkeu Rodrigue Carlos 4 DB unimo Sistemi di integrazione dati basati su mediatore DBMS relational Application DBMS objet DBMS Semi-Structured Agenzie di Viaggi Gli Hotel Siti Orari dei Voli File text File text File text Meteo SQL tuples XML texti API instances ? Mediatore Wrapper SQL OQL tupleobjet APIinstanze Motori di ricerca texti XQuery XML Informazioni Paese
Nana Mbinkeu Rodrigue Carlos 5 DB unimo MOMIS: Integrazione semantica dei dati Global Virtual View (GVV) Source Local Schema Mapping Query
Nana Mbinkeu Rodrigue Carlos 6 DB unimo Mapping Table from L1 full join L2 Join Attribute on (T_L1.COMPANY_ID = T_L2.COMPANY_ID) Join Conditions Full Disjunction L1.companyL2.company COMPANY_ID SUBCONTR CAPITAL_STOCK REGION ADDRESS... Select COMPANY_ID, precedence(T_L1.ADDRESS, T_L2.ADRESS) as Address, T_L2.SUBCONTRACTOR, … Resolution Functions Precedence(L1,L2) G
Nana Mbinkeu Rodrigue Carlos 7 DB unimo Full Disjunction : FJ Dove = {L1, L2, …, Ln} sono le classi locali JC(Li,Lj) condizione di join tra Li e Lj Attualmente nel Query Manager del sistema MOMIS è implementata tale operazione FJ : operazione di full join tra n classi locali
Nana Mbinkeu Rodrigue Carlos 8 DB unimoOTTIMIZZAZIONE Problema: Ottimizzazione di FJ, ovvero di interrogazioni contenenti loperatore di full join. Stato dellarte: Poche tecniche proposte per ottimizzare il full join, rispetto alle numerose tecniche proposte ed implementate per loperatore di join Proposta della tesi: Estendere le tecniche di ottimizzazione al caso specifico di FJ, ovvero di interrogazione con full join tra classi locali sulla base delle seguenti ipotesi: Tutte le classi locali sono connesse tramite join condition Omogeneit à semantica: assenza di conflitti Join consistenti: associatività delloperatore di full outer join
Nana Mbinkeu Rodrigue Carlos 9 DB unimo Query Globale Forma algebrica naive semplificata oppure Sostituzione delloperatore di full outerjoin. Eliminazione delle classi locali : riduzione di Push delle proiezioni e selezioni. Obiettivo dellottimizzazione
Nana Mbinkeu Rodrigue Carlos 10 DB unimo Semplificazione dellouterjoin: stato dellarte Reject Null [ Galindo-Legaria & Ronsenthal, 1997 ] Un predicato P Reject Null su A se è valutato FALSE quando A è NULL ( ) P=(A > 1 and C > 2)
Nana Mbinkeu Rodrigue Carlos 11 DB unimo Semplificazione dellouterjoin: estensione Introduzione Proprietà duale: NOT NULL PROJECTION Eliminazione delle tuple nulle dalla risposta naive ottimizzata
Nana Mbinkeu Rodrigue Carlos 12 DB unimo Esempio di semplificazione La query viene riscritta in algebra relazionale come segue: Mapping table
Nana Mbinkeu Rodrigue Carlos 13 DB unimo Esempio caso B2
Nana Mbinkeu Rodrigue Carlos 14 DB unimo Cosa succede nel sistema MOMIS? versione naive Caso B2 Versione ottimizzata
Nana Mbinkeu Rodrigue Carlos 15 DB unimo Piano generale di semplificazione
Nana Mbinkeu Rodrigue Carlos 16 DB unimo Riduzione degli schemi sugli attributi di proiezione
Nana Mbinkeu Rodrigue Carlos 17 DB unimo Esempio di applicazione dellalgoritmo versione senza riduzione schemi Versione con riduzione schemi
Nana Mbinkeu Rodrigue Carlos 18 DB unimo Riduzione degli schemi in una query
Nana Mbinkeu Rodrigue Carlos 19 DB unimo Combinazione delle due tecniche Risultato (I) Risultato (II)
Nana Mbinkeu Rodrigue Carlos 20 DB unimo Conclusione e Sviluppi Futuri Ottimizzazione delle Query in MOMIS: ottimizzazione algebrica delle query contenenti operatori di full join Applicazione ed estensioni di tecniche a casi specifici Ottimizzazioni sono molto significative, in quanto consentono sia di ridurre il numero di classi coinvolte nell'interrogazione sia di sostituire il full outerjoin con operazioni di join. Sviluppi Futuri: Studio delle propriet à rilassando alcune ipotesi Implementazione nel Query Manager di MOMIS