2.4 Effiziente Datenstrukturen

Größe: px
Ab Seite anzeigen:

Download "2.4 Effiziente Datenstrukturen"

Transkript

1 2.4 Effiziente Datenstrukturen Effizienz des Systems bezeichnet den sparsamer Umgang mit Systemressourcen und die Skalierbarkeit auch über große Kollektionen. Charakteristische Werte für Effizienz sind z.b. Speicherplatzverbrauch CPU-Zeit Anzahl der I/O Operationen Antwortzeit Ziel im IR: Effizient genug Prof. Kießling 2016 Kap. 2-83

2 Inverted File Indexstrukturen ermöglichen einen effizienten Zugriff auf eine Menge von Dokumenten, die bestimmte Terme enthalten. Die zugrundeliegende Dateistruktur kann von 10% bis zu mehr als 100 % der Größe der Textinhalte annehmen. Indexstrukturen wie der Inverted File nutzen die lexikographische Ordnung der Terme aus. Prof. Kießling 2016 Kap. 2-84

3 Grundstruktur eines Inverted File Index Stemming anhand Porter Stemmer nachvollziehbar Prof. Kießling 2016 Kap. 2-85

4 Der Inverted File bietet eine Index-Datenstruktur (Sekundärindex), die eine Suche nach einer Menge von Dokumenten ermöglicht, die bestimmte Terme enthalten (Term {Dokument}). Zusätzlich kann die Worthäufigkeit sowie die Position eines Terms innerhalb eines Dokuments gespeichert werden. Um einen Inverted File Index zu erstellen, muss die gegebene Abbildung von Dokument {Term}, wie sie etwa ein Crawler liefert, invertiert werden. Prof. Kießling 2016 Kap. 2-86

5 Beispiel Boolesches Retrieval Suche (Homer) Suche (Bart) D1, D2, D3 D2, D3, D4 Homer AND Bart: Schnitt der beiden Listen D2, D3 Homer OR Bart: Vereinigung der beiden Listen D1, D2, D3, D4 Prof. Kießling 2016 Kap. 2-87

6 Beispiel Vektorraummodell mit TFxIDF analog zu 2-47: D1 : Sunshine, Sunshine, Help, Orbits D2 : Sunshine, Help, Help, Orbits, Harbour Suche (Sunshine) D1 (tf=2), D2 (tf=1) n Sunshine = 2 Suche (Help) D1 (tf=1), D2 (tf=2) n Help = 2 Suche (Orbits) D1 (tf=1), D2 (tf=1) n Orbits =2 Suche (Harbour) D2 (tf=1) n Harbour = 1 Prof. Kießling 2016 Kap. 2-88

7 Beispiel Vektorraummodell mit TFxIDF Weitere benötigte Größen ablesbar aus Postings Statistik: D: Menge der Dokumente in der Kollektion ac: Durchschnittliche Termanzahl c m : Anzahl der Terme in Dokument D m Somit kann der TDxIDF Wert für Dokument D1 und D2 analog zum vorherigen Beispiel berechnet werden Prof. Kießling 2016 Kap. 2-89

8 Effiziente Datenstrukturen: Präfix B*-Baum Sortierter Array Operationen: Suche (T i ): Gibt alle Dokumente D j zurück, die T i enthalten, sowie Zusatzinformationen wie Worthäufigkeit Einfügen (T i, D j ): Fügt die Informationen in den Index ein, dass D j Term T i enthält. Ist T i bereits im Index enthalten, so wird ein weiterer Verweis auf D j hinzugefügt Löschen (T i, D j ): Löscht Verweis auf D j für Term T i aus dem Index Sowohl Einfügen als auch Löschen führen zu einem Update von Statistikinformationen. Prof. Kießling 2016 Kap. 2-90

9 Präfix B*-Bäume Ausgangspunkt sind B*-Baume Blätter können untereinander verknüpft sein, um sequentielle Verarbeitung zu ermöglichen Der Teil des Index, der nur Verzweigungsknoten beinhaltet wird im folgenden als B*-Index, die Blätter als B*-Datei bezeichnet Prof. Kießling 2016 Kap. 2-91

10 Inverted File als Präfix B*-Baum Prof. Kießling 2016 Kap. 2-92

11 Präfix B*-Bäume Optimierung: Verwendung kürzester Präfix-Separatoren Bart, Lisa, Maggie, Marge Einfügen des Schlüssels Homer mit Spaltung des Blatts Bart, Homer, Lisa Maggie, Marge Statt Maggie als Schlüssel im B*-Index ist jeder String s gültig, der die folgende Eigenschaft erfüllt: Lisa < s < Maggie Wahl des kürzesten Präfix-Seperators s bei der Aufteilung von Blättern Prof. Kießling 2016 Kap. 2-93

12 Präfix B*-Bäume Hintergrund: Suchgeschwindigkeit ist abhängig von der Höhe des Baumes Ziel: Minimale Höhe durch maximale Verzweigung Problem: Seitengröße der Verzweigungsknoten im B*-Index p 0, s 1, p 1,, s i, p i, s i+1,...,s m, p m Seite besteht aus Zeigern p (wenige Byte groß) und Schlüsseln s Durch Minimierung der Schlüsselgröße haben mehr Schlüssel pro Seite Platz erhöhter Verzweigungsgrad Prof. Kießling 2016 Kap. 2-94

13 Präfix B*-Bäume: Beispielbaum Jeder Schlüssel im B*-Index ist ein kürzester Präfix- Separator zur Unterscheidung der Wörter im nächsten Level f m ag br e gr h kat l rut uni aff 2 kaninch 9 katz 1 Postings Datei Prof. Kießling 2016 Kap. 2-95

14 Präfix B*-Bäume Weitere Verbesserung: Blätter müssen nicht notwendigerweise in der Mitte gespalten werden Einführung eines Spaltungsintervalls, das einen Bereich d L um den Mittelpunkt einer Seite definiert, in dem eine Teilung erfolgen kann Innerhalb des Intervalls wird derjenige Punkt zur Spaltung gewählt, der einen minimalen Präfix-Separator liefert Verfahren ist auch für Verzweigungsknoten anwendbar mit Bereich d B Prof. Kießling 2016 Kap. 2-96

15 Präfix B*-Bäume Beispiel: Abschluss, Achtung, Affe, Affenhaus, Katze, Katzenfutter Eine Teilung des Blattes in der Mitte hätte Präfix-Separator Affen zur Folge Eine Verschiebung des Punktes um eine Stelle nach links oder rechts führt zu kürzeren Präfix-Separatoren Af oder K Prof. Kießling 2016 Kap. 2-97

