Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
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...
Upcoming SlideShare
Loading in …5
×

Tech Talk Lucene

905 views

Published on

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

Published in: Technology
  • Be the first to comment

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>

×