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

Download Report

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

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