XML und Datenbanken Speicherungsmethoden - PowerPoint PPT Presentation

About This Presentation
Title:

XML und Datenbanken Speicherungsmethoden

Description:

XML und Datenbanken Speicherungsmethoden Meike Klettke meike_at_informatik.uni-rostock.de www.xml-und-datenbanken.de Inhalt Anforderungen an die Speicherung Motivation ... – PowerPoint PPT presentation

Number of Views:250
Avg rating:3.0/5.0
Slides: 114
Provided by: xmlunddat
Category:

less

Transcript and Presenter's Notes

Title: XML und Datenbanken Speicherungsmethoden


1
XML und DatenbankenSpeicherungsmethoden
  • Meike Klettke
  • meike_at_informatik.uni-rostock.de
  • www.xml-und-datenbanken.de

2
Inhalt
  • Anforderungen an die Speicherung
  • Motivation der Existenz verschiedener Varianten
  • Vorstellung verschiedener Speicherungsverfahren
  • Speicherung und Indizierung
  • Speicherung der Graphstruktur
  • strukturierte Speicherung in Datenbanken
  • Hybride Verfahren
  • Weiterführende Literatur

3
Anforderungen an die Speicherung von
XML-Dokumenten
  • Nach (Fiebig, Kanne, Moerkotte)
  • Effektive Speicherung
  • Effizienter Zugriff auf XML-Dokumente oder Teile
    davon
  • Transaktionsverwaltung
  • Unterstützung von XPath und XQuery
  • Unterstützung von SAX und DOM für Anwendungen
  • Wiederherstellbarkeit der Dokumente (oder der
    Informationen aus den Dokumenten)

4
Unterteilung von XML-Dokumenten
Datenzentrierte Dokumente strukturiert,
regulär Beispiele Produktkataloge,
Bestellungen,
Rechnungen Dokumentzentrierte Dokumente
unstrukturiert, irregulär Beispiele
wissenschaftliche Artikel,
Bücher, E-Mails, Webseiten Semistrukturierte
Dokumente datenzentrierte und
dokumentzentrierte Anteile Beispiele
Veröffentlichungen, Amazon
ltordergt ltcustomergtMeyerlt/customergt
ltpositiongt ltisbngt1-234-56789-0lt/isbngt
ltnumbergt2lt/numbergt ltprice currencyEurogt30.0
0lt/pricegt lt/positiongt lt/ordergt
ltcontentgt XML builds on the principles of two
existing languages, ltemphgtHTMLlt/emphgt and
ltemphgtSGMLlt/emphgt to create a simple mechanism
.. The generalized markup concept .. lt/contentgt
ltbookgt ltauthorgtNeil Bradleylt/authorgt
lttitlegtXML companionlt/titlegt ltisbngt1-234-56789-0
lt/isbngt ltcontentgt XML builds on the
principles of two existing languages,
ltemphgtHTMLlt/emphgt and .. lt/contentgt lt/bookgt
5
Speicherungsmethoden
  • Vorstellung von verschiedenen Methoden
  • Grundprinzip der Speicherung
  • Eigenschaften
  • Anfragemöglichkeiten
  • Dabei Klassifikation bekannter Methoden

6
Speicherung von XML-Dokumenten
Speicherung als Ganzes
Speicherung der Dokumentstruktur
strukturierte Speicherung in Datenbanken
Volltext- und XML-Index
Volltextindex
Information Retrieval Suchmaschinen Text Extender
- Oracle Text - DB2 Text Extender -
Informix Text Data Blades
7
Exkurs Information Retrieval
  • Volltextindizierung grundlegende Technologie im
    Information Retrieval
  • Eingesetzt bei der Verarbeitung von
  • Textdokumenten
  • Universitätskatalogen oder in
  • Suchmaschinen
  • überall hinter solchen Feldern

8
Gewünschte Suchfunktionalität
  • wo findet man Informationen über
    objektrelationale Datenbanken?
  • wo ist der Begriff Information Retrieval
    definiert?
  • wo ist der Zusammenhang zwischen Datenbanken und
    Information Retrieval erläutert?
  • was sind Biomembranen?
  • die Verarbeitung solcher Informationen Inhalt
    des Gebietes Information Retrieval (nach Norbert
    Fuhr inhaltsbasierte Suche in Texten)
  • beachten muss man Effizienz, in der Regel liegen
    große Textmengen zugrunde
  • Anwendung in Suchmaschinen, spezielle
    Anforderungen dabei

9
Typische Suchfunktionalität google
10
Suchfunktionalität Bibliothek
11
man sucht also ein Dokument..
  • zum Beispiel html, pdf, ps, in dem die in der
    Suche angegebenen Begriffe auftauchen
  • Computer versteht die Texte nicht, man kann
    also nur danach suchen, welche Wörter in den
    Texten vorkommen, wie oft, in welchem
    Zusammenhang ...

HTML-Dokument
lta hrefgt ... Information Retrieval ...
Datenbanken ... Information ... Web ...
Datenbank
12
Überblick über die Dokumentverarbeitung /1
  • Such doch mal im Internet danach ...
  • Notwendigkeit eines Indexes
  • damit Anfragen effizient ausgeführt werden können
  • Inhaltsbasierte Suche in Volltexten
  • Deskribierung
  • Recherche
  • Ergebnispräsentation

13
2. Überblick über die Dokumentenverarbeitung
  • Index

Recherche Suche von Textdokumenten nach
Vorgabe von Dokumentdeskriptoren
Bewertung Ordnung der gefundenen Dokumente nach
ihrer Güte Ranking, Relevance Feedback
Deskribierung manuelle und automatische Verfahren
zur Anreicherung des strukturierten Textes mit
Deskriptoren
14
Indexbildung /1
  • Suchmaschinen für das WWW realisieren eine
    Indexbildung über Webseiten
  • Übrigens Information-Retrieval-Systeme und
    Datenbanksysteme führen ebenfalls eine
    Indexbildung nach der Speicherung von Dokumenten
    durch
  • Bei Indexbildung muss bereits feststehen, welche
    Arten von Informationen angefragt werden und wie
    die Anfragen aussehen
  • Anfragen sind zeitkritisch, Indexbildung nicht !

15
Deskribierung
  • Index

Recherche Suche von Textdokumenten nach
Vorgabe von Dokumentdeskriptoren
Bewertung Ordnung der gefundenen Dokumente nach
ihrer Güte Ranking, Relevance Feedback
Deskribierung manuelle und automatische Verfahren
zur Anreicherung des strukturierten Textes mit
Deskriptoren
16
Indexbildung /2
  • aus den Dokumenten werden die relevanten
    Stichworte extrahiert, diese fließen in den Index
    ein

lta hrefgt ... Information Retrieval ...
Datenbanken ... Information ... Web ...
Datenbank
Datenbank Datenbanken Information,
2 Retrieval Web
17
Implementierung als invertierte Liste
d4(50)
d1(300)
Term i
d3 (15)
d2(25,30)
Term j
d2(45)
Dokumente d1..dn
Term k
d1(435)
d2(335)
  • verschiedene Optimierungen dieser
    Indexstrukturen
  • Anfragen sind zeitkritisch, die Indexbildung
    nicht,
  • Ziel sind also effiziente Zugriffe

18
Übersicht über Verfahren zur Deskribierung
  • statistische, wortbasierte Verfahren
  • Häufigkeit von Wörtern auswerten
  • linguistische Verfahren
  • Stammwortreduktion
  • Erkennen von Satzzusammen-
  • hängen
  • wissensbasierte Verfahren
  • Klassifikationen, Thesauren, Ontologien

