basi di dati semistrutturate e xml
DESCRIPTION
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. Struttura della presentazione. Introduzione Modelli dei dati Linguaggi di interrogazione - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/1.jpg)
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
![Page 2: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/2.jpg)
2
Struttura della presentazione
• Introduzione
• Modelli dei dati
• Linguaggi di interrogazione
• Meccanismi di schematizzazione
• Conclusioni
![Page 3: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/3.jpg)
3
INTRODUZIONE
![Page 4: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/4.jpg)
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
![Page 5: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/5.jpg)
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}}
![Page 6: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/6.jpg)
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
![Page 7: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/7.jpg)
7
MODELLI DEI DATI
![Page 8: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/8.jpg)
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
![Page 9: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/9.jpg)
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>
![Page 10: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/10.jpg)
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
![Page 11: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/11.jpg)
11
LINGUAGGI DI INTERROGAZIONE
![Page 12: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/12.jpg)
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
![Page 13: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/13.jpg)
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
![Page 14: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/14.jpg)
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>
![Page 15: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/15.jpg)
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”]]
![Page 16: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/16.jpg)
16
MECCANISMI DI SCHEMATIZZAZIONE
![Page 17: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/17.jpg)
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
![Page 18: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/18.jpg)
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
![Page 19: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/19.jpg)
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
![Page 20: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/20.jpg)
20
CONCLUSIONI
![Page 21: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/21.jpg)
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
![Page 22: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/22.jpg)
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
![Page 23: Basi di Dati Semistrutturate e XML](https://reader036.vdocumenti.com/reader036/viewer/2022081513/56814e80550346895dbc1c0c/html5/thumbnails/23.jpg)
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