UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di...

Post on 01-May-2015

216 views 0 download

Transcript of UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di...

UNIVERSITA’ DEGLI STUDI DI MODENA E REGGIO EMILIA

Facoltà di Ingegneria – Sede di ModenaCorso di Laurea in Ingegneria Informatica

MOMIS: servizi di wrapping per sorgenti relazionali JDBC

Relatore

Chiar.mo Prof. Sonia Bergamaschi

Correlatore

Ing. Francesco Guerra

Tesi di Laurea di

Stefano Coriani

Anno Accademico 2000 - 2001

MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources

Obiettivo:Obiettivo: Realizzazione di uno strumento semi-automatico Realizzazione di uno strumento semi-automatico per l’integrazione di sorgenti eterogenee e distribuiteper l’integrazione di sorgenti eterogenee e distribuite

MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources

Obiettivo:Obiettivo: Realizzazione di uno strumento semi-automatico Realizzazione di uno strumento semi-automatico per l’integrazione di sorgenti eterogenee e distribuiteper l’integrazione di sorgenti eterogenee e distribuite

Approccio adottato:Approccio adottato: semantico semantico ee virtuale virtuale

MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources

Obiettivo:Obiettivo: Realizzazione di uno strumento semi-automatico Realizzazione di uno strumento semi-automatico per l’integrazione di sorgenti eterogenee e distribuiteper l’integrazione di sorgenti eterogenee e distribuite

Approccio adottato:Approccio adottato: semantico semantico ee virtuale virtuale

Architettura: Architettura: organizzata in tre livelli:organizzata in tre livelli:

- Livello Mediatore- Livello Mediatore

- - Livello Wrapper

- Livello Utente

MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources

MOMIS:MOMIS:Processo di generazione del Common Thesaurus:Processo di generazione del Common Thesaurus:

MOMIS:MOMIS:Processo di generazione del Common Thesaurus:Processo di generazione del Common Thesaurus:

- Acquisizione delle sorgenti (SAM)- Acquisizione delle sorgenti (SAM)

MOMIS:MOMIS:Processo di generazione del Common Thesaurus:Processo di generazione del Common Thesaurus:

- Acquisizione delle sorgenti (SAM)- Acquisizione delle sorgenti (SAM)

- Acquisizione delle relazioni strutturali - Acquisizione delle relazioni strutturali intra schema(SIM)intra schema(SIM)

MOMIS:MOMIS:Processo di generazione del Common Thesaurus:Processo di generazione del Common Thesaurus:

- Acquisizione delle sorgenti (SAM)- Acquisizione delle sorgenti (SAM)

- Acquisizione delle relazioni strutturali - Acquisizione delle relazioni strutturali intra schema(SIM)intra schema(SIM)

- Estrazione delle relazioni lessicali (SLIM)- Estrazione delle relazioni lessicali (SLIM)

MOMIS:MOMIS:Processo di generazione del Common Thesaurus:Processo di generazione del Common Thesaurus:

- Acquisizione delle sorgenti (SAM)- Acquisizione delle sorgenti (SAM)

- Acquisizione delle relazioni strutturali - Acquisizione delle relazioni strutturali intra schema(SIM)intra schema(SIM)

- Estrazione delle relazioni lessicali (SLIM)- Estrazione delle relazioni lessicali (SLIM)

- Validazione (ODB-TOOLS)- Validazione (ODB-TOOLS)

MOMIS:MOMIS:Processo di generazione del Common Thesaurus:Processo di generazione del Common Thesaurus:

- Acquisizione delle sorgenti (SAM)- Acquisizione delle sorgenti (SAM)

- Acquisizione delle relazioni strutturali - Acquisizione delle relazioni strutturali intra schema(SIM)intra schema(SIM)

- Estrazione delle relazioni lessicali (SLIM)- Estrazione delle relazioni lessicali (SLIM)

- Validazione (ODB-TOOLS)- Validazione (ODB-TOOLS)

- Inferenza di nuove relazioni (ODB-TOOLS)- Inferenza di nuove relazioni (ODB-TOOLS)

MOMIS:MOMIS:Processo di generazione del Common Thesaurus:Processo di generazione del Common Thesaurus:

- Acquisizione delle sorgenti (SAM)- Acquisizione delle sorgenti (SAM)

- Acquisizione delle relazioni strutturali - Acquisizione delle relazioni strutturali intra schema(SIM)intra schema(SIM)

- Estrazione delle relazioni lessicali (SLIM)- Estrazione delle relazioni lessicali (SLIM)

- Validazione (ODB-TOOLS)- Validazione (ODB-TOOLS)

- Inferenza di nuove relazioni (ODB-TOOLS)- Inferenza di nuove relazioni (ODB-TOOLS)

- Common Thesaurus- Common Thesaurus

Servizi di Wrapping:Servizi di Wrapping:Consentono al mediatore di interfacciarsi alla sorgente dati e sono forniti dal Wrapper

Servizi di Wrapping:Servizi di Wrapping:Consentono al mediatore di interfacciarsi alla sorgente dati e sono forniti dal Wrapper

