Download momis - dbgroup.unimo.it - Università degli studi di Modena e

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Corso di Laurea Specialistica in Ingegneria Informatica
INTEGRAZIONE MULTILINGUA DI
SORGENTI DATI POSTGRESQL DELLA
PUBBLICA AMMINISTRAZIONE:
ACCOPPIAMENTO DEI SISTEMI MOMIS E
SIAM
Relatore:
Chiar.mo Prof. Sonia Bergamaschi
Candidato: Saponi Riccardo
Correlatori:
PhD. Ing. Mirko Orsini
PhD. Ing Laura Po
Anno Accademico 2008 - 2009
Sommario




Obiettivo della Tesi
Il Progetto MOMIS
Il SIAM (Sistema Informativo AMbientale)
Integrazione MOMIS - SIAM




Wrapper JDBC / PostgreSQL
Sviluppo di un database multilingua per l’utilizzo in MOMIS
Materializzazione dello Schema Globale
Test, conclusioni e sviluppi futuri
Obiettivo
MOMIS DataRiver


1.
2.
3.
SIAM
Ipotesi : poter disporre di una vista integrata dei dati presenti negli Uffici
del settore Ambiente di diverse province, attraverso l’ accoppiamento del
progetto MOMIS “DataRiver” e del programma SIAM.
Sono state eseguite 3 fasi:
Creazione di un Wrapper per sorgenti PostgreSQL;
Analisi e integrazione del database lessicale multilingua MultiWordNet;
Implementazione di funzioni per la materializzazione dello Schema
Virtuale Globale(GS) all’interno della versione DataRiver di MOMIS;
MOMIS
(Mediator envirOnment for Multiple Information Sources)



MOMIS e' un sistema per l'integrazione intelligente di informazioni per sorgenti dati
strutturate e semi - strutturate nato fra una collaborazione dell’Università degli Studi di
Modena e Reggio Emilia (DbGroup) e l’Università di Milano.
OBIETTIVO: Integrare le informazioni ricavate da sorgenti eterogenee costruendo uno
Schema Globale Virtuale che consenta all’utente di sottomettere delle query e che
conservi i dati nelle sorgenti locali.
Approccio opposto rispetto quello di un Data Warehouse, dove invece i dati sono
duplicati su un database interrogabile dall’utente.
MOMIS
(Mediator envirOnment for Multiple Information Sources)
SIAM
(Sistema Informativo AMbientale)
Prodotto web-based sviluppato da QUIX s.r.l. che si occupa di gestire il flusso
completo di tutte le pratiche elaborate dall’Ufficio Ambiente delle Province.
•Si pone come strumento di
integrazione e collaborazione fra i vari
soggetti coinvolti nei processi
amministrativi che regolano la gestione
dell’ambiente (Operatori, Imprese,
Assessori).
•Piena compatibilità e possibilità di
scambio di informazioni con altri
strumenti informatici presenti
nell’Ente(software di protocollazione;
GIS; sportello SUAP..).
Wrapper JDBC / PostgreSQL
Un Wrapper è un modulo che si occupa di rendere le diverse sorgenti
di informazione conformi ad uno standard interno o esterno. In
particolar modo si occupa di :

Tradurre la descrizione della sorgente nel linguaggio del mediatore;

Tradurre l’interrogazione ricevuta dal mediatore in una query in
linguaggio locale ( ODLI3 )

Trasferire i risultati parziali al mediatore
Wrapper JDBC / PostgreSQL

PostgreSQL è un object – relational database management system
(ORDBMS) open source, seguito del progetto Ingres.

E’ un sistema per la gestione di database relazionali che assume
caratteristiche tipiche dei Linguaggi Orientati agli Oggetti

Definizione di Oggetti e Classi;

Ereditarietà;

Consente di implementare funzioni e procedure tramite il linguaggio
nativo PL / pgSQL e i linguaggi di programmazione più comuni: C++,
Ruby, Perl, Python.

Tipi di dato JDBC compatibili.

Open source, multipiattaforma e ampia community di sviluppo.
Wrapper JDBC / PostgreSQL

Creazione della classe
WrapperJdbcCore_PostgreSQL,

estensione delle interfacce Java già
presenti.
Interfaccia grafica per l’inserimento
dei parametri per la connessione
JDBC:







Domain;
Port;
User;
Password;
Scelta del database;
Generazione automatica della
stringa di connessione JDBC;
Scelta dei database presenti sul
server mediante il reperimento
delle informazioni dalla tabella di
sistema PG_CATALOG
Sviluppo di un database multilingua per l’utilizzo in
MOMIS
Stato dell’ arte: WordNet :

Database lessicale di riferimento in lingua inglese che definisce i concetti della
conoscenza e le relazioni che intercorrono fra di essi.
Caratteristiche:

Categoria Sintattica: categorie in cui sono suddivisi i termini (nomi,
aggettivi,verbi,avverbi)

Lemma: parola e/o termine a cui vengono associati uno o più significati

Synset: insieme di termini associati ad un medesimo significato ed appartenenti
alla stessa categoria sintattica

Glossa: descrizione a parole di un significato preciso. Associata a ciascun synset

Relazione Semantica: relazione che lega due synset appartenenti alla stessa
categoria sintattica

