La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Dipartimento di Sistemi e Informatica

Presentazioni simili


Presentazione sul tema: "Dipartimento di Sistemi e Informatica"— Transcript della presentazione:

1 Dipartimento di Sistemi e Informatica
Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Fabrizio Baldini Carlo Torniai Enrico Vicario Dipartimento di Sistemi e Informatica Univsrsità di Firenze

2 Dipartimento di Sistemi e Informatica
Contenuti Utilizzo di basi di dati in applicazioni orientate al Semantic Web Scenario Problematiche Valutazione delle soluzioni Conclusioni e prospettive Tesi di Laurea per il corso di Ingegneria Informatica, A. Matteini e T. Papi “Semantic Web: analisi dei metodi e sperimentazione delle tecnologie” Il conributo del nostro intervento riguarda le applicazioni orientate al Semantic Web, in particolare l’utilizzo delle tecnologia messe a disposizione dal Semantic Web in relazione a basi di conoscenza contenute in database relazionali. Siamo Ingegneri del Sofwtare.. All'inizio.Ci occupiamo di semantic web ma dal punto di vista delle architetture spftware che ne abilitano una efficace ed efficiente implementazione. Valutazione di schemi di interazione uomo macchine Ci soffermeremo brevemente sullo scenario della gestione dell’informazione introdotto dal Semantic Web, Successivamente passeremo in esame le problematiche relative allo sviluppo di applicazioni orientate al Web semantico con particolare riferimento all’utilizzo di basi di conoscenza relazionali. Presenteremo poi una valutazioni delle soluzioni disponibili per la creazione di applicazione orientate al SW valutandone pro e contro Questo lavoro è iniziato con una tesi di laurea per il corso di Ingegneria Informatica svolta da due nostri brillanti studenti, Matteini e Papi. Dipartimento di Sistemi e Informatica Univsrsità di Firenze

3 Dipartimento di Sistemi e Informatica
Web vs Semantic Web Web attuale le informazioni non hanno struttura semantica la semantica è human understandable le applicazioni possono ‘comprendere’ solo la sintassi Semantic Web associa alle risorse una struttura semantica caratterizza le risorse e le relazioni associandogli un significato particolare Il Web come attualmente lo conosciamo è privo di struttura semantica dell’informazione, è l0utilizzatore umano che percepisce il livello semantico delle risorse web, mentre le applicazioni sono esclusivamente in grado di “comprenderne” la sintassi. La visione del Semantic Web si propone invece di associare alle risorse una struttura semantica carattterizzando le risorse e le loro relazioni. In questo modo la semantica dell’infromazione diventa machine understandable. Dipartimento di Sistemi e Informatica Univsrsità di Firenze

4 Dipartimento di Sistemi e Informatica
Il Semantic Web Benefici relativi allo sviluppo di applicazioni orientate al Semantic Web L’informazione machine understandable Interscambio dati Relazioni semantiche tra i contenuti Navigazioni tematiche e correlazioni dinamiche tra contenuti Capacità di retrieval semantico dei contenuti Capacità di arricchire la base di conoscenza con conoscenza inferita I benefici introdotti da applicazioni orientate al Semantic Web riguardano innanzitutto la capacità di interscambio di dati e di “conoscenza” tra agenti software o applicazioni. L’intorduzione di relazioni semantiche definibili a piacere tra le varie risorse permette una fruizione tematica delle risorse e una correlazione dinamica tra di esse. Inoltre il retrieval dell’informazione può avvenire ad un alto livello semanitco e non più sintattico. Gli strumenti di reasoning messi a disposizione del Semantc Web possono inoltre permettere l’arricchimento “automatico” delle basi di conoscenza. Dipartimento di Sistemi e Informatica Univsrsità di Firenze