In MOMIS i compiti del Wrapper sono quattro:

Servizi di Wrapping:Servizi di Wrapping:Consentono al mediatore di interfacciarsi alla sorgente dati e sono forniti dal Wrapper

In MOMIS i compiti del Wrapper sono quattro:

- fornire la descrizione ODLi3 della sorgente alla quale è connesso

Servizi di Wrapping:Servizi di Wrapping:Consentono al mediatore di interfacciarsi alla sorgente dati e sono forniti dal Wrapper

In MOMIS i compiti del Wrapper sono quattro:

- fornire la descrizione ODLi3 della sorgente alla quale è connesso

- consentire l’esecuzione delle query generate dal Query Manager

Servizi di Wrapping:Servizi di Wrapping:Consentono al mediatore di interfacciarsi alla sorgente dati e sono forniti dal Wrapper

In MOMIS i compiti del Wrapper sono quattro:

- fornire la descrizione ODLi3 della sorgente alla quale è connesso

- consentire l’esecuzione delle query generate dal Query Manager

- estrarre ed esportare le relazioni intra schema

Servizi di Wrapping:Servizi di Wrapping:Consentono al mediatore di interfacciarsi alla sorgente dati e sono forniti dal Wrapper

In MOMIS i compiti del Wrapper sono quattro:

- fornire la descrizione ODLi3 della sorgente alla quale è connesso

- consentire l’esecuzione delle query generate dal Query Manager

- estrarre ed esportare le relazioni intra schema

- consentire l’annotazione e l’esportazione di informazioni lessicali ottenute grazie al database lessicale WordNet

Il Wrapper JDBC:Il Wrapper JDBC:

Il Wrapper JDBC:Il Wrapper JDBC:

Per fornire i servizi utilizza due tipi di connessione:

Il Wrapper JDBC:Il Wrapper JDBC:

Per fornire i servizi utilizza due tipi di connessione:

- JDBC per il collegamento alla sorgente dati

Il Wrapper JDBC:Il Wrapper JDBC:

Per fornire i servizi utilizza due tipi di connessione:

- JDBC per il collegamento alla sorgente dati

- CORBA per interfacciarsi a MOMIS

Il Wrapper JDBC:Il Wrapper JDBC:

Per fornire i servizi utilizza due tipi di connessione:

- JDBC per il collegamento alla sorgente dati

- CORBA per interfacciarsi a MOMIS

Il Wrapper JDBC:Il Wrapper JDBC:

I metodi messi a disposizione del mediatore sono:

- getDescription( ) per ottenere la descrizione in formato ODLi3;

Il Wrapper JDBC:Il Wrapper JDBC:

I metodi messi a disposizione del mediatore sono:

- getDescription( ) per ottenere la descrizione in formato ODLi3;

- getAnnotation( ) che fornisce informazioni di tipo lessicale (memorizzate su file);

Il Wrapper JDBC:Il Wrapper JDBC:

I metodi messi a disposizione del mediatore sono:

- getDescription( ) per ottenere la descrizione in formato ODLi3;

- getAnnotation( ) che fornisce informazioni di tipo lessicale (memorizzate su file);

- getSIMRelation( ) permette di importare le relazioni intra-schema (memorizzate su file);

Il Wrapper JDBC:Il Wrapper JDBC:

I metodi messi a disposizione del mediatore sono:

- getDescription( ) per ottenere la descrizione in formato ODLi3;

- getAnnotation( ) che fornisce informazioni di tipo lessicale (memorizzate su file);

- getSIMRelation( ) permette di importare le relazioni intra-schema (memorizzate su file);

- runQuery(string) consente di formulare interrogazioni sulla base di dati.

Il Wrapper JDBC:Il Wrapper JDBC:

I metodi messi a disposizione del mediatore sono:

- getDescription( ) per ottenere la descrizione in formato ODLi3;

- getAnnotation( ) che fornisce informazioni di tipo lessicale (memorizzate su file);

- getSIMRelation( ) permette di esportare le relazioni intra-schema (memorizzate su file);

- runQuery(string) consente di formulare interrogazioni sulla base di dati.

I metodi getAnnotation( ) e getSIMRelation( ) possono essere riusati su qualunque Wrapper, anche già esistente

Il Wrapper JDBC:Il Wrapper JDBC:

Graficamente possono essere riassunti come segue:

Il Wrapper JDBC:Il Wrapper JDBC:

Esempio di traduzione da Schema Relazionale a linguaggio ODLi3:

Descrizione Relazionale:

Traduzione ODLi3:

interface RESEARCH_STAFF(source relational universkey(CF) candidate_key ke_mail (E_MAIL) foreign_key (COURSE_ID) references COURSEforeign_key (DEPT_ID) references DEPARTMENT){ attribute string /* VARCHAR */ CF; attribute string /* VARCHAR */ RELATION; attribute string /* VARCHAR */ E_MAIL; attribute long /* INTEGER */ DEPT_ID; attribute long /* INTEGER */ COURSE_ID;

};