16 Präfix B*-Bäume Berechnungsbeispiel entnommen aus Bayer & Unterauer (1977) Seitengröße: 1684 Bytes (aktuell z.b 8 KB) Seite enthält 1 l 2 k k l 2 k Einträge für die Wurzel für alle weiteren Knoten B*-Baum: Schlüssel 10 Bytes, Zeiger 4 Bytes k = 60 Präfix B*-Baum: Präfix-Separator 4 Bytes, Zeiger 4 Bytes k = 105 Prof. Kießling 2016 Kap. 2-98

17 Höhe von Präfix B*-Bäumen Höhe von einfachen Präfix B*-Bäumen: Minimale Anzahl von Einträgen im B*-Index: I min = 2(k+1) h-1-1 Maximale Anzahl von Einträgen im B*-Index: I max = (2k+1) h -1 Vergleich B*-Baum und Präfix B*-Baum: B*-Baum (k=60) Präfix B*-Baum (k=105) h I min I av I max I min I av I max Prof. Kießling 2016 Kap. 2-99

18 Sortierter Array Ein sortierter Array hält die lexikographische Ordnung der Terme als sortierte Liste in einem Array. Zusätzlich enthält jeder Eintrag die Anzahl der Dokumente in der ein Term vorkommt, sowie einen Verweis auf die Postings Datei. Die Suche nach Stichwörtern erfolgt mit Hilfe der Binären Suche. Das Hinzufügen neuer Stichwörter, also die Erweiterung des Vokabulars, ist mit hohen Kosten verbunden, da der Array neu sortiert werden muss. Ein Vorteil ist dagegen die leichte Implementierung der Datenstruktur bei angemessener Performance. Prof. Kießling 2016 Kap

19 Inverted File als sortierter Array Prof. Kießling 2016 Kap

20 Schritte der Indexerstellung Extraktion des Textes zur Erstellung einer Zuordnung Dokument {Term} Invertierung der Liste, um eine neue Zuordnung der Form Term {Dokument} zu erhalten Sortierung der invertierten Liste Optionale Schritte: Termgewichtung, Kompression, Reorganisation Prof. Kießling 2016 Kap

21 Schritte der Indexerstellung Extraktionsschritt: Erstellung von Tokens unter Berücksichtigung sprachspezifischer Regeln Anwendung linguistischer Verfahren Löschung von Stoppwörtern Definierte Beschränkungen: Vordefiniertes Vokabular Stoppwörter nicht indiziert Regeln zu indizierbaren Wörtern (z.b. Lehr- und Satzzeichen) Liste indizierbarer Zeichenfolgen (z.b. Exklusion von Ziffernfolgen) Prof. Kießling 2016 Kap

22 Schritte der Indexerstellung Prof. Kießling 2016 Kap

23 Schritte der Indexerstellung Prof. Kießling 2016 Kap

24 Sortierung und Suchkosten Für große Datenmengen kann diese Operation viel Zeit kosten. Sortierverfahren wie Heapsort oder Mergesort garantieren dabei Worst-Case Kosten in O (n log n ). Beispiel für Suchkosten: Die deutsche Sprache hat ca. 5,3 Millionen Wörter. Das Vokabular wird durch Stoppwörter / Stemming reduziert. Sei nun ein Array mit Einträgen (Vokabular) gegeben. Zur Suche eines Terms werden bei der binären Suche maximal log2 (n+1) Vergleiche benötigt. Bei gegebenem Array entspricht das 21 Vergleichen. Prof. Kießling 2016 Kap

