Der Nucleus einer Suchmaschine                  Oder:      Wie funktionieren indexbasierte          Text Retrieval Systeme...
Um was soll es hier gehen?●   Was leisten Suchmaschinen für den    Benutzer?●   Welche Daten speichert die Suchmaschine   ...
Wovon solltet ihr schon Ahnung haben?  Ihr solltet schon mal eine Websuche bedient haben ;-)
Welche Themen müssen draußen warten?●   Crawling & Feeding sowie die damit    verbundenen Processing-Techniken●   Anfrages...
Kann ich im Verlauf Fragen stellen?
Ja!
Was mir wichtig ist●   Es wäre toll, wenn ich am Ende sagen kann: „Das    war nicht mein Vortrag, sondern ein interessante...
Was ist eine Suchmaschine (nicht)?●   Ein Programm zum schnellen Finden von Dingen    ●   z. B. Dokumente in Textform●   K...
Verweise und Metadaten●    Verweise sind allgemein bekannt (aus „dem Web“)●    Ein Verweis sieht im Web z. B. so aus:    h...
Noch mehr Metadaten●   Typische Metadaten, die für die Suche interessant sind:    ●   Alle „sinntragenden“ Wörter aus dem ...
Wie speichert man den Kram ab?●   In einem invertierten Index → dem Nucleus einer    Suchmaschine●   Ähnlich wie das Schla...
Ein Beispiel zu VeranschaulichungWir haben drei Textdateien mit Zitaten:Text: "Wir wissen, wo du bist. Wir wissen wo du wa...
Der passende Index●   Wir haben 3 heterogene Dokumente und 6 verschiedene Metadaten    ●   Metadaten sind: Text, Zitation,...
Warum keine Datenbank?●    Eine Suchmaschine macht bei der Abfrage keine „teuren“ JOINs●    Die Abfragesprache ist auf die...
Und jetzt ein Beispiel… zum mitdenken und Fragen stellen.
Indexierung – Stoppwörter entfernenWir haben drei Textdateien mit ZitatenText: "Wir wissen, wo du bist. Wir wissen wo du w...
Optional: Linguistische DeflexionRückführung der sinntragenden Wörter auf StammformenText: Wissen (3), nachdenken (1),Auto...
Und abspeichern!So sieht der gefüllte Index am Ende aus:Angst → Doc_2 (1)               Umgang → Doc_2 (1)                ...
Und abfragen!Frage: In welchen Dokumenten finde ich das Wort wissen?Antwort als gerankte Liste mit Hyperlink-Verweisen:1. ...
Danke!
Nächste SlideShare
Wird geladen in …5
×

Der Nucleus einer Suchmaschine

1.231 Aufrufe

Veröffentlicht am

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

  • Gehören Sie zu den Ersten, denen das gefällt!

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

Keine Notizen für die Folie