Index
Deskribierung
19
Häufigkeit der Terme auswerten / 1
  • Stoppwortliste eliminiert sehr häufige Worte
  • (diese würden sehr viele Einträge im Index
    bewirken, sind aber für die Recherche ungeeignet)
  • Beispiele 10 häufigste Begriffe im Deutschen
  • der, die, und, in, den, von, zu, das, mit, sich
  • sehr seltene Begriffe werden gestrichen
  • (haben zwar die höchste Selektivität, würden die
    Anzahl der Begriffe im Index stark erhöhen und
    sind für die Recherche zu speziell)
  • Beispiele (aus Heuer, Saake, 2000)
  • BadHilfskraft
  • Datenbankimplmentierung

20
Häufigkeit der Terme auswerten / 2
Zipfsches Gesetz (nach George Kingsley Zipf,
1902-1950) die Verteilung der Worte in
einem Dokument richtet sich nach der
Übersicht Sortierung der Terme nach
abfallender Häufigkeit Salton, McGill,
1983 zur Suche eignen sich Begriffe mit
mittlerer Häufigkeit am besten
Häufig- keit
Rang
Diskrimi- nations- kraft der Terme
zu seltene Terme
zu häufige Terme
abnehmende Worthäufigkeit
Stoppwortliste
Eliminierung seltener Begriffe
21
Bildung eines linguistischen Indexes / 1
  • Motivation Suche nach dem Begriff soll auch
    Deklinationen bzw. Konjugationen einbeziehen
  • Beispiele
  • bei Eingabe des Suchbegriffes Datenbank sollen
    auch Dokumente mit dem Begriff Datenbanken
    gefunden werden
  • bei der Suche nach fehlschlagen soll auch
    fehlschlug und fehlgeschlagen gefunden werden
  • Verfahren statt der exakten Begriffe wird die
    Grundform der Terme im Dokument gespeichert
  • Verfahren verkleinert die invertierten Listen und
    führt sprachlich zusammengehörige Terme zu einem
    Eintrag zusammen

22
Vorgehensweise bei der Bildung eines
linguistischen Indexes / 2
  • Wortnormalisierung (Groß- und Kleinschreibung,
    Umlaute)
  • Wortdekomposition (nur für deutsche Sprache)
  • Komposita (zusammengesetzte Begriffe) werden
    auseinandergenommen,
  • Beispiele
  • West-mole, Ost-mole
  • Einzel-zimmer, Doppel-zimmer, Zweibett-zimmer,
    Vierbett-zimmer
  • Stammformreduktion, Verfahren zur Bestimmung der
    Grundformen durch
  • Regeln (für die englische Sprache sind zahlreiche
    Verfahren bekannt) oder
  • Wörterbücher (besonders für die deutsche Sprache
    aufgrund vieler Unregelmäßigkeiten erforderlich)

23
Recherche
  • Index

Recherche Suche von Textdokumenten nach
Vorgabe von Dokumentdeskriptoren
Bewertung Ordnung der gefundenen Dokumente nach
ihrer Güte Ranking, Relevance Feedback
Deskribierung manuelle und automatische Verfahren
zur Anreicherung des strukturierten Textes mit
Deskriptoren
24
Verfahren zur Recherche
Index
Häufigste Retrievalmodelle - Boolesches
Retrieval - Vektorraummodell -
probabilistisches Modell
Recherche
Deskribierung und Recherche müssen mit den
gleichen Methoden erfolgen (Stammwortreduktion,
Stoppwortliste)
25
Boolesches Retrieval / 1
  • Grundbaustein Attribut - Attributwert - Paar
  • verknüpft durch and, or, not
  • Nachteile relativ geringe Möglichkeiten,
    Anfragen zu formulieren
  • oft können Benutzer die Verarbeitung der Anfrage
    nicht einschätzen
  • z.B. wurden bei Suchmaschinen Statistiken
    erhoben, dass die Anfragen durchschnittlich 1.7
    Wörter enthalten

26
Boolesches Retrieval / 2
27
Boolesches Retrieval auf invertierten Listen
d4(50)
Term i
d3 (15)
d2(25,30)
Term j
d2(45)
d1(300)
Dokumente d1..dn
Term k
d1(435)
d2(335)
  • Beispielanfragen
  • k
  • i or j
  • i and k
  • i and k and not j

28
Vektorraummodell
  • Dokumente und Anfragen werden als Vektoren
    betrachtet
  • mit einem Ähnlichkeitsmaß (Abstandsfunktion)
    werden zu einer Anfrage die Ergebnisdokumente
    ermittelt
  • es gibt zahlreiche Ähnlichkeitsmaße
  • Ergebnis der Ähnlichkeitsfunktion kann für das
    Ranking verwendet werden

29
Probabilistisches Modell
  • Terme der Anfrage können gewichtet werden, damit
    hat der Benutzer die Möglichkeit, wichtigere und
    unwichtigere Teile einer Anfrage zu spezifizieren
  • Terme des Dokumentes werden ebenfalls gewichtet
  • manuelle Verfahren für Indizierende stellt die
    Angabe solcher Wahrscheinlichkeiten eine
    schwierige Aufgabe dar
  • automatische Verfahren verwenden
    Termhäufigkeiten, Dokumentgröße, Position des
    Terms im Dokument, ..
  • Ähnlichkeitsfunktion liefert ebenfalls ein Ranking

30
Arten von Anfragen
  • Boolesche Anfragen
  • Stammformsuche
  • Phrasensuche
  • Proximity-Suche
  • maximaler Wortabstand, im gleichen Satz mit,
    Wortreihenfolge
  • Phonetische Suche
  • Suche nach ähnlich klingenden Wörtern
  • fehlertolerante Suche
  • Zulassen von x Fehlern
  • Berücksichtigung der Dokumentstruktur
  • Wichtungsfaktoren

31
Bewertung
Recherche Suche von Textdokumenten nach
Vorgabe von Dokumentdeskriptoren
  • Index

Bewertung Ordnung der gefundenen Dokumente nach
ihrer Güte Ranking, Relevance Feedback
Deskribierung manuelle und automatische Verfahren
zur Anreicherung des strukturierten Textes mit
Deskriptoren
32
Verfahren zur Bewertung
Index
Recherche
Bewertung
  • Ranking
  • Bestimmung, in welcher Reihenfolge die
    ermittelten Ergebnisse präsentiert werden
  • Relevance Feedback
  • Dialog mit dem Benutzer, bei dem eine neue
    Ergebnisermittlung aufgrund von relevanter und
    nicht relevanter Dokumenten ermittelt wird

33
Ranking
  • Aufgabe Reihenfolge für die Ausgabe der
    relevanten Dokumente wird gesucht
  • Grundlegende Maße
  • Häufigkeit des Suchterms im Dokument
  • Anzahl der verschiedenen Suchterme eines
    Dokumentes
  • Anzahl der Dokumente, in denen der Suchterm
    auftritt
  • Dokumentgröße
  • ...
  • Aus Kombinationen dieser Maße ergeben sich
    Rankingfunktionen
  • Boolesches Retrieval erlaubt kein Ranking
    (Ergebnis 0 oder 1), dieses wird oft nachträglich
    als 2. Schritt über der Menge der relevanten
    Dokumente ermittelt.

34
Ende des Exkurses
  • Vorgestellt wurden
  • Techniken zur Textverarbeitung
  • Jetzt folgt
  • Anwendung für XML-Dokumente