25 2.5 Lucene Lucene ist eine Java-Bibliothek, welche die Funktionalität einer Volltext- Suchmaschine implementiert. Der Code ist Opensource und ist ein Projekt der Apache Software Foundation. Die aktuelle Lucene-Version für Java ist Zusätzlich existieren eine Reihe von Portierungen in andere Sprachen (C ++, C#, Python, ) bzw. Spracheinbindungen. Dank ihrer hohen Performanz und leichten Skalierbarkeit können die Lucene- Komponenten in vielfältigen Anwendungen eingesetzt werden: z.b. benutzt Wikipedia Lucene zur Volltextsuche. Opensource Web Crawler Nutch basiert auf Komponenten von Lucene. Prof. Kießling 2016 Kap

26 Lucene basiert auf dem Vektorraummodell mit einer eigenen Ähnlichkeitsfunktion, die unter anderem auch auf Inverted Document Frequency (IDF) und Term Frequency (TF) basiert, um ein Ranking der Dokumente zu erstellen. Zusätzlich werden auch Methoden für Boolesche Anfragen (Bestimmung der Ergebnismenge mit Booleschem Modell mit anschließendem Ranking) Unscharfe Anfragen mit Hilfe der Levenshtein-Distanz zur Verfügung gestellt. Geographische Suche ist durch Angabe einer Geo-Kodierung in den Metadaten möglich. Prof. Kießling 2016 Kap

27 Analyzer: Zerlegung eines Eingabetextes (document.document) in seine elementaren Bestandteile (Token) und Nutzung seiner Metadaten (document.field, wie z.b. Dokumentpfad, Änderungsdatum, ), für die ein Index (index.indexwriter) erstellt wird. Vereinheitlichung von Groß- und Kleinschreibung Entfernen von Füllwörtern und Sonderzeichen Stemmer: Reduktion von grammatikalisch veränderten Wortformen auf ihren Wortstamm, wodurch der Index verkleinert wird. Prof. Kießling 2016 Kap

28 Suchanfragen: Eine Instanz IndexSearcher stellt mittels der Methode search und einem übergebenen Query-Objekt eine Suchanfrage. Der Parser versteht für eine Anfrage folgende Syntax: Wildcards (z.b. te?t, te*t ) Nachbarschaftssuche (z.b. Kießling Lehrstuhl~10 ) Existenzielle Suche (z.b. jakarta+ apache ), Zusicherung von jakarta Gewichtete Suche (z.b. jakarta^4 apache ) Spezielle Suchanfragen: Boolesche Suche (AND, OR, NOT), wobei OR Default ist. Unscharfe Suche (z.b. roam~ roams, foam ) Anfrage auf Metadaten: Intervall-Suche auf Field (z.b. Datum: [ TO ] ) Prof. Kießling 2016 Kap

29 Ergebnisrepräsentierung: Ein Objekt vom Typ TopDocs ist ein Container für die Rückgabe der gefundenen Dokumente. Die einzelnen Ergebnisse liegen darin als Objekte vom Typ ScoreDoc in einem Array vor. Ein ScoreDoc enthält neben dem Identifikator des Dokuments auch den Query-spezifischen Score, den Lucene berechnet. Die Scores sind positivwertig und absteigend sortiert. Beispiel für Ausgabe, Suche nach love in einem Korpus mit englischen Dokumenten: Doc-Id Scoring Prof. Kießling 2016 Kap

30 Vorteile: Lucene unterstützt aktuelle Java Versionen. Lucene wird auch industriell eingesetzt. Neue Versionen erweitern den Kern (z.b. phonetische Ähnlichkeit wie Soundex, Beider-Morse, ). Lucene hat einen aktiven Entwicklerkreis, der den Kern um Packages erweitern wie z.b. Query Expansion (LucQE) Synonyme von WordNet Nachteile: Änderung im Korpus => erneute Indexerstellung Qualität und Pflege der Packages Prof. Kießling 2016 Kap

31 2.6 Literatur Skript Information Retrieval und Multimedia-Datenbanken von Prof. Dr. W.-T. Balke im SS06 Information Retrieval Data Structures & Algorithms von William B. Frakes und Ricardo Baeza-Yates (Herausgeber), Prentice Hall, 1992, ISBN Prefix B-trees von Rudolf Bayer und Karl Unterauer, ACM Transactions on Database Systems, Volume 2, Issue 1, 1977 Prof. Kießling 2016 Kap

Übersicht. Volltextindex Boolesches Retrieval Termoperationen Indexieren mit Apache Lucene

Übersicht. Volltextindex Boolesches Retrieval Termoperationen Indexieren mit Apache Lucene Übersicht Volltextindex Boolesches Retrieval Termoperationen Indexieren mit Apache Lucene 5.0.07 1 IR-System Peter Kolb 5.0.07 Volltextindex Dokumentenmenge durchsuchbar machen Suche nach Wörtern Volltextindex:

Mehr

Bücher und Artikel zum Thema

Bücher und Artikel zum Thema Materialsammlung zur Implementierung von Information Retrieval Systemen Karin Haenelt 11.12.2005/11.12.2004/06.12.2003/10.11.2002 1 Bücher und Artikel zum Thema Frakes/Baeza-Yates, 1992 Baeza-Yates/Ribeiro-Neto,

Mehr

Materialsammlung zur Implementierung von Information Retrieval Systemen

Materialsammlung zur Implementierung von Information Retrieval Systemen Materialsammlung zur Implementierung von Information Retrieval Systemen Karin Haenelt 11.12.2005/11.12.2004/06.12.2003/10.11.2002 1 Bücher und Artikel zum Thema Frakes/Baeza-Yates, 1992 Baeza-Yates/Ribeiro-Neto,

Mehr

Lucene eine Demo. Sebastian Marius Kirsch 9. Februar 2006

Lucene eine Demo. Sebastian Marius Kirsch 9. Februar 2006 Lucene eine Demo Sebastian Marius Kirsch skirsch@luusa.org 9. Februar 2006 Text Retrieval wie funktioniert das? Aufgabe: Finde zu Stichwörtern die passenden Dokumente Sortiere sie nach Relevanz zur Suchanfrage.

Mehr

Pat Trees und Pat Arrays Datenstrukturen zur effizienten Suche in Texten

Pat Trees und Pat Arrays Datenstrukturen zur effizienten Suche in Texten Pat Trees und Pat Arrays Datenstrukturen zur effizienten Suche in Texten Ruprecht-Karls-Universität Heidelberg HS Information Retrieval Dozentin: Dr. Karin Haenelt Referenten: Doina Gliga und Katja Niemann

Mehr

Übersicht. Grundidee des Indexing Lucene Wichtige Methoden und Klassen Lucene Indizierungsbeispiele Lucene Suchbeispiele Lucene QueryParser Syntax

Übersicht. Grundidee des Indexing Lucene Wichtige Methoden und Klassen Lucene Indizierungsbeispiele Lucene Suchbeispiele Lucene QueryParser Syntax Indizierung Lucene Übersicht Grundidee des Indexing Lucene Wichtige Methoden und Klassen Lucene Indizierungsbeispiele Lucene Suchbeispiele Lucene QueryParser Syntax Grundideen und Ziel des Indexing Effizientes

Mehr

Federated Search: Integration von FAST DataSearch und Lucene

Federated Search: Integration von FAST DataSearch und Lucene Federated Search: Integration von FAST DataSearch und Lucene Christian Kohlschütter L3S Research Center BSZ/KOBV-Workshop, Stuttgart 24. Januar 2006 Christian Kohlschütter, 24. Januar 2006 p 1 Motivation

Mehr

SUCHMASCHINEN XAPIAN. Michael Strzempek FH Wiesbaden, 5. Juni 2008

SUCHMASCHINEN XAPIAN. Michael Strzempek FH Wiesbaden, 5. Juni 2008 SUCHMASCHINEN XAPIAN Michael Strzempek FH Wiesbaden, 5. Juni 2008 INHALT 1. Motivation 2. Prinzip / Vokabular 3. Xapian 4. Omega 5. Datenbank Indizierung 6. Levenshtein Distanz 7. Boolesche Suche 8. Probabilistische

Mehr

Übung Medienretrieval WS 07/08 Thomas Wilhelm, Medieninformatik, TU Chemnitz

Übung Medienretrieval WS 07/08 Thomas Wilhelm, Medieninformatik, TU Chemnitz 02_Grundlagen Lucene Übung Medienretrieval WS 07/08 Thomas Wilhelm, Medieninformatik, TU Chemnitz Was ist Lucene? (1) Apache Lucene is a high-performance, full-featured text search engine library written

Mehr

ADS: Algorithmen und Datenstrukturen

ADS: Algorithmen und Datenstrukturen ADS: Algorithmen und Datenstrukturen Teil X Peter F. Stadler & Konstantin Klemm Bioinformatics Group, Dept. of Computer Science & Interdisciplinary Center for Bioinformatics, University of Leipzig 13.

Mehr

Inverted Files for Text Search Engines

Inverted Files for Text Search Engines Inverted Files for Text Search Engines Justin Zobel, Alistair Moffat PG 520 Intelligence Service Emel Günal 1 Inhalt Einführung Index - Inverted Files - Indexkonstruktion - Indexverwaltung Optimierung

Mehr

Praktikum Information Retrieval Wochen 12: Suchmaschine

Praktikum Information Retrieval Wochen 12: Suchmaschine Praktikum Information Retrieval Wochen 12: Suchmaschine Matthias Jordan 7. November 18. November 2011 Lösungen: Upload bis 18. November 2011 Aktuelle Informationen, Ansprechpartner, Material und Upload

Mehr

B / B* - Bäume. Guido Hildebrandt Seminar Datenbanksysteme

B / B* - Bäume. Guido Hildebrandt Seminar Datenbanksysteme B / B* - Bäume Guido Hildebrandt Seminar Datenbanksysteme 25.11.2010 Gliederung Einleitung Binärbaum B - Baum B* - Baum Varianten Zusammenfassung Quellen Gliederung Einleitung Binärbaum B - Baum B* - Baum

Mehr

2 Volltext-Suchmaschinen

2 Volltext-Suchmaschinen 2 Volltext-Suchmaschinen Volltext-Suchmaschinen werden vor allem für die Suche im Internet benutzt, jedoch gibt es auch Erweiterungen (Data Cartridge, Oracle) um Volltextsuche bei SQL-Suchmaschinen wie

Mehr

Erweitertes boolsches Retrieval

Erweitertes boolsches Retrieval Erweitertes boolsches Retrieval In diesem Unterabschnitt werden andere Ansätze zur Verbesserung des boolschen Retrievals vorgestellt. Im Gegensatz zum Vektorraummodell wird bei diesen Ansätzen versucht,

Mehr

IR Seminar SoSe 2012 Martin Leinberger

IR Seminar SoSe 2012 Martin Leinberger IR Seminar SoSe 2012 Martin Leinberger Suchmaschinen stellen Ergebnisse häppchenweise dar Google: 10 Ergebnisse auf der ersten Seite Mehr Ergebnisse gibt es nur auf Nachfrage Nutzer geht selten auf zweite

Mehr

Algorithmen und Datenstrukturen 1

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen 1 10. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Suchverfahren für große Datenmengen bisher betrachtete Datenstrukturen

Mehr

Mehrwegbäume Motivation

Mehrwegbäume Motivation Mehrwegbäume Motivation Wir haben gute Strukturen (AVL-Bäume) kennen gelernt, die die Anzahl der Operationen begrenzen Was ist, wenn der Baum zu groß für den Hauptspeicher ist? Externe Datenspeicherung

Mehr

LT11- Apache Lucene und Solr - Google im Eigenbau 03. August 2012 P. Schmidt

LT11- Apache Lucene und Solr - Google im Eigenbau 03. August 2012 P. Schmidt LT11- Apache Lucene und Solr - Google im Eigenbau 03. August 2012 P. Schmidt Motivation (I) l Stetig steigende Datenmengen Internet -> Adressknappheit IPv4 Projektumfeld Privater PC l Bildersammlung l

Mehr

Universität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 15. Jan Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 10

Universität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 15. Jan Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 10 Universität Augsburg, Institut für Informatik WS 009/010 Prof. Dr. W. Kießling 15. Jan. 010 Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 10 Aufgabe 1: B-Bäume Datenbanksysteme I a) Abschätzen der Höhe