Der Nucleus einer Suchmaschine

  1. 1. Der Nucleus einer Suchmaschine Oder: Wie funktionieren indexbasierte Text Retrieval Systeme?BarCamp Darmstadt 2010Stefan Antonistefan@suchkultur.de@Suchkultur auf Twitter
  2. 2. Um was soll es hier gehen?● Was leisten Suchmaschinen für den Benutzer?● Welche Daten speichert die Suchmaschine und welche speichert sie nicht? ● Was sind Metadaten? ● Was sind Stoppwörter?● Wie findet eine Suchmaschine?● Was ist ein invertierter Index?
  3. 3. Wovon solltet ihr schon Ahnung haben? Ihr solltet schon mal eine Websuche bedient haben ;-)
  4. 4. Welche Themen müssen draußen warten?● Crawling & Feeding sowie die damit verbundenen Processing-Techniken● Anfragesprachen und Query Processing● Webtech● Linguistik und NLP (Natural Language Processing)● Ranking-Algorithmen● Search Federation & Enterprise Search
  5. 5. Kann ich im Verlauf Fragen stellen?
  6. 6. Ja!
  7. 7. Was mir wichtig ist● Es wäre toll, wenn ich am Ende sagen kann: „Das war nicht mein Vortrag, sondern ein interessanter Dialog“● Diese Folien wurden mit der heissen Nadel gestrickt → sie werden Ungereimtheiten enthalten● Wer welche findet darf mich gerne darauf aufmerksam machen bzw. mich korrigieren
  8. 8. Was ist eine Suchmaschine (nicht)?● Ein Programm zum schnellen Finden von Dingen ● z. B. Dokumente in Textform● Keine Datenbank! ● Die Suchmaschine speichert keine Kopie des gesuchten Dokuments● Eine „Verweismaschine“ → Sie verweist auf den Aufbewahrungsort des gesuchten Dokuments● Ein „Metadatenfresser“ → Die Maschine weiß mehr über ein Dokument, als das Dokument über sich selbst● Ein „Sortierer“, der Dokumente nach unterschiedlichen Kriterien sortieren kann (Ranking)
  9. 9. Verweise und Metadaten● Verweise sind allgemein bekannt (aus „dem Web“)● Ein Verweis sieht im Web z. B. so aus: http://www.suchkultur.de/blog/suchmaschinen/was-ist-ein-invertierter-index● Ein Verweis ist selbst schon ein Metadatum: ● Er ist ein Identifikationsmerkmal für ein bestimmtes Dokument ● Er stellt einen vollständigen Pfad zum Dokument dar – Der Pfad selbst lässt Rückschlüsse über eine gewisse Ordnungsstruktur zu ● Er sagt, welches Übertragungsprotokoll für den Zugrif verwendet werden soll und kennt den zuständigen Server
  10. 10. Noch mehr Metadaten● Typische Metadaten, die für die Suche interessant sind: ● Alle „sinntragenden“ Wörter aus dem Text des Dokuments → Namen, Tätigkeiten, Eigenschaften, Zahlen, uvm. – Aber: Keine Stoppwörter wie → der, die, das, eine, ein, und, doch, oder, an, von, in […] – Typische Stoppwortliste (DE): ~1000 Wörter ● Und beliebig viel mehr: – Geodaten, Zeitstempel & Zeitreihen, Autoren, Schlagworte (tags), Dokumentlänge, Teasertext, Zusammenfassung, Verweise auf andere Dokumente, Anzahl der Wörter,
  11. 11. Wie speichert man den Kram ab?● In einem invertierten Index → dem Nucleus einer Suchmaschine● Ähnlich wie das Schlagwortverzeichnis in einem Buch ● Sortierte Liste (z. B. alphabetisch) ● Nur sinntragende Wörter ● Keine Stoppwörter
  12. 12. Ein Beispiel zu VeranschaulichungWir haben drei Textdateien mit Zitaten:Text: "Wir wissen, wo du bist. Wir wissen wo du warst. Wir wissenmehr oder weniger worüber du nachdenkst."Autor: Eric E. SchmidtText: "[…] Man kann ohne Angst vor Übertreibung von einer „Generation Google“ sprechen, derenUmgang mit Wissen und Information nachhaltig von der Suchmaschine beeinflusst wird. [...]“Autor: Malte HerwigTitel: Eliten in einer egalitären WeltSeiten: 188Datum: 2005Text: „[...] Die Erfindung der Buchdruckerkunst macht dem menschlichen Verstandezwar Ehre, doch verliert sie sehr, wenn man sie mit der Erfindung der Buchstabenvergleicht. [...]“Autor: Thomas HobbesTitel: LeviathanTitel (lang): Leviathan (or the Matter, Forme and Power of a CommonwealthEcclesiastical and Civil)
  13. 13. Der passende Index● Wir haben 3 heterogene Dokumente und 6 verschiedene Metadaten ● Metadaten sind: Text, Zitation, Titel, Titel (lang), Autor, Seiten und Datum ● Wir benötigen einen Index mit mindestens 6 spezialisierten Feldern, die zu diesen Datentypen passen – Ein sogenanntes Index-Schema – Ziel: Die Suchmaschine kann passend zu Anfragen wie „Gib mir alles von Malte Herwig (Autor) über die Generation Google (Text) aus dem Jahr 2005 (Datum)“ Dokumente liefern. ● Die Suchmaschine weiß dann in welchen Feldern des Indexes sie suchen muss ● Durch diese Vorstrukturierung kann die Suchmaschine schnell & gezielt die gesuchten Informationen „zusammenkehren“ ● Sie weiß sozusagen „wo sie hingreifen muss“
  14. 14. Warum keine Datenbank?● Eine Suchmaschine macht bei der Abfrage keine „teuren“ JOINs● Die Abfragesprache ist auf die Suche optimiert (kein „LIKE <suchterm>“)● Die zu speichernden Daten sind oft unstrukturiert und/oder lückenhaft (bedingt viele „NULL“-Werte)● Die Schreibgeschwindigkeit ist nicht so wichtig, dafür aber die Lesegeschwindigkeit● ACID (Atomicity, Consistency, Isolation & Durability) ist nicht wichtig, denn: → Atomare Operationen sind unnötig, da nur Lesezugrife stattfinden → Dokumente sind naturgemäß eher inkonsistente Datenstrukturen → Isolation (=locking) killt die Performance !! und ist nicht gewünscht → Aktualität ist wichtiger als Dauerhaftigkeit, denn: Alte Verweise verschwinden (dead links z. B.), und neue Verweise kommen hinzu. Dokumente ändern sich außerdem inhaltlich und werden neu prozessiert● Zweiteilung der Indexerstellung und der Indexabfrage → Während ein Index erstellt wird, ist er nicht abfragbar● Während ein Index abfragbar ist, wird separat sein Nachfolger erstellt → Häufig passiert das auf einem separaten Indexer-System
  15. 15. Und jetzt ein Beispiel… zum mitdenken und Fragen stellen.
  16. 16. Indexierung – Stoppwörter entfernenWir haben drei Textdateien mit ZitatenText: "Wir wissen, wo du bist. Wir wissen wo du warst. Wir wissen mehr oder wenigerworüber du nachdenkst."Autor: Eric E. Schmidt ← Ein feststehender Name bzw. eine „Phrase“Text: "[…] Man kann ohne Angst vor Übertreibung von einer „Generation Google“ sprechen, derenUmgang mit Wissen und Information nachhaltig von der Suchmaschine beeinflusst wird. [...]“Autor: Malte HerwigTitel: Eliten in einer egalitären WeltSeiten: 188Datum: 2005Text: „[...] Die Erfindung der Buchdruckerkunst macht dem menschlichen Verstandezwar Ehre, doch verliert sie sehr, wenn man sie mit der Erfindung der Buchstabenvergleicht. [...]“Autor: Thomas HobbesTitel: LeviathanTitel (lang): Leviathan (or the Matter, Forme and Power of a CommonwealthEcclesiastical and Civil)
  17. 17. Optional: Linguistische DeflexionRückführung der sinntragenden Wörter auf StammformenText: Wissen (3), nachdenken (1),Autor: Eric E. Schmidt ← Ein feststehender Name bzw. „Phrase“Text: Angst (1), Übertreibung (1), „Generation Google“ (1), Umgang (1), Wissen (1), Information (1),Nachhaltigkeit (1), Suchmaschine (1), Beeinflussung (1)Autor: Malte HerwigTitel: Eliten in einer egalitären WeltSeiten: 188Datum: 2005Text: Erfindung (2), Buchdruckerkunst (1), menschlich (1), Verstand (1), Ehre (1),Verlust (1),Autor: Thomas HobbesTitel: LeviathanTitel (lang): Leviathan (or the Matter, Forme and Power of a CommonwealthEcclesiastical and Civil)
  18. 18. Und abspeichern!So sieht der gefüllte Index am Ende aus:Angst → Doc_2 (1) Umgang → Doc_2 (1) TextBeeinflussung → Doc_2 (1) Verlust → Doc_3 (1)Buchdruckerkunst → Doc_3 (1) Verstand → Doc_3 (1)Ehre → Doc_3 (1) Wissen → Doc_1 (3), Doc_2 (1)Erfindung → Doc_3 (2), Eric E. Schmidt → Doc_1 AutorGeneration Google → Doc_2 (1) Malte Herwig → Doc_2Information → Doc_2 (1) Thomas Hobbes → Doc_3Menschlich → Doc_3 (1) Eliten in einer egalitären Welt → Doc_2 TitelNachdenken → Doc_1, (1) Leviathan → Doc_3Nachhaltigkeit → Doc_2 (1) 2005 → Doc_2 DatumSuchmaschine → Doc_2 (1)Übertreibung → Doc_2 (1) 188 → Doc_2 Seiten
  19. 19. Und abfragen!Frage: In welchen Dokumenten finde ich das Wort wissen?Antwort als gerankte Liste mit Hyperlink-Verweisen:1. http://server.de/doc_1 (3x wissen im Text, deshalb höheres Ranking)2. http://server.de/doc_2 (1x wissen im Text, deshalb niedrigeres Ranking)Frage: Wer ist der Autor von Leviathan?Antwort: Der Autor von doc_3 mit dem Titel „Leviathan“ heißt „Thomas Hobbes“Frage: Wie viele Seiten hat Thomas Herwigs Buch von 2005?Antwort: Das Buch doc_2 mit Datum von 2005 hat 188 Seiten
  20. 20. Danke!

×