Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker).
Indexstrukturen ... Saake/Heuer: "Datenbanken: Implementierungstechniken",.
International ...
Kapitel 8 Indexstrukturen für XML-Dokumente
Werteindexe Volltextindexe Pfadindexe
Indexstrukturen z
Ermöglichen effizienten Datenzugriff für bestimmte Arten von Anfragen –
z
Erzeugen gewisse Redundanz –
z
verschiedene Arten von Indexen sind in der Regel für verschiedene Arten von Anfragen geeignet/optimiert
Aktualität eines Indexes muss durch Propagierung von Datenänderungen gewährleistet werden
Indexstrukturen sind oftmals auch zugleich Speicherstrukturen – –
bestimmen die Art der Speicherung der "Daten auf der Platte" siehe Kapitel 5
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
8-2
Arten von Indexstrukturen z
Wertindex –
– – z
Volltextindex – – –
z
indexiert atomare Werte eines XML-Dokumentes, etwa Elementinhalte oder Attributwerte Indexform für strukturierte Anteile eines XML-Dokumentes aus dem relationalen DB-Bereich bekannt, z.B. B-Bäume oder Hash-Indexe
indexiert einzelne Worte des Volltextes Indexform für unstrukturierte Anteile eines XML-Dokumentes aus dem Information-Retrieval-Bereich bekannt, z.B. invertierte Liste, Tries oder Suffix-Bäume
Pfadindex – – –
indexiert Teilstrukturen/Pfade in einem XML-Dokument Indexform für semistrukturierte Anteile eines XML-Dokumentes aus dem Objektdatenbankbereich bekannt, z.B. Access Support Relations
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
8-3
B-Baum als Werteindex für ein XML-Dokument
Benjamin Franklin
Benjamin Franklin
Hermann Melville
9.99
9.99
12.99
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
The Autobiography of Benjamin Franklin Benjamin Franklin 9.99 The Confidence Man Herman Melville 12.99
8-4
Eigenschaften von Werteindexen Schemabeschreibung
erforderlich (für den zu indexierenden Teil des Dokumentes)
Anfragen
Werteanfragen
Weitere Besonderheiten
Abbildungsvorschrift notwendig keine Auswertung des XML-Markups
Einsatz
für datenzentrierte XML-Anwendungen
für Details über Werteindexe siehe Saake/Heuer: "Datenbanken: Implementierungstechniken", International Thomson Publishing, 1999
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
8-5
Volltextindexe z
Nicht nur Suche nach exaktem Auftreten der Begriffe möglich – –
z
stichwortbasierte Suche und boolesches Retrieval Mustersuche (mit regulären Ausdrücken)
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.) Stammformreduktion Wissensbasierten Verfahren Einsatz von Ontologien und Thesauren zur Suche nach Synonymen sowie Über- und Unterbegriffen
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
8-6
Invertierte Liste als Volltextindex für ein XML-Dokument Wort bookstore book genre autobiography title benjamin franklin author name price currency eur 9.99 novel confidence man hermann melville 12.99
Vorkommen {1} {2, 24, 25, 44} {3, 26} {5, 8} {6, 12, 28, 32} {10, 15} {11, 16} {13, 18, 33, 38} {14, 17, 34, 37} {19, 23, 39, 43} {20, 40} {21, 41} {22} {27} {30} {31} {35} {36} {42}
Wortposition im Text
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
The Autobiography of Benjamin Franklin Benjamin Franklin 9.99 The Confidence Man Herman Melville 12.99
8-7
Invertierte Liste als Volltextindex für XML-Dokumente Wort bookstore book genre autobiography title benjamin franklin author name price currency eur 9.99 novel confidence man hermann melville 12.99 firstname lastname USD 8.99
Vorkommen {D1} {D1, D2} {D1} {D1, D2} {D1, D2} {D1, D2} {D1, D2} {D1, D2} {D1} {D1, D2} {D1, D2} {D1} {D1} {D1} {D1} {D1} {D1} {D1} {D1} {D2} {D2} {D2} {D2}
D1:
The Autobiography of Benjamin Franklin Benjamin Franklin 9.99 The Confidence Man Herman Melville 12.99
D2:
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
The Autobiography of Benjamin Franklin Benjamin Franklin 8.99 8-8
XML-Retrieval mittels invertierter Liste 1 Einfügen
The confidence man
a
2
b
D1 D4 D899
Resultat
neues XML-Dokument
AnfrageTransformation
4 Übereinstimmung RSV(Q,D1) = .8 RSV(Q,D4) = .6 RSV(Q,D899) = .3
c Merkmalsextraktion DocID = D1 man → word 31 confidence → word 30 author → word 13, 18, 33, 38 ...
d
Indexierung
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
Retrieval 3
Q= {man, men, confidence, trust}
Invertierte Liste: man → D1, D53, D988 men → D4, D890 confidence → D1, D4, D899 .... 8-9
Eigenschaften von Volltextindexen Schemabeschreibung
nicht erforderlich
Anfragen
Anfragen des Information Retrieval
Weitere Besonderheiten
Volltextfunktionen keine Auswertung des XML-Markups
Einsatz
für dokumentzentrierte XML-Anwendungen
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
8-10
Pfadindexe z
Strukturinformationen müssen aus dem Index erkennbar und wiederherstellbar sein – –
z
Zuordnung des Markup zu den Inhalten sowie Darstellung der hierarchischen Schachtelung und Anordnung der Elemente/Attribute
Besonders geeignet für Stichwortsuche unter Berücksichtigung der Struktur bzw. Pfaden FOR $b IN //book WHERE CONTAINS($b/author, "Benjamin") RETURN $b
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
8-11
Arten von Pfadindexen z
Geschachtelter Pfadindex –
z
z
z
bookstore
book
author
bookstore
book
author
ermöglicht Zugriff auf Eltern- und KindElemente
Access Support Relations (ASR) –
author
gestattet Zugriff auf Eltern-Elemente
Verbundindex –
book
erlaubt von jedem Element aus den Zugriff auf das Wurzelelement
Multi-Index –
bookstore
verallgemeinern obige Indexarten, indem sie alle Pfade in einer Tabelle auflisten
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
bookstore book author bs1 b1 Benjamin Franklin bs1 b2 Hermann Melville 8-12
Eigenschaften von Pfadindexen Schemabeschreibung
erforderlich (für den zu indexierenden Pfade des Dokumentes)
Anfragen
Auswertung des Markup in den Anfragen XML-Anfragen möglich
Weitere Besonderheiten
Effiziente Navigation über DOM-Methoden
Einsatz
für dokumentzentrierte und semistrukturierte XML-Anwendungen
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
8-13
Kombinierter Pfad-/Volltextindex für ein XML-Dokument Pfadindex Element bookstore book genre title author name price currency
Vorgänger bookstore book book book author book price
Wort autobiography benjamin franklin eur 9.99 novel confidence man hermann melville 12.99
Vorkommen {1} {2, 24, 25, 44} {3, 26} {6, 12, 28, 32} {13, 18, 33, 38} {14, 17, 34, 37} {19, 23, 39, 43} {20, 40}
Element [genre, title] [title, author] [title, author] [currency,currency] [price] [genre] [title] [title] [author] [author] [price]
Vorkommen [5, 8] [10, 15] [11, 16] [21, 41] [22] [27] [30] [31] [35] [36] [42]
The Autobiography of Benjamin Franklin Benjamin Franklin 9.99 The Confidence Man Herman Melville 12.99
Volltextindex Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
8-14
Zusammenfassung z
Effiziente Anfrageauswertung auf XML-Dokumenten benötigt verschiedene Arten von Indexstrukturen –
–
–
Wertindexe für effiziente Zugriffe über die strukturierten Anteile Schlüsselwortsuche, Werteanfragen Volltextindexe für effiziente Zugriffe über unstrukturierte Anteile Volltextsuche Pfadindexe Ausnutzung der Dokumentstruktur navigierende Anfragen
Vorlesung "XML und Datenbanken" - WS 2003/2004 (Dr. C. Türker)
8-15