Mehr

Datenbanken: Indexe. Motivation und Konzepte

Datenbanken: Indexe. Motivation und Konzepte Datenbanken: Indexe Motivation und Konzepte Motivation Warum sind Indexstrukturen überhaupt wünschenswert? Bei Anfrageverarbeitung werden Tupel aller beteiligter Relationen nacheinander in den Hauptspeicher

Mehr

Rückblick. Aufteilung in Dokumente anwendungsabhängig. Tokenisierung und Normalisierung sprachabhängig

Rückblick. Aufteilung in Dokumente anwendungsabhängig. Tokenisierung und Normalisierung sprachabhängig 3. IR-Modelle Rückblick Aufteilung in Dokumente anwendungsabhängig Tokenisierung und Normalisierung sprachabhängig Gesetz von Zipf sagt aus, dass einige Wörter sehr häufig vorkommen; Stoppwörter können

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 10 (3.6.2014) Binäre Suchbäume I Algorithmen und Komplexität Zusätzliche Dictionary Operationen Dictionary: Zusätzliche mögliche Operationen:

Mehr

3.2. Divide-and-Conquer-Methoden

3.2. Divide-and-Conquer-Methoden LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE 3.2. Divide-and-Conquer-Methoden Divide-and-Conquer-Methoden Einfache Sortieralgorithmen reduzieren die Größe des noch

Mehr

Indexieren und Suchen

Indexieren und Suchen Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Indexieren und Suchen Tobias Scheffer Index-Datenstrukturen, Suchalgorithmen Invertierte Indizes Suffix-Bäume und -Arrays Signaturdateien

Mehr

Rückblick. Aufteilung in Dokumente anwendungsabhängig. Tokenisierung und Normalisierung sprachabhängig

Rückblick. Aufteilung in Dokumente anwendungsabhängig. Tokenisierung und Normalisierung sprachabhängig 3. IR-Modelle Rückblick Aufteilung in Dokumente anwendungsabhängig Tokenisierung und Normalisierung sprachabhängig Gesetz von Zipf sagt aus, dass einige Wörter sehr häufig vorkommen; Stoppwörter können

Mehr

Effiziente Text Suche

Effiziente Text Suche Effiziente Text Suche Christian Ortolf 3. August 2008 Zusammenfassung In diesem Seminar Paper wird ein Überblick geboten über Suchstrukturen die verwendet werden können um die Suchdauer unabhängig der

Mehr

Indexstrukturen für Zeichendaten und Texte

Indexstrukturen für Zeichendaten und Texte Indexstrukturen für Zeichendaten und Texte Felix Hain HTWK Leipzig 29.06.15 Gliederung 29.06.15 Felix Hain 2 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

Mehr

Information Retrieval Modelle: Boolesches Modell. Karin Haenelt

Information Retrieval Modelle: Boolesches Modell. Karin Haenelt Information Retrieval Modelle: Boolesches Modell Karin Haenelt 19.10.2009 1 Inhalt Information Retrieval-Modelle: Systemarchitektur und Definition Boolesches Modell Darstellung der Systemkomponenten am

Mehr

Informatik II Bäume zum effizienten Information Retrieval

Informatik II Bäume zum effizienten Information Retrieval lausthal Informatik II Bäume zum effizienten Information Retrieval. Zachmann lausthal University, ermany zach@in.tu-clausthal.de Binäre Suchbäume (binary search tree, BST) Speichere wieder Daten als "Schlüssel

Mehr

Computerlinguistik im Service Management eine neue Suche für TOPdesk

Computerlinguistik im Service Management eine neue Suche für TOPdesk Computerlinguistik im Service Management eine neue Suche für TOPdesk Anna Hunecke Diplom Computerlinguistin TOPdesk A.Hunecke@topdesk.com Inhalt TOPdesk Suchen in TOPdesk Lucene Lucene in TOPdesk TOPdesk

Mehr

Algorithmen und Datenstrukturen (für ET/IT)

Algorithmen und Datenstrukturen (für ET/IT) Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2018 Dr. Stefanie Demirci Computer Aided Medical Procedures Technische Universität München Organisatorisches: Keine Vorlesung nächste Woche wegen

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 11 (4.6.2014) Binäre Suchbäume II Algorithmen und Komplexität Binäre Suchbäume Binäre Suchbäume müssen nicht immer so schön symmetrisch sein

