• Keine Ergebnisse gefunden

Indexstrukturen für Zeichendaten und Texte

N/A
N/A
Protected

Academic year: 2022

Aktie "Indexstrukturen für Zeichendaten und Texte"

Copied!
19
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Indexstrukturen für Zeichendaten und Texte

Felix Hain

HTWK Leipzig 29.06.15

(2)

Gliederung

1 B+-Baum

1.1 Präfix-B+-Baum

1.2 B+-Baum für BLOBs 2 Digitale Bäume

2.1 Trie

2.2 Patricia Trie 2.3 Prefix Trie

2.4 Zusammenfassung 3 Invertierte Liste

4 Quellen

(3)

29.06.15 Felix Hain 3

B + -Baum

balancierter Suchbaum

Schlüssel mit dazugehörigen Datensätzen in den Blattknoten

Referenzschlüssel mit Wegweiserfunktion in den inneren Knoten

Normalform Primärschlüssel

Datenbank Festplatte Indexstruktur Normalform Primärindex Primärschlüssel Zeichenkette

(4)

B + -Baum

lange Schlüssel wie z. B. Zeichenketten haben hohen Platzbedarf

für B-Bäume ungünstig, da Anzahl von Einträgen pro Knoten beschränkt

aber: im B+-Baum haben innere Knoten nur eine Wegweiserfunktion

Normalform Primärschlüssel

Datenbank Festplatte Indexstruktur Normalform Primärindex Primärschlüssel Zeichenkette

(5)

29.06.15 Felix Hain 5

Präfix-B + -Baum

Idee:

Speicherung von Schlüsselpräfixen statt ganzer Schlüssel

nur so lang wie benötigt

N Primärs

Datenbank Festplatte Indexstruktur Normalform Primärindex Primärschlüssel Zeichenkette

(6)

Präfix-B + -Baum

Idee:

Speicherung von Schlüsselpräfixen statt ganzer Schlüssel

nur so lang wie benötigt

Nachteil: bei Schlüsseln mit langen gemeinsamen Präfixen degeneriert der Baum annähernd zum gewöhnlichen B+-Baum

Datum Datenbankmanagement Datenbankmodell Datenbankmodellierung Datenbanktabelle Datenbankmodelli Datenbankth

(7)

29.06.15 Felix Hain 7

B + -Baum für BLOBs

BLOB = Binary Large Object, d. h. große unstrukturierte Datenmenge

in Allgemeinen größer als eine Seite

unmittelbare Speicherung in den Knoten eines Baumes daher nicht sinnvoll

(8)

B + -Baum für BLOBs

Möglichkeit:

jedes Objekt wird auf einer verketteten Liste von Seiten gespeichert

B-Baum- oder B+-Baum-Index enthält Zeiger auf die jeweilige Anfangsseite des Objekts

Nachteil: kein wahlfreier Zugriff im BLOB

B+-Baum-Index

(9)

29.06.15 Felix Hain 9

B + -Baum für BLOBs

alternative Möglichkeit:

Index enthält für jedes Objekt ein BLOB-Directory

Directory enthält Gesamtgröße des BLOBS und Zeiger auf seine einzelnen Seiten

BLOB-Größe

Seite 1

B+-Baum-Index

Vorteil: wahlfreier Zugriff möglich

Nachteil: Directory kann selbst wiederum sehr groß sein

Seite 2 Seite 3

...

(10)

B + -Baum für BLOBs

Positions-B+-Baum:

Datenseiten jedes BLOBs werden in einen jeweils eigenen B+-Baum eingetragen

Schlüssel = Offset der entsprechenden Seite im Objekt

der ursprüngliche Index enthält dann nur noch Zeiger auf diese Positionsbäume

1536

B+-Baum-Index

3072

512 1024 2048 2560 ...

(11)

29.06.15 Felix Hain 11

B + -Baum

Vorteil von B-Bäumen:

bei fester Suchschlüsselgröße kann man eine optimale Ordnung für den Baum bestimmen, sodass Knoten jeweils eine Seite belegen

funktioniert nicht bei Schlüsseln variabler Länge, wie Zeichenketten

Abhilfe:

Präfix-B+-Bäume mit festgelegter maximaler Präfixlänge

B-Bäume mit Knoten, die eine feste Anzahl von mehreren Seiten belegen

digitale Bäume

(12)

Digitale Bäume

“Digitale Bäume” ist ein Sammelbegriff

Suchbäume

Zeichenketten über einem festen Alphabet als Schlüssel

nicht banlanciert

auch genannt “Tries” (von engl. “information retrieval”)

(13)

