1 Basi di Dati Semistrutturate e XML Carlo Sartiani Dipartimento di Informatica Università di Pisa Questo lavoro è stato in parte finanziato con i fondi del Progetto MURST DATA-X
2 Struttura della presentazione Introduzione Modelli dei dati Linguaggi di interrogazione Meccanismi di schematizzazione Conclusioni
3 INTRODUZIONE
4 Basi di dati semistrutturate Una base di dati semistrutturata è caratterizzata da: –unelevata irregolarità strutturale e/o –unelevata instabilità strutturale Queste caratteristiche rendono gli SSD non agevolmente gestibili con sistemi relazionali e/o object-oriented
5 AUTHOR = {R. Goldman and J. Widom}, TITLE = {Approximate DataGuides}, BOOKTITLE = {To appear in Proceedings of the second International Workshop WebDB '99, Pennsylvania}, YEAR = {1999}, MONTH = {June}, author = {S. Nestorov and J. Ullman and J. Wiener and S. Chawathe}, editor = {Alex Gray and Per-{\AA}ke Larson}, title = {Representative Objects: Concise Representations of Semistructured, Hierarchial Data}, booktitle = {Proceedings of the Thirteenth International Conference on Data Engineering, April 7-11, 1997 Birmingham U.K}, publisher = {IEEE Computer Society}, year = {1997}, isbn = { }, pages = {79-90}, bibsource = {DBLP, }
6 Somiglianze tra XML e SSD Autodescrittività Flessibilità nella rappresentazione Integrazione dei risultati ottenuti nei due ambiti di ricerca –SSD: modelli dei dati e linguaggi di interrogazione –XML: meccanismi di schematizzazione
7 MODELLI DEI DATI
8 Modelli dei dati per SSD e XML I modelli dei dati usualmente impiegati per gli SSD si basano su OEM OEM rappresenta una base di dati come un grafo diretto etichettato OEM può essere facilmente esteso alla rappresentazione di documenti XML
9 Un documento XML MacOS 9.1 Apple Computer Inc. WIndowsNT 4 SP6 Microsoft Inc.
10 Rappresentazione del documento
11 LINGUAGGI DI INTERROGAZIONE
12 Desiderata Dichiaratività Chiusura rispetto al modello dei dati Capacità di esprimere interrogazioni e trasformazioni Composizionalità delle query XML: capacità di sfruttare, ai fini dellottimizzazione di query, le eventuali DTD associate ai documenti interrogati
13 Linguaggi per XML XML-QL è stato progettato specificamente per interrogare documenti data-oriented –Può essere considerato il migliore linguaggio di query per XML data-oriented XQL è un linguaggio per linterrogazione di documenti general-purpose –XQL non è consigliabile per linterrogazione di documenti data-oriented
14 XML-QL CONSTRUCT { WHERE $t $a IN CONSTRUCT $t $a }
15 XQL La query precedente, pur semplice, non è esprimibile in XQL Una query XQL: \database\softwareVendors\company[$i=ID]\name
16 MECCANISMI DI SCHEMATIZZAZIONE
17 Assenza di schema logico I sistemi di gestione di SSD sono di solito privi di uno schema logico Lassenza di schemi logici crea problemi: –esecuzione inefficiente delle query –mancanza di una nozione di correttezza di query –difficoltà nella formulazione delle query
18 Schemi per XML data-oriented Le DTD non sono soddisfacenti –Descrivono la struttura sintattica e non lorganizzazione logica –Impongono un ordinamento sui dati –Non permettono di esprimere vincoli sui riferimenti
19 Schemi per XML data-oriented Esistono numerose proposte di schemi per documenti XML La più interessante, per quanto riguarda i documenti data-oriented, è SOX2.0 –Tipizzazione dei riferimenti –Maggiore attenzione allorganizzazione logica dei dati
20 CONCLUSIONI
21 Direzioni di ricerca Buona parte della comunità di ricerca ritiene soddisfacenti le soluzioni per SSD relative a: –modelli dei dati –linguaggi di interrogazione Non siamo daccordo
22 Problemi aperti I problemi aperti sono ancora troppi –Ottimizzazione –Correttezza –Applicazioni su database La loro risoluzione richiede, a nostro avviso, un approccio diverso da quello finora seguito
23 Approccio unificante È necessario un approccio unificante Il progetto che stiamo sviluppando (Data-X) –Realizzazione di un query language tipizzato –Sistema di tipi che risolva i tre problemi precedentemente citati