Mehr

SPRACHTECHNOLOGIE IN SUCHMASCHINEN IR-GRUNDLAGEN

SPRACHTECHNOLOGIE IN SUCHMASCHINEN IR-GRUNDLAGEN SPRACHTECHNOLOGIE IN SUCHMASCHINEN IR-GRUNDLAGEN HAUPTSEMINAR SUCHMASCHINEN COMPUTERLINGUISTIK SOMMERSEMESTER 2016 STEFAN LANGER STEFAN.LANGER@CIS.UNI -MUENCHEN.DE Übung (Gruppenarbeit, 10-15 min.) Sie

Mehr

Jakarta Lucene. Eine Java-Bibliothek zur Suchindex-Erstellung. Seminararbeit Tilman Schneider

Jakarta Lucene. Eine Java-Bibliothek zur Suchindex-Erstellung. Seminararbeit Tilman Schneider Jakarta Lucene Eine Java-Bibliothek zur Suchindex-Erstellung Seminararbeit Tilman Schneider 2004 Tilman Schneider Seminararbeit: Jakarta Lucene Folie 1 Agenda Definition: Suchmaschine Vorstellung von Jakarta

Mehr

Kapitel 19 Textstatistik. HHU Düsseldorf, WS 2008/09 Information Retrieval 287

Kapitel 19 Textstatistik. HHU Düsseldorf, WS 2008/09 Information Retrieval 287 Kapitel 19 Textstatistik HHU Düsseldorf, WS 2008/09 Information Retrieval 287 Die These von Luhn: Termhäufigkeit als Signifikanzfaktor Luhn, H.P. (1957): A statistical approach to mechanized encoding and

Mehr

Universität Augsburg, Institut für Informatik Sommersemester 2009 Prof. Dr. Werner Kießling 16. Juli Semesterklausur

Universität Augsburg, Institut für Informatik Sommersemester 2009 Prof. Dr. Werner Kießling 16. Juli Semesterklausur Universität Augsburg, Institut für Informatik Sommersemester 2009 Prof. Dr. Werner Kießling 16. Juli 2009 Dr. A. Huhn, M. Endres Suchmaschinen Semesterklausur Hinweise: Die Bearbeitungszeit beträgt 90

Mehr

Definition Ein Heap (priority queue) ist eine abstrakte Datenstruktur mit folgenden Kennzeichen:

Definition Ein Heap (priority queue) ist eine abstrakte Datenstruktur mit folgenden Kennzeichen: HeapSort Allgemeines Sortieralgorithmen gehören zu den am häufigsten angewendeten Algorithmen in der Datenverarbeitung. Man hatte daher bereits früh ein großes Interesse an der Entwicklung möglichst effizienter

Mehr

PAT-Trees. Hauptseminar Information Retrieval. PD Dr. Karin Haenelt. Thema: PAT-Trees. Referent: Bernd Mehnert. Datum:

PAT-Trees. Hauptseminar Information Retrieval. PD Dr. Karin Haenelt. Thema: PAT-Trees. Referent: Bernd Mehnert. Datum: 1 1. Was sind? Definition: Ein PAT-Tree ist ein aus allen möglichen Sistrings eines Textes konstruierter Patricia Tree. 1 1.1 Was sind Sistrings? 1. Was ist ein Patricia Tree? 1. PAT-Tree 1 übersetzt:

Mehr

Lucene in a Nutshell. Wie erstelle ich eine Suchanwendung mit Hilfe von Lucene? Bonsai-Tagung vom Conni Poppe

Lucene in a Nutshell. Wie erstelle ich eine Suchanwendung mit Hilfe von Lucene? Bonsai-Tagung vom Conni Poppe Lucene in a Nutshell Wie erstelle ich eine Suchanwendung mit Hilfe von Lucene? Bonsai-Tagung vom 17.11. -18.11.08 Conni Poppe Problemstellung Suchmöglichkeiten in eigenen Anwendungen eigene Suchmaschine

Mehr

Abgabe: (vor der Vorlesung) Aufgabe 7.1 (P) Binomial Heap

Abgabe: (vor der Vorlesung) Aufgabe 7.1 (P) Binomial Heap TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen SS 2009 Grundlagen: Algorithmen und Datenstrukturen Übungsblatt 7 Prof. Dr. Helmut Seidl, S. Pott,

Mehr

Suche mit Lucene. Dr. Christian Herta. Mai, 2009

Suche mit Lucene. Dr. Christian Herta. Mai, 2009 Mai, 2009 Lernziele - Inhalt Prozess der Suche Klassen der Suche Query-Objekte und Query-Syntax Scoring mit Lucene Outline Übersicht: Wichtige Klassen für die Suche IndexSearcher: Zentrale Klasse für den

Mehr

Klassisches Information Retrieval Jan Schrader

Klassisches Information Retrieval Jan Schrader Klassisches Information Retrieval 27.10.2011 Jan Schrader Information Retrieval (IR) Information retrieval (IR) is finding material (usually documents) of an unstructured nature (usually text) that satisfies

Mehr

7. Sortieren Lernziele. 7. Sortieren

7. Sortieren Lernziele. 7. Sortieren 7. Sortieren Lernziele 7. Sortieren Lernziele: Die wichtigsten Sortierverfahren kennen und einsetzen können, Aufwand und weitere Eigenschaften der Sortierverfahren kennen, das Problemlösungsparadigma Teile-und-herrsche

Mehr

Textkompression. Komprimierung von Daten. Runlength Komprimierung (2) Runlength Komprimierung (1) Herkömmliche Kodierung. Runlength Komprimierung (3)

Textkompression. Komprimierung von Daten. Runlength Komprimierung (2) Runlength Komprimierung (1) Herkömmliche Kodierung. Runlength Komprimierung (3) Komprimierung von Daten Textkompression Effiziente Algorithmen VU 2.0 WS 2008/09 Bin Hu Ziel: Platz und Zeit sparen Kompression durch - Effiziente Kodierung - Verminderung der Redundanzen (verlustfrei)

Mehr

Suchen und Finden mit Lucene und Solr. Florian Hopf 04.07.2012

