Upload
armo-mauro
View
215
Download
0
Embed Size (px)
Citation preview
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:– un’elevata irregolarità strutturale e/o– un’elevata instabilità strutturale
• Queste caratteristiche rendono gli SSD non agevolmente gestibili con sistemi relazionali e/o object-oriented
5
Esempio@inproceedings{GW99 , 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},}
@inproceedings{DBLP:conf/icde/NestorovUWC97, 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 = {0-8186-7807-0}, pages = {79-90}, bibsource = {DBLP, http://dblp.uni-trier.de}}
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
<operatingSystems>
<OS Y2KBugFree=”yes”>
<name> MacOS </name>
<currentVersion lastRevisionDate=”03012000”>
9.1
</currentVersion>
<releasedBy> Apple Computer Inc. </releasedBy>
</OS>
<OS Y2KBugFree=”no”>
<name> WIndowsNT </name>
<currentVersion lastRevisionDate=”11011999”>
4 SP6
</currentVersion>
<releasedBy> Microsoft Inc. </releasedBy>
</OS>
</operatingSystems>
10
Rappresentazione del documentooperatingSystems
OS OS
(Y2KBugFree,“Yes”) (Y2KBugFree,“No”)
name
currentVersion
MacOS Apple Computer Inc.
namereleasedBy releasedBy
WindowsNT Microsoft Inc.
currentVersion
(lastRevisionDate, “01032000”)
(lastRevisionDate, “11011999”)
9.14 SP6
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
dell’ottimizzazione 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 l’interrogazione di documenti general-purpose– XQL non è consigliabile per l’interrogazione di
documenti data-oriented
14
XML-QLCONSTRUCT <results> {
WHERE <bib>
<book>
<title> $t </title>
<author> $a </author>
</book>
</bib> IN “www.bn.com/bib.xml”
CONSTRUCT <result>
<title> $t </title>
<author> $a </author>
</result>
} </results>
15
XQL
• La query precedente, pur semplice, non è esprimibile in XQL
• Una query XQL:
\database\softwareVendors\company[$i=ID]\name
[\database\operatingSystems\
OS[@releasedBy=$i]
[@Y2KBugFree=”Yes”]]
16
MECCANISMI DI SCHEMATIZZAZIONE
17
Assenza di schema logico
• I sistemi di gestione di SSD sono di solito privi di uno schema logico
• L’assenza 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
l’organizzazione 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 all’organizzazione 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 d’accordo
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