5 Dipartimento di Sistemi e Informatica
Problematiche Cosa implica sviluppare una applicazione orientata al Semantic Web? Linguaggi standardizzati Carenza di strumenti di sviluppo e best practices relative Basi di conoscenza prevalentemente relazionali La struttura relazionale non è consistente con la struttura semantica di una base di conoscenza Le prospettive sono sicuramente allettanti ma le problematiche insite nella progettazione e nella realizzazione di una applicazione orientata al semantic Web sono molteplici: Se da un lato i linguaggi per la descrizione della conoscenza sono standardizzati e ben definiti ( RDF , OWL, W3c Standard) non si può dire altrettanto per quanto riguarda strumenti di sviluppo di applicazioni Inoltre lo sviluppo di applicazioni orientate al Semantic Web deve fare i conti con le basi di conoscenza già esistenti che sono prevalentemente relazionali. Il modello relazionale non è consistente con il modello semantico di una base di conoscenza. In particolare le relazioni semantiche implicate in un modello relazionale non sono esplicitate, e standardizzate ( le stesse relazioni semantihce possono essere espresse da diversi modelli relazionali) Nella nostra ricerca ci siamo ocupati di valutare la complessità dello sviluppo di applicazioni secondo la filosofia del Semantic Web in particolare Analizzando le soluzioni possibili Valutandone le prestazioni in termini qualitativi ( quanto si “accordano” con la filosofia del semantic web , capacità di rspondere a vicnoli di legacy ..) e quantitativi ( valutazione delle prestazioni in termini di tempi di risposta) Dipartimento di Sistemi e Informatica Univsrsità di Firenze

6 Semantic Web e Database
Il Semantic Web non richiede necessariamente interazione con dB i dati possono essere memorizzati in documenti RDF o OWL I database sono la soluzione più diffusa per la gestione di basi di conoscenza persistenti risulta importante prevedere un riuso di strutture dati preesistenti Il Semantic web non richiede necessariamente interazioni cin DB, i dati possono essere memorizzati su file system in accordo con i linguaggi definiti, ma Nella realtà ci troviamo di fronte a basi di conoscenza esistenti memorizzate si DB relazionali. Risulta quindi interessante affrontare lo studio di come il sw consenta di interagire con un db, in particolare relazionali. L’interazione con db è in realtà un concetto trasversale, le tecnologie del sW non implicano necessariamente un db. I documenti possono essere infatti memorizzati direttamente in documenti RDF (ed eventualmente gestiti per mezzo particolari container ->Joseki) Ma risulta interessante studiare l’interazione tra le tecnologie per il web semantico e i db relazione, in particolare se si considera che: Fs vs db l’uso dei db risulta necessario per lo sviluppo di applicazioni d’impatto risulta importante prevedere un riuso di strutture dati preesistenti Dipartimento di Sistemi e Informatica Univsrsità di Firenze

7 Semantic Web e Database
Problema di mismatch tra l’organizzazione semantica delle risorse e quella relazionale dei database La questione può essere sostanzialmente ricondotta al problema mismatch che è presente tra schema ontologico di una base di conoscenza semantica e lo schema relazionale di un dB Per risolvere questo mismatch esistono diverse soluzioni di cui ci siamo occupati nel nostro lavoro.. Dipartimento di Sistemi e Informatica Univsrsità di Firenze

8 Semantic Web e Database
Analisi delle soluzioni architetturali per: rendere persistente su un database una base di conoscenza semantica consentire modalità di accesso semantico a database relazionali Le soluzioni identificate ed implementate sono: database con schema semantico modelli persistenti di Jena D2RMap e D2RQ Alcune soluzioni mirano a rendere persistente su un dB la base di conoscenza Altre consentono invece modalità di accesso semantico a db con struttura relazionale e quindi sono orientati al riuso di strutture dati preesistenti. Le soluzioni identificate e analizzate sono: Db con schema semantico Modelli persistenti di Jena D2RMap e D2RQ Le prime due soluzioni sostanzialmente si adattano per applicazioni semantiche costruite ex-novo, mentre D2RMap e D2Rq permettono di “mappare”strutture dati relazionali preesistenti per il loro utilizzo in applicazioni orientate al semantic Web Dipartimento di Sistemi e Informatica Univsrsità di Firenze

9 Soluzione A: Database con schema semantico
Usa un database relazionale con schema che emula la struttura di documenti RDF Svantaggi: Non utilizza le tecnologie raccomandate dal W3C Non supporta interrogazioni RDQL (solo SQL) Lo schema relazionale in figura mostra come può essere organizzata una struttura relazionale che emuli la struttura di un documento RDF, o meglio le relazioni tra classi, sottoclassi, istanze e proprietà. - I limiti di questo approccio consistono nel fatto che il linguaggio nativo di interrogazione di documento RDF /OWL ( RDQL) non è utilizzabile, La progettazione dell’ontologia richiede un livello di astrazione ulteriore per essere “riportata” in una struttura relazionale Sostanialmente non è utilizzata nessuna delle tecnologia inerenti il Semantic Web ( linguaggi, reasoners ecc…) Dipartimento di Sistemi e Informatica Univsrsità di Firenze