Suchen und Finden mit Lucene und Solr. Florian Hopf 04.07.2012 Suchen und Finden mit Lucene und Solr Florian Hopf 04.07.2012 http://techcrunch.com/2010/08/04/schmidt-data/ Suche Go Suche Go Ergebnis 1 In Ergebnis 1 taucht der Suchbegriff auf... Ergebnis 2 In Ergebnis

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen B4. Priority Queues und Heaps Marcel Lüthi and Gabriele Röger Universität Basel 28. März 2018 Einführung Kollektion von Elementen Grundlegende Operationen sind Einfügen

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen B7. Balancierte Bäume 1 Marcel Lüthi and Gabriele Röger Universität Basel 13. April 2018 1 Folien basieren auf Vorlesungsfolien von Sedgewick & Wayne https://algs4.cs.princeton.edu/lectures/33balancedsearchtrees-2x2.pdf

Mehr

Algorithmen und Datenstrukturen 12

Algorithmen und Datenstrukturen 12 12. Juli 2012 1 Besprechung Blatt 11 Fragen 2 Binary Search Binäre Suche in Arrays Binäre Suchbäume (Binary Search Tree) 3 Sortierverfahren Allgemein Heapsort Bubblesort Insertionsort Mergesort Quicksort

Mehr

Höhe eines B + -Baums

Höhe eines B + -Baums Höhe eines B + -Baums Anzahl der Blätter bei minimaler Belegung Anzahl von (eindeutigen) Elementen bei minimaler Belegung Anzahl der Blätter bei maximaler Belegung Anzahl von Elementen bei maximaler Belegung

Mehr

Zugriff auf Elemente im B + -Baum. Höhe eines B + -Baums. Einfache Operationen auf B + -Bäumen. Anzahl der Blätter bei minimaler Belegung

Zugriff auf Elemente im B + -Baum. Höhe eines B + -Baums. Einfache Operationen auf B + -Bäumen. Anzahl der Blätter bei minimaler Belegung Höhe eines B + -Baums Zugriff auf Elemente im B + -Baum Anzahl der Blätter bei minimaler Belegung Anzahl von (eindeutigen) Elementen bei minimaler Belegung Anzahl der Blätter bei maximaler Belegung Anzahl

Mehr

Heapsort / 1 A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8]

Heapsort / 1 A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] Heapsort / 1 Heap: Ein Array heißt Heap, falls A [i] A [2i] und A[i] A [2i + 1] (für 2i n bzw. 2i + 1 n) gilt. Beispiel: A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] Heapsort / 2 Darstellung eines Heaps als

Mehr

Suche im Online Katalog

Suche im Online Katalog Suche im Online Katalog Oracle Text SID Frankfurt/Main 22.02.2007 Egon Ritter eritter@ci-database.de ci database Suche im Online Katalog 1 Anwendungen mit Oracle Text Adressensuche CRM-Systeme Abgleich

Mehr

Algorithmen & Datenstrukturen 2 Praktikum 1

Algorithmen & Datenstrukturen 2 Praktikum 1 Algorithmen & Datenstrukturen 2 Praktikum 1 Thema: Binomial Heaps Sommersemester 2016 Prof. Dr. Christoph Karg Hochschule Aalen Ziel dieses Praktikums ist es, die Binomial Heap Datenstruktur in Form einer

Mehr

Kapitel Andere dynamische Datenstrukturen

Kapitel Andere dynamische Datenstrukturen Institute of Operating Systems and Computer Networks Algorithms Group Kapitel 4.8-4.11 Andere dynamische Datenstrukturen Algorithmen und Datenstrukturen Wintersemester 2017/2018 Vorlesung#13, 12.12.2017

Mehr

Sortieren und Suchen. Jens Wächtler Hallo Welt! -Seminar LS 2

Sortieren und Suchen. Jens Wächtler Hallo Welt! -Seminar LS 2 Sortieren und Suchen Jens Wächtler 17.05.2017 Hallo Welt! -Seminar LS 2 Überblick Sortieren kurze Wiederholung Binäre & Ternäre Suche Binäre Suche in einer Liste Bisektionsverfahren (Nullstellensuche)

Mehr

4.1 Bäume, Datenstrukturen und Algorithmen. Zunächst führen wir Graphen ein. Die einfachste Vorstellung ist, dass ein Graph gegeben ist als

4.1 Bäume, Datenstrukturen und Algorithmen. Zunächst führen wir Graphen ein. Die einfachste Vorstellung ist, dass ein Graph gegeben ist als Kapitel 4 Bäume 4.1 Bäume, Datenstrukturen und Algorithmen Zunächst führen wir Graphen ein. Die einfachste Vorstellung ist, dass ein Graph gegeben ist als eine Menge von Knoten und eine Menge von zugehörigen

Mehr

Boole'sches Modell <is web>

Boole'sches Modell <is web> Boole'sches Modell basiert auf Mengentheorie und Boole'scher Algebra sehr einfaches Modell mit klarer Semantik Dokumente als Mengen von Indextermen Termgewichte sind binär: im Dokument enthalten oder nicht

Mehr

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Suchen. Lineare Suche. Such-Algorithmen. Sommersemester Dr.

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Suchen. Lineare Suche. Such-Algorithmen. Sommersemester Dr. Programm heute Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 0 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Fortgeschrittene Datenstrukturen Such-Algorithmen

Mehr

Volltextsuche und Text Mining

Volltextsuche und Text Mining Volltextsuche und Text Mining Seminar: Einfuehrung in die Computerlinguistik Dozentin: Wiebke Petersen by Rafael Cieslik 2oo5-Jan-2o 1 Gliederung 1. Volltextsuche 1. Zweck 2. Prinzip 1. Index 2. Retrieval

Mehr

Information Retrieval, Vektorraummodell

Information Retrieval, Vektorraummodell Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Information Retrieval, Vektorraummodell Tobias Scheffer Paul Prasse Michael Großhans Uwe Dick Information Retrieval Konstruktion

Mehr

Dateiorganisation und Zugriffsstrukturen. Prof. Dr. T. Kudraß 1

Dateiorganisation und Zugriffsstrukturen. Prof. Dr. T. Kudraß 1 Dateiorganisation und Zugriffsstrukturen Prof. Dr. T. Kudraß 1 Mögliche Dateiorganisationen Viele Alternativen existieren, jede geeignet für bestimmte Situation (oder auch nicht) Heap-Dateien: Geeignet

Mehr

Fragenkatalog 1. Kurseinheit

Fragenkatalog 1. Kurseinheit katalog 1. Kurseinheit 1. Wie sind Algorithmen und Datenstrukturen untrennbar miteinander verknüpft? 2. Worin besteht das Ziel einer Beschreibung auf algorithmischer Ebene? 3. Welche Kriterien gibt es

Mehr

BIW Wahlpflichtmodul. Einführung in Solr, Pipeline und REST. Philipp Schaer, TH Köln (University of Applied Sciences), Cologne, Germany