35
Grundprinzip der invertierten Liste
Dokumente
Stichworte
Stichworte
Dokumente
1
A
3
A
D
F
1
2
B
2
3
C
C
D
B
2
1
3
2
D
3
E
A
C
D
E
1
3
F
Invertierte Speicherung
Bestimmung der Stichworte
Speicherung der Stichworte und
der Dokumente
der zugehörigen Dokumente
36
Volltext-Index
lthotelgt
lthotelnamegtHotel Hübnerlt/hotelnamegt
Verweis
Begriff
ltadressegt
ltplzgt18119lt/plzgt
hotel
ltortgtWarnemündelt/ortgt
Warnemünde
ltstrassegtSeestraßelt/strassegt
Rostock
ltnummergt12lt/nummergt
ort
lt/adressegt
ltanreisebeschreibunggt
anreisebeschreibung
Aus Richtung Rostock kommend ...
lt/anreisebeschreibunggt
lt/hotelgt
  • bekannte Methode (älter als relationale
    Datenbanken)
  • Verfahren aus dem Bereich der Dokumentverarbeitun
    g

37
Weiteres Beispiel
Element
Term
ltnachricht id"ID0001" bedeutung"4"gt ltautor
autor_id"A0001"gt ltnachnamegtFürstlt/nachnam
egt ltvornamegtChristianlt/vornamegt
ltagenturgtdpalt/agenturgt lte-mailgtfuerst_at_dpa.
delt/e-mailgt lt/autorgt lteinordnunggt
ltrubrikgtMozartjahr 2006lt/rubrikgt ltinhaltgt
ltueberschriftgtEin Vermarktungsfest
lt/ueberschriftgt lttextgtAls Wolfgang
Amadeus Mozart im Alter von 35
Jahren starb, .. lt/textgt
lt/inhaltgt lt/nachrichtgt
nachricht
autor
nachname
Fürst
vorname
Christian
inhalt
ueberschrift
Vermarktungsfest
text
Wolfgang

38
Volltext-Index
  • Nicht nur Suche nach exaktem Auftreten der
    Begriffe möglich,
  • Verwendung von
  • Statistischen wortbasierten Verfahren
  • (Stoppwortlisten, Streichen von selten
    vorkommenden Begriffen)
  • Linguistischen Verfahren
  • Wortnormalisierung
  • (Groß-, Kleinschreibung, Getrennt- und
    Zusammenschreibung, Umlaute),
  • Wortdekomposition durch Regeln (engl.) oder
    Wörterbücher (dt.)
  • Stammwortreduktion
  • Wissensbasierten Verfahren
  • (Einsatz von Ontologien und Thesauren zur Suche
    nach Synonymen sowie Über- und Unterbegriffen)

39
Anfragen /1
  • boolesches Retrieval
  • Kombination von Anfrageteilen mit AND, OR
    oder NOT Beispiele
  • Hotel AND Warnemünde
  • (Hotel OR Pension) AND (Warnemünde OR Rostock)
  • linguistische Anfragen
  • Stammwortsuche, phonetische Suche,
    Ähnlichkeitssuche usw.

40
Anfragen /2
  • Position der Stichworte im Index erlaubt weitere
    Anfragen
  • Beispiele
  • Suchbegriff 'Datenbanken' tritt vor 'XML' im
    Dokument auf
  • der Begriff 'Information' folgt unmittelbar auf
    'Retrieval
  • 'XML' und 'Datenbanken' treten mit einem Abstand
    von höchstens 5 Wörtern auf
  • Ergebnis der Anfragen ist in der Regel das
    vollständige Dokument
  • Die Anfragen sind also Suchfunktionen
  • Nicht realisierbar ist jedoch
  • //hoteladresse/ort/text()Warnemuende
  • Nur hotel and adresse and ort and Warnemuende

41
Eigenschaften des Volltext-Indexes
Schemabeschreibung Nicht erforderlich
Dokumentrekonstruktion XML-Dokumente bleiben im Original erhalten
Anfragen Anfragen des Information Retrieval
Updates Austausch der XML-Dokumente erforderlich
Weitere Besonderheiten Volltextfunktionen (SQL-MM) keine Auswertung des XML-Markups
Anwendung dokumentzentrierte XML-Anwendungen
42
Systeme /1
  • Suchmaschinen
  • fast alle herkömmlichen Suchmaschinen verwenden
    invertierte Listen zur Indexbildung
  • IBM DB2 Text Extender
  • Text Extender, ermöglicht die Speicherung von
    Volltextdokumenten innerhalb eines
    Datenbanksystems
  • vier verschiedene Arten von Indizes können
    gebildet werden,
  • Mögliche Suchanfragen
  • Stammwortreduktion,
  • exakte Suche,
  • phonetische Suche,
  • Ähnlichkeitssuche

43
Systeme /2
  • Oracle Text
  • Verarbeitung von Volltext-Datentypen
  • Information-Retrieval-Anfragen in Form von
    speziellenSQL-Anweisungen
  • Mögliche Anfragen
  • Stammwortreduktion
  • Verwendung von Wildcards
  • Ähnlichkeits- und Phrasensuche
  • Ranking der Ergebnisse erfolgt
  • Relevance Feedback durch den Anwender ist
    möglich

44
Speicherung von XML-Dokumenten
Speicherung als Ganzes
Speicherung der Dokumentstruktur
strukturierte Speicherung in Datenbanken
Volltext- und XML-Index
Volltextindex
DB2 Text Extender Oracle Text Informix Verity
Text Search Data Blade XML-Suchmaschinen
45
Volltext- und XML-Index
- XML - Struktur kann in Anfragen ausgewertet
werden
46
Weiteres Beispiel
Element
Verweis
Term
ltnachricht id"ID0001" bedeutung"4"gt ltautor
autor_id"A0001"gt ltnachnamegtFürstlt/nachnam
egt ltvornamegtChristianlt/vornamegt
ltagenturgtdpalt/agenturgt lte-mailgtfuerst_at_dpa.
delt/e-mailgt lt/autorgt lteinordnunggt
ltrubrikgtMozartjahr 2006lt/rubrikgt ltinhaltgt
ltueberschriftgtEin Vermarktungsfest
lt/ueberschriftgt lttextgtAls Wolfgang
Amadeus Mozart im Alter von 35
Jahren starb, .. lt/textgt
lt/inhaltgt lt/nachrichtgt
Fürst
Christian
Mozartjahr
Vermarktungsfest
Wolfgang

Vorgänger
Ordnung
Verweis
Element
1
nachricht
1
autor
1
nachname
2
vorname

3
inhalt
1
ueberschrift
2
text
47
Volltext- und XML-Index
  • Strukturinformationen müssen aus dem Index
    erkennbar und wiederherstellbar sein,
  • Zuordnung Inhalten zum Markup sowie
  • Hierarchische Schachtelung und Anordnung des
    Markup

