| Prev | Up | Next |
de.comm.infosystems.suchmaschinen-FAQ —> Einführung —> Volltextsuchmaschinen
Die im ersten Abschnitt geholten Dateien werden nun ausgewertet. Ein dem Format der Datei (also meist HTML, reiner Text oder PDF) entsprechender Parser zerlegt sie in ihre Einzelteile, also Metadaten wie Autor, Titel u.s.w. sowie den eigentlichen Text der Seite als Sequenz von Wörtern.
Dabei wird oft auch beachtet, ob ein Wort besonders groß geschrieben oder fett ist, ob es Teil einer Überschrift oder eines Querverweises auf ein anderes Dokument ist.
Alle Wörter werden nun in einem "invertierten Index" abgelegt. Dieser Index speichert für alle Wörter, die in mindestens einem Dokument vorgekommen sind, Paare von Dokumenten-Nummer und Position des Worts in diesem Dokument.
Angenommen, die Datei http://www.mustersite.com/musterdokument.html wird vom Crawler erstmalig geholt und bekommt die Identifikationsnummer 1234. Diese Datei enthalte nun nur den Satz "How do you do?". Daraus erzeugt der Parser die Paare (how, 1), (do, 2), (you, 3), (do, 4). Jedes Wort wird also mit seiner Position im Dokument kombiniert. Ein mehrfaches Vorkommen einzelner Begriffe ist dabei möglich (hier: "do"). Der Index wird jetzt für die drei Wörter "how", "do" und "you" auf den neuesten Stand gebracht, indem Wertepaare (Dokumenten-ID, Wortposition) hinzugefügt werden:
do ... existierende Paare für do (1234, 2) (1234, 4) how ... existierende Paare für how (1234, 1) you ... existierende Paare für you (1234, 3)
Tatsächlich werden noch weitere Informationen gespeichert, wie eben die bereits angesprochenen Metadaten oder die Formatierung der Wörter. Diejenigen Begriffe, mit denen auf ein anderes Dokument verwiesen wird tauchen eventuell ebenfalls im Index für dieses Dokument auf. Allerdings sind diese Details nicht nur von Suchmaschine zu Suchmaschine unterschiedlich, sie sind darüber hinaus undokumentiert. Die Betreiber der Suchmaschinen wollen sich nicht in die Karten sehen lassen.
Je nach Suchmaschine werden gewisse Begriffe gar nicht erst in den Index aufgenommen, sogenannte Stopwörter. Das sind sehr häufig vorkommende Wörter wie "the" im Englischen oder "ein" im Deutschen. Da sie in fast jedem Dokument der jeweiligen Sprache auftreten, wird ihnen keine Bedeutung zugemessen. Der Index wird durch das Weglassen außerdem deutlich kleiner. Trotzdem verzichten immer weniger Suchmaschinen auf Stopwörter. Für gewisse Anfragen sind sie eben doch von Interesse. Paradebeispiel ist der Shakespeare-Satz "To be or not to be". Er besteht ausschließlich aus Stopwörtern, kann also nur gefunden werden, wenn sie in den Index aufgenommen worden sind.
Ein weiterer Vorbearbeitungsschritt ist das sogenannte Stemming. Dabei werden Begriffe auf ihren Wortstamm zurückgeführt. So werden "schöne", "schöner", "schönen" u.s.w. alle auf "schön" vereinfacht. Einerseits kann man so auch ähnliche Begriffe finden, andrerseits verliert man eine gewisse Genauigkeit.
Ein verwandtes Konzept bildet auch Synonyme aufeinander ab. Wer dann z.B. nach "stark" sucht, findet eventuell auch "kräftig".
Schließlich wird auch die Sprache des Dokuments ermittelt, um Suchanfragen entsprechend einschränken zu können.
| Prev | Up | Next |
| Autor: Marco Schmidt <marcoschmidt@users.sourceforge.net> |
Maintainer: Felix Wiemann <Felix.Wiemann@ososo.de>