29.06.15 Felix Hain 13

(grundlegender) Trie

jeder innere Knoten

enthält genau ein Zeichen

verweist auf min. einen weiteren inneren Knoten oder auf ein Blatt

jeder Blattknoten

enthält genau einen Datensatz, die indizierte Zeichenkette

D a t e n b a n k

Data Mining a

Datum u

Datenbankmodell m

s Datenbanksprache

Datenbanksystem p

y

Nachteil: bei Zeichenketten mit einem langen identischen Präfix entartet der entprechende Teil des Baumes zu einer Liste

(14)

Patricia Trie

“Practical Algorithm to Retrieve Information Coded in Alphanumeric”

Verbesserung des Trie-Prinzips durch “Überspringen” irrelevanter Teilwörtern

Listenstrukturen werden zu einem Knoten zusammengefasst, der nur die Anzahl der zu überspringenden Knoten enthält

(3) (5)

(0) e

Data Mining a

Datum u

Datenbankmodell m

s Datenbanksprache

Datenbanksystem p

y

Nachteil: nicht enthaltene Datensätze werden bei einer Suche u. U. erst

(15)

29.06.15 Felix Hain 15

Prefix Trie

Verbesserung des Patricia-Baumes durch Speichern des

“übersprungenen“ Präfixes in den inneren Knoten zusätzlich zur Zeichenanzahl

Blätter müssen dann nur noch die Restzeichenkette enthalten

Dat (3) nbank (5)

(0) e

Mining a

m u

odell m

s rache

system p

y

(16)

Digitale Bäume: Zusammenfassung

Vorteile:

keine Speicherung kompletter Schlüssel in den inneren Knoten

beim Standard- und Patricia-Trie: innere Knoten haben feste Größe

beim Präfix-Trie: Speicherung gemeinsamer Präfixe in den inneren Knoten, dafür kleinere Blattknoten

Nachteile:

hohe Bäume

mangelnde Adaptivität an ungünstige Datenverteilungen

(17)

29.06.15 Felix Hain 17

Digitale Bäume: Zusammenfassung

Digitale Bäume sind geeignet:

bei annähernd gleichverteilten Präfixen

insbesondere bei künstlich erzeugten, z. B. für Hashverfahren

bei ungleich verteilten Präfixen, wenn sich die Komprimierung lohnt

für Textindizes

für andere Anwendungen im Textbereich, z. B. Rechtschreibkorrektur

(18)

Invertierte Liste

sehr alte Indexstruktur für Zeichenketten in Dokumenten

Anordnung der indizierten Worte in einer lex. sortierten Liste

jeder Knoten enthält eine Liste mit Identifikatoren der Dokumente, in denen das Wort vorkommt

zusätzlich optional die Position des ersten Vorkommens und die Gesamtzahl der Vorkommen im jeweiligen Dokument

Suchanfragen über Vorkommen und Relevanz können allein mittels der Liste beantwortet werden

Hetze Heu Heureka Heurose

...

...

(d01, 1)

(d13, 2) (d42, 2) (d73, 1) (d13, 2) (d42, 2)

(d01, 2)

(19)

29.06.15 Felix Hain 19

Quellen

Gunter Saake, Andreas Heuer, Kai-Uwe Sattler; Datenbanken - Implementierungstechniken, mitp, 2011 (3. Auflage)

Thomas Kudraß: Dateiorganisation und Indexe, in: Taschenbuch Datenbanken, Hanser, 2007

https://de.wikipedia.org/wiki/Trie, Stand: 29.06.15

Referenzen

ÄHNLICHE DOKUMENTE

Fachbereich Mathematik und Statistik Repetitorium Lineare Algebra 2015 D. Welche Koordinaten

(Hinweis: Die zu l¨ osende DGL wird durch einen Eulerschen Multiplikator der Form y −2 in eine exakte Form

Wieviele nat¨ urliche Zahlen gibt es zwischen 1 und 1 000 000, die weder eine Quadratzahl, noch eine Kubikzahl, noch eine vierte Potenz

Bestimmen Sie jeweils das charakteristische Polynom und die Eigenwerte

Bestimmen Sie jeweils die Determinante der

Es kann sinnvoll sein, einen Index für eine Tabelle so zu organisieren; er entspricht dann einer sortierten Datei für die eigentlichen Daten.. Der Index enthält Paare

charakteristische Polynom und das

Bestimmen Sie ausgehend vom logistischen Wachstumsmodell eine Funktion, welche die Anzahl E(t) an erkrankten Menschen nach t Tagen angibt. Nach welcher Zeitspanne werden 80 %