48
Anfragen /1
  • boolesches Retrieval
  • Hotel AND Warnemünde
  • linguistische Anfragen
  • Stammwortsuche, phonetische Suche,
    Ähnlichkeitssuche usw.
  • Position der Stichworte im Index erlaubt weitere
    Anfragen
  • Suchbegriff 'Datenbanken' tritt vor 'XML' im
    Dokument auf
  • der Begriff 'Information' folgt unmittelbar auf
    'Retrieval
  • Durch das Anlegen eines Strukturindexes lässt
    sich das Markup auswerten
  • /unterkuenfte/hoteladresse/ort/text()Warnemuend
    e or adresse/ort/text()Rostock
  • /unterkuenfte/hotelcontains(name/text(),Strand

49
Anfragen /2
  • Einsatz von XPath und XQuery ist dadurch möglich
  • Anfragen, die das gesamte Dokument als Ergebnis
    liefern, lassen sich einfach realisieren,
  • Anderenfalls muss das Dokument geparst werden und
    das Ergebnis daraus generiert werden.

50
Eigenschaften des Volltext- und XML-Indexes
Schemabeschreibung Nicht erforderlich
Dokumentrekonstruktion XML-Dokumente bleiben im Original erhalten
Anfragen Anfragen des Information Retrieval Auswertung des Markups in den Anfragen XML-Anfragen möglich
Updates Austausch der XML-Dokumente erforderlich
Weitere Besonderheiten Volltextfunktionen (SQL-MM)
Anwendung dokumentzentrierte und semistrukturierte XML-Anwendungen
51
Systeme
  • DB2 Text Extender
  • Speicherung von Volltextdokumenten innerhalb
    eines Datenbanksystems
  • Auswertung von Markup ist möglich
  • Dadurch Kombination von Volltextanfragen mit
    Auswertung von XML-Markup möglich
  • Oracle Text
  • XML-Unterstützung durch Auswertung von
    XML-Strukturen
  • bewirkt, dass Volltextanfragen und Anfragen zur
    Struktur der Dokumente kombiniert werden können.

52
Speicherung von XML-Dokumenten
Speicherung als Ganzes
Speicherung der Dokumentstruktur
strukturierte Speicherung in Datenbanken
(einfache) Abbildung der Graphstruktur
Speicherung der Informationen des DOM
Neil Bradley Florescu/Kossmann Shimura/Yoshikawa/U
emura
53
Speicherung der Graphstruktur / 1
  • generische Speicherung der Struktur des
    XML-Dokumentes
  • werden mehrere XML-Dokumente in der Relation
    gespeichert, muss noch eine ID des XML-Dokumentes
    in der Relation ergänzt werden

54
Weiteres Beispiel
ID Element Wert Ordnung Vorgänger
n001 nachricht 1 -
n002 autor 1 n001
n003 nachname Fürst 1 n002
n004 vorname Christian 2 n002
n005 agentur dpa 3 n002
n006 e-mail fuerst_at_dpa.de 4 n002
ltnachricht id"ID0001" bedeutung"4"gt ltautor
autor_id"A0001"gt ltnachnamegtFürstlt/nachnam
egt ltvornamegtChristianlt/vornamegt
ltagenturgtdpalt/agenturgt lte-mailgtfuerst_at_dpa.
delt/e-mailgt lt/autorgt lteinordnunggt
ltrubrikgtMozartjahr 2006lt/rubrikgt ltinhaltgt
ltueberschriftgtEin Vermarktungsfest
lt/ueberschriftgt lttextgtAls Wolfgang
Amadeus Mozart im Alter von 35
Jahren starb, .. lt/textgt
lt/inhaltgt lt/nachrichtgt
Element Attribut Typ Wert
n001 id xsID ID0001
n001 bedeutung xsint 4
n002 autor_id xsID A0001
55
Speicherung der Graphstruktur /2
  • Verwendung von Relationen zur Speicherung von
    Elementen und Attributen
  • Elemente
  • DocID Elementname Typ Wert Ordnung
    Verweis auf Vorgänger
  • Attribute
  • Attributname Typ Wert
    Verweis auf Element
  • Damit ist die Zuordnung von Inhalten zur
    Struktur, sowie die vollständige
    Wiederherstellung der Struktur möglich

56
Speicherung der Graphstruktur /3
  • DTD nicht erforderlich
  • für einfache Anfragen verwendbar
  • Durch Erweiterungen können Datentypen adäquat
    gespeichert und ausgewertet werden
  • komplexere Anfragen über zwei oder mehr Elemente/
    Attribute sind nicht effizient

57
Anfragen
  • Angepasstes SQL, durch Datenbankschema bestimmt
  • Beispiel
  • (Hotels in Warnemünde)
  • select a.wert
  • from Elemente a, Elemente b
  • where (a.element
  • 'hotelname') and
  • (b.element'ort') and
  • (b.wert'Warnemünde') and
  • (a.DocIDb.DocID)

Elements
Element
Wert
Type
Descendant-of
DocID
d0001
hotel
adresse
d0001
plz
int
18119
d0001
ort
string
Warnemünde
d0001
string
strasse
Seestrasse
d0001
58
Anfragen
  • XML-Anfragen sind möglich,
  • werden intern auf SQL-Anfragen (unter
    Berücksichtigung der Speicherstruktur) umgesetzt,
  • Ergebnis der XML-Anfrage wird aus Ergebnis der
    Datenbankanfrage generiert

SQL
XML- Anfragen
59
Eigenschaften der Speicherung der Graphstruktur
Schemabeschreibung Nicht erforderlich
Dokumentrekonstruktion Möglich, aber sehr aufwändig
Anfragen XML-Anfragen möglich angepasste Datenbankanfragen
Updates effizient realisierbar
Weitere Besonderheiten Anfragen über vielen Elementen und Attributen sind aufwändig
Anwendung Daten-, dokumentzentrierte und semistrukturierte XML-Anwendungen
60
Systeme
  • Keine kommerziellen Systeme bekannt
  • Verwendung in universitären Prototypen
  • Einsatz dort, weil einfache Realisierung, die
    eine schnelle Abspeicherung von XML-Dokumenten
    ermöglicht
  • Festes (und kleines) Datenbankschema
  • Bei uns umgesetzt
  • Diplomarbeit von Guido Rost
  • Speicherung und Realisierung von XQuery
  • Diplomarbeit von Björn Below
  • Realisierung von Updates auf dieser Struktur

61
Speicherung von XML-Dokumenten
Speicherung als Ganzes
Speicherung der Dokumentstruktur
strukturierte Speicherung in Datenbanken
(einfache) Abbildung der Graphstruktur
Speicherung der Informationen des DOM
Richard Edwards infonyte eXcelon XIS (POET)
62
Speicherung basierend auf DOM /1
DOMImplementation
Node
NodeList
NamedNodeMap
  • Informationen des Document Object Models bilden
    das Schema der Datenbank
  • Verwendung relationaler oder objekt-orientierter
    Datenbanken oder
  • Entwicklung eigener Speicherungsstrukturen

Attr
CharacterData
Comment
Text
CDataSection
Document
DocumentFragment
DocumentType
Element
Entity
EntityReference
Notation
ProcessingInstruction
63
Speicherung basierend auf DOM /2
  • Methoden der Klasse Node
  • - getChildren()
  • - getFirstChild()
  • - getNextSibling()
  • - getNodeType()
  • - getParentNode()
  • - getPreviousSibling()
  • - hasChildren()
  • Methoden der Klasse Element
  • - getAttributes()
  • - getElementsByTagName(String)
  • - getTagName()
  • Methoden der Klasse Attribut
  • - getName()
  • - getValue()

NodeID NodeType DocID ParentNode

PreviousSibling NextSibling FirstChild

NodeID TagName

NodeID ElementID AttributName AttributValue

64
Anfragen
SQL
XML- Anfragen
  • DOM-Methoden
  • XML-Anfragen
  • Angepasste Datenbankanfragen (unter Kenntnis der
    Speicherungsstruktur)

65
Eigenschaften der auf DOM basierenden Speicherung
Schemabeschreibung Nicht erforderlich
Dokumentrekonstruktion Möglich, aber sehr aufwändig
Anfragen XML-Anfragen möglich angepasste Datenbankanfragen
Updates effizient realisierbar
Weitere Besonderheiten Anfragen über vielen Elementen und Attributen sind aufwändig standardisierte und allgemein akzeptierte Schnittstelle
Anwendung Daten-, dokumentzentrierte und semistrukturierte XML-Anwendungen
66
Systeme /1
  • Infonyte-DB
  • verwendet zur Speicherung von XML-Dokumentenein
    persistentes Document Object Model (PDOM)
  • baut aber nicht auf existierende Datenbanken auf,
    sondern entwickelt Komponenten zur physischen
    Speicherung, die an die XML-Dokumente optimal
    angepasst sind
  • Anfragesprache Richtung XQuery
  • Tamino
  • modellbasierte Speicherung von XML-Dokumenten
  • XML-Anfragen auf den gespeicherten Dokumenten
    sind durch die Verwendung von XPath realisierbar
  • Entwicklung geht Richtung XQuery

67
Systeme /2
  • Sonic XML Server (früher unter den Namen eXcelon)
  • verwendet zur Speicherung von XML-Dokumenten das
    Document Object Model
  • Alle Informationen, die in dieser API enthalten
    sind, werden in einer objektorientierten
    Datenbank objectstore adäquat gespeichert.
  • Anfragen OQL
  • Berkeley DB XML
  • Generische Speicherung
  • Indexverfahren
  • Anfragen XPath, XQuery
  • Metadaten können zugeordnet werden

68
Systeme /3
  • mittlerweile unterstützen sowohl Oracle als auch
    DB2 eine native XML-Speicherung
  • Datentyp XML,
  • Anfragen XPath, XQuery,
  • Volltext- und Strukturindex, ...

69
Speicherung von XML-Dokumenten
Speicherung als Ganzes
Speicherung der Dokumentstruktur
strukturierte Speicherung in Datenbanken
Vollständiges (automatisches) Mapping
Benutzerdefiniertes Mapping
Shanmugasundaram et al. (Ronald
Bourret) (Deutsch/Fernandez/ Suciu
Stored) Klettke/Meyer POET
70
Abbildung der XML-Struktur auf Struktur
relationaler Datenbanken
Hotel
HotelID Hotelname Adresse Preise
H0001 Hotel Hübner A0001 P0001
XML-Dokument
lthotel HotelID"H0001"gt lthotelnamegtHotel
Hübner lt/hotelnamegt ltadressegt
ltortgtWarnemündelt/ortgt ltstrassegtSeestraßelt/
strassegt ... lt/adressegt
ltpreisegt lteinzelzimmergt98
lt/einzelzimmergt ...
lt/preisegt lt/hotelgt
Adresse
AdresseID Ort Strasse ...
A0001 Warnemünde Seestraße
PreiseID Einzelzimmer ...
P0001 98
Preise
  • DTD oder XML-Schema ist erforderlich
  • - typgerechte Speicherung

71
Weiteres Beispiel
nachricht
ltnachricht id"ID0001" bedeutung"4"gt ltautor
autor_id"A0001"gt ltnachnamegtFürstlt/nachnam
egt ltvornamegtChristianlt/vornamegt
ltagenturgtdpalt/agenturgt lte-mailgtfuerst_at_dpa.
delt/e-mailgt lt/autorgt lteinordnunggt
ltrubrikgtMozartjahr 2006lt/rubrikgt ltinhaltgt
ltueberschriftgtEin Vermarktungsfest
lt/ueberschriftgt lttextgtAls Wolfgang
Amadeus Mozart im Alter von 35
Jahren starb, .. lt/textgt
lt/inhaltgt lt/nachrichtgt
id bedeutung autor inhalt
ID0001 4 A0001 P0001
autor
ID autor_id nachname Vorname agentur e-mail
x00001 A0001 Fürst Christian dpa fuerst_at_dpa.de
inhalt
ID ueberschrift text
y00001 Ein Vermarktungsfest Als Wolfgang Amadeus Mozart im Alter von 35 Jahren starb, ..
72
Abbildung der XML-Struktur auf objektorientierte
Datenbanken
lthotel url"www.hotel-huebner.de"gt
lthotelnamegtHotel Hübnerlt/hotelnamegt
ltadressegt ltortgtWarnemündelt/ortgt
ltstrassegtSeestraßelt/strassegt ...
lt/adressegt ltpreisegt
lteinzelzimmergt98lt/einzelzimmergt ...
lt/preisegt lt/hotelgt
XML-Dokument
HotelID Hotelname Adresse Adresse Adresse Preise Preise
HotelID Hotelname Ort Strasse ... einzelzimmer ...
H0001 Hotel Hübner Warnemünde Seestraße 98
Hotel
- DTD oder XML-Schema ist erforderlich -
typgerechte Speicherung - Datenbanken mit vielen
Nullwerten
73
Weiteres Beispiel
ltnachricht id"ID0001" bedeutung"4"gt ltautor
autor_id"A0001"gt ltnachnamegtFürstlt/nachnam
egt ltvornamegtChristianlt/vornamegt
ltagenturgtdpalt/agenturgt lte-mailgtfuerst_at_dpa.
delt/e-mailgt lt/autorgt lteinordnunggt
ltrubrikgtMozartjahr 2006lt/rubrikgt ltinhaltgt
ltueberschriftgtEin Vermarktungsfest
lt/ueberschriftgt lttextgtAls Wolfgang
Amadeus Mozart im Alter von 35
Jahren starb, .. lt/textgt
lt/inhaltgt lt/nachrichtgt
  • adäquatere Darstellung von hierarchischen
    Informationen
  • gut abbildbar Sequenzen von Elementen,
    Attribute
  • schlecht abbildbar mixed content

id bedeutung autor autor autor autor autor ...
id bedeutung autor_id nachname vorname agentur e-mail
ID0001 4 A0001 Fürst Christian dpa fuerst_at_dpa.de
74
Erzeugen des Datenbankschemas für eine DTD
(straight-forward) /1
  • Elemente
  • XML-Element Attribut einer Relation
  • Sequenz von Elementen Attribute einer Relation
  • Alternative von Elementen Attribute einer
    Relation
  • Element mit Quantifizierer ? Attribut mit
    Nullwerten
  • Elemente mit Quantifizierer , Menge oder Liste
    von Attributen
  • (SET OF, LIST OF)
  • Geschachtelte Elemente TUPLE OF

75
Erzeugen des Datenbankschemas für eine DTD
(straight-forward) /2
  • Attribute
  • XML-Attribut Attribut einer Relation
  • IMPLIED Nullwert erlaubt
  • REQUIRED Nullwert nicht erlaubt
  • Defaultwert Defaultwert

76
Beispiel für die straight-forward Abbildung / 1
  • lt!ELEMENT book (front, body, references)gt
  • lt!ATTLIST book isbn CDATA REQUIREDgt
  • lt!ELEMENT front (title, author, edition?,
    publisher)gt
  • lt!ELEMENT title (PCDATA)gt
  • lt!ELEMENT author (first, second, e-mail?)gt
  • lt!ELEMENT first (PCDATA)gt
  • lt!ELEMENT second (PCDATA)gt
  • lt!ELEMENT e-mail (PCDATA)gt

book
77
Beispiel für die straight-forward Abbildung / 2
Informix syntax CREATE TABLE book ( isbn
VARCHAR(20) NOT NULL, front ROW ( title
VARCHAR(100) NOT NULL, author LIST
(ROW ( first VARCHAR(30) NOT NULL,
second VARCHAR(50) NOT
NULL, email VARCHAR(30))) NOT
NULL, edition VARCHAR(20),
publisher VARCHAR(40) NOT NULL), body ...
references ... )
  • XML document
  • lt!ELEMENT book (front, body, references)gt
  • lt!ATTLIST book isbn CDATA REQUIREDgt
  • lt!ELEMENT front (title, author,
  • edition?, publisher)gt
  • lt!ELEMENT title (PCDATA)gt
  • lt!ELEMENT author (first, second, e-mail?)gt
  • lt!ELEMENT first (PCDATA)gt
  • lt!ELEMENT second (PCDATA)gt
  • lt!ELEMENT e-mail (PCDATA)gt

78
Problemfälle bei der Abbildung Alternativen /1
  • drei Speicherungsvarianten sind möglich
  • 1. alle Alternativen in einer Relation

Beispiel lt!ELEMENT unterkunft (hotel
pension campingplatz)gt
Hotel Hotel Hotel Pension Pension Pension Pension Campingplatz Campingplatz Campingplatz
Kategorie Hotel-name ... Pensions-name Zimmer Aus--stattung Preise Klassifi- kation .. ..

79
Problemfälle bei der Abbildung Alternativen /2
  • 2. Aufspaltung in separate Relationen
  • Hotel
  • Pension
  • Campingplatz

Beispiel lt!ELEMENT unterkunft (hotel pension
campingplatz)gt
Kategorie Hotel-name ...

Pensions-name Zimmer Aus--stattung Preise

Klassifi- kation .. ..

80
Problemfälle bei der Abbildung Alternativen /3
Beispiel lt!ELEMENT unterkunft (hotel
pension campingplatz)gt
  • 3. Verwendung eines Attributes vom Typ XML
  • unterkunft
  • ltpensiongt
  • ltpensionsnamegtZum Katerlt/pensionsnamegt
  • ltzimmergt...lt/zimmergt
  • ...
  • lt/pensiongt
  • lthotelgt
  • ltkategoriegt4 lt/kategoriegt
  • lthotelnamegtStrand Hotel Hübner
    lt/hotelnamegt
  • lt/hotelgt


81
Problemfälle bei der Abbildung Rekursionen
  • Rekursionen (in DTDs)
  • Vorgehensweise
  • Markieren der Knoten
  • Aufspaltung in separate Relationen
  • Verwendung von Referenzen (primary/foreign key)
  • Beispiel
  • lt!ELEMENT publications (book article
    conference)gt
  • lt!ELEMENT book (front, body, references)gt
  • lt!ELEMENT references (publications)gt
  • publications publications

book
ID
book
references
references
public.
book
...
82
Problemfälle bei der Abbildung Mixed Content
  • ltanreisebeschreibunggt
  • Sie können unser Haus auf verschiedenen Wegen
  • erreichen
  • ltbahngtper Bahn 1 km ab Bahnhof
    Warnemündelt/bahngt
  • ltautogtper Auto 19 km ab Autobahn A19
  • Rostock--Berlinlt/autogt
  • Sie finden uns direkt an der Uferpromenade.
  • lt/anreisebeschreibunggt

Ordnung PCDATA Bahn Auto
1 Sie können unser Haus auf verschiedenen Wegen erreichen
2 per Bahn 1 km ab Bahnhof Warnemünde
3 per Auto 19 km ab Autobahn A19 RostockBerlin
4 Sie finden uns direkt an der Uferpromenade.
83
Problemfälle bei der Abbildung Mixed Content
  • Abbildung in Relationen nur sehr schlecht
    geeignet
  • geeignet ist in diesem Fall XML-Datentyp

84
Problemfälle bei der AbbildungInhaltsmodell ANY
  • lt!ELEMENT zusatzinformationen ANYgt
  • Das heißt, im Element zusatzinformationen können
    beliebige
  • Inhalte sowie alle in der DTD deklarierten
    Elemente auftreten 
  • ltzusatzinformationengt
  • Am 31.12. stehen in ltortgtWarnemündelt/ortgt keine
    Parkplätze zur Verfügung. ltbahngtDie S-Bahn
    verkehrt an diesem Tag nach einem Sonderfahrplan
    im 7,5-Minuten-Takt.lt/bahngt
  • lt/zusatzinformationengt
  • Abbildung auf ein Datenbankschema?

85
Anfragen
  • Datenbankanfragen (Struktur der Datenbanken muss
    bekannt sein)
  • XML-Anfragen
  • Prozess der Abbildung der XML-Dokumente auf
    Datenbanken muss protokolliert sein,
  • damit Datenbankanfragen für XML-Anfragen
    generiert und Ergebnisse für die XML-Anfragen
    generiert werden können.

86
Vor- und Nachteile
  • Vorteile bei der Speicherung strukturierter
    Daten
  • Anfragen, Datentypen, Aggregatfunktionen, Sichten
  • Integration in andere Datenbanken
  • Nachteile bei der Speicherung semi- und
    unstrukturierter
  • Daten
  • großes Schema, schwach gefüllte Datenbanken,
    viele Nullwerte
  • Keine flexiblen Datentypen, Speicherung von
    Alternativen problematisch
  • Fehlende Information Retrieval Anfragen, keine
    Volltextoperationen möglich

87
Strukturierte Speicherung in Datenbanken
Schemabeschreibung Zur Speicherung erforderlich
Dokumentrekonstruktion Nur eingeschränkt möglich (Protokollierung des Abbildungsprozesses)
Anfragen Datenbankanfragen XML-Anfragen möglich
Updates Als Datenbankupdates realisierbar Updates, die Strukturen verändern bewirken aber Datenbankevolution
Weitere Besonderheiten Föderationen mit bestehenden Datenbanken möglich
Anwendung Datenzentrierte XML-Anwendungen
88
Systeme
  • POET
  • zu jedem Element der DTD oder der
    XML-Schema-Beschreibung wird eine
    korrespondierende Java-Klasse erzeugt
  • Diese wird innerhalb des Systems gespeichert,
    indem dazu eine Relation generiert wird
  • Ist kein Schema für eine Dokumentkollektion
    vorhanden, so wird hier eine Datenbank mit festem
    Schema eingesetzt. Diese Schema entspricht den
    Informationen des Document Object Model. (siehe
    vorn)
  • Oracle 8i / Oracle 9i /10g
  • Zum Datenbanksystem Oracle werden seit der
    Version 8i Tools angeboten, die die
    XML-Speicherung unterstützen.
  • Bestandteil des Oracle XML Developer's Kit (XDK)
  • Verfügbar sind zum Beispiel XML-Parser und
    XSL-Transformator

89
Speicherung von XML-Dokumenten
Speicherung als Ganzes
Speicherung der Dokumentstruktur
strukturierte Speicherung in Datenbanken
Vollständiges (automatisches) Mapping
Benutzerdefiniertes Mapping
Deutsch/Fernandez/ Suciu Stored Ronald
Bourret DB2 XML Extender
90
Benutzerdefiniertes Mapping /1
  • Bei allen bisherigen Methoden konnte die Art der
    Speicherung nicht beeinflusst werden
  • Jetzt folgt eine flexible Methode
  • Mappingvorschrift wird durch den Benutzer
    spezifiziert
  • Struktur der XML-Dokumente und Datenbankschema
    können unabhängig voneinander entworfen werden
    (und relativ autonom sein)
  • Auch möglich Speicherung von XML-Dokumenten in
    existierende Datenbanken

91
Benutzerdefiniertes Mapping /2
92
Mappingvorschrift
  • Beispiel nach Ronald Bourret
  • ltClassMapgt
  • ltElementType Name"hotel"/gt
  • ltToClassTablegt
  • ltTable Name"Hotelpreise"/gt
  • lt/ToClassTablegt
  • ltPropertyMapgt
  • ltAttribute Name"url"/gt
  • ltToColumngt
  • ltColumn Name"Hotel_ULR"/gt
  • lt/ToColumngt
  • lt/PropertyMapgt
  • ...
  • lt/ClassMapgt

Verbindung zwischen Elementen und Relationen
Verbindung zwischen Elementen/Attributen und
Datenbank-attributen
93
Mappingvorschrift in Oracle
lt?xml version"1.0" encodingISO-8859-1?gt ltxssc
hema xmlnsxdb"http//xmlns.oracle.com/xdb
xmlnsxs"http//www.w3.org/2001/XMLSchema" targ
etNamespacehttp//www.oracle.com/xsd/auftrag.xsd
elementFormDefault"qualified" attributeFormDefa
ult"unqualified"gt ltxselement name"Auftrag"
xdbSQLName"AUFTRAG xdbSQLType"AUFTRAG_T
xdbdefaultTable"AUFTRAG_TAB"gt
ltxscomplexTypegt ltxssequencegt
ltxselement name"Auftragsnr type"xsinteger"
xdbSQLName"A_NR"
xdbSQLType"INTEGER" /gt ltxselement
name"Kunde" type"xsstring xdbSQLName"KUNDE
xdbSQLType"VARCHAR2" /gt
ltxselement name"Datum" type"xsdate
xdbSQLName"DATUM" xdbSQLType"DATE" /gt
ltxselement name"Produkt
maxOccurs"unbounded xdbSQLName"PRODUKTE"
xdbSQLType"PRODUKT_T
xdbdefaultTable"PRODUKT_TAB xdbSQLInline"fal
se"gt .... lt/xsschemagt Beispiel von Ulrike
Schwinn
94
Anfragen
  • Datenbankenanfragen (Struktur der Datenbanken
    muss bekannt sein)
  • XML-Anfragen nur sehr eingeschränkt
  • Prozess der Abbildung der XML-Dokumente auf
    Datenbanken muss protokolliert sein, und alle für
    die Anfrage relevanten Daten müssen gespeichert
    sein

95
Eigenschaften
Schemabeschreibung Zur Speicherung erforderlich
Dokumentrekonstruktion Meist nicht möglich (Voraussetzungen Protokollierung des Abbildungsprozesses, vollständige Abbildung)
Anfragen Datenbankanfragen
Updates Als Datenbankupdates realisierbar Updates, die Strukturen verändern bewirken aber Datenbankevolution
Weitere Besonderheiten Integration in bestehende Datenbanken möglich XML-Dokumente und DB voneinander unabhängig
Anwendung Datenzentrierte XML-Anwendungen
96
Systeme /1
  • IBM DB2 XML-Extender
  • Speicherung von XML-Dokumenten im Datenbanksystem
    DB2
  • über eine Mappingvorschrift (DAD - Data Access
    Definition) wird angegeben, wie die Zuordnung von
    Elementen und Attributen eines Dokuments auf die
    Attribute der Datenbank erfolgen soll.
  • Die Syntax der DAD-Dateien ist XML
  • Oracle
  • objektrelationale Speicherung des XMLType
  • Art der Speicherung wird durch ein annotiertes
    XML-Schema beschrieben, dieses enthält eine
    Zuordnung von Datenbankinformationen zu den
    XML-Bestandteilen
  • Dadurch benutzerdefinierte Speicherung
  • Zugriff auf die so gespeicherten XML-Dokumente
    mit XPath oder SQL

97
Systeme /2
  • Microsoft SQL-Server
  • speichert XML-Dokumente in Datenbanken
  • anwenderdefiniertes Mapping wird verwendet, das
    durch ein annotiertes XDR-Schema festgelegt wird.
  • Annotationen beschreiben die Zuordnung zwischen
    XML-Dokument und relationaler Datenbank, zum
    Beispiel sqlrelation und sqlfield, bestimmen
    die Zuordnung zwischen Elementen und Attributen
    zu Datenbankrelationen und Datenbankattributen.

98
Speicherung von XML-Dokumenten
Als Dateien / Clobs
Speicherung der Dokumentstruktur
Strukturierte Speicherung in Datenbanken
Volltextindex
Vollständiges Mapping
Abbildung der Graphstruktur
Volltextindex und XML-Index
Benutzer- definiertes Mapping
Abbilden des DOM-Modells
Für dokument-zentrierte XML-Dokumente
Für semistrukturierte XML-Dokumente
Für daten-zentrierte XML-Dokumente
99
Was ist native Speicherung?
Als Dateien / Clobs
Speicherung der Dokumentstruktur
Strukturierte Speicherung in Datenbanken
Volltextindex
Vollständiges Mapping
Abbildung der Graphstruktur
Volltextindex und XML-Index
Benutzer- definiertes Mapping
Abbilden des DOM-Modells
Textbasierte native Modellbasierte
native Speicherung Speicherung
100
Hybride Speicherung Motivation
  • Es gibt eine Reihe von Methoden zur Speicherung
    von XML-
  • Dokumenten.
  • Welche eignet sich für XML-Dokumente, die sowohl
    daten- als
  • auch dokumentzentriert sind?
  • Algorithmus zur Bestimmung von daten- und
    dokumentzentrierten Anteilen eines XML-Dokument
  • Entsprechende Speicherung

101
Hybride Ansätze
  • Auswahl
  • unterschiedlicher
  • Speicherungsmethoden
  • für verschiedene
  • Dokumentanteile

lthotelgt
lthotelnamegtStrand Hotel Hübnerlt/hotelnamegt
ltadressegt
ltplzgt18119lt/plzgt
ltortgtWarnemündelt/ortgt
ltstrassegtSeestraßelt/strassegt
ltnummergt12lt/nummergt
lttelefongt0381/5434-0lt/telefongt
lt/adressegt
lthausbeschreibunggt Sie finden unser elegant und
komfortabel eingerichtetes 4-Sterne Hotel
direkt an der Strandpromenade von Warnemünde
mit Blick auf Leuchtturm, Hafeneinfahrt
und Ostsee. lt/hausbeschreibunggt
lt/hotelgt
Sie finden unser elegant und
komfortabel eingerichtetes 4-Sterne Hotel
direkt an der Strandpromenade von Warnemünde
mit Blick auf Leuchtturm, Hafeneinfahrt
und Ostsee.
Hotel
Ort Strasse
Telefon
0381/5434-0
Strand Hotel Hübner
Warnemünde
Seestraße
102
Weiteres Beispiel
ltnachricht id"ID0001" bedeutung"4"gt ltautor
autor_id"A0001"gt ltnachnamegtFürstlt/nachnam
egt ltvornamegtChristianlt/vornamegt
ltagenturgtdpalt/agenturgt lte-mailgtfuerst_at_dpa.
delt/e-mailgt lt/autorgt lteinordnunggt
ltrubrikgtMozartjahr 2006lt/rubrikgt ltinhaltgt
ltueberschriftgtEin Vermarktungsfest
lt/ueberschriftgt lttextgtAls Wolfgang
Amadeus Mozart im Alter von 35
Jahren starb, .. lt/textgt
lt/inhaltgt lt/nachrichtgt
nachricht
id bedeutung autor inhalt
ID0001 4 A0001 P0001
autor
ID autor_id nachname Vorname ...
x00001 A0001 Fürst Christian
ltinhaltgt ltueberschriftgtEin
Vermarktungsfest lt/ueberschriftgt
lttextgtAls Wolfgang Amadeus Mozart im
Alter von 35 Jahren starb, .. lt/textgt
lt/inhaltgt
103
Hybride Datenbanken
  • objekt-relationale Datenbanken mit Attributen
    vom Typ XML
  • Beispiel
  • strukturierte Anteile des XML-Dokumentes als
    objekt-relationale Strukturen
  • unstrukturierte Anteile als Attribute vom Typ
    XML

front
content
publisher
author
title
104
Integration der hybriden Speicherung in die
Klassifikation
Als Dateien / Clobs
Speicherung der Dokumentstruktur
Strukturierte Speicherung in Datenbanken
Volltextindex
Vollständiges Mapping
Abbildung der Graphstruktur
Volltextindex und XML-Index
Benutzer- definiertes Mapping
Abbilden des DOM-Modells
  • Erkennen von dokument- und datenzentrierten
    Anteilen
  • Speicherung mit verschiedenen Verfahren

105
Anwendungen
  • Alle Multimedia-Anwendungen profitieren von einer
    hybriden Speicherung
  • Vorgehensweise
  • Multimediadokumente im Original speichern (XML)
  • Metadaten strukturiert speichern
  • Anwendungen
  • Text
  • Mecklenburger Jahrbücher
  • GETESS
  • Image
  • eNote history (historische Notenhandschriften)
  • Proteinbilder
  • Audio
  • KSWS? .. und diverse andere Projekte
  • Video

106
Systeme
  • Hybride Speicherungsverfahren werden durch
    Datenbank-systeme unterstützt, die mehrere
    Speicherungsmöglich-keiten für XML-Dokumente
    anbieten.
  • Oracle
  • Speicherung eines XMLType als CLOB oder
    objektrelational, Kombination der Varianten kann
    durch entsprechende Angaben im annotierten XML
    Schema erfolgen
  • DB2
  • Speicherung von XML-Dokumenten als xmlcolumn und
    xmlcollection, Kombination in der gegenwärtigen
    Version nicht möglich !

107
Überblick zu Speicherungsverfahren
Dokument-
verarbeitung
lt..gt
lt/..gt
Konzeptueller
lt..gt
XML
lt/..gt
Entwurf von XML-
lt/..gt
lt..gt
Dokumenten
Datenbanken
physische
logische
konzeptuelle
Ebene
Ebene
Ebene
108
Zusammenfassung
  • XML-Datenbanken
  • Vielzahl von Verfahren und Techniken existieren
    nebeneinander
  • oft aus den Bereichen Datenbanken und
    Dokumentverarbeitung
  • generell es gibt keine beste Lösung für alle
    XML-Dokumente
  • geeignetste Lösung ist abhängig von konkreten
    Erfordernissen
  • Viele Systeme bieten mehrere Varianten an

109
Literatur /1
  • Neil Bradley, The XML companion, Addison Wesley,
    1998
  • Yoshikawa, M., Amagasa, T., Shimura, T., Uemura,
    S., XRel A Path-Based Approach for Storage and
    Retrieval of XML Documents Using Relational
    Databases ACM Transactions on Internet
    Technology, Volume 1, Nummer 1, S. 110-141, 2001
  • Daniela Florescu, Donald Kossmann, Storing and
    Querying XML Data Using an RDBMS, Bulletin of the
    Technical Committee on Data Engineering, volume
    22, number 3, September 1999, pp. 27-34
  • Dieter Scheffner, Rainer Conrad Access Support
    Tree TextArray A Model for Physical Storage of
    XML Documents, Workshop Web-Datenbanken, 2001
  • Guido Rost Implementierung von XQuery auf
    objekt-relationalen Datenbanken, Diplomarbeit,
    Universität Rostock, Fachbereich Informatik, 2002

110
Literatur /2
  • Richard Edwards, Sian Hope Persistent DOM An
    Architecture for XML Repositories in Relational
    Databases, Intelligent Data Engineering and
    Automated Learning --- IDEAL, 2000, S. 416421
  • Georg Lausen, Pedro José Marrón On Processing
    XML in LDAP,Proceedings of 27th International
    Conference on Very Large Data Bases, VLDB, 2001,
    S. 601--610
  • Jayaval Shanmugasundaram, Kristin Tufte, Gang He,
    Chun Zhang, David DeWitt, Jeffrey Naughton,
    Relational Databases for Querying XML Documents -
    Limitations and Opportunities, Proceedings of the
    25th VLDB Conference, Edinburgh, Scotland, 1999,
    pp. 302-314
  • Ronald Bourret, C. Bornhövd, A.P. Buchmann, A
    Generic Load/ Extract Utility for Data Transfer
    between XML Documents and Relational Databases,
    Second International Workshop on Advanced Issues
    of E-Commerce and Web-based Information Systems,
    WECWIS'00

111
Literatur /3
  • Ronald Bourret, XML-DBMS - Middleware for
    Transferring Data between XML Documents and
    Relational Databases, http//www.rpbourret.com/xml
    dbms/index.htm
  • Klemens Böhm Verwendung objektorientierter
    Datenbanktechnologie zur Verwaltung
    strukturierter Dokumente, Dissertation,
    Technische Hochschule Darmstadt, 1997
  • Meike Klettke, Holger Meyer, XML and
    Object-Relational Databases - Enhancing
    Structural Mappings Based on Statistics, WebDB
    2000, Mai 2000
  • Alin Deutsch, Mary F. Fernandez, Dan Suciu,
    Storing Semistructured Data with STORED, SIGMOD
    1999, Proceedings ACM SIGMOD International
    Conference on Management of Data, June 1999,
    Philadephia, Pennsylvania, USA, ACM Press, 1999,
    pp. 431-442
  • Beate Porst, Untersuchung zu Datentyperweiterungen
    für XML-Dokumente und ihre Anfragemethoden am
    Beispiel von DB2 und Informix, Diplomarbeit,
    Universität Rostock, Fachbereich Informatik, 2000

112
Literatur /4
  • www.ibm.com
  • www.oracle.com/xml
  • Ulrike Schwinn (Oracle) XML in der Oracle
    Datenbank relational and beyond, BTW 2003
  • www.exceloncorp.com
  • Rüdiger Eichin, Excelon Prozeßmanagement auf der
    Basis von XML, Fachgruppentreffen, GI-Fachgruppe
    Datenbanksysteme, Darmstadt, 2002
  • eXtensible Information Server (XIS), Native XML
    Data Management System, www.exceloncorp.com/produc
    ts/xis/
  • www.microsoft.com

113
Literatur /5
  • www.softwareag.com/tamino
  • Harald Schöning, Jürgen Wäsch Tamino --- An
    Internet Database System, Advances in Database
    Technology --- EDBT 2000, LNCS 1777, S. 383387
  • Walter Waterfeld Realisierungsaspekte eines XML
    Datenbanksystems, BTW 2001
  • www. fastobjects.com
  • www.infonyte.com
  • Thomas Tesch, Peter Fankhauser, Tim Weitzel
    (infonyte) Skalierbare Verarbeitung von
    XML-Dokumenten in Datenbanken, BTW 2003
  • Meike Klettke, Holger Meyer, XML and databases,
    http//www.xml-und-datenbanken.de
Write a Comment
User Comments (0)
About PowerShow.com