Controrelatore Chiar.mo Prof. Flavio Bonfatti UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Corso di Laurea in Ingegneria Informatica Tesi di laurea di Guidetti Rossano Relatore Chiar.mo Prof. Sonia Bergamaschi SI-Designer: un tool per l’integrazione di sorgenti distribuite ed eterogenee
Mediator envirOnment for Multiple Information Sources MOMIS Mediator envirOnment for Multiple Information Sources Sistema di integrazione di sorgenti eterogenee e distribuite. Integrazione in due fasi: 1) costruzione di una vista globlale sulle sorgenti: lo schema globale 2) l’utente formula le richieste di informazioni sullo schema globale ricevendo una risposta unificata Un modello di dati comune, ODLI3 (derivato dall’ODL, ODMG)
Architettura di MOMIS SI-Designer Global Schema QueryManager Wrapper Data level Wrapper Relational Source XML Object generic legenda CORBA User GUI Software tools CORBA interaction User interaction WordNet Service level ODB- Tools Global Schema METADATA REPOSITORY Global Schema Builder QueryManager • SLIM WordNet interaction SIM ODB-Tools validation ARTEMIS Clustering TUNIM Map. table tuning SI-Designer MOMIS mediator creates Application Integration Designer USER
La costruzione dello schema globale Schemi Sorgenti ODLI3 Generazione di un Thesaurus Comune
Thesaurus Comune Insieme di relazionali intensionali ed estensionali tra nomi di attributi e classi degli schemi sorgenti conoscenza semantica intra-schema ed inter-schema Le relazioni aggiunte al Thesaurus hanno origini diverse: (1) derivate dagli schemi (ODB-Tools) (2) derivate dal lessico (WordNet) (3) fornite dal progettista (4) inferite (ODB-Tools)
Tipi di relazioni: Relazioni intensionali/terminologiche: esprimono la conoscenza deducibile dalla struttura delle classi e dal significato dei termini (nomi di classi e di attributi) <t1 SYN t2> Sinonimia (stesso concetto) <t1 BT t2> Specializzazione (Broader Terms - BT, Narrower Terms - NT) <t1 RT t2> Associazione (Related Terms - RT) Relazioni estensionali: esprimono la conoscenza deducibile dalle istanze delle classi <C1 SYNext C2> (le istanze di C1 e C2 sono le stesse) <C1 BText C2> (l’istanza di C1 contiene quella di C2)
Validazione delle relazioni: relazioni intensionali tra attributi: basata sulla compatibilità dei domini relazioni estensionali tra classi: basata sulla compatibilità della loro struttura Inferenza di nuove relazioni intensionali ed estensionali usando le tecniche DL (i.e. ODB-Tools)
La costruzione dello schema globale Schemi Sorgenti ODLI3 Generazione di un Thesaurus Comune Generazione dei Cluster
Generazione dei cluster 1) Calcolo di Coefficienti di affinità per ogni coppia di classi ODLI3 2) Algoritmo di clustering: creazione dei gruppi di classi (cluster) che presentano coefficienti di affinità superiori ad una certa soglia Room Section Course University_Student School_Member Student Professor CS_Person Research_Staff 0.375 0.39 0.66 0.54 0.6 0.65 0.68 Division Department Cl 1 2 3 4 Location 5 0.25 Soglia=0.5
La costruzione dello schema globale Schemi Sorgenti ODLI3 Generazione di un Thesaurus Comune Creazione classi globali e Mapping Generazione di Cluster
Creazione delle classi globali e Mapping Per ogni cluster C viene generata una glasse globale G caratterizzata da: nome insieme di attributi globali costruito sulla base di una unione “ragionata” degli attributi che caratterizzano le classi del cluster C: 1) unione di tutti gli attributi locali 2) unificazione (o fusione) degli attributi simili: A SYN B A oppure B come attributo globale A NT B B come attributo globale
mapping-table: rappresentazione tabellare delle mapping rules, regole che esprimono il legame tra attributi globali e locali (corrispondenze and / union, valori default / null) name first_name AND last_name ‘Student’ UNI.School_Member University_Person UNI.Research_Staff CS.CS_Person Null ‘Professor’ dept_code rank works CS.Professor belongs_to CS.Student email case rank of ‘course’: home_email ‘phd’:phd_email TP.University_Student
La costruzione dello schema globale Schemi Sorgenti ODLI3 Generazione di un Thesaurus Comune Schema Globale Mediatore Creazione classi globali e Mapping Generazione di Cluster
SI-Designer
Architettura di SI-Designer Integration Designer SI_Designer GlobalSchemaProxy SIM SAM SLIM ARTEM TUNIM GlobalSchema (CORBA)
Modularità di SI-Designer I moduli che realizzano le fasi dell’integrazione sono indipendenti gli uni dagli altri. SIDPhase SAM SLIM TUNIM ... Per aggiungere una nuova fase è sufficiente creare una classe Java figlia di SIDPhase. Essi sono stati implementati in classi Java figlie di una medesima classe Java astratta SIDPhase, che implementa i metodi di base per l’interazione con il modulo principale.
Architettura di SI-Designer GlobalSchemaProxy SIM SAM SLIM ARTEM TUNIM SAM TUNIM GlobalSchema (CORBA) SAM: Sources Acquisiton Module SIM: Sources Integrator Module SLIM: Souces Lessical Integrator Module ARTEM: clustering TUNIM: TUNIng of mapping-tables Module
SAM Sources Acquisition Module Acquisizione degli schemi ODLI3 delle sorgenti
Acquisizione di uno schema CORBA engine Integration Designer SAM -wrapper name -host name -port# Struttura dati ODLI3 Parser ODLI3 Wrapper (CORBA) Schemi ODLI3 GlobalSchemaProxy
TUNIM TUNIng of mapping-table Module Aiuta il progettista nella creazione delle classi globali e delle relative mapping-table.
Caratteristiche delle classi globali La creazione delle classi globali è una operazione delicata perché è proprio su di esse che l’utente formulerà le interrrogazioni. Ogni classe globale deve: avere un insieme di attributi che rappresenta tutte le informazioni del cluster da cui è stata costruita permettere la formulazione di interrogazioni semplici ed espressive tutti gli attributi locali devono essere mappati sugli attributi globali non ci devono essere, per quanto possibile, attributi globali che rappresentano informazioni concettualmente simili
Funzionalità di TUNIM Creazione di una mapping-table iniziale, ottenuta dall’unione si tutti gli attributi delle classi appartenenti al cluster in esame Individuazione degli attributi globali simili, vale a dire attributi che rappresentano informazioni concettualmente simili Fusione degli attributi simili (semi-automatica)
Creazione automatica della mapping-table iniziale Per ogni attributo locale viene creato un nuovo attributo globale aggiungendo una colonna alla mapping-table. L’attributo locale viene mappato sull’attributo globale aggiunto. UNI.School_Member University_Person name UNI.Research_Staff CS.CS_Person Null faculty year first_name last_name
Individuazione degli attributi globali simili Il modulo costruisce dei grafi i nodi sono gli attributi gli archi sono relazioni del Thesaurus Comune in cui:
Tra tutte le possibili fusioni individuate, il tool esegue per prima le fusioni eseguibili automaticamente. attributi legati solamente da relazioni validate di sinonimia (SYN) e non partecipanti a nessun altro tipo di relazione last_name surname SYN SÍ due attributi legati da una relazione validata di specializzazione name last_name NT
Il tool propone al progettista di risolvere le fusione individuate ma che non possono essere risolte automaticamente. situazioni ambigue di attributi legati da relazioni validate name last_name first_name surname NT SYN name last_name first_name NT
attributi legati da relazioni non validate dept_code (string) belongs_to (object) NT
mapping-table iniziale (unione degli attributi) UNI.School_Member University_Person name UNI.Research_Staff CS.CS_Person Null faculty year first_name last_name name first_name AND last_name ‘Student’ UNI.School_Member University_Person UNI.Research_Staff CS.CS_Person Null ‘Professor’ dept_code rank works CS.Professor belongs_to CS.Student email case rank of ‘course’: home_email ‘phd’:phd_email TP.University_Student mapping-table finale (dopo le fusioni)
L’interfaccia grafica di SAM
L’interfaccia grafica di TUNIM
Conclusioni Il sistema MOMIS è un sistema di integrazione delle informazioni che introduce: intelligenza artificiale approccio semantico SI-Designer offre un reale supporto al progettista dello schema globale: interfaccia semplice automazione
integrazione delle risposte sorgenti multimediali maggior automazione Sviluppi futuri: integrazione delle risposte sorgenti multimediali maggior automazione Piattaforma di sviluppo: Sun Ultra10 Sistema operativo Solaris 2.7 Java 1.2.2 Righe di codice prodotte: 4900
Il lavoro svolto nella presente tesi ha ottenuto un riconoscimento nazionale ed internazionale. I risultati della tesi sono contenuti in un articolo presentato all'Ottavo Convegno Nazionale su Sistemi Evoluti per Basi di Dati - {SEBD2000}, L'Aquila, 26-28 giugno 2000, autori D. Beneventano, S. Bergamaschi, A. Corni, R. Guidetti e G. Malvezzi dal titolo ``SI-Designer: un tool di ausilio all'integrazione intelligente di sorgenti di informazione''. Il componente realizzato durante la tesi è parte importante del sistema MOMIS che verrà presentato alla prossima conferenza internazionale Very Large DataBase {VLDB2000}, Cairo (Egitto), 10-14 settembre 2000, autori D. Beneventano, S. Bergamaschi, S. Castano, A. Corni, R. Guidetti, G. Malvezzi, M. Melchiori e M. Vincini dal titolo “Information Integration: the MOMIS Project Demonstration''.