Relazione Lessicale: relazione tra due lemmi appartenenti a synset distinti
Sviluppo di un database multilingua per l’utilizzo in
MOMIS

WordNet concorre alla generazione del Common Thesaurus durante il Processo di
Integrazione, contribuendo alla definizione di relazioni terminologiche attraverso
il processo di annotazione.
Word form
Book Volume Catalog
Meaning (synset)
a
w r it t e n
b e e n
w o r k
p u b lis h e d
o r
c o m
p o s it io n
( p r in t e d
o n
t h a t
p a g e s
h a s
b o u n d
t o g e t h e r )
physical objects consisting of a number of
pages bound together; "he used a large
book as a doorstop"
a book or pamphlet containing an
enumeration of things


Book SYN Volume
Book BT Catalog
Sviluppo di un database multilingua per l’utilizzo in
MOMIS
Per una maggior compatibilità con la versione di WordNet presente in MOMIS è stato
analizzato e scelto MultiWordNet come database lessicale multilingua.
MultiWordNet mira a creare un database lessicale strettamente legato a Princeton WordNet
che consenta un facile inserimento di nuove lingue.
• Relazioni semantiche : invariate rispetto WN. Si procede con degli add on;
• Relazioni lessicali : re – mapping dei lemmi basato sulla lingua;
Si compone di una parte comune (relazioni semantiche) e di parti specifiche a ciascuna lingua
(relazioni lessicali)
Sviluppo di un database multilingua per l’utilizzo in
MOMIS
Allineamento di MultiWordNet 1.6 a WordNet 2.0:

Aggiornamento coerente dei record (Thanks to Rada Mihalcea, University of Texas)
Integrazione di MultiWordNet e WordNet 2.0:


Inserimento di nuovi tipi di Relazione e di Extender
Procedura di integrazione basata sulla lingua del record.
Modifiche al software:






Nuovi parametri di configurazione per Torque;
Enum AnnotationLanguage;
Gestione lingua lato Backend: synset e lemma recuperati mediante la lingua di
Annotazione;
Gestione lingua lato Frontend: menù di scelta per la lingua in fase di inserimento e
ricerca del record;
Modifiche agli algoritmi WNFS e WND per la gestione della lingua di Annotazione.
Implementazione di uno Stemmer Algorithm per la lingua italiana e refactoring delle
classi di Stemming
Materializzazione dello Schema Globale
MOMIS Versione “DataRiver”
Progetto Open Source che si prefigge di “prodottizzare” MOMIS.

Sviluppato da “Datariver S.r.l.”, una spin-off nata per iniziativa di professori e
ricercatori del DbGroup del Dipartimento di Ingegneria dell’Informazione di
Modena e della ditta QUIX S.r.l.
Caratteristiche:

GUI sviluppate mediante Eclipse – RCP

Gestione di WordNet tramite file originali o JPA (Java Persistence API)

DataBase HSQLDB per supporto a Query Manager

Gestione del progetto mediante il tool MAVEN

…MA…
STESSO PROCESSO DI INTEGRAZIONE DI MOMIS!
 Interrogazione di uno Schema Globale generato con MOMIS
Materializzazione dello Schema Globale

Creazione del modulo QUERY
MANAGER EXPORT DATA;

Tramite il modulo
QUERYMANAGER si invocano le
interfacce per la gestione della
connessione ad un target database;

Inserimento dei parametri
“Wrapper – like” per la connessione
JDBC al target database;

Chiamata alla classe
QueryManagerExportData per la
gestione delle funzioni di
materializzazione a partire dallo
Schema Globale;

Esecuzione di script SQL creati runtime per la
creazione di tabelle e l’inserimento dei dati
sulla base delle Classi Globali ricavate dallo
schema e salvataggio sul target database
Test e analisi dei risultati





Test effettuati su schemi di prova e sul database di produzione del
SIAM della Provincia di Ancona (90 tabelle, 1711 attributi)
Wrapper : importate con successo sorgenti relazionali site su server
locali o remoti.
Integrazione database lessicale Multilingua: annotazione eseguita in
base alla scelta della AnnotationLanguage. Combinando le diverse
tecniche di annotazione automatica si arriva ad avere il 62 % dei
termini presenti annotati(1069 su 1711).
Stemmer: Problemi con la gestione delle forme flesse della lingua
italiana.
Materializzazione dello Schema Globale: test eseguito con successo su
una sorgente locale, fallito con più sorgenti. Diversi scenari di sviluppo
Conclusioni e sviluppi futuri
Concludendo:



Wrapper per sorgenti PostgreSQL sviluppato e testato con successo;
Integrazione di un database lessicale multilingua sviluppata e testata
con successo. Alcuni miglioramenti riguardo lo stemmer italiano
Materializzazione dello Schema Globale non completato sebbene
testato con successo su una sorgente;
Sviluppi futuri


Rifinitura delle funzioni e della logica di gestione di lingue differenti
Completamento delle funzioni di materializzazione dello Schema
Globale
 Prevedere l’integrazione di diversi schemi
 Prevedere dei controlli sulla creazione e sull’aggiornamento
temporale dei dati
Grazie per l’attenzione