10 Soluzione B: Modelli di Jena¹
Jena è un framework per lo sviluppo di applicazioni orientate al Web Semantico Fornisce API per la creazione, gestione e interrogazione di documenti RDF Consente di gestire basi di conoscenza semantiche come modelli: in memoria persistenti (su dB) [¹] ( Dipartimento di Sistemi e Informatica Univsrsità di Firenze

11 Soluzione B: Modelli di Jena
API modello persistente di Jena Vantaggi: semplicità di gestione trasparenza nelle operazioni Svantaggi: errori di ridondanza nel modello difficoltà di manipolazione del result set Dipartimento di Sistemi e Informatica Univsrsità di Firenze

12 Soluzione C: D2Rmap e D2RQ¹
I dati esistenti sono memorizzati in database Necessità di tecniche che consentano: riutilizzo dei dati e delle strutture associazione di una struttura semantica Tecniche di mapping disponibili: D2Rmap (batch) D2RQ (runtime) [¹] D2Rmap e D2RQ, I dati esistenti non possono essere “cestinati”. L’informazione deve essere riadattata e ristrutturata alle regole del Semantic Web. Sono utilizzate tecniche di mapping (online o offline). Tool usati: D2Rmap e D2RQ. Dipartimento di Sistemi e Informatica Univsrsità di Firenze

13 Dipartimento di Sistemi e Informatica
Soluzione C1: D2Rmap Converte un database relazionale in una base di conoscenza semantica utilizza una mappa per la conversione genera un documento RDF a partire dai dati contenuti nel dB da riscrivere meglio La mappa sta sul dB ? Per mezzo delle API di Jena… Mappa Dipartimento di Sistemi e Informatica Univsrsità di Firenze

14 Dipartimento di Sistemi e Informatica
Soluzione C2: D2RQ Permette di interrogare un database relazionale utilizzando il linguaggio RDQL utilizza dinamicamente una mappa per l’accesso semantico al contenuto del database restituisce degli statement gestisce database relazionali come grafi RDF attraverso le API di Jena Mappa Dipartimento di Sistemi e Informatica Univsrsità di Firenze

15 Riepilogo architetture
Soluzione A Database relazionale con schema semantico Soluzione B Modello Persistente Jena Mappa Analisi architetture riepilogo Mappa Soluzione C1 Mapping D2RMap Soluzione C2 Mapping D2RQ Dipartimento di Sistemi e Informatica Univsrsità di Firenze

16 Sperimentazione architetture
Sperimentazione delle diverse architetture per valutarne complessità di implementazione applicabilità (vincoli di legacy, compatibilità organizzativa) prestazioni Applicazione relativa ad un contesto reale e con requisiti definiti Ci siamo porposti quinndi di sperimentare le diverse architetture per valutarne la complessità di implementazione, l’applicabilità e le prestazioni Da qui parte l’implementazione… Passiamo quindi a vedere come è stato svolto (nell’ambito della tesi) lo studio degli aspetti più ‘pratici’, legati all’implementazione. Identificate le tecnologie e le architetture disponibili, (ci siamo posti l’obiettivo di valutarne : … ) In primo luogo abbiamo - Da questo punto di vista la prima fase dello studio ha fatto sorgere numerosi quesiti, ma senza dar risposta a molti di essi. Spesso articoli che intendono affrontare questi aspetti più pratici si fermano ad analisi superficiali e d’altronde sono anche poche le implementazioni che si possano osservare o reperire nel Web. L’obiettivo di questa seconda fase è dunque stato quello di affrontare la sperimentazione pratica delle tecnologie e delle architetture per la realizzazione di applicazioni di Web semantico valutando pregi e difetti delle diverse tecniche e piattaforme disponibili. L’analisi è stata orientata alla valutazione sia degli aspetti qualitativi, come il livello di coerenza con i principi esposti a livello concettuale, che degli aspetti quantitativi, in particolare dal punto di vista dei tempi di esecuzione. Inoltre abbiamo cercato di comprendere nel nostro studio tutte le soluzioni più significative emerse nella fase di studio, al fine di fornire una visione generale e ampia dei principali strumenti e delle tecnologie di sviluppo per Web application orientate al Semantic Web. Innanzitutto l’attenzione è stata rivolta allo studio delle possibili architetture software. In pratica sono state implementate alcune semplici applicazioni di Web semantico sulle quali sono state testate quattro diverse architetture software, ognuna delle quali con un particolare supporto per i dati ed un particolare linguaggio di quering. L’obiettivo `e stato quello di valutare le prestazioni delle diverse piattaforme disponibili sulle quali poter pensare di sviluppare una applicazione. In secondo luogo sono state prese in considerazione ed implementate due Diverse Web Application più elaborate. L’idea alla base di entrambe è sostanzialmente quella di creare degli strumenti che da un lato aiutino nell’analisi dei problemi implementativi e dall’altro possano essere di supporto alla diffusione di risorse orientate al Semantic Web. Inoltre questo studio `e risultato essere anche un buon modo per aiutare gli sviluppatori di altri strumenti, ed in particolare Jena per mezzo del gruppo di discussione raggiungibile all’Url nello scovare alcuni difetti o aspetti trascurati delle loro applicazioni. Dipartimento di Sistemi e Informatica Univsrsità di Firenze

17 Dipartimento di Sistemi e Informatica
Contesto del SUAP Sportello unico per la gestione delle autorizzazioni necessarie alle imprese per la produzione di beni e servizi La struttura del dB del SUAP è stata utilizzata come riferimento sia in fase di progettazione che in fase di sviluppo Nella nostra seprimentazione abbiamo usato un contesto reale relativo al servizio Sportello Unico per le Attività produttive della Provincia di Firenze. Il SUAP è uno strumento amministrativo attraverso il quale vengono unificate, in un solo procedimento, tutte le autorizzazioni necessarie alle imprese. Dipartimento di Sistemi e Informatica Univsrsità di Firenze

18 Valutazione architetture
Identificazione delle architetture possibili: Valutazione qualitativa e quantitativa (sem) Innanzitutto l’attenzione è stata rivolta allo studio delle possibili architetture software. In pratica sono state implementate alcune semplici applicazioni di Web semantico sulle quali sono state testate quattro diverse architetture software, ognuna delle quali con un particolare supporto per i dati ed un particolare linguaggio di quering. L’obiettivo è stato quello di valutare le prestazioni delle diverse piattaforme disponibili sulle quali poter pensare di sviluppare una applicazione. Dipartimento di Sistemi e Informatica Univsrsità di Firenze

19 Valutazione qualitativa
Soluzione database con schema semantico Complessità implementativa limitata Non utilizza gli strumenti del Semantic Web ma ne emula esclusivamente il funzionamento Ostacola l’interoperabilità dell’applicazione ? Soluzione file RDF Complessità implementativa più elevata rispetto alla prima soluzione Utilizza strumenti del Semantic Web Poca flessibilità data dal tipo di modello persistente (file system) Soluzioni Jena e D2R Utilizzano appieno strumenti del Semantic Web Differiscono per complessità implementativa (gestione delle API di Jena + utilizzo di tools di mapping nel caso di D2R) Differiscono per prestazioni L’utilizzo di strumneti di mapping risponde a vincoli di legacy Innanzitutto l’attenzione è stata rivolta allo studio delle possibili architetture software. In pratica sono state implementate alcune semplici applicazioni di Web semantico sulle quali sono state testate quattro diverse architetture software, ognuna delle quali con un particolare supporto per i dati ed un particolare linguaggio di quering. L’obiettivo è stato quello di valutare le prestazioni delle diverse piattaforme disponibili sulle quali poter pensare di sviluppare una applicazione. Dipartimento di Sistemi e Informatica Univsrsità di Firenze

20 Valutazione prestazioni
Architetture software analizzate: modello persistente di Jena, D2RQ e documento RDF Cosa ci aspettiamo? tempi di risposta più elevati per la soluzione con D2RQ che prevede una funzione di mapping intermedia Analisi del tempo di riposta delle query: con 8 query differenti, ognuna ripetuta per 50 volte, su KB contenenti e statements Analisi del tempo di caricamento in memoria dei dati: ripetuto 30 volte per ogni architettura, su KB contenenti e statements Il primo punto indica le diverse KB.. Dividerei in 1. approccio 2. risultati Dipartimento di Sistemi e Informatica Univsrsità di Firenze

21 Valutazione prestazioni: risposta in msec
Le query sono eseguite più velocemente nella soluzione basata sull’interrogazione del file RDF. D2RQ è più veloce di Jena nell’eseguire le query (al contrario delle aspettative!). Caricamento in memoria dei dati richiede tempi molto elevati per il file RDF, i più bassi per la soluzione D2RQ. La soluzione con D2RQ comporta tempi di esecuzione mediamente migliori rispetto alla soluzione con Jena La soluzione con RDF comporta i tempi di esecuzioni migliori per le query ma molto elevati per il caricamento dei dati contrariamente alle aspettative! Dipartimento di Sistemi e Informatica Univsrsità di Firenze

22 Sviluppo di una applicazione
Implementazione di una applicazione orientata al Semantic Web Obiettivi: analizzare i problemi implementativi in un contesto con requisiti definiti che non imponesse vincoli di legacy utilizzare tecnologie di riferimento Strumenti: API Jena Protégé In secondo luogo sono state prese in considerazione ed implementate due diverse Web Application più elaborate. L’idea alla base di entrambe è sostanzialmente quella di creare degli strumenti che da un lato aiutino nell’analisi dei problemi implementativi e dall’altro possano essere di supporto alla diffusione di risorse orientate al Semantic Web. Protégé¹ è un ambiente grafico per lo sviluppo di ontologie [¹] Protégé, Dipartimento di Sistemi e Informatica Univsrsità di Firenze

23 Schema architetturale
Struttura MVC (persistent model, Jsp, Servlet) Soluzione con modelli persitenti di Jena Fare meglio l’img, contorni Dipartimento di Sistemi e Informatica Univsrsità di Firenze

24 Dipartimento di Sistemi e Informatica
Esplorazione Implementazione di un’applicazione Web che offre un’interfaccia grafica per l’esplorazione di una base di conoscenza semantica Funzionalità elaborare e formulare la query in base alla richiesta dell’utente interrogare modelli, dopo averli importati in memoria validare i contenuti estrarre le informazioni d’interesse presentare le informazioni ricavate Barra di navigazione che si aggiorna in base al contenuto della pagina, machine understandable • una Web application che fornisce una interfaccia grafica per l’esplorazione di una base di conoscenza o una ontologia strutturata in RDF. Dipartimento di Sistemi e Informatica Univsrsità di Firenze

25 Dipartimento di Sistemi e Informatica
Transazioni Web application per aggiornamento di una KB sulla base di un’ontologia predefinita Requisiti: Conformità dai dati all’ontologia Implementazione: sono stati implementati i metodi per gestire la creazione del modulo di inserimento dati a partire dall’ontologia per validare ed inserire effettivamente i dati immessi dall’utente Modulo che viene creato in funzione dell’ontologia • una Web application che fornisce una interfaccia grafica dinamica per l’inserimento di risorse in una base di conoscenza strutturata in RDF e che si riferisce ad una particolare ontologia. Dipartimento di Sistemi e Informatica Univsrsità di Firenze

26 Dipartimento di Sistemi e Informatica
Conclusioni Abbiamo individuato e sperimentato architetture software che permettono lo sviluppo di applicazioni di Web Semantico su basi di conoscenza di dimensioni e caratteristiche realistiche La convenienza delle varie implementazioni dipende dai vincoli di legacy e dalla organizzazione del processo di alimentazione della base di conoscenza Il limite di prestazione non sembra costituire un ostacolo alla applicazione a contesti realistici Se dal punto di vista teorico i concetti paiono consolidati, le trattazioni tecniche e l’analisi delle problematiche implementative sono carenti Mancano applicazioni di riferimento o specifiche ben definite per l’implementazione Risulta necessario affiancare agli studi teorici anche una notevole opera di diffusione e potenziamento di applicazioni semantiche e di sviluppo di strumenti di supporto In sostanza però rispetto ad applicazioni standard applicazioni orientate al Semantic Web, pur imlicando uno sforzo implementativo più elevato hanno buone prestazioni Dipartimento di Sistemi e Informatica Univsrsità di Firenze

27 Dipartimento di Sistemi e Informatica
Prosepettive Applicazione alla creazione di portali di supporto alla aggregazione e cooperazione nello sviluppo di basi di conoscenza Capacità di adattamento all’evoluzione del modello ontologico Qualità dell’informazione Fattori umani e organizzativi La filosofia del Semantic Web e l’utilizzo di ontologie ha preso piede non solamente per la descrizioni di contenuti Web annotazione e retrieval di contenuti multimediali descrizione semantica di immagini, video, ecc. La combinazione di contenuti descritti e correlati semanticamente può portare alla realizzazione di applicazioni fortemente interattive e con alto livello di usabilità Le prospettive sono relative all’applicazione di quanto illustrato alla creazioni di portali di supporto alla aggregazione e cooperazione nell sviluppo di basi di conoscenza In questo contesto si aprono scenari interessanti di analisi relativi - all’adattamento e all’evoluzione del modello ontologico in tali contestio Dipartimento di Sistemi e Informatica Univsrsità di Firenze


Scaricare ppt "Dipartimento di Sistemi e Informatica"

Presentazioni simili


Annunci Google