create table RESEARCH_STAFF (CF varchar(16) not null primary key,RELATION varchar(30),E_MAIL varchar(30) not null,DEPT_ID int references Department,COURSE_ID int references Course,constraint ke_mail unique(E_MAIL) );

WrapperInterface:WrapperInterface:

Consente di generare i file che contengono le informazioni lessicali e le relazioni intra-schema.

WrapperInterface:WrapperInterface:

WrapperInterface:WrapperInterface:

Consente di generare i file che contengono le informazioni lessicali e le relazioni intra-schema.

E’ composta da tre moduli software:

WrapperInterface:WrapperInterface:

Consente di generare i file che contengono le informazioni lessicali e le relazioni intra-schema.

E’ composta da tre moduli software:

- WSAM: Acquisisce la descrizione ODLi3 della sorgente;

WrapperInterface:WrapperInterface:

Consente di generare i file che contengono le informazioni lessicali e le relazioni intra-schema.

E’ composta da tre moduli software:

- WSAM: Acquisisce la descrizione ODLi3 della sorgente;

- WSIM: Estrae le relazioni intra schema;

WrapperInterface:WrapperInterface:

Consente di generare i file che contengono le informazioni lessicali e le relazioni intra-schema.

E’ composta da tre moduli software:

- WSAM: Acquisisce la descrizione ODLi3 della sorgente;

- WSIM: Estrae le relazioni intra-schema;

- WSLIM: Consente di annotare la sorgente interagendo con WordNet.

WrapperInterface:WrapperInterface:

MODULO WSAM

WrapperInterface:WrapperInterface:

MODULO WSIM

WrapperInterface:WrapperInterface:

MODULO WSLIM

WrapperInterface:WrapperInterface:

Contenuto del Common Thesaurus

Note Implementative:Note Implementative:

-Il software e’ stato implementato presso il dipartimento di scienze dell’informazione dell’Università di Modena e Reggio Emilia, sede di Modena;

-Sono state scritte circa 3800 linee di codice in linguaggio Java versione 1.3;

-Piattaforma di sviluppo: Sparc20 (Sun) con sistema Solaris SunOS 5.7

CONCLUSIONI:CONCLUSIONI:

La progettazione del Wrapper e dell’interfaccia hanno consentito di:

- Rendere più rapido il processo di integrazione:

CONCLUSIONI:CONCLUSIONI:

La progettazione del Wrapper e dell’interfaccia hanno consentito di:

- Rendere più rapido il processo di integrazione:

- Lo spostamento sul wrapper di operazioni estremamente onerose in termini di tempo limita l’intervento del progettista;

CONCLUSIONI:CONCLUSIONI:

La progettazione del Wrapper e dell’interfaccia hanno consentito di:

- Rendere più rapido il processo di integrazione:

- Lo spostamento sul wrapper di operazioni estremamente onerose in termini di tempo, limita l’intervento del progettista;

- Tale spostamento permette inoltre di eseguire parallelamente le già citate

operazioni di annotazione ed estrazione

CONCLUSIONI(2):CONCLUSIONI(2):

La progettazione del Wrapper e dell’interfaccia hanno consentito di:

- Migliorare la qualità delle informazioni messe a disposizione del mediatore:

CONCLUSIONI(2):CONCLUSIONI(2):

La progettazione del Wrapper e dell’interfaccia hanno consentito di:

- Migliorare la qualità delle informazioni messe a disposizione del mediatore:

- Dal punto di vista lessicale: il creatore della sorgente ha una conoscenza maggiore del dominio ontologico della sorgente piuttosto che progettista preposto all’integrazione;

CONCLUSIONI(2):CONCLUSIONI(2):

La progettazione del Wrapper e dell’interfaccia hanno consentito di:

- Migliorare la qualità delle informazioni messe a disposizione del mediatore:

- Dal punto di vista lessicale: il creatore della sorgente ha una conoscenza maggiore del dominio ontologico della sorgente piuttosto che progettista preposto all’integrazione;

- Dal punto di vista strutturale il progettista della sorgente può fornire informazioni (estensionali) altrimenti non ottenibili.

CONCLUSIONI(3):CONCLUSIONI(3):

Le modifiche apportate alla struttura generale del Wrapper possono essere estese a tutti gli altri e questo vale anche per WrapperInterface, quest’ultima infatti lavorando sulla descrizione ODLi3 della sorgente non ha bisogno di implementazioni specifiche.

CONCLUSIONI(3):CONCLUSIONI(3):

Le modifiche apportate alla struttura generale del Wrapper possono essere estese a tutti gli altri e questo vale anche per WrapperInterface, quest’ultima infatti lavorando sulla descrizione ODLi3 della sorgente non ha bisogno di implementazioni specifiche.

SVILUPPI FUTURI:SVILUPPI FUTURI:

In un’ottica di estensione del progetto MOMIS nell’ambito della tecnologia ad agenti, il Wrapper sviluppato può essere esteso. In questo contesto, il wrapper può essere sviluppato come agente autonomo il cui obiettivo e’ la ricerca di nuove sorgenti da integrare.