BIW Wahlpflichtmodul. Einführung in Solr, Pipeline und REST. Philipp Schaer, TH Köln (University of Applied Sciences), Cologne, Germany BIW Wahlpflichtmodul Einführung in Solr, Pipeline und REST Philipp Schaer, TH Köln (University of Applied Sciences), Cologne, Germany Version: 2018-05-29 Überblick über gängige Lösungen 2 3 in a nutshell

Mehr

Information Retrieval. Peter Kolb

Information Retrieval. Peter Kolb Information Retrieval Peter Kolb Semesterplan Einführung Boolesches Retrievalmodell Volltextsuche, invertierter Index Boolesche Logik und Mengen Vektorraummodell Evaluation im IR Term- und Dokumentrepräsentation

Mehr

Einführung in Apache Solr

Einführung in Apache Solr Einführung in Apache Solr Markus Klose & Daniel Wrigley O'REILLY Beijing Cambridge Farnham Köln Sebastopol Tokyo Inhalt Vorwort IX Einleitung XI 1 Schnelleinstieg in Solr 1 Was ist Solr? 1 Was ist Lucene?

Mehr

Informatik II Prüfungsvorbereitungskurs

Informatik II Prüfungsvorbereitungskurs Informatik II Prüfungsvorbereitungskurs Tag 4, 23.6.2016 Giuseppe Accaputo g@accaputo.ch 1 Programm für heute Repetition Datenstrukturen Unter anderem Fragen von gestern Point-in-Polygon Algorithmus Shortest

Mehr

Kapitel 4: Bäume i. 1. Einleitung. 2. Ein Datenmodell für Listen. 3. Doppelt-verkettete Listen. 4. Bäume. 5. Das Collections-Framework in Java

Kapitel 4: Bäume i. 1. Einleitung. 2. Ein Datenmodell für Listen. 3. Doppelt-verkettete Listen. 4. Bäume. 5. Das Collections-Framework in Java Kapitel 4: Bäume i 1. Einleitung 2. Ein Datenmodell für Listen 3. Doppelt-verkettete Listen 4. Bäume 5. Das Collections-Framework in Java Prof. Dr. Peer Kröger: EiP (WS 18/19) Teil 11: Datenstrukturen

Mehr

Datenbanken und Informationssysteme

Datenbanken und Informationssysteme Datenbanken und Informationssysteme Information Retrieval: Konzepte und Beispiele Burkhardt Renz Fachbereich MNI TH Mittelhessen Wintersemester 2015/16 Übersicht Konzepte des Information Retrieval Architektur

Mehr

Kapitel Andere dynamische Datenstrukturen

Kapitel Andere dynamische Datenstrukturen Institute of Operating Systems and Computer Networks Algorithms Group Kapitel 4.8-4.11 Andere dynamische Datenstrukturen Algorithmen und Datenstrukturen Wintersemester 2018/2019 Vorlesung#15, 18.12.2018

Mehr

Algorithmen und Datenstrukturen II

Algorithmen und Datenstrukturen II Algorithmen und Datenstrukturen II Algorithmen zur Textverarbeitung III: D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Sommer 2009,

Mehr

GRUNDLAGEN VON INFORMATIONSSYSTEMEN INDEXSTRUKTUREN I: B-BÄUME UND IHRE VARIANTEN

GRUNDLAGEN VON INFORMATIONSSYSTEMEN INDEXSTRUKTUREN I: B-BÄUME UND IHRE VARIANTEN Informationssysteme - Indexstrukturen I: B-Bäume und ihre Varianten Seite 1 GRUNDLAGEN VON INFORMATIONSSYSTEMEN INDEXSTRUKTUREN I: B-BÄUME UND IHRE VARIANTEN Leiter des Proseminars: Dr.Thomas Bode Verfasser

Mehr

Suchbäume. Suchbäume. Einfügen in Binären Suchbäumen. Suchen in Binären Suchbäumen. Prinzip Suchbaum. Algorithmen und Datenstrukturen

Suchbäume. Suchbäume. Einfügen in Binären Suchbäumen. Suchen in Binären Suchbäumen. Prinzip Suchbaum. Algorithmen und Datenstrukturen Suchbäume Suchbäume Prinzip Suchbaum Der Wert eines Knotens wird als Schlüssel verstanden Knoten kann auch weitere Daten enthalten, die aber hier nicht weiter betrachtet werden Werte der Schlüssel müssen

Mehr

PATRICIA Tree. New Indices for Text: PAT Trees and PAT Arrays. PAT-TREE - Einführung. Inhalt. PAT-Tree Definition

PATRICIA Tree. New Indices for Text: PAT Trees and PAT Arrays. PAT-TREE - Einführung. Inhalt. PAT-Tree Definition New Indices for Text: PAT Trees and PAT Arrays Ruprecht - Karls - Universität Heidelberg Lehrstuhl für Computerlinguistik HS Dozentin: Dr. Karin Haenelt Referenten: Maria Tzolova, FatihEkrem Genc Diese

Mehr

3. Vorlesung. Skip-Pointer Komprimierung der Postings Speicherung des Dictionarys Kontext-Anfragen. Seite 55

3. Vorlesung. Skip-Pointer Komprimierung der Postings Speicherung des Dictionarys Kontext-Anfragen. Seite 55 3. Vorlesung Skip-Pointer Komprimierung der Postings Speicherung des Dictionarys Kontext-Anfragen Seite 55 Wiederholung, Invertierte Liste Anfrage mit zwei Termen (logisches UND) Merge-Operation durchläuft

Mehr

1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie

1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie Gliederung 1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie 4/3, Folie 1 2010 Prof. Steffen Lange - HDa/FbI

Mehr

Seminar Text- und Datamining Textmining-Grundlagen Erste Schritte mit NLTK

Seminar Text- und Datamining Textmining-Grundlagen Erste Schritte mit NLTK Seminar Text- und Datamining Textmining-Grundlagen Erste Schritte mit NLTK Martin Hacker Richard Schaller Künstliche Intelligenz Department Informatik FAU Erlangen-Nürnberg 08.05.2014 Gliederung 1 Vorverarbeitung

Mehr

Exkurs: Datenstruktur Quad Tree

Exkurs: Datenstruktur Quad Tree Exkurs: Datenstruktur Quad Tree Prof. Dr. Petra Mutzel Lehrstuhl für Algorithm Engineering LS11 Universität Dortmund 27. VO WS07/08 04. Februar 2008 1 Mehrdimensionale Suchstrukturen Gegeben: Menge S von

Mehr

Textsuche mit Indexstrukturen. Anfragen. Inzidenz Vektoren. Term-Dokument Inzidenz Matrix

