Tech Talk Apache Lucene  Peter Pakula Köln, 16.12.2008
Inhalt <ul><li>Lucene Überblick </li></ul><ul><li>Funktionsweise von Volltextsuchmaschinen </li></ul><ul><li>Core-Klassen ...
Lucene Überblick <ul><li>Lucene ist eine Bibliothek für die Volltextsuche </li></ul><ul><li>Open Source Software (Apache L...
Funktionsweise von Volltextsuchmaschinen <ul><li>Grundlage für Suchmaschinen sind Methoden des Information Retrieval </li>...
Funktionsweise von Volltextsuchmaschinen
Funktionsweise von Volltextsuchmaschinen <ul><li>Indizieren </li></ul><ul><li>Stoppwörtereliminierung </li></ul><ul><li>Gr...
Funktionsweise von Volltextsuchmaschinen <ul><li>Suchen </li></ul><ul><li>Bei der Abfrage werden Methoden aus der Indexers...
Core-Klassen von Lucene Eine typische Implementierung mit Lucene Quelle: Lucene in Action
Core-Klassen von Lucene Indizierung <ul><li>IndexWriter = Zentrale Komponente zum Erstellen des Index (nur zum Schreiben) ...
Core-Klassen von Lucene  Parser zur Indizierung <ul><li>Der Entwickler muss dafür sorgen, dass für alle relevanten Dokumen...
Core-Klassen von Lucene Suchen <ul><li>IndexSearcher = Zentrale Komponente zum suchen im Index </li></ul><ul><li>Query = A...
Core-Klassen von Lucene Abfrage <ul><li>Terms = „test“ and „hello dolly“ </li></ul><ul><li>Fields = title:“Do it right“ AD...
Live-Demo Quelle: https://duke.dev.java.net/images/tshirts/TShirt2003LoRes.jpg
Weitere Quellen <ul><li>Bücher </li></ul><ul><ul><li>Otis Gospodnetic, Erik Hatcher: Lucene in Action. , Manning Publicati...
Vielen Dank <ul><li>„ Wie man Informationen sammelt, verwaltet und verwendet, wird darüber entscheiden, ob man zu den Gewi...
Nächste SlideShare
Wird geladen in …5
×

Tech Talk Lucene

804 Aufrufe

Veröffentlicht am

TechTalk von Peter Pakula (DLR Köln-Porz, 16.12.2008).

Veröffentlicht in: Technologie
0 Kommentare
1 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
804
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
4
Aktionen
Geteilt
0
Downloads
0
Kommentare
0
Gefällt mir
1
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Tech Talk Lucene

  1. 1. Tech Talk Apache Lucene Peter Pakula Köln, 16.12.2008
  2. 2. Inhalt <ul><li>Lucene Überblick </li></ul><ul><li>Funktionsweise von Volltextsuchmaschinen </li></ul><ul><li>Core-Klassen von Lucene </li></ul><ul><li>Live-Demo </li></ul><ul><li>Weitere Quellen </li></ul>
  3. 3. Lucene Überblick <ul><li>Lucene ist eine Bibliothek für die Volltextsuche </li></ul><ul><li>Open Source Software (Apache License) </li></ul><ul><li>100%-pure Java </li></ul><ul><li>Implementierung in Programmiersprachen </li></ul><ul><ul><li>(C++, .NET, C, Python, PHP, Perl, Delphi, Ruby) </li></ul></ul><ul><li>Aktuelle Version 2.4.0 (8. Oktober 2008) </li></ul><ul><li>Erste Version 0.01 (März 2000) </li></ul><ul><li>Eingesetzt in : Eclipse IDE, Encyclopedia Britannica </li></ul><ul><li>Eingesetzt von: FedEx, Hewlett-Packard usw. </li></ul>
  4. 4. Funktionsweise von Volltextsuchmaschinen <ul><li>Grundlage für Suchmaschinen sind Methoden des Information Retrieval </li></ul><ul><li>Information Retrieval ist ein Fachgebiet, das sich mit computergestütztem inhaltsorientierten Suchen beschäftigt. </li></ul><ul><ul><li>Gegenstand ist also die Suche nach und in Dokumenten </li></ul></ul><ul><ul><li>Retrieval (deutsch: Wiedergewinnung) </li></ul></ul>
  5. 5. Funktionsweise von Volltextsuchmaschinen
  6. 6. Funktionsweise von Volltextsuchmaschinen <ul><li>Indizieren </li></ul><ul><li>Stoppwörtereliminierung </li></ul><ul><li>Grund- und Stammformreduzierung (Stemming) </li></ul><ul><li>Thesaurus: Synonyme </li></ul>
  7. 7. Funktionsweise von Volltextsuchmaschinen <ul><li>Suchen </li></ul><ul><li>Bei der Abfrage werden Methoden aus der Indexerstellung wie &quot;Stop-Wort-Entfernung&quot; oder &quot;Stemming&quot; wiederverwendet. </li></ul>
  8. 8. Core-Klassen von Lucene Eine typische Implementierung mit Lucene Quelle: Lucene in Action
  9. 9. Core-Klassen von Lucene Indizierung <ul><li>IndexWriter = Zentrale Komponente zum Erstellen des Index (nur zum Schreiben) </li></ul><ul><li>Directory = repräsentiert den Ort des Index </li></ul><ul><ul><li>Dateisystem, RAM, Datenbank </li></ul></ul><ul><li>Analyzer = Stoppwörtereliminierung, Stemming </li></ul><ul><li>Document = repräsentiert durch eine Kollektion von Feldern </li></ul><ul><li>Feld = Jedes Dokument enthält mindestens ein Feld, </li></ul><ul><ul><li>z.B author, title, content </li></ul></ul>
  10. 10. Core-Klassen von Lucene Parser zur Indizierung <ul><li>Der Entwickler muss dafür sorgen, dass für alle relevanten Dokumente Parser bereit gestellt werden. </li></ul>Quelle: Lucene in Action
  11. 11. Core-Klassen von Lucene Suchen <ul><li>IndexSearcher = Zentrale Komponente zum suchen im Index </li></ul><ul><li>Query = Abstrakte Klasse für Anfragen </li></ul><ul><li>TermQuery = Eine konkrete Query Klasse die auf bestimmten Feldern sucht. </li></ul><ul><li>Hits = repräsentiert die Ergebnisse </li></ul>
  12. 12. Core-Klassen von Lucene Abfrage <ul><li>Terms = „test“ and „hello dolly“ </li></ul><ul><li>Fields = title:“Do it right“ AD right </li></ul><ul><li>Wildcard = „?“ und „*“ </li></ul><ul><li>Fuzzy = roam~0.8 (default 0.5) </li></ul><ul><li>Proximity = „jakarta apache“~10 </li></ul><ul><li>Range = modified:[20020101 TO 20030101] </li></ul><ul><li>Boosting = jakarta^4 apache </li></ul><ul><li>Boolean Operators = OR, AND, NOT </li></ul><ul><li>Grouping = (jakarta OR apache) AND website </li></ul>
  13. 13. Live-Demo Quelle: https://duke.dev.java.net/images/tshirts/TShirt2003LoRes.jpg
  14. 14. Weitere Quellen <ul><li>Bücher </li></ul><ul><ul><li>Otis Gospodnetic, Erik Hatcher: Lucene in Action. , Manning Publications 2005 </li></ul></ul><ul><ul><li>Wolfgang G. Stock: Information Retrieval, Oldenbourg Wissenschaftsverlag 2007 </li></ul></ul><ul><li>Links </li></ul><ul><ul><li>http://lucene.apache.org/ </li></ul></ul><ul><ul><li>http://de.wikipedia.org/wiki/Information_retrieval </li></ul></ul><ul><ul><li>http://lucene.apache.org/java/2_3_2/queryparsersyntax.html </li></ul></ul>
  15. 15. Vielen Dank <ul><li>„ Wie man Informationen sammelt, verwaltet und verwendet, wird darüber entscheiden, ob man zu den Gewinnern oder Verlierern gehört.“ </li></ul><ul><li>Bill Gates </li></ul>

×