Textsuche mit Indexstrukturen. Anfragen. Inzidenz Vektoren. Term-Dokument Inzidenz Matrix Textsuche mit Indexstrukturen Zu einer Anfrage alle Dokumente sequentiell durchsuchen? Kleine Textsammlungen (ein paar MB) Sehr viele Änderungen Indexstrukturen Mehraufwand lohnt sich erst für große Texte

Mehr

Apache Lucene und Oracle in der Praxis - Volltextsuche in der Cloud

Apache Lucene und Oracle in der Praxis - Volltextsuche in der Cloud Apache Lucene und Oracle in der Praxis - Volltextsuche in der Cloud Frank Szilinski, esentri software GmbH Dominic Weiser, esentri consulting GmbH Ettlingen Schlüsselworte: Apache Lucene, Apache Solr,

Mehr

Information Retrieval,

Information Retrieval, Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Information Retrieval, Vektorraummodell Tobias Scheffer Uwe Dick Peter Haider Paul Prasse Information Retrieval Konstruktion von

Mehr

Algorithmen und Datenstrukturen 1

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen 1 6. Vorlesung Martin Middendorf / Universität Leipzig Institut für Informatik middendorf@informatik.uni-leipzig.de studla@bioinf.uni-leipzig.de Merge-Sort Anwendbar für

Mehr

Indexstrukturen in XML

Indexstrukturen in XML Seminar XML und Datenbanken Indexstrukturen in XML Vanessa Schäfer 07.02.2003 Übersicht Einführung Indexstrukturen in XML Ein Vergleich SphinX vs. Lore Zusammenfassung und Ausblick Seminar XML und Datenbanken

Mehr

Algorithmische Anwendungen WS 05/06 Document Ranking

Algorithmische Anwendungen WS 05/06 Document Ranking Algorithmische Anwendungen WS 05/06 Document Ranking Ulrich Schulte (ai641@gm.fh-koeln.de) Harald Wendel (ai647@gm.fh-koeln.de) Seite 1/17 Inhaltsverzeichnis Algorithmische Anwendungen WS 05/06 1. Document

Mehr

Baumbasierte Strukturen

Baumbasierte Strukturen Baumbasierte Strukturen Baumbasierte Struktur / Organisation als Binärbaum Haufendateien oder sortierte Dateien nützlich für statische Dateien Dateien organisiert als Binärbaum Effizientes Einfügen und

Mehr

Counting - Sort [ [ ] [ [ ] 1. SS 2008 Datenstrukturen und Algorithmen Sortieren in linearer Zeit

Counting - Sort [ [ ] [ [ ] 1. SS 2008 Datenstrukturen und Algorithmen Sortieren in linearer Zeit Counting-Sort Counting - Sort ( A,B,k ). for i to k. do C[ i]. for j to length[ A]. do C[ A[ j ] C[ A[ j ] +. > C[ i] enthält Anzahl der Elemente in 6. for i to k. do C[ i] C[ i] + C[ i ]. > C[ i] enthält

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Prioritätswarteschlangen Maike Buchin 18. und 23.5.2017 Prioritätswarteschlange Häufiges Szenario: dynamische Menge von Objekten mit Prioritäten, z.b. Aufgaben, Prozesse, in der

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen Wintersemester 018/19 6. Vorlesung Prioritäten setzen Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I - 4 Heute: Wir bauen eine Datenstruktur Datenstruktur: Konzept,

Mehr

Indexstrukturen in Datenbanken

Indexstrukturen in Datenbanken für Zeichendaten und Texte sowie mehrdimensionale Dateiorganisation und Zugriffspfade 3. Juli 2014 Inhaltsverzeichnis 1 Einleitung 2 Präfix B+-Baum 3 Tries 4 k-dimensionale Bäume 5 Grid-File 6 mehrdimensionales

Mehr

Suchen und Sortieren Sortieren. Heaps

Suchen und Sortieren Sortieren. Heaps Suchen und Heaps (Folie 156, Seite 56 im Skript) Definition Ein Heap ist ein Binärbaum, der die Heapeigenschaft hat (Kinder sind größer als der Vater), bis auf die letzte Ebene vollständig besetzt ist,

Mehr

Dynamische Datenstrukturen

Dynamische Datenstrukturen Dynamische Datenstrukturen B-Bäume größere Datenmengen verwalten Extern speichern Art der Speicherung berücksichtigen sonst kein optimaler Datenzugriff möglich Art der Speicherung großer Datenmengen Magnetplatten

Mehr

Klassische Information Retrieval Modelle Einführung

Klassische Information Retrieval Modelle Einführung Klassische Information Retrieval Modelle Einführung Kursfolien Karin Haenelt 21.10.2012 Themen Information Retrieval Konzepte Grundkomponenten Information Retrieval Modell Definition Die klassischen Modelle

Mehr

Informatik II, SS 2016

Informatik II, SS 2016 Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 10 (27.5.2016) Binäre Suchbäume II Algorithmen und Komplexität Zusätzliche Dictionary Operationen Dictionary: Zusätzliche mögliche Operationen:

Mehr

EINI LW. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 11/12

EINI LW. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 11/12 EINI LW Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 11/12 Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@udo.edu http://ls1-www.cs.uni-dortmund.de

Mehr

B6.1 Introduction. Algorithmen und Datenstrukturen. Algorithmen und Datenstrukturen. B6.1 Introduction. B6.3 Analyse. B6.4 Ordnungsbasierte Methoden

B6.1 Introduction. Algorithmen und Datenstrukturen. Algorithmen und Datenstrukturen. B6.1 Introduction. B6.3 Analyse. B6.4 Ordnungsbasierte Methoden Algorithmen und Datenstrukturen 11. April 2018 B6. Binäre Suchbäume a Algorithmen und Datenstrukturen B6. Binäre Suchbäume 1 Marcel Lüthi and Gabriele Röger Universität Basel 11. April 2018 a Folien basieren

Mehr

Boole sches Retrieval als frühes, aber immer noch verbreitetes IR-Modell mit zahlreichen Erweiterungen

Boole sches Retrieval als frühes, aber immer noch verbreitetes IR-Modell mit zahlreichen Erweiterungen Rückblick Boole sches Retrieval als frühes, aber immer noch verbreitetes IR-Modell mit zahlreichen Erweiterungen Vektorraummodell stellt Anfrage und Dokumente als Vektoren in gemeinsamen Vektorraum dar

Mehr

Informationssysteme für Ingenieure

Informationssysteme für Ingenieure Informationssysteme für Ingenieure Vorlesung Herbstsemester 2016 Überblick und Organisation R. Marti Organisation Web Site: http://isi.inf.ethz.ch Dozent: Robert Marti, martir ethz.ch Assistenz:??

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen 2 Sommersemester 2006 9. Vorlesung Peter Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Invertierte Listen Nutzung vor allem zur